当前位置:文档之家› adams常见函数总结

adams常见函数总结

adams常见函数总结
adams常见函数总结

ADAMS常用函数总结

在使用adams的过程中,由于函数比较多,大概有11种之多,如1、Displacement Fu nction 2、Velocity Functions 3、Acceleration Functions 4、Contact Functions 5、Spline Functions 6、Force in Object Functions 7、Resultant Force Functi ons 8、Math Functions 9、Data Element Access 10、User-Written Subroutine

Invocation 11、Constants & Variables。

在adams中也有帮助文档,但是对于初学者来说还是有一定的难度的,基于这种情况我总结了一下几种常用的函数,希望能够起到抛砖引玉的作用!

1、STEP函数

格式:STEP (x, x0, h0, x1, h1)

参数说明:

x―自变量,可以是时间或时间的任一函数

x0 ―自变量的STEP函数开始值,可以是常数或函数表达式或设计变量;

x1 ―自变量的STEP函数结束值,可以是常数、函数表达式或设计变量

h0 ―STEP函数的初始值,可以是常数、设计变量或其它函数表达式

h1 ―STEP函数的最终值,可以是常数、设计变量或其它函数表达式

2、IF函数

格式: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

3、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

4、碰撞函数impact

其实质是:用只抗压缩的非线性的弹簧阻尼方法近似计算出单边碰撞力。

格式:IMPACT (Displacement Variable, Velocity Variable, Trigger for Displaceme nt Variable, Stiffness Coefficient, Stiffness Force Exponent, Damping Coefficie

nt, Damping Ramp-up Distance)

参数说明:

Displacement Variable

实时位移变量值,通过DX、DY、DZ、DM等函数实时测量。

Velocity Variable

实时速度变量值,通过VX、VY、VZ、VM等函数实时测量。

Trigger for Displacement Variable

激发碰撞力的位移测量值。

Stiffness Coefficient or K

刚度系统。

Stiffness Force Exponent

非线性弹簧力指数。

Damping Coefficient or C

阻尼系数。

Damping Ramp-up Distance

当碰撞力被激发阻尼逐渐增大的位移值。

5、bistop函数

它的格式是BISTOP( x, dx, x1, x2, k, e, cmax, d)这里它由八个参数定义。它与函数I MPACT类似。可以这么说:BISTOP是双侧碰撞函数,而IMPACT是单侧碰撞函数。BISTOP的触发是由两个边界条件确定的,即x1和x2,当x值大于或等于x1且小于或等于x2时,函数值为0,当x值大于x2或小于x1时,它的值是不同的。

当x小于x1时,返回值是:k(x1-x)^e-cmax*dx*step(x,x1-d,1,x1,0),当x大于x2时,返回值是:k(x-x2)^e-cmax*dx*step(x,x2,1,x2+d,0)。

各种参数表示意义可以从IMPACT里推出来,它只是多了一个x2。

ADAMS常见问题

ADAMS 使用常见问题 1、ADAMS中的单位的问题 开始的时候需要为模型设置单位。在所有的预置单位系统中,时间单位就是秒,角度就是度。可设置: MMKS--设置长度为毫米,质量为千克,力为牛顿。 MKS—设置长度为米,质量为千克,力为牛顿。 CGS—设置长度为厘米,质量为克,力为达因。 IPS—设置长度为英寸,质量为斯勒格(slug),力为磅。 2、如何永久改变ADAMS的启动路径? 在ADAMS启动后,每次更改路径很费时,我们习惯将自己的文件存在某一文件夹下;事实上,在Adams的快捷方式上右击鼠标,选属性,再在起始位置上输入您想要得路径就可以了。 3、关于ADAMS的坐标系的问题。 当第一次启动ADAMs/View时,在窗口的左下角显示了一个三视坐标轴。该坐标轴为模型数据库的全局坐标系。缺省情况下,ADAMS/View用笛卡儿坐标系作为全局坐标系。ADAMS/View将全局坐标系固定在地面上。 当创建零件时,ADAMS/View给每个零件分配一个坐标系,也就就是局部坐标系。零件的局部坐标系随着零件一起移动。局部坐标系可以方便地定义物体的位置,ADAMS/View也可返回如零件的位置——零件局部坐标系相对于全局坐标系的位移的仿真结果。局部坐标系使得对物体上的几何体与点的描述比较方便。物体坐标系不太容易理解。您可以自己建一个part,通过移动它的位置来体会。 4、关于物体的位置与方向的修改 可以有两种途径修改物体的位置与方向,一种就是修改物体的局部坐标系的位置,也就就是通过MODIFY物体的position属性;令一种方法就就是修改物体在局部坐标系中的位置,可以通过修改控制物体的关键点来实现。我感觉这两种方法的结果就是不同的,但就是对于仿真过程来说,物体的位置就就是质心的位置,所以对于仿真就是一样的。 5、关于ADAMS中方向的描述。 对于初学的人来说,方向的描述不太容易理解。之前我们都就是用方向余弦之类的量来描述方向的。在ADAMS中,为了求解方程就是计算的方便,使用欧拉角来描述方向。就就是用绕坐标轴转过的角度来定义。旋转的旋转轴可以自己定义,默认使用313,也就就是先绕z轴,再绕x轴,再绕z轴。 6、Marker点与Pointer点区别 Marker:具有方向性, 大部分情況都就是伴随物件自动产生的,而 Point不具有方向性, 都就是用户自己建立的;Marker点可以用来定义构件的几何形状与方向,定义约束与运动的方向等,而Point点常用来作为参数化的参考点,若构件与参考点相连,当修改参考点的位置时,其所关联的物体也会一起移动或改变。

