MATLAB环境中传递函数模型表示与转换
- 格式:doc
- 大小:332.54 KB
- 文档页数:8
姓名:指导老师:成绩:
学院:专业:班级:
实验内容:
年月日其他组员及各自发挥作用:
独立完成实验内容,并进行了验证。
一、实验时间:
2014年9月22日
二、实验地点:
课外
三、实验目的:
掌握在MATLAB环境中传递函数模型表示与转换
四、实验设备与软件
MATLAB数值分析软件
五、实验原理
1、连续系统传递函数的生成
命令格式:sys=tf(num,den);
2、连续系统zpk函数的生成
命令格式:sys=zpk(z,p,k);
3、传递函数模型与zpk传递函数模型间的转换
命令格式:[num,den]=zp2tf(z,p,k);
[z,p,k]=tf2zp(num,den);
4、线性系统传递函数的零点和极点
命令格式:pole/zero(sys);
5、连续传递函数的静态增益
6、部分分式分解和还原
命令格式:[z,p,k]=residue(num,den);
[num,den]=residue(z,p,k);
六、实验内容、方法、过程与分析
1、实验内容:自定义一个4阶稳定的连续线性系统传递函数,要求分子次数为3,编制一段程序.m将其转换成零极点形式,求零极点和静态增益,并实现部分分式分解并与手算比较。
2、实验方法:根据实验内容,利用MATLAB编程实现求解传递函数的多项式形式和零极点形式的转换,求解零极点和静态增益
3、实验过程与分析
(1)连续系统传递函数的生成命令格式:sys=tf(num,den);
(2)连续系统zpk函数的生成
命令格式:sys=zpk(z,p,k);
(3)传递函数模型与zpk传递函数模型间的转换命令格式:[num,den]=zp2tf(z,p,k);
[z,p,k]=tf2zp(num,den);
~
(4)线性系统传递函数的零点和极点,连续传递函数的静态增益
命令格式:pole/zero(sys);
(5)部分分式分解和还原
命令格式:[z,p,k]=residue(num,den);
[num,den]=residue(z,p,k);
七、实验结论与总结
结论:1、连续系统传递函数的生成
命令格式:sys=tf(num,den);
2、连续系统zpk函数的生成
命令格式:sys=zpk(z,p,k);
3、传递函数模型与zpk传递函数模型间的转换
命令格式:[num,den]=zp2tf(z,p,k);
[z,p,k]=tf2zp(num,den);
4、线性系统传递函数的零点和极点
命令格式:pole/zero(sys);
5、连续传递函数的静态增益
6、部分分式分解和还原
命令格式:[z,p,k]=residue(num,den);
[num,den]=residue(z,p,k);
总结:初步掌握MATLAB的基本语句用法,但是还需要进一步学习MATLAB 的语法,算法。
附录: .m文件
num1=[1 6 11 6];
den1=[1 15 74 120 0];
sys=tf(num1,den1);
z1=[-1 -2 -3];
p1=[0 -4 -5 -6];
k1=1/20;
srs=zpk(z1,p1,k1);
z2=[-1 -2 -3]';
p2=[0 -4 -5 -6]';
k2=1/20;
spk=zpk(z2,p2,k2);
[num2,den2]=zp2tf(z2,p2,k2);
stf=tf(num2,den2);
tishi1='零极点传递函数形式是:'
spk
tishi2='多项式点传递函数形式是:'
stf
num3=[1 6 11 6];
den3=[1 15 74 120 0];
stf2=tf(num3,den3);
[z3,p3,k3]=tf2zp(num3,den3);
spk2=zpk(z3,p3,k3);
stf=tf(num3,den3);
tishi1='零极点传递函数形式是:' spk2
tishi2='多项式点传递函数形式是:' stf2
[r,p,k]=residue(num3,den3); [num,den]=residue(r,p,k);。