版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第六章下线性控制系统的数学模型第一页,共54页。线性系统的微分方程模型第一页第二页,共54页。传递函数模型MATLAB输入语句第二页第三页,共54页。传递函数输入举例例输入传递函数模型MATLAB输入语句在MATLAB环境中建立一个变量G第三页第四页,共54页。另外一种传递函数输入方法例如何处理如下的传递函数?定义算子,再输入传递函数第四页第五页,共54页。应该根据给出传递函数形式选择输入方法例输入混合运算的传递函数模型显然用第一种方法麻烦,所以第五页第六页,共54页。系统传递函数模型1连续系统格式:sys=tf(num,den)2离散系统格式:sys=tf(num,den,Ts)num为Z传递函数分子系数向量,den为Z传递函数分母系数向量,Ts为采样周期。调用方式与连续系统相同,只是需预先给Ts赋值。第六页第七页,共54页。系统零极点增益模型1连续系统格式:sys=zpk(z,p,k)z、p、k分别为系统的零点向量、极点向量和增益。2离散系统格式:sys=zpk(z,p,k,Ts)z、p、k分别为系统的零点向量、极点向量和增益,Ts为采样周期。第七页第八页,共54页。状态空间模型1连续系统格式:sys=ss(A,B,C,D)A、B、C、D分别为系统矩阵、输入矩阵、输出矩阵和直接传递矩阵。2离散系统格式:sys=ss(A,B,C,D,Ts)A、B、C、D分别为系统矩阵、输入矩阵、输出矩阵和直接传递矩阵。Ts为采样周期。第八页第九页,共54页。系统模型的转换1.将非传递函数形式的系统模型sys转化成传递函数模型newsys:newsys=tf(sys)2.将状态空间方程转化为传递函数形式:[num,den]=ss2tf(A,B,C,D,iu)
其中,iu表示第iu个输入。3.将非零极点增益形式的系统模型sys转化成零极点增益模型newsys。newsys=zpk(sys)第九页第十页,共54页。4.将状态空间方程转化为零极点形式:[z,p,k]=ss2zp(A,B,C,D,iu)5.将传递函数转化为零极点形式:[z,p,k]=tf2zp(num,den)6.将非状态空间形式的系统模型sys转化成状态空间模型newsys:newsys=ss(sys)7.将传递函数或零极点形式转化为状态空间形式:[A,B,C,D]=tf2ss(num,den)[A,B,C,D]=zp2ss(z,p,k)第十页第十一页,共54页。例:num=[1,3,1];den=[12510];sys=tf(num,den);nsys=zpk(sys)结果为:Zero/pole/gain:(s+2.618)(s+0.382)-------------------(s+2)(s^2+5)
第十一页第十二页,共54页。系统模型参数的获取[num,den]=tfdata(sys,’v’)求模型sys的分子系数向量和分母系数向量,’v’为返回的数据向量。[z,p,k]=zpkdata(sys,’v’)求模型sys的零点向量、极点向量和增益,’v’为返回的数据向量。第十二页第十三页,共54页。例:num=[5,3];den=[1,6,11,6];sys=tf(num,den)[z,p,k]=zpkdata(sys,'v')结果为:Transferfunction:5s+3----------------------s^3+6s^2+11s+6
第十三页第十四页,共54页。z=-0.6000p=-3.0000-2.0000-1.0000k=5说明:在第四行指令中,若省略’v’,则结果为,第十四页第十五页,共54页。Transferfunction:5s+3----------------------s^3+6s^2+11s+6z=[-0.6000]p=[3x1double]k=5第十五页第十六页,共54页。MATLAB还提供了绘制系统传递函数零极点分布图的指令:pzmap(sys)说明:sys为已输入到MATLAB中的系统模型;该指令将在s平面上用符号○表示零点,符号×表示极点。例:num=[53];den=[16116];第十六页第十七页,共54页。sys=tf(num,den);[z,p,k]=zpkdata(sys,’v’)pzmap(sys)结果为:z=-0.6000p=-3.0000-2.0000-1.0000k=5第十七页第十八页,共54页。第十八页第十九页,共54页。时间延迟系统建模时间延迟环节的系统传函为:sys=tf(num,den,’inputdelay’,tao)sys=zpk(z,p,k,’inputdelay’,tao)说明:inputdelay为关键词,也可写成outputdelay,对于SISO系统,二者是等价的。
tao为系统的延迟时间τ的数值。第十九页第二十页,共54页。例:系统模型为num=[53];den=[16116];sys=tf(num,den,'inputdelay',0.5)
结果为:Transferfunction:5s+3exp(-0.5*s)*----------------------s^3+6s^2+11s+6第二十页第二十一页,共54页。系统模型的连接1模型串联
sys=series(sys1,sys2)上式可等价写成:sys=sys1*sys2。2模型并联
sys=parallel(sys1,sys2)上式可等价写成:sys=sys1+sys2。
3反馈连接
sys=feedback(sys1,sys2,sign)sign表示反馈连接符号。第二十一页第二十二页,共54页。例:sys1=tf([12],[1110]);sys2=tf(2,[13]);sys=series(sys1,sys2)结果为:Transferfunction:2s+4-----------------------s^3+4s^2+13s+30第二十二页第二十三页,共54页。例:sys1=tf([12],[1110]);sys2=tf(2,[13]);sys=parallel(sys1,sys2)结果为:Transferfunction:3s^2+7s+26-----------------------s^3+4s^2+13s+30第二十三页第二十四页,共54页。例:sys1=tf([12],[1110]);sys2=zpk([],-3,2);sys=feedback(sys1,sys2,-1)结果为:Zero/pole/gain:(s+3)(s+2)---------------------------------(s+2.885)(s^2+1.115s+11.78)第二十四页第二十五页,共54页。二系统模型的响应曲线(一)阶跃响应仿真函数基本格式:step(sys)step(sys,Tfinal)step(sys,T)说明:step(sys)用于绘制LTI系统的单位阶跃响应曲线,可用于连续和离散系统,也可用于SISO和MIMO系统。sys为系统模型,Tfinal为仿真终止时间,T为用户指定的仿真时间向量。第二十五页第二十六页,共54页。多系统阶跃响应调用格式:
step(sys1,sys2,…)step(sys1,’r’,sys2,’y—’,sys3,’gx’)说明:该指令用于在同一幅图中绘制多个系统的单位阶跃响应曲线。还可以定义每个系统响应曲线的颜色、线型和标志。
返回仿真输出的调用格式:
[Y,T]=step(sys)
说明:Y为输出响应,T为仿真时间向量。这种调用格式不能绘制仿真曲线。第二十六页第二十七页,共54页。(二)脉冲响应仿真函数格式:impulse(sys)impulse(sys,Tfinal)impulse(sys,T)impulse(sys1,sys2,…,T)[Y,T]=impulse(sys)说明:impulse指令用来计算LTI系统的单位脉冲响应,调用格式与step()函数完全相同。第二十七页第二十八页,共54页。(三)初始状态响应仿真函数基本格式:initial(sys,X0)限制仿真时间终值格式:initial(sys,X0,Tfinal)指定仿真时间向量格式:initial(sys,X0,T)多系统仿真格式:initial(sys1,sys2,…X0,T)返回数据向量,不绘曲线格式:
[Y,T,X]=initial(sys,X0)说明:initial()指令用于计算零输入条件下,由初试状态X0所引起的响应。
只能用于状态空间模型。第二十八页第二十九页,共54页。指令的调用与step()类似。带有返回输出格式的指令中,除了返回输出响应Y和时间向量T外,还返回系统的状态向量的相应X。例:A=[-0.5572,-0.7814;0.7814,0];B=[10]’;C=[1.6287,3.5609];D=0;sys1=ss(A,B,C,D);X0=[1,2]’;initial(sys1,X0)第二十九页第三十页,共54页。第三十页第三十一页,共54页。三控制系统频域分析频域响应分析方法的基本思想是:把控制系统中的各个变量看成是由许多不同频率的正弦信号叠加而成的信号;各个变量的运动就是系统对各个不同频率的信号的响应总和。第三十一页第三十二页,共54页。(一)连续系统Bode图的绘制基本格式:bode(sys)指定频率范围格式:bode(sys,w)在同一图内,绘制多个模型的bode图格式:
bode(sys1,sys2,…,sysn)返回响应的幅值和相位及对应的w,不绘制bode图格式:
[mag,phase,w]=bode(sys)仅绘制幅频bode图格式:
bodemag(sys)说明:当不指定频率范围时,bode(sys)将根据系统零极点自动确定频率范围。第三十二页第三十三页,共54页。(二)离散系统Bode图的绘制格式为:[mag,phase,w]=dbode(a,b,c,d,Ts)[mag,phase,w]=dbode(a,b,c,d,Ts,iu)[mag,phase,w]=dbode(a,b,c,d,Ts,iu,w)[mag,phase,w]=dbode(num,den,Ts)[mag,phase,w]=dbode(num,den,Ts,w)说明:a,b,c,d为状态方程和输出方程的系数矩阵;Ts是内部采样时间;iu表示第iu个输入;w为用户指定的角频率范围;num、den为脉冲传递函数的分子和分母多项式系数向量。第三十三页第三十四页,共54页。(三)Nyquist图的绘制基本调用格式:nyquist(sys)指定频率范围格式:nyquist(sys,w)在同一图内,绘制多个模型的Nyquist图格式:nyquist(sys1,sys2,…,sysn)在同一图内,绘制多个模型对指定频率范围的Nyquist图格式:nyquist(sys1,sys2,…,sysn,w)不绘图,返回频率响应的实部和虚部以及对应的w的格式:[Re,Im,w]=nyquist(sys)第三十四页第三十五页,共54页。(四)Nichols图的绘制基本格式:nichols(sys)其它格式:nichols(sys,w)nichols(sys1,sys2,…,sysn)nichols(sys1,sys2,…,sysn,w)[mag,phase,w]=nichols(sys)有关说明和bode()函数类似。第三十五页第三十六页,共54页。(五)求系统幅值裕度与相位裕度基本格式:margin(sys)用于绘制Bode图,并在图中标出幅值裕度和相位裕度。[Gm,Pm,Wcg,Wcp]=margin(sys)不绘制Bode图,返回幅值裕度Gm,相位裕度Pm,幅值穿越频率Wcg和相位穿越频率Wcp。[Gm,Pm,Wcg,Wcp]=margin(mag,phase,w)根据幅频向量、相频向量和频率向量求幅值裕度、相位裕度和它们的穿越频率。说明:是Nyquist图对应的幅值裕度,单位不是分贝。第三十六页第三十七页,共54页。例:系统开环传递函数为:绘制当K=5、30时系统的Bode图,并判断系统的稳定性。sys1=zpk([],[0,-10,-2],100);sys2=zpk([],[0,-10,-2],600);figure(1),bode(sys1)title('systembodechartswithk=5'),gridfigure(2),bode(sys2)title('systembodechartswithk=30'),grid第三十七页第三十八页,共54页。例若进一步计算K=5、30时系统的幅值和相位裕度,则程序为:[kg1,r1,wg1,wc1]=margin(sys1)[kg2,r2,wg2,wc2]=margin(sys2)若绘制K=5、30时系统的Nyquist图,则程序为:w=linspace(0.5,5,1000)*pi;figure(1)nyquist(sys1,w);title('systemnyquistchartswithk=5')figure(2)nyquist(sys2,w);title('systemnyquistchartswithk=30')第三十八页第三十九页,共54页。同样可以绘制K=5、30时系统的Nichols图,则程序为:figure(1)nichols(sys1,w);figure(2)nichols(sys2,w);第三十九页第四十页,共54页。四系统分析的图形用户界面(一)ltiview图形工具
MATLAB控制工具箱提供了线性时不变(LTI)系统仿真的图形用户分析界面—LTIViewer,可以更为直观地分析线性离散、连续系统的时域、频域响应。首先,在指令窗口中建立要分析的系统模型;然后,在指令窗口中输入:ltiview即可。
第四十页第四十一页,共54页。例设单位负反馈系统的开环传递函数为:首先,建立MATLAB系统模型:Gk=zpk([-5-40],[0-0.1-20-20],20);sys=feedback(Gk,1,-1);执行以上命令,系统模型sys便存入MATLAB工作空间。第四十一页第四十二页,共54页。在指令窗口输入ltiview,进入LTIViewer可视化仿真环境。进入LTIViewer后,点击菜单FILE,选择import项后,弹出一个装入LTI系统的窗口。显示出系统的阶跃响应图形窗口后,在窗口内点击鼠标右键弹出现场菜单。在LTIViewer窗口下,选择Edit—PlotConfigurations后,弹出图形配置窗口,可以在一个窗口同时显示多个图形。第四十二页第四十三页,共54页。(二)sisotool图形工具首先,在指令窗口中建立要分析的系统模型;然后,在指令窗口中输入:sisotool即可。G—被控对象C—补偿器H—传感器F—滤波器第四十三页第四十四页,共54页。第四十四页第四十五页,共54页。建立MATLAB系统模型:Gk=zpk([-5-40],[0-0.1-20-20],20);sys=feedback(Gk,1,-1);导入SISOTOOL环境中,第四十五页第四十六页,共54页。点击FS,可以改变控制器结构。点击+/-,可以改变反馈极性。点击C或
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论