ADAMS教程:手把手教你为motion添加STEP函数(附:STEP函数全解析)

ADAMS教程:手把手教你为motion添加STEP函数(附:STEP函数全 解析) 搜人鱼不如授之以渔 手把手教你为motion添加STEP函数 1 如何找到电机 单击屏幕右下角的i按钮 双击展开模型名(如:robot_new) 找到电机motion 双击其中一个 单击Modify 再点击Function(time)右面的按钮 就打开了电机控制函数的编辑器 从左下角的函数编辑栏中双击你要的函数,就可以添加到上方的编辑栏中, 但是,切记,两个STEP函数中间要添加符号+ 2 接下来,解释STEP函数

STEP是递加递减函数(确切的说不应该这么解释,递加递减方便理解,姑且这么解释吧) STEP(time, 1, 0d, 3, 10d) 其上五个变量中,第一个(time)是横坐标定义;第二个(1)是时间起点(就是说,你要他什么时候开始递加递减;现在定义为1秒);第四个(3)是时间终点(你要他什么时候结束递加递减);第三个(0d)为递加递减数值的起点(切记,其值必须为0d,所以,不必修改);第五个(10d)为相对于0点的递加递减数值,这个是你可以自行修改的; 举个例子 STEP(time,1,0d,2,20d)+STEP(time,6,0d,12,-40) 意义:一秒到2秒:从0递增至20; 2秒到6秒:保持电机输出数值为20不变; 6秒到12秒:由20递减40,结果为-20。 所以,有两个特性必须记住:1,除非输入新的STEP,否则,上一个S TEP的渐变结果将在接下来的时间里,一直保持。 2,每个STEP只能从0开始渐变,所以,每一次的STEP都是相对于上一次操作结果的累加计算。 仔细研习以上例子,这次,由你来添加,想实现可变化动作的话,自己定义吧 随文附word彩版(有图有真相,哈哈哈)

ADAMS中的函数

ADAMS/View中系统提供的数学函数大致分类介绍如下。 (1)基本数学函数 ABS(x) 数字表达式x的绝对值 DIM(x1,x2) x1>x2时x1与x2之间的差值,x1<x2时返回0 EXP(x) 数字表达式x的指数值 LOG(x) 数字表达式x的自然对数值 LOG10(x) 数字表达式x的以10为底的对数值 MAG(x,y,z) 向量[x,y,z]求模 MOD(x1,x2) 数字表达式x1对另一个数字表达式x2取余数 RAND(x) 返回0到1之间的随机数 SIGN(x1,x2) 符号函数,当x2>0时返回ABS(x),当x2<0时返回-ABS(x) SQRT(x) 数字表达式x的平方根值 (2)三角函数 SIN(x) 数字表达式x的正弦值 SINH(x) 数字表达式x的双曲正弦值 COS(x) 数字表达式x的余弦值 COSH(x) 数字表达式x的双曲余弦值 TAN(x) 数字表达式x的正切值 TANH(x) 数字表达式x的双曲正切值 ASIN(x) 数字表达式x的反正弦值 ACOS(x) 数字表达式x的反余弦值 ATAN(x) 数字表达式x的反正切值 ATAN2(x1,x2) 两个数字表达式x1,x2的四象限反正切值

