pid控制器matlab仿真.doc

上传人:豆**** 文档编号:23967095 上传时间:2022-07-03 格式:DOC 页数:52 大小:592KB
返回 下载 相关 举报
pid控制器matlab仿真.doc_第1页
第1页 / 共52页
pid控制器matlab仿真.doc_第2页
第2页 / 共52页
点击查看更多>>
资源描述

《pid控制器matlab仿真.doc》由会员分享,可在线阅读,更多相关《pid控制器matlab仿真.doc(52页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-datepid控制器matlab仿真pid控制器matlab仿真基于MATLAB的PID控制系统参数调节的仿真分析1、 引言PID控制是最早发展的自动控制策略之一,PID控制系统由比例单元(P)、积分单元(I)和微分单元(D)组成。具有简单易懂,使用中不需精确的系统模型等先决条件,因而成为应用最为广泛的控制器。PID控制的参数自动调整是通过智能化调整或自校正、自适应算法来实现

2、。当被控对象的结构和参数不能完全掌握,或得不到精确的数学模型时,控制理论的其它技术难以采用时,系统控制器的结构和参数必须依靠经验和现场调试来确定,这时应用PID控制技术最为方便。即当我们不完全了解一个系统和被控对象,或不能通过有效的测量手段来获得系统参数时,最适合用PID控制技术。PID控制,实际中也有PI和PD控制。PID控制器就是根据系统的误差,利用比例、积分、微分计算出控制量进行控制的。本文首先从PID理论出发,建立模型,讨论系统的稳定性,快速性,准确性。利用MATLAB对PID控制的参数进行仿真,设计不同的参数,以使系统满足所要求的性能指标。2、 控制领域有一个很重要的概念是反馈, 它

3、通过各种输出值和它们各自所需值的实时比较的度量各种误差,再以这些误差进行反馈控制来减少误差。这样形成的因果链是输入、动态系统、输出、测量、比较、误差、输入构成的一个环路,因而也构成了包含原动态系统在内的一个新的动态闭环系统。 采用反馈的基本原因是要在不确定性存在的条件下达到性能目标。许多情况下,对于系统的了解是不全面的,或者可用的模型是基于许多简化的假设而使它们变得不透彻。系统也可能承受外界干扰,输出的观测常受噪声干扰。有效的反馈能减少这些不确定性的影响,因为它们可以补偿任何原因引起的误差。反馈概括了很广泛的概念,包括当前系统中的许多回路、非线性和自适应反馈,以及将来的智能反馈。广义的讲,反馈

4、可以作为描述和理解许多复杂物理系统中发生的循环交互作用的方式。 在实际的过程控制和运动控制系统中,PID占有相当的地位,据统计,工业控制中 PID 类控制器占有 90以上。PID 控制器是最早出现的控制器类型,因其结构简单,各个控制器参数有着明显的物理意义,调整方便,所以深受工程技术人员的喜爱。而且PID控制是最早发展起来的控制策略之一,由于其算法简单、鲁棒性好、可靠性高,被广泛应用于过程控制和运动控制中,尤其适用于可建立精确数学模型的确定性控制系统中。 自计算机进入控制领域以来, 用数字计算机代替模拟计算机调节器组成的计算机控制系统,不仅可以用软件实现 PID 控制算法65,而且可以利用计算

5、机的逻辑功能,使 PID控制更加灵活。数字PID控制是生产过程普遍采用的一种控制方法,在机电、冶金、机械、化工等行业获得广泛的应用。将偏差的比例(P) 、积分(I)和微分(D)通过线性组合构成的控制量,对被控对象进行控制。 模拟 PID控制系统原理框图如图1, 系统由模拟 PID控制器和被控对象组成。 PID 控制器是一种线性控制器,它根据给定值 rin(t)和实际输出值 yout(t)构成控制偏差:err(t)rin(t)-yout(t)。通过对误差信号进行比例,积分或微分运算和结果的加权处理,得到控制系统的输出u(t) 其控制规律为构成传递函数为上式中,kp 为比例系统,T1 积分时间常数

6、,Td 微分时间常数。 简单来说,PID各校正环节的作用如下: 比例环节:成比例的反映控制系统的偏差信号 err(t),偏差一旦产生,控制器立即产生控制作用,以减少偏差。 积分环节:主要用于消除静差,提高系统的无差度。积分作用的强弱取决于时间常数 T1,T1 越大,积分作用越弱,反之越强。 微分环节:反映偏差信号的变化趋势(变化速率) ,并能在偏差信号变得太大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速度,减少调节时间。 3、 PID控制系统仿真分析 MATLAB语言具有简单易懂,运算功能强大,界面友好等优点,同时具有大量的工具箱,广泛应用于控制系统的仿真和分析。以下利用MA

7、TLAB对系统做分析和研究。PID控制的难点在于控制器的参数整定。一般先通过理论计算来确定控制器参数,同时结合工程经验对实际运行中的系统进行最后的调整和完善。本文首先通过系统等幅振荡整定得到PID参数,然后通过改变各个参数的取值,利用MATLAB仿真得到各参数对系统的影响。从而为现实的工业操作应用提供参考。 建立数学模型:设被控对象等效传递函数为 分析控制器的参数对系统静态误差的影响。程序num=1;den=conv(1 1 0,1 5);G0=tf(num,den);rlocus(G0)axis(-5 5 -10 10)可以得到原系统根轨迹图如图2所示:当开环增益约小于29.7的时候,系统处

8、于稳定状态。由图可以得原系统在临界稳定时,取,利用等幅震荡整定法,可以确定控制器对应的参数。控制器类型等幅震荡整定PPI,PID,1、首先可以得到没有加PID控制时候原系统以及添加PID控制器的阶跃响应其中参数 程序:t=0:0.01:25;num=1;den=conv(1 1 0,1 5);G0=tf(num,den);step(feedback(G0,1),t)hold onk0=30;p0=2.8;k1=0.6*k0;ti=0.5*p0;td=0.125*p0;s=tf(s);Gc=k1*(1+1/ti/s+td*s);step(feedback(G0*Gc,1),t)% title(原

9、系统与添加PID控制系统的对比图)gtext(原闭环系统响应曲线)gtext(PID控制系统响应曲线)从图可以看出,通过PID实施控制可以减少系统的静态误差,改善系统的稳态性能。2、分析比例控制作用,设、Kp= 0.1*30 1*30.输人信号阶跃函数,分别进行仿真,如图3 所展示的系统的阶跃响应曲线t=0:0.01:25;num=1;den=conv(1 1 0,1 5);G0=tf(num,den);k0=30;p0=2.8;a1=0.1:0.4:1;k1=a1*k0;ti=0.5*p0;td=0.125*p0;s=tf(s);Gc=k1*(1+1/ti/s+td*s);G=G0.*Gc;

10、step(feedback(G(1),1),t)hold onstep(feedback(G(2),1),t)hold onstep(feedback(G(3),1),t)axis(0 16 0 1.9)hold offlegend(Kp=3,Kp=15,Kp=27)text(6.5,1.4,Kp=3 )text(4,0.65,Kp=15 )text(4.1,1.1,Kp=27 )图3 显示的仿真结果表明:系统的超调量会随着Kp值的增大而加大,系统响应速度也会会随Kp值的增大而加快。但是系统的稳定性能会随着Kp的增大而变差。3、分析积分控制作用,设,、Kp= 18.输人信号阶跃函数,分别进行仿

11、真,如图所示系统的阶跃响应曲线系统的超调量会随着Ti值的加大而减小,系统响应速度随着Ti值的加大会略微变慢。t=0:0.01:25;num=1;den=conv(1 1 0,1 5);G0=tf(num,den); k0=30;p0=2.8;a1=linspace(0.2,1,3);k1=0.6*k0;ti=a1*p0td=0.125*p0;s=tf(s);Gc=k1*(1+1./ti/s+td*s);G=G0.*Gc;step(feedback(G(1),1),t)hold onstep(feedback(G(2),1),t)hold onstep(feedback(G(3),1),t)ax

12、is(0 10 -1 4)hold offlegend(Ti=0.56,Ti=1.68,Ti=2.8)gtext(Ti=0.56 )gtext(Ti=1.68 ) gtext(Ti=2.8 )4、设、Kp= 10.输人信号阶跃函数,分别进行仿真,如图3 所展示的系统的阶跃响应曲线随着Td值的加大,闭环系统的超调量增大,响应速度变慢。k0=30;p0=2.8;a1=linspace(0.1,1,3);k1=0.6*k0;ti=p0;td=a1*p0s=tf(s);Gc=k1*(1+1/ti/s+td.*s);G=G0.*Gc;step(feedback(G(1),1),t)hold onstep

13、(feedback(G(2),1),t)hold onstep(feedback(G(3),1),t)axis(0 7 0 2)hold offlegend(Td=0.28,Td=1.54,Td=2.8)gtext(Td=0.28 )gtext(Td=1.54 )gtext(Td=2.8 )2. PID 控制器的MATLAB 仿真美国MathWorks 公司推出的MATLAB 是一套具备高性能的数值计算和可视化软件。由于MATLAB 可以将矩阵运算、图形显示、信号处理以及数值分析集于一体,构造出的用户环境使用方便、界面友好,因此MATLAB 受到众多科研工作者的欢迎。本文利用MATLAB 仿真

14、工具箱Simulink 的功能,在基于仿真环境Matlab/Simulink 工具上用图形化方法直接建立仿真系统模型,启动仿真过程,将结果在示波器上显示出来。3. 仿真实例分析3.1 建立数学建模设被控对象等效传递函数为3.2 仿真建模仿真建模的目的就是将数学模型转换成计算机能够执行的模型,运用Simulink 可以达到此目的。图2 是综合图1 和给定计算公式运用Simulink 建立的PID 控制的连续系统的仿真模型(建模步骤略)。图2 Simulink仿真建模3.3 仿真实验在传统的PID 调节器中,参数的整定问题是控制面临的最主要的问题,控制系统的关键之处便是将Kp、Ti、Td三个参数的

15、值最终确定下来。而在工业过程控制中首先需要对PID 控制中三参量对系统动态性的影响进行实际深入地了解,才能确定怎样将三参数调节到最佳状态。在本实验中,对各参量单独变化对系统控制作用的影响进行讨论,其中在对一个参量变化引发的影响进行讨论时,需要将其余两个参数设定为常数。3.3.1 P 控制作用分析分析比例控制作用。设Td= 0、Ti=、Kp= 3 10.输人信号阶跃函数,分别进行仿真,如图3 所展示的系统的阶跃响应曲线。图3 显示的仿真结果表明:系统的超调量会随着Kp值的增大而加大,系统响应速度也会会随Kp值的增大而加快。但是系统的稳定性能会随着Kp的增大而变差。图3 单闭环调速系统P控制阶跃响

16、应曲线3.3.2 比例积分控制作用的分析设比例积分调节器中Kp= 1,讨论Ti=0.01 0.05 时。输人信号阶跃函数,分别进行仿真,如图4 所展示的系统的系统的阶跃响应曲线。图4 单闭环调速系统PI控制阶跃给定响应曲线系统的超调量会随着Ti值的加大而减小,系统响应速度随着Ti值的加大会略微变慢。3.3.3 微分调节作用的分析设Kp= 1、Ti= 0.01,讨论Td= 10 100 时对系统阶跃响应曲线的影响。输人信号阶跃函数,分别进行仿真,如图5 所展示的系统的阶跃响应曲线。图5 单闭环调速系统PID控制阶跃给定响应曲线图5 所显示的仿真结果表明:根据单闭环调速系统的参数配合情况,起始上升

17、段呈现较尖锐的波峰,Kp= 1、Ti= 0.01不变时,随着Td值的加大,闭环系统的超调量增大,响应速度变慢。4 .结论(1)对于PID 参数采用MATLAB 进行整定和仿真,使用起来不仅快捷、方便,而且更为直观,同时也避免了传统方法反复修改参数调试。(2)系统的响应速度会随Kp值的增大而加快,同时也有助于静差的减小,而Kp值过大则会使系统有较大超调,稳定性变坏;此外,系统的动作会因为过小的Kp值减慢。(3)超调的减小、振荡变小以及系统稳定性的增加都取决于积分时间Ti的增大,但是系统静差消除时间会因为Ti的增大而变长。(4)增大微分时间Td对于系统的稳定性、系统响应速度的加快以及系统超调量的减

18、小都会有所帮助。但是如果Td过大,则会使得调节时间较长,超调量也会增大;如果Td过小,同样地也会发生以上状况。(5)总之PID 参数的整定必须考虑在不同时刻三个参数的作用以及彼此之间的作用关系。5.结语PID 控制应用领域极为广泛,可将其应用于电力、化工、轻工、冶金以及机械等工业过程控制中。通常情况下,最适合采用PID 控制技术的条件是:当我们对目标系统或被控对象的内部特征不完全清楚时,或者是系统的全部参数不能经过有效的测量手段来获取,同时必须依赖于经验和现场调试来确定系统控制器的结构参数情况下采用该技术。4、 在先进PID控制MATLAB仿真中有这样一个例子:被控对象为一电动机模型的传递函数

19、:,式中,J=0.0067,B=0.10。输入指令信号为, 利用ODE45求解连续对象方程,采用PID控制方法设计控制器,其中控制主程序如下:%Discrete PID control for continuous plantclear all;close all;ts=0.001;%Sampling timexk=zeros(2,1);e_1=0;u_1=0;for k=1:1:2000time(k) = k*ts;rin(k)=0.50*sin(1*2*pi*k*ts);para=u_1;% D/AtSpan=0 ts;tt,xx=ode45(chap1_6f,tSpan,xk,para)

20、;xk = xx(length(xx),:);% A/Dyout(k)=xk(1);e(k)=rin(k)-yout(k);de(k)=(e(k)-e_1)/ts;u(k)=20.0*e(k)+0.50*de(k);%Control limitif u(k)10.0u(k)=10.0;endif u(k)10.0u(k)=10.0;endif u(k)-10.0u(k)=-10.0;endu_1=u(k);e_1=e(k);endfigure(1);plot(time,rin,r,time,yout,b);xlabel(time(s),ylabel(rin,yout);figure(2);plot(time,rin-yout,r);xlabel(time(s),ylabel(error);figure1figure2分享:-

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