0

我有一个通过 ModBus TCP/IP 连接的设备。

我在 c# 中读取数据并通过 KepServerEx 检查。如果我比较原始 int 值,我会得到相同的结果,但是当我尝试转换为字符串编号时。

我读取了 8 个带有值的寄存器

12544,50,0,0,0,0,0,0

KepSever 显示这个字符串 -> 1

C# 转换 ->(使用 EasyModBus)ATALA 或其他值但不是 1

我尝试使用 ASCII 表“播放”以找到仅获取带有“1”的字符串的路径,例如 KepServerEX ...没有成功。

4

1 回答 1

0

Modbus 没有定义字符串如何传输,它只定义了 16 位字和位的传输。

所以 EasyModBus 可能会显示一个字符串,而另一个 modbus 客户端可能会显示另一个,这完全取决于编写代码的程序员,一个人认为他必须以一种方式进行转换,而另一个人则以不同的方式进行转换,因为没有标准。

于 2022-01-04T19:56:25.993 回答