《MATLAB在自動(dòng)控制中的應(yīng)用》課件第6章_第1頁
《MATLAB在自動(dòng)控制中的應(yīng)用》課件第6章_第2頁
《MATLAB在自動(dòng)控制中的應(yīng)用》課件第6章_第3頁
《MATLAB在自動(dòng)控制中的應(yīng)用》課件第6章_第4頁
《MATLAB在自動(dòng)控制中的應(yīng)用》課件第6章_第5頁
已閱讀5頁,還剩174頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第6章反饋控制系統(tǒng)分析與設(shè)計(jì)工具6.1LTIViewer及使用6.2SISO設(shè)計(jì)工具及使用6.3Simulink響應(yīng)最優(yōu)化軟件包

6.1LTIViewer及使用

LTIViewer是一種簡(jiǎn)化分析、觀察及處理線性定常系統(tǒng)響應(yīng)曲線的圖形用戶界面。應(yīng)用LTIViewer,不僅可以觀察與比較相同時(shí)間內(nèi)單輸入單輸出系統(tǒng)、多輸入多輸出系統(tǒng)及多個(gè)線性系統(tǒng)的響應(yīng)曲線,還可以繪制時(shí)間及頻率響應(yīng)曲線,進(jìn)而獲得系統(tǒng)的時(shí)域和頻域性能指標(biāo)。LTIViewer可以顯示線性模型的下列圖形形式:

(1)單位階躍響應(yīng)與單位脈沖響應(yīng)曲線。(2)Bode圖及Nyquist曲線。(3)Nichols曲線。(4)零極點(diǎn)圖。(5)任意輸入信號(hào)作用下的響應(yīng)曲線。(6)由給定初始狀態(tài)產(chǎn)生的零輸入響應(yīng)(僅對(duì)狀態(tài)空間模型而言)。

其中,時(shí)間響應(yīng)及零極點(diǎn)圖僅對(duì)傳遞函數(shù)模型、狀態(tài)空間模型及零極點(diǎn)增益模型有效。在同一個(gè)圖形界面中,LTIViewer最多可以同時(shí)顯示6種上述圖形。此外,它不僅可以顯示同一個(gè)模型的不同圖形,還可以顯示不同模型的不同圖形,

其調(diào)用格式如下:

ltiviewltiview(sys1,sys2,…,sysN)

ltiview(sys1,PlotStyle1,sys2,PlotStyle2,…)

ltiview(′plottype′,sys1,sys2,…,sysN)

ltiview(′plottype′,sys1,PlotStyle1,sys2,PlotStyle2,…)

ltiview(′plottype′,sys,extras)

說明:①缺省輸入變量時(shí),初始化并打開一個(gè)線性定常系統(tǒng)響應(yīng)分析的LTIViewer。②在打開LTIViewer的同時(shí)將sys1,sys2,…,sysN等N個(gè)線性定常模型的響應(yīng)曲線顯示在圖形窗口中,曲線形式由字符串′plottype′指定,包括′step′,′impulse′,′initial′,′lsim′,′pzmap′,′bode′,′nyquist′,′nichols′等,該字符串還可以最多達(dá)6個(gè),由這些曲線名稱可以組成元胞向量,如{′step′;′nyquist′};如果沒有指定曲線的形式(即不包含字符串′plottype′),

則繪制單位階躍響應(yīng)曲線。

③在圖形窗口中所繪制曲線的屬性如顏色、線型等分別由相應(yīng)的PlotStyle1,PlotStyle2,…,PlotStyleN確定,缺省情況下自動(dòng)確定。④由字符串′plottype′指定曲線繪制函數(shù)名稱,該函數(shù)所需要的輸入變量由extras指定,extras取決于所繪制的曲線。例如,當(dāng)指定曲線為單位階躍響應(yīng)曲線時(shí),extras可以是響應(yīng)時(shí)間(Tfinal);如果指定曲線為零輸入響應(yīng),則extras必須包含初始條件,也可以包含響應(yīng)時(shí)間。⑤在打開LTIViewer的同時(shí),可以通過變量extras對(duì)所繪制曲線的顯示及屬性等進(jìn)行設(shè)置,還可以在打開以后,通過鼠標(biāo)操作,

進(jìn)行曲線的各種設(shè)置。

【例6.1】線性定常系統(tǒng)的傳遞函數(shù)為

(6.1)

建立系統(tǒng)的傳遞函數(shù)模型?!窘狻吭贛ATLAB命令窗口中輸入:>>G=tf(1.5,[11440.02])運(yùn)行結(jié)果為:

Transferfunction:1.5

s^2+14s+40.026.1.1LTIViewer顯示窗口打開LTIViewer顯示窗口的方式很多,這里主要介紹兩種。

1.打開一新的LTIViewer在MATLAB命令窗口中輸入:

>>ltiview運(yùn)行后得到LTIViewer的缺省顯示界面如圖6.1(a)所示。

圖6.1LTIViewer顯示窗口(a)

打開空窗口;

(b)

打開窗口并導(dǎo)入系統(tǒng)模型

2.打開LTIViewer的同時(shí)導(dǎo)入系統(tǒng)模型

打開LTIViewer時(shí),導(dǎo)入例6.1的數(shù)學(xué)模型,并顯示其單位階躍響應(yīng)曲線。則在MATLAB命令窗口中輸入:

>>ltiview(G)運(yùn)行后得到LTIViewer的顯示界面如圖6.1(b)所示。如前所示,如果沒有指定曲線的形式,MATLAB顯示其單位階躍響應(yīng)曲線。若希望在打開LTIViewer顯示窗口的同時(shí),顯示單位階躍響應(yīng)曲線和Nyquist曲線,則在MATLAB命令窗口輸入下述命令并運(yùn)行即可:

>>ltiview({′step′;′nyquist′},

G)

6.1.2模型數(shù)據(jù)的導(dǎo)入選擇圖6.1(a)菜單中的“File|Import…”,打開導(dǎo)入系統(tǒng)數(shù)據(jù)(ImportSystemData)窗口(見圖6.2),該窗口顯示了當(dāng)前MATLAB工作空間中的所有模型,例如例6.1的模型G。在該窗口中,可以選定MATLAB當(dāng)前工作空間中的模型數(shù)據(jù)及MAT文件數(shù)據(jù)。選擇以MAT文件形式導(dǎo)入的數(shù)據(jù)時(shí),圖6.2中左下部的MAT文件名稱及存在路徑選項(xiàng)會(huì)由禁用(灰色)變?yōu)榭捎茫ê谏?。設(shè)定MAT文件的名稱和路徑后,

單擊“OK”按鈕即可。

6.2系統(tǒng)數(shù)據(jù)導(dǎo)入界面

6.1.3圖形窗口中顯示曲線的設(shè)置打開LTIViewer顯示窗口后,可以直接在其圖形窗口中對(duì)顯示的曲線進(jìn)行各種操作,這些操作通過右擊菜單選項(xiàng)完成。方法是,用鼠標(biāo)右鍵單擊圖形窗口,得到右擊菜單,如圖6.3(a)與(b)所示。該菜單的主要控制及選項(xiàng)包括:

圖6.3LTIViewer的右擊菜單(a)

響應(yīng)曲線設(shè)定;

(b)

曲線參數(shù)設(shè)定

(1)PlotTypes:用以改變當(dāng)前窗口中顯示的圖形形式。包括單位階躍響應(yīng)(Step)、單位脈沖響應(yīng)(Impulse)、Bode圖(Bode)、對(duì)數(shù)幅頻特性曲線(BodeMagnitude)、Nyquist圖(Nyquist)及Nichols曲線(Nichols)等。

(2)Systems:選擇或清除在當(dāng)前窗口顯示的系統(tǒng)模型,其應(yīng)用見6.1.5節(jié)。

(3)Characteristics:當(dāng)前圖形的附加信息。該信息因圖形的不同而異,如Bode圖包括穩(wěn)定裕度,單位階躍響應(yīng)包括上升時(shí)間、峰值時(shí)間等。例如需要在單位階躍響應(yīng)曲線上得到調(diào)節(jié)時(shí)間,選擇圖6.3(b)菜單中的“Characterists|SettingTime”,得到如圖6.4所示的單位階躍響應(yīng)曲線,圖中“●”表示調(diào)節(jié)時(shí)間位置,將光標(biāo)移動(dòng)至該點(diǎn),就會(huì)得到當(dāng)前顯示曲線所表征的系統(tǒng)及調(diào)節(jié)時(shí)間。

6.4單位階躍響應(yīng)曲線中調(diào)節(jié)時(shí)間顯示

6.5單位階躍響應(yīng)的特性編輯器

(4)Grid:為當(dāng)前圖形添加網(wǎng)格線。

(5)Properties…:用鼠標(biāo)左鍵單擊該選項(xiàng),可打開當(dāng)前顯示圖形的屬性編輯器(PropertyEditor),如圖6.5所示。可以利用屬性編輯器對(duì)當(dāng)前顯示曲線的特性進(jìn)行重新設(shè)定。圖6.5為給定的單位階躍響應(yīng)曲線性能指標(biāo)的誤差范圍及上升時(shí)間的定義重新設(shè)定。屬性編輯器窗口缺省顯示的是標(biāo)簽“Labels”選項(xiàng)。

