AMESim与ADAMS联合仿真操作说明

合集下载

史上最全的AMESim-Matlab 联合仿真设置步骤(集大成者,图文并茂)

史上最全的AMESim-Matlab 联合仿真设置步骤(集大成者,图文并茂)

史上最全的AMESim-Matlab 联合仿真设置步骤(集大成者,图文并茂)中国矿业大学机电学院 haierdhg目前,文库及网上流行的AMESim-Matlab 联合仿真步骤基本不能用,经过几天的研究,终于找到了解决方案。

本文论述了联合仿真的设置步骤、仿真时应注意的事项,以及有用的参考资料,敬请大家分享。

一、版本为AMESim8.0,Matlab2011b,VC++6.0二、安装步骤个人认为以上三个软件,没有安装顺序,但还是建议先安装VC++1.将VC++中的"vcvar32.bat"文件从Microsoft Visual C++目录(通常是.\Microsoft Visual Studio\VC98\Bin中)拷贝至AMESim目录下(我的是C:\AMESim\v800)。

(如果先安装的VC,后安装的AMESim,则在AMESim安装时,自动会拷贝该文件)2.环境变量确认:(这里网上的教程大多是错的!环境变量分为用户变量和系统变量,网上教程大多没说清楚)1)选择“控制面板-系统”或者在“我的电脑”图标上点右键,选择“属性”;2)在弹出的“系统属性”窗口中选择“高级”页,选择“环境变量”;3)用户变量中添加HOME C:\ (我将AMESim Matlab装在了C盘,自己根据情况修改) MATLAB C:\MATLAB\R2011bPath D:\Program Files\Microsoft Visual Studio\Common\Tools\WinNT;D:\Program Files\Microsoft VisualStudio\Common\MSDev98\Bin;D:\Program Files\Microsoft Visual Studio\Common\Tools;D:\Program Files\Microsoft Visual Studio\VC98\bin4)在系统变量中添加AME C:\AMESim\v800 (这个一般都有的,不需要自己添加);Path D:\Program Files\Microsoft Visual Studio;C:\AMESim\v800;C:\AMESim\v800\win32;C:\AMESim\v800\sys\mingw32\bin;C:\AMESim\v800\sys\mpich\mpd\bin;C:\AMESim\v800\sys\cgns;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\MATLAB\R2011b\bin\win32;C:\WINDOWS\system32;C:\WINNT (该处很重要一定要添加,而且一定要包含C:\WINDOWS\system32,不然会有引起很多错误)3.确认是否在AMESim中选择VC作为编译器。

asaam仿真

asaam仿真

asaam仿真
1.找到ADAMS快捷方式,双击打开。

点击NewModel,新建模型。

2.弹出CreateNewModel窗口,设置模型名称ModelName,重力加速度Gravity,单位制Units,保存路径WorkingDirectory,设置完成点击OK按钮。

3.新建连杆Link:选择连杆Link,设置自己想要的长Length、宽Width、厚Depth的值,或者自己画完再修改也可以。

4.添加运动副joints:点击Connectors中的转动副,选择机构的两个连杆和一个连接点即可。

5.建立驱动Motions:选择Motions中的旋转,弹出RotationalJointMotion并设置速度Speed。

完成后有一个大的旋转箭头就是我们刚建的驱动。

6.仿真:选择Simulation,弹出SimulationControl对话框,设置仿真时间EndTime和步数Steps〉点击解决方案〉运行。

至此,一个简单的动力学建模、仿真就结束了。

其中连杆运动1s后的状态。

拓展:ADAMS是机械系统动力学自动分析软件,英文全称是AutomaticDynamicAnalysisofMechanicalSystems,该软件是美国机械动力公司开发的虚拟样机分析软件。

主要用于研究动力学仿真分析,这项技能对很多的工作者是必不可少的!。

AMESim与ADAMS联合仿真操作说明

AMESim与ADAMS联合仿真操作说明

AMESim与ADAMS联合仿真操作说明摘要:物理系统可能由各种元件组成,例如气动的,机械的,液压的,电子的以及控制系统等,所有的元件协同工作。

