adams常用函数
ADAMS中的函数

ADAMS/View中系统提供的数学函数大致分类介绍如下。
(1)基本数学函数ABS(x)数字表达式x的绝对值DIM(x1,x2)x1>x2时x1与x2之间的差值,x1<x2时返回0EXP(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将一个参考坐标系下的坐标值转化为另一参考坐标系下的坐标值LOC_LOCAL返回全局坐标系下的点在参考坐标系下的坐标值LOC_MIRROR返回指定点关于指定坐标系下平面的对称点LOC_ON_AXIS沿轴线方向平移LOC_ON_LINE返回两点连线上与第一点距离为指定值的点LOC_PERPENDICULAR返回平面法线上距离指定点单位长度的点LOC_PLANE_MIRROR返回特定点关于指定平面的对称点LOC_RELATIVE_TO返回特定点在指定坐标系下的坐标值LOC_SPHERICAL将球面坐标转化为笛卡儿坐标LOC_X_AXIS坐标系x轴在全局坐标中的单位矢量LOC_Y_AXIS坐标系y轴在全局坐标中的单位矢量LOC_Z_AXIS坐标系z轴在全局坐标中的单位矢量(2)方向函数ORI_ALIGN_AXIS将坐标系按指定方式旋转至与指定方向对齐所需旋转的角度ORI_ALONG_AXIS_EUL将坐标系按指定方式旋转至与全局坐标系一个轴方向对齐所需旋转的角度ORI_ALL_AXES将坐标系旋转至由平面上的点定义的特定方向(第一轴与指定平面上两点连线平行,第二轴与指定平面平行)时所需旋转的角度ORI_ALONG_AXIS将坐标系旋转至其一轴线沿指定轴线方向时所需旋转的角度ORI_FRAME_MIRROR返回坐标系旋转镜像到指定坐标系下所需旋转的角度ORI_GLOBAL返回参考坐标系在全局坐标系下的角度值ORI_IN_PLANE将坐标系旋转至特定方向(与指定两点连线平行、与指定平面平行时所需旋转的角度ORI_LOCAL返回全局坐标系在参考坐标系下的角度值ORI_MIRROR返回坐标系旋转镜像到指定坐标系下所需旋转的角度ORI_ONE_AXIS将坐标系旋转至其一轴线沿两点连线方向时所需旋转的角度ORI_ORI将一个参考坐标系转化为另一参考坐标系所需旋转的角度ORI_PLANE_MIRROR返回坐标系旋转生成关于某平面的镜像所需旋转的角度ORI_RELATIVE_TO返回全局坐标系下角度值相对指定坐标系的旋转角度建模函数运动学建模函数返回marker点或构件之间位移的度量。
adams的函数用法

格式:STEP (x, x0, h0, x1, h1)
参数说明:
x :自变量,可以是时间或时间的任一函数
x0 :自变量的STEP函数开始值,可以是常数或函数表达式或设计变量;
x1 :自变量的STEP函数结束值,可以是常数、函数表达式或设计变量
h0 :STEP函数的初始值,可以是常数、设计变量或其它函数表达式
表达式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)
Stiffness Coefficient or K
刚度系统。
Stiffness Force Exponent
非线性弹簧力指数。
Damping Coefficient or C
阻尼系数。
Damping Ramp-up Distance
当碰撞力被激发阻尼逐渐增大的位移值。
-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 Displacement Variable,Stiffness Coefficient,Stiffness Force Exponent,Damping Coefficient,Damping Ramp-up Distance)
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.50.5 if time = 2.51.0 if time >2.53、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.40.0 0.01 0.42 1.23 2.54 3.64、碰撞函数impact其实质是:用只抗压缩的非线性的弹簧阻尼方法近似计算出单边碰撞力。
adams函数学习总结