6.1.4多種響應(yīng)形式的配置在一個(gè)圖形窗口中,LTIViewer最多可以同時(shí)顯示6種曲線,此6種曲線顯示的圖形形式及在窗口中的位置通過下述方法確定。選擇圖6.1(a)或(b)窗口菜單“Edit|PlotConfigurations…”,打開圖形配置對(duì)話框,如圖6.6所示。圖中,“Selectaresponseplotconfiguration”區(qū)域顯示了6種可能的曲線配置形式,用鼠標(biāo)左鍵單擊配置形式左上角的單選按鈕,就可以選擇相應(yīng)的配置形式;響應(yīng)形式(Responsetype)為每一標(biāo)號(hào)區(qū)域所顯示的圖形格式,用鼠標(biāo)左鍵單擊該標(biāo)號(hào)顯示的圖形顯示,打開下拉式菜單,從中可選擇所顯示的曲線形式。圖

6.6圖形配置對(duì)話框

6.1.5多個(gè)模型曲線的顯示如前所述,LTIViewer還可以在一個(gè)顯示窗口中顯示不同模型的不同圖形。下面舉例說明。

【例6.2】已知兩個(gè)線性定常系統(tǒng)的傳遞函數(shù)模型分別為(6.2)

要求在一個(gè)圖形窗口中顯示多種模型與多類曲線。

【解】(1)建立傳遞函數(shù)模型。在MATLAB命令窗口中輸入:>>G1=tf([48.430.860],[14.1217.430.860]);>>G2=tf([21.215.17.5],[12.1210.215.17.5])(2)顯示兩個(gè)模型的單位階躍響應(yīng)曲線。打開LTIViewer的顯示窗口,導(dǎo)入G1、G2模型數(shù)據(jù),如圖6.7所示。在圖6.7中,同時(shí)選中G1、G2,再用鼠標(biāo)左鍵單擊“OK”按鈕,則同時(shí)導(dǎo)入G1(s)和G2(s)兩個(gè)系統(tǒng)模型,

得到的單位階躍響應(yīng)曲線如圖6.8所示。

6.7導(dǎo)入系統(tǒng)數(shù)據(jù)窗口

6.8單位階躍響應(yīng)曲線

(3)顯示多個(gè)模型的多類曲線。在MATLAB命令窗口中直接輸入:

>>ltiview({′step′;′bode′},G1,G2)運(yùn)行后得到G1(s)和G2(s)的單位階躍響應(yīng)曲線和Bode圖如圖6.9所示。

6.9同時(shí)得到的單位階躍響應(yīng)曲線和Bode圖

使用LTIViewer圖形窗口,還可以從圖6.6所示的圖形配置對(duì)話框選擇同時(shí)顯示一種以上圖形的形式。圖6.10為同時(shí)顯示4種圖形的情形。

6.10同時(shí)顯示4種曲線形式

6.1.6模型顯示的選擇缺省情況下,LTIViewer圖形窗口顯示已經(jīng)導(dǎo)入的所有模型的曲線,也可以在不同的區(qū)域僅顯示所需模型的曲線,而將其他模型的曲線隱藏起來。下面仍然以例6.2說明。例6.2的響應(yīng)曲線如圖6.9(或圖6.10)所示,圖中同時(shí)顯示兩個(gè)模型曲線。用鼠標(biāo)右鍵單擊顯示區(qū)域(不包含曲線),從彈出的菜單中選擇“Systems”,G1和G2前面均出現(xiàn)“√”(見圖6.11)。若不需要顯示其中某一個(gè)模型曲線,

則用鼠標(biāo)左鍵單擊該模型名稱,去掉它前面的“√”即可。

圖6.11選擇顯示模型6.2SISO設(shè)計(jì)工具及使用

SISO設(shè)計(jì)工具(SISODesignTool)是MATLAB提供的能夠分析及調(diào)整單輸入單輸出反饋控制系統(tǒng)的圖形用戶界面。使用此工具,可以以圖形形式進(jìn)行控制系統(tǒng)校正裝置的綜合。依據(jù)校正裝置所處的位置,使用SISO設(shè)計(jì)工具可以設(shè)計(jì)四種類型的反饋控制系統(tǒng),如圖6.12所示。圖中,C(s)為校正裝置(Compensator)的數(shù)學(xué)模型,G(s)為被控對(duì)象(Plant)的數(shù)學(xué)模型,H(s)是傳感器(Sensor)(即反饋環(huán)節(jié))的數(shù)學(xué)模型,F(xiàn)(s)為濾波器(Prefilter)的數(shù)學(xué)模型,它們傳遞函數(shù)的缺省值均為1。組成該系統(tǒng)的四個(gè)環(huán)節(jié)或系統(tǒng)的數(shù)學(xué)模型參數(shù)都可以采用三種方式導(dǎo)入:工作空間(Workspace)、MAT文件或Simulink仿真環(huán)境。校正裝置可以依據(jù)時(shí)域或頻域性能指標(biāo)設(shè)計(jì),設(shè)計(jì)的方法包括頻域法、根軌跡法和Nichols圖法。

圖6.12SISO設(shè)計(jì)工具研究的反饋系統(tǒng)結(jié)構(gòu)(a)校正裝置位于前向通道(缺?。唬╞)按輸入補(bǔ)償?shù)膹?fù)合校正;(c)

校正裝置位于反饋通道;

(d)

校正裝置位于局部回路

SISO設(shè)計(jì)工具的應(yīng)用包括:(1)應(yīng)用根軌跡法改善閉環(huán)系統(tǒng)的動(dòng)態(tài)特性。(2)改變開環(huán)系統(tǒng)Bode圖的形狀。(3)添加校正裝置的極點(diǎn)和零點(diǎn)。(4)添加及調(diào)整超前/滯后網(wǎng)絡(luò)和濾波器。(5)檢驗(yàn)閉環(huán)系統(tǒng)響應(yīng)(應(yīng)用LTIViewer)。(6)調(diào)整相位及幅值裕度。(7)

實(shí)現(xiàn)連續(xù)時(shí)間模型及離散時(shí)間模型之間的轉(zhuǎn)換。

SISO設(shè)計(jì)工具的調(diào)用格式及說明如下:格式:

sisotool

sisotool(plant)

sisotool(plant,comp)

sisotool(views)

sisotool(views,plant,comp,sensor,prefilt)說明:①缺省輸入變量時(shí),打開一個(gè)用于校正裝置設(shè)計(jì)的SISO設(shè)計(jì)工具窗口,可以在該界面中應(yīng)用根軌跡法或Bode圖法設(shè)計(jì)單輸入單輸出系統(tǒng)的校正裝置。

②打開SISO設(shè)計(jì)工具的同時(shí)還可以將plant、comp、sensor和prefilt所表示的數(shù)學(xué)模型分別導(dǎo)入至被控對(duì)象(G(s))、校正裝置(C(s))、傳感器(即反饋環(huán)節(jié))或?yàn)V波器。上述四種模型均為單輸入單輸出線性定常形式,且可以為傳遞函數(shù)、狀態(tài)空間模型或零極點(diǎn)增益模型中的任何一種。③views用來指定在打開SISO設(shè)計(jì)工具的同時(shí)所顯示圖形的形式,它可以為下述字符串中的一種或其幾種的組合:′rlocus′(根軌跡圖),′bode′(開環(huán)系統(tǒng)的Bode圖),′nichols′(Nichols圖),′filter′(濾波器F(s)的Bode圖及由輸入F(s)到校正裝置G(s)輸出的閉環(huán)響應(yīng))。6.2.1SISO設(shè)計(jì)工具窗口

SISO設(shè)計(jì)工具的打開方式很多,以下主要介紹兩種方法。為了方便,仍然采用例6.1模型為被控對(duì)象的數(shù)學(xué)模型,且在MATLAB工作空間中已經(jīng)建立了該模型。

1.打開SISO設(shè)計(jì)工具

在MATLAB命令窗口中輸入:

>>sisotool運(yùn)行后打開SISO設(shè)計(jì)工具,如圖6.13(a)所示。

圖6.13SISO設(shè)計(jì)工具窗口(a)

未導(dǎo)入系統(tǒng)數(shù)據(jù);

(b)

已導(dǎo)入系統(tǒng)數(shù)據(jù)

2.打開SISO設(shè)計(jì)工具并導(dǎo)入系統(tǒng)數(shù)據(jù)在MATLAB命令窗口中輸入:

>>sisotool(G)運(yùn)行后打開的SISO設(shè)計(jì)工具如圖6.13(b)所示。圖中,SISO設(shè)計(jì)工具顯示對(duì)象的屬性有:

·

極點(diǎn)(以“×”表示);

·

零點(diǎn)(以“○”表示);

·缺省情況下,

在Bode圖的左下方分別顯示幅值裕度和相位裕度及相應(yīng)參數(shù)。

6.14選定顯示曲線菜單