多学科领域系统和复杂多体系统之间的相互作用很难在单一的软件平台中来仿真。

解决的方案就是通过AMESim和专用的多体动力学软件ADAMS之间的接口,使得两者在仿真中协同工作。

本文结合天线的简单实例介绍AMESim与ADAMS联合仿真的操作过程。

关键词:AMESim ADAMS 联合仿真1.引言AMESim(Advanced Modeling Environment for Simulation of engineering systems)软件是由法国IMAGINE公司于1995年推出的多学科复杂领域系统工程高级建模和仿真平台,该软件不要求用户具备完备的仿真专业知识,采用面向系统原理图建模的方法,便于工程技术人员掌握和使用。

机构动力学分析软件ADAMS (automatic dynamic of mechanical system)集建模、求解和可视化技术于一体,能有效分析和比较多种参数方案。

运用AMESim与ADAMS的联合仿真,可以有效的对设备的动态过程进行分析,根据交互分析产生的结果来评价设备的性能,为了更加真实的符合实际情况,理论分析用来完成检验产生的数值结果。

这种虚拟产品开发方法与得出的结论将对设计人员提供一定帮助。

通过AMESim/ADAMS之间的接口,有两种方式实现联合仿真:(1)将模型从一个平台中输入到另一个平台中,采用单一的积分器进行计算。

(2)各个平台分别利用自己的积分器计算自己的模型,通过预先统一的通讯间隔进行信息交换。

2.软件环境要求首先AMESim软件需要4.2级以上版本; ADAMS需要2003级以上版本(含A/Control模块)。

其次必须要有Microsoft Visual C++ 编译器。

如果需要从ADAMS环境中使用接口,那么还强烈推荐Fortran编译器,这样可以将AMESim的模型编译成为ADAMS的子函数(Subroutine)。

Amesim 和 Adams联合仿真设置过程和关键点

Amesim 和 Adams联合仿真设置过程和关键点

高版本的Adams已经不再支持Adams导入Amesim这种联合模式(以Amesim 作为master的co-simulation也不行),但是将Amesim导入Adams或者以Adams 作为master的co-simulation还是没有问题的。

下表是兼容性对比图表(来自Amesim的help文档):下面讲述的过程是基于Amesim R13 、Adams 2012和VS 2009(32-bit):1、安装软件最好的安装顺序:VS , Adams,Amesim安装路径不要有中文和空格及特殊字符2、环境变量设置AME_ADAMS_HOME,指向Adams安装目录,如:D:\MSC.Software\MD_Adams\R3 ADAMS_CONTROLS_WTIME=203、安装完成后,确认在AMESim安装目录下(如:AMESim/v1300)已包含如下文件:nmake.exevcvars32.bat如果没有,从VS安装目录拷贝过来。

3、将adams库加入到Amesim路径中:完成之后在你的Amesim库列表中包含Import of Adams models库:4、以下以Amesim之中help自带的例子讲述联合仿真操作过程(简单、方便联合仿真调通)将例子拷贝到某个目录下,用Amesim打开.ame文件,编译器选择VC++编译,确保在同一个目录下生成了.dll文件:5、打开adams,设置路径(Select Directory…)到.ame文件所在位置(这步很关键,如果不选可能会出错)6、导入Adams的cmd格式文件,一般在%AME%\v1300\demo\Platform\1D3DCAE\MBS\AMESimAdams,如:D:\AMESim\v1300\demo\Platform\1D3DCAE\MBS\AMESimAdams7、选择solver:为了方便在仿真时看结果,可以选择Display,在Show Messages 后面选择Yes再选择编译器和dll文件,Executable 下拉菜单选择External;Solver Library 后面灰色出双击鼠标左键,找到.ame文件生成的.dll文件在Choice后面选择C++作为编译器此处有建议选择FORTRAN的,我的Fortran版本太低,当时无法计算;不过选择C++就能正常计算,一般情况也不需要再安装Fortran。

Matlab Amesim Adams联合仿真

Matlab Amesim Adams联合仿真

联合仿真可以充分利用各仿真软件的优点,从而简化建模实现快速仿真。

