根據(jù)雙閉環(huán)PID控制控制的一階倒立擺控制系統(tǒng)設(shè)計_第1頁
根據(jù)雙閉環(huán)PID控制控制的一階倒立擺控制系統(tǒng)設(shè)計_第2頁
根據(jù)雙閉環(huán)PID控制控制的一階倒立擺控制系統(tǒng)設(shè)計_第3頁
根據(jù)雙閉環(huán)PID控制控制的一階倒立擺控制系統(tǒng)設(shè)計_第4頁
根據(jù)雙閉環(huán)PID控制控制的一階倒立擺控制系統(tǒng)設(shè)計_第5頁
已閱讀5頁,還剩34頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、自動控制原理課程設(shè)計說明基于雙閉環(huán)PID控制的一階倒立擺控制系統(tǒng)設(shè)計姓學(xué)學(xué)專名:口號:院:業(yè):指導(dǎo)教師:2018 年 1 月目錄1 任務(wù)概述1.1 設(shè)計概述1.2 要完成的設(shè)計任務(wù):2 系統(tǒng)建模2.1 對象模型2.2 模型建立及封裝3 仿真驗證 實驗設(shè)計 建立 M 文件編制繪圖子程序.1.1.雙閉環(huán) PID 控制器設(shè)計1.54.1 內(nèi)環(huán)控制器的設(shè)計1.54.2 外環(huán)控制器的設(shè)計1.6仿真實驗1.85.1 簡化模型.1.85.2 仿真實驗.2.0檢驗系統(tǒng)的魯棒性6 1 編寫程序求系統(tǒng)性能指標6.2 改變參數(shù)驗證控制系統(tǒng)的魯棒性.2.4.7 結(jié)論2.7.附錄2.8.1

2、任務(wù)概述1.1 設(shè)計概述如圖 1 所示的“一階倒立擺控制系統(tǒng)” 中,通過檢測小車位置與擺桿的擺動角, 來適當控制驅(qū)動電動機拖動力的大小, 控制器由一臺工業(yè)控制計算機 (IPC) 完成。這是一個借助于“ SIMULINK封裝技術(shù)一一子系統(tǒng)”,在模型驗證的基礎(chǔ)上,采用雙閉環(huán)PID控制方案,實現(xiàn)倒立擺位置伺服控制的數(shù)字仿真實驗。1.2要完成的設(shè)計任務(wù):(1) 通過理論分析建立對象模型(實際模型),并在原點進行線性化,得到線性化模型;將實際模型和線性化模型作為子系統(tǒng), 并進行封裝,將倒立擺的振子質(zhì)量m和倒擺長度L作為子系統(tǒng)的參數(shù),可以由用戶根據(jù)需要輸入;(2) 設(shè)計實驗,進行模型驗證;(3) 一階倒立

3、擺系統(tǒng)為“自不穩(wěn)定的非最小相位系統(tǒng)”。將系統(tǒng)小車位置作為“外 環(huán)”而將擺桿擺角作為“內(nèi)環(huán)”,設(shè)計內(nèi)化與外環(huán)的PID控制器;在單位階躍輸入下,進行 SIMULINK仿真;(5)編寫繪圖程序,繪制階躍響應(yīng)曲線,并編程求解系統(tǒng)性能指標:最大超調(diào)量、調(diào)節(jié)時間、上升時間;(6)檢驗系統(tǒng)的魯棒性:將對象的特性做如下變化后,同樣在單位階躍輸入下,檢驗所設(shè)計控制系統(tǒng)的魯棒性能,列表比較系統(tǒng)的性能指標(最大超調(diào)量、調(diào)節(jié)時 間、上升時間)。倒擺長度L不變,倒立擺的振子質(zhì)量m從1kg分別改變?yōu)?.5kg、2kg、2.5kg、0.8kg、0.5kg ; 倒立擺的振子質(zhì)量m不變,倒擺長度L從0.3m分別改變?yōu)?.5m、

