在重要的工業(yè)生產(chǎn)領域和軍用產(chǎn)品設計中,,采用冗余技術(shù)提高控制系統(tǒng)可靠性的做法越來越普遍。常規(guī)的冗余就是采用成倍增加元件的方式來參與控制,,以期能夠?qū)⒁蚩刂圃O備的意外而導致的停機降到最少,。
燃油鍋爐是輸油管道加熱系統(tǒng)中的加熱設備,鍋爐的無故障運行是整個輸油管道網(wǎng)絡正常工作的保證。在鍋爐控制系統(tǒng)中,,設計采用兩組獨立運行的西門子PLC軟件冗余控制系統(tǒng),,保證加熱系統(tǒng)的可靠、連續(xù),、安全運行,。
冗余常見的方式是中央處理器冗余、I/O 冗余和通訊冗余,。中央處理器單元冗余(即一用一備或一用多備),,在主處理器單元失效時,備用處理器單元自動投入運行,,接管控制,。在控制權(quán)的交互方式上又可分為硬件冗余和軟件冗余兩種。硬件冗余是采用硬件方式進行切換,,不用編程,。除了成對的使用處理器外,還用專用的熱備模塊,,熱備模塊負責檢測處理器,,一旦發(fā)現(xiàn)主處理器失效,馬上將系統(tǒng)控制權(quán)交給備用處理器,。硬件冗余均采用光纖通訊,,通訊速度快,系統(tǒng)穩(wěn)定,,切換時間更短,,但是成本也比較高。軟件冗余方式只需要成對的處理器,,用軟件編程的方式進行處理器的切換,,組成比較經(jīng)濟,構(gòu)成十分靈活,,但程序處理需要一定的時間,,對于時鐘同步及切換時間要求不是十分嚴格的場合,選用軟件冗余方式還是非常經(jīng)濟有效的,。
1.控制系統(tǒng)構(gòu)成:
1.1 監(jiān)控系統(tǒng)整體設計
本控制方案設計采用了SIMATIC WinCC 組態(tài)軟件來實現(xiàn)過程控制的上位機組態(tài),,WinCC是在生產(chǎn)和過程自動化中解決可視化和控制任務的工業(yè)技術(shù)系統(tǒng)。下位機控制系統(tǒng)設計采用兩套獨立的西門子 SIMATIC S7-300系列PLC實現(xiàn)冗余控制,,其編程軟件STEP-7功能強大,,模塊化結(jié)構(gòu),優(yōu)化了用戶程序,。
監(jiān)控系統(tǒng)構(gòu)成實現(xiàn)如圖1:
圖1 冗余監(jiān)控系統(tǒng)
Fig.1 Software redundancy monitoring system
1.2 PLC軟件冗余控制系統(tǒng)
軟件冗余是Siemens實現(xiàn)冗余功能的一種低成本解決方案,可以應用于對主備系統(tǒng)切換時間要求不高的控制系統(tǒng)中,。
Siemens軟件冗余系統(tǒng)的軟件,、硬件包括:
1套STEP7編程軟件(V5.x)加軟冗余軟件包(V1.x);
2套PLC控制器及I/O模塊,,可以是S7-300或S7-400系統(tǒng),;
3條通訊鏈路,主系統(tǒng)與從站通訊鏈路(PROFIBUS 1),、備用系統(tǒng)與從站通訊鏈路(PROFIBUS2),、主系統(tǒng)與備用系統(tǒng)的數(shù)據(jù)同步通訊鏈路(MPI 或 PROFIBUS 或 Ethernet);
軟冗余能夠?qū)崿F(xiàn):
1. 主機架電源,、背板總線等冗余,;
2. PLC處理器冗余;
3. PROFIBUS現(xiàn)場總線網(wǎng)絡冗余(包括通訊接口,、總線接頭,、總線電纜的冗余);
4. ET
軟冗余系統(tǒng)由A和B兩套PLC控制系統(tǒng)組成,。開始時,A系統(tǒng)為主,,B系統(tǒng)為備用,,當主系統(tǒng)A中的任何一個組件出錯,控制任務會自動切換到備用系統(tǒng)B當中執(zhí)行,,這時,,B系統(tǒng)為主,A系統(tǒng)為備用,,這種切換過程是包括電源,、CPU、通訊電纜和IM153接口模塊的整體切換,。系統(tǒng)運行過程中,,即使沒有任何組件出錯,操作人員也可以通過設定控制字,,實現(xiàn)手動的主備系統(tǒng)切換,,這種手動切換過程,對于控制系統(tǒng)的軟硬件調(diào)整,、更換非常有用,。
在軟冗余系統(tǒng)進行工作時,A,、B控制系統(tǒng)(處理器,,通訊、I/O)獨立運行,,由主系統(tǒng)的PLC掌握對ET200從站中的I/O控制權(quán),。A、B系統(tǒng)中的PLC程序由非冗余用戶程序段和冗余用戶程序段組成,,主系統(tǒng)PLC執(zhí)行全部的用戶程序,,備用系統(tǒng)PLC只執(zhí)行非冗余用戶程序段,而跳過冗余用戶程序段,。下面我們看一下軟冗余系統(tǒng)中PLC內(nèi)部的運行過程(圖2):
圖2 冗余工作原理
Fig.2 The working principle of software redundancy
1.3 PLC控制系統(tǒng)設計
利用信號采集模塊實時采集鍋爐的輸油管進出口溫度和壓力,,根據(jù)設定起爐、轉(zhuǎn)火,、停爐溫度值控制燃燒機的自動啟動,、轉(zhuǎn)火、停止等操作,。根據(jù)溫度,、壓力報警設定值,控制鍋爐緊急停爐和故障報警等處理,。
控制系統(tǒng)組成:一組CPU 315-2 DP 處理器(帶PROFIBUS-DP接口),;2組ET
1.4 WinCC與S7-300的通信實現(xiàn)
根據(jù)控制方案的設計,,采用WinCC組態(tài)作為上位機監(jiān)控,用西門子的S7_300作為下位機執(zhí)行機構(gòu),,我將采用以太網(wǎng)的標準Tcp/IP協(xié)議實現(xiàn)WinCC與S7-300的通信,,將現(xiàn)場的狀態(tài)參數(shù)、控制參數(shù)等上傳到監(jiān)控層,。這個變量傳遞的過程可以用圖3來說明:
圖3 變量監(jiān)控過程
Fig.3 Course of variable monitoring
1.5 WinCC組態(tài)冗余的實現(xiàn)
通過兩臺獨立計算機同時運行項目功能完全相同的WinCC組態(tài)項目,,構(gòu)成并行服務器來實現(xiàn)組態(tài)冗余結(jié)構(gòu),兩臺服務器通過以太網(wǎng)連接,,并與PLC連接,。每臺服務器都帶有其自身的過程連接和可用的數(shù)據(jù)歸檔,工作PLC站將過程數(shù)據(jù)和消息同時發(fā)送到兩臺冗余服務器,。如果一臺服務器發(fā)生故障,,另一臺將繼續(xù)接收和歸檔來自PLC工作站的過程值和消息。出現(xiàn)故障的服務器重新工作后,,冗余服務器為故障時間的歸檔執(zhí)行同步,,通過將丟失的數(shù)據(jù)重新傳送到出故障的服務器,來消除故障引起的歸檔差別,。
冗余服務器的組態(tài)實現(xiàn):1.必須在兩個冗余服務器上組態(tài)功能完全相同的WinCC組態(tài)項目(建議使用WinCC項目復制器),。2. 對于WinCC冗余,,需要同步服務器(建議使用設備的時間同步)。3. 配置冗余用戶歸檔,,實現(xiàn)用戶歸檔同步,。4. 組態(tài)在線消息同步。5. 打開冗余編輯器,,在“冗余伙伴服務器”項,,輸入冗余服務器的名稱,并在“用戶歸檔”項下,,激活“用戶歸檔的同步”,。
本系統(tǒng)通過動態(tài)向?qū)гO置讀取IP冗余地址,實現(xiàn)主S7-300數(shù)據(jù)監(jiān)控,。
1.6 軟冗余程序的設計
軟冗余程序需要西門子提供的軟冗余軟件包及STEP7,,在A站的Block中插入OB1(主循環(huán)程序塊)、OB35(定時中斷組織塊),、OB100(暖啟動調(diào)用程序塊),、OB80(在主系統(tǒng)與備用系統(tǒng)切換時間超時,調(diào)用該塊),、OB82(DP-Slave ET200站上的IM153-2模塊出錯報警,,調(diào)用該功能塊)、OB83(DP從站的接口模塊與主站鏈接斷開或鏈接重新建立時調(diào)用該塊),、OB86(主從站通訊出錯調(diào)用該塊),、OB87(通訊失敗調(diào)用該塊)、OB122(外圍設備訪問出錯調(diào)用該塊),、OB121等組織塊,,并對其中的OB100、OB35,、OB86進行編程,。
首先,用戶需要在初始化程序中(OB100)定義冗余部分的數(shù)據(jù)區(qū),,該數(shù)據(jù)區(qū)可以包括:一個過程映像區(qū),,一個定時器區(qū),一個計數(shù)器區(qū)和一個數(shù)據(jù)塊區(qū),,S7-300同步的最大數(shù)據(jù)量為8kBytes,。本控制系統(tǒng)將每臺鍋爐的溫度、壓力采集值和運行狀態(tài)參數(shù)分別放置在不同的DB數(shù)據(jù)塊,,并定義為需要冗余的數(shù)據(jù)塊,。
使用的是OB35的默認屬性,即每100ms中斷觸發(fā)一次,,可以根據(jù)實際的需要在CPU屬性中修改中斷的時間間隔,。在OB35里調(diào)用FB101S ’WR_ZYK’功能塊,,FB101塊中封裝了冗余功能的程序段,實現(xiàn)冗余功能,。當執(zhí)行‘SWR_START’程序塊時,,系統(tǒng)分配這些數(shù)據(jù)區(qū),不能用S7 的定時器和計數(shù)器,,只能使用IEC標準的定時器和計數(shù)器。
OB35中的程序段也可以在OB1中實現(xiàn),,只是不使用中斷的方式,,而使用主循環(huán)的方式。
調(diào)用FB101時,,你可以在線地讀出RETURN_VAL參數(shù)的數(shù)值,,如果為0,說明冗余鏈接正常,。如果為8015說明數(shù)據(jù)同步的連接不成功,,原因是CP342-5之間的FDL鏈接建立的不正確或物理鏈路不通,或者是FC100的VERB_ID參數(shù)與NETPRO中的ID號不一致,。
2.結(jié)束語:
以上簡要介紹了SIEMENS軟件冗余系統(tǒng)的系統(tǒng)組成,、工作原理、程序編制,,整個系統(tǒng)組成簡單,、構(gòu)成靈活、程序編制比較容易,。系統(tǒng)在某輸油站投入運行以來,保證了系統(tǒng)無故障停機運行,提高了工作效率,降低了維護費用,,以其可靠性、靈活性,、便利性受到用戶好評,。
參考文獻:
[1] SIEMENS. Software Redundancy for S7-300[M]. 2005.
[2] SIEMENS. SIMATIC WinCC configuration manual[M]. 2003.
[3] 浙江大學自動化中心(Automation center of Zhe Jiang). 可編程序控制器系統(tǒng)(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).工業(yè)控制組態(tài)軟件及應用(Software and application of industrial control configuration)[M]. 機械工業(yè)出版社(Industrial machine Press), 2005.