周 侗 胡靜濤 楊志家
(中國科學院沈陽自動化研究所1,遼寧 沈陽 110016;中國科學院研究生院2,北京 100039)
運動控制系統中的控制任務分散在不同的網絡節點中,控制任務的實現需要節點間交互大量的信息。控制任務對信息傳遞的確定性和實時性提出了很高的要求[1-2]。同時,控制任務的執行與網絡通信也是相互影響的,較高的信息采樣頻率會提高系統整體控制性能,但也會增加網絡調度的負擔,甚至會反過來影響控制任務的運行。
運動控制網絡調度方法主要研究如何更好地協調控制任務的需求和網絡調度性能的關系,在避免網絡沖突的基礎上,滿足控制任務在通信確定性和實時性方面的需求。其研究內容主要包括兩個方面:①信息傳輸的確定性,即研究如何有效控制節點對通信通道的訪問,以避免網絡沖突現象的發生;②信息傳輸的實時性,即研究如何給網絡中的某個節點中的某個任務分配相應的時間和網絡資源,并對相關資源的使用給予嚴格的時間約束,從而滿足系統整體上對時間和網絡資源的需求[3-4]。
傳統網絡技術也提供了相應的網絡沖突管理機制,如以太網使用載波監聽多路訪問/沖突檢測機制(carrier sense multiple access with collision detection,CSMA/CD)協議來解決網絡沖突問題。在追求高速度、高精度、高智能化的運動控制系統中,這些機制已不能滿足系統對網絡平臺在確定性和實時性等方面的要求。本文針對運動控制系統的特點,提出了一種解決運動控制網絡調度問題的方法。
目前,主流運動控制網絡模型大多以以太網技術為基礎,如 EtherCAT、Sercos-III、Powerlink 等,并建立在開放系統互連(open system interconnection,OSI)七層網絡模型的基礎上。
運動控制網絡系統有著自己的特點:一是網絡規模較小,大多在32點到64點之間;二是工作周期短,一般在毫秒和微秒的量級;三是對時鐘同步精度要求高,較高的同步精度要求應該在100 ns以下;四是在對通信實時性水平要求更高的場合,網絡通信協議的處理需要通過硬件(如ASIC)解決方案來實現[5-6]。
大部分運動控制網絡技術采用了OSI七層網絡中的三層結構,即物理層、數據鏈路層和應用層,OSI模型中其他層的部分功能被分配到應用層和數據鏈路層中實現,如圖1所示。

圖1 基本運動控制網絡協議模型Fig.1 Basic motion control network protocol model
運動控制應用在速度、通信速率、控制精度等方面的需求對運動控制網絡也提出了新的挑戰,傳統的以太網技術已不能滿足運動控制應用的需求。EtherCAT和SynqNet網絡技術擴展了IEEE 802.3規范定義的幀格式,開發了特殊的以太網通信控制器,大幅度提高了網絡帶寬利用效率。為了進一步提高運動控制網絡的性能,一些公司還推出了專用以太網通信控制芯片,如德國BECKHOFF公司推出了專用于EtherCAT的ET1200和ET1100以太網控制芯片,而Profinet總線中的同步實時通信方式也必須在專用以太網控制芯片上才能實現。以上所述運動控制網絡技術雖然都基于以太網技術,但并不能實現互連互通,且個別技術必須借助于特殊的硬件解決方案才能發揮作用。
從網絡拓撲結構來看,運動控制系統常采用星型拓撲、總線拓撲和環形拓撲等。其中,星型拓撲因其控制簡單、總線拓撲因所需要的電纜數量少而得到廣泛應用,如EtherCAT就常用環形總線拓撲(即菊花鏈結構),如圖2所示。在環形總線拓撲結構中,當總線中間出現一點故障時,系統運行不會受到影響。

圖2 環形總線拓撲結構示意圖Fig.2 Schematic drawing of the ring bus topological structure
另外,從安全的角度考慮,運動控制網絡應該與外部網絡相隔離。外部網絡訪問運動控制網絡內節點時必須通過“網關設備”來進行,網關設備一般為工程師站或主控制器。
分析運動控制網絡調度模型需要從兩個層面進行,即面向通信介質的調度和面向應用的調度。在面向通信介質的調度層面上,不同類型數據的發送控制是由通信協議來控制的(不包括物理層的沖突避免機制,如CSMA/CD)。面向應用的調度是從工程師的視角看待調度問題。在這個網絡調度層面上,數據的發送控制是由應用程序來控制的。調度算法主要關心控制任務的工作周期、系統范圍內輸入/輸出數據配置、設備參數的訪問操作、系統可靠性設計等[7-8]。本文主要研究面向通信介質的網絡調度模型。
通信協議框架結構是指通信協議部分的結構定義,是網絡調度實現的基礎。為了支持面向通信介質的調度模型,本文在應用層和數據鏈路層之間加入了網絡調度管理子層。網絡調度管理子層的出現使得應用層與數據鏈路層之間的數據交換體現出“柔性關聯”的關系,即應用層與數據鏈路層之間的數據交換過程都經由“網絡調度管理子層”進行緩沖和管理。運動控制網絡調度模型如圖3所示。

