潘 登 鐘國院 閆建國
(陜西北元化工集團有限公司化工分公司)
ECS-100控制系統程序設計應用實例
潘 登 鐘國院 閆建國
(陜西北元化工集團有限公司化工分公司)
利用ECS-100控制系統中的梯形圖(LD)語言、順控圖(SFC)語言和ST語言,設計了AI信號三取中、紅綠燈和四路搶答器3個實例程序,并給出了相應的分析與說明。
ECS-100系統 圖形編程
ECS-100控制系統內部提供了梯形圖LD、順控圖SFC、功能塊圖FBD和ST語言4種編程方法,它們之間可以相互調用,為快速組態編程提供了極大的便利[1]。在此,筆者利用梯形圖LD語言、順控圖SFC語言和ST語言設計了3個實例程序。
在自動化控制中,基于可靠性考慮,對關鍵AI信號通常采取三取中設計[2]。在此,筆者基于ECS-100控制系統設計了AI信號三取中程序[3]。啟動編程軟件AdvanTrol-Pro,在圖形編程中創建ST段落,程序代碼如下:
FUNCTION_BLOCK sfloat_middle
VAR_INPUT
IN1:sfloat;
IN2:sfloat;
IN3:sfloat;
END_VAR
VAR_OUTPUT
OUT1:sfloat;
END_VAR
VAR
END_VAR
IF (IN1>=IN2 AND IN1<=IN3) OR (IN1>=IN3 AND IN1<=IN2) THEN
OUT1=IN1;
END_IF;
IF (IN2>=IN1 AND IN2<=IN3) OR (IN2>=IN3 AND IN2<=IN1) THEN
OUT1=IN2;
END_IF;
IF (IN3>=IN1 AND IN3<=IN2) OR (IN3>=IN2 AND IN3<=IN1) THEN
OUT1=IN3;
END_IF;
END_FUNCTION_BLOCK
程序分析如下:
a. 創建FUNCTION_BLOCK sfloat_middle模塊,建立IN1、IN2、IN3共3個輸入變量,數據類型為半浮點數;建立OUT1輸出變量,數據類型為半浮點數。
b. 通過執行語句“IF (IN1>=IN2 AND IN1<=IN3) OR (IN1>=IN3 AND IN1<=IN2) THEN OUT1=IN1;”,可以判定IN1是否為3個輸入變量的中間值。
c. 判斷IN2、IN3是否為3個輸入變量中間值的語句和判斷IN1的語句相同。
d. 在圖形編程中創建功能塊圖FBD段落,在自定義模塊中調用sfloat_middle模塊。最后將3路AI信號(IN1、IN2、IN3)連接到各自定義的端子板上,OUT1連接到邏輯控制中。
都市道路車水馬龍,所有交通秩序全部依靠紅綠燈維持,因此,紅綠燈在交通系統中具有關鍵性作用。在此,筆者基于ECS-100控制系統設計了一個紅綠燈程序。啟動編程軟件AdvanTrol-Pro,在圖形編程中創建順控圖SFC段落,程序如圖1所示。

