該方案可適用于3臺以上西門子PLC,S7-200或S7-200Smart之間實現(xiàn)一主多從Modbus通訊協(xié)議的無線通訊。
適用PLC型號:S7-200和S7-200SMART
通訊協(xié)議:Modbus-RTU
通訊關(guān)系:一主8從
通訊距離:5KM
通訊方式:全數(shù)字加密無線傳輸
無線通訊終端:DTD434MC 西門子PLC專用無線通訊終端
添加MODBUS庫文件
S7-200PLC的Modbus通訊,西門子本身沒有直接的相關(guān)指令,所以需要給STEP7里面添加西門子官方提供的Modbus庫文件。添加好庫文件后會出現(xiàn)下圖所示。
點開【庫】就會出現(xiàn)下圖所示
分別打開與Modbus有關(guān)的文件夾就會出現(xiàn)下圖所示的可以直接調(diào)用的指令
主站程序
主站程序我們采用分時循環(huán)采集的方式來依次讀寫8個從站的狀態(tài)。程序編程采用毫秒定時器【T32】來作為系統(tǒng)的通訊采集周期。我們可根據(jù)實際需求調(diào)整參數(shù)大小。若使用GPRS通訊方式,出于對流量成本的考慮,需要根據(jù)實際情況調(diào)整通訊周期,以免增加不必要的后期費用。
從站程序
從站程序只需要根據(jù)主站的通訊格式設置保持一致,然后再使從站響應指令即可正常通訊。8個從站通訊程序,除地址不一樣外,其他的參數(shù)均相同,后期可根據(jù)實際使用情況調(diào)整。
指令調(diào)用說明
【Modbus Master Port0(v1.2)】通訊口0作為Modbus主站用到的指令。
【MBUS_MSG】通訊口0的Modbus主站讀寫指令。
【Modbus Master Port1(v1.2)】通訊口1作為Modbus主站用到的指令。
【MBSU_CTRL_P1】通訊口1的Modbus主站初始化指令。
【MBUS_MSG_P1】通訊口1的Modbus主站讀寫指令。
【Modbus Slave Port0(v1.0)】通訊口0作為Modbus從站用到的指令。
【MBUS_SLAVE】通訊口0作為Modbus從站響應主站讀寫指令。