?

自定義功能塊類型在電解槽聯鎖中的應用

2015-11-02 01:03趙洪娣
中國氯堿 2015年9期
關鍵詞:功能塊電解槽調用

趙洪娣

(唐山三友氯堿有限責任公司,河北 唐山 063305)

自定義功能塊類型在電解槽聯鎖中的應用

趙洪娣

(唐山三友氯堿有限責任公司,河北 唐山 063305)

在ABBDCS中利用ST語言,設計實現了一種自定義功能塊類型(R230I_P)。在介紹庫和自定義功能塊類型的基礎上闡述了自定義功能塊類型(R230I_P)的開發框架依次對其設計實現過程調試環節進行說明并將其投入到生產改造中的效果進行檢驗。結果表明,與傳統組態方式相比大大提高了組態效率。

自定義功能塊類型;功能塊;電解槽聯鎖控制;DCS

目前,傳統的DCS系統編程方式是工藝上增加1臺設備便要在DCS系統中加入相應的控制程序,如果需要增加多臺相同設備那么相應的控制程序也需要編寫多次,這樣不僅增加了程序的編寫量,而且所用中間變量比較多,錯誤檢查不明顯,所需調試時間也比較長。為此,需要在DCS中研究一種新的組態方式來克服以上缺點。本文選擇電解槽聯鎖回路邏輯算法,并在ABBCBM DCS系統中進行開發和應用。

1 庫和電解槽聯鎖

1.1庫的概念

控制編制器項目的3個主要部件之一是庫,庫包含類型定義或用來給予項目額外功能性的類型。在庫中可以進行的類型定義有3個分類,即數據類型、功能塊類型和控制模塊類型,本文只對功能塊類型進行應用。

在ABBCBM DCS軟件中,庫文件夾中有項目所使用的所有程序庫。將1個庫插入到項目,其類型可用于連接到應用程序。

在創建項目的時候,庫文件夾中包括有系統文件夾和2個一直連接到項目的庫——Basic語言庫和圖標庫。還有許多可以插入的附加庫。比如用戶自定義庫。

庫中包含有類型定義,比如數據類型、功能和功能塊類型以及可以在項目中使用的控制模塊類型。這些庫可用于連接到控制器,因此,可以再一個控制項目中有多個庫。

(1)類型和實例

常常會碰到某個特定的對象在某個應用程序中被使用許多次的情況。一個對象類型被定義,然后每次使用該類型都會建立一個該類型的實例。在大多數情況下,類型和實例之間的鏈接被維持。因此,如果在將來該類型被修改,則該類型的所用實例均被改變。

例如本文所述公司有電解槽8臺,但它們是相同的控制類型,在控制程序中,可以定義一個電解槽控制類型(R230I_P),然后只要在程序中需要一個,該類型的新實例即被建成。

(2)類型名稱和實例名稱

在說明功能塊類型的實例時,要求給予實例一個名稱,見表1。實例名稱是R1,而它是R230I_P類型的。第二至第八個實例是相同類型R230I_P,但是實例名稱為R2-R8。R1-R8繼承的是R230I_P的特性。所以只要對R230I_P的一處進行更改就可以影響到R1-R8,而不用對R1-R8進行重復的更改。

(3)功能塊類型

功能塊為編程員提供額外的功能。ABB在標準庫中提供大量的預先定義功能塊。例如,在BasicLib庫中,用于定時、數據轉換、計數等等的功能塊。當某個庫被連接到某個應用程序時,該功能塊的實例就可以在應用程序中的程序和控制模塊中建立。

(4)庫的連接

表1

在一個項目中可能有許多庫而在一個項目中也可能有許多應用程序。按照應用程序的要求,每個應用程序可能有不同的庫組連接。為了將某個庫連接到一個應用程序,該庫必須已經存在于項目中。

1.2電解槽聯鎖控制

本文以電解槽聯鎖控制為例,該控制邏輯把順序控制與PID調節結合起來,當電解槽停以后,2個PID回路經過3個不同步驟進行調整,每個步驟時間不同、PID設定值不同,并且還要保證在3個步驟內,既能保證程序控制,又能讓操作員手動干預PID調節。實現功能見圖1。

圖1 電解槽控制回路邏輯算法

2 電解槽聯鎖算法設計

在ABBAC800M DCS系統中,開發自定義功能塊的基本步驟包括:定義模塊參數、輸入變量、輸出變量、功能塊;激活語言開發環境并編輯語言代碼,生成目標代碼并下裝。此自定義功能塊在開發設計時,要以系統自帶的功能模塊為基礎,需要使用的系統自帶功能塊為RS功能塊、TON功能塊、TP功能塊,把變量與上述功能塊進行連接,從而形成新的自定義功能塊,功能結構見圖2。

2.1結構化正文(ST)

結構化正文(ST)是ABBDCS系統軟件的5種組態軟件之一,是一種高層次、小型、高度結構化的編程語言,并包含了為分配、功能、功能塊調用、表達式、條件語句、重復操作等等的綜合范圍的結構,本文就選擇結構化正文(ST)作為組態語言來實現電解槽聯鎖的算法。

圖2 自定義功能塊功能結構圖

因為其邏輯和結構化布局,該程序編寫簡單并容易讀取。語言的緊湊提供該代碼的優秀的概觀并在編輯程序中較少卷動。

功能塊以類似的方式向變量說明,方法是給予其一個名稱(實例名稱),此名稱被用來在代碼中調用。在ST編輯程序中,必須在編輯程序的“功能塊”說明標記中給出名稱和類型。

2.2自定義功能塊的編寫

