基于Modbus協(xié)議的SCADA系統(tǒng)設(shè)計(jì)
【摘要】為某動(dòng)模實(shí)驗(yàn)室改造提出了基于Modbus協(xié)議的數(shù)字化監(jiān)測(cè)和數(shù)據(jù)采集系統(tǒng)SCADA(Su鄄pervisoryControlandDataAcquisiTIon)的構(gòu)建。整個(gè)系統(tǒng)以SLC/505PLC為核心,以支持Modbus協(xié)議的PM170儀表作為測(cè)量單元,再通過Ethernet將數(shù)據(jù)傳送給作為人機(jī)界面的GP觸摸屏。改造完成后近一年的實(shí)際運(yùn)行表明,整個(gè)監(jiān)控系統(tǒng)是穩(wěn)定、可靠、高效的,完全能夠滿足教學(xué)與科研的需要。
作為實(shí)際大電力系統(tǒng)的物理模擬,動(dòng)態(tài)模擬實(shí)驗(yàn)室不僅要符合實(shí)際電力系統(tǒng)的多種正常運(yùn)行方式,而且要模擬電力系統(tǒng)的各種故障方式;不僅要為科學(xué)研究提供準(zhǔn)確詳盡的測(cè)量數(shù)據(jù),而且要保證各種試驗(yàn)設(shè)備始終運(yùn)行在允許狀態(tài)下。這些都對(duì)電力系統(tǒng)動(dòng)態(tài)模擬實(shí)驗(yàn)室的監(jiān)測(cè)和控制系統(tǒng)提出了較高的要求。
本文介紹一個(gè)用于監(jiān)控整個(gè)動(dòng)模系統(tǒng)的SCADA(SupervisoryControlandDataAcquisiTIon)系統(tǒng),監(jiān)控系統(tǒng)的構(gòu)建以Prosoft公司的3150-MCM數(shù)據(jù)采集模塊和ABB公司的PM170系列測(cè)量表計(jì)組成Modbus網(wǎng)絡(luò)對(duì)系統(tǒng)的運(yùn)行參數(shù)進(jìn)行測(cè)量和采集,數(shù)據(jù)經(jīng)過AB公司的SLC/505PLC的處理和計(jì)算,再通過Ethernet發(fā)送給作為上位機(jī)的GP觸摸屏。
1、Modbus協(xié)議簡(jiǎn)介Modbus協(xié)議是Modicon公司開發(fā)的一種工業(yè)通信和分布式控制系統(tǒng)協(xié)議。Modbus網(wǎng)絡(luò)屬于一種主從網(wǎng)絡(luò),允許一個(gè)主機(jī)和一個(gè)或多個(gè)從機(jī)通信。它采用命令/應(yīng)答方式,每種命令報(bào)文都對(duì)應(yīng)著一種應(yīng)答報(bào)文。命令報(bào)文由主機(jī)發(fā)出,當(dāng)從機(jī)收到發(fā)給自己的報(bào)文后,就發(fā)出相應(yīng)的應(yīng)答報(bào)文進(jìn)行響應(yīng)。網(wǎng)絡(luò)中的每個(gè)從機(jī)都必須分配給一個(gè)唯一的地址,主機(jī)發(fā)出的命令中含有要求訪問的從機(jī)地址,只有具有該地址的從機(jī)才會(huì)對(duì)該命令響應(yīng)。
在Modbus協(xié)議中使用RTU和ASCII兩種傳輸模式。RTU模式的傳輸格式是8個(gè)數(shù)據(jù)位,2個(gè)停止位,沒有奇偶校驗(yàn)位。RTU接收設(shè)備依靠接收字符間經(jīng)過的時(shí)間判斷一幀的開始,如果經(jīng)過3個(gè)半的字符時(shí)間后仍然沒有新的字符或者沒有完成幀,接收設(shè)備就會(huì)放棄該幀,并設(shè)下一個(gè)字符為新一幀的開始。在RTU模式中,1字節(jié)的信息作為一個(gè)8位字符被發(fā)送;而在ASCII模式中則作為兩個(gè)ASCII字符被發(fā)送。如“08”發(fā)送時(shí),采用RTU模式時(shí)為“00001000”,然而采用了ASCII模式則成為“00110000”+“00111000”(ASCII字符的“0”和“8”)。因此,發(fā)送同樣的數(shù)據(jù)時(shí),RTU模式的效率大約為ASCII模式的兩倍,一般采用RTU模式。
2、3150-MCMModbus通信模塊簡(jiǎn)介3150-MCM通信模塊是Prosoft公司為了配合Allen-Bradley公司的SLC500系列PLC生產(chǎn)的一塊Modbus通信卡,它有兩個(gè)串口,每個(gè)串口都可支持RS-232,RS-422,RS-485通信協(xié)議(通過模塊上的跳線來(lái)選擇)。模塊的兩個(gè)串口可以配置為兩個(gè)都為Master,或兩個(gè)都為Slave;或者一個(gè)為Master、另一個(gè)為Slave。
在本應(yīng)用中都作為Master使用。3150-MCM通信模塊的功能是比較強(qiáng)大的。它內(nèi)部有多達(dá)100條的命令列表。每條命令,從裝置地址、內(nèi)部尋址的首地址和要求訪問的字節(jié)數(shù)都是可以配置的,以形成符合Modbus協(xié)議的命令報(bào)文。模塊內(nèi)部有多達(dá)4000個(gè)16位存貯器,可以用來(lái)存貯數(shù)據(jù)并且與PLC的CPU單元交換數(shù)據(jù)。在通信出錯(cuò)時(shí),模塊可以產(chǎn)生錯(cuò)誤代碼并返回給PLC以便進(jìn)行出錯(cuò)處理。Modbus協(xié)議的命令比較多,3150-MCM模塊并沒有支持其中的所有命令,而只是選擇實(shí)現(xiàn)了其中最主要的命令,對(duì)于一般的工程應(yīng)用而言,這些命令已經(jīng)足夠了。
3150-MCM模塊安裝在PLC的機(jī)架上,通過背板與CPU單元通信。由于SLC并沒有真正的塊通信功能,所以利用I/Otable控制模塊和CPU之間的握手,并使用M0/M1文件傳輸數(shù)據(jù)。模塊通信部分的結(jié)構(gòu)圖如圖1所示。
在上電之后,模塊先進(jìn)行初始化,接著會(huì)不斷向CPU單元發(fā)出要求得到配置數(shù)據(jù)的請(qǐng)求,直到得到含有配置數(shù)據(jù)的數(shù)據(jù)塊為止。之后,模塊就進(jìn)入正常的工作過程,具體包括對(duì)兩個(gè)串口的通信進(jìn)行管理以及和CPU單元交換信息。
從數(shù)據(jù)流的情況來(lái)看,模塊相當(dāng)于PLC與外部設(shè)備之間的中間層。它一方面通過Modbus網(wǎng)絡(luò)與外部設(shè)備通信,另一方面使用M0/M1文件與CPU單元進(jìn)行通信,如圖2所示。
3、PM170系列電力計(jì)量?jī)x表簡(jiǎn)介
ABB公司的PM170系列電力計(jì)量?jī)x表是ABB公司生產(chǎn)的適應(yīng)電力工業(yè)發(fā)展的新一代測(cè)量?jī)x表。它接線簡(jiǎn)單靈活,不再需要直流變送器,直接與TV,TA連線即可。它內(nèi)部裝有微處理器,通過測(cè)量計(jì)算可得到三相電壓、電流、有功、無(wú)功、功率因數(shù)、頻率和不平衡電流等多個(gè)電氣量。同時(shí)它還有比較強(qiáng)大的通信功能:在物理接口上支持RS-232,RS-422和RS-485三種通信接口;在通信協(xié)議上它支持ASCII,Modbus和DNPV3.00多種協(xié)議。