CPU226做从站,霍尼韦尔做主站,通过485接口做modbus通信。主站可以读取CPU226的I/O点状态,但是往CPU226写数据,却写不下来,CPU226的I/O点都开放给主站,在开放的I/O点范围内,主站可读但不可写。用modscan32直接往CPU226内写I/O点,也写不下去。请高手指点!下面是我的程序.,请帮忙查看是否有问题,随便说程序无报错
问题补充:
主站是modscan32往00007写1,对应CPU226的Q0.6无反应,同样测试00023、00017、10023都无反应。如是CPU226编程问题,请提供具体实例程序或设置,谢谢!
图片说明:
最佳答案
在做modbus通讯时经常会出现通讯失败的现象,如果判断是程序问题还是别的问题,如果利用Modscan软件可以建立连接,但是设备间直连后无法通讯,问题可以在RS485极化、主站上。如果使用串口调试工具进行测试时,需要按照modbus通讯协议的格式收发相应的报文,并判断通讯是否正常。
modbus通讯报文格式,可以参考《modbus通讯说明》http://www.ad.siemens.com.cn/club/bbs/post.aspx?b_id=3
参考:
http://www.ad.siemens.com.cn/service/answer/zhishi_view.aspx?Q_ID=76518_1028.html
提问者对于答案的评价:
后来用modscan32直接测试,就可以写下去了
专家置评
已阅,最佳答案正确。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc296886.html