我是靠谱客的博主 诚心烤鸡,最近开发中收集的这篇文章主要介绍matlab怎么仿真z传递函数,控制系统Matlab仿真 (传递函数).doc,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

控制系统Matlab仿真 (传递函数)

控制系统仿真

[教学目的]

掌握数字仿真基本原理

控制系统的数学模型建立

掌握控制系统分析

[教学内容]

一、控制系统的数学模型

sys=tf(num,den)???? %多项式模型,num为分子多项式的系数向量,den为分母多项式的系%数向量,函数tf()创建一个TF模型对象。

sys=zpk(z,p,k)????? %z为系统的零点向量,p为系统的极点向量,k为增益值,函数zpk()创建一个ZPK模型对象。

(一)控制系统的参数模型

1、TF模型

传递函数

num=[bm bm-1 bm-2…b1 b0]

den=[am am-1 am-2…a1 a0]

sys=tf(num,den)

【例1】系统的传递函数为 。

>>num=[0 1 12 44 48];

>>den=[1 16 86 176 105];

>>sys=tf(num,den);

>>sys

Transfer function:

???? s^3 + 12 s^2 + 44 s + 48

-------------------------------------

s^4 + 16 s^3 + 86 s^2 + 176 s + 105

>>get(sys)

>>set(sys)

>>set(sys,'num',[2 1 2])

>> sys

?Transfer function:

?????????? 2 s^2 + s + 2

-------------------------------------

s^4 + 16 s^3 + 86 s^2 + 176 s + 105

【例2】系统的传递函数为 。

>>num=conv([20],[1 1]);

>>num

num =

??? 20??? 20

>>den=conv([1 0 0],conv([1 2],[1 6 10]));

>>sys=tf(num,den)

Transfer function:

????????? 20 s + 20

-------------------------------

s^5 + 8 s^4 + 22 s^3 + 20 s^2

【例3】系统的开环传递函数为 ,写出单位负反馈时闭环传递函数的TF模型。

>>numo=conv([5],[1 1]);

>>deno=conv([1 0 0],[1 3]);

>>syso=tf(numo,deno);

>>sysc=feedback(syso,1)

Transfer function:

?????? 5 s + 5

----------------------

s^3 + 3 s^2 + 5 s + 5

【例4】反馈系统的结构图为:

R(s)

C(s)

+

-?

?

?

?

?

?

?

?

?

写出闭环传递函数的TF模型。

>>num1=[10]; den1=[1 1 0]; sys1=tf(num1,den1);

>>num2=[0.2 1]; den2=[0.01 1]; sys2=tf(num2,den2);

>>sysc=feedback(sys1,sys2)

Transfer function:

?????? ??0.1 s + 10

-------------------------------

0.01s^3 + 1.01 s^2 + 3 s + 10

?

2、ZPK模型

z=[z1 z2…zm-1 zm];

p=[p1 p2…pn-1 pn];

k=k0

sys=zpk(z,p,k)

【例5】系统的传递函数为 ,写出其ZPK模型。

>>z=[-4];

>>p=[-1 -2 -3];

>>k=5

>>sys=zpk(z,p,k)

Zero/pole/gain:

?????? ??5 (s + 4)

-----------------------------

( s + 1 )( s + 2 )( s + 3 )

?

3、TF模型与ZPK模型之间的转换

格式:

[z,p,k]=tf2zp(num,den)???? %TF模型→ZPK模型

[num,den]=zp2tf(z,p,k)???? %ZPK模型→TF模型

【例6】已知系统的TF模型,求ZPK模型。

>> num=[0 1 12 44 48];

>> den=[1 16 86 176 105];

>> sys=tf(num,den)

?Transfer function:

???? s^3 + 12 s^2 + 44 s + 48

-----------------------------------

s^4 + 16 s^3 + 86 s^2 + 176 s + 105

>> [z,p,k]=tf2zp(num,den)

z =

?

最后

以上就是诚心烤鸡为你收集整理的matlab怎么仿真z传递函数,控制系统Matlab仿真 (传递函数).doc的全部内容,希望文章能够帮你解决matlab怎么仿真z传递函数,控制系统Matlab仿真 (传递函数).doc所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(40)

评论列表共有 0 条评论

立即
投稿
返回
顶部