数控机床s型加减速控制方法

文档序号:6307235阅读:1971来源:国知局
数控机床s型加减速控制方法
【专利摘要】数控机床S型加减速控制方法,首先把加工程序输入数控系统,数控装置得到必要的数据,然后根据用时最短原则和速度、加速度的限制条件把S型加减速控制中所涉及的五元非线性方程组分解为二个二元非线性方程组和一个一元线性方程,采用牛顿迭代法和迭代修正的方式逐步求解出符合要求的加减速时间,进而求出速度曲线,最后进行插补运算,输出脉冲完成工件的加工任务。本发明能有效避免现有S型加减速控制的复杂、繁琐运算,提供了一种精度高、求解用时短、易于理解、便于实现的加减速控制方法。
【专利说明】数控机床S型加减速控制方法

【技术领域】
[0001]本发明涉及数控系统领域,特别是涉及数控机床S型加减速控制方法。

【背景技术】
[0002]随着技术的飞速发展,开放式的数控系统研究已经成为世界各国数控界研究的热点,而我国目前在这一领域的研究相对落后,尤其是在加减速控制技术的研究上,与国外还有很大的差距。数控机床的进给速度与加工精度、生产率以及工件表面粗糙度有着密切关系,数控机床的进给速度应该稳定、停止的位置准确。因此数控机床系统必须具有加减速控制功能,现在较为流行的加减速控制是S型加减速控制,相比直线型加减速和指数型加减速控制,S型加减速控制有速度曲线光滑、均匀、运动平稳、无冲击等优势。S型加减速控制能较好的实现机床各轴的平滑启停和速度切换,可做到无加速的突变,能够较好的减少机床的运动冲击和震荡,从而有效的提闻工件的加工质量,特别适用于闻速闻精加工。
[0003]一般S型速度曲线是关于时间的多项式,其长度曲线的最大阶次可以是3次、4次、5次。高阶的曲线可以获得高阶的连续导数,但计算量也会更大。在应用中,长度曲线大于3阶对加工精度影响不明显,实际上最为常用的是限制加加速度的2次S型速度曲线即3次长度曲线,本发明采用的S型加减速曲线即是2次S型速度曲线。一个完整的S型加减速曲线要包括7个速度曲线段,即加加速段、匀加速段、减加速段、匀速度段、加减速段、匀减速段和减减速度段。一般情况下,S型加减速曲线包含5个时间未知量,始末速度不为零的S型运动曲线,加速度曲线会有十四情形,又涉及到多元非线性方程,计算比较繁琐,没有统一的公式解法,并且在加减速时间规划中这5个时间未知量不能为负数,这就使得求解S型加减速控制的各阶段时间尤为复杂。


【发明内容】

[0004]本发明要克服现有技术的上述不足,提供一种数控机床S型加减速控制方法,避免现有S型加减速控制的复杂、繁琐运算,提供了一种精度高、易于理解、便于实现的控制方法。
[0005]所述一种数控机床S型加减速控制方法包括以下步骤:
[0006]第一步:把数控机床加工程序输入数控系统,得到各线段轨迹的起点和终点坐标值等数据,进而计算出各线段轨迹的长度,根据数控系统以及工件的工艺要求确定加加速度、最大限制加速度、最大限制速度。
[0007]第二步:求第一段待加工轨迹加速度变化时间即%、tJ2值。
[0008]一般情况S型加减速控制包含七个加速度变化段,即加加速度段、匀加速段、减加速度段、匀速度段、加减速度段、匀减速段和减减速度段。始末速度与加减速时间的关系如公式(I)所示,长度与加减速时间的关系如公式(2)所示:
_9] Ve=Vi+ Jt2jl + jtntal - jt% _ tj2ta2 C1 ;

