版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、智能控制课后仿真报告院(系):电气与控制工程学院专业班级:自动化1301班姓 名:光辉学 号:1306050115题目2-3 :求二阶传递函数的阶跃相应Gp(S)取采样时间为PS2 25S1ms进行离散化。参照专家控制仿真程序,设计专家PID控制器,并进行MATLAB仿真。专家PID控制MATLAB仿真程序清单:%Exoert PID Con trollerclear all; %清理数据库中所有数据close all;%关闭所有界面图形ts=O.OO1; %对象采样时间,1mssys=tf(,1,25,0); %受控对象的传递函数dsys=c2d(sys,ts, 'z');
2、%连续系统转化为离散系统num,den=tfdata(dsys, 'v');%离散化后参数,得num 和 den 值u_仁0;u_2=0; %设定初值,u_1是第(k-1)步控制器输岀量y_仁0;y_2=0; %设定初值,y_1是第(k-1)步系统对象输岀量x=0,0,0' %设定误差x1误差导数x2误差积分x3变量初值x2_1=0; %设定误差导数x2_1的初值kp=0.6; %设定比例环节系数ki=0.03; %设定积分环节系数kd=0.01; %设定微分环节系数error_仁0; %设定误差error_1的初值for k=1:1:5000 %for循环开始,k从1
3、变化到500,每步的增量为1time(k)=k*ts; % 仿真时长0.001 0.5sr(k)=1.0; %Tracing Step Signal 系统输入信号u(k)=kp*x(1)+kd*x (2)+ki*x(3);%PID Con trollerPID 控制器%Expert con trol rule%Rule1:U nclosed control rule 规则 1:开环控制if abs(x(1)>0.8 %if循环开始,产生式规则,if.then.;误差的绝对值大于u(k)=0.45; %控制器输岀量等于elseif abs(x(1)>0.40u(k)=0.40;els
4、eif abs(x(1)>0.20u(k)=0.12;elseif abs(x(1)>0.01u(k)=0.10;end%if循环结束%Rule2 规贝U 2if x(1)*x(2)>0|(x(2)=0) %if循环开始,如果误差增大或不变if abs(x(1)>=0.05 %嵌if循环开始,如果误差绝对值大于u(k)=u_1+2*kp*x(1);%控制器输岀量施加较强控制else%否则u(k)=u_1+0.4*kp*x(1); %控制器输出量施加一般控制 end% 嵌 if 循环结束end%if 循环结束%Rule3 规则 3if (x(1)*x(2)<0&am
5、p;x(2)*x2_1>0)|(x(1)=0) %if 循环开始,如果误差减小或消除 u(k)=u(k); %控制器输出量不变end%if 循环结束%Rule4 规则 4if x(1)*x(2)<0&x(2)*x2_1<0 %if 循环开始,如果误差处于极值状态if abs(x(1)>=0.05 %嵌 if 循环开始,如果误差绝对值大于 u(k)=u_1+2*kp*error_1; %控制器输出量施加较强控制else%否则u(k)=u_1+0.6*kp*error_1; %控制器输出量施加一般控制 end% 嵌 if 循环结束end%if 循环结束%Rule5:
6、Integration separation PI control 规则 5;运用 PI 控制来消除误差if abs(x(1)<=0.001 %if 循环开始如果误差绝对值小于(很小) u(k)=0.5*x(1)+0.*x(3); %控制器输出量用比例和积分输出 end%if 循环结束%Restricting the output of controller 对控制输出设限if u(k)>=10u(k)=10; %设控制器输出量上限值endif u(k)<=-10u(k)=-10; %设控制器输出量下限值end%Linear model Z 变化后系统的线性模型 y(k)=-
7、den(2)*y_1-den(3)*y_2+num(1)*u(k)+num(2)*u_1+num(3)*u_2; error(k)=r(k)-y(k); % 系统误差 error 的表达式,等于系统输入减去输出%Return of parameters% 每步计算时的参数更新u_2=u_1;u_1=u(k); %u(k) 代替 u_1 y_2=y_1;y_1=y(k); %y(k) 代替 y_1x(1)=error(k); %Calculating P 赋误差 error 值于 x1 x2_1=x(2); %赋值前步计算时的误差导数 X2 的值等于 X2_1x(2)=(error(k)-err
8、or_1)/ts; % Calculating D 求误差导数 x2,用于下一步的计算 x(3)=x(3)+error(k)*ts; % Calculating I 求误差积分 x3 error_1=error(k); %赋误差 error 值于 error_1end%for 循环结束,整个仿真时长计算全部结束figure(1); %图形 1plot(time,r, 'b',time,y, 'r');%画图,以时间为横坐标,分别画岀系统输入、输岀随时间的变化曲线xlabel( 'time(s)' );ylabel( 'r,y');
9、%标注坐标figure(2); %图形 2plot(time,r-y, 'r');%画r-y,即误差随时间的变化曲线xlabel('time(s)' );ylabel( 'error'); %标注坐标专家PID控制MATLAB仿真程序过程及结果:1.在MATLAB编辑环境下编写专家 PID控制仿真程序2.编译运行程序后Figure1 :Xlki 0軟 B超 .13耳 n j £ k -国二就-二 qZE洋iwisiPID控制阶跃响应曲线Figure2 :it flwe- m反 够 唱 xmo ip =翌 冲 l: N丄k葩岂小旨IIY-
10、:! E 口误差响应随时间变化曲线题目3-4 :如果A1匹且b0.iXiX2yiA °8 °且Bi0.50.20x1 x2yi yy305丄,则c 02丄。现已知 y yzi Z2利用模糊推理公式(3.27 )和(3.28)求Ci,并采用MATLAB进行仿真。模糊推理MATLAB仿真程序清单:clear all; %清理数据库中所有数据close all;%关闭所有界面图形 ?A=1;0.5; %输入各元素在 A中的隶属度B=0.1,0.5,1; %输入各元素在 B中的隶属度C=0.2,1; %输入各元素在 C中的隶属度%Compound of A and B%合成 A 和
11、 Bfor i=1:2 %A矩阵的行数取值ifor j=1:3 %B矩阵的列数取值 jAB(i,j)=min(A(i),B(j);%实现 A,B 的“与”关系endend%Transfer to Column % 转换列向量T1=; %定义转置矩阵 T1for i=1:2 %AB矩阵的行数取值 iT1= T1;AB(i,:)'%转置 AB 矩阵end%Get fuzzy R %确立模糊关系矩阵Rfor i=1:6%R矩阵列数取值ifor j=1:2 %R矩阵行数取值jR(i,j)=mi n( T1(i),C(j); % 确定模糊关系矩阵Rendend%A仁0.8,0.1; %输入各元素
12、在 A1中的隶属度B仁0.5,0.2,0; %输入各元素在 B1中的隶属度for i=1:2 %A1矩阵的行数取值 ifor j=1:3 %B1矩阵的行数取值jAB1(i,j)=min(A1(i),B1(j);%实现 A1 和 B1 的“与”关系endend%Transfer to Row%转换行向量T2=; %定义转置矩阵 T2for i=1:2%AB1矩阵的行数取值 iT2=T2,AB1(i,:);%扩展 A1B1 矩阵end%Get output C1% 确定输岀for i=1:6 %转置矩阵T2列数取值for j=1:2 %模糊矩阵R行数取值D(i,j)=mi n(T2(i),R(i,
13、j);C1(j)=max(D(:,j); %输岀 C1 矩阵endend模糊推理MATLAB仿真程序过程及结果:1. 在MATLAB编辑环境下编写模糊推理仿真程序2. 编译运行程序后AB与关系:T1覧AB1釁A 川刘闢 #日j 2k3 dojble112340,1000.5TO012(M0CD0.5CMM0.50003456转置矩阵T1 :变量T1T1 - | AB1AI i I 6x1 double12320.5OTQ31450.5000&0.50001模糊矩阵R:疋妲_RHT1AB1 xl A1闭L0 6x2 double12310-1阀OJOOO20,20000500030.20
14、0014OJOOOOJOOO50.20000.500060.20000.5000A1B1与关系:*变量-AB11 1T1E1田 2x3 double12310.500C|0.200002OJWOOJOOO034转置矩阵T2 :输出矩阵C1 :题目4-3 :已知某一炉温控制系统,要求温度保持在 600C恒定。针对该控制系统有以下控制经验:(1) 若炉温低于600 C,则升压;低得越多升压越高。(2) 若炉温高于600C,则降压;高得越多降压越低。(3) 若炉温等于600C,则保持电压不变。设模糊控制器为一维控制器,输入语言变量为误差,输出为 控制电压。输入、输出变量的量化等级为7级,取5个模糊集
15、。试设计隶属度函数误差变化划分表、控制电压变化划分表和模糊控制规则表。解:输入(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模糊控制规则表若(IF )N
16、BeNSeZOePSePBe则(THEN )NBuNSuZOuPSuPBu炉温模糊控制MATLAB仿真程序清单:%Fuzzy Con trol for fur nace temperatureclear all; %清理数据库中所有数据close all;%关闭所有界面图形a=newfis( 'fuzz_temperature');%模糊炉温a=addvar(a,' in put','e',-3,3); %Parameter e 输入参数 e 的取值围a=addmf(a,'input' ,1,'NB' ,'
17、zmf',-3,-1);a=addmf(a,' in put' ,1,'NS','trimf,-3,-1,1);a=addmf(a, 'input' ,1,'Z','trimf,-2,0,2);a=addmf(a,' in put' ,1,'PS','trimf',-1,1,3);a=addmf(a, 'input' ,1,'PB','smf' ,1,3);a=addvar(a,'output'
18、,'u',-3,3); %Parameter u 输岀参数 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'
19、;,-1,2,3);a=addmf(a, 'output' ,1,'PB','smf' ,1,3);rulelist=1 1 1 1; %Edit?rule?base 编辑规则库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
20、.fis" 保存模糊文件 "temperature.fis" a2=readfis( 'temperature');figure(1); % 图形 1plotfis(a2); % 画图figure(2); % 图形 2plotmf(a, 'input' ,1);%画图figure(3); % 图形 3plotmf(a, 'output' ,1);%画图flag=1; %设标志位1if flag=1 %如果标志位为 1showrule(a) %Show fuzzy rule base 显示模糊规则库ruleview( 'temperature');%Dynamic Simulation 动态模拟 end%结束disp('');disp('fuzzy?c on troller?table:e=-3,+3,u=-3,+3');disp('');for i=1:1:7e(i )=i-4
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 寺庙消防安全培训课件
- 护理岗位护理岗位护理实践分享
- 个性化基因检测与精准治疗
- 局麻药在神经外科术后局部镇痛的应用
- 医疗保险市场与政策环境分析
- 尘肺病早期诊断技术的局限性
- 尘肺病影像学人工智能模型的构建
- 护理信息隐私保护与安全
- 医疗卫生人才培养方向
- 心理咨询与心理治疗在医疗中的应用
- 担保取消协议书
- 2025国家统计局滨海新区调查队辅助调查员招聘3人备考笔试试题及答案解析
- 星罗棋布的港口课件
- 2025天津市机电工艺技师学院招聘派遣制社会化21人(第二批)考试题库附答案
- 统一顶新食品成品仓库管理的手册
- 2025年洛阳市公安机关招聘辅警501名考试题库附答案
- 金刚网窗合同范本
- 2025贵阳云岩经开产业发展集团有限公司招聘笔试考试备考试题及答案解析
- 2025湖北交投集团总部一般管理岗位遴选拟录用人员笔试历年参考题库附带答案详解
- 2026年党支部主题党日活动方案
- 2025年福鼎时代面试题及答案
评论
0/150
提交评论