基于Simulink的嵌入式網(wǎng)絡(luò)化控制仿真實(shí)現(xiàn)
反饋通道延時(shí)補(bǔ)償
在反饋通道加入帶有接收緩存的預(yù)測(cè)器,緩存區(qū)存放輸入輸出歷史數(shù)據(jù)和相應(yīng)時(shí)間戳信息。傳感器在一個(gè)采樣周期內(nèi)完成對(duì)被控對(duì)象的輸出采樣,并通過(guò)網(wǎng)絡(luò)傳送采樣值,控制信號(hào)以及時(shí)間戳信息。預(yù)測(cè)器在采樣周期內(nèi),如果沒(méi)有收到傳感器從網(wǎng)絡(luò)發(fā)送的相應(yīng)時(shí)刻的采樣信號(hào),將利用緩存區(qū)數(shù)據(jù)估算采樣信號(hào)以供控制器進(jìn)行控制信號(hào)計(jì)算。
預(yù)測(cè)器采用受控自回歸模型ARX對(duì)采樣信號(hào)進(jìn)行預(yù)測(cè),其模型原型為:
對(duì)于模型參數(shù)(10)的求解,可在Simulink下根據(jù)實(shí)驗(yàn)測(cè)得的延時(shí)分布特性,選取符合延時(shí)分布規(guī)律的隨機(jī)信號(hào)模塊模擬網(wǎng)絡(luò)環(huán)境,在前向和反饋通道上通過(guò)TCP/IP模塊實(shí)現(xiàn)控制器到執(zhí)行器,傳感器到控制器的連接,組成閉合網(wǎng)絡(luò)化控制系統(tǒng)仿真框圖,進(jìn)行離線仿真,收集一系列輸入輸出數(shù)據(jù),利用漸消記憶的遞推最小二乘(13)-(15)求出。
仿真實(shí)例
本節(jié)以一直流無(wú)刷電機(jī)為例,驗(yàn)證使用本仿真系統(tǒng)實(shí)現(xiàn)網(wǎng)絡(luò)化控制實(shí)驗(yàn)的有效性。通過(guò)頻率響應(yīng)法進(jìn)行電機(jī)模型開(kāi)環(huán)辨識(shí),得到被控對(duì)象的CARIMA 模型為:
其中y 表示電機(jī)轉(zhuǎn)速,u 表示控制電壓。
使用Simulink 進(jìn)行離線仿真,網(wǎng)絡(luò)間延時(shí)用均勻分布的延時(shí)模塊模擬,求得ARX 模型為:
控制算法采用控制時(shí)域步長(zhǎng)為7 的廣義預(yù)測(cè)控制,利用Simulink 和仿真系統(tǒng)提供的模塊分別組成圖6 中虛線所包圍的A,B 兩部分,按照上述步驟,將框圖分別下載到位于不同物理空間的硬件平臺(tái)運(yùn)行,控制系統(tǒng)中各節(jié)點(diǎn)的數(shù)據(jù)在該選項(xiàng)卡中設(shè)置固定步長(zhǎng)和仿真停止時(shí)間,選擇積分求解器;單擊Real-Time Workshop 標(biāo)簽,在該選項(xiàng)卡中設(shè)置系統(tǒng)目標(biāo)文件,模板聯(lián)編文件,Make 命令等,在Category 下拉列表中選擇xPC Targetgeneration options 選項(xiàng),可以設(shè)置緩沖區(qū)大小,目標(biāo)對(duì)象名字等。
(4)創(chuàng)建和下載目標(biāo)應(yīng)用程序。設(shè)置完仿真參數(shù),在Simulink 模型窗口中按Ctrl+B,就可以生成C 代碼,并對(duì)其編譯、連接生成可執(zhí)行的目標(biāo)應(yīng)用程序,并自動(dòng)將其下載到目標(biāo)機(jī)上。
(5)控制目標(biāo)應(yīng)用程序以及信號(hào)跟蹤。目標(biāo)應(yīng)用程序下載完成之后,在MATLAB 窗口輸入+tg(或-tg)或者在目標(biāo)機(jī)命令行輸入start(或stop)可以啟動(dòng)(或停止)目標(biāo)應(yīng)用程序。在Simulink 模型中添加xPC Target Scope 模塊,可以在目標(biāo)機(jī)上添加示波器,顯示需要的信號(hào)。
linux操作系統(tǒng)文章專(zhuān)題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論