(1) 参数自整定模糊 PID 控制系统结构
参数自整定模糊PID控制器的系统结构主要由参数可调PID和模糊控制系统两部分构成,其结构如图4.3所示【41】【42】。
PID控制器实现对系统的控制,模糊推理系统以误差e和误差变化率ec作为输入,采用模糊推理方法对PID参数Kp、Ki、Kd进行在线整定,以满足不同的误差e和误差变化率ec对控制器参数的不同要求,而使被控对象具有良好的动态、静态性能。
(2) PID 控制器参数整定原则
参数模糊自整定PID控制器就是找出在不同时刻PID三个参数与e和ec之间的模糊关系,在运行中通过不断检测e和ec,根据模糊控制原理来对三个参数进行实时修改,以满足不同e和ec对控制参数的不同要求,而使被控对象有良好的动、静态性能。由前人的经验,可归纳出参数Kp、Ki、Kd的自整定原则【43】。
系统模糊PID命令实现:
在Matlab 7.0下下列程序可直接进行使用:
>> clear all
>> a=newfis('fuzzypid');
% 设定输入e 的范围、隶属度函数;
>> a=addvar(a,'input','e',[-3 3]);
>> a=addmf(a,'input',1,'NB','zmf',[-3 -1]);
>> a=addmf(a,'input',1,'NM','trimf',[-3 -2 0]);
>> 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,'PM','trimf',[0 2 3]);
>> a=addmf(a,'input',1,'PB','smf',[1 3]);
%设定输入ec 的范围、隶属度函数;
>> a=addvar(a,'input','ec',[-3 3]);
>> a=addmf(a,'input',2,'NB','zmf',[-3 -1]);
>> a=addmf(a,'input',2,'NM','trimf',[-3 -2 0]);
>> a=addmf(a,'input',2,'NS','trimf',[-3 -1 1]);
>> a=addmf(a,'input',2,'Z','trimf',[-2 0 2]);
>> a=addmf(a,'input',2,'PS','trimf',[-1 1 3]);
>> a=addmf(a,'input',2,'PM','trimf',[0 2 3]);
>> a=addmf(a,'input',2,'PB','smf',[1 3]);
% 设定输出kp的范围、隶属度函数;
>> a=addvar(a,'output','kp',[-0.3 0.3]);
>> a=addmf(a,'output',1,'NB','zmf',[-0.3 -0.1]);
>> a=addmf(a,'output',1,'NM','trimf',[-0.3 -0.2 0]);
>> a=addmf(a,'output',1,'NS','trimf',[-0.3 -0.1 0.1]);
>> a=addmf(a,'output',1,'Z','trimf',[-0.2 0 0.2]);
>> a=addmf(a,'output',1,'PS','trimf',[-0.1 0.1 0.3]);
>> a=addmf(a,'output',1,'PM','trimf',[0 0.2 0.3]);
>> a=addmf(a,'output',1,'PB','smf',[0.1 0.3]);
% 设定输出ki的范围、隶属度函数;
相关知识
matlab鸟叫声语音识别
鸟叫声识别matlab
Matlab代码生成
STM32宠物喂食器Proteus仿真设计与实现
kmeans算法在matlab中的使用
蚁群算法+Dijkstra算法=二维路径规划,基于蚁群算法的机器人路径规划,matlab源码.rar资源
—绘制直线、矩形或椭圆
matlab中如何画出幂函数指数为分数时比如y=x^(1/3)的完整图像
毕业设计论文SpringBoot+Vue宠物健康顾问系统.docx资源
已知二阶单位负反馈系统开环传递函数为G(s)16/(s(s+1.6)),函数增加一个极点p=
网址: matlab里u=trimf(),MATLAB仿真 https://m.mcbbbk.com/newsview437532.html
上一篇: 1+1+1+1*10=? |
下一篇: 冷藏温度的范围在多少度之间 |