这里首先讲下如何实现联合仿真,工欲善其事,必先利其器。

一.Matlab与Amesim1. 安装好matlab与amesim。

要点:安装目录不要有空格,比如不要放到program files这个目录中。

2.安装编译器(compiler)Microsoft Visual C++ 6.0(必须)或者Compaq Visual Fortran Pro v6.6.0(可选),在安装过程中遇到设置环境变量的(environmental variance)选择‘yes’,免得以后自己添加麻烦3.拷贝Microsoft Visual C++ 6.0安装目录下\VC98\Bin\VCVARS32.BAT文件到Amesim的安装目录下。

比如:C:\Program Files\Microsoft Visual Studio\VC98\Bin中的VCVARS32.BAT拷贝到C:\AMESim\7.0.0下面4.设置Matlab环境变量,这样联合仿真时Amesim才能找到matlab。

在系统变量中添加‘MATLAB’,其值为Matlab的安装路径,如D:\MATLAB\R2009a。

5.在matlab中设置编译器(如下图)。

在matlab命令行里输入mex -setup,选择编译器Microsoft Visual C++6.0 ,最后选Y确定。

6. 在Amesim里选择编译器。

打开Amesim--tools--options--Amesim preferences选择Microsoft Visual C++7.在Matlab 的目录列表里加上AMESim与Matlab 接口文件所在的目录%AME%\matlab\amesim,其中%AME%是AMESim的安装目录,如果安装在C:\AMEsim ,则就加上C:\AMEsim\matlab\amesim。

(有的版本这个目录可能是安装目录\******ing\matlab\amesim)8.在matlab中set path中继续添加路径:%AME%\7.0.0\interface\simulink以及%AME%\7.0.0\interface\sl2ame9. 完成,实现amesim to simulink 和simulink to amesim 的联合仿真。

ADAMS与AMESim联合仿真实例2

ADAMS与AMESim联合仿真实例2

以AMESim为主软件,与Adams联合仿真ADAMS与AMESim的联合仿真分两种形式,一是将AMESim模型导入ADAMS中(需要Fortran 编译器),另一种是将ADAMS模型导入AMESim中,选取ADAMS2012自带的例子进行联合仿真,具体步骤如下:1、将ADAMS安装目录下名为antenna.cmd(X:/MSC.Software/Adams/2012/controls/examples/antenna/anten na.cmd,X代表Adams安装目录)的文件复制到工作目录中;2、将antenna.cmd导入ADAMS中如下图示;3、通过Settings—Interface Style—Classic将界面切换到经典模式,便于与教程相对照:图示:5、Build—System Elements—New,创建状态变量azimuth_position,control_torque,elevation_position,rotor_velocity;6、Build—System Elements—Modify修改变量7、通过Date Elements—Plant—Plant Input/Plant Output建立输入输出变量,并与状态变量连接起来8、右击azimuth—actuator将力与输入变量连接起来8、通过Controls—Plant Export,导出模型,完成相关设置后点OK;9、zuoye文件夹中生成以下文件:10、在AMESim中建立以下模型,如下图示通过Modeling—Interface block—Import Adams model,选择工作目录中刚刚生成的adams2amesim .inf文件完成如下图示的相关设置11、最终建立的AMESim模型如下图示:12、进行模拟仿真13、在Amesim中查看模拟结果14、在Adams/PostProcessor 中查看模拟结果。

AMESim与ADAMS联合仿真步骤及相关注意事项

AMESim与ADAMS联合仿真步骤及相关注意事项

AMESim与ADAMS联合仿真1、安装软件最好的安装顺序:VS , Adams,Amesim安装路径不要有中文和空格及特殊字符2、环境变量设置AME_ADAMS_HOME,指向Adams安装目录,如:D:\MSC.Software\MD_Adams\R3ADAMS_CONTROLS_WTIME=203、安装完成后,确认在AMESim安装目录下(如:AMESim/v1300)已包含如下文件:nmake.exevcvars32.bat如果没有,从VS安装目录拷贝过来(C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin)。

