CN103279069A - 用于数控机床的三角函数二阶连续可导加减速算法 - Google Patents

用于数控机床的三角函数二阶连续可导加减速算法 Download PDF

Info

Publication number
CN103279069A
CN103279069A CN 201310095677 CN201310095677A CN103279069A CN 103279069 A CN103279069 A CN 103279069A CN 201310095677 CN201310095677 CN 201310095677 CN 201310095677 A CN201310095677 A CN 201310095677A CN 103279069 A CN103279069 A CN 103279069A
Authority
CN
China
Prior art keywords
max
delta
acceleration
deceleration
speed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN 201310095677
Other languages
English (en)
Inventor
刘清建
王太勇
张玥
支劲章
卢志理
王冬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kunshan Tianda Jingyi Numerical Control Science & Technology Development Co Ltd
Original Assignee
Kunshan Tianda Jingyi Numerical Control Science & Technology Development Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kunshan Tianda Jingyi Numerical Control Science & Technology Development Co Ltd filed Critical Kunshan Tianda Jingyi Numerical Control Science & Technology Development Co Ltd
Priority to CN 201310095677 priority Critical patent/CN103279069A/zh
Publication of CN103279069A publication Critical patent/CN103279069A/zh
Pending legal-status Critical Current

Links

Images

Abstract

一种用于数控机床的三角函数二阶连续可导加减速算法,本发明在分析三角函数的特性基础上,结合通用S型加减速曲线算法的优势,提出了改进型的三角函数算法,对于其速度规划进行了详细的阐述,并对于没有匀速运动过程的最高速度的求解提出一种类举式的推算方法,并依据三角函数加减速的运算特性,给出具体求解过程。随后给出其加减速过程的八种情况的仿真结果,验证了方法的可靠,尤其算法在频繁的速度变化中,只进行未含有匀加、减速过程的加减速方式,实现了加加速的连续可导,具有更优的性能表现。

Description

