模糊控制与PID控制性能比较

合集下载

模糊控制算法PID算法比较分析

模糊控制算法PID算法比较分析

模糊控制算法PID 算法比较分析电气学院 控制理论与控制工程专业 徐磊 学号:10310070一:题目对于已知系统的传递函数为: e S S S G 5.01101)(-+=,假设系统给定为阶跃值R=1,系统的初始值R(0)=0,试分析设计 1〉常规的PID 控制器2〉常规的模糊控制器3〉比较两种控制器的控制效果当通过改变模糊控制器的比例因子时,分析系统响应有什么变化?二:思路对于模糊控制,采用二维输入,分别是误差e 和误差变化率∆e,然后通过增益放大,输入到模糊控制器中,然后模糊控制器输出也通过增益放大。

模糊控制器的输入、输出论域取值为[-6,6],隶属度均匀划分为五个区域,隶属度函数采用梯形和三角形函数。

µNB NS ZE 1 PS PB-6 -5 -3 -2 -1 0 1 2 3 4 5 6程序框图如下:三:程序clear;num=1;den=[10,1];[a1,b,c,d]=tf2ss(num,den);x=[0]; %状态变量初始T=0.01; %采样周期h=T;N=10000; %采样次数td=0.5; %延时时间Nd=50; %延时周期R=1*ones(1,N); % 输入信号e=0;de=0;ie=0; %误差,误差导数,积分kp=12.5;ki=0.8;kd=0.01;for k=1:Nuu(1,k)=-(kp*e+ki*de+kd*ie); %PID输出序列if k<=Ndu=0;elseu=uu(1,k-Nd);end%龙格库塔法仿真k0=a1*x+b*u;k1=a1*(x+h*k0/2)+b*u;k2=a1*(x+h*k1/2)+b*u;k3=a1*(x+h*k2)+b*u;x=x+(k0+2*k1+2*k2+k3)*h/6;y=c*x+d*u;e1=e;e=y(1,1)-R(1,k);de=(e1-e)/T;ie=ie+e*T;yy1(1,k)=y;end%设计模糊控制器a=newfis('Simple');a=addvar(a,'input','e',[-6,6]);a=addmf(a,'input',1,'NB','trapmf',[-6 -6 -5 -3]); a=addmf(a,'input',1,'NS','trapmf',[-5 -3 -2 0]); a=addmf(a,'input',1,'ZR','trimf',[-2 0 2]);a=addmf(a,'input',1,'PS','trapmf',[0 2 3 5]);a=addmf(a,'input',1,'PB','trapmf',[3 5 6 6]);a=addvar(a,'input','de',[-6 6]);a=addmf(a,'input',2,'NB','trapmf',[-6 -6 -5 -3]); a=addmf(a,'input',2,'NS','trapmf',[-5 -3 -2 0]); a=addmf(a,'input',2,'ZR','trimf',[-2 0 2]);a=addmf(a,'input',2,'PS','trapmf',[0 2 3 5]);a=addmf(a,'input',2,'PB','trapmf',[3 5 6 6]);a=addvar(a,'output','u',[-6 6]);a=addmf(a,'output',1,'NB','trapmf',[-6 -6 -5 -3]); a=addmf(a,'output',1,'NS','trapmf',[-5 -3 -2 0]); a=addmf(a,'output',1,'ZR','trimf',[-2 0 2]);a=addmf(a,'output',1,'PS','trapmf',[0 2 3 5]);a=addmf(a,'output',1,'PB','trapmf',[3 5 6 6]);%规则表rr=[5 5 4 4 35 4 4 3 34 4 3 3 24 3 3 2 23 3 2 2 1];r1=zeros(prod(size(rr)),3);%初始化%r1赋值k=1;for i=1:size(rr,1)for j=1:size(rr,2)r1(k,:)=[i,j,rr(i,j)];k=k+1;endendr2=ones(25,2);rulelist=[r1,r2];%得到规则表a=addrule(a,rulelist);e=0;de=0;ie=0;x=[0];ke=8.5;kd=0.5;ku=2.2;%增益,比例因子ki=0.01;for k=1:Ne1=ke*e;de1=kd*de;if e1>=6e1=6;elseif e1<=-6e1=-6;endif de1>=6de1=6;elseif de1<=-6de1=-6;endin=[e1 de1];uu(1,k)=ku*evalfis(in,a)-ie*ki;if k<=Ndu=0;elseu=uu(1,k-Nd);endk0=a1*x+b*u;k1=a1*(x+h*k0/2)+b*u;k2=a1*(x+h*k1/2)+b*u;k3=a1*(x+h*k2)+b*u;x=x+(k0+2*k1+2*k2+k3)*h/6;y=c*x+d*u;yy(1,k)=y;e1=e;e=y-R(1,k);de=(e-e1)/T;end%画图kk=[1:N]*T;figure(1);plot(kk,R,'k',kk,yy,'r',kk,yy1,'b'); xlabel('time');ylabel('output');四:结论运行后,如图,红色的为模糊控制输出,蓝色的为PID控制器输出。

几种控制方法比较

几种控制方法比较

几种控制方法的性能比较专业: 控制理论与控制工程 姓名: 周燕红 学号: 200930210690摘要:本文对同一控制对象分别采用常规PID 控制,模糊控制和基于遗传算法的PID 控制进行仿真,并对仿真结果进行分析,从而得出各个控制方法的性能优劣。

关键字:常规PID ;模糊控制器;遗传算法1 常规PID 控制1.1 PID 控制原理在模拟控制系统中,控制器最常用的控制规律是PID 控制。

模拟PID 控制系统原理框图如图1-1所示。

系统由模拟PID 控制器和被控对象组成。

图1 PID 控制系统原理框图简单说来,PID 控制器各校正环节的作用如下:(1) 比例环节:成比例的反应控制系统的偏差信号error(t),偏差一旦差生,控制器立即产生控制作用,以减小偏差。

P K 越大,系统的响应速度越快,调节精度越高,但易产生超调,甚至会使系统不稳定。

反之,若过小,则调节精度降低,响应速度缓慢,使系统的静态、动态性能变坏。

(2) 积分环节:主要用于消除稳态误差,提高系统的误差度。

积分作用的强弱取决于积分时间常数I T ,I T 越大,积分作用越弱,若过大将使系统稳态误差难以消除,影响系统调节精度。

反之则越强,稳态误差消除越快,但过小,在响应过程初期会产生积分饱和现象,从而引起响应过程的较大超调。

(3) 微分环节:反应偏差信号的变化趋势(变化速率),并能在偏差信号变得太大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速度,减少调节时间。

微分作用的强弱取决于微分时间常数D T ,D T 越大,微分作用越强,但过大会使响应过程提前制动,而且会降低系统的抗干扰性能。

1.2衰减曲线法整定PID 参数衰减曲线法是一种在经验凑试法基础上经过反复实验而得出的一种参数整定方法。

可按过度过程达到4:1递减曲线法整定控制参数,也可按过度过程达到10:1递减曲线法整定控制参数。

参数整定步骤:(1) 设置调节器积分时间Ti 为无穷大,微分时间常数为0,比例度为较大值,并将系统投入运行。

模糊控制与PID控制的对比及其复合控制

模糊控制与PID控制的对比及其复合控制

Co a io n mp st f u z nrl n nr l mp r na dCo o i o z yCo t dPI Co t s e F oa D o
YANG h ・ o Байду номын сангаасU u - n S iy ng, G ol i
( . c o l f mp trYa ti i es yYa ti 6 0 5C ia 1 S h o Co ue, na v ri , na 4 0 hn ; o Un t 2 2 De at n lcr a gn eig Y na o ain olg , a ti 6 0 0Chn . pr me t f et c l ie r , a ti ct a C l e Y na 2 4 0 ia) oE i En n V ol e
o e s o t n h re e u aig t e e s , h I c n r le c st e v tt ro . t o i e h rt o h v rh o d s o tnr g lt i , le t eP D o to lra t or mo esai er r I c mb n steme is fte a n m c t o to to s a d i y t ei u lt sa eb t rt a ec m mo D o to n h a i u z o to . e woc n r l meh d , n ss n h t q aii r et h n t o t c e e h nPI c nr la dt eb scf z yc n r 1 Th
短、 优势互补 , 了一种模糊 PD复合 型控 制器 。 设计 I 该复合控制器根据偏差范围的大小 , 通过模糊控制与 PD 制的 自 I控 动切换

模糊控制与PID控制的比较

模糊控制与PID控制的比较

模糊控制与PID控制的比较自20世纪60年代中期起,模糊控制逐渐崭露头角,其优越性也引起了人们的关注。

除了模糊控制,当今热门的控制算法之一是PID控制。

那么,模糊控制与PID控制之间的区别是什么呢?它们各自的优缺点是什么?在特定的应用场合下,哪种控制算法更适用?一、模糊控制概述模糊控制是一种无需准确模型或参数即可执行复杂控制系统的方法,它仅使用模糊逻辑来描述输入和输出之间的关系。

模糊控制系统的输入和输出都是模糊变量。

与其他控制方法相比,模糊控制系统可以更好地处理不确定性和模糊性,具有更强的容错能力和适应性。

模糊控制系统由四个主要组成部分组成:模糊化、模糊推理、解模糊化和规则库。

模糊化部分将传感器输出信号转换为模糊变量,模糊推理部分使用模糊逻辑基于模糊规则将模糊变量转换为控制信号,解模糊化部分将控制信号转换为精确的控制信号,规则库存储了模糊规则及其权重。

二、PID控制概述比例积分微分(PID)控制是一种经典的控制算法,其控制草图由三个部分组成。

比例项(P)根据当前误差大小进行输出,积分项(I)可以消除稳态误差,微分项(D)可以提高系统的稳定性并抑制系统的震荡。

PID控制器的设计基于系统的数学模型,在许多应用中,这个模型是已知的。

在这些情况下,PID控制器可以通过调整不同部分的增益以进行优化。

三、模糊控制与PID控制的对比1. 精度PID控制器可以实现非常高的精度,特别是在恒定环境下,模糊控制器具有更高的容错能力和适应性,而且围绕控制正常的范围内快速做出反应。

2. 调节PID调节通常是更容易实现的PLC控制器中自动化开发环境的系统。

Fuzzy可能更多地需要手动调整和对规则进行逐步精细的训练,但它也可以被训练自动化。

3. 适应性模糊控制器的好处是可以轻松地处理不确定性和模糊性,因此可以应对复杂环境。

PID控制器则对不确定性和模糊性更加敏感,而且会因不确定性的变化而导致过度响应或不足响应的问题。

4. 实际应用PID控制器广泛应用于许多领域,如化工、制造和机械工程。

经典PID与模糊PID控制29695培训资料

经典PID与模糊PID控制29695培训资料

经典P I D与模糊P I D 控制29695)4)(3)(1(2)(+++=s s s ss G 经典PID 与模糊PID 控制一、PID 控制规律控制输出由三部分组成:比例环节——根据偏差量成比例的调节系统控制量,以此产生控制作用,减少偏差。

比例系数的作用是加快系统的响应速度,比例系数越大,系统响应速度越快,系统的调节精度越高,但容易产生超调,甚至会导致系统的不稳定;比例系数过小,会降低系统调节精度,系统响应速度变慢,调节时间变长,系统动态、静态特性变坏。

比例控制是最简单的控制结构,然而,它也能使系统满足某一方面的特性要求,如GM 、PM 、稳态误差等。

积分环节——用于消除静差,提高系统的无差度。

积分作用的强弱取决于积分时间常数TI 的大小, TI 越小,积分作用越强。

需要注意的是积分作用过强,可能引起系统的不稳定。

微分环节——根据偏差量的变化趋势调节系统控制量,在偏差信号发生较大的变化以前,提前引入一个早期的校正注意的是微分作用过强,可能引起系统的振荡。

已知被控对象的数学模型:二、经典PID 设计由于在设计PID 控制器中要调整3个参数,根轨迹与波特图设计方法通常不被直接采用。

Ziegler 与Nichols 发展了PID 调节器设计方法。

该方法基于简单的稳定性分析方法。

首先,置0==I D K K ,然后增加比例系数直至系统开始振荡(即闭环系统极点在jw 轴上)。

再将该比例系数乘0.6,其他参数按下式计算:m P K K 6.0= m P D w Pi K K 4= Pi w K K m P I =式中,m K 为系统开始振荡时的K 值;m w 为振荡频率。

然而,该设计方法在设计过程中没有考虑任何特性要求。

但是Ziegler 与Nichols 发现这种设计方法给予过程控制器提供了好的工作性能。

工程师们的多年实践经验证明,这种设计方法的确是一种好的方法。

根据给定传递函数用SIMULINK 搭建结构图如下:起振时m K =391,如图:根据公式计算Kp 、I K 、D K 分别为234.6、276、49.8525 此时对于常数3的响应曲线如图:可见,此时系统振荡,不稳定,继续等比例调节参数得新参数65、77、14,得响应曲线:可见此时系统响应时间过长,而且存在比较大的静态误差,为了减小响应K,同时调节过程中会因参数变动时间应增大Kp,为了减小静态误差应增大I产生超调量,综合以上几点性能决定确定参数为120、300、14。

经典PID与模糊PID控制

经典PID与模糊PID控制

)4)(3)(1(2)(+++=s s s ss G 经典PID 与模糊PID 控制一、PID 控制规律控制输出由三部分组成:比例环节——根据偏差量成比例的调节系统控制量,以此产生控制作用,减少偏差。

比例系数的作用是加快系统的响应速度,比例系数越大,系统响应速度越快,系统的调节精度越高,但容易产生超调,甚至会导致系统的不稳定;比例系数过小,会降低系统调节精度,系统响应速度变慢,调节时间变长,系统动态、静态特性变坏。

比例控制是最简单的控制结构,然而,它也能使系统满足某一方面的特性要求,如GM 、PM 、稳态误差等。

积分环节——用于消除静差,提高系统的无差度。

积分作用的强弱取决于积分时间常数TI 的大小, TI 越小,积分作用越强。

需要注意的是积分作用过强,可能引起系统的不稳定。

微分环节——根据偏差量的变化趋势调节系统控制量,在偏差信号发生较大的变化以前,提前引入一个早期的校正注意的是微分作用过强,可能引起系统的振荡。

已知被控对象的数学模型:二、经典PID 设计由于在设计PID 控制器中要调整3个参数,根轨迹与波特图设计方法通常不被直接采用。

Ziegler 与Nichols 发展了PID 调节器设计方法。

该方法基于简单的稳定性分析方法。

首先,置0==I D K K ,然后增加比例系数直至系统开始振荡(即闭环系统极点在jw 轴上)。

再将该比例系数乘0.6,其他参数按下式计算:m P K K 6.0= m P D w Pi K K 4= Pi w K K m P I =式中,m K 为系统开始振荡时的K 值;m w 为振荡频率。

然而,该设计方法在设计过程中没有考虑任何特性要求。

但是Ziegler 与Nichols 发现这种设计方法给予过程控制器提供了好的工作性能。

工程师们的多年实践经验证明,这种设计方法的确是一种好的方法。

根据给定传递函数用SIMULINK 搭建结构图如下:起振时m K =391,如图:根据公式计算Kp 、I K 、D K 分别为234.6、276、49.8525 此时对于常数3的响应曲线如图:可见,此时系统振荡,不稳定,继续等比例调节参数得新参数65、77、14,得响应曲线:可见此时系统响应时间过长,而且存在比较大的静态误差,为了减小响应时K,同时调节过程中会因参数变动产生间应增大Kp,为了减小静态误差应增大I超调量,综合以上几点性能决定确定参数为120、300、14。

DC/DC变换器模糊控制和PID控制比较研究

DC/DC变换器模糊控制和PID控制比较研究
调 节器 设计 . 用 Ma a 运 t b软件 的 SS 设计 工 具 对 l IO 变 换 器 频 率特 性 进 行 补 偿 ,可 直 观 的 设计 调 节 器 达 到 良好 效 果 。经 设 计 , I P D调 节 器 可 用 G ( ) s =
特 定 工作 点 Q , R) 控制 到输 出 电压 的 ( D, 处
ma c s u i g t e e t o c n r l r ae c mp e a e n h x e me t e u s p ro e y r tt p f a n e sn h s w o tol s r o a d b s d o t e e p r n a r s h ef r d b a p o oy e o e r i l m
摘要 : 糊控 制器 因 具有控 制鲁 棒性 强 , 模 设计 不 依赖 于被控 对 象精 确模 型等 优 点而 逐渐 应用 在 电力 电子变 换 器 中。以 B ot 换器 为例 , os变 从设计 方法 、 具体 工程 实现和 实验 结果三方 面对传 统线性 比例积 分微 分 (i ) ro 控制 器和模 糊控 制器进 行 了对 比分析 。详细 阐述 了 PD控制 器和 模糊控 制器 的设 计方 法 , I 对其 设计 的侧 重 点进行 了对 比。 过实验 对 比 了线性 PD控 制器 与模糊控 制器 的控制 性能 。 通 I 实验结 果表 明 , 糊控 制技 术相对 于线性 模

个 比例 环 节 , : 即
H( ) 1G , G () 1 s= / : / () 4

(I ) 厂

1V ] hS
调节器
一 V c} D =
&J -
: ;

