第三章_MATLAB与基本PID控制系仿真_第1页
第三章_MATLAB与基本PID控制系仿真_第2页
第三章_MATLAB与基本PID控制系仿真_第3页
第三章_MATLAB与基本PID控制系仿真_第4页
第三章_MATLAB与基本PID控制系仿真_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、MATLABMATLAB与系统仿真与系统仿真第三章 MATLAB与基本PID控制系统仿真 n3.1 自动控制系统与仿真概述n3.2 线性定常系统的数学模型n3.3 PID控制概述n3.4 PID控制系统仿真n作业MATLABMATLAB与系统仿真与系统仿真n1 自动控制系统基本概念n2 自动控制系统分类n3 控制系统仿真基本概念n4 MATLAB/Simulink下的控制系统仿真n5 MATLAB中控制相关的工具箱3.1 自动控制系统与仿真概述MATLABMATLAB与系统仿真与系统仿真自动控制系统基本概念1.1 开环控制系统与闭环控制系统图1.2 闭环控制示意图 图1.1 开环控制示意图 M

2、ATLABMATLAB与系统仿真与系统仿真闭环控制系统组成结构(1)给定环节:它是设定被控制量的给定值的装置。(2)比较环节:比较环节将所检测的被控制量和给定量进行比较,确定两者之间的偏差量。(3)中间环节:中间环节一般是放大元件,将偏差信号变换成适于控制执行机构工作的信号。(4)执行机构:一般由传动装置和调节机构组成,执行机构直接作用于控制对象,使被控制量达到所要求的数值。(5)控制对象或调节对象:它是指要进行控制的设备或过程。(6)检测装置或传感器:用于检测被控制量,并将其转换为与给定量统一的物理量。通常把比较环节、校正环节和放大环节合在一起称为控制装置。MATLABMATLAB与系统仿真

3、与系统仿真反馈控制系统品质要求反馈控制系统品质要求可以归结为稳、快、准。1稳定性稳定性对于不同的系统有不同的要求。稳定性是对系统的基本要求,不稳定的系统不能实现预定任务。稳定性通常由系统的结构决定,与外界因素无关。2快速性快速性是指对过渡过程的形式和快慢提出的要求,一般称为动态性能或暂态性能。3准确性准确性通常用稳态误差来表示,所谓稳态误差是指系统达到稳态时,输出量的实际值和期望值之间的误差。MATLABMATLAB与系统仿真与系统仿真2 自动控制系统分类n线性系统和非线性系统线性控制系统是由线性元件组成的系统,该系统的特征方程式可以用线性微分方程描述。如果系统微分方程的系数与自变量有关,则为

4、非线性微分方程,由非线性微分方程描述的系统称为非线性控制系统。n连续系统和离散系统连续系统各部分信号均以模拟的连续函数形式表示;离散系统的某一处或几处信号是以脉冲序列或数字形式表示的。n恒值系统和随动系统n恒值系统要求被控制量保持在恒定值,其给定量是不变。n在随动系统中,给定量是按照事先不知道的时间函数变化,要求输出量跟随给定量的变化而变化。MATLABMATLAB与系统仿真与系统仿真3 控制系统仿真基本概念n系统仿真作为一种特殊的试验技术,在20世纪3090年代的半个多世纪中经历了飞速发展,到今天已经发展成为一种真正的、系统的实验科学。n仿真的基本思想是利用物理的或数学的模型来类比模仿现实过

5、程,以寻求对真实过程的认识,它所遵循的基本原则是相似性原理。MATLABMATLAB与系统仿真与系统仿真计算机仿真基本概念n1 模型模型模型可以分为(1)物理模型。(2)数学模型。(3)仿真模型n2 仿真分类仿真分类从模型角度可分为物理仿真和数学仿真。从计算机类型角度可分为模拟仿真、数字仿真、混合仿真、现代计算机仿真。n3 仿真应用仿真应用n仿真技术有着广泛的应用,而且应用的深度和广度也越来越大,目前主要应用在(1)航空与航天工业。(2)电力工业。(3)原子能工业。(4)石油、化工及冶金工业。(5)非工程领域,如医学、社会学、宏观经济和商业策略的研究等n4 仿真技术应用意义仿真技术应用意义n仿

