文档介绍:实验5. 控制理论仿真实验
1 控制系统的建模
一、实验目的
;
;
。
二、相关知识
设连续系统的传递函数为:
设离散系统的传递函数为:
则在MATLAB中,都可直接用分子/分母多项式系数构成的两个向量num与den构成的矢量组[num,den]表示系统,即
num=
den =
建立控制系统的传递函数模型(对象)
的函数为tf (),调用格式为:
sys=tf (num,den)
sys=tf (num,den,Ts)
sys=tf(othersys)
sys=tf (num,den)返回的变量sys为连续系统的传递函数模型。
sys=tf (num,den,Ts)返回的变量sys为离散系统的传递函数模型,Ts为采样周期,当Ts=-1或Ts=[]时,系统的采样周期未定义。
sys=tf(othersys)将任意的控制系统对象转换成传递函数模型。
离散系统的传递函数的表达式还有一种表示为的形式(即DSP形式),转换为DSP形式的函数命令为filt(),调用格式为:
sys=filt(num,den)
sys=filt(num,den,Ts)
sys=filt(num,den)函数用来建立一个采样时间未指定的DSP形式传递函数。
sys=filt(num,den,Ts)函数用来建立一个采样时间为Ts的DSP形式传递函数。
设连续系统的零极点增益模型传递函数为:
设离散系统的零极点增益模型传递函数为:
则在MATLAB中,都可直接用向量z,p,k构成的矢量组[z,p,k]表示系统,即
z=
p=
k=
在MATLAB中,用函数zpk()来建立控制系统的零极点增益模型,调用格式为:
sys=zpk(z,p,k)
sys=zpk(z,p,k,Ts)
sys=zpk(othersys)
sys=zpk(z,p,k)返回的变量sys为连续系统的零极点增益模型。
sys=zpk(z,p,k,Ts)返回的变量sys为离散系统的零极点增益模型,Ts含义同前。
sys=zpk(othersys)将任意的控制系统对象转换成零极点增益模型模型。
设连续系统的状态空间模型为:
设离散系统的状态空间模型为:
在MATLAB中,连续与离散系统都可直接用矩阵组[A,B,C,D]表示系统。
在MATLAB中,用函数ss ()来建立系统的状态空间模型,调用格式为:
sys=ss(a,b,c,d)
sys=ss(a,b,c,d,Ts)
sys=ss(othersys)将任意的控制系统对象转换成状态空间模型。
sys=ss(a,b,c,d)返回的变量sys为连续系统的状态空间模型。
sys=ss(a,b,c,d,Ts)返回的变量sys为离散系统的状态空间模型,Ts含义同前。
解决实际问题时,常常需要对自控系统的数学模型进行转换,MATLAB提供了用于转换的函数,如下表所示:
函数名
函数功能
ss2tf
将系统状态空间模型转换为传递函数模型
ss2zp`
将系统状态空间模型转换为零极点增益模型
tf2ss
将系统传递函数模型转换为状态空间模型
tf2zp
将系统传递函数转换为零极点增益模型
zp2ss
将系统零极点增益模型转换为状态空间模型
zp2tf
将系统零极点增益模型转换为传递函数模型
G1(s)
G2(s)
对于上图的两个环节串联,它们的传递函数分别为:
,
则两个环节串联连阶的等效传递函数为
在MATLAB中,实现两个环节传递函数串联连接的运算为:
sys1=tf(num1,den1)
sys2=tf(num2,den2)
sys=sys1*sys2
G1(s)
+
G2(s)
实现两个环节传递函数串联连接的运算为:
sys=sys1+sys2
G1(S)
G2(S)
-
实现反馈环节化简的运算为:
sys=feedback(sys1,sys2,sign)
式中sign为反馈符号,‘+’表示正反馈,‘-’为负反馈。缺省为‘-’。
MATLAB集成有SIMULINK工具箱,为用户提供了用方框图进行系统建模的图形窗口。
在matlab环境下,点击simulink图