高強 常勇 李航 肖振
(天津理工大學自動化學院天津市復雜系統控制理論及應用重點實驗室,天津 300384)
加壓泵站自動化系統程序的模塊化設計
高強 常勇 李航 肖振
(天津理工大學自動化學院天津市復雜系統控制理論及應用重點實驗室,天津 300384)
以某區給水加壓泵站控制系統為例,針對系統PLC程序的合理化設計,分析了程序模塊化設計方法,并根據IEC 61131-3標準,將程序模塊化設計應用于自動化項目中。該方法利用編程系統原有功能塊和根據控制要求定義的功能塊,對自動化系統PLC程序進行模塊化編程。與傳統的PLC編程方法相比較,模塊化設計使程序結構化清晰,編寫簡單,各功能相互獨立。程序的模塊化設計降低了控制系統的開發和維護成本,提高了系統運行效率。
加壓泵站 合理化設計 程序模塊化 IEC 61131-3標準 自動化系統
傳統PLC編程一般是根據設計者個人習慣和相應的要求來設計的,這使得大部分程序都是在主程序中編程。以某區給水加壓泵站系統作為研究背景,按照傳統編程方法,所有程序都在主程序中編寫,而給水加壓泵站自動化系統有很多控制要求,導致程序編寫比較繁瑣,造成程序的可讀性較差,且其他工程師難以理解,程序維護困難。因此,以程序模塊化設計[1-4]為原則,根據IEC 61131-3標準[5-7],對給水加壓泵站自動化系統進行PLC程序設計。具體做法是根據項目的控制要求,采用FC和FB等功能塊來實現這些要求,在主程序中通過調用這些功能塊來實現控制要求。這樣程序編寫更容易、結構化更清晰、可讀性更強、維護更方便、運行效率更高。
1.1 工藝流程
給水加壓泵站共有6個水泵,根據進廠水壓力的不同,共分為超越供水、疊壓供水、清水池加壓供水3種工作模式。
系統通過廠區管網上的4個電動閥門控制各模式的運行、模式之間的運行及模式的切換。其中,超越供水是指當進廠水壓力大于等于0.25 MPa時,不通過加壓泵房直接供水。疊壓供水是指當進廠水壓力大于0.15 MPa且小于0.25 MPa時,通過加壓泵房但不通過清水池供水。清水池供水是指當進廠水壓力小于等于0.15 MPa或者達到清水池運行周期時,通過清水池加壓供水。
水泵的啟停既可以根據清水池液位而定,也可以通過現場控制柜的手動來完成。閥門和泵組的控制可以分為手動和自動模式。
1.2 自動控制系統的構成
自動化系統負責全廠生產過程監視控制與數據采集,由監控系統(WinCC)、監控子站及通信網絡構成。
系統結構如圖1所示[8-9]。

圖1 系統結構圖Fig.1 Structure of the system
監控主站及監控分站均設在泵站的泵房及配電間構筑物內。控制主站主要包括:2臺IPC監控計算機(1臺操作員站、1臺工程師站)投影儀、UPS電源、激光打印機等。監控子站由泵房監控子站和加氯間監控子站組成。泵房監控子站包括PLC機柜、可編程控制器、網絡接口等。加氯間監控子站為廠家成套設備。各監控站之間、水泵變頻器及軟啟動器之間的通信采用總線型結構,通過以太網交換機連接IPC及各終端,并考慮未來企業信息管理網絡的建設,留有擴展和網絡連接的接口。
1.3 監控系統的功能
監控室設置工控機作為工程師站和操作員站,并配置操作臺和打印機等。操作臺的工程師站具有多種界面。
監控系統的主要功能如下:加壓泵站工藝流程監控、PID控制器監控、過程數據歸檔、系統報警管理、用戶權限管理、報表服務、趨勢圖服務等。系統利用WinCC對監控畫面進行組態。通過這些畫面,工作人員可對處理過程中的各個部分充分了解,及時掌握各個環節發生的各種情況。
最初,項目程序設計是根據系統的控制要求來編程,未考慮其他方面因素,程序完全是根據設計人員的個人習慣進行設計。程序運行表明,系統運行存在很多問題,系統維護和調試較繁瑣。
2.1 功能塊利用率低
傳統程序設計把所有的程序編寫都在主程序中完成,很少利用其他功能塊編寫系統常用的、多次出現的功能。主程序僅調用系統附帶的功能模塊,導致程序重復編寫。由于S7-300 PLC的CPU執行程序采用依次掃描的方式,造成PLC的CPU運行時不工作的程序也被掃描,程序時效性很差,PLC的CPU工作效率不高。
2.2 程序維護困難
在傳統程序編寫過程中,設計者一般根據自己的習慣來設計程序和命名變量,造成其他工程師不易理解,給程序的維護和調試帶來很大困難。
2.3 程序故障不易排查
在傳統程序編程過程中,設計人員需要反復查看程序,在編寫的過程中可能會出現錯誤,且出現的錯誤往往很難查找,造成程序的編寫費時費力。程序設計完成后,需要經過多次修改和檢查才能實現系統要求的控制功能。
由于控制要求較多,程序很長,一旦程序出現故障,工程師很難快速查找到故障。基于以上問題,針對系統中PLC程序的合理化設計,提出加壓泵站程序模塊化、規范化設計。
3.1 IEC 61131-3規范化的介紹
IEC 61131-3是IEC 61131國際標準的第三部分,是第一個為工業自動化控制系統的軟件設計提供標準化編程語言的國際標準。
由于IEC 61131-3標準所定義的系統中融入了現代軟件的概念,即采用現代軟件模塊化原則,因此這種編程方式有完美的結構框架,并且可讀性更強,程序運行效率更高,維護更方便。
3.2 模塊化結構設計
基于IEC 61131-3標準,對程序進行模塊化設計。模塊化程序設計的核心是只需要設置必要的輸入和輸出參數,盡量減少模塊之間的相互作用和內部數據交換。
模塊和模塊之間的數據交換采用顯性定義原則,將模塊的信息隱藏在模塊內部。用戶只需要知道這些模塊的外部特性(即功能和作用、輸入和輸出參數),不需要了解模塊內部的算法實現,在主程序中調用這些功能塊就能完成項目工程的控制要求和功能。
對原程序進行模塊化編程[10-11],模塊化具體做法:將泵站3種工作模式分別定義在3個功能塊中,即FB1、FB2、FB3,用戶在主程序中調用這3個功能塊,實現3種供水模式。其他的一些功能也定義成FB或者FC系列成塊封裝。用戶只需了解這些塊的功能和輸入輸出參數,不需知道具體內部算法,就可以使用這些功能塊。這使程序的可讀性更強,更方便其他設計人員檢查和修改。
程序工作流程和程序模塊框圖如圖2、圖3所示。