PID控制与模糊控制比较

PID控制与模糊控制比较

PID控制与模糊控制的比较专业:控制理论与控制工程班级:级班姓名:X X X学号:xxxxxxxxxxxxxx摘要:介绍了PID控制系统和模糊控制系统的工作原理。

PID控制器结构简单,实现简单,控制效果良好,已经得到了广泛的应用。

而模糊控制器相对复杂,但在许多的智能化家用电器中也得到了大量应用。

但对于一个简单的系统来讲,哪一种控制方法更好,是不是越智能的控制就能得到越好的效果。

关键词:PID控制,模糊控制,比较Abstract: Introduced the working principle of PID control system and fuzzy control system. PID controller structure is simple, implementation is simple, the control effect is good, has been widely used. And fuzzy controller is relatively complicated, but in a lot of intelligent household appliances also received a large number of applications. But for a simple system, which kind of control method is better, is weather the intelligent control can obtain the good effect.Key words: PID control, fuzzy control, compare目录一、问题的提出 (1)二、PID控制器的设计 (2)1.PID控制原理图: (2)2.PID控制器传递函数的一般表达式 (2)三、模糊控制器的设计 (3)1.模糊控制原理图 (3)2.模糊控制器传递函数一般表达形式 (4)四、系统仿真 (4)五、总结 (14)参考文献: (15)一、问题的提出当今的自动控制技术都是基于反馈的概念。

