ADAMS常用函数

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

在使用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
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) 参数说明:
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)这里它由八个参数定义。

它与函数IMPACT类似。

可以这么说: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。

本文出自: 模具家园论坛(/)
原文链接:/thread-22128-1-1.html
6.、设计变量(Design Variable)与状态变量(State Variable)的比较:设计变量只是一个预处理符号,给定值后,在仿真过程中不会改变,又称为ADAMS/View变量,在ADAMS/View 数据浏览器中简称为variable。

状态变量,其值在每个仿真步长中都在发生变化,又称为ADAMS/Solver变量,在ADAMS/View数据浏览器中称为ADAMS/Variable,而在ADAMS/Solver 数据集中称为VARIABLE。

7.MOTION函数
格式为MOTION(id,jflag,comp,rm)
Id:整型数据,指定MOTION的id号。

Jflag:整型数据,指定所需计算的力或力矩的MARKER点。

0:指定为I MARKER;1:指定为J MARKER。

Comp:整型数据,指定力或力矩的分量类型。

1=合力;
2=作用力在x方向的分量;
3=作用力在y方向的分量;
4=作用力在z方向的分量;
5=合力矩;
6=力矩在x方向的分量;
7=力矩在y方向的分量;
8=力矩在z方向的分量。

rm:指定坐标系,若设置为0,表示为全局坐标系。

例如:MOTION(.model_1.MOTION_1,0,5,0)
7、在使用ADAMS 进行建模和仿真时,与ADAMS/Solver有关的需要注意的问题如下:(1)建模时应尽量避免不连续的出现。

(2)在可行的情况下,总是首先进行STATIC 分析。

有时静平衡会比动力学分析更难达到。

到时只关心系统的动态行为而无法得到静平衡,可以增加STATIC D的Error或者跳过STATIC 分析。

(3)如果GSTIFF 在开始阶段就出错,或者根本无法开始计算。

这通常是初始条件(Initial Condition)造成的,这时应当设定Hinit值,使积分不至于在起步阶段发散。

(4)在一些特殊情况下,例如脉冲激励时,应通过Hmax来控制积分步长。

此时Hmax应当小于脉冲宽度。

(5)若计算结果存在明显不合理的尖峰,通常是由于积分步长的改变造成的,此时可以降低Hmax或者设Hinit=Hmax。

(6)STATIC 分析时很难的分析,尤其是初始位置离平衡位置远时。

当静平衡无法达到时,通常采用下列方法:
1)增大Maxit,如200;
2)调整Stability,采用逐步逼近的方法达到平衡;
3)减小Alimit,通常为30D,对于一些有问题的模型可以设定其为10D。

相关文档
最新文档