6.2.2系統(tǒng)數(shù)據(jù)的導(dǎo)入

SISO設(shè)計(jì)工具中系統(tǒng)數(shù)據(jù)的導(dǎo)入方法與LTIViewer圖形窗口類似。在圖6.13(a)中選擇菜單“File|Import…”,打開圖6.15所示的導(dǎo)入系統(tǒng)數(shù)據(jù)對(duì)話框。選中“SystemData”區(qū)域?qū)υ捒蛑械腉,再用鼠標(biāo)左鍵單擊其左邊的導(dǎo)入按鈕“>”,便將模型G的數(shù)據(jù)導(dǎo)入到對(duì)象數(shù)據(jù)區(qū)中。其他模型數(shù)據(jù)的導(dǎo)入方法與之相同。利用圖6.15還可以導(dǎo)入MAT文件形式或Simulink中的系統(tǒng)數(shù)據(jù),方法與前述LTIViewer中的類似,這里不再贅述。

6.15導(dǎo)入系統(tǒng)數(shù)據(jù)對(duì)話框

6.2.3響應(yīng)曲線的設(shè)定進(jìn)行校正裝置參數(shù)設(shè)計(jì)時(shí),應(yīng)用SISO設(shè)計(jì)工具可以很方便地得到系統(tǒng)的各種響應(yīng)(如單位階躍響應(yīng)、單位脈沖響應(yīng)等)曲線,而且還可以指定響應(yīng)曲線的起點(diǎn)和終點(diǎn)。例如,選擇圖6.13中菜單“Analysis|OtherLoopResponse…”,打開圖6.16所示響應(yīng)圖形建立窗口。其缺省設(shè)置為由參考輸入信號(hào)r(t)至輸出信號(hào)y(t)的閉環(huán)單位階躍響應(yīng)。由圖6.16還可以得到開環(huán)系統(tǒng)及閉環(huán)系統(tǒng)的各種曲線。用鼠標(biāo)左鍵單擊圖6.16中的“OK”按鈕,可得到由G(s)、C(s)、H(s)、F(s)等按照?qǐng)D6.16所示的形式構(gòu)成系統(tǒng)(其中,C(s)、H(s)和F(s)的缺省傳遞函數(shù)為1,G(s)的傳遞函數(shù)已經(jīng)在6.2.2節(jié)導(dǎo)入)的單位階躍響應(yīng)曲線,如圖6.17所示。由圖可見,此時(shí)被控對(duì)象的單位階躍響應(yīng)的調(diào)節(jié)時(shí)間約為1.5秒,在實(shí)際應(yīng)用中這是非常緩慢的,同時(shí)系統(tǒng)還存在著非常大的穩(wěn)態(tài)誤差。

6.16響應(yīng)圖形建立窗口

6.17閉環(huán)系統(tǒng)的單位階躍響應(yīng)曲線

6.2.4右擊菜單的使用

SISO設(shè)計(jì)工具的使用十分方便,設(shè)計(jì)操作既可以在圖6.13所示的顯示窗口完成,也可以使用右擊菜單完成。例如,用鼠標(biāo)右鍵單擊Bode圖中對(duì)數(shù)幅頻特性曲線的空白處,可得到圖6.18所示的右擊菜單,它包含設(shè)計(jì)工具的許多特性。下面介紹應(yīng)用SISO設(shè)計(jì)工具提供的幾種方法改善閉環(huán)系統(tǒng)的單位階躍響應(yīng)及穩(wěn)態(tài)誤差。

圖6.18Bode圖右擊菜單6.2.5Bode圖設(shè)計(jì)方法校正裝置設(shè)計(jì)的方法之一是基于系統(tǒng)開環(huán)對(duì)數(shù)頻率響應(yīng)曲線(Bode圖)的設(shè)計(jì)方法,它可以根據(jù)系統(tǒng)的增益及相位裕度要求,調(diào)節(jié)系統(tǒng)的帶寬等。本節(jié)介紹在開環(huán)Bode圖編輯器中進(jìn)行校正裝置設(shè)計(jì)的方法。設(shè)被控對(duì)象的數(shù)學(xué)模型見例6.1,設(shè)計(jì)要求包括:(1)上升時(shí)間小于0.5s。(2)穩(wěn)態(tài)誤差小于0.05。(3)最大超調(diào)量小于10%。(4)幅值裕度大于20dB。(5)

相位裕度大于40°。

1.調(diào)節(jié)校正裝置增益

1)用鼠標(biāo)在對(duì)數(shù)幅頻特性曲線上調(diào)節(jié)具體步驟為:(1)將鼠標(biāo)指針移至Bode圖中的對(duì)數(shù)幅頻特性曲線上。(2)按下鼠標(biāo)左鍵,此時(shí)指針形狀變化為手形。(3)將對(duì)數(shù)幅頻特性曲線向上移動(dòng),此時(shí)系統(tǒng)的增益和極點(diǎn)會(huì)隨著曲線的移動(dòng)而發(fā)生變化。(4)

釋放鼠標(biāo)左鍵。

2)直接給定校正裝置增益的精確值具體步驟為:首先打開校正裝置參數(shù)編輯窗口(見圖6.19)。有下述幾種方法可以使用:一是用鼠標(biāo)左鍵單擊圖6.13“CurrentCompensator”方框中任意位置;二是用鼠標(biāo)左鍵單擊圖6.13校正裝置結(jié)構(gòu)中的“C”(紅色);三是用鼠標(biāo)右鍵單擊對(duì)數(shù)幅頻特性曲線,從彈出的菜單中選擇“EditCompensator…”;四是在圖6.13的菜單中選擇菜單“Compensators|Edit|C”(見圖6.20)。然后在圖6.19中的增益(Gain)編輯框中直接輸入增益值,再用鼠標(biāo)左鍵單擊“OK”按鈕即可。

6.19校正裝置參數(shù)編輯窗口

6.20選擇校正裝置菜單

2.帶寬調(diào)節(jié)

設(shè)計(jì)要求包括上升時(shí)間為0.5s(即從終值的10%上升到90%所需的時(shí)間),嘗試設(shè)置校正裝置的增益,以使被控對(duì)象的截止頻率等于3rad/s。相對(duì)于一階系統(tǒng)而言,設(shè)置帶寬為3rad/s,相當(dāng)于時(shí)間常數(shù)約為0.33秒。為了便于觀察,首先選擇圖6.18中的菜單“Grid”,為曲線添加網(wǎng)格線。然后將指針移動(dòng)到Bode圖中對(duì)數(shù)幅頻特性曲線上,按下鼠標(biāo)左鍵,當(dāng)鼠標(biāo)形狀變化為手形時(shí),上下移動(dòng)對(duì)數(shù)幅頻特性曲線,直至顯示的截止頻率為3rad/s(見圖6.21)。由圖可見,當(dāng)截止頻率為3rad/s時(shí),校正裝置的增益約為38。此時(shí)系統(tǒng)的單位階躍響應(yīng)如圖6.22所示(注意,在改變校正裝置增益時(shí),應(yīng)保持單位階躍響應(yīng)曲線窗口為打開狀態(tài))。

6.21帶寬調(diào)節(jié)示意圖

6.22校正裝置增益為38時(shí)閉環(huán)系統(tǒng)的單位階躍響應(yīng)

3.添加積分器

減小穩(wěn)態(tài)誤差的方法之一是添加積分器。添加的方法是選擇圖6.18中的菜單“AddPole/Zone|Integrator”(見圖6.23)即可。

6.23應(yīng)用右擊菜單添加積分器

注意,添加的積分器會(huì)改變系統(tǒng)的截止頻率,所以必須重新調(diào)節(jié)校正裝置的增益以使截止頻率仍然為3弧度/秒,此時(shí)校正裝置的增益約為100。SISO設(shè)計(jì)工具將添加的積分器以紅色“×”表示在根軌跡圖中的原點(diǎn)處(見圖6.24)。

6.24SISO設(shè)計(jì)工具顯示根軌跡圖上的積分器

6.25校正裝置含有積分器時(shí)的單位階躍響應(yīng)曲線

4.添加超前網(wǎng)絡(luò)

根據(jù)設(shè)計(jì)要求,幅值裕度大于或等于20分貝,相位裕度大于或等于40°,顯然,目前設(shè)計(jì)的校正裝置未能滿足這一要求,下面的工作就是在減小上升時(shí)間的同時(shí),提高穩(wěn)定裕度。一種有效方法就是增加增益以加快響應(yīng)速度,但是,由于系統(tǒng)已經(jīng)處于欠阻尼狀態(tài),再增加增益就會(huì)減少系統(tǒng)的穩(wěn)定裕度,因而這時(shí)可以考慮改善校正裝置的動(dòng)態(tài)特性。一個(gè)可能采取的措施是對(duì)校正裝置增加超前網(wǎng)絡(luò)。為了便于觀察,首先將Bode圖的x軸適當(dāng)放大。方法是:在圖6.18所示菜單中選擇“Zoom|InX”,然后在對(duì)數(shù)幅頻特性曲線上用鼠標(biāo)左鍵單擊以確定放大區(qū)域,如在ω=1rad/s處按住左鍵直到ω=50rad/s處再釋放(見圖6.26)。

