计算机仿真第二章.docx

上传人:b****8 文档编号:9942222 上传时间:2023-02-07 格式:DOCX 页数:12 大小:144.71KB
下载 相关 举报
计算机仿真第二章.docx_第1页
第1页 / 共12页
计算机仿真第二章.docx_第2页
第2页 / 共12页
计算机仿真第二章.docx_第3页
第3页 / 共12页
计算机仿真第二章.docx_第4页
第4页 / 共12页
计算机仿真第二章.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

计算机仿真第二章.docx

《计算机仿真第二章.docx》由会员分享,可在线阅读,更多相关《计算机仿真第二章.docx(12页珍藏版)》请在冰豆网上搜索。

计算机仿真第二章.docx

计算机仿真第二章

第2章控制系统的数学模型及其转换

对被控制系统进行计算机仿真,首先应知道对象的数学模型,然后设计合适的控制器,使被控对象的响应达到预期的性能。

2.1线性系统数学模型的描述

1.传递函数

SISO系统一般表示形式:

两边Laplace变换,传递函数为(零初始条件):

传递函数的MATLAB表示方法:

num=[b0b1…bm];den=[1a1a2…an]

即两个系数降幂排列向量。

[例2-1]给定系统的传递函数为

解:

MATLAB语句表示:

>>num=[612610];

>>den=[12311];

>>printsys(num,den)

对离散时间系统,动态模型以差分方程来描述。

采样时刻k的输入信号为u(kT),输出信号为y(kT),T为采样周期,则相应的差分方程为:

两边Z变换,脉冲传递函数为(零初始条件):

脉冲传递函数的MATLAB表示方法:

num=[h0h1…hm];den=[1g1g2…gn]

即两个系数降幂排列向量。

2.零极点增益形式

SISO系统的零极点增益模型:

MATLAB表示方法:

Z=[z1;z2;…;zm];P=[p1;p2;…;pn];K=K

对离散系统,零极点增益模型为:

MATLAB表示:

Z=[z1;z2;…;zn];P=[p1;p2;…;pn];K=K

3.状态空间表达式

描述MIMO系统,是一种内部模型。

线性定常连续系统的状态空间表达式表示为:

式中,矩阵A,B,C,D具有合适的维数。

可简记为:

状态方程可由

来确定。

[例2-5]系统的状态空间表达式为

解:

MATLAB表示:

>>A=[001;-3/2–2–1/2;-30-4]

>>B=[11;-1-1;-1-3]

>>C=[100;010]

>>D=zeros(2,2)

对于离散系统,状态空间表达式表示为

简记为

 

2.2系统数学模型间的相互转换

仿真研究中,不同的控制算法需要不同形式的模型。

1.状态空间表达式到传递函数

调用格式:

[num,den]=ss2tf(A,B,C,D,iu)

iu为输入的代号。

对单变量系统iu=1。

2.状态空间表达式到零极点

调用格式:

[Z,P,K]=ss2zp(A,B,C,D,iu)

iu为输入的代号。

对单变量系统iu=1。

3.传递函数到状态空间表达式

调用格式:

[A,B,C,D]=tf2ss(num,den)

4.传递函数到零极点

调用格式:

[Z,P,K]=tf2zp(num,den)

5.零极点到状态空间表达式

调用格式:

[A,B,C,D]=zp2ss(Z,P,K)

6.零极点到传递函数

调用格式:

[num,den]=zp2tf(Z,P,K)

2.3系统模型的连接

控制系统常常由若干个环节通过串联、并联、反馈的连接方式组合而成。

1.串联连接

当系统

如图2-1连接时

 

图2-1系统的串联连接

这时有

串联后系统总的状态空间表达式为

串联后系统总的传递函数为

调用格式:

[A,B,C,D]=series(A1,B1,C1,D1,A2,B2,C2,D2)

[num,den]=series(num1,den1,num2,den2)

其中,(A1,B1,C1,D1)和(A2,B2,C2,D2)分别为系统1和系统2的状态空间形式的系数矩阵,(A,B,C,D)为串联连接后的整体状态空间形式的系数矩阵。

同样,第二式为传递函数形式。

[例2-14-1]求下列两系统串联后的系统模型

解:

MATLAB语句如下

>>num1=3;den1=[14];

>>num2=[24];den2=[123];

>>[num,den]=series(num1,den1,num2,den2)

2.并联连接

当系统

如图2-2所示连接时有

 

图2-2系统的并联连接

这时并联后系统总的状态空间表达式为

调用格式:

[A,B,C,D]=parallel(A1,B1,C1,D1,A2,B2,C2,D2)

[num,den]=parallel(num1,den1,num2,den2)

解:

MATLAB语句如下

>>num1=3;den1=[14];

>>num2=[24];den2=[123];

>>[num,den]=series(num1,den1,num2,den2)

3.反馈连接

当系统

如图2-3所示连接时有

 

图2-3系统的反馈连接

系统总的传递函数为

