楊麗曼,李運華
(北京航空航天大學 自動化科學與電氣工程學院,北京100191)
在網絡環境下,通過現場總線、工業以太網或無線網絡將分散的、智能化的現場檢測、控制及執行設備作為網絡節點連接,實現資源共享和實時協調控制,將這樣一類機電系統稱為網絡控制系統 NCS(Networked Control Systems)[1-2]。 一個多任務多回路的復雜NCS,其網絡調度問題是將有限的網絡帶寬按照某種靜態的或動態的規則在各傳輸任務之間合理分配,滿足網絡的可調度性,即所有傳輸任務能夠在任務截止期前到達目標節點[3],并期望獲得良好的網絡服務性能QoS(Quality of Service),如合理的帶寬利用率、較低的包丟失率和時延等,主要工作包含采樣周期的優化和帶寬調度策略設計。
由于控制與網絡傳輸的交叉影響,在系統設計時需綜合考慮網絡調度和控制算法,因此,調度與控制的協同設計越來越受到關注。從調度的角度來看,代表性工作有,M S Branicky提出的控制器和網絡調度算法同步設計(Co-design)方案,以滿足系統穩定性的采樣周期上界作為約束條件,基于RM算法尋求最優的采樣周期序列[4]。Walsh等人對于特定結構的NCS設計的輔助調度策略,先設計反饋控制器使系統漸進穩定,再利用Lyapunov穩定性理論得到最大允許傳輸間隔(MATI),然后提出一種動態調度方法 MEF-TOD滿足MATI的要求,保證系統全局指數穩定[3]。與此類似,H.S.Park設計的基于最大允許時延(MADB)帶寬分配策略[5]。事實上這幾種方法都是假設系統模型精確可知,先行設計控制器,由穩定性理論獲得系統對時延的容忍度,再以網絡可調度為目標進行網絡規劃。延續這一協同設計思想,L.Zhang對MIMO系統研究了周期通信序列調度與控制器設計問題[6],YTipsuwan與M.Y.Chow提出基于QoS的模糊增益調度算法,調節PI控制器增益[7],王艷等人設計的一種動態調度策略,通過估計帶寬占有率實時調整各回路采樣周期以克服網絡約束,但相應的控制器設計很復雜[8]。以上這些方法兼顧了系統的穩定性和網絡可調度性,但依賴于系統模型,且約束較多,設計過程復雜,因此雖然在實驗室環境下有諸多成果,但在工程實際中難以實現。
這里提出一種易于工程實現的網絡調度策略,在分析網絡傳輸任務和被控對象的基礎上,通過估計網絡負載和頻譜能量分析法粗擬各控制回路的采樣周期范圍,采用非搶占RM算法進行帶寬分配,確定各任務周期和優先級配置,最后以雙缸同步控制的NCS為對象進行仿真驗證。該方法綜合考慮被控對象、控制要求和通信約束,但不依賴于模型,其簡單性和靈活性能夠適應工程實際要求。
網絡傳輸任務根據數據性質的不同,可分為周期任務、猝發任務和非實時任務。需要發送實時性周期數據的稱為周期任務,例如開環或閉環控制回路中將按照采樣周期產生采樣信號和控制信號;猝發任務是由事件觸發的,產生的猝發數據具有一定的時效性,例如安全報警由狀態超限這一事件觸發。此外,在系統配置、維護和數據整理階段,將產生大字段的非實時性數據,對控制性能的影響不大,因此在網絡規劃和控制器設計時可不作考慮。
這里采用網絡數據流圖描述和分析網絡傳輸任務。網絡數據流采用帶有任務標識的有向圖進行表達,其中包含網絡節點、特征數據流和任務標識3部分。這里假定某NCS系統具有4個周期任務和1個猝發任務,其網絡數據流如圖1所示。

