现在想用s7 200Port0口读取 modbus ASCII协议设备的电流信息,请问怎么读,有编程例子吗?怎么入手?谢谢!!也可以发送邮箱947738699@qq.com
问题补充:
我问的是modbus asc协议的编程,你们回答的都是rtu的这个我会,请正确回答!!
最佳答案
modbus sacll通讯与modbus rtu通讯的一些区别:
校验码: CRC LRC
通讯数据类型: byte数据 ascll码
LRC校验算法:将参与校验的数据求和,并将数据和的补码的低八位作为校验码。
补码:将原码(原值)取反加1
LRC校验编程思路:
1) 初始化参与校验的个数(校验数据清零)及参与校验的临时数据
2) 将参与校验的数据写指针(B_I指令)
3) 参与校验的数据进行累加,并记录校验次数
4) 编写循环体(实现参与校验的数据累加)
5) 将结果先取反(INV_W),然后加1
6) 取低八位数据
补充问题回复:
ascll通讯与rtu通讯不同的是通讯数据是以ascll数据类型传输的,校验方式也不同,接收和发送前、后需要数据转换。
参考:
《S7-200采用自由口通讯例程分析》
http://www.plcjs.com/html/plc/plc_plcData/plcData_dataOrComm/2007-8/30/078302110134601.htm
提问者对于答案的评价:
谢谢
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc162488.html