中文字幕第二一区_久久久久在线视频_精品国产自在现线看久久_亚洲精品一区二区三区电影网

產品分類

當前位置: 首頁 > 工業控制產品 > 運動控制 > 變頻器

類型分類:
科普知識
數據分類:
變頻器

HoneywellTDC3000CL/AM程序設計在罐區計量中的應用

發布日期:2022-04-18 點擊率:71

 摘要:
  Honeywell TDC3000系統的CL/AM程序設計在復雜運算方面能力突出,在罐區儲量計量中能力卓越,本文在這方面有詳細闡述并且提供另一種近似計算方法和程序源碼,并且利用到了面向對象程序設計方法的設計思想。

關鍵詞:
  CL/AM,程序設計,罐區、儲量、計算、程序源碼、面向對象

引言:
  CL/AM程序設計是Honeywell TDC3000 DCS系統中一個運算功能強大的工具。在DCS系統中有一部分復雜算法是標準測量算法無法實現的,這是就要借助CL/AM程序設計語言來實現。化工區乙烯罐區乙烯丙烯的儲量計算就是應用此法。

1、 CL語言的分類
CL語言可分為CL/MC、CL/PM、CL/AM三種設計方法:
(1)、CL/MC既是應用于多功能控制器(Multifunction control)的控制語言;
(2 )、CL/PM既是應用于過程管理器(Process Managers)的控制語言;
(3 )、CL/AM既是應用于應用模塊(Application Module)的控制語言,其主要參與連續控制的應用。
而本文主要涉及CL/AM的應用。

2、 CL/AM的功能及方法
  基于AM的CL程序適用于較大規模程序及大量數據支持的應用。由于這一點,就需要得到數據庫的支持,而這個數據庫就包含了DCS系統中所有的數據點。
在DCS系統中,如果標準數據點處理功能或者標準PV或控制算法不能提供所需求的有效算法,即:
(1)、標準PV算法不能提供所需求的足夠的算法和邏輯,那么在建立數據點時設定PVALGID= CL并將CL/AM程序連接來代替標準PV算法;
(2)、標準控制算法不能滿足所需求的控制動作,那么在建立該數據點時,設參數CTLALGID=CL并將相應CL/AM程序連接來代替標準控制算法;
(3)、CL/AM程序也能被連接到,例如Regulatory Control、Custom或Switch類型的數據點上來擴大數據點的處理功能。
3、 CL/AM程序的結構
一個完整的CL/AM結構如下:
PACKAGE
CUSTOM — —參數聲明區
----------------------------------------
----------------------------------------
END CUSTOM
BLOCK 塊名 (作用范圍;AT 代替算法)
---------------------------------------- — —程序代碼區
---------------------------------------
END 塊名
END PACKAGE