圖1 網絡數據流
圖1中, S1、S2、S3、C和A表示網絡上的節點。任務標識:Ui(Ti,Cui,Dui)∈(周期任務),Vi(Ei,Cvi,Dvi)∈(猝發任務)。有向線段表示特征數據流,每個任務都帶有三元任務屬性標識。周期任務U的3個屬性標識T、Cu、Du分別代表傳輸周期、發送數據量和任務截止期,猝發任務V的3個屬性標識E、Cv、Dv分別代表任務觸發條件、發送數據量和任務截止期。
通常每個任務要發送的數據量是一定的,以字節為單位。猝發任務的觸發條件和截止期屬性根據控制要求直接確定。周期任務的傳輸周期和截止期一般情況下是一致的,除非網絡時延很大或存在諸多不確定因素,比如遙控系統,在負載高峰期時延通常是幾倍的采樣周期。而傳輸周期本身與控制任務的采樣周期相關,受到被控對象特性、控制目標和網絡承載能力等多方面因素的制約。
有研究表明,網絡控制系統中,采樣周期和控制性能的關系不同于一般的數采樣系統,在控制性能可接受的范圍內,采樣周期有上界和下界,上界由系統頻率和具體的控制要求決定,下界根據網絡容量即網絡負載的飽和值進行估計[2]。根據這樣一個基本思路,引入假頻能力分析法給出采樣周期的范圍確定方法。
對于一個多任務多回路的NCS,系統正常工作的必要條件是控制網絡的平均工作點負載低于飽和值,描述為帶有周期任務集={U1,U2,…UM}和猝發任 務集={V1,V2,…VN}的NCS應滿足以下條件:

式中,Ti是任務Ui的傳輸周期,Qi是該任務一次發送的數據量大小,根據協議規定的數據包長度和任務數據量Cui計算得到,以bit為單位,dbit是發送1比特位所需時間,由帶寬決定,s代表在Ts時間段內產生猝發數據量的上界,根據猝發任務屬性中的觸發條件Ei和數據量Cvi來估計。
周期傳輸任務根據控制目的的不同進一步區分,由開環或閉環控制衍生的從傳感器到控制器和從控制器到執行器的數據傳輸任務稱為回路任務,任務周期和發送數據量標記為Tbi和Qbi。除此以外的周期任務稱為非回路任務,例如對溫度、壓力、轉速等工作狀態的監測和顯示,采樣周期根據功能要求和實際情況選取,任務周期和發送數據量標記為Tki和Qki。回路任務的采樣周期首先要滿足普通數采系統的設計要求,這里從頻譜能量分析的角度,給出系統的假頻能量系數r、時間常數T0和采樣周期T之間的關系:

1)準確性優先選取原則 0.02≤r≤0.05,要求4.04≤T0/T≤10.13。此時,假頻能量占頻譜總能量的2%~5%,因假頻現象產生的頻譜能量相對誤差一般不超過系統的允許誤差。
2)快速性優先選取原則 0.05≤r≤0.25,要求0.07≤T0/T≤4.04。此時,假頻能量占頻譜總能量的5%~25%,因假頻現象產生的頻譜能量相對誤差不大于系統的1/4超調誤差,由于系統的快速性主要依賴于低頻特性,通常在低頻段允許1/4超調誤差。另外,為了兼顧準確性和快速性,可選取假頻系數0.04≤r≤0.1。
式(2)是由一階系統的分析結論推廣得到的,對于二階和高階系統來說,需要先求出系統的近似一階時間常數T0。根據控制要求,選擇合適的r(按上限取值),得到回路任務的采樣周期上界為:

假設實際的采樣周期和上界之間存在比例系數 αi,有則式(1)重新寫為:

式中,m、n分別是回路和非回路任務數,m+n=M。λ為非回路周期的收放系數,初始為1。由于控制回路以外的數據主要是傳達一些輔助信息,重要性低于回路數據,必要時可增大λ以減小網絡負載。
為了確定回路周期的范圍,可先假設αi=α,取λ=1,則由式(3)推出:

此外對于通過廣域網或Internet構成的控制網絡,還要考慮干擾負載,通常根據經驗數據或時段峰值測量加以估計,從式(3)右端減去干擾負載可能占用帶寬的比例。
適當選擇α后,并不能確定各回路任務的周期,這是因為實際上αi≠α,α僅給出了一個平均值,用其粗擬采樣周期,然后通過設計適當的調度算法進行檢驗、調整和優化。
網絡調度和計算機實時系統關于CPU時間的調度并很相似,因此有許多研究成果可以借鑒。例如,靜態的速率單調RM(Rate Monotonic)調度算法、時限單調 DM(Deadline Monotonic)調度算法,動態的最早任務期限優先EDF(Earliest Deadline First)、最小緊急度優先 LLF(Least Laxity First)等[9]。其中RM被證明是最優的靜態調度算法,可應用到基于優先級的爭用式網絡調度中。由于數據在網絡中的傳輸過程不能被任意中斷,因此傳輸任務是非搶占式的。定理1闡述了非搶占式RM算法[10]。
定理 P個相互獨立的、非搶占式的周期任務,周期越小優先級越高,以優先級降序為標記(i=1的優先級最高,i=P的優先級最低),任務可調度的充分條件是,所有任務(i=1,...,P)都滿足

式中,Ti表示任務i的周期,di表示任務i的資源占用時間,表示任務i的最大堵塞時間,即被低優先級任務占有的最壞情況
1)以猝發任務中的最小截止期為虛擬任務周期(預留發送時間),標記為
2)選取最大的猝發數據長度Qs,計算數據傳輸時間 d1=Qsdbit,Qs由估計得到;
3)確定非回路任務的采樣周期 λTkj(j=1,…,n);
5)將所有的周期任務按照周期大小以升序排列,并以此為優先級排序標準,對于閉環回路中的傳輸任務,設定從傳感器到控制器的數據優先于從控制器到執行器的數據,重新確定任務周期標記 Ti(i=2,..,3M+1),計算相應的傳輸時間 di=Qidbit。
6)數據傳輸時間di就是任務對網絡資源的占有時間,采用定理1檢驗上述NCS的網絡可調度性,將所有傳輸任務的Ti和di帶入式(5),如滿足則證明網絡可調度。如果不滿足條件,回到4),重新選取α,修正回路任務周期。
上述帶寬分配方法中,將猝發任務虛擬為優先級最高的周期任務,且按照最壞情況考慮,是采用了帶寬預留的概念,理論上收縮可調度性條件,但也相應減輕負載壓力,目的是保證重要數據的截止期。控制回路內部,控制器總是基于最新的傳感器數據計算控制量的,因此相同的采樣周期下,從傳感器到控制器的傳輸任務優于從控制器到執行器的任務。
以工程機械中常見的頂推系統雙缸同步控制為例,應用本文提出的NCS網絡規劃方法,進行仿真驗證。以兩路閥控缸作為執行元件的頂推系統,通過位移反饋和壓力監測實現雙缸同步動作的閉環反饋控制,以CAN協議通信構成NCS系統,網絡上有6個節點,系統網絡拓撲如圖2所示。

圖2 雙缸頂推系統NCS拓撲結構圖
采用主從控制方式,控制器的輸出分別驅動各自的電液伺服閥,使2#液壓缸位移輸出跟蹤1#缸輸出達到同步運動的效果。此外還需檢測兩缸的出口壓力值,當壓力差超過某一范圍時,應給出報警信號并啟動保護程序。對照系統拓撲結構圖可看出,兩路閉環控制中的位移反饋和壓力監測以及控制器輸出將產生周期性的網絡傳輸任務,壓力差超限保護動將產生猝發任務。表1給出系統的主要任務。

?
表1中的雙缸同步閉環控制任務的被控對象模型可進一步描述為:

式中,Y1,Y2為位移輸出;U1,U2為控制量;F1,F2為負載力。
由任務列表畫出傳輸任務的網絡數據流,如圖3所示,三元任務屬性中的采樣周期和截至期通過網絡規劃確定。

