24小时热门版块排行榜    

查看: 4393  |  回复: 0

下雨不下雨

新虫 (初入文坛)

[交流] ADAMS常见问题解答(一)

adams/car悬挂模板中如何建立suspension parameters array

adams/car悬挂模板中要必须有一个悬挂参数数组suspension parameters array(一般为转向节主销轴线)输出通讯器将仿真时的转向运动提供给试验台。我的后悬挂模板是自己创建的,其它通讯器我都已经添加好,问题是如何添加这个悬挂参数数组输出通讯器,请版主及各位给出过程!多谢了!都摸索了几天了!哎

知道你的后悬架是什么结构,独立的还是非独立的。
如果是独立悬架的话,选择geometry-->independent,选择两个不同的part,具体可参考双横臂独立悬架和麦弗逊悬架的设置;
如果是非独立悬架的话,选择geometry-->dependent,选择1个相同的part-后轴,然后选择两个hardpoints来定义,具体可参考quadlink_axle模板

ADAMS和matla联合仿真所用函数

adams_plant.dll
plant.lib

adams_server.py
decode.m
一共4个,前两个在view和matlab联合仿真中用,用法是放在两个软换共同的目录下(仿真目录,不含中文路径)。后两个在car与matlab仿真中需要加进去。哈哈,共同学习,祝成功!

柔性体问题

请教如何查看柔性体某一节点的应力?我点durability的nodal plots后并没有什么曲线显示出来啊?
请高手们解释的清楚一点,多谢了!
启动durability,然后nodal plots,node list选择柔性体上一个节点,然后勾选所要查看的应力
进入后处理load plot,在source一栏选择Result Sets,找到你刚才建立的柔性体和对应的节点应力。

驱动控制文件
这是我编制的dcf文件:
  $---------------------------------------------------------------------MDI_HEADER
  [MDI_HEADER]
  FILE_TYPE     = 'dcf'
  FILE_VERSION  = 2.0
  FILE_FORMAT   = 'ASCII'
  (COMMENTS)
  {comment_string}
  'DCF file for Closed Loop wandao'
  $--------------------------------------------------------------------------UNITS
  [UNITS]
  LENGTH  =  'meter'
  FORCE   =  'newton'
  ANGLE   =  'deg'
  MASS    =  'kg'
  TIME    =  'sec'
  $---------------------------------------------------------------------EXPERIMENT
  [EXPERIMENT]
  EXPERIMENT_NAME = 'wandao'
  STATIC_SETUP    = 'STRAIGHT'
  INITIAL_SPEED   = 10
  INITIAL_GEAR    = 3
  (MINI_MANEUVERS)
  {mini_manuever     abort_time   step_size}
  'LANE_CHANGE'      10         0.01
  $--------------------------------------------------------------------LANE_CHANGE
  [LANE_CHANGE]
  (STEERING)
    ACTUATOR_TYPE     =    'ROTATION'
    METHOD            =    'MACHINE'
  (THROTTLE)
    METHOD            =    'MACHINE'
  (BRAKING)
    METHOD            =    'MACHINE'
  (GEAR)
    METHOD            =    'OPEN'
    MODE              =  'ABSOLUTE'
    CONTROL_TYPE      =    'CONSTANT'
    CONTROL_VALUE     =    3
  (CLUTCH)
    METHOD            =    'OPEN'
    MODE              =  'ABSOLUTE'
    CONTROL_TYPE      =    'CONSTANT'
    CONTROL_VALUE     =    0
  (MACHINE_CONTROL)
    STEERING_CONTROL  =    'FILE'
    DCD_FILE          =    '<private>/driver_data.tbl/cornering.dcd'
    SPEED_CONTROL     =    'MAINTAIN'
    MIN_ENGINE_SPEED  =    750.0
    MAX_ENGINE_SPEED  =    6500.0
  (END_CONDITIONS)
  {measure       test   value        allowed_error filter_time delay_time group}
  'DISTANCE'     '=='   100000.00    500.0         0.0         0.0
  这是我编制的dcd文件:
  [MDI_HEADER]
  FILE_NAME     = wandao.dcd
  FILE_TYPE     = 'dcd'
  FILE_VERSION  = 1.0
  FILE_FORMAT   = 'ASCII'
  (COMMENTS)
  {comment_string}
  'Example DCD file of wandao Path'
  $--------------------------------------------------------------------------UNITS
  [UNITS]
  LENGTH = 'meters'
  FORCE  = 'newton'
  ANGLE  = 'radians'
  MASS   = 'kg'
  TIME   = 'sec'
  $--------------------------------------------------------------------CLOSED_LOOP
  [CLOSED_LOOP]
  STEERING_CONTROL = 'path'
  SPEED_CONTROL = 'none'
  (DATA)
  { X    Y }
         7 0
         0 0
  -6.2731 0
  -12.4491 0
  -18.6251 0
  -24.8011 0
  -30.9771 0
  -37.153 0
  -43.329 0
  -49.505 0
  -55.681 0
  -61.857 0
  -62.9977 0.021
  -64.1315 0.1549
  -65.2513 0.3771
  -66.3503 0.6863
  -67.4217 1.0805
  -68.459 1.5574
  -69.4558 2.114
  -70.4059 2.7469
  -71.3036 3.4522
  -72.1433 4.2257
  -72.9199 5.0625
  -73.6287 5.9575
  -74.2652 6.9052
  -74.8255 7.8999
  -75.3063 8.9353
  -75.7046 10.0052
  -76.0179 11.1031
  -76.2444 12.222
  -76.3825 13.3553
  -76.4316 14.4959
  在仿真过程中 车子不按dcd文件的path前进
  请高手们帮我看下 这两个文件 有什么错误之处

