SIMULINK仿真基础之数值积分法仿真
- 格式:ppt
- 大小:4.11 MB
- 文档页数:36


实验:控制系统数字仿真之数值积分法实验目的:学会并掌握数值积分法的基本原理和方法,了解欧拉法,梯型法,龙格一库塔法的区别,并熟练地使用这些方法。
观察并分析整体离散法、分环节离散法、欧拉法、梯形法、龙格•库塔法这几种方法原理上的差别,分析他们各自的优缺点。
实验原理:欧拉法:欧拉法是最简单的单步法,它是一阶的,精度较差。
但由于公式简单,计算方便,也易于理解,所以在讨论微分方程初值问题的数值解时通常先讨论欧拉法。
梯形法:梯形法与欧拉法相比,梯形法的e要比欧拉法的e更接近实际值,它舍弃的部分更少,它在每一步中用了两个点的输入,使得计算更加精确。
龙格•库塔法:龙格一库塔法是采用间接利用台劳展开式的思路,即用在n 个点上的函数值的线性组合來代替的导数,然后按台劳展开式确定其中的系数, 以提高算法的阶数。
这样既能避免计算函数的导数,同时乂保证了计算精度。
由于龙格薦法具有许务优点,故在许IM:包中,它是•个最垄本的算法之一。
实验过程:分环节离散法得出的响应曲线:整体离散法得出的响应曲线:用一阶欧拉法得出的系统响应曲线:欧拉法是求出当前系统的斜率(变化规律),假设这个变化规律在下一次变化前不改变。
那么系统下一次值就能够通过4 .当前值2.斜率3.步长来确定。
比如说系统当前值x (t),斜率x ' (t),仿真步长dt。
那么x (t+dt) =x (t) +x' (t) *dt程序代码:clc; close all; clear all;sampleTime = 0・l;simuTime = 2000;t=sampleTime:sampleTime:simuTime;K=1・2; n=3; T=20;[kp,ki]=PID_Gain(l・ 20z3, 0);x=zeros(l r 4);fori=l:fix(simuTime/sampleTime)u(i)=l;endfori=l:fix(simuTime/sampleTime)e=ST_RK_l(X/ u(i)f kp r ki r T z K, n);x=xfe*sampleTime;y (i)=x(4);endplot (t r y);匸ext=Tvaiuel(y,sampleTime);legend (text);自程序ST_RK_1代码:function E=ST_RK_1(x r u f kp f ki z T r K z n) E(l) = (u-x(4))*ki;E(2)=(x(l)+kp*E(l)/ki)*K/T-x(2)/T;E (3)=x(2)/T-x(3)/T;E(4)=x(3)/T-x(4)/T;end用梯形法得出系统响应曲线:X = e(r)e[(kH)T]e(kT)牙[e(灯)+ e[伙+ 1)门]X(kT) kT (k+l)T 上若采用欧拉法,误差为红色曲线围成的面积,而如果用梯形法,误差减少为蓝色曲线闱成的面积。