1一臺支持Modbus協議的稱重儀表
支持Modbus協議的稱重儀表
2設置好儀表的通訊參數
根據自己的要求可以調整,只要和PLC端統一就可以
波特率:9600
數據格式:8n1:8位數據/無校驗位
通訊方式:Modbus協議
校驗和:OFF
儀表通訊地址:1
3確定所要讀取的變量地址
這裏我們只需要讀取儀表的當前實時重量即可
儀表實時重量的地址爲0,對應Modbus通訊裏的40001
4200smartPLC一臺
200smartPLC
5連接端口
將儀表端的RS485接口A,B與PLC端的DB9接口相連(DB9接口的3爲A,8爲B)
我記得是3爲A,8爲B,不知此圖爲什麼這樣,不過不要緊,如果不同,將兩根線顛倒一下
準備工作完畢,接下來就開始我們的PLC編程了,因爲200smart軟件自身就帶了Modbus協議庫,所以,不需要我們另外去添加了,下面就介紹下怎麼編程的。
6初始化主站指令
“模式”(Mode) 輸入的值用於選擇通信協議。輸入值爲 1 時,將 CPU 端口分配給 Modbus 協議並啓用該協議。
參數“奇偶校驗”(Parity) 應設置爲與 Modbus 從站設備的奇偶校驗相匹配。0(無奇偶校驗)
參數“端口”(Port)設置物理通信端口(0 = CPU 中集成的 RS-485)。
參數“超時”(Timeout) 設爲等待從站做出響應的毫秒數。典型值是 1000 ms (1 s)。
當 MBUS_CTRL指令完成時,指令將“真”(TURE) 返回給“完成”(Done) 輸出。
“錯誤”(Error) 輸出包含指令執行的結果。
以上的參數設置與稱重儀表端的對應
7兩個儀表的輪詢訪問
參數“從站”(Slave) 是 Modbus 從站設備的地址。允許範圍爲 0 至 247。地址 0 是廣播地址。僅將地址 0 用於寫入請求。系統不會響應對地址 0 的廣播請求。並非所有從站設備都支持廣播地址。S7-200 SMART Modbus 從站庫不支持廣播地址。
使用參數 RW 指示是讀取還是寫入該消息。0(讀取)
參數地址 (Addr) 是起始 Modbus 地址。寄存器地址爲0,對應Modbus通訊裏的地址40001
參數“計數”(Count) 用於分配要在該請求中讀取或寫入的數據元素數。讀取儀表中保持寄存器字數。
參數 DataPtr 是間接地址指針,指向 CPU 中與讀請求相關的數據的 V 存儲器。將 DataPtr 設置爲用於存儲從 Modbus 從站讀取的數據的第一個 CPU 存儲單元。
地址1的儀表數據被存入到VW600中,地址2的儀表數據被存入到VW610中。
編程結束,下面我們看下監控效果。
主站初始化指令運行正常,沒有報錯
地址1儀表數據爲131,地址2儀表數據爲0
文章來源網絡,如有侵權,請聯繫刪除
承接物聯網數據採集、平臺開發、通訊調試、上位機開發、WEB、Android、IOS、微信小程序、梯形圖編程、電路圖設計等軟件開發,自動化系統集成項目,項目開發、調試。
涉及行業:物聯網、工控、MES、智能製造、風電、暖通、水泥、電子、環保、水處理、固廢、非標自動化設備等。
聯繫方式:可通過菜單欄,添加私人微信,具體詳聊。