您好,欢迎访问一九零五行业门户网

modbus实现无线远距离通讯

通过gprs实现组态软件与plc的modbus通讯,实现无线远距离通讯。
plc采用s7-1200 1212c cpu和cm1241 rs485通讯模块
宏电h7710sgs 485接口 gprs dtu模块,组态软件为紫金桥
对于宏电h7710 的工作原理,是把采集数据的s71200经rs485 串口连接到gprs模块上,之后通过模块上的sim卡的网络,走流量连接到internet网中的一个固定ip地址的数据中心server,中心站采用紫金桥实时数据库.
cm1241接口的3和8为rs485通讯正负极,对应连接h7710的3和2端子
这个系统里plc作为从站使用,组态软件为主站。
plc ob1 里始终调用mb_slave块 ,mb_addr 为从站地址,mb_hold_reg 为指向 modbus 保持寄存器数据块的指针。
在mb_hold_reg指定的数据块db4中建立要发送的数据
mb_comm_load块 用于组态端口使用 modbus rtu 协议来通信,在ob100里调用一次即可。port 端口号,baud 波特率,parity 校验方式,mb_db mb_slave指令的背景数据块的引用。 在程序中插入mb_slave之后,数据块标识符会显示在 mb_db 框连接的下拉列表中。
通过以上指令从站plc程序部分基本完成,具备通讯条件。
再简单描述一下上位机设置。
在紫金桥组态软件设备组态中配置所连接的从站设备1200。选择modbus串行通讯,数据读取周期时间设5秒,输入正确plc通讯 地址,设置串口通讯格式,配置gprs设备h7710,dtu标识输入手机卡的电话号码。
h7710的具体设置这里就不详细叙述了,不是本文重点。
在紫金桥组态软件点组态中添加mb_hold_reg指定的数据块db4中的数据,这样在组态画面就可以读取从站的数据了。
这个案例主要用于实现无线远距离数据采集.
有错误不足之处欢迎指正吐槽。
其它类似信息

推荐信息