高 遠(yuǎn),江 明,葛 愿
GAOYuan,JIANG Ming,GEYuan
安徽工程大學(xué) 安徽檢測技術(shù)與自動化裝置重點實驗室,安徽 蕪湖 241000
Anhui Provincial Lab of Detection Technology and Energy Saving Devices,Anhui Polytechnic University,Wuhu,Anhui241000,China
網(wǎng)絡(luò)控制系統(tǒng)(Networked Control System,NCS)是通過網(wǎng)絡(luò)將在不同地理位置的傳感器、控制器和執(zhí)行器連接起來,形成的一種實時反饋控制系統(tǒng)[1-3]。其與傳統(tǒng)的控制系統(tǒng)相比簡化了系統(tǒng)各環(huán)節(jié)連接,打破了系統(tǒng)空間位置限制,降低了系統(tǒng)運行維護成本,具有系統(tǒng)組件靈活,易于擴展維護,能夠?qū)崿F(xiàn)資源共享與遠(yuǎn)程控制等優(yōu)點?;谝陨蟽?yōu)點NCS在航空航天、機器人遙操作、汽車制造、智能家居、遠(yuǎn)程醫(yī)療等領(lǐng)域有著巨大的應(yīng)用前景[4-7]。
然而,網(wǎng)絡(luò)是不穩(wěn)定的傳輸介質(zhì),NCS不可避免地存在網(wǎng)絡(luò)傳輸時延,數(shù)據(jù)包丟失,數(shù)據(jù)包時序錯亂,多包傳輸?shù)葐栴}[8-9]。以致對整個系統(tǒng)性能產(chǎn)生影響,甚至?xí)?dǎo)致整個系統(tǒng)的不穩(wěn)定。所以需要設(shè)計合適的控制器補償這些缺點對系統(tǒng)產(chǎn)生的負(fù)面影響。但是,由于網(wǎng)絡(luò)的介入,使得以往經(jīng)典控制方法無法直接應(yīng)用于NCS,因此需要針對NCS的系統(tǒng)結(jié)構(gòu)特點設(shè)計新的控制策略。為了驗證這些控制策略的有效性,往往需要進行仿真實驗。
目前常見的NCS仿真方法是通過Matlab/TrueTime工具箱模擬控制策略和網(wǎng)絡(luò)環(huán)境以及相關(guān)性能,但是其網(wǎng)絡(luò)模擬的功能相對較弱,無法模擬復(fù)雜的網(wǎng)絡(luò)環(huán)境。為此本文引入一款能夠模擬復(fù)雜網(wǎng)絡(luò)環(huán)境的軟件——NS2。NS2是由離散事件驅(qū)動,面向?qū)ο蟮拈_放式網(wǎng)絡(luò)模擬器[10-12]。其內(nèi)核由C++類庫實現(xiàn)各種網(wǎng)絡(luò)協(xié)議和鏈路層模型,前端利用OTCL程序語言搭建網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),可以完整地模擬整個網(wǎng)絡(luò)環(huán)境。因此NS2在NCS中的應(yīng)用越來越受到重視,如昆明理工大學(xué)劉守盎提出的基于NS2網(wǎng)絡(luò)化控制系統(tǒng)仿真[13],江南大學(xué)謝林柏等提出的基于NS2的網(wǎng)絡(luò)控制系統(tǒng)仿真研究[14],吉林大學(xué)王慶鳳等提出的基于NS2的網(wǎng)絡(luò)化控制系統(tǒng)仿真平臺的設(shè)計與實現(xiàn)[15]。但是,總體來看這方面的研究工作剛剛起步,還有待深入研究。
為此,本文的主要工作是在NS2下搭建一個基于PID控制的直流電機網(wǎng)絡(luò)化控制系統(tǒng)仿真平臺,通過仿真分析網(wǎng)絡(luò)時延對于系統(tǒng)性能的影響。本文首先基于NS2實現(xiàn)NCS的節(jié)點,其次在實現(xiàn)節(jié)點的基礎(chǔ)上進行網(wǎng)絡(luò)模擬,最后分析實驗結(jié)果。
網(wǎng)絡(luò)化控制系統(tǒng)由被控對象、傳感器、執(zhí)行器和控制器組成,被控對象一般為連續(xù)系統(tǒng),控制器則一般為離散系統(tǒng)。被控對象的輸出值通過傳感器采樣離散化并通過網(wǎng)絡(luò)傳遞給控制器。控制器計算后將控制律通過網(wǎng)絡(luò)返還給被控對象。在NS2中將被控對象、傳感器、執(zhí)行器、控制器都抽象為節(jié)點表示。將被控對象,傳感器、執(zhí)行器抽象為廣義對象節(jié)點,又由于控制器節(jié)點一般為離散系統(tǒng),NS2也是基于離散事件驅(qū)動,所以將控制器節(jié)點放在另一個單獨的節(jié)點中,這樣在NS2中NCS在結(jié)構(gòu)上分為廣義對象節(jié)點,控制器節(jié)點,通信網(wǎng)絡(luò)三個部分。下面分別給出每個部分的仿真實現(xiàn)方法。
廣義對象節(jié)點的主要功能是周期性的采樣數(shù)據(jù),并通過網(wǎng)絡(luò)將采樣數(shù)據(jù)發(fā)送給控制器節(jié)點。由于在NS2中并不存在相應(yīng)功能的節(jié)點,因此需要使用C++以及OTCL語言對NS2進行功能擴展,以實現(xiàn)新的節(jié)點功能和協(xié)議。而實現(xiàn)新的節(jié)點功能和協(xié)議就是要向NS2中添加新的Agent類。由此定義對象節(jié)點的Agent類PLANT數(shù)據(jù)包頭部的主要內(nèi)容:
在這里定義了時間類SYNTimer,每當(dāng)定時時間到,數(shù)據(jù)采集函數(shù)就開始采集數(shù)據(jù),將數(shù)據(jù)傳遞給數(shù)據(jù)發(fā)送函數(shù)進行數(shù)據(jù)發(fā)送。sys_1為輸出計算函數(shù),由傳遞函數(shù)轉(zhuǎn)化為微分方程后,求解微分方程得到。在本文中所考慮的被控對象為一個直流電機,用二階微分方程描述為:
其中y為量測的電機輸出,u為控制輸入,A,B,C為控制器參數(shù)。
通過MATLAB求解微分方程,可以得到解為:
y(t0)為上一采樣時刻的輸出,T為采樣周期,這樣建立了系統(tǒng)的輸出模型。對其他模型可以通過求解其微分方程,將結(jié)果作為系統(tǒng)的輸出模型。在該Agent實例化后,就可以模擬廣義對象節(jié)點,周期性發(fā)送和接收數(shù)據(jù),該周期由定義的時間類函數(shù)設(shè)置。
該節(jié)點的實現(xiàn)與廣義對象節(jié)點類似。同樣在NS2中建立一個新的Agent類CONTROL,為了保證數(shù)據(jù)的傳輸,其數(shù)據(jù)包頭部設(shè)置與廣義對象節(jié)點相同。不同之處在于該Agent類中沒有定義時間類函數(shù),在接收函數(shù)中直接調(diào)用發(fā)送函數(shù)發(fā)送數(shù)據(jù),其接收函數(shù)如下:
控制器節(jié)點與廣義對象節(jié)點不同在于其由事件驅(qū)動,每當(dāng)接收到對象節(jié)點發(fā)送的數(shù)據(jù),就對數(shù)據(jù)進行處理,處理完成后立刻返還給對象節(jié)點。在該節(jié)點中打包了PID控制規(guī)律。因在工程中無法實現(xiàn)純微分,本文令微分項為近似微分,微分項為:
同時在接收函數(shù)中設(shè)置,每當(dāng)接收到數(shù)據(jù)時,在屏幕上輸出接收到的數(shù)據(jù),以驗證節(jié)點功能擴展成功。
在NS2中通過OTCL程序完成網(wǎng)絡(luò)環(huán)境的模擬。首先建立僅有兩個節(jié)點的網(wǎng)絡(luò)環(huán)境,測試擴展的廣義對象節(jié)點和控制器節(jié)點。設(shè)置兩個節(jié)點間的帶寬為2 Mb,延時為10 ms,隊列為DropTail模型,將廣義對象節(jié)點和控制器節(jié)點的Agent類綁定在兩個節(jié)點上,建立被控對象與控制器之間的鏈接,其otcl腳本如下:
圖1 具有兩個節(jié)點網(wǎng)絡(luò)控制系統(tǒng)仿真圖
同時在屏幕上輸出數(shù)據(jù)如圖2,證實兩個節(jié)點擴展成功。
圖2 系統(tǒng)輸出數(shù)據(jù)圖
在此基礎(chǔ)上建立具有8個節(jié)點網(wǎng)絡(luò)化控制系統(tǒng)模型。其中0號,1號節(jié)點為路由節(jié)點,2,3,5,6號節(jié)點都為干擾節(jié)點。由于網(wǎng)絡(luò)中的傳輸協(xié)議主要以TCP、UDP為主,所以2號節(jié)點到5號節(jié)點使用TCP傳輸,從1 s開始傳輸。3號到6號節(jié)點使用UDP傳輸,從2 s開始傳輸,同時在8 s結(jié)束。
0號節(jié)點和1號節(jié)點之間設(shè)置不同的帶寬分別為1 Mb,0.75 Mb,0.5 Mb,路由節(jié)點間的帶寬設(shè)置為1 Mb以下,因為當(dāng)路由節(jié)點間的帶寬在1 Mb以上時,已經(jīng)滿足系統(tǒng)的傳輸要求,對系統(tǒng)的影響較小,其他節(jié)點之間的帶寬都設(shè)置為1 Mb,延時為10 ms,DropTail隊列,模擬仿真在不同的帶寬時延下對于系統(tǒng)性能的影響。
具有8個節(jié)點的網(wǎng)絡(luò)控制系統(tǒng)仿真圖如圖3所示。
圖3 具有8個節(jié)點的網(wǎng)絡(luò)控制系統(tǒng)仿真圖
系統(tǒng)采樣的時間設(shè)為0.1 s,其中設(shè)置系統(tǒng)的值為4.0,PID控制方法中的比列系數(shù)P=1.5,積分系數(shù)I=0.13,微分系數(shù)D=0.015。仿真時間設(shè)為30 s。此時整個網(wǎng)絡(luò)控制系統(tǒng)可以看成無時延。系統(tǒng)輸出曲線如圖4所示,從圖中可以看出系統(tǒng)很快就能達(dá)到穩(wěn)定,在沒有網(wǎng)絡(luò)時延的情況下,該PID控制器可以保證直流電機控制系統(tǒng)的穩(wěn)定性。
圖4 無時延的系統(tǒng)輸出曲線
在該網(wǎng)絡(luò)環(huán)境中改變0號節(jié)點和1號節(jié)點兩個路由節(jié)點之間的帶寬,分別設(shè)置為1.75 Mb,1 Mb,0.75 Mb,0.5 Mb。其時延分布如圖5所示,在路由節(jié)點之間帶寬為1.75 Mb時系統(tǒng)的時延小于采樣周期,時延跳變無規(guī)律。在1 Mb時系統(tǒng)的時延超過采樣周期,時延在0.12 s附近跳動。在0.75 Mb和0.5 Mb時系統(tǒng)的時延出現(xiàn)巨大的震蕩,超過采樣周期,同時在0.5 Mb時系統(tǒng)的時延成周期性的跳動,在8 s時停止了干擾節(jié)點的傳輸,系統(tǒng)時延降到采樣周期以下。
圖5 系統(tǒng)在不同帶寬下的時延
保持原PID控制器參數(shù)不變,圖6給出了不同時延下直流電機的階躍響應(yīng)曲線。
圖6 不同時延下的系統(tǒng)輸出曲線
在系統(tǒng)僅有兩個節(jié)點時系統(tǒng)迅速穩(wěn)定無超調(diào),當(dāng)系統(tǒng)的路由節(jié)點帶寬為1 Mb時系統(tǒng)調(diào)節(jié)時間增大。在帶寬設(shè)置為0.75 Mb和0.5 Mb后系統(tǒng)出現(xiàn)較大的震蕩,超調(diào)量變大,調(diào)節(jié)時間變長,響應(yīng)速度變慢。不難發(fā)現(xiàn)具有相同節(jié)點數(shù)的網(wǎng)絡(luò)模型結(jié)構(gòu),帶寬越大,時延對系統(tǒng)的影響越??;帶寬越小,時延對系統(tǒng)的影響越大。
本文討論了基于NS2的直流電機網(wǎng)絡(luò)化控制系統(tǒng)仿真平臺的建立,利用NS2的網(wǎng)絡(luò)模擬功能仿真比較了不同時延下系統(tǒng)的性能,仿真實驗表明可以充分利用NS2的構(gòu)件庫以及網(wǎng)絡(luò)協(xié)議搭建和擴展網(wǎng)絡(luò)化控制系統(tǒng)平臺,最后展示了不同時延對系統(tǒng)性能的影響,為網(wǎng)絡(luò)控制系統(tǒng)PID控制參數(shù)的整定奠定了基礎(chǔ)。
[1]Hespanha J P,Haghshtabrizi P,Xu Y.A survey of recent results in networked control systems[J].Proceedings of the IEEE,2007,95(1):138-162.
[2]Gupta R A,Chow M Y.Networked control system:overview and research trends[J].IEEE Transactions on Industrial Electronics,2010,57(7):2527-2535.
[3]Xia Y,F(xiàn)u M,Liu G P.Analysis and synthesis of networked control systems[M].Heidelberg:Springer,2011.
[4]Gaid M,Cela A,Hamam Y.Optimal integrated control and scheduling of networked control systems with communication constraints:application to a car suspension system[J].IEEE Transactions on Control Systems Technology,2006,14(4):776-787.
[5]Ma Z P,Cui D G,Cheng P.Dynamic network flow model for short-term air traffic flow management[J].IEEE Transactions on Systems,Man and Cybernetics,Part A:Systems and Humans,2004,34(3):351-358.
[6]Gajate A M,Guerra R E H.Internal model control based on a neurofuzzy system for network applications,a case study on the high-performance drilling process[J].IEEE Transactions on Automation Science and Engineering,2009,6(2):367-372.
[7]Kim Y H,Phong L D,Park W M,et al.Laboratory-level telesurgery with industrial robots and haptic devices communicating via the internet[J].International Journal of Precision Engineering and Manufacturing,2009,10(2):25-29.
[8]Zhang W,Branicky M,Phillips S.Stability of networked control systems[J].IEEE Control Systems Magazine,2001,21(1):84-99.
[9]Baillieul J,Antsaklis P J.Control and communication challenges in networked real-time systems[J].Proceedings of the IEEE,2007,95(1):9-28.
[10]柯志亨,程榮祥,鄧德雋.NS2仿真實驗——多媒體和無線網(wǎng)絡(luò)通信[M].北京:電子工業(yè)出版社,2009.
[11]于斌,孫斌.NS2與網(wǎng)絡(luò)模擬[M].北京:人民郵電出版社,2007.
[12]徐雷鳴,龐博,趙耀.NS與網(wǎng)絡(luò)模擬[M].北京:人民郵電出版社,2003.
[13]劉守盎,向鳳紅,毛劍琳,等.基于NS-2的網(wǎng)絡(luò)化控制系統(tǒng)仿真[J].云南大學(xué)學(xué)報:自然科學(xué)版,2009,31(S2):55-58.
[14]謝林柏,王強,紀(jì)志成.基于NS-2的網(wǎng)絡(luò)控制系統(tǒng)仿真研究及實現(xiàn)[J].計算機仿真,2006,23(10):95-99.
[15]王慶鳳,陳虹,王萍.基于NS2的網(wǎng)絡(luò)控制系統(tǒng)仿真平臺的設(shè)計與實現(xiàn)[J].系統(tǒng)仿真學(xué)報,2011,23(2):270-274.