(3)取整函数 INT(x) 数字表达式x取整 AINT(x) 数字表达式x向绝对值小的方向取整 ANINT(x) 数字表达式x向绝对值大的方向取整 CEIL(x) 数字表达式x向正无穷的方向取整 FLOOR(x) 数字表达式x向负无穷的方向取整 NINT(x) 最接近数字表达式x的整数值 RTOI(x) 返回数字表达式x的整数部分 位置/方向函数位置/方向函数用于根据不同输入变量计算有关位置或方向的参数。ADAMS/View中系统提供的位置/方向函数分类介绍如下。 (1)位置函数 LOC_ALONG_LINE 返回两点连线上与第一点距离为指定值的点 LOC_CYLINDRICAL 将圆柱坐标系下坐标值转化为笛卡儿坐标系下坐标值 LOC_FRAME_MIRROR 返回指定点关于指定坐标系下平面的对称点 LOC_GLOBAL 返回参考坐标系下的点在全局坐标系下的坐标值 LOC_INLINE 将一个参考坐标系下的坐标值转化为另一参考坐标系下的坐标值并归一化 LOC_LOC 将一个参考坐标系下的坐标值转化为另一参考坐标系下的坐标值

学习adams时的常见问题总结

14、如何在ADAMS下由数据生成样条曲线? 在tools->command navigator....->Data element->create->spring line 后,会出現一个输入window窗口,选择numerical将xyz数值copy到xyz各自的表格上....... 15、ADAMS中如何建模,该如何控制坐标点,才能得到精确的位置? 可以粗略建立 Point 设计点后,可以 Modify,在表格编辑器 Table Editor 里可以精确定位点的坐标,还可以用Command。 16、关于bushing 16.1、bushing一般用于模拟橡胶连接部件,主要是指线性橡胶。一般汽车底盘的轴承都有加橡胶,那就可以在轴和轴承之间用这个。输入在各个方向的刚度和阻尼就可以了。 16.2、bushing主要是考虑到了两个物体间的弹性连接,比如麦弗逊悬架的下控制臂和副车架,幅车架和车身相连的地方都是采用了bushing,在car里面就可以看到。对于运动学分析,采用一般的连接即可(比如万向节),做动力学分析,就得采用busing以模拟弹性力。 17、请问如何对零件进行复制? 可用position move,还有一个命令是position rotation。 18、关于转动问题,如何判断转动副的方向? 初学时,对转动副的运动容易糊涂,下面以图说明。 图1,构件4固定在地面上,在构件1和构件2上加了一个转动副。 1) 转动副中构件绕轴转动的方向,符合右手法则,其中First body 绕Second body 转动; 2) 图一中,构件1为first body,构件2为Second Body,则构件1相对于构件2逆时针转动,图2为转动后某时刻的图像; 3) 若修改转动副,构件2为first body,构件1为Second Body,则构件2相对于构件1逆时针转动,图3为转动后某时刻的图像,与2)恰相反; 4) 有趣的是,假设转动副加在构件1与4上,构件4为first body,构件1为Second Body,则构件4应该相对于构件1逆时针转动,但由于构件4固定在地面上,无法运动,由相对运动可知,此时运动等价于构件1相对于构件4顺时针转动,事实如此,图4为转动后某时刻的图像。 (图片看不到的话,可在版内搜索到该帖子) 19、用不同的求解器是不是不会对结果造成太大的影响? 求解器不会对仿真结果造成影响的。由于ADAMS的求解器最初是用FORTRAN编写的,而随着C的普及及功能的强大,现在越来越倾向于C了。现在是两个求解器并存,将来可能只保留C一个了。在ADAMS新的版本中,有些功能只有C求解器才有的。 20、出现exception 11 detected如何解决? 開始->程式集->MSC.Software->MSC.ADAMS 2005r2->ADAMS Settings->

ADAMS中的函数_New

ADAMS中的函数_New

ADAMS中的函数

ADAMS/View中系统提供的数 学函数大致分类介绍如下。(1)基本数学函数 ABS(x) 数字表达式x的绝对值 DIM(x1,x2) x1>x2时x1与x2之间的差值,x1<x2时返回0 EXP(x) 数字表达式x的指数值 LOG(x) 数字表达式x的自然对数值LOG10(x) 数字表达式x的以10为底的对数值 MAG(x,y,z) 向量[x,y,z]求模 MOD(x1,x2) 数字表达式x1对另一个数字表达式x2取余数 RAND(x) 返回0到1之间的随机数SIGN(x1,x2) 符号函数,当x2>0时返回ABS(x),当x2<0时返回-ABS(x) SQRT(x) 数字表达式x的平方根值(2)三角函数 SIN(x) 数字表达式x的正弦值SINH(x) 数字表达式x的双曲正弦值COS(x) 数字表达式x的余弦值COSH(x) 数字表达式x的双曲余弦值TAN(x) 数字表达式x的正切值TANH(x) 数字表达式x的双曲正切值ASIN(x) 数字表达式x的反正弦值ACOS(x) 数字表达式x的反余弦值