圖2 程序工作流程圖Fig.2 Workflow of the program

圖3 程序模塊圖Fig.3 Program module
根據IEC 61131-3標準,將項目程序經過重新模塊化編程以后,給水加壓泵站自動化系統具有以下特點。
4.1 程序可讀性更強
采用傳統編程方法編程,PLC程序編寫較長,可讀性很差,不易理解。經過模塊化處理之后,通過這些塊的功能和輸入輸出參數以及外部特性,編程人員可以根據程序的控制要求和條件編寫程序,使程序結構更清晰、整潔簡練,為其他工程師的維護和調試工作帶來很大便利。
4.2 程序運行時效性更快
采用傳統方法編程,當系統正常工作時,S7-300的CPU工作方式是從上到下依次掃描,而不工作的程序也被掃描,導致PLC的CPU運行效率很低。規范化以后,將控制繁瑣的程序和反復調用的程序在FC或者FB中完成編寫,在主程序中調用這些功能塊,即可達到同樣的控制要求;且CPU掃描程序時,CPU只掃描工作的程序或模式,對于不工作的程序或模式則直接跳過,縮短了CPU掃描程序的時間,極大提高了系統的時效性。
4.3 程序查錯診斷更快速
編程規范化后,當程序出現故障時,工程師可以快速找到出現故障的功能塊,并查看這些故障功能塊中的程序,找到故障原因。與傳統方法比較,程序故障診斷更方便、快捷。
4.4 程序的開放性更好
當設計人員需要添加其他功能和控制要求時,可利用系統的功能塊定義這些控制功能,然后在主程序中直接調用即可。各功能塊之間相互獨立,互不影響。
模塊化設計思想有助于新手學習PLC編程,也有助于工程師規范自己編寫程序。工程師通過對程序塊的積累和靈活應用,使復雜系統設計變得更簡單、規范。程序結構化更清晰,而且程序模塊化思想有助于推動PLC編程標準的進步。
[1] 張博,王志信.模塊化編程思想在PLC系統中的應用[J].化工自動化及儀表,2013,40(3):416-418.
[2] 宋超杰.PLC程序模塊化的工業應用[J].機械管理開發,2009, 24(1):170-171,173.
[3] 靳紅.PLC模塊設計及應用[J].起重運輸機械,2003(5):15-18.
[4] 李天平,蘇小兵.面向對象編程思想在PLC編程中的應用[J].微計算機信息,2010(31):223-224,230.
[5] 彭瑜.IEC 61131-3的現狀與發展[J].世界儀表與自動化, 2002,6(2):11-13.
[6] 彭瑜,何衍慶.IEC 61131-3編程語言及應用基礎[M].北京:機械工業出版社,2009:7-15.
[7] 王軍.基于IEC 61131-3標準的PLC梯形圖編碼及解算的研究[D]:北京:北京化工大學,2008.
[8] 周玉文,劉越,劉江濤.加壓泵站遠程監控系統的設計與實現[J].供水技術,2007,1(3):31-34.
[9] 高強,王國敬,李大華,等.污水處理流程一體化控制系統設計與實現[J].電氣傳動,2011,41(3):55-57.
[10] 高強,張亮,李月鳳.基于OPC技術的虛擬DCS監測系統設計[J].自動化與儀表,2009,30(12):30-32
[11] 遲君平,王斌,李業友.模塊化編程方法在PLC程序開發中的應用[J].微計算機信息,2005(6):26-27.
Modular Design of the Program for Automation System of Booster Pump Station
With the control system in certain district water supply pump station as example,aiming at the reasonable design of PLC program of system,the modular design method of the program is analyzed,and in accordance with IEC 61131-3 standard,the method of program modular design is applied in automation project.In this method,the original function blocks in programming system are adopted,and the self-defined function blocks are built based on control requirements,thus modular programming for PLC program of automatic system is conducted. Comparing with traditional PLC programming method,the modular design makes structure of program more clearly,simple in written,and the function independent to each other.The modular design of program reduces the development and maintenance costs of the control system,and enhances the operation efficiency of the system.
Booster pump station Rationalized design Modularized program IEC 61131-3 standard Automation system
TP29
A
天津市中青年骨干創新人才培養計劃基金資助項目(編號:20130830)。
天津市普通高等學校本科教學質量與教學改革研究計劃基金資助項目(編號:JW20120315)
修改稿收到日期:2014-03-11。
高強(1968-),男,1999年畢業于天津大學控制理論與控制工程專業,獲碩士學位,教授;主要從事過程控制智能控制和復雜系統的故障診斷的研究。