◇成都理工大學工程技術學院 李欣蓮 李自成 周 彬 張 媛 廖興泰 童 強
為了簡化控制系統的設計步驟并提高優化設計效率,運用Matlab軟件中Simulink庫的仿真功能建立需要分析的控制系統模型,選用直觀簡單操作的SRO軟件包整定模型中的系統參數,并運用最優計算獲得最優目標函數,SRO會自動地通過時域約束轉變為最優化約束問題來對信號約束的問題轉化,并進行最優計算矯正整定參數完成控制系統的優化設計。SOR軟件包的運用使得對控制系統的設計優化成為一種操作簡單,方法實用及高效的過程。
在控制系統設計中,優化設計是很關鍵的一點,控制系統設計的目的主要是對控制器的設計,通過矯正裝置的參數整定,使系統性能在所給的函數下達到最優[1]。優化設計主要對參數進行尋優,在以往的分析中最常用的是相平面法和描述函數法,這是一項非常復雜且繁瑣的過程,本文采用SRO軟件可以簡單高效的完成此項任務。
對控制器進行的參數整定就是對控制系統的設計。控制系統優化設計是確定所給目標函數下可以達到最優的參數,并且是在被控對象已經確定,控制器的結構和形式也都全都已知的情況下進行。圖1所示的就是優化設計過程框圖。

圖1 控制系統優化設計過程框圖
Simulink響應最優化(Simulink Response Opimization,SRO)軟件包[2]是Simalink6.0以上版本所提供的一個實用工具包,用來進行控制系統的優化設計。這個軟件包也是NCD軟件包(非線性控制設計)的升級版本。
SRO能夠通過整定模型中的系統參數來達到時域性能要求,并且模型中所存在的變量也可以通過SRO來整定。SRO簡潔、直觀的界面使得到最優的目標函數和整定參數的過程更加簡潔明了。解決最優化約束問題,就要把這個問題公式化處理,運用Matlab中的Simulink進行系統的仿真,再去對比仿真出來的結果與目標函數之間的差距后,通過最優計算去矯正整定參數。
SRO的功能與運用也就是通過給定的性能指標進行優化設計,性能指標成為約束邊界,并約束系統的階躍響應,最優化指定的整定參數。
以非線性控制系統設計為例,使用SRO軟件包進行系統最優化設計。控制系統結構圖如圖2所示。

圖2 控制系統結構圖
其單位階躍響應性能指標如表1所示。

表1 單位階躍響應性能指標
PID控制器參數的初始值為:Kp=1.76291,Ti=0.935268,Td=0.321647。被控對象模型參數wn=2rad/s,ζ≈0.9。確定滿足上述性能指標的PID控制器參數Kp、Ti和 Td。
(1)首先建立模型[3],將輸出y(t)連接signal constraint模塊,如圖3所示,并命名為exmsro.m。

圖3 exmsro.m模型
其中主要模塊參數設置:①r(t)模塊:Step time設置為0,Final time設置為1;②Transfer Fen模塊:Numerator cofficient欄填寫[wn^2];Denominator coeffici欄填寫[12*wn*zeta wn*2]。
(2)打開SRO軟件包的信號約束窗口。打開exmsro.m中的Signal Constraint模塊,信號約束窗口的顯示如圖4所示。

圖4 信號約束窗口
約束條件:Rise time為1s,Settling time為3s,Over shoot為10%。進行參數最優化時,選Enforce signal bounds項,則相應的約束信號就會位于約束邊界段內。
(3)設置期望響應約束。選擇Signal Constraint模塊窗口菜單Goals| Desired Respose,打開期望響應設置窗口[4]。再選中Specify step response characteristics按鈕,則的階躍響應性能指標設置界面,參數設置如表2所示。

表2 階躍響應性能指標參數
此時階躍響應約束形狀如圖5所示。

圖5 設置后的信號約束窗口
(4)定義變量,在模型中去定義未知的變量,本例需定義的5個變量:Kp、Ti、Td、wn及ζ。
在Matlab命令窗口中輸入:>>Kp=1.76291;Ti=0. 935268;Td=0. 321647;wn=2;zeta=0.9;隨后該5個變量被定義。
(5)指定整定參數[5]。進行參數最優化前需要指定PID控制器參數(Kp, Ti和 Td)。首先在約束窗口中打開整定參數對話然后點擊Add按鈕,打開添加參數窗口,在此參數窗口選中Kp、Td和 Ti,確定后就可以把它們添加到整定參數對話窗口中。
(6)最優計算。完成以上操作后,開始可以使用參數的最優計算(選擇信號約束窗口中的Optimization |Start)。SOR會通過工具箱中的函數來進行最優計算并調節整定參數[6]。
在Matlab的命令窗口中輸入:>>Kp,Ti,Td;運行結果為:Kp=1.8241;Ti=1.2106;Td=0.8130。
由此得到滿足上述性能指標的PID控制器參數Kp、Ti和 Td。
(7)保存項目。SRO會在創建一個最優化項目后再進行最優計算,此項目包含有階躍響應約束(來自模型中的所有信號約束窗口),以及整定參數的設置,參考信號設置,不確定參數設置,最優化設置和仿真設置。
為了使Simulink模型中的系統參數達到用時域窗口對信號對圖形約束或者跟蹤參考信號獲得的性能要求,使用SOR軟件包是快捷高效的方法。SRO還能夠整定模型中存在的變量(標量、向量及矩陣等)。使用SRO須在已有的Simulink模型中添加一個信號約束(Signal Constraint)這個特殊的模塊。在把模型中需進行約束的信號與此信號約束模塊連接,在SRO中就會自動地把時域約束轉變為最優化約束問題,最后就使用優化工具箱或遺傳算法與直接搜索工具箱中的函數進行最優化算法求解。所以在Matlab用SRO軟件包對Simulink建立的控制系統響應最優化是一種操作簡單,方法實用及高效設計的過程。