MATLAB mpctoolbox學習筆記

MATLAB mpctoolbox學習筆記

來自專欄 MATLAB學習

首先通過一個實例來學習使用MPC設計器

線性化模型

首先,要建立一個線性化模型模型

一般而言,需要將模型描述為狀態空間的格式

其中,

基於該動力學模型,建立狀態方程的SS模型:

A = [-0.0285 -0.0014; -0.0371 -0.1476];

B = [-0.0850 0.0238; 0.0802 0.4462];

C = [0 1; 1 0];

D = zeros(2,2);

CSTR = ss(A,B,C,D);

此時在matlab的工作空間中,已經出現了這些參數。打開MPC Designer

在MPCdesigner選項卡中,點擊MPC Structure

此時,在中間部分的select a model or an MPC controller中,會出現工作空間里已經定義好的MPC規格的數據形式。

在控制器的採樣時間選項中,具體數值需要根據動力學系統,其中TR是動力學模型的平均上升時間。

對於inputs中的三個通道,第一個通道是控制變數第二個輸入是無法測量的干擾

第一個輸出是測量的輸出量,第二個輸出是指未測量的輸出量。

確定好數值後,點擊Define and import

此時mpc結構已經定義完成,無法再當前的mpc designer對話框中進行更改。如果要使用不同的通道配置,需要啟用一個新的session。

通過調整視圖,可以將視圖調整為左側右側或者頂端底端等形式,方便調整。

定義輸入輸出通道屬性

在MPCdesigner選項卡中,找到I/O Attributes。

在輸入輸出通道設置裡面,可以調整每個通道的名稱以及單位;

由於狀態空間模型是使用與標稱工作點的偏差定義的,因此將每個輸入和輸出通道的標稱值設定為0,每個通道的比例因子保持為默認值1.

點擊OK後,輸入響應以及輸出響應會發生比那話,出現了新的信號名稱和單位。

配置模擬場景

在mpc designer選項卡的Scenario 選項中,點擊Scenario→scenario1.

將模擬持續時間設置為30秒;

在參考信號表的第一行中,指定步長和時間分別為2和5.

在信號列的第二行中,選擇常量參考已將設定值保持在其標稱值。

配置控制器的參數

在Tuning選項卡的Horizons部分中,指定預測範圍為15,控制範圍為3.注意,在這裡,各參數的名稱為:Prediction horizon以及control horizon

定義輸入限制

在Tuning(design)選項卡中,找到constraints。在對話框里,可以進行上限限值以及變化率的上下限值的設置。

通過performance tuning中的兩個滾輪可以調整超調量。

當使用歡快調整控制器的權重時,不會更改權重對話框中已經設定的權重。而是控制調整因子,該調整因子跟用戶指定的權重一起使用定義實際控制器的權重。當滑塊居中時,此因子為1; 滑塊向左移動時其值減小,滑塊向右移動時值增大。 加權因子乘以操縱變數和輸出變數權重,並從權重對話框中劃分操縱變數權重。

要查看實際控制器權重,請將控制器導出到MATLAB?工作空間,然後查看導出的控制器對象的權重屬性。

指定濃度輸出約束

以前,您定義了控制器調整權重,以實現跟蹤反應堆溫度設定點的主要控制目標,其中零穩態誤差。 這樣做可以使未測量的反應器濃度自由變化。 假設一旦反應器濃度超過3 kgmol / m3,就會指定輸出約束。(硬翻譯的)

在「tuning」選項卡上的「設計」部分中,單擊「約束」。

在「約束」對話框的「輸出約束」部分(表的第二行)中,指定「最大未測量輸出(UO)」值為3。

在「輸出約束」部分中,單擊「約束柔化設置」。

默認情況下,所有輸出約束都是軟的,這意味著它們的MinECR和MaxECR值大於零。 要進一步軟化未測量的輸出(UO)約束,請增加其MaxECR值。

輸出mpc

在「調整」選項卡的「分析」部分中,單擊「導出控制器」以將調優控制器mpc1保存到MATLAB工作空間。


推薦閱讀:

國學泰斗樓宇烈老師《講述中國傳統文化》課堂筆記
樂育堂語錄學習筆記
【探索門命學講座筆記】2013年高級班講座(2)
(2)讀史筆記(六十七)秦末漢初
健康之路20160820:捏捏打打享健康(四)【視頻+筆記】

TAG:MATLAB | 科技 | 筆記 |