6、真技术的应用具有重要的意义,主要体现在(1)经济。(2)安全。(3)快捷。(4)具有优化设计和预测的特殊功能MATLABMATLAB与系统仿真与系统仿真控制系统仿真n控制系统仿真是系统仿真的一个重要分支,它是一门涉及自动控制理论、计算数学、计算机技术、系统辨识、控制工程以及系统科学的综合性新型学科。它为控制系统的分析、计算、研究、综合设计以及控制系统的计算机辅助教学等提供了快速、经济、科学及有效的手段。n控制系统仿真就是以控制系统模型为基础,采用数学模型替代实际控制系统,以计算机为工具,对控制系统进行实验、分析、评估及预测研究的一种技术与方法。n控制系统仿真通过控制系统的数学模型和计算方法,编

7、写程序运算语句,使之能自动求解各环节变量的动态变化情况,从而得到关于系统输出和所需要的中间各变量的有关数据、曲线等,以实现对控制系统性能指标的分析与设计。MATLABMATLAB与系统仿真与系统仿真计算机仿真技术发展趋势n(1)硬件方面:基于多CPU并行处理技术的全数字仿真将有效提高仿真系统的速度,大大增强数字仿真的实时性。n(2)应用软件方面:直接面向用户的数字仿真软件不断推陈出新,各种专家系统与智能化技术将更深入地应用于仿真软件开发之中,使得在人机界面、结果输出、综合评判等方面达到更理想的境界。n(3)分布式数字仿真:充分利用网络技术进行分布式仿真,投资少,效果好。n(4)虚拟现实技术:综

8、合了计算机图形技术、多媒体技术、传感器技术、显示技术以及仿真技术等多学科,使人仿佛置身于真实环境之中,这就是“仿真”追求的最终目标。MATLABMATLAB与系统仿真与系统仿真4 MATLAB/Simulink下的控制系统仿真n控制系统的MATLAB/Simulink仿真有两种途径:n(1)在MATLAB的命令窗口下,运行M文件,调用指令和各种用于系统仿真的函数,进行系统仿真。n(2)直接在Simulink窗口上进行面向系统结构方框图的系统仿真MATLABMATLAB与系统仿真与系统仿真MATLAB适合控制系统仿真的特点MATLAB具有以下主要特点,非常适合于控制系统的仿真。n(1)强大的运算

9、功能。n(2)特殊功能的TOOLBOX工具箱。n(3)高效的编程效率。n(4)简单易学的编程语言。n(5)方便友好的编程环境。MATLABMATLAB与系统仿真与系统仿真Simulink适合控制系统仿真的特点nSimulink它采用系统模块直观地描述系统典型环节,因此可十分方便地建立系统模型而不需要花较多时间编程。正由于这些特点,Simulink广泛流行,被认为是最受欢迎的仿真软件。nSimulink实进行系统仿真非常简单,只需要如下的几个步骤:n(1)启动Simulink,进入Simulink窗口;n(2)在Simulink窗口下,借助Simulink模块库,创建系统框图模型并调整模块参数;

10、n(3)设置仿真参数后,启动仿真;n(4)输入仿真结果。MATLABMATLAB与系统仿真与系统仿真5 MATLAB中控制相关的工具箱MATLAB中与控制相关的基础工具箱主要有6个:n控制系统工具箱(Control System Toolbox)n系统辨识工具箱(System Identification Toolbox)n模型预测控制工具箱(Model Predictive Control Toolbox)n鲁棒控制工具箱(Robust Control Toolbox)n神经网络工具箱(Neural Network Toolbox)n模糊逻辑工具箱(Fuzzy Logic Toolbox)M

11、ATLABMATLAB与系统仿真与系统仿真 3.2 线性定常系统的数学模型n传递函数模型传递函数模型 【调用格式【调用格式】sys = tf(num,densys = tf(num,den) )【说明【说明】numnum和和denden分别是传递函数的分子多项式系数和分母多项式系数,按分别是传递函数的分子多项式系数和分母多项式系数,按s s的降的降幂排列。幂排列。tftf函数的返回值是一个对象,称之为函数的返回值是一个对象,称之为TFTF对象,对象,numnum和和denden是是TFTF对象的属性。对象的属性。1. SISO系统的系统的TF数学模型数学模型例例: 已知已知系统的传递函数为系统

12、的传递函数为2( )210sG sss试建立系统的试建立系统的TF模型。模型。MATLABMATLAB与系统仿真与系统仿真 零极点模型零极点模型 【调用格式【调用格式】sys =zpk(z,p,k) 【说明【说明】z、p、k分别为系统的零点、极点和增益。分别为系统的零点、极点和增益。zpk函数的返回值是一个对象,函数的返回值是一个对象,称之为称之为ZPK对象,对象,z、p和和k是是ZPK对象的属性。对象的属性。如果没有零点,则如果没有零点,则z为空数组。为空数组。例:例: SISO系统的传递函数为系统的传递函数为25(2)( )(22)sG ss ss试建立系统的试建立系统的ZPK模型。模型。

