实验目的
1、 掌握利用MATLAB实现部分分式展开的函数用法; 2、 掌握利用MATLAB计算拉氏正反变换的函数用法。
实验内容和结果
sym2num.m文件:
fuction num = sym2num(sym) num=0;
for i=1:length(sym) num(i)=sym(i); end end
partfrac.m文件:
function [F,r,p,k] = partfrac(F,s) [N,D]=numden(F);
num=sym2num(sym2poly(N)); den=sym2num(sym2poly(D)); [r,p,k]=residue(num,den); [n,m]=hist(p,unique(p)); F=0; ind=0;
for i=1:length(m) for j=1:n(i) c=r(ind+j);
F=F+(c/((s-m(i))^j)); end
ind=ind+n(i); end
if ~isempty(k) F=F+k; end end
1、用部分分式展开法求F(s)的Laplace反变换: (1)F(s)代码: (1)
% 实验1.1.1
s2s2F(s) (2) 332s(s1)s4s3sclc;clear;close all;
format rat;%将分数以近似的小整数之比的形式显示 syms s;
F=(s+2)/(s^3+4*s^2+3*s); [F,r,p,k]=partfrac(F,s);
disp('F='); % disp(F); pretty(F); f=ilaplace(F); disp('f='); disp(f); 运行结果:
(2)
% 实验1.1.2
clc;clear;close all;
format rat;%将分数以近似的小整数之比的形式显示 syms s;
F=(s-2)/(s*((s+1)^3));
% F=(s+2)/(s*((s+1)^2)*(s+3)); % F=(s+2)/(s^3+4*s^2+3*s); [F,r,p,k]=partfrac(F,s);
disp('F='); % disp(F); pretty(F); f=ilaplace(F); disp('f='); disp(f); 运行结果:
2、分别利用MATLAB中的laplace和ilaplace函数求: (1)f(t)esin(3t)的Laplace变换; 代码:
% 实验1.2.1
f=sym('exp(-t)*sin(3*t)'); F=laplace(f); disp('F='); pretty(F); 运行结果:
t
s2(2)F(s)2的Laplace反变换。
s1代码: 运行结果:
%f(t)(t)sin(t)
实验二 一阶系统的动态性能分析
实验目的
1、掌握利用step函数求系统单位阶跃响应的方法; 2、分析一阶系统的时间常数T对动态性能的影响; 3、分析一阶系统的反馈系数对系统输出响应的影响。 4、加深对课程理论知识的理解。
实验内容
1、建立典型一阶系统的传递函数G(s)C(s)1,并令时间常数T分别取R(s)Ts10.5、1、2,绘制其单位阶跃响应曲线。分析:T值的大小对一阶系统的动态性能有何影响? 代码: % 实验2.1
clc;clear;close all; T=[0.5,1,2]; num=1; hold on; for i=1:3
den=[T(i),1]; step(num,den); end
title('系统单位阶跃响应曲线'); xlabel('时间');ylabel('幅度');
legend(['T=',num2str(T(1))],['T=',num2str(T(2))],['T=',num2str(T(3))]); grid on; 运行结果:
10.90.80.70.6系统单位阶跃响应曲线T=0.5T=1T=2 幅度0.50.40.30.20.10 024681012141618时间 (seconds)
分析:
一阶系统的时间常数t值越小,系统的工作频率范围越大,响应速度越快。
2、建立图1所示系统的传递函数,并求当KH=0.1,0.2,1,2时该系统的单位阶跃响应。分析:反馈系数KH对系统响应有何影响(从终值和响应速度两方面来分析)?这是为什么?
R(s)B(s)E(s)100100ssC(s)KHH 图1 某一阶系统的结构图
G(s)C(s)100 R(s)s100*KH代码: % 实验2.2
clc;clear;close all; Kh=[0.1,0.2,1,2]; num=100; hold on; for i=1:4
den=[1,100*Kh(i)]; step(num,den); end
title('系统单位阶跃响应曲线'); xlabel('时间');ylabel('幅度');
legend(['KH=',num2str(Kh(1))],['KH=',num2str(Kh(2))],['KH=',num2str(Kh(3))]
,['KH=',num2str(Kh(4))]); grid on; 运行结果:
系统单位阶跃响应曲线KH=0.1KH=0.2KH=1KH=2109876 幅度543210 00.10.20.30.40.50.60.70.80.9时间 (seconds)
分析:
一阶系统的反馈系数KH越小,其系统输出的响应就越快,最终稳态值也越大。
实验心得
从图可看出,可知一阶系统响应的振幅随时间t增加而增大,当t=∞时趋于最终稳态值,即y(∞)=kA。理论上,在阶跃输入后的任何具体时刻都不能得到系统的最终稳态值,即总是y (t<∞) 实验目的 1.量分析二阶系统的阻尼比和无阻尼频率 n对系统动态性能的影响; 2.分析二阶系统的反馈系数对系统输出响应的影响。 3.加深对课程理论知识的理解。 实验内容 n2分析典型二阶系统的传递函数G(s)2,当阻尼比和无阻尼频率2s2nsnn变化时,对系统的阶跃响应的影响。 (a) 令 n=10不变,分别取=0,0.25,0.5,0.7,1,2,绘制系统单位阶跃响应 曲线;分析:取不同值时,系统响应有何不同? 代码: % 实验3.1 clc;clear;close all; t=0:0.01:5; wn=[10,50,100]; e=[0,0.25,0.5,0.7,1,2]; ind=1; hold on; for i=1:6 num=wn(ind)^2; den=[1,2*e(i)*wn(ind),wn(ind)^2]; step(num,den,t); end title('系统单位阶跃响应曲线(无阻尼频率=10)'); xlabel('时间');ylabel('幅度'); legend(['阻尼比=',num2str(e(1))],['阻尼比=',num2str(e(2))],... ['阻尼比=',num2str(e(3))],['阻尼比=',num2str(e(4))],... ['阻尼比=',num2str(e(5))],['阻尼比=',num2str(e(6))]); grid on; 运行结果: 21.81.61.41.2系统单位阶跃响应曲线(无阻尼频率=10)阻尼比=0阻尼比=0.25阻尼比=0.5阻尼比=0.7阻尼比=1阻尼比=2 幅度10.80.60.40.20 00.511.522.533.544.55时间 (seconds) 分析: 在 n一定的条件下,随着减小,超调量%增大;峰值时间tp减小, 调节时间ts增加,震荡增强。 (b) 令=0.5不变,分别取 n=10,50,100,绘制系统单位阶跃响应曲线;分析: 不变,随着n的变化,系统的调节时间和超调量如何变化? 代码: % 实验3.2 clc;clear;close all; t=0:0.01:1; wn=[10,50,100]; e=[0,0.25,0.5,0.7,1,2]; ind=3; hold on; for i=1:3 num=wn(i)^2; den=[1,2*e(ind)*wn(i),wn(i)^2]; step(num,den,t); end title('系统单位阶跃响应曲线(阻尼比=0.5)'); xlabel('时间');ylabel('幅度'); legend(['无阻尼频率=',num2str(wn(1))],['无阻尼频率=',num2str(wn(2))],... ['无阻尼频率=',num2str(wn(3))]); grid on; 运行结果: 1.41.210.8系统单位阶跃响应曲线(阻尼比=0.5)无阻尼频率=10无阻尼频率=50无阻尼频率=100 幅度0.60.40.20 00.10.20.30.40.50.60.70.80.91时间 (seconds)分析: 在一定的条件下,随着 n增加,超调量%不变;峰值时间tp减小,调节时间 ts减小。 实验心得 在 n一定的条件下,随着减小,超调量%增大;峰值时间tp减小,调节时间ts n增加,超调量%不变;峰值时间tp减小,调节时间ts 增加,震荡增强。 在一定的条件下,随着 减小。 二阶系统的参数是固有频率ωn和阻尼比ξ。二阶系统的阻尼比ξ一定时,ωn越高,系统的工作频率范围越大,响应速度越快;阻尼比ξ的取值与给定的误差范围大小和输入信号的形式有关。为了增大系统的工作频率范围和提高响应速度,工程上一般选取ξ=(0.6~0.8)。 因篇幅问题不能全部显示,请点此查看更多更全内容