【权利要求】
1.数控机床S型加减速控制方法,其特征在于步骤如下: 第一步:把数控机床加工程序输入数控系统,得到各线段轨迹的起点和终点坐标值等数据,进而计算出各线段轨迹的长度,根据数控系统以及工件的工艺要求确定加加速度、最大限制加速度、最大限制速度; 第二步:求第一段待加工轨迹加速度变化时间即%、tJ2值: 一般情况S型加减速控制包含七个加速度变化段,即加加速度段、匀加速段、减加速度段、匀速度段、加减速度段、匀减速段和减减速度段,始末速度与加减速时间的关系如公式(I)所示,长度与加减速时间的关系如公式(2)所示:
其中S是长度,j是加加速度,Vs是初始速度,ve是末速度,am是最大限制加速度,Vm是最大限制速度以上都是已知量,tji是加加速度时间同时也是减加速度时间、tal是匀加速时间、tvl是匀速度时间、tJ2是加减速度时间同时也是减减速度时间、ta2匀减速时间,这五个量都是未知量; 式子(I)、(2)有五个未知量,但是只有二个关系式,直接根据关系式无法得到确切解,从实际情况考虑,总是希望在满足加工精度要求下,以最短的时间完成加工任务,因此先假定tal = O, ta2 = O, tvl = O,求得tj^tp值,由公式⑴、⑵可得到关于速度和长度的二个方程:
对上述公式(3)、⑷分别构造成二个函数式f Uptj2)、g Uptj2):
求上述二个函数(5)、(6)的一阶偏导数并构成矩阵A ;
其中/^fajlAj2)关于%的一阶偏导数,A^faptj2)关于tj2的一阶偏导数,&是Sajl, tJ2)关于%的一阶偏导数,..是gap tJ2)关于tj2的一阶偏导数; 求得偏导数矩阵A的逆矩阵A_inv,计算%、tJ2的迭代初值,好的迭代初值能快速收敛,节省计算时间,由于%在很多情形下,二个值相差不大,并且迭代初值也不需要太精确,因此把%、tJ2看作相等的值tj,用简化的长度限制条件求出tj,并把tj赋值给tj2(l,计算公式如下所示:
把t_、tJ20分别代入上述公式(5)、(6)求得一组函数值,并构成矩阵B:
把tj2(l代入A_inv,进而计算一次迭代值tjn, tj21,计算公式如下(11):
利用计算出的迭代值计算迭代精度esp:
判断精度要求是否满足要求,如果不满足则把计算出的迭代值代入公式(10)、(11)、(12)进行计算,直到计算出满足精度要求的迭代值,如果迭代始终无法收敛,则迭代次数达到设定值就停止迭代,进行后面的计算过程; 由于采用迭代法求出的收敛值只是近似最优解,并且考虑到速度和长度的限制,求出的收敛值可能不是我们所需要的结果,如果最终收敛值是一组负数解,根据实际情况,这时我们需要的就不是最终收敛值,而是最接近收敛解的一组正数解。可对每次求出的迭代值进行保存,如果求出的迭代值中有一个是正数一个是负数,让负数为零后作为迭代值进行保存,当最终收敛值是一组负数解,取最接近最终收敛值的一组非负迭代值作为最终计算结果; 考虑速度,加速度限制,由于最大速度Vqm出现减加速度段结束时,由公式⑴可得计算公式为:
判断最大限制速度Vm是否小于Vqm,如果小于,说明速度要求不满足,需要重新计算tj!,计算公式如下:
再判断加速度限制要求,加速度最大值aqm出现在加加速度段结束时,计算公式如下: aqm = jtj! (15) 判断最大限制加速度&111是否小于aqm,如果小于,说明加速度要求不满足,需要重新计算tjl;计算公式如下:
此时%与%相关,t,,改变则相应的%也需要重新计算,由公式(3)可得:
由上述公式可求出%改变后的tj2的值,判断加减速阶段达到的加速度最大值aqm是否满足要求,计算公式如下:
判断am是否小于aqm,如果小于,说明加减速度阶段的加速度也不满足要求,需要重新计算tj2,计算公式如下:
这样就求出满足速度和加速度限制要求的的值; 由于用迭代法求出的最优解,存在着误差,为了减少误差,提高准确度,需要根据始末速度限制条件和长度限制条件对求出的t?,t?,再次进行迭代修正,考虑到计算出的时间必须满足加速度和速度的限制要求则进行第二次迭代修正时,时间值%只能减少不能增加,速度误差v_esp计算公式如下:
设定某一精度值ESP^S ESP = 0.01,如果v_eSp>ESP,则说明%取得值较大,相应的%减少一个伺服周期Ts,再代入公式(20)进行计算比较,如果还不满足要求,则继续减少,一直减少到满足要求为止,如果%减到零时,也无法满足要求,则退出循环;如果v_esp<-ESP,则说明%取得值较大,相应的%减少一个伺服周期Ts,再代入公式(20)进行计算比较,一直减少到满足要求为止,如果%减到零时,也无法满足要求,则退出循环;根据长度限制条件进行判断,对求出的%,\_2,进行迭代修正。计算公式如下: s_esp = Ivtjl + jt)x + 2(ν + β2η)?ρ_ - jt] -s (21) 其中s_esp是根据规划的时间计算得到的长度值和实际长度值之差,如果S_eSp>0,则说明按照计算出的时间进行加工,加工长度值会大于所要求的长度值,这不符合实际要求,所以必须减少规划的时间,%相应的减少一个伺服周期值,由于涉及的是长度的变化,它与tJ1; tJ2都相关,所以相应的%也要改变,由公式(3)可得%的计算公式如下:
再代入上述公式(21)计算长度误差进行比较,如果还不满足要求则重复此过程;当s_temp〈0说明按照计算出的时间进行加工的长度量小于实际的长度,这和实际情况相符,说明还有其他的速度变化段,结束迭代修正过程; 综上过程就能求出满足要求、误差减到最小的tJ2的值; 第三步:求第一段待加工轨迹匀加速段和匀减速段时间即tal、ta2值: 由于速度、加速度的限制,一般会出现匀加速段和匀减速段,考虑用时最短原则,假定tvl = O,有公式(I)、(2)可得到关于始末速度和长度限制的二个方程:
对上述公式(23)、(24)分别构造成二个函数式f (tal, ta2)、g(tal, ta2):

