把PLC與PLC或者PLC與計算機以及其他智能裝置通過傳輸介連接起來,就可實現通信或組建網絡,從而構成功能更強,性能更好的PLC網絡控制系統。這樣可以極大的提高PLC的控制范圍、和控制規模,實現多個設備之間的數據共享和協調控制,提高控制系統的可靠性和靈活性,增加系統的監控和科學管理水平,便于用戶的程序開發和應用[1,2]。同時,以PC機為上位機實現對各PLC的監控管理及對控制數據的處理,還提供了人機界面友好的操控平臺。
1 通信系統聯網結構
可編程控制器的聯網結構主要指從物理上把各個節點連接起來形成網絡,實現通信,構成更強大的控制系統,常用的連接結構主要有鏈接結構和網絡結構。在通信網絡中,各網絡節點、各用戶主機進行通信,必須遵守一套事先制定的規則協議,1979年國際標準化組織提出了一套開放式系統互聯參考模型,定義了各種設備連在一起進行通信的結構框架。
組網控制系統的控制器為三菱FX2N-48MR型可編程控制器,選用RS-232C/485轉換接口以及FX-485ADP通信模塊組成1:8的聯網控制系統,實現控制和監控數據的發送與接收,上位計算機監視PLC間的數據通信,開發程序的修改由上位機PCc機編寫與下載。上位機與PLC聯網通信系統結構圖如圖1所示。
2 通信協議及通信格式
1) 系統的通信協議
三菱FX2N-48MR PLc的傳輸參數和傳輸控制協議設置在內部寄存器D8120,寄存器參數設置可由b0設置數據長度;b1b2設置奇偶校驗;b3位停止位設置;b4-b7位控制波特率的設置位;b13位為和校驗位;b14位為協議位;b15位為傳輸控制協議設置。在該組網控制系統中通信方式采用半雙工,同步方法采用起始停止位方式同步,傳輸速率為9600bps,起始位為1位,數據長度為7位,奇偶校驗為偶校驗,停止位1位,使用校驗和,采用三菱公司專用協議,D8120設置為H6082。
2) 站號的設置
網絡控制系統中明確各個PLC控制器的站號,用可編程控制器提供的數字來確定計算機在訪問的哪個可編程控制器。在三菱FX2N-48MR型PLC中,站號由D8121寄存器來確定,可以應用指令MOVE KX D812l,其中x可從00H到0FH。在該系統中站號設定為0—7。系統采用面向字符的通信協議,數據傳輸以幀為單位,上位機與下位機每次只傳送一幀信息,主站發出命令幀發起通信,被訪問的從站PLC相應含有自己從站號的命令,從站發出一個響應幀,該從站就通知主站與哪臺從站進行通信。
信息幀格式如圖2所示。
ENQ計算機發出請求,ASCII碼為05H:ACK PLc對計算機的提問做出確認回答,ASCII碼為06H;NAK PLC對計算機的提問做出否認回答,ASCII碼為15H;STX信息幀開始標志,ASCII碼為02H;ETX信息幀結束標志,ASCII碼03H。PC機向PLC發出的命令PLC不理解時用NAK回答。
3) PC機向PLC發送報文格式
PC機向PLC發送的報文格式如下:
其中STX為開始標志02H;ETx為結束標志03H;CMD為命令的ASCII碼;SUMH,SUML為CMD到ETX按字節求累加和,溢出不計。由于每字節十六進制數變為兩字節ASCII代碼,故校驗和SUMH與SUML。
PLC對PC機應答報文格式如下:
對讀命令的應答報文數據段為要讀取的數據,一個數據占兩個字節,分上位下位。對寫命令的應答報文無數據段,而用ACK及NAK作為應答內容。
4) 傳輸過程
PC機與FX2N-48MR之間采用應答方式通信,傳輸出錯則組織重發。PLC根據PC機的命令,在每個循環掃描結束處的END語句后組織自動應答,無需用戶在PLC一方編寫程序。
3.通信的實現
根據PC機與FX2N-48MR PLC的傳輸應答過程編制出如圖3所示的通信程序流程圖。按照流程圖可以編寫出通信程序實現PC機與PLC之間的串行通信以完成數據的讀取。
4 結論
本文所述PC上位機實現對下位機PLC的聯網控制方案已經得到成功應用,提高了可編程控制器的控制范圍和規模,增加了系統監控和智能管理水平,易于實現程序開發和利用。