西门子SAMRT200MODBUS通讯的问题
test1
发布于2014-07-16 11:26
406
0
标签:
有一台西门子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.没看出来那里错误,是照着案例直接写的,不知道那里有问题。
图片说明: 1,这个是写的PLC程序
佳答案
显示错误为5,说明程序中的库存储区分配地址和其他程序存在地址重叠。在程序中库存储区地址分配不能再使用 VB0---VB1999的地址了。
读I0.3 状态,使用串口调试助手写的话,报文如下:
02 02 00 02 00 01 CRC(Low) CRC(High)