6.26添加超前網(wǎng)絡(luò)后的SISO設(shè)計(jì)工具

為了添加超前網(wǎng)絡(luò),

選擇圖6.23中菜單“AddPole/Zone|Lead”,

此時(shí)光標(biāo)放置在對(duì)數(shù)幅頻特性曲線上最右極點(diǎn)的右邊,

再單擊鼠標(biāo)左鍵,則圖

6.24和圖6.25分別變化為圖6.26和圖6.27。

6.27添加超前網(wǎng)絡(luò)后的單位階躍響應(yīng)曲線

5.改變校正裝置的極點(diǎn)和零點(diǎn)為了提高單位階躍響應(yīng)速度,將超前網(wǎng)絡(luò)的零點(diǎn)移動(dòng)到靠近被控對(duì)象最左邊(響應(yīng)最慢)的極點(diǎn)。方法是:用鼠標(biāo)左鍵按住該零點(diǎn)并移動(dòng);將超前網(wǎng)絡(luò)的極點(diǎn)向右移動(dòng),注意觀察此時(shí)幅值裕度會(huì)增加,還要按照前述方法減小增益及增加穩(wěn)定裕度。最后得到滿足要求的校正裝置參數(shù)最終設(shè)計(jì)值為:(1)極點(diǎn):0和-28。(2)零點(diǎn):-4.3。(3)增益:84。這時(shí),圖6.26和圖6.27分別變化為圖6.28和圖6.29。由圖6.28和圖6.29可見,閉環(huán)系統(tǒng)的幅值裕度約為22分貝,相位裕度約為66°,上升時(shí)間約為0.45秒,超調(diào)量為3.31%。因此所有指標(biāo)均滿足設(shè)計(jì)要求。

6.28校正裝置滿足要求時(shí)的SISO設(shè)計(jì)工具

6.29校正裝置滿足要求時(shí)的單位階躍響應(yīng)曲線

6.添加前置濾波器前置濾波器的典型應(yīng)用包括:

(1)實(shí)現(xiàn)或接近前饋跟蹤以減小反饋回路負(fù)擔(dān)(此時(shí)穩(wěn)定裕度很小)。

(2)過濾掉指令(參考)信號(hào)中的高頻分量,以限制超調(diào)量或避免對(duì)象的激勵(lì)共振模態(tài)。常見的前置濾波器為簡(jiǎn)單的低通濾波器,用它來降低輸入信號(hào)中的噪聲。應(yīng)用SISO設(shè)計(jì)工具可以添加和修改前置濾波器。這時(shí)首先打開前置濾波器的Bode圖,隱藏開環(huán)Bode圖。方法是,用鼠標(biāo)左鍵選擇SISO設(shè)計(jì)工具主界面的“View|PrefilterBode”菜單,去掉該菜單中“Open

LoopBode”前面的“√”,

在“PrefilterBode”前面加入“√”,得到前置濾波器的Bode圖(見圖6.30)。

6.30打開前置濾波器的Bode圖

前置濾波器傳遞函數(shù)的缺省值為1,可以采用與前述調(diào)整校正裝置參數(shù)相同的方法對(duì)前置濾波器添加極點(diǎn)、零點(diǎn)及調(diào)節(jié)增益。主要包括下述三種方法。

1)直接指定前置濾波器增益的精確值具體步驟如下:

(1)在圖6.13所顯示的反饋結(jié)構(gòu)中,用鼠標(biāo)左鍵單擊右上部的“F”,打開如圖6.31所示的前置濾波器參數(shù)編輯窗口。(2)在圖6.20中選擇“F”,也可以打開圖6.31所示的窗口。一旦打開了圖6.31所示前置濾波器參數(shù)編輯窗口,就可以按照與設(shè)置校正裝置參數(shù)相同的方法設(shè)置前置濾波器參數(shù)。

圖6.31前置濾波器參數(shù)編輯窗口

2)在前置濾波器參數(shù)編輯窗口中設(shè)置增益方法是:用鼠標(biāo)右鍵單擊圖6.30中的Bode圖,從彈出的菜單(見圖6.18)中選擇菜單“EditCompensator...”,打開與圖6.19相同的窗口。注意,此時(shí)開環(huán)系統(tǒng)Bode圖位置顯示的是前置濾波器的Bode圖,所以圖6.31為前置濾波器參數(shù)編輯窗口。在圖6.31中,不僅可以調(diào)節(jié)前置濾波器的增益(Gain),

而且還可以設(shè)置其極點(diǎn)(Poles)和零點(diǎn)(Zeros)。

添加前置濾波器的一種快速方法是增加一對(duì)共軛極點(diǎn)。方法是:首先為前置濾波器Bode圖加入網(wǎng)格線,然后在圖6.18所示菜單中選擇菜單“AddPole/Zero|ComplexPole”,就可以在曲線中添加復(fù)極點(diǎn)。圖6.32為將極點(diǎn)放置在ω=50rad/s時(shí)的情形。缺省情況下,復(fù)共軛極點(diǎn)的阻尼比為1.0,也就是說,在ω=50rad/s處有2重極點(diǎn)。由前置濾波器Bode圖可知,對(duì)數(shù)幅頻特性曲線在ω=50rad/s時(shí)衰減量大約為-3dB,-40dB/dec斜率處的閉環(huán)增益顯然對(duì)噪聲擾動(dòng)有一定的抑制能力。

6.32極點(diǎn)位于ω=50rad/s時(shí)的情形

3)在MATLAB命令窗口中設(shè)置前置濾波器參數(shù)除了以上設(shè)計(jì)前置濾波器的方法之外,還可以采用MATLAB中控制系統(tǒng)工具箱提供的函數(shù)如ss()和tf()等,直接導(dǎo)入事先設(shè)計(jì)的前置濾波器參數(shù)。例如可以采用下述方法導(dǎo)入由函數(shù)zpk()建立的低通濾波器。在MATLAB命令窗口中輸入:>>prefilt=zpk([],[-35+35i,-35-35i],1);運(yùn)行后,選擇SISO設(shè)計(jì)工具窗口菜單“Edit|Import…”,即可將prefilt參數(shù)導(dǎo)入系統(tǒng)數(shù)據(jù)窗口中。進(jìn)一步選中“SISOModels”列表中的“prefilt”項(xiàng),用鼠標(biāo)左鍵單擊“F”左邊的導(dǎo)入按鈕,再單擊“OK”按鈕,就可以將由prefilt建立的模型數(shù)據(jù)導(dǎo)入到前置濾波器模型中(見圖6.33)。在此基礎(chǔ)上可進(jìn)一步采用前述方法修改模型的參數(shù),這里不再贅述。

6.33導(dǎo)入前置濾波器

7.連續(xù)時(shí)間模型與離散時(shí)間模型之間的轉(zhuǎn)換有時(shí),需要進(jìn)行連續(xù)時(shí)間模型與離散時(shí)間模型之間的轉(zhuǎn)換,這時(shí),可選擇SISO設(shè)計(jì)工具窗口(見圖6.13)菜單“Tool|Continuous/DiscreteConversions…”,彈出模型轉(zhuǎn)換窗口如圖6.34所示,它包括進(jìn)行轉(zhuǎn)換的采樣時(shí)間(Discretetime)以及離散化方法如ZeroOrderHold(零階保持器)、

First

OrderHold(一階保持器)等。

6.34連續(xù)時(shí)間模型與離散時(shí)間模型轉(zhuǎn)換窗口

8.校正裝置及前置濾波器設(shè)定值的清除

以上介紹了在SISO設(shè)計(jì)工具中設(shè)置校正裝置(C(s))和前置濾波器(F(s))參數(shù)的方法。也可以清除所設(shè)計(jì)的參數(shù),方法如下:在圖6.13中選擇菜單“Compensators|Clear”,彈出圖6.35所示清除菜單,它有三種選擇:同時(shí)清除校正裝置和前置濾波器(CandF)、僅清除校正裝置(Conly)或者僅清除前置濾波器(Fonly)。清除后的校正裝置或者前置濾波器的傳遞函數(shù)恢復(fù)到其缺省值(均為1)。

圖6.35校正裝置清除示意圖6.2.6根軌跡設(shè)計(jì)方法根軌跡圖表示的是當(dāng)反饋控制系統(tǒng)的某個(gè)參數(shù)在某一區(qū)間連續(xù)變化時(shí),相應(yīng)閉環(huán)系統(tǒng)的特征根在復(fù)平面上的變化軌跡。根軌跡法也是一種經(jīng)常采用的控制系統(tǒng)設(shè)計(jì)方法,它包括在根軌跡圖上調(diào)節(jié)校正裝置的增益、極點(diǎn)和零點(diǎn)。下面舉例說明應(yīng)用根軌跡法設(shè)計(jì)校正裝置C(s)的方法。

【例6.3】設(shè)控制系統(tǒng)如圖6.36所示,其中被控對(duì)象的傳遞函數(shù)為

