恭喜,你发布的帖子
发布于 2026-05-16 16:10:13
24楼
反向考虑。你举一个例子,一个什么数值你觉得要plc读到什么值才是对的。
例如(我随便说)仪表显示32.14,那么读出来应该是003214就是对的。你按我这个例子举一下你认为对的数据。懂我意思吗?
我意思是,明明读得数据了,你会认识这个数据吗?因为数据有很多种表示格式,还有高位字节和低位字节的排列也有很多种,你是否认清了这个排列方式,并正确在你程序中翻译?例如:西门子论坛。这五个字,有时候仪表会把它排列成:西论坛门子;或者:子论坛西门;或者:坛论子门西。你必须把所有字节按照仪表的规则逆向调整回来才是真正的数据。这就是通讯的高位先或者低位先的事情。
好了,到格式了。究竟这数据是16位整形还是32位整形还是32位浮点还是64位浮点?你确认过了什么?
另外。你可以强制在监视里面向这些地址写入0。如果通讯有效,那么程序会把读得的数据写回去被你清零的地址。(我指通讯有效并不代表读取到的东西正是你要的东西。反正就是成功读到了一些数据。)
你回复一下这两大点问题。
请填写推广理由:
分享
只看
楼主