回答:DCD文件中 X的值应为"正值",,,
  路径的正向与全局的正向相反,,,
Q在car里 怎么调整路面与车辆的方向,我自己编制的路面导入到car里后,小车与道路中线的方向不一致,仿真无法进行,请各位大侠给帮忙解答一下,不胜感激。
A加上轮胎后,先不要再轮胎和车体之间加约束,在重力作用下进行仿真,如果车体下路哟,而轮胎留在地面上,则没问题。若轮胎也下落说明地面加反了,翻转一下就行了
INSIGHT
ADAMS/View 和ADAMS/Car的基础操作和心得
如何把后驱模型转换为前驱模型?很急,期望能得到各位大侠的帮助。
我在模板那里直接另存为Front的属性,但是Powertrain和后悬总是在仿真的时候出错。
原车是可以实现仿真的,转换就不行了。
解决方案:1.将front_suspension的driveline activity设置为on

2.将rear_suspension的driveline activity设置为off

3.将powertrain的minor  role设置为front

4.对powertrain进行shift,整体移动至设计位置

5.将所有东西都保存,并重新打开assembly

问题2:静平衡问题

下是我通过阅读相关资料,所做的笔记,也有些是自己的体会。如有不当望指正。写在这是为了加深自己的印象,同时也和大家一起分享和共勉。


Adams建立一系列的力-位移的非线性微分方程 ,然后利用逐步迭代的办法来求解静平衡位置。当静平衡失败的时候,我们常常要对静平衡的设置做一些改变,从而使得节约计算时间和成功计算静平衡位置。

1:Alimt和Tlimt是我们经常需要改变大小的参数。Alimt是每次迭代的最大角位移增量(单位为rad,因为adams在返回角度值时通常单位为rad,比如建立一个measure其默认的单位都是rad,而不论系统角度单位为弧度或者度);Tlimt是每次迭代的最大线位移增量。当我们尝试改变这两个参数值时候,应该综合考虑我们模型中的长度单位、和系统到达静平衡位置时可能的最大线位移和角位移(rad)。
比方说:我们设置的alimt为1,而模型中使用的长度单位为mm,那么adams在计算时候所允许每次迭代的最大线位移为1mm。如果此时,系统到达静平衡位置需要的线位移为1M,那么adams在计算过程中则至少需要迭代1000mm/1mm,即1000次之久,显然这是不合理的。而且如果设置得过大,当平衡位置不只一个时,就很可能造成所求的位置并不是迭代次数最少的平衡位置。
同样的如果我们设置的最大角位移增量为50RAD,而系统达到静平衡位置所需要的角位移增量为7rad,这时,迭代1次就可能超过了静平衡位置,也是不合理的。
因此在选择Alimt和Tlimt的值时,即不能太小也不能太大。当我们很难确定其值的时,就只有不断的加以测试。

2:stability参数的调整:
将质量与阻尼阵比例添加到刚度阵的系数。这可以避免随遇稳定系统的雅克比矩阵奇异。
在大多数情况下,我们不需要对此参数进行调整。但是当我们系统包含有小质量的随遇静平衡物体时,适当增加此系数值,可以有助于收敛。
比方说:一个质量很小的球放在平板上,在系统达到静平衡之前会有一系列的迭代求解,如果此时我们适当增加stability的参数值如提高到1E-3,将有助于收敛,避免雅克比矩阵的奇异,当然也会增加我们的计算时间。该参数通常不影响精度。
3:Error、Imbalance参数的调整:
这两个参数主要是对静平衡计算时,精度的调整。
Error:达到静平衡时所允许的位移误差,增加则精度下降,有助于静平衡收敛。;
Imbalance:达到静平衡时合力的平衡误差(每次迭代的时候,adams会将力、力矩的绝对值进行总和,其总和值就是这里的imbalance)
常见错误:
1、静平衡分析后,所得到的静平衡位置可能不只一个,adams通常返回的是最先找到的静平衡位置,当然有时候也不一定会。此时,我们可以通过降低Alimt和Tlimt来获得我们想要的静平衡位置。另外一种方法,则是在进行静平衡分析前先进行一短暂的瞬态分析。(通过脚本文件实现)
2、模型建立错误,当所得到的静平衡位置并非想得到的是,这有可能是模型建立错误导致的。
3、模型没有静平衡位置;(比如一小球在重力作用下的自由落体运动)
3、与位移相关的力和重力定义错误或者缺失;
4、存在不连续的力;
5、单位使用不当或者ERROR、Imbalance设置不当。接上:
6、由于系统单位和Error、Imbalance参数值的不匹配造成的错误(比如,一较长模型(如列车的运动)本应该以单位m计而把系统单位设定为mm,而error、imbalance的设置却很小)
以上是我通过阅读相关资料,所做的笔记,也有些是自己的体会。如有不当往指正。写在这是为了加深自己的印象,同时也和大家一起共勉

针对静平衡求解过程中出现"Lock Up"问题的解决方法
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 下雨不下雨 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见