(6.4)設(shè)計(jì)校正裝置C(s),使閉環(huán)系統(tǒng)的單位階躍響應(yīng)滿足下列指標(biāo):

(1)調(diào)節(jié)時(shí)間不大于0.05s(誤差范圍為±2%)。

(2)超調(diào)量不大于5%。圖

6.36反饋控制系統(tǒng)結(jié)構(gòu)圖

【解】(1)建立被控對(duì)象的數(shù)學(xué)模型。首先在MATLAB命令窗口中輸入:>>G=tf(40000000,[1290,100000,22500000,0]);

(2)打開SISO設(shè)計(jì)工具窗口:

>>sisotool(G)運(yùn)行后打開已經(jīng)導(dǎo)入被控對(duì)象數(shù)學(xué)模型G(s)的SISO設(shè)計(jì)工具窗口,如圖6.37所示。采用6.2.2節(jié)介紹的方法,得到單位階躍響應(yīng)曲線,如圖6.38所示,由圖可確定此時(shí)調(diào)節(jié)時(shí)間約為2s,

遠(yuǎn)遠(yuǎn)不能滿足設(shè)計(jì)要求。

6.37導(dǎo)入例6.3模型數(shù)據(jù)的窗口

6.38單位階躍響應(yīng)曲線

(3)根軌跡圖的放大。為了方便觀察分析,可適當(dāng)放大根軌跡圖,采用兩種方法:一是用鼠標(biāo)右鍵單擊根軌跡區(qū)域,選擇菜單“Zoom|XY”,此時(shí)鼠標(biāo)光標(biāo)指針變化為“+”形狀,然后在根軌跡圖上欲放大區(qū)域的左上端按下鼠標(biāo)左鍵,拖至欲放大區(qū)域右下端時(shí)釋放左鍵(圖6.39為同時(shí)放大-500~500區(qū)域);二是用鼠標(biāo)左鍵單擊圖6.37中工具欄中的圖標(biāo)“

”,用同樣的方法選擇區(qū)域即可。

6.39放大根軌跡

(4)校正裝置增益的改變方法。最簡(jiǎn)單的校正是改變校正裝置的增益(缺省值為1),可采用的方法與前述Bode圖設(shè)計(jì)法類似。下面僅介紹用鼠標(biāo)在根軌跡圖中改變?cè)鲆娴姆椒āS檬髽?biāo)左鍵按住根軌跡圖上的紅色小塊,鼠標(biāo)指針形狀變?yōu)槭中?,然后沿著根軌跡曲線移動(dòng),在移動(dòng)的過程中,校正裝置的增益會(huì)實(shí)時(shí)變化,如圖6.40所示,圖中校正裝置的增益為32.4。閉環(huán)單位階躍響應(yīng)曲線如圖6.41所示??梢姡藭r(shí)單位階躍響應(yīng)的性能指標(biāo)并不滿足設(shè)計(jì)要求。

6.40在根軌跡圖中改變校正裝置增益

6.41校正裝置增益為32.4時(shí)的單位階躍響應(yīng)曲線

(5)給校正裝置添加極點(diǎn)和零點(diǎn)。由圖6.41可見,僅改變校正裝置增益,會(huì)使閉環(huán)系統(tǒng)變?yōu)榍纷枘釥顟B(tài)甚至不穩(wěn)定,這時(shí)可考慮再對(duì)校正裝置添加極點(diǎn)和零點(diǎn)。

①添加極點(diǎn)的方法:(a)用鼠標(biāo)右鍵單擊根軌跡圖,從彈出的菜單中選擇“AddPole/Zone|ComplexPole”,此時(shí)鼠標(biāo)指針會(huì)變化為旁邊帶有“×”的箭頭。(b)用鼠標(biāo)左鍵單擊根軌跡圖上欲放置極點(diǎn)的位置,就完成了極點(diǎn)的添加。此時(shí),所添加的極點(diǎn)為紅色的“×”。用鼠標(biāo)左鍵按住該極點(diǎn)沿根軌跡移動(dòng),就會(huì)改變所添加極點(diǎn)的位置。同時(shí),相應(yīng)的Bode圖和單位階躍響應(yīng)曲線均發(fā)生變化。

②添加零點(diǎn)的方法:在根軌跡圖中添加零點(diǎn)的方法與添加極點(diǎn)的方法相同,這里不再贅述。綜合運(yùn)用上述方法分別改變校正裝置的增益,添加或改變極點(diǎn)和零點(diǎn)的位置,最終可使閉環(huán)系統(tǒng)的單位階躍響應(yīng)指標(biāo)達(dá)到設(shè)計(jì)要求。

(6)

直接指定校正裝置極點(diǎn)和零點(diǎn)的精確值。

6.42校正裝置參數(shù)編輯窗口

①用鼠標(biāo)左鍵單擊SISO設(shè)計(jì)工具窗口中“CurrentCompensator”區(qū)域。②與Bode圖類似,用鼠標(biāo)右鍵單擊根軌跡圖,選擇菜單“EditCompansator...”,也可以得到校正裝置編輯窗口(見圖6.42)。在該圖中,可以通過鍵盤輸入直接完成改變校正裝置增益(Gain)、添加(刪除)實(shí)數(shù)極點(diǎn)(零點(diǎn))和共軛極點(diǎn)(零點(diǎn))等操作。例如,可以設(shè)定極點(diǎn)為-110±i140、零點(diǎn)為-70±i270及校正裝置增益為23.3,得到如圖6.43所示根軌跡圖,

相應(yīng)的單位階躍響應(yīng)曲線如圖6.44所示。

6.43設(shè)定零、極點(diǎn)和校正裝置增益時(shí)的SISO設(shè)計(jì)工具

6.44單位階躍響應(yīng)曲線

(7)設(shè)計(jì)約束的添加、修改及刪除。SISO設(shè)計(jì)工具還提供了設(shè)計(jì)約束以便于滿足設(shè)計(jì)要求,下面以阻尼比約束為例,介紹設(shè)計(jì)約束的操作。用鼠標(biāo)右鍵單擊根軌跡圖,從彈出的菜單中選擇“DesignConstraints|New...”,打開新約束(NewConstraint)窗口(見圖6.45)。圖中約束類型(ConstraintType)下拉式菜單可以添加的約束包括:調(diào)節(jié)時(shí)間(SettingTime)、超調(diào)量(PercentOvershoot)、阻尼比(DampingRatio)、自然頻率(NaturalFrequency)等;約束參數(shù)(ConstraintParameters)欄自動(dòng)顯示與約束形式相應(yīng)的參數(shù)(注意:只有設(shè)置了約束參數(shù)后才能使用約束參數(shù)編輯功能)。改變約束參數(shù)值的方法是:用鼠標(biāo)左鍵單擊顯示該參數(shù)的文本框,直接輸入?yún)?shù)值,然后用鼠標(biāo)左鍵單擊“OK”按鈕;也可以在窗口中選擇菜單“DesignConstraints|Edit...”,再在打開的編輯約束(EditConstraint)窗口(見圖6.46)中修改相應(yīng)參數(shù)。

6.45新約束窗口

6.46約束編輯窗口

若設(shè)定阻尼比約束為0.707(見圖6.45或圖6.46),則圖6.43會(huì)變化為圖6.47。由圖可見,根軌跡區(qū)域有兩條阻尼比為0.707的對(duì)稱線,阻尼比線的右側(cè)區(qū)域?yàn)辄S色,該阻尼比還可以更改。方法有兩種:①在圖6.45中,直接修改“DampingRatio”欄中的參數(shù)值,然后用鼠標(biāo)左鍵單擊“OK”按鈕或者直接回車,就可以得到修改后的阻尼比約束。②直接在根軌跡圖中將鼠標(biāo)指針放置于阻尼比線上,此時(shí)光標(biāo)會(huì)變?yōu)椤?/p>

”,然后按下鼠標(biāo)左鍵,拖動(dòng)阻尼比線至適當(dāng)?shù)奈恢煤?,再釋放鼠?biāo)左鍵。

6.47包含設(shè)計(jì)約束的根軌跡示意圖

6.2.7校正裝置及模型參數(shù)的導(dǎo)出校正裝置設(shè)計(jì)完成后,接下來就是將所設(shè)計(jì)的校正裝置參數(shù)導(dǎo)出以備使用。方法是:在SISO設(shè)計(jì)工具窗口中選擇菜單“File|Export…”,得到如圖6.48所示的SISO設(shè)計(jì)工具導(dǎo)出窗口。

圖6.48中,“ExportAs”元胞中的變量名稱為設(shè)計(jì)者以前命名的(在窗口“ImportSystemData”中)或缺省名稱,用鼠標(biāo)左鍵雙擊“ExportAs”元胞,即可編輯所導(dǎo)出變量名稱。

6.48導(dǎo)出窗口

將校正裝置參數(shù)導(dǎo)出至工作空間的方法是:

(1)用鼠標(biāo)左鍵單擊“Component”欄中需要導(dǎo)出參數(shù)的元胞,圖6.48中選擇的是“CompensatorC”。

