|
摘要:在油站輸油管道加熱係統的高安全性、可靠性要求下,設計采用冗餘技術保障控製係統高效運行,降低故障帶來的損失。本文介紹了西門子公司基於S7-300係列可編程控製器(PLC)開發的軟件冗餘技術。該係統穩定性高、構成靈活、成本相對較低、具有很好的應用前景。
關鍵詞:可編程邏輯控製器;軟件冗餘;通信
Application of PLC Software Redundancy in the Heating system of steam boiler
Li Qiang1 Wang Lei1
(1.Faculty of Automation and Information Engineering, Xi’an University of Technology, Xi’an 710048,China;)
Abstract: On request of high security and dependability heating system of pipe-laying, design adopt software redundancy technique ensure high efficiency running of control system, reduce system malfunction. This paper introduces the software redundancy based on S7-300 serial programmable controllers of SIEMENS. The system have capability of high stability, structure’s agility, low cost, and good application foreground.
Keywords: PLC; Software Redundancy; communication
在zai重zhong要yao的de工gong業ye生sheng產chan領ling域yu和he軍jun用yong產chan品pin設she計ji中zhong,采cai用yong冗rong餘yu技ji術shu提ti高gao控kong製zhi係xi統tong可ke靠kao性xing的de做zuo法fa越yue來lai越yue普pu遍bian。常chang規gui的de冗rong餘yu就jiu是shi采cai用yong成cheng倍bei增zeng加jia元yuan件jian的de方fang式shi來lai參can與yu控kong製zhi,以yi期qi能neng夠gou將jiang因yin控kong製zhi設she備bei的de意yi外wai而er導dao致zhi的de停ting機ji降jiang到dao最zui少shao。
ranyouguolushishuyouguandaojiarexitongzhongdejiareshebei,guoludewuguzhangyunxingshizhenggeshuyouguandaowangluozhengchanggongzuodebaozheng。zaiguolukongzhixitongzhong,shejicaiyongliangzuduliyunxingdeximenziPLC軟件冗餘控製係統,保證加熱係統的可靠、連續、安全運行。
冗餘常見的方式是中央處理器冗餘、I/O 冗餘和通訊冗餘。中央處理器單元冗餘(即一用一備或一用多備),在(zai)主(zhu)處(chu)理(li)器(qi)單(dan)元(yuan)失(shi)效(xiao)時(shi),備(bei)用(yong)處(chu)理(li)器(qi)單(dan)元(yuan)自(zi)動(dong)投(tou)入(ru)運(yun)行(xing),接(jie)管(guan)控(kong)製(zhi)。在(zai)控(kong)製(zhi)權(quan)的(de)交(jiao)互(hu)方(fang)式(shi)上(shang)又(you)可(ke)分(fen)為(wei)硬(ying)件(jian)冗(rong)餘(yu)和(he)軟(ruan)件(jian)冗(rong)餘(yu)兩(liang)種(zhong)。硬(ying)件(jian)冗(rong)餘(yu)是(shi)采(cai)用(yong)硬(ying)件(jian)方(fang)式(shi)進(jin)行(xing)切(qie)換(huan),不(bu)用(yong)編(bian)程(cheng)。除(chu)了(le)成(cheng)對(dui)的(de)使(shi)用(yong)處(chu)理(li)器(qi)外(wai),還(hai)用(yong)專(zhuan)用(yong)的(de)熱(re)備(bei)模(mo)塊(kuai),熱(re)備(bei)模(mo)塊(kuai)負(fu)責(ze)檢(jian)測(ce)處(chu)理(li)器(qi),一(yi)旦(dan)發(fa)現(xian)主(zhu)處(chu)理(li)器(qi)失(shi)效(xiao),馬(ma)上(shang)將(jiang)係(xi)統(tong)控(kong)製(zhi)權(quan)交(jiao)給(gei)備(bei)用(yong)處(chu)理(li)器(qi)。硬(ying)件(jian)冗(rong)餘(yu)均(jun)采(cai)用(yong)光(guang)纖(xian)通(tong)訊(xun),通(tong)訊(xun)速(su)度(du)快(kuai),係(xi)統(tong)穩(wen)定(ding),切(qie)換(huan)時(shi)間(jian)更(geng)短(duan),但(dan)是(shi)成(cheng)本(ben)也(ye)比(bi)較(jiao)高(gao)。軟(ruan)件(jian)冗(rong)餘(yu)方(fang)式(shi)隻(zhi)需(xu)要(yao)成(cheng)對(dui)的(de)處(chu)理(li)器(qi),用(yong)軟(ruan)件(jian)編(bian)程(cheng)的(de)方(fang)式(shi)進(jin)行(xing)處(chu)理(li)器(qi)的(de)切(qie)換(huan),組(zu)成(cheng)比(bi)較(jiao)經(jing)濟(ji),構(gou)成(cheng)十(shi)分(fen)靈(ling)活(huo),但(dan)程(cheng)序(xu)處(chu)理(li)需(xu)要(yao)一(yi)定(ding)的(de)時(shi)間(jian),對(dui)於(yu)時(shi)鍾(zhong)同(tong)步(bu)及(ji)切(qie)換(huan)時(shi)間(jian)要(yao)求(qiu)不(bu)是(shi)十(shi)分(fen)嚴(yan)格(ge)的(de)場(chang)合(he),選(xuan)用(yong)軟(ruan)件(jian)冗(rong)餘(yu)方(fang)式(shi)還(hai)是(shi)非(fei)常(chang)經(jing)濟(ji)有(you)效(xiao)的(de)。
1.控製係統構成:
1.1 監控係統整體設計
本控製方案設計采用了SIMATIC WinCC 組態軟件來實現過程控製的上位機組態,WinCC是在生產和過程自動化中解決可視化和控製任務的工業技術係統。下位機控製係統設計采用兩套獨立的西門子 SIMATIC S7-300係列PLC實現冗餘控製,其編程軟件STEP-7功能強大,模塊化結構,優化了用戶程序。
監控係統構成實現如圖1:
圖1 冗餘監控係統
Fig.1 Software redundancy monitoring system
1.2 PLC軟件冗餘控製係統
軟件冗餘是Siemens實現冗餘功能的一種低成本解決方案,可以應用於對主備係統切換時間要求不高的控製係統中。
1.2.1係統結構
Siemens軟件冗餘係統的軟件、硬件包括:
1套STEP7編程軟件(V5.x)加軟冗餘軟件包(V1.x);
2套PLC控製器及I/O模塊,可以是S7-300或S7-400係統;
3條通訊鏈路,主係統與從站通訊鏈路(PROFIBUS 1)、備用係統與從站通訊鏈路(PROFIBUS2)、主係統與備用係統的數據同步通訊鏈路(MPI 或 PROFIBUS 或 Ethernet);
軟冗餘能夠實現:
1. 主機架電源、背板總線等冗餘;
2. PLC處理器冗餘;
3. PROFIBUS現場總線網絡冗餘(包括通訊接口、總線接頭、總線電纜的冗餘);
4. ET200M站的通訊接口模塊IM153-2冗餘。
軟冗餘係統由A和B兩套PLC控製係統組成。開始時,A係統為主,B係統為備用,當主係統A中的任何一個組件出錯,控製任務會自動切換到備用係統B當中執行,這時,B係統為主,A係統為備用,這種切換過程是包括電源、CPU、通訊電纜和IM153接(jie)口(kou)模(mo)塊(kuai)的(de)整(zheng)體(ti)切(qie)換(huan)。係(xi)統(tong)運(yun)行(xing)過(guo)程(cheng)中(zhong),即(ji)使(shi)沒(mei)有(you)任(ren)何(he)組(zu)件(jian)出(chu)錯(cuo),操(cao)作(zuo)人(ren)員(yuan)也(ye)可(ke)以(yi)通(tong)過(guo)設(she)定(ding)控(kong)製(zhi)字(zi),實(shi)現(xian)手(shou)動(dong)的(de)主(zhu)備(bei)係(xi)統(tong)切(qie)換(huan),這(zhe)種(zhong)手(shou)動(dong)切(qie)換(huan)過(guo)程(cheng),對(dui)於(yu)控(kong)製(zhi)係(xi)統(tong)的(de)軟(ruan)硬(ying)件(jian)調(tiao)整(zheng)、更換非常有用。
1.2.2 係統工作原理
在軟冗餘係統進行工作時,A、B控製係統(處理器,通訊、I/O)獨立運行,由主係統的PLC掌握對ET200從站中的I/O控製權。A、B係統中的PLC程序由非冗餘用戶程序段和冗餘用戶程序段組成,主係統PLC執行全部的用戶程序,備用係統PLC隻執行非冗餘用戶程序段,而跳過冗餘用戶程序段。下麵我們看一下軟冗餘係統中PLC內部的運行過程(圖2):
圖2 冗餘工作原理
Fig.2 The working principle of software redundancy
1.3 PLC控製係統設計
利用信號采集模塊實時采集鍋爐的輸油管進出口溫度和壓力,根據設定起爐、轉火、停爐溫度值控製燃燒機的自動啟動、轉火、停止等操作。根據溫度、壓力報警設定值,控製鍋爐緊急停爐和故障報警等處理。
控製係統組成:一組CPU 315-2 DP 處理器(帶PROFIBUS-DP接口);2組ET200M模塊(各自帶2個IM352接口);一組SM321 DI開關量輸入模塊;一組SM322 DO開關量輸出模塊;3組SM331 AI模擬量輸入模塊。一組CP343-1以太網通信處理器模塊。
1.4 WinCC與S7-300的通信實現
根據控製方案的設計,采用WinCC組態作為上位機監控,用西門子的S7_300作為下位機執行機構,我將采用以太網的標準Tcp/IP協議實現WinCC與S7-300的通信,將現場的狀態參數、控製參數等上傳到監控層。這個變量傳遞的過程可以用圖3來說明:
圖3 變量監控過程
Fig.3 Course of variable monitoring
1.5 WinCC組態冗餘的實現
通過兩台獨立計算機同時運行項目功能完全相同的WinCC組態項目,構成並行服務器來實現組態冗餘結構,兩台服務器通過以太網連接,並與PLC連接。每台服務器都帶有其自身的過程連接和可用的數據歸檔,工作PLC站將過程數據和消息同時發送到兩台冗餘服務器。如果一台服務器發生故障,另一台將繼續接收和歸檔來自PLC工gong作zuo站zhan的de過guo程cheng值zhi和he消xiao息xi。出chu現xian故gu障zhang的de服fu務wu器qi重zhong新xin工gong作zuo後hou,冗rong餘yu服fu務wu器qi為wei故gu障zhang時shi間jian的de歸gui檔dang執zhi行xing同tong步bu,通tong過guo將jiang丟diu失shi的de數shu據ju重zhong新xin傳chuan送song到dao出chu故gu障zhang的de服fu務wu器qi,來lai消xiao除chu故gu障zhang引yin起qi的de歸gui檔dang差cha別bie。
冗餘服務器的組態實現:1.必須在兩個冗餘服務器上組態功能完全相同的WinCC組態項目(建議使用WinCC項目複製器)。2. 對於WinCC冗餘,需要同步服務器(建議使用設備的時間同步)。3. 配置冗餘用戶歸檔,實現用戶歸檔同步。4. 組態在線消息同步。5. 打開冗餘編輯器,在“冗餘夥伴服務器”項,輸入冗餘服務器的名稱,並在“用戶歸檔”項下,激活“用戶歸檔的同步”。
本係統通過動態向導設置讀取IP冗餘地址,實現主S7-300數據監控。
1.6 軟冗餘程序的設計
軟冗餘程序需要西門子提供的軟冗餘軟件包及STEP7,在A站的Block中插入OB1(主循環程序塊)、OB35(定時中斷組織塊)、OB100(暖啟動調用程序塊)、OB80(在主係統與備用係統切換時間超時,調用該塊)、OB82(DP-Slave ET200站上的IM153-2模塊出錯報警,調用該功能塊)、OB83(DP從站的接口模塊與主站鏈接斷開或鏈接重新建立時調用該塊)、OB86(主從站通訊出錯調用該塊)、OB87(通訊失敗調用該塊)、OB122(外圍設備訪問出錯調用該塊)、OB121等組織塊,並對其中的OB100、OB35、OB86進行編程。
首先,用戶需要在初始化程序中(OB100)定義冗餘部分的數據區,該數據區可以包括:一個過程映像區,一個定時器區,一個計數器區和一個數據塊區,S7-300同步的最大數據量為8kBytes。本控製係統將每台鍋爐的溫度、壓力采集值和運行狀態參數分別放置在不同的DB數據塊,並定義為需要冗餘的數據塊。
使用的是OB35的默認屬性,即每100ms中斷觸發一次,可以根據實際的需要在CPU屬性中修改中斷的時間間隔。在OB35裏調用FB101S ’WR_ZYK’功能塊,FB101塊中封裝了冗餘功能的程序段,實現冗餘功能。當執行‘SWR_START’程序塊時,係統分配這些數據區,不能用S7 的定時器和計數器,隻能使用IEC標準的定時器和計數器。
OB35中的程序段也可以在OB1中實現,隻是不使用中斷的方式,而使用主循環的方式。
調用FB101時,你可以在線地讀出RETURN_VAL參數的數值,如果為0,說明冗餘鏈接正常。如果為8015說明數據同步的連接不成功,原因是CP342-5之間的FDL鏈接建立的不正確或物理鏈路不通,或者是FC100的VERB_ID參數與NETPRO中的ID號不一致。
2.結束語:
以上簡要介紹了SIEMENS軟件冗餘係統的係統組成、工作原理、程序編製,整個係統組成簡單、構成靈活、程序編製比較容易。係統在某輸油站投入運行以來,保證了係統無故障停機運行,提高了工作效率,降低了維護費用,以其可靠性、靈活性、便利性受到用戶好評。
參考文獻:
[1] SIEMENS. Software Redundancy for S7-300[M]. 2005.
[2] SIEMENS. SIMATIC WinCC configuration manual[M]. 2003.
[3] 浙江大學自動化中心(Automation center of Zhe Jiang). 可編程序控製器係統(Programmable control system)[M]. 浙江大學出版社(Zhe Jiang University Press), 2000.
[4] 馮太合(Feng Tai-he). 可編程控製係列書西門子S7-300係列PLC及應用軟件STEP7(SIEMENS S7-300 serial PLC and internet applications STEP7)[M]. 華南理工出版社(South China University of Technology Press), 2004.
[5] 許誌軍(Xu Zhi-jun).工業控製組態軟件及應用(Software and application of industrial control configuration)[M]. 機械工業出版社(Industrial machine Press), 2005. |