4、将adams库加入到AMESim路径中:五、如果提示MSSDK问题,安装GRMSDKX_EN_DVD.iso。

也就是安装Windows SDK7.1如果安装时报错,可按照方法:卸载比Microsoft Visual C++ 2010 x86 Redistributable - 10.0.30319 以及Microsoft Visual C++ 2010 x64 Redistributable - 10.0.30319更高的版本。

如果还出错,在安装时不要选择安装VC-Compiler,其它选项默认即可。

如果卸载了上面的两个组件,则需要安装VBVCRedist中的两个补丁,只需要选择两个卸载的补丁即可。

六、如果提示AsUtility_imp.lib的link错误,在C盘中搜索,找到该文件,再放到AMESim 模型所在工作目录。

(一般不需要此项。

)七、64位操作系统中:AMESim中选择Microsoft Visual C++编译器,Subplatform type选择win64。

如下图八、接口类型为ADAMS还是AdamsCosim,决定于是用离散耦合,还是连续的。

Adams or AdamsCosim depending whether you want to run discrete coupling or continuous export选择AdamsCosim则adams中应该为Discrete。

(完整版)Matlab与adams联合仿真+仿真结果动画的保存与后处理

(完整版)Matlab与adams联合仿真+仿真结果动画的保存与后处理

Matlab与adams联合仿真实例本实例以matlab为外部控制程序,使用PID算法控制偏心杆的摆动,使偏心杆平衡到指定位置。

1.在adams/view中建立偏心杆模型图1 偏心杆模型1)新建模型如图所示,将Units设置为MMKS。

设置自己的Working Directory,这里设置为C:\adams\exercise。

点击OK按钮。

图2 新建模型对话框2)创建连杆设置连杆参数为Length=400,Width=20,Depth=20,创建如图所示的连杆。

图3 创建连杆3)创建转动幅在连杆质心MARKER点处创建转动幅,旋转副的参数设置为1Location和Normal To grid将连杆与大地相连。

图4 创建转动幅4)创建球体球体选项设置为Add to part,半径设置为20,单击连杆右侧Marker点,将球体添加到连杆上图5 创建球体5)创建单分量力矩单击Forces>Create a Torque(Single Component)Applied Forces,设置为Space Fixed,Normal to Grid,将Characteristic设置为Constant,勾选Torque并输入0,单击连杆,再点击连杆左侧的Marker点,在连杆上创建一个单分量力矩。

图6 创建单分量力矩2.模型参数设置1)创建状态变量图7 新建状态变量点击图上所示得按钮,弹出创建状态变量对话框,创建输入状态变量Torque,将Name 修改为.MODEL_1.Torque。

图8 新建输入状态变量Torque再分别创建状态变量Angel和Velocity(后面所设计控制系统为角度PID控制,反馈变量为Angel,Velocity为Angel对时间求导,不需要变量Velocity,这里设置Velocity是为了展示多个变量的创建)。

设置Angel的函数AZ(MARKER_3,MARKER_4)*180/PI,Velocity的函数为WZ(MARKER_3,MARKER_4)*180/PI。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

AMESim与ADAMS联合仿真操作说明1.引言AMESim(Advanced Modeling Environment for Simulation of engineering systems)软件是由法国IMAGINE公司于1995年推出的多学科复杂领域系统工程高级建模和仿真平台,该软件不要求用户具备完备的仿真专业知识,采用面向系统原理图建模的方法,便于工程技术人员掌握和使用。

机构动力学分析软件ADAMS (automatic dynamic of mechanical system)集建模、求解和可视化技术于一体,能有效分析和比较多种参数方案。

运用AMESim与ADAMS的联合仿真,可以有效的对设备的动态过程进行分析,根据交互分析产生的结果来评价设备的性能,为了更加真实的符合实际情况,理论分析用来完成检验产生的数值结果。

这种虚拟产品开发方法与得出的结论将对设计人员提供一定帮助。

通过AMESim/ADAMS之间的接口,有两种方式实现联合仿真:(1)将模型从一个平台中输入到另一个平台中,采用单一的积分器进行计算。

