控制系统仿真实验报告

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

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

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

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

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

(3)利用MA TLAB 中的ode45()函数进行求解,比较与(1)中的仿真结果有何区别。非线性仿真

function dH=f(H,u)

k=0.2;

u=0.5;

Qd=0.15;

A=2;

a1=0.20412;

a2=0.21129;

dH=zeros(2,1);

dH(1)=1/A*(k*u+Qd-a1*sqrt(H(1)));

dH(2)=1/A*(a1*sqrt(H(1))-a2*sqrt(H(2)));

% RK4

clc

close

H=[1.4,1.5]';u=0.5; h=1;

TT=[];

XX=[];

for i=1:h:200

k1 =f(H,u);

k2=f(H+h*k1/2,u);

k3=f(H+h*k2/2,u);

k4=f(H+h*k3,u);

H=H+h*(k1+2*k2+2*k3+k4)/6;

TT=[TT i];

XX=[XX H];

end;

hold on

plot(TT,XX(1,:),'--',TT,XX(2,:));

xlabel('time')

ylabel('H')

hold on

% ode45()

function dH=ode(t,H)

k=0.2;

u=0.5;

Qd=0.15;

A=2;

a1=0.20412;

a2=0.21129;

dH=zeros(2,1);

dH(1)=1/A*(k*u+Qd-a1*sqrt(H(1)));

dH(2)=1/A*(a1*sqrt(H(1))-a2*sqrt(H(2)));

command 窗口

[t,H]=ode45('ode',[1 200],[1.5 1.4]);

plot(t,H(:,1),['r','--'],t,H(:,2),['g'])

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

仿真

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

(2)研究仿真步长对稳定性的影响,仿真步长取多大时RK4 算法变得不稳定?(4)阀位增大10%和减小10%,利用MATLAB 中的ode45()函数进行求解阶跃响

应,比较与(1)中的仿真结果有何区别。

function dx=f2(x,u)

Qd=0.15;

a1=0.20412;a2=0.21129;

A=2;k=0.2;

dx=zeros(2,1);

dx(1)=1/A*(k*u-x (1)/(2*sqrt (1.5)/a1)+Qd);

dx(2)=1/A*(x (1)/(2*sqrt (1.5)/a1)-x (2)/(2*sqrt (1.4)/a2));

H=[1.4,1.5]';u=0.5; h=1;

TT=[];

XX=[];

for i=1:h:200

k1 =f2(H,u);

k2=f2(H+h*k1/2,u);

k3=f2(H+h*k2/2,u);

k4=f2(H+h*k3,u);

H=H+h*(k1+2*k2+2*k3+k4)/6;

TT=[TT i];

XX=[XX H];

end;

hold on

plot(TT,XX(1,:),'--',TT,XX(2,:));

xlabel('time')

ylabel('H')

hold on

% ode45()

function dx=ode2(t,x)

Qd=0.15;

u=0.5;

a1=0.20412;a2=0.21129;

A=2;k=0.2;

dx=zeros(2,1);

dx(1)=1/A*(k*u-x (1)/(2*sqrt (1.5)/a1)+Qd);

dx(2)=1/A*(x (1)/(2*sqrt (1.5)/a1)-x (2)/(2*sqrt (1.4)/a2));

command 窗口

[t,H]=ode45('ode2',[1 200],[1.4 1.5]);

plot(t,H(:,1),['r','--'],t,H(:,2),['g'])

曲线分析:曲线给一个初值,变动后,最后趋于稳定。

思考题:

1.仿真步长越短,仿真结果越稳定,越精确。

2.通过改变u来改变阀的开度;线性系统和非线性系统结果一样。

实验总结:通过本次试验,我对MATLAB编程技术的应用有了基本的了解,同时学会了用它解决控制工程问题。

实验二面向结构图的仿真

第一部分线性系统仿真.

1. tend=700;T=10;Qd=0;Kp=1.78;Ti=85;进行仿真实验,绘制响应曲线

clc,clear

tend=700;T=10;Qd=0;

Kp=1.78;Ti=85;A=2;c=0.5;

Ku=0.1/0.5;H2set_percent=80;

alpha12=0.25/sqrt(1.5);

alpha2=0.25/sqrt(1.4);

R12=2*sqrt(1.5)/alpha12;

R2=2*sqrt(1.4)/alpha2;

H1spanLo=0;H1spanHi=2.52;

H2spanLo=0;H2spanHi=2.52;

H1=1.5;H2=1.4;u=0.5;k=2;

Kc=Kp/Ti;bc=Ti;

Kd=1/A;ad=1/(A*R12);

K1=Ku/A;a1=1/(A*R12);

K2=1/(A*R12);a2=1/(A*R2);

uc(1)=0;ud(1)=0;u1(1)=0;u2(1)=0;

相关文档
最新文档