圖3 運動控制網絡調度模型Fig.3 Motion control network scheduling model
網絡調度管理子層負責網絡時鐘同步操作,且根據網絡調度算法來管理要發送到網絡上的數據。它同時維護一個實時數據緩沖區組、一個非實時數據隊列和一個重發數據隊列,實時數據緩沖區組用于保存待發的實時數據,非實時數據隊列用于保存待發送的非實時數據。需要注意的是,實時數據采用緩沖區保存方式,新的數據可以覆蓋舊的數據;非實時數據采用先進先出(first input first output,FIFO)方式保存,當隊列已滿時,可以根據事先制定的原則清理最早進隊的數據。重發數據隊列用于保存待重發的非實時數據,重發數據同樣采用FIFO的方式保存。網絡管理子層結構如圖4所示。

圖4 網絡管理子層結構Fig.4 Structure of the network management sub-layer
運動控制網絡調度算法主要是在用戶層設計并實現的,但其結果會下載到通信協議中,通信協議中的“網絡調度管理子層”會根據其結果來控制網絡數據的發送。結合運動控制系統的特點,這里主要考慮以下幾個問題:時鐘同步方法、實時數據和非實時數據的傳輸管理、數據重發管理等,其中加入數據重發管理功能的目的是進一步提高運動控制網絡數據傳輸的確定性。
時鐘同步方法在此采用IEEE 1588精密時鐘同步協議,時鐘同步報文作為非實時數據在非實時窗口中傳輸。為了減少時鐘同步報文對網絡傳輸負荷的影響,網絡設備不會在每個工作周期都進行時鐘同步操作,每個設備會根據時鐘偏差的情況自行確定時鐘同步操作的時機。設備發送到網絡上的數據分為實時數據和非實時數據,原則上與控制應用相關的數據屬于實時數據,其他諸如設備配置、時鐘同步報文等都屬于非實時數據。
網絡調度算法主要負責管理實時數據、非實時數據和重發數據的發送。本文中的網絡管理算法引入了“時間窗口”與優先級相結合的調度模式。每個工作周期內除了“實時窗口”和“非實時窗口”外,還引入了“重發窗口”。在“實時窗口”中,為每個待發送數據分配了相應的時間段即SLOT,其取值保證了對應的實時數據的可靠傳輸且不會發生網絡沖突。“非實時窗口”用于發送非實時數據,包括參數訪問服務數據、時鐘同步報文等。“重發窗口”主要解決通信過程中由于某種原因引起的通信失敗問題,包括丟包、幀錯誤等,這也是保證運動控制網絡通信可靠性而采用的一個重要舉措。在沒有數據需要重發時,“重發窗口”可用于發送非實時數據。在“非實時窗口”和“重發窗口”中,待發送數據根據各自優先級的高低進行排隊;重發數據的優先級隨重發次數的增加而逐次遞增,當重發次數超過重發上限時則不再重發。網絡調度管理子層模型如圖5所示。

圖5 網絡調度管理子層模型Fig.5 Model of network scheduling management sub-layer
網絡通信的確定性和實時性是運動控制網絡系統的研究熱點,而完善的網絡調度模型則是保證運動控制網絡通信確定性和實時性的基礎。
本文主要研究了面向通信介質的網絡調度模型,結合運動控制網絡的特點,在通信協議中加入了網絡調度管理子層。網絡調度管理子層采用時間窗口形式,引入了“重發窗口”,并對不同特點的數據進行分類管理和發送,考慮了數據傳輸的實時性、確定性和網絡帶寬利用率之間的平衡。實際應用表明,該網絡調度方法運用效果良好,達到了預期目標。今后研究工作將進一步完善該調度模型,提高其實用性。
[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] 陳丹丹,夏立,王海峰.網絡控制系統中網絡調度算法的研究現狀與展望[J].化工自動化及儀表,2008,35(2):1 -6.
[5] 王艷,陳慶偉,樊衛華,等.網絡控制系統控制與調度協同設計的研究進展[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,Fohler 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.