4、0.6m、0.2m、0.1m。2系統(tǒng)建模2.1對象模型階倒立擺的精確模型的狀態(tài)方程為:.V二十伽卩+比-亦孑邛訕血)/(1昇”山W初0+(八用卜刖丫cm沖)d =(川£ 0 F +血伙 cost?-滬-(+ iftiiH 4 纟血9)/(卅法皿'H - (A; + 冊川 J 亠川F)若只考慮0在其工作點? = 0附近的細微變化,這時可以將模型線性化,這時可以近似認為:心軽 uiHqq , cost?一階倒立擺的簡化模型的狀態(tài)方程為:V J +川/?疝-wr己亠童6 ) /(1憶譏*訂+川)一憫遼')§ = thL 一(df + 帥伽 Eg© ) /

5、 (»*£ CVJ T 用F i)2.2模型建立及封裝上邊的圖是精確模型,下邊的是簡化模型。Cb*1仙'Fea=Q©=- 0=一rtjrrtjrIntKTEnmal+ 打丹To*圖2模型驗證原理圖2、由狀態(tài)方程可求得:Fcn:(4/3*u1+4/3*m*l*si n(u3)* power(u2,2)- 10*m*si n(u3)*cos(u3)/(4/3*(1+m)-m* po wer(cos(u3),2)Fcn1:(cos(u3)*u1+m*l*si n(u3)*cos(u3)* po wer(u2,2)- 10*(1+m)*si n(u3)/(m*l*

6、 po wer(cos(u3),2)-4/3*l*(1+m)Fun 2:(4*u1-30*m*u3)/(4+m)Fun 3:(u1-10*(1+m)*u3)/(m*l-4/3*l*(1+m)2(其中J =牛,小車質(zhì)量M=1kg,倒擺振子質(zhì)量m,倒擺長度2L,重力加速 度 g=10m/ ?)將以上表達式導(dǎo)入函數(shù)。3、如下圖框選后選擇 create subsystem1. >1Z 1)sMaitarftp* 口】圖3封裝4、封裝之后如下圖Step> xy.matOjMIn1ajl2To FileSubsystemSubsysierm圖4子系統(tǒng)建立5、將精確模型subsystem和簡化模

7、型subsystemi組合成以下系統(tǒng)以供驗證,注意add的符號是+,不是+-,網(wǎng)上其他的課設(shè)都是錯的。(輸入信號是由階躍信號合成的脈沖,幅值為0.05,持續(xù)時間(step time)為0.1s)。圖5系統(tǒng)模塊封裝,則彈出如6、鼠標右擊子系統(tǒng)模塊,在模塊窗口選項中選擇 Mask->edit mask下窗口。Cortnob 二 Parametef帀Ed孔4' Check bOMI Till 斗 PopupSt Rjdio button,".DitiTypeStr-,Min Ma(了 Slidere Did11 SpinboxPromotBDialog boxTypeProm

8、pt=r:DevcGtoupVaiAM dkbscr ip:jun>Dew. 1 ExtVdr陽卸護ef<jiT£i”p¥a” IProperty editor TPrt7*rti±*Marne Prompt Typ?IQihil'OgEnableVcib'le-layoutItem IqcalianPrsmetefCroupvafSimuHnlc;ttxidio:Tn,匕T一叫MiNfNew rcwL DtspluyLJ. GriXip b(H:Tab.tolbfK棉 ePdt PuneA TextDrag or Click iter

9、ns in Ifcetr paletne w add to dialogUm? D«W4 key lo ieiTiD« ilems frie di岀ogn-K- IJ .'If %OK Cjncd HelpApply圖6添加參數(shù)prompt 中的m和L意思7、點擊左邊菜單欄的edit,添加參數(shù)m和L,注意是之后對話框中的提示詞,而name中的m和L是要被prompt中輸入的值導(dǎo)入的變量,如果name中填錯了,那么之后的值將無法導(dǎo)入。空 I - r jiror :、二t?護;yuIcon & Ports PaT,imeter&i bialog Init

10、ialization Dccumentation Controls六-PsritrnpTPrIZ3Edit同 Check box 玄 Popup逐 iRcdio buitcEMbsTypeSt 一 Min.-. MdXSlider# DialK Spinboxm Promote-Display-Group boM.ColldiJibleFP anelA t>xtPrornpTK'iMdskDescriptionniPiramewr5NjinclUg'eiTQupgrDescTeKtVarPa ram eterCroup Va rProperty editor 非npp e

11、rtie&NamePiomptryp*=1 DialogEnableVi 石 blpiLiiyoutItem luLaiionGroup VxiT %<Mj£kryp#> roupboxI New ro?j'Ur maskPreview8、在系統(tǒng)模型中,Drag Of Uick items in left pulctlc? to dtld lu dMiog. Use D*l*t4 key to romovo items trom dialog.圖7編輯參數(shù)OK CancelHmlp Apply雙擊子系統(tǒng)模塊,則會彈出一個新窗口,在新窗口中可以輸入m和L的值

12、,之后將會輸入,如圖8所示。圖8輸入?yún)?shù)3仿真驗證3.1實驗設(shè)計假定使倒立擺在(0=0 , x=0 )初始狀態(tài)下突加微小沖擊力作用,則依據(jù)經(jīng)驗 知,小車將向前移動,擺桿將倒下。3.2建立M文件編制繪圖子程序1 -clcnload v. inifit3 -t-signals (1, : ) *4-f=slgnals(2,:>:唏i駅作用tfF信昌5-x-signals (3, : ) *唏決取怙確喚業(yè)屮的小帚住豊皓號fi -q=pl gnal? ( t :):唏訂二取補確?梨中倒推撰角信號1 xx=signal3(5.:);*»(|瀆取簡化模型中1的小乍位遑侶號S <iq=

13、signfll9 CG.:):唏応取箭化摸型中忸立擺找和信49 -figure 唏足楚第-r罔舵10 -hf=linettH f.唏連播時間 忙用力曲線11 grid on:12 一jclabi?!( Tidiu? (si')%; /橫邯一怖13 一ylabel(' Votce.(?' 1唏工込縱*標14 一axi£(0 1 0 ). 12JI15 axet=asesPnsi inn" , get (gca. ' Position/ )',. le' K.*xi sLucat ion',-lonij'.17&#

14、39;YA i sl.<rir-at iru< , ' r ignt" J tclcF ,'iKnp' .13' XColor' / k/ YColor' / k ) %址乂曲線性19 -ht=11 nett, X* ' rolob,i,' pare ni". axet);%連檯時間一卜乍何筒曲字龍20 -bt=lineCt, sx. color' : ' i ' , ' paietit' * axet) *嘟生按時間-卜4璉段曲絨21 -ylabel(

15、9; Evol ut ioii ofxposiTionCiiO )%定丈土標客稱d £-axis CO 1 0 0. 1)23 =t itlefs aad x' ' in :newer to a f(t| pulse of Oh i x' 弔it.*往線標逼名網(wǎng)24-atext (' le; taiTOff f (t)'), gt#xt C x(L)rigJitarrow' ) , gtext C A-ftiiirc?* / (U')2526-fipjrff (2)27 hf=Lirie (t, f (:) ;25-grid 2

16、t.凹-ilabelT 丄山匕')30-ylabelForce'J')31 -aset-asea ( PosiTior',Wgca»' Politic:;'), 132' XAxisLoca" ion", 女1 : cun',.33' YAx:3Lof a:iQi/ ,' I'lgli< .' colof',H .,:34' Coot" / t' / VColcir* . ' k' );衛(wèi)-hbMtlph.(1,&

17、#39;pnrtTi:', &XEt);恥=ht=Line'(t, qq, ' eolor' / r' / paren:', axei):37 -y Iflbel ('eve 1 lit ion I I'ad)')36-asiarC" 1 -a 3 0)39 -t itlef' j<e5ponse theatt ? dnd' llirdd tc 己 f (tj pulse- uf 0. 1 N')恥_giesi -.lefTiH'Ort' f (r)'

18、), gwjti C ' t'.i?:;i- :i<*' >. gtexT (' " ler.di B <* tt.eTcJ繪圖子程序(提示:附錄中有子程序方便大家Ctrl+c (人人),上邊只是為了方便對照)。1、在系統(tǒng)模型中,雙擊子系統(tǒng)模塊,則會彈出一個新窗口,在新窗口中輸入m和I值,點擊0K并運行,如圖10所示。Paraaie*4rsHR IHelpApr ly圖10輸入?yún)?shù)2、如圖設(shè)置to file模塊的參數(shù),Variable name 的名字就是M程序中的函數(shù)名,這里如果不是signals的話程序是無法運行的。Save fo

