之前,只会用Modubs RTU,在200,200Smart PLC上,后来用上了1200,刚开始还在坚持用MODBUS TRU,随着使用1200多了,且SIEMENS一网到底的组态,发现modbus TCP很实用(不用再去增加RS485板卡或模块,节省成本),再加上PORTAL集成了Modbus TCP通讯指令,那就更方便了。
刚开始的项目上,使用的通讯还比较简单,都是读写站的多个寄存器地址,期间也拜读了“yming大侠写的关于MODBUS TCP V4.0 使用系列“,很受用。但后来,随着项目的复杂,要求读2块以上的仪表,一些问题就随之而来了。
下面主要是针对多站的注意事项,单站的使用可以参考yiming的帖子和S7-1200 EASY PLUS,里面有相关讲解和轮询的例子。
读写仪表,主要是用到MB_CLIENT块 ,以读写两块表为例:
1.两块表的背景数据块须不一样;
2 两块表的CONNECT参数必须不一样;
3. CONNECT DB块中的ID和IP必须不一样
4.远程端口要和仪表侧一样,一般设定为502