控制系统数字仿真
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
梯 时形ym法1还问未题求:出在,计所算以ym,1一时般,采先用要欧用拉y公m1式去先计预算报fm一1,个而ym(此0)1
然后将预报
y(0) m 1
代入,求出
ym 1 ,即
y(0) m 1
ym
hf
( ym ,tm )
ym1
ym
h 2
(
fm
f
(0) m 1
tm
t0
t1
t2
tn
y(tm )
h[ 2
f
( y(tm ), tm )
f ( y(tm1), tm1)]
4.6
Qm
第四章 控制系统数字仿真
连续系统数值积分方法
二. 梯形法
用梯形的面积近似代替定积分
y(tm1) y(tm )
tm1 f ( y, t)dt
tm
所以
y(tm )
)
式中, fm f ( ym ,tm )
f (0) m1
f
(
y(0) m1
, tm1
)
——预报–校正公式
梯形法比欧拉法精度要高,同时,每前进一个步距,计算 工作量也比欧拉法约多一倍。
4.8
第四章 控制系统数字仿真
连续系统数值积分方法
三. 龙格-库塔法
对初值问题,将解析解在其初值附近展开成泰勒级数,并只
y(tm1) y(tm )
tm1 f ( y, t)dt
tm
y(tm ) f ( y(tm ), tm )h
则
y(tm1) ym f ( ym,tm )h
即
ym1 ym f ( ym ,tm )h
其中
4.5
h tm1 tm, m 0,1,2,L ,n -1
取前三项,则有
y (tm 1 )
y(tm )
h
dy dt
t
tm
1 2
h2
d2 y dt 2
t
tm
y(tm )
f ( y(tm ), tm )h
1 ( f 2 t
f
f )h2 y
t
tm
ym
f
(
ym
,
tm
)h
1 2
(
f t
f
f )h2 y
y ym t tm
f ]h y
4.10
第四章 控制系统数字仿真
连续系统数值积分方法
比较后,有
a1 a2b1
a2
1 2
1
a2b2
1 2
三个方程中有四个未知数,解不唯一。限定
1 a1 a2 2
b1 b2 1
则
h
a1
a2
,有
ym1 ym 2 (k1 k2 )
第四章 控制系统数字仿真
第4章
控制系统数字仿真
—数值积分法
4.1
第四章 控制系统数字仿真
连续系统数值积分方法
基本原理
连续系统的数学模型,一般都能以微分方程的形式给出, 因而对连续系统数学仿真问题可归结为在计算机上来求解 如下微分方程初值问题(解析解很难得到)
dy
dt
f ( y,t)
y(t0 ) y0
所谓数值解法就是寻求初值问题的解在一系列离散时间点
t1, t2, , tm , tm1 上的近似解 y1, y2, , ym , ym1。 相邻两个离散时间点的间距h tm1 tm称为步长或步距 。
4.4
第四章 控制系统数字仿真
连续系统数值积分方法
一.欧拉法
将在 (tm, tm1) 上的 f ( y,t)近似看成常数,即
h[ 2
f
( y(tm ), tm )
f
( y(tm1), tm1)]
y(tm1)
ym
h 2
(
f
m
f m1 )
式中
fm f ( ym ,tm ) fm1 f ( ym1, tm1)
即
ym1
ym
h 2
(
fm
f m1 )
4.7
第四章 控制系统数字仿真
连续系统数值积分方法
——欧拉积分公式
第四章 控制系统数字仿真
连续系统数值积分方法
f
y(tm1) y(tm ) f ( y(tm ),tm )h
欧拉公式计算简单,但精度较低, 原因是,用矩形面积代替准确的曲 面面积,形成了较大的误差面积。
为了提高计算精度产生了梯形法。
y(tm1) y(tm )
tm1 f ( y, t)dt
4.3
t tm1
第四章 控制系统数字仿真
连续系统数值积分方法
数值积分法用公式
ym1 ym qm
来代替解析解,其中 ym,ym1,qm 分别是 y(tm ),y(tm1),Qm
的近似解。此差分方程为仿真模型。
数值积分法的主要问题归结为如何对函数 f ( y,t) 进行数值 积分,求出 f ( y, t) 在区间 (tm, tm1)上定积分的近似解 qm 。
k1 f ( ym ,tm )
k2 f ( ym k1h,tm h)
4.11
——二阶龙格Runge -库塔Kutta法
y(tm 1)
第四章 控制系统数字仿真
连续系统数值积分方法
将数值方法中的 ym 由 y(tm )替换,得到数值解 ym1 ,则
t
y(t) y(t0 )
f ( y,t)dt
t0
当 t tm1 t0 tm
y(tm1) y(tm )
tm1 f ( y, t)dt
tm
令 Qm
tm1 f ( y, t)dt 则
tm
y(tm1) y(tm ) Qm
——此式是微分方程初值问题在tm+1时刻的精确解
4.9
ym1
ym
f
(
ym
,
tm
)h
1 2
(
f t
f
f )h2 y
y ym t tm
第四章 控制系统数字仿真
连续系统数值积分方法
为了避免计算导数项,令
ym1 ym (a1k1 a2k2 )h
k1 f ( ym,tm )
k2 f ( ym b2k1h,tm b1h)
而数值积分法是上述问题的数值解法,它首先给出一差分
方程(可在计算机上求解)代替原微分方程,通过解差分
方程得到数值解。也可以说,采用数值积分法能够将常微
分方程模型变成离Байду номын сангаас形式的仿真模型——差分方程。
4.2
t tm1
第四章 控制系统数字仿真
连续系统数值积分方法
对
dy dt
f ( y,t)
两边积分,有
对 k2 泰勒级数展开,并只取前三项,有
f
f
k2 f ( ym,tm ) b1h t
b k h yym y ttm
21
y ym ttm
将 k1 、k2 代入,有
ym1
ym
a1hf
( ym,tm ) a2[
f
( ym,tm ) b1h
f t
b2k1h