计算机控制技术实验3

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

1.1、某系统的开环传递函数为

432

20

G(s)=

83640s s s s

+++ 试编程求系统在单位负反馈下的阶跃响应曲线,并求最大超调量。

Matlab 命令:

clc;clear all ;

num=[20];den=[1 8 36 40 0]; [num,den]=cloop(num,den,-1); s=tf(num,den); step(s,20);

Step Response

Time (sec)

A m p l i t u d e

0.2

0.4

0.6

0.8

1

1.2

1.4

1.2、典型二阶系统

22

2

G()2n

n n

s s s ωξωω=++ 编程求当ωn =6,ζ取0.2、0.4、0.6、0.8、1.0、1.5、2.0时的单位阶跃响应曲线。

Matlab 命令:

clc;clear all ;

wn=6;kesi=[0.2 0.4 0.6 0.8 1.0 1.5 2.0];

hold on ; for n=1:7

num=[wn^2];den=[1 2*kesi(n)*wn wn^2]; s=tf(num,den); step(s,20); end hold off ;

Step Response

Tim e (sec)

A m p l i t u d e

1.3、典型二阶系统传递函数为:

2

2

2

2)(n

n n s s s G ωξωω++= 绘制当ζ=0.7,ωn 取2、4、6、8、10、12时的单位阶跃响应曲线。

Matlab 命令:

clc;clear all ;

wn=[2 4 6 8 10 12];kesi=0.7; hold on ; for n=1:6;

num=[wn(n)^2];den=[1 2*kesi*wn(n) wn(n)^2]; s=tf(num,den); step(s,20); end hold off ;

00.20.40.60.8

1

1.2

1.4

Step R esponse

Tim e (sec)

A m p li t u d e

2、根轨迹分析

根据下面负反馈系统的开环传递函数,绘制系统根轨迹,并分析使系统稳定的K 值范围。

)

2)(1()()(++=

s s s K

s H s G

Matlab 命令:

clc;clear all ;

num=[1];den=conv([1 0],conv([1 1],[1 2])); rlocus(num,den);

[K,poles]=rlocfind(num,den)

Root Locus

Real Axis

I m a g i n a r y A x i s

-6

-5

-4

-3

-2-10

1

2

-4-3

-2-10

1234

• selected_point = • 0.0000 - 1.4142i • K =

• 6.0000 • poles =

• -3.0000

• 0.0000 +1.4142i • 0.0000 - 1.4142i

由此可见根轨迹与虚轴交点处的增益K =6,这说明当K <6时系统稳定,当K >6时,系统不稳定;利用rlocfind( )函数也可找出根轨迹从实轴上的分离点处的增益K =0.38, 这说明当0< K <0.38时,系统为单调衰减稳定,当0.38< K <6时系统为振荡衰减稳定的。

3.1 典型二阶系统传递函数为:

2

2

2

2)(n

n n c s s s G ωξωω++= 绘制当ζ=0.7,ωn 取2、4、6、8、10、12时的伯德图

Matlab 命令:

clc;clear all ; w=logspace(0,1);

wn=[2 4 6 8 10 12];kesi=0.7; hold on ; for n=1:6;

num=[wn(n)^2];den=[1 2*kesi*wn(n) wn(n)^2];

bode(num,den,w); end

hold off;

M a g n i t u d e (d B )

10

10

P h a s e (d e g )

Bode Diagram

Frequency (rad/sec)

3.2 典型二阶系统传递函数为:

2

2

2

2)(n

n n c s s s G ωξωω++= 绘制当ωn =6,ζ取0.2、0.4、0.6、0.8、1.0、1.5、2.0时的伯德图。

Matlab 命令:

clc;clear all ; w=logspace(0,1);

wn=6;kesi=[0.2 0.4 0.6 0.8 1.0 1.5 2.0]; hold on ; for n=1:7

num=[wn^2];den=[1 2*kesi(n)*wn wn^2]; bode(num,den,w); end hold off ;

相关文档
最新文档