用于数控机床的三角函数二阶连续可导加减速算法
技术领域
本发明涉及一种改进型的三角函数二阶连续可导加减速算法,本发明属于计算机数控技术领域,具体涉及数控系统运动控制中的加减速算法。
背景技术
高速高精作为当前现代制造业的一个发展趋势,速度的平稳光滑过渡,将减少对于机床本身的冲击,从而避免引起如振动、设备损坏等。
目前常用的加减速方法主要有以下几个:直线加减速算法、指数加减速算法、S曲线加减速算法和三角函数加减速算法等。直线加减速算法简便,耗时较短,但是在速度开始与截止阶段具有明显的突变,速度未能实现平稳过渡;指数加减速算法相比与直线加减速,平滑性好,运动精度较好,但耗时较长,并与直线加减速算法一样在速度的启停均存在突变。还有学者提出将直线与指数两种加减速方法相结合,以避免速度突变,但是由于运算的复杂性,其具体操作较难。基于此,为实现加速度在启停处规避突变,引入了加加速度,由其进行加速度的加减变化,从而形成三次样条函数,保证了速度的平稳过渡,它将速度变迁过程分为7个段,但是加加速度则非连续。在此基础上,有学者对于加加速度进行研究,提出对加加速进行直线加减速处理。还有专家利用S曲线加减速特性,对于其初始速度、匀速度、末速度进行提前预判处理并分析了转接角度和长度对于速度的约束;在S曲线加减速的基础上,利用正余弦的曲线特性,拟合其加速度的过程,进而实现速度的平稳光滑过渡,从而衍生出三角函数加减速算法。有学者提出利用三角函数构建加减速曲线,主要是利用0-π之间正弦曲线的方式构建加速曲线,进而形成以此实现加加速、加速度的连续可导,从而达到速度平稳光滑过度的目的。但其在整个加减速过程中没有充分发挥机床的性能,即没有有效利用最大允许加速度,而是为保证线型对其进行限制,与S型加减速曲线相比耗费时间较长。有学者利用契比雪夫多项式对加速度进行二阶多项式逼近求解,从而避免三角函数运算的复杂性。
从上述分析可知,S曲线加减速与三角函数加减速是采用不同的曲线实现来完成速度的平稳光滑过渡。而在加加速度的处理方面三角函数具有较优的能力,但当前的三角函数加减速则由于为保证速度线型无法充分发挥加加速度、加速度最大允许值的优势,造成速度无法在较短时间、距离内达到期望值。基于此,本发明提出了基于三角函数的改进型二阶可导加减速算法。
发明内容
本发明提供一种用于数控机床的三角函数二阶连续可导加减速算法。
为达到上述目的,本发明采用的技术方案是:一种用于数控机床的三角函数二阶连续可导加减速算法,
定义:j(t)为加加速度;a(t)为加速度;v(t)为速度;s(t)为位移;t为时间;aramax为实际采用的最大加速度;jmax表示机床允许的最大的加加速度值;π为圆周率;amax表示机床允许的最大加速度值;
(1)依据正弦曲线及其导数的特性,进行推导可得知,在进行加速运动过程中,其相关公式如下所示:
j ( t ) = π t am · a ra max · cos tπ t am - - - ( 3 - 1 ) ;
a ( t ) = a ra max · sin tπ t am - - - ( 3 - 2 ) ;
v ( t ) = v s + a ra max · t am π a ra max · t am π tπ t am - - - ( 3 - 3 ) ;
s ( t ) = v s t + a ra max t am π a ra max t 2 am π 2 tπ t am ( 3 - 4 ) ;
其中,t∈[0tam];
其具体约束关系如下:
t am = π a ra max j max aramax∈[0 amax]
(3-5);
同时将t=tam带入公式(3-5),得到:
v = v s + a ra max · t am π + a ra max · t am π - - - ( 3 - 6 ) ;
从而推出:
v - v s = 2 a ra max · t am π - - - ( 3 - 7 ) ;
又因为公式(3-5),故此:
a ra max = ( v - v s ) j max 2 ≤ a max
t am = π ( v - v s ) 2 j max - - - ( 3 - 8 ) ;
由上式可知,当
Figure BSA00000868392900033
时,采用上述的加速方式进行加速运算;当所述加速运动过程的终点速度v与加速运动过程的初始速度vs之差大于时,则采用如下公式:
加加速度:
j ( t ) = π t am a max cos ( tπ t am ) 0 ≤ t ≤ t am 2 - - - ( 3 - 9 ) ;
j(t)=0 0 ≤ t ≤ v - v s a max - 2 t am π - - - ( 3 - 10 ) ;
j ( t ) = π t am a max cos ( tπ t am ) t am 2 ≤ t ≤ t am - - - ( 3 - 11 ) ;
即在所述加速运动过程中,当所述加速度达到最大时,保持一段时间;
加速度:
a ( t ) = a max sin tπ t am 0 ≤ t ≤ t am 2 - - - ( 3 - 12 ) ;
a(t)=amax 0 ≤ t ≤ v - v s a - 2 t am π - - - ( 3 - 13 ) ;
a ( t ) = a max sin ( tπ t am ) t am 2 ≤ t ≤ t am - - - ( 3 - 14 ) ;
速度:
v ( t ) = v s - a max t am π cos tπ t am + a max t am π 0 ≤ t ≤ t am 2 - - - ( 3 - 15 ) ;
v ( t ) = v s + a max t m π + a max t 0 ≤ t ≤ v - v s a - 2 t am π - - - ( 3 - 16 ) ;
v ( t ) = v - a max t am π a max t am π ( tπ t am ) t am 2 ≤ t ≤ t am - - - ( 3 - 17 ) ;
s ( t ) = v s t + a max t am π a max t 2 am π 2 sin tπ t am 0 ≤ t ≤ t am 2 - - - ( 3 - 18 ) ;
位移:
s ( t ) v s t a max t am π 1 2 a max t 2 0 ≤ t ≤ v - v s a - 2 t am π - - - ( 3 - 19 ) ;
s ( t ) = v ( t - t am 2 ) - a max t am π ( t - t am 2 ) + a max t am 2 π 2 - a max t am 2 π 2 sin tπ t am
t am 2 ≤ t ≤ t am - - - ( 3 - 20 ) ;
总共的运行时间:
t a _ total = t m + v - v s a - 2 t m π
带入计算为:
t a _ total = v - v s a max + ( π - 2 ) a max j max - - - ( 3 - 21 ) ;
其中:tam表示整个加速运行时间;aramax为实际采用的最大加速度;vs表示加速运动过程的初始速度;v表示加速运动过程的终点速度;
(2)减速运动过程是加速运动过程的反过程,下式均为数据型,不含方向矢量,其相关公式如下所示:
加加速度:
j ( t ) = - π t dm a max cos ( tπ t dm ) 0 ≤ t ≤ t dm 2 - - - ( 3 - 22 ) ;
j(t)=0 0 ≤ t ≤ v - v e a max - 2 t dm π - - - ( 3 - 23 ) ;
j ( t ) = - π t dm a max cos ( tπ t dm ) t m 2 ≤ t ≤ t m - - - ( 3 - 24 ) ;
加速度:
a ( t ) = - a max sin tπ t dm 0 ≤ t ≤ t dm 2 - - - ( 3 - 25 ) ;
a(t)=-amax 0 ≤ t ≤ v - v e a max - 2 t dm π - - - ( 3 - 26 ) ;
a ( t ) = - a max sin ( tπ t dm ) t dm 2 ≤ t ≤ t dm - - - ( 3 - 27 ) ;
速度:
v ( t ) = v + a max t dm π cos tπ t dm - a max t dm π 0 ≤ t ≤ t dm 2 - - - ( 3 - 28 ) ;
v ( t ) = v - a max t dm π - a max t 0 ≤ t ≤ v - v e a max - 2 t dm π - - - ( 3 - 29 ) ;
v ( t ) = v e + a max t dm π + a max t dm π cos ( tπ t dm ) t dm 2 ≤ t ≤ t dm - - - ( 3 - 30 ) ;
位移:
s ( t ) = vt - a max t dm π t + a max t dm 2 π 2 sin tπ t dm 0 ≤ t ≤ t dm 2 - - - ( 3 - 31 ) ;
s ( t ) a max t dm π 1 2 a max t 2 0 ≤ t ≤ v - v e a max - 2 t dm π - - - ( 3 - 32 ) ;
s ( t ) v e ( t - t dm 2 ) a max t dm π ( t - t dm 2 ) - a max t dm 2 π 2 + a max t dm 2 π 2 sin tπ t dm
t dm 2 ≤ t ≤ t dm - - - ( 3 - 33 ) ;
其中:tdm表示整个减速运行时间;ardmax表示实际采用的最大减速度;v表示运动过程的初始速度、ve表示运动过程的终点速度;
其中:
t dm = π a max j max - - - ( 3 - 34 ) ;
当其不含匀减速部分,即
Figure BSA00000868392900064
时,减速算法进一步简化为:
j ( t ) = - π t dm · a rd max · cos tπ t dm
a ( t ) = - a rd max · sin tπ t dm
v ( t ) = v - a rd max · t dm π + a rd max · t dm π · cos tπ t dm - - - ( 3 - 35 ) ;
s ( t ) = vt - a rd max t m π t + a rd max t dm 2 π 2 sin tπ t dm t∈[0tdm]
由上述减速相关公式可以得知:
a rd max = ( v - v e ) j max 2 ≤ a max - - - ( 3 - 36 ) ;
t dm = πa rd max j max = π ( v - v e ) 2 j max - - - ( 3 - 37 ) ;
由上述分析可以得知,整个加减速过程中共存在以下八种情况:
(1)加减速过程中均不含有匀速过程,且含有匀速运行过程;
(2)加减速过程中均含有匀速过程,且含有匀速运行过程;
(3)加减速过程中只有加速度过程中含有匀速过程,且含有匀速运行过程;
(4)加减速过程中只有减速度过程中含有匀速过程,且含有匀速运行过程;
(5)加减速过程中均没有匀速过程且不含有匀速运行过程;
(6)加减速过程中只有减速度过程中含有匀速过程,且不含有匀速运行过程;
(7)加减速过程中只有加速度过程中含有匀速过程,且不含有匀速运行过程;
(8)加减速过程均含有匀速加减过程,且不含有匀速运行过程;
一、整个运动过程中含有匀速运行过程
Figure BSA00000868392900071
时,加速过程中不存在匀速过程;反之,则加速过程中存在匀速过程;减速过程是一个与加速度过程相逆的过程,算法一致;
对于上述两种情况,由于v,vs,amax,jmax已知,故可以求知运行的距离sa,sd,而后与整个过程的距离s对比;
若s-sd-sa≤0,则整个过程不存在匀速运行过程;
反之,则存在匀速运行过程,其距离sy为:sy=s-sd-sa,其运行时间ty为:
t y = s - s d - s a v - - - ( 3 - 38 ) ;
二、整个运动过程中未含有匀速运行过程
设在整个加减速运动过程中的最大运行速度
Figure BSA00000868392900073
即取vs,ve中的较大的一个速度进行只有加速过程/减速过程未含有匀加速过程/匀减速过程,处于匀加速过程/匀减速过程的临界状态,另一个速度的变化过程中含有匀加速过程或匀减速过程,而后依据位移公式可以得知此种情况下的运行距离:smax_1,而后分以下几种情况:
(1)smax_1<s
表示这样获取的速度小于实际可达的最大速度;其加速过程、减速过程均含有匀速过程;假设其匀速加速过程、匀速减速过程的新增运行时间为Δtmax_1,并且,vs<vs,则
Figure BSA00000868392900081
依据位移公式可以得知:
t am = πa max j max
t ay = v e + 2 a max 2 j max - v s a max - 2 t m π = v e + 2 a max 2 j max - v s a max - 2 πa max j max π = v e - v s a max - - - ( 3 - 39 ) ;
t dm = πa max j max
tdy=0
s max _ 1 _ a 1 = v s t am 2 + a max t am π t am 2 - a max t am 2 π 2 sin t am 2 π t am = v s πa max 2 j max + πa max 3 2 j max 2 - a max 3 j max 2
s max _ 1 _ ay 1 = v s v e - v s a max + a max t am π v e - v s a max + 1 2 a max ( v e - v s a max ) 2
= v s v e - v s a max + πa max 2 j max v e - v s a max + 1 2 a max ( v e - v s a max ) 2
s max _ 1 _ a 2 = ( v e + 2 a max 2 j max ) t am 2 - a max t am π t am 2 + a max t am 2 π 2 - a max t am 2 π 2 sin t am π t am
= ( v e + 2 a max 2 j max ) πa max 2 j max - πa max 3 2 j max 2 + a max 2 j max 2
s max _ 1 _ d 1 = ( v e + 2 a max 2 j max ) t dm 2 - a max t dm π t dm 2 + a max t dm 2 π 2 sin t dm 2 π t dm
= ( v e + 2 a max 2 j max ) 2 a max j max - π a max 3 2 j max 2 + a max 3 j max 2 - - - ( 3 - 40 ) ;
s max _ 1 _ d 2 = v e t dm 2 + a max t dm π t dm 2 - a max t dm 2 π 2 + a max t dm 2 π 2 sin t dm π t dm
= v e πa max 2 j max + πa max 3 2 j max 2 - a max 3 j max 2
S max _ 1 = S max _ 1 _ a 1 + S max _ 1 _ ay 1 + S max _ 1 _ a 2 + S max _ 1 _ d 1 + S max _ 1 _ d 2
= ( v s + πa max 2 j max ) v e - v s a max + ( v s + 3 v e + 4 a max 2 j max ) πa max 2 j max + 1 2 a max ( v e - v s a max ) 2 - - - ( 3 - 41 ) ;
当增加Δtmax_1之后,最大速度变为
Figure BSA00000868392900097
其各个阶段运行增加的位移为:
S max _ 1 _ ay 1 z = v s Δt max _ 1 + a max t m π Δt max _ 1 + 1 2 a max ( Δt max _ 1 ) 2 (3-42);
= v s Δt max _ 1 + a max 2 j max Δt max _ 1 + 1 2 a max ( Δt max _ 1 ) 2
s max _ 1 _ dy 1 z = ( v e + 2 a max 2 j max ) Δt max _ 1 - a max t m π Δt max _ 1 1 2 a max ( Δt max _ 1 ) 2 (3-43);
= ( v e + 2 a max 2 j max ) Δt max _ 1 - a max 2 j max Δt max _ 1 - 1 2 a max ( Δt max _ 1 ) 2
s max _ 1 _ ad 1 z = ( v e + 2 a max 2 j max + a max Δt max _ 1 ) ( Δt max _ 1 + t am ) - ( v e + 2 a max 2 j max ) t am
+ ( v e + 2 a max 2 j max + a max Δt max _ 1 ) ( Δt max _ 1 + t dm ) - ( v e + 2 a max 2 j max ) t dm - - - ( 3 - 44 ) ;
= 2 ( v e + 2 a max 2 j max ) Δt max _ 1 + a max ( 2 Δt 2 max _ 1 + Δt max _ 1 t am + Δt max _ 1 t dm )
S max _ lz = S max _ l _ aylz + S max _ l _ dylz + S max _ l _ adlz
= ( v s + v e + 2 a max 2 j max ) Δ t max _ 1 + 2 ( v e + 2 a max 2 j max ) Δ t max _ 1       (3-45);
+ a max ( 2 Δ t max _ 1 2 + Δ t max _ 1 t am + Δ t max _ 1 t dm )
= 2 a max Δ t max _ 1 2 + ( v s + 3 v e + 4 a max 2 j max + t am + t dm ) Δ t max _ 1
又Smax_1z+Smax_1=S,故
2 a max Δ t max _ 1 2 + ( v s + 3 v e + 4 a max 2 j max + t am + t dm ) Δ t max _ 1 +       (3-46);
( v s + π a max 2 j max ) v e - v s a max + ( v s + 3 v e + 4 a max 2 j max ) π a max 2 j max + 1 2 a max ( v e - v s a max ) 2 - s = 0
令:
A=2amax
B = v s + 3 v e + 4 a max 2 j max + t am + t dm - - - ( 3 - 47 ) ;
C = ( v s + π a max 2 j max ) v e - v s a max + ( v s + 3 v e + 4 a max 2 j max ) π a max 2 j max + 1 2 a max ( v e - v s a max ) 2 - s
由此可以得到Δtmax_1的唯一解,
Δ t max _ 1 = - B + B 2 - 4 AC 2 A - - - ( 3 - 48 ) ;
进而可以得到: v = v e + 2 a max 2 j max + Δ t max _ 1 a max ;
(2)smax_1=s
表示所选的速度正好满足要求,不需要进行进一步的处理;
(3)smax_1>s
表示所选的速度过大,需要进行进一步的处理:
在这样的情况下,改取:表示所有的加减速过程中均没有匀加速过程/匀减速过程出现;依据计算获取smax_2而后与s进行比较;
I、smax_2<s
表示其中一段具有匀加速运行过程/匀减速运行过程,而另一个速度的运行过程则没有匀加速运行过程/匀减速运行过程;设其加速过程、减速过程的新增运行时间均为Δtmax_2,并且vs<ce
Figure BSA00000868392900111
依据位移公式可以得知:
t am = π a max j max
t ay = v s + 2 a max 2 j max - v s a max - 2 t m π = 2 a max 2 j max a max - 2 π a max π j max = 0 - - - ( 3 - 49 ) ;
t dm = π a rd max j max
tdy=0
又由于: a rd max = ( v s - v e + 2 a max 2 j max ) j max 2
所以: t dm = π v s - v e + 2 a max 2 j max 2 j max
则各个过程的位移:
s max _ 2 _ a = v s t am + a ra max t am π t am - a ra max t am 2 π 2 sin t am π t am     (3-50);
= v s π a max j max + π a max 3 j max 2
s max _ 2 _ d = ( v s + 2 a max 2 j max ) t dm - a rd max t dm π t dm + a rd max t dm 2 π 2 sin t dm π t dm
= ( v s + 2 a max 2 j max ) π v s - v e + 2 a max 2 j max 2 j max - π j max ( v s - v e + 2 a max 2 j max 2 j max ) 3 - - - ( 3 - 51 ) ;
S max _ 2 = S max _ 2 _ a + S max _ 2 _ d
= v s π a max j max + π a max 3 j max 2 + ( v s + 2 a max 2 j max ) π v s - v e + 2 a max 2 j max 2 j max - π j max ( v s - v e + 2 a max 2 j max 2 j max ) 3 - - - ( 3 - 52 ) ;
设其加减速过程分别增加相同的时间Δtmax_2,同时为了能够保证方程可解和运算快捷,对于其在增加的时间段内增加的距离的计算选取加减过程独立运算,即期望速度不一致,其分别增加各自过程的期望速度,进而扩大增加的距离,在进行时间求解时将会获取较小的时间,进而获取其比实际期望速度较小的数值,这样就保证了下次可以以此进行递推和方程的可解;具体运算如下:
v max _ 2 n = v s + 2 a max 2 j max + a max Δ t max _ 2
t am = π a max j max
tay=Δtmax_2    (3-53);
t dm = π v s - v e + 2 a max 2 j max 2 j max + Δ t max _ 2
tdy=0
由公式 t m = π a r max j max , a rd max = ( π v s - v e + 2 a max 2 j max 2 j max + Δ t max _ 2 ) j max π , 但由位移公式可知,当 a rd max = ( v s - v e + 2 a max 2 j max ) j max 2 时,相当于扩大减速时的位移;
S max _ 2 _ an = S max _ 2 _ a 1 + S max _ 2 _ ay + S max _ 2 _ a 2
= v s t am 2 + a max t am π t am 2 - a max t am 2 π 2 sin t am 2 π t am + v s Δ t max _ 2 + a max t am π Δ t max _ 2
+ 1 2 a max Δ t max _ 2 2 + ( v s + 2 a max 2 j max + a max Δ t max _ 2 ) t am 2 - a max t am π t am 2
+ a max t am 2 π 2 - a max t am 2 π 2 sin t am 2 π t am
= 1 2 a max Δ t max _ 2 2 + ( v s + a max 2 j max + π a max 2 2 j max ) Δ t max _ 2 + v s π a max j max + π a max 3 j max 2 - - - ( 3 - 54 ) ;
S max _ 2 _ az = S max _ 2 _ an - S max _ 2 _ a
= 1 2 a max Δ t max _ 2 2 + ( v s + a max 2 j max + π a max 2 2 j max ) Δ t max _ 2 - - - ( 3 - 55 ) ;
S max _ 2 _ dn = v max _ 2 n t dm - a rd max t dm π t dm + a rd max t dm 2 π 2 sin t dm π t dm
= ( v s + 2 a max 2 j max + a max Δ t max _ 2 ) ( π v s - v e + 2 a max 2 j max 2 j max + Δ t max _ 2 )
- ( v s - v e + 2 a max 2 j max ) j max 2 π ( π v s - v e + 2 a max 2 j max 2 j max + Δ t max _ 2 ) 2
= Δ t 2 max _ 2 ( - j max v s - v e + 2 a max 2 j max 2 j max π + a max )
+ ( v s + 2 a max 2 j max + a max π v s - v e + 2 a max 2 j max 2 j max
- 2 j max ( v s - v e + 2 a max 2 j max 2 j max ) 2 ) Δ t max _ 2
+ ( v s + 2 a max 2 j max ) π v s - v e + 2 a max 2 j max 2 j max
- π j max ( v s - v e + 2 a max 2 j max 2 j max ) 3 - - - ( 3 - 56 ) ;
S max _ 2 _ dz = S max _ 2 _ dn - S max _ 2 _ d
= Δ t max _ 2 2 ( - j max v s - v e + 2 a max 2 j max 2 j max π + a max ) - - - ( 3 - 57 ) ;
+ ( v s + 2 a max 2 j max + a max π v s - v e + 2 a max 2 j max 2 j max - 2 j max ( v s - v e + 2 a max 2 j max 2 j max ) 2 ) Δ t max _ 2
S max _ 2 z = S max _ 2 _ az + S max _ 2 _ dz
= 1 2 a max Δ t max _ 2 2 + ( v s + a max 2 j max + π a max 2 2 j max ) Δ t max _ 2
+ Δ t max _ 2 2 ( - j max v s - v e + 2 a max 2 j max 2 j max π + a max )
+ ( v s + 2 a max 2 j max + a max π v s - v e + 2 a max 2 j max 2 j max - 2 j max ( v s - v e + 2 a max 2 2 j max ) 2 ) Δ t max _ 2
= ( - j max v s - v e + 2 a max 2 2 j max π + 3 2 a max ) Δ t max _ 2 2
+ ( 2 v s + ( 3 + π 2 ) a max 2 j max ( 3 + π 2 ) a max 2 j max + a max π v s - v e + 2 a max 2 j max 2 j max - - - ( 3 - 58 )
- 2 j max ( v s - v e + 2 a max 2 j max 2 j max ) 2 ) Δ t max _ 2
又因为:Smax_2z=S-Smax_2,则可以简化为: AΔ t max _ 2 2 + BΔ t max _ 2 + C = 0 ;
A = - j max v s - v e + 2 a max 2 j max 2 j max π + 3 2 a max
B = 2 v s + ( 3 + π 2 ) a max 2 j max + a max π v s - v e + 2 a max 2 j max 2 j max - 2 j max ( v s - v e + 2 a max 2 j max 2 j max ) 2 - - - ( 3 - 59 ) ;
C=-S+Smax_2
由式可知:
B = 2 v s + ( 3 + π 2 ) a max 2 j max + a max π v s - v e + 2 a max 2 j max 2 j max - 2 j max ( v s - v e + 2 a max 2 j max 2 j max ) 2 > 0 , 该方程具有唯一正解;
而后依据获得的Δtmax_2值,求得速度为:
v = v e + a rd max · t dm π - a rd max · t dm π · cos t dm π t dm
= v d + 2 ( π v s - v e + 2 a max 2 j max 2 j max + Δ t max _ 2 ) 2 j max π 2
并且:
v d + 2 ( &pi; v s - v e + 2 a max 2 j max 2 j max + &Delta; t max _ 2 ) 2 j max &pi; 2 < v n < v s + 2 a max 2 j max - - - ( 3 - 60 ) ;
则再根据位移公式求出在此速度下的位移smax_3,由推导公式可以得知:smax_3<s,故再重复迭代,直至s-smax_n<e,迭代截止,从而获取理想的目标速度,e为计算距离时最终允许的误差;
II、若smax_2>s,则vmax_3=max(vs,ve),当smax_3<s,则表示整个加减速运动过程中,均不存在匀速的加减速出现;
若smax_2=s,则表示所选速度刚好满足要求。
附图说明
附图1为正弦曲线及其三次求导曲线;
附图2为不含匀加速过程的加速各个阶段的加加速度、加速度、速度、位移曲线;
附图3为含匀加速的加速度过程各个阶段的加加速度、加速度、速度、位移曲线;
附图4为加减速过程中均不含有匀速过程,且含有匀速运行过程的速度曲线;
附图5为加减速过程中只有加速度过程中含有匀速过程,且含有匀速运行过程的速度曲线;
附图6为加减速过程中均含有匀速过程,且含有匀速运行过程的速度曲线;
附图7为加减速过程中只有减速度过程中含有匀速过程,且含有匀速运行过程的速度曲线;
附图8为加减速过程中没有匀加减速且没有匀速运行过程的速度曲线;
附图9为加减速过程中只有减速度过程中含有匀速过程,且不含有匀速运行过程的速度曲线;
附图10为加减速过程中只有加速度过程中含有匀速过程,且不含有匀速运行过程的速度曲线
附图11为加减速过程均含有匀速加减过程,且不含有匀速运行过程的速度曲线。
具体实施方式
下面结合附图及实施例对本发明作进一步描述:
实施例一、用于数控机床的三角函数二阶连续可导加减速算法
由图1可知:在0-π之间,正弦曲线对应的一次、二次、三次导数均是连续可导。这样的光滑连续曲线对于加减速运动控制而言是非常希望获取的,这样就不仅仅实现速度、加速度的连续,更实现加速、加加速度的导数均为连续的平稳光滑过度,使之可以保证加加速度也是连续平稳光滑过度,中间过程不存在任何冲击。保证加工的柔性,减少机床因为频繁的启停而造成机床的损害和精度损失。
依据正弦曲线及其导数的特性,进行推导可得知,在进行加速运动过程中,其相关公式如下所示:
依据正弦曲线及其导数的特性,进行推导可得知,在进行加速运动过程中,其相关公式如下所示:
j ( t ) = &pi; t am &CenterDot; a ra max &CenterDot; cos &pi; t am - - - ( 3 - 1 )
a ( t ) = a ra max &CenterDot; sin t&pi; t am - - - ( 3 - 2 )
v ( t ) = v s + a ra max &CenterDot; t am &pi; - a ra max &CenterDot; t am &pi; &CenterDot; cos t&pi; t am ( 3 - 3 )
s ( t ) = v s t + a ra max t am &pi; t - a ra max t 2 &pi; 2 sin t&pi; t am - - - ( 3 - 4 )
其中:t∈[0 tam]。
附图2(由下而下、由左至右分别为加加速度曲线、加速度曲线、速度曲线和位移曲线)不含匀加速过程的加速各个阶段的加加速度、加速度、速度、位移曲线。
其中:tam表示的整个加速运行时间,aramax表示实际采用的最大加速度,jmax表示最大的加加速度值,其与机床动力学、切削载荷等均有关系,是有限制值的,一般取定之后不再变化。vs、v分别表示运动过程的初始速度与终点速度。
其具体约束关系如下:
t am = &pi; a ra max j max aramax∈[0 amax]    (3-5)
同时将t=tm带入公式(3-5),得到:
v = v s + a ra max &CenterDot; t am &pi; + a ra max &CenterDot; t am &pi; - - - ( 3 - 6 )
从而推出:
v - v s = 2 a ra max &CenterDot; t am &pi; - - - ( 3 - 7 )
又因为公式(3-5),故此:
a ra max = ( v - v s ) j max 2 &le; a max      (3-8)
t am = &pi; ( v - v s ) 2 j max
而采用通用S型曲线加速方法,运行时间为:由此可以知道两种方法耗费时间基本相等。在不明显延长运行时间的情况下,却可以实现加加速度的连续可导。
由上式可知,当
Figure BSA00000868392900184
时,才可以采用上述的加速方式进行加速运算,故此,当终点速度与初始速度之差大于上述值时,则不能够采用这样的正余弦加速方式。为使公式具有更广的适用性,现在做进一步的改进:
加加速度:
j ( t ) = &pi; t am a max cos ( t&pi; t am ) t am 2 - - - ( 3 - 9 )
j(t)=0 0 &le; t &le; v - v s a max - 2 t am &pi; - - - ( 3 - 10 )
j ( t ) = &pi; t am a max cos ( t&pi; t am ) t am 2 &le; t &le; t am - - - ( 3 - 11 )
即在其加速过程中,当加速度达到最大时,保持一段时间,而不是立即开始减速,从而使运动具有较大的加速度,减少加速运行时间,提高效率。
加速度:
a ( t ) = a max sin t&pi; t am 0 &le; t &le; t am 2 - - - ( 3 - 12 )
a(t)=amax 0 &le; t &le; v - v s a - 2 t am &pi; - - - ( 3 - 13 )
a ( t ) = a max sin ( t&pi; t am ) t am 2 &le; t &le; t am - - - ( 3-14 )
速度:
v ( t ) = v s - a max t am &pi; cos t&pi; t am + a max t am &pi; 0 &le; t &le; t am 2 - - - ( 3 - 15 )
v ( t ) = v s + a max t m &pi; + a max t 0 &le; t &le; v - v s a - 2 t am &pi; - - - ( 3 - 16 )
v ( t ) = v - a max t am &pi; - a max t am &pi; cos ( t&pi; t am ) t am 2 &le; t &le; t am - - - ( 3 - 17 )
位移:
s ( t ) = v s t + a max t am &pi; t - a max t am 2 &pi; 2 sin t&pi; t am 0 &le; t &le; t am 2 - - - ( 3 - 18 )
s ( t ) = v s t + a max t am &pi; t + 1 2 a max t 2 0 &le; t &le; v - v s a - 2 t am &pi; - - - ( 3 - 19 )
s ( t ) = v ( t - t am 2 ) - a max t am &pi; ( t - t am 2 ) + a max t am 2 &pi; 2 - a max t am 2 &pi; 2 sin t&pi; t am
t am 2 &le; t &le; t am - - - ( 3 - 20 )
附图3(由下而下、由左至右分别为加加速度曲线、加速度曲线、速度曲线和位移曲线)为含匀加速的加速度过程各个阶段的加加速度、加速度、速度、位移曲线。
t a _ total = t m + v - v s a - 2 t m &pi;
总共的运行时间:
将相关公式带入计算为:
t a _ total = v - v s a max + ( &pi; - 2 ) a max j max - - - ( 3 - 21 )
而通用S型加速总的运行时间:
Figure BSA00000868392900201
则由公式(3-21)可知本发明提出的加速方法,其的总运行时间与通用的S型总运行时间相比可以说基本没有差异。而在运行中不含有匀速加速的过程中时,即:时,运行效果更加明显,只需要改变实际采用的最大加速度数值,即可实现加加速度的连续可导。而一般采用的S型则只能实现加速度的连续可导。故在机床频繁加减速时,更具有优势,减少对机床自身造成的冲击,保证机床安全与轨迹精度,运行更加平稳。
其减速的运算过程为上述过程的反过程。下式均为数据型,不含方向矢量,具体公式如下:
加加速度:
j ( t ) = - &pi; t dm a max cos ( t&pi; t dm ) 0 &le; t &le; t dm 2 - - - ( 3 - 22 )
j(t)=0 0 &le; t &le; v - v e a max - 2 t dm &pi; - - - ( 3 - 23 )
j ( t ) = - &pi; t dm a max cos ( t&pi; t dm ) t m 2 &le; t &le; t m - - - ( 3 - 24 )
加速度:
a ( t ) = - a max sin t&pi; t dm 0 &le; t &le; t dm 2 - - - ( 3 - 25 )
a(t)=-amax 0 &le; t &le; v - v e a max - 2 t dm &pi; - - - ( 3 - 26 )
a ( t ) = - a max sin ( t&pi; t dm ) t dm 2 &le; t &le; t dm - - - ( 3 - 27 )
速度:
v ( t ) = v + a max t dm &pi; cos t&pi; t dm - a max t dm &pi; 0 &le; t &le; t dm 2 - - - ( 3 - 28 )
v ( t ) = v - a max t dm &pi; - a max t 0 &le; t &le; v - v e a max - 2 t dm &pi; - - - ( 3 - 29 )
v ( t ) = v e + a max t dm &pi; + a max t dm &pi; cos ( t&pi; t dm ) t dm 2 &le; t &le; t dm - - - ( 3 - 30 )
位移:
s ( t ) = vt - a max t dm &pi; t + a max t dm 2 &pi; 2 sin t&pi; t dm 0 &le; t &le; t dm 2 - - - ( 3 - 31 )
s ( t ) = vt - a max t dm &pi; t - 1 2 a max t 2 0 &le; t &le; v - v e a max - 2 t dm &pi; - - - ( 3 - 32 )
s ( t ) = v e ( t - t dm 2 ) + a max t dm &pi; ( t - t dm 2 ) - a max t dm 2 &pi; 2 + a max t dm 2 &pi; 2 sin t&pi; t dm
t dm 2 &le; t &le; t dm - - - ( 3 - 33 )
其中:tdm表示整个减速运行时间,jmax表示最大的加加速度值,与机床动力学、切削载荷等均有关系,是有限制值的,一般取定之后不在变化。v、ve分别表示运动过程的初始速度与终点速度。
其中:
t dm = &pi;a max j max - - - ( 3 - 34 )
当其不含匀减速部分,即
v - v e &le; 2 a max 2 j max
时,减速算法可以进一步简化为:
j ( t ) = - &pi; t dm &CenterDot; a rd max &CenterDot; cos t&pi; t dm
a ( t ) = - a rd max &CenterDot; sin t&pi; t dm
v ( t ) = v - a rd max &CenterDot; t dm &pi; + a rd max &CenterDot; t dm &pi; &CenterDot; cos - - - ( 3 - 35 )
s ( t ) = vt - a rd max t m &pi; t + a rd max t dm 2 &pi; 2 sin t&pi; t dm t∈[0 tdm]
ardmax表示实际采用的最大减速度。由上述减速相关公式可以得知:
a rd max = ( v - v e ) j max 2 &le; a max - - - ( 3 - 36 )
t dm = &pi;a rd max j max = &pi; ( v - v e ) 2 j max - - - ( 3 - 37 )
加减速速度规划
由上述分析可以得知,整个加减速过程中共存在以下八种情况:
加减速过程中均不含有匀速过程,且含有匀速运行过程。
加减速过程中均含有匀速过程,且含有匀速运行过程。
加减速过程中只有加速度过程中含有匀速过程,且含有匀速运行过程。
加减速过程中只有减速度过程中含有匀速过程,且含有匀速运行过程。
加减速过程中均没有匀速过程且不含有匀速运行过程。
加减速过程中只有减速度过程中含有匀速过程,且不合有匀速运行过程。
加减速过程中只有加速度过程中含有匀速过程,且不合有匀速运行过程。
加减速过程均含有匀速加减过程,且不舍有匀速运行过程。
整个运动过程中含有匀速运行过程
由公式:
Figure BSA00000868392900231
得出,加速过程是否含有匀加速过程是由:起始速度vs、终点速度V、机床允许的最大加速度amax以及最大加加速度jmax共同决定。当
Figure BSA00000868392900232
时,加速过程中不存在匀速过程。反之,则加速过程中存在匀速过程。对于减速过程是一个与加速度过程相逆的过程,算法一致。
对于上述两种情况,由于V,vs,amax,jmax已知,故根据发明前面介绍的相关公式,可以求知运行的距离sa,sd,而后与整个过程的距离s对比。
若s-sd-sa≤0,则整个过程不存在匀速运行过程。
反之,则存在匀速运行过程,其距离sy为:sy=s-sd-sa,其运行时间ty为:
Figure BSA00000868392900233
整个运动过程中未含有匀速运行过程
首先假设在整个过程中的最大运行速度
Figure BSA00000868392900234
即取vs,xe中的较大的一个速度进行只有加/减速过程未含有匀加/减速过程,处于匀加/减速的临界状态,另一个速度的变化过程中含有匀加或匀减速过程,而后依据位移公式可以得知此种情况下的运行距离:Smax_1,而后分以下几种情况:
smax_1<S
表示这样获取的速度小于实际可达的最大速度。其加、减速过程均含有匀速过程。为便于阐述,现假设其匀速加、减速过程的新增运行时间为Δtmax_1,并且,vs<xe,则 v max _ 1 = v e + 2 a max 2 j max
依据位移公式可以得知:
t am = &pi;a max j max
t ay = v e + 2 a max 2 j max - v s a max - 2 t m &pi; = v e + 2 a max 2 j max - v s a max - 2 &pi;a max j max &pi; = v e - v s a max - - - ( 3 - 39 )
t dm = &pi;a max j max
tdy=0
s max _ 1 _ a 1 = v s t am 2 + a max t am &pi; t am 2 - a max t am 2 &pi; 2 sin t am 2 &pi; t am = v s &pi;a max 2 j max + &pi;a max 3 2 j max 2 - a max 3 j max 2
s max _ 1 _ ay 1 = v s v e - v s a max + a max t am &pi; v e - v s a max + 1 2 a max ( v e - v s a max ) 2
= v s v e - v s a max + &pi;a max 2 j max v e - v s a max + 1 2 a max ( v e - v s a max ) 2
s max _ 1 _ a 2 = ( v e + 2 a max 2 j max ) t am 2 - a max t am &pi; t am 2 + a max t am 2 &pi; 2 - a max t am 2 &pi; 2 sin t am &pi; t am
= ( v e + 2 a max 2 j max ) &pi;a max 2 j max - &pi;a max 3 2 j max 2 + a max 3 j max 2
s max _ 1 _ d 1 = ( v e + 2 a max 2 j max ) t dm 2 - a max t dm &pi; t dm 2 + a max t dm 2 &pi; 2 sin t dm 2 &pi; t dm
= ( v e + 2 a max 2 j max ) &pi;a max 2 j max - &pi;a max 3 2 j max 2 + a max 3 j max 2 - - - ( 3 - 40 )
s max _ 1 _ d 2 = v e t dm 2 + a max t dm &pi; t dm 2 - a max t dm 2 &pi; 2 + a max t dm 2 &pi; 2 sin t dm &pi; t dm
= v e &pi;a max 2 j max + &pi;a max 3 2 j max 2 - a max 3 j max 2
S max _ 1 = S max _ 1 _ a 1 + S max _ 1 _ ay 1 + S max _ 1 _ a 2 + S max _ 1 _ d 1 + S max _ 1 _ d 2
= ( v s + &pi;a max 2 j max ) v e - v s a max + ( v s + 3 v e + 4 a max 2 j max ) &pi;a max 2 j max + 1 2 a max ( v e - v s a max ) 2 - - - ( 3 - 41 )
当增加Δtmax_1之后,最大速度变为
Figure BSA00000868392900251
其各个阶段运行增加的的位移为:
S max _ 1 _ ay 1 z = v s &Delta;t max _ 1 + a max t m &pi; &Delta;t max _ 1 + 1 2 a max ( &Delta;t max _ 1 ) 2     (3-42)
= v s &Delta;t max _ 1 + a max 2 j max &Delta;t max _ 1 + 1 2 a max ( &Delta;t max _ 1 ) 2
s max _ 1 _ dy 1 z = ( v e + 2 a max 2 j max ) &Delta;t max _ 1 - a max t m &pi; &Delta;t max _ 1 - 1 2 a max ( &Delta;t max _ 1 ) 2     (3-43)
= ( v e + 2 a max 2 j max ) &Delta;t max _ 1 - a max 2 j max &Delta;t max _ 1 - 1 2 a max ( &Delta; t max _ 1 ) 2
s max _ 1 _ ad 1 z = ( v e + 2 a max 2 j max + a max &Delta;t max _ 1 ) ( &Delta;t max _ 1 + t am ) - ( v e + 2 a max 2 j max ) t am
+ ( v e + 2 a max 2 j max + a max &Delta; t max _ 1 ) ( &Delta; t max _ 1 + t dm ) - ( v e + 2 a max 2 j max ) t dm - - - ( 3 - 44 )
= 2 ( v e + 2 a max 2 j max ) t max _ 1 + a max ( 2 &Delta; t 2 max _ 1 + &Delta;t max _ 1 t am + &Delta;t max _ 1 t dm )
S max _ 1 z = S max _ 1 _ ay 1 z + S max _ 1 _ dy 1 z + S max _ 1 _ ad 1 z
= ( v s + v e + 2 a max 2 j max ) &Delta; t max _ 1 + 2 ( v e + 2 a max 2 j max ) &Delta; t max _ 1     (3-45)
+ a max ( 2 &Delta; t max _ 1 2 + &Delta; t max _ 1 t am + &Delta; t max _ 1 t dm )
= 2 a max &Delta; t max _ 1 2 + ( v s + 3 v e + 4 a max 2 j max + t am + t dm ) &Delta; t max _ 1
又Smax_1z+Smax_1=S故
2 a max &Delta; t max _ 1 2 + ( v s + 3 v e + 4 a max 2 j max + t am + t dm ) &Delta; t max _ 1 +     (3-46)
( v s + &pi; a max 2 j max ) v e - v s a max + ( v s + 3 v e + 4 a max 2 j max ) &pi; a max 2 j max + 1 2 a max ( v e - v s a max ) 2 - s = 0
令:
A=2amax
B = v s + 3 v e + 4 a max 2 j max + t am + t dm - - - ( 3 - 47 )
C = ( v s + &pi; a max 2 j max ) v e - v s a max + ( v s + 3 v e + 4 a max 2 j max ) &pi; a max 2 j max + 1 2 a max ( v e - v s a max ) 2 - s
由此可以得到Δtmax_1的唯一解,
&Delta; t max _ 1 = - B + B 2 - 4 AC 2 A - - - ( 3 - 48 )
进而可以得到: v = v e + 2 a max 2 j max + &Delta; t max _ 1 a max
1、smax_1=s
表示所选的速度正好满足要求,不需要进行进一步的处理。
2、smax_1>s
表示所选的速度过大,需要进行进一步的处理:
在这样的情况下,改取:
Figure BSA00000868392900265
该表示所有的加减速过程中均没有匀加/减速过程出现。依据计算获取smax_2而后与s进行比较。
1)smax_2<s
表示其中一段具有匀速加/减速运行过程,而另一个速度的运行过程则没有匀速加/减速过程。若假设其加、减速过程的新增运行时间均为Δtmax_2,并且vs<ve
Figure BSA00000868392900266
依据位移公式可以得知:
t am = &pi; a max j max
t ay = v s + 2 a max 2 j max - v s a max - 2 t m &pi; = 2 a max 2 j max a max - 2 &pi; a max &pi; j max = 0 - - - ( 3 - 49 )
t dm = &pi; a rd max j max
tdy=0
又由于: a rd max = ( v s - v e + 2 a max 2 j max ) j max 2
所以: t dm = &pi; v s - v e + 2 a max 2 j max 2 j max
则各个过程的位移:
s max _ 2 _ a = v s t am + a ra max t am &pi; t am - a ra max t am 2 &pi; 2 sin t am &pi; t am     (3-50)
= v s &pi; a max j max + &pi; a max 3 j max 2
s max _ 2 _ d = ( v s + 2 a max 2 j max ) t dm - a rd max t dm &pi; t dm + a rd max t dm 2 &pi; 2 sin t dm &pi; t dm
= ( v s + 2 a max 2 j max ) &pi; v s - v e + 2 a max 2 j max 2 j max - &pi; j max ( v s - v e + 2 a max 2 j max 2 j max ) 3 - - - ( 3 - 51 )
S max _ 2 = S max _ 2 _ a + S max _ 2 _ d
= v s &pi; a max j max + &pi; a max 2 j max 2 + ( v s + 2 a max 2 j max ) &pi; v s - v e + 2 a max 2 j max 2 j max - &pi; j max ( v s - v e + 2 a max 2 j max 2 j max ) 3 - - - ( 3 - 52 )
若假设其加减速过程分别增加相同的时间Δtmax_2,同时为了能够保证方程可解和运算快捷,对于其在增加的时间段内增加的距离的计算选取加减过程独立运算,即期望速度不一致,其分别增加各自过程的期望速度,进而扩大增加的距离,在进行时间求解时将会获取较小的时间,进而获取其比实际期望速度较小的数值,这样就保证了下次可以以此进行递推和方程的可解。具体运算如下。
v max _ 2 n = v s + 2 a max 2 j max + a max &Delta; t max _ 2
t am = &pi; a max j max
tay=Δtmax_2    (3-53)
t dm = &pi; v s + v e + 2 a max 2 j max 2 j max + &Delta; t max _ 2
tdy=0
由公式 t m = &pi; a r max j max , 则实际的aramax应为: a rd max = ( v s - v e + 2 a max 2 j max 2 j max + &Delta; t max _ 2 ) j max &pi; , 但由位移公式可知,当时,相当于扩大减速时的位移,故下文计算中予以采用。
S max _ 2 _ an = S max _ 2 _ a 1 + S max _ 2 _ ay + S max _ 2 _ a 2
= v s t am 2 + a max t am &pi; t am 2 - a max t am 2 &pi; 2 sin t am 2 &pi; t am + v s &Delta; t max _ 2 + a max t am &pi; &Delta; t max _ 2
+ 1 2 a max &Delta; t max _ 2 2 + ( v s + 2 a max 2 j max + a max &Delta; t max _ 2 ) t am 2 - a max t am &pi; t am 2
+ a max t am 2 &pi; 2 - a max t am 2 &pi; 2 sin t am 2 &pi; t am
= 1 2 a max &Delta; t max _ 2 2 + ( v s + a max 2 j max + &pi; a max 2 2 j max ) &Delta; t max _ 2 + v s &pi; a max j max + &pi; a max 3 j max 2 - - - ( 3 - 54 )
S max _ 2 _ az = S max _ 2 _ an - S max _ 2 _ a
= 1 2 a max &Delta; t max _ 2 2 + ( v s + a max 2 j max + &pi; a max 2 2 j max ) &Delta; t max _ 2 - - - ( 3 - 55 )
S max _ 2 _ dn = v max _ 2 n t dm - a rd max t dm &pi; t dm + a rd max t dm 2 &pi; 2 sin t dm &pi; t dm
= ( v s + 2 a max 2 j max + a max &Delta; t max _ 2 ) ( &pi; v s - v e + 2 a max 2 j max 2 j max + &Delta; t max _ 2 )
( v s - v e + 2 a max 2 j max ) j max 2 &pi; ( &pi; v s - v e + 2 a max 2 j max 2 j max + &Delta; t max _ 2 ) 2
= &Delta; t 2 max _ 2 ( - j max v s - v e + 2 a max 2 j max 2 j max &pi; + a max )
+ ( v s + 2 a max 2 j max + a max &pi; v s - v e + 2 a max 2 j max 2 j max &pi;
- 2 j max ( v s - v e + 2 a max 2 j max 2 j max ) 2 ) &Delta; t max _ 2
+ ( v s + 2 a max 2 j max ) &pi; v s - v e + 2 a max 2 j max 2 j max
- &pi; j max ( v s - v e + 2 a max 2 j max 2 j max ) 3 - - - ( 3 - 56 )
S max _ 2 _ dz = S max _ 2 _ dn - S max _ 2 _ d
= &Delta; t max _ 2 2 ( - j max v s - v e + 2 a max 2 j max 2 j max &pi; + a max ) - - - ( 3 - 57 )
+ ( v s + 2 a max 2 j max + a max &pi; v s - v e + 2 a max 2 j max 2 j max - 2 j max ( v s - v e + 2 a max 2 j max 2 j max ) 2 ) &Delta; t max _ 2
S max _ 2 z = S max _ 2 _ az + S max _ 2 _ dz
= 1 2 a max &Delta;t max _ 2 2 + ( v s + a max 2 j max + &pi;a max 2 2 j max ) &Delta;t max _ 2
+ &Delta;t max _ 2 2 ( - j max v s - v e + 2 a max 2 j max 2 j max &pi; + a max )
+ ( v s + 2 a max 2 j max + a max &pi; v s - v e + 2 a max 2 j max 2 j max - 2 j max ( v s - v e + 2 a max 2 j max 2 j max ) 2 ) &Delta;t max _ 2
= ( - j max v s - v e + 2 a max 2 j max 2 j max &pi; + 3 2 a max ) &Delta; t max _ 2 2
+ ( 2 v s + ( 3 + &pi; 2 ) a max 2 j max ( 3 + &pi; 2 ) a max 2 j max + a max &pi; v s - v e + 2 a max 2 j max 2 j max
- 2 j max ( v s - v e + 2 a max 2 j max 2 j amx ) 2 ) &Delta;t max _ 2 - - - ( 3 - 58 )
又因为:Smax_2z=S-Smax_2,则可以简化为:
A = - j max v s - v e + 2 a max 2 j max 2 j max &pi; + 3 2 a max
B = 2 v s + ( 3 + &pi; 2 ) a max 2 j max + a max &pi; v s - v e + 2 a max 2 j max 2 j max - 2 j max ( v s - v e + 2 a max 2 j max 2 j max ) 2
C=-S+Smax_2
(3-59)
由式可知
B = 2 v s + ( 3 + &pi; 2 ) a max 2 j max + a max &pi; v s - v e + 2 a max 2 j max 2 j amx - 2 j max ( v s - v e + 2 a max 2 j max 2 j max ) 2 > 0 , 则上述方程具有唯一正解。
而后依据获得的Δtmax_2值,求得速度为:
v = v e + a rd max &CenterDot; t dm &pi; - a rd max &CenterDot; t dm &pi; &CenterDot; cos t dm &pi; t dm
= v d + 2 ( &pi; v s - v e + 2 a max 2 j max 2 j max &Delta;t max _ 2 ) 2 j max &pi; 2
并且:
v d + 2 ( &pi; v s - v e + 2 a max 2 j max 2 j max + &Delta;t max _ 2 ) 2 j max &pi; 2 < v n < v s + 2 a max 2 j max - - - ( 3 - 60 )
则再根据位移公式求出在此速度下的位移smax_3,由推导公式可以得知:smax_3<s,故再重复迭代,直至s-smax_n<e,迭代截止,从而获取理想的目标速度,e为计算距离时最终允许的误差。通过计算一般的迭代次数取为最大五次。
2)若smax_2>s,则vmax_3=max(vs,ve),而后依据上面的公式求解出smax_3,理论上smax_3<s,则表示整个加减速过程中,两方面均是不存在匀速的加减速出现。其迭代求期望速度v可根据上述情况进行迭代求解。
若smax_2=s,则表示所选速度刚好满足要求。不用再进行迭代判断求取。
仿真验证
根据上述分析,现在针对不同的加减速情况,按照介绍的速度规划给出了不同的起始速度v1、期望速度v、终点速度v2和运行位移s。并设机床的最大加加速度和最大加速度分别为:amax=2000mm/s2,jmax=60000mm/s2,插补周期为1ms,现在针对前面所述的八种情况进行速度规划仿真验证:
1、当v1=10mm/s,v2=20mm/s,v=50mm/s,s=30mm时,则其规划结果及速度曲线如表3-1、图4所示。
表3-1速度规划关键数值
Figure BSA00000868392900321
2、当v1=10mm/s,v2=20mm/s,v=150mm/s,s=40mm时,则其规划结果及速度曲线如表3-2、图5所示。
表3-2速度规划关键数值
Figure BSA00000868392900322
3、当v1=10mm/s,v2=20mm/s,v=200mm/s,s=50mm时,则其规划结果及速度曲线如表3-3、图6所示。
表3-3速度规划关键数值
Figure BSA00000868392900323
4、当v1=120mm/s,v2=30mm/s,v=200mm/s,s=50mm时,则其规划结果及速度曲线如表3-4、图7所示。
表3-4速度规划关键数值
Figure BSA00000868392900331
5、当v1=10mm/s,v2=20mm/s,v=200mm/s,s=10mm时,则其规划结果及速度曲线如表3-5、图8所示。
表3-5速度规划关键数值
Figure BSA00000868392900332
6、当v1=100mm/s,v2=50mm/s,v=200mm/s,s=40mm时,则其规划结果及速度曲线如表3-6、图9所示。
表3-6速度规划关键数值
Figure BSA00000868392900333
7、当v1=40mm/s,v2=160mm/s,v=250mm/s,s=30mm时,则其规划结果及速度曲线如表3-7、图10所示。
表3-7速度规划关键数值
Figure BSA00000868392900341
8、当v1=50mm/s,v2=60mm/s,v=250mm/s,s=35mm时,则其规划结果及速度曲线如表3-8、图11所示。
表3-8速度规划关键数值
Figure BSA00000868392900342
本发明在分析三角函数的特性基础上,结合通用S型加减速曲线算法的优势,提出了改进型的三角函数算法,对于其速度规划进行了详细的阐述,并对于没有匀速运动过程的最高速度的求解提出一种类举式的推算方法,并依据三角函数加减速的运算特性,给出具体求解过程。随后给出其加减速过程的八种情况的仿真结果,验证了方法的可靠,尤其算法在频繁的速度变化中,只进行未含有匀加、减速过程的加减速方式,实现了加加速的连续可导,具有更优的性能表现。
上述实施例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人士能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所作的等效变化或修饰,都应涵盖在本发明的保护范围之内。

