龙格库塔法

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

北京航空航天大学自动控制原理实验报告

目录

实验四控制系统数字仿真 (2)

一、实验目的 (2)

二、实验方法 (2)

1、四阶龙格-库塔法 (2)

2、控制系统数字仿真 (3)

三、实验内容 (3)

四、实验步骤 (4)

1、确定K值 (4)

2、仿真过程 (4)

3、用Simulink工具箱进行仿真 (7)

五、总结与分析 (9)

实验四 控制系统数字仿真

一、 实验目的

通过实验掌握四阶龙格库塔算法,并进行数字系统仿真实验,观察分析系统参数变换对实验结果及系统性能的影响。

二、 实验方法 1、四阶龙格-库塔法

若一阶微分方程如下:{ẏ(t )=f(t,y(t))

y (t )=y 0 则在t n+1(t n+1>t 0)处,

y(t n+1)的近似值为:

y n+1

=y n +h

6

(k 1+2k 2+2k 3+k 4)

式中:h=t n+1−t n k 1= f(t n ,y n )

k 2= f(t n +1

2h,y n +1

2hk 2)

k 4= f(t n +12

h,y n +12

hk 1) k 3= f((t n +1

2

h,y n +1

2

hk 3)

n=0,1,2,3......

如果微分方程是如下形式的向量微分方程:{

X (t )=F(t,x (t ),u(t))

X (t )=X 0 其中,X (t )为m 维向量,t,u(t)均为标量,则在t n+1处(t n+1>t n ), X (t )的近似值为:

X n+1

=X n +h

6

(K 1+2K 2+2K 3+K 4)

式中:h=t n+1−t n K 1= F(t n ,X n ,u(t n ))

K 2= F(t n +1

2h,X n +1

2hK 1,u(t n ))

K 4= F(t n +12

h,X n +12

hK 2,u(t n )) K 3= F((t n +1

2

h,X +1

2

hK 3,u(t n ))

n=0,1,2,3,……

2、控制系统数字仿真

设系统的闭环传递函数为:φ(s )=

y(s)u(s)=c 1s n+1+c 2s n+2+⋯+c n+1+c n

s n +as n−1+⋯+a n−1+a n

引入中间变量V(s)则上式可化为:y(s)u(s)

=

y(s)v(s)

×

v(s)u(s)

v(s)u(s)

=

1

s n +as n−1+⋯+a

n−1s+a n

y(s)v(s)

=c 1s n+1+c 2s n+2+⋯+

c n+1s +c n

经过运算、整理可得如下向量形式:

{

ẋ(t )=AX (t )+bu(t)

y (t )=cX(t)x (0)=0

所以,可得F(t,X (t ),u (t ))=AX (t )+bu(t)

三、实验内容

已知系统结构如图1所示:

图1 系统结构图

若输入为单位阶跃函数,计算当超调量分别为非作5%,25%和50%时K的取值,(用主导极点方法估算),并根据确定的K值在计算机上进行数字仿真。

四、实验步骤

1、确定K值

用主导极点法估算K值,将三阶系统近似为二阶系统处理,已知二阶系统超调量σ%与阻尼比ζ的关系如下:

σ%=e−πζ/√1−ζ2×100%

故由此可求得超调量σ%与阻尼比ζ的对应值,列表如下:

由二阶系统计算公式可设主导极点S1,2=−ζωn±j√1−ζ2ωn,将主导极点S1,2代入高阶系统特征方程D(s)=S3+10S2+25S+k= 0中,再由幅值条件和相角条件可解得对应极点和K值,列表如下:

2、仿真过程

用Matlab编写龙格库塔程序,将计算得到的K值带入程序,得到超调量,同时将阶跃响应曲线输出。

程序如下:(替换K值为上述计算值即可)

A=[0 1 0;0 0 1;-K -25 -10];

b=[0 0 1];

c=[K 0 0];

X=zeros(3,1);

t=0:0.01:10;

n=length(t);

h=0.01;

for i=1:n

K1=A*X+b;

K2=A*(X+(h/2)*K1)+b;

K3=A*(X+(h/2)*K2)+b;

K4=A*(X+h*K3)+b;

X=X+(h/6)*(K1+2*K2+2*K3+K4);

y(i)=c*X;

end

plot(y);

s=1001;while y(s)>0.95&y(s)<1.05;s=s-1;end;

t=(s-1)*0.005;

max(y)-1

仿真波形如下:(依次为K=31.1、K=59.5、K=103)

龙格库塔仿真结果如下:

3、用Simulink工具箱进行仿真

将龙格库塔仿真波形与Simulink仿真波形进行比较,验证龙格库塔程序的正确性。

Simulink仿真模型如图:

相关文档
最新文档