文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2015.09.030
中文引用格式: 汪繁榮,萬英杰. 網絡控制系統時延解決方案的研究[J].電子技術應用,2015,41(9):110-113,117.
英文引用格式: Wang Fanrong,Wan Yingjie. Research on solution of time delay in networked control system[J].Application of Electronic Technique,2015,41(9):110-113,117.
0 引言
隨著計算機網絡通信和智能傳感技術的飛速發展,自動化技術發生了革命性的變化。計算機控制系統從集中式控制過渡到集散控制以及現場總線控制,直到今天的基于網絡的分布式控制。這種分布式工作方式徹底地改變了傳統控制系統中反饋的應用,網絡控制系統(NCS)應運而生。進入二十一世紀,工業控制技術與計算機通信網絡技術的進一步結合催生了現場總線系統[1]。這使得封閉的專用協議變成開放的標準協議,因設備節點中包含了數字處理器,而具有較強的數字計算和通信能力,可實現真正意義上的分布式控制。
與傳統的點對點控制系統相比,網絡控制系統具有連線少、結構靈活、通信協議開放等諸多優點。但通信網絡介入使得網絡控制系統的分析和設計變得更為復雜[2],不可靠的網絡傳輸方式導致許多的不確定性,主要問題有:網絡誘導延時、數據丟包、單包傳輸與多包傳輸、數據包時序錯亂、噪聲干擾等。
針對網絡控制系統中數據傳輸的多周期和時延的相關問題,本文運用預測控制算法,采用多步測試、滾動優化和反饋校正等控制策略,通過優化控制序列來改善系統在擁堵環境下的控制效果。最后利用MATLAB對網絡預測控制進行仿真驗證,結果表明此預測控制算法能夠極大改善網絡時延下的控制輸出效果。
1 網絡控制回路的設計
1.1 網絡預測控制結構
在網絡控制系統中,系統結構的主要特征是傳感器、控制器和執行器非點對點的直接相連,而是通過串行數字通信接口接入公網(或者無線網)進行數據和控制信息的交換[3]。所有設備共享一個傳輸通道,實現設備間的數據交換、資源共享和相互協作[4]。典型的網絡控制系統結構如圖1所示。
在NCS中,系統的節點驅動方式有兩類:時鐘驅動和事件驅動。時鐘驅動指網絡節點在預定的時間啟動工作,時鐘驅動可使網絡節點周期性的工作;而事件驅動則使網絡節點在特定的事件發生時啟動工作[5]。一般情況下,NCS中的傳感器為時鐘驅動,且采用系統時鐘;控制器和執行器既可采用時鐘驅動,也可以采用事件驅動。本文針對解決網絡時延而設計的網絡預測控制分為控制端和被控對象端兩個部分,它們通過網絡進行連接。控制端采用事件驅動,被控對象端采用時鐘驅動,整個控制回路的結構如圖2。
當控制器端收到反饋通道回傳過來的數據時,事件被觸發,控制器生成相應的預測序列;如果沒有收到任何反饋數據,則控制器端處于閑置狀態。被控對象端以系統時鐘作為驅動,以控制序列作為數據源并從中選取相應的控制信號來對具體設備進行控制,這些來自于預測控制算法的控制序列可以實現對網絡時延的補償[6]。
網絡預測控制系統的實現步驟:
(1)不考慮網絡,設計本地PI控制器,滿足系統性能需求。
(2)根據已發出的控制信號、輸出信號以及參考輸入值,建立起預測控制序列生成器,通過計算生成預測輸出控制信號。
(3)引入網絡環節,預測生成器在產生完整的數據序列后,將輸出序列打包并傳送到被控對象端的網絡時延補償器。
(4)網絡時延補償器作為數據選擇器,從控制序列中選擇出符合當前時刻值的控制值作為執行器輸入信號。
1.2 設備模型和本地控制
假設系統t時刻的輸入和輸出分別是u(t)和y(t),則輸入輸出滿足的線性差分等式為:
y(t)+a1y(t-1)+…+any(t-n)=b1u(t-1)+…+bm u(t-m)
(1)
因為觀測數據常常是通過采樣獲得的,通過上面的表示方法可以很直接地將離散時間系統模型的相關觀測數據關聯起來。為了描述方便,在式(1)中,可以假設采樣時間間隔為一個時間單位。進行簡單變換,就可以變成一個能夠根據已經給定的以前的觀測結果來得到之后的輸出公式:
y(t)=-a1y(t-1)-…-any(t-n)+b1u(t-1)+…+bm u(t-m)
(2)
1.3 預測控制器設計
往本地控制系統中引入網絡節點,帶控制相關序列的預測控制相應的數據流通如圖3所示。
控制端主要由預測控制器組成,預測控制器負責接收來自控制器端反饋通道并通過遞歸公式計算生成下一控制周期相應的控制序列,然后通過網絡回傳到設備端。設備端通過選擇器承接控制序列數據,然后選擇出控制數據,直接作為設備的輸入控制量。設備端完成對設備的控制后,再將設備端相應的數據打包通過反饋通道回傳到網絡的另一端的控制器,再進行下一控制周期,依次循環。
預測模型具有表達系統未來行為的功能,對于不同的控制策略,可利用預測模型計算出不同的輸出軌跡,從而為選擇最優控制策略、優化系統性能提供條件。
當控制周期從設備端開始,每個采樣周期開始的時候,設備端將已經發生的控制序列u(t)和輸出序列y(t)以及當前的設備端系統時刻點t存儲在一個數據包中,并通過反饋通道發送到控制器端。設備端發送的數據包結構如下:
控制器端采用事件驅動方式,當接收到來自設備端反饋通道的數據包時,控制器計算出未來的預測序列,并將其和之前收到的設備系統時間t一起打包成下述結構發送到設備端:
在NPC方法中,設網絡傳送最大延時為M,采樣周期為T,則從控制器發送到設備端的控制序列應至少有N=M/N個元素,這樣就為設備端的數據選擇器提供了充足的有效數據源[7]。
1.4 設備端數據選擇器
NPC數據選擇器的基本思想是:在大多數通信網絡如TCP/IP網絡中,數據是以包的形式傳輸;網絡化控制系統中的網絡數據發送端可以用同一個包傳輸一組序列預測信號,接收端根據當時的網絡狀況選擇一個合適的信號值,主動補償掉網絡傳輸帶來的延時和丟包等不利因素。
在NPC方法中,網絡化控制系統被考慮成一個周期為T的計算機離散采樣系統。系統中所涉及的網絡節點都以時間驅動的方法工作,即它們都在采樣時間點KT(0,1,2,…)接收和發送報文。在時間區間[KT,(K+1)T]中被接收到的報文,均認為是在采樣時間點(K+1)T被接收到。
幾種接收數據包異常情況的處理方法如下:
(1)包延時。有數據包到達接收端,而且此數據包所帶時間標記在所有歷史數據中最新,啟用此數據包。
(2)包亂序。當一個數據包達到數據選擇器時,數據選擇器先將所收到數據包中的時間標記與內存當前數據包的時間標記作比較。發生包亂序時,直接舍棄。
(3)包堆積。當接收到多個數據包,數據選擇器選出具有最大時間標記的數據包,并將此數據包跟內存中的數據包的時間標記進行比較,以決定其啟用或舍棄。
(4)包丟失。當前時間點沒有收到新數據,或者收到新數據但新數據因時間標記過時都可導致包丟失。包丟失的情況下,數據選擇器啟用歷史數據包。
經過初步數據選擇,不管是當前接收的還是歷史接收的,每個時間節點都會一個供“第二次選擇”的數據包。在網絡控制系統NPC方法中,對包延時和廣義包丟失進行研究時,進行如下約定:網絡傳輸過程中的延時具有上限M,而且連續丟包的時間區間不大于最大延遲M(這樣才能將預測序列限定為有限長度)。基于以上約定,經過初步數據選擇后,包延時、包亂序、包堆積、包丟失這些問題都可以轉換成“隨機延時”的處理方式。隨機延時網絡的NPC解決方案如圖4。
從接收端的角度進行分析,時間節點為n時,發生包延時,收到來自發送端n-2時刻的數據包P,數據包發生了2個采樣周期的延時。如按傳統的控制方法,此時施加在設備上的端點為u(n-2),顯然不符合控制要求,如果傳送到接收端的是預測序列,則設備端數據選擇器只需根據延時情況,從預測序列中選取出n時刻的控制值即可,這樣就形成了對延時的有效補償;時間節點為n+1和n+2時,發生包丟失,即在這些節點處沒有收到任何數據,則此時仍啟用舊的數據包,即P中的n+1和n+2時刻的控制值;時間節點為n+3時,和節點n處一樣,只需從新的數據包中選擇對應時間節點的控制量即可。
2 算法仿真
前面對NPC的實現原理和過程進行了詳細描述,為了對上述的數據原理進行驗證,下面通過具體的設備模型對算法進行數字實驗,對上述數學原理進行仿真測試。
2.1 設備和控制器的數學模型
對于本地控制系統,設采樣周期為0.1 s,然后對相關環節進行數字化約定。
r(t)單位階躍輸入:1(t)=1,t≥0
2.2 本地固定時延控制
在本地無延時的本地控制回路中增加一定的固定延時,控制回路如圖5所示[8]。
在本地無延時的本地控制回路中增加一定的固定延時,控制閉環控制系統單位階躍輸入在不同的固定延時情況下的輸出信號如圖6所示。不難看出,不帶任何延時的本地控制系統能夠取得很好的控制效果,設備的輸出值能夠很快地達到參考輸入值。在本地控制系統中加入了2個和4個采樣周期倍數的延時后,系統輸出曲線產生振蕩,而且固定延時越高,系統的振蕩越劇烈,最后甚至會達到發散不穩定的結果。
2.3 網絡預測控制
網絡系統是一個復雜的系統,除了產生固定延時外,更多地還會產生隨機延時。當向本地控制中加入固定延時和隨機延時環節的網絡延時環境,便構造成了如圖7的網絡控制系統[9]。設備模型與PI控制器模型變成差分結構:
y(t)=1.396y(t-Ts)-0.468 1y(t-2Ts)+0.466 2u(t-Ts)
-0.284 3u(t-2Ts)(3)
u(t)=u(t-Ts)+0.33e(t)-0.23e(t-Ts)(4)
其中e(t)=r(t)-y(t)
不難看出,差分式(3)、(4)已經具備由過去序列推測未來序列的能力了。由于系統的數學模型階次不超過二階,一般只需要通過過去的兩組y、u值就可以得到當前時刻的y值和u值。兩組差分遞推算法是實現預測控制器的核心所在。已經發生的u、y序列和當前時刻值從反饋通道經過一定的網絡延時傳遞到控制器端作為預測控制器輸入。控制器將時間標記及通過兩個遞推式得到一組u的未來預測序列再通過網絡傳送到控制器端的數據選擇器。
數據選擇器接收到從控制器端發送過來數據包,和此時的時刻值進行對比,根據圖4中提供的NPC解決方案,從u序列中選擇出和時刻點對應的控制值,可以達到對網絡延時問題的有效補償。圖8給出了本地控制和網絡預測控制設備輸出圖,不難看出:在網絡控制系統中,只要設備和控制器的模型足夠準確,則在經過網絡預測控制器的有效補償后,網絡系統的控制可以達到和本地無延時控制完全一樣的效果。
3 結論
本文先對網絡延時的預測控制的基本原理和具體的數學實現方法進行了相關介紹,然后以單入單出的網絡隨機時延控制系統為例,通過MATLAB行仿真,結果顯示NPC算法能夠實現對網絡延時的有效補償,使得即使存在不確定的網絡延時環境,控制器仍然能夠達到和本地無時延系統一樣的控制效果。本文從工程應用層次對網絡控制技術的具體實現步驟進行了深入淺出的分析,對網絡預測控制技術的實際應用起到積極的推廣作用。
參考文獻
[1] PLEINEVAUX P,DECOTIGNIE J D.Time criti- cal communication networks: Field buses[J].Network,IEEE,1988,2(3):55-63.
[2] HU W S,LIU G P,REES D.Networked predic-tive control over the Internet using round-trip delay measurement[J].Instrumentation and Mea-surement,IEEE Transactions on,2008,57(10):2231-2241.
[3] LIU G P,XIA Y,REES D,et al.Design and stability criteriaof networked predictive control systems with random networkdelay in the feedback channel[J].Systems,Man,and Cyber-netics,Part C:Applications and Reviews,IEEE Transactionson,2007,37(2):173-184.
[4] LIU G P,XIA Y,CHEN J,et al.Networked predictive con-trol of systems with random network delays in both forward and feedback channels[J].Industrial Electronics,IEEE Transactions on,2007,54(3):1282-1297.
[5] HU W S,LIU G P,REES D.Event-driven networked pre-dictive control[J].Industrial Electronics,IEEE Transactionson,2007,54(3):1603-1613.
[6] WALSH G C,BELDIMAN O,BUSHNELL L G.Error encoding algorithms for networked control systems[J].Auto- matica,2002,38(2):261-267.
[7] LIU G P,MU J X,REES D,et al.Design and stability analysis of networked control systems with random comm-unication time delay using the modified MPC[J].InternationalJournal of Control,2006,79(4):288-297.
[8] LIU G P,REES D,CHAI S C.Design and practical imple-mentation of networked predictive control systems[C].IEEE Networking,Sensing and Control,ICNSC2005-Proceedings. 2005:336-341.
[9] ZHAO Y B,LIU G P,REES D.Design of a packet-based control framework for networked control systems[J].Control Systems Technology,IEEE Transactions on,2009,17(4):859-865.