4、 CL/AM程序在乙烯罐區儲量計算中的應用
4.1、設計思路:
  因為在罐區的儲罐為非完全標準球罐,很難在數據點的標準PV算法中計算出其實時的儲量,即根據球罐的實時液位及密度等參數來計算出罐內液體的質量。所以在實際的運用中DCS采用了CL/AM程序來代替AM Regulatory點的PVALGID算法。乙烯罐區9501A、9501B兩罐的罐內液體質量計算即用CL/AM程序來實現。在這里,罐內液體的密度是0.442。程序設計思路如下,在積分學中為了計算某一不規則圖形的面積或體積時會將其細分為若干個近似規則的有可遵循計算方法的小圖形來計算,之后再集合成該圖形的面積或體積,當然分的越細則越精確。設下圖為不規則圖形:



  我們可以將其劃分為n個高為h,寬為dn的方形來計算,n決定其精度。而9501A、B罐的CL/AM計算質量程序就采用此思路。將球罐等高度劃分為143段,計算出每個高度所對應的體積并將其放入數組中。實時的液位高度將在143段的某兩段之間或等于某一段,然后根據該段的體積數Vn加兩段之間按比例計算的V` 得出總的體積,繼而根據密度計算出罐的儲量。

4.2程序結構圖:




4.3 程序部分源代碼及代碼注釋:
  本例是DCS中9501A、B兩罐的儲量計算公式。兩罐的規格相同,則在同一個CL/AM程序中一起計算,結果外送到數據點MI9501A.PV和MI9501B.PV。部分程序源代碼如下:
PACKAGE CUSTOM(NOT BLD_VISIBLE) ——數據段聲明開始;
PARAMETER MIN:ARRAY(1..144) —— 包含143段體積數的數組;
VALUE (0.0,0.224,. . . ,1531.115) —— 每一層對應的體積,略去141個數組值;PARAMETER LI:ARRAY(1.. 10) — —中間數組,保存臨時用到的高度;
PARAMETER MI:ARRAY(1..10) — —中間數組,保存用到的儲量和密度;
END CUSTOM— —數據段聲明結束;

BLOCK MC302(POINT MC302;AT PV_ALG) — —程序塊開始,綁定在MC302上;
EXTERNAL LI9501A_30, LI9501B_30 — —輸入點液位接口;
EXTERNAL MI9501A, MI9501B — —輸出點儲量接口;
LOCAL I,J,K — —臨時變量;
SET J=2 — — 罐的數量,即A、B罐;
SET MI(6)=0.442 — — 罐內液體的密度;
A2: LOOP FOR I IN 1 . . 5 — —變量初始化;
SET LI (I)=0.0
MI (I)=0.0
REPEAT A2
IF LI9501A_30.PV>0.0 THEN SET LI(1)=LI9501A_30.PV — —如果有液位,賦值;
IF LI9501B_30.PV>0.0 THEN SET LI(2)=LI9501B_30.PV — —同上;
A1: LOOP FOR I IN 1 . . J — —儲量的計算過程,A、B兩罐;
IF LI(I)=0.0 THEN GOTO A3 — —如果沒有液位則跳轉,按體積為零計算;
IF LI(I)>=14.30 THEN SET LI(I)=14.30 — —如果超滿液位則按體積為滿計算;
SET K=INT(LI(I)*10) — — 用取整函數取液位達到或超過的最近的層數;
SET LI(8)=MIN(K+2) -MIN(K+1) — — 取液位所在兩層之間的體積差;
SET LI(9)=LI(I)*10 -K — — 取液位K+1和K+2層之間部分高度;
SET MI(I)=MIN(K+1)+LI(8)*LI(9) — — 計算出當前液位所對應的體積數;
A3: REPEAT A1 — —LOOP A1循環結束;
SET MI9501A.PV=MI(1)*MI(6) — —A罐儲量=A罐體積*密度;
SET MI9501B.PV=MI(2)*MI(6) — —B罐儲量=B罐體積*密度;

SET K=MI(1) — —A罐體積交給K;
CALL ALLOW_BAD(PVCALC,K) — —如果K值有錯誤,同樣可以賦值,不忽略;
— —下一句K為BAD值時,綁定點的PVAUTOST模式為BAD,其他則正常模式;
SET PVAUTOST=(WHEN BADVAL(K):BAD;WHEN OTHERS:NORMAL)
END MC302
END PACKAGE


4.4 以上思路的優缺點:
  從以上思路可以看出來CUSTOM數據段是一個長為144的數組數值,是通過人工測量計算后得到的球罐143個平均高度層每層所對應的體積數,然后在寫入程序時編碼到源代碼中。其優點是對于同一種規格的球罐來說數組值不會有變化,從而一個程序能計算多個球罐體積(但擴展時需要重新編碼)。

優缺點是:
(1)、計算量大:
對于每一個分層所對應的體積數都要計算而得,這在設計階段的計算量太大;
(2)、可維護性差:
因本例中9501A、B罐儲量在一個程序中計算,且31系列的乙烯A、B、C、D和丙烯A、B、C罐也在另一個程序中一起計算(原理相同),若要對數據段數據或密度等進行維護修改,則會引起通程序中其他的儲量計算出現問題;
(3)、通用性差:
因為數據段的體積數是具體的數據,所以每一種直徑的罐都是不同的,那么每一種罐都需要一個單獨的邨CL/AM程序來計算,增大了工作量也增加了HM的存儲壓力,更不利于改造時的擴展。

5、CL/AM程序在乙烯罐區中應用的面向對象程序設計優化思路
5.1.1 CL/AM程序GENERIC應用:
  這種應用適合于一批情況相似的計算應用,不必對每一個都設計出CL/AM程序,而是對相似的計算設計出一個程序來讓所有其它的相似計算共同引用。不同的是在CUSTOM數據段中引用的GENERIC INPUT是不同的數據源。其中ENENRIC INPUT是在被綁定點PED端口設置NOGINPTS的值為引用的數據源的個數,這也是面向對象程序設計方法,如對9501A罐儲量計算時被綁定點的部分組態如下:




5.1.2 CUSTOM數據段的應用:
  該思路中還用到密度和半徑,應該也包括在CUSTOM數據段中。對于不同的半徑球罐和罐內液體,可以在綁定點得PED組態時更改為相應的半徑和密度。




5.1.3 計算公式: 所用到的公式如下
V = 3.1415926*LEVEL*LEVEL*(3*RADIUS-LEVEL)/3 ……….①M=V*DENSITY ………………………………………………………②
5.2 程序流程圖:




5.3 設計代碼及注釋如下:

PACKAGE
CUSTOM - - 數據段參數聲明開始
PARAMETER LEVEL “level of tank” - - 被測球罐實時液位;
PARAMETER DENSITY “density of liquid” - - 罐內液體的密度;
PARAMETER RADIUS “radius of tank” - - 球罐的半徑;
END CUSTOM - - 參數聲名結束;

BLOCK TANK_CALC(GENERIC; AT PV_ALG) -- 程序塊開始;
LOCAL level1,diameter,V,M - - 臨時變量聲明,液位、直徑、體積、儲量;
PARAMETER PVCALC - - 返回綁定點的測量值接口;
PARAMETER PVAUTOST:PVVALST - - 返回綁定點的測量值模式接口;
SET level1=0.0 - - 臨時液位變量初值;
SET diameter=2*RADIUS - - 臨時直徑(總高)初值;
IF LEVEL<0.0 THEN SET level1=0.0 - - 產生負值液位時,設沒有液位;
IF LEVEL>diameter THEN SET level1=diameter - - 若超大液位時,設滿罐;
IF (LEVEL>=0.0) AND (LEVEL<=diameter) THEN SET level1=LEVEL --液位正常;
- - 計算實時液位所達到的液體體積;
SET V=3.1415926*level1*level1*(3*RADIUS – level1)/3
- - 計算儲量;
SET M=V*DENSITY
- -
CALL ALLOW_BAD(PVCALC,M) -- 輸出計算儲量到綁定點測量值,并錯誤處理;
SET PVAUTOST=NORMAL - - 設定綁定點測量工作模式為正常;
END TANK_C
END PACKAGE

5.4 綁定點的部分組態值:
綁定點為AM REGULATORY 點:



5.5 本文提供方式與原方式的比較
5.5.1 計算量:
  沒有了開發時的數組計算量,實時液位所對應的體積在程序公式中得到計算,當然
  前提是球罐是標準的球形。而對于非標準的球形誤差也不會比原方法大(原因是原方法在計算兩層之間的體積時是按照平均來分,事實上來說兩層之間也是球體的切層,用平均法有較大的誤差)。

5.5.2 可維護性:
  因為沒有程序中具體的量,而是通過綁定點的接口來輸入輸出,所以基本上不需要維護。

5.5.3 通用性:
  本程序適用于各種球罐(不同半徑)中各種液體(不同密度)儲量的計算。只需要在綁定點中PED設定參數(LEVEL,DENSITY,RADIUS)即可。并且本程序只需要一個拷貝就可以有多個引用,也減少了HM的存儲壓力。

5.6 與PV標準算法的比較:
  其實按照這種用球缺體積公式來近似的方法完全可以在PV標準算法中來實現,效果應該和本文提供的算法相同,且不用編制程序。但是公式中的計算量較大,因為APMM需要處理數據太多,而AM在程序處理方面能力較強,這樣可以解放APMM,而充分發揮 AM的長處,何樂而不為呢!

5.7 與面向對象程序設計方法的比較:
  嚴格意義上來說工業控制與計算機程序設計是兩個學科,然而隨著科技的發展其界限已經越來越模糊,正如各種程序語言越來越多介入工業控制(如VB、Delphi等),現代程序設計的思想也進入到工業控制。這里我們繼承的就是“面向對象”的程序設計方法,將罐作為一個“對象”,密度、半徑、液位作為“屬性”,儲量的計算作為“方法”。本例就是將其簡單封裝作為所有球罐的類(程序),每一個應用就是將這個類(程序)實例化(應用)一次。所以總體來說,本文的思想就是將“面向對象”程序設計方法的思想在工業控制的程序設計中做了深化。

6、總結
  CL/AM程序是個很有用的工具,在復雜計算方式替代標準PV算法等方面能力突出。在乙烯罐區球罐儲量計算的程序設計中,相比原有方法的可以減少開發時的計算量、不存在維護問題,并且通用性較強。而與數據點的PV標準算法相比可以減少APMM的負擔。本文也提供了源代碼以及對代碼注釋分析。同時對面向對象程序設計思想在工業控制程序設計中的應用做了部分深化。

參考文獻:
1、 Honeywell TDC3000 系統手冊;
2、 中國石化廣州分公司乙烯DCS系統CL/AM程序MC302.CL源代碼

●Application of the CL/AM program in ethylene tank area


Abstract:
The ability of the CL/AM programming of Honeywell TDC3000 system in the aspect of complex calculation is stand out. At the ethylene tank area, its ability of calculating the capacity of ethylene tank is standout. This paper issues particular and gives other method.

Keys:
CL/AM,programming,tank area,capacity ,calculation,program code.

作者簡介: 王雨辰,中國石化廣州分公司信息儀控中心,電話020-82128389

下一篇: PLC、DCS、FCS三大控

上一篇: 索爾維全系列Solef?PV

中文字幕第二一区_久久久久在线视频_精品国产自在现线看久久_亚洲精品一区二区三区电影网

      国产精品极品美女粉嫩高清在线| 国产精品久久久久久福利一牛影视| 欧美日韩中文字幕精品| 国产欧美短视频| 亚洲第一精品福利| 亚洲永久网站| 欧美+亚洲+精品+三区| 国产精品一区二区在线观看| 亚洲国产综合91精品麻豆| 性感少妇一区| 欧美日韩一区三区四区| 亚洲高清视频在线| 欧美亚洲三区| 欧美日韩一二三区| 亚洲国产精品va在看黑人| 午夜在线一区| 欧美无乱码久久久免费午夜一区| 影音先锋久久精品| 欧美一区二区三区男人的天堂| 欧美母乳在线| 亚洲精品国产拍免费91在线| 亚洲一区二区三区三| 欧美成人免费在线| 亚洲第一精品夜夜躁人人躁| 欧美一级成年大片在线观看| 国产精品国产三级欧美二区| 夜夜狂射影院欧美极品| 欧美高清在线视频| 亚洲福利免费| 久久综合国产精品| 精品成人a区在线观看| 久久国产精品99国产精| 国产综合亚洲精品一区二| 欧美一级二区| 国产一区自拍视频| 久久成人av少妇免费| 国产一区二区精品久久99| 亚洲欧美国产毛片在线| 国产精品久久久久久户外露出 | 久久av一区二区三区| 国产精品videosex极品| 亚洲一区二区三区视频| 国产精品av免费在线观看| 亚洲精品久久久久久一区二区| 美女亚洲精品| 亚洲国产欧美不卡在线观看 | 欧美一区免费| 国产色爱av资源综合区| 久久精品国产在热久久 | 国产精品久久一区主播| 先锋亚洲精品| 国产一区二区三区四区hd| 久久久999精品视频| 在线精品亚洲| 欧美jjzz| 中文一区字幕| 国模精品一区二区三区| 欧美www视频在线观看| av成人毛片| 国产日韩一区二区三区在线| 久久免费一区| 99riav久久精品riav| 国产精品手机视频| 久久亚洲影音av资源网| 亚洲人午夜精品免费| 国产精品www| 久久免费黄色| 一区二区三区不卡视频在线观看| 国产精品一区一区| 久久精品欧美日韩精品| 国内精品视频在线观看| 欧美精品一区三区| 性色av香蕉一区二区| 国产私拍一区| 欧美激情自拍| 午夜视频一区二区| 在线观看日韩一区| 欧美日韩色婷婷| 欧美资源在线观看| 亚洲大胆在线| 国产精品日本欧美一区二区三区| 久久久国产精品一区二区中文 | 欧美激情一区二区久久久| 亚洲小说欧美另类婷婷| 亚洲高清精品中出| 国产欧美日韩专区发布| 欧美日韩成人一区二区三区| 久久久久久网站| 亚洲一区久久久| 亚洲日韩中文字幕在线播放| 国产日韩欧美在线观看| 欧美色区777第一页| 免费欧美视频| 久久国产88| 午夜精品福利一区二区三区av| 亚洲精品韩国| 在线观看日韩av先锋影音电影院| 国产伦精品一区二区| 欧美日韩中文另类| 欧美激情综合在线| 另类尿喷潮videofree| 欧美中文在线视频| 午夜宅男久久久| 亚洲视频久久| 这里只有精品在线播放| 亚洲激精日韩激精欧美精品| 国内外成人免费视频| 国产日韩欧美日韩| 国产精品一区二区女厕厕| 国产精品h在线观看| 欧美日本在线| 欧美日本精品在线| 欧美丰满少妇xxxbbb| 狼狼综合久久久久综合网| 久久精品日韩| 久久精品国产欧美亚洲人人爽| 午夜精品免费视频| 午夜精品福利一区二区三区av| 亚洲一级在线| 欧美一级播放| 久久成人亚洲| 久久精品72免费观看| 欧美一级二级三级蜜桃| 午夜在线电影亚洲一区| 欧美一区二区三区免费看| 亚洲欧美bt| 欧美在线视频免费| 久久精品一二三| 久久综合久久综合久久综合| 久久久www成人免费无遮挡大片| 久久成人18免费观看| 久久久精品午夜少妇| 久久精品一二三| 欧美一级视频一区二区| 久久久久久久91| 欧美高清一区二区| 欧美日韩在线播| 国产精品外国| 激情五月婷婷综合| 亚洲国内自拍| 一区二区三区福利| 香蕉免费一区二区三区在线观看| 久久国产黑丝| 欧美激情一区二区三区在线视频观看 | 欧美日韩在线观看一区二区| 国产精品视频内| 激情成人在线视频| 亚洲精品中文字幕在线| 亚洲女人天堂成人av在线| 欧美在线影院| 欧美成人免费在线观看| 老司机久久99久久精品播放免费| 久久免费精品视频| 欧美日韩免费精品| 韩日视频一区| 日韩亚洲欧美成人| 久久精品av麻豆的观看方式| 欧美精品在线一区二区三区| 国产精品视频免费一区| 亚洲国产精品va| 午夜一级久久| 欧美日韩国产区一| 韩日精品中文字幕| 亚洲少妇诱惑| 欧美精品成人91久久久久久久| 国产精品一区二区三区观看| 亚洲欧洲日本在线| 久久国产一区| 国产精品theporn| 亚洲韩国一区二区三区| 性欧美大战久久久久久久免费观看| 欧美激情精品久久久六区热门| 国产精品视频一二| 一区二区三区高清视频在线观看| 麻豆成人在线观看| 国产日产欧产精品推荐色| 中日韩视频在线观看| 免费欧美网站| 影音先锋亚洲电影| 久久成人免费| 国产精品美女999| 在线中文字幕一区| 欧美区在线播放| 亚洲国语精品自产拍在线观看| 欧美在线观看网站| 国产精品久久久久高潮| 一区二区三区高清| 欧美女同在线视频| 亚洲精品一区二区三区不| 久久五月激情| 国内精品久久久久影院优| 欧美与欧洲交xxxx免费观看| 国产精品美女久久久| 一区二区三区国产在线观看| 欧美日韩p片| 日韩亚洲精品电影| 欧美日本在线一区| 亚洲一区二区三区在线| 欧美另类在线播放| 在线免费不卡视频|