西門子S7-1200 PLC系列由于其設計緊湊、成本低廉、穩(wěn)定性好且編程簡便,被中小型自動化系統(tǒng)中廣泛使用。而雷賽作為國產(chǎn)品牌中的佼佼者,其步進驅(qū)動產(chǎn)品性價比高,而被廣泛使用。本文就介紹西門子S7-1200 PLC與雷賽步進驅(qū)動器使用Modbus RTU通信的應用。
關(guān)鍵詞:S7-1200;步進驅(qū)動器;西門子;雷賽;Modbus RTU
一 硬件
序號 |
名稱 |
型號 |
1 |
PLC |
1215c |
2 |
通信模塊 |
CM 1241 RS422_485 |
3 |
步進驅(qū)動器 |
DM2C RS522 |
4 |
步進電機 |
57CM23 |
5 |
串口通信線 |
RJ45轉(zhuǎn)485串口 |
6 |
網(wǎng)線 |
6類網(wǎng)線 |
7 |
軟件 |
博圖V16 |
二 功能描述
S7-1200 PLC做Modbus主站,步進驅(qū)動器做從站。PLC通過輪詢的方式讀取步進驅(qū)動器的當前位置,并能實現(xiàn)點動驅(qū)動器功能。
三 功能實現(xiàn)
步驟1 步進驅(qū)動器參數(shù)設置
波特率:38400
奇偶校驗:None
數(shù)據(jù)位:8位
停止位:1
以上參數(shù)為默認,如需修改可查看相關(guān)手冊更改。
步驟2 組態(tài)Modbus RTU通信模塊
在硬件目錄里找到“通信模塊”→“點對點”→“CM1241(RS422/485)”,雙擊或拖拽此模塊至CPU左側(cè)即可,如下圖所示:
圖1 組態(tài)通信模塊
步驟3 啟用系統(tǒng)存儲器
在項目樹中選中PLC_1,左擊選擇“屬性”,在彈出窗口找到“系統(tǒng)和時鐘存儲器”,勾選啟用系統(tǒng)給存儲器字節(jié)。
圖2 啟用系統(tǒng)存儲器
步驟4 調(diào)用MB_COMM_LOAD指令
打開Main(OB1)組織塊,依次打開“指令”→“通信”→“通信處理器”→“Modbus” ,將MB_COMM_LOAD拖拽到程序段中,如圖所示:
圖3 調(diào)用MB_COMM_LOAD指令
在MB_COMM_LOAD指令中,觸發(fā)使用系統(tǒng)存儲器位FirstScan,在PLC啟動時打開端口。通信端口的硬件標識選擇CM422/485模塊,波特率使用38400,奇偶校驗選擇0-無,背景數(shù)據(jù)塊使用MB_MASTER_DB。
步驟5 創(chuàng)建數(shù)據(jù)發(fā)送和接收緩存區(qū)
在項目樹中,依次選擇“添加新塊”→“DB數(shù)據(jù)塊”→“確定”,如圖所示:
圖4 添加DB數(shù)據(jù)塊
添加數(shù)據(jù)塊之后,需要去掉“優(yōu)化的塊訪問”選項,并添加數(shù)據(jù)發(fā)送和接收緩存區(qū),如圖所示:
圖5 去掉“優(yōu)化的塊訪問”
圖6 添加DATA_PTR收緩存區(qū)
步驟6 調(diào)用MB_MASTER指令
打開Main(OB1)組織塊,依次打開“指令”→“通信”→“通信處理器”→“Modbus” ,將MB_MASTER拖拽到程序段中,如圖所示:
圖7 調(diào)用MB_MASTER指令
在該指令中,MB_ADDR從站地址選擇1,MODE模式選擇0,DATA_ADDR起始地址40003,DATA_LEN數(shù)據(jù)長度為2,DATA_PTR數(shù)據(jù)指針為數(shù)據(jù)塊_1的Read_DATA。
由于西門子Modbus RTU通訊的特殊性,關(guān)于MODE、DATA_ADDR、DATA_LEN規(guī)定如下表所示:
步驟7 輪詢參數(shù)程序
由于Modbus RTU通訊本身的特性,在工業(yè)領域中我們使用輪詢的機制對Modbus從站進行讀寫操作。具體如圖所示:
在這個輪詢的程序中,我們使用的是上一個參數(shù)的參數(shù)的完成或者是錯誤信號作為下一個的啟動信號,這種方式,需要我們提前確定好通訊的框架,對一個參數(shù)執(zhí)行類似的操作。當我們最后一個參數(shù)讀寫完成,則返回第一步進行循環(huán)操作。
值得注意的是程序中,我們程序中使用的參數(shù)和地址需要各位查看相關(guān)的手冊靈活使用。
四 總結(jié)
此程序是西門子S7-1200與雷賽DM2C步進驅(qū)動器的Modbus RTU通訊的簡單案例,為1200 PLC與第三方設備的Modbus RTU通訊提供了一種方法,對于步進/伺服驅(qū)動器、其它第三方儀表設備Modbus RTU通訊具有參考價值,對于多個從站的Modbus RTU通訊同樣具有參考意義。
由于篇幅有限和本人水平有限,難免有錯誤和遺漏的地方,本文僅供用作參考學習使用。
承擔因您的行為而導致的法律責任,
本站有權(quán)保留或刪除有爭議評論。
參與本評論即表明您已經(jīng)閱讀并接受
上述條款。