孟磊,鄒志云,郭宇晴,劉興紅,趙丹丹
(防化研究院,北京 102205)
?
基于Modbus TCP/IP的PLC-HMI-SCADA系統(tǒng)設(shè)計(jì)
孟磊,鄒志云,郭宇晴,劉興紅,趙丹丹
(防化研究院,北京 102205)
摘要:針對(duì)流程工業(yè)常用的兼容Modbus協(xié)議的智能設(shè)備,以一套小型電加熱反應(yīng)系統(tǒng)為對(duì)象,以PLC作控制器,利用觸摸屏設(shè)計(jì)了界面友好、便于現(xiàn)場(chǎng)操作的人機(jī)界面,并設(shè)計(jì)上位機(jī)數(shù)據(jù)采集與監(jiān)控(SCADA)系統(tǒng),各部分通過Modbus TCP/IP協(xié)議互聯(lián)通信,構(gòu)成了一套PLC-HMI-SCADA系統(tǒng),詳細(xì)介紹了系統(tǒng)組成及組態(tài)設(shè)計(jì)。實(shí)際應(yīng)用表明,基于Modbus TCP/IP協(xié)議通信的PLC-HMI-SCADA系統(tǒng)人機(jī)交互方便,便于擴(kuò)展,通信速度高。
關(guān)鍵詞:通信協(xié)議 可編程控制器觸摸屏數(shù)據(jù)采集及監(jiān)控系統(tǒng)
流程工業(yè)控制一般涉及模擬量較多,可靠性要求高,其自動(dòng)化監(jiān)控一直是工控領(lǐng)域研究和應(yīng)用的重點(diǎn)之一,目前應(yīng)用較多的有PLC及DCS等[1-2]。隨著自動(dòng)化技術(shù)的發(fā)展,各種智能儀表和模塊不斷產(chǎn)生,譬如一類典型的支持Modbus協(xié)議的智能儀表[3]。筆者以某小型反應(yīng)系統(tǒng)為例,采用浙江中控新型的一體化PLC U6-200作為控制器,利用昆侖通態(tài)觸摸屏和力控監(jiān)控組態(tài)軟件,設(shè)計(jì)了一套基于Modbus TCP/IP協(xié)議高速通信的PLC-HMI-SCADA系統(tǒng)。
1Modbus TCP/IP協(xié)議概述
Modbus協(xié)議是全球第一個(gè)真正用于工業(yè)現(xiàn)場(chǎng)的總線協(xié)議,自1979年在Modicon公司誕生以來就因其開放、免費(fèi)、簡(jiǎn)單高效的特性而廣泛應(yīng)用于智能設(shè)備間建立基于主從方式的通信連接[3]。Modbus只定義了通信消息的消息結(jié)構(gòu),與物理層無關(guān),故不管是傳統(tǒng)的RS-232,RS-422,RS-485總線,還是以太網(wǎng)網(wǎng)絡(luò),均可支持Modbus協(xié)議。當(dāng)然,為了能在特定的網(wǎng)絡(luò)上傳輸Modbus消息,必須將Modbus消息嵌入到此網(wǎng)絡(luò)上使用的幀或包結(jié)構(gòu)中,從而解決在相應(yīng)網(wǎng)絡(luò)上的地址、路由路徑及錯(cuò)誤檢測(cè)等問題。
當(dāng)Modbus在網(wǎng)絡(luò)上通信時(shí),Modbus協(xié)議規(guī)定必須要知道每個(gè)設(shè)備的設(shè)備地址,并識(shí)別按地址發(fā)來的消息(只接收廣播地址和本機(jī)地址消息),然后根據(jù)消息內(nèi)容執(zhí)行相應(yīng)的操作。如果需要回應(yīng),則設(shè)備根據(jù)Modbus協(xié)議生成反饋信息并發(fā)送到網(wǎng)絡(luò)。Modbus標(biāo)準(zhǔn)幀結(jié)構(gòu)如圖1所示。
圖1 Modbus標(biāo)準(zhǔn)幀結(jié)構(gòu)示意
其中,協(xié)議數(shù)據(jù)單元PDU(protocol data unit)部分為必需的,應(yīng)用數(shù)據(jù)單元ADU(application data unit)和PDU的差異部分根據(jù)傳輸網(wǎng)絡(luò)的不同而差異。幀結(jié)構(gòu)中的代碼域包含1Byte,實(shí)質(zhì)是定義了一系列的Modbus功能碼,當(dāng)消息從主設(shè)備發(fā)往從設(shè)備時(shí),功能代碼將告知從設(shè)備需要執(zhí)行哪些行為,從設(shè)備根據(jù)功能碼的指示執(zhí)行相應(yīng)的操作。當(dāng)從設(shè)備回應(yīng)時(shí),使用功能碼來指示是正常還是異常,正?;貞?yīng)時(shí)功能碼保持不變。數(shù)據(jù)域由2個(gè)十六進(jìn)制數(shù)集合構(gòu)成,是各個(gè)功能碼的操作數(shù)。
Modbus TCP/IP是Modbus與以太網(wǎng)結(jié)合的產(chǎn)物,其運(yùn)行在TCP/IP網(wǎng)絡(luò)上,比Modbus串行協(xié)議擴(kuò)展更為方便,傳輸速度更高,伴隨著以太網(wǎng)的發(fā)展得到越來越多的關(guān)注與應(yīng)用。一般說來,利用以太網(wǎng)通信的Modbus TCP/IP速率可達(dá)100 Mbit/s,而利用串行協(xié)議通信的速率只能達(dá)到115.2 Kbit/s[3]。所有的Modbus TCP/IP幀都是通過TCP端口502發(fā)出。對(duì)于Modbus TCP/IP,其幀結(jié)構(gòu)如圖2所示。
圖2 Modbus TCP幀結(jié)構(gòu)示意
圖2中附加地址域采用了7 Byte的MBAP(modbus application protocol header)前綴,包含事務(wù)處理標(biāo)示符(2 Byte)、協(xié)議標(biāo)示符(2 Byte)、后續(xù)數(shù)據(jù)長(zhǎng)度(2 Byte)和單元標(biāo)識(shí)符(1 Byte)。幀本身沒有數(shù)據(jù)校驗(yàn)域,傳輸數(shù)據(jù)的準(zhǔn)確性用TCP/IP和鏈路層(以太網(wǎng))校驗(yàn)的機(jī)制來校驗(yàn)。
在構(gòu)建基于Modbus TCP/IP的HMI/SCADA系統(tǒng)時(shí),只需相關(guān)智能設(shè)備支持標(biāo)準(zhǔn)Modbus TCP/IP協(xié)議或至少可擴(kuò)展支持該協(xié)議,將其通過路由器、交換機(jī)等網(wǎng)絡(luò)設(shè)備連接至一個(gè)網(wǎng)絡(luò)中并進(jìn)行相關(guān)網(wǎng)絡(luò)配置和設(shè)備組態(tài)即可。
2系統(tǒng)組成
本文基于Modbus TCP/IP,將控制器與觸摸屏和上位機(jī)通過以太網(wǎng)連接,實(shí)現(xiàn)了系統(tǒng)的高速通信。硬件上主要由U6-200一體化PLC、昆侖通態(tài)嵌入式工控觸摸屏TPC1062K、上位機(jī)、PAC15P調(diào)壓板、可控硅功率元件、500 W電加熱套、Pt100熱電阻、三口玻璃反應(yīng)器等組成。整個(gè)系統(tǒng)組成如圖3所示。
圖3 小型反應(yīng)器PLC-HMI-SCADA系統(tǒng)組成示意
其中,一體化PLC作為控制器,其結(jié)構(gòu)緊湊、功能強(qiáng)大,機(jī)身帶有16路AI/8路AO,24路DI/16路DO及4路PI(頻率通道),可以方便實(shí)現(xiàn)對(duì)模擬量、數(shù)字量的采集與控制,無須額外擴(kuò)展模塊即可完成過程現(xiàn)場(chǎng)多種控制任務(wù)。觸摸屏作為人機(jī)交互界面,實(shí)現(xiàn)人與PLC的動(dòng)態(tài)交互,可以方便在現(xiàn)場(chǎng)監(jiān)控反應(yīng)系統(tǒng)當(dāng)前狀態(tài)、設(shè)置PID參數(shù)、啟動(dòng)/取消自整定功能、設(shè)定控制溫度、觀察實(shí)時(shí)/歷史趨勢(shì)、報(bào)警等。上位機(jī)在初始階段完成對(duì)PLC和觸摸屏組態(tài),運(yùn)行階段則利用SCADA系統(tǒng),在上位機(jī)中實(shí)現(xiàn)過程的數(shù)據(jù)采集與監(jiān)控。
該HMI/SCADA系統(tǒng)的設(shè)計(jì)基于實(shí)驗(yàn)室小型電加熱反應(yīng)系統(tǒng)[4]。該系統(tǒng)通過Pt100熱電阻作為測(cè)量反饋環(huán)節(jié),測(cè)得反應(yīng)器的過程變量當(dāng)前值并直接送入PLC;調(diào)壓板、可控硅與電加熱套作為執(zhí)行器,接受控制器的4~20mA電流輸出而相應(yīng)調(diào)整電加熱套的加熱電壓,進(jìn)而影響被控反應(yīng)器的溫度變量;小型三口玻璃反應(yīng)器是系統(tǒng)的被控對(duì)象,其內(nèi)部溫度為被控的過程變量。
3PLC-HMI-SCADA系統(tǒng)設(shè)計(jì)
3.1PLC組態(tài)
U6-200一體化PLC機(jī)身帶有2個(gè)RS-232C串口和1個(gè)以太網(wǎng)接口等多種通信接口,其內(nèi)部集成Modbus模塊,可通過以太網(wǎng)接口支持Modbus TCP/IP協(xié)議,與處在網(wǎng)絡(luò)中的其他Modbus智能設(shè)備高速通信。本文將該P(yáng)LC通過以太網(wǎng)口連接至路由器并配置其IP地址為192.168.1.2,設(shè)備地址為6,默認(rèn)為從機(jī)模式。由于PLC的數(shù)據(jù)類型和支持的功能碼在與HMI/SCADA通信時(shí)起到重要的作用,PLC涉及的數(shù)據(jù)類型見表1所列,支持的功能碼見表2所列。
表1U6-200 PLC的數(shù)據(jù)類型
類 型說 明布爾型1位寄存器(整型)16位浮點(diǎn)型32位
表2U6-200 PLC支持的Modbus功能碼
功 能 碼功 能01讀一個(gè)/一組布爾量03讀一個(gè)/一組寄存器05寫一個(gè)布爾量06寫一個(gè)寄存器15寫一個(gè)/一組布爾量16寫一個(gè)/一組寄存器
U6-200 PLC不同于傳統(tǒng)PLC,需要編制繁雜的梯形圖或指令表程序,它只需通過上位機(jī)組態(tài)軟件Inscan MCS組態(tài)并通過Modbus TCP網(wǎng)絡(luò)下載編譯好的組態(tài)文件或通過配套的調(diào)試屏就地組態(tài)。該項(xiàng)目中使用AI01采集Pt100熱電阻的輸入,PID01控制回路接受AI01測(cè)量值作為反饋,設(shè)定值通過上位機(jī)或HMI按需設(shè)置,采用數(shù)字PID算法,集成了基于繼電反饋算法的自動(dòng)整定功能[5],組態(tài)后可通過上位機(jī)或HMI直接調(diào)用。AO01將PID01運(yùn)算結(jié)果以4~20mA標(biāo)準(zhǔn)信號(hào)輸出至可控硅調(diào)壓板。
3.2觸摸屏組態(tài)
該項(xiàng)目利用國(guó)內(nèi)昆侖通態(tài)嵌入式工控觸摸屏設(shè)計(jì)人機(jī)界面,利用其取代傳統(tǒng)的按鈕控制系統(tǒng)或文本操作界面來設(shè)計(jì)HMI,人機(jī)交互更友好[6-7]。使用MCGS嵌入式組態(tài)軟件對(duì)觸摸屏進(jìn)行組態(tài),該軟件體積小且對(duì)硬件用戶免費(fèi)。與其他同類產(chǎn)品相比,其開放性更好,靈活性和性價(jià)比更高,具有圖形界面設(shè)計(jì)管理、動(dòng)畫、實(shí)時(shí)/歷史曲線、報(bào)表、報(bào)警等強(qiáng)大的組態(tài)功能。
在對(duì)觸摸屏組態(tài)時(shí),首先在設(shè)備窗口中定義設(shè)備屬性并設(shè)置IP地址通信端口等相關(guān)參數(shù)。MCGS把設(shè)備分為2個(gè)層次: 父設(shè)備和子設(shè)備。父設(shè)備與硬件接口相對(duì)應(yīng),子設(shè)備放在父設(shè)備下,用于與該父設(shè)備對(duì)應(yīng)的借口所連接的設(shè)備通信,需在子設(shè)備中將參數(shù)調(diào)整為與父設(shè)備一致。然后定義設(shè)備通道用于與PLC的通信: 如AI01通道、AI01報(bào)警通道(含AI01.HH,AI01.Hi,AI01.Lo,AI01.LL)、AO01通道等。定義通道時(shí)在PLC說明書中查出通道的物理地址、數(shù)據(jù)類型、讀寫屬性和支持功能碼,在MCGS中正確設(shè)置即可。對(duì)設(shè)備組態(tài)并定義好設(shè)備通道后,觸摸屏與PLC即可通過Modbus TCP協(xié)議高速通信。最后可在用戶窗口中組態(tài)人機(jī)界面,如動(dòng)畫設(shè)置、實(shí)時(shí)趨勢(shì)曲線顯示等。
3.3上位機(jī)組態(tài)
上位機(jī)中采用力控7.0監(jiān)控組態(tài)軟件設(shè)計(jì)SCADA系統(tǒng)。該軟件是對(duì)現(xiàn)場(chǎng)生產(chǎn)數(shù)據(jù)進(jìn)行采集與過程控制的專用軟件,最大的特點(diǎn)是能以靈活多樣的“組態(tài)方式”而不是編程方式來進(jìn)行系統(tǒng)集成,它提供了良好的用戶開發(fā)界面和簡(jiǎn)捷的工程實(shí)現(xiàn)方法,只要將其預(yù)設(shè)置的各種軟件模塊進(jìn)行簡(jiǎn)單的“組態(tài)”,便可以非常容易地實(shí)現(xiàn)和完成監(jiān)控層的各項(xiàng)功能,比如在分布式網(wǎng)絡(luò)應(yīng)用中,所有應(yīng)用(例如趨勢(shì)曲線、報(bào)警等)對(duì)遠(yuǎn)程數(shù)據(jù)的引用方法與引用本地?cái)?shù)據(jù)完全相同,通過“組態(tài)”的方式可以大幅縮短系統(tǒng)集成的時(shí)間,提高集成效率[8-10]。
該部分設(shè)計(jì)實(shí)現(xiàn)思路同用MCGS嵌入版組態(tài)觸摸屏?xí)r類似。根據(jù)定義好的通道詳情,在數(shù)據(jù)庫(kù)中定義模擬I/O點(diǎn)和數(shù)字I/O點(diǎn),其中布爾型的通道在此定義為數(shù)字點(diǎn),其余的為模擬點(diǎn)。
IO設(shè)備及數(shù)據(jù)庫(kù)組態(tài)好后,上位機(jī)與PLC即可通過Modbus TCP協(xié)議高速通信。最后可在窗口中組態(tài)動(dòng)畫設(shè)置、實(shí)時(shí)趨勢(shì)曲線顯示等即可。
4結(jié)束語
實(shí)踐證明,應(yīng)用Modbus TCP/IP協(xié)議設(shè)計(jì)的一體化PLC-HMI-SCADA系統(tǒng),各個(gè)智能設(shè)備間通過以太網(wǎng)實(shí)現(xiàn)了高速通信,系統(tǒng)運(yùn)行良好。在控制層利用PLC實(shí)現(xiàn)了對(duì)設(shè)備層小型反應(yīng)系統(tǒng)的有效控制,且該新型PLC無需編程、組態(tài)方便;在MCGS嵌入版中為昆侖通態(tài)嵌入式一體化觸摸屏設(shè)計(jì)的HMI界面友好,在現(xiàn)場(chǎng)即可實(shí)現(xiàn)對(duì)反應(yīng)系統(tǒng)的有效監(jiān)控,其參數(shù)設(shè)置、自整定啟動(dòng)/停止等均可脫離上位機(jī)完全在現(xiàn)場(chǎng)操作實(shí)現(xiàn);在監(jiān)控層利用力控7.0監(jiān)控組態(tài)軟件設(shè)計(jì)上位機(jī)SCADA系統(tǒng),通過Modbus TCP/IP可與控制層的設(shè)備高速通信,實(shí)現(xiàn)對(duì)設(shè)備層和控制層的有效監(jiān)控。
參考文獻(xiàn):
[1]王家國(guó),田芮. 基于Modbus總線協(xié)議的工業(yè)鍋爐監(jiān)控系統(tǒng)設(shè)計(jì)[J].自動(dòng)化技術(shù)與應(yīng)用,2012,31(11): 53-57.
[2]SANGEETHA A L, NAVEENKUMAR B, GANESH A B, et al. Experimental Validation of PID Based Cascade Control System’ through SCADA-PLC-OPC and Internet Architectures[J]. Measurement,2012(45): 643-649.
[3]華镕.從Modbus到透明就緒—施耐德電氣工業(yè)網(wǎng)絡(luò)的協(xié)議、設(shè)計(jì)、安裝和應(yīng)用[M].北京: 機(jī)械工業(yè)出版社,2009.
[4]于蒙,鄒志云,趙丹丹,等.小型電加熱反應(yīng)器溫度的RBF神經(jīng)網(wǎng)絡(luò)自整定PID控制[J].石油化工自動(dòng)化,2012,48(06): 31-35.
[5]陳卓.基于U6-200一體化PLC的分布式自動(dòng)配料系統(tǒng)的研究[J].控制工程,2014,21(增刊1): 104-106.
[6]竇小明,黃曉偉.MCGS觸摸屏與多臺(tái)匯川變頻器的Modbus通訊設(shè)計(jì)與實(shí)踐[J].自動(dòng)化技術(shù)與應(yīng)用,2012,31(11): 53-57.
[7]黎志剛,王俊元,劉波.基于MCGS的SMC電動(dòng)執(zhí)行器控制方法研究[J].制造業(yè)自動(dòng)化,2014,36(07): 16-40.
[8]徐麗,萬朵,王健.基于PLC與力控6.0的調(diào)速管水冷監(jiān)控系統(tǒng)設(shè)計(jì)[J].化工自動(dòng)化及儀表,2013,40(06): 807-809.
[9]畢健,高世陽(yáng),何澤,等.PLC和組態(tài)軟件在氣源總站監(jiān)控系統(tǒng)中的應(yīng)用[J].自動(dòng)化儀表,2014,35(增刊1): 67-72.
[10]趙黎明,張冰.電機(jī)群網(wǎng)絡(luò)管控一體化PLC-SCADA設(shè)計(jì)與應(yīng)用[J].工業(yè)儀表與自動(dòng)化裝置,2012(03): 22-26.
Design of PLC-HMI-SCADA System Based on Modbus TCP/IP
Meng Lei, Zou Zhiyun, Guo Yuqing, Liu Xinghong, Zhao Dandan
(Research Institute of Chemical Defense, Beijing, 102205, China)
Abstracts: Aiming at intelligent devices with compatible Modbus protocol frequently-used in process industry, the human-computer interface with friendly interface and convenient on-site operation is designed with touch screen with PLC as controller and one small set of electrical heating reaction system as object. The upper computer supervisory control and data acquisition is also designed with interconnect communication among each section through Modbus TCP/IP protocol to construct one set of PLC-HMI-SCADA system. The system composition and configuration design are introduced in detail. Practical application results indicate the human-computer interaction is convenient for Modbud TCP/IP protocol based PLC-HMI-SCADA system with easy extension and high communication speed.
Key words:Communication protocol; programmable logic controller; touch screen; supervisory control and data acquisition
中圖分類號(hào):TP273
文獻(xiàn)標(biāo)志碼:B
文章編號(hào):1007-7324(2015)06-0040-03
作者簡(jiǎn)介:孟磊(1990—),男,河南開封人,2013年畢業(yè)于西安交通大學(xué)自動(dòng)化專業(yè),現(xiàn)為防化研究院在讀碩士研究生,主要從事過程控制方面的研究。
稿件收到日期: 2015-06-05,修改稿收到日期: 2015-09-28。