西门子SAMRT200MODBUS通讯的问题

现在我有一台西门子SMART200–ST20的PLC,现在我想用LABVIEW与他走MODBUS通讯,该如何发送指令,我想用串口调试助手发送什么来调试一下,该发送什么呀,我以前写过LABVIEW和麦克米特PLC走MODBUS RTU通讯,人家通讯都有专门的指令 如我要读取=====X0的输入状态就发送01 02 0000 0001 加CRC校验吗就可以读取到状态了。现在西门子PLC我在PLC里面写了一段MODBUS SLAVE程序,现在我要读取I0.3的状态就没有反应,10003=I0.3==16#0002,在串口调试助手发送 02 02 00 02 18 39 ,没有反应,这个是什么回事?求指教

问题补充:
现在我监控了一下程序,MODBUS INT显示错误5,modbus slave 显示错误10.我没看出来那里错误,我是照着案例直接写的,不知道那里有问题。那位有测试过的程序发到我邮箱我来试试,fdd110fdd@163.com

图片说明:

西门子SAMRT200MODBUS通讯的问题   

最佳答案

显示错误为5,说明程序中的库存储区分配地址和其他程序存在地址重叠。在你的程序中库存储区地址分配不能再使用 VB0—VB1999的地址了。

读I0.3 状态,使用串口调试助手写的话,报文如下:
02 02 00 02 00 01 CRC(Low) CRC(High)

提问者对于答案的评价:
已经搞定了,谢谢你

专家置评

已阅,最佳答案正确。

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc158968.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年6月8日 下午5:11
下一篇 2017年6月8日

相关推荐