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