好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

系统仿真报告一.docx

11页
  • 卖家[上传人]:ni****g
  • 文档编号:380104002
  • 上传时间:2023-01-21
  • 文档格式:DOCX
  • 文档大小:120.03KB
  • / 11 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 一 实验目的1. 了解和掌握利用仿真技术对控制系统进行分析的原理和步骤2. 掌握机理分析建模方法3. 深入理解一阶常微分方程组数值积分解法的原理和程序结构,学习用 Matlab 编写数值积分法仿真程序4. 掌握和理解四阶 Runge-Kutta 法,加深理解仿真步长与算法稳定性的关系二 实验内容1. 编写四阶 Runge_Kutta 公式的计算程序,对非线性模型(3)式进行仿真1) 将阀位 u 增大 10%和减小 10%,观察响应曲线的形状 ;(2) 研究仿真步长对稳定性的影响,仿真步长取多大时 RK4 算法变得不稳定?(3) 利用 MATLAB 中的ode45()函数进行求解,比较与(1)中的仿真结果有何区别2. 编写四阶 Runge_Kutta 公式的计算程序,对线性状态方程( 18)式进行仿真(1) 将阀位增大 10%和减小 10%,观察响应曲线的形状 ;( 2 ) 研究仿真步长对稳定性的影响,仿真步长取多大时 RK4 算法变得不稳定?(4) 阀位增大10%和减小10%,利用MATLAB中的ode45()函数进行求解阶跃响应,比较与( 1 )中的仿真结果有何区别三 实验代码及结果编写四阶 Runge_Kutta 公式的计算程序,对非线性模型( 3)式进行仿真。

      function dY=f(Y,u) %f 函数k=0.2;Qd=0.15;A=2;a1=0.20412;a2=0.21129;dY=zeros(2,1);dY(1)=1/A*(k*u+Qd-a1*sqrt(Y(1))) dY(2)=1/A*(a1*sqrt(Y(1))-a2*sqrt(Y(2)))%RK4 文件clccloseY=[1.2,1.4]';u=0.45; Y=0.5;TT=[];XX=[];for i=1:Y:100k1=f(Y,u);k2=f(Y+Y*k1/2,u);k3=f(Y+Y*k2/2,u);k4=f(Y+Y*k3,u);Y=Y+Y*(k1+2*k2+2*k3+k4)/6;TT=[TT i];XX=[XX Y]; end; plot(TT,XX,'-. xlabel('x') ylabel( Y) 仿真曲线如下u=0.5稳态值1.341.32H1.28H21.1.41.381.261.241.221.2020406080100120140160180200timeu=0.45H11.651.61.55H21.51.451.41.351.31.250 20 40 60 80 100 120 140 160 180 200timeu=0.552.62.42.221.81.61.4H12040H26080 100 120 140 160 180 200time步长为 60, u=0.5 仿真曲线可见步长越大越不稳定 采用 ode45 算法程序如下function k=0.2;dY=f(Y,u)u=0.5;)4H1Qd=0.15;a1=0.20412;a2=0.21129;dY=zeros(2,1)dY(1)=1/A*(k*U+Qd-a1*sqrt(Y(1)))dY(2)=1/A*(a1*sqrt(Y(1))-a2*sqrt(Y(2)))A=2;[T,Y] = ode45(plot(T,Y(:,1),1.38'f ,[1,200],[1.2,1.4]);%在命令窗口运行以下程序,「Y(:,2)1.361.341.32H 1.3H21.281.261.24 1.221.20 20 40 60 80 100 120 140 160 180 200time仿真曲线与 四阶 Runge_Kutta 公式的计算一致编写四阶 Runge_Kutta 公式的计算程序,对线性状态方程( 18)式进行仿真function dY=f1(Y,u) %f1 函数 k=0.2;Qd=0.00001;A=2;a1=0.20412;a2=0.21129;R1=2*sqrt(1.5)/a1;R2=2*sqrt(1.4)/a2;dY=zeros(2,1); dY(1)=k/A*u+1/A*Qd-1/(A*R1)*Y(1) dY(2)=1/(A*R1)*Y(1)-1/(A*R2)*Y(2)%RK4clccloseY=[0.001,0.001]';u=0.00001;Y=0.1;TT=[];XX=[];for i=1:Y:200k1=f1(Y,u);k2=f1(Y+Y*k1/2,u);k3=f1(Y+Y*k2/2,u);k4=f1(Y+Y*k3,u);Y=Y+Y*(k1+2*k2+2*k3+k4)/6;TT=[TT i];XX=[XX Y];end ;Yold onplot(TT,XX(1,:), '--' ,TT,XX(2,:));xlabel( 'time' )ylabel( 'Y' )gtext( 'Y1' )gtext( 'Y2' )Yold on仿真曲线如下H2H1-4X 100 20 40 60 80 100 120 140 160 180 200timeU=0.00001 Lu增大10%和减小 10%之仿真曲线如下10-4X 10筲9876H2H"H1 \543■0 20 40 60 80 100 120 140 160 180 200timeu=0.000011H543JL.0 20 40 60 80 100 120 140 160 180 200u=0.000009当步长40时time,曲线如下,可见步长越大越不稳定-4X 10H1H20 20 40 60 80 100 120 140 160 180time采用 ode45 函数求解程序如下 function dY=f1(Y,u)k=0.2;Qd=0.00001;A=2;a1=0.20412;a2=0.21129;R1=2*sqrt(1.5『a1;R2=2*sqrt(1.4/a2; dY=zeros(2,1) dY(1)=k/A*u+- dY(2)=1/(A*R1/A*Qd-1/(A*R1)*Y⑴ 广Y(1)-1/(A*R2)*Y(2)[T,Y] = ode45(plot(T,Y(:,1),'f',[1,200],[0.00001,0.00001]);,T,Y(:,2),x 1010-4H1H22040 6080 100 120 140 160 180 200time仿真曲线与四阶 RungeKutta 公式的计算一致五思考题1. 讨论仿真步长对稳定性和仿真精度的影响。

      答:步长越大越不稳定,但仿真速度快2. 你是怎样实现阀位增大和减小 10%的?对于非线性模型和线性模型方法一样吗? 答: u*1.1 和 u*0.9 ,两种方法一样。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.