19、rmat要選擇Array ,因為程序是按數(shù)組形式調(diào)取變量的,沒有選擇Array的話運行程序會出現(xiàn)“索引超出矩陣維度”的錯誤。嚀J 'z?r= , F-erei ± 心To PIWTncr-miitil ly n-1 +e data liito a vnrlatl 亡 In Hi# specified MAT-f J iH.The variable may be cre-sted am 事 HATLAB t lireserles» an or s MaTLAB sti uctbu'e.array,MATLAB tlm-iceries may be UGcd f

20、or- any datacompleteLty,or?ns. LoseTns & bus -Isn力 1 prodijcea a MAT:.ARstruuturu structurethat ratclns the Vus Glujfarcny* Is a LLVTL/H times er Les object.Eauh leaf or ttie1Ind L 5ily ±cr vec tor". kluLitdia*AnyClujIi coliLiiitn of Llie array Llis a tineand 3 vec + cQT crnnta 1 ntnc

21、the ccorrespondne :5ntfsequent rz*w5.rwriuollLpI eU InpLlli:?, Ill Ihu f li'sL i'Oiv dritri snmpl e Ln tlif?Paracie tersFile name:XT-VarliblfrfslgnlESave fcmiftt i lArrnyLiediziation:Samp-J!_ L Ijiic' ( for Inherited):OKCnr-ftl圖11 to file參數(shù)設(shè)置3、運行M文件程序,執(zhí)行該程序的結(jié)果如圖 8所示。X wd l'ih mAfheiM