常规PID控制和常规模糊控制的比较

常规PID控制和常规模糊控制的比较

常规PID控制和常规模糊控制的比较作者:胡洋来源:《科学与财富》2016年第26期摘要:PID控制是自动控制领域产生最早、应用最广的一种控制方法,但对于大滞后、非线性的复杂系统,常规PID控制很难保证其控制效果始终处于最佳效果,不易进行在线的调整。

模糊控制不需要确定系统的精确数学模型,是一种基于规则的控制。

模糊控制在智能控制领域由于理论研究比较成熟、实现相对比较简单、适应面宽而得到广泛的应用。

本文就实际问题对两种方法进行Simulink仿真,并做了分析比较。

关键词:PID控制;模糊控制;Matlab仿真1 PID控制器的设计PID控制器传递函数的一般表达式为:Gc(s)=Kp+Ki/s+Kd*s,Kp为比例增益;Ki为积分增益;Kd为微分增益。

PID参数模糊自整定是找出PID中3个参数与e和ec之间的模糊关系,在运行中通过不断检测e和ec,根据模糊控制原理来对3个参数进行在线修改,以满足不同e和ec时对控制参数的不同要求,而使被控对象有良好的动稳态性能。

从系统的稳定性、响应速度、超调量和稳态精度等方面来考虑Kp,Ki,Kd的作用如下:(1)比例系数Kp的作用是:加快系统的响应速度,提高系统的调节精度。

Kp越大,系统的响应速度越快,系统的调节精度越高,但易产生超调,甚至导致系统不稳定;Kp取值过小,则会降低调节精度,使响应速度缓慢,从而延长调节时间,使系统静态、动态特性变坏。

(2)积分作用系数Ki的作用是:消除系统的稳态误差。

Ki越大,系统的稳态误差消除越快,但Ki过大,在响应过程的初期会产生积分饱和现象,从而引起响应过程的较大超调;若Ki过小,将使系统稳态误差难以消除,影响系统的调节精度。

(3)微分作用系数Kd的作用是:改善系统的动态特性。

其作用主要是能反应偏差信号的变化趋势,并能在偏差信号值变得太大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速度,减少调节时间。

2 常规模糊控制器的设计Matlab中的Simulink仿真图如下:在Matlab的命令窗口输入命fuzzy,进入图形用户界面(GUI)窗口。

PID控制与模糊控制比较

PID控制与模糊控制比较

PID控制与‎模糊控制的比‎较专业:控制理论与控‎制工程班级:级班姓名:X X X学号: xxxxxx‎xxxxxx‎xx摘要:介绍了PID‎控制系统和模‎糊控制系统的‎工作原理。

PID控制器‎结构简单,实现简单,控制效果良好‎,已经得到了广‎泛的应用。

而模糊控制器‎相对复杂,但在许多的智‎能化家用电器‎中也得到了大‎量应用。

但对于一个简‎单的系统来讲‎,哪一种控制方‎法更好,是不是越智能‎的控制就能得‎到越好的效果‎。

关键词:PID控制,模糊控制,比较Abstra‎c t: Introd‎uced the workin‎g princi‎p le of PID contro‎l system‎and fuzzy contro‎l system‎. PID contro‎l ler struct‎u re is simple‎, implem‎e ntati‎o n is simple‎, the contro‎l effect‎is good, has been widely‎used. And fuzzy contro‎l ler is relati‎v ely compli‎c ated, but in a lot of intell‎i gent househ‎o ld applia‎n ces also receiv‎e d a large number‎of applic‎a tions‎.But for a simple‎system‎, which kind of contro‎l method‎is better‎, is weathe‎r the intell‎i gent contro‎l can obtain‎the good effect‎.Key words: PID contro‎l, fuzzy contro‎l, compar‎e目录一、问题的提出 (1)二、PID控制器‎的设计 (2)1.PID控制原‎理图: (2)2.PID控制器‎传递函数的一‎般表达式 (2)三、模糊控制器的‎设计 (3)1.模糊控制原理‎图 (3)2.模糊控制器传‎递函数一般表‎达形式 (4)四、系统仿真 (4)五、总结............................................................................................ 错误!未定义书签。

