控制系统仿真实验一报告.docx

上传人:b****5 文档编号:4917914 上传时间:2022-12-11 格式:DOCX 页数:11 大小:87.66KB
下载 相关 举报
控制系统仿真实验一报告.docx_第1页
第1页 / 共11页
控制系统仿真实验一报告.docx_第2页
第2页 / 共11页
控制系统仿真实验一报告.docx_第3页
第3页 / 共11页
控制系统仿真实验一报告.docx_第4页
第4页 / 共11页
控制系统仿真实验一报告.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

控制系统仿真实验一报告.docx

《控制系统仿真实验一报告.docx》由会员分享,可在线阅读,更多相关《控制系统仿真实验一报告.docx(11页珍藏版)》请在冰豆网上搜索。

控制系统仿真实验一报告.docx

控制系统仿真实验一报告

实验一经典的连续系统仿真建模方法

一实验目的

1.了解和掌握利用仿真技术对控制系统进行分析的原理和步骤。

2.掌握机理分析建模方法。

3.深入理解一阶常微分方程组数值积分解法的原理和程序结构,学习用Matlab编写

数值积分法仿真程序。

4.掌握和理解四阶Runge-Kutta法,加深理解仿真步长与算法稳定性的关系。

二实验内容

1.编写四阶Runge_Kutta公式的计算程序,对非线性模型(3)式进行仿真。

(1)将阀位u增大10%和减小10%,观察响应曲线的形状;

u=0.45时的图像:

u=0.55

开大或关小阀位之后,稳态值会相应的从原液位上升或下降,这是符合实际的。

(2)研究仿真步长对稳定性的影响,仿真步长取多大时RK4算法变得不稳定?

(1)可知,当步长为40时,仿真结果是稳定的

当步长为80时的图像

h(1,1)的数值稳定,但是并不是实际求得的稳态值。

h(1,2)的值显然发散。

进一步取小步长,取hstep=42时,图像出现偏差,但是稳态值不变

Hstep=65时,图像偏差明显

而hsetp=65.7时,图像就发散了

(3)利用MATLAB中的ode45()函数进行求解,比较与

(1)中的仿真结果有何区别。

Ode45调用的函数:

function[dh]=daoshu(t,x)

u

(1)=0.4;%此处可以修改阀位

dh=zeros(2,1);

u

(2)=0.15;

A=2;

ku=0.1/0.5;

alpha12=0.25/sqrt(1.5);

alpha2=0.25/sqrt(1.4);

dh(1,1)=(ku*(u

(1))+u

(2)-alpha12*sqrt(x(1,1)))/A;

dh(2,1)=(alpha12*sqrt(x(1,1))-alpha2*sqrt(x(2,1)))/A;

end

在主程序中添加ode45的算法:

[T,Y]=ode45('daoshu',[0,1000],[1.5,1.4]);

figure

(1)

plot(T,Y)

holdon

plot([0:

hStep:

nCounter*hStep]',Hlevel)

grid

将ode45与编写的龙格库塔算法画到同一个坐标系中(点表示ode45):

可以发现,ode45更快达到稳定值,实际上,在缩小了编写算法中的步长后,两种算法的曲线基本重合,说明ode45的精度很高:

2.编写四阶Runge_Kutta公式的计算程序,对线性状态方程(18)式进行

仿真

(1)将阀位增大10%和减小10%,观察响应曲线的形状;

增大10%,令u

(1)=0.05

令u

(1)=-0.05

(2)研究仿真步长对稳定性的影响,仿真步长取多大时RK4算法变得不稳定?

方法同上,大约在hstep=61时就不稳定了

(3)阀位增大10%和减小10%,利用MATLAB中的ode45()函数进行求解阶跃响

减小10%(实线为编写算法,点为龙格库塔法):

增大10%:

程序实现:

调用微分函数:

function[dh]=dx(t,x)

%DX被ode45调用的微分方程函数

u=zeros(2,1);

u

(1)=0.05;%此处可以修改阀位

u

(2)=0;

A=2;

ku=0.1/0.5;

alpha12=0.25/sqrt(1.5);

alpha2=0.25/sqrt(1.4);

R12=2*sqrt(1.5)/alpha12;

R2=2*sqrt(1.4)/alpha2;

AMTRIX=[-1/(A*R12)0;1/(A*R12)-1/(A*R2)];

BMATRIX=[ku/A1/A;00];

dh=AMTRIX*x+BMATRIX*u;

end

主程序中添加:

[T,Y]=ode45('dx',[0,250],[0,0]);

Y(:

1)=Y(:

1)+1.5

Y(:

2)=Y(:

2)+1.4

figure(3)

plot(T,Y,'.')

holdon

plot([0:

hStep:

nCounter*hStep]',Hlevel)

grid

三实验报告

实验完成后,要写出实验报告,内容包括:

1.实验步骤及说明;

2.实验所用的仿真程序清单,以及程序结构的简单说明;

3.实验结果曲线及分析,稳态值是多少;

四思考题

1.讨论仿真步长对稳定性和仿真精度的影响。

一般来说,仿真步长越长,系统越倾向于不稳定,仿真步长越短,系统越稳定,但是需要的仿真时间越长。

2.你是怎样实现阀位增大和减小10%的?

对于非线性模型和线性模型方法一样吗?

线性模型与非线性模型实际改变方式不一样。

线性模型中,由于采用的是增量化的方程,所以在修改时只需要修改增量,即0.05或-0.05。

非线性模型中,采用的绝对量的方程,所以在修改时应该修改绝对量,即改为0.45或0.55。

五实验总结

通过本次实验,熟悉了对matlab软件的使用,加深了对微分方程数值积分解法的理解,并通过编写程序进一步加深认识。

通过对系统微分方程的列写,加深了对控制系统的认识,同时对非线性系统的线性化有了更深的了解(增量化方程)。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 军事

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1