西门子S7-300 PLC 数据类型 (浮点数 32位的)

2024-12-18 06:45:45
推荐回答(4个)
回答1:

问题可以描述为:浮点数12.25用PLC32位浮点数怎么表示?

首先要把十进制数(12.25)转换为二进制数(1100.01),具体可以百度怎么把十进制小数转化为二进制小数(整数部分除2取余逆序排列、小数部分乘2取整正序排列)。
1101.01=1.10101x2^3(类似十进制的小数点移位)
对照公游亏式1.m x 2^(e-127) 就知道m=10101,e=130=B(1000 0010)大磨谨

这样,滚基就得到了32位浮点数的表示:
0 1000 0010 000 0000 0000 0000 0001 0101
+ ( e )( m )

好不容易弄懂这个原理,请看是否对。

回答2:

其实您源旁走了一个误区,浮点数需要用双字表示
modbus
只最大只能通讯字
比如:主站vd100中
数据为3.8
vd100含有vw100和握塌vw102
只需要将vw100和vw102的数据写入到从站
比如说雹皮橡主站vw100写入从站vw1000
vw102写入从站vw1002
就相当于主站vd100写入从站vd1000
还不懂可以再问。

回答3:

所谓的 32位的 浮点数 就可以简单的理解为 带小数点的十进制数。
一般不被PLC 处理执行 必闹纳须要 将浮点数 转换成 整数 才被 PLC 执行。
取值范围-3143.4576到 1.234567e+13
个人认为 能产生 小笑虚数点数的 只能是模拟量 信号
相信只有在 使用模拟液升没量模块的 PLC 才能用到

回答4:

尾数部分(m)是从高位开始顺序排列的。所以表示结果举野应为:
0 1000 0010 101 0100 0000 0000 0000 0000
另:这是遵循IEEE的R32-23规则的单精度唯数类型,十进制的9用二进制要用4位二进制来表示,所以23位尾数的单精度类型有效位最多正山喊为6位。