(天津渤海石化有限公司,天津300452)
近幾十年來(lái),多起化工事故原因由計(jì)算機(jī)失效造成,引起環(huán)境污染、人員傷亡和設(shè)備損壞。這些信息引起國(guó)家和公眾對(duì)建立安全工業(yè)流程的重視[1],為此,IEC新的安全按國(guó)際標(biāo)準(zhǔn):IEC 61508/61511也已經(jīng)由工業(yè)組織合作制定完成。各大PLC廠家推出各種安全系統(tǒng)結(jié)構(gòu),最常用的為以下五種:1oo1單通道系統(tǒng)、1oo2雙通道系統(tǒng)、1oo1D雙通道系統(tǒng)、2oo3三通道系統(tǒng)、2oo4/QMR系統(tǒng)。本文結(jié)合公司所用HIMA系統(tǒng)ELOP II軟件自帶的自定義功能塊,對(duì)2oo4/QMR系統(tǒng)如何從軟件上應(yīng)用進(jìn)行描述,為大家提供參考。
HIMA的51q系統(tǒng)為CPU四重化結(jié)構(gòu)(QMR),四個(gè)微處理器由2塊同樣的CU模件構(gòu)成冗余的中央控制單元。采用雙1oo2D結(jié)構(gòu),即2oo4D結(jié)構(gòu)能為用戶提供最大的實(shí)用性(可用性),其容錯(cuò)功能使得系統(tǒng)中任何一個(gè)部件發(fā)生故障,均不影響系統(tǒng)的正常運(yùn)行[2]。模塊化H51q系統(tǒng):16個(gè)機(jī)架/主機(jī)架 16個(gè)模塊/機(jī)架,上下兩個(gè)機(jī)籠互為冗余機(jī)籠。CU模塊通過(guò)I/O BUS(1)與I/O BUS(2)網(wǎng)絡(luò)與卡件通訊,CU之間通過(guò)DPR網(wǎng)絡(luò)通訊實(shí)現(xiàn)冗余,從而實(shí)現(xiàn)1∶1卡件冗余和點(diǎn)冗余。本質(zhì)故障安全型PES原理框圖見(jiàn)圖1,機(jī)籠冗余對(duì)應(yīng)關(guān)系見(jiàn)圖2。
圖1 PES原理框圖
圖2 機(jī)籠冗余圖
功能塊由時(shí)間輸入、事件輸出、數(shù)據(jù)輸入、數(shù)據(jù)輸出、內(nèi)部數(shù)據(jù)以及對(duì)這些參數(shù)進(jìn)行操作的算法組成。自定義功能塊以滿足實(shí)現(xiàn)功能為原則,能夠在不同程序中被調(diào)用。因此,自定義功能塊依據(jù)控制要求及輸入輸出信號(hào)特征進(jìn)行設(shè)計(jì)。F3236是16通道數(shù)字量輸入卡件,依據(jù)控制要求,需將互為冗余的兩路輸入信號(hào)合并為一路信號(hào)參與內(nèi)部控制運(yùn)算,并且當(dāng)輸入信號(hào)故障時(shí)能提供報(bào)警。經(jīng)過(guò)分析,自定義功能塊實(shí)現(xiàn)上述控制工藝,需要具備能夠接收F3236卡件32路DI信號(hào)的輸入引腳,輸出引腳包括16路信號(hào)輸出和1路信號(hào)故障報(bào)警輸出,由此可得自定義功能塊的輸入接口變量與輸出接口變量見(jiàn)圖3,red.ERR是信號(hào)故障輸出報(bào)警。
圖3 輸入輸出引腳
打開(kāi)編程軟件ELOP II,在組態(tài)窗口左側(cè)右擊所建工程選擇New-Library,建立用戶自定義庫(kù),新建庫(kù)光標(biāo)會(huì)在庫(kù)文件名的位置閃爍,可以修改庫(kù)文件名。右擊新建庫(kù)選擇New-Function Block Type(FBD),生成新的程序(instance)。雙擊新建程序打開(kāi)編程頁(yè)面,在頁(yè)面下方變量第一編輯器VAR INPUT、VAR OUTPUT標(biāo)簽中分別建立引腳變量,并在Declaration中定義變量類(lèi)型,見(jiàn)圖4。
功能塊編程采用類(lèi)似于數(shù)字邏輯門(mén)電路的圖形符號(hào),使用方便,邏輯直觀,有與梯形圖中觸點(diǎn)和線圈等價(jià)的指令。在組態(tài)窗口左側(cè)中,打開(kāi)標(biāo)準(zhǔn)庫(kù)(StandardLibs)中的 IEC6131-3,可以看到 Bitstr庫(kù),見(jiàn)圖5。
圖4 引腳變量定義
圖5 基本庫(kù)功能塊
根據(jù)控制要求,按住鼠標(biāo)左鍵將所需基本功能塊從庫(kù)中拖到邏輯編輯區(qū)域,在變量列表中,用鼠標(biāo)左鍵將調(diào)用變量拖到邏輯編輯區(qū)域,將變量與功能塊引腳相連。邏輯內(nèi)部算法如圖,用OR功能塊實(shí)現(xiàn)兩路信號(hào)合為一路信號(hào),使用函數(shù)功能塊判斷信號(hào)是否出現(xiàn)故障,并將報(bào)警信號(hào)輸出,見(jiàn)圖6。編輯完成后編譯保存。
圖6 功能塊內(nèi)部邏輯
在主程序中,對(duì)自定義功能塊調(diào)用,見(jiàn)圖7,功能塊左側(cè)引腳是冗余卡件通道信號(hào),右側(cè)是合并后信號(hào)和信號(hào)故障報(bào)警。冗余卡件的32個(gè)I/O信號(hào)判別邏輯、故障報(bào)警等信息都在一個(gè)功能塊中實(shí)現(xiàn)。紅色代表信號(hào)接通,藍(lán)色代表信號(hào)未接通,red.ERR輸出為T(mén)RUE時(shí)代表輸入信號(hào)正常狀態(tài),當(dāng)輸出為FALSE時(shí)代表信號(hào)輸入錯(cuò)誤。
圖7 自定義功能塊調(diào)用
通過(guò)對(duì)自定義功能塊的應(yīng)用,我們了解HIMA SIS的2oo4/QMR系統(tǒng)冗余卡件通道如何在軟件內(nèi)部進(jìn)行運(yùn)算。本文只是針對(duì)DI信號(hào)邏輯控制進(jìn)行介紹,AI信號(hào)可按此步驟選擇相應(yīng)進(jìn)行邏輯編寫(xiě),編程人員可以根據(jù)需要做相應(yīng)修改。