22、01no?"1點 tI0»£ * bLdAMClD1LkJQBOMTo»o(王蘭Qrt-flI'Hagraa 叫nd 站InoTD i UiOLiftfl1fliQj0*05朮E*PtQi圖12模型驗證仿真結(jié)果小車位置逐漸“一階倒立從中可見,在0.1N的沖擊力下,擺桿倒下(0由零逐步增大), 增加,這一結(jié)果符合前述的實驗設(shè)計,故可以在一定程度上確認該擺系統(tǒng)”的數(shù)學(xué)模型是有效的。同時,由圖中也可以看出,近似模型在0.8s以前與精確模型非常接近,因此,也可以認為近似模型在一定條件下可以表達原 系統(tǒng)模型的性質(zhì)。4雙閉環(huán)PID控制器設(shè)計一級倒立擺系統(tǒng)位置

23、伺服控制系統(tǒng)如圖 13所示。"卜W圖13 一級倒立擺系統(tǒng)位置伺服控制系統(tǒng)方框圖4.1內(nèi)環(huán)控制器的設(shè)計內(nèi)環(huán)采用反饋校正進行控制。圖14內(nèi)環(huán)系統(tǒng)結(jié)構(gòu)圖反饋校正采用PD控制器,設(shè)其傳遞函數(shù)為D2(s) = ?,為了抑制干擾,在 前向通道上加上一個比例環(huán)節(jié)D2(s)= K控制器參數(shù)的整定:設(shè)D2(s)的增益K = -20,貝U內(nèi)環(huán)控制系統(tǒng)的閉環(huán)傳遞函數(shù)為6421+ KK,G吐注$2 十64A> +64心-40令& 0.764K.-40 = 6464K =2xOJx7a£ =0,175 心二 1 £25內(nèi)環(huán)控制器的傳遞函數(shù)為:D2(s) = 0.175?% 1

