1 引言
在生產過程中采用計算機進行控制后,最重要的問題之一就是控制系統的可靠性,控制系統的不可靠將導致系統不穩定、運行錯誤、停機后產生故障,輕則影響工藝指標造成經濟損失,重則產生事故后果無法預計。因此,進行提高控制系統的可靠性的研究并在實際中加以應用是十分必要的。
控制系統運行的可靠性主要受硬件故障、軟件錯誤(包括控制算法的不合理)和偶發性干擾影響。要獲得實時控制的高可靠性,通常可以用兩種辦法:一是采用高可靠性的元件進行完善設計,盡可能延長系統的無故障運行周期,但隨著可靠性的增長,其成本呈非線性急劇上升。這種設計不能克服軟件錯誤和偶發性干擾的影響,而且當系統發生故障時,必須中斷系統的正常工作加以修復;另一種是采用容錯設計技術,即用適當增加冗余資源的辦法來得到可靠性較高的系統,它可以克服硬件故障和偶發性干擾的影響,對軟件錯誤也有一定的抑制能力。冗余的成本線性增加,但可使故障率控對數規律下降,并可實現不中斷系統工作的修復。是一種有效提高控制系統可靠性的高性價比的實用技術。
2 容錯控制系統
根據工業企業生產過程控制的實際需求,筆者研究和發展了一種實用的容錯控制系統,研發內容包括以下二個部分:
2.1 雙模冗余系統的研究和構成
雙模冗余系統是一種較為經濟實用的冗余技術,它采用雙計算機互為備份并行工作。采用了這種結構后,如果能準確地判定運行錯誤和故障,并完成切換,則二臺計算機中只要有一臺是正常的,控制系統就可以帶錯正常工作甚至自動修復錯誤,確保系統長周期正常工作。根據可靠性理論,如果單機運行的故障率為0.1%,則并列雙機運行的故障率僅為 0.0001%,具有很高的可靠性和可用性。
圖1 雙模冗余容錯控制系統構成圖
對于工業控制系統,實現雙模冗余系統的關鍵問題是主控機和備用機運行數據的采集與正確性的確認、運行故障的判定與檢出、主備機狀態的確認和無干擾的相互切換。根據上述要求,筆者研究了一種實用的容錯控制系統。
(1) 控制計算機
控制計算機采用兩臺完全相同但相互獨立的PC總線工業計算機,這兩臺計算機中的操作是完全獨立的。兩臺計算機之間的主控和備用關系,可以通過上電復位時的隨機競爭自動確認,也可以通過隨時的人工干預加以改變。當主控機和備用機均正常工作時,它們同時通過數據通道接收接口單元傳送來的輸入過程參數,相互獨立地進行顯示、查詢和記錄等操作。因此,對于使用者而言,主控機和備用機在操作和顯示上是一致的,但它們的工作模式實際上有很大不同的。
主控計算機對冗余輸入的關鍵參數和非冗余輸入的一般參數進行診斷和推理,剔除錯誤后存入實時和歷史數據庫。根據設定的控制算法和控制參數,主控機運行控制運算,通過輸出接口單元控制被控設備的運行。同時,主控計算機進行定時自診斷,在測控任務正確完成和軟硬件正常的前提下,定時向備用機發送包含所有經診斷后確認是正確的過程參數、過程變量和主控機狀態的數據同步報文,用以同步主控機和備用機的運行狀態。
備用計算機通過接收主控計算機發送的數據同步報文,與主控機嚴格同步它的實時和歷史數據庫。備用計算機具有完整的CRT操作站的功能,其大部分功能通過訪問本機的實時和歷史數據庫即可實現,但涉及到任何參數和設置的修改都需將其發送到主控機,主控機修改數據庫后再通過參數同步命令返回備用機。
當主控計算機發生錯誤或故障時,如果是非致命性的,主控機可以直接向備用機發出主備切換命令,備用機根據命令切換為主控狀態;如果是致命性的,根據它的軟件設計,主控機不再向備用機發送用于同步主控機和備用機的數據報文。備用機在預定時間內收不到同步報文,則向主控機發出查詢報文,在預定時間內主控機無應答,備用機自動切換為主控狀態。備-主切換完成后,向原主控機發送數據同步報文,并發出聲光報警提示,通知維護處理,原主控機通過接收數據同步報文切換為備用狀態,人工主備切換則通過發送主備切換命令完成。
當備用計算機發生錯誤或故障時,由于備用計算機并不參加控制,發出聲光報警提示通知人工維護即可。
數據同步報文的發送周期為0.5秒,因此主控計算機錯誤或故障時主備切換的時間是1秒。這對于采樣周期一般選擇在0.5秒到1秒之間的過程控制系統是完全能夠滿足要求的。由于備用機的數據庫和主控機是嚴格同步的,因此主備相互切換是無擾動的。
(2) 輸入輸出接口單元
輸入輸出接口單元是自行開發的,采用插槽式結構,可按需插入不同類型的I/O接口模板,使用中允許帶電拔插。模擬量輸入帶有隔離調理能力,可直接輸入熱電阻、熱電偶、毫伏或標準信號,開關量采用繼電器輸出。
由于模擬量輸入是點點隔離(通道間在電氣上是絕緣)的,因此對于電壓和可轉換為電壓的電流信號直接并聯即可實現冗余輸入,但對熱電阻則無法直接并聯,需要配置雙支熱電阻分別輸入。
模擬量輸出也是可以冗余配置的,將模擬量控制輸出同時賦值給位于二塊輸出接口模板的二個輸出通道,再利用輸出接口模板上的開關量輸出繼電器轉接型觸點構成互鎖電路,在輸入輸出接口單元軟件的配合下實現模擬量輸出的切換。
(3) 數據通道
數據通道采用自行開發的 FLAN令牌總線網。通道互連的網絡拓撲結構為總線型,采用基帶網雙絞線傳輸,通信速率為 96kbps,接口標準為 RS-485,控制方式為令牌(IEEE 802.4)。不加重復器時的最大網絡長度為1 200m。具有長線傳輸能力和較強的抗干擾能力。
令牌網絡是一種多主控制模式,網絡中的任何一個節點都可以在不超過特定的延遲時間內獲得令牌,成為事實上的主節點并發送數據,然后將令牌傳遞到下一個節點。這個延遲時間完全取決于通信速率、節點數量和允許傳送的報文的最大長度,可通過計算確定。因此,使用令牌網絡不但可以保證通信報文的有效傳輸,而且可通過對報文傳輸延遲的監控來診斷網絡的工作狀態。與CD/CDMA控制方式相比,令牌網避免了CD/CDMA 由于競爭而造成的報文傳輸延遲的不確定性。與主從型網絡結構相比,令牌網則完全避免了因主節點的故障而造成的網絡崩潰。
對于分布式控制系統,網絡連接的可靠性是非常重要的,故采用雙重數據通道。在一個令牌傳遞的循環周期中,使用一條數據通道進行數據通信,另一條數據通道作為熱備用;當令牌傳遞具有最小地址的節點時,發出切換數據通道命令并切換數據通道的工作模式;如切換失敗,則返回原來的工作模式。因此,只要有一條數據通道是正常的,就能保證數據通信的正常進行,同時產生故障診斷信息。
為了進一步提高網絡的可靠性,節點采用了MAXIM公司的光電隔離型RS-485驅動器MAX1480,不但實現了各節點之間的電氣隔離,而且經過合理設計后,當節點產生故障時,MAX1480能自動處于浮空狀態,避免了對總線型網絡的干擾。
2.2 推理機制和容錯控制策略的研究以及計算機軟件的實現
推理過程就是對故障進行識別的過程。需要建立系統動態數據庫、知識庫和過程故障模式庫,用當前的動態數據與知識庫中的已有數據進行匹配,對故障進行識別和診斷。在控制系統的不斷運行中,根據實際執行結果,知識庫內數據也將進行不斷地修改,實現了知識庫的自我完善。
在計算機軟件的具體實現中,程序在每個采樣周期讀取輸入的實時數據進行計算,以實時數據的有效值、中期和短期變化速率以及相關變量為索引,查詢知識庫中的已有數據進行比較匹配,根據匹配的結果查詢過程故障模式庫得出處理方法。同時根據運行的累計結果,修改知識庫內數據相關數據。由于多維的知識庫需要占用大量的存儲空間,而大部分非關鍵參數對少量錯誤并不敏感,因此在實際應用中,根據具體情況對不同的實時數據設置不同的索引結構,減少存儲空間的占用和加快推理識別過程速度。
容錯控制策略保證檢測到故障信息后,使設備繼續安全正常運轉;或以犧牲性能為代價,使設備在規定時間內完成其基本功能。筆者采用了冗余控制與補償技術相結合的綜合容錯控制策略,并采用了多模塊并行診斷決策的容錯處理方法,即對同一種故障信息用不同模塊進行診斷,然后用表決方法得出故障結果。借助于硬件機構支持,采用軟、硬件結合方法實現故障容錯。
2.3 典型應用實例
本容錯控制系統已應用于在多個企業的多個生產裝置,最典型應用實例是福州一化集團硫酸化工總廠的六萬噸硫酸生產線。該生產線采用加熱液化的硫磺為生產原料,存放在保溫原料庫中的液態硫由泵抽出,通過噴槍霧化后進入焚硫爐燃燒氧化生成二氧化硫,二氧化硫送入轉化爐中,在釩催化劑的作用下進一步氧化為三氧化硫,再經過一次吸收、二次吸收和干燥后形成硫酸成品。反應過程中產生的大量熱量則由三個廢熱鍋爐加以利用,產出蒸汽供廠內其它生產裝置使用。根據生產工藝的要求,需要對原料庫、系統焚硫、轉化、吸收、成品及廢熱鍋爐等裝置進行檢測和控制,對象包括溫度、壓力、流量、液位和硫酸的濃度等,共計近90個檢測點和6個控制回路系統。
根據該硫酸生產線的生產工藝和成本控制的要求,控制系統由CRT操作站 2 臺,現場控制器5臺和冗余配置的 FLAN令牌總線網構成。共有模擬量輸入通道96個,模擬量輸出通道8個,其中用于重要參數的32個輸入通道和控制輸出的8個輸出通道是冗余配置的,以確保系統可靠性;其余64個用于一般參數檢測的輸入通道則不作冗余配置,以降低系統的成本。控制系統的軟件設計上則充分使用了上述的研究成果。
該自動控制系統1998年投入運行,2000年根據生產工藝的要求和改進對硬軟件升級改造后,已連續運行至今。雖然在四年的使用過程中發生過因CPU風扇卡住使CPU過熱、硬盤故障而造成操作站死機、通信電纜因外力而被機械切斷等嚴重故障,但由于控制系統具有較完善的冗余和容錯能力,通過自動切換保持了控制系統的連續正常運行,達到了無故障長周期連續運行的目的,實現了從原料庫、焚硫、轉化、吸收、成品及廢熱鍋爐等輔助裝置的自動控制。