ATAN(x) 数字表达式x的反正切值ATAN2(x1,x2) 两个数字表达式x1,x2的四象限反正切值 (3)取整函数 INT(x) 数字表达式x取整 AINT(x) 数字表达式x向绝对值小的方向取整 ANINT(x) 数字表达式x向绝对值大的方向取整 CEIL(x) 数字表达式x向正无穷的方向取整 FLOOR(x) 数字表达式x向负无穷的方向取整 NINT(x) 最接近数字表达式x的整数值RTOI(x) 返回数字表达式x的整数部分 位置/方向函数位置/方向函数用于根据不同输入变量计算有关位置或方向的参数。ADAMS/View中系统提供的位置/方向函数分类介绍如下。(1)位置函数 LOC_ALONG_LINE 返回两点连线上与第一点距离为指定值的点 LOC_CYLINDRICAL 将圆柱坐标系下坐标值转化为笛卡儿坐标系下坐标值LOC_FRAME_MIRROR 返回指定点关于指定坐标系下平面的对称点 LOC_GLOBAL 返回参考坐标系下的点在全局坐标系下的坐标值

adams常用函数

1.step可能是最常用的: step(time,0,0,1,50)+ step(time,4,0,6,-100)+ step(tme,9,0,10,50) 函数原形STEP(A,x1,h1,x2,h2) 解释:由数组A的x值,生成区间(x1,h1)至(x2,h2)之间的阶梯曲线,返回y值的数据。 举个常用的例子。 比如STEP(time,1,0,2,100) time在adams中是个递增的变量,相当于一个数组。那么step的返回值就是随着time变化的值。 这个例子将表示在time从(1,2)的过程中,返回值将从0,100。看看例子,两个小球,一个使用step 函数设置了位移,另外一个是参考。当然,这个变化过程,adams使用了缓和的图形,从其位移图中可以看出来。step既然是个返回值,就可以使用加减法了。如上例,如果设置下面的小球的位移如下:STEP(time,1,0,2,100)+step(time,2,0,3,400)+step(time,3,0,4,-200) 2.以前用过碰撞函数,有单向和双向函数的区分,其中系统的球面等碰撞为其特例! IMPACT (Displacement Variable, Velocity Variable, Trigger for Displacement Variable, Stiffness Coefficient, Stiffness Force Exponent, Damping Coefficient, Damping Ramp-up Distance) BISTOP (Displacement Variable, Velocity Variable, Low Trigger for Displacement Variable, High Trigger for Displacement Variable, Stiffness Coefficient, Stiffness Force Exponent, Damping Coefficient, Damping Ramp-up Distance) 3.if函数 这个函数最好不要使用,他的使用会带来突变,会使运算的时候不收敛。不过应急的时候还是可以一用。 if(time-1:1,0,if(time-2:0,-1,-1)) IF(Expression1: Expression2, Expression3, Expression4) adams要计算Expression1的值: 如果他的值小于0,则执行Expression2语句,如果Expression1的值等于0,则执行Expression3语句,如果Expression1的值大于0,则执行Expression4语句 我得if语句的意思是:如果时间小于1的时候,加速度为1,如果时间为1,加速度为0,如果时间大于1小于2,则加速度为0,如果时间大于、等于2则,加速度为-1 4. 我得一个想法 就是利用sign函数构造 比较常用的是给机构加上一个与运动方向相反的作用力等等可以先测量施加力对象的运动速度,然后利用速度的变化,插入measure到sign函数里面就可以获得与运动方向相反的作用力

ADAMS-STEP函数

在定义接触力时Normal Force有两个选项: 1、Restitution(Define a restitution-based contact); 2、Impact(Define an impact contact) 第二个选项就是利用IMPACT函数,它能方便地表达那种间歇碰撞力 (即达到某一位移值才激发的碰撞力)。 它的参数意义及力学基础: One-sided Impact (IMPACT) 1、理解:用只抗压缩的非线性的弹簧阻尼方法近似计算出单边碰撞力。 2、格式:IMPACT (Displacement Variable, Velocity Variable, Trigger for Displacement Variable, Stiffness Coefficient, Stiffness Force Exponent, Damping Coefficient, Damping Ramp-up Distance) 3、参数说明: Displacement Variable 实时位移变量值,通过DX、DY、DZ、DM等函数实时测量。 Velocity Variable 实时速度变量值,通过VX、VY、VZ、VM等函数实时测量。 Trigger for Displacement Variable 激发碰撞力的位移测量值。 Stiffness Coefficient or K 刚度系统。 Stiffness Force Exponent 非线性弹簧力指数。 Damping Coefficient or C 阻尼系数。