控制系统的性能指标与优化方法

控制系统的性能指标与优化方法

控制系统的性能指标与优化方法控制系统在工业自动化和工程领域中发挥着重要作用。

为了保证系统的稳定性和可靠性,控制系统的性能指标至关重要。

本文将介绍一些常见的控制系统性能指标以及优化方法。

一、控制系统的性能指标1. 响应时间:响应时间是指系统从接收到输入信号到产生输出信号的时间。

一个良好的控制系统应该具有快速的响应时间,以便及时对外界变化做出响应。

2. 稳态误差:稳态误差是指系统在稳定状态下输出与期望输出之间的差异。

稳态误差越小,系统的控制精度越高。

3. 超调量:超调量是指系统输出在达到稳态之前超过期望输出的幅度。

合理控制超调量可以使系统更加稳定和可靠。

4. 调节时间:调节时间是指系统从初始状态到稳态所需要的时间。

一个高效的控制系统应该具有较短的调节时间,以提高系统的响应速度。

5. 控制精度:控制精度是指系统输出与期望输出之间的差异。

控制精度越高,系统的控制能力越强。

二、控制系统性能优化方法1. PID控制器优化:PID控制器是一种常见的控制器,可以通过调整其比例、积分和微分参数来优化控制系统的性能。

比例参数影响系统的稳态误差和超调量,积分参数影响稳态误差,微分参数影响系统的稳定性。

2. 状态反馈控制:状态反馈控制利用系统状态的信息来设计控制器,以优化系统的性能。

通过测量系统的状态变量并实时调整控制器的参数,可以改善系统的响应速度和控制精度。

3. 模糊控制:模糊控制是一种基于模糊逻辑的控制方法,可以处理非线性和模糊的系统。

通过将输入和输出之间的关系建模为模糊规则,可以根据实际情况进行控制优化。

4. 最优控制:最优控制是一种通过优化目标函数来设计控制器的方法。

通过选择合适的目标函数,可以使系统达到最佳的性能表现。

最优控制方法包括最小二乘控制、线性二次调节和模型预测控制等。

5. 鲁棒控制:鲁棒控制是一种具有强健性能的控制方法,可以处理系统参数变化和外部扰动等不确定性。

通过设计具有鲁棒性能的控制器,可以使系统对不确定性具有一定的鲁棒性,保证系统的稳定性和可靠性。

模糊控制与传统PID控制比较

模糊控制与传统PID控制比较

模糊控制与传统PID控制比较引言:模糊控制不需要确定系统的精确数学模型,是一种基于规则的控制。

模糊控制在智能控制领域由于理论研究比较成熟、实现相对比较简单、适应面宽而得到广泛的应用。

不论是对复杂的水泥回转窑的控制,还是在智能化家用电器中的应用,模糊控制都充当着重要的角色。

一个典型工业过程通常可以等效为二阶系统加上一个非线性环节(如纯滞后),给出如下典型控制对象传递函数的一般形式:Gp(s)=K*e-τs/(T1s+1)(T2s+1)PID控制:PID控制是自动控制领域产生最早、应用最广的一种控制方法。

PID控制原理图:PID控制器传递函数的一般表达式为:Gc(s)=kp+ki/s+kd*skp为比例增益;ki为积分增益;kd为微分增益控制器的关键是确定三个增益值,在simulink中搭建PID系统控制模型如下图示:PID仿真结果:模糊控制:模糊控制是运用语言归纳操作人员的控制策略,运用变量和模糊集合理论形成控制算法的一种控制。

模糊控制原理框图:一个基本模糊控制器主要有三个功能:(1)模糊化:把精确量(如偏差e和偏差变化ec)转化为相应的模糊量(E、EC);(2)模糊推理:按总结的语言规则(模糊控制规则表)进行模糊推理;(3)模糊判决:把推理结果(U)从模糊量转化为可以用于实际控制的精确量(u)模糊控制器的基本机构设计模糊控制器主要步骤:1.选择偏差e、偏差变化ec和控制量u的模糊语言变量为E、EC和U。

根据e、ec和u实际的基本论域,设定E、EC 和U论域都为[-6,6],可以确定出量化因子Ke、Kc和比例因子Ku。

2.选取E、EC和U的各语言变量直,正大PB,正中PM,正小PS,零ZE,负小NS,负中NM,负大NB,它们各自在论域上的模糊子集隶属度函数均为三角形,3.根据总结的人工操作策略设计出模糊控制策略表:ek=yr-yk △ek=ek-ek-1模糊规则:eu NB NM NS ZE PS PM PBde PB ZE PS PS PM PM PB PB PM NS ZE PS PS PM PM PB PS NS NS ZE PS PS PM PM Z NM NS NS ZE PS PS PM NS NM NM NS NS ZE PS PS NM NB NM NM NS NS ZE PS NB NB NB NM NM NS NS ZE3.选择一种模糊判决方法,将控制量由模糊量变为精确量,这个过程叫做“去模糊化”,这里采用“面积平分法”仿真结果:总结:设给定r为单位阶跃输入,通过改变控制对象象的参数,在同一坐标内观察它们的输出y响应曲线对两种控制方案的性能进行对比分析,模糊控制器比PID控制器,动态性能很好,上升速度快,基本没有超调。

PID及模糊控制算法

PID及模糊控制算法

PID及模糊控制算法PID控制算法是一种传统的控制算法,它通过对系统的误差进行测量并相应地调整控制器的输出来实现系统稳定和精确控制。

PID算法是基于系统的反馈控制原理设计的,并广泛应用于各种工业系统中。

PID控制算法由三个参数组成:比例项(P),积分项(I)和微分项(D)。

比例项根据当前误差的大小进行控制输出,积分项根据历史误差的累积进行控制输出,微分项根据误差变化的速率进行控制输出。

这三个项的组合使用可以使系统具有快速响应、稳定性和抗干扰能力。

比例项的作用是根据当前误差对控制器的输出进行调整。

当误差较大时,比例项可以使控制器更快地对系统进行调整,以减小误差。

然而,如果比例项过大,就可能导致系统产生振荡甚至不稳定。

积分项的作用是根据历史误差的累积对控制器的输出进行调整。

当系统存在静态误差时,积分项可以通过积累误差来逐渐减小静态误差。

然而,积分项过大可能导致系统产生超调或过冲现象。

微分项的作用是根据误差变化的速率对控制器的输出进行调整。

微分项可以通过反馈误差的变化率来提前调整控制器的输出,以减小误差的变化速率。

然而,由于微分项对高频噪声敏感,过大的微分项可能导致系统产生振荡。

模糊控制算法是一种基于模糊逻辑的控制算法,它能够处理非线性和模糊性问题。

模糊控制算法通过将输入和输出的模糊集合和一组模糊规则进行匹配,来确定控制器的输出。

模糊控制算法适用于无法准确建立系统数学模型或系统模型非常复杂的情况下。

模糊控制算法主要由三个部分组成:模糊化、推理和解模糊化。

