CONTROLLOGIX與第三方設備的通訊方法探討
一、 前言
目前的自控系統(tǒng)中,往往不僅要求接入常規(guī)的數(shù)字量、模擬量輸入輸出信號,還需要將一些第三方的設備接入自控系統(tǒng)。當?shù)谌皆O備具有通用接口協(xié)議時可使用相應的通信模塊直接接入,當設備使用自定義協(xié)議時則較為麻煩,需要調(diào)試人員自己編程與第三方設備進行通訊。各PLC廠家分別推出了串口通訊模塊用于與一些非標設備進行通訊,如AB Controllogix系列的1756-MVI/D,SLC系列的1747-BAS模塊,SIEMENS 的CP340/341,CP440/441等,下面以1756-MVI/D模塊與CD194E多功能電力儀表通訊為例介紹PLC與第三方設備通訊的一種方法。
二、 MODBUS通訊協(xié)議分析
江陰長江斯菲爾電力儀表公司CD194E系列的多功能電力儀表是采用遠程RS-485數(shù)字接口(差分、半雙工)和使用MODBUS-RTU通訊協(xié)議,來實現(xiàn)對儀表的編程、數(shù)據(jù)采集等功能,MODBUS協(xié)議簡介如下:
MODBUS協(xié)議是一種主從式點對點的通訊協(xié)議,允許一臺主機和多臺從機之間進行數(shù)據(jù)通信,在CD194E系列的多功能電力儀表通訊系統(tǒng)中,主機是微機(PC、工控機、PLC),從機是CD194E系列儀表。在該通訊系統(tǒng)中,允許系統(tǒng)連接多達128個儀表及1200米的通訊距離。通訊方式采用主機請求,從機應答。即:主機提出命令請求,從機響應接收數(shù)據(jù)后作數(shù)據(jù)分析,如果數(shù)據(jù)滿足通訊規(guī)約,從機做數(shù)據(jù)響應。
主、從機間的通訊每一幀數(shù)據(jù)包含以下信息(16進制):
從機地址、命令字、信息字、校驗碼
從機地址(1個字節(jié)):從機設備號,主機利用從機地址來識別進行通訊從機設備。
命令字(1個字節(jié)):設定主機對從機的通訊內(nèi)容。
信息字(N個字節(jié)):包括進行兩機通訊中各種數(shù)據(jù)地址、數(shù)據(jù)長度、數(shù)據(jù)信息。
校驗碼(2個字節(jié)):用于檢測數(shù)據(jù)通訊錯誤,采用循環(huán)冗余碼CRC16。
通訊參數(shù)的設置:通過儀表上的編程鍵盤對儀表的儀表地址(1-247)、通訊速度(4800或9600)和數(shù)據(jù)格式(1個起始位,8個數(shù)據(jù)位,1個停止位,可選擇無校驗位、奇校驗位、偶校驗位。)進行設置。
三、1756-MVI/D模塊介紹
1756-MVI/D模塊是CONTROLLOGIX系統(tǒng)使用的多廠商接口模塊(ControlLogix Multi-Vendor Interface Module),主要用于與第三方設備進行通訊,MVI系列種類繁多,大多具有固定協(xié)議,可支持MODBUS、MODBUS PLUS等多種網(wǎng)絡,它與PROSOFT公司提供的第三方模塊MVI56系列基本相同。其中的MVI/D模塊是可編程通訊模塊。
該模塊具有SETUP MODE和APPLICATION MODE兩種工作方式。當模塊上的設置開關處于SETUP模式時,我們可通過超級終端(Hyper Terminal)軟件對模塊進行設置,初始化時要注意超級終端選擇相對應的波特率等參數(shù)。
1756-MVI/D模塊的通訊端口可通過短接片設定為RS232,RS422及RS485三種通訊協(xié)議。實際應用中我們選用了RS232通訊外接RS232/485轉(zhuǎn)換模塊進行通訊。
四、 PLC通訊軟件的規(guī)劃與開發(fā)
Modbus通訊協(xié)議執(zhí)行過程:
主機通過網(wǎng)絡傳送給從機以下內(nèi)容來建立起主從通訊方式:
(1) 建立起主從通訊方式
•從機地址
•定義所請求動作的操作碼
•要發(fā)送的數(shù)據(jù)
•校驗碼
(2) 從機返回的內(nèi)容包括:
•所采取的動作
•返回的數(shù)據(jù)
•校驗碼
如果錯誤發(fā)生在接收信息時或從機不能執(zhí)行要求的操作,從機將會產(chǎn)生一個出錯信息并作為響應送出。
Modbus命令較多,根據(jù)工程實際情況,我們將數(shù)據(jù)通訊流程作了適當?shù)暮喕琍LC定時發(fā)送數(shù)據(jù)讀取命令,然后等待儀表返回讀取的數(shù)據(jù),在設定的時間間隔內(nèi)未讀取正確信息,則接受緩沖區(qū)清零,發(fā)送下一個儀表數(shù)據(jù)查詢命令,等待下一個儀表返回數(shù)據(jù)…如此循環(huán)往復。
PLC發(fā)送的數(shù)據(jù)由于較規(guī)則,一般命令字節(jié)較短,我們可以將之事先編制好,存放在PLC中,定時依次將這些命令傳送到通訊模塊中,通過通訊口將其發(fā)出,當接收到指定幀后進行數(shù)據(jù)校驗,如正確則將其傳送到PLC中相應位置進行處理,如不正確或未收到返回信息則該站點通訊故障計數(shù)器加1,當連續(xù)三次接受不成功則報警通訊故障。
五、 調(diào)試中發(fā)現(xiàn)的問題
在調(diào)試中我們也發(fā)現(xiàn)了一些問題,主要有以下兩點:
1. 在系統(tǒng)調(diào)試中,發(fā)現(xiàn)一奇怪的現(xiàn)象,當MVI56模塊端口設置為485形式時,與儀表通訊不正常,但用一筆記本掛接在網(wǎng)絡上可偵測到MVI56模塊發(fā)出的字符,改為232接口形式外加232/485轉(zhuǎn)換器通訊正常,經(jīng)咨詢技術支持,判斷為儀表的485電平信號和MVI56-MCM的485電平信號不匹配。對于這種情況建議使用232/485轉(zhuǎn)換器。
2. 哪一根線是A、哪一根線是B不同的制造商采用不同的標簽規(guī)定,有可能不同廠家的設備連接時需要交換接線以便確定,這也是最簡便的方法。其實B線應該是在空閑狀態(tài)下電壓更高的那一根。即A線相當于-,B線相當于+?稍诰W(wǎng)絡空閑的狀態(tài)下用電壓表檢測。如果B線沒有比A線電壓更高,那么就會存在連接問題。
六、 結束語
該通訊系統(tǒng)通過反復調(diào)試,達到了預定的應用效果,系統(tǒng)運行穩(wěn)定。相對與使用上位機系統(tǒng)與第三方設備通訊而言,該通訊系統(tǒng)的優(yōu)點是:
1. PLC系統(tǒng)直接通訊在硬件上接線等更為方便,無須將這些第三方設備通訊線接至中控室計算機。
2. 系統(tǒng)穩(wěn)定可靠,雖然PLC系統(tǒng)通訊程序的編制調(diào)試不太直觀,調(diào)試周期相對較長,但由于PLC的MTBF比計算機高得多,且人為因素較少,所以其運行的可靠性大大提高。
使用微信“掃一掃”功能添加“谷騰環(huán)保網(wǎng)”