1.2 仿真技术及其在机电系统中的应用
仿真技术是随着计算机技术的产生而发展的,在各行业中均得到了广泛的应用,但是目前还很难给仿真技术下一个准确的定义。
1961年,G.W.Morgenthater首先对仿真进行了定义,他认为“仿真意指在实际系统尚不存在的情况下对于系统或活动本质的体现”,1982年,Sprit对仿真定义的内涵加以扩充,他认为“所有支持模型建立与模型分析的活动即为仿真活动”,1984年,Oren提出了仿真的基本概念框架“建模—试验—分析”,并提出了“仿真是一种基于模型的活动”的观点。事实上,直到今天,不管是用于分析系统性能的仿真,还是用于展示系统性能的仿真,都没能超出上述由建模至分析的框架。
仿真技术应用的目的主要是对不存在的系统的性能进行预测,对已存在的系统或事件进行分析评价,因为应用仿真技术能减少大量试验次数,降低试验风险,因而具有可观的经济效益。
1.2.1 仿真的分类
从不同的角度考虑仿真的分类,有不同的分类方法,常用的有根据仿真的方法和手段分类、根据系统的特性分类、根据仿真时钟与实时时钟的比例关系分类、根据模型在空间的分布形式分类等,表1.1为典型的仿真系统分类。
表1.1 典型的仿真系统分类
1.按实现的方法和手段分类
物理仿真:主要是指按系统真实的物理特性构建系统的物理模型,并在相应的物理模型上进行试验研究的方法,物理仿真的优点是直观、形象,缺点是修改模型困难,对于复杂系统,投资较大。
(1)数学仿真:主要是指对系统的物理特性进行抽象,采用数学方程描述系统的物理特性,并采用对数学模型进行求解以获得系统真实性能的方法,数学仿真主要在计算机上进行,模型可以反复修改,因此数学仿真具有经济、无风险的特点。数学仿真的准确性:一是依赖数学模型能否准确地反映系统全部的物理特性;二是依赖所采用的数值算法能否准确地求解数学模型,往往建立数学模型还要借助于一些物理试验以获取部分模型参数。
(2)半实物仿真:又常被称为硬件在回路仿真,一般是指在仿真中不再全部采用数学模型,部分用实物引入仿真回路,机电控制系统仿真中一般是控制器用实物代替或控制对象用实物代替。若控制器用实物代替,而控制对象采用数学建模的方法,则可以进一步检验控制器的性能,模拟进行操纵实际控制对象具有较大风险的试验;若控制对象采用实物,则可以避免复杂控制对象的精确数学建模过程,可以检验执行机构动作能否满足实际的控制效果,也可以反复调整控制器的控制参数,以获得更好的控制性能,节约研发成本,如图1.4所示为某半实物仿真系统。
图1.4 某半实物仿真系统
(3)人在回路仿真:通常也可以称为交互式仿真,一般指在仿真回路中要求有操作人员参与的仿真过程,操作人员发出指令操纵系统,系统的响应又反馈给操作人员,影响其操作,因而这种仿真环境一般要求能模拟生成人能感觉到的物理量,包括视觉、听觉、触觉等,如各种飞机、舰船、车辆等驾驶模拟系统均为交互式仿真系统。显然,人在回路仿真和半实物仿真都要求仿真具有实时性,如图1.5所示为某车辆交互式仿真系统。
2.按系统模型的特性分类
(1)连续系统仿真:一般是指系统状态随时间连续变化的系统,一般采用常微分方程和偏微分方程描述系统模型,计算连续状态需要知道状态的变化率或微分,计算当前时间步上的连续状态值需要从仿真起始时刻对该状态值进行积分,积分的精度取决于时间步间隔的大小。
图1.5 某车辆交互式仿真系统
(2)离散事件仿真:离散事件系统是指物理系统的状态在某些随机时间点上发生离散变化的系统,它与连续时间系统的主要区别在于:物理状态变化发生在随机时间点上,这种引起状态变化的行为称为“事件”,因而这类系统是由事件驱动的。离散时间系统的事件(状态)往往发生在随机时间点上,并且事件(状态)是时间的离散变量。系统的动态特性无法使用微分方程这类数学方程来描述,而只能使用事件的活动图或流程图,因此对离散事件系统仿真的主要目的是对系统事件的行为进行统计特性分析,而不像连续系统仿真的目的是对物理系统的状态轨迹进行出分析。
混合系统仿真:一般指仿真系统中既包含连续状态又包含离散状态的系统。
1.2.2 计算机仿真的发展现状
计算机仿真技术的发展主要开始于军事领域的研究和应用,并且随着计算机硬件技术的发展而发展。20世纪40年代研制成功第一台通用电子模拟计算机,火炮控制与飞行控制动力学系统的研究促进了仿真技术的发展;到了60年代仿真技术已经被应用到导弹控制的研究和“阿波罗”登月计划中;70年代中期出现了用于培训民航客机驾驶员和军用飞机飞行员的飞行训练模拟器和培训复杂工业系统操作人员的仿真系统等产品,仿真技术进入了产业化阶段。
20世纪80年代联合作战训练的军事需求促进了分布式仿真系统的发展,军事部门开始考虑将已建成的单武器仿真系统,通过互连构成多武器仿真系统,典型的如美国国防高级研究计划局和美国陆军共同制订和执行的SIMNET(Simulation Networking)研究计划,SIMNET计划通过广域网将分布在美国和欧洲各地的由120台计算机控制的M1坦克和布雷德利步兵战车等的仿真器连在一起,构成一个分布式交互仿真系统,在此系统中,每个仿真器都能单独模拟M1坦克的全部特性,包括导航、武器、传感和显示功能。仿真系统数据库内有详细的数字化地图,坦克间通过网络进行长距离的语音和电子信息传输。SIMNET计划结束时,已形成了约260个地面装甲车辆仿真器、指挥所和数据处理设备等互联的网络,分布在美国和德国的11个城市。SIMNET第一次实现了作战单位之间的直接对抗,并能在其所提供的虚拟作战环境中使营以下的部队进行联合兵种协同作战训练和相应的战术研究。
到90年代,以美国为代表的发达国家在分布交互仿真、先进的并行分布交互仿真及聚合级仿真的基础上,开始向仿真的高层体系结构(HLA)发展。HLA是促进所有类型仿真之间互操作、仿真模型组件重用的高级协议。
经过50多年的发展,计算机仿真技术不仅被应用在航天、航空、各种武器装备的研制领域,而且广泛应用于机械、电力、交通、通信、化工等各个领域,甚至在医学工程、经济学、社会学领域都有所应用。
自20世纪50年代以来,我国政府和许多企业都非常注重仿真技术的发展与应用,通过几个五年计划的努力,我国仿真技术得到了快速发展,并在建模与仿真方法学、仿真算法、仿真计算机、人工智能仿真等方面取得了较大的成就。
在国防工业领域,建成了不同类型的半实物仿真系统,并在国防工业产品研制、生产、使用、维护过程中发挥了巨大作用,我国还在军事领域建立了指挥、作战、训练的仿真系统及半实物仿真试验室。
在民用工业中,我国已自行研制了生产电力工业的大型电站仿真系统、交通运输仿真系统、石油化工过程仿真系统等;在先进分布交互仿真技术方面,我国也取得了较大成就,并开始应用于实际系统的研制和开发工作。
1.2.3 计算机仿真在机电系统中的应用
计算机仿真技术在机电产品设计中已得到了广泛应用,典型的如结构分析、控制系统开发、动力学分析等。
1.结构分析
结构分析一般包括土木工程结构,如桥梁和建筑物;汽车结构,如车身骨架;海洋结构,如船舶结构;航空结构,如飞机机身等;同时还包括机械零部件,如活塞,传动轴,等等,最常用的分析方法是有限元法,在20世纪60至70年代,有限元法随着计算机技术的发展形成了一套结构力学分析方法,并形成了CAE这一工程领域,直到90年代初,大部分人都认为CAE分析就是指有限元分析。结构分析中计算得出的基本未知量(节点自由度)是位移,其他的一些未知量,如应变、应力和反力可通过节点位移导出。结构分析的主要问题如下所述。
(1)静力学分析:用于求解静力载荷作用下结构的位移和应力等。静力分析包括线性和非线性分析,而非线性分析涉及塑性、应力刚化、大变形、大应变、超弹性、接触面和蠕变。
(2)模态分析:用于计算结构的固有频率和模态。
(3)谐波分析:用于确定结构在随时间正弦变化的载荷作用下的响应。
(4)瞬态动力分析:用于计算结构在随时间任意变化的载荷作用下的响应,并且可计及上述提到的静力分析中所有的非线性性质。
(5)谱分析:是模态分析的应用拓宽,用于计算由于响应谱或PSD输入(随机振动)引起的应力和应变。
(6)屈曲分析:用于计算屈曲载荷和确定屈曲模态,可以进行线性(特征值)和非线性屈曲分析。
(7)显式动力学分析:用于计算高度非线性动力学和复杂的接触问题。
典型的结构分析一般包含以下三个主要步骤。
(1)建模:一般需要首先在有限元分析软件或三维(3D)建模软件中创建分析对象的几何模型,定义单元类型、材料属性等,并进行有限元网格划分。
(2)施加载荷和边界条件,求解:通常包括对分析对象施加载荷和各种约束条件,并设置求解选项,进行分析计算。
(3)结果评价和分析:主要包括计算结果的后处理,即应力、应变、位移等计算结果的观察和分析。如图1.6所示为ANSYS软件分析某结构的等效应力云图。
图1.6 ANSYS软件分析的某结构等效应力云图
2.控制系统仿真
控制系统仿真主要是通过对系统的数学模型和计算方法进行分析,开发控制策略,并对整个控制系统实现自动求解各环节变量的动态变化,得到关于系统输入/输出和各中间变量的有关数据,并最终实现对控制系统性能指标的设计及验证。
目前,几乎所有控制系统在设计过程中均利用了计算机仿真这一方法,如导弹控制系统,机器人控制系统,各种车辆发动机、自动变速器、制动控制系统等。
控制系统仿真一般按以下几个步骤进行:
(1)对物理模型进行分析简化,建立其数学模型。
(2)将数学模型进行分解、综合、等效变换,转换为适合在计算机上运行的公式、方程。一般对单输入/单输出系统转化为信号流图的形式,对于多输入/多输出系统则转化为状态空间的形式。
(3)根据建立的数学模型及计算机求解时间和精度的要求,确定合适的数值计算方法。
(4)采用合适的开发语言进行算法编程。
(5)上机运行调试,不断修改控制策略和计算程序,分析控制系统仿真得到的动态性能指标。
基于MATLAB语言开发的专门应用于控制系统分析与设计的工具箱,为控制系统仿真提供了极大的便利,并且推动了控制技术的发展。
如图1.7所示为MATLAB所提供的交互式单输入/单输出系统设计工具箱。
图1.7 系统设计工具箱
3.动力学分析
机械系统动力学分析与仿真主要解决系统的运动学、动力学、静平衡等几类问题,目前,多刚体动力学分析应用最为广泛,而刚柔耦合仿真则是计算多体动力学的发展趋势之一。
运动学分析涉及系统及其构件的运动分析,主要是指在不考虑力的作用情况下研究机械系统组成各构件的位置、速度和加速度,
动力学分析包括正向动力学分析和逆向动力学分析,正向动力学分析主要研究由外力作用下系统的瞬态响应,包括运动过程中各约束反力,各构件的位置、速度和加速度;逆向动力学分析主要是指由机械系统的运动求反力的问题。
静平衡分析主要是指确定系统在定常力作用下系统的静平衡位置。
通常所说的运动学/动力学仿真不单指动力学仿真,还包含上面三方面的内容。
运动学/动力学仿真一般分四个步骤进行:物理建模、数学建模、数值求解、结果分析。
物理建模主要是对实际系统进行简化,用标准的约束副、驱动力、机械构件建立与实际系统一致的物理模型,这一步骤是动力学仿真的基础,建好后的模型也就是动力学分析的研究对象;数学建模主要是指由物理模型根据相关动力学理论生成描述系统运动学/动力学方程;数值求解主要是指采用合适的数值算法和计算步长求解运动学/动力学方程,数学建模与数值求解是最为复杂的步骤,但在商用软件中,这两步基本实现了自动化,用户只要选择合适的求解器参数即可;结果分析主要是指计算后与试验结果的对比,商用软件后处理器一般都提供了计算结果曲线绘制和动画回放功能,如图1.8所示为采用ADAMS/CAR进行单移线仿真的动画回放。
图1.8 单移线仿真的动画回放
1.2.4 计算机仿真的发展趋势
计算机仿真技术早期在机电系统中的应用主要是以Fortran语言、C语言程序包的形式出现,进行一些系统性能的计算,后来随着这些程序包的不断完善,在不同领域逐渐形成了一批商用软件,在运动学和动力学特性计算方面,有美国的MSC/ADAMS,韩国的RecurDyn,德国的Simpack等,非线性变形分析有美国的ANSYS, MSC/NASTRAN等,液压与控制方面有法国的AMESim等,控制领域有美国的MATLAB等,计算流体动力学有FLUENT、STAR CD等,随着各学科领域的不断发展、交叉,如动力学领域的计算机仿真同时还希望能考虑柔性体的变形,动力学领域的仿真与控制程序的开发同时进行等,这些需求促进了上述商用软件功能互补的多领域联合仿真技术,多领域联合仿真技术已成为计算机仿真技术在机电产品中应用的发展趋势之一,进而向协同仿真的方向发展,如图1.9所示。
图1.9 计算机仿真应用的发展趋势
目前,协同仿真更多处于概念研究阶段,离实用还有一段距离,这是因为同一模型应用于不同领域的商用软件并不容易,即使是三维CAD模型应用于不同领域的计算也需要设计人员进行大量的修改工作,另外,受商用软件功能的限制,还只能做到机械、控制、液压等少数领域的联合仿真。