(2)用鼠標(biāo)左鍵單擊圖6.46右上角的“ExporttoWorkspace”按鈕。為了驗(yàn)證此時(shí)變量C已經(jīng)導(dǎo)出至工作空間,在MATLAB命令窗口中輸入:>>C運(yùn)行結(jié)果為:Zero/pole/gain:0.40746(s^2+140s+7.78e004)

(s^2+220s+3.17e004)

6.49校正裝置參數(shù)導(dǎo)出對(duì)話框

6.2.8將模型參數(shù)導(dǎo)出至Simulink仿真模型應(yīng)用SISO設(shè)計(jì)工具,還可以根據(jù)所設(shè)計(jì)的校正裝置、前置濾波器等,按照?qǐng)D6.12所選定的結(jié)構(gòu)得到Simulink仿真模型,并能夠進(jìn)行Simulink仿真,此時(shí)Simulink仿真模型的文件名稱即為圖6.15左上角SystemName對(duì)話框中的文件名。將模型導(dǎo)出至Simulink仿真模型步驟是:

(1)在SISO設(shè)計(jì)工具窗口中選擇菜單“Tools|DrawSimulinkDiagram...”(見圖6.50),得到如圖6.51所示的對(duì)話框。

6.50繪制Simulink菜單示意圖

6.51繪制Simulink模型對(duì)話框

(2)用鼠標(biāo)左鍵單擊圖6.51中的“Yes”按鈕,就可以得到由所設(shè)計(jì)校正裝置、前置濾波器以及被控對(duì)象等構(gòu)成的Simulink模型,

如圖6.52所示。

6.52導(dǎo)出的Simulink模型

(3)圖6.52中包含了校正裝置C(s)、被控對(duì)象G(s)、反饋環(huán)節(jié)H(s)以及前置濾波器F(s)等的數(shù)學(xué)模型,其輸出用示波器顯示,缺省情況下輸入信號(hào)包括幅值和頻率均可調(diào)的正弦波、方波和鋸齒波等。當(dāng)然,也可以通過圖6.52中右上部的Simulink庫瀏覽器圖標(biāo)打開Simulink,然后更改輸入信號(hào)及輸出信號(hào)的形式,對(duì)該Simulink模型進(jìn)行重新編輯及仿真運(yùn)行。

6.3Simulink響應(yīng)最優(yōu)化軟件包

6.3.1控制系統(tǒng)優(yōu)化設(shè)計(jì)概述

1.控制系統(tǒng)優(yōu)化設(shè)計(jì)優(yōu)化設(shè)計(jì)是控制系統(tǒng)設(shè)計(jì)中一個(gè)非常重要的問題??刂葡到y(tǒng)設(shè)計(jì)主要是進(jìn)行控制器(或校正裝置)的設(shè)計(jì),也稱控制器(或校正裝置)的參數(shù)整定,待整定的參數(shù)通常稱為整定參數(shù)。例如,PID控制器的參數(shù)整定??刂葡到y(tǒng)優(yōu)化設(shè)計(jì)一般是指:控制系統(tǒng)的被控對(duì)象已知,控制器(或校正裝置)的結(jié)構(gòu)、形式也已確定,調(diào)整或?qū)ふ铱刂破鞯哪承﹨?shù),使系統(tǒng)性能在給定的目標(biāo)函數(shù)(即性能指標(biāo))下達(dá)到最優(yōu)??刂葡到y(tǒng)優(yōu)化設(shè)計(jì)必須借助于計(jì)算機(jī)仿真才能完成,其過程框圖見圖6.53。由圖知,控制系統(tǒng)參數(shù)優(yōu)化設(shè)計(jì)必須完成兩大任務(wù):

系統(tǒng)仿真與優(yōu)化設(shè)計(jì)。

6.53控制系統(tǒng)參數(shù)優(yōu)化設(shè)計(jì)過程框圖

1)系統(tǒng)仿真系統(tǒng)仿真的主要任務(wù)是,通過求解系統(tǒng)在給定模型下的時(shí)間響應(yīng)來確定目標(biāo)函數(shù)。這是因?yàn)樗o的目標(biāo)函數(shù)一般都與系統(tǒng)的時(shí)間響應(yīng)有關(guān)。通常有兩類目標(biāo)函數(shù):一類是誤差積分型目標(biāo)函數(shù),例如,J=∫t0|e(t)|2dt,其中的e(t)為系統(tǒng)給定輸入與系統(tǒng)的時(shí)間響應(yīng)之差;第二類目標(biāo)函數(shù)為經(jīng)典時(shí)域性能指標(biāo),即系統(tǒng)單位階躍響應(yīng)的超調(diào)量、調(diào)節(jié)時(shí)間、上升時(shí)間等。SRO軟件包中的約束實(shí)際上就是經(jīng)典時(shí)域性能指標(biāo)。

