MATLAB在控制系统仿真中的应用
从本章开始,正式进入到有关MATLAB在控制系统仿真的领域中去。我 们知道,对控制系统进行仿真,首先要建立系统的数学模型,这是计算机仿真 的基础。我们下面先介绍控制系统数学模型的描述方法。
第一节控制状态方程:
只要将A, B, C, D几个矩阵输入进去即可。
对于离散系统来说,也与上面类似。
MATLAB还提供了由系统状态方程转换为系统零极点模型及传递函数模型 的函数。 一
[num , den]=ss2tf(A ,B ,C ,D , iu ) %iu—表示输入的序号(对多输入系统)
[z, p ,k]=ss2zp(A ,B ,C ,D , iu ) %[z ,p ,k]— 表示对第iu个输入信号的传递
函数的零极点。
[A , B ,C ,D]= tf2ss (num , den)
[A , B ,C ,D]=zp2ss(z ,p ,k)
四. 在MATLAB控制系统工具箱中的LTI对象:
为了避免对一个系统采用多个分离变量进行描述,新版本的控制系统工具 箱,将LTI系统的各种描述封装成一个对象,即用一个变量来描述。
在控制系统工具箱中,有以上讲述的三种对象,即ss对象,tf对象和zpk 对象。每种系统模型的生成和模型间的转换均可以通过一个函数来实现。下面 介绍这些函数:
dss()函数:生成系统的状态空间模型。
格式: sys= dss (a ,b ,c ,d ,e )
该调用生成连续系统的状态空间模型:
[ EX(t ) = Ax(t) + Bu (t)
] y (t) = Cx (t) + Du (t)
E为非奇异阵(E阵奇异,为奇异系统)。
sys = dss (a ,b , c, d ,e ,Ts)生成离散系统的状态空间模型。
Ex(n +1) = Ax(n) + Bu (n)
、 y (n) = Cx (n) + Dx(n)
Ts为采样周期
filt ()函数:生成DSP (数字信号处理)形式的离散传递函数: 格式:sys=filt(num ,den) 生成离散传递函数模型
sys=filt(num ,den , Ts) 定义模型的采样周期
注:DSP (数字信号处理)形式的离散传递函数如下面的形式:
1 + z T
1 + 2z t + 3z -2
ss ()函数:生成状态空间模型,或者将传递函数及零极点模型转换成状态 空间模型。
格式:1) sys=ss(a,b,c,d)-—生成连续系统的状态空间模型。形式为:
x = Ax + Bu
\ y =Cx + Du
sys=ss(a,b,c,d,Ts) 生成离散状态空间模型
'x(n+1)=Ax(n)+Bu(n)
\ y(n)=Cx(n)+Du(n)
sys_ss=ss(sys) 将任意的LTI对象sys转换成状态空间模型。
tf ()函数:生成传递函数模型,或将零极点模型及状态空间模型转换成
传递函数模型。
格式为:sys=tf(num,den) 生成连续时间系统传函模型:
G( )= b 1sm + b2smT —F bn
a1sn + a2sn-1 — + a
sys=tf(num ,den, Ts) 生成离散时间系统传函。
tfsys二tf(sys) 将任意的LTI对象转换成传递函数模型。
zpk()函数:生成零极点模型或者将其他模型转化成零极点模型。
格式:sys=zpk(z ,p ,k) 连续系统的零极点增益模型。
sys=zpk(z ,p ,k,Ts)---离散时间系统的零极点增益模型。
zsys=zpk(sys) 将任意LTI对象转换成零极点增益模型。
:
由于复杂的结构图建模可以用SIMUKINK。在这里我们仅介绍简单的结构图 描述,也可称为系统建模。
典型连接:
串联连接:
子系统1:
u 2 =七
x =A x +B u
i 1111
y = c x +D u
1 11 11
子系统2: x =A x +B u
,y = C x +D u
串联后系统模型为:
x
x1
x
1- 2」
A
1
B C
1
x
1 +
x
2」
B
1
B D
1
y2 = Dy
x
1
x
1- 2」
+D2Diui
并联连接:
并联后系统模型:
x
1
=
-A
1
0
-x -
1
+
B
1
u
x
0
A
x
B
1
2」
1—
2」
2
2
x
1
x
2」
+ (D1 + D2 )u
y
y
3
控制系统仿真的应用 来自淘豆网m.daumloan.com转载请标明出处.