周楊芳,高海濤
(上饒職業(yè)技術(shù)學(xué)院,江西 上饒 334109)
現(xiàn)代工業(yè)控制現(xiàn)場(chǎng)對(duì)PLC數(shù)據(jù)的網(wǎng)絡(luò)化通信要求越來(lái)越高。傳統(tǒng)模式下,采用“計(jì)算機(jī)-PLC”通信的方式能夠解決小型PLC工業(yè)控制系統(tǒng)的數(shù)據(jù)通信問(wèn)題,但難以解決多臺(tái)PLC級(jí)聯(lián)形成的大中型工業(yè)控制網(wǎng)絡(luò)數(shù)據(jù)有效的通信問(wèn)題。盡管有部分學(xué)者提出采用“上位機(jī)—計(jì)算機(jī)—PLC”網(wǎng)絡(luò)架構(gòu)的形式可解決上述問(wèn)題,但引入上位機(jī)后的網(wǎng)絡(luò)系統(tǒng)成本較高,且結(jié)構(gòu)比較復(fù)雜,組建難度大幅度提升,不適用于中小型工控企業(yè)及網(wǎng)絡(luò)通信系統(tǒng)?;诖?,本文基于單主站通信技術(shù),并引入“計(jì)算機(jī)+主站PLC+從站PLC”網(wǎng)絡(luò)架構(gòu)模式,組建一種結(jié)構(gòu)簡(jiǎn)單、程序簡(jiǎn)約、成本適中、通信功能良好,能夠適用于中小型工控系統(tǒng)多臺(tái)PLC數(shù)據(jù)通信的網(wǎng)絡(luò)系統(tǒng)。
PLC單主站網(wǎng)絡(luò)系統(tǒng)的組建需要采用PLC“主-從站”構(gòu)建技術(shù)及網(wǎng)絡(luò)讀/寫指令技術(shù)。①PLC“主-從站”構(gòu)建技術(shù)。在采用PPI通信協(xié)議的基礎(chǔ)上,S7-200型PLC被允許設(shè)置為“主-從站”工作模式,并用特殊功能寄存器SMB30指定其主、從站的網(wǎng)絡(luò)通信屬性,例如設(shè)置SMB30=00 000 010,即可將PLC設(shè)置為主站工作模式,從站PLC不需要進(jìn)行初始化。②網(wǎng)絡(luò)讀/寫指令技術(shù)。該指令包含NETW(網(wǎng)絡(luò)讀)和NETW(網(wǎng)絡(luò)寫)2個(gè)子指令,當(dāng)“主-從站”組建成功后,應(yīng)用該指令能夠從遠(yuǎn)程計(jì)算機(jī)總站最多讀(寫)16字節(jié)的數(shù)據(jù)信息,并同時(shí)最多激活8條網(wǎng)絡(luò)指令,從而解決“計(jì)算機(jī)+主站PLC+從站PLC”之間的網(wǎng)絡(luò)數(shù)據(jù)通信問(wèn)題。
模擬工業(yè)控制現(xiàn)場(chǎng)PLC網(wǎng)絡(luò)通信需求,創(chuàng)設(shè)真實(shí)化的控制場(chǎng)景:由1臺(tái)計(jì)算機(jī)(安裝了STEP7編程軟件,定義為總站1號(hào)機(jī))、1臺(tái)西門子S7-200型PLC(CPU226型,定義為主站2號(hào)機(jī))和1臺(tái)西門子S7-200型PLC(CPU224型,定義為從站3號(hào)機(jī))構(gòu)成通信網(wǎng)絡(luò)體系。其中,CPU226型PLC與計(jì)算機(jī)之間通過(guò)PPI線纜和RS485線纜構(gòu)成“總-主”通信網(wǎng)絡(luò),CPU224型PLC與CPU226型PLC之間通過(guò)RS485線纜構(gòu)成“主-從”通信網(wǎng)絡(luò)。網(wǎng)絡(luò)通信的實(shí)現(xiàn)要求為:通過(guò)編譯程序和硬件通信系統(tǒng)搭建調(diào)試,用2號(hào)機(jī)的I0.0-I0.7端口控制3號(hào)機(jī)的Q0.0-Q0.7端口,并用3號(hào)機(jī)的I0.0-I0.7端口控制2號(hào)機(jī)的Q0.0-Q0.7端口,實(shí)現(xiàn)在計(jì)算機(jī)編程控制場(chǎng)景下,2號(hào)機(jī)和3號(hào)機(jī)之間網(wǎng)絡(luò)數(shù)據(jù)的單主站通信控制。
模擬工業(yè)控制現(xiàn)場(chǎng)組建的PLC單主站通信網(wǎng)絡(luò)系統(tǒng)硬件部分由計(jì)算機(jī)(1臺(tái))、西門子S7-200型PLC(2臺(tái),分別為CPU226型和CPU224型)構(gòu)成,外加RS485通信線纜、PPI通信線纜、DC24V電源等器件。具體的系統(tǒng)硬件組建方法如下。
1)組建通信網(wǎng)絡(luò)。找到計(jì)算機(jī)和PLC上的RS485通信接口,用網(wǎng)絡(luò)連接器將2臺(tái)S7-200型PLC和計(jì)算機(jī)聯(lián)通起來(lái),組成一個(gè)基于PPI協(xié)議的單主站通信網(wǎng)絡(luò)。
2)連接通信線纜。用雙絞線、PPI通信線纜分別將連接器的2個(gè)A端子連接起來(lái),并將連接器的另外2個(gè)B端子連接起來(lái),構(gòu)成通信網(wǎng)絡(luò)數(shù)據(jù)傳輸系統(tǒng)。
3)設(shè)置通信地址。當(dāng)通信系統(tǒng)連接完成后,在STEP7編程軟件中,設(shè)置好主站PLC和從站PLC的通信地址,并下載到PLC的CPU模塊中,將PLC的工作模式開(kāi)關(guān)設(shè)置在“RUN”狀態(tài),以便于網(wǎng)絡(luò)通信程序的識(shí)別和下載。
主站PLC是本系統(tǒng)中用于連接計(jì)算機(jī)和從站PLC,傳遞網(wǎng)絡(luò)通信數(shù)據(jù)的“橋梁”,需要對(duì)主站PLC劃分具體的網(wǎng)絡(luò)通信地址。在具體的通信作業(yè)中,從站PLC需要接收主站PLC傳輸來(lái)的指令和數(shù)據(jù),并反饋相應(yīng)的操作,不需要額外設(shè)計(jì)通信程序。具體的主站PLC網(wǎng)絡(luò)通信地址劃分如表1所示。
主站通信程序如圖1所示。
表1 主站PLC網(wǎng)絡(luò)通信地址的定義與劃分
圖1 主站通信程序
系統(tǒng)主站PLC的通信程序如圖2所示,用于實(shí)現(xiàn)主站和從站PLC之間網(wǎng)絡(luò)系統(tǒng)的數(shù)據(jù)通信作業(yè),具體包含3個(gè)程序網(wǎng)絡(luò)。
1)初始化設(shè)置程序。使用SM0.1指令,當(dāng)系統(tǒng)上電后將數(shù)值2傳送給SMB30,以調(diào)用出PPI主站工作模式,同時(shí)清空數(shù)據(jù)接收緩沖區(qū)和發(fā)送緩沖區(qū)中的內(nèi)容,實(shí)現(xiàn)初始化。
2)網(wǎng)絡(luò)讀數(shù)據(jù)判斷程序。V100.7常開(kāi)觸點(diǎn)用于激活網(wǎng)絡(luò)讀數(shù)據(jù)判斷,當(dāng)網(wǎng)絡(luò)讀數(shù)據(jù)操作完成時(shí),V100.7=1,同時(shí)VB107地址中的數(shù)據(jù)傳送給本機(jī)的QB0。通過(guò)該網(wǎng)絡(luò)程序,實(shí)現(xiàn)將從站PLC中的數(shù)據(jù)讀取到主站PLC。
3)數(shù)據(jù)傳輸程序。調(diào)用NETR和NETW指令完成主站PLC和從站PLC之間的數(shù)據(jù)讀寫作業(yè),以主從站之間的數(shù)據(jù)讀傳輸為例,傳輸程序的設(shè)計(jì)思路為:若NRTR被激活且沒(méi)有錯(cuò)誤,則將遠(yuǎn)程站數(shù)據(jù)區(qū)指針值IB0傳送至VD102,同時(shí)傳送需要讀取的數(shù)據(jù)字節(jié)數(shù)至VB106地址,之后調(diào)用NETR指令從端口0讀取從站的數(shù)據(jù)信息。
圖2 配置通信網(wǎng)絡(luò)讀指令
進(jìn)行通信參數(shù)設(shè)置是實(shí)現(xiàn)網(wǎng)絡(luò)系統(tǒng)正常通信的重要步驟。具體的步驟如下。
1)在STEP7軟件中單擊“工具/指令向?qū)А泵睿趶棾龅膶?duì)話框中選擇“配置多項(xiàng)網(wǎng)絡(luò)讀寫指令操作”,并在其左側(cè)下拉列表中選擇“NETR/NETW”選項(xiàng)。
2)由于系統(tǒng)包含主從站數(shù)據(jù)讀寫操作,因此在“您希望配置多少項(xiàng)網(wǎng)絡(luò)讀/寫操作?”選項(xiàng)中,選擇“2”。
3)選擇PLC網(wǎng)絡(luò)通信端口,自動(dòng)生成子程序,配置讀寫網(wǎng)絡(luò)參數(shù)。以數(shù)據(jù)讀網(wǎng)絡(luò)參數(shù)配置為例,選擇遠(yuǎn)程地址為“2”,從遠(yuǎn)程PLC的VB0讀取數(shù)據(jù),存在本地PLC的VB0處,再單擊“下一步”,保存設(shè)置。數(shù)據(jù)寫網(wǎng)絡(luò)參數(shù)配置以此類推。
本系統(tǒng)組建完成后,模擬工業(yè)控制現(xiàn)場(chǎng)環(huán)境,測(cè)試系統(tǒng)網(wǎng)絡(luò)通信的數(shù)據(jù)傳輸效果。測(cè)試環(huán)境為:從站向主站連續(xù)發(fā)送若干組數(shù)據(jù),再由主站向從站連續(xù)發(fā)送若干組數(shù)據(jù),對(duì)主從站PLC之間讀寫數(shù)據(jù)的響應(yīng)時(shí)間、誤差率、傳輸準(zhǔn)確率3項(xiàng)指標(biāo)平均值進(jìn)行監(jiān)測(cè)統(tǒng)計(jì)。結(jié)果顯示:系統(tǒng)通信的響應(yīng)時(shí)間、誤差率、數(shù)據(jù)傳輸準(zhǔn)確率均非常優(yōu)越,具體如表2所示。
表2 系統(tǒng)網(wǎng)絡(luò)通信效果測(cè)試統(tǒng)計(jì)表
由運(yùn)行測(cè)試結(jié)果可知:本系統(tǒng)成功地在多臺(tái)PLC之間實(shí)現(xiàn)了數(shù)據(jù)高效傳輸,數(shù)據(jù)傳輸?shù)恼`差率、準(zhǔn)確率均非常優(yōu)越,可用于工業(yè)控制現(xiàn)場(chǎng)級(jí)聯(lián)PLC系統(tǒng)之間的通信網(wǎng)絡(luò)組建及數(shù)據(jù)傳輸,對(duì)解決工業(yè)級(jí)PLC通信網(wǎng)絡(luò)大數(shù)據(jù)傳輸和控制問(wèn)題具有一定的參考價(jià)值。對(duì)系統(tǒng)的軟件程序進(jìn)行改進(jìn),可進(jìn)一步實(shí)現(xiàn)多臺(tái)主機(jī)控制多臺(tái)從機(jī)、一臺(tái)主機(jī)控制多臺(tái)從機(jī)等通信組網(wǎng)的延伸,產(chǎn)生更為顯著的網(wǎng)絡(luò)通信控制效益。