模糊化将输入和输出的实际值通过模糊化函数转换为模糊集合,推理根据一组模糊规则来确定控制器的输出模糊集合,解模糊化将输出模糊集合通过解模糊化函数转换为实际值作为控制器的输出。

模糊控制算法中的模糊集合和模糊规则的设计通常需要经验和专业知识。

模糊集合的划分和隶属函数的选择会对控制器的性能产生重要影响。

模糊控制算法的设计也需要进行系统的调试和优化,以获得最佳的控制效果。

模糊控制与传统PID控制比较

模糊控制与传统PID控制比较

模糊控制与传统PID控制比较引言:模糊控制不需要确定系统的精确数学模型,是一种基于规则的控制;模糊控制在智能控制领域由于理论研究比较成熟、实现相对比较简单、适应面宽而得到广泛的应用;不论是对复杂的水泥回转窑的控制,还是在智能化家用电器中的应用,模糊控制都充当着重要的角色;一个典型工业过程通常可以等效为二阶系统加上一个非线性环节如纯滞后,给出如下典型控制对象传递函数的一般形式:Gps=Ke-τs/T1s+1T2s+1PID控制:PID控制是自动控制领域产生最早、应用最广的一种控制方法;PID控制原理图:PID控制器传递函数的一般表达式为:Gcs=kp+ki/s+kdskp为比例增益;ki为积分增益;kd为微分增益控制器的关键是确定三个增益值,在simulink中搭建PID系统控制模型如下图示:PID仿真结果:模糊控制是运用语言归纳操作人员的控制策略,运用变量和模糊集合理论形成控制算法的一种控制;模糊控制原理框图:一个基本模糊控制器主要有三个功能:(1)模糊化:把精确量如偏差e和偏差变化ec转化为相应的模糊量E、EC;(2)模糊推理:按总结的语言规则模糊控制规则表进行模糊推理;(3)模糊判决:把推理结果U从模糊量转化为可以用于实际控制的精确量u模糊控制器的基本机构设计模糊控制器主要步骤:1.选择偏差e、偏差变化ec和控制量u的模糊语言变量为E、EC和U;根据e、ec和u实际的基本论域,设定E、EC和U论域都为-6,6,可以确定出量化因子Ke、Kc和比例因子Ku;;2.选取E、EC和U的各语言变量直,正大PB,正中PM,正小PS,零ZE,负小NS,负中NM,负大NB,它们各自在论域上的模糊子集隶属度函数均为三角形,3.根据总结的人工操作策略设计出模糊控制策略表:ek=yr-yk △ek=ek-ek-13.选择一种模糊判决方法,将控制量由模糊量变为精确量,这个过程叫做“去模糊化”,这里采用“面积平分法”仿真结果:总结:设给定r为单位阶跃输入,通过改变控制对象象的参数,在同一坐标内观察它们的输出y响应曲线对两种控制方案的性能进行对比分析,模糊控制器比PID控制器,动态性能很好,上升速度快,基本没有超调;。

模糊PID与常规PID的比较

模糊PID与常规PID的比较

模糊PID与常规PID的比较最优控制与智能控制基础文献总结报告模糊PID 与常规PID的MATLAB 仿真比较与分析学生姓名:班级学号:5080628任课教师:段洪君提交日期:2011.04.02成绩:文献总结报告自查表自查项目“是”标√“否”标×1 报告是否由本人独立撰写完成2 参考文献是否由本人独立查阅完成3 文献总结报告是否按时提交4 题目是否包含被控对象名称及与本课程相关的控制方法5 封面是否按“示样”标准打印,签名是否手写6 报告正文是否包含“要求”的三部分7 报告正文是否按“样本”格式撰写8 报告正文中的公式、图表等是否由本人编辑、绘制9 所引用的参考文献在报告正文中是否按顺序标注10 参考文献的数量是否达到要求11 参考文献的格式是否规范12 报告的正文与参考文献的总页数是否在8~10页之间13 报告是否达到“总体要求”14 报告是否包含对现有文献结论的仿真验证结果15 报告是否包含本人的研究内容及结果对所提交报告的自我评价(按百分制打分)1 研究的背景及意义随着工业的发展和社会的进步,被控对象越来越复杂,其数学模型的建立也越发困难,对于很多控制对象有的只能建立起粗糙的模型,有的甚至无法建立模型。

这类对象往往被称为不确定性系统。

对于不确定性系统很难用传统的控制方法取得满意的控制效果。

但是对于这类系统,人类却可以凭借自身的操作经验进行很好的控制。

于是,人类将这些专家控制经验转化为可以用计算机实现的算法,为不确定性系统的控制开辟一条新途径。

而后,控制专家运用模糊控制工具,结合人类的专家控制控制经验建立了一种新型的控制方法-----模糊控制。

模糊控制的基本思想是将人类专家对特定对象的控制经验,运用模糊集理论进行量化,转化为可数学实现的控制器从而实现对被控对象的控制。

模糊控制器的基本工作原理是:将测量得到的被控对象的状态经过模糊化接口转换为用人类自然语言描述的模糊量,而后根据人类的语言控制规则,经过模糊推理得到输出控制量的模糊取值,控制量的模糊取值再经过清晰化接口转换为执行机构能够接收的精确量。

浅议模糊控制与PID控制的性能对比

浅议模糊控制与PID控制的性能对比

( ) 1 确定性干扰 时 : 图如图 2 原理 所示 。
①当对象为 G() - s
时, 调节 K ,2K 1K ,3的数值
即相应 的 P ID对应 的数值分别为 O ,.59 干扰 d 1 ,, . O2 , , 7 =, 得到一组仿 真结果图如 图 3 所示。
② 当对象 为 G()