(2)各个平台分别利用自己的积分器计算自己的模型,通过预先统一的通讯间隔进行信息交换。

2.软件环境要求首先AMESim软件需要4.2级以上版本;ADAMS需要2003级以上版本(含A/Control模块)。

其次必须要有Microsoft Visual C++ 编译器。

如果需要从ADAMS环境中使用接口,那么还强烈推荐Fortran编译器, 这样可以将AMESim 的模型编译成为ADAMS的子函数(Subroutine)。

该接口支持的操作系统包括Windows、Sun、SGI和IBM。

3.AMESim与ADAMS接口操作要成功使用接口, 必须在Windows中设置环境变量%AME_ADAMS_HOME%, 该环境变量的值为ADAMS的安装路径(例如C :\ADAMS2003。

注意在ADAMS的安装路径中不能出现空格)。

如果需要从ADAMS环境中使用接口,那么还需要将dfvars.bat文件拷贝至AMESim的安装路径下。

3.1.在ADAMS中设置用于输入到AMESim的模型在这种情况下,AMESim是主控软件,用户需要在AMESim中运行并控制ADAMS的仿真进程。

从ADAMS输出到AMESim有两种方式:1.共同仿真模式,AMESim通知ADAMS在给定的时间间隔提供它的输出。

由ADAMS 自己来求解它的模型。

2.连续模式,AMESim从ADAMS输入完整的系统模型并将所有的方程集成起来在AMESim中求解,此时ADAMS只起到函数评估器的作用。

不管上述哪种模式,在ADAMS中的设置过程是一样的。

用户只需要在AMESim中选择是共同仿真方式或是连续模式输出方式。

3.1.1:创建/检查需要交换的变量。

在这个步骤中,用户需要检查一些状态变量的定义,使用这些状态变量作为两个软件间的交换变量。

例如, 如果用在AMESim建立的液压作动器模型来驱动ADAMS中建立的机构模型, 那么这些变量就应该是力、位移以及速度等。

事实上, AMESim需要根据位移和速度计算得到力。

ADAMS中的输出变量, 通常是速度和位移, 主要是使用ADAMS内部函数来定义;如AZ()用于角度测量,WZ()用于转速,DM()用于位移。

图1 ADAMS中创建输出注意变量的单位。

也就是说需要注意ADAMS中变量的单位和AMESim中的单位之间是否一致, 如果不一致而用户又不希望分别在AMESim和ADAMS中修改单位, 那么可以在AMESim的模型中加入信号控制库中的增益模块来实现单位的协调。

ADAMS的输入变量,通常是力或者扭矩, 以标准的单元使用, 比如单个单元力/扭矩或者通用力(6个元件)。

在创建时, 这些变量设置为0,因为它们的值是由其它软件(AMESim)计算得到。

在本例中, 唯一的输入变量是扭矩, 采用函数VARVAL来定义。

在ADAMS/View中,点击菜单Tools/Database Navigator…来定义azimuth_zctuator单元。

点击菜单Build/System Elements/StateVariables/Modify…来定义状态变量control_torque。

图2 ADAMS中创建输入当用户完成创建输入、输出变量后,下一步需要在ADAMS中定义接口了。

3.1.2:定义接口利用上一步创建的变量,使用现存的Plant Input和Plant Output建立接口模型。

Plant Input:{control_torque}, 其中扭矩以单一单元扭矩使用, 即VARVAL(control_touque)。

Plant Output : {rotor_velocity, azimuth_position}, 这些变量由ADAMS的函数计算得到。

如下图所示, 用户可以通过Tools菜单中的Database Navigator来设置。

图3 在ADAMS中建立接口模型 至此,ADAMS的模型就全部设置好了。

3.1.3:输出系统模型用户将通过“Controls”菜单输出系统模型, 如下图所示。

图4 从ADAMS中输出系统模型在上面的对话框中,用户需要填入以下内容:•ADAMS中用于存储结果的文件名(File prefix);• 在第二步中创建的“plant input”和“plant output”;• 在控制包(Control package)中选择“EASY5_和_MATRIXx”;• 输出类型,选择线性还是非线性;• 如果用户希望让ADAMS在运行系统前计算初始稳态分析的话,则需要选择“yes”反之选“no”;• 如果需要的话,填入用户定义的库名字。