24、.62564內(nèi)環(huán)控制系統(tǒng)的閉環(huán)傳遞函數(shù)為:W2(S)= ?+112?+644.2外環(huán)控制器的設(shè)計(5)6(A)= 廠(V" +11 r 亍_|_ 64) 外環(huán)系統(tǒng)前向通道的傳遞函數(shù)為: I,十i十T圖12外環(huán)系統(tǒng)結(jié)構(gòu)圖a對外環(huán)模型進行降階處理,若忽略 W2(s)的高次項,則近似為一階傳遞函數(shù)為:,y對模型??(?進行近似處理,則??(?的傳遞函數(shù)為:外環(huán)控制器采用PD形式,其傳遞函數(shù)為:?(?= ?(?1)采用單位反饋構(gòu)成外環(huán)反饋通道,則 D1(s),則系統(tǒng)的開環(huán)傳遞函數(shù)為:W心)=仙)q(3“)D(W)=Ky ( TA +1)LH + 57 '采用基于Bode圖法的希望特性

25、設(shè)計方法,得?= 0.12,7= 0.87,取仟1,則外環(huán)控制器的傳遞函數(shù)為口(,)= 0.12( S +1)圖13系統(tǒng)仿真結(jié)構(gòu)圖5仿真實驗5.1簡化模型1、根據(jù)已設(shè)計好的PID控制器,可建立圖14系統(tǒng),設(shè)置仿真時間為10ms ,單擊運行。這個仿真是為了便于理解。圖14 SIMULINK仿真框圖3、新建M文件,輸入以下命令并運行%將導(dǎo)入到 PID.mat 中的仿真試驗數(shù)據(jù)讀出load PID.mat t=signals(1,:);q=signals(2,:);x=signals(3,:); %drawing x(t) and thera(t) response signals %畫小車位置和擺

26、桿角度的響應(yīng)曲線 figure(1) hf=line(t,q(:);grid on xlabel ('Time (s)') axis(0 10 -0.3 1.2) ht=line(t,x,'color','r');axis(0 10 -0.3 1.2) title('theta(t) and x(t) Response to a step input') gtext('leftarrow x(t)'),gtext('theta(t) uparrow')執(zhí)行該程序的結(jié)果如圖 15 所示4|i:Q.4

27、IIfl5.2仿真實驗圖15仿真結(jié)果注意,圖中子系統(tǒng)為簡化模型而不是精密模型(MMP網(wǎng)上的寫的精密模型,調(diào)了好久才發(fā)現(xiàn))。W FIDJTHl.oScopeWUftlafl) RMDonM © a (W Knif1丄-一_-1-d flot-a 4a 1-一-1JJ1Jc111*舌JA圖17系統(tǒng)仿真結(jié)果圖6檢驗系統(tǒng)的魯棒性檢驗系統(tǒng)的魯棒性:將對象的特性做如下變化后,同樣在單位階躍輸入下,檢驗 所設(shè)計控制系統(tǒng)的魯棒性能,列表比較系統(tǒng)的性能指標(最大超調(diào)量、調(diào)節(jié)時間、 上升時間)。6 . 1編寫程序求系統(tǒng)性能指標新建Pid.m文件,輸入以下命令并保存load PID.mat cic t=s

28、ig nals(1,:);x=signals(2,:);q=signals(3,:);figure(1) hf=line(t,q(:);grid on axis(0 10 -0.3 1.2) ht=line(t,x,'color','r');r=size(signals); e=r(1,2);C=x(1,e); % 得到系統(tǒng)終值y_max_overshoot=100*(max(x)-C)/C %超調(diào)量計算r1=1;while (x(r1)<0.1*C) r1=r1+1; end r2=1;while (x(r2)<0.9*C) r2=r2+1;end

29、 x_rise_time=t(r2)-t(r1) % 上升時間計算s=length(t);while x(s)>0.98*C&&x(s)<1.02*C s=s-1;end x_settling_time=t(s) % 調(diào)整時間計算C1=q(1,e);%超調(diào)量計算max_y,k=max(q);q_max_overshoot=max(q)-C1 q_rise_time=t(k) % 上升時間計算s=length(t);while q(s)>-0.02&&q(s)<0.02 s=s-1;end q_settling_time=t(s) % 調(diào)整

30、時間計算6.2 改變參數(shù)驗證控制系統(tǒng)的魯棒性倒擺長度L不變,倒立擺的振子質(zhì)量m從1kg分別改變?yōu)?.5kg、2kg、2.5kg、0.8kg >0.5kg ;倒立擺的振子質(zhì)量m不變,倒擺長度L從0.3m分別改變?yōu)?.5m、0.6m 、 0.2m 、 0.1m 。在單位階躍輸入下,檢驗所設(shè)計系統(tǒng)的魯棒性1 、 改變輸入?yún)?shù)并運行,再運行 pid.m 文件,得到響應(yīng)曲線及性能指標,記錄表102*9*95 昨'GarEan25出rdaQai1Gan:nergjfil-L 玉O- in.3P 4r5neter=<|1ns對象參數(shù):性能指標振子質(zhì)倒量擺長,嚴最大超調(diào)量調(diào)節(jié)時間I上升時間