( !
黄小 丽[ 吴 中华旧 】
2 60 ; 2 07 26 0 2 O7)

浅议模糊控 制与 P 制的性 能对 比 l D控
(1南通农 业 职业技 术 学院机 电工程 系 江苏 ・ 『 1 南通 『1 2南通农 业职 业技 术 学院信 息工程 系 江 苏 ・ 南通
OO 00 O0 .
O0 00
0O O2
PM OO 00 . OO 00 00 OO O0 OO . O2 . O7 1O . O7 02
P B 0O OO OO OO OO . OO . OO 0O 01 . O. 4 07 0 10 .


— 5
— 4 07 . 10 0 3
—3 O4 . 07 O7 OO . 00 O0 .
— 2 01 02 10 . 01 00 . 0O
—1

1 0O
2 00
3 0O .
4 00 O0 . 00 00 . 00 0 3

^ ,
传统 的 PD控 制器 由比例单元 ( 、 J P 积分单元(和微分单元() ) I ) D 组成 。比例项用 于纠正偏差 , 积分项用 于消除系统的稳态误差 , 微 分项用于减小系统的超 调量 , 增加系统稳定性 。肼D控制器的性能 就决定于 , 和 d 3 系数 。 这 个 如何选择这 3 个系数是 P D控 I 制的核心。 3 模糊控 制与 PD控 制器仿真 及性 能对 比 I

神经pid,模糊pid,常规pid的matlab比较

神经pid,模糊pid,常规pid的matlab比较

图4.BP神经网络PID系统输出响应曲线图6. PID 参数自适应模糊控制器系统框图图7.e,ec,Kp,Ki,Kd的隶属度函数通过不断进行仿真实验和借鉴专家经验可以得到如下的49条规则:图8.模糊PID控制系统输出曲线图9.模糊PID控制系统误差曲线图中1为常规整定PID 阶跃响应曲线,2为BP 神经网络PID 阶跃响应曲线,3为模糊自适应整定PID 阶跃响应曲线。

从曲线中以看出,三种PID控制方式中模糊PID几乎没有超调,调节时间短,控制效果最好;BP 网络PID效果次之;都比常规PID 效果好。

比较图5神经PID与图9模糊PID的误差曲线可以看出,模糊PID具有更短的学习时间。

仿真和实验结果均证明了神经网络PID 控制算法能有效地控制大时滞大惯性的温控系统,将神经网络与PID控制相结合,可以在线调整PID控制器的各个参数,减少了凭经验整定参数带来的误差,提高了温控系统的鲁棒性和自适应性。

此外,神经网络PID控制器还能有效的抑制干扰,而且对对象模型要求不高,具有较好的抗干扰性。

同时也可以进一步优化BP神经网络的结构和算法,使温度控制最终趋于最优,更好地满足实际生产对温度控制的要求。

但是由于该控制器的初始权值是随机值,控制输出在开始时波动很大,随着网络的自学习,不断调整权值控制输出来跟踪输入。

由于神经网络收敛速度慢,回到稳定状态所需时间较长,这个问题有待进一步研究解决。

,模糊PID控制响应几乎没有超调,但是响应速度较慢;在模型失配的情况下,模糊PID虽然产生了震荡,超调量也有所增加,但总体来说还能够保持稳定;在添加干扰后,系统持续产生小幅震荡,但超调量很小,系统整体还是稳定的,抗干扰能力强。

参考文献:1、陶永华.新型PID控制及其应用(第二版) [ M].北京:机械工业出版社,2002.2、杨智,朱海锋,黄以华.PID控制器设计与参数整定方法综述[ J ].化工自动化及仪表,2 005,32 ( 5 ):1-7 .3、杨智.工业自整定P ID调节器关键设计技术综述[J].化工自动化及仪表,2000,27 ( 2 ):5-10.4、王伟,张晶涛,柴天佑.PID参数先进整定方法综述[ J ].自动化学报,2000,26 (5):347-355.5、何宏源,徐进学,金妮.PID继电自整定技术的发展综述[ J ].沈阳工业大学学报,2005,27 (4):4 09-413.6、叶岚.基于继电反馈的PI D控制器的参数整定[ D].上海:上海交通大学自动化系,2007.7、李少远.基于继电反馈的PID控制器的参数整定[D].上海:上海交通大学自动化系,2007.8、吴泽宁等.BP神经网络的改进及应用[J ].河南科学,2003-4:202 -2069、李遵基编著.热工自动控制系统[M].中国电力出版社,1997.1010、俞海斌,褚健.CFB锅炉汽包水位的专家PID控制[J].机电工程,2000(3):103~10611、潘祥高等.模糊PID控制在工业锅炉控制系统中的应用[J].工业出版社,200412、刘金琨.先进PID 控制MA TLAB仿真M7.2 版.北京电子工业出版社,200413、薛定宇.控制系统计算机辅助设计MA TLAB 语言与应用M7.2 版.北京清华大学出版社,2006常规PID实现程序:clear all;close all;ts=10;sys=tf([1],[150,1],'inputdelay',50);dsys=c2d(sys,ts,'z oh');[num,den]=tfdata(dsys,'v');u_1=0;u_2=0;u_3=0;u_4=0;u_5=0;u_6=0;y_1=0;y_2=0;y_3=0;error_1=0;error_2=0;ei=0;for k=1:1:1000time(k)=k*ts;yout(k)=-den(2)*y_1+num(2)*u_6;rin(k)=1;error(k)=rin(k)-yout(k);ei=ei+error(k)*ts;kp=0.03;kd=1;ki=0.004;u(k)=kp*error(k)+kd*(error(k)-error_1)/ts+ki*ei; if u(k)>=10u(k)=10;endif u(k)<=-10u(k)=-10;endif k==200u(k)=u(k)+1;endu_6=u_5;u_5=u_4;u_4=u_3;u_3=u_2;u_2=u_1;u_1=u(k); y_3=y_2;y_2=y_1;y_1=yout(k);error_2=error_1;error_1=error(k);endfigure(1);plot(time,rin,'b',time,yout,'r');xlabel('time(s)');ylabel('rin,yout');figure(2);plot(time,u,'r');xlabel('time(s)');ylabel('u');BP神经网络PID程序:%BP based PID Controlclear all;close all;xite=0.9;IN=4;H=5;Out=3; %NN Structurewi=[-0.6394 -0.2696 -0.3756 -0.7023;-0.8603 -0.2013 -0.5024 -0.2596;-1.0749 0.5543 -1.6820 -0.5437;-0.3625 -0.0724 -0.6463 -0.2859;0.1425 0.0279 -0.5406 -0.7660];%wi=0.50*rands(H,IN);wi_1=wi;wi_2=wi;wi_3=wi;wo=[0.7576 0.2616 0.5820 -0.1416 -0.1325;-0.1146 0.2949 0.8352 0.2205 0.4508;0.7201 0.4566 0.7672 0.4962 0.3632];%wo=0.50*rands(Out,H);wo_1=wo;wo_2=wo;wo_3=wo;x=[0,0,0];du_1=0;u_1=0;u_2=0;u_3=0;u_4=0;u_5=0;u_6=0;y_1=0;y_2=0;Oh=zeros(H,1); %Output from NN middle layerI=Oh; %Input to NN middle layererror_2=0;error_1=0;ts=10;for k=1:1:1000time(k)=k*ts;rin(k)=1.0;%Unlinear modelyout(k)=0.9355*y_1+0.0645*u_6;error(k)=rin(k)-yout(k);xi=[rin(k),yout(k),error(k),1];x(1)=error(k)-error_1;x(2)=error(k);x(3)=error(k)-2*error_1+error_2;epid=[x(1);x(2);x(3)];I=xi*wi';for j=1:1:HOh(j)=(exp(I(j))-exp(-I(j)))/(exp(I(j))+exp(-I(j))); %Middle Layer endK=wo*Oh; %Output Layerfor l=1:1:OutK(l)=exp(K(l))/(exp(K(l))+exp(-K(l))); %Getting kp,ki,kd endkp(k)=K(1);ki(k)=K(2);kd(k)=K(3);Kpid=[kp(k),ki(k),kd(k)];du(k)=Kpid*epid;u(k)=u_1+du(k);dyu(k)=sign((yout(k)-y_1)/(du(k)-du_1+0.0001));%Output layerfor j=1:1:OutdK(j)=2/(exp(K(j))+exp(-K(j)))^2;endfor l=1:1:Outdelta3(l)=error(k)*dyu(k)*epid(l)*dK(l);endfor l=1:1:Outfor i=1:1:Hd_wo=xite*delta3(l)*Oh(i)+alfa*(wo_1-wo_2);endendwo=wo_1+d_wo+alfa*(wo_1-wo_2);%Hidden layerfor i=1:1:HdO(i)=4/(exp(I(i))+exp(-I(i)))^2;endsegma=delta3*wo;for i=1:1:Hdelta2(i)=dO(i)*segma(i);endif k==200u(k)=u(k)+1;endd_wi=xite*delta2'*xi;wi=wi_1+d_wi+alfa*(wi_1-wi_2);%Parameters Updatedu_1=du(k);u_6=u_5;u_5=u_4;u_4=u_3;u_3=u_2;u_2=u_1;u_1=u(k);y_2=y_1;y_1=yout(k);wo_3=wo_2;wo_2=wo_1;wo_1=wo;wi_3=wi_2;wi_2=wi_1;wi_1=wi;error_2=error_1;error_1=error(k);endfigure(1);plot(time,rin,'r',time,yout,'b');xlabel('time(s)');ylabel('rin,yout');figure(2);plot(time,error,'r');xlabel('time(s)');ylabel('error');figure(3);plot(time,u,'r');xlabel('time(s)');ylabel('u');figure(4);subplot(311);plot(time,kp,'r');xlabel('time(s)');ylabel('kp');subplot(312);plot(time,ki,'g');xlabel('time(s)');ylabel('ki');subplot(313);plot(time,kd,'b');xlabel('time(s)');ylabel('kd');模糊PID程序:clear all;close all;a=newfis('fuzzpid');a=addvar(a,'input','e',[-3,3]); %Parameter e a=addmf(a,'input',1,'NB','zmf',[-3,-1]);a=addmf(a,'input',1,'NM','t rimf',[-3,-2,0]);a=addmf(a,'input',1,'NS','trimf',[-3,-1,1]);a=addmf(a,'input',1,'Z','t rimf',[-2,0,2]);a=addmf(a,'input',1,'PS','trimf',[-1,1,3]);a=addmf(a,'input',1,'PM','t rimf',[0,2,3]);a=addmf(a,'input',1,'PB','smf',[1,3]);a=addvar(a,'input','ec',[-3,3]); %Parameter ec a=addmf(a,'input',2,'NB','zmf',[-3,-1]);a=addmf(a,'input',2,'NM','t rimf',[-3,-2,0]);a=addmf(a,'input',2,'NS','trimf',[-3,-1,1]);a=addmf(a,'input',2,'Z','t rimf',[-2,0,2]);a=addmf(a,'input',2,'PS','trimf',[-1,1,3]);a=addmf(a,'input',2,'PM','t rimf',[0,2,3]);a=addmf(a,'input',2,'PB','smf',[1,3]);a=addvar(a,'output','kp',[-0.3,0.3]); %Parameter kp a=addmf(a,'output',1,'NB','zmf',[-0.3,-0.1]);a=addmf(a,'output',1,'NM','t rimf',[-0.3,-0.2,0]);a=addmf(a,'output',1,'NS','trimf',[-0.3,-0.1,0.1]);a=addmf(a,'output',1,'Z','t rimf',[-0.2,0,0.2]);a=addmf(a,'output',1,'PS','trimf',[-0.1,0.1,0.3]);a=addmf(a,'output',1,'PM','t rimf',[0,0.2,0.3]);a=addmf(a,'output',1,'PB','smf',[0.1,0.3]);a=addvar(a,'output','ki',[-0.06,0.06]); %Parameter kia=addmf(a,'output',2,'NB','zmf',[-0.06,-0.02]);a=addmf(a,'output',2,'NM','t rimf',[-0.06,-0.04,0]);a=addmf(a,'output',2,'NS','trimf',[-0.06,-0.02,0.02]);a=addmf(a,'output',2,'Z','t rimf',[-0.04,0,0.04]);a=addmf(a,'output',2,'PS','trimf',[-0.02,0.02,0.06]);a=addmf(a,'output',2,'PM','t rimf',[0,0.04,0.06]);a=addmf(a,'output',2,'PB','smf',[0.02,0.06]);a=addvar(a,'output','kd',[-3,3]); %Parameter kpa=addmf(a,'output',3,'NB','zmf',[-3,-1]);a=addmf(a,'output',3,'NM','t rimf',[-3,-2,0]);a=addmf(a,'output',3,'NS','trimf',[-3,-1,1]);a=addmf(a,'output',3,'Z','t rimf',[-2,0,2]);a=addmf(a,'output',3,'PS','trimf',[-1,1,3]);a=addmf(a,'output',3,'PM','t rimf',[0,2,3]);a=addmf(a,'output',3,'PB','smf',[1,3]);rulelist=[1 1 7 1 5 1 1;1 2 7 1 3 1 1;1 3 6 2 1 1 1;1 4 6 2 1 1 1;1 5 5 3 1 1 1;1 6 4 4 2 1 1;1 7 4 4 5 1 1;2 1 7 1 5 1 1;2 2 7 1 3 1 1;2 3 6 2 1 1 1;2 4 5 3 2 1 1;2 5 5 3 2 1 1;2 6 4 43 1 1;2 7 34 4 1 1;3 1 6 1 4 1 1;3 2 6 2 3 1 1;3 3 6 3 2 1 1;3 45 3 2 1 1;3 5 4 4 3 1 1;36 3 5 3 1 1;37 3 5 4 1 1;4 1 6 2 4 1 1;4 2 6 2 3 1 1;4 3 5 3 3 1 1;4 4 4 4 3 1 1;4 5 3 5 3 1 1;4 6 2 6 3 1 1;4 7 2 6 4 1 1;5 1 5 2 4 1 1;5 2 5 3 4 1 1;5 3 4 4 4 1 1;5 4 3 5 4 1 1;5 5 3 5 4 1 1;5 6 2 6 4 1 1;5 7 2 7 4 1 1;6 1 5 4 7 1 1;6 2 4 4 5 1 1;6 3 3 5 5 1 1;6 4 2 5 5 1 1;6 5 2 6 5 1 1;6 6 27 5 1 1;6 7 1 7 7 1 1;7 1 4 4 7 1 1;7 2 4 4 6 1 1;7 3 2 5 6 1 1;7 4 2 6 6 1 1;7 5 2 6 5 1 1;7 6 1 7 5 1 1;7 7 1 7 7 1 1];a=addrule(a,rulelist);a=setfis(a,'DefuzzMethod','centroid');writefis(a,'fuzzpid');a=readfis('fuzzpid');%PID Controllerts=10;sys=tf([1],[150,1],'inputdelay',50);dsys=c2d(sys,ts,'t ustin');[num,den]=tfdata(dsys,'v');u_1=0.0;u_2=0.0;u_3=0.0;u_4=0.0;u_5=0.0;u_6=0.0;y_1=0;y_2=0;x=[0,0,0]';error_2=0;error_1=0;e_1=0.0;ec_1=0.0;kp0=0.0929;kd0=0.0078;ki0=0.0518;for k=1:1:1000time(k)=k*ts;rin(k)=1;%Using fuzzy inference to tunning PIDk_pid=evalfis([e_1,ec_1],a);kp(k)=kp0+k_pid(1);ki(k)=ki0+k_pid(2);kd(k)=kd0+k_pid(3);u(k)=kp(k)*x(1)+kd(k)*x(2)+ki(k)*x(3);if u(k)>=10u(k)=10;endif u(k)<=-10u(k)=-10;endif k==200u(k)=u(k)+1;endyout(k)=-den(2)*y_1+num(2)*u_6;error(k)=rin(k)-yout(k);%%%%%%%%%%%%%%Return of PID parameters%%%%%%%%%%%%%%% u_6=u_5;u_5=u_4;u_4=u_3;u_3=u_2;u_2=u_1;u_1=u(k);y_2=y_1;y_1=yout(k);x(1)=error(k); % Calculating Px(2)=error(k)-error_1; % Calculating Dx(3)=x(3)+error(k); % Calculating Ie_1=x(1);ec_1=x(2);error_2=error_1;error_1=error(k);endshowrule(a)figure(1);plot(time,rin,'b',time,yout,'r');xlabel('time(s)');ylabel('rin,yout');figure(2);plot(time,error,'r');xlabel('time(s)');ylabel('error');figure(3);plot(time,u,'r');xlabel('time(s)');ylabel('u');。

工业过程控制与优化

工业过程控制与优化

工业过程控制与优化一、引言随着机械化、自动化和信息化技术的不断发展,工业生产过程中的控制与优化变得越来越重要。

在这个过程中,工业过程控制技术是实现自动化生产、提高生产效率、降低成本的关键所在。

因此,本文将讨论工业过程控制与优化的相关内容,主要包括传感器、控制器、调节器等基础技术,以及现代控制理论与智能化控制技术的应用。

二、传感器技术在工业过程控制中的应用传感器技术在工业过程控制中扮演着举足轻重的角色。

传感器用于测量生产工艺中的各种参数,如温度、压力、流量、液位等,将这些参数转换为电信号输出,然后通过控制器对生产过程进行调节,从而实现生产自动化。

在工业生产中,常用的传感器有以下几种:(1)温度传感器温度传感器是工业自动化的重要组成部分,它用于对各个工艺设备的温度进行实时监测。

温度传感器有多种类型,如热电偶、热电阻、红外线测温等,不同的类型适用于不同的环境和工艺需求。

(2)压力传感器压力传感器广泛用于生产过程中的气体和液体压力的测量。

它可以测量各种压力范围,如微小的气压、高压气缸和油气管道中的压力。

常见的压力传感器有压阻型传感器、压力电容传感器和压力电势传感器等。

(3)液位传感器液位传感器广泛应用于各种液体储罐、化学反应器、蒸馏塔等容器的液位测量。

液位传感器的种类繁多,包括浮球式液位传感器、超声波液位传感器、压阻液位传感器和电容式液位传感器等。

三、控制器技术在工业过程控制中的应用控制器是自动化生产过程中的控制中心,它用于对采集到的各种参数进行处理及控制,从而实现自动化控制。

常见的控制器类型有以下几种:(1)PLC(可编程逻辑控制器)PLC 是一种专门用于工业自动化的数字电子计算机。

PLC 可以模拟机械继电器的功能,可通过编程实现感应、计量、控制、保护等多种功能。

PLC 已经成为自动化生产控制系统中不可替代的一部分。

(2)DCS(分布式控制系统)DCS 是一种分散的控制系统,用于控制工业生产中的各种过程。

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

本程序选自楼顺天,胡昌华,张伟编著《基于MATLAB 的系统分析与设计:模糊系统》,西安电子科技大学出版社,2001年5月第一版,ISBN7-5606-1011-0,定价:14元第77-87页例3.8中源程序。

程序运行输出图形如下:
00.51 1.52 2.53
3.54
4.5
0.2
0.4
0.6
0.8
1
1.21.4
1.6
1.8
时间(0.01秒)输出程序运行后在输出图形时需要用鼠标左键分别先后在红色曲线和蓝色曲线上方点一下,输出提示文本,否则若在图形区域外直接点击鼠标左键,会输出错误提示。

源程序清单如下: %Example 3.8
%-------------------------
%典型二阶系统的模糊控制与传统PID 控制的性能比较
%------------------------
num=20;
den=[1.6,4.4,1];
[a1,b,c,d]=tf2ss(num,den);
x=[0;0];
T=0.01;h=T;
umin=0.07;umax=0.7;
td=0.02;Nd=td/T;
N=500;R=1.5*ones(1,N);
%--------------------
%传统PID 控制
%--------------------
e=0;de=0;ie=0;
kp=5;ki=0.1;kd=0.001;
for k=1:N
uu1(1,k)=-(kp*e+ki*de+kd*ie);
%延迟环节
if k<=Nd
u=0;
else
u=uu1(1,k-Nd);
end
%死区和饱和环节
if abs(u)<=umin
u=0;
elseif abs(u)>umax
u=sign(u)*umax;
end
%利用龙格-库塔法进行系统仿真
k0=a1*x+b*u;
k1=a1*(x+h*k0/2)+b*u;
k2=a1*(x+h*k1/2)+b*u;
k3=a1*(x+h*k2)+b*u;
x=x+(k0+2*k1+2*k2+k3)*h/6;
y=c*x+d*u;
%计算误差、微分和积分
e1=e;
e=y(1,1)-R(1,k);
de=(e-e1)/T;
ie=e*T+ie;
yy1(1,k)=y;
end
%-----------------
%模糊控制
%-----------------
%定义输入和输出变量及其隶属度函数
a=newfis('Simple');
a=addvar(a,'input','e',[-6,6])
a=addmf(a,'input',1,'NB','trapmf',[-6,-6,-5,-3]); a=addmf(a,'input',1,'NS','trapmf',[-5,-3,-2,0]); a=addmf(a,'input',1,'ZR','trimf',[-2,0,2]);
a=addmf(a,'input',1,'PS','trapmf',[0,2,3,5]);
a=addmf(a,'input',1,'PB','trapmf',[3,5,6,6]);
a=addvar(a,'input','de',[-6,6]);
a=addmf(a,'input',2,'NB','trapmf',[-6,-6,-5,-3]); a=addmf(a,'input',2,'NS','trapmf',[-5,-3,-2,0]); a=addmf(a,'input',2,'ZR','trimf',[-2,0,2]);
a=addmf(a,'input',2,'PS','trapmf',[0,2,3,5]);
a=addmf(a,'input',2,'PB','trapmf',[3,5,6,6]);
a=addvar(a,'output','u',[-3,3]);
a=addmf(a,'output',1,'NB','trapmf',[-3,-3,-2,-1]); a=addmf(a,'output',1,'NS','trimf',[-2,-1,0]);
a=addmf(a,'output',1,'ZR','trimf',[-1,0,1]);
a=addmf(a,'output',1,'PS','trimf',[0,1,2]);
a=addmf(a,'output',1,'PB','trapmf',[1,2,3,3]);
%模糊规则矩阵
rr=[5 5 4 4 3
5 4 4 3 3
4 4 3 3 2
4 3 3 2 2
3 3 2 2 1];
r1=zeros(prod(size(rr)),3);k=1;
for i=1:size(rr,1)
for j=1:size(rr,2)
r1(k,:)=[i,j,rr(i,j)];
k=k+1;
end
end
[r,s]=size(r1);
r2=ones(r,2);
rulelist=[r1,r2];
a=addrule(a,rulelist);
%模糊控制系统仿真
e=0;de=0;ie=0;
x=[0;0];
ke=60;kd=2.5;ki=0.01;ku=.8;
for k=1:N
e1=ke*e;
de1=kd*de;
if e1>=6
e1=6;
elseif e1<=-6
e1=-6;
end
if de1>=6
de1=6;
elseif de1<=-6
de1=-6;
end
in=[e1 de1];
uu(1,k)=ku*evalfis(in,a)-ki*ie;
if k<=Nd
u=0;
else
u=uu(1,k-Nd);
end
if abs(u)<=umin
u=0;
elseif abs(u)>umax
u=sign(u)*umax;
end
k0=a1*x+b*u;
k1=a1*(x+h*k0/2)+b*u;
k2=a1*(x+h*k1/2)+b*u;
k3=a1*(x+h*k2)+b*u;
x=x+(k0+2*k1+2*k2+k3)*h/6;
y=c*x+d*u;
e1=e;
e=y-R(1,k);
de=(e-e1)/T;
ie=ie+e*T;
yy(1,k)=y;
end
%绘制结果曲线
kk=[1:N]*T;
figure(1);
plot(kk,R,'k',kk,yy,'r',kk,yy1,'b'); xlabel('时间(0.01秒)');
ylabel('输出');
gtext('模糊控制');gtext('PID控制');。

相关文档
最新文档