ADAMS与MATLAB/Simulink联合控制仿真的研究

2009-06-24 09:53张贤波
决策与信息·下旬刊 2009年11期

张贤波

摘 要 本文通过对发电机三维模型的PID控制仿真的实验,证实了该方法的可行性和实用性。

关键词 ADAMS Simulink PID控制器 仿真系统

中图分类号:TP391文献标识码:A

一、引言

ADAMS(Automatic Dynamic Analysis of Mechanical System)软件是美国MDI(Mechanical Dynamics Incl)公司开发的机械系统动力学仿真分析软件,使虚拟样机中非常优秀的软件,目前已经广泛应用到汽车制造业、工程机械、航空航天业、国防工业及通用机械制造业等领域,并取得了满意的效果。ADAMS集建模、计算和后处理于一体,还有针对专业领域而单独开发的一些专用模块和嵌入模块,如汽车模块ADAMS/Car、飞机模块ADAMS/Aricraft、控制模块ADAMS/Controls等,本实验主要是利用基本模块ADAMS/View和Postprocess,和嵌入控制模块ADAMS/Controls来完成运动部分,利用MATLAB/Simulink软件完成控制部分。

在ADAMS中建立控制系统有两种途径,一种途径是利用ADAMS/View中提供的控制工具包,直接建立控制方案,这适合比较简单的控制方案;另一种途径是利用ADAMS/Control模块提供的与其它控制程序的数据接口,在ADAMS环境中建立系统方程,而在其他控制程序中建立控制方案,ADAMS可以与Matlab之间进行控制数据交换,故可以实行二者之间的联合仿真。

二、ADAMS与MATLAB/Simulink联合仿真试验

ADAMS与MATLAB/Simulink联合仿真试验步骤如下:

(一)建立虚拟模型。

ADAMS/View本身带有直接建模功能,但是对于复杂模型的构建则比较复杂,故对于复杂的模型可以借助一些CAD软件(如UG、PROE、SolidWorks等)建模,然后将最终的模型导入到ADAMS环境中。本实验所被控对象发电机模型是由SolidWorks软件绘制,并保存为*.x_t文件格式,然后将模型导入ADAMS/View中,然后对模型各部件添加属性,使之成为真正的模型实体,并给这个模型施加旋转副、固定副约束和旋转驱动作用力。导入的模型如图(一 二):

(二)定义ADAMS的输入和输出。

ADAMS与其它控制程序之间的数据交换是通过状态变量实现的,而不是设计变量。状态变量在计算过程中是一个数组,它包含一系列数值,而设计变量只是一个常值,不能保存变值。在定义输入输出之前需要先将相应的状态变量定义好,用于输入输出的状态变量一般是系统模型元素的函数,如构件的位置、速度的函数以及载荷等函数。输入变量是系统被控制的量,输出变量是系统输入到其他控制程序的变量,它的值经过控制方案后,又返回到输入变量。本实验中,定义发电电机的转矩作为输入和速度作为输出(被测量)。通过对转速的PID控制来保持转速的恒定,从而保证发电电流的平稳性。

(三)加载ADAMS/CONTROLS模块。

如果建立ADAMS与其他控制软件的联接,必须加载ADAMS/Controls模块,并在加载时,注意模块名,输入,输出变量和想要连接控制软件的选择。

(四)建立控制系统。

1、启动MATLAB并建立控制方案。

在MATLAB命令窗口的提示符下打开模型文件(*.m),则在Simulink下可以看到模型文件的S-Funtion方框,该S-Funtion方框表示ADAMS模型的线性模型。然后在新建的Simulink文件中建立PID控制方案。将ADAMS建立的虚拟模型与MATLAB建立的控制系统通过如图的方式结合起来,形成一个闭环系统。如图(三)

2、设置MATLAB与ADAMS之间的数据交换参数。

前面已经建立了MATLABA与ADAMS的模型连接,但是由于没有设置数据通信格式,还不能进行真正的联合仿真。因此必须在adams_sub下的MSCSoftware作一下通信设置。如果ADAMS与MATLAB是装在同一台计算机上的,选择PIPE(DDE),如果不是,选择TCP/IP,并确定两台计算机上均安装了该协议;设置Communication Interval(通信间隔),如0.005表示每隔0.005s在MATLAB和ADAMS之间进行一个数据交换;设置交互式计算格式,在计算过程中会自动启动ADAMS/View,以便观察仿真动画。

(五)仿真设置和仿真计算。

在Simulink中设置仿真参数,并点击开始按钮进行仿真计算。

(六)结果处理。

回到ADAMS/View,在ADAMS/View中有分析设置,打开仿真生成的*.res文件,该文件保存了控制计算结果。然后通过后处理模块绘制出的转矩变量和速度曲线。

(七)保存仿真录像。

ADAMS的后处理模块中可以对模型的运动状态作仿真动画,其动画文件格式可选择为AVI、mpg、tiff、ipg、xpm、bmp和png。并可将动画保存到ADAMS的工作目录下,以供参考。

三、结论

本文利用ADAMS和MATLAB/Simulink两个强大的软件工具进行联合仿真,结合了两软件的优点,弥补了相互的缺点,既能利用MATLAB方便地对研究对象进行有效控制,又能在ADAMS中更直观的对被控对象进行观察;既可以大大提高设计效率,缩短开发时间,又能降低开发成本。获得优化的机械和控制系统整体性能,更能到达事半功倍的效果。实验结果表明ADAMS和MATLAB/Simulink联合仿真操作简单、实用,并能够很好地完成实验目的。

(作者:辽宁省高速公路管理局康平管理处,职称:工程师)

参考文献:

[1]李增刚主编.ADAMS入门详解与实例.国防工业出版社,2006.

[2]王晓东、毕开波、周须峰.基于ADAMS与Simulink的协同仿真技术及应用.计算机仿真.2007,24(4).

[3]王涛、张会明.基于ADAMS和MATLAB的联合控制系统的仿真.机械工程与自动化.2005,6(3).