Administrator
Administrator
发布于 2025-02-26 / 10 阅读
0
0

四、联合仿真案例制作(Simulink+AMESim+Adams)

教程介绍

本教程适用于以simulink为主导,在simulink中搭建仿真流程,并调用AMESim和Adams完成计算的联合仿真项目。 本次联合仿真案例中AMESim模块将输入参数加0.5,然后输出;Adams模块模拟了一个小球从0位置处自由下落,同时收到向上的力时的运动过程,该力的施力物体可以简单理解为带阻尼的弹簧。 接下来我们正式开始。

准备工作

  1. 完成第一节教程,可以从AMESim中直接启动Matlab;
  2. 完成第二节教程,在AMESim项目文件路径存有给输入加1的项目文件;
  3. 完成第三节教程,建立了Adams动力学模型,在AMESim项目文件路径下存有Adams项目文件和Controls_Plant生成的几个文件。 在这里插入图片描述

联合仿真案例制作

  1. 启动AMESim,打开AMESim项目文件,并切换到SIMULATION; 在这里插入图片描述 案例中K为0.5,将输入参数“to_ame_1”加1输出给“from_ame_1”; 此时AMESim路径下会生成很多文件如下: 在这里插入图片描述
  2. 在AMESim中点击tools-Matlab,启动matlab;
  3. 在启动的Matlab中创建一个Simulink项目,命名为“Main_Simulink”;
  4. 添加“AME2SL”模块,并添加mexw64文件; 在这里插入图片描述
  5. 在Matlab中打开项目文件夹中Adams生成的.m文件,并运行; 在这里插入图片描述
  6. 在Matlab的命令窗口中输入“adams_sys”,打开adams_sys.xls 在这里插入图片描述
  7. 将其中的“adams_sub”模块复制到“Main_Simulink”Simulink项目中; 在这里插入图片描述
  8. 在Simulink中搭建仿真流程,具体操作步骤不做演示,最终项目案例如下: 在这里插入图片描述 案例实现的内容简单来说就是将小球挂在弹簧上,弹簧另外一端在沿着Y方向做正弦运动,示波器显示了弹簧两端的分别位移。
  9. 在simulink中双击adams_sub,再双击ADAMS Plant,在打开的窗体中将Animationmode修改为Interavctive; 在这里插入图片描述
  10. 提交计算,在示波器中可显示小球位置和弹簧另一端的位移曲线:在这里插入图片描述
  11. 在simulink的参数进行调整,可以看到曲线发生变化; 将弹簧弹力由200调整为100,示波器中两条曲线的振幅差异增大一倍左右; 在这里插入图片描述
  12. 在AMESim中修改K值为0,保存项目,在Simulink中提交求解; 在这里插入图片描述 可以观察到蓝色曲线的起始点从0.5变为了0,同时黄色曲线开始时的运动状态由向上变为向下落。符合实际情况。

总结

  • 本次教程中主要分4部分:环境配置、与AMESim的联仿、与Adams的联仿、三个软件的联合仿真。在这个过程中环境配置尤为重要,是每一步成功的基础。

  • 联合仿真原本就是一项复杂的仿真任务,而对于一些复杂的系统,变量传递路径繁琐,这对联合仿真系统的开发和调试增加了更大难度。所以在开发联合仿真系统时,一定要心细细心再细心

  • 对与工程师来讲,同时掌握三个领域的知识也是一种挑战,可能需要耗费较大的时间成本。在此过程中要勇于利用资源,例如请求领域中更加专业的人员的帮助。

  • 最后,联合仿真技术路线非常多,本次教程是常用的一种技术路线。但存在一定的缺陷,例如每次仿真开始与结束需要反复启动和结束Adams进程。这个行为在复杂模型仿真是会大幅度降低调试效率和仿真效率。后续会有利用Adams用户子程序完成联合仿真的相关教程,希望持续关注。

  • 这里推荐一个比较好用的联合仿真软件:模型总线。它是一个支持跨领域、跨工具、跨尺度集成仿真的通用环境,适用与多系统并行求解联合仿真,不仅可以实现“白盒集成”,更显著提升了效率。该软件是西安中锐创联科技有限公司开发的商用软件,需要的可以了解一下。公众号直接搜“模型总线”即可。

最后

本次课程是产生的工程文件和word版本教程需要可以后台发送消息获取。

《基于“ADAMS用户子程序”的联合仿真方法》正在编辑中,敬请期待......

相关课程

环境配置

AMESIM+matlab仿真案例制作

Adams+Simulink仿真案例制作


评论