找回密码 注册 QQ登录
开思网工业级高精度在线3D打印服务

iCAx开思网

CAD/CAM/CAE/设计/模具 高清视频【积分说明】如何快速获得积分?快速3D打印 手板模型CNC加工服务在线3D打印服务,上传模型,自动报价
查看: 19744|回复: 2
打印 上一主题 下一主题

[求助] Matlab读取Adams/Control生成的接口文件时出错!

[复制链接]
跳转到指定楼层
1
发表于 2008-4-11 12:12:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多同行朋友,交流,分享,学习。

您需要 登录 才可以下载或查看,没有帐号?注册

x
联合仿真时,首先要由Adams/Control生成接口文件
比如:test.adm, test.cmd, test.m
然后在Matlab中读test.m时就出错,如下:

DECODE Decode convolutional codeword using Viterbi algorithm.

    WARNING : This is now an obsolete mode of DECODE.  Please use VITDEC
              instead.

    See also ENCODE, CYCLPOLY, SYNDTABLE, GEN2PAR.
??? Output argument "msg" (and maybe others) not assigned during call to "D:\Program Files\MATLAB71\toolbox\comm\comm\decode.m (decode)"

好像是说decode函数读变量有问题

Matlab与Adams都设置了相同的工作目录
难道由于版本不行?Matlab7.1.0.246(R14) service pack 3;Adams2005

望高手赐教,万分感谢!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 赞一下!赞一下!
2
发表于 2008-4-11 16:48:22 | 只看该作者
哈哈,问题解决了
仔细研究了test.m文件,其中有段代码

[flag, topdir]=dos('adams05 -top');
if flag == 0
   temp_str=strcat(topdir, arch);
   addpath(temp_str)
   temp_str=strcat(topdir, '\controls\', arch);
  addpath(temp_str)
  temp_str=strcat(topdir, '\controls\', 'matlab');
   addpath(temp_str)
   ADAMS_sysdir = strcat(topdir, '');
else
   addpath( 'd:\MSC~1.SOF\MSC~1.ADA\2005\win32' ) ;
   addpath( 'd:\MSC~1.SOF\MSC~1.ADA\2005\controls\win32' ) ;
   addpath( 'd:\MSC~1.SOF\MSC~1.ADA\2005\controls\matlab' ) ;
  ADAMS_sysdir = 'd:\MSC~1.SOF\MSC~1.ADA\2005\' ;
end

把flag==0改成flag==1,让if为假,直接执行else后的语句
这段的意思就是加载三条路径,if为真时不知道为什么错

这段正确了,后面decode函数的错也就没了
这是参考了别人经验,可能有高手早知道flag==0这个地方有问题吧
3
发表于 2009-5-9 08:01:29 | 只看该作者
请问楼主 :
我只会用adams生成  test.m文件
而不知道test.adm, test.cmd, 是怎么生成的
要是方便的话加我QQ287334873
望不吝赐教
非常感谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3D打印手板模型快速制作服务,在线报价下单!

QQ 咨询|手机版|联系我们|iCAx开思网  

GMT+8, 2025-2-19 06:45 , Processed in 0.023542 second(s), 13 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2025 www.iCAx.org

快速回复 返回顶部 返回列表