关于Adams错误Internal Error during execution of command 3. AEI_Initialization: Error in initialization.

news/2024/7/4 7:19:02

关于Adams错误Internal Error during execution of command 3. AEI_Initialization: Error in initialization.解决方法

  • 问题描述
  • 联合仿真流程
  • 解决方法

问题描述

笔者在进行Matlab与Adams联合仿真时遇到了如下图所示的错误。
问题描述

联合仿真流程

为了详细说明问题,现简述联合仿真流程。

  1. 在Adams中设置好仿真模型,设置系统变量,导出机械系统Control_Plant_[N]
    【注意】导出时的Adams模型不能有设置为失效的部分,否则会报如下错误。
    【提示】驱动方式最好使用速度加速度,否则运行到运动学奇异位置可能发生位置突变(例如:翻腕等),即使是进行正运动学控制(正运动学控制:控制电机运动;逆运动学控制:控制末端运动)。
    ErrorCausedByDeactivation

  2. 打开Matlab,并设置路径为与Adams相同的路径

  3. (可选) Matlab命令行运行load('[Data_Workspace].mat'),加载所需数据。

  4. Matlab命令行运行Controls_Plant_[N],导入Matlab与Adams接口配置参数。

  5. (可选) 若之前存在文件adams_sys_.slx,重命名、移动或删除该文件,以保证下一步的运行。

  6. (可选) Matlab命令行运行which adams_sys,查看adams_sys.m文件所在位置。在资源管理器中打开该位置,将adams_sys_template.mdl.r2011b文件另存为adams_sys_template.mdl,并覆盖原文件。
    【注意】仅输入输出格式与上次不变,才可以省略该步骤。

  7. Matlab命令行运行adams_sys,这样将在根目录下生成Adams最新一次导出的adams_sys_.slx文件。其中,该文件中有需要使用的模块adams_sub

  8. 新建[File_Name].slx文件,复制adams_sub模块到该文件,进行Simulink搭建。

  9. 双击adams_sub模块,进入并双击MSC Software模块,配置相关参数。
    【注意】
    若需要打开Adams界面实时仿真,则将Animation mode选项由batch改为interactive
    一般Simulation mode设为discrete
    Communication interval改为Simulink 的仿真时间步长。

  10. 运行Simulink。

解决方法

该问题主要是由于Simulink中的adams_sub模块在路径中找不到需要的文件导致的。

需要注意的是,虽然在Matlab中设置了Simulink当前路径,但是adams_sub模块不一定在当前路径中加载文件。

这是由于在Matlab中使用命令Control_Plant_[N],生成Adams导出到Simulink的接口参数时,路径参数以字符串的形式被保存在了工作区,这将影像adams_sub模块调用文件路径。

通常地,ADAMS_cwd与被导出的ADAMS模型路径有关,ADAMS _sysdir与ADAMS的安装路径有关。

在这里插入图片描述
需要检查:

  1. ADAMS_cwd是否与Matlab工作路径相同。
  2. ADAMS_sysdir + 'controls\matlab\'路径下是否存在以下文件:
    • adams.tlc
    • adams_sys.m
    • adams_sys_template.mdl
    • adams_sys_template.mdl.r2011b
    • decode.m
    • deriv.tlc
    • io_template.mdl
    • set_some_params_states.m
    • setio.m
    • setup_rtw_for_adams.m
    • start_adams_daemon.m
  3. ADAMS_sysdir + 'controls\win64\'路径下是否存在以下文件:
    • adams_plant.mexw64
    • plant.lib
    • scontrols.exe
    • ut_driver.exe
    • vcontrols.exe

另外,若同一个Adams模型被导出了多次(具有相关的多个Control_Plant_[N].m),还应检查接口参数中的ADAMS_prefix,该参数对应的Control_Plant[N].m是否在Matlab工作路径中。

笔者通过检查以上内容,解决了该问题。

针对不同的软件版本(笔者Adams2019+Matlab2016),具体内容可能有所不同。

附加:
Internal Error during execution of commond 12 属于Adams内模型问题,需要检查模型质量参数(不能小于0等)。

希望为大家提供一点思路,若有疏漏之处,欢迎大家批评指正(^∀^●)ノシ

哎最后吐槽一下,Adams真的迷啊,头秃了头秃了


http://www.niftyadmin.cn/n/3613239.html

相关文章

写我的语文老师---代序

马上大四了,快毕业了,校园生活即将过去,将来可能还要考研,但是至少一段时期内不会再有学校生活了,很是怀念. 高中的生活已过去将近4年,其中有一位很特别的老师,我一直在找他,可惜一直都没找到他的联系方式,他是我们高二的语文老师,我把他当成我的知己. 他是在一个特殊的情况下带…

x264中重要结构体说明

首先解释一下cli_opt_t的这个_t代表结构图可能是type的意思。同时还有很多i_ b_等作为前缀的变量,其中的I_表示int类型的变量 b表示bool类型的。依次类推。 正式进入主题。 typedef struct { int b_progress; int i_seek; hnd_t hin; hnd_t hout; FILE *qpfile; …

ARM存储管理单元MMU和存储保护单元MPU

MMU提供的一个关键服务是,能使各个任务作为独立的程序在其自己的私有存储空间运行.地址转换过程允许运行的多个程序使用相同的虚拟地址,而各自存储在物理存储器的不同位置.区域可以是活跃的,也可以是睡眠的:活跃区域包含当前系统正在使用的代码或数据;睡眠区域包含当前不使用,但…

静态页转换平台(StaticPol)-静态页生成终极解决方案

我本身非常不喜欢写文字材料,但是这个东西相信是很多人都需要的,把心得写出来和大家分享一下,也好让大家都努力PP,以助于尽快完善这个东东,早日贴出来供大家下载使用。 为什么要生成静态页? 这个问题咱们就…

五线电阻触摸屏的工作原理

在触摸屏的四个端点RT,RB,LT,LB四个顶点,均加入一个均匀电场,使其下层(氧化铟)ITO GLASS上布满一个均匀电压,上层为收接讯号装置,当笔或手指按压外表上任一点时&#xff…

jQuery学习笔记:Ajax(二)

接上篇“jQuery学习笔记:Ajax(一)”。3、jQuery.get(url,[data],[callback],[type])通过远程 HTTP GET 请求载入信息。这是一个简单的 GET 请求功能以取代复杂 $.ajax 。请求成功时可调用回调函数。如果需要在出错时执行函数,请使用 $.ajax。返回值 XML…

四线电阻触摸屏与五线电阻触摸屏的区别和技术比较

项目 OneTouch -4W四线电阻 OneTouch -5W五线电阻 物理结构 1、屏幕的最底层为一般玻璃板 2、玻璃上有两层 ITO Film,上层用以读取y轴电压值,下层用以读取x轴电压值,两层film紧密靠在一起,镀有ITO的面相对&a…

LED和LCD的区别

LED是发光二极管Light Emitting Diode的英文缩写。 LED应用可分为两大类:一是LED单管应用,包括背光源LED,红外线LED等;另外就是LED显示屏,目前,中国在LED基础材料制造方面与国际还存在着一定的差距&#xf…