发明名称 基于二次B样条曲线对G01代码的拟合及插补方法
摘要 一种基于二次B样条曲线对G01代码的拟合及插补方法,是先通过自适应方法选取G01代码所描述的每组小线段的各个特征点,再用通过所有特征点的二次B样条曲线拟合待加工路径。并根据二次B样条曲线的性质和数控机床各驱动轴加速度的限制,同时求得该二次B样条曲线的最大允许加工速度曲线(VLC曲线)和该VLC曲线上的各速度关键点;然后根据各个速度关键点、每个关键点的控制轴及其最大允许加工速度和VLC曲线,计算出实际加工速度曲线;并根据实际加工速度曲线与插补误差计算插补点,完成实时插补。本发明方法计算速度快,加工精度高,工作性能稳定,适用范围广,能在满足系统预设精度前提下,实时完成样条曲线的插补计算,满足高速、高精度数控加工需求。
申请公布号 CN101539769B 申请公布日期 2010.08.25
申请号 CN200910082732.9 申请日期 2009.04.28
申请人 中国科学院数学与系统科学研究院 发明人 张梅;袁春明;闫伟;王定康;李洪波;高小山
分类号 G05B19/41(2006.01)I;B23Q15/12(2006.01)I 主分类号 G05B19/41(2006.01)I
代理机构 北京德琦知识产权代理有限公司 11018 代理人 夏宪富
主权项 一种用于数控机床的基于二次B样条曲线对G01代码的拟合及插补方法,其特征在于:包括下列操作步骤:(1)根据逼近误差自适应选取G01代码中的特征点,并用通过所有特征点的二次B样条曲线拟合待加工路径:先分析G01代码:对G01代码描述的每组小线段进行几何参数的计算,即选取G01代码描述的每组小线段的起点、终点及其投影在数控机床中的各个驱动轴上的极值点;再初步选取特征点:在设定长度范围内,选取极值点前后的多个数据点,并计算该多个数据点与该极值点所构成的角度的加权平均值,作为该极值点的角度值θ;接着判断该角度值θ是否小于预定阀值θ0,若是,将该极值点标记为样条曲线的断点,即一段二次B样条曲线的起点或终点;否则,将该极值点标记为初步选取的特征点;然后对每两个断点间的特征点序列进行自适应调整:以每个特征点以及位于其后的两个特征点为一组,依次对上述特征点序列进行分组,再用二次贝塞尔(Bézier)曲线依次分别插值每组特征点,并找到每次插值的三个特征点中的首点和末点在原G01代码序列中的对应位置,计算上述两个对应位置之间的所有非特征点的数据点到二次Bézier插值曲线的距离,并判断这些距离的数值是否大于系统预设精度要求,若存在有大于系统预设精度要求的数据点,则将其中距离最大的数据点作为新的特征点添加到已有的特征点序列;重复执行该步骤操作,直到所有数据点到二次Bézier曲线的距离都满足系统预设精度要求;最后,对上述每两个断点间的所有特征点,分别用二次B样条曲线进行插值,得到并输出用于拟合待加工路径的二次B样条曲线;(2)以二次B样条曲线实现数控机床分轴控制的最优插补加工:根据该二次B样条曲线的性质和数控机床各驱动轴加速度的限制,同时求得该二次B样条曲线的最大允许加工速度曲线,即VLC曲线,以及该VLC曲线上的各个速度关键点;然后从该二次B样条曲线的起点和终点开始,以初速度为0,分别按照该参数的正向和逆向开始加速,选择其中达到最大加速能力的驱动轴为控制轴,并根据控制轴求得速度曲线,进而求解得到其交点,从而得到相应分段的速度曲线;判断该速度曲线的下方是否存在VLC曲线的关键点,如果没有,则该速度曲线就是所需的速度规划曲线;否则,找到位于该速度曲线下方的VLC曲线的所有关键点,并从位于中间的关键点开始,以该点的最大允许加工速度为初速度,向参数的正向和逆向分别对相应的控制轴计算其速度曲线,直到该速度曲线与原来的分段速度曲线相交,得到新的分段速度曲线;重复该判断步骤,直到新的分段速度曲线下方没有VLC曲线的关键点,则将此时的分段速度曲线作为最终的分段速度曲线,即实际加工速度曲线;最后根据该实际加工速度曲线与插补误差计算插补点,计算完成实时插补加工。
地址 100190 北京市海淀区中关村东路55号