反馈连接处理函数feedback()的调用格式:

[A,B,C,D]=feedback(A1,B1,C1,D1,A2,B2,C2,D2,sign)

[num,den]=feedback(num1,den1,num2,den2,sign)

sign=1正反馈,sign=-1负反馈(默认)。

对于单位反馈系统,有专用处理函数:

[A,B,C,D]=cloop(A1,B1,C1,sign)

[num,den]=cloop(num1,den1,sign)

sign=1正反馈,sign=-1负反馈(默认)。

[例2-16]对于如下两系统

求如图2-3所示方式连接时的闭环传递函数。

解:

MATLAB语句如下

>>num1=[251];den1=[123];

>>num2=[510];den2=[110];

>>[num,den]=feedback(num1,den1,num2,den2)

>>printsys(num,den)

2.4典型系统的生成

1.建立二阶系统模型

对于二阶系统模型

利用函数ord()来建立。

调用格式:

[num,den]=ord2(

[A,B,C,D]=ord2(

分别为无阻尼自然频率和阻尼系数。

[例2-19]已知

,求二阶系统的传递函数。

解:

MATLAB语句如下

>>[num,den]=ord2(2.4,0.4);

>>printsys(num,den)

2.具有纯时延系统的padè近似

两点:

(a)对具有时延T的系统产生n阶Padè逼近:

函数调用格式:

[num,den]=pade(T,n)

(b)pade(T,n)也是绘图命令:

对具有时延T的系统绘制n阶Padè逼近的阶跃响应和频域相位特性并与原时延系统比较。

[例2-20]计算一个具有0.1s时延系统的n阶Padè逼近,并比较其阶跃响应和频域相位特性。

解:

MATLAB语句如下

>>[num,den]=pade(0.1,3)%取n=3

>>printsys(num,den)

>>pade(0.1,3)%绘图

3.建立n阶随机稳定的连续系统模型

[A,B,C,D]=rmodel(n)%建立一个单变量n阶稳定连续系统模型

[A,B,C,D]=rmodel(n,m,r)%建立一个r输入m输出的随机n阶稳定模型

[num,den]=rmodel(n)%建立一个单变量系统的随机n阶稳定模型

4.建立n阶随机稳定的离散系统模型

[G,H,C,D]=drmodel(n)%建立一个单变量n阶稳定离散系统模型

[G,H,C,D]=drmodel(n,m,r)%建立一个r输入m输出的随机n阶稳定模型

[num,den]=drmodel(n)%建立一个单变量系统的随机n阶稳定模型

2.5系统的离散化和连续化

1.连续系统的离散化

已知连续系统的状态空间表达式

在采样周期T下离散化后的状态空间表达式为

其中,

在MATLAB中,若已知连续系统的状态模型

和采样时间T,可利用如下函数求得系统离散化后的系数矩阵G和H。

[G,H]=c2d(A,B,T)%状态空间形式

另外,功能更强的函数:

[G,H,C,D]=c2dm(A,B,C,D,T,’选项’)%状态空间形式

[numd,dend]=c2dm(num,den,T,’’选项’)%传递函数形式

[例2-22]对连续系统

在采样周期T=0.1时进行离散化。

解:

用4种方法离散化

>>K=6;Z=[-3];P=[-1;-2;-5];T=0.1;

>>[A,B,C,D]=zp2ss(Z,P,K)

>>[G1,H1]=c2d(A,B,T)

>>[G2,H2,C2,D2]=c2dm(A,B,C,D,T,’zoh’)

>>[G3,H3,C3,D3]=c2dm(A,B,C,D,T,’foh’)

>>[G4,H4,C4,D4]=c2dm(A,B,C,D,T,’tustin’)

2.离散函数的连续化

调用格式:

[A,B]=d2c(G,H,T)

[A,B,C,D]=d2cm(G,H,C,D,T,’选项’)%’选项’同前

3.离散时间系统重采样

调用格式:

sys1=d2d(sys,T)

在新的采样周期T下,构成新的离散时间系统sys1。

上面指令等价于:

sys1=c2d(d2c(sys,T))

[例2-23]离散时间系统在采样周期T=0.1s时为

将以上系统在采样周期T=0.05s时进行重新采样。

解:

MATLAB语句

>>K=1;Z=[0.7];P=[0.5];T=0.1;

>>sys=zpk(Z,P,K,T)%显示零极点形式

>>sys1=d2d(sys,0.05)

2.6系统的特征值

1.求系统的阻尼系数和固有频率

调用格式:

[wn,zeta]=damp(A)

wn—自然频率;zeta—阻尼系数;

A—传递函数特征多项式系数(行向量)。

[例2-24]已知连续系统

求系统自然频率和阻尼系数。

解:

MATLAB语句

>>num=[251];den=[123];

>>[wn,zeta]=damp(den)

2.求系统的增益

调用格式:

K=dcgain(num,den)

对SISO系统,返回值K是标量。

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1