发明名称 一种用于数控机床的加减速控制方法
摘要 本发明公开一种用于数控机床的加减速控制方法,针对控制对象的动态特性,引入“加加速度”概念,在加减速阶段使其加加速度为常数,对加速度和加加速度这两个物理量进行参数设定;采用加加速段、匀加速段、减加速段、匀速段、加减速段、匀减速段和减减速段的分段处理方式,经区间判别后,根据加加速度、加速度、速度和位移之间的积分关系进行各区间段的实时插补计算,形成S状速度曲线,实现柔性加减速控制;在实时插补计算前进行终点判别处理,提高加减速控制的加工精度。它方法简单,冲击小,速度平滑,加工精度高且可实现柔性控制。
申请公布号 CN1971457A 申请公布日期 2007.05.30
申请号 CN200510047806.7 申请日期 2005.11.25
申请人 中国科学院沈阳计算技术研究所有限公司;沈阳高精数控技术有限公司 发明人 黄艳;于东;郭锐锋;吴文江
分类号 G05B19/18(2006.01);G05B19/41(2006.01) 主分类号 G05B19/18(2006.01)
代理机构 沈阳科苑专利商标代理有限公司 代理人 许宗富;周秀梅
主权项 1.一种用于数控机床的加减速控制方法,其特征在于:针对控制对象的动态特性,引入“加加速度”概念,在加减速阶段使其加加速度为常数,对加速度和加加速度这两个物理量进行参数设定;采用加加速段、匀加速段、减加速段、匀速段、加减速段、匀减速段和减减速段的分段处理方式,经区间判别后,根据加加速度、加速度、速度和位移之间的积分关系进行各区间段的实时插补计算,形成S状速度曲线,实现柔性加减速控制;在实时插补计算前进行终点判别处理,提高加减速控制的加工精度;具体如下:1)引入“加加速度”:在加加速段、减加速段、加减速段、减减速段的加速度的导数为加加速度,为恒值;在匀加速段、匀减速段、匀速段的加加速度为0,则加加速度在S形曲线各区间段的表达式为:<img file="A2005100478060002C1.GIF" wi="1527" he="779" />其中:J为加加速度;2)所述加速度、速度和沿刀具路径的位移的积分关系:<![CDATA[ <math><mrow><mi>a</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mi>a</mi><mrow><mo>(</mo><msub><mi>t</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>+</mo><msubsup><mo>&Integral;</mo><msub><mi>t</mi><mn>1</mn></msub><mi>t</mi></msubsup><mi>J</mi><mrow><mo>(</mo><mi>&tau;</mi><mo>)</mo></mrow><mi>d&tau;</mi></mrow></math>]]></maths><![CDATA[ <math><mrow><mi>v</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mi>v</mi><mrow><mo>(</mo><msub><mi>t</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>+</mo><msubsup><mo>&Integral;</mo><msub><mi>t</mi><mn>1</mn></msub><mi>t</mi></msubsup><mi>a</mi><mrow><mo>(</mo><mi>&tau;</mi><mo>)</mo></mrow><mi>d&tau;</mi></mrow></math>]]></maths><![CDATA[ <math><mrow><mi>l</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mi>l</mi><mrow><mo>(</mo><msub><mi>t</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>+</mo><msubsup><mo>&Integral;</mo><msub><mi>t</mi><mn>1</mn></msub><mi>t</mi></msubsup><mi>f</mi><mrow><mo>(</mo><mi>&tau;</mi><mo>)</mo></mrow><mi>d&tau;</mi></mrow></math>]]></maths>其中,a为加速度,v为速度,l为沿刀具路径的位移,t为时间坐标;t<sub>i</sub>(i=0,1,...,7)表示各个区间段的过渡点时刻;τ<sub>i</sub>(i=1,2,...,7)为局部时间坐标,表示以各个区间段的起始点作为时间零点的时间表示,τ<sub>i</sub>=t-t<sub>i-1</sub>(i=1,2,...,7);3)所述S形曲线加减速处理包括区间判别处理、终点判别处理和实时插补计算,具体如下:①区间判别:所述区间判别计算各区间段的运行时间和过渡点时刻,在加工程序段间的状态为停止模式下,初始速度及终点速度均为0,加速度极限和加加速度为可配置的参数,根据电机正反向的负载驱动能力一致原理,设电机的正向和反向最大加速度相等,且加速过程和减速过程的S型曲线是对称的,则有:<![CDATA[ <math><mrow><msub><mi>T</mi><mn>1</mn></msub><mo>=</mo><msub><mi>T</mi><mn>3</mn></msub><mo>=</mo><msub><mi>T</mi><mn>5</mn></msub><mo>=</mo><msub><mi>T</mi><mn>7</mn></msub><mo>=</mo><mfrac><mi>A</mi><mi>J</mi></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow></math>]]></maths>其中:A为加速度极限;T<sub>1</sub>为加加速段的运行时间;T<sub>3</sub>为减加速段的运行时间;T<sub>5</sub>为加减速段的运行时间;T<sub>7</sub>为减减速段的运行时间;在减加速段结束时达到期望的进给速度,得到:<![CDATA[ <math><mfenced open='' close=''><mtable><mtr><mtd><msub><mi>v</mi><mn>3</mn></msub><mo>=</mo><mi>V</mi></mtd><mtd><msub><mi>T</mi><mn>2</mn></msub><mo>=</mo><mfrac><mn>1</mn><mi>A</mi></mfrac></mtd></mtr></mtable><mrow><mo>[</mo><mi>V</mi><mo>-</mo><msub><mi>v</mi><mi>s</mi></msub><mo>-</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><mi>J</mi><msubsup><mi>T</mi><mn>1</mn><mn>2</mn></msubsup><mo>-</mo><mi>A</mi><msub><mi>T</mi><mn>3</mn></msub><mo>+</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><mi>J</mi><msubsup><mi>T</mi><mn>3</mn><mn>2</mn></msubsup><mo>]</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>5</mn><mo>)</mo></mrow></mrow></mfenced></math>]]></maths>其中:v<sub>3</sub>为减加速段结束时速度,V为进给速度,v<sub>s</sub>为初始速度,T<sub>2</sub>为匀加速段的运行时间,在减减速段结束时达到最终的终点速度,得到:<![CDATA[ <math><mrow><msub><mi>v</mi><mi>e</mi></msub><mo>=</mo><msub><mi>v</mi><mn>6</mn></msub><mo>-</mo><msub><mi>AT</mi><mn>7</mn></msub><mo>+</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><mi>J</mi><msubsup><mi>T</mi><mn>7</mn><mn>2</mn></msubsup></mrow></math>]]></maths><![CDATA[ <math><mrow><msub><mi>T</mi><mn>6</mn></msub><mo>=</mo><mfrac><mn>1</mn><mi>A</mi></mfrac><mo>[</mo><mi>V</mi><mo>-</mo><msub><mi>v</mi><mi>e</mi></msub><mo>-</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><msubsup><mi>JT</mi><mn>5</mn><mn>2</mn></msubsup><mo>-</mo><mi>A</mi><msub><mi>T</mi><mn>7</mn></msub><mo>+</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><mi>J</mi><msubsup><mi>T</mi><mn>7</mn><mn>2</mn></msubsup><mo>]</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>6</mn><mo>)</mo></mrow></mrow></math>]]></maths>其中T<sub>6</sub>为匀减速段的运行时间,v<sub>e</sub>为终点速度,v<sub>6</sub>为减减速段结束时速度;每个区间段的总位移之和等于加工路径总距离,将加加速段、匀加速段、减加速段、匀减速段、加减速段、减减速段的运行时间代入加工路径总距离公式,即<![CDATA[ <math><mrow><msub><mrow><mi>L</mi><mo>=</mo><mi>l</mi></mrow><mi>e</mi></msub><mo>-</mo><msub><mi>l</mi><mi>s</mi></msub><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mn>7</mn></munderover><mrow><mo>(</mo><msub><mi>l</mi><mi>k</mi></msub><mo>-</mo><msub><mi>l</mi><mrow><mi>k</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>)</mo></mrow></mrow></math>]]></maths>,加工路径总距离为已知,从而得到匀速段的运行时间:<![CDATA[ <math><mrow><msub><mi>T</mi><mn>4</mn></msub><mo>=</mo><mfrac><mn>1</mn><mi>V</mi></mfrac><mrow><mo>(</mo><mi>L</mi><mo>-</mo><mfrac><msup><mi>V</mi><mn>2</mn></msup><mi>A</mi></mfrac><mo>-</mo><mfrac><mi>AV</mi><mi>J</mi></mfrac><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>7</mn><mo>)</mo></mrow></mrow></math>]]></maths>其中:T<sub>4</sub>为匀速段的运行时间;如果在加加速段、匀加速段、减加速段内达到期望的进给速度,即匀加速段的运行时间≥0,存在匀加速区间段;否则不存在匀加速段,则对加速度极限根据公式(9)重新进行调整,设置匀加速段的运行时间为0,加加速区间段能达到的加速度的最大可能值为:<![CDATA[ <math><mrow><msup><mi>A</mi><mrow><mo>&prime;</mo><mo>=</mo><msqrt><mi>J</mi><mo>&times;</mo><mi>V</mi></msqrt></mrow></msup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>9</mn><mo>)</mo></mrow></mrow></math>]]></maths>加速度极限进行重新调整后,按式(4)、(9)重新计算匀加速段和匀减速段的运行时间;如果加工路径总距离包含有匀速进给区间段,那么匀速段的运行时间≥0;否则,如果刀具路径不能达到目标进给速度,那么匀速段的运行时间为0,进给速度减小到由式(7)解出的最大可能的数值;对于新的目标进给速度,先通过式(5)重新计算匀加速段的运行时间;若匀加速段的运行时间≥0不成立,此加工段在经过进给速度的修调后不满足匀加速段存在的条件,则根据式(9)对加速度极限再次进行调整,再根据式(4)计算加加速段、减加速段、加减速段和减减速段的运行时间的调整值;根据加工程序段的加工路径总距离对各区间段的运行时间进行调整后,得出各段的过渡点时刻;②终点判别处理:所述终点判别处理是根据前一插补周期求出的位移l计算出当前插补周期刀具中心离开本程序段终点的距离,即<![CDATA[ <math><mrow><mi>&Delta;</mi><msub><mi>l</mi><mi>i</mi></msub><mo>=</mo><mi>L</mi><mo>-</mo><munderover><mi>&Sigma;</mi><mrow><mi>k</mi><mo>=</mo><mi>l</mi></mrow><mi>l</mi></munderover><msub><mi>l</mi><mi>k</mi></msub><mo>;</mo></mrow></math>]]></maths>将离开本程序段终点的距离与一个插补周期步长的一半相减,其差值为:<![CDATA[ <math><mrow><mi>&Delta;</mi><mo>=</mo><mfrac><mrow><mi>v</mi><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>&times;</mo><mi>T</mi></mrow><mn>2</mn></mfrac><mo>-</mo><mi>&Delta;</mi><msub><mi>l</mi><mi>i</mi></msub><mo>,</mo></mrow></math>]]></maths>其中v(t)为瞬时速度,T为插补周期;如果差值>0,离程序段终点的距离不足于一个插补周期的步长,指定当前插补周期的瞬时速度v(t)为0,本加工程序段终点值作为当前插补周期的输出位移,并设置相应的加工段结束标志;若差值≤0,继续进入区间判别和实时插补计算,计算当前周期的瞬时速度;③实时插补计算:设新加工程序段的加工初始时间为0,对经过每个插补周期后的加工时间进行累加;取上述区间段运行时间,在新加工程序段的第一个插补周期计算出各个区间段的过渡点时刻,然后在每个刷新周期对加工时间与过渡点时刻进行条件判断,进入相应的运行区间段,根据加加速度和加速度、加速度和速度、速度和位移之间的积分关系,对所述每个区间段的加加速度、加速度、速度进行积分和实时插补计算,得到当前插补周期的瞬时速度和位移;形成S状速度曲线,实现柔性加减速控制。
地址 110006辽宁省沈阳市和平区三好街100号