Claims (1)

1.一种用于数控机床的三角函数二阶连续可导加减速算法,其特征在于:
定义:j(t)为加加速度;a(t)为加速度;v(t)为速度;s(t)为位移;t为时间;aramax为实际采用的最大加速度;jmax表示机床允许的最大的加加速度值;π为圆周率;amax表示机床允许的最大加速度值;
(1)依据正弦曲线及其导数的特性,进行推导可得知,在进行加速运动过程中,其相关公式如下所示:
j ( t ) = &pi; t am &CenterDot; a ra max &CenterDot; cos t&pi; t am - - - ( 3 - 1 ) ;
a ( t ) = a ra max &CenterDot; sin t&pi; t am - - - ( 3 - 2 ) ;
v ( t ) = v s + a ra max &CenterDot; t am &pi; a ra max &CenterDot; t am &pi; t&pi; t am - - - ( 3 - 3 ) ;
s ( t ) = v s t + a ra max t am &pi; a ra max t 2 am &pi; 2 t&pi; t am ( 3 - 4 ) ;
其中,t∈[0tam];
其具体约束关系如下:
t am = &pi; a ra max j max aramax∈[0amax]
(3-5);
同时将t=tam带入公式(3-5),得到:
v = v s + a ra max &CenterDot; t am &pi; + a ra max &CenterDot; t am &pi; - - - ( 3 - 6 ) ;
从而推出:
v - v s = 2 a ra max &CenterDot; t am &pi; - - - ( 3 - 7 ) ;
又因为公式(3-5),故此:
a ra max = ( v - v s ) j max 2 &le; a max
t am = &pi; ( v - v s ) 2 j max - - - ( 3 - 8 ) ;
由上式可知,当
Figure FSA00000868392800021
时,采用上述的加速方式进行加速运算;当所述加速运动过程的终点速度v与加速运动过程的初始速度vs之差大于
Figure FSA00000868392800022
时,则采用如下公式:
加加速度:
j ( t ) = &pi; t am a max cos ( t&pi; t am ) 0 &le; t &le; t am 2 - - - ( 3 - 9 ) ;
j(t)=0 0 &le; t &le; v - v s a max - 2 t am &pi; - - - ( 3 - 10 ) ;
j ( t ) = &pi; t am a max cos ( t&pi; t am ) t am 2 &le; t &le; t am - - - ( 3 - 11 ) ;
即在所述加速运动过程中,当所述加速度达到最大时,保持一段时间;
加速度:
a ( t ) = a max sin t&pi; t am 0 &le; t &le; t am 2 - - - ( 3 - 12 ) ;
a(t)=amax 0 &le; t &le; v - v s a - 2 t am &pi; - - - ( 3 - 13 ) ;
a ( t ) = a max sin ( t&pi; t am ) t am 2 &le; t &le; t am - - - ( 3 - 14 ) ;
速度:
v ( t ) = v s - a max t am &pi; cos t&pi; t am + a max t am &pi; 0 &le; t &le; t am 2 - - - ( 3 - 15 ) ;
v ( t ) = v s + a max t m &pi; + a max t 0 &le; t &le; v - v s a - 2 t am &pi; - - - ( 3 - 16 ) ;
v ( t ) = v - a max t am &pi; a max t am &pi; ( t&pi; t am ) t am 2 &le; t &le; t am - - - ( 3 - 17 ) ;
s ( t ) = v s t + a max t am &pi; a max t 2 am &pi; 2 sin t&pi; t am 0 &le; t &le; t am 2 - - - ( 3 - 18 ) ;
位移:
s ( t ) v s t a max t am &pi; 1 2 a max t 2 0 &le; t &le; v - v s a - 2 t am &pi; - - - ( 3 - 19 ) ;
s ( t ) = v ( t - t am 2 ) - a max t am &pi; ( t - t am 2 ) + a max t am 2 &pi; 2 - a max t am 2 &pi; 2 sin t&pi; t am
t am 2 &le; t &le; t am - - - ( 3 - 20 ) ;
总共的运行时间:
t a _ total = t m + v - v s a - 2 t m &pi;
带入计算为:
t a _ total = v - v s a max + ( &pi; - 2 ) a max j max - - - ( 3 - 21 ) ;
其中:tam表示整个加速运行时间;aramax为实际采用的最大加速度;vs表示加速运动过程的初始速度;v表示加速运动过程的终点速度;
(2)减速运动过程是加速运动过程的反过程,下式均为数据型,不含方向矢量,其相关公式如下所示:
加加速度:
j ( t ) = - &pi; t dm a max cos ( t&pi; t dm ) 0 &le; t &le; t dm 2 - - - ( 3 - 22 ) ;
j(t)=0 0 &le; t &le; v - v e a max - 2 t dm &pi; - - - ( 3 - 23 ) ;
j ( t ) = - &pi; t dm a max cos ( t&pi; t dm ) t m 2 &le; t &le; t m - - - ( 3 - 24 ) ;
加速度:
a ( t ) = - a max sin t&pi; t dm 0 &le; t &le; t dm 2 - - - ( 3 - 25 ) ;
a(t)=-amax 0 &le; t &le; v - v e a max - 2 t dm &pi; - - - ( 3 - 26 ) ;
a ( t ) = - a max sin ( t&pi; t dm ) t dm 2 &le; t &le; t dm - - - ( 3 - 27 ) ;
速度:
v ( t ) = v + a max t dm &pi; cos t&pi; t dm - a max t dm &pi; 0 &le; t &le; t dm 2 - - - ( 3 - 28 ) ;
v ( t ) = v - a max t dm &pi; - a max t 0 &le; t &le; v - v e a max - 2 t dm &pi; - - - ( 3 - 29 ) ;
v ( t ) = v e + a max t dm &pi; + a max t dm &pi; cos ( t&pi; t dm ) t dm 2 &le; t &le; t dm - - - ( 3 - 30 ) ;
位移:
s ( t ) = vt - a max t dm &pi; t + a max t dm 2 &pi; 2 sin t&pi; t dm 0 &le; t &le; t dm 2 - - - ( 3 - 31 ) ;
s ( t ) a max t dm &pi; 1 2 a max t 2 0 &le; t &le; v - v e a max - 2 t dm &pi; - - - ( 3 - 32 ) ;
s ( t ) v e ( t - t dm 2 ) a max t dm &pi; ( t - t dm 2 ) - a max t dm 2 &pi; 2 + a max t dm 2 &pi; 2 sin t&pi; t dm
t dm 2 &le; t &le; t dm - - - ( 3 - 33 ) ;
其中:tdm表示整个减速运行时间;ardmax表示实际采用的最大减速度;v表示运动过程的初始速度、ve表示运动过程的终点速度;
其中:
t dm = &pi; a max j max - - - ( 3 - 34 ) ;
当其不含匀减速部分,即
Figure FSA00000868392800052
时,减速算法进一步简化为:
j ( t ) = - &pi; t dm &CenterDot; a rd max &CenterDot; cos t&pi; t dm
a ( t ) = - a rd max &CenterDot; sin t&pi; t dm
v ( t ) = v - a rd max &CenterDot; t dm &pi; + a rd max &CenterDot; t dm &pi; &CenterDot; cos t&pi; t dm - - - ( 3 - 35 ) ;
s ( t ) = vt - a rd max t m &pi; t + a rd max t dm 2 &pi; 2 sin t&pi; t dm t &Element; [ 0 t dm ]
由上述减速相关公式可以得知:
a rd max = ( v - v e ) j max 2 &le; a max - - - ( 3 - 36 ) ;
t dm = &pi;a rd max j max = &pi; ( v - v e ) 2 j max - - - ( 3 - 37 ) ;
由上述分析可以得知,整个加减速过程中共存在以下八种情况:
(1)加减速过程中均不含有匀速过程,且含有匀速运行过程;
(2)加减速过程中均含有匀速过程,且含有匀速运行过程;
(3)加减速过程中只有加速度过程中含有匀速过程,且含有匀速运行过程;
(4)加减速过程中只有减速度过程中含有匀速过程,且含有匀速运行过程;
(5)加减速过程中均没有匀速过程且不含有匀速运行过程;
(6)加减速过程中只有减速度过程中含有匀速过程,且不含有匀速运行过程;
(7)加减速过程中只有加速度过程中含有匀速过程,且不含有匀速运行过程;
(8)加减速过程均含有匀速加减过程,且不含有匀速运行过程;
一、整个运动过程中含有匀速运行过程
Figure FSA00000868392800061
时,加速过程中不存在匀速过程;反之,则加速过程中存在匀速过程;减速过程是一个与加速度过程相逆的过程,算法一致;
对于上述两种情况,由于v,vs,amax,jmax已知,故可以求知运行的距离sa,sd,而后与整个过程的距离s对比;
若s-sd-sa≤0,则整个过程不存在匀速运行过程;
反之,则存在匀速运行过程,其距离sy为:sy=s-sd-sa,其运行时间ty为:
t y = s - s d - s a v - - - ( 3 - 38 ) ;
二、整个运动过程中未含有匀速运行过程
设在整个加减速运动过程中的最大运行速度
Figure FSA00000868392800063
即取vs,ve中的较大的一个速度进行只有加速过程/减速过程未含有匀加速过程/匀减速过程,处于匀加速过程/匀减速过程的临界状态,另一个速度的变化过程中含有匀加速过程或匀减速过程,而后依据位移公式可以得知此种情况下的运行距离:smax_1,而后分以下几种情况:
(1)smax_1<s
表示这样获取的速度小于实际可达的最大速度;其加速过程、减速过程均含有匀速过程;假设其匀速加速过程、匀速减速过程的新增运行时间为Δtmax_1,并且,vs<ve,则
Figure FSA00000868392800071
依据位移公式可以得知:
t am = &pi;a max j max
t ay = v e + 2 a max 2 j max - v s a max - 2 t m &pi; = v e + 2 a max 2 j max - v s a max - 2 &pi;a max j max &pi; = v e - v s a max - - - ( 3 - 39 ) ;
t dm = &pi;a max j max
tdy=0
s max _ 1 _ a 1 = v s t am 2 + a max t am &pi; t am 2 - a max t am 2 &pi; 2 sin t am 2 &pi; t am = v s &pi;a max 2 j max + &pi;a max 3 2 j max 2 - a max 3 j max 2
s max _ 1 _ ay 1 = v s v e - v s a max + a max t am &pi; v e - v s a max + 1 2 a max ( v e - v s a max ) 2
= v s v e - v s a max + &pi;a max 2 j max v e - v s a max + 1 2 a max ( v e - v s a max ) 2
s max _ 1 _ a 2 = ( v e + 2 a max 2 j max ) t am 2 - a max t am &pi; t am 2 + a max t am 2 &pi; 2 - a max t am 2 &pi; 2 sin t am &pi; t am
= ( v e + 2 a max 2 j max ) &pi;a max 2 j max - &pi;a max 3 2 j max 2 + a max 2 j max 2
s max _ 1 _ d 1 = ( v e + 2 a max 2 j max ) t dm 2 - a max t dm &pi; t dm 2 + a max t dm 2 &pi; 2 sin t dm 2 &pi; t dm
= ( v e + 2 a max 2 j max ) 2 a max j max - &pi; a max 3 2 j max 2 + a max 3 j max 2      (3-40);
s max _ 1 _ d 2 = v e t dm 2 + a max t dm &pi; t dm 2 - a max t dm 2 &pi; 2 + a max t dm 2 &pi; 2 sin t dm &pi; t dm
= v e &pi;a max 2 j max + &pi;a max 3 2 j max 2 - a max 3 j max 2
S max _ 1 = S max _ 1 _ a 1 + S max _ 1 _ ay 1 + S max _ 1 _ a 2 + S max _ 1 _ d 1 + S max _ 1 _ d 2
= ( v s + &pi;a max 2 j max ) v e - v s a max + ( v s + 3 v e + 4 a max 2 j max ) &pi;a max 2 j max + 1 2 a max ( v e - v s a max ) 2 - - - ( 3 - 41 ) ;
当增加Δtmax_1之后,最大速度变为
其各个阶段运行增加的位移为:
S max _ 1 _ ay 1 z = v s &Delta;t max _ 1 + a max t m &pi; &Delta;t max _ 1 + 1 2 a max ( &Delta;t max _ 1 ) 2     (3-42);
= v s &Delta;t max _ 1 + a max 2 j max &Delta;t max _ 1 + 1 2 a max ( &Delta;t max _ 1 ) 2
s max _ 1 _ dy 1 z = ( v e + 2 a max 2 j max ) &Delta;t max _ 1 - a max t m &pi; &Delta;t max _ 1 1 2 a max ( &Delta;t max _ 1 ) 2     (3-43);
= ( v e + 2 a max 2 j max ) &Delta;t max _ 1 - a max 2 j max &Delta;t max _ 1 - 1 2 a max ( &Delta;t max _ 1 ) 2
s max _ 1 _ ad 1 z = ( v e + 2 a max 2 j max + a max &Delta;t max _ 1 ) ( &Delta;t max _ 1 + t am ) - ( v e + 2 a max 2 j max ) t am
+ ( v e + 2 a max 2 j max + a max &Delta;t max _ 1 ) ( &Delta;t max _ 1 + t dm ) - ( v e + 2 a max 2 j max ) t dm - - - ( 3 - 44 ) ;
= 2 ( v e + 2 a max 2 j max ) &Delta;t max _ 1 + a max ( 2 &Delta;t 2 max _ 1 + &Delta;t max _ 1 t am + &Delta;t max _ 1 t dm )
S max _ lz = S max _ l _ aylz + S max _ l _ dylz + S max _ l _ adlz
= ( v s + v e + 2 a max 2 j max ) &Delta; t max _ 1 + 2 ( v e + 2 a max 2 j max ) &Delta; t max _ 1     (3-45);
+ a max ( 2 &Delta; t max _ 1 2 + &Delta; t max _ 1 t am + &Delta; t max _ 1 t dm )
= 2 a max &Delta; t max _ 1 2 + ( v s + 3 v e + 4 a max 2 j max + t am + t dm ) &Delta; t max _ 1
又Smax_1z+Smax_1=S,故
2 a max &Delta; t max _ 1 2 + ( v s + 3 v e + 4 a max 2 j max + t am + t dm ) &Delta; t max _ 1 +     (3-46);
( v s + &pi; a max 2 j max ) v e - v s a max + ( v s + 3 v e + 4 a max 2 j max ) &pi; a max 2 j max + 1 2 a max ( v e - v s a max ) 2 - s = 0
令:
A=2amax
B = v s + 3 v e + 4 a max 2 j max + t am + t dm - - - ( 3 - 47 ) ;
C = ( v s + &pi; a max 2 j max ) v e - v s a max + ( v s + 3 v e + 4 a max 2 j max ) &pi; a max 2 j max + 1 2 a max ( v e - v s a max ) 2 - s
由此可以得到Δtmax_1的唯一解,
&Delta; t max _ 1 = - B + B 2 - 4 AC 2 A - - - ( 3 - 48 ) ;
进而可以得到: v = v e + 2 a max 2 j max + &Delta;t max _ 1 a max ;
(2)smax_1=s
表示所选的速度正好满足要求,不需要进行进一步的处理;
(3)smax_1>s
表示所选的速度过大,需要进行进一步的处理:
在这样的情况下,改取:表示所有的加减速过程中均没有匀加速过程/匀减速过程出现;依据计算获取smax_2而后与s进行比较;
I、smax_2<s
表示其中一段具有匀加速运行过程/匀减速运行过程,而另一个速度的运行过程则没有匀加速运行过程/匀减速运行过程;设其加速过程、减速过程的新增运行时间均为Δtmax_2,并且vs<ve
Figure FSA00000868392800096
依据位移公式可以得知:
t am = &pi; a max j max
t ay = v s + 2 a max 2 j max - v s a max - 2 t m &pi; = 2 a max 2 j max a max - 2 &pi; a max &pi; j max = 0 - - - ( 3 - 49 ) ;
t dm = &pi; a rd max j max
tdy=0
又由于: a rd max = ( v s - v e + 2 a max 2 j max ) j max 2
所以: t dm = &pi; v s - v e + 2 a max 2 j max 2 j max
则各个过程的位移:
s max _ 2 _ a = v s t am + a ra max t am &pi; t am - a ra max t am 2 &pi; 2 sin t am &pi; t am     (3-50);
= v s &pi; a max j max + &pi; a max 3 j max 2
s max _ 2 _ d = ( v s + 2 a max 2 j max ) t dm - a rd max t dm &pi; t dm + a rd max t dm 2 &pi; 2 sin t dm &pi; t dm
= ( v s + 2 a max 2 j max ) &pi; v s - v e + 2 a max 2 j max 2 j max - &pi; j max ( v s - v e + 2 a max 2 j max 2 j max ) 3 - - - ( 3 - 51 ) ;
S max _ 2 = S max _ 2 _ a + S max _ 2 _ d
= v s &pi; a max j max + &pi; a max 3 j max 2 + ( v s + 2 a max 2 j max ) &pi; v s - v e + 2 a max 2 j max 2 j max - &pi; j max ( v s - v e + 2 a max 2 j max 2 j max ) 3 - - - ( 3 - 52 ) ;
设其加减速过程分别增加相同的时间Δtmax_2,同时为了能够保证方程可解和运算快捷,对于其在增加的时间段内增加的距离的计算选取加减过程独立运算,即期望速度不一致,其分别增加各自过程的期望速度,进而扩大增加的距离,在进行时间求解时将会获取较小的时间,进而获取其比实际期望速度较小的数值,这样就保证了下次可以以此进行递推和方程的可解;具体运算如下:
v max _ 2 n = v s + 2 a max 2 j max + a max &Delta; t max _ 2
t am = &pi; a max j max
tay=Δtmax_2    (3-53);
t dm = &pi; v s - v e + 2 a max 2 j max 2 j max + &Delta; t max _ 2
tdy=0
由公式 t m = &pi; a r max j max , a rd max = ( &pi; v s - v e + 2 a max 2 j max 2 j max + &Delta; t max _ 2 ) j max &pi; , 但由位移公式可知,当
Figure FSA00000868392800116
时,相当于扩大减速时的位移;
S max _ 2 _ an = S max _ 2 _ a 1 + S max _ 2 _ ay + S max _ 2 _ a 2
= v s t am 2 + a max t am &pi; t am 2 - a max t am 2 &pi; 2 sin t am 2 &pi; t am + v s &Delta; t max _ 2 + a max t am &pi; &Delta; t max _ 2
+ 1 2 a max &Delta; t max _ 2 2 + ( v s + 2 a max 2 j max + a max &Delta; t max _ 2 ) t am 2 - a max t am &pi; t am 2
+ a max t am 2 &pi; 2 - a max t am 2 &pi; 2 sin t am 2 &pi; t am
= 1 2 a max &Delta; t max _ 2 2 + ( v s + a max 2 j max + &pi; a max 2 2 j max ) &Delta; t max _ 2 + v s &pi; a max j max + &pi; a max 3 j max 2 - - - ( 3 - 54 ) ;
S max _ 2 _ az = S max _ 2 _ an - S max _ 2 _ a
= 1 2 a max &Delta; t max _ 2 2 + ( v s + a max 2 j max + &pi; a max 2 2 j max ) &Delta; t max _ 2 - - - ( 3 - 55 ) ;
S max _ 2 _ dn = v max _ 2 n t dm - a rd max t dm &pi; t dm + a rd max t dm 2 &pi; 2 sin t dm &pi; t dm
= ( v s + 2 a max 2 j max + a max &Delta; t max _ 2 ) ( &pi; v s - v e + 2 a max 2 j max 2 j max + &Delta; t max _ 2 )
- ( v s - v e + 2 a max 2 j max ) 2 &pi; ( &pi; v s - v e + 2 a max 2 j max 2 j max + &Delta; t max _ 2 ) 2
= &Delta; t 2 max _ 2 ( - j max v s - v e + 2 a max 2 j max 2 j max &pi; + a max )
+ ( v s + 2 a max 2 j max + a max &pi; v s - v e + 2 a max 2 j max 2 j max )
- 2 j max ( v s - v e + 2 a max 2 j max 2 j max ) 2 ) &Delta; t max _ 2
+ ( v s + 2 a max 2 j max ) &pi; v s - v e + 2 a max 2 j max 2 j max
- &pi; j max ( v s - v e + 2 a max 2 j max 2 j max ) 3 - - - ( 3 - 56 ) ;
S max _ 2 _ dz = S max _ 2 _ dn - S max _ 2 _ d
= &Delta; t max _ 2 2 ( - j max v s - v e + 2 a max 2 j max &pi; + a max ) - - - ( 3 - 57 ) ;
+ ( v s + 2 a max 2 j max + a max &pi; v s - v e + 2 a max 2 j max 2 j max - 2 j max ( v s - v e + 2 a max 2 j max 2 j max ) 2 ) &Delta; t max _ 2
S max _ 2 _ dz = S max _ 2 _ az - S max _ 2 _ dz
= 1 2 a max &Delta; t max _ 2 2 + ( v s a max 2 j max + &pi; a max 2 2 j max ) &Delta; t max _ 2
+ &Delta; t max _ 2 2 ( - j max v s - v e + 2 a max 2 j max 2 j max &pi; + a max )
+ ( v s + 2 a max 2 j max + a max &pi; v s - v e + 2 a max 2 j max 2 j max - 2 j max ( v s - v e + 2 a max 2 j max 2 j max ) 2 ) &Delta; t max _ 2
= ( - j max v s - v e + 2 a max 2 j max 2 j max &pi; + 3 2 a max ) &Delta; t max _ 2 2
+ ( 2 v s + ( 3 + &pi; 2 ) a max 2 j max ( 3 + &pi; 2 ) a max 2 j max + a max &pi; v s - v e + 2 a max 2 j max 2 j max - - - ( 3 - 58 ) ;
- 2 j max ( v s - v e + 2 a max 2 2 j max ) 2 ) &Delta; t max _ 2
又因为:Smax_2z=S-Smax_2,则可以简化为:
Figure FSA00000868392800138
A = - j max v s - v e + 2 a max 2 j max 2 j max &pi; + 3 2 a max
B = 2 v s + ( 3 + &pi; 2 ) a max 2 j max + a max &pi; v s - v e + 2 a max 2 j max 2 j max - 2 j max ( v s - v e + 2 a max 2 j max 2 j max ) 2 - - - ( 3 - 59 ) ;
C=-S+Smax_2
由式可知:
B = 2 v s + ( 3 + &pi; 2 ) a max 2 j max + a max &pi; v s + v e + 2 a max 2 j max 2 j max - 2 j max ( v s - v e + 2 a max 2 j max 2 j max ) 2 > 0 , 该方程具有唯一正解;
而后依据获得的Δtmax_2值,求得速度为:
v = v e + a rd max &CenterDot; t dm &pi; - a rd max &CenterDot; t dm &pi; &CenterDot; cos t dm &pi; t dm
= v d + 2 ( &pi; v s - v e + 2 a max 2 j max 2 j max + &Delta; t max _ 2 ) 2 j max &pi; 2
并且:
v d + 2 ( &pi; v s - v e + 2 a max 2 j max 2 j max + &Delta; t max _ 2 ) 2 j max &pi; 2 < v n < v s + 2 a max 2 j max - - - ( 3 - 60 ) ;
则再根据位移公式求出在此速度下的位移smax_3,由推导公式可以得知:smax_3<s,故再重复迭代,直至s-smax_n<e,迭代截止,从而获取理想的目标速度,e为计算距离时最终允许的误差;
II、若xmax_2>s,则vmax_3=max(vs,ve),当smax_3<s,则表示整个加减速运动过程中,均不存在匀速的加减速出现;
若smax_2=s,则表示所选速度刚好满足要求。
CN 201310095677 2013-03-25 2013-03-25 用于数控机床的三角函数二阶连续可导加减速算法 Pending CN103279069A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201310095677 CN103279069A (zh) 2013-03-25 2013-03-25 用于数控机床的三角函数二阶连续可导加减速算法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201310095677 CN103279069A (zh) 2013-03-25 2013-03-25 用于数控机床的三角函数二阶连续可导加减速算法