Damping Ramp-up Distance 当碰撞力被激发阻尼逐渐增大的位移值。 4、Impact函数的力学基理: IMPACT函数值由自变量值决定其有无: IMPACT = Off if s > so On if s <=so IMPACT函数的数学计算公式为: MAX {0, K(so - s)**e - Cv *STEP (s, so- d, 1, so ,0)} 参数说明: s ——位移变量 v ——速度变量 so——碰撞力的激发位移值 K ——刚度系数 C ——阻尼系数 D——阻尼逐渐增大的位移值

adams STEP函数

STEP函数 adams,做一个驱动,先在1秒内加速至30d/s,再匀速保持2秒,最后在3秒内减速制0d/s,用step写 格式: STEP (x, x0, h0, x1, h1) 参数说明: x―自变量,可以是时间或时间的任一函数 x0―自变量的STEP函数开始值,可以是常数或函数表达式或设计变量;x1―自变量的STEP函数结束值,可以是常数、函数表达式或设计变量 h0―STEP函数的初始值,可以是常数、设计变量或其它函数表达式 h1―STEP函数的最终值,可以是常数、设计变量或其它函数表达式 每一个叠加“+”是在前一个表达式的基础上叠加而不是一味的增加比如第二部是保持匀速所以在第一步加好的基础上增量应该是零 正确的表达式: step(time,0,0,1,30)+step(time,1,0,3,0)+step(time,3,0,6,-30) adams帮助文档中解释如下: DefinitionReturns an array of y values, on a step curve, correspondingto the x values. FormatSTEP (A, xo, ho,x1,h1) ArgumentsA An array of x values. xo

Value of x at which the step starts ramping from ho to h 1. ho Value of h when x is less than or equal to xo. x1 Value of x at which the step function reaches h 1. h1 Value of h when x is greater than or equal to h 1. ExampleThe following example steps smoothly from 0.0 to 1.0 over theinterval( 2.0, 8.0). It has tails from 0 to 2 and from 8 to 10. STEP(SERIES(0, 0.1, 100), 2.0, 0.0, 8.0, 1.0)

ADAMS函数简介

ADAMS/View函数及ADAMS/Solver函数的类型及建立 ADAMS/View函数包括设计函数Design-Time Functions与运行函数Run-Time Functions两种类型,函数的建立对应有表达式模式和运行模式两种。表达式模式下在设计过程中对设计函数求值,而运行模式下会在仿真过程中对运行函数进行计算更新。ADAMS/Solver函数支持ADAMS/View运行模式下的函数,在仿真过程中采用ADAMS/Solver解算时对这些函数进行计算更新。 建立表达式模式下的函数 在进行建立表达式、产生和修改需要计算的测量及建立设计函数等操作时,会采用表达式模式。 在建立表达式时,首先在接受表达式的文本框处右击,然后选择“Parameterize”再选择“Expression Euilder”,进入建立设计函数表达式对话框。在该对话框中输入表达式,然后单击“OK”完成操作。 在产生和修改需要计算的测量时,首先在“Build”菜单中选择“Measure”,然后指向“Computed”,再选择“New”或“Modified”确定是新建还是修改,进入产生和修改需要计算的测量对话框。在该对话框中输入表达式,然后单击“OK”完成操作。 在建立设计函数时,首先在“Build”菜单中选择“Function”,然后选择“New”或“Modified”确定是新建还是修改,进入产生和修改设计函数对话框。在该对话框中输入表达式,然后单击“OK”完成操作。 建立运行模式下的函数 在进行建立运行函数、产生和修改函数型的测量等操作时,会采用运行模式。 在建立运行函数时,首先在接受表达式的文本框处右击,然后选择“Function Euilder”,进入建立运行函数表达式对话框。在该对话框中输入表达式,然后单击“OK”完成操作。 在产生和修改函数型的测量时,首先在“Build”菜单中选择“Measure”,然后指向“Function”,再选择“New”或“Modified”确定是新建还是修改,进入产生和修改函数型的度量对话框。在该对话框中输入表达式,然后单击“OK”完成操作。 ADAMS/View设计函数 ADAMS/View设计函数在设计过程中模型定义时有效,而不需到仿真过程 中仿真分析时再进行计算更新。设计函数可用来将模型参数化以便进行优化和灵敏度分析。除了优化和设计研究,Adams/View只会在设计阶段对设计函数进行计算评估,而不是在仿真分析过程中。Adams/View evaluates design-time functions only during the design process, and not during a simulation, except for optimization and design studies.

ADAMS部分常用函数的说明

