您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 国内外标准规范 > UGNX运动仿真STEP、SHF、POLY函数详解及综合应用
STEP函数详解使用UG运动仿真模块的伙伴们都该知道编写运动仿真的函数式是个难点,也是重点,其中又以STEP函数式使用最多,也是比较容易理解的一种运动函数。今天在这里给大家简单分析讲解一下。那么首先要了解STEP函数的格式:STEP(x,x0,h0,x1,h1)其上五个变量中,第一个(x)是横坐标定义;第二个(x0)是时间起点(就是说,你要他什么时候开始递加递减;);第四个(x1)是时间终点(你要他什么时候结束递加递减);第三个(h0)为递加递减数值的起点;第五个(h1)为相对于0点的递加递减数值,这个是你可以自行修改的。下面举个例子:STEP(x,3,0,6,100),意义:第一秒到第三秒,位移为0,即物体静止;第三秒到第六秒,物体位移100。复杂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)+……嵌入式的复杂函数式STEP(x,12,0,16,STEP(X,16,260,20,STEP(X,24,0,28,STEP(X,28,260,32,STEP(X,34,0,37,STEP(X,37,260,40,0))))))意义:0-12秒,物体静止;12-16秒,物体位移260;16-20秒,物体回到初始0位置,也就是相对上一个位置做了-260位移;20-24秒,物体静止;24-28秒,位移260;28-32秒,物体回到初始0位置,也就是相对上一个位置又做了-260位移;32-34秒,物体静止;34-37秒,物体位移260;37-40秒,物体回到初始0位置。(绝对模式)STEP(x,0,0,3,STEP(x,3,200,9,STEP(x,9,-200,12,STEP(x,21.5,0,24,STEP(x,32,150,34,STEP(x,40,259.8,42,0))))))意义:0-3秒,物体位移200;3-9秒,物体位移-200,即期间物体移动了400;9-12秒,物体回到初始0位置,即移动了200;12-21.5秒,物体静止;21.5-24秒,物体位移150;24-32秒,物体静止;32-34秒,物体位移259.8;34-40秒,物体静止;40-42秒,物体回归初始0位置。(绝对模式)增量式的复杂函数式STEP(x,0,0,12,0)+STEP(x,12,0,16,260)+STEP(X,16,0,20,-260)+STEP(x,20,0,24,0)+STEP(X,24,0,28,260)+STEP(X,28,0,32,-260)+STEP(x,32,0,34,0)+STEP(X,34,0,37,260)+STEP(X,37,0,40,-260)等同于:STEP(x,12,0,16,260)+STEP(X,16,0,20,-260)+STEP(X,24,0,28,260)+STEP(X,28,0,32,-260)+STEP(X,34,0,37,260)+STEP(X,37,0,40,-260)亦等同于:STEP(x,12,0,16,STEP(X,16,260,20,STEP(X,24,0,28,STEP(X,28,260,32,STEP(X,34,0,37,STEP(X,37,260,40,0))))))意义:0-12秒,物体静止,原地不动;12-16秒,物体相对上一位置位移260;16-20秒,物体相对上一位置移动-260;20-24秒,物体静止;24-28秒,相对上一位置位移260;28-32秒,物体相对上一位置移动-260;32-34秒,物体静止;34-37秒,相对上一位置位移260;37-40秒,物体相对上一位置移动-260。(相对模式)举个例子STEP(x,1,0,2,20)+STEP(x,6,0,12,-40)意义:1秒到2秒:从0度转到20度;2秒到6秒:电机保持在20度位置上不动;6秒到12秒:由20度反转40度,结果为停留在-20度。所以,增量式有两个特性必须记住:1,除非输入新的STEP,否则,上一个STEP的渐变结果将在接下来的时间里,一直保持。2,每个STEP只能从0开始渐变,所以,每一次的STEP都是相对于上一次操作结果的累加计算。特点:有运动就写,无运动就不写。所定义的时间是绝对的,移动的值却是相对的(所以H0都为0)。重点提示:在旋转驱动中,如果选择,则在STEP函数中转360度就不需要加“d”,例如:STEP(time,0,0,2,360),表示在2秒内转360度一周。如果选择,则要事先在表达式中建表达式如K=2*pi(),类型为恒定,再在XY函数管理器里的STEP函数中调用表达式K。例如:STEP(x,0,-2*K,2,2*K)+STEP(x,3,0,5,-4*K),表示进行仿真前先反转2周做为初始(0秒时),2秒内正转4周,停1秒,第3秒到第5秒的2秒内反转4周。(因为在NX8.5中,STEP函数不支持直接调用pi(),deg(),rad()等函数。)举例对比增量式与嵌入式的区别上图可以写成增量式:STEP(x,2,1,3,3)+STEP(x,3,0,4,0)+STEP(x,4,0,5,-3)或STEP(x,2,1,3,3)+STEP(x,4,0,5,-3);也可以写成嵌入式:STEP(x,2,1,3,STEP(x,4,3,5,0))如图验证:备注:网上很多教材都把这个给搞错了!不同时间段,连杆做不同函数运动形式t0-t1时间段内,让连杆以f(x)函数形式运动;t1-t2时间段内,让连杆以直线形式运动,在t2-t3内,让连杆以g(x)函数形式运动,以此实现连杆在不同时间段以两种或多种函数形式运动。※t0-t1时间段函数图形转换:按照相同时间段将第一个函数运动图转换为第二个函数运动图,按照step函数表达可以写出:t0-t1时间段,step表达为:(step(time,t0+0.001,0,t0,1)+step(time,t1+0.001,0,t1,-1))由于step函数时间段起始和结束时间点不能相等,也就是不能是垂直直线形式图变,因此可以在时间点t0附近添加一个微小时间段,近似垂直直线形式突变。如果将转换形式的step函数*f(x),那么连杆在t0-t1时间段的运动形式就可以以f(x)运动,大家也可以从函数值上来理解,就是1乘以任何数值无法改变被乘数值,即f(x)任何函数值与1相乘,数值不变,即实现连杆在t0-t1时间内以f(x)形式运动。由此可知在t0-t1时间段内,f(x)运动形式表达为:(step(time,t0+0.001,0,t0,1)+step(time,t1+0.001,0,t1,-1))*f(x)※t1-t2时间段函数图形转换:在t1-t2时间段,这个时间段为直线运动,按照矩形方波图形,step函数形式表达:step(time,t1+0.001,0,t1,1)+step(time,t2+0.001,0,t2,-1)依据第一个时间段详细讲解,可知,t1-t2时间段内,连杆运动形式表达为:(step(time,t1+0.001,0,t1,1)+step(time,t2+0.001,0,t2,-1))*h1※t2-t3时间段函数图形转换:t2-t3时间段,根据矩形方波,step表达为step(time,t2+0.001,0,t2,1)+step(time,t3+0.001,0,t3,-1)由上可知,在t2-t3时间段内,g(x)运动形式表达为(step(time,t2+0.001,0,t2,1)+step(time,t3+0.001,0,t3,-1))*g(x)※总结:不同时间段,不同函数运动形式step表达方式,只需要将每个时间段变成0-1的矩形方波,将时间段开始和结束时间点添加一个微小时间段,对开始时间点添加微小时间增量的时间段,进行step函数书写后,再对结束时间点进行相同的step函数书写,将开始和结束时间的step函数进行加和后再乘以相应的函数,即可完成相应函数的运动形式。因此上图中连杆的两种函数g(x)、f(x)加一条直线的step函数控制为:(step(time,t0+0.001,0,t0,1)+step(time,t1+0.001,0,t1,-1))*f(x)+(step(time,t1+0.001,0,t1,1)+step(time,t2+0.001,0,t2,-1))*h1+(step(time,t2+0.001,0,t2,1)+step(time,t3+0.001,0,t3,-1))*g(x)多项式函数poly(x,x0,a0,a1,a2,……,a30)=a0+a1*(x-x0)+a1*(x-x0)2+……+a30*(x-x0)30x是自变量。x0为初始值,a0到a30为系数,当x0=0时,取到a1系数,则多项式为一条一次曲线,y=a0+a1*x,当取到a2系数时,则多项式为一条二次曲线(抛物线),y=a0+a1*x+a2*x2由此可知,多项式函数是控制连杆线性运动或二次曲线运动的函数,x取变量time余弦函数——简谐运动shf(x,x0,a,w,phi,b)=asin(w(x-x0)-phi)+b简谐运动既是最基本也是最简单的一种机械振动,如果一个质点的运动方程有如下形式:即,质点的位移随时间的变化是一个简谐函数,显然此质点的运动为简谐振动。w为角速度,单位为度/秒或者弧度/秒。下图为简谐运动的图像,表示的是振动物体的位移随时间变化的规律。是一条正弦或余弦曲线。由以上讲解可知,shf函数中,x为变量,一般取time,x0为初始时间点,a为振幅,w为角速度,phi为初项,也就是t等于0时,角度值,b表示截距,也就是余弦函数的位移。综合应用实例连杆运动规律图如下建模空间,曲线工具,直线命令,在xy平面内绘制两条垂直直线:进入运动仿真,新建运动仿真,默认设置确定,新建连杆,由于直线不是实体,因此需要设置质心和质量等参数,任意设置即可,另一条直线连杆设置相同。仿真导航器里,两个直线连杆:第一个滑动副,选择连杆1,由于是直线,所以“选择连杆”、“指定原点”、“指定矢量”三个直接被选中,如果方向不对可以利用反向进行调整驱动,设置恒定速度10mm/s,根据规律图2-3秒时间段可知,2秒时位移为20,3秒时位移为30,因此驱动速度为10。第二个滑动副,选择连杆2,选择方法和上一个相同,基本里选择连杆1,即连杆2相对于连杆1运动驱动,选择函数点击函数向下箭头,调出函数对话框,默认设置,选择新建函数按钮切换到运动函数,拉到最后,里面有step函数,poly函数和shf函数,按照图片所示,利用这三个函数对连杆进行驱动双击任何一个函数后,函数自动被添加上来,依次来修改参数依据运动曲线时间段被分解成0-2,2-3,3-4,4-8,8-10等5个时间段,根据之前的讲解,将每个时间段转换成矩形方波,进行step函数表达,结果分别为:时间段0-2秒,y=20的直线运动:(STEP(time,0.0001,0,0,1)+STEP(time,2.0001,0,2,-1))*20时间段2-3秒,y=10t的一次线性运动,由于连杆1的运动速度为10mm/s,因此,这个时间段内运动函数即为y=10t,转换为多项式函数表达,a0即为截距0,a1系数为10,x0初项为0:(STEP(time,2.0001,0,2,1)+STEP(time,3.0001,0,3,-1))*POLY(time,0,0,10)时间段3-4秒,y=30的直线运动:(STEP(time,3.0001,0,3,1)+STEP(time,4.0001,0,4,-1))*30时间段4-8秒,y=20*sin(360/4*t)+30的正弦函数,振幅为20;w角速度,时间段内为4s,想让连杆2在4秒内运动一个完整波形,也就是360度,因此角速度计算为360/
本文标题:UGNX运动仿真STEP、SHF、POLY函数详解及综合应用
链接地址:https://www.777doc.com/doc-3597542 .html