圖1 紅綠燈程序
程序中,P6_38為起始步、P6_39/40/41為常規步、P6_43為終止步。START為開始命令,數據類型為1字節變量。RESET為SFC控制變量中的復位變量,數據類型為1字節變量。timers[1]為紅燈秒定時器、timers[2]為黃燈秒定時器、timers[3]為綠燈秒定時器。R_ST為紅燈設定時間、R_RT為紅燈剩余時間、Y_ST為黃燈設定時間、Y_RT為黃燈剩余時間、G_ST為綠燈設定時間、G_RT為綠燈剩余時間,這6個變量的數據類型均為2字節變量(無符號整數)。
程序分析如下:
a. 第1次執行程序時,在變量調試窗口中對RESET置位并啟動START開始命令,程序由終止步P6_43跳轉到P6_38起始步,順控程序啟動。
b. 進入起始步P6_38,執行RESET復位,紅燈秒定時器timers[1]置0。
c. 程序第1個轉換條件START在第1次執行程序時啟動,程序進入第1步P6_39,點亮紅燈。用紅燈設定時間R_ST減去紅燈秒定時器timers[1]時間,得到紅燈剩余時間R_RT。如果紅燈秒定時器時間等于紅燈設定時間,則黃燈秒定時器timers[2]置0。第1步P6_39執行完成。
d. 當滿足程序第2個轉換條件timers[1]≥R_ST時,程序進入第2步P6_40,點亮黃燈。用黃燈設定時間Y_ST減去黃燈秒定時器timers[2]時間,得到黃燈剩余時間Y_RT。如果黃燈秒定時器時間等于黃燈設定時間,則綠燈秒定時器timers[3]置0。第2步P6_40執行完成。
e. 當滿足程序第3個轉換條件timers[2]≥Y_ST時,程序進入第3步P6_41,點亮綠燈。用綠燈設定時間G_ST減去綠燈秒定時器timers[3]時間,得到綠燈剩余時間G_RT。如果綠燈秒定時器時間等于綠燈設定時間,則第3步P6_41執行完成,并跳轉至終止步。
f. 當滿足程序第4個轉換條件timers[3]≥G_ST時,程序進入終止步P6_43,RESET復位,程序由終止步P6_43跳轉到P6_38起始步。
在某些競賽活動中會使用到搶答器,在此,筆者根據自控程序中經常使用的首出原理,設計了一個四路搶答器程序[3]。啟動編程軟件AdvanTrol-Pro,在圖形編程中創建梯形圖LD段落,程序如圖2所示。

圖2 四路搶答器程序
程序中DI_01/02/03/04為四路搶答器輸入信號,數據類型為數字量輸入。RESET為復位信號,數據類型為1字節變量。FO為首出信號,數據類型為2字節變量(無符號整數)。TEMP為臨時變量,數據類型為1字節變量。
程序分析如下:
a. DI_01/02/03/04四路搶答器輸入信號均未觸發,TEMP置位。
b. 若DI_01搶答器輸入信號被觸發,則SR觸發器(P2_7)置位,首出FO置為1。
c. 若比較模塊(P2_45)判斷首出FO不小于1,則TEMP復位。此時即使其他搶答器輸入信號被觸發,對應的SR觸發器也不能置位,首出FO不能賦值。
d. RESET復位,首出FO置0。程序恢復初始狀態。等待下一輪搶答。
筆者基于浙江中控ECS-100控制系統,利用圖形編程語言(梯形圖LD語言、順控圖SFC語言和ST語言)分別設計了AI信號三取中、紅綠燈、四路搶答器3個實例程序。希望為同行更加熟練地掌握ECS-100控制系統圖形編程技術提供思路。
[1] 馬銘宏,丁永允,房國成.基于DCS系統的自動電壓控制設計[J].東北電力技術,2016,37(5):39~41.
[2] 劉文英,陸海霞,李瑩.基于支持向量機的甲醇精餾預測控制器設計[J].石油化工自動化,2015,51(1):18~21.
[3] 劉娟.淺析化工生產中DCS自動控制的應用[J].中國化工貿易,2014,6(31):82~83.
ApplicationExamplesofProgramsDesignforECS-100ControlSystem
PAN Deng, ZHONG Guo-yuan, YAN Jian-guo
(ChemicalBranch,ShaanxiBeiyuanChemicalGroupCo.,Ltd.)
Through having ladder diagram (LD) language, sequence diagram (SFC) language and ST language in ECS-100 control system based, three example programs such as median-of-three of AI signals, four responders and traffic lights were designed and their corresponding analysis and descriptions were presented.
ECS-100 control system, graphical programming
TH865
B
1000-3932(2017)07-0690-03
2017-03-10,
2017-04-17)
潘登(1984-),工程師,從事化工自動化及儀表管理工作,pd_32@163.com。
(Continued from Page 672)
algorithm and the LabVIEW taken as development platform to dynamically simulate the level control of multi-effect countercurrent evaporation process was implemented, including establishment of the mathematical model for three-effect countercurrent evaporation level based on material balance and heat balance. Simulating the liquid level proves both adaptivity and robustness of this BPNN-based PID control system in liquid level control of the multi-effect evaporation process.
Keywordsliquid level control,BPNN-based PID control, LabVIEW, multi-effect evaporation