adams STEP函数
ADAMS中step函数和If函数的最全用法

step函数的两种表示方法相信大家对s tep的用法已经是相当的熟练了,在这里我只是想把自己对step的理解总结一下,希望能对大家有所帮助。
首先简要介绍下step的形式及其各个参数的物理含义:格式:STEP (x, x0, h0, x1, h1)参数说明:x ―自变量,可以是时间或时间的任一函数x0 ―自变量的ST EP函数开始值,可以是常数或函数表达式或设计变量;x1 ―自变量的ST EP函数结束值,可以是常数、函数表达式或设计变量h0 ― STEP函数的初始值,可以是常数、设计变量或其它函数表达式h1 ― STEP函数的最终值,可以是常数、设计变量或其它函数表达式而在实际的运用过程中,它有两种表示方法,一种是嵌入式:STEP (x, x0, h0, x1,(STEP (x, x1, h1, x2,(STEP (x, x2, h2, x3, h2) ))))(当然你可以嵌套更多的)另一种就是增量式:STEP (x, x0, h0, x1, h1)+STEP (x, x1, h2, x2, h3)+STEP (x, x2, h4, x3, h5)+……我常用的是后者,下面就举例(附件请参考s tep.cmd文件)说明下他们的区别。
其实他们都可以表示同一种你所需要的曲线,如下所示曲线:用嵌入式可表示为:step(time,0,0d,3,(step(time,3,0d,5,(step(time,5,5d,8,(step(time,8,5d,10,(step(time,10,0d,12,0d)))))))))用增量式表示为:step(time,3,0,5,5)+step(time,5,0,8,0)+step(time,8,0,10,-5)在使用后者的过程中很多人会误表示为:step(time,0,0d,3,0d)+step(time,3,0d,5,5d)+step(time,5,5d,8,5d)+step(time,8,5d,10,0d)+step(time,10,0d,12,0d)还有一种是错误的:step(time,3,0d,5,5d)+step(time,8,5d,10,0d)这两种都是错误的表示的方法,不信你自己可以试试的总结:从上面的例子中大家可以清楚的看出,增量式明显比嵌入式要简洁的多,但是嵌入式却比增量式思路要清晰、严谨的多,他们各有自己的优点,所以大家可以针对性的使用他们,习惯用什么方式就用什么方式,当然他们还有其他的不同点我还没想到的,也欢迎你多多提出意见。
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帮助文档中解释如下:Definition Returns an array of y values, on a step curve, corresponding to the xvalues.Format STEP (A, xo, ho,x1,h1)Arguments AAn array of x values.xoValue of x at which the step starts ramping from ho to h1.hoValue of h when x is less than or equal to xo.x1Value of x at which the step function reaches h1.h1Value of h when x is greater than or equal to h1.Example The following example steps smoothly from 0.0 to 1.0 over the interval(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函数学习总结

在使用后者的过程中很多人会误表示为: step(time,0,0d,3,0d)+ step(time,3,0d,5,5d)+ step(time,5,5d,8,5d)+ step(time,8,5d,10,0d)+ step(time,10,0d,12,0d) 还有一种是错误的: step(time,3,0d,5,5d)+ step(time,8,5d,10,0d) 这两种都是错误的表示的方法,不信你自己可以试试的 总结:从上面的例子中大家可以清楚的看出,增量式明显比嵌 入式要简洁的多,但是嵌入式却比增量式思路要清晰、严谨的 多,他们各有自己的优点,所以大家可以针对性的使用他们, 习惯用什么方式就用什么方式,当然他们还有其他的不同点我 还没想到的,也欢迎你多多提出意见。
• • • • • • • • •
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
Step函数
• 相信大家对step的用法已经是相当的熟练了,在这里我只 是想把自己对step的理解总结一下,希望能对大家有所帮 助。 • 首先简要介绍下step的形式及其各个参数的物理含义: • 格式:STEP (x, x0, h0, x1, h1) • 参数说明: • Step函数是3次多项式逼近阶跃函数 • Step5函数是5次多项式逼近阶跃函数 • x ―自变量,可以是时间或时间的任一函数 • x0 ―自变量的STEP函数开始值,可以是常数或函 数表达式或设计变量; • x1 ―自变量的STEP函数结束值,可以是常数、函 数表达式或设计变量 • h0 ― STEP函数的初始值,可以是常数、设计变量 或其它函数表达式 • h1 ― STEP函数的最终值,可以是常数、设计变量 或其它函数表达式
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其实质是:用只抗压缩的非线性的弹簧阻尼方法近似计算出单边碰撞力。
Adams2019进阶学习——函数的使用

Adams2019进阶学习——函数的使⽤重点介绍 IF、 STEP、 SPLINE和CONTACT函数的使⽤⼀、基本函数的定义 在动⼒学仿真中,⼒、位移等容易出现函数表达的情形,这种情况下函数的使⽤就必不可少。
函数分两类: 设计过程函数。
主要是在建⽴模型中使⽤,仿真计算过程中其值不可变。
运⾏过程函数。
在仿真计算的过程中,参与计算,随着时间的变化,可以发⽣变化的变量。
注意:有的函数既是设计过程函数,也是运⾏过程函数。
1.过渡函数(STEP)定义 在MSC.ADAMS中,STEP函数近似为⼀个理想的数学上的过渡函数(没有不连续). 避免使⽤不连续的函数,因为不连续的函数容易导致解算过程收敛困难。
STEP函数⽤来描述如驱动或载荷,上升或下降,打开或关闭。
注意:STEP函数常⽤于描述-⼀个值或-⼀个表达式需要从⼀个常数变为另-⼀个常数的情形。
STEP函数的语法规则 STEP (q, q,,f{, 92,f2)其中: q - Independent variable q1 - Initial value for q f - Initial value for f q2 - Final value for q f2 - Final value for f注意:q1< q22. MSC ADAMS中的冲击(IMPACT)函数 ◆⽤于⽤户定义的⼒函数,模拟接触、冲击、碰撞等现象。
◆⾮线性的弹簧和阻尼⼒,由两个部件之间的距离所决定的是否存在的。
◆就像⼀个单纯的压缩弹簧阻尼器,在MSC.ADAMS中,当两个部件之间的参考距离q⼩于⽤户指定的参考距离qo时,该函数起作⽤。
FIMPACT = Off,ifq> qo FIMPACT = On,ifq≤qo IMPACT函数的语法规则. IMPACT(q, q, qo,k, e, Cmaax'd) q-两个对象之间实际的距离(通常使⽤⼀⼀个位移函数定义) q-变量q的时间导数 q1o-触发距离,确定冲击⼒是否起作⽤,该参数应为⼀个实常数。
adams中step函数用法

adams中step函数用法Adams中的步进函数(STEP)是解决非线性问题时常用的一种函数。
STEP函数可以在一段时间内或工况的某个阶段实现指定变量值的突变,结构模型内的力、压力、限位、速度、加速度等物理量,均可通过STEP函数来实施渐变或突变控制。
STEP函数语法格式一般为:STEP (TIME,current_time, initial_value,final_value)。
在Adams中,STEP函数按照工况的进程,即当前的仿真时间,返回一个在指定初始时间和结束时间之间连续变化的值。
在步进函数的语法格式中,current_time是计算结果的时间点,initial_value是初始值,final_value是结束时的值。
如果STEP函数的时间参数设定为实际工况时间,那么在仿真过程中,STEP函数的取值将根据实际工况时间的推移按预设的规律进行变化。
例如,如果STEP函数的语法格式为:STEP(TIME, 0, 0, 5, 1),其含义是在0s到5s的时间段内,步进值从0变化到1。
其中,0s即初始时间,5s即结束时间,步进值在这一时间段,从0线性变化到1。
其他的时间点这个值为0。
在这中间的区间,会按照线性变化的规则进行变化。
Adams中的步进函数STEP的值在指定的开始和结束时间以外默认为0,仅在指定的时间范围内,从初值变化到终值。
此外,STEP函数的设定并不影响仿真的总时间,仅仅是根据仿真过程中的实时时间给予特定变量一个与时间有关的值。
在实际应用中,STEP函数常用于仿真模型中的变量控制,如控制负载的施加、初始状态的设定、运动驱动的调控等。
通过灵活使用STEP函数,能够更准确地模拟现实工况的动态响应过程。
总的来说,Adams中的STEP函数能够非常便利地实现在仿真过程中的变量控制,对于处理复杂工况和非线性问题有着重要的应用价值。
Adams常用函数介绍

Adams常用函数介绍常数函数常用的常数函数(contant):PI圆周率;RTOD弧度转化为度数时的乘积系数,值为180/PI;DTOR度数转化为弧度时的乘积系数,值为PI/180。
运动副的驱动函数常用的驱动函数STEP格式:STEP(某,某0,h0,某1,h1)参数说明:某―自变量,可以是时间或时间的任一函数;某0―自变量的STEP函数开始值;某1―自变量的STEP函数结束值;h0―当前时间点相对于上一时间点的函数值增量;h1―当前时间点相对于上一时间点的函数值增量。
做减速运动,速度由300d变为0d,如下图所示。
STEP函数是一个用三次多项式构造而成的阶跃函数,STEP5是用五次多项式构造而成的。
注意:1)Adam函数中,参数可以为常量、设计变量、表达式、测量、模型元素的参数(通过函数构造器中的gettingobjectdata-inertobjectname)等。
2)要重视测量在函数表达式中的应用,使用测量可以省去很多函数的使用。
如:build-meaure-pointtopoint可以测量两个对象(如marker点)在某一方向上的相对位移、角位移、速度、角速度、加速度、角加速度等值,这样就没必要使用D某(OBJECT,OBJECT,OBJECT)等函数了。
4)在添加运动副时,要重视视图定向的选择。
因为运动副的方向为normaltogrid,视图定向决定着运动副的正负方向。
其中,角速度的方向应采用右手法则确定。
5)驱动函数定义时,位移、速度的初始值IC(initialcondition)的设定:(1)只对滑移副有用,对旋转副没用(对旋转副可能也有用?但是很不好用。
如小车车轮和小车架之间的旋转副,设定了两者的相对旋转角度对小车架相对于轨道的位置也没用)。
(2)所设定的是运动副中第一个零件相对于第二个零件的相对位移或速度,是相对值。
(3)在进行动力学仿真或运动学仿真等时,都会自动进行装配计算,即初始条件计算。
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 forDisplacement 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, StiffnessCoefficient, Stiffness Force Exponent, Damping Coefficient, Damping Ramp-up Distance)3.if函数这个函数最好不要使用,他的使用会带来突变,会使运算的时候不收敛。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
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)。