•经过上述的步骤后,ADAMS将在用户的当前的工作路径中创建了3个文件:adams2amesim.inf…adm和…cmd。

用户只需要注意adams2amesim.inf即可。

在此简单介绍一下这三个文件:inf文件包括接口软件的基本信息:ADAMS的路径,ADAMS写入的文件名,求解器需要的信息,交换变量的定义,状态变量的数量。

adm文件包括ADAMS求解器进行仿真运算时需要读取的ADAMS系统的信息。

cmd文件包括所有AMDAMS/View需要的相关系统的信息。

到此为止, 在ADAMS软件中的操作部分就完成了。

3.2 在AMESim中输入模型用户已经在ADAMS中定义并生成了接口使用所需要的文件:.inf, .adm以及.cmd文件。

然后将在AMESim中建立的相关部分的模型保存到上述三个文件所在的目录中。

本例中, AMESim的模型如下图所示:图5 在AMESim中建立的模型3.2.1:打开AMESim中的Interface菜单,选择Import Adams model,如下图所示。

图6 在AMESim 中导入模型在随后打开的对话框中选择在ADAMS中生成的.inf文件, 然后可以出现下列窗口:图7 AMESim中的对话框在左边的窗口中,AMESim将会自动将在ADAMS中定义的输入输出变量填入到相关的空格中。

用户可以检查变量的名字并为该接口命名。

在右边的窗口中各项的含义如下:•Output prefix name : 是ADAMS输出文件的名字;•User executable : 必要时可以在此加入ADAMS模型中需要的用户自定义应用库的路径, 它通常包括一些子函数。

•Simulation mode:Continuous代表将ADAMS的模型全部输入到AMESim 中进行仿真, Discrete代表共仿真。

•Animation mode : Interactive代表在仿真的同时,运行A/View进行动画处理。

Batch代表在仿真的时候不运行A/View, 而是仿真结束后根据需要,用户自己运行A/View进行动画处理。

•Output step size : 给出ADAMS写入结果文件时的时间间隔。

最后三项可以选择缺省设置。

3.2.2:从AMESim的Sketch模式进入AMESim的Parameter模式后,点击接口方块, 进入Co-simulation接口方块参数设置。

根据用户选择的接口方式不一样,需要设置的参数稍微有所区别。

如果用户选择的是共仿真方式,那么需要设置的参数如下图所示:图8 AMESim共仿真模式参数设置其中值得注意的是communication interval, 该参数的含义是共仿真时AMESim和ADAMS的通讯步长。

如果用户选择的是连续输出方式, 那么需要设置的参数如下图所示:图9 AMESim连续模式参数设置图3.2.3:进入AMESim的Run模式,运行AMESim的仿真。

如果用户选择的是共仿真方式, 那么此时AMESim会启动A/Solver, 两个软件同时计算。

3.3.在两个软件中分析仿真结果仿真的结果可以在AMESim与ADAMS中均可以访问。

在AMESim中, 点击接口模块, 用户可以获得下列仿真结果:图10 AMESim中的仿真结果在ADAMS中,用户可以将仿真结果加载到模型中。

打开ADAMS的File菜单, 选择Import后选择ADAMS/Solver Analysis(req, gra, res),选择在联合仿真时创建的三个文件中的一个并将输入相关联的模型名字, 然后用户可以在ADAMS中进行动画演示以及通过A/Postprocessor来绘制相关变量的曲线,如下图所示:图11 ADAMS中的仿真结果 4.结论:同时利用了AMESim和ADAMS的最佳功能,发挥了各个软件平台的优势分别建立各个子系统的模型并通过模型输出或者共仿真来实现联合仿真。

避免在不同平台之间重新建立模型,大大提高了建模过程中不同工作组之间的通讯和连续性。

采用AMESim和ADAMS之间的接口,可以容易的利用两个软件高效便捷的进行联合仿真。

相关文档
最新文档