ADAMS常用函数的说明 一、几个常用函数的说明 1、 STEP函数 格式:STEP (x, x0, h0, x1, h1) 参数说明: x ―自变量,可以是时间或时间的任一函数 x0 ―自变量的STEP函数开始值,可以是常数或函数表达式或设计变量; x1 ―自变量的STEP函数结束值,可以是常数、函数表达式或设计变量; h0 ― STEP函数的初始值,可以是常数、设计变量或其它函数表达式; h1 ― STEP函数的最终值,可以是常数、设计变量或其它函数表达式。 2、 IF函数 格式: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 3、AKISPL函数 格式:AKISPL (First Independent Variable, Second Independent Variable,Spline Name, Derivati ve Order) 参数说明: First Independent Variable ——spline中的第一个自变量 Second Independent Variable(可选) ——spline中的第二自变量 Spline Name ——数据单元spline的名称 Derivative Order(可选) ——插值点的微分阶数,一般用0就可以了 例如: function = AKISPL(DX(marker_1, marker_2), 0, spline_1) spline_1用下表中的离散数据定义:

adams常见函数总结

ADAMS常用函数总结 在使用adams的过程中,由于函数比较多,大概有11种之多,如1、Displacement Fu nction 2、Velocity Functions 3、Acceleration Functions 4、Contact Functions 5、Spline Functions 6、Force in Object Functions 7、Resultant Force Functi ons 8、Math Functions 9、Data Element Access 10、User-Written Subroutine Invocation 11、Constants & Variables。 在adams中也有帮助文档,但是对于初学者来说还是有一定的难度的,基于这种情况我总结了一下几种常用的函数,希望能够起到抛砖引玉的作用! 1、STEP函数 格式:STEP (x, x0, h0, x1, h1) 参数说明: x―自变量,可以是时间或时间的任一函数 x0 ―自变量的STEP函数开始值,可以是常数或函数表达式或设计变量; x1 ―自变量的STEP函数结束值,可以是常数、函数表达式或设计变量 h0 ―STEP函数的初始值,可以是常数、设计变量或其它函数表达式 h1 ―STEP函数的最终值,可以是常数、设计变量或其它函数表达式 2、IF函数 格式: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 3、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

adams学习心得

运动副:按照运动副的接触形式分类:面和面接触的运动副在接触部 分的压强较低,被称为低副,而点或线接触的运动副称为高副,高 副比低副容易磨损。 共振:指机械系统所受激励的频率与该系统的固有频率相接近时候,系统振幅显著增大的现象。通常是有害的。 由于软件问题,当出现自己发现莫名其妙的问题时,可以选择关闭 再重启试试…… 1.tool,打开database navigater,选择highlight,可点击查看,选择各部件。 前端含+处,需双击点开。 Sensor 传感器 variable 可变的 integer 整数entity 实 体 attribute 属性 View——model,打开一个文件时候,不显示时使用 ---part only 首先设置gravity,units(单位),网格、 ①合并merge:先选要合并的次要件,再选主要部件。选择时,打开database管理器,对着部件表,在部件周边右键选择。 合并与重命名应该是同步交叉进行的,如车体合并前就需要先 将某个part如part7先行重命名。蛋的合并也在重命名之后。回转 体依然。 注:本例中回转体的宏命令并未将其合并,part75后续合并。

