西門子PLC使用AB433A終端無線控制變頻器實例
西門子PLC使用AB433A終端無線控制變頻器實例
本中主要介紹了西門子PLC使用AB433A終端,無線控制變頻器的實例。西門子PLC通過MODBUS協議與AB433A終端通信,AB433A無線終端又將控制信號發送給遠端的變頻器。這種PLC無線通信方案相較于傳統有線方案,解決了布線以及線路保養的問題,降低了實施難度和實施價格等問題。
我們選用西門子的S7-200、臺達的變頻器、西安艾寶物聯的AB433A系列無線模塊,來搭建系統,西門子PLC采用MODBUS自由口通信模式,22X系列后提供MODBUS庫。
通信模式選擇MODBUS RTU、無校驗、8位數字位、一個停止位、波特率9600。
PLC程序詳解:
先選擇相應的MODBUS 協議庫文件
圖 1. 西門子標準指令庫
注意:
MODBUS RTU 主站指令庫的對 Port 0 和 Port 1 有效,用戶程序條用指令庫,指令庫設置通信口工作在自由口模式。
通過使用常開 SM0.0 調用 MBUS_CTRL 完成對MODBUS主站通信的初始化,并啟動其功能控制(具體程序如下):
圖 2. 用 SM0.0 調用 MODBUS RTU 主站初始化與控制子程序
注意:
程序中Timeout處的數值設置,需要考慮到無線通信時的延時問題,適當的加長延時時間,一般在已有延時時間基礎上加150ms左右。
調用 MODBUS RTU 主站讀寫子程序MBUS_MSG,讀取從站保持寄存器的數據,發送一個MODBU請求.
注意:
MODBUS主站讀寫的最大數據量為120個字;開關量輸出和保持寄存器支持讀和寫功能,開關量輸入和模擬量輸入只支持讀功能。
具體程序如下:
圖 3. 調用MODBUS RTU 主站讀寫子程序
以上就是主要PLC的主要程序,在程序的注釋中將常見的錯誤已經給出。
無線模塊只需與西門子PLC通過RS485總線相連即可,模塊的波特率應與PLC設置的一致,在這里是9600。
變頻器端設置好地址以及通信方式即可,再將AB433A無線終端通過RS485總線與變頻器連接。本實例中PLC端是唯一需要編程的部分,在AB433A部分只需要簡單的接線以及通過撥碼開關設置波特率,變頻器只需要設置通信模式和地址。如果你的變頻器的地址換成十進制超過了9999就要加多一位。例如:地址H3000轉換成十進制12288,在PLC中就是412289。