文档介绍:
概述
机电系统计算机仿真是目前对复杂机电系统进行分析的重要手段与方法。在进行机电系统分析综合与设计工作过程中,除了需要进行理论分析外,还要对系统的特性进行实验研究。系统性能指标与参数是否达到预期的要求?它的经济性能如何?这些都需要在系统设计中给出明确的结论。对于那些在实际调试过程中存在很大风险或实验费用昂贵的系统,一般不允许对设计好的系统直接进行实验,然而没有经过实验研究是不能将设计好的系统直接放到生产实际中去的,因此就必须对其进行模拟实验研究。当然在有些情况下可以构造一套物理模拟装置来进行实验,但这种方法十分费时而且费用又高,而在有的情况下物理模拟几乎是不可能的。近年来随着计算机的迅速发展,采用计算机对机电系统进行数学仿真的方法已被人们采纳。所谓机电系统计算机仿真就是以机电系统的数学模型为基础,借助计算机对机电系统的动静态过程进行实验研究。这里讲的机电系统计算机仿真是指借助数字计算机实现对机电系统的仿真分析。这种实验研究的特点是:将实际系统的运动规律用数学表达式加以描述,它通常是一组常微分方程或差分方程,然后利用计算机来求解这一数学模型,以达到对系统进行分析研究的目的。
对机电系统进行计算机仿真的基本过程包括:首先建立系统的数学模型,因为数学模型是系统仿真的基本依据,所以数学模型极为重要。然后根据系统的数学模型建立相应的仿真模型,一般需要通过一定的算法或数值积分方法对原系统的数学模型进行离散化处理,从而建立起相应的仿真模型,这是进行机电系统仿真分析的关键步骤;最后根据系统的仿真模型编制相应的仿真程序,在计算机上进行仿真实验研究并对仿真结果加以分析。
机电系统计算机仿真的应用与发展已经过了近40年的历程,进入20世纪80
年代以来,随着微型计算机技术以及软件技术的飞速发展与广泛应用,使得机电系统计算机仿真获得了实质性的发展,并使其走进广大的机电系统生产、设计、研究的第一线。目前在该领域应用最为广泛的软件包就是美国Mathworks公司开发的MATLAB语言软件。虽然它最初并非是为机电系统仿真与设计开发的,但是它的强大的矩阵运算功能与图形处理及绘制能力,以及在MATLAB平台上开发出来的各种工具箱,和面向结构图的SIMULINK 系统分析环境,为机电系统计算机仿真提供了强有力的软件工具,从而为机电系统计算机仿真与辅助设计开辟新的方法与途径提供了充分的条件。
考虑到部分读者不具备MATLAB基础知识,因此,在本书的附录一中对
MATLAB语言基础知识作了简单的介绍。
对于控制系统的最基本数学描述就是微分方程,因此有必要在介绍机电系统计算机仿真时对这种方法加以介绍。实际上在前面章节已经介绍了几种典型数值积分方法以及它们的MATLAB实现。数值积分的数学基础就是微分方程(状态方程),如果一个系统以微分方程的形式加以描述,就可以利用前面的知识对该系统进行仿真研究,有关这部分内容本章就不再加以讨论了。这里将介绍如何利用MATLAB中为用户所提供的常微分方程解函数ode和对微分方程进行求解计算,以及在面向微分方程的系统仿真研究中如何应用M函数。
基于ode函数的面向微分方程的系统仿真
1. 常微分方程解函数ode的基本格式
(l)ode函数的基本分类。在 MATLAB ode函数可以分为两类五种形式。一类是应用于非刚性微分方程求解,如ode45;另一类属于求解刚性微分方程的ode解函数,:
1 ;
2 ode23函数用于求解非刚性微分方程,它属于底阶龙格-库塔法;
3 ode113函数用于求解非刚性微分方程的变阶法;
4 ode15s函数用于求解刚性微分方程的变阶法;
5 ode23s函数用于求解刚性微分方程的低阶法。
(2)ode函数的基本格式。上还这五种 ,其结果多数也可用于其他ode函数。ode45的基本格式主要有以下几种。
①[t,y]=ode45('F',tspan,y0)
其中:'F'是ode文件名字符串;
tspan= [T0 TFINAL]为一个向量,它指定了积分的启始时刻和结束时刻;
y0为积分运算的初始条件。
该函数对微分方程系统从T0到TFINAL时间段进行积分。函数返回一个列向量。在解向量Y中的每一行与列向量T的返回时间相对应。为了在指定的时刻点
T0,T1,…,TFINAL得到解,则使用tspan=[T0,T1,…,TFINAL]。
②[t , y]=ode45('F