john152 发表于 2011-3-16 08:24

ADAMS/Rail与Matlab/Simulink联合仿真设置方法

本人用ADAMS2005r2和Matlab7.1版本,其他版本未尝试
下面的步骤是在模板中建立相应状态变量的基础上进行的。
1.首先将adams的路径改为matlab下的work工作目录;file/select directory
2.进行only-files的动力学仿真,比如analysis name设置为test1car(这里的仿真时间和步长可以设置得非常小,比如0.01s和1个步长)
3.在设置好input和output后,用controls/plant export将模型输出,比如file prefix设置为semiactive1s
4.再进行一次only files的动力学仿真,设置与前一次相同;
5.这时,你将在work文件夹下找到6个文件,如:
test1car_dyn.acf
test1car_dyn.adm
test1car_dyn.log
test1car_dyn.nam
semiactive1s.adm
semiactive1s.m
6.用记事本把 test1car_dyn.acf 打开,将前4行和后3行删掉,剩余内容为:
array/3, numbers = 2, 1, 50.000000
simulate/static
control/function=user(917,6,50.000000)
control/function=user(300,50.000000,328)
7.用记事本打开semiactive1s.m,将ADAMS_prefix = 'semiactive1s' 项修改为:
ADAMS_prefix = 'test1car_dyn' ;
再将ADAMS_init = '' 项修改为:
ADAMS_init = 'file/command=test1car_dyn.acf' ;
8.打开matlab,在命令窗口输入:semiactive1s,按回车,将显示出所有的输入和输出变量
再输入命令:adams_sys,后回车,将出现adams模型窗口,把adams_sub拷贝到新的simulink窗口,关掉adams_sys,注意:不要保存修改(弹出save *** before closing?时选择NO),不然下次会出错
9.建立控制系统,进行仿真即可

仿真时易出现各种错误,有很多是adams与matlab信息交换不畅造成的,一般解决方法是:
1.关掉防火墙或杀毒软件,比如卡巴斯基开着的话,仿真总是失败
2.彻底关掉matlab,重新执行各种操作

牛小贱 发表于 2013-10-24 11:42

{:{39}:}

周来军 发表于 2013-10-25 17:37

楼主,你这是从别的地方复制粘贴过来的吧?

牛小贱 发表于 2013-12-3 20:34

本帖最后由 牛小贱 于 2014-11-3 19:19 编辑

{:{39}:}不错的分享!!

john152 发表于 2013-12-5 20:12

周来军 发表于 2013-10-25 17:37 static/image/common/back.gif
楼主,你这是从别的地方复制粘贴过来的吧?

不是粘贴过来的,是我自己写的啊

牛小贱 发表于 2013-12-7 16:28

本帖最后由 牛小贱 于 2014-11-3 19:20 编辑

{:{39}:}谢谢分享,按照楼主的方法,搞出来了!

450504625 发表于 2014-10-23 11:03

楼主老大 您好 上面第3步是如何设置的?即怎样在adams/rail中设置input和output呢??

john152 发表于 2014-11-3 11:06

450504625 发表于 2014-10-23 11:03
楼主老大 您好 上面第3步是如何设置的?即怎样在adams/rail中设置input和output呢??

可以不用设置input和output,直接在输出窗口中点右键,选择状态变量即可。

牛小贱 发表于 2014-11-3 19:22

450504625 发表于 2014-10-23 11:03
楼主老大 您好 上面第3步是如何设置的?即怎样在adams/rail中设置input和output呢??

设置input和output,只是方便输入,可以不用的!就算很复杂、很多输入,也可以用“Browse”+Ctrl选择多个状态变量输入的……
页: [1]
查看完整版本: ADAMS/Rail与Matlab/Simulink联合仿真设置方法