ADAMS精华心得(四)

常用函数介绍篇

(一)、adams函数总体介绍
1、ADAMS/View™ 是MDI公司出品的动力学仿真模块,提供了强大的建模与仿真环境。用户可以应用该模块对任何一个机械系统进行建模与仿真。除此之外,还可以通过函数编辑器编写表达式、函数和子程序,以实现对力、测量和运动的定义。在仿真过程中,系统状态实时发生变化,用户能够通过编写运行过程函数实现对系统变量的实时控制。

2、ADAMS/View函数包括设计函数与运行函数两种类型,函数的建立对应有表达式模式和运行模式两种。表达式模式下在设计过程中对设计函数求值,而运行模式下会在仿真过程中对运行函数进行计算更新。ADAMS/Solver函数支持ADAMS/View运行模式下的函数,在仿真过程中采用ADAMS/Solver解算时对这些函数进行计算更新。

3、运行时函数
(1) 运行时函数在仿真运行过程中被触发载入运行的,设计时函数在程序刚开始启动的时候就被载入,并注册。运行时函数可用C或者Fortran代码编写,而设计时函数只能用C编写。
(2) ADAMS/View libraries增加已编译过的设计时函数,定义或者修改模型和后处理方式。ADAMS/Solver libraries为运动和力增加运动时函数,直接定义模型的行为,控制仿真执行的方式。这样可以使你利用已有的软件定义一些复杂的模型间关系,比如液压力、轮胎力等。很多模块,ADAMS/View, ADAMS/Car, ADAMS/Engine,和ADAMS/Rail,可以运行这两种库,因为它们有内部的ADAMS/Solver。
(3) 尽管有一点理解上的困难,但子程序比函数表达式提供了更多的一般性和灵活性。编写一些函数来适应自己的特定需要,链入子程序到ADAMS/Solver,可提高运行效率和仿真速度。子程序和函数表达式的用途是一样的:给ADAMS/Solver定义非标准的输入。函数表达式的使用比较容易,但不能描述复杂的问题,尤其是在包含大量的逻辑判断时;而子程序需要编程、编译和链接,比较复杂,但它的功能更强大,用途更广,包括定义模型元素和指定输出。

4、在进行建立表达式、产生和修改需要计算的度量及建立设计函数等操作时,会采用表达式模式。在建立表达式时,首先在接受表达式的文本框处右击,然后选择“Parameterize”再选择“Expression Euilder”,进入建立设计函数表达式对话框。在该对话框中输入表达式,然后单击“OK”完成操作。

(二)、样条函数的应用
1、样条拟合是在给定曲线或曲面上的已知点间求取中间点的一种插值方法。仿真过程中通过样条拟合函数可以形成一条逼近数据点的光滑曲线。样条函数在下述情况较为通用:
1.1. 采用试验测试数据驱动模型;
1.2. 采用试验测试数据定义驱动力;
1.3. 通过数据点绘制光滑曲线。
ADAMS/View 允许采用三种插值方法,即:三次样条曲线拟合、B样条曲线拟合、Akima拟合法,它们对应的函数分别为CUBSPL、CURVE、AKISPL,其拟合特征及优、缺点如下表所示:
[attach]107947[/attach]

2、AKISPL函数
格式:AKISPL (First Independent Variable, Second Independent Variable,Spline Name, Derivative Order)
参数说明:
First Independent Variable   —— spline中的第一个自变量
Second Independent Variable (可选) —— spline中的第二自变量
Spline Name         —— 数据单元spline的名称
Derivative Order (可选) —— 插值点的微分阶数,一般用0就可以
function = AKISPL(DX(marker_1, marker_2, marker_2), 0, spline_1)
spline_1用下表中的离散数据定义
自变量x 函数值y
-4.0 -3.6
-3.0 -2.5
-2.0 -1.2
-1.0 -0.4
0.0 0.0
1 0.4
2 1.2
3 2.5
4 3.6

3、函数CUBSPL( 1st_Indep_Var , 2nd_Indep_Var , Spline_Name , Deriv_Order)
其中1st_Indep_Var定为时间变量time,2nd_Indep_Var 设为0,Spline_Name 为所保存的力与时间的曲线图名称,Deriv_Order设为0。力与时间的曲线图可以在菜单build—>data elements—>spline建立。

(三)、step函数的应用
1、Step函数格式为:step(x,x0,h0,x1,h1) 其中各参数意义如下:
x ―自变量,可以是时间或时间的任一函数
x0 ―自变量的STEP函数开始值,可以是常数或函数表达式或设计变量;
x1 ―自变量的STEP函数结束值,可以是常数、函数表达式或设计变量
h0 ― STEP函数的初始值,可以是常数、设计变量或其它函数表达式
h1 ― STEP函数的最终值,可以是常数、设计变量或其它函数表达式

2、[链接汇总]step函数应用大集合!
[url]http://www.simwe.com/forum/viewthread.php?tid=430916&highlight=%BA%AF%CA%FD[/url]

(四)、if函数的应用
1、格式:IF(表达式1: 表达式2, 表达式3, 表达式4)
参数说明:
表达式1-ADAMS的评估表达式;
表达式2-如果的Expression1值小于0,IF函数返回的Expression2值;
表达式3-如果表达式1的值等于0,IF函数返回表达式3的值;
表达式4-如果表达式1的值大于0,IF函数返回表达式4的值;
例如:函数 IF(time-2.5:0,0.5,1)
结果: 0.0 if time < 2.5
  0.5 if time = 2.5
    1.0 if time > 2.5