2)優(yōu)化設(shè)計(jì)優(yōu)化設(shè)計(jì)的任務(wù)就是要進(jìn)行參數(shù)尋優(yōu),即使用一種參數(shù)最優(yōu)化方法(如共軛梯度法、最速下降法、單純形法等),尋找使所給目標(biāo)函數(shù)達(dá)到最優(yōu)(即達(dá)到極值:極大或極?。r(shí)的控制器(或校正裝置)的參數(shù)。顯然,即使借助于計(jì)算機(jī),進(jìn)行控制系統(tǒng)優(yōu)化設(shè)計(jì)也是一項(xiàng)十分復(fù)雜而繁瑣的工作。而使用SRO軟件包,可以輕松、

愉快地完成控制系統(tǒng)優(yōu)化設(shè)計(jì)工作。

6.3.2SRO功能及模塊庫

1.SRO功能

SRO提供了一個(gè)直觀、方便的圖形用戶界面,可以輔助進(jìn)行控制系統(tǒng)參數(shù)整定與最優(yōu)化。使用SRO,能夠整定Simulink模型中的系統(tǒng)參數(shù),使其滿足時(shí)域性能要求,而這一性能要求是通過在一個(gè)時(shí)域窗口對(duì)信號(hào)進(jìn)行圖形約束或跟蹤一個(gè)參考信號(hào)獲得的。使用SRO,能夠整定Simulink模型中的各種變量,包括標(biāo)量、向量及矩陣等。此外,SRO還能用于具有參數(shù)不確定模型的控制系統(tǒng)優(yōu)化設(shè)計(jì),如魯棒控制系統(tǒng)設(shè)計(jì)。SRO使獲得最優(yōu)目標(biāo)函數(shù)和最優(yōu)化整定參數(shù)成為一種直觀、容易的過程。

要使用SRO,必須在已有的Simulink模型中添加一個(gè)特殊的模塊,這就是信號(hào)約束(SignalConstraint)模塊。將此模塊連接到模型中需要進(jìn)行某種約束的信號(hào)上,SRO會(huì)自動(dòng)地將時(shí)域約束轉(zhuǎn)換成最優(yōu)化約束問題,然后使用最優(yōu)化工具箱(OptimizationToolbox)或遺傳算法與直接搜索工具箱(GeneticAlgorithmandDirectSearchToolbox)中的最優(yōu)化算法進(jìn)行求解。

SRO求解最優(yōu)化約束問題的過程是:首先將約束最優(yōu)化問題公式化,然后調(diào)用Simulink軟件包的Simulation(即系統(tǒng)仿真),并將仿真結(jié)果與約束目標(biāo)(即目標(biāo)函數(shù))比較,最后使用最優(yōu)化算法調(diào)節(jié)被整定參數(shù),以便更好地滿足約束目標(biāo)要求。

2.SRO模塊庫與Simulink軟件包類似,SRO軟件包也是由一些模塊構(gòu)成的模塊庫。調(diào)出SRO模塊庫的方法有如下三種。

(1)在Simulink模塊庫瀏覽器界面(見圖5.1(a))中,用鼠標(biāo)左鍵單擊“SimulinkResponse

Optimization”左端的符號(hào),將得到SRO模塊庫的樹形顯示,如圖6.54(a)所示。

圖6.54SRO模塊組的兩種顯示形式(a)

樹形;

(b)

圖標(biāo)形

(2)選中并用鼠標(biāo)右鍵單擊Simulink模塊庫瀏覽器界面中的“SimulinkResponseOptimization”,再用鼠標(biāo)左鍵單擊彈出的“OpentheSimulinkResponseOptimizationLibrary”

框(見圖6.54(a)),即可得到圖6.54(b)所示的SRO模塊庫的圖標(biāo)形顯示。

(3)在MATLAB命令窗口中直接輸入“srolib”并回車,則會(huì)得到SRO模塊庫的圖標(biāo)形顯示。由圖6.54知,SRO模塊庫包含三個(gè)模塊(組),自左至右分別為SignalConstraint模塊、RMS模塊組和ResponseOptimizationDemos模塊組。

6.55RMS模塊組窗口

·SignalConsraint模塊:是SRO模塊庫中最重要的模塊,應(yīng)用SRO進(jìn)行控制系統(tǒng)優(yōu)化設(shè)計(jì)時(shí)主要使用此模塊。

·RMS模塊組:用鼠標(biāo)左鍵雙擊此模塊組,可得到圖6.55所示的RMS模塊組窗口。顯見,該模塊組又包含三個(gè)模塊。其中,CRMS模塊與DRMS模塊用于計(jì)算信號(hào)的連續(xù)和離散累積根均方值,將它們與信號(hào)約束模塊一起使用,可以使模型中信號(hào)累積根均方值最優(yōu)。Example模塊是一個(gè)Simulink模型,用來演示CRMS與DRMS模塊的應(yīng)用。

·ResponseOptimizationDemos模塊組:是一個(gè)用來演示SRO應(yīng)用的演示模塊集,如圖6.56所示。SRO應(yīng)用的演示內(nèi)容包括:ControlSystems(控制系統(tǒng))、Aerospace(宇航)、ElectroMechanicalSystems(電子-機(jī)械系統(tǒng))、ChemicalProcesses(化工過程)等。用鼠標(biāo)左鍵雙擊圖中的模塊,

就會(huì)打開相應(yīng)的演示窗口并運(yùn)行。

6.56ResponseOptimizationDemos模塊組窗口

6.3.3給定性能指標(biāo)的優(yōu)化設(shè)計(jì)根據(jù)給定性能指標(biāo)進(jìn)行控制系統(tǒng)優(yōu)化設(shè)計(jì),是指將給定的控制系統(tǒng)時(shí)域性能指標(biāo)轉(zhuǎn)換為SRO的約束邊界,通過對(duì)系統(tǒng)的階躍響應(yīng)加以約束,最優(yōu)化指定的整定參數(shù)。這是SRO軟件包的一種最基本應(yīng)用。

【例6.4】控制系統(tǒng)結(jié)構(gòu)如圖6.57所示。圖中,PID控制器的數(shù)學(xué)模型見例5.14。

圖6.57控制系統(tǒng)的結(jié)構(gòu)圖

已知:被控對(duì)象模型參數(shù)ωn=1rad/s,ζ=0.8。系統(tǒng)的單位階躍響應(yīng)性能指標(biāo)為:超調(diào)量≤10%;上升時(shí)間為2s(響應(yīng)從零第一次上升到終值所需的時(shí)間);調(diào)節(jié)時(shí)間為5s(誤差范圍為±5%)。并給定PID控制器參數(shù)的初始值為:Kp=1.89903,Ti=0.816075,Td=0.222896。試確定滿足上述性能指標(biāo)的PID控制器參數(shù)Kp、Ti和Td。

【解】(1)建立含有SignalConstraint模塊的Simulink模型。首先建立Simulink模型,然后將系統(tǒng)輸出y(t)與SignalConstraint模塊相連接,如圖6.58所示,模型名為exm6-4.m。

圖6.58圖6.57的Simulink模型

圖6.58中主要模塊的參數(shù)配置如下:①r(t)模塊:Steptime設(shè)置為0,F(xiàn)inaltime設(shè)置為1。②PID控制器模塊:是一個(gè)封裝了的子系統(tǒng),其構(gòu)成見圖5.80,模塊參數(shù)配置見例5.14。③TransferFcn模塊:Numeratorcoefficient欄填寫[wn^2],Denominatorcoefficient欄填寫[12*wn*zetawn^2]。④SignalConstraint模塊:位于Simulink模塊庫瀏覽器中的SimulinkResponseOptimization

模塊庫(見圖6.54(a)或(b))中。

(2)打開信號(hào)約束窗口。信號(hào)約束窗口是SRO的操作平臺(tái),控制系統(tǒng)優(yōu)化設(shè)計(jì)的所有工作都要在這個(gè)平臺(tái)上完成。用鼠標(biāo)左鍵雙擊圖6.58中的SignalConstraint模塊,打開信號(hào)約束窗口,圖6.59為該窗口的缺省顯示。圖6.59顯示了一個(gè)網(wǎng)格坐標(biāo),橫坐標(biāo)為時(shí)間(單位:s),縱坐標(biāo)為幅值,并具有上、下約束邊界,它定義了系統(tǒng)約束響應(yīng)置于其中的區(qū)間,因而也就定義了系統(tǒng)的階躍響應(yīng)約束(即階躍響應(yīng)的性能指標(biāo))。圖6.59顯示的約束是:上升時(shí)間(Risetime)為1s,調(diào)節(jié)時(shí)間(Settlingtime)為3s,超調(diào)量(Overshoot)為20%。進(jìn)行參數(shù)最優(yōu)化時(shí),選中該窗口左下角的“Enforcesignalbounds”項(xiàng),則相應(yīng)的約束信號(hào)(響應(yīng)信號(hào))就位于約束邊界段內(nèi)。

6.59信號(hào)約束窗口缺省顯示

在信號(hào)約束窗口添加坐標(biāo)網(wǎng)格的方法是:在信號(hào)約束窗口內(nèi)任一處單擊鼠標(biāo)右鍵(鼠標(biāo)指針變成手形),彈出一個(gè)如圖6.60所示的現(xiàn)場(chǎng)菜單,用鼠標(biāo)左鍵單擊“Grid”,在其前邊就會(huì)添加“

”,則信號(hào)約束窗口具有網(wǎng)格坐標(biāo)(見圖6.59);否則,沒有網(wǎng)格坐標(biāo)。

6.60信號(hào)約束窗口右擊菜單

6.61期望響應(yīng)設(shè)置界面

(3)設(shè)置期望響應(yīng)約束。使用鼠標(biāo)或菜單,都可以將信號(hào)約束窗口的約束設(shè)置成期望響應(yīng)約束。這里介紹使用菜單設(shè)置期望響應(yīng)約束的方法。該方法分為以下兩個(gè)步驟:第一步:選擇SignalConstraint模塊窗口菜單“Goals|DesiredResponse…”,打開期望響應(yīng)設(shè)置窗口。再選中“Specifystepresponsecharacteristics”按鈕,則顯示圖6.61所示的階躍響應(yīng)性能指標(biāo)設(shè)置界面。

第二步:設(shè)置期望響應(yīng)約束,即設(shè)置系統(tǒng)階躍響應(yīng)的性能指標(biāo),見圖6.61。圖中各欄參數(shù)的含義及配置如下:

階躍響應(yīng)初值(Initialvalue):缺省設(shè)置為0;階躍時(shí)間(Steptime):缺省設(shè)置為0;階躍響應(yīng)終值(Finalvalue):缺省設(shè)置為1;上升時(shí)間(Risetime):設(shè)置為2s;終值的百分?jǐn)?shù)(%Rise):根據(jù)控制系統(tǒng)階躍響應(yīng)上升時(shí)間的定義,對(duì)于有振蕩的系統(tǒng),應(yīng)取終值的100%,故該欄設(shè)置為100;調(diào)節(jié)時(shí)間(Settlingtime):設(shè)置為5s;誤差范圍(%Settling):設(shè)置為5,即±5%;超調(diào)量(Overshoot):設(shè)置為10,即10%;負(fù)超調(diào)(%Undershoot):必須取正數(shù),本例設(shè)置為2。圖

6.62期望響應(yīng)約束設(shè)置后的信號(hào)約束窗口

(4)定義變量,即在MATLAB工作空間中定義Simulink模型中的未知變量。本例有五個(gè)未知變量需要定義,分別是:Kp、Ti、Td、ωn及ζ。為此,在MATLAB命令窗口中輸入:>>Kp=1.89903;Ti=0.816075;Td=0.222896;wn=1;zeta=0.8;運(yùn)行后,上述五個(gè)變量即被定義。說明:定義變量實(shí)際上就是為這些變量賦(初)值。定義變量是必須的。(5)指定整定參數(shù)。在開始進(jìn)行參數(shù)最優(yōu)化之前,必須為SRO指定所需整定的參數(shù)(即最優(yōu)化參數(shù))。顯然,本例的整定參數(shù)是PID控制器參數(shù)Kp、Ti和Td。步驟如下:第一步:選擇信號(hào)約束窗口菜單“Optimization|tunedparameters”,打開整定參數(shù)對(duì)話窗口,見圖6.63。第二步:用鼠標(biāo)左鍵單擊圖6.63左下方的“Add…”按鈕,彈出如圖6.64所示的添加參數(shù)窗口,該窗口列出了已在工作空間中定義了的所有Simulink模型變量。

6.63整定參數(shù)對(duì)話窗口

6.64添加參數(shù)窗口

第三步:同時(shí)選中圖6.64中的Kp、Td和Ti變量,再用鼠標(biāo)左鍵單擊“OK”按鈕,即可將它們添加到整定參數(shù)對(duì)話窗口(見圖6.63)中。與此同時(shí),此窗口還將顯示這些參數(shù)的當(dāng)前值。

(6)最優(yōu)化計(jì)算。在完成了上述的參數(shù)設(shè)置后,即可進(jìn)行PID控制器參數(shù)的最優(yōu)化計(jì)算。用鼠標(biāo)左鍵單擊信號(hào)約束窗口圖標(biāo)或選擇信號(hào)約束窗口菜單“Optimization|Start”,開始最優(yōu)化計(jì)算。