13、MATLABMATLAB与系统仿真与系统仿真 离散系统的数学模型离散系统的数学模型 1、脉冲传递函数模型、脉冲传递函数模型【调用格式【调用格式】sys = tf(num,den,Ts)%建立离散系统的建立离散系统的TF模型模型sys = zpk(z,p,k,Ts)%建立离散系统的建立离散系统的ZPK模型模型【说明【说明】num和和den是离散系统脉冲传递函数的分子和分母多项式系数。是离散系统脉冲传递函数的分子和分母多项式系数。z,p,k是离散系统脉冲传递函数的零点、极点和增益。是离散系统脉冲传递函数的零点、极点和增益。Ts是离散系统的采样周期。是离散系统的采样周期。MATLABMATLAB与系

14、统仿真与系统仿真 数学模型之间的转换 LTI对象之间的转换对象之间的转换【调用格式【调用格式】sys = tf(syssys = tf(sys) )% % 将将syssys对象转换为对象转换为TFTF模型模型sys = zpk(syssys = zpk(sys) )% % 转换为转换为ZPKZPK模型模型 LTI对象属性之间的转换对象属性之间的转换 【调用格式【调用格式】z,p,kz,p,k = tf2zp(num, den) = tf2zp(num, den)% % 将将TFTF对象属性转换为对象属性转换为ZPKZPK对象属性对象属性num,dennum,den = zp2tf(z,p,k)

15、 = zp2tf(z,p,k)% % 将将ZPKZPK对象属性转换为对象属性转换为TFTF对象属性对象属性 连续系统和离散系统之间的转换连续系统和离散系统之间的转换 sysdsysd = c2d(sysc,Ts) = c2d(sysc,Ts)% %将连续系统转换为采样周期为将连续系统转换为采样周期为TsTs的离散系统的离散系统sysdsysd = c2d(sysc,Ts, method) = c2d(sysc,Ts, method)% %指定连续系统的离散化方法指定连续系统的离散化方法【调用格式【调用格式】MATLABMATLAB与系统仿真与系统仿真syscsysc = d2c(sysd) =

16、 d2c(sysd)% %将离散系统转换为连续系统将离散系统转换为连续系统syscsysc = d2c(sysd,method) = d2c(sysd,method)% %指定离散系统的连续化方法指定离散系统的连续化方法methodmethodsysd1 = d2d(sysd,Ts)sysd1 = d2d(sysd,Ts)% %改变采样周期,生成新的离散系统改变采样周期,生成新的离散系统sysc表示连续系统的数学模型,表示连续系统的数学模型,sysd表示离散系统的数学模型。表示离散系统的数学模型。method为转换方法其取值和含义为:为转换方法其取值和含义为:zoh零阶保持器法,这是默认的转换