2、IF((time/2.4-aint(time/2.4))*2.4-1.2: 2,0,-2)
这个意思是:
time/2.4-aint(time/2.4))*2.4-1.2<0: 函数值为:2,
time/2.4-aint(time/2.4))*2.4-1.2=0; 函数值为:0,
time/2.4-aint(time/2.4))*2.4-1.2>0; 函数值为:-2

3、【原创】来一个分段函数,大家来写写:
[url]http://www.simwe.com/forum/viewthread.php?tid=237239&highlight=%C0%B4%D2%BB%B8%F6%B7%D6%B6%CE%BA%AF%CA%FD[/url]

(五)、sensor,acf的应用
1、acf应用实例:我的仿真过程是16秒,我想在0-4秒和8-12秒内约束1激活、约束2失效,在4-8秒和12-16秒内约束2激活、约束1失效,应该怎么写呢?
——应该是:deactivate/joint,id=2
simulate/dynamic,end=4,steps=100
activate/joint,id=2
deactivate/joint,id=1
simulate/dynamic,end=8,steps=100
activate/joint,id=1
deactivate/joint,id=2
simulate/dynamic,end=12,steps=100
activate/joint,id=2
deactivate/joint,id=1
simulate/dynamic,end=16,steps=100

2、怎样删除sensor?
下拉菜单edit里有delete项,在模型中任何对象不被选中的情况下单击delete,然后在数据库中选中要删除的sensor即可。同样的方法可以失效deactive一个sensor。

(六)、函数的典型应用
1、[转帖]ADAMS函数使用精华:
[url]http://www.simwe.com/forum/viewthread.php?tid=723389&highlight=%BA%AF%CA%FD[/url]

2、【讨论】关于分段函数的添加:
[url]http://www.simwe.com/forum/viewthread.php?tid=64125&highlight=%BA%AF%CA%FD[/url]

3、关于orient函数:
[url]http://www.simwe.com/forum/viewthread.php?tid=662016&highlight=%BA%AF%CA%FD[/url]
4、【讨论】子函数参数含义:
[url]http://www.simwe.com/forum/viewthread.php?tid=303846&highlight=%BA%AF%CA%FD[/url]

5、如何确定一个从动运动的motion函数:
[url]http://www.simwe.com/forum/viewthread.php?tid=474966&highlight=%BA%AF%CA%FD[/url]

6、【原创】如何把MEA(或spline)加入到motion中!!
[url]http://www.simwe.com/forum/viewthread.php?tid=295745&highlight=spline%2Bandyxin[/url]

7、[链接汇总]spline运用:
[url]http://www.simwe.com/forum/viewthread.php?tid=436252&highlight=spline[/url]

汽车工程结构CAE系统工程及仿真流体力学及仿真ANSYSABAQUS

ADAMS精华心得(四)的评论0条

    暂无评论

    ADAMS精华心得(四)的相关案例教程

    摘 要:为研究中医按摩点按手法在机器人手臂上的实现,基于ADAMS虚拟建模的方法进行机器人手臂的运动学分析,研究在六自由度机器人手臂上实现点按手法时各个关节的运动学相关数据。仿真结果表明,在六自由度机器人手臂上能够很好地实现点按手法,并能得到每个关节的关节角随时间的运动曲线和相关数据。可见,利用ADAMS虚拟建模仿真的方法能够方便有效地得出在机器人手臂上实现某种运动的相关数据,可为物理样机上的控制
    目前很多adams的应用集中在了发动机本身,及变速箱这块。因此对adams中的powertrain做基本介绍,来源于一篇技术文档,根据的是2005版的模型。 1 Powertrain的模板包含了发动机、离合、变速器、差速器。离合器连接发动机及变速箱,变速箱的输出应用到差速器上,最终用到轮胎上。 2 包含的方程: 微分方程:clutch_slip;engine_omega 状态变量(代数方程):an
    基座自由度、大臂摆动自由度、小臂摆动自由度、腕部Y轴摆动自由度、腕部Z轴摆动自由度及其腕部末端X轴旋转自由度 其导入过程为: (1) 机器人三维模型总体有6个部分。打开机器人的SolidWork三维模型,依次另存为6个&ldquo;Parasolid(x_t)&rdquo;类型的文件。 (2) 打开ADAMS/View,将保存好的&ldquo;Parasolid(x_t)&rdquo;类型的文件依
    周期性边界条件 在复合材料力学计算中,通常选择一个微观的 代表体单元(RVE)来表征宏观的力学性能,此时RVE的外轮廓的边界条件应为周期性边界条件( Periodic Boundary Conditions),其作用是 使边界处应力连续和位移连续。 周期性边界条件不同于循环对称边界条件,虽然两者都是对模型进行简化,但后者主要针对周向循环,即我们说的1/2,1/3,1/4……模型,在模型边界处使用的
    当使 用RecurDyn为执行MBD(多体动力学)或MFBD(多柔性体动力学)分析进行建模时,应用从实际实验中得到的测量数据会获得改进的分析结果。 有两种方法可以将Spline数据应用于RecurDyn建模要素。 Spline数据可以直接应用于建模要素的详细参数的情况下。 示例 : [链接]如何在仿真中使用实际现场中测量的Spline数据。 Spline数据不可以直接应用于建模要素的详细参数的情况
    硕士/汽车底盘工程师
    影响力
    粉丝
    内容
    获赞
    收藏
      项目客服
      培训客服
      0 2