




免費預(yù)覽已結(jié)束,剩余41頁可下載查看
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
Http:/ 俺要電子書 更多文檔資料請訪問本站第1章 概述控制系統(tǒng)設(shè)計是控制科學(xué)與工程系學(xué)生的一門必修專業(yè)基礎(chǔ)課,課程中的一些概念相對比較抽象,如系統(tǒng)的穩(wěn)定性、可控性、收斂速度和抗干擾能力等。倒立擺系統(tǒng)是一個典型的非線性、強耦合、多變量和不穩(wěn)定系統(tǒng),作為控制系統(tǒng)的被控對象,它是一個理想的教學(xué)實驗設(shè)備,許多抽象的控制概念都可以通過倒立擺直觀地表現(xiàn)出來。本課程設(shè)計的目的是讓學(xué)生以一階倒立擺為被控對象,了解用古典控制理論設(shè)計控制器(如PID控制器)的設(shè)計方法和用現(xiàn)代控制理論設(shè)計控制器(最優(yōu)控制)的設(shè)計方法,掌握MATLAB仿真軟件的使用方法及控制系統(tǒng)的調(diào)試方法,加深學(xué)生對所學(xué)課程的理解,培養(yǎng)學(xué)生理論聯(lián)系實際的能力。本課程設(shè)計的被控對象采用固高公司生產(chǎn)的GIP-100-L型一階倒立擺系統(tǒng),課程設(shè)計包括三方面的內(nèi)容:(1)建立一階倒立擺的線性化數(shù)學(xué)模型;(2)倒立擺系統(tǒng)的PID控制器設(shè)計、MATLAB仿真及實物調(diào)試;(3)倒立擺系統(tǒng)的最優(yōu)控制器設(shè)計、MATLAB仿真及實物調(diào)試。1.1 實驗設(shè)備簡介一階倒立擺系統(tǒng)的結(jié)構(gòu)示意圖如圖1所示。圖1 一階倒立擺結(jié)構(gòu)示意圖系統(tǒng)組成框圖如圖2所示。圖2 一階倒立擺系統(tǒng)組成框圖系統(tǒng)是由計算機、運動控制卡、伺服機構(gòu)、倒立擺本體和光電碼盤幾大部分組成的閉環(huán)系統(tǒng)。光電碼盤1將小車的位移、速度信號反饋給伺服驅(qū)動器和運動控制卡,擺桿的角度、角速度信號由光電碼盤2反饋給運動控制卡。計算機從運動控制卡中讀取實時數(shù)據(jù),確定控制決策(小車運動方向、移動速度、加速度等),并由運動控制卡來實現(xiàn)該控制決策,產(chǎn)生相應(yīng)的控制量,使電機轉(zhuǎn)動,通過皮帶,帶動小車運動,保持擺桿平衡。1.2 設(shè)計內(nèi)容1建立一階倒立擺數(shù)學(xué)模型在自動控制理論課程中,有一章專門講述控制系統(tǒng)的數(shù)學(xué)模型的建立方法,并將非線性數(shù)學(xué)模型在一定條件下化簡成線性數(shù)學(xué)模型,在此以一階倒立擺為例,建立其數(shù)學(xué)模型,并在擺角附近將其非線性數(shù)學(xué)模型線性化,學(xué)生通過實際數(shù)學(xué)模型的推導(dǎo),加深對所學(xué)內(nèi)容的理解。2. 控制系統(tǒng)的MATLAB仿真自動控制理論(古典部分)中所講的控制器的設(shè)計方法很多,如根軌跡設(shè)計法、頻率特性設(shè)計法和PID設(shè)計法,在實際系統(tǒng)中PID控制器應(yīng)用最多,在本課程設(shè)計中選擇PID控制器,PID控制器的特點是只能對單變量(此處為擺桿角度)進行控制。在現(xiàn)代控制理論中,普遍采用的控制方法是最優(yōu)控制(LQR控制),最優(yōu)控制可對多變量進行控制(如同時控制擺桿角度和小車位置),由于現(xiàn)代控制理論課時較少,對最優(yōu)控制的講解也很少,在這里通過對倒立擺的控制,讓學(xué)生理解單變量控制和多變量控制的差別。本部分課程設(shè)計的目的是學(xué)習(xí)PID控制器和LQR控制器的設(shè)計方法,了解控制器參數(shù)對系統(tǒng)性能指標的影響,學(xué)會根據(jù)控制指標要求和實際響應(yīng)調(diào)整控制器的參數(shù),加深學(xué)生對所學(xué)內(nèi)容的理解。系統(tǒng)的MATLAB控制軟件已編好,學(xué)生在進行控制系統(tǒng)設(shè)計時,只需將控制器參數(shù)輸入,就可觀察到控制系統(tǒng)的輸出,仿真的目的一方面是讓學(xué)生得到滿足系統(tǒng)性能指標的控制器參數(shù),另一方面是讓學(xué)生將理論分析與仿真結(jié)果進行對比,更直觀地理解各參數(shù)對控制性能的影響。3. 倒立擺控制系統(tǒng)實物調(diào)試倒立擺系統(tǒng)實驗裝置如圖3所示。具體實驗步驟如下:(1)將小車推到導(dǎo)軌正中間位置,并且使擺桿處于自由下垂的靜止?fàn)顟B(tài)。(2)給計算機和電控箱通電。(3)打開計算機,在DOS操作系統(tǒng)下啟動程序,并使系統(tǒng)處于準備狀態(tài)。(4)起擺:由于PID控制只能控制擺桿的擺角,不能控制小車的位置,若用PID控制方式起擺,可能在擺桿豎起前就已出現(xiàn)“撞墻”現(xiàn)象,因此先采用最優(yōu)控制方式起擺,等擺桿立起來并穩(wěn)定下來之后,選擇控制器菜單中的控制方式,輸入?yún)?shù),觀察小車和擺桿的運動。由于PID控制器只對擺桿角度進行控制,所以在PID控制中小車可能向一個方向運動,此時需用手輕輕扶一下擺桿,以避免小車“撞墻”。最優(yōu)控制方式可同時對擺桿角度和小車位置進行控制,因此不會出現(xiàn)“撞墻”現(xiàn)象。()觀察控制效果:用金屬棒碰一下擺桿,觀察倒立擺在干擾信號作用下的輸出響應(yīng)。若不能達到指標要求,分析原因,重新設(shè)計,直到對實際系統(tǒng)的控制達到滿意的結(jié)果。具體實驗操作見附錄1。圖3 倒立擺實驗裝置1.3 實驗準備及注意事項1為了安全起見,在進行系統(tǒng)連線、拆卸與安裝前,必須關(guān)閉系統(tǒng)所有電源。2使用前請仔細檢查連線,確保接線正確無誤。如果碼盤連線接反或斷線,將會發(fā)生沖撞。3為了避免設(shè)備失控時造成人身傷害,操作時人員應(yīng)該與設(shè)備保持安全距離,一定不要站在擺的兩端。4如果發(fā)生異常,按下空格鍵,系統(tǒng)會提示“急停按鈕被觸發(fā),無法繼續(xù)控制系統(tǒng),按任意鍵退出程序?!?超速時,系統(tǒng)會自動關(guān)閉伺服電機,并出現(xiàn)“小車失速,系統(tǒng)被終止,按任意鍵退出程序。”1.4 課程設(shè)計任務(wù)書哈爾濱工業(yè)大學(xué)課程設(shè)計任務(wù)書 姓 名: 院 (系): 專 業(yè): 班 號: 任務(wù)起至日期: 年 月 日至 年 月 日 課程設(shè)計題目: 一階倒立擺控制器設(shè)計 已知技術(shù)參數(shù)和設(shè)計要求:本課程設(shè)計的被控對象采用固高公司的一階倒立擺系統(tǒng)GIP-100-L。系統(tǒng)內(nèi)部各相關(guān)參數(shù)為:小車質(zhì)量 0.5 Kg ;擺桿質(zhì)量0.2 Kg ;小車摩擦系數(shù)0.1 N/m/sec ; 擺桿轉(zhuǎn)動軸心到桿質(zhì)心的長度0.3 m ;擺桿慣量0.006 kg*m*m ;采樣時間0.005秒。設(shè)計要求:1推導(dǎo)出系統(tǒng)的傳遞函數(shù)和狀態(tài)空間方程。用Matlab進行脈沖輸入仿真,驗證系統(tǒng)的穩(wěn)定性。2設(shè)計PID控制器,使得當(dāng)在小車上施加1N的脈沖信號時,閉環(huán)系統(tǒng)的響應(yīng)指標為:(1)穩(wěn)定時間小于5秒(2)穩(wěn)態(tài)時擺桿與垂直方向的夾角變化小于0.1 弧度3設(shè)計最優(yōu)控制器,使得當(dāng)在小車上施加0.2m的階躍信號時,閉環(huán)系統(tǒng)的響應(yīng)指標為:(1)擺桿角度和小車位移的穩(wěn)定時間小于5秒(2)的上升時間小于1秒(3)的超調(diào)量小于20度(0.35弧度)(4)穩(wěn)態(tài)誤差小于2%。 工作量:1. 建立一階倒立擺的線性化數(shù)學(xué)模型;2. 倒立擺系統(tǒng)的PID控制器設(shè)計、MATLAB仿真及實物調(diào)試;3. 倒立擺系統(tǒng)的最優(yōu)控制器設(shè)計、MATLAB仿真及實物調(diào)試。 工作計劃安排: 同組設(shè)計者及分工: 各項工作獨立完成 指導(dǎo)教師簽字_ 年 月 日 教研室主任意見: 教研室主任簽字_ 年 月 日*注:此任務(wù)書由課程設(shè)計指導(dǎo)教師填寫。第2章 一階倒立擺的數(shù)學(xué)模型設(shè)計目的:建立一階倒立擺系統(tǒng)的數(shù)學(xué)模型,并在擺角附近將其非線性數(shù)學(xué)模型線性化,學(xué)生通過實際數(shù)學(xué)模型的推導(dǎo),加深對系統(tǒng)建模和模型線性化問題的理解。對系統(tǒng)加入輸入信號,進行Matlab 仿真,理解不穩(wěn)定極點對系統(tǒng)穩(wěn)定性的影響。設(shè)計要求:寫出系統(tǒng)的動態(tài)方程,得出傳遞函數(shù)和狀態(tài)空間方程。用Matlab進行脈沖輸入仿真,驗證系統(tǒng)的穩(wěn)定性。2.1 一階倒立擺數(shù)學(xué)模型的推導(dǎo)對系統(tǒng)建立數(shù)學(xué)模型是系統(tǒng)分析、設(shè)計的前提,而一個準確又簡練的數(shù)學(xué)模型將大大簡化后期的工作。為了簡化系統(tǒng)分析,在實際的模型建立過程中,要忽略空氣流動阻力,以及各種次要的摩擦阻力。這樣,可將倒立擺系統(tǒng)抽象成小車和勻質(zhì)剛性桿組成的系統(tǒng),如下圖所示。本系統(tǒng)內(nèi)部各相關(guān)參數(shù)定義如下: 小車質(zhì)量 擺桿質(zhì)量 小車摩擦系數(shù) 擺桿轉(zhuǎn)動軸心到桿質(zhì)心的長度 擺桿慣量 加在小車上的力 小車位置 擺桿與垂直向上方向的夾角 擺桿與垂直向下方向的夾角(考慮到擺桿初始位置為豎直向下)下圖是系統(tǒng)中小車和擺桿的受力分析圖。其中,和為小車與擺桿相互作用力的水平和垂直方向的分量。注意:在實際倒立擺系統(tǒng)中檢測和執(zhí)行裝置的正負方向已經(jīng)完全確定,因而矢量方向定義如圖,圖示方向為矢量正方向。應(yīng)用Newton方法來建立系統(tǒng)的動力學(xué)方程過程如下:分析小車水平方向所受的合力,可以得到以下方程:由擺桿水平方向的受力進行分析可以得到下面等式:即:把這個等式代入上式中,就得到系統(tǒng)的第一個運動方程: (2-1)為了推出系統(tǒng)的第二個運動方程,我們對擺桿垂直方向上的合力進行分析,可以得到下面方程:即:力矩平衡方程如下:注意:此方程中力矩的方向,由于,故等式前面有負號。合并這兩個方程,約去和,得到第二個運動方程: (2-2)1微分方程模型設(shè),當(dāng)擺桿與垂直向上方向之間的夾角與1(單位是弧度)相比很小,即 時,則可以進行近似處理:,。為了與控制理論的表達習(xí)慣相統(tǒng)一,即一般表示控制量,用來代表被控對象的輸入力,線性化后得到該系統(tǒng)數(shù)學(xué)模型的微分方程表達式: (2-3) 2傳遞函數(shù)模型對方程組(2-3)進行拉普拉斯變換,得到 (2-4)注意:推導(dǎo)傳遞函數(shù)時假設(shè)初始條件為0。由于輸出為角度,求解方程組(2-4)的第一個方程,可以得到把上式代入方程組(2-4)的第二個方程,得到整理后得到以輸入力為輸入量,以擺桿擺角為輸出量的傳遞函數(shù):其中 若取小車位移為輸出量,可得傳遞函數(shù):3狀態(tài)空間數(shù)學(xué)模型由現(xiàn)代控制理論原理可知,控制系統(tǒng)的狀態(tài)空間方程可寫成如下形式:方程組(2-3)對解代數(shù)方程,得到如下解:整理后得到系統(tǒng)狀態(tài)空間方程:以上就是一階倒立擺小車系統(tǒng)的狀態(tài)空間表達式。2.2 系統(tǒng)MATLAB仿真和開環(huán)響應(yīng)1傳遞函數(shù)在Matlab中,拉普拉斯變換后得到的傳遞函數(shù)可以通過計算并輸入分子和分母矩陣來實現(xiàn)。假設(shè)系統(tǒng)內(nèi)部各相關(guān)參數(shù)為: 小車質(zhì)量 0.5 Kg 擺桿質(zhì)量 0.2 Kg 小車摩擦系數(shù) 0.1 N/m/sec 擺桿轉(zhuǎn)動軸心到桿質(zhì)心的長度 0.3 m 擺桿慣量 0.006 kg*m*m 采樣時間 0.005秒文件trans.m用于求系統(tǒng)傳遞函數(shù)、傳遞函數(shù)的極點以及開環(huán)脈沖響應(yīng)。% trans.m % 倒立擺傳遞函數(shù)、開環(huán)極點及開環(huán)脈沖響應(yīng)% 輸入倒立擺傳遞函數(shù) G(S)=num/denM = 0.5;m = 0.2;b = 0.1;I = 0.006;g = 9.8;l = 0.3;q = (M+m)*(I+m*l2)-(m*l)2; % 計算并顯示多項式形式的傳遞函數(shù)num = m*l/q 0 0den = 1 b*(I+m*l2)/q -(M+m)*m*g*l/q -b*m*g*l/q 0% 計算并顯示傳遞函數(shù)的極點pr,p,k = residue(num,den);s = p % 求傳遞函數(shù)的脈沖響應(yīng)并顯示t=0:0.005:5;impulse(num,den,t) % 顯示范圍:橫坐標0-1,縱坐標0-60,此條語句參數(shù)可根據(jù)仿真輸出曲線調(diào)整axis(0 1 0 60)grid% end 執(zhí)行上面的文件,得到系統(tǒng)傳遞函數(shù)的分子(num)與分母(den)多項式的Matlab 表示及系統(tǒng)的開環(huán)極點(s),顯示結(jié)果如下所示: transnum = 4.5455 0 0den = 1.0000 0.1818 -31.1818 -4.4545 0s = -5.6041 5.5651 -0.1428 0 由此可知,系統(tǒng)傳遞函數(shù)的多項式表達式為:系統(tǒng)的開環(huán)極點為、,由于有一個開環(huán)極點位于平面的右半部,開環(huán)系統(tǒng)不穩(wěn)定。MATLAB 仿真的開環(huán)脈沖響應(yīng)(即給系統(tǒng)加一個脈沖推力)曲線如下圖所示,系統(tǒng)不穩(wěn)定。2狀態(tài)空間法狀態(tài)空間法可以進行單輸入多輸出系統(tǒng)設(shè)計,因此在這個實驗中,我們將嘗試同時對擺桿角度和小車位置進行控制。為了更具挑戰(zhàn)性,給小車加一個階躍輸入信號。我們用 Matlab 求出系統(tǒng)的狀態(tài)空間方程各矩陣,并仿真系統(tǒng)的開環(huán)階躍響應(yīng)。在這里給出一個state.m文件,執(zhí)行這個文件,Matlab將會給出系統(tǒng)狀態(tài)空間方程的A,B,C和D矩陣,并繪出在給定輸入為一個0.2 m的階躍信號時系統(tǒng)的響應(yīng)曲線。state.m程序如下:% state.m % 倒立擺狀態(tài)方程及開環(huán)階躍響應(yīng) % 輸入倒立擺相關(guān)參數(shù)M = 0.5;m = 0.2;b = 0.1;I = 0.006;g = 9.8;l = 0.3;% p用于狀態(tài)方程計算p = I*(M+m)+M*m*l2;% 輸入倒立擺狀態(tài)方程并顯示A = 0 1 0 0;0 -(I+m*l2)*b/p (m2*g*l2)/p 0; 0 0 0 1;0 -(m*l*b)/p m*g*l*(M+m)/p 0B = 0; (I+m*l2)/p; 0; m*l/pC = 1 0 0 0; 0 0 1 0D = 0;0% 求開環(huán)系統(tǒng)的階躍響應(yīng)并顯示T = 0:0.005:5;U = 0.2*ones(size(T);Y,X = lsim(A,B,C,D,U,T);plot(T,Y)% 顯示范圍:橫坐標0-2,縱坐標0-100,此條語句參數(shù)可根據(jù)仿真輸出曲線調(diào)整axis(0 2 0 100)grid% end 執(zhí)行上面的文件,得到系統(tǒng)的狀態(tài)空間A、B、C、D矩陣, 顯示結(jié)果如下所示: stateA = 0 1.0000 0 0 0 -0.1818 2.6727 0 0 0 0 1.0000 0 -0.4545 31.1818 0B = 0 1.8182 0 4.5455C = 1 0 0 0 0 0 1 0D = 0 0 MATLAB 仿真的開環(huán)階躍響應(yīng)曲線如下圖所示,系統(tǒng)不穩(wěn)定。圖中,實線是擺桿角度響應(yīng)曲線,虛線是小車位置響應(yīng)曲線。2.3 模型仿真實驗1實驗步驟實際系統(tǒng)參數(shù)如下,按照上面給出的例子求系統(tǒng)的傳遞函數(shù)、狀態(tài)空間方程,并進行脈沖響應(yīng)和階躍響應(yīng)的Matlab仿真。 小車質(zhì)量 1.096 Kg 擺桿質(zhì)量 0.109 Kg 小車摩擦系數(shù) 0 .1N/m/sec 擺桿轉(zhuǎn)動軸心到桿質(zhì)心的長度 0.2 5m 擺桿慣量 0.0034 kg*m*m 加在小車上的力 小車位置 擺桿與垂直方向的夾角 采樣頻率 0.005秒注意:在進行實際系統(tǒng)的Matlab仿真時,請將采樣頻率改為實際系統(tǒng)的采樣頻率。2設(shè)計報告要求(1)推導(dǎo)一階倒立擺的數(shù)學(xué)模型,并將其在工作點線性化,給出微分方程、傳遞函數(shù)和狀態(tài)空間表達式三種數(shù)學(xué)模型。(2)給出仿真結(jié)果和響應(yīng)曲線。(3)分析系統(tǒng)的穩(wěn)定性。第3章 倒立擺系統(tǒng)的PID控制算法設(shè)計本章主要利用PID控制算法對一階倒立擺系統(tǒng)進行控制器設(shè)計。在設(shè)計的過程中,要求熟悉控制參數(shù)、對系統(tǒng)性能的影響,然后按照所要求的控制指標并綜合實際響應(yīng)結(jié)果恰當(dāng)?shù)卣{(diào)整參數(shù)。運用MATLAB仿真軟件可以快捷地進行系統(tǒng)仿真和參數(shù)調(diào)整,本章第2節(jié)的內(nèi)容即是運用MATLAB軟件對PID控制系統(tǒng)的設(shè)計和仿真。第3節(jié)中,將對控制系統(tǒng)進行實際的運行和參數(shù)調(diào)試,以獲得一組最佳的PID控制參數(shù)。設(shè)計目的:學(xué)習(xí)PID控制器的設(shè)計方法,了解控制器各個參數(shù)對系統(tǒng)性能的影響,學(xué)會根據(jù)控制指標要求和實際響應(yīng)調(diào)整PID控制器的參數(shù)。設(shè)計要求:設(shè)計PID控制器,使得當(dāng)在小車上施加1N的脈沖信號時,閉環(huán)系統(tǒng)的響應(yīng)指標為:(1)穩(wěn)定時間小于5秒(2)穩(wěn)態(tài)時擺桿與垂直方向的夾角變化小于0.1 弧度3.1 理論分析1PID控制原理在模擬控制系統(tǒng)中,控制器最常用的控制規(guī)律是PID控制。常規(guī)PID控制系統(tǒng)原理框圖如下圖所示。系統(tǒng)由模擬PID控制器KD(S)和被控對象G(S)組成。PID控制器是一種線性控制器,它根據(jù)給定值與實際輸出值構(gòu)成控制偏差將偏差的比例(P)、積分(I)和微分(D)通過線性組合構(gòu)成控制量,對被控對象進行控制,故稱PID控制器。其控制規(guī)律為或?qū)懗蓚鬟f函數(shù)的形式式中:比例系數(shù);積分時間常數(shù);微分時間常數(shù)。在控制系統(tǒng)設(shè)計和仿真中,也將傳遞函數(shù)寫成式中:比例系數(shù);積分系數(shù);微分系數(shù)。簡單說來,PID控制器各校正環(huán)節(jié)的作用如下:(1)比例環(huán)節(jié):成比例地反映控制系統(tǒng)的偏差信號,偏差一旦產(chǎn)生,控制器立即產(chǎn)生控制作用,以減少偏差。(2)積分環(huán)節(jié):主要用于消除穩(wěn)態(tài)誤差,提高系統(tǒng)的型別。積分作用的強弱取決于積分時間常數(shù),越大,積分作用越弱,反之則越強。(3)微分環(huán)節(jié):反映偏差信號的變化趨勢(變化速率),并能在偏差信號值變得太大之前,在系統(tǒng)中引入一個有效的早期修正信號,從而加快系統(tǒng)的動作速度,減小調(diào)節(jié)時間。2擺桿角度控制這個控制問題和我們以前遇到的標準控制問題有些不同,在這里輸出量為擺桿的位置,它的初始位置為垂直向上,我們給系統(tǒng)施加一個擾動,觀察擺桿的響應(yīng)。系統(tǒng)框圖如下:圖中是控制器傳遞函數(shù),是被控對象傳遞函數(shù)??紤]到輸入,結(jié)構(gòu)圖可以很容易地變換成該系統(tǒng)的輸出為其中: 被控對象傳遞函數(shù)的分子項被控對象傳遞函數(shù)的分母項PID控制器傳遞函數(shù)的分子項PID控制器傳遞函數(shù)的分母項被控對象的傳遞函數(shù)是其中 PID控制器的傳遞函數(shù)為只需調(diào)節(jié)PID控制器的參數(shù),就可以得到滿意的控制效果。3小車位置控制小車位置作為輸出時,系統(tǒng)框圖如下:其中,是擺桿傳遞函數(shù),是小車傳遞函數(shù)。由于輸入信號,所以可以把結(jié)構(gòu)圖轉(zhuǎn)換成:其中,反饋環(huán)代表我們前面設(shè)計的擺桿的控制器。從此框圖我們可以看出此處只對擺桿角度進行了控制,并沒有對小車位置進行控制。小車位置輸出為:其中,分別代表被控對象1和被控對象2傳遞函數(shù)的分子和分母。和代表PID控制器傳遞函數(shù)的分子和分母。下面我們來求,根據(jù)前面實驗二的推導(dǎo),有可以推出小車位置的傳遞函數(shù)為其中 可以看出, =,小車的算式可以簡化成: 3.2 PID控制算法的MATLAB仿真1擺桿角度控制算法的仿真文件pid1.m是輸出為擺桿角度時系統(tǒng)的脈沖響應(yīng)仿真軟件,其中參數(shù)、分別為PID控制器的比例、微分和積分參數(shù)。文件如下:% pid1.m % 擺桿角度PID控制% 輸入倒立擺傳遞函數(shù) G1(S)=num1/den1M = 0.5;m = 0.2;b = 0.1;I = 0.006;g = 9.8;l = 0.3;q = (M+m)*(I+m*l2)-(m*l)2; num1 = m*l/q 0 0;den1 = 1 b*(I+m*l2)/q -(M+m)*m*g*l/q -b*m*g*l/q 0;% 輸入控制器PID數(shù)學(xué)模型 Gc(s)=numPID/denPIDKp = 1;Ki = 1; Kd = 1;numPID = Kd Kp Ki;denPID = 1 0;% 計算閉環(huán)系統(tǒng)傳遞函數(shù)G(s)=num/den% 多項式相乘num = conv(num1,denPID);% 多項式相加den = polyadd(conv(denPID,den1),conv(numPID,num1 );% 求整個系統(tǒng)傳遞函數(shù)的極點r,p,k = residue(num,den);% 顯示極點s = p % 求取多項式傳遞函數(shù)的脈沖響應(yīng)t=0:0.005:5;impulse(num,den,t)% 顯示范圍:橫坐標0-5,縱坐標0-10,此條語句參數(shù)可根據(jù)仿真輸出曲線調(diào)整axis(0 5 0 10)grid% end 文件中用到求兩個多項式之和的函數(shù)polyadd,它不是Matlab 工具,因此必須把它拷貝到polyadd.m文件中, 并把該文件和源文件一起拷貝到MATLAB工作區(qū)。polyadd.m文件如下:% polyadd.m % 求兩個多項式之和 functionpoly = polyadd(poly1,poly2)if length(poly1) 0 poly = zeros(1,mz),short + long;else poly = long + short;end% end 現(xiàn)在,就可以進行系統(tǒng)脈沖響應(yīng)的PID控制仿真了。PID控制參數(shù)取為,閉環(huán)系統(tǒng)極點為:s = -8.0412 3.3105 0.0034 0脈沖響應(yīng)曲線如下: 有2個閉環(huán)極點位于平面右半部,系統(tǒng)不穩(wěn)定。從系統(tǒng)響應(yīng)曲線也可看出,系統(tǒng)響應(yīng)是不穩(wěn)定的,不能滿足要求,需要調(diào)整參數(shù)、和,直到獲得滿意的控制結(jié)果。首先增加比例系數(shù),觀察它對響應(yīng)的影響,取,閉環(huán)極點為:s = -2.3635 +20.4396i -2.3635 -20.4396i -0.0001 -0.0001 系統(tǒng)脈沖響應(yīng)曲線如下:系統(tǒng)閉環(huán)極點均位于平面左半部,系統(tǒng)穩(wěn)定。系統(tǒng)穩(wěn)定時間約為2秒,滿足要求。由于此時穩(wěn)態(tài)誤差為0,所以不需要改變積分環(huán)節(jié)(你可以改變積分系數(shù),觀察系統(tǒng)響應(yīng)如何變化);系統(tǒng)響應(yīng)的超調(diào)量比較大,為了減小超調(diào),增加微分系數(shù),取,觀察響應(yīng)曲線:系統(tǒng)響應(yīng)滿足指標要求。2小車位置控制算法的仿真pid2.m是仿真小車位置變化的m文件,文件如下:% pid2.m % 小車位置PID控制 % 輸入倒立擺傳遞函數(shù) G1(s)=num1/den1,G2(s)=num2/den2M = 0.5;m = 0.2;b = 0.1;I = 0.006;g = 9.8;l = 0.3;q = (M+m)*(I+m*l2) -(m*l)2; num1 = m*l/q 0 0;den1 = 1 b*(I+m*l2)/q -(M+m)*m*g*l/q -b*m*g*l/q 0;num2 = -(I+m*l2)/q 0 m*g*l/q;den2 = den1;% 輸入控制器PID數(shù)學(xué)模型 Gc(s)=numPID/denPIDKp = 1;Ki = 1; Kd = 1;numPID = Kd Kp Ki;denPID = 1 0;% 計算閉環(huán)系統(tǒng)傳遞函數(shù)G(s)=num/den% 多項式相乘num = conv(num2,denPID);% 多項式相加den = polyadd(conv(denPID,den2),conv(numPID,num1 );% 求閉環(huán)系統(tǒng)極點r,p,k = residue(num,den);% 顯示閉環(huán)系統(tǒng)極點s = p% 求取多項式傳函的脈沖響應(yīng)t=0:0.005:5;impulse(num,den,t) % 顯示范圍:橫坐標0-5,縱坐標0-10,此條語句參數(shù)可根據(jù)仿真輸出曲線調(diào)整axis(0 5 0 10)grid% end 取,階躍響應(yīng)仿真曲線如下圖所示:由仿真結(jié)果能夠看出,當(dāng)擺桿角度處于很好的閉環(huán)控制下時,小車位置處于失控狀態(tài),會沿著某一方向運動下去。3.3 PID控制實驗 PID控制只能對擺桿角度進行控制,而無法控制小車位置。1實際系統(tǒng)PID仿真實際系統(tǒng)參數(shù)如下: 小車質(zhì)量 1.096 Kg 擺桿質(zhì)量 0.109 Kg 小車摩擦系數(shù) 0 .1N/m/sec 擺桿轉(zhuǎn)動軸心到桿質(zhì)心的長度 0.2 5m 擺桿慣量 0.0034 kg*m*m 加在小車上的力 小車位置 擺桿與垂直方向的夾角 采樣頻率 0.005秒注意:在進行實際系統(tǒng)的Matlab仿真時,請將采樣頻率改為實際系統(tǒng)的采樣頻率。按照上面給出的例子,求出實際系統(tǒng)達到性能指標,PID控制器的參數(shù)。2實驗步驟(1)將小車推到導(dǎo)軌正中間位置,并且使擺桿處于自由下垂的靜止?fàn)顟B(tài)。(2)給計算機和電控箱通電。(3)打開計算機,在DOS操作系統(tǒng)下,鍵入“Pend” 啟動程序,并按“s”使系統(tǒng)處于準備狀態(tài)。(4)按 “”鍵起擺,等擺桿立起來并穩(wěn)定下來之后(此時為LQR控制),選擇”控制器”菜單中的“PID”,輸入?yún)?shù),觀察小車和擺桿的運動;(注意由于PID控制器只對擺桿角度進行了控制,所以在PID中輸入?yún)?shù)后小車可能向一個方向運動,此時需用手輕輕扶一下擺桿)。(5)按“T”停止擺桿,當(dāng)擺桿處于自由下垂的靜止?fàn)顟B(tài),并在”控制器”菜單中選擇“PID”,并參照仿真結(jié)果,輸入PID控制器參數(shù),觀察小車和擺桿的運動,通過調(diào)整參數(shù)可以控制擺桿擺起并能夠豎直向上,此時可能需用手輕輕扶一下擺桿,以避免小車“撞墻”。(6)如果控制效果不理想,調(diào)整控制器參數(shù),直到獲得較好的控制效果。(7)選擇“擾動”菜單中的“小車響應(yīng)”和“擺桿響應(yīng)”,可以看到控制曲線,并可以輸入文件名將曲線保存在當(dāng)前路徑下。(8)到Matlab中運行如下指令,Matlab會將保存的曲線重新繪制出來。S=load(路徑文件名)plot(S)3設(shè)計報告要求(1)給出系統(tǒng)擺桿角度和小車位置的仿真控制圖形及控制器參數(shù),并對各個參數(shù)對系統(tǒng)控制效果的影響進行說明。(2)給出實際控制曲線和控制器參數(shù),并對響應(yīng)的動態(tài)和靜態(tài)指標進行分析。第4章 倒立擺系統(tǒng)的最優(yōu)控制算法設(shè)計現(xiàn)代控制理論的最突出特點就是將控制對象用狀態(tài)空間表達式的形式表示出來,這樣便于對多輸入多輸出系統(tǒng)進行分析和設(shè)計。線性二次型最優(yōu)控制算法()是現(xiàn)代控制理論中一種重要的、基本的方法,算法的目的是在一定的性能指標下,使系統(tǒng)的控制效果最佳,即利用最少的控制能量,來達到最小的狀態(tài)誤差。本章主要利用最優(yōu)控制算法實現(xiàn)對一階倒立擺系統(tǒng)的擺桿角度和小車位置的同時控制。設(shè)計目的:學(xué)習(xí)如何使用狀態(tài)空間法設(shè)計系統(tǒng)的控制算法。設(shè)計要求:用狀態(tài)空間法設(shè)計控制器,使得當(dāng)在小車上施加0.2m的階躍信號時,閉環(huán)系統(tǒng)的響應(yīng)指標為:(1)擺桿角度和小車位移的穩(wěn)定時間小于5秒(2)的上升時間小于1秒(3)的超調(diào)量小于20度(0.35弧度)(4)穩(wěn)態(tài)誤差小于2%。4.1 理論分析1線性二次型最優(yōu)控制已知系統(tǒng)狀態(tài)方程為: (4-1)要求確定最優(yōu)控制向量 (4-2)的矩陣,使得性能指標 (4-3)達到最小。式中是正定(或正半定)實對稱矩陣,是正定實對稱矩陣。方程(4-3)右邊的第一項體現(xiàn)了對系統(tǒng)誤差的要求,第二項體現(xiàn)了對控制信號能量損耗的要求,矩陣和的相對大小,確定了誤差和能量損耗的相對重要性。在此,假設(shè)控制向量是不受約束的。因此,基于二次型性能指標的最優(yōu)控制系統(tǒng)的設(shè)計歸結(jié)為確定矩陣的各元素。采用二次型最優(yōu)控制方法的一個優(yōu)點是除了系統(tǒng)不可控的情況外,所設(shè)計的系統(tǒng)將是穩(wěn)定的。經(jīng)推導(dǎo),當(dāng)二次型最優(yōu)控制問題的性能指標由方程(4-3)定義時,其最優(yōu)控制規(guī)律是線性的,并由給出。其中最優(yōu)控制向量 (4-4)矩陣必須滿足下列方程 (4-5)方程(4-5)稱為退化矩陣黎卡提方程,其設(shè)計步驟如下:(1)解退化矩陣黎卡提方程(4-5)求出矩陣,如果存在正定矩陣(某些系統(tǒng)可能沒有正定矩陣),那么系統(tǒng)是穩(wěn)定的,即矩陣是穩(wěn)定矩陣。(2)將矩陣代入方程(4-4),求得的矩陣就是最優(yōu)矩陣。MATLAB有一條命令,它給出連續(xù)時間黎卡提方程的解,并能確定最佳反饋增益矩陣。2最優(yōu)控制器的設(shè)計在第3章中,我們的輸入是脈沖量,并且在設(shè)計控制器時,只對擺桿角度進行控制,而不考慮小車的位移。然而,對一個倒立擺系統(tǒng)來說,把它作為單輸出系統(tǒng)是不符合實際的,如果把系統(tǒng)當(dāng)作多輸出系統(tǒng)的話,用狀態(tài)空間法分析要相對簡單一些,在這一章我們將設(shè)計一個對擺桿位置和小車位移都進行控制的控制器。系統(tǒng)狀態(tài)方程為在倒立擺相關(guān)參數(shù)為: 小車質(zhì)量 0.5 Kg 擺桿質(zhì)量 0.2 Kg 小車摩擦系數(shù) 0.1 N/m/sec 擺桿轉(zhuǎn)動軸心到桿質(zhì)心的長度 0.3 m 擺桿慣量 0.006 kg*m*m 采樣時間 0.005秒的條件下,狀態(tài)方程系數(shù)矩陣如下:;最優(yōu)控制的前提條件是系統(tǒng)是能控的,下面來判斷一下系統(tǒng)的能控能觀性。系統(tǒng)的能控矩陣的秩 。系統(tǒng)的能觀矩陣的秩 。故系統(tǒng)是能控能觀的。因此可以給系統(tǒng)加上最優(yōu)控制器使得系統(tǒng)閉環(huán)穩(wěn)定,且滿足暫態(tài)性能指標。在運用線性二次型最優(yōu)控制算法進行控制器設(shè)計時,主要的目的就是獲得反饋向量的值。由上一小節(jié)的推導(dǎo)知道,設(shè)計系統(tǒng)狀態(tài)反饋控制器時,一個關(guān)鍵的問題就是二次型性能指標泛函中加權(quán)矩陣和的選取。為了使問題簡化及加權(quán)矩陣具有比較明確的物理意義,我們將取為對角陣。假設(shè) ;這樣得到的性能指標泛函為由上式可以看出,是對的平方的加權(quán),的相對增加就意味著對的要求相對其它狀態(tài)變量嚴格,在性能指標中的比重大,的偏差狀態(tài)相對減小。是對控制量的平方加權(quán),當(dāng)相對較大時,意味著控制費用增加,使得控制能量較小,反饋減弱,而取值較小時,系統(tǒng)控制費用減小,反饋增加,系統(tǒng)動態(tài)響應(yīng)迅速??紤]到一階倒立擺系統(tǒng)在運行過程中,主要的被控量為系統(tǒng)的輸出量和,因此在選取加權(quán)對角陣的各元素值時,由于代表小車位置的權(quán)重,而是擺桿角度的權(quán)重,所以只選取、,而。選取和時需要注意的幾個方面:(1)由于我們采用的系統(tǒng)模型是線性化的結(jié)果,為使系統(tǒng)個狀態(tài)量能夠在線性范圍工作,要求各狀態(tài)量不應(yīng)過大。(2)閉環(huán)系統(tǒng)最好能有一對共軛復(fù)數(shù)極點,這樣有利于克服系統(tǒng)的非線性摩擦,但系統(tǒng)主導(dǎo)極點的模不應(yīng)太大以免系統(tǒng)頻帶過寬,使得系統(tǒng)對噪聲過于敏感,以致系統(tǒng)不能正常工作。(3)加權(quán)矩陣的減小,會導(dǎo)致大的控制能量,應(yīng)注意控制的大小,不要超過系統(tǒng)執(zhí)行機構(gòu)的能力,使得放大器處于飽和狀態(tài)??刂葡到y(tǒng)如下圖所示,圖中R是施加在小車上的階躍輸入,四個狀態(tài)量、和分別代表小車位移、小車速度、擺桿位置和擺桿角速度,輸出包括小車位置和擺桿角度。我們要設(shè)計一個控制器,使得當(dāng)給系統(tǒng)施加一個階躍輸入時,擺桿會擺動,然后仍然回到垂直位置,小車到達新的命令位置。4.2 最優(yōu)控制MATLAB仿真最優(yōu)控制仿真程序為文件lqr1.m,文件如下:% lqr1.m % 最優(yōu)控制% 確定開環(huán)極點的程序如下M = 0.5;m = 0.2;b = 0.1;I = 0.006;g = 9.8;l = 0.3;p = I*(M+m)+M*m*l2;A = 0 1 0 0;0 -(I+m*l2)*b/p (m2*g*l2)/p 0;0 0 0 1;0 -(m*l*b)/p m*g*l*(M+m)/p 0;B = 0; (I+m*l2)/p; 0; m*l/p ;C = 1 0 0 0; 0 0 1 0;D = 0; 0;p = eig(A)% 求向量Kx = 1;y = 1;Q = x 0 0 0; 0 0 0 0; 0 0 y 0 0 0 0 0;R = 1; K = lqr(A,B,Q,R)% 計算LQR控制的階躍響應(yīng)并畫出曲線Ac = (A-B*K);Bc = B;Cc = C;Dc = D;T = 0:0.005:5;U = 0.2*ones(size(T);% 求階躍響應(yīng)并顯示,小車位置為虛線,擺桿角度為實線Y,X = lsim(Ac,Bc,Cc,Dc,U,T); plot(T,Y(:,1),:,T,Y(:,2),-)legend(Cart Position,Pendulum Angle)grid% end 運行程序lqr1.m,得到 lqr1p = 0 5.5651 -0.1428 -5.6041K = -1.0000 -1.6567 18.6854 3.4594 第一步:確定系統(tǒng)的開環(huán)極點為 0、5.5651、-0.1428、-5.6041,可以看出有一個極點位于S平面的右半部,這說明開環(huán)系統(tǒng)不穩(wěn)定。第二步:在取,的條件下,得到反饋控制向量LQR控制的階躍響應(yīng)如圖所示其中,實線代表擺桿的角度,虛線代表小車位置。從圖中可以看出,響應(yīng)的超調(diào)量很小,但穩(wěn)定時間和上升時間偏大,小車的位置沒有跟蹤輸入,而是向相反方向移動,這個問題留給同學(xué)們討論,在這里我們來縮短穩(wěn)定時間和上升時間。可以發(fā)現(xiàn),矩陣中,增加使穩(wěn)定時間和上升時間變短,并且使擺桿的角度變化減小。這里取,則,響應(yīng)曲線如下:如果再增大和,系統(tǒng)的響應(yīng)還會改善。但在保證和足夠小的情況下,系統(tǒng)響應(yīng)已經(jīng)滿足要求了。 現(xiàn)在,要消除穩(wěn)態(tài)誤差。在前面的設(shè)計方法中,是把輸出信號反饋回來乘以一個系數(shù)矩陣,然后與輸入量相減得到控制信號。這就使得輸入與反饋的量綱不一致,因此,為了使輸入與反饋的量綱互相匹配,給輸入乘以增益,如圖所示: 具有量綱匹配的最優(yōu)控制matlab仿真文件為lqr2.m,如下:% lqr2.m % 最優(yōu)控制(量綱匹配) % 確定開環(huán)極點的程序如下M = 0.5;m = 0.2;b = 0.1;I = 0.006;g = 9.8;l = 0.3;p = I*(M+m)+M*m*l2;A = 0 1 0 0;0 -(I+m*l2)*b/p (m2*g*l2)/p 0;0 0 0 1;0 -(m*l*b)/p m*g*l*(M+m)/p 0;B = 0; (I+m*l2)/p; 0; m*l/p ;C = 1 0 0 0;0 0 1 0;D = 0;0; p = eig(A);% 求向量Kx = 5000;y = 100;Q = x 0 0 0;0 0 0 0;0 0 y 00 0 0 0;R = 1; K = lqr(A,B,Q,R)% 計算LQR控制矩陣Ac = (A-B*K);Bc = B;Cc = C;Dc = D;% 計算增益NbarCn = 1 0 0 0;Nbar = rscale(A,B,Cn,0,K);Bcn = Nbar*B;% 求階躍響應(yīng)并顯示,小車位置為虛線,擺桿角度為實線T = 0:0.005:5;U = 0.2*ones(size(T);Y,X = Lsim(Ac,Bcn,Cc,Dc,U,T);plot(T,Y(:,1),:,T,Y(:,2),-)legend(Cart Position,Pendulum Angle)grid% end 文件中用到求取輸入輸出匹配系數(shù)函數(shù)rscale,它不是Matlab 工具,因此必須把它拷貝到rscale.m文件中, 并把該文件和源文件一起拷貝到MATLAB工作區(qū)。rscale.m文件如下:% rscale.m % 求取輸入輸出匹配系數(shù)functionNbar = rscale(A,B,C,D,K) s = size(A,1);Z = zeros(1,s) 1;N = inv(A,B;C,D)*Z;Nx = N(1:s);Nu = N(1+s);Nbar = Nu + K*Nx;% end 用函數(shù)來計算,運行程序,得到: lqr2K = -70.7107 -37.8345 105.5298 20.9238即,可以看出,實際上和向量中與小車位置對應(yīng)的那一項相等。此時系統(tǒng)的響應(yīng)曲線如下,小車位置跟蹤輸入信號,并且,擺桿超調(diào)足夠小,穩(wěn)態(tài)誤差滿足要求,上升時間和穩(wěn)定時間也符合設(shè)計指標。4.3 最優(yōu)控制實驗1實際系統(tǒng)最優(yōu)控制仿真實際系統(tǒng)參數(shù)如下: 小車質(zhì)量 1.096 Kg 擺桿質(zhì)量 0.109 Kg 小車摩擦系數(shù) 0 .1N/m/sec 擺桿轉(zhuǎn)動軸心到桿質(zhì)心的長度 0.2 5m 擺桿慣量 0.0034 kg*m*m 加在小車上的力 小車位置 擺桿與垂直方向的夾角 采樣頻率 0.005秒注意:在進行實際系統(tǒng)的Matlab仿真時,請將采樣頻率改為實際系統(tǒng)的采樣頻率。按照上面給出的例子,求出實際系統(tǒng)達到性能指標,LQR控制器的參數(shù)。2實驗步驟(1)小車推到導(dǎo)軌正中間位置,并且使擺桿處于自由下垂的靜止?fàn)顟B(tài)。(2)給計算機和電控箱通電。(3)打開計算機,在DOS操作系統(tǒng)下,鍵入“Pend” 啟動程序,并按“s”使系統(tǒng)處于準備狀態(tài)。(4)在“控制器”菜單中選擇“LQR”,并根據(jù)計算結(jié)果,輸入控制器參數(shù),確定后觀察系統(tǒng)的運行狀態(tài)。(5)如果控制效果不理想,適當(dāng)調(diào)整參數(shù),直到獲得較好的控制效果。(6)在“擾動”菜單中選擇
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 醬油食醋的發(fā)酵過程監(jiān)測技術(shù)考核試卷
- 嵌入式系統(tǒng)開發(fā)實戰(zhàn)模擬試題及答案
- 有線電視傳輸網(wǎng)絡(luò)網(wǎng)絡(luò)功能虛擬化技術(shù)考核試卷
- 金屬密封件密封性能優(yōu)化考核試卷
- 硬件描述語言的應(yīng)用試題及答案
- 通信設(shè)備零售價格策略與彈性分析考核試卷
- 聚乙烯醇縮丙醛纖維應(yīng)用考核試卷
- 租賃業(yè)務(wù)中的風(fēng)險規(guī)避措施考核試卷
- 公路工程考試考點總結(jié)試題及答案
- 軟件測試過程中的挑戰(zhàn)與解決方案試題及答案
- 低壓電氣裝置的設(shè)計安裝和檢驗第三版
- 國際商務(wù)管理超星爾雅滿分答案
- 監(jiān)理人員考勤表
- 克麗緹娜直銷獎金制度
- 基本醫(yī)療保險參保人員丟失醫(yī)療費用票據(jù)補支申請
- 二年級語文下冊課件-語文園地二8-部編版(共15張PPT)
- 高血壓病人的護理(PPT)
- DB11-T 825-2021綠色建筑評價標準
- DB34T 3944-2021 靜力觸探應(yīng)用技術(shù)規(guī)程
- 4例先天性高胰島素血癥患兒的護理
- 民辦學(xué)?;I設(shè)批準書
評論
0/150
提交評論