一种自动单边补偿的数控加工方法_2

文档序号:8543121阅读:来源:国知局
[0044](5)运行程序,对程序代码进行第二次解析,这一次解析过程把程序代码解析成对应的移动指令和数控机床命令并添加到解析器队列里,等待调用。
[0045]上述第二次解析具体为:在第一次解析的基础上,按顺序处理内部解析器队列里面的代码,处理过程中会根据G代码所代表的功能分类调用相应的处理函数,而第一次解析得到的距离信息会进行进一步处理,把坐标系偏移值,工件偏移值,刀具偏移值等信息累加上去后得到机床坐标系下的绝对坐标值。
[0046](6)运行过程中会检查队列是否为空,若队列不为空,则从解析器队列中取出指令进行处理,若队列为空,则说明该程序文件已经结束或者发生异常错误,结束程序运行。
[0047](7)从队列取出指令后,获取指令对应的起始点和终点。其起始点和终点信息将与该指令的刀具路径的中心点相比较。
[0048](8)在直线情况下,在X方向,如果指令终点值比该指令刀具中心点的X值大,则把刀具X补偿值与指令终点X值相加,如果指令终点X值比刀具路径中心点X值小,则指令终点X值减去补偿值X值。如果补偿值X值为正,则在X方向该刀具路径向外扩大,如果补偿值X值为负,则X方向上该刀具路径向内缩小。
[0049]在Y方向上,如果指令终点值比该指令刀具中心点的Y值大,则把刀具Y补偿值与指令终点Y值相加,如果指令终点Y值比刀具路径中心点Y值小,则指令终点Y值减去补偿值Y值。如果补偿值Y值为正,则在Y方向该刀具路径向外扩大,如果补偿值Y值为负,则Y方向上该刀具路径向内缩小。
[0050](9)指令终点与补偿值运算后,检查结果是否会产生过度补偿,检查是否过度补偿的方法根据中心点来判断,补偿前比中心点大的点补偿结束后必须比中心点大,补偿前比中心点小的点补偿结束后必须比中心点小,否则为补偿出错,在系统上提醒出错并退出程序运行,如果确认结果正确,则把该结果发送到下层软件,再由下层软件转化为脉冲输出。
[0051](10)当队列解析完毕后,即队列为空时,程序运行退出
[0052]该补偿方法具体步骤和方法如上所述,整个补偿过程都是在数控系统自动运行的情况下完成的。
[0053]实施例2
[0054]本实施例的技术方案除了下述技术特征之外,其他技术方案与实施例1相同,如图2所示,本实施例中,上述步骤(8)中是刀具的运行轨迹为圆弧为例进行说明:在圆弧轨迹情况下,在X方向上补偿,当指令终点值比该指令刀具中心点的X值大,则把刀具X补偿值与指令终点X值相加,还要把刀具X补偿值与指令圆弧中心点X值相加,如果指令终点X值比刀具路径中心点X值小,则把刀具X补偿值与指令终点X值相减,还要把刀具X补偿值与指令圆弧中心点X值相减。当补偿值为正时,指令中心点右边的圆弧整体向右移,指令中心点左边的圆弧整体向左移,该刀具路径在X方向上往外扩大,如果补偿值X值为负,指令中心点右边的圆弧整体向左移,指令中心点左边的圆弧整体向右移,该刀具路径在X方向上往内缩小。
[0055]在Y方向上补偿,当指令终点值比该指令刀具中心点的Y值大,则把刀具Y补偿值与指令终点X值相加,还要把刀具Y补偿值与指令圆弧中心点Y值相加,如果指令终点Y值比刀具路径中心点Y值小,则把刀具Y补偿值与指令终点Y值相减,还要把刀具Y补偿值与指令圆弧中心点Y值相减。当补偿值为正时,指令中心点右边的圆弧整体向右移,指令中心点左边的圆弧整体向左移,该刀具路径在Y方向上往外扩大,如果补偿值Y值为负,指令中心点右边的圆弧整体向左移,指令中心点左边的圆弧整体向右移,该刀具路径在Y方向上往内缩小。
[0056]上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
【主权项】
1.一种自动单边补偿的数控加工方法,其特征在于,包括下述步骤: (1)数控系统上电并完成加工前的准备工作,如果该程序需要用到补偿,则设置好刀具对应的刀具补偿值,所述刀具补偿值用于在运行过程中对运行的刀具路径进行补偿; (2)载入需要执行的程序文件,载入程序时对整份程序进行第一次解析,根据程序内容获取到程序指令对应的刀具信息和距离信息,并记录下来; (3)根据记录下来的程序指令的刀具信息和位置信息,计算出程序内所用到的刀具中心点; (4)从步骤(I)中获取该刀具的刀具补偿值,并保存在解析器内部,等待调用,所述刀具补偿值包括刀具X方向补偿值和刀具Y方向补偿值; (5)运行程序,对程序代码进行第二次解析,第二次解析是把程序代码解析成对应的移动指令和数控机床命令并添加到解析器队列里,等待调用; (6)运行过程中会检查队列是否为空,若队列不为空,则从解析器队列中取出G代码处理后的指令信息进行处理,若队列为空,则说明该程序文件已经结束或者发生异常错误,结束程序运行; (7)从队列取出G代码处理后的指令信息后,获取为G代码处理后的指令信息对应的起始点和终点,其起始点和终点信息将与该指令信息的刀具路径的中心点相比较; (8)根据刀具运行的轨迹,将终点值X方向的值和Y方向的值分别与刀具中心点X方向值和Y方向值进行比较,根据比较的结果,对X方向和Y方向分别单独进行补偿; (9)经过步骤(8)的补偿运算之后,检查结果是否会产生过度补偿; (10)当队列解析完毕后,即队列为空时,程序运行退出。
2.根据权利要求1所述的一种自动单边补偿的数控加工方法,其特征在于,步骤(I)中,所述准备前的工作包括机床回零以及设置工件偏移点。
3.根据权利要求1所述的一种自动单边补偿的数控加工方法,其特征在于,步骤(2)中,所述刀具信息是指该指令所对应的轨迹是属于哪一型号刀具; 所述位置信息是指该指令所对应的轨迹的起始点和结束点。
4.根据权利要求1所述的一种自动单边补偿的数控加工方法,其特征在于,步骤(8)中,当刀具运行的轨迹为直线时,在X方向,如果指令终点X值比该指令刀具中心点的X值大,则把刀具X补偿值与指令终点X值相加,如果指令终点X值比刀具路径中心点X值小,则指令终点X值减去补偿值X值,如果补偿值X值为正,则在X方向该刀具路径向外扩大,如果补偿值X值为负,则X方向上该刀具路径向内缩小,Y方向上直线的补偿同理。
5.根据权利要求1所述的一种自动单边补偿的数控加工方法,其特征在于,步骤(8)中,当刀具运行的轨迹为圆弧时,在X方向上补偿,当指令终点X值比该指令刀具中心点的X值大,则把刀具X补偿值与指令终点X值相加,再将刀具X补偿值与指令圆弧中心点X值相加;如果指令终点X值比刀具路径中心点X值小,则把刀具X补偿值与指令终点X值相减,再将刀具X补偿值与指令圆弧中心点X值相减;当补偿值为正时,指令中心点右边的圆弧整体向右移,指令中心点左边的圆弧整体向左移,该刀具路径在X方向上往外扩大,如果补偿值X值为负,指令中心点右边的圆弧整体向左移,指令中心点左边的圆弧整体向右移,该刀具路径在X方向上往内缩小'Y方向圆弧的补偿同理。
6.根据权利要求1所述的一种自动单边补偿的数控加工方法,其特征在于,步骤(9)中,检查结果是否会产生过度补偿是根据中心点来判断的,补偿前比中心点大的点补偿结束后必须比中心点大,补偿前比中心点小的点补偿结束后必须比中心点小,否则为补偿出错,在系统上提醒出错并退出程序运行,如果确认结果正确,则把该结果发送到下层软件,再由下层软件转化为脉冲输出。
7.根据权利要求1所述的一种自动单边补偿的数控加工方法,其特征在于,步骤(2)中,第一次解析具体为: 把NC程序文件的G代码扫描进内部代码解析器队列里,然后历遍整个解析器队列的每一行,把G代码对应的D值和T值记录下来作为程序的刀具信息,把G代码对应的X值和Y值记录下来作为程序中的距离信息,而程序中的刀具信息和距离信息根据内部代码解析器队列里的行号进行 对应。
8.根据权利要求1所述的一种自动单边补偿的数控加工方法,其特征在于,步骤(5)中,第二次解析具体为: 在第一次解析的基础上,按顺序处理内部解析器队列里面的代码,处理过程中会根据G代码所代表的功能分类调用相应的处理函数,而第一次解析得到的距离信息会进行进一步处理,把坐标系偏移值,工件偏移值,刀具偏移值等信息累加上去后得到机床坐标系下的绝对坐标值。
9.根据权利要求1-8中任一项所述的一种自动单边补偿的数控加工方法,其特征在于,上述整个补偿过程都是在数控系统自动运行的情况下完成的。
【专利摘要】本发明公开了一种自动单边补偿的数控加工方法,包括如下步骤,系统上电,载入需要执行的程序文件,记录程序指令的刀具信息和位置信息,计算出刀具的中心点,并获取刀具补偿值,对程序代码进行第二次解析,并获取指令对应的起始点和终点,再根据刀具运行的轨迹,将终点值X方向的值和Y方向的值分别与刀具中心点X方向值和Y方向值进行比较,根据比较的结果,对X方向和Y方向分别单独进行补偿,检查结果是否会产生过度补偿,队列为空时,程序运行退出。本发明能自动检索加工程序中的刀具信息,单独对X轴或Y轴进行补偿,解决由于X轴Y轴丝杠磨损的不同造成的加工偏差。
【IPC分类】G05B19-41
【公开号】CN104865899
【申请号】CN201510137206
【发明人】涂天祥, 梁红波
【申请人】广州英码信息科技有限公司
【公开日】2015年8月26日
【申请日】2015年3月26日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1