周 侗 胡靜濤 楊志家
(中國科學院沈陽自動化研究所1,遼寧 沈陽 110016;中國科學院研究生院2,北京 100039)
運動控制系統(tǒng)中的控制任務分散在不同的網(wǎng)絡節(jié)點中,控制任務的實現(xiàn)需要節(jié)點間交互大量的信息。控制任務對信息傳遞的確定性和實時性提出了很高的要求[1-2]。同時,控制任務的執(zhí)行與網(wǎng)絡通信也是相互影響的,較高的信息采樣頻率會提高系統(tǒng)整體控制性能,但也會增加網(wǎng)絡調(diào)度的負擔,甚至會反過來影響控制任務的運行。
運動控制網(wǎng)絡調(diào)度方法主要研究如何更好地協(xié)調(diào)控制任務的需求和網(wǎng)絡調(diào)度性能的關(guān)系,在避免網(wǎng)絡沖突的基礎上,滿足控制任務在通信確定性和實時性方面的需求。其研究內(nèi)容主要包括兩個方面:①信息傳輸?shù)拇_定性,即研究如何有效控制節(jié)點對通信通道的訪問,以避免網(wǎng)絡沖突現(xiàn)象的發(fā)生;②信息傳輸?shù)膶崟r性,即研究如何給網(wǎng)絡中的某個節(jié)點中的某個任務分配相應的時間和網(wǎng)絡資源,并對相關(guān)資源的使用給予嚴格的時間約束,從而滿足系統(tǒng)整體上對時間和網(wǎng)絡資源的需求[3-4]。
傳統(tǒng)網(wǎng)絡技術(shù)也提供了相應的網(wǎng)絡沖突管理機制,如以太網(wǎng)使用載波監(jiān)聽多路訪問/沖突檢測機制(carrier sense multiple access with collision detection,CSMA/CD)協(xié)議來解決網(wǎng)絡沖突問題。在追求高速度、高精度、高智能化的運動控制系統(tǒng)中,這些機制已不能滿足系統(tǒng)對網(wǎng)絡平臺在確定性和實時性等方面的要求。本文針對運動控制系統(tǒng)的特點,提出了一種解決運動控制網(wǎng)絡調(diào)度問題的方法。
目前,主流運動控制網(wǎng)絡模型大多以以太網(wǎng)技術(shù)為基礎,如 EtherCAT、Sercos-III、Powerlink 等,并建立在開放系統(tǒng)互連(open system interconnection,OSI)七層網(wǎng)絡模型的基礎上。
運動控制網(wǎng)絡系統(tǒng)有著自己的特點:一是網(wǎng)絡規(guī)模較小,大多在32點到64點之間;二是工作周期短,一般在毫秒和微秒的量級;三是對時鐘同步精度要求高,較高的同步精度要求應該在100 ns以下;四是在對通信實時性水平要求更高的場合,網(wǎng)絡通信協(xié)議的處理需要通過硬件(如ASIC)解決方案來實現(xiàn)[5-6]。
大部分運動控制網(wǎng)絡技術(shù)采用了OSI七層網(wǎng)絡中的三層結(jié)構(gòu),即物理層、數(shù)據(jù)鏈路層和應用層,OSI模型中其他層的部分功能被分配到應用層和數(shù)據(jù)鏈路層中實現(xiàn),如圖1所示。
圖1 基本運動控制網(wǎng)絡協(xié)議模型Fig.1 Basic motion control network protocol model
運動控制應用在速度、通信速率、控制精度等方面的需求對運動控制網(wǎng)絡也提出了新的挑戰(zhàn),傳統(tǒng)的以太網(wǎng)技術(shù)已不能滿足運動控制應用的需求。EtherCAT和SynqNet網(wǎng)絡技術(shù)擴展了IEEE 802.3規(guī)范定義的幀格式,開發(fā)了特殊的以太網(wǎng)通信控制器,大幅度提高了網(wǎng)絡帶寬利用效率。為了進一步提高運動控制網(wǎng)絡的性能,一些公司還推出了專用以太網(wǎng)通信控制芯片,如德國BECKHOFF公司推出了專用于EtherCAT的ET1200和ET1100以太網(wǎng)控制芯片,而Profinet總線中的同步實時通信方式也必須在專用以太網(wǎng)控制芯片上才能實現(xiàn)。以上所述運動控制網(wǎng)絡技術(shù)雖然都基于以太網(wǎng)技術(shù),但并不能實現(xiàn)互連互通,且個別技術(shù)必須借助于特殊的硬件解決方案才能發(fā)揮作用。
從網(wǎng)絡拓撲結(jié)構(gòu)來看,運動控制系統(tǒng)常采用星型拓撲、總線拓撲和環(huán)形拓撲等。其中,星型拓撲因其控制簡單、總線拓撲因所需要的電纜數(shù)量少而得到廣泛應用,如EtherCAT就常用環(huán)形總線拓撲(即菊花鏈結(jié)構(gòu)),如圖2所示。在環(huán)形總線拓撲結(jié)構(gòu)中,當總線中間出現(xiàn)一點故障時,系統(tǒng)運行不會受到影響。
圖2 環(huán)形總線拓撲結(jié)構(gòu)示意圖Fig.2 Schematic drawing of the ring bus topological structure
另外,從安全的角度考慮,運動控制網(wǎng)絡應該與外部網(wǎng)絡相隔離。外部網(wǎng)絡訪問運動控制網(wǎng)絡內(nèi)節(jié)點時必須通過“網(wǎng)關(guān)設備”來進行,網(wǎng)關(guān)設備一般為工程師站或主控制器。
分析運動控制網(wǎng)絡調(diào)度模型需要從兩個層面進行,即面向通信介質(zhì)的調(diào)度和面向應用的調(diào)度。在面向通信介質(zhì)的調(diào)度層面上,不同類型數(shù)據(jù)的發(fā)送控制是由通信協(xié)議來控制的(不包括物理層的沖突避免機制,如CSMA/CD)。面向應用的調(diào)度是從工程師的視角看待調(diào)度問題。在這個網(wǎng)絡調(diào)度層面上,數(shù)據(jù)的發(fā)送控制是由應用程序來控制的。調(diào)度算法主要關(guān)心控制任務的工作周期、系統(tǒng)范圍內(nèi)輸入/輸出數(shù)據(jù)配置、設備參數(shù)的訪問操作、系統(tǒng)可靠性設計等[7-8]。本文主要研究面向通信介質(zhì)的網(wǎng)絡調(diào)度模型。
通信協(xié)議框架結(jié)構(gòu)是指通信協(xié)議部分的結(jié)構(gòu)定義,是網(wǎng)絡調(diào)度實現(xiàn)的基礎。為了支持面向通信介質(zhì)的調(diào)度模型,本文在應用層和數(shù)據(jù)鏈路層之間加入了網(wǎng)絡調(diào)度管理子層。網(wǎng)絡調(diào)度管理子層的出現(xiàn)使得應用層與數(shù)據(jù)鏈路層之間的數(shù)據(jù)交換體現(xiàn)出“柔性關(guān)聯(lián)”的關(guān)系,即應用層與數(shù)據(jù)鏈路層之間的數(shù)據(jù)交換過程都經(jīng)由“網(wǎng)絡調(diào)度管理子層”進行緩沖和管理。運動控制網(wǎng)絡調(diào)度模型如圖3所示。
圖3 運動控制網(wǎng)絡調(diào)度模型Fig.3 Motion control network scheduling model
網(wǎng)絡調(diào)度管理子層負責網(wǎng)絡時鐘同步操作,且根據(jù)網(wǎng)絡調(diào)度算法來管理要發(fā)送到網(wǎng)絡上的數(shù)據(jù)。它同時維護一個實時數(shù)據(jù)緩沖區(qū)組、一個非實時數(shù)據(jù)隊列和一個重發(fā)數(shù)據(jù)隊列,實時數(shù)據(jù)緩沖區(qū)組用于保存待發(fā)的實時數(shù)據(jù),非實時數(shù)據(jù)隊列用于保存待發(fā)送的非實時數(shù)據(jù)。需要注意的是,實時數(shù)據(jù)采用緩沖區(qū)保存方式,新的數(shù)據(jù)可以覆蓋舊的數(shù)據(jù);非實時數(shù)據(jù)采用先進先出(first input first output,F(xiàn)IFO)方式保存,當隊列已滿時,可以根據(jù)事先制定的原則清理最早進隊的數(shù)據(jù)。重發(fā)數(shù)據(jù)隊列用于保存待重發(fā)的非實時數(shù)據(jù),重發(fā)數(shù)據(jù)同樣采用FIFO的方式保存。網(wǎng)絡管理子層結(jié)構(gòu)如圖4所示。
圖4 網(wǎng)絡管理子層結(jié)構(gòu)Fig.4 Structure of the network management sub-layer
運動控制網(wǎng)絡調(diào)度算法主要是在用戶層設計并實現(xiàn)的,但其結(jié)果會下載到通信協(xié)議中,通信協(xié)議中的“網(wǎng)絡調(diào)度管理子層”會根據(jù)其結(jié)果來控制網(wǎng)絡數(shù)據(jù)的發(fā)送。結(jié)合運動控制系統(tǒng)的特點,這里主要考慮以下幾個問題:時鐘同步方法、實時數(shù)據(jù)和非實時數(shù)據(jù)的傳輸管理、數(shù)據(jù)重發(fā)管理等,其中加入數(shù)據(jù)重發(fā)管理功能的目的是進一步提高運動控制網(wǎng)絡數(shù)據(jù)傳輸?shù)拇_定性。
時鐘同步方法在此采用IEEE 1588精密時鐘同步協(xié)議,時鐘同步報文作為非實時數(shù)據(jù)在非實時窗口中傳輸。為了減少時鐘同步報文對網(wǎng)絡傳輸負荷的影響,網(wǎng)絡設備不會在每個工作周期都進行時鐘同步操作,每個設備會根據(jù)時鐘偏差的情況自行確定時鐘同步操作的時機。設備發(fā)送到網(wǎng)絡上的數(shù)據(jù)分為實時數(shù)據(jù)和非實時數(shù)據(jù),原則上與控制應用相關(guān)的數(shù)據(jù)屬于實時數(shù)據(jù),其他諸如設備配置、時鐘同步報文等都屬于非實時數(shù)據(jù)。
網(wǎng)絡調(diào)度算法主要負責管理實時數(shù)據(jù)、非實時數(shù)據(jù)和重發(fā)數(shù)據(jù)的發(fā)送。本文中的網(wǎng)絡管理算法引入了“時間窗口”與優(yōu)先級相結(jié)合的調(diào)度模式。每個工作周期內(nèi)除了“實時窗口”和“非實時窗口”外,還引入了“重發(fā)窗口”。在“實時窗口”中,為每個待發(fā)送數(shù)據(jù)分配了相應的時間段即SLOT,其取值保證了對應的實時數(shù)據(jù)的可靠傳輸且不會發(fā)生網(wǎng)絡沖突?!胺菍崟r窗口”用于發(fā)送非實時數(shù)據(jù),包括參數(shù)訪問服務數(shù)據(jù)、時鐘同步報文等?!爸匕l(fā)窗口”主要解決通信過程中由于某種原因引起的通信失敗問題,包括丟包、幀錯誤等,這也是保證運動控制網(wǎng)絡通信可靠性而采用的一個重要舉措。在沒有數(shù)據(jù)需要重發(fā)時,“重發(fā)窗口”可用于發(fā)送非實時數(shù)據(jù)。在“非實時窗口”和“重發(fā)窗口”中,待發(fā)送數(shù)據(jù)根據(jù)各自優(yōu)先級的高低進行排隊;重發(fā)數(shù)據(jù)的優(yōu)先級隨重發(fā)次數(shù)的增加而逐次遞增,當重發(fā)次數(shù)超過重發(fā)上限時則不再重發(fā)。網(wǎng)絡調(diào)度管理子層模型如圖5所示。
圖5 網(wǎng)絡調(diào)度管理子層模型Fig.5 Model of network scheduling management sub-layer
網(wǎng)絡通信的確定性和實時性是運動控制網(wǎng)絡系統(tǒng)的研究熱點,而完善的網(wǎng)絡調(diào)度模型則是保證運動控制網(wǎng)絡通信確定性和實時性的基礎。
本文主要研究了面向通信介質(zhì)的網(wǎng)絡調(diào)度模型,結(jié)合運動控制網(wǎng)絡的特點,在通信協(xié)議中加入了網(wǎng)絡調(diào)度管理子層。網(wǎng)絡調(diào)度管理子層采用時間窗口形式,引入了“重發(fā)窗口”,并對不同特點的數(shù)據(jù)進行分類管理和發(fā)送,考慮了數(shù)據(jù)傳輸?shù)膶崟r性、確定性和網(wǎng)絡帶寬利用率之間的平衡。實際應用表明,該網(wǎng)絡調(diào)度方法運用效果良好,達到了預期目標。今后研究工作將進一步完善該調(diào)度模型,提高其實用性。
[1] Eker J ,Hagander P,Arzén K E.A feedback scheduler for real time control tasks[J].Control Engineering Practice,2000,8(12):1369 -1378.
[2] Chen Jiming,Wang Zhi,Sun Youxian.A basic study on algorithm of realtime schedule table for fieldbus[C]//Intelligent Control and Automation,Proceedings of the 4th World Congress on,2002:1760 -1763.
[3] Yin Jinyong,Guo Guochang.An algorithm for scheduling aperiodic real-time tasks on a static schedule[C]//ICIC’09,Second International Conference on,2009:70 -74.
[4] 陳丹丹,夏立,王海峰.網(wǎng)絡控制系統(tǒng)中網(wǎng)絡調(diào)度算法的研究現(xiàn)狀與展望[J].化工自動化及儀表,2008,35(2):1 -6.
[5] 王艷,陳慶偉,樊衛(wèi)華,等.網(wǎng)絡控制系統(tǒng)控制與調(diào)度協(xié)同設計的研究進展[J].兵工學報,2007,28(1):101 -106.
[6] Feng Xia.Integrated feedback scheduling of networked control systems[J].Journal of Dynamics of Continuous Discrete and Impulsive,System Series B,2006.
[7] Marti P,F(xiàn)ohler G,Ramamritham K,et al.Improving quality-ofcontrol using flexible timing constraints:metric and scheduling issues[J].Real-Time Systems Symposium,2002.
[8] Gerard L,Nicolas R.Real-time communications over broadcast networks:the CSMA-DCR and the DODCSMA-CD protocols[J].INRIA Report RR-1863.