这个不是问题。 ?????????从命名之后的合并,中间一个part的缺失会引出一 个错误,如何解决“?? ②重命名。是part的重命名。 后,于检查database中 ,检查是否所有更改完毕。 .my_rename_dan !重命名 variable creat variable_name=ip integer_value=0 while condition=(ip<20) 【1-20:假设范围是20到61,则初值定为19,范围定为61】 variable modify variable_name= ip integer_value=(eval(ip+1)) entity modify entity =(eval(".zhengxiang.PART"//(6*(ip-1)+38)))& new = (eval(".zhengxiang.dan_"//ip)) end !zhengxiang是文件名,后面是部件原部件名称,new 后面即为新名字,dan1等…… 6*(ip-1)+38这种式子需要自己算 variable delete variable_name= ip variable creat variable_name=ip integer_value=0

ADAMS基础知识讲解

新手上路:ADAMS 基础知识讲解(图文并茂) 经过不知道多少个日夜,终于出来一个雏形了,由于时间问题,内容还不全,以后将不断完善,请大家多多支持! 内容大纲如下: 软件介绍 学习书籍 3.软件安装问题 4.常见基础问题 一般问题 有关齿轮副 有关凸轮副 蜗轮蜗杆模拟 有关行星齿轮传动 5.常用函数 函数总体介绍 样条函数:akispl,cubspl 函数 函数 与bistop函数 和sforce函数 ,acf的应用 与CAD数据转换 其他CAD软件 相关 和ADAMS联合仿真篇

一、软件介绍篇 ADAMS是Automatic Dynamics Analysis of Mechanical System缩写,为原MDI公司开发的著名虚拟样机软件。1973年Mr. Michael E. Korybalski取得密西根大学爱娜堡分校(University of Michigan,Ann Arbor)机械工程硕士学历后,受雇于福特汽车担任产品工程师,四年后(1977)与其它等人于美国密执安州爱娜堡镇创立MDI公司(Mechanical Dynamics Inc.)。密西根大学对ADAMS发展具有密不可分的关系,在ADAMS未成熟前,MDI与密西根大学研究学者开发出2D机构分析软件DRAMS,直到1980年第一套3D机构运动分析系统商品化软件,称为ADAMS。2002年3月18日公司并购MDI公司,自此ADAMS并入MSC 产品线名称为(本文仍简称ADAMS)。 ADMAS软件由若干模块组成,分为核心模块、功能扩展模块、专业模块、接口模块、工具箱5类,其中核心模块为ADAMS / View——用户界面模块、ADAMS / Solver——求解器和ADAMS/Postprocessor——专用后处理模块。 ADAMS / View是以用户为中心的交互式图形环境,采用PARASOLID作为实体建模的内核,给用户提供了丰富的零件几何图形库,并且支持布尔运算。同时模块还提供了完整的约束库和力/力矩库,建模工作快速。函数编辑器支持FORTRAN/77、FORTRAN/90中所有函数及ADAMS独有的240余种各类函数。使用ADAMS / View能方便的编辑模型数据,并将模型参数化;用户能方便地进行灵敏度分析和优化设计。ADAMS / View有自己的高级编程语言,具有强大的二次开发功能,用户可实现操作界面的定制。 ADMAS/Solver是ADAMS产品系列中处于心脏地位的仿真“发动机”,能自动形成机械系统模型地动力学方程,提供静力学、运动学和动力学的解算结果。ADMAS/Solver有各种建模和求解选项,可有效解决各种工程应用问题,可对由刚体和柔性体组成的柔性机械系统进行各种仿真分析。用户除输出软件定义的位移、速度、加速度和约束反力外,还可输出自己定义的数据。ADMAS/Solver具有强大的碰撞求解功能,具有强大的二次开发功能,可按用户需求定制求解器,极大满足用户的不同需要。 ADAMS/Postprocessor模块主要用来输出高性能的动画和各种数据曲线,使用户可以方便而快捷地观察、研究ADAMS的仿真结果。该模块既可以在ADAMS / View环境中运行,也可脱离ADAMS / View环境独立运行。 ADAMS是世界上应用广泛且最具有权威性的机械系统动力学仿真分析软件,其全球市场占有率一直保持在50%以上。工程师、设计人员利用ADAMS软件能够建立和测试虚拟样机,实现在计算机上仿真分析复杂机械系统的运动学和动力学性能。 利用ADAMS软件,用户可以快速、方便地创建完全参数化的机械系统几何模型。既可以是在ADMAS软件中直接建造的几何模型,也可以是从其它CAD软件中传过来的造型逼真的几何模型。然后,在几何模型上施加力、力矩和运动激励。最后执行一组与实际状况十分接近的运动仿真测试,所得的测试结果就是机械系统工作过程的实际运动情况。过去需要几星期、甚至几个月才能完成的建造和测试物理样机的工作,现在利用ADAMS软件仅需几个小时就可以完成,并能在物理样机建造前,就可以知道各种设计方案的样机是如何工作的。

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,其拟合特征及优、缺点如下表所示: 2、AKISPL函数格式:AKISPL (First Independent Variable, Second Independent Variable,Spline Name, Derivative Order) 参数说明: First Independent Variable ——spline中的第一个自变量Second

ADAMS常用函数

在使用adams的过程中,由于函数比较多,大概有11种之多,如1、Displacement Function 2、Velocity Functions 3、Acceleration Functions 4、Contact Functions 5、Spline Functions 6、Force in Object Functions 7、Resultant Force Functions 8、Math Functions 9、Data Element Access 10、User-Written Subroutine Invocation 11、Constants & Variables。 在adams中也有帮助文档,但是对于初学者来说还是有一定的难度的,基于这种情况我总结了一下几种常用的函数,希望能够起到抛砖引玉的作用! 1、STEP函数 格式:STEP (x, x0, h0, x1, h1) 参数说明: x―自变量,可以是时间或时间的任一函数 x0 ―自变量的STEP函数开始值,可以是常数或函数表达式或设计变量; x1 ―自变量的STEP函数结束值,可以是常数、函数表达式或设计变量 h0 ―STEP函数的初始值,可以是常数、设计变量或其它函数表达式 h1 ―STEP函数的最终值,可以是常数、设计变量或其它函数表达式 2、IF函数 格式: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 3、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

ADAMS-View函数及ADAMS-Solver函数的类型及建立

ADAMS/View 函数及ADAMS/Solver 函数的类型及建立 ADAMS/View 函数包括设计函数与运行函数两种类型,函数的建立对应有表达式模式和运行模式两种。表达式模式下在设计过程中对设计函数求值,而运行模式下会在仿真过程中对运行函数进行计算更新。ADAMS/Solver 函数支持ADAMS/View运行模式下的函数,在仿真过程中采用ADAMS/Solver 解算时对这些函数进行计算更新。 1.1 建立表达式模式下的函数 在进行建立表达式、产生和修改需要计算的度量及建立设计函数等操作时,会采用表达式模式。在建立表达式时,首先在接受表达式的文本框处右击,然后选择“Parameterize”再选择“Expression Euilder”,进入建立设计函数表达式对话框。在该对话框中输入表达式,然后单击“OK”完成操作。在产生和修改需要计算的度量时,首先在“Build”菜单中选择“Measure”,然后指向“Computed”,再选择“New”或“Modified”确定是新建还是修改,进入产生和修改需要计算的度量对话框。在该对话框中输入表达式,然后单击“OK”完成操作。 在建立设计函数时,首先在“Build”菜单中选择“Function”,然后选择“New” 或“Modified”确定是新建还是修改,进入产生和修改设计函数对话框。在该对话框中输入表达式,然后单击“OK”完成操作。 1.2 建立运行模式下的函数 在进行建立运行函数、产生和修改函数型的度量等操作时,会采用运行模式。在建立运行函数时,首先在接受表达式的文本框处右击,然后选择“Function Euilder”,进入建立运行函数表达式对话框。在该对话框中输入表达式,然后单击“OK”完成操作。在产生和修改函数型的度量时,首先在“Build”菜单中选择“Measure”,然后指向“Function”,再选择“New”或“Modified”确定是新建还是修改,进入产生和修改函数型的度量对话框。在该对话框中输入表达式,然后单击“OK”完成操作。 2 ADAMS/View 设计函数

adams中函数用法

Adams常用函数 step可能是最常用的: step(time,0,0,1,50)+ step(time,4,0,6,-100)+ step(tme,9,0,10,50) 函数原形STEP(A,x1,h1,x2,h2) 解释:由数组A的x值,生成区间(x1,h1)至(x2,h2)之间的阶梯曲线,返回y值的数据。 举个常用的例子。 比如STEP(time,1,0,2,100) time在adams中是个递增的变量,相当于一个数组。那么step的返回值就是随着time变化的值。 这个例子将表示在time从(1,2)的过程中,返回值将从0,100。看看例子,两个小球,一个使用step 函数设置了位移,另外一个是参考。当然,这个变化过程,adams使用了缓和的图形,从其位移图中可以看出来。step既然是个返回值,就可以使用加减法了。如上例,如果设置下面的小球的位移如下:STEP(time,1,0,2,100)+step(time,2,0,3,400)+step(time,3,0,4,-200) 1.以前用过碰撞函数,有单向和双向函数的区分,其中系统的球面等碰撞为其特例! IMPACT (Displacement Variable, Veloci t y Variable, Trigger for Displacement Variable, Stiffness Coefficient, Stiffness Force Exponent, Damping Coefficient, Damping Ramp-up Distance) BISTOP (Displacement Variable, Velocity Variable, Low Trigger for Displacement Variable, High Trigger for Displacement Variable, Stiffness Coefficient, Stiffness Force Exponent, Damping Coefficient, Damping Ramp-up Distance) 2.if函数 这个函数最好不要使用,他的使用会带来突变,会使运算的时候不收敛。不过应急的时候还是可以一用。 if(time-1:1,0,if(time-2:0,-1,-1)) IF(Expression1: Expression2, Expression3, Expression4) adams要计算Expression1的值: 如果他的值小于0,则执行Expression2语句,如果Expression1的值等于0,则执行Expression3语句,如果Expression1的值大于0,则执行Expression4语句 我得if语句的意思是:如果时间小于1的时候,加速度为1,如果时间为1,加速度为0,如果时间大于1小于2,则加速度为0,如果时间大于、等于2则,加速度为-1 4. 我得一个想法 就是利用sign函数构造 比较常用的是给机构加上一个与运动方向相反的作用力等等可以先测量施加力对象的运动速度,然后利用速度的变化,插入measure到sign函数里面就可以获得与运动方向相反的作用力

相关主题
文本预览
相关文档 最新文档