引用 cww2008 在 2020/12/9 16:05:49 发言【内容省略】
以你图中浮点数2.440068E-007为例:
其16进制表示为34 83 00 0A
转换为二进制为:0011 0100 1000 0011 0000 0000 0000 1010,
通过程序中高低字进行转换,其翻转后的结果为 0000 0000 0000 1010 0011 0100 1000 0011,转换为16进制为00 0A 34 83
通过将其转换为浮点数,其结果如下:
而西门子S7-200支持的浮点数范围如下:
显然,转换后的数值已经超过了你的PLC能支持的浮点数的值域,因此现时NAN,即表示数据出错。
最后,你目前的错误是基于你长久以来对于数据范围的不限定,也就是说,你的转换程序存在较大的BUG。
Good Luck~