Publications (1)

Publication Number Publication Date
CN103279069A true CN103279069A (zh) 2013-09-04

Family

ID=49061633

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201310095677 Pending CN103279069A (zh) 2013-03-25 2013-03-25 用于数控机床的三角函数二阶连续可导加减速算法

Country Status (1)

Country Link
CN (1) CN103279069A (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104298114A (zh) * 2014-10-29 2015-01-21 西南科技大学 自适应鲁棒s型速度规划算法
CN105867376A (zh) * 2016-04-12 2016-08-17 南京工程学院 基于三角函数的工业机器人轨迹规划升降速控制方法
CN106483927A (zh) * 2016-12-16 2017-03-08 威科达(东莞)智能控制有限公司 一种点位运动s曲线生成方法
CN107368041A (zh) * 2017-08-24 2017-11-21 武汉迈信电气技术有限公司 一种基于移动平均算法的s曲线加减速控制方法
CN107390643A (zh) * 2017-08-22 2017-11-24 杭州电子科技大学 急动速度线性连续的数控装置高速进给加减速方法
CN108287527A (zh) * 2017-07-18 2018-07-17 山东大学 一种基于三角函数的改进s曲线加减速控制方法
CN108693838A (zh) * 2017-03-29 2018-10-23 兄弟工业株式会社 数值控制装置和控制方法
CN109332910A (zh) * 2018-09-18 2019-02-15 大族激光科技产业集团股份有限公司 一种激光切割的速度调节方法以及系统
CN109546922A (zh) * 2018-12-05 2019-03-29 张洋 伺服电机控制方法和系统
CN110601617A (zh) * 2019-09-02 2019-12-20 歌尔股份有限公司 步进电机控制方法、装置、系统及存储介质
CN110778768A (zh) * 2019-10-15 2020-02-11 陕西科技大学 一种可实现转角闭环控制的电动阀门及控制方法

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104298114A (zh) * 2014-10-29 2015-01-21 西南科技大学 自适应鲁棒s型速度规划算法
CN105867376A (zh) * 2016-04-12 2016-08-17 南京工程学院 基于三角函数的工业机器人轨迹规划升降速控制方法
CN105867376B (zh) * 2016-04-12 2018-10-23 南京工程学院 基于三角函数的工业机器人轨迹规划升降速控制方法
CN106483927A (zh) * 2016-12-16 2017-03-08 威科达(东莞)智能控制有限公司 一种点位运动s曲线生成方法
CN108693838A (zh) * 2017-03-29 2018-10-23 兄弟工业株式会社 数值控制装置和控制方法
CN108287527B (zh) * 2017-07-18 2019-02-01 山东大学 一种基于三角函数的改进s曲线加减速控制方法
CN108287527A (zh) * 2017-07-18 2018-07-17 山东大学 一种基于三角函数的改进s曲线加减速控制方法
CN107390643A (zh) * 2017-08-22 2017-11-24 杭州电子科技大学 急动速度线性连续的数控装置高速进给加减速方法
CN107368041A (zh) * 2017-08-24 2017-11-21 武汉迈信电气技术有限公司 一种基于移动平均算法的s曲线加减速控制方法
CN107368041B (zh) * 2017-08-24 2019-10-11 武汉迈信电气技术有限公司 一种基于移动平均算法的s曲线加减速控制方法
CN109332910A (zh) * 2018-09-18 2019-02-15 大族激光科技产业集团股份有限公司 一种激光切割的速度调节方法以及系统
CN109546922A (zh) * 2018-12-05 2019-03-29 张洋 伺服电机控制方法和系统
CN110601617A (zh) * 2019-09-02 2019-12-20 歌尔股份有限公司 步进电机控制方法、装置、系统及存储介质
CN110778768A (zh) * 2019-10-15 2020-02-11 陕西科技大学 一种可实现转角闭环控制的电动阀门及控制方法

Similar Documents

Publication Publication Date Title
CN103279069A (zh) 用于数控机床的三角函数二阶连续可导加减速算法
CN102419570B (zh) 数控机床高速加工的加减速前瞻控制方法
CN107710084B (zh) 一种加工路径规划方法、加工路径规划装置及数控机床
CN102799145B (zh) 拐角多周期恒加加速度过渡的s曲线加减速直线插补方法
CN102722140B (zh) 基于s曲线加减速控制的多周期拐角小直线段插补方法
CN104331025B (zh) 一种面向微小线段高效加工的速度前瞻预处理方法
CN108829045B (zh) 连续微直线段的衔接速度的优化方法及系统
CN103064344B (zh) 一种基于nurbs曲线插补的速度平滑控制方法
Yong et al. A parametric interpolator with confined chord errors, acceleration and deceleration for NC machining
Lee et al. The feedrate scheduling of NURBS interpolator for CNC machine tools
CN102540978B (zh) 面向高速加工的表面质量优先的样条曲线实时插补方法
CN102681487B (zh) 数控系统中操作设备的轨迹平滑方法和装置及数控机床
CN104678899A (zh) 曲线速度规划方法、装置及其数控加工路径数据处理方法
CN102945020B (zh) 速度前瞻的方法及其数控装置、数控系统
CN101211177A (zh) 一种基于滤波技术的数控系统加减速控制方法
CN104076743B (zh) 一种自识别插补种类的插补控制方法
CN111158318B (zh) 一种非对称性四次曲线柔性加减速规划方法
CN103801981A (zh) 一种用于样条插补的四次多项式速度规划算法
Yuan et al. Time-optimal interpolation for CNC machining along curved tool pathes with confined chord error
CN107765648A (zh) 一种cnc加工的进给速度规划方法及装置
Lu et al. An offline predictive feedrate scheduling method for parametric interpolation considering the constraints in trajectory and drive systems
CN106094737B (zh) 一种指定加工误差条件下的数控加工速度优化控制方法
CN104020719A (zh) 速度敏感点分段nurbs曲线的s型加减速控制插补算法
CN106020122A (zh) 基于牛顿迭代的数控轨迹控制方法
Zhang et al. Optimal curvature-smooth transition and efficient feedrate optimization method with axis kinematic limitations for linear toolpath

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130904