圖3 雙缸頂推系統的網絡數據流圖
設定網絡帶寬為110 kbit/s,首先根據網絡數據流圖給出系統的傳輸任務解析表如表2所示。可以看到,所有任務的有效發送數據量已確定,非回路周期任務U2和U4的采樣周期擬設為 20 ms,周期任務 U1、U5和 U3、U6的周期待定,但有,T1=T5,T3=T6,截止期和任務周期一致。假設每10 ms猝發任務不超過2次,猝發數據量不超過2個有效字節。

?
根據2個回路的被控對象模型,得到近似時間常數T0分別為30 ms和31.4 ms,按照兼顧確定性和快速性原則,選取假頻系數r=0.1,計算回路任務的周期上界15.6 ms,為了簡化計算統一取為Tbsup=15 ms。將已知數據帶入式(4),取 λ=1,得到=0.32,應用上述帶寬分配方法,最終得到 a=0.7,U1、U3、U5、U6的周期均為 10 ms, 優先級按照 V1、U1、U3、U5、U6、U2、U4的順序依次降低,經驗證滿足網絡的可調度性。采用Truetime軟件對該系統進行仿真,按照上述參數設置網絡及調度策略,并在控制器節點中以1 ms為周期,20%的概率隨機產生猝發數據,模擬最壞情況下的猝發任務。觀測在2.4 s的運行時間內各周期任務的負載變化,0.6~0.8 s的結果如圖4所示。

圖4 各節點產生的網絡負載
統計測量結果,傳輸任務失去截止期的比例為0.32%(和設定的包丟失率一致),小于閾值1%,網絡可調度并且時延和時延抖動不大,為控制器的設計提供了良好的網絡環境。
按照兼顧控制性能和網絡傳輸的NCS綜合設計思想,本文提出一種新的網絡調度方法,并結合實例給出具體的實現方案。通過估計網絡流量,并引入假頻能量分析來選擇控制回路的采樣周期范圍。然后基于非搶占式的RM靜態調度算法提出一種帶寬的分配策略,確定各網絡傳輸任務的周期和優先級配置,從而滿足網絡的可調度性。該方法中,網絡調度不依賴于系統模型,易于工程實現。同時,以帶寬預留的思想全面考慮NCS中的周期任務和猝發任務,并成功解決RM算法應用到網絡調度時遇到的困難。最后,以工程機械中常見的頂推系統雙缸同步控制為例,對所提出的調度方法進行仿真研究,驗證該方法的有效性。
[1] Walsh G C,Ye H.Scheduling of networked control systems[J].IEEE Contr.Syst.Mag., 2001,21(1):57-65.
[2] Lian F L,Moyne J R,Tibury D M.Network design consideration for distributed control systems[J].IEEE Trans.Contr.Syst.Technol,2002,10(2):297-307.
[3] Hespanha J,Naghshtabrizi P,Xu Y.A survey of recent results in networked control systems[J].Proceedings of the IEEE,2007, 95(1):138-162.
[4] Branicky M S,Phillips S R,Wei Zhang.Scheduling and feedback co-design for networked control systems[C]//Proceedings of the 41st IEEE Conference on Decision and Control 2002,12:1211-1217.
[5] Park H S,Kim Y H,Kim D S,et al.A scheduling method for network-based control systems [J].IEEE Trans.Contr.Syst.Technol., May 2002, 10(3):318-330.
[6] Zhang Lei, Hristu-Varsakelis,Dimitrios.Communication and control co-design for networked control systems[J].Automatica,2006,42 (6):953-958.
[7] Tipsuwan Y,Chow M Y.On the gain scheduling for networked PI controller over IP network[J].IEEE Trans.Mechatronics,2004,9(3):791-498.
[8] 王 艷,陳慶偉,吳曉蓓.網絡控制系統中動態調度策略與控制器的綜合設計[J].控制與決策,2007,22(6):680-684.
[9] Burchard A,Liebeherr J.New strategies for assigning real-time tasks to multiprocessor Systems[J].IEEE Trans.On Computers,1995,44(12):1429-1442.
[10] Sha L,Rajkumar R,Lehoczky J.Priority inheritance protocols:an approach to real-time synchronization[J].IEEE Trans.on Computers,1990,39(9):1175-1185.