字符串函数
STATUS_PRINT 将文本字符串返回到状态栏 STR_CASE 将字符串按指定方式进行大小写变换 STR_CHR 返回ASCII码为指定值的字符 STR_COMPARE 返回两字符在字母表上的位置差 STR_DATE 按一定格式输出当前时间和日期 STR_DELETE 从字符串中一定位置开始删除指定个数的字符 STR_FIND 返回字符串在另一字符串中的位置索引 STR_FIND_COUNT 返回字符串在另一字符串中出现的次数 STR_FIND_N 返回字符串在另一字符串中重复出现指定次数时的位置索引 STR_INSERT 将字符串插入到另一字符串的指定位置 STR_IS_SPACE 判断字符串是否为空 STR_LENGTH 返回字符串长度 STR_MATCH 判断字符串中所有字符是否均可以在另一字符串中找到 STR_PRINT 将字符串写入aview.log文件 STR_REMOVE_WHITESPACE 删除字符串中所有的头尾空格 STR_SPLIT 从字符串中出现指定字符处切断字符串 STR_SPRINTF 按C语言规则定义的格式得到字符串 STR_SUBSTR 在字符串中从指定位置开始截取指定长度的子字符串 STR_TIMESTAMP 以缺省格式输出当前时间及日期 STR_XLATE 将字符串中所有子串用指定子串代替
• • • • • • • • •
DIFF DIFFERENTIATE DMAT DOT ELEMENT EXCLUDE FIRST FIRST_N INCLUDE INTEGR INTERATE INVERSE LAST LAST_N MAX MAXI MEAN MIN MINI NORM2 NORMALIZE RECTANGULAR RESAMPLE RESHAPE RMS ROWS SERIES
ADAMS常用函数文本说明

ADAMS常用函数文本说明在使用adams的过程中,由于函数比较多,大概有11种之多,如1、Displacement Function2、V elocity Functions3、Acceleration Functions4、Contact Functions5、Spline Functions6、Force in Object Functions7、Resultant Force Functions8、Math Functions9、Data Element Access10、User-Written Subroutine Invocation11、Constants & V ariables。
……在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.50.5 if time = 2.51.0 if time >2.53、AKISPL函数格式:AKISPL (First Independent V ariable, Second Independent V ariable,Spline Name, Derivative Order)参数说明:First Independent V ariable——spline中的第一个自变量Second Independent V ariable (可选) ——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.40.0 0.01 0.42 1.23 2.54 3.64、碰撞函数impact其实质是:用只抗压缩的非线性的弹簧阻尼方法近似计算出单边碰撞力。
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 SubroutineInvocation 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.50.5 if time = 2.51.0 if time >2.53、AKISPL函数格式:AKISPL (First Independent Variable, Second Independent Variable,SplineName, 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.40.0 0.01 0.42 1.23 2.54 3.64、碰撞函数impact其实质是:用只抗压缩的非线性的弹簧阻尼方法近似计算出单边碰撞力。
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 forDisplacement Variable, Stiffness Coefficient, Stiffness Force Exponent,Damping Coefficient, Damping Ramp-up Distance)BISTOP (Displacement Variable, Velocity Variable, Low Trigger forDisplacement Variable, High Trigger for Displacement Variable, StiffnessCoefficient, Stiffness Force Exponent, Damping Coefficient, DampingRamp-up Distance)2.if函数这个函数最好不要使用,他的使用会带来突变,会使运算的时候不收敛。
Adams常用函数介绍

常数函数常用的常数函数(constant):PI圆周率;RTOD弧度转化为度数时的乘积系数,值为180/PI;DTOR度数转化为弧度时的乘积系数,值为PI/ 180。
运动副的驱动函数function:30.0d*time,type:displacement和function:30.0d,type:velocity 作用是一样的,它们都表示角速度为30.0。
同样,function:30.0d*time,type:velocity和function:30.0d,type:acceleration作用也是一样的,它们都表示角加速度为30.0。
一般应优先使用function:30.0d,type:velocity这种表示法,它更简单,更便于理解。
function:5,type:acceleration,表示物体的加速度为常数5;function:STEP( time , 0 , 0 , 5 , 25 ),type:velocity,表示物体的速度从(0,0)变化为(5,25),物体的加速度并不是一个常数,加速度的图形是一条先增后减的弧线。
在定义驱动函数时,如果已知物体的加速度为5,则应采用第一个表达式;如果不知道加速度的变化规律,只知道速度由0,0)变化为(5,25),则应采用第二个表达式。
d是degree度数的简写,在此d并不是单位,而是用来区分滑移运动和旋转运动,代表旋转。
旋转副的驱动函数中函数值后必须加d,如STEP( time , 0 , 0d , 3 , 300d ),而滑移副的驱动函数中函数值后不能加d。
则直接数字,默认单位。
常用的驱动函数STEP格式:STEP (x, x0, h0, x1, h1)参数说明:x ―自变量,可以是时间或时间的任一函数;x0 ―自变量的STEP函数开始值;x1 ―自变量的STEP函数结束值;h0 ―当前时间点相对于上一时间点的函数值增量;h1 ―当前时间点相对于上一时间点的函数值增量。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
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函数里面就可以获得与运动方向相反的作用力。