文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2015.09.030
中文引用格式: 汪繁榮,萬英杰. 網(wǎng)絡控制系統(tǒng)時延解決方案的研究[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 引言
隨著計算機網(wǎng)絡通信和智能傳感技術的飛速發(fā)展,自動化技術發(fā)生了革命性的變化。計算機控制系統(tǒng)從集中式控制過渡到集散控制以及現(xiàn)場總線控制,直到今天的基于網(wǎng)絡的分布式控制。這種分布式工作方式徹底地改變了傳統(tǒng)控制系統(tǒng)中反饋的應用,網(wǎng)絡控制系統(tǒng)(NCS)應運而生。進入二十一世紀,工業(yè)控制技術與計算機通信網(wǎng)絡技術的進一步結合催生了現(xiàn)場總線系統(tǒng)[1]。這使得封閉的專用協(xié)議變成開放的標準協(xié)議,因設備節(jié)點中包含了數(shù)字處理器,而具有較強的數(shù)字計算和通信能力,可實現(xiàn)真正意義上的分布式控制。
與傳統(tǒng)的點對點控制系統(tǒng)相比,網(wǎng)絡控制系統(tǒng)具有連線少、結構靈活、通信協(xié)議開放等諸多優(yōu)點。但通信網(wǎng)絡介入使得網(wǎng)絡控制系統(tǒng)的分析和設計變得更為復雜[2],不可靠的網(wǎng)絡傳輸方式導致許多的不確定性,主要問題有:網(wǎng)絡誘導延時、數(shù)據(jù)丟包、單包傳輸與多包傳輸、數(shù)據(jù)包時序錯亂、噪聲干擾等。
針對網(wǎng)絡控制系統(tǒng)中數(shù)據(jù)傳輸?shù)亩嘀芷诤?a class="innerlink" href="http://www.rjjo.cn/tags/時延" title="時延" target="_blank">時延的相關問題,本文運用預測控制算法,采用多步測試、滾動優(yōu)化和反饋校正等控制策略,通過優(yōu)化控制序列來改善系統(tǒng)在擁堵環(huán)境下的控制效果。最后利用MATLAB對網(wǎng)絡預測控制進行仿真驗證,結果表明此預測控制算法能夠極大改善網(wǎng)絡時延下的控制輸出效果。
1 網(wǎng)絡控制回路的設計
1.1 網(wǎng)絡預測控制結構
在網(wǎng)絡控制系統(tǒng)中,系統(tǒng)結構的主要特征是傳感器、控制器和執(zhí)行器非點對點的直接相連,而是通過串行數(shù)字通信接口接入公網(wǎng)(或者無線網(wǎng))進行數(shù)據(jù)和控制信息的交換[3]。所有設備共享一個傳輸通道,實現(xiàn)設備間的數(shù)據(jù)交換、資源共享和相互協(xié)作[4]。典型的網(wǎng)絡控制系統(tǒng)結構如圖1所示。
在NCS中,系統(tǒng)的節(jié)點驅動方式有兩類:時鐘驅動和事件驅動。時鐘驅動指網(wǎng)絡節(jié)點在預定的時間啟動工作,時鐘驅動可使網(wǎng)絡節(jié)點周期性的工作;而事件驅動則使網(wǎng)絡節(jié)點在特定的事件發(fā)生時啟動工作[5]。一般情況下,NCS中的傳感器為時鐘驅動,且采用系統(tǒng)時鐘;控制器和執(zhí)行器既可采用時鐘驅動,也可以采用事件驅動。本文針對解決網(wǎng)絡時延而設計的網(wǎng)絡預測控制分為控制端和被控對象端兩個部分,它們通過網(wǎng)絡進行連接。控制端采用事件驅動,被控對象端采用時鐘驅動,整個控制回路的結構如圖2。
當控制器端收到反饋通道回傳過來的數(shù)據(jù)時,事件被觸發(fā),控制器生成相應的預測序列;如果沒有收到任何反饋數(shù)據(jù),則控制器端處于閑置狀態(tài)。被控對象端以系統(tǒng)時鐘作為驅動,以控制序列作為數(shù)據(jù)源并從中選取相應的控制信號來對具體設備進行控制,這些來自于預測控制算法的控制序列可以實現(xiàn)對網(wǎng)絡時延的補償[6]。
網(wǎng)絡預測控制系統(tǒng)的實現(xiàn)步驟:
(1)不考慮網(wǎng)絡,設計本地PI控制器,滿足系統(tǒng)性能需求。
(2)根據(jù)已發(fā)出的控制信號、輸出信號以及參考輸入值,建立起預測控制序列生成器,通過計算生成預測輸出控制信號。
(3)引入網(wǎng)絡環(huán)節(jié),預測生成器在產(chǎn)生完整的數(shù)據(jù)序列后,將輸出序列打包并傳送到被控對象端的網(wǎng)絡時延補償器。
(4)網(wǎng)絡時延補償器作為數(shù)據(jù)選擇器,從控制序列中選擇出符合當前時刻值的控制值作為執(zhí)行器輸入信號。
1.2 設備模型和本地控制
假設系統(tǒng)t時刻的輸入和輸出分別是u(t)和y(t),則輸入輸出滿足的線性差分等式為:
y(t)+a1y(t-1)+…+any(t-n)=b1u(t-1)+…+bm u(t-m)
(1)
因為觀測數(shù)據(jù)常常是通過采樣獲得的,通過上面的表示方法可以很直接地將離散時間系統(tǒng)模型的相關觀測數(shù)據(jù)關聯(lián)起來。為了描述方便,在式(1)中,可以假設采樣時間間隔為一個時間單位。進行簡單變換,就可以變成一個能夠根據(jù)已經(jīng)給定的以前的觀測結果來得到之后的輸出公式:
y(t)=-a1y(t-1)-…-any(t-n)+b1u(t-1)+…+bm u(t-m)
(2)
1.3 預測控制器設計
往本地控制系統(tǒng)中引入網(wǎng)絡節(jié)點,帶控制相關序列的預測控制相應的數(shù)據(jù)流通如圖3所示。
控制端主要由預測控制器組成,預測控制器負責接收來自控制器端反饋通道并通過遞歸公式計算生成下一控制周期相應的控制序列,然后通過網(wǎng)絡回傳到設備端。設備端通過選擇器承接控制序列數(shù)據(jù),然后選擇出控制數(shù)據(jù),直接作為設備的輸入控制量。設備端完成對設備的控制后,再將設備端相應的數(shù)據(jù)打包通過反饋通道回傳到網(wǎng)絡的另一端的控制器,再進行下一控制周期,依次循環(huán)。
預測模型具有表達系統(tǒng)未來行為的功能,對于不同的控制策略,可利用預測模型計算出不同的輸出軌跡,從而為選擇最優(yōu)控制策略、優(yōu)化系統(tǒng)性能提供條件。
當控制周期從設備端開始,每個采樣周期開始的時候,設備端將已經(jīng)發(fā)生的控制序列u(t)和輸出序列y(t)以及當前的設備端系統(tǒng)時刻點t存儲在一個數(shù)據(jù)包中,并通過反饋通道發(fā)送到控制器端。設備端發(fā)送的數(shù)據(jù)包結構如下:
控制器端采用事件驅動方式,當接收到來自設備端反饋通道的數(shù)據(jù)包時,控制器計算出未來的預測序列,并將其和之前收到的設備系統(tǒng)時間t一起打包成下述結構發(fā)送到設備端:
在NPC方法中,設網(wǎng)絡傳送最大延時為M,采樣周期為T,則從控制器發(fā)送到設備端的控制序列應至少有N=M/N個元素,這樣就為設備端的數(shù)據(jù)選擇器提供了充足的有效數(shù)據(jù)源[7]。
1.4 設備端數(shù)據(jù)選擇器
NPC數(shù)據(jù)選擇器的基本思想是:在大多數(shù)通信網(wǎng)絡如TCP/IP網(wǎng)絡中,數(shù)據(jù)是以包的形式傳輸;網(wǎng)絡化控制系統(tǒng)中的網(wǎng)絡數(shù)據(jù)發(fā)送端可以用同一個包傳輸一組序列預測信號,接收端根據(jù)當時的網(wǎng)絡狀況選擇一個合適的信號值,主動補償?shù)艟W(wǎng)絡傳輸帶來的延時和丟包等不利因素。
在NPC方法中,網(wǎng)絡化控制系統(tǒng)被考慮成一個周期為T的計算機離散采樣系統(tǒng)。系統(tǒng)中所涉及的網(wǎng)絡節(jié)點都以時間驅動的方法工作,即它們都在采樣時間點KT(0,1,2,…)接收和發(fā)送報文。在時間區(qū)間[KT,(K+1)T]中被接收到的報文,均認為是在采樣時間點(K+1)T被接收到。
幾種接收數(shù)據(jù)包異常情況的處理方法如下:
(1)包延時。有數(shù)據(jù)包到達接收端,而且此數(shù)據(jù)包所帶時間標記在所有歷史數(shù)據(jù)中最新,啟用此數(shù)據(jù)包。
(2)包亂序。當一個數(shù)據(jù)包達到數(shù)據(jù)選擇器時,數(shù)據(jù)選擇器先將所收到數(shù)據(jù)包中的時間標記與內(nèi)存當前數(shù)據(jù)包的時間標記作比較。發(fā)生包亂序時,直接舍棄。
(3)包堆積。當接收到多個數(shù)據(jù)包,數(shù)據(jù)選擇器選出具有最大時間標記的數(shù)據(jù)包,并將此數(shù)據(jù)包跟內(nèi)存中的數(shù)據(jù)包的時間標記進行比較,以決定其啟用或舍棄。
(4)包丟失。當前時間點沒有收到新數(shù)據(jù),或者收到新數(shù)據(jù)但新數(shù)據(jù)因時間標記過時都可導致包丟失。包丟失的情況下,數(shù)據(jù)選擇器啟用歷史數(shù)據(jù)包。
經(jīng)過初步數(shù)據(jù)選擇,不管是當前接收的還是歷史接收的,每個時間節(jié)點都會一個供“第二次選擇”的數(shù)據(jù)包。在網(wǎng)絡控制系統(tǒng)NPC方法中,對包延時和廣義包丟失進行研究時,進行如下約定:網(wǎng)絡傳輸過程中的延時具有上限M,而且連續(xù)丟包的時間區(qū)間不大于最大延遲M(這樣才能將預測序列限定為有限長度)。基于以上約定,經(jīng)過初步數(shù)據(jù)選擇后,包延時、包亂序、包堆積、包丟失這些問題都可以轉換成“隨機延時”的處理方式。隨機延時網(wǎng)絡的NPC解決方案如圖4。
從接收端的角度進行分析,時間節(jié)點為n時,發(fā)生包延時,收到來自發(fā)送端n-2時刻的數(shù)據(jù)包P,數(shù)據(jù)包發(fā)生了2個采樣周期的延時。如按傳統(tǒng)的控制方法,此時施加在設備上的端點為u(n-2),顯然不符合控制要求,如果傳送到接收端的是預測序列,則設備端數(shù)據(jù)選擇器只需根據(jù)延時情況,從預測序列中選取出n時刻的控制值即可,這樣就形成了對延時的有效補償;時間節(jié)點為n+1和n+2時,發(fā)生包丟失,即在這些節(jié)點處沒有收到任何數(shù)據(jù),則此時仍啟用舊的數(shù)據(jù)包,即P中的n+1和n+2時刻的控制值;時間節(jié)點為n+3時,和節(jié)點n處一樣,只需從新的數(shù)據(jù)包中選擇對應時間節(jié)點的控制量即可。
2 算法仿真
前面對NPC的實現(xiàn)原理和過程進行了詳細描述,為了對上述的數(shù)據(jù)原理進行驗證,下面通過具體的設備模型對算法進行數(shù)字實驗,對上述數(shù)學原理進行仿真測試。
2.1 設備和控制器的數(shù)學模型
對于本地控制系統(tǒng),設采樣周期為0.1 s,然后對相關環(huán)節(jié)進行數(shù)字化約定。
r(t)單位階躍輸入:1(t)=1,t≥0
2.2 本地固定時延控制
在本地無延時的本地控制回路中增加一定的固定延時,控制回路如圖5所示[8]。
在本地無延時的本地控制回路中增加一定的固定延時,控制閉環(huán)控制系統(tǒng)單位階躍輸入在不同的固定延時情況下的輸出信號如圖6所示。不難看出,不帶任何延時的本地控制系統(tǒng)能夠取得很好的控制效果,設備的輸出值能夠很快地達到參考輸入值。在本地控制系統(tǒng)中加入了2個和4個采樣周期倍數(shù)的延時后,系統(tǒng)輸出曲線產(chǎn)生振蕩,而且固定延時越高,系統(tǒng)的振蕩越劇烈,最后甚至會達到發(fā)散不穩(wěn)定的結果。
2.3 網(wǎng)絡預測控制
網(wǎng)絡系統(tǒng)是一個復雜的系統(tǒng),除了產(chǎn)生固定延時外,更多地還會產(chǎn)生隨機延時。當向本地控制中加入固定延時和隨機延時環(huán)節(jié)的網(wǎng)絡延時環(huán)境,便構造成了如圖7的網(wǎng)絡控制系統(tǒng)[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)已經(jīng)具備由過去序列推測未來序列的能力了。由于系統(tǒng)的數(shù)學模型階次不超過二階,一般只需要通過過去的兩組y、u值就可以得到當前時刻的y值和u值。兩組差分遞推算法是實現(xiàn)預測控制器的核心所在。已經(jīng)發(fā)生的u、y序列和當前時刻值從反饋通道經(jīng)過一定的網(wǎng)絡延時傳遞到控制器端作為預測控制器輸入。控制器將時間標記及通過兩個遞推式得到一組u的未來預測序列再通過網(wǎng)絡傳送到控制器端的數(shù)據(jù)選擇器。
數(shù)據(jù)選擇器接收到從控制器端發(fā)送過來數(shù)據(jù)包,和此時的時刻值進行對比,根據(jù)圖4中提供的NPC解決方案,從u序列中選擇出和時刻點對應的控制值,可以達到對網(wǎng)絡延時問題的有效補償。圖8給出了本地控制和網(wǎng)絡預測控制設備輸出圖,不難看出:在網(wǎng)絡控制系統(tǒng)中,只要設備和控制器的模型足夠準確,則在經(jīng)過網(wǎng)絡預測控制器的有效補償后,網(wǎng)絡系統(tǒng)的控制可以達到和本地無延時控制完全一樣的效果。
3 結論
本文先對網(wǎng)絡延時的預測控制的基本原理和具體的數(shù)學實現(xiàn)方法進行了相關介紹,然后以單入單出的網(wǎng)絡隨機時延控制系統(tǒng)為例,通過MATLAB行仿真,結果顯示NPC算法能夠實現(xiàn)對網(wǎng)絡延時的有效補償,使得即使存在不確定的網(wǎng)絡延時環(huán)境,控制器仍然能夠達到和本地無時延系統(tǒng)一樣的控制效果。本文從工程應用層次對網(wǎng)絡控制技術的具體實現(xiàn)步驟進行了深入淺出的分析,對網(wǎng)絡預測控制技術的實際應用起到積極的推廣作用。
參考文獻
[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.