SRO自動(dòng)地將約束邊界數(shù)據(jù)和整定參數(shù)信息轉(zhuǎn)換成約束優(yōu)化問題,并使用優(yōu)化工具箱或遺傳算法與直接搜索工具箱中的函數(shù)來求解,通過調(diào)節(jié)整定參數(shù)以滿足階躍響應(yīng)信號(hào)約束。在優(yōu)化計(jì)算開始時(shí),還會(huì)同時(shí)打開圖6.65所示的最優(yōu)化過程窗口,每次迭代結(jié)果及最終優(yōu)化計(jì)算結(jié)果都會(huì)在該窗口顯示出來。

6.65參數(shù)整定最優(yōu)化過程窗口

優(yōu)化收斂或終止所需迭代次數(shù)取決于整定參數(shù)的初始值、約束設(shè)置以及最優(yōu)化設(shè)置(如優(yōu)化算法、步長(zhǎng)及誤差等)。由圖6.65知,優(yōu)化算法經(jīng)過三次迭代,即尋找到一個(gè)在給定容許誤差限內(nèi)的最優(yōu)解。進(jìn)行最優(yōu)化計(jì)算的同時(shí),信號(hào)約束窗口繪出每次迭代結(jié)果對(duì)應(yīng)的階躍響應(yīng)曲線,如圖6.66所示。SRO將初始階躍響應(yīng)曲線設(shè)置為藍(lán)色,將最終的階躍響應(yīng)曲線設(shè)置為黑色。并且,

最終得到的階躍響應(yīng)曲線位于約束邊界內(nèi),表明系統(tǒng)性能滿足給定性能指標(biāo)要求。

6.66優(yōu)化過程中系統(tǒng)階躍響應(yīng)曲線顯示

由圖6.65知,PID控制器優(yōu)化參數(shù)值為:Kp=1.9143,Ti=1.1003,Td=0.7300。也可在MATLAB命令窗口中輸入:

>>Kp,Ti,Td運(yùn)行結(jié)果為:Kp=

1.9143Ti=

1.1003Td=

0.7300(7)保存項(xiàng)目。在進(jìn)行最優(yōu)化計(jì)算之前,實(shí)際上已經(jīng)創(chuàng)建了一個(gè)階躍響應(yīng)最優(yōu)化項(xiàng)目,它包括:階躍響應(yīng)約束(來自模型的所有信號(hào)約束窗口),整定參數(shù)設(shè)置,參考信號(hào)設(shè)置與不確定參數(shù)設(shè)置(見6.3.4和6.3.5節(jié))以及最優(yōu)化與仿真設(shè)置。保存最優(yōu)化項(xiàng)目的方法是:選擇信號(hào)約束窗口菜單“File|Save”,或用鼠標(biāo)左鍵單擊該窗口工具欄圖標(biāo),打開如圖6.67所示的保存項(xiàng)目對(duì)話窗口。圖中,可以將響應(yīng)最優(yōu)化項(xiàng)目保存為MATLAB工作空間變量、模型工作空間變量或MAT文件。若選中“SaveandreloadprojectwithSimulinkmodel”,則打開模型時(shí),響應(yīng)最優(yōu)化項(xiàng)目將自動(dòng)導(dǎo)出;當(dāng)模型重新被打開時(shí),如果找不到已經(jīng)保存的響應(yīng)最優(yōu)化項(xiàng)目,會(huì)在MATLAB命令窗口給出警告。

6.67響應(yīng)優(yōu)化項(xiàng)目保存對(duì)話窗口

6.3.4跟蹤參考信號(hào)的優(yōu)化設(shè)計(jì)除了將給定系統(tǒng)性能轉(zhuǎn)換成約束邊界,通過約束階躍響應(yīng)對(duì)整定參數(shù)優(yōu)化外,SRO還可以使系統(tǒng)的階躍響應(yīng)跟蹤給定的參考信號(hào),并求出最優(yōu)化整定參數(shù)。下面首先簡(jiǎn)要介紹最優(yōu)化選項(xiàng)設(shè)置窗口。選擇信號(hào)約束模塊窗口(見圖6.59)菜單“Optimization|OptimizationOptions…”,打開如圖6.68所示的最優(yōu)化選項(xiàng)設(shè)置界面,

圖中各選項(xiàng)參數(shù)設(shè)置如下。

6.68最優(yōu)化選項(xiàng)設(shè)置界面

1)最優(yōu)化方法(Optimizationmethod)選項(xiàng)

Algorithm:選擇最優(yōu)化算法。有三種選擇:Gradientdescent(梯度法,缺省算法)、Patternsearch(模式搜索法)及Simplexsearch(簡(jiǎn)單搜索法)。其中,Gradientdescent與implexsearch兩種算法分別調(diào)用最優(yōu)化工具箱的M函數(shù)文件fmincon.m與fminsearch.m,而Pattern算法則調(diào)用遺傳算法與直接搜索工具箱的M函數(shù)文件patternsearch.m。

Modelsize:設(shè)置模型粒度。有兩種選擇:Mediumscale(中等規(guī)模,缺省設(shè)置)和Largescale(大規(guī)模)。選擇Largescale,可提高計(jì)算速度。

2)最優(yōu)化設(shè)置(Optimizationoptions)選項(xiàng)

Parametertolerance:設(shè)置參數(shù)容許誤差限。缺省設(shè)置為0.001。

Constrainttolerance:設(shè)置約束容許誤差限。缺省設(shè)置為0.001。

Functiontolerance:設(shè)置函數(shù)容許誤差限。缺省設(shè)置為0.001。進(jìn)行優(yōu)化計(jì)算時(shí),若函數(shù)值小于函數(shù)容許誤差限,最優(yōu)化過程將被終止。改變函數(shù)容許誤差限的缺省值,僅在跟蹤一個(gè)參考信號(hào)或使用Simplexsearch算法進(jìn)行最優(yōu)化計(jì)算時(shí)有效。

Maximumiterations:設(shè)置最大迭代次數(shù)。

缺省設(shè)置為100。

3)其他選項(xiàng)

Displaylevel:指定最優(yōu)化過程窗口出現(xiàn)的形式。有四種選擇:Iterations(迭代,缺省設(shè)置)、None(不出現(xiàn))、Notify(通報(bào))及Termination(終止)。

Restarts:設(shè)置重復(fù)最優(yōu)化計(jì)算的次數(shù)。缺省設(shè)置為0。

Gradienttype:設(shè)置梯度類型。有兩種選擇:Basic(基本,缺省設(shè)置)和Refined(精細(xì))。此項(xiàng)設(shè)置僅用于Gradientdescent算法。改變上述參數(shù)設(shè)置,能使最優(yōu)化計(jì)算連續(xù)搜索一個(gè)解或一個(gè)更精確的解。

此外,若用鼠標(biāo)左鍵單擊最優(yōu)化選項(xiàng)設(shè)置界面左上方的“SimulationOptions”,或選擇信號(hào)約束模塊窗口菜單“Optimization|SimulationOptions…”,則可打開如圖6.69所示的仿真選項(xiàng)設(shè)置界面。該界面用于設(shè)置最優(yōu)化過程中的仿真參數(shù),參數(shù)的意義及設(shè)置方法與Simulink中的解算器(見5.4.2節(jié))類似,這里不再贅述。

6.69仿真選項(xiàng)設(shè)置界面

【例6.5】對(duì)于例6.4,欲使系統(tǒng)的階躍響應(yīng)跟蹤下述參考信號(hào)

y(t)=1-e-3t

且系統(tǒng)性能指標(biāo)及初始條件與例6.4相同,試確定PID控制器參數(shù)Kp、Ti和Td。

【解】本例的Simulink建模、期望響應(yīng)約束設(shè)置、變量定義、指定整定參數(shù)等內(nèi)容及步驟與例6.4完全相同。下面主要介紹設(shè)置參考信號(hào),進(jìn)行參數(shù)優(yōu)化設(shè)計(jì)的方法與步驟。

(1)設(shè)置參考信號(hào)。選擇信號(hào)約束模塊窗口菜單“Goals|DesiredResponse…”,打開期望響應(yīng)設(shè)置窗口;選中“Specifyreferencesignal”按鈕,得到圖6.70所示的參考信號(hào)設(shè)置界面。通過該界面,可建立時(shí)間向量和幅值向量給定的參考信號(hào)。

6.70參考信號(hào)設(shè)置窗口

具體設(shè)置為:

Timevector欄:輸入MATLAB函數(shù)linspace(0,10,200),生成時(shí)間向量t。

Amplitude欄:輸入MATLAB表達(dá)式1-exp(-3*linspace(0,10,200)),生成幅值向量y(t)。然后,用鼠標(biāo)左鍵單擊“OK”按鈕,在信號(hào)約束窗口就會(huì)顯示參考信號(hào)曲線,如圖6.71所示。

6.71參考信號(hào)設(shè)置后的信號(hào)約束窗口

(2)最優(yōu)化計(jì)算。由于既要約束階躍響應(yīng),還要使階躍響應(yīng)跟蹤參考信號(hào),因此,在最優(yōu)化計(jì)算之前,必須同時(shí)選中信號(hào)約束窗口下

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論