在項目的庫目錄下,新建一個庫文件,名稱為Customer,在Customer目錄下,新建一個自定義功能塊類型,彈出新建功能塊設置對話框,輸入新建功能塊類型的名字為“R230I_P”,點擊確定按鈕,打開編輯器,進入編輯界面開始編程。在電解槽邏輯算法中需要引用許多參數、系統自帶功能塊,如RS塊、TP塊、電解槽運行狀態等,因此要在參數列表(見表2)和功能塊列表(見表3),聲明參數和使用的系統自帶功能塊。功能塊參數(表2)有2個方向:In和Out。輸入、輸出參數用值來傳遞,在功能塊的執行前后分別拷貝每個變量值。簡單來說,輸入參數在功能塊執行之前拷貝變量值到功能塊去執行,輸出參數在功能塊執行完畢之后拷貝變量值,傳遞給功能塊外的變量。

表2 參數列表 

表3 功能塊列表

根據圖2所示,利用ST語言編寫自定義功能塊程序,主要包括:

(1)TP塊的調用 。調用格式:功能塊名稱(輸入:=參數名稱或功能塊名.參數),如功能塊TP1連接:TP1(IN:=IN1);

(2)RS的調用。調用格式:功能塊名稱(設置:=參數名稱或功能塊名.參數,復位:=參數名稱或功能塊名.參數);如功能塊RS_1連接:RS_1(Set:=TP1. Q,R1:=Ton2.Q)

(3)TON的調用。調用格式:功能塊名稱(輸入:=參數名稱或功能塊名.參數);如功能塊TON1連接:TON1(IN:=RS1.Q);

根據以上調用方式,圖2程序代碼如下:

TP1(IN:=IN1);

RS_1(Set:=TP1.Q,

R1:=Ton2.Q);

TON1(IN:=RS1.Q);

RS_2(Set:=TON1.Q,

R1:=Ton2.Q);

TON2(IN:=RS_2.Q);

TP2(IN:=IN1

OUT:=>OUT1);

TP3(IN:=IN1

OUT:=>OUT2);

TP4(IN:=TON1.Q

OUT:=>OUT3);

TP5(IN:=TON1.Q

OUT:=>OUT4);

TP6(IN:=TON2.Q

OUT:=>OUT5);

TP7(IN:=TON2.Q

OUT:=>OUT6)。

2.3自定義功能塊的調用

選中此次使用的應用程序下面的連接庫文件夾,右擊選擇“連接庫”;從下拉式明細表中選擇要連接的庫“Customer”,然后點擊“OK”。

首先,在應用程序編輯器中對用到的變量、功能塊進行聲明,本次改造8臺電解槽,需要聲明8個功能塊類型為“R230I_P”的功能塊(R1-R8),聲明表格見表3,并將8臺電解槽的停止信號連入功能塊中,以電解槽R1為例,功能塊調用格式為:

R1(IN:=A2L4,A2L4為第一臺電解槽的狀態信號;

OUT1=>OUT1,OUT1~OUT6為中間變量

OUT2=>OUT2,

OUT3=>OUT3,

OUT4=>OUT4,

OUT5=>OUT5,

OUT6=>OUT6)。

對每臺電解槽的FICZA-231,FICZA-232流量進行語句編寫,選擇ST編程方式,電解槽I槽FICZA-232I為例,程序段如下。

ifOUT1=1 then

MA_FICZA232I:=0;

SP_FICZA232I:=43;

end_if;

ifOUT3=1 then

MA_FICZA232I:=0;

SP_FICZA232I:=0;

end_if;

ifOUT5=1 then

MA_FICZA232I:=0;

SP_FICZA232I:=43;

end_if;

電解槽I槽FICZA-231I程序段如下:ifOUT2=1 then

MA_FICZA231I:=0;

SP_FICZA231I:=42;

end_if;

ifOUT4=1 then

MA_FICZA231I:=0;

SP_FICZA231I:=42;

end_if;

ifOUT6=1 then

MA_FICZA231I:=0;

SP_FICZA231I:=9;

end_if。

3 結束語

本文詳細介紹了自定義功能塊在電解槽聯鎖中的應用,以及在ABBAC800M DCS系統中設計和實現的全過程,并成功應用到實際改造中。結果表明與傳統組態方式相比,調試時間縮短為原來的1/8,程序集成化高,減少系統負荷,大大提高了運行速度,系統穩定性增加。從此次改造中可以看出,此種組態方式應用于多臺相同設備且控制要求相同時,還是非常成功的。

Application of a custom function block type in theelectrolyzer interlock

ZHAOHong-di
(Tangshan Sanyou Chlor-alkaliCo.,Ltd.,Tangshan 063305,China)

The use of ST language in the ABB DCS,to design a custom function block type(R230I_P). Based on introducing the library and custom function block type,firstelaborated the custom function block type(R230I_P)development framework,and then the design and realization process are introduced,and the debugging are explained respectively.Finally,the transformation of inputs into the production,test its effects.The results show that,compared with the traditional configuration way can greatly improve the configuration efficiency.

custom function block type;function block;electrolysisgroove interlocking control;DCS

TM762

B

1009-1785(2015)09-0032-04

2015-03-05

猜你喜歡
功能塊電解槽調用
堿性電解槽成本最低
擴大電解槽規??蓪⒕G氫成本降低15%
微重力水電解槽兩相熱流動與水量分配數值模擬
核電項目物項調用管理的應用研究
具有復合內抽芯機構的電解槽蓋模具設計與工藝優化
基于IEC61131-3標準運動控制器的設計與應用*
基于PLCopen的六軸工業機器人運動控制功能塊設計
系統虛擬化環境下客戶機系統調用信息捕獲與分析①
自定義功能塊編程在反滲透膜自動清洗設備中的應用
Ovation系統FIRSTOUT和FIFO跳閘首出比較
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合