◆蔣海霞 童瑋 楊健
基于TrueTime仿真的網(wǎng)絡(luò)控制系統(tǒng)基本問題研究
◆蔣海霞 童瑋 楊健
(陸軍工程大學(xué)通信工程學(xué)院 江蘇 210007)
網(wǎng)絡(luò)的介入,使網(wǎng)絡(luò)控制系統(tǒng)產(chǎn)生了一些不可避免的問題,如網(wǎng)絡(luò)誘導(dǎo)時延、數(shù)據(jù)包丟失、通信協(xié)議的選取、網(wǎng)絡(luò)調(diào)度、驅(qū)動方式等,均會影響控制系統(tǒng)的性能。利用TrueTime仿真工具箱,本文采用PD控制器,構(gòu)建了一個以直流伺服電機為被控對象的網(wǎng)絡(luò)控制系統(tǒng)仿真模型,主要研究了時延對網(wǎng)絡(luò)控制系統(tǒng)性能的影響,以及在一定時延條件下,其他幾個因素對網(wǎng)絡(luò)控制系統(tǒng)性能的影響。
網(wǎng)絡(luò)控制系統(tǒng);時延;TrueTime仿真工具箱;系統(tǒng)性能
控制系統(tǒng)中的傳感器、控制器和執(zhí)行機構(gòu)等可能分布于不同的地理位置,通過網(wǎng)絡(luò)將它們連接起來,形成全分布實時反饋閉環(huán)控制系統(tǒng),稱為網(wǎng)絡(luò)控制系統(tǒng)(Networked Control System,以下簡寫作NCS)。該交叉學(xué)科是網(wǎng)絡(luò)通信與控制理論研究領(lǐng)域備受關(guān)注的國際前沿性課題之一[1]。
網(wǎng)絡(luò)控制系統(tǒng)發(fā)展?jié)摿薮?。但由于網(wǎng)絡(luò)的引入,節(jié)點通過網(wǎng)絡(luò)交換數(shù)據(jù)時,便會產(chǎn)生一系列不可避免的現(xiàn)象,如多包傳輸、數(shù)據(jù)碰撞、丟包、時延、網(wǎng)絡(luò)擁塞等問題,它們都會影響網(wǎng)絡(luò)控制系統(tǒng)的性能。本文簡單闡述了NCS中存在的基本問題,采用基于MATLAB環(huán)境的TrueTime仿真工具箱[2],構(gòu)建了NCS仿真模型。通過仿真分析,研究了由于網(wǎng)絡(luò)的引入從而無法避免的時延對系統(tǒng)性能的影響,同時仿真分析了時延存在的情況下其他因素對控制系統(tǒng)性能的影響。
本文采用一種典型NCS結(jié)構(gòu)[3],以研究NCS的基本問題對控制系統(tǒng)性能的影響,如圖1所示。
圖1 典型結(jié)構(gòu)的NCS
圖1中箭頭方向表示信號流動的方向,其中,τca:控制器到執(zhí)行器的時延,τsc:傳感器到控制器的時延??刂破鲗Ρ豢貙ο蟮目刂剖峭ㄟ^網(wǎng)絡(luò)來實現(xiàn)的,網(wǎng)絡(luò)作為主要傳輸介質(zhì)被控制系統(tǒng)中的執(zhí)行器、傳感器和控制器共享。
由于網(wǎng)絡(luò)的介入,NCS運行機制、分析和設(shè)計比傳統(tǒng)的點對點直接控制系統(tǒng)更加復(fù)雜,存在不同于傳統(tǒng)控制系統(tǒng)的基本問題,主要有:網(wǎng)絡(luò)誘導(dǎo)時延、通信媒體類型及協(xié)議、數(shù)據(jù)包傳輸、節(jié)點驅(qū)動方式、網(wǎng)絡(luò)調(diào)度等[4]。為進行仿真分析,需首先了解NCS的基本問題。
由于網(wǎng)絡(luò)帶寬受限且數(shù)據(jù)流量隨機變化,控制系統(tǒng)中的節(jié)點通過網(wǎng)絡(luò)傳送、交換數(shù)據(jù)時,會出現(xiàn)信息碰撞、擁塞、丟包等現(xiàn)象,時延是不可避免的,這種由傳輸網(wǎng)絡(luò)引起的時延即為網(wǎng)絡(luò)誘導(dǎo)時延(Network-induced Delay)。時延不僅會讓系統(tǒng)性能變差,還可能縮小系統(tǒng)的穩(wěn)定范圍,甚至導(dǎo)致系統(tǒng)失穩(wěn),因此在所有影響網(wǎng)絡(luò)控制系統(tǒng)性能的因素中,網(wǎng)絡(luò)誘導(dǎo)時延是最主要的因素。而網(wǎng)絡(luò)誘導(dǎo)時延的特性,主要取決于系統(tǒng)的控制網(wǎng)絡(luò)采用的媒體類型及協(xié)議,例如緩存隊列的排隊時間等是造成時延不確定性的主要原因,同時也與節(jié)點驅(qū)動方式、數(shù)據(jù)包傳輸、網(wǎng)絡(luò)調(diào)度策略等諸多因素有關(guān),實際應(yīng)用中需綜合考慮各種情況,調(diào)整系統(tǒng)參數(shù),使時延符合系統(tǒng)的性能要求[1] [3]。
在NCS中,作為主要傳輸媒介的通信網(wǎng)絡(luò)可以是有線或者無線網(wǎng)絡(luò),既可借助于公用的Internet、WLAN,也可以搭建專用的傳感器網(wǎng)絡(luò)、現(xiàn)場總線等。根據(jù)控制系統(tǒng)信息傳輸與交換的需要,可以采用不同的通信協(xié)議。在隨機訪問中,以太網(wǎng)采用CSMA/CD協(xié)議,總線網(wǎng)絡(luò)采用CSMA/AMP協(xié)議;而在輪詢服務(wù)中,主要采用令牌總線方式。采用不同的協(xié)議,網(wǎng)絡(luò)的質(zhì)量和特征也不同,因而使網(wǎng)絡(luò)控制系統(tǒng)具有不同的特性,制約著網(wǎng)絡(luò)控制系統(tǒng)的設(shè)計和分析,從而對整個系統(tǒng)的控制性能產(chǎn)生影響[5]。
網(wǎng)絡(luò)控制系統(tǒng)中,數(shù)據(jù)的傳輸主要有單包傳輸和多包傳輸兩種方式。將傳輸?shù)臄?shù)據(jù)封裝成一個數(shù)據(jù)包等待傳輸即為單包傳輸,而將數(shù)據(jù)封裝成多個數(shù)據(jù)包等待傳輸,即為多包傳輸。網(wǎng)絡(luò)控制系統(tǒng)將根據(jù)網(wǎng)絡(luò)中各個傳感器在物理空間范圍內(nèi)的分布情況,以及不同網(wǎng)絡(luò)的數(shù)據(jù)幀的容量大小,綜合考慮采用單包傳輸還是多包傳輸。例如若網(wǎng)絡(luò)中的傳感器分布遠而廣,則采用單包傳輸,即將數(shù)據(jù)放在一個包中傳輸就不切實際;又如以太網(wǎng)中數(shù)據(jù)幀的容量達到1500字節(jié),適宜單包傳輸大批量數(shù)據(jù);而在總線網(wǎng)絡(luò)中數(shù)據(jù)幀的容量僅為8字節(jié),導(dǎo)致數(shù)據(jù)需分成多個包進行傳輸,適合傳輸數(shù)據(jù)量小且需快速傳輸?shù)目刂菩畔ⅰ?/p>
數(shù)據(jù)在網(wǎng)絡(luò)中傳輸,面臨著節(jié)點沖突、網(wǎng)絡(luò)擁塞和多路徑等眾多影響因素,多包傳輸時,還存在多個包不能同時到達接收端,這將直接增加接收處理時間,并間接增加了網(wǎng)絡(luò)時延。因此,系統(tǒng)的設(shè)計與分析方法也會因采用的數(shù)據(jù)包傳輸方式而不同,性能同樣受到影響。
網(wǎng)絡(luò)控制系統(tǒng)中,包括控制器、傳感器、執(zhí)行器等主要節(jié)點,這些節(jié)點的驅(qū)動方式分為時鐘驅(qū)動(Clock Driven)、事件驅(qū)動(Event Driven)兩類[6]。若網(wǎng)絡(luò)控制系統(tǒng)中的節(jié)點在預(yù)定時間啟動工作,則稱為時鐘驅(qū)動方式;若網(wǎng)絡(luò)節(jié)點在發(fā)生特定事件時啟動工作則稱為事件驅(qū)動方式。一般來說,傳感器節(jié)點為時鐘驅(qū)動,即按系統(tǒng)時鐘周期性對被控對象進行采樣;控制器節(jié)點和執(zhí)行器節(jié)點多采用事件驅(qū)動方式,即當(dāng)控制器收到來自傳感器的信號時,立即進行控制計算等相關(guān)操作,而當(dāng)執(zhí)行器接收到控制器傳來的信號時,立即執(zhí)行命令,驅(qū)動被控對象執(zhí)行機構(gòu),實現(xiàn)預(yù)期的調(diào)整。
不同的工作方式對系統(tǒng)的性能影響不同,事件驅(qū)動相比于時鐘驅(qū)動的優(yōu)點:節(jié)點在事件到來時立即啟動工作,無采樣等待時間,時延減少;亦避免了空采樣、時鐘同步困難等問題。其缺點是比時鐘驅(qū)動方式的實現(xiàn)難度大。
網(wǎng)絡(luò)控制系統(tǒng)中,各節(jié)點需通過網(wǎng)絡(luò)交換數(shù)據(jù),必然出現(xiàn)碰撞現(xiàn)象,網(wǎng)絡(luò)調(diào)度通過規(guī)定各節(jié)點發(fā)送次序的優(yōu)先級、發(fā)送時刻以及發(fā)送間隔,以期盡可能地避免信息沖突和網(wǎng)絡(luò)擁塞,合理分配資源,從而降低丟包率、減少網(wǎng)絡(luò)時延,達到提升網(wǎng)絡(luò)控制性能的目的。
在NCS的時延組成和性能影響等因素中,調(diào)度算法是重要因素之一。由于網(wǎng)絡(luò)負(fù)載不均衡、網(wǎng)絡(luò)資源有限,因此網(wǎng)絡(luò)控制系統(tǒng)中需合理設(shè)計調(diào)度算法,充分利用帶寬的同時盡量避免發(fā)生信息沖突,保證實時性要求,提高網(wǎng)絡(luò)控制系統(tǒng)的運行效率。
目前,網(wǎng)絡(luò)控制系統(tǒng)的調(diào)度方法主要有兩大類:靜態(tài)調(diào)度和動態(tài)調(diào)度算法。預(yù)先離線分配好各節(jié)點任務(wù)的發(fā)送次序優(yōu)先級、發(fā)送時刻和發(fā)送時間間隔等稱為靜態(tài)調(diào)度算法,例如:單調(diào)速率算法(RM)、截止期單調(diào)算法(DM)。與靜態(tài)調(diào)度算法不同,動態(tài)調(diào)度算法根據(jù)任務(wù)的變化,動態(tài)調(diào)整各節(jié)點任務(wù)的發(fā)送次序,在線動態(tài)分配網(wǎng)絡(luò)資源。如最小截止期優(yōu)先算法(EDF)。動態(tài)調(diào)度算法比靜態(tài)調(diào)度算法更能適應(yīng)不斷變化的網(wǎng)絡(luò),因此受到更多的關(guān)注。
利用MATLAB仿真網(wǎng)絡(luò)控制系統(tǒng)時,為了模擬網(wǎng)絡(luò)環(huán)境,采用了TrueTime仿真工具箱。研究中利用其搭建了仿真模型,首先仿真了網(wǎng)絡(luò)時延對NCS性能的影響。然后在一定時延條件下,通過改變數(shù)據(jù)傳輸速率、通信模式、丟包率等參數(shù),仿真分析了上節(jié)所分析的NCS基本問題中涉及的相關(guān)因素對系統(tǒng)性能的影響。
TrueTime是瑞典隆德大學(xué)自動化系于2002年推出的基于MATLAB/Simulink的NCS仿真工具箱,用來仿真分布式的實時控制系統(tǒng)和網(wǎng)絡(luò)控制系統(tǒng)。該工具箱具有豐富的功能,可以實現(xiàn)任一種網(wǎng)絡(luò)下控制系統(tǒng)與實時調(diào)度的綜合仿真研究,是目前應(yīng)用最廣的NCS仿真工具之一。
直流電機是常見的一種驅(qū)動設(shè)備,廣泛應(yīng)用于控制領(lǐng)域,如智能機器人、無人駕駛和航天航空領(lǐng)域等。直流電機響應(yīng)速度快,對控制回路中的時延比較敏感,因此選擇直流電機作為被控對象來研究時延以及存在時延情況下其他因素對網(wǎng)絡(luò)控制系統(tǒng)性能的影響,并建立仿真模型。
考慮受控對象是一直流電機,其傳遞函數(shù)為:
參考輸入采用方波,周期為1s,振幅為1.0??刂破鞑捎肈M調(diào)度算法,且為提高NCS的快速性和穩(wěn)定性,控制器采用比例微分(PD)控制算法:
參考取值:=0.01,=1,T=0.04,=100.0。
利用基于MATLAB/Simulink軟件平臺的TrueTime仿真工具箱,建立NCS仿真模型,如圖2所示,其中控制器用一個內(nèi)核模塊建模,傳感器和執(zhí)行器共用一個內(nèi)核模塊建模,網(wǎng)絡(luò)模塊用于對數(shù)據(jù)傳輸系統(tǒng)建模。
圖2,傳感器節(jié)點(sensor node)采用時鐘驅(qū)動方式,周期性的采樣輸出測量值,并通過網(wǎng)絡(luò)模塊(TrueTime network)將采樣信號發(fā)送給控制器節(jié)點(controller node)。因為控制器節(jié)點采用的是事件驅(qū)動方式,所以接收到采樣數(shù)據(jù)后,通過PD算法立即計算控制信號,然后將計算結(jié)果通過網(wǎng)絡(luò)模塊發(fā)送給執(zhí)行器節(jié)點(actuator node)。由于執(zhí)行器也采用事件驅(qū)動,所以當(dāng)接收到控制信號立即啟動工作,驅(qū)動被控對象。
利用TrueTime對NCS進行仿真時,初始化和代碼編寫是關(guān)鍵,其代碼編寫可以選擇C++或者MATLAB語言,有所不同的是,C++運行速度快但編寫難度較大,MATLAB編寫簡單更易理解。
圖2 NCS仿真模型
3.3.1時延對NCS性能的影響
仿真中,網(wǎng)絡(luò)協(xié)議采用以太網(wǎng)協(xié)議(CSMA/CD),數(shù)據(jù)傳輸速率為80kbps,最小數(shù)據(jù)幀設(shè)定為80bits,不存在數(shù)據(jù)丟失即設(shè)置網(wǎng)絡(luò)參數(shù)Loss probability=0,各節(jié)點信息調(diào)度策略采用截止期單調(diào)DM;傳感器采樣周期為10ms,仿真時間為4s。
圖3給出了時延分別為2ms、5ms、7ms、7.5ms和8ms的仿真結(jié)果。
圖3 時延對NCS性能影響的仿真結(jié)果
將兩個性能指標(biāo)數(shù)據(jù)進行分析后所得的結(jié)果如表1所示:
表1 時延與性能指標(biāo)的關(guān)系
從仿真結(jié)果可知,當(dāng)時延為2ms時,系統(tǒng)輸出能夠較好地跟隨輸入,控制性能良好,但隨著時延的增加,系統(tǒng)的超調(diào)量增大,上升時間縮短,當(dāng)時延為7ms時,系統(tǒng)超調(diào)量近似為72.79%,系統(tǒng)穩(wěn)定性迅速變差,時延進一步增大將導(dǎo)致系統(tǒng)不穩(wěn)定,時延為8ms時系統(tǒng)已振蕩發(fā)散。
3.3.2傳輸速率對NCS性能的影響
NCS中數(shù)據(jù)傳輸速率主要跟網(wǎng)絡(luò)結(jié)構(gòu)、傳輸介質(zhì)和訪問協(xié)議有關(guān),通過網(wǎng)絡(luò)模塊參數(shù)設(shè)置對話框,可以仿真不同傳輸速率對NCS性能的影響。
在仿真中,網(wǎng)絡(luò)協(xié)議采用CSMA/CD協(xié)議,傳感器采樣周期為10ms,最小數(shù)據(jù)幀設(shè)定為80bits,不存在數(shù)據(jù)丟失即設(shè)置網(wǎng)絡(luò)參數(shù)Loss probability=0,各節(jié)點信息調(diào)度策略采用截止期單調(diào)DM;時延為2ms,仿真時間為4s。
圖4給出了傳輸速率分別為40kbps、80kbps和320kbps的仿真結(jié)果。
從仿真結(jié)果可知,數(shù)據(jù)傳輸速率較低時,NCS控制性能較差;當(dāng)數(shù)據(jù)傳輸速率較高時,NCS控制效果良好,性能較為穩(wěn)定。但傳輸速率受傳輸介質(zhì)和訪問協(xié)議的限制,不可能無限增大,在實際應(yīng)用中,一般是通過合理的設(shè)計布線來保證較高的傳輸速率,而不是單純地提高傳輸速率。
圖4 數(shù)據(jù)傳輸速率對NCS性能的影響
3.3.3通信模式對NCS性能的影響
在NCS中,通信模式的不同也使NCS呈現(xiàn)出不同的性能。在仿真中,傳感器采樣周期為10ms,數(shù)據(jù)傳輸速率為80kbps,不存在數(shù)據(jù)丟失即設(shè)置網(wǎng)絡(luò)參數(shù)Loss probability=0,最小數(shù)據(jù)幀設(shè)定為80bits,各節(jié)點信息調(diào)度策略采用截止期單調(diào)DM;時延為2ms,仿真時間為4s。
圖5分別給出了以太網(wǎng)(Ethernet)、令牌總線(Round Robin)和交換式以太網(wǎng)(Switched Ethernet)的仿真結(jié)果。
圖5 通信模式對NCS性能的影響
從仿真結(jié)果可以看出,不同的通信模式所呈現(xiàn)的系統(tǒng)性能不一樣,但沒有顯著差別。在這三種通信模式中,系統(tǒng)在采用以太網(wǎng)進行數(shù)據(jù)傳輸時穩(wěn)定性最好。
3.3.4丟包對NCS性能的影響
在NCS中,大部分網(wǎng)絡(luò)根據(jù)網(wǎng)絡(luò)協(xié)議,有數(shù)據(jù)重傳機制,即在一定時限內(nèi),節(jié)點重發(fā)數(shù)據(jù),如果超過這個時限范圍,數(shù)據(jù)包便被丟棄。丟包也是影響NCS性能的重要因素。
在仿真中,網(wǎng)絡(luò)協(xié)議采用以太網(wǎng)協(xié)議(CSMA/CD),傳感器采樣周期為10ms,數(shù)據(jù)傳輸速率為80kbps,最小數(shù)據(jù)幀設(shè)定為80bits,各節(jié)點信息調(diào)度策略采用截止期單調(diào)DM;時延為2ms,仿真時間為4s。
圖6給出了丟包率分別為0、0.15、0.20和0.25的仿真結(jié)果。
圖6 丟包率對NCS性能的影響
從圖中可以看出,丟包率為0時系統(tǒng)性能較好,經(jīng)計算系統(tǒng)超調(diào)量為26.44%。隨著丟包率的增加系統(tǒng)的穩(wěn)定性越來越差,當(dāng)丟包率達到25%時系統(tǒng)已失穩(wěn)。
3.3.5調(diào)度策略對NCS性能的影響
在仿真中,網(wǎng)絡(luò)協(xié)議采用以太網(wǎng)協(xié)議(CSMA/CD),傳感器采樣周期為10ms,數(shù)據(jù)傳輸速率為80kbps,最小數(shù)據(jù)幀設(shè)定為80bits,不存在數(shù)據(jù)丟失即設(shè)置網(wǎng)絡(luò)參數(shù)Loss probability=0,時延為2ms,仿真時間為4s。
圖7、圖8分別給出了采用DM和EDF調(diào)度策略的仿真結(jié)果。
圖8 采用EDF調(diào)度策略
從仿真結(jié)果可以看出,在該仿真條件下系統(tǒng)性能穩(wěn)定,采用DM調(diào)度算法和采用EDF調(diào)度算法對系統(tǒng)控制性能影響無明顯差別。因此調(diào)度策略可以不作為研究的重點。
隨著網(wǎng)絡(luò)通信技術(shù)和計算機技術(shù)的飛速發(fā)展,網(wǎng)絡(luò)控制系統(tǒng)從根本上突破了傳統(tǒng)控制系統(tǒng)的局限性,促進了控制、計算機與通信的綜合運用和共同發(fā)展,從實踐上解決了對復(fù)雜遠地系統(tǒng)實時控制的難題,因此對NCS的研究具有十分重要的意義。
本文從NCS的復(fù)雜性和綜合性方面考慮,利用基于MATLAB的TrueTime仿真工具箱,設(shè)計并建立NCS的仿真模型,通過仿真及數(shù)據(jù)分析,研究了網(wǎng)絡(luò)時延對系統(tǒng)性能的影響,以及存在時延的情況下數(shù)據(jù)傳輸速率、丟包率、通信模式以及調(diào)度策略等因素對NCS性能的影響。
本文的仿真模型較為簡單,僅研究了單輸入單輸出的單回路控制系統(tǒng),而實際的網(wǎng)絡(luò)控制系統(tǒng)一般是多輸入多輸出的多回路分級控制復(fù)雜系統(tǒng),可以在此模型基礎(chǔ)上,對多回路分級控制的復(fù)雜系統(tǒng)進行建模,展開研究。
[1]邱占芝,張慶靈.網(wǎng)絡(luò)控制系統(tǒng)分析與控制[M].北京:科學(xué)出版社,2009.
[2]Anton C,Dan H,Martin A.TrueTime 2.0——Reference Manual [Online],Available:http:// www.control.1th.se/.
[3]張鵬輝.基于TrueTime的網(wǎng)絡(luò)控制系統(tǒng)分析與研究[D].西安:西安電子科技大學(xué),2014.
[4]Zhang W,Branicky M S,Phillips S M.Stability of networked control systems[J].IEEE Control Systems Magazine. 2001,21(1):84-99.
[5]王先鵬,周川,陳慶偉.通信受限的時延網(wǎng)絡(luò)控制系統(tǒng)動態(tài)調(diào)度與控制同步設(shè)計[J].中南大學(xué)學(xué)報(自然科學(xué)版). 2013,44(Suppl.1):109-114.
[6]王淼.網(wǎng)絡(luò)控制系統(tǒng)分析和網(wǎng)絡(luò)實驗室設(shè)計方法研究[D].沈陽建筑大學(xué),2011.67.