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中的數據,這樣在組態畫面就可以讀取從站的數據了。
這個案例主要用于實現無線遠距離數據采集.
有錯誤不足之處歡迎指正吐槽。
評論