求上述二个函数(25)、(26)的一阶偏导数并构成矩阵A:
其中是f(tal,ta2)关于tal的一阶偏导数,/?ιι2是f(tal,ta2)关于ta2的一阶偏导数,孓是g(tal,ta2)关于tal的一阶偏导数&是g(tal,ta2)关于ta2的一阶偏导数; 求出偏导数矩阵A的逆矩阵A_inv,汁算tal、ta2的迭代初值,好的迭代初值能快速收敛,节省计算时间,由于tal、ta2在很多情形下,二个值相差不大,并且迭代初值也不需要太精确,因此tal、ta2看作相等的值ta,代入公式(24)可得到简化的长度公式(28),求出ta:
由于IjlUj2在第一步中已经求得具体值,式子里面只有ta是未知量,是关于ta的一元二次方程,解方程可得二个根取其中较大值作为ta的解,如果求出的值都是负值,ta取值为0,把ta赋值给tal(l、ta20作为迭代初值,把tal(l、ta20代入上述公式(25)、(26)求得一组函数值,并构成矩阵B:
把tal(l、ta20代入A_inv,进而计算一次迭代值tall, ta21:
利用计算出的迭代值计算迭代精度esp,计算公式如下:
判断精度要求是否满足要求,如果不满足则把计算出的迭代值重新代入公式(29)、(30), (31),直到计算出满足精度要求的迭代值,如果迭代始终无法收敛,则迭代次数达到设定值就停止迭代,进行后面的计算过程; 由于采用迭代法求出的收敛值只是近似最优解,并且考虑到速度和长度的限制,求出的收敛值可能不是我们所需要的结果,如果最终收敛值是一组负数解,根据实际情况,这时我们需要的就不是最终收敛值,而是最接近收敛解的一组正数解;可对每次求出的迭代值进行保存,如果求出的迭代值中有一个是正数一个是负数,让负数为零后作为迭代值进行保存,当最终收敛值是一组负数解,取最接近最终收敛值的一组非负迭代值作为最终计算结果;考虑速度限制,由于最大速度Vtp出现减加速度段结束时,计算公式为: \ =V +]?ι+JijAi(32) 判断最大限制速度Vm是否小于Vqm,如果小于,那tal必须重新计算,计算公式如下:
如果tal变化,相应的ta2也要随着变化,有公式(23)可得计算公式如下:
可求得新的ta2值;由于用迭代法求出的最优解,存在着误差,为了减少误差,提高准确度,需要根据始末速度限制条件和长度限制条件对求出的tal、ta2,再次进行迭代修正;考虑到计算出的时间必须满足速度的限制要求则进行第二次迭代修正时,时间值tal、ta2只能减少不能增加,速度误差V_esp计算公式如下:
ν _ esp 二 Vv + Jt2ji + jtntal — Jt1n — tj2ta2 — ν(35 ) 设定某一精度值ESP,假定ESP = 0.01,如果、6邓冗3?,则说明tal取得值较大,相应的tal减少一个伺服周期值,再代入公式(35)进行计算比较,如果还不满足要求,则继续减少,一直减少到满足要求为止,如果tal减到零时,也无法满足要求,则退出循环;如果v_esp<-ESP,则说明ta2取得值较大,相应的ta2减少一个伺服周期值,再代入公式(35)进行计算比较,一直减少到满足要求为止,如果ta2减到零时,也无法满足要求,则退出循环,进行后面的计算; 根据长度限制条件对求出的tal、ta2,进行迭代修正,由公式(24)可得计算公式如下:
其中s_esp是根据规划的时间计算得到的长度值和实际长度值之差,如果s_esp>0,则说明按照计算出的时间进行加工,加工长度值会大于所要求的长度值,这不符合实际要求,所以必须减少规划的时间,tal相应的减少一个伺服周期值,由于涉及的是长度的变化,它与tal、ta2都相关,所以相应的ta2也要改变,由公式(23)可得ta2的计算公式为:
根据求出的tal、ta2的代入上述长度误差公式(36)重新计算s_esp,如果不满足要求,则反复进行这个步骤,直到S_esp小于零或者tal等于零为止; 综上过程就能求出满足要求、误差减到最小的tal、ta2值; 第四步:求第一段待加工轨迹匀速段时间即tvl值: 求tvl时,通过前面三步,四个满足要求的时间参数值tj1、tj2、tal、ta2已经求出,不存在的阶段时间参数值等于O,由于求tvl,只有一个公式,且是一元一次方程,必有一个解,把%、tj2、tal、ta2代入,即可解出tvl值,由公式⑵可得计算公式如下:
通过这个公式可以求出tvl,如果求出的tvl为非正数则说明匀速运动阶段不存在,则tvl赋值为零; 至此第一段待加工轨迹的加减速变化时间都已经求出,根据加减速变化时间,可以得到此待加工轨迹的速度曲线; 第五步:判断是否还存在其他待加工轨迹线段如果还有则重复第二、三、四、五步,并且上一段轨迹的末速度作为下一段轨迹的起始速度代入计算,最后一段的末速度为零;如果没有其他线段则进行第六步; 第六步:根据求出的速度曲线以及起始点,进行插补运算计算出中间点的坐标值,根据坐标值变化向相应坐标输出脉冲信号,控制各执行元件的进给速度、进给方向和进给长度量等,进而完成工件的加工任务。
2.如权利要求1所述的数控机床S型加减速控制方法,其特征在于:第二步有关迭代初值的计算上,tytp看作相等的值tj,用简化的位移限制条件求出一组迭代初值tj1(l、tj2(l,计算公式如下所示:
3.如权利要求1所述的数控机床S型加减速控制方法,其特征在于:第三步有关迭代初值的计算上,tal、ta2看作相等的值ta,代入公式(24)得到简化的位移公式(28),求出ta:
公式(28)是关于&的一元二次方程,求出方程的二个根取其中较大值作为ta的解,如果求出的值都是负值,ta取值为0,把ta赋值给tal(l、ta20作为迭代初值。
4.如权利要求1所述的数控机床S型加减速控制方法,其特征在于:第二步和第三步有关计算和ta1、ta2时,要分别对和ta1、ta2进行两次迭代修正,第一次根据加速度和速度限制条件进行迭代修正,第二次根据始末速度关系和长度限制条件进行迭代修正。
5.如权利要求1所述的数控机床S型加减速控制方法,其特征在于:第二步和第三步中有关收敛值的取舍,对每次的迭代值进行保存,如果一组迭代值有一个是正数一个是负数,让负数为零后作为迭代值进行保存,当最终收敛值是一组负数解,取最接近最终收敛值的一组非负迭代值作为最终计算结果。
6.如权利要求1所述的数控机床S型加减速控制方法,其特征在于:第二步和第三步中有关第二次迭代修正,进行迭代修正时时间值只能减少不能增加。
【文档编号】G05B19/18GK104181860SQ201410421152
【公开日】2014年12月3日 申请日期:2014年8月25日 优先权日:2014年8月25日
【发明者】许守金, 杨亮亮, 史伟民 申请人:浙江理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1