![智能控制課后仿真_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/20/76944dc7-b703-4f17-bcb4-31412f0b9107/76944dc7-b703-4f17-bcb4-31412f0b91071.gif)
![智能控制課后仿真_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/20/76944dc7-b703-4f17-bcb4-31412f0b9107/76944dc7-b703-4f17-bcb4-31412f0b91072.gif)
![智能控制課后仿真_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/20/76944dc7-b703-4f17-bcb4-31412f0b9107/76944dc7-b703-4f17-bcb4-31412f0b91073.gif)
![智能控制課后仿真_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/20/76944dc7-b703-4f17-bcb4-31412f0b9107/76944dc7-b703-4f17-bcb4-31412f0b91074.gif)
![智能控制課后仿真_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/20/76944dc7-b703-4f17-bcb4-31412f0b9107/76944dc7-b703-4f17-bcb4-31412f0b91075.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、智能控制課后仿真報告 院 (系): 電氣與控制工程學(xué)院 專業(yè)班級: 自動化1301班 姓 名: 楊 光 輝 學(xué) 號: 1306050115 題目2-3: 求二階傳遞函數(shù)的階躍相應(yīng)取采樣時間為1ms進行離散化。參照專家控制仿真程序,設(shè)計專家PID控制器,并進行MATLAB仿真。專家PID 控制MATLAB仿真程序清單:%Exoert PID Controllerclear all;%清理數(shù)據(jù)庫中所有數(shù)據(jù)close all;%關(guān)閉所有界面圖形ts=0.001;%對象采樣時間,1mssys=tf(133,1,25,0);%受控對象的傳遞函數(shù)dsys=c2d(sys,ts,'z');%
2、連續(xù)系統(tǒng)轉(zhuǎn)化為離散系統(tǒng)num,den=tfdata(dsys,'v');%離散化后參數(shù),得num和den值u_1=0;u_2=0;%設(shè)定初值,u_1是第(k-1)步控制器輸出量y_1=0;y_2=0;%設(shè)定初值,y_1是第(k-1)步系統(tǒng)對象輸出量x=0,0,0'%設(shè)定誤差x1誤差導(dǎo)數(shù)x2誤差積分x3變量初值x2_1=0;%設(shè)定誤差導(dǎo)數(shù)x2_1的初值kp=0.6;%設(shè)定比例環(huán)節(jié)系數(shù)ki=0.03;%設(shè)定積分環(huán)節(jié)系數(shù)kd=0.01;%設(shè)定微分環(huán)節(jié)系數(shù)error_1=0;%設(shè)定誤差error_1的初值for k=1:1:5000%for循環(huán)開始,k從1變化到500,每步的增
3、量為1time(k)=k*ts;%仿真時長0.001 0.5sr(k)=1.0;%Tracing Step Signal 系統(tǒng)輸入信號u(k)=kp*x(1)+kd*x(2)+ki*x(3);%PID ControllerPID控制器%Expert control rule%Rule1:Unclosed control rule規(guī)則1:開環(huán)控制if abs(x(1)>0.8%if循環(huán)開始,產(chǎn)生式規(guī)則,if.then.;誤差的絕對值大于u(k)=0.45;%控制器輸出量等于elseif abs(x(1)>0.40u(k)=0.40;elseif abs(x(1)>0.20u(k
4、)=0.12;elseif abs(x(1)>0.01u(k)=0.10;end%if循環(huán)結(jié)束%Rule2規(guī)則2if x(1)*x(2)>0|(x(2)=0)%if循環(huán)開始,如果誤差增大或不變if abs(x(1)>=0.05%內(nèi)嵌if循環(huán)開始,如果誤差絕對值大于u(k)=u_1+2*kp*x(1);%控制器輸出量施加較強控制else%否則u(k)=u_1+0.4*kp*x(1);%控制器輸出量施加一般控制end%內(nèi)嵌if循環(huán)結(jié)束end%if循環(huán)結(jié)束%Rule3規(guī)則3if (x(1)*x(2)<0&x(2)*x2_1>0)|(x(1)=0)%if循環(huán)開始,
5、如果誤差減小或消除u(k)=u(k);%控制器輸出量不變end%if循環(huán)結(jié)束%Rule4規(guī)則4if x(1)*x(2)<0&x(2)*x2_1<0%if循環(huán)開始,如果誤差處于極值狀態(tài)if abs(x(1)>=0.05%內(nèi)嵌if循環(huán)開始,如果誤差絕對值大于u(k)=u_1+2*kp*error_1;%控制器輸出量施加較強控制else%否則u(k)=u_1+0.6*kp*error_1;%控制器輸出量施加一般控制end%內(nèi)嵌if循環(huán)結(jié)束end%if循環(huán)結(jié)束%Rule5:Integration separation PI control規(guī)則5;運用PI控制來消除誤差if a
6、bs(x(1)<=0.001 %if循環(huán)開始如果誤差絕對值小于(很?。﹗(k)=0.5*x(1)+0.010*x(3);%控制器輸出量用比例和積分輸出end%if循環(huán)結(jié)束%Restricting the output of controller對控制輸出設(shè)限if u(k)>=10u(k)=10;%設(shè)控制器輸出量上限值endif u(k)<=-10u(k)=-10;%設(shè)控制器輸出量下限值end%Linear model Z變化后系統(tǒng)的線性模型y(k)=-den(2)*y_1-den(3)*y_2+num(1)*u(k)+num(2)*u_1+num(3)*u_2;error(k
7、)=r(k)-y(k);%系統(tǒng)誤差error的表達式,等于系統(tǒng)輸入減去輸出%-Return of parameters-%每步計算時的參數(shù)更新u_2=u_1;u_1=u(k);%u(k)代替u_1y_2=y_1;y_1=y(k);%y(k)代替y_1x(1)=error(k);%Calculating P 賦誤差error值于x1x2_1=x(2);%賦值前步計算時的誤差導(dǎo)數(shù)X2的值等于X2_1x(2)=(error(k)-error_1)/ts;% Calculating D 求誤差導(dǎo)數(shù)x2,用于下一步的計算x(3)=x(3)+error(k)*ts;% Calculating I 求誤差積
8、分x3error_1=error(k);%賦誤差error值于error_1end%for循環(huán)結(jié)束,整個仿真時長計算全部結(jié)束figure(1);%圖形1plot(time,r,'b',time,y,'r');%畫圖,以時間為橫坐標(biāo),分別畫出系統(tǒng)輸入、輸出隨時間的變化曲線xlabel('time(s)');ylabel('r,y');%標(biāo)注坐標(biāo)figure(2);%圖形2plot(time,r-y,'r');%畫r-y,即誤差隨時間的變化曲線xlabel('time(s)');ylabel('
9、error');%標(biāo)注坐標(biāo)專家PID 控制MATLAB仿真程序過程及結(jié)果:1.在MATLAB編輯環(huán)境下編寫專家PID控制仿真程序2.編譯運行程序后Figure1:PID控制階躍響應(yīng)曲線Figure2:誤差響應(yīng)隨時間變化曲線題目3-4: 如果且,則?,F(xiàn)已知且,利用模糊推理公式(3.27)和(3.28)求,并采用MATLAB進行仿真。模糊推理MATLAB仿真程序清單:clear all;%清理數(shù)據(jù)庫中所有數(shù)據(jù)close all;%關(guān)閉所有界面圖形?A=1;0.5;%輸入各元素在A中的隸屬度B=0.1,0.5,1;%輸入各元素在B中的隸屬度C=0.2,1;%輸入各元素在C中的隸屬度%Comp
10、ound of A and B %合成A和Bfor i=1:2%A矩陣的行數(shù)取值ifor j=1:3%B矩陣的列數(shù)取值j AB(i,j)=min(A(i),B(j);%實現(xiàn)A,B的“與”關(guān)系end end %Transfer to Column %轉(zhuǎn)換列向量T1=;%定義轉(zhuǎn)置矩陣T1for i=1:2%AB矩陣的行數(shù)取值i T1=T1;AB(i,:)'%轉(zhuǎn)置AB矩陣end %Get fuzzy R %確立模糊關(guān)系矩陣Rfor i=1:6%R矩陣列數(shù)取值i for j=1:2%R矩陣行數(shù)取值j R(i,j)=min(T1(i),C(j);%確定模糊關(guān)系矩陣Rend end%A1=0.8,
11、0.1;%輸入各元素在A1中的隸屬度 B1=0.5,0.2,0;%輸入各元素在B1中的隸屬度 for i=1:2%A1矩陣的行數(shù)取值i for j=1:3%B1矩陣的行數(shù)取值j AB1(i,j)=min(A1(i),B1(j);%實現(xiàn)A1和B1的“與”關(guān)系end end %Transfer to Row%轉(zhuǎn)換行向量 T2=;%定義轉(zhuǎn)置矩陣T2for i=1:2%AB1矩陣的行數(shù)取值iT2=T2,AB1(i,:);%擴展A1B1矩陣end %Get output C1%確定輸出for i=1:6%轉(zhuǎn)置矩陣T2列數(shù)取值for j=1:2%模糊矩陣R行數(shù)取值 D(i,j)=min(T2(i),R(i
12、,j); C1(j)=max(D(:,j);%輸出C1矩陣 end end模糊推理MATLAB仿真程序過程及結(jié)果:1.在MATLAB編輯環(huán)境下編寫模糊推理仿真程序2.編譯運行程序后AB與關(guān)系:轉(zhuǎn)置矩陣T1:模糊矩陣R:A1B1與關(guān)系:轉(zhuǎn)置矩陣T2:輸出矩陣C1:題目4-3: 已知某一爐溫控制系統(tǒng),要求溫度保持在600恒定。針對該控制系統(tǒng)有以下控制經(jīng)驗:(1)若爐溫低于600,則升壓;低得越多升壓越高。(2)若爐溫高于600,則降壓;高得越多降壓越低。(3)若爐溫等于600,則保持電壓不變。設(shè)模糊控制器為一維控制器,輸入語言變量為誤差,輸出為控制電壓。輸入、輸出變量的量化等級為7級,取5個模糊集
13、。試設(shè)計隸屬度函數(shù)誤差變化劃分表、控制電壓變化劃分表和模糊控制規(guī)則表。解:輸入(e)以及輸出(u)分為5個模糊集:NB、NS、ZO、PS、PB。輸入變量(e)以及輸出變量(u)分為7個等級:-3、-2、-1、0、+1、+2、+3。爐溫變化e劃分表隸屬度變化等級-3-2-10123模糊集PB000000.51PS000010.50ZO000.510.500NS00.510000NB10.500000控制電壓變化劃分表隸屬度變化等級-3-2-10123模糊集PB000000.51PS000010.50ZO000.510.500NS00.510000NB10.500000模糊控制規(guī)則表若(IF)NB
14、eNSeZOePSePBe則(THEN)NBuNSuZOuPSuPBu爐溫模糊控制MATLAB仿真程序清單:%Fuzzy Control for furnace temperatureclear all;%清理數(shù)據(jù)庫中所有數(shù)據(jù)close all;%關(guān)閉所有界面圖形a=newfis('fuzz_temperature');%模糊爐溫a=addvar(a,'input','e',-3,3);%Parameter e輸入?yún)?shù)e的取值范圍a=addmf(a,'input',1,'NB','zmf',-3,-
15、1);a=addmf(a,'input',1,'NS','trimf',-3,-1,1);a=addmf(a,'input',1,'Z','trimf',-2,0,2);a=addmf(a,'input',1,'PS','trimf',-1,1,3);a=addmf(a,'input',1,'PB','smf',1,3);a=addvar(a,'output','u',-3
16、,3);%Parameter u輸出參數(shù)u的取值范圍a=addmf(a,'output',1,'NB','zmf',-3,-1);a=addmf(a,'output',1,'NS','trimf',-3,-2,1);a=addmf(a,'output',1,'Z','trimf',-2,0,2);a=addmf(a,'output',1,'PS','trimf',-1,2,3);a=addmf(a,
17、9;output',1,'PB','smf',1,3);rulelist=1 1 1 1;%Edit?rule?base編輯規(guī)則庫 2 2 1 1; 3 3 1 1; 4 4 1 1; 5 5 1 1;a=addrule(a,rulelist);a1=setfis(a,'DefuzzMethod','mom');%Defuzzywritefis(a1,'temperature');%Save to fuzzy file "temperature.fis"保存模糊文件"tempe
18、rature.fis"a2=readfis('temperature');figure(1);%圖形1plotfis(a2);%畫圖figure(2);%圖形2plotmf(a,'input',1);%畫圖figure(3);%圖形3plotmf(a,'output',1);%畫圖flag=1;%設(shè)標(biāo)志位1if flag=1%如果標(biāo)志位為1showrule(a)%Show fuzzy rule base顯示模糊規(guī)則庫ruleview('temperature');%Dynamic Simulation動態(tài)模擬end%結(jié)束disp('-');disp(' fuzzy?controller?table:e=-3,+3,u=-3,+3 ');disp('-');for
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度建筑工程質(zhì)量保修服務(wù)合同
- 2025年度專業(yè)小時工家政服務(wù)合同規(guī)范文本
- 2025年度跨境電商共同擔(dān)保合同范本
- 漯河2024年河南漯河市民政局事業(yè)單位引進高層次人才1人筆試歷年參考題庫附帶答案詳解
- 昆明云南昆明市五華區(qū)人民政府護國街道辦事處招聘6名公益性崗位人員筆試歷年參考題庫附帶答案詳解
- 2025年中國雙格電熱鍋市場調(diào)查研究報告
- 2025年酸性藍(lán)染料項目可行性研究報告
- 2025至2031年中國錦棉閃光鍛行業(yè)投資前景及策略咨詢研究報告
- 2025年美容按摩床項目可行性研究報告
- 2025年鹽漬半干海參項目可行性研究報告
- 2024年能源電力行業(yè)數(shù)字化轉(zhuǎn)型解決方案
- (2024年)房地產(chǎn)銷售人員心態(tài)培訓(xùn)
- 康復(fù)科院感年度工作計劃
- T-BJCC 1003-2024 首店、首發(fā)活動、首發(fā)中心界定標(biāo)準(zhǔn)
- 《海洋自然保護區(qū)》課件
- 2024年云南機場集團飛機維修服務(wù)分公司招聘筆試參考題庫含答案解析
- 外科手術(shù)及護理常規(guī)
- 蘇少版小學(xué)一年級下冊綜合實踐活動單元備課
- 學(xué)校開學(xué)教師安全培訓(xùn)
- 出口潛力分析報告
- 晉升的述職報告
評論
0/150
提交評論