




已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一阶倒立摆模糊控制仿真实验分析报告%mainclearclose all%load table.matglobal Table;global RULE;global UCenter;global Width;global num;global RuleMatch; %前件匹配方式 0 取小; 1乘积global Defuzzy; %反模糊化方法 0: COG ; 1:COA; 2:MAXglobal g0;global g1;global h;x=0.4,0,0;RuleMatch = 1; %前件匹配方式 0 取小; 1乘积Defuzzy = 0;%反模糊化方法 0: COG ; 1:COA; 2:MAXg0=1.5;g1=0.1;h=1;% u=0;% Table = u;% m,n=size(u);% num = (m-1)/2;%u=;RULE =2, 2, 2, 1, 0; . 2, 2, 1, 0,-1;. 2, 1, 0,-1,-2;. 1, 0,-1,-2,-2;. 0,-1,-2,-2,-2;% % RULE =2,2,1,1,0; .% 2,1,1,0,-1;.% 1,1,0,-1,-1;. % 1,0,-1,-1,-2;.% 0,-1,-1,-2,-2;RULE=RULE + 3*ones(size(RULE);%原始的 %UCenter=-20,-10,0,10,20;%改进的%UCenter=-25,-15,0,15,25; UCenter=-20,-15,0,15,20;Width(1)=(UCenter(5)-UCenter(4)/2;Width(2)=(UCenter(5)-UCenter(3);Width(3)=(UCenter(4)-UCenter(3)*2;Width(4)=Width(2);Width(5)=Width(1); x=x; t,y= ode45(P_Pendulum,0,5,x);% t,y= ode45(P_Pendulum_tab,0,10,x);% y2=y.*y;% inty = intnum(t,y2)% % int_e2 = inty(1)+inty(2);% int_u2 = inty(3);%int_y2 = sum(y.2);%int_e2 = int_y2(1)+int_y2(2);%int_u2 = int_y2(3);figuresubplot(2,1,1)plot(t,y(:,1 ),r,t,y(:,2),k)%xlabel(t(sec)% str1 = sprintf(x(0)=%2.2f,%2.2f,x(1),x(2);% Title(str1,Interpreter,latex,fontsize,14)% % str1=sprintf(t(sec)-index:$inteT(t)e(t)dt=$ %f, int_e2);%str1 = $inte2dt$% text(6,0,str1,Interpreter,latex,fontsize,14)% % xlabel(str1,Interpreter,latex,fontsize,14)legend(x1(rad), x2(rad/s)title(输出隶属函数中心值:-20,-15,0,15,20)subplot(2,1,2)plot(t,y(:,3),r)xlabel(t(sec)ylabel(u(N)% str1=sprintf(t(sec)-index:$intu2(t)dt$= %f, int_u2);% %H = Title(str1,Interpreter,latex,fontsize,14)% xlabel(str1,Interpreter,latex,fontsize,14)% inverted pendulum stabilized% program on 2006,10,26function xdot = P_Pendulum(t,x)global RULE;global UCenter;global step;global k;global Kc;global QQ;global Width;global RuleMatch; %前件匹配方式 0 取小; 1乘积global Defuzzy; %反模糊化方法 0: COG ; 1:COA; 2:MAXglobal g0;global g1;global h;M = 1;m =0.5;g = 9.8;l = 0.5;a = 1/(m+M);%计算隶属度mu_e= emembershipdegree(-x(1)*g0);mu_de = demembershipdegree(-x(2)*g1);%pausemu_e_id = find(mu_e0);mu_de_id = find(mu_de0);eLen= length(mu_e_id);deLen = length(mu_de_id);mu_pre= zeros(1,4);fuzzy_out = zeros(1,4);weight = zeros(1,4);in =1;%规则匹配for (i=1:eLen) for(j=1:deLen) switch RuleMatch case 0 %前件采用取小推理 mu_pre(in)= min(mu_e(mu_e_id(i),mu_de(mu_de_id(j); case 1 %前件采用乘积推理 mu_pre(in)= mu_e(mu_e_id(i)*mu_de(mu_de_id(j); end %计算规则匹配度 fuzzy_out(in) = RULE(mu_e_id(i),mu_de_id(j); in=in+1; endendnRule = eLen *deLen; u = 0;summu =0;%反模糊化for(i=1:nRule) switch Defuzzy case 0 %按照重心法计算(COG) weight(i)= Width(fuzzy_out(i)*(mu_pre(i)-mu_pre(i)*mu_pre(i)/2); case 1 % 按照中心平均法 weight(i)=mu_pre(i); case 2 % 取大法(大中求中) max_v,max_id = max(mu_pre); weight(max_id)=1; end u = weight(i)*UCenter(fuzzy_out(i)+u; summu =summu + weight(i);end %u=0;u=h*u/summu;if (u20) u=20;endif (u2.5 & t20) % u=20;% end% % if (u-20)% u=-20;% end% xdot(1)=x(2);% xdot(2)=(g*sin(x(1)-a*m*l*x(2)*x(2)*sin(2*x(1)/2-a*cos(x(1)*x(3)/(4*l/3-a*m*l*cos(x(1)*cos(x(1);% xdot(3)=-100*x(3)+100*u;% x(3) = u;xdot(1)=x(2);xdot(2)=(g*sin(x(1)-a*m*l*x(2)*x(2)*sin(2*x(1)/2-a*cos(x(1)*x(3)/(4*l/3-a*m*l*cos(x(1)*cos(x(1);xdot(3)=-100*x(3)+100*u;xdot = xdot;function y = emembershipdegree(x)y=zeros(1,5);if (x= -pi/2) y(1) =1 ; elseif (x=-pi/4) y(1) = abs(x+pi/4)/(pi/4); y(2) = 1-abs(x+pi/4)/(pi/4);elseif (x= 0) y(2) = 1-abs(x+pi/4)/(pi/4); y(3) = 1- abs(x)/(pi/4);elseif (x=pi/4) y(3) = 1- abs(x)/(pi/4); y(4) = 1-abs(x-pi/4)/(pi/4);elseif (xpi/2) y(5) =1;endfunction y = demembershipdegree(x)y=zeros(1,5);if (x= -pi/4) y(1) =1 ; elseif (x=-pi/8) y(1) = abs(x+pi/8)/(pi/8); y(2) = 1-abs(x+pi/8)/(pi/8);elseif (x= 0) y(2) = 1-abs(x+pi/8)/(pi/8); y(3) = 1- abs(x)/(pi/8);elseif (x=pi/8) y(3) = 1- abs(x)/(pi/8); y(4) = 1-abs(x-pi/8)/(pi/8);elseif (xpi/4) y(5) =1;endfunction y = umembershipdegree(x)y=zeros(1,5);if (x= -30) y(1) =0 ; elseif (x=-20) y(1) = 1-abs(x+20)/(10);elseif (x=-10) y(1) = 1-abs(x+20)/(10); y(2) = 1-abs(x+10)/(10);elseif (x= 0) y(2) = 1-abs(x+10)/(10); y(3) = 1- abs(x)/(10);elseif (x=10) y(3) = 1- abs(x)/(10); y(4) = 1-abs(x-10)/(10);elseif (x30)elseif (x30) y(5) =0;end不同的推理方式,反模糊化方法初始值:x0=0.1 0 序号前件隶属度计算方法蕴含方法反模糊化方法误差性能指标控制量性能指标稳定时间性能描述1取小取小COG0.0326.905s收敛慢2乘积取小COG0.0306.465s收敛慢3取小取小COA0.05812.72发散4乘积取小COA0.07816.82发散5取小取小MAX0.75234.44剧烈振荡6乘积取小MAX0.75234.44剧烈振荡不同的初始条件前件隶属度函数计算方法:乘积模糊蕴含关系计算方法:取小反模糊化方法:COG 序号初始值误差性能指标控制量性能指标稳定时间性能描述10.1 ,0 (5.73)0.0306.465s收敛慢20.2 ,0 (11.46 )0.1737.8收敛慢30.3 ,0 (17.19 )1.74412.7发散40.4 ,0 (22.92 )134.81301.9发散结论:当初始角达到一定程度时,控制力趋向饱和,系统不稳定。控制器参数调整对比前件隶属度函数计算方法:乘积蕴含运算:取小反模糊化方法:COG初始条件:0.1,0 序号g0g1h误差性能指标控制量性能指标调节时间11110.0326.455s210.510.01994.095s310.210.01191.954.5s410.110.01241.332.1s 序号g0g1h误差性能指标控制量性能指标调节时间110.110.0121.332.121.50.110.0201.181.5s31.80.110.0261.371.8s420.110.0301.551.6s 序号g0g1h误差性能指标控制量性能指标调节时间11.50.110.0201.181.5s21.50.140.0353.320.52s31.50.170.0385.610.56s41.50.1100.0397.570.62s量化因子:g0=1.5,g1=0.1,h=1 序号初始值误差性能指标控制量性能指标调节时间10.1 ,00.0200.0301.186.461.4s20.2 ,00.0670.174.9437.81.7s30.3 ,00.141.7413.94412.71.9s40.4 ,00.24134.834.181301.92.0s初始角达到一定程度依然不稳定分析:在相同的初始条件下,模糊控制器的控制效果与量化因子有关,可以通过对量化因子的整定调节控制性能。g0保持不变,g1增大时对系统输出状态变化的抑制能力增大,但会使系统的响应速度减慢,系统达到稳态的过渡时间变长,g1减小时系统输出量的振荡幅度增大;g1保持不变,g0增大时系统响应速度加快,系统输出量的震荡幅度增大,g0过大会时系统不稳定。干扰抑制能力对比前件隶属度函数计算方法:乘积模糊蕴含关系计算方法:取小反模糊化方法:COG量化因子:g0=1.5,g1=0.1干扰:在时间区间2.5,2.6秒之间对控制量施加20N正方向干扰。初始值:0.4,0 序号g0g1h误差性能指标控制量性能指标收敛时间11.50.11123.6847.9干扰后剧烈波动,失稳21.50.140.6668.3干扰后波动偏大,恢复时间偏大31.50.170.5864.6干扰后波动较小,恢复时间较短41.50.1100.5
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025天津市东丽区卫生健康委招聘高层次人才18人备考考试题库附答案解析
- 2025陕西国环质检技术服务有限公司招聘备考考试题库附答案解析
- 2025国家电投集团远达环保招聘21人备考考试题库附答案解析
- 2026航天二院校园招聘备考考试题库附答案解析
- 2025年蚌埠临港新程实验学校编外临聘教师招聘1名备考考试题库附答案解析
- 2025新疆医科大学第一附属医院面向社会招聘事业单位编制外人员119人备考考试题库附答案解析
- 2026中国工商银行甘肃省分行秋季校园招聘656人备考考试题库附答案解析
- 2025重庆卡福汽车制动转向系统有限公司招聘1人备考考试题库附答案解析
- 2025江西上饶市属国有企业第一批次招聘105人备考考试题库附答案解析
- 2025河南洛阳商业职业学院招聘10人备考考试题库附答案解析
- 公司各类补贴管理办法
- 健康护理宣教:案例与实践
- 汽车工厂培训课件
- AI技术助力研究生个性化培养的探索与实践
- 2025年阿托西班用药指导试题
- 拔牙后健康教育与护理指南
- 餐饮业食品安全管理与操作规范培训计划
- 拼多多培训课件
- 2025年铜化集团招聘笔试备考题库(带答案详解)
- GB/T 45696-2025公共汽电车场站分类及等级划分
- (2025)中国石油化工集团中石化招聘笔试试题及答案
评论
0/150
提交评论