【讨论】关于加速减速运动
我希望机构的执行端沿一圆周作加速减速运动,于是定义了以下函数:X方向位置:
200*cos( (step(time,0,0,0.5,2*pi)+step(time,0.5,0,1,-2*pi)) *time)
Y方向位置:
200*sin((step(time,0,0,0.5,2*pi)+step(time,0.5,0,1,-2*pi)) *time)
仿真结果走不出一个圆,走到大半就回头走了!
但如果以下面的函数定义,就能走出一个圆了:
X方向位置:
200*cos( step(time,0,0,0.5,2*pi)*time)
Y方向位置:
200*sin(step(time,0,0,0.5,2*pi)*time)
请问为什么会出现这样的问题, 两式仅差一个STEP函数喔?
那请问要沿圆周作加速减速运动应如何定义位置函数? 谢谢.
回复: 【讨论】关于加速减速运动
再问回复: 【讨论】关于加速减速运动
你给出的第一个函数step(time,0,0,0.5,2*pi)+step(time,0.5,0,1,-2*pi)图形如下:回复: 【讨论】关于加速减速运动
1s以后值为零回复: 【讨论】关于加速减速运动
martinpan 老兄您好,您将200*cos( (step(time,0,0,0.5,2*pi)+step(time,0.5,0,1,-2*pi)) *time)后的-2*PI更改为4*pi就可以了,在理论上也是说得的过去的,我试过了,可以的,仅供你参考,祝你好运/回复: 【讨论】关于加速减速运动
chenjbao,非常感谢您的帮助。可你的方法仅仅是加大了电机的角速度,但并没有解决根本的问题。仅仅是走了一圈才往回走而不是原来那样走半圈就往问走。
我的目标是使执行端从0秒时开始以STEP函数的方式沿圆周加速运动;到0.5秒时开始以STEP函数的方式减速运动;到1秒末刚好停下来。
回复: 【讨论】关于加速减速运动
martinpan 老兄您好。我分析了一下您的问题,我感觉如果是-2PI的话,不可能继续往前走,因为adams 认定的坐标系是逆时针为正方向,顺时针为正方向,你看看加速度可不可以。不过如果加速度那样计算可能会带来麻烦, 祝你成功回复: 【讨论】关于加速减速运动
可我定义的是位置函数啊。应该没有顺时针逆时针的问题吧?如果要实现我所要的运动,应如何定义函数?
回复: 【讨论】关于加速减速运动
如果要实现我所要的运动,应如何定义函数?回复: 【讨论】关于加速减速运动
step函数本身就是先加速后减速的,用下面的函数做1s的仿真也可以满足转一圈先加速后减速的要求(如附件),当然,根据需要也可以去掉*time。X方向位置:
200*cos( step(time,0,0,1,2*pi)*time)
Y方向位置:
200*sin( step(time,0,0,1,2*pi)*time)
用下面的函数当然要转回去了,因为逆时针方向为正。
X方向位置:
200*cos( (step(time,0,0,0.5,2*pi)+step(time,0.5,0,1,-2*pi)) *time)
Y方向位置:
200*sin( (step(time,0,0,0.5,2*pi)+step(time,0.5,0,1,-2*pi)) *time) :hug::hug::hug:
页:
[1]