第3章、连续系统仿真方法
3.1离散化原理及要求
在数字计算机上仿真:数字计算机的数值及时间均具有离散性,而被仿真的系统的数字及时间均具有连续性。后者如何用前者来实现?
从根本意义上讲,数字计算机所进行的计算仅仅是“数字”计算,它表现的数值的精度受限于字长,这将引入舍入误差;另一方面,这种计算是按指令一步一步进行的,因而,还必须将时间离散化,这样就只能得到离散时间点上系统的(离散数值)状态(性能)。
用数字仿真的方法对微分方程的数值积分是通过某种数值计算方法来实现的。任何一种计算方法只能是原积分的一种近似。
因此,连续系统仿真,从本质上是从时间、数值两个方面对原系统进行离散化,并选择合适的数值计算方法来近似积分运算,由此得到离散模型来近似原连续模型。
如何保证离散模型的计算结果从原理上确能代表原系统的行为,这是连续系统数字仿真首先必须解决的问题。
- 13 -
u(t) y(t) 原连续系统 y??f(y,u,t) ?ey(tk)?0
h ? 仿真模型 y???f(y?,u?,tu?(tk) k) y?(tk) 相似原理示意图
相似原理(两个模型等价):
eu(tk)?u?(tk)?u(tk)?0ey(tk)?y?(tk)?y(tk)?0 完全保证全为零是很困难的。 分析离散化引入的误差:
随着计算机技术的发展,计算机字长引入的舍入误差可以忽略,关键是数值积分算法,也称为法引入的误差。
- 13 -
仿真算
相似原理用于仿真时,对仿真算法有三个基本要求:
稳定性:若原连续系统是稳定的,则离散化后得到的仿真模型也应是稳定的; 准确性:有不同的准确性评价准则,最基本的是:
绝对误差准则:
ey(tk)?y?(tk)?y(tk)?? ey?(tk)?y(tk)相对误差准则:y(tk)?y(t?k)?
?-表示规定的误差量
快速性:数字仿真是一步一步推进的,每一部的计算时间决定了仿真速度。 连续系统数字仿真算法: ? 数值积分方法:单步、多步 ? 离散相似方法:适用范围较窄
数值积分方法采用递推方式进行计算,不同的方法会引进不同的计算误差;为了提高计算精度,会增加运算量。对同一种积分方法,为提高计算精度,可减小积分步距,但又降低了计算速度。
计算精度和速度是常见的一对矛盾,也是数字仿真重要解决的问题之一。
- 13 -
3.2连续系统仿真算法
3.2.1 线性连续系统仿真算法
3.2.1.1 线性连续系统数学模型的几种表示方法
⑴ 高阶微分方程
dnydn?1y?a1?n?1?ndtdt⑵ 传递函数
dydn?1udn?2u?an?1??an?y?b0?n?1?b1?n?2?dtdtdtdu?bn?2??bn?1?u
dtG(s)?Y(s)U(s)b0?sn?1?b1?sn?2??bn?2?s?bn?1? sn?a1?sn?1??an?1?s?an - 13 -
⑶ 状态方程
?x?Ax?bu??y?Cx1?0?00A???????????an?an?10??an?2T0???????a1??
?0??1????0?B???,????C???,????0????????1??0?G(s)?C?(s?I?A)?1?B⑴、⑵ 只能给出输入输出的关系,⑶ 可描述中间的状态。 以上只是对SISO系统。
对于MIMO系统:分别为微分方程组,传递函数阵,状态方程。
- 13 -