自动控制实验1

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一 利用MATLAB 实现拉氏正反变换

实验目的

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)s

s s s s F 342

)(2

3+++= (2)3)1(2)(+-=s s s s F 代码: (1)

% 实验1.1.1

clc;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))3sin()(t e t f t

-=的Laplace 变换; 代码:

% 实验1.2.1

f=sym('exp(-t)*sin(3*t)'); F=laplace(f); disp('F='); pretty(F); 运行结果:

(2)1

)(22

+=s s s F 的Laplace 反变换。

代码: 运行结果:

%()()sin()f t t t δ=-

实验二 一阶系统的动态性能分析

实验目的

1、掌握利用step 函数求系统单位阶跃响应的方法;

2、分析一阶系统的时间常数T 对动态性能的影响;

3、分析一阶系统的反馈系数对系统输出响应的影响。

4、加深对课程理论知识的理解。

实验内容

1、建立典型一阶系统的传递函数1

1

)()()(+==

Ts s R s C s G ,并令时间常数T 分别取0.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; 运行结果:

系统单位阶跃响应曲线

时间 (seconds)

分析:

一阶系统的时间常数t 值越小,系统的工作频率范围越大,响应速度越快。

2、建立图1所示系统的传递函数,并求当K H =0.1,0.2,1,2时该系统的单位阶跃响应。分析:反馈系数K H 对系统响应有何影响(从终值和响应速度两方面来分析)?这是为什么?

图1 某一阶系统的结构图

H

()100

()()100*K C s G s R s s =

=+ 代码: % 实验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))]

相关文档
最新文档