牛松森,楚子林,楊建新,厲成元,單凌寒
(1.天津電氣科學(xué)研究院有限公司,天津 300301;2.中交一航局安裝工程有限公司,天津 300457)
智能化控制系統(tǒng)圖形化編程平臺搭建與應(yīng)用
牛松森1,楚子林1,楊建新1,厲成元1,單凌寒2
(1.天津電氣科學(xué)研究院有限公司,天津 300301;2.中交一航局安裝工程有限公司,天津 300457)
控制器是各類大型、復(fù)雜電控裝置的控制核心,它的性能直接影響著整個控制系統(tǒng)的技術(shù)指標(biāo)。介紹了一種智能化控制系統(tǒng)圖形化編程平臺ΤGCS,此編程平臺創(chuàng)新性地采用“運行前調(diào)度策略”,具有豐富的功能模塊庫、友好的人機(jī)界面和強(qiáng)大的組態(tài)功能。使用此編程平臺,用戶可以快速高效地開發(fā)出各種復(fù)雜的、高性能的、專用的控制系統(tǒng)。
通用控制系統(tǒng);運行前調(diào)度策略;圖形化編程;模塊化編程
數(shù)字化、智能化技術(shù)是產(chǎn)品創(chuàng)新和制造技術(shù)創(chuàng)新的共性使能技術(shù),將會深刻改革制造業(yè)的生產(chǎn)模式和產(chǎn)業(yè)形態(tài),是新的工業(yè)革命的核心技術(shù)[1]。
近年來,其自主研發(fā)的通用控制系統(tǒng)開發(fā)平臺得到了廣泛應(yīng)用。該通用控制系統(tǒng)開發(fā)平臺具有完全自主知識產(chǎn)權(quán),適用于大型自動化系統(tǒng)及復(fù)雜電控設(shè)備的智能化控制,也可利用該通用控制系統(tǒng)開發(fā)平臺開發(fā)具有特定功能的專用控制系統(tǒng)。本文主要介紹該通用控制系統(tǒng)開發(fā)平臺的圖形化編程平臺的特點和實際應(yīng)用情況。
天津電氣院通用控制系統(tǒng)圖形化編程平臺,簡稱ΤGCS(tried general controller software),是基于圖形化編程的微處理器集成開發(fā)環(huán)境,其創(chuàng)新采用“運行前調(diào)度策略”,具有豐富的功能模塊庫、方便易用的人機(jī)界面和強(qiáng)大的組態(tài)功能。
ΤGCS集成了豐富的用于實現(xiàn)各類系統(tǒng)控制和算法的功能模塊,支持嵌入式程序代碼的建立、編譯鏈接、下載、運行監(jiān)控、代碼調(diào)試以及加密上傳保護(hù)。使用ΤGCS,用戶不需要編寫系統(tǒng)實現(xiàn)代碼,只需要通過修改功能模塊的運行參數(shù)、創(chuàng)建功能模塊端子間的連線關(guān)系和設(shè)置功能模塊運行的先后次序等操作,即可完成控制系統(tǒng)的軟件設(shè)計。
1.1 TGCS的架構(gòu)
ΤGCS作為上位機(jī)軟件開發(fā)平臺,主要包含圖形化編程界面、模塊化抽象數(shù)據(jù)定義、編譯下載模塊、命令解析模塊、運行監(jiān)控模塊、COMM通訊模塊等部分。圖形化編程界面提供直觀簡潔的操作界面,包括工程管理、功能頁編輯、功能模塊庫管理、實時跟蹤、屬性管理、運行日志管理等頁面。模塊化抽象數(shù)據(jù)定義是將各種控制裝置、站點、機(jī)箱、CPU等定義為抽象的數(shù)據(jù)結(jié)構(gòu),可通過簡潔的命令進(jìn)行增加和刪除。編譯下載模塊將ΤGCS工程編譯成目標(biāo)代碼然后下載到控制單元中去執(zhí)行。命令解析模塊用于建立上位機(jī)和控制單元之間的通信協(xié)議。運行監(jiān)控模塊可以實時進(jìn)行控制單元運行狀態(tài)監(jiān)測,并通過參數(shù)修改控制被控對象的運行。COMM通訊模塊用于上位機(jī)和控制單元之間的通信。
模塊間的關(guān)系如圖1所示。
圖1 TGCS架構(gòu)Fig.1 TGCS′s architecture
1.2 TGCS的特點
ΤGCS創(chuàng)新采用“運行前調(diào)度策略”和成熟的圖形化、模塊化編程技術(shù),并設(shè)計實現(xiàn)了完備的在線監(jiān)控和調(diào)試功能。這些技術(shù)的使用大大提高了通用控制系統(tǒng)的可靠性,顯著縮短了通用控制系統(tǒng)的開發(fā)周期,提高了軟件的質(zhì)量和生產(chǎn)效率,充分利用了軟件開發(fā)中積累的軟件資產(chǎn),實現(xiàn)了軟件的工業(yè)化批量生產(chǎn)。
1.2.1 運行前調(diào)度策略
運行前調(diào)度策略由調(diào)度的離線計算和調(diào)度運行兩部分組成,即離線計算周期值等于給定進(jìn)程集周期的最小公倍數(shù)的全部周期進(jìn)程的調(diào)度,并根據(jù)先前計算的調(diào)度策略執(zhí)行周期性進(jìn)程[2]。采用運行前調(diào)度策略要求能夠預(yù)先了解系統(tǒng)中進(jìn)程的主要特性。
ΤGCS編程平臺采用運行前調(diào)度策略來對通用控制器系統(tǒng)進(jìn)行任務(wù)執(zhí)行管理。在主程序中,設(shè)置每個處理器的定周期基本采樣時間T0,采樣時間T1是T0的2的指數(shù)(0和正整數(shù))倍,T2~T5依次是上一個采樣時間的2的指數(shù)倍,例如:T0=1 ms,T1=1 ms,T2=4 ms,T3=8 ms,T4=32 ms,T5=128 ms。系統(tǒng)中的每個功能塊需要按主程序中的設(shè)置,在T1~T5采樣時間中選擇1個。根據(jù)需要,1個功能包中可能有1~5種采樣時間。在程序編譯中,根據(jù)所設(shè)置的平均采樣時間并考慮特殊情況評估任務(wù)占用的資源情況,判斷可行性。
實踐表明,運行前調(diào)度策略比傳統(tǒng)的優(yōu)先級調(diào)度策略更適合通用控制系統(tǒng)應(yīng)用。以“運行前調(diào)度策略”為基礎(chǔ),可以以相對較小的系統(tǒng)開銷,實現(xiàn)微處理器在多線程運行環(huán)境中,各項任務(wù)執(zhí)行的順序與時間確切、可控,提高了微處理器硬實時系統(tǒng)任務(wù)的執(zhí)行能力。通過在系統(tǒng)運行前精確評估程序運行時間,用戶根據(jù)處理器資源與性能的限制,合理安排功能塊的任務(wù)組合,可以確保處理器按時完成預(yù)先配置的任務(wù),實現(xiàn)處理器資源和性能的高效利用。下載運行的程序經(jīng)在線調(diào)試修改,變更后處理器實際運行的程序可以上載備份,實現(xiàn)控制系統(tǒng)結(jié)構(gòu)與參數(shù)的完美復(fù)現(xiàn)。
1.2.2 豐富的功能模塊庫
ΤGCS以功能模塊的形式保留前期的開發(fā)成果。通用功能模塊包含算術(shù)運算、邏輯運算、控制、輸入輸出、通信、數(shù)據(jù)轉(zhuǎn)換等;專用功能模塊主要包括變流器控制、矢量控制等。通用功能塊主要供用戶解決應(yīng)用中的工藝控制、故障綜合、邏輯連鎖和速度環(huán)控制等任務(wù);專用功能塊主要用于變流器電流閉環(huán)控制及相關(guān)任務(wù),其結(jié)構(gòu)和部分參數(shù)不能由用戶改動。另外還可以將工作中使用頻繁、結(jié)構(gòu)和功能穩(wěn)定的基本功能模塊及功能模塊間的連線信息封裝在一起,搭建出一種新型的功能模塊,即“宏功能模塊”。宏功能模塊具有普通功能模塊的屬性和行為,和普通功能模塊一起使用。而且通過宏功能模塊的導(dǎo)入導(dǎo)出操作可以使宏功能模塊在其他相同類型的項目中實現(xiàn)復(fù)用。
1.2.3 強(qiáng)大的界面顯示及組態(tài)功能
ΤGCS采用組態(tài)概念的圖形化編程方式。ΤGCS界面是容易操作的windows風(fēng)格,并可根據(jù)個人喜好對子功能窗口進(jìn)行隱藏和???,支持通用快捷鍵功能。在ΤGCS工程中,算法功能模塊可以在功能頁面上自由拖動,方便排列調(diào)整。
ΤGCS支持頁內(nèi)和頁間功能模塊端子之間創(chuàng)建連線。對頁內(nèi)的多個同源連線的公共部分,以共享點區(qū)分,連接關(guān)系簡潔明確;對不同功能頁面之間的功能模塊端子間的連線,頁外連接信息顯示于頁邊特定區(qū)域,支持點擊快速跳轉(zhuǎn)跟蹤連線的另半部分。對于不存在可用路徑的情況,采用標(biāo)號的方式表明連接關(guān)系。功能模塊端子間的連線采用合理高效的自動布線算法,此算法為優(yōu)化的A星搜索算法,這是一種圖形平面上的啟發(fā)式搜索算法。算法的基本思想是:在狀態(tài)空間中的搜索對每一個搜索的位置進(jìn)行評估(股價函數(shù)為曼哈頓距離),得到最好的位置,再從這個位置進(jìn)行搜索直到目標(biāo)。找出可行路線,最后對連線結(jié)果進(jìn)行優(yōu)化,優(yōu)化方案的基本原則是連線數(shù)據(jù)點最少。
編輯完成的頁面以有向圖表示,節(jié)點功能模塊代表數(shù)據(jù)處理函數(shù),數(shù)據(jù)通過功能模塊節(jié)點間的連線傳入傳出。
ΤGCS界面如圖2所示。
圖2 TGCS界面Fig.2 TGCS′s interface
1.2.4 完備的在線監(jiān)控和調(diào)試功能
ΤGCS工程支持PC端和小鍵盤、觸摸屏等輔助設(shè)備端的在線監(jiān)控和調(diào)試。主要監(jiān)控和調(diào)試內(nèi)容有:功能模塊端子值實時跟蹤查看和輸入值在線修改,端子連線在線修改,端子數(shù)據(jù)動態(tài)顯示,參數(shù)化端子的跟蹤和改值,波形記錄和自診斷。
ΤGCS提供了端子參數(shù)化功能。參數(shù)化是指用約定的一串?dāng)?shù)字來代表功能模塊端子,通過對參數(shù)的操作可以實現(xiàn)對端子的操作,多見于用小鍵盤、觸摸屏等輔助設(shè)備調(diào)試操作單元。參數(shù)化參數(shù)分為主參數(shù)和輔參數(shù)兩部分。參數(shù)化除了可以修改端子值和連線外,還可以輸出故障字和故障屏蔽字、顯示運行時間、CPU使用率等信息,便于監(jiān)控和調(diào)試。
ΤGCS波形顯示包括模擬量波形顯示、數(shù)字量波形顯示和端子值波形顯示。在上位機(jī)中觀測波形,是以某一時刻為觸發(fā)點,F(xiàn)PGA將保留觸發(fā)點前的一部分?jǐn)?shù)據(jù),同時再采集一段時間的數(shù)據(jù),然后將全部數(shù)據(jù)送ΤGCS顯示。ΤGCS波形記錄并不是一種波形實時顯示的功能,而是還原在某一觸發(fā)點前后這些觀測量的運行曲線,這為系統(tǒng)用戶供了一種故障分析的手段。
采用合適的監(jiān)控和調(diào)試方式,通過COMM通信模塊實時讀取控制單元中端子值數(shù)據(jù)并顯示于ΤGCS頁面和小鍵盤、觸摸屏等輔助設(shè)備,用戶能及時了解控制單元的運行情況,配合在線端子數(shù)據(jù)修改(改值/改連線),便于快速做出合理的調(diào)整,設(shè)計出優(yōu)化的控制系統(tǒng)[3]。
圖3為功能模塊端子值實時跟蹤查看界面。
圖3 端子值實時跟蹤查看Fig.3 Port value real-time tracking
1.3 使用TGCS編程平臺進(jìn)行通用控制系統(tǒng)開發(fā)
在確定了通用控制系統(tǒng)設(shè)計方案之后,軟件使用者就可以使用ΤGCS進(jìn)行程序開發(fā)了。
開發(fā)流程如圖4所示。
圖4 使用TGCS開發(fā)通用控制系統(tǒng)流程Fig.4 Development process for general control system using TGCS
首先,建立工程。ΤGCS提供有工程創(chuàng)建向?qū)?。工程?chuàng)建向?qū)е笇?dǎo)用戶選擇ΤGCS工程的保存位置、設(shè)置機(jī)箱、站點、CPU的屬性、采用的功能模塊庫版本、采樣時間、圖紙打印信息等。通過向?qū)?,可以快速建立起具有基本元素的ΤGCS工程。其次,編輯ΤGCS工程的CPU項目。拖拽功能模塊到CPU項目的功能頁中,調(diào)整到適當(dāng)位置,根據(jù)設(shè)計方案在功能模塊的端子間建立連線,并設(shè)置功能模塊的初始參數(shù)。最后,對搭建完成的ΤGCS工程進(jìn)行編譯,并將程序下載到控制單元。
后面就是調(diào)試部分,通過在線監(jiān)控和調(diào)試功能,使用控制單元對被控對象進(jìn)行控制,在線觀測功能算法模塊的輸入輸出數(shù)據(jù),根據(jù)輸出結(jié)果,進(jìn)行參數(shù)調(diào)整。如果需要修改算法或者增刪功能模塊,需要重新修改、編譯、下載ΤGCS工程。
1.4 TGCS的實際應(yīng)用情況
作為軟件自動化技術(shù)集成開發(fā)平臺,ΤGCS在天津電氣院的系列光伏逆變器產(chǎn)品開發(fā)、系列變頻器國產(chǎn)化研發(fā)中得到了廣泛的應(yīng)用,顯著提高了開發(fā)效率及代碼的可靠性。
采用此平臺之前,中等項目的項目周期動輒1 a以上,有的項目甚至多年才能完成,其中固然有很多其他因素,但是缺少適合的開發(fā)平臺是最關(guān)鍵的一個因素,在ΤGCS平臺下,項目周期大大縮短,據(jù)不完全統(tǒng)計,能縮小2倍以上。
例如,以此為平臺開發(fā)的7.2 kW光伏儲能逆變器、500 kW光伏并網(wǎng)逆變器、ΤAC1系列整流器等,均在短期內(nèi)迅速開發(fā)完成,已有數(shù)百臺設(shè)備在國內(nèi)外的應(yīng)用現(xiàn)場可靠運行,效果良好。
本文描述了一種智能化控制系統(tǒng)圖形化編程平臺ΤGCS,ΤGCS創(chuàng)新性地采用“運行前調(diào)度策略”,具有豐富的功能模塊庫、方便易用的界面顯示和強(qiáng)大的組態(tài)功能,應(yīng)用面寬、實用性強(qiáng),可廣泛應(yīng)用于節(jié)能環(huán)保、新能源、高端裝備及新能源汽車等戰(zhàn)略性新興產(chǎn)品的開發(fā)。該開發(fā)平臺特別適合于創(chuàng)新研發(fā)具有復(fù)雜控制功能要求的新型電控設(shè)備。可有效地縮短并簡化基于微處理器的新產(chǎn)品研發(fā)過程,有效提高國產(chǎn)大型高性能電控設(shè)備的適用性、技術(shù)性能指標(biāo)及可靠性。
[1]周濟(jì).制造業(yè)數(shù)字化智能化[J].中國機(jī)械工程,2012,23(20):2395-2400.
[2]Xu Jia,David Lorge Parnas.Priority Scheduling Versus Pre-run-time Scheduling[J].The International Journal of Time-critical Computing Systems,2000,18(1):7-23.
[3]馬小亮.高性能變頻調(diào)速及其典型控制系統(tǒng)[M].北京:機(jī)械工業(yè)出版社,2010.
Construction and Application of Graphics Programming Platform for Intelligent Control System
NIU Songsen1,CHU Zilin1,YANG Jianxin1,LI Chengyuan1,SHAN Linghan2
(1.Tianjin Research Institute of Electric Science Co.,Ltd.,Tianjin 300301,China;2.Installation Engineering Co.,Ltd.,of CCCC First Harbor Engineering Co.,Ltd.,Tianjin 300457,China)
Controller is the core of all kinds of large and complex electronic control device,which performance directly affects the performance of the whole control system.A graphical programming platform for intelligent control system,TGCS,was described.TGCS used the“pre-run-time scheduling”innovatively,and TGCS had distinguishing features such as rich module library,a pleasant interface display and powerful configuration function.Using TGCS,user can develop control system of complex function,high performance and dedicated application,quickly and efficiently.
general control system;pre-run-time scheduling;graphical programming;modular programming
TP273
A
10.19457/j.1001-2095.20170216
2015-09-10
修改稿日期:2016-06-15
牛松森(1977-),男,碩士,工程師,Email:niusongsen@tried.com.cn