(天津渤海石化有限公司,天津300452)
近幾十年來,多起化工事故原因由計算機失效造成,引起環境污染、人員傷亡和設備損壞。這些信息引起國家和公眾對建立安全工業流程的重視[1],為此,IEC新的安全按國際標準:IEC 61508/61511也已經由工業組織合作制定完成。各大PLC廠家推出各種安全系統結構,最常用的為以下五種:1oo1單通道系統、1oo2雙通道系統、1oo1D雙通道系統、2oo3三通道系統、2oo4/QMR系統。本文結合公司所用HIMA系統ELOP II軟件自帶的自定義功能塊,對2oo4/QMR系統如何從軟件上應用進行描述,為大家提供參考。
HIMA的51q系統為CPU四重化結構(QMR),四個微處理器由2塊同樣的CU模件構成冗余的中央控制單元。采用雙1oo2D結構,即2oo4D結構能為用戶提供最大的實用性(可用性),其容錯功能使得系統中任何一個部件發生故障,均不影響系統的正常運行[2]。模塊化H51q系統:16個機架/主機架 16個模塊/機架,上下兩個機籠互為冗余機籠。CU模塊通過I/O BUS(1)與I/O BUS(2)網絡與卡件通訊,CU之間通過DPR網絡通訊實現冗余,從而實現1∶1卡件冗余和點冗余。本質故障安全型PES原理框圖見圖1,機籠冗余對應關系見圖2。

圖1 PES原理框圖

圖2 機籠冗余圖
功能塊由時間輸入、事件輸出、數據輸入、數據輸出、內部數據以及對這些參數進行操作的算法組成。自定義功能塊以滿足實現功能為原則,能夠在不同程序中被調用。因此,自定義功能塊依據控制要求及輸入輸出信號特征進行設計。F3236是16通道數字量輸入卡件,依據控制要求,需將互為冗余的兩路輸入信號合并為一路信號參與內部控制運算,并且當輸入信號故障時能提供報警。經過分析,自定義功能塊實現上述控制工藝,需要具備能夠接收F3236卡件32路DI信號的輸入引腳,輸出引腳包括16路信號輸出和1路信號故障報警輸出,由此可得自定義功能塊的輸入接口變量與輸出接口變量見圖3,red.ERR是信號故障輸出報警。

圖3 輸入輸出引腳
打開編程軟件ELOP II,在組態窗口左側右擊所建工程選擇New-Library,建立用戶自定義庫,新建庫光標會在庫文件名的位置閃爍,可以修改庫文件名。右擊新建庫選擇New-Function Block Type(FBD),生成新的程序(instance)。雙擊新建程序打開編程頁面,在頁面下方變量第一編輯器VAR INPUT、VAR OUTPUT標簽中分別建立引腳變量,并在Declaration中定義變量類型,見圖4。
功能塊編程采用類似于數字邏輯門電路的圖形符號,使用方便,邏輯直觀,有與梯形圖中觸點和線圈等價的指令。在組態窗口左側中,打開標準庫(StandardLibs)中的 IEC6131-3,可以看到 Bitstr庫,見圖5。

圖4 引腳變量定義

圖5 基本庫功能塊
根據控制要求,按住鼠標左鍵將所需基本功能塊從庫中拖到邏輯編輯區域,在變量列表中,用鼠標左鍵將調用變量拖到邏輯編輯區域,將變量與功能塊引腳相連。邏輯內部算法如圖,用OR功能塊實現兩路信號合為一路信號,使用函數功能塊判斷信號是否出現故障,并將報警信號輸出,見圖6。編輯完成后編譯保存。

圖6 功能塊內部邏輯
在主程序中,對自定義功能塊調用,見圖7,功能塊左側引腳是冗余卡件通道信號,右側是合并后信號和信號故障報警。冗余卡件的32個I/O信號判別邏輯、故障報警等信息都在一個功能塊中實現。紅色代表信號接通,藍色代表信號未接通,red.ERR輸出為TRUE時代表輸入信號正常狀態,當輸出為FALSE時代表信號輸入錯誤。

圖7 自定義功能塊調用
通過對自定義功能塊的應用,我們了解HIMA SIS的2oo4/QMR系統冗余卡件通道如何在軟件內部進行運算。本文只是針對DI信號邏輯控制進行介紹,AI信號可按此步驟選擇相應進行邏輯編寫,編程人員可以根據需要做相應修改。