常规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 与常规PID 的MATLAB 仿真比较与分析题目:设某被控对象可等效为含有纯延迟的二阶环节,传递函数为0.02220G(s)=1.6 4.41se s s -⨯++且执行机构具有0.07的死区和0.7的饱和区,采样时间T=0.01,系输入r(t)=1.5。
试分别设计:1)常规模糊控制器,当改变模糊控制的比例因子时,观察分析控制响应曲线有什么变化?2)常规PID 控制器,当改变PID 控制器参数时,观察分析输出响应曲线有什么变化?3)比较两种控制器的控制效果。
解答:1)模糊PID 控制器模糊PID 控制器,即利用模糊逻辑算法并根据一定的模糊规则对PID 控制的比例、积分、微分系数进行实时优化,以达到较为理想的控制效果。
计算机根据所设定的输入和反馈信号,计算实际位置和理论位置的偏差e 以及当前的偏差变化de ,并根据模糊规则进行模糊推理,最后对模糊参数进行解模糊,输出PID 控制器的比例、积分、微分系数。
模糊PID 控制器的模型为图1 模糊PID 控制器的模型系统输出为图中的红色线:图2 PID控制器的仿真结果2)常规PID控制器:常规PID控制器是建立在数学模型基础上的,根据被控对象的静态和动态特性,按照偏差的比例(P-Proportional)、积分(I-Integral)和微分(D-Derivative)的线性组合构成控制量,对被控对象进行控制。
常规PID控制器的模型为图3 常规PID 控制的模型参数选择:当参数分别选择为:8.0=p k 、15.0=i k 、3.0=d k 时,系统的输出为图中的蓝色线:3)两种模型的控制效果比较:常规PID控制器的算法简单实用,且具有良好的控制效果和鲁棒性。
但常规PID控制器无自适应能力,不能根据现场的情况进行在线自整定参数且当参数变化范围太大时,系统性能会明显变差。
另外,常规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控制比较
目录
引言 (3)
第一章开环测试 (3)
1.1开环测试 (3)
1.2 PID控制 (4)
1.2.1 PID概述: (4)
1.2.2 PID结构 (4)
1.2.3 PID参数作用 (5)
1.2.4 PID调节方法(自整定过程) (6)
第二章:模糊控制 (10)
2.1模糊控制技术的起源与特点 (10)
2.2模糊控制论的特点: (11)
2.3模糊控制研究现状: (11)
2.4模糊控制的发展趋势: (12)
2.5设计一个模糊控制器规则: (12)
2.6一个基本模糊控制器主要有三个功能 (13)
2.7模糊控制器主要步骤: (13)
2.9 simulink仿真 (15)
第三章:模糊控制与传统PID控制比较: (16)
3.1 死区、迟滞 (16)
3.2 PID控制器和模糊控制器对比: (17)
参考文献: (20)
引言
模糊控制不需要确定系统的精确数学模型,是一种基于规则的控制。
模糊控制在智能控制领域由于理论研究比较成熟、实现相对比较简单、适应面宽而得到广泛的应用。
不论是对复杂的水泥回转窑的控制,还是在智能化家用电器中的应用,模糊控制都充当着重要的角色。
以下我们从一个典型工业过程通常可以等效为二阶系统加上一个非线性环节(如纯滞后),给出如下典型控制对象传递函数的一般形式:[1]
Gp(s)=K*e-τs/(T1s+1)(T2s+1)
第一章开环测试
1.1开环测试:取K=1,T1=2,T2=4,τ=0.1;
在simulink中搭建开环测试框架图:
图1 开环测试图
仿真结果:。
传统PID控制与模糊控制方法的仿真比较研究
科技资讯科技资讯S I N &T NOLO GY I NFORM TI ON2008N O.07SCI EN CE &TECHN OLOG Y I NFOR M A TI O N高新技术传统PI D 控制是通过调整参数获得良好控制效果的,但参数整定值只具有一定局域性的优化值,全局控制效果不是很理想。
模糊控制器是近年来发展很快的一种新型控制器,它能方便地将专家的经验与推理输入计算机中,使计算机在控制时可以像人一样思考并解决问题,从而达到控制被控对象的目的。
本文利用M at l ab 仿真软件,分别将传统PI D 控制与模糊PI D 控制应用于交流伺服系统的控制中,并作了仿真比较研究。
1加入传统PI D 控制器的交流伺服电机系统的仿真对于交流伺服电机这一具有非线性、不确定性等特征的被控对象,我们可用近似的数学模型传递函数来表征系统在无转动惯量变化、无冲击和力矩干扰等情况下的系统的动态特性。
1.1程序法先用M at l ab 程序法,对该伺服电机系统进行传统PI D 控制模拟仿真,程序运行后结果为:加入传统PI D 控制器前后的幅值裕量分别为21.114(dB )和20.4876(dB ),相位裕量分别为18.3824度和63.5621度,最大超调量分别为59.0024%和20.5%;传统PI D 控制器加入前后的阶跃响应仿真曲线对比如图1所示。
1.2模块法为使传统PI D 控制产生更好的效果,可用模块法仿真加入传统PI D 控制器的伺服电机系统(即用M a t l ab/Si m ul i nk 的现成PI D 控制模块)中,仿真框图如图2所示。
在开关打到下面时,即接入PI D 控制器,在线根据经验反复调整PI D 控制器的kp 、kd 、ki 三个参数,当kp=7.6179,kd =0.1001,ki =144.868时,运行仿真得出的阶跃响应波形如图3所示,其控制效果的动态性能(调节时间t s =0.4s、超调量)比程序法好了不少,但控制精度还差些。
模糊控制与PID控制在机器人控制系统中的应用比较研究
模糊控制与PID控制在机器人控制系统中的应用比较研究机器人控制系统是现代机器人技术的关键之一。
机器人控制系统通常由多种控制算法组合而成,以实现控制机构、传感器和执行器之间的有效沟通和合作。
其中,模糊控制和PID控制是被广泛应用的两种控制算法。
本文将对这两种控制算法进行比较研究,探讨它们在机器人控制系统中的应用情况。
1. 模糊控制模糊控制是一种基于模糊逻辑的控制技术,它使用模糊变量和规则来描述并控制非线性、模糊和复杂的系统。
模糊控制器通常包括模糊推理机、模糊集和模糊逻辑。
通过对输入变量的模糊化和规则的匹配,模糊控制器可以对机器人的动作进行柔性控制,从而满足不同场景下的控制需求。
在机器人控制系统中,模糊控制应用广泛。
例如,机器人的避障控制、路径规划控制和手臂控制等都可以采用模糊控制算法进行优化。
模糊控制有以下优点:1.1 适应复杂系统由于模糊控制算法能够实现非线性、模糊和复杂系统的控制,因此可以针对具有多种信号输入和输出的机器人进行调整和优化,使机器人的响应更为准确。
1.2 开发简单快速使用模糊控制进行机器人控制时,只需要基于模糊集、模糊逻辑和模糊推理等基本概念,即可实现所需的控制动作,而无需进行大量的复杂运算和数据处理,开发难度较小且开发速度快。
1.3 灵活性高机器人控制中的模糊控制通过对机器人动作的柔性控制,使得可实现与机器人环境之间的互动,等效于人的行为,因此其兼容性和灵活性更高。
2. PID控制PID控制器是一种基于比例、积分、微分(英文缩写P、I、D)三个参数的控制算法。
PID控制器能够检测到偏差、积分误差和微分误差,并结合比例系数、积分系数和微分系数,计算出一个控制动作,使机器人实现期望动作。
在机器人控制系统中,PID控制同样应用广泛。
例如,对于机器人的姿态控制、精密装配控制和行走活动控制等,PID控制都可以派上用场。
PID控制有以下优点:2.1 稳定性好PID控制器天然的误差反馈机制,使得可以有效地避免系统出现较大的误差,保证系统状态中的稳态性。
模糊控制程序设计报告
模糊控制程序设计报告自研112班 麻世博 2201100387题目:已知被控对象为0.51()101s G s e s −=+。
假设系统给定为阶跃值r =30,采样时间为0.5s ,系统的初始值r(0)=0。
试分别设计:(1)常规的PID 控制器;(2)常规的模糊控制器;分别对上述2种控制器进行Matlab 仿真,并比较控制效果解答:1 常规PID 控制器的设计与SIMULINK 仿真如图1所示,使用SIMULINK 工具对已知系统的PID 控制系统进行仿真。
图1 PID 控制系统的SIMULIK 仿真其中PID 控制器为离散型,采样时间T=0.5s ,参数P=14,I=3,D=0。
阶跃信号幅值为30,被控对象传递函数为0.51()101s G s e s −=+。
该系统的阶跃响应如图2。
图2 PID控制系统的输出该控制系统上升时间T r=1.5s,调节时间T s=8s,超调量σ%=70%,没有稳态误差。
该系统中PID控制器的输出曲线如图3。
图3 PID控制器的输出曲线输出最大值为465,最小值为-208。
2 模糊控制器的设计在本文中,我通过MATLAB提供的模糊逻辑工具箱(Fuzzy Logic Toolbox)编辑隶属函数、控制规则,设计了一个双输入单输出的模糊控制器,如下图所示。
图4 模糊控制器概览2.1 隶属度函数的确立。
选择偏差E和偏差变化率EC作为控制器的输入,控制量U为输出。
取E、EC和U的模糊子集为{NB, NM, NS, ZO, PS, PM, PL} ,它们的论域为{-3, -2, -1, 0, 1, 2, 3}。
在 MATLAB的命令窗口输入命令Fuzzy,进入模糊逻辑编辑窗口。
取输入量E、EC的隶属函数为高斯型(gaussmf),输出U的隶属函数为三角形(trimf),如下图所示。
图5 输入模糊变量E的隶属度函数图6 输入模糊变量EC的隶属度函数图7 输出模糊变量U的隶属度函数2.2 模糊控制规则与决策方法的确立。
DC/DC变换器模糊控制和PID控制比较研究
特 定 工作 点 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
(I ) 厂
.
1V ] hS
调节器
一 V c} D =
&J -
: ;
I
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控制和常规模糊控制的比较作者:胡洋来源:《科学与财富》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控制与模糊控制的比较专业:控制理论与控制工程班级:级班姓名:X X X学号: xxxxxxxxxxxxxx摘要:介绍了PID控制系统和模糊控制系统的工作原理。
PID控制器结构简单,实现简单,控制效果良好,已经得到了广泛的应用。
而模糊控制器相对复杂,但在许多的智能化家用电器中也得到了大量应用。
但对于一个简单的系统来讲,哪一种控制方法更好,是不是越智能的控制就能得到越好的效果。
关键词:PID控制,模糊控制,比较Abstrac t: Introduced the working princip le of PID control systemand fuzzy control system. PID control ler structu re is simple, impleme ntatio n is simple, the control effectis good, has been widelyused. And fuzzy control ler is relativ ely complic ated, but in a lot of intelli gent househo ld applian ces also receive d a large numberof applica tions.But for a simplesystem, which kind of control methodis better, is weather the intelli gent control can obtainthe good effect.Key words: PID control, fuzzy control, compare目录一、问题的提出 (1)二、PID控制器的设计 (2)1.PID控制原理图: (2)2.PID控制器传递函数的一般表达式 (2)三、模糊控制器的设计 (3)1.模糊控制原理图 (3)2.模糊控制器传递函数一般表达形式 (4)四、系统仿真 (4)五、总结............................................................................................ 错误!未定义书签。
模糊控制与传统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的MATLAB 仿真比较与分析学生姓名:班级学号:5080628任课教师:段洪君提交日期:2011.04.02成绩:文献总结报告自查表自查项目“是”标√“否”标×1 报告是否由本人独立撰写完成2 参考文献是否由本人独立查阅完成3 文献总结报告是否按时提交4 题目是否包含被控对象名称及与本课程相关的控制方法5 封面是否按“示样”标准打印,签名是否手写6 报告正文是否包含“要求”的三部分7 报告正文是否按“样本”格式撰写8 报告正文中的公式、图表等是否由本人编辑、绘制9 所引用的参考文献在报告正文中是否按顺序标注10 参考文献的数量是否达到要求11 参考文献的格式是否规范12 报告的正文与参考文献的总页数是否在8~10页之间13 报告是否达到“总体要求”14 报告是否包含对现有文献结论的仿真验证结果15 报告是否包含本人的研究内容及结果对所提交报告的自我评价(按百分制打分)1 研究的背景及意义随着工业的发展和社会的进步,被控对象越来越复杂,其数学模型的建立也越发困难,对于很多控制对象有的只能建立起粗糙的模型,有的甚至无法建立模型。
这类对象往往被称为不确定性系统。
对于不确定性系统很难用传统的控制方法取得满意的控制效果。
但是对于这类系统,人类却可以凭借自身的操作经验进行很好的控制。
于是,人类将这些专家控制经验转化为可以用计算机实现的算法,为不确定性系统的控制开辟一条新途径。
而后,控制专家运用模糊控制工具,结合人类的专家控制控制经验建立了一种新型的控制方法-----模糊控制。
模糊控制的基本思想是将人类专家对特定对象的控制经验,运用模糊集理论进行量化,转化为可数学实现的控制器从而实现对被控对象的控制。
模糊控制器的基本工作原理是:将测量得到的被控对象的状态经过模糊化接口转换为用人类自然语言描述的模糊量,而后根据人类的语言控制规则,经过模糊推理得到输出控制量的模糊取值,控制量的模糊取值再经过清晰化接口转换为执行机构能够接收的精确量。
用模糊控制器调节PID控制器的参数
4.4.3 用模糊控制器调节PID 控制器的参数1.P I D 控制器的参数常规PID 控制器具有算法简单、稳定性好、可靠性高的特点,加之设计容易、适应面宽,是过程控制中应用最广泛的一类基本控制器,它对于各种线性定常系统的控制,都能够获得满意的控制效果,尤其适用于被控对象参数固定、非线性不很严重的系统。
但是,工业生产过程中被控对象的负荷多变、干扰因素复杂,要获得满意的控制效果,就需要对PID 的参数不断地进行在线调整。
有时由于这些参数的变化无常,往往没有确定不变的数学模型和规律可循,利用模糊控制器调节它们不失为一种实用、简便、可行的选择。
模糊控制器能充分利用操作人员进行实时非线性调节的成功实践操作经验,充分发挥PID 控制器的优良控制作用,使整个系统达到最佳控制效果。
设PID 控制(调节)器的输出量为()u t ,输入为()e t ,它们间的关系是:p I 0()()()()tDde t u t K e t K e dx K dtτ=++⎰ 式中KP 为比例增益,KI 为积分增益,KD 为微分增益。
为获得满意的控制效果,这三个参数需要根据系统状态进行实时调节。
在知道被控对象数学模型的情况下,常常通过在线辨识方法完成这一任务。
但是,对于干扰多变、负荷变化无常的系统,很难用在线辨识的方法进行实时调整。
不过用模糊控制器调节它们,却是方便可行的实用办法。
通过积累的大量操作经验知道,这三个系数与输入控制器的偏差e(t)、偏差变化率de(t)/dt 之间,存在着一种非线性关系。
这些关系虽然无法用清晰的数学表达式描述,却可以用模糊语言表述。
2.调节P I D 控制器三个参数的模糊规则通过多次操作的经验总结或多次操作的数据处理,结合理论分析可以归纳出偏差e 、偏差变化率ec 跟PID 调节器的三个参数KP 、KI 、KD 间,存在如下关系。
e t较大时,为加快系统的响应速度,应取较大的KP,这样可以使系①当()统的时间常数和阻尼系数减小。
几种控制方法比较
几种控制方法的性能比较专业:控制理论与控制工程姓名:周燕红学号:200930210690摘要:本文对同一控制对象分别采用常规PID控制,模糊控制和基于遗传算法的PID控制进行仿真,并对仿真结果进行分析,从而得出各个控制方法的性能优劣。
关键字:常规PID ;模糊控制器;遗传算法1常规PID控制1.1 PID控制原理在模拟控制系统中,控制器最常用的控制规律是PID控制。
模拟PID控制系统原理框图如图1-1所示。
系统由模拟PID控制器和被控对象组成。
图1 PID控制系统原理框图简单说来,PID控制器各校正环节的作用如下:(1)比例环节:成比例的反应控制系统的偏差信号error(t),偏差一旦差生,控制器立即产生控制作用,以减小偏差。
K p越大,系统的响应速度越快,调节精度越高,但易产生超调,甚至会使系统不稳定。
反之,若过小,则调节精度降低,响应速度缓慢,使系统的静态、动态性能变坏。
(2)积分环节:主要用于消除稳态误差,提高系统的误差度。
积分作用的强弱取决于积分时间常数T I,T越大,积分作用越弱,若过大将使系统稳态误差难以消除,影响系统调节精度。
反之则越强,稳态误差消除越快,但过小,在响应过程初期会产生积分饱和现象,从而引起响应过程的较大超调。
(3)微分环节:反应偏差信号的变化趋势(变化速率),并能在偏差信号变得太大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速度,减少调节时间。
微分作用的强弱取决于微分时间常数T D,T D越大,微分作用越强,但过大会使响应过程提前制动,而且会降低系统的抗干扰性能。
1.2衰减曲线法整定PID参数衰减曲线法是一种在经验凑试法基础上经过反复实验而得出的一种参数整定方法。
可按过度过程达到4:1递减曲线法整定控制参数,也可按过度过程达到10:1递减曲线法整定控制参数。
参数整定步骤:(1)设置调节器积分时间Ti为无穷大,微分时间常数为0,比例度为较大值,并将系统投入运行。
神经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、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
上机实验
已知系统的传递函数为G(S)=1/(10S+1)e-0.5s。
假设系统给定为阶跃值r=30,系统的初始值r(0)=0试分别设计常规PID控制器和模糊控制器。
常规PID控制器的设计:
利用Ziegler-Nichols整定公式整定PID调节器的初始参数
表1. 调节器Ziegler-Nichols整定公式
KP TI TD
T Kτ
P /()
PI 0.9/()
T Kτ 3.3τ
PID 1.2/()
T Kτ 2.2τ0.5τ
由公式可得
P=18
Ti=1.65
Td=0 SIMULINK仿真图
设定仿真时间为10s
仿真结果
模糊控制器的设定
1 在matlab命令窗口输入“fuzzy”确定模糊控制器结构:即根据具体的系统确定输入、输出量。
选取二维控制结构,即输入为误差e和误差变化ec,输出为u 如下图所示
2 输入输出变量的模糊化:即把输入输出的精确量转化为对应语言变量的模糊集合。
首先我们要确定描述输入输出变量语言值的模糊子集,如{NB,NM,NS,ZO,PS,PM,PB},并设置输入输出变量的论域,然后我们为模糊语言变量选取相应的隶属度函数。
如下图所示
3 模糊推理决策算法设计:即根据模糊控制规则进行模糊推理,并决策出模糊输出量。
首先要确定模糊规则,即专家经验。
如图。
制定完之后,会形成一个模糊控制规则矩阵,然后根据模糊输入量按照相应的模糊推理算法完成计算,并决策出模糊输出量。
4.对输出模糊量的解模糊:模糊控制器的输出量是一个模糊集合,通过反模糊化方法判决出一个确切的精确量,反模糊化方法很多,我们这里选取重心法。
SIMULINK仿真图
在模糊控制器的输入和输出均有一个比例系数,我们叫它量化因子,它反映的是模糊论域围与实际围之间的比例关系,这里模糊控制器输入的论域围均为[-6,6],假设误差的围是[-10,10],误差变化率围是[-100,100],控制量的围是[-24,24],那么我们就可以算出量化因子分别为0.6,0.06,8。
量化因子的选取对于模糊控制器的控制效果有很大的影响,当输出量化因子调为10控制效果更好。
仿真曲线
常规PID控制器和模糊控制器的比较
由仿真结果可见两种控制器对系统的各项性能指标都有了改进,常规PID还是有超调量,模糊控制器的超调量几乎为零。