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