内容发布更新时间 : 2024/11/16 13:56:27星期一 下面是文章的全部内容请认真阅读。
实验一 系统的数学模型
一、实验目的和任务 1、 学会使用MATLAB的命令; 2、 掌握MATLAB有关传递函数求取及其零、极点计算的函数。 3、 掌握用MATLAB 求取系统的数学模型 二、实验仪器、设备及材料 1、 计算机 2、 MATLAB软件 三、实验原理
1、 MATLAB软件的使用
2、 使用MATLAB软件在计算机上求取系统的传递函数 四、实验报告要求
1、 将各实验内容的要求写入实验报告。 2、 写出要求的实验程序。 3、 记录各命令运行后的结果 五、实验内容
例1-3、设置传递函数G(s)?6(s?5),时间延迟常数τ?4 22(s?3s?1)方式1:set(G,'ioDelay',4) %为系统的ioDelay属性设定值
G %显示传递函数
解:该传递函数模型可以通过下面的语句输入到MATLAB工作空间为: >> num=6*[1,5];
den=conv([1,3,1],[1,3,1]); G=tf(num,den); set(G,'ioDelay',4) G
运行结果为: Transfer function:
6 s + 30
exp(-4*s) * ------------------------------ s^4 + 6 s^3 + 11 s^2 + 6 s + 1
例1-4、已知传递函数G(s)?6(s?5),提取系统的分子和分母多项式(实验)
(s2?3s?1)2解:提取系统的分子和分母多项式程序为:
>> num=6*[1,5];
den=conv([1,3,1],[1,3,1]); G=tf(num,den)
[num den]=tfdata(G,'v') 运行结果为: Transfer function: 6 s + 30
------------------------------ s^4 + 6 s^3 + 11 s^2 + 6 s + 1 num =
0 0 0 6 30 den =
1 6 11 6 1
例1-5例1-5 某系统的零极点模型为:
(s?5)2 G(s)?6
(s?1)(s?2)(s?2?2j)(s?2?2j)方法2:利用算子(实验)
>>s=zpk('s')
G=6*(s+5)^2/((s+1)*(s+2)*(s+2+2)*(s+2-2)) 运行结果为: Zero/pole/gain: 6 (s+5)^2
------------------- s (s+1) (s+2) (s+4)
s2?4s?11例1-7已知系统传递函数G?2,求零极点及增益,并绘制系统
(s?6s?3)(s2?2s)零极点分布图。(实验)
(1)零极点及增益:
〉〉num=[1,4,11];
den=conv([1,6,3],[1,2,0]); G=tf(num,den)
[z,p,k]=zpkdata(G,'V')
运行结果为:
Transfer function:
s^2 + 4 s + 11
-------------------------- s^4 + 8 s^3 + 15 s^2 + 6 s z =
-2.0000 + 2.6458i -2.0000 - 2.6458i p =
0 -5.4495 -2.0000 -0.5505 k = 1
(2)系统零极点分布图:
〉〉num=[1,4,11];
den=conv([1,6,3],[1,2,0]); G=tf(num,den) pzmap(G)
Transfer function: s^2 + 4 s + 11 --------------------------
s^4 + 8 s^3 + 15 s^2 + 6 s