31、度xrX0圖18改變輸入?yún)?shù)10.31.5 0.322.5 0.30.8 I 11110.314.115512515.60954.01 1.2605.3333 i9”5B1649.1058.33 3S).7731.4857 8.3509.1962k7144.7558).6862.5169 93.2632.327715.45(011196.4006.0717.272B1166.05b5.3415.3468.315411.98321555.2784.8402.1323.42860.5 12.02451693.6026.5867.2342.475297.3124.336300.20

32、.115.16321107.1334.1016328!097358642171278132645.1799.6140.1058.33380.7731.4857表1性能坐標比較2、仿真實驗的結(jié)果如圖19所示:IIId-U-17-dE?-u-<1- 圖19改變倒立桿質(zhì)量和長度時系統(tǒng)仿真結(jié)果7結(jié)論結(jié)論:1、原系統(tǒng)在0.1N的沖擊力下,擺桿倒下(0由零逐步增大),小車位置逐漸增加,這一結(jié)果符合前述的實驗設(shè)計, 故可以在一定程度上確認該“一階倒立擺系 統(tǒng)”的數(shù)學(xué)模型是有效的。驗證實驗中,通過精確模型與簡化模型比較,從圖中 可以看出,0.8s以前是非常接近,因此,也可以認為近似模型在一定條件下可以

33、表達原系統(tǒng)模型的性質(zhì)。2、經(jīng)過雙閉環(huán)PID控制的系統(tǒng),能跟隨給定并穩(wěn)定下來,且0終值為 0使擺桿不倒。說明 PID 控制有效。3、改變倒立擺的擺桿質(zhì)量 m和長度L。從圖11中可以看出,在參數(shù)變化的一定范圍內(nèi)系統(tǒng)保持穩(wěn)定,控制系統(tǒng)具有一定的魯棒性。附錄q=signals(4,: );%讀取精確模型中倒擺擺角信號xx=signals(5,: );%讀取簡化模型中的小車位置信號qq=signals(6,: );%讀取簡化模型中倒立擺擺角信號figure(1)%定義第一個圖形hf=line(t,f(:);%連接時間 - 作用力曲線grid on;xlabel('Time(s)')%定義橫坐標ylabel('Force(N)')%定義縱坐標axis(0 1 0 0.12)%定義坐標范圍axet=axes('Position',get(gca,'Position'),.'XAxisLocation','bottom',.'YAxisLocation','right&#

溫馨提示

  • 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)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論