ADAMS学习心得
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、如何永久改变ADAMS的启动路径?
在ADAMS启动后,每次更改路径很费时,我们习惯将自己的文件存在某一文件夹下;事实上,在Adams的快捷方式上右击鼠标,选属性,再在起始位置上输入你想要得路径就可以了。
2、如何将回放过程保存为AVI格式的电影文件,以便在其他场合使用?
点击plotting(或F8)进入postprocessor ,右键--load ANIMATION,点击"play"开始仿真,点击"record"开始录制动画。
3、a/car Template Builder.为什么我看不见这个菜单选项??
答:需要改一下的!在你的系统盘下去面。例如我的C:\Documents and Settings\rickytang(rickytang为我的用户名)下面有一个.acar文件,用记事本打开,然后将
! Desired user mode (standard/expert) ENVIRONMENT MDI_ACAR_USERMODE standard
改为:! Desired user mode (standard/expert) ENVIRONMENT
MDI_ACAR_USERMODE expert
再启动car就可以看见选项了!
进入car后按F9或者在tools下面选第一项就可以在模板与标准界面之间切换!
4、关于communicator
communicator的出现是由于car是分块建模(子系统)为基础,而communicator 告诉ADAMS软件子系统之间如何连接,所以communicator的名字要完全一样才行,而且对于某一特定的子系统而言,有多少与外部系统、testrig的连接就需要有多少个communicator。
suspension parameter代表悬架特性反映,可参考公用模板中
_trailing_arm.tpl和_multi_link.tpl。communicator表示数据传递的。纵臂、螺旋弹簧、减震器有一端是外部连接,需要建立mount,然后会自动产生输入communicator.
输出communicator一般有以下8个:(它主要是把数据传递给轮胎的)
co[lr]_camber_angle
co[lr]_suspension_mount
co[lr]_suspension_upright
co[lr]_toe_angle
co[lr]_tripot_to_differential
co[lr]_wheel_center
cos_driveline_active
cos_suspension_parameters_ARRAY
可参考公用模板中的悬架模型来建立。
5、test-rig是做什么用的??
CAR中共有两种试验台(TEST_RIG),一种是MDI_SUSPENSION_TESTRIG,另一种是MDI_SDI_TESTRIG,前者用于悬架仿真,后者用于整车仿真,试验台是通过COMMUNICATOR与其它子系统链接的,请仔细阅读有关COMMUNICATOR的帮助。
6、ADAMS和MATLAB联合仿真经验谈
论坛中有关adams和simulink联合仿真的帖子不少,部分是成功者的经验,多数是初学者的疑惑。怎么安装和找到control模块,怎么在control中生成必需的中间文件,为什么仿真会失败?本人也曾对这些问题困惑过,经过一番摸索,积累了一点经验,愿与大家商讨。
对于第一个问题,我想就不必多说了。对于第二个问题可以参考郑建荣的ADAMS 虚拟样机技术入门与提高第十三章机电一体化系统仿真部分,书中有两个问题需要注意:(1)书中介绍的ADAMS版本好像是10.0的,对于使用12.0的有一些差异:在Plant Export设置中无法直接选择输入输出变量control_torque、azimuth_position、rotor_velocity,它们分别由专门的宏tmp_MDI_PINPUT和tmp_MDI_POUTPUT表示。(2)天线仰角的方位角似乎应该是elevation_position,而不是azimuth_position,后者是天线支撑的转角。其它按文中所述步骤进行,File Prefix栏可随便写,不必一定用ant_test,最后在ADAMS的当前目录下生成四个文件:
ant_test.cmd
ant_test.adm
ant_test.acf
ant_test.m
第三个问题基本上是由于没有正确设置路径,找不到所需的文件造成的,这也说明了control模块在设计时没有很好地考虑健壮性问题。具体来说simulink在开始仿真时要找到以下这些文件:
1、上述生成的文件,主要是ant_test.m和ant_test.cmd,ant_test.m用于在simulink中对control模块环境和一些参数进行初始化,它必须在仿真前执行;ant_test.cmd是天线模型定义文件,由于这里ADAMS是作为simulink创建的一个子进程而被启动的,它所需的模型文件名由simulink的调用参数传过来的,所以simulink要能够定位ant_test.cmd(我一开始把它放到adams当前目录下,频频失败)。
2、adams_plant.dll,它其实就是adams_sub的核心,ADAMS提供一个S函数,用于adams和simulink联合仿真的调度和通讯,如果simulink找不到它,则仿真就不能进行。adams_plant.dll位于\ADAMS12\controls下。
解决方法是在simulink中设置好上述文件所在的路径,但一个更方便的方法是把它们都拷到matlab的当前工作目录下,一般是\MATLAB6p1\work。经过以上设置,应该不会再出现仿真失败的对话框了吧。另外,如果因为一些原因仿真失败,需重启matlab,否则的话因为一些运行库的错误信息还保留在系统中,即便改
正了错误仿真也会失败,只有重新启动初始化这些库。
我用的是adams12和matlab6.1,以前流传它们之间存在不兼容的问题,其实都是上述原因造成的,不存在版本兼容的问题,adams和matlab都是成功的商业
软件,在发布前经过了大量的测试,如果不兼容他们不会置若罔闻,现在好像还没有他们的官方声明吧。
确实,大部分的失败是由于没有正确设置工作路径而造成的,我想既然是针对一个项目进行仿真,那干脆为自己的项目建立一个文件夹,使ADAMS和MATLAB的工作区都相同,如发现有时仿真不成,可把adams_plant.dll也事先拷贝到同一文件夹里,这样方便又不会出大错。
另外,对于还不大熟悉MATLAB的来说,在重仿时最好重ADAMS里重新导入MATLAB,并且必须在MATLAB里重新运行(很多时候MATLAB原来产生的变量被替换了),而不能只是简单的重新运行MATLAAB里建立的SIMULINK模型。
总的来说,我感觉两者的联合仿真,困难之处不在于两者的接口问题,更关键的是我们所建立的机械系统的数学模型能否正确的建立,这将直接影响我们能否实现预想的控制目的,因为之所以要联合MATLAB,就是因为系统里各个量关系不
好确定,要是容易确定的直接用ADAMS 里的函数等也可以控制了,对吧?所以
要想更顺利的实现两者联合仿真的成功率,也需要对模型有准确的把握,不知道各位能否就机械方面较常见的系统归纳一下它们的数学模型,结合ADAMS实现更好的控制。
7、关于转动问题,如何判断转动副的方向?
初学时,对转动副的运动容易糊涂,下面以图说明。
图1,构件4固定在地面上,在构件1和构件2上加了一个转动副。