欢迎来到天天文库
浏览记录
ID:46897251
大小:111.51 KB
页数:7页
时间:2019-11-29
《模糊逻辑控制设计举例》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、2.5模糊逻辑控制设计举例例13.1设有前后两车(目标车与本车),其速度y与油门控制输入u间的传递函数均为现要求设计一模糊控制器,使得1)控制汽车(本车)由静止启动,追赶200m外时速90km的汽车(目标车)并与其保持30m距离。2)目标车速度改为时速110km时,仍与其保持30m距离。3)目标车速度改为时速70km时,仍与其保持30m距离。解:第一步根据题意,可做出系统结构图如图13.7所示。图中,为了控制系统设计方便,将两车的距离相减后再减掉30,用模糊控制使其趋于0。目标车+本车--30fuzzycontro
2、ller图13.7系统结构图进一步,利用simulink构造了系统仿真模型,如图13.8所示。考虑到实际的汽车速度存在极限,系统模型中加入了饱和非线性模块进行模拟。图中的e和u除以20是为了使输出量限定在10左右。然后,将系统模型以文件f-car.mdl保存。16图13.8系统simulink仿真模型第二步设计模糊逻辑规则。以误差量(两车距离)及误差对时间的变化量作为输入进行模糊规则设计。本例采用位置型模糊控制器,即控制规则的条件为:ife为Aand△e为Bthenu为C。按一般方法,可得一套控制规律[]如表13.
3、1所示表13.1控制规律eNBNMZEPMPB△ePBPBPMPMZENBNMZEPMPBNMNMNBNM表中P=POSITIVEN=NEGATIVEZE=ZEROM=MEDIUMB=BIG16表13.1所示的控制规则库中尚有一些空缺,为了防止受控对象因为无效条件而失控,可以将(e,△e)按下式转换为极坐标(),而将规则库填满,从而得到表13.2所示极坐标形式的模糊控制规则:表13.2极坐标形式的模糊控制规则NBZEPBPBZENMNBPMZEPMPBZEZEPMPBNMZENMNBNBZENMNB由上表可知,此例
4、中,我们分别将分为PBZENB分为PBPMZENMNBy分为PBPMZENMNB因此,根据该表可以写出15条规则。如,对应表中第二行、第三列的规则为:if(isPB)and(isPM)then(yisPB)等等。第三步设计隶属函数。对输入量和输出量y,均取三角形的隶属函数,具体范围与大小如图13.9和13.10所示:16图13.9input的隶属度函数图13.9output的隶属度函数无疑,隶属函数的选取(类型、形状、大小等)直接影响系统控制效果,需要经过认真调整以减小误差、改善性能,是模糊控制器设计的一个重要内容
5、。目前可采用的方法有神经网络方法、自适应方法等。MATLAB中的anfis(Adaptive-Network-BasedFuzzyInferenceSystem)可通过训练与自适应的学习过程调配出适当的隶属函数来满足所要的模糊推论输入输出关系。第四步分析推论结果。通过Viewsurface,显示推论结果的三维立体图(图13.10)。观察分析其与表13.2所示结果的一致性并在必要时进行修改。16图13.10推论结果三维图设计结果:上述工作完成后,可进行系统的控制过程仿真和控制效果分析。本例通过以下的程序执行:程序ch
6、p13-1.m%Trackingcarsimulationclear;pidf=readfis('f_carf');subplot(211)plotmf(pidf,'input',1);subplot(212)plotmf(pidf,'input',2);figureplotmf(pidf,'output',1);figuregensurf(pidf)%simulationbySIMULINKsim('f_carm');figure16plot(t,y,'b',t,y1,'r')xlabel('time(sec)'
7、);ylabel('velocity(km/hr)');figureplot(t,a)xlabel('time(sec)');ylabel('distance(m)');figureplot(t,u)xlabel('time(sec)');ylabel('controlinput');程序运行后所得到的图13.11–13.13分别表示了油门的踩放结果、追赶车的速度、两车的相对距离。图中可看到,追赶车可在15秒左右追上目标车并保持30m距离,表明所设计的模糊控制器具有良好的控制性能。图13.11油门踩放图16图13.
8、12目标车与追赶车速度图13.13两车相对距离16
此文档下载收益归作者所有