蔣蓉蓉,夏榮坤,陳 亮
(安徽工程大學(xué)檢測(cè)技術(shù)與節(jié)能裝置省級(jí)重點(diǎn)實(shí)驗(yàn)室,安徽蕪湖 241000)
互聯(lián)網(wǎng)的發(fā)展給人們的生活帶來(lái)了許多便利,溝通變得更加快捷。網(wǎng)絡(luò)通信代替了點(diǎn)對(duì)點(diǎn)通信,網(wǎng)絡(luò)控制系統(tǒng)(networked control system,NCS)應(yīng)運(yùn)而生。NCS以網(wǎng)絡(luò)作為傳輸介質(zhì),完成傳感器、控制器和執(zhí)行器等系統(tǒng)各部件之間的信息交換[1]。正是利用這一特性,閉環(huán)回路系統(tǒng)中的各節(jié)點(diǎn)無(wú)需直接相連,NCS因此具有可遠(yuǎn)程控制、節(jié)約布線成本、各節(jié)點(diǎn)可獨(dú)立維護(hù)、易于擴(kuò)展等優(yōu)點(diǎn)[2]。然而,由于網(wǎng)絡(luò)的傳輸特性,時(shí)延、干擾等新問(wèn)題不可避免,降低了系統(tǒng)的性能,嚴(yán)重時(shí)甚至導(dǎo)致系統(tǒng)失去控制,造成不可預(yù)計(jì)的后果。除了可優(yōu)化網(wǎng)絡(luò)環(huán)境,控制系統(tǒng)的控制器設(shè)計(jì)仿真研究也是NCS研究的一個(gè)重要方面。NCS的仿真設(shè)計(jì)能驗(yàn)證控制算法的有效性。目前,網(wǎng)絡(luò)控制系統(tǒng)仿真軟件包括 Matlab/Simulink、TrueTime、NS2、OPNET 等[3-4],種類(lèi)繁多,但使用難易程度不同,功能也各有側(cè)重。其中,TrueTime能與Matlab/Simulink結(jié)合使用,且自帶多種協(xié)議和調(diào)度方案,直觀簡(jiǎn)便,因此本文選用TrueTime作為仿真工具。
網(wǎng)絡(luò)控制系統(tǒng)是一種利用網(wǎng)絡(luò)作為傳輸媒介來(lái)構(gòu)成閉環(huán)回路的系統(tǒng)[5],是一種各節(jié)點(diǎn)呈分布式的反饋控制系統(tǒng)。網(wǎng)絡(luò)控制系統(tǒng)分為有線網(wǎng)絡(luò)控制系統(tǒng)(wire networked control systems,WNCS)和無(wú)線網(wǎng)絡(luò)控制系統(tǒng)(wireless networked control systems,WiNCS)。圖1是一個(gè)典型的NCS結(jié)構(gòu)。由圖1可知,網(wǎng)絡(luò)控制系統(tǒng)的傳輸時(shí)延主要由兩大部分組成,即 τk=τsck+τcak,其中:τsck為傳感器到控制器的時(shí)延;τcak為控制器到執(zhí)行器的時(shí)延[6]。
圖1 網(wǎng)絡(luò)控制系統(tǒng)典型結(jié)構(gòu)
模糊控制可解決傳統(tǒng)控制無(wú)法解決或解決效果不佳的問(wèn)題。在NCS控制器設(shè)計(jì)中,被控對(duì)象包括物理節(jié)點(diǎn)和傳輸網(wǎng)絡(luò),其中傳輸網(wǎng)絡(luò)比較復(fù)雜。模糊控制無(wú)需知道精確的系統(tǒng)數(shù)學(xué)模型,因此非常適合NCS控制器設(shè)計(jì)。但由于不具有積分環(huán)節(jié),模糊控制器很難消除靜態(tài)誤差[7]。為了改善其穩(wěn)態(tài)性能,可將模糊控制與PID控制結(jié)合,運(yùn)用模糊推理,實(shí)現(xiàn)對(duì)PID參數(shù)的在線調(diào)節(jié),補(bǔ)償網(wǎng)絡(luò)時(shí)延對(duì)系統(tǒng)的影響。在該方法中,PID調(diào)節(jié)器按無(wú)時(shí)延進(jìn)行設(shè)計(jì)。模糊邏輯調(diào)節(jié)就是利用參考信號(hào)和被控對(duì)象輸出間的誤差來(lái)調(diào)節(jié)增益因子的值,使之作用于PID調(diào)節(jié)器的輸出以達(dá)到補(bǔ)償網(wǎng)絡(luò)時(shí)延的目的。另外,在控制器設(shè)計(jì)過(guò)程中,并不需要網(wǎng)絡(luò)時(shí)延等具體參數(shù),這恰恰符合網(wǎng)絡(luò)時(shí)延未知的特性。
模糊PID控制設(shè)計(jì)借鑒操作人員的經(jīng)驗(yàn)和專(zhuān)家的知識(shí)建立適當(dāng)?shù)哪:?guī)則表,根據(jù)實(shí)際情況自動(dòng)調(diào)整PID的3個(gè)參數(shù)[8]。本文設(shè)計(jì)采用自適應(yīng)模糊PID控制,控制器結(jié)構(gòu)如圖2所示。
圖2 自適應(yīng)模糊PID控制器結(jié)構(gòu)
模糊PID控制器既具有模糊控制靈活且適應(yīng)性強(qiáng)的優(yōu)點(diǎn),又具有PID控制器精度高的特點(diǎn)。由圖2可知,先求出系統(tǒng)給定值與反饋值的誤差e,然后計(jì)算誤差變化率ec,將二者作為輸入量,再將e和ec模糊化,選取模糊規(guī)則建立模糊規(guī)則表進(jìn)行模糊推理(對(duì)KP、KI和KD三個(gè)參數(shù)進(jìn)行修正,實(shí)時(shí)滿(mǎn)足e和ec對(duì)PID參數(shù)自整定的要求),最終解模糊(重心法)得到修正后的PID參數(shù)[9]。KP,KI和KD的參數(shù)修正按下式計(jì)算:
在線運(yùn)行過(guò)程中,控制系統(tǒng)通過(guò)對(duì)模糊邏輯規(guī)則結(jié)果的處理、查表和運(yùn)算完成對(duì)PID參數(shù)的在線自校正。模糊PID工作流程見(jiàn)圖3。
在Matlab的command窗口中輸入TrueTime,跳出如圖4所示的窗口。仿真使用TrueTime1.5,包括6個(gè)模塊,本文主要用到3個(gè)基本模塊:內(nèi)核模塊(TrueTime Kernel)、有線網(wǎng)絡(luò)模塊(TrueTime Network)和無(wú)線網(wǎng)絡(luò)模塊(TrueTime Wireless Network)。
圖3 模糊PID工作流程
圖4 TrueTime1.5模塊庫(kù)
內(nèi)核模塊用于構(gòu)建網(wǎng)絡(luò)控制系統(tǒng)中的各節(jié)點(diǎn),例如控制器、傳感器和執(zhí)行器。它具有數(shù)/模和模/數(shù)(D/A和A/D)轉(zhuǎn)換端口、網(wǎng)絡(luò)接收和發(fā)送(rcv和snd)通道、中斷通道(interrupts)、調(diào)度器(schedule)與監(jiān)視器(monitors)接口等[10]。雙擊內(nèi)核模塊可對(duì)其進(jìn)行設(shè)置。其中,Name of init function(MEX or Matlab)一欄填入對(duì)應(yīng)的節(jié)點(diǎn)初始化函數(shù)即可初始化對(duì)應(yīng)的內(nèi)核模塊(節(jié)點(diǎn)),函數(shù)可用Matlab或C++編寫(xiě)。
模塊按照函數(shù)中定義的任務(wù)執(zhí)行,以中斷方式產(chǎn)生。內(nèi)部中斷與定時(shí)器相關(guān)連,定時(shí)器在規(guī)定時(shí)間或任務(wù)完成時(shí)觸發(fā);外部中斷與模塊的Interrupts相關(guān)連,當(dāng)信號(hào)值改變時(shí)觸發(fā);當(dāng)內(nèi)外中斷同時(shí)觸發(fā)時(shí)調(diào)用預(yù)定義的中斷句柄執(zhí)行中斷服務(wù)程序,中斷句柄也可由代碼函數(shù)實(shí)現(xiàn)[11-12]。在仿真程序運(yùn)行時(shí),內(nèi)核執(zhí)行與不同的任務(wù)相關(guān)聯(lián)的代碼函數(shù),代碼函數(shù)返回執(zhí)行時(shí)間。
有線網(wǎng)絡(luò)模塊用來(lái)模擬網(wǎng)絡(luò)控制系統(tǒng)的有線網(wǎng)絡(luò),它包括數(shù)字信號(hào)接收(rcv)和發(fā)送(snd)接口、調(diào)度(schedule)顯示接口,可以仿真有線網(wǎng)絡(luò)的訪問(wèn)和傳輸過(guò)程。其中,接收和發(fā)送接口可擴(kuò)充至多個(gè)接口。網(wǎng)絡(luò)模塊提供了可以設(shè)置的網(wǎng)絡(luò)參數(shù),如網(wǎng)絡(luò)類(lèi)型、網(wǎng)絡(luò)節(jié)點(diǎn)數(shù)目、網(wǎng)絡(luò)速率、最小幀長(zhǎng)度、數(shù)據(jù)包丟包率等。其中,網(wǎng)絡(luò)類(lèi)型包括CSMA/CD、CSMA/AMP(帶有優(yōu)先級(jí)仲裁的載波偵聽(tīng)多路訪問(wèn))、TDMA、FDMA(頻分多路復(fù)用)、Round Robin(令牌總線)和 Switched Ethernet(交換式以太網(wǎng))6 種[13]。
有線網(wǎng)絡(luò)模塊由事件驅(qū)動(dòng),需傳輸?shù)臄?shù)據(jù)包通常包括收發(fā)節(jié)點(diǎn)編號(hào)、data(如采樣信息或控制律)、傳送時(shí)間和實(shí)時(shí)特性(如優(yōu)先級(jí))。TrueTime預(yù)定義了 Rate-Monotonic(RM,單調(diào)速率)、Deadline-Monotonic(DM,截止期單調(diào))、Fixed-Priority(FP,固定優(yōu)先級(jí))和 EarliestDeadlineFirst(EDF,最小截止期優(yōu)先)調(diào)度[14]4種優(yōu)先權(quán)調(diào)度策略??梢愿鶕?jù)需要選用一個(gè)優(yōu)先權(quán)策略,也可以自行編寫(xiě)優(yōu)先權(quán)函數(shù),靈活性較高。
無(wú)線網(wǎng)絡(luò)模塊和有線網(wǎng)絡(luò)模塊類(lèi)似,但被用來(lái)模擬無(wú)線通信網(wǎng)絡(luò)。該模塊提供了IEEE 802.11b/g(WLAN)和 IEEE 802.15.4(ZigBee)兩種網(wǎng)絡(luò)類(lèi)型。需要和有線網(wǎng)絡(luò)模塊區(qū)別的是,無(wú)線網(wǎng)絡(luò)中存在連續(xù)的功率消耗,一旦模塊的電池能源耗光,系統(tǒng)將會(huì)失去控制能力,因此在無(wú)線網(wǎng)絡(luò)模塊的初始化函數(shù)代碼編寫(xiě)時(shí)要?jiǎng)?chuàng)建功率控制和功率響應(yīng)任務(wù)[15]。
有線網(wǎng)絡(luò)控制系統(tǒng)仿真平臺(tái)的被控對(duì)象選用倒立擺模型,其傳遞函數(shù)為
系統(tǒng)參考輸入信號(hào)為單位階躍信號(hào),調(diào)度采用prioFP(固定優(yōu)先級(jí))策略,數(shù)據(jù)速率為1 000 000 b/s。
分別采用3個(gè)內(nèi)核模塊作為傳感器、控制器和執(zhí)行器節(jié)點(diǎn)。傳感器由時(shí)間驅(qū)動(dòng),控制器和執(zhí)行器由事件驅(qū)動(dòng),任務(wù)到來(lái)時(shí)執(zhí)行。采用一個(gè)4節(jié)點(diǎn)的有線網(wǎng)絡(luò)模塊模擬有線網(wǎng)絡(luò)環(huán)境,其中1個(gè)節(jié)點(diǎn)為干擾節(jié)點(diǎn),隨機(jī)產(chǎn)生干擾信號(hào)擾亂網(wǎng)絡(luò)傳輸,另外3個(gè)節(jié)點(diǎn)分別對(duì)應(yīng)傳感器、控制器、執(zhí)行器節(jié)點(diǎn)。網(wǎng)絡(luò)的類(lèi)型選用CSMA/AMP(CAN)。
在TrueTime環(huán)境下建立系統(tǒng)的仿真平臺(tái)如圖5所示。其中傳感器按時(shí)鐘周期采樣數(shù)據(jù),然后將數(shù)據(jù)通過(guò)有線網(wǎng)絡(luò)發(fā)送給控制器,控制器接收數(shù)據(jù)后立刻計(jì)算控制律,再通過(guò)有線網(wǎng)絡(luò)發(fā)送給執(zhí)行器,如此循環(huán)往復(fù)。
圖5 WNCS仿真模型
控制器節(jié)點(diǎn)分別采用常規(guī)PID和模糊PID兩種控制策略。常規(guī)PID不作贅述。模糊PID控制節(jié)點(diǎn)的參數(shù)初始化設(shè)置為:KP=150(比例增益);KI=87(積分增益);KD=17(微分增益);采樣時(shí)間周期取0.01 s。然后根據(jù)誤差e和誤差變化率ec使用查模糊規(guī)則表解模糊來(lái)確定PID參數(shù)的修正量ΔKP,ΔKI和ΔKD,從而得到 PID控制器的最終PID調(diào)節(jié)參數(shù):
在仿真程序中通過(guò)為變量exectime賦值來(lái)返回時(shí)延,例如exectime=0.001表示時(shí)延為1 ms。無(wú)時(shí)延時(shí)時(shí)延均設(shè)為0;有時(shí)延時(shí)均設(shè)為0.002 s??刂朴?jì)算時(shí)間設(shè)置為0.001 s,則系統(tǒng)閉環(huán)預(yù)延為0.005 s。
設(shè)置好仿真參數(shù)后啟動(dòng)仿真,得到如圖6所示的4種時(shí)延對(duì)有線網(wǎng)絡(luò)控制系統(tǒng)影響的仿真曲線。
圖6 時(shí)延對(duì)有線網(wǎng)絡(luò)控制系統(tǒng)影響的仿真曲線
由圖6可以看到:當(dāng)系統(tǒng)沒(méi)有傳輸時(shí)延時(shí),常規(guī)PID和模糊PID的控制效果相差不多,超調(diào)量幾乎相同,都小于1.2,但模糊PID的響應(yīng)曲線更平滑;當(dāng)系統(tǒng)存在網(wǎng)絡(luò)時(shí)延時(shí),相對(duì)于沒(méi)有時(shí)延的情況,系統(tǒng)的品質(zhì)明顯變差,有時(shí)延模糊PID的超調(diào)量約為1.2,而有時(shí)延常規(guī)PID的超調(diào)量明顯大于1.2,證明了模糊PID控制律的優(yōu)越性。
無(wú)線網(wǎng)絡(luò)控制系統(tǒng)仿真平臺(tái)的被控對(duì)象選用普通的電機(jī)模型,其傳遞函數(shù)為
系統(tǒng)參考輸入信號(hào)為方波信號(hào),網(wǎng)絡(luò)類(lèi)型選用IEEE 802.11b/g(WLAN)。系統(tǒng)的仿真平臺(tái)如圖7所示,其設(shè)置與有線網(wǎng)絡(luò)類(lèi)似,但與有線網(wǎng)絡(luò)的區(qū)別是:無(wú)線網(wǎng)絡(luò)控制同時(shí)也是一種功率控制,在傳感器、控制器和執(zhí)行器3個(gè)節(jié)點(diǎn)同時(shí)進(jìn)行,周期性地發(fā)送ping消息給其他節(jié)點(diǎn),檢測(cè)信道傳輸。如果收到回復(fù),就假設(shè)信道空閑且傳輸功率最小;反之,就認(rèn)為傳輸功率一直增加到飽和或再次收到回復(fù)。
圖7 WiNCS仿真模型
圖8是時(shí)延對(duì)無(wú)線網(wǎng)絡(luò)控制系統(tǒng)影響仿真曲線。同樣采用常規(guī)PID和模糊PID兩種控制策略,但由于是無(wú)線網(wǎng)絡(luò),仿真只考慮了有時(shí)延的情形。
由圖8可知:無(wú)線網(wǎng)絡(luò)控制系統(tǒng)中存在時(shí)延時(shí),常規(guī)PID和模糊PID控制律下的對(duì)象y基本能跟蹤參考輸入方波的曲線變化,但模糊PID的誤差控制在1.25左右,而常規(guī)PID的誤差接近1.4。由此模糊PID的優(yōu)越性在無(wú)線網(wǎng)絡(luò)化控制系統(tǒng)仿真模型中得到驗(yàn)證。
圖8 時(shí)延對(duì)無(wú)線網(wǎng)絡(luò)控制系統(tǒng)影響的仿真曲線
本文搭建的基于TrueTime的網(wǎng)絡(luò)控制系統(tǒng)仿真平臺(tái)中,有線網(wǎng)絡(luò)控制系統(tǒng)的控制對(duì)象是倒立擺模型,無(wú)線網(wǎng)絡(luò)控制系統(tǒng)的控制對(duì)象是普通電機(jī),而時(shí)延的設(shè)置也包括系統(tǒng)本身存在的傳輸時(shí)延以及一個(gè)獨(dú)立的干擾節(jié)點(diǎn)隨機(jī)產(chǎn)生的時(shí)延,具有普遍性。本文采用模糊控制設(shè)計(jì)控制律,對(duì)比常規(guī)的PID,模糊PID控制效果更好,分別在有線和無(wú)線網(wǎng)絡(luò)控制系統(tǒng)的仿真中得到了驗(yàn)證?;赥rueTime工具箱的模型能有效地模擬網(wǎng)絡(luò)環(huán)境中的時(shí)延和隨機(jī)干擾的影響,具有實(shí)時(shí)性,可維持系統(tǒng)的穩(wěn)定。TrueTime還可實(shí)現(xiàn)系統(tǒng)控制和網(wǎng)絡(luò)調(diào)度的綜合研究。但是本文沒(méi)有考慮丟包的影響,因此對(duì)網(wǎng)絡(luò)控制系統(tǒng)的研究還有待進(jìn)一步深入。
[1]王巖,孫增圻.網(wǎng)絡(luò)控制系統(tǒng)分析與設(shè)計(jì)[M].北京:清華大學(xué)出版社,2009.
[2]Halevi Y,Ray A.Integrated communication and control systems:Part I analysis[J].Journal of Dynamic Systems,Measurement and Control,1998,110(4):367-372.
[3]王慶鳳,陳虹,王萍.基于NS2的網(wǎng)絡(luò)控制系統(tǒng)仿真平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[J].系統(tǒng)仿真學(xué)報(bào),2011,23(2):270-274.
[4]康軍,牛云.網(wǎng)絡(luò)化控制系統(tǒng)綜合仿真平臺(tái)設(shè)計(jì)[J].系統(tǒng)仿真學(xué)報(bào),2011,23(9):1842-1848.
[5]岳東,彭晨,Han Q L.網(wǎng)絡(luò)控制系統(tǒng)的分析與綜合[M].北京:科學(xué)出版社,2007.
[6]Zhang W.Stability analysis of networked control system[D].USA:Case Western Reserve University,2001.
[7]Feng D,Ren X.Simulation Research on Fuzzy PID in Network Control System[C]//Process Automation Instrumentation/Zidonghua Yibiao.2013.
[8]Zhang Y,Cheng P,Yin T F.A Stable Adaptive Control Method in Networked Control System[J].Applied Mechanics and Materials,2012,110:4837-4844.
[9]Peng D,Zhang H,Lin J,et al.Research of networked control system based on fuzzy immune PID controller[M].Germany:Springer Berlin Heidelberg,2011:141-148.
[10]何堅(jiān)強(qiáng),張煥春,經(jīng)亞枝.基于Matlab環(huán)境的網(wǎng)絡(luò)控制系統(tǒng)仿真平臺(tái)[J].計(jì)算機(jī)工程與應(yīng)用,2005(2):142-145.
[11]張湘,肖建.網(wǎng)絡(luò)控制系統(tǒng)的分析與仿真[J].蘭州交通大學(xué)學(xué)報(bào),2010,29(3):104-107.
[12]鄂大志,薛定宇,魏玲,等.基于TrueTime的非線性網(wǎng)絡(luò)控制系統(tǒng)[J].東北大學(xué)學(xué)報(bào):自然科學(xué)版,2008,29(9):1232-1235.
[13]劉川來(lái),郭藍(lán)天,朱孔陽(yáng).基于TrueTime的網(wǎng)絡(luò)控制系統(tǒng)的仿真研究[J].微計(jì)算機(jī)信息,2011,27(12):109-111.
[14]鄧睿,湯賢銘,俞金壽.基于Truetime工具箱的網(wǎng)絡(luò)控制系統(tǒng)時(shí)延分析[J].工業(yè)控制計(jì)算機(jī),2010(2):24-26.
[15]趙賢林.基于狀態(tài)空間的無(wú)線網(wǎng)絡(luò)控制仿真研究[J].控制工程,2010,17(1):20-24.
重慶理工大學(xué)學(xué)報(bào)(自然科學(xué))2015年6期