產地類別 | 進口 |
---|
產品簡介
詳細介紹
西門子S7-1200 PLC系列由于其設計緊湊、成本低廉、穩定性好且編程簡便,被中小型自動化系統中廣泛使用。而雷賽作為國產品牌中的西門子PLC CPU S7-300模塊西門子PLC CPU S7-300模塊,其步進驅動產品性價比高,而被廣泛使用。本文就介紹西門子S7-1200 PLC與雷賽步進驅動器使用Modbus RTU通信的應用。
關鍵詞:S7-1200;步進驅動器;西門子;雷賽;Modbus RTU
一 硬件


二 功能描述
S7-1200 PLC做Modbus主站,步進驅動器做從站。PLC通過輪詢的方式讀取步進驅動器的當前位置,并能實現點動驅動器功能。
三 功能實現
步驟1 步進驅動器參數設置
波特率:38400
奇偶校驗:None
數據位:8位
停止位:1
以上參數為默認,如需修改可查看相關手冊更改。
步驟2 組態Modbus RTU通信模塊
在硬件目錄里找到“通信模塊"→“點對點"→“CM1241(RS422/485)",雙擊或拖拽此模塊至CPU左側即可,如下圖所示:

圖1 組態通信模塊
步驟3 啟用系統存儲器
在項目樹中選中PLC_1,左擊選擇“屬性",在彈出窗口找到“系統和時鐘存儲器",勾選啟用系統給存儲器字節。

圖2 啟用系統存儲器
步驟4 調用MB_COMM_LOAD指令
打開Main(OB1)組織塊,依次打開“指令"→“通信"→“通信處理器"→“Modbus" ,將MB_COMM_LOAD拖拽到程序段中,如圖所示:

圖3 調用MB_COMM_LOAD指令
在MB_COMM_LOAD指令中,觸發使用系統存儲器位FirstScan,在PLC啟動時打開端口。通信端口的硬件標識選擇CM422/485模塊,波特率使用38400,奇偶校驗選擇0-無,背景數據塊使用MB_MASTER_DB。
步驟5 創建數據發送和接收緩存區
在項目樹中,依次選擇“添加新塊"→“DB數據塊"→“確定",如圖所示:

圖4 添加DB數據塊
添加數據塊之后,需要去掉“優化的塊訪問"選項,并添加數據發送和接收緩存區,如圖所示:

圖5 去掉“優化的塊訪問"

圖6 添加DATA_PTR收緩存區
步驟6 調用MB_MASTER指令
打開Main(OB1)組織塊,依次打開“指令"→“通信"→“通信處理器"→“Modbus" ,將MB_MASTER拖拽到程序段中,如圖所示:

圖7 調用MB_MASTER指令
在該指令中,MB_ADDR從站地址選擇1,MODE模式選擇0,DATA_ADDR起始地址40003,DATA_LEN數據長度為2,DATA_PTR數據指針為數據塊_1的Read_DATA。
由于西門子Modbus RTU通訊的特殊性,關于MODE、DATA_ADDR、DATA_LEN規定如下表所示:

步驟7 輪詢參數程序
由于Modbus RTU通訊本身的特性,在工業領域中我們使用輪詢的機制對Modbus從站進行讀寫操作。具體如圖所示:








在這個輪詢的程序中,我們使用的是上一個參數的參數的完成或者是錯誤信號作為下一個的啟動信號,這種方式,需要我們提前確定好通訊的框架,對一個參數執行類似的操作。當我們最后一個參數讀寫完成,則返回第一步進行循環操作。