17、方法。零阶保持器法,这是默认的转换方法。foh一阶保持器法一阶保持器法【说明【说明】MATLABMATLAB与系统仿真与系统仿真例例: 系统的被控对象传递函数为:系统的被控对象传递函数为:)5)(2(10)(sssG采样周期采样周期TsTs0.10.1秒秒, ,试将其进行离散化处理。试将其进行离散化处理。程序:num=10; den=1,7,10; ts=0.1;sysc=tf(num,den);sysd=c2d(sysc,ts)MATLABMATLAB与系统仿真与系统仿真 PID控制器是一种线性控制器,它根据给定值rin(t)与实际输出值yout(t)构成控制偏差:)()()(tyouttr

18、interror PID控制规律: 其中:kp比例系数;TI积分时间常数;TD微分时间常数tDIpdttderrorTdtterrorTterrorktu0)()(1)()(3.3 PID控制概述MATLABMATLAB与系统仿真与系统仿真1 1、比例控制、比例控制求在不同的求在不同的KpKp(0.1,0.3,0.5,1,2,30.1,0.3,0.5,1,2,3)取值下闭环系统的)取值下闭环系统的单位阶跃响应曲线。单位阶跃响应曲线。例:例: 设被控对象的数学模型为设被控对象的数学模型为分析比例、微分、积分控制对系统的影响。分析比例、微分、积分控制对系统的影响。30) 1(1)(ssG比例、积分

19、、微分控制作用的分析比例、积分、微分控制作用的分析MATLABMATLAB与系统仿真与系统仿真G0=tf(1,1,3,3,1); P=0.1 0.3 0.5 1 2 3;figure, hold onfor i=1:length(P) G=feedback(P(i)*G0,1);step(G)end结论:结论:比例系数增大,闭环系统的灵敏度增加,稳态误比例系数增大,闭环系统的灵敏度增加,稳态误差减小,系统振荡增强;比例系数超过某个值时,闭环差减小,系统振荡增强;比例系数超过某个值时,闭环系统可能变得不稳定。系统可能变得不稳定。MATLABMATLAB与系统仿真与系统仿真结论:结论:可以提高系统

20、的型别,使系统由有差变为无差;积可以提高系统的型别,使系统由有差变为无差;积分作用太强会导致闭环系统不稳定。分作用太强会导致闭环系统不稳定。2 2、积分控制、积分控制(令(令KpKp=1=1,研究系统在不同,研究系统在不同TiTi值下的响应)值下的响应)G0=tf(1,1,3,3,1); Kp=1; Ti=0.6:0.2:1.4; t=0:0.1:20;figure,hold onfor i=1:length(Ti);Gc=tf(Kp*1,1/Ti(i),1,0);G=feedback(G0*Gc,1);step(G,t)endgrid onaxis(0,20,-0.5,2.5)MATLABM

21、ATLAB与系统仿真与系统仿真3 3、微分控制、微分控制(令(令KpKp=Ti=1=Ti=1,研究系统在不同,研究系统在不同TdTd值下的值下的响应)响应)结论:结论:微分具有预报作用,会使系统的超调量减小,微分具有预报作用,会使系统的超调量减小,响应时间变快。响应时间变快。G0=tf(1,1,3,3,1);Kp=1; Ti=1; Td=0.2:0.3:1.4; t=0:0.1:20;figure; hold onfor i=1:length(Td)Gc=tf(Kp*Ti*Td(i),Ti,1,Ti,0); G=feedback(G0*Gc,1);step(G,t) endgrid on ax

22、is(0,20,0,1.6)MATLABMATLAB与系统仿真与系统仿真n(1)当阶跃输入作用时,P作用是始终起作用的基本分量;I作用一开始不显著,随着时间逐渐增强;D作用与I作用相反,在前期作用强些,随着时间逐渐减弱。n(2)PI控制器与被控对象串联连接时,可以使系统的型别提高一级,而且还提供了两个负实部的零点。n(3)与PI控制器相比,PID控制器除了同样具有提高系统稳态性能的优点外,还多提供了一个负实部零点,因此在提高系统动态性能方面具有更大的优越性。n(4)PID控制通过积分作用消除误差,而微分控制可缩小超越量,加快反应,是综合了PI控制与PD控制长处并去除其短处的控制。n(5)从频域

23、角度来看,PID控制是通过积分作用于系统的低频段,以提高系统的稳态性能,而微分作用于系统的中频段,以改善系统的动态性能。 PID控制的主要特点MATLABMATLAB与系统仿真与系统仿真PID参数整定规律 几条基本的PID参数整定规律:n(1)增大比例系数一般将加快系统的响应,在有静差的情况下有利于减小静差,但是过大的比例系数会使系统有比较大的超调,并产生振荡,使稳定性变坏。n(2)增大积分时间有利于减小超调,减小振荡,使系统的稳定性增加,但是系统静差消除时间变长。n(3)增大微分时间有利于加快系统的响应速度,使系统超调量减小,稳定性增加,但系统对扰动的抑制能力减弱。MATLABMATLAB与

24、系统仿真与系统仿真PID控制器参数整定PID控制器参数整定的方法很多,概括起来有两大类:n(1)理论计算整定法n主要依据系统的数学模型,经过理论计算确定控制器参数。这种方法所得到的计算数据未必可以直接使用,还必须通过工程实际进行调整和修改。n(2)工程整定方法n主要有Ziegler-Nichols整定法、临界比例度法、衰减曲线法。这三种方法各有特点,其共同点都是通过试验,然后按照工程经验公式对控制器参数进行整定。但无论采用哪一种方法所得到的控制器参数,都需要在实际运行中进行最后调整与完善。n工程整定法的基本特点是:不需要事先知道过程的数学模型,直接在过程控制系统中进行现场整定;方法简单,计算简

25、便,易于掌握。 Ziegler-Nichols法根据给定对象的瞬态响应特性来确定PID控制器的参数。Ziegler-Nichols法首先通过实验,获取控制对象单位阶跃响应 : MATLABMATLAB与系统仿真与系统仿真n例:基本PID控制SIMULINK仿真仿真时取kp=60,ki=1,kd=3,输入指令为rin(k)=sin(0.4*pi*t)采用ODE45迭代方法,仿真时间为10s。Transfer Fcn133s +25s2SumSignalGeneratorScopePID ControllerPIDMuxMux3.4 PID控制系统仿真MATLABMATLAB与系统仿真与系统仿真参

26、数设置MATLABMATLAB与系统仿真与系统仿真仿真曲线MATLABMATLAB与系统仿真与系统仿真数字PIDn离散PID控制算法:kjdipTkerrorkerrorkTjerrorkkerrorkku0) 1()()()()(n1、离散系统的数字PID控制仿真:MATLABMATLAB与系统仿真与系统仿真n例:被控对象为:n采样时间为1ms,采用Z变换进行离散化,进过Z变换后的离散化对象为:nyout(k)=-den(2)yout(k-1)-den(3)yout(k-2)-den(4)yout(k-3)n +num(2)u(k-1)+num(3)u(k-2)+num(4)u(k-3)n分

27、别对阶跃信号、正弦信号和方波信号进行位置响应,设计离散PID控制器。其中,S为信号选择变量,S=1时为阶跃跟踪,S=2为方波跟踪,S=3为正弦跟踪。ssssG1046585.86523407)(23MATLABMATLAB与系统仿真与系统仿真nclear all;nclose all; nts=0.001;nsys=tf(523407,1,86.85,10465,0);ndsys=c2d(sys,ts,z);nnum,den=tfdata(dsys,v); nu_1=0.0;u_2=0.0;u_3=0.0;ny_1=0.0;y_2=0.0;y_3=0.0;nx=0,0,0;nerror_1=0

28、;nfor k=1:1:500ntime(k)=k*ts; nS=3;nif S=1n kp=0.50;ki=0.001;kd=0.001; n rin(k)=1; %Step Signalnelseif S=2n kp=0.50;ki=0.001;kd=0.001; n rin(k)=sign(sin(2*2*pi*k*ts); %Square Wave Signaln方法一MATLABMATLAB与系统仿真与系统仿真nelseif S=3n kp=1.5;ki=1.0;kd=0.01; %Sine Signaln rin(k)=0.5*sin(2*2*pi*k*ts); nend nu(k

29、)=kp*x(1)+kd*x(2)+ki*x(3); %PID Controllern%Restricting the output of controllernif u(k)=10 n u(k)=10;nendnif u(k)0;n(2)当 时,采用PD控制;n(3)当 时,采用PID控制;ekerror)(ekerror)(MATLABMATLAB与系统仿真与系统仿真n积分分离控制算法为:kjdipTkerrorkerrorkTjerrorkkerrorkku0) 1()()()()(n式中,T为采样时间; 为积分项的开关系数,且, 0, 1ekerrorekerror)()(MATLAB

30、MATLAB与系统仿真与系统仿真n例:设被控对象为一延迟对象,即n采样时间为20s,延迟时间为4个采样时间,被控对象离散化为n y(k)=-den(2)y(k-1)+num(2)u(k-5)n取M=1,采用积分分离PID控制器进行阶跃响应,M=2,采用普通PID控制。160)(80sesGsMATLABMATLAB与系统仿真与系统仿真nclear all;nclose all; nts=20;n%Delay plantnsys=tf(1,60,1,inputdelay,80);ndsys=c2d(sys,ts,zoh);nnum,den=tfdata(dsys,v); nu_1=0;u_2=0

31、;u_3=0;u_4=0;u_5=0;ny_1=0;y_2=0;y_3=0;nerror_1=0;error_2=0;nei=0;nfor k=1:1:200ntime(k)=k*ts; n%Delay plantnyout(k)=-den(2)*y_1+num(2)*u_5; n%I separationnrin(k)=40;nerror(k)=rin(k)-yout(k);nei=ei+error(k)*ts;n程序:MATLABMATLAB与系统仿真与系统仿真nM=1;nif M=1 %Using integration separationn if abs(error(k)=30&am

32、p;abs(error(k)=20&abs(error(k)=10&abs(error(k)=110 % Restricting the output of controllerMATLABMATLAB与系统仿真与系统仿真nu(k)=110;nendnif u(k)=10n u(k)=10;nendnif u(k)=10n u1(k)=10;nendnif u2(k)=10n u2(k)=10;nendnif u1(k)=-10n u1(k)=-10;nendnif u2(k)=-10n u2(k)=-10;nend n%Coupling Plantnyout1(k)=1.0/(1+y1_1)2*(0.8*y1_1+u1_2+0.2*

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论