CN110531701B - 数值控制装置 - Google Patents
数值控制装置 Download PDFInfo
- Publication number
- CN110531701B CN110531701B CN201910429123.XA CN201910429123A CN110531701B CN 110531701 B CN110531701 B CN 110531701B CN 201910429123 A CN201910429123 A CN 201910429123A CN 110531701 B CN110531701 B CN 110531701B
- Authority
- CN
- China
- Prior art keywords
- command
- error correction
- solution
- workpiece
- axis
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/402—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for positioning, e.g. centring a tool relative to a hole in the workpiece, additional detection means to correct position
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/404—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/406—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
- G05B19/4069—Simulating machining process on screen
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/4155—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/34—Director, elements to supervisory
- G05B2219/34085—Software interpolator
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/50—Machine tool, machine tool null till machine tool work handling
- G05B2219/50049—Control machine as function of position, angle of workpiece
Landscapes
- Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Numerical Control (AREA)
- Automatic Control Of Machine Tools (AREA)
Abstract
本发明提供一种数值控制装置,在5轴加工机的数值控制装置中当从指令始点到指令终点跨越奇异点时,抑制工具方向从工件设置误差校正后的工具方向背离。数值控制装置具有工件设置误差校正部,工件设置误差校正部具有:工具位置方向计算部;存在多个解时,通过选择接近之前解的解的第一方式或通过选择接近指令数值的解的第二方式来选择2个旋转轴的位置的误差校正部。数值控制装置还具有预读程序的预读部,工件设置误差校正部通过第一方式对预读出的指令数值进行误差校正来求出校正指令数值,在校正指令数值是5轴加工机的可动区域内时设定基于第一方式的误差校正,在校正指令数值是5轴加工机的可动区域外时设定基于第二方式的误差校正。
Description
技术领域
本发明涉及一种对5轴加工机进行控制的数值控制装置,该5轴加工机通过3个直线轴和2个旋转轴来对固定安装于工作台的工件进行加工。
背景技术
在控制通过3个直线轴(X轴、Y轴、Z轴)和2个旋转轴(绕X轴的A轴、绕Y轴的B轴、绕Z轴的C轴中的某2个轴)来对安装于工作台的工件(加工物)进行加工的5轴加工机的数值控制装置中,作为控制各轴的坐标值的方法已知有工具末端点控制(参照专利文献1),工具末端点控制是在固定于工作台的正交坐标系(工作台坐标系)上指令工具的位置、工具的方向以及速度,将它们坐标变换为机械的控制点处的各轴的坐标值来进行控制的方法。
在工具末端点控制中,控制工具的位置和速度,通过对各旋转轴的位置进行插补来控制工具方向。
但是,在控制5轴加工机的数值控制装置中已知有工件设置误差校正功能(例如,参照专利文献2~5),该功能用于对设置工件时的设置误差进行校正。
在专利文献2中,公开了加工物的安装误差校正方法以及安装误差校正装置的技术。其中,公开了对工件(加工物)的设置误差(安装误差)进行校正的手段。该文献(例如,段落0043或段落0046)中公开了为了求出校正后的B轴或A轴位置而进行使用了arctan的计算。但是,arctan在0度到360度之间通常具有两个解。
像图18中的B轴和C轴的位置(B0、C0)那样,在B=0度的位置时,工具方向不依赖C的位置。将这样的B=0度的位置称为奇异点。
在使工具从位置(B0、C0)向Y方向倾斜20度时,像B轴和C轴的位置(B20、C90)和位置(B-20、C-90)(换言之,(B340、C270))那样,存在两个解。在两个解中,从一方来看,将另一方称为“其他解”。
这样,在5轴加工机中,用于使工具相对于工件朝向某个方向的2个旋转轴的位置组合,在0度到360度之间通常存在两组。
在工件设置误差校正中,在校正2个旋转轴(校正工具方向)时,数值控制装置使工具的方向倾斜工件的倾斜误差量,因此,计算2个旋转轴的位置。此时,不得不从在0度到360度之间存在的两组位置中选择其中一个。在专利文献3~5中,公开了该选择方法。
在专利文献3中公开了:选择两个解中的、接近之前解的解的方式(第一方式)。
在专利文献4中公开了:选择两个解中的、接近指令位置的解的方式(第二方式)。
在专利文献5中公开了:选择接近之前解的解、并且在2个旋转轴的移动为最小的时刻切换为其他解的方式(第三方式)。
现有技术文献
专利文献1:日本特开2003-195917号公报
专利文献2:日本特开平7-299697号公报
专利文献3:日本特开昭63-132307号公报
专利文献4:日本专利第4291386号公报
专利文献5:日本专利第5461980号公报
如图4所示,设为在工件的设置位置处绕Y轴存在少许的倾斜误差β。此时,在校正了倾斜误差β以便保持工具相对于工件的位置和方向时,如图5和图6所示,工具倾斜工件设置时的绕Y轴的倾斜误差β的量。
在基于第二方式或第三方式的工件设置误差校正中,从指令始点到指令终点跨越奇异点的情况下,当通过奇异点(B=0度)时,如图19所示,工具方向(通过奇异点时的工具方向)从应有的工具方向(工件设置误差校正后的工具方向)背离(例如,立起)。
例如,如果工件设置时的倾斜误差小,则通过奇异点时脱离工具方向的角度也小,因此不成问题。
但是,若在工件设置时的倾斜误差大,通过奇异点时脱离工具方向的角度大时(例如,立起角度大时),则可能对加工造成恶劣影响。例如,可能产生工具侧面与工件的干扰,或者在侧面加工中产生加工不良等。
另外,在基于第一方式的工件设置误差校正中,由于不通过奇异点,因此不会产生工具方向的脱离。
发明内容
本发明的目的在于提供一种数值控制装置,当在5轴加工机的数值控制装置中,从指令始点到指令终点跨越奇异点时,抑制工具方向从工件设置误差校正后的工具方向背离。
(1)本发明涉及的数值控制装置(例如,后述的数值控制装置10、10A),其对5轴加工机进行控制,该5轴加工机通过3个直线轴和2个旋转轴来对安装于工作台的工件进行加工,其中,所述数值控制装置具有:工件设置误差校正部(例如,后述的工件设置误差校正部13、13A),其对设置了工件时的设置误差进行校正,所述工件设置误差校正部具有:工具位置方向计算部(例如,后述的工具位置方向计算部131),其根据所述3个直线轴和所述2个旋转轴的指令数值来计算工具的指令坐标系上的位置和方向;以及误差校正部(例如,后述的误差校正部132),其通过与设置了工件时的设置误差对应地预先设定的误差量来进行针对所述3个直线轴和所述2个旋转轴的误差校正,以便在具有设置误差的工件上保持由所述工具位置方向计算部计算出的工具的指令坐标系上的位置和方向,当在三角函数的计算中存在多个解时,所述误差校正部通过第一方式、或者通过第二方式和第三方式中的某一个来选择要校正的2个旋转轴的位置,其中,所述第一方式是选择接近之前解的解,所述第二方式是选择所述指令坐标系上的接近所述指令数值的解,所述第三方式是选择接近之前解的解、并且在所述2个旋转轴的移动为最小的时刻切换为其他解,在根据由所述工件设置误差校正部求出的3个直线轴和2个旋转轴的坐标值来驱动各轴的数值控制装置中,还具有:预读部(例如,后述的指令解析部11),其预读程序,所述工件设置误差校正部通过所述第一方式对预读出的指令数值进行误差校正来求出校正指令数值,在所述校正指令数值是所述5轴加工机的可动区域内时,所述工件设置误差校正部设定基于所述第一方式的误差校正,在所述校正指令数值是所述5轴加工机的可动区域外时,所述工件设置误差校正部设定基于所述第二方式的误差校正和基于第三方式的误差校正中的某一个。
(2)在(1)所记载的数值控制装置中,可以是,在预读出的指令是加工模式的指令时,在所述加工模式下的多个程序块中的所述校正指令数值全部是所述5轴加工机的可动区域内时,所述工件设置误差校正部对所述加工模式设定基于所述第一方式的误差校正,在所述加工模式下的多个程序块中的所述校正指令数值中的至少一个是所述5轴加工机的可动区域外时,所述工件设置误差校正部对所述加工模式设定基于所述第二方式和第三方式中的某一个的误差校正。
(3)在(1)或(2)所记载的数值控制装置中,可以是,在预读出的指令是定位模式的指令时,所述工件设置误差校正部设定基于所述第二方式和第三方式中的某一个的误差校正。
发明效果
根据本发明,可以提供一种数值控制装置,当在5轴加工机的数值控制装置中,从指令始点到指令终点跨越奇异点时,抑制工具方向从工件设置误差校正后的工具方向背离。
附图说明
图1是对在工具头旋转型的5轴加工机中,应该放置于基准工件位置的工件以实际工件位置的方式具有误差地被放置时的误差校正进行说明的图。
图2是只描绘在工具头旋转型的5轴加工机中,支承头部的工具的部分(TS)和工具来进行说明的图。
图3是从上方观察图2的图。
图4是表示在工件设置位置处绕Y轴存在少许的误差(β)的情况的图。
图5是表示在校正了误差以便保持工具相对于工件的位置和方向时,只描绘了始点终点时的工具移动的图。
图6是作为从上方观察图5的图而只描绘了始点终点的图。
图7是对第一方式(选择接近之前解的解的方式)下的支承工具的部分(TS)和工具动作进行说明的图。
图8是对第二方式(选择接近指令的解的方式)的支承工具的部分(TS)和工具动作进行说明的图。
图9是对回旋旋转轴(C轴)产生较大的(接近180度的)移动的不理想的示例进行说明的图。
图10是通过将B、C轴作为坐标轴的路径来表示β=-1度时的图8、图9的移动的图。
图11是在第一方式(选择接近之前解的解的方式)中,通过将B、C轴作为坐标轴的路径来表示的图。也就是说,是通过将B、C轴作为坐标轴的路径来表示β=-1度时的图7的移动的图。
图12是对在第三方式(选择接近之前解的解、并且在所述2个旋转轴的移动为最小的时刻切换为其他解)中,在解A最接近Ps(指令路径上的奇异点)的部位,从解A向解B直线移动进行说明的图。
图13是只记载与图12的指令路径对应的旋转轴的插补以及误差计算来进行说明的表。
图14是对图12、图13的第三方式中与图8对应的旋转轴移动进行说明的图。
图15是对第三方式中在解A最接近指令路径上的奇异点的部位,从解A向解B平滑地以曲线的方式转移进行说明的图。
图16是只记载与图15的指令路径对应的旋转轴的插补和误差计算来进行说明的表。
图17是对图15、图16的第三方式中与图8对应的旋转轴的移动进行说明的图。
图18是说明奇异点和两个解的图。
图19是对第二方式或第三方式中通过奇异点(B=0度)时,工具方向从应有的工具方向(工件设置误差校正后的工具方向)背离进行说明的图。
图20是表示第一实施方式涉及的数值控制装置的结构的图。
图21是第一实施方式涉及的数值控制装置进行的程序预读动作的流程图。
图22是第一实施方式涉及的数值控制装置进行的程序执行时的工件设置误差校正动作的流程图。
图23是表示程序的一例的图。
图24是表示第二实施方式涉及的数值控制装置的结构的图。
图25是第二实施方式涉及的数值控制装置进行的程序预读动作的流程图。
图26是第二实施方式涉及的数值控制装置进行的程序执行时的工件设置误差校正动作的流程图。
图27是表示程序的一例的图。
符号说明
10、10A 数值控制装置
11 指令解析部(预读部)
12 插补部
13、13A 工件设置误差校正部
14 存储部
15 奇异点通过判断部
16 奇异点通过路径制作部
17 解转移开始位置判别部
18 解转移部
131 工具位置方向计算部
132 误差校正部
具体实施方式
以下,参照附图对本发明的实施方式的一例进行说明。另外,在各图中对相同或相当的部件标注相同的符号。
在本实施方式中,通过图1所示那样的头旋转型的5轴加工机来进行说明。其中,在5轴加工机中还存在工作台旋转型或头和工作台都旋转的混合型等加工机。此外,在图1中将2个旋转轴设为B、C轴,但是也存在A、B轴或A、C轴是2个旋转轴的5轴加工机。对于这些5轴加工机,在工具相对于工件的相对方向(工具方向)的控制这一点上也是一样的,因此也可以应用本发明。
在控制通过3个直线轴和2个旋转轴对安装于工作台的工件(加工物)进行加工的5轴加工机的数值控制装置中,将在奇异点附近速度或加速度变得非常大的旋转轴称为回旋旋转轴,将另一旋转轴称为倾斜旋转轴。在图1所示的头旋转型的5轴加工机的结构中,B轴是倾斜旋转轴,C轴是回旋旋转轴。在指示了Z轴方向的工具方向时,虽然为B=0度,但是C轴的位置是任意(不定)的。也就是说,C=0度和C=180度工具方向都是Z轴方向。因此,B轴位置为0度的位置是奇异点。其中,奇异点不限于倾斜旋转轴(B轴)位置为0时。根据机械结构的不同,还存在B=90度或B=180度等其他角度是奇异点的情况。
也就是说,在图1的状态是B=90度的机械结构时,B轴为90度的位置是奇异点。并且,还存在奇异点不是0度也不是90度的其他情况。在以后的说明中,虽然设为图1的状态是B=0度且B轴位置为0度的位置是奇异点,但是并不限于倾斜旋转轴位置为0度的位置是奇异点。
本实施方式假设了图1那样的机床(图1中,设为C=90度),使关于如图1那样应该放置于基准工件位置的工件却如实际工件位置那样被带有误差地放置时的误差校正。
在该机械中,随着直线轴X、Y、Z轴的动作工具头通过绕Z轴的C轴和绕Y轴的B轴而旋转。
因设置工件时的偏差或工作台的倾斜等,实际工件位置相对于原本的工件位置偏移。预先测定该偏移量,设定为相对于基准机械坐标系以X、Y、Z轴方向的平移误差量(δx、δy、δz)、绕X轴的旋转误差量(α)、绕Y轴的旋转误差量(β)、绕Z轴的旋转误差量(γ)的量偏移的实际坐标系。也就是说,按照该误差量来制作相对于基准机械坐标系的实际机械坐标系,以使基准机械坐标系上的基准工件位置与实际机械坐标系上的实际工件的位置相同。
在专利文献2中,公开了加工物的安装误差校正方法和安装误差校正装置的技术。其中,公开了校正工件(加工物)的设置误差(安装误差)的手段。该文献(例如,段落0043、段落0046)中公开了为了求出校正后的B轴或A轴位置而进行使用了arctan的计算。但是,arctan在0度到360度之间通常具有两个解,因此校正后的B轴或A轴位置不确定。
(第一方式)
对于这一点例如专利文献3所公开那样,一般选择接近之前解的解。将该方式作为第一方式。
但是,专利文献3所公开的第一方式(选择接近之前解的解的方式)存在有时在终点位置没有到达按指令位置的位置这样的问题。
(第二方式)
因此,在专利文献4中,不是选择接近之前解的解而是采用选择接近指令的解的方式。将该方式作为第二方式。
对专利文献4所公开的第二方式(选择接近指令的解的方式)的技术思想进行说明。根据指令数值来计算工具的指令坐标系上的,即基准机械坐标系上的位置和方向。
以数学式1的方式求出B=Bc、C=Cc时的工具方向(I、J、K)T。这是工具的指令坐标系上的方向。这里“T”是表示转置的符号。此外,在cos(Cc)等三角函数的表达中,在众所周知的情况下省略()。
【数学式1】
由于程序指令通过基准机械坐标系而被指令,因此工具的指令坐标系上的位置是直线轴的程序指令(Xc、Yc、Zc)本身。
接下来,以数学式2的方式来进行误差校正。通过绕X轴的旋转误差量(α)、绕Y轴的旋转误差量(β)、绕Z轴的旋转误差量(γ),(I、J、K)T被校正为(Ia、Ja、Ka)T。这里,校正旋转误差的顺序设为(α),(β),(γ)的顺序。
【数学式2】
同样地,(Xc、Yc、Zc)T被校正为(Xa、Ya、Za)T。在(Xc、Yc、Zc)T的校正过程中,随着旋转误差的校正还加上了平移误差(δx、δy、δz)的校正(参照数学式3)。
【数学式3】
针对通过数学式2求出的(Ia、Ja、Ka)T,以数学式4~数学式20的方式来计算实现其的B、C轴位置Ba、Ca。这里,arccos的计算,arctan的计算都设为得到0度~180度的值。arctan的计算中的n*360度的项的n是整数值,表示加上了360度的n倍的值而得的位置也是解。即,C轴在正负方向上即使任意旋转也能够动作,但是B轴能够实现-180度~180度内动作。
1)Ia>0、Ja>0时,
解A
【数学式4】
BaA=arccos(Ka)
解B
【数学式5】
BaB=-arccos(Ka)
2)Ia<0、Ja>0时
解A
【数学式6】
BaA=arccos(Ka)
解B
【数学式7】
BaB=-arecos(Ka)
3)Ia<0、Ja<0时
解A
【数学式8】
BaA=arccos(Ka)
解B
【数学式9】
BaB=-arccos(Ka)
4)Ia>0、Ja<0时
解A
【数学式10】
BaA=arccos(Ka)
解B
【数学式11】
BaB=-arccos(Ka)
5)Ia=0、Ja>0时
解A
【数学式12】
BaA=arccos(Ka)
CaA=90度+n*360度
解B
【数学式13】
BaB=-arccos(Ka)
CaB=270度+n*360度
6)Ia=0、Ja<0时
解A
【数学式14】
BaA=arccos(Ka)
CaA=270度+n*360度
解B
【数学式15】
BaB=-arccos(Ka)
CaB=90度+n*360度
7)Ia>0、Ja=0时
解A
【数学式16】
BaA=arccos(Ka)
CaA=0度+n*360度
解B
【数学式17】
BaB=-arccos(Ka)
CaB=180度+n*360度
8)Ia<0、Ja=0时
解A
【数学式18】
BaA=arccos(Ka)
CaA=180度+n*360度
解B
【数学式19】
BaB=-arccos(Ka)
CaB=0度+n*360度
9)Ia=0、Ja=0、Ka=1时
只有解A
【数学式20】
Ba=0度
Ca=Cc
另外,对于Ia=0、Ja=0、Ka=-1的情况,由于机械结构上没有这样的状况发生因此不记载。
这里,1)、2)、3)、4)、5)、6)、7)、8)的每一个情况都存在解A与解B两组解,针对各解组以及n计算数学式21所表示的量D,选择成为最小的D的解组以及n。其中,9)的情况下,解为1组因此选择数学式20的解。
【数学式21】
D=(Bc-Ba)2+(Cc-Ca)2
由此,选择与根据指令值Bc、Cc计算出的工具的指令坐标系上的方向更接近的工具方向。这是第二方式(选择接近指令的解的方式即专利文献4所公开的技术)的技术思想。
这里,对于第一方式(选择接近之前解的解的方式即专利文献3所公开的技术)与第二方式(选择接近指令的解的方式即专利文献4所公开的技术)的差异,列举具体的示例来详细叙述。
设存在图2所示那样的由始点和终点构成的指令。另外,在下图以后,只描绘支承头部的工具的部分(TS)和工具。此外,为了容易理解B轴、C轴位置,对TS和工具略微变更形状而描绘得长一些。并且,以通过工具长度=500mm来加工(X、Y、Z)=(0、0、0)的位置为例。由于第二方式和后述的第三方式是在旋转轴控制方面有特点的方式,因此这里为了简化而以没有X、Y、Z的移动指令为例,但是通常情况下在有旋转轴指令的同时还有直线轴指令,对直线轴的移动进行数学式3的误差校正。
若从上方观察图2则成为如图3那样。这里,设为如图4那样在工件的设置位置处绕Y轴存在少许的误差(β)。
由此,在校正了误差以便保持工具相对于工件的位置和方向时,若只描绘始点终点,则期待工具的移动如图5那样。也就是说,作为从上方的图,若只描绘始点终点,则期待如图6那样进行校正。另外,以后为了简化设为不是立体图而是从上方的图。
但是,如图7那样在第一方式(选择接近之前解的解的方式即专利文献3所公开的技术)中,这样的动作无法实现。这里,通过之前程序块中的校正,工具已经处于校正始点。此外,中间点1A、中间点1B那样的各位置处的**A、**B这两个解对应于1)~8)的情况下的解A、解B。这里,**表示中间点1、中间点2、中间点3、校正终点。
图7的(d)中的校正终点为图6的“期望校正终点”的相反位置。也就是说,终点的B轴、C轴位置相对于原本的指令位置相差得大。这表示因到达终点的加工或此后的加工而可能产生错误动作或错误切削,或可能与障碍物碰撞。
因此,如图8那样通过第二方式(选择接近指令的解的方式即专利文献4所公开的技术)来解决这样的不良情况。另外,这里对在中间点1之前解A比解B接近指令路径,中间点3以后解B接近指令路径的状况进行说明。当然,也存在其相反的状况。
图8中所谓的指令位置1、2、3和指令终点位置是从图2、图3中所指令的始点向终点移动的途中的位置和终点的位置。针对指令位置n和指令终点位置校正工件设置误差的位置是中间点n和校正终点。也就是说,针对指令位置1、2、3和指令终点位置的校正位置分别是中间点1、2、3和校正终点。
图8的(d)中的校正终点为图6的“期望校正终点”。这样,通过第二方式(选择接近指令的解的方式)解决第一方式(选择接近之前解的解的方式)中的不良情况。也就是说,在第二方式(选择接近指令的解的方式)获得可以到达期望的(所期待的)校正终点这样的巨大效果。
但是,如图8的(c)、图9那样,在回旋旋转轴(C轴)产生较大的(近似180度)的移动也是不理想的。这若通过将β=-1时的B、C轴作为坐标轴的路径来进行表示则成为如图10那样。
针对指令始点(B=-20度,C=90度)与指令终点(B=20度,C=90度)的指令,从校正始点(校正始点A)开始,到中间点2A为止解A接近指令,因此,选择解A,在中间点3处选择接近指令的解B(中间点3B),由此,产生从中间点2A向中间点3B的移动。向中间点3B移动之后选择解B而朝向校正终点B移动,最终到达校正终点B。这样,在第二方式(选择接近指令的解的方式)中获得可以到达期望的(所期待的)校正终点这样的巨大效果,但是在回旋旋转轴(C轴)产生较大的(近似180度)移动也是不理想的。
另外,在第一方式(选择接近之前解的解的方式)中,同样地若通过将B、C轴作为坐标轴的路径来进行表示则如图11所示。由于从校正始点(校正始点A)开始,解A的路径始终接近之前解因此选择解A,最终到达校正终点A。由此,可以理解在第一方式(选择接近之前解的解的方式)中到达从指令终点背离得大的校正终点A。也就是说,在第一方式中并不是到达想要到达的校正终点B而是到达校正终点A。
(第三方式)
像第二方式那样以不使回旋旋转轴(C轴)产生较大的(近似180度的)移动为目的,在专利文献5中,采用选择接近之前解的解、并且在2个旋转轴的移动为最小的时刻切换为其他解的方式。将该方式作为第三方式。
对专利文献5所公开的第三方式(选择接近之前解的解、并且在2个旋转轴的移动为最小的时刻切换为其他解的方式)的技术思想进行说明。
在第三方式中,在解A最接近Ps(指令路径上的奇异点)的部位从解A向解B直线移动。
程序指令设为指令始点(B=-20度,C=90度)与指令终点(B=20度,C=90度)的直线插补指令。由于奇异点是B=0的状态,因此连接指令始点(B=-20度,C=90度)与指令终点(B=20度,C=90度)的直线与B=0的直线的交点是Ps(指令路径上的奇异点)。即,Ps(Bs、Cs)=(0、0)。这里,Bs、Cs是Ps的B、C轴要素。
这里,对奇异点通过判断进行说明。
当在指令始点与指令终点这两个指令位置之间2个旋转轴中的倾斜旋转轴(B轴)指令的符号反转时,在这些指令之间倾斜旋转轴指令跨越奇异点而处于相反侧判断为需要通过奇异点。在上述指令中,由于指令始点是B轴-20度指令终点是B轴20度,由于倾斜旋转轴指令的符号反转,因此在始点与终点之间B轴指令跨越奇异点而处于相反侧判断为需要通过奇异点。另外,在B轴指令为0度时视为继续之前指令的符号。例如,在指令始点是B轴-20度指令终点是B轴0度时,不视为指令始点与指令终点跨越奇异点而处于相反侧。
其中,上述说明是B=0度为奇异点时的说明,如上所述,还存在图1的状态是B=90度的机械结构。并且,还存在奇异点并非B=0度也并非90度而是其他角度的情况。在这样的5轴加工机中,关于倾斜旋转轴(B轴),着眼于(指令始点-奇异点)与(指令终点-奇异点)的符号是否反转。即,关于倾斜旋转轴(B轴),如果(指令始点-奇异点)与(指令终点-奇异点)的符号反转,则倾斜旋转轴指令跨越奇异点而处于相反侧判断为需要通过奇异点。关于倾斜旋转轴(B轴),在对奇异点指令时,不视为跨越奇异点而处于相反侧,其与上述的说明相同。
在图12中,针对指令始点(B=-20度,C=90度)与指令终点(B=20度,C=90度)的直线插补指令,进行误差校正时从校正始点(校正始点A)开始,在PaA处解A与Ps的距离最小,因此,进行从解A向解B的PaB的直线插补而转移解。这里,PaA是解转移开始位置,PcA是对应于PaA的指令路径上的点,PcB是以Ps为中心的PcA的点对称点,PaB是基于PcB的解B的位置。之后选择解B而朝向校正终点B移动,最终到达校正终点B。虽然在图12上看起来PaA在解A的路径上并非最接近Ps的点,但是若对照B、C轴的状况,则是最接近Ps的点。
另外,虽然重复,但是如上所述,这里对在解转移之前解A比解B接近指令路径,解转移后解B接近指令路径的状况进行说明。当然,也存在其相反的状况。
作为具体的插补数据成为如图13那样。在图13中,设为β=-1,对于指令始点(B=-20度,C=90度)与指令终点(B=20度,C=90度)的直线插补指令,设为各插补周期的角度变化(△τ)=0.4度。因此,从NO.0(指令始点的插补数据)到NO.100(指令终点的插补数据)每次以△τ(0.4度)进行插补。如果将插补周期设为1msec则这相当于24000度/分的速度。
在图13中以如下方式来进行各行的插补和误差校正计算。Bc、Cc是关于B、C轴从指令始点到指令终点每次以△τ(0.4度)进行插补的数据。在该示例中,只有Bc发生变化。对在各插补周期中进行了插补而得的Bc、Cc进行误差校正计算。也就是说,通过数学式1来计算(I、J、K)。通过数学式2从(I、J、K)计算(Ia、Ja、Ka)。通过数学式4~数学式20从(Ia、Ja、Ka)计算解A(BaA、CaA)、解B(BaB、CaB)。
因此,NO.0中的解A(BaA、CaA)是校正始点A,解B(BaB、CaB)是校正始点B,NO.100中的解A(BaA、CaA)是校正终点A,解B(BaB、CaB)是校正终点B。取得Bc、Cc是计算插补,从其中取得解A、解B是计算误差校正。
这里,当从NO.1依次进行插补和误差校正计算时,对解A(BaA、CaA)与Ps的距离(L0)的增减变化进行核对。通过数学式22来计算距离(L0)。
【数学式22】
核对解A(BaA、CaA)与Ps的距离(L0)的增减变化与核对其二次方的增减变化等同,因此,在图13上核对由数学式23所表示的值L。
【数学式23】
L=L02=(Bc-Bs)2+(Cc-Cs)2
NO.1、NO.2、···,值L单调减少,但是从插补周期NO.31开始在NO.32转为增加(图13中,为灰色背景的部分)。因此,判断为NO.31为最小。如果存在因计算误差而错误地判断为转为增加的可能性,则再进行多次的虚拟插补,然后判断从减少转为增加即可。因此,NO.31的(Bc、Cc)是PcA,解A是PaA,也就是说,是最接近奇异点位置,是解转移开始位置。
另外,这里作为解A(BaA、CaA)与Ps的距离可以如数学式24所示那样,对各项标注α、β那样的权重。
【数学式24】
或者也可以如数学式25所示那样,设为BaA、CaA与Ps之间的绝对值的总和。
【数学式25】
L2=|Bc-Bs|+|Cc-Cs|
并且,B、C轴坐标系上的PcA的Ps有关的点对称位置是PcB,对其进行误差校正计算取得解B时,其是PaB。也就是说,如数学式26那样求出PcB,对其进行图13的NO.69的误差校正计算求出PaB。
【数学式26】
PcB=-(PcA-Ps)+Ps
并且,从PaA朝向PaB进行直线插补。作为直线插补的速度,可以每一插补周期设为△τ(0.4度),也可以使用从NO.31的插补周期向NO.32的插补周期的每一插补周期的解A的变化率,还可以另外预先进行参数设定作为速度。这里,设为以原本的插补间隔来进行从PaA向PaB的直线插补。
从PcA到达Ps所需的插补和误差计算的次数通过数学式27来表示。数学式27中,右边的分子是B、C轴上的PcA与Ps之间的距离。也就是说,Ni在图13的插补和误差计算中,是从PcA到达Ps所需的插补和误差计算的次数。
【数学式27】
如图2所说明那样,通常情况下存在旋转轴指令的同时还存在直线轴指令,针对直线轴的移动进行数学式3的误差校正。虽然图13中只记载了旋转轴的插补和误差计算,但是在各行中与通常一样也存在直线轴的插补与误差校正的计算,从PcA到达Ps的期间的其次数是Ni。
因此,如果将从PaA到达PaB所需的插补次数设为2*Ni,则能够与旋转轴从PaA朝向PaB进行直线插补同时,像通常那样进行对直线轴的插补和误差校正的计算。
在B、C轴上,从PaA朝向PaB,如数学式28那样求出第No.(31+N)次(N=1、2、···、2*Ni)的插补点PaI来进行插补。PaI(Ba、Ca)对应于B、C轴而具有Ba、Ca的要素。
【数学式28】
从PaA向PaB直线插补结束之后,从跨PcB的下一插补周期的No.70的插补周期开始朝向指令终点的插补No.100进行插补和误差校正计算,并且选择解B。这样,到达校正终点B。
对应于图8的旋转轴的移动如图14那样。
从图8的中间点2A向中间点3B的较大的旋转轴移动(图8的(c))如在图14中从(b)到(c)那样略微变小。原本图8中是为了容易理解误差校正的方式而假设误差较大(β=-15度左右)的图,因此看起来图8与图14之差没有那么大。但是,一般情况下误差要更小(|β|=1度以下,通常更进一步小|β|=0.1度以下),该情况下,在图8中旋转轴的近似180度的动作不可避免,图14的(b)向(c)的旋转轴动作极小。
另外,在第三方式中,可以在解A最接近指令路径上的奇异点的部位,从解A向解B平滑地以曲线方式移动。
程序指令与上述的相同。因此,Ps也相同。其中,从PaA朝向PaB以曲线方式转移。之后,选择解B朝向校正终点B移动,最终到达校正终点B。
这里,曲线制作成解A的路径的PaA的切线方向与解B的路径的PaB的切线方向平滑连接。
作为具体的插补数据成为如图16那样。图16与图13大致相同,相同的部分省略说明。差异的部分是从PaA朝向PaB以曲线方式进行插补。作为以曲线方式进行插补的方法,存在如下那样的方法。
将PaA的插补周期的1插补周期前的解A设为PmA。以数学式29的方式来计算PaA的速度PaA’。
【数学式29】
可以从通过PaA、Ps,并且PaA的速度(切线方向矢量)是PaA’这样的三个条件导出二次曲线函数即数学式30,从PaA到Ps进行插补。这里,二次曲线函数f(t)(t=0→1)和系数ω、δ、ε是具有B、C的要素的矢量。
【数学式30】
f(t)=ω*t2+δ*t+ε
对于f(t)求出表示为数学式31即关于Ps点对称的函数(f1(t))(t=1→0)来进行插补,由此,可以同样地从Ps到PaB进行插补。
【数学式31】
f1(t)=-(ω*t2+δ*t+ε-Ps)+Ps
或者,可以从通过PaA、PaB,并且PaA的速度(切线方向矢量)是PaA’、PaB的速度(切线方向矢量)为相对于PaA’关于Ps点对称的PaB’这四个条件,导出表示为数学式32的三次曲线g(t),可以在PaA到PaB进行插补。这里,曲线函数g(t)和系数η、λ、μ、σ是具有B、C要素的矢量。
【数学式32】
g(t)=η*t3+λ*t2+μ*t+σ
图8对应的旋转轴的移动表示为图17。虽然图14的说明部分中也有记载,但是原本图8中是为了容易理解误差校正的方式而假设误差较大(β=-15度左右)的图。但是,一般情况下误差要更小(|β|=1度以下,通常情况下更进一步小|β|=0.1度以下),该情况下,图17的(b)向图17的(c)的旋转轴动作极小且比实施方式1变得平滑。
如以上说明那样,在第一方式(选择接近之前解的解的方式)中,旋转轴可能从指令位置背离得大。因此,可能产生超调(overtravel)等预期不到的问题。
在第二方式(选择接近指令位置的解的方式)中,程序块终点为指令位置。但是,在第二方式中存在如下问题:在通过奇异点时,在C轴产生约180度的较大的移动,旋转轴的移动不平滑。
在第三方式(选择接近之前解的解、并且在2个旋转轴的移动最小的时刻切换为其他解的方式)中,程序块终点为指令位置,且与第二方式相比较,在通过奇异点时,C轴的移动小。
这里,如图4所示,设为在工件的设置位置处绕Y轴存在少许的倾斜误差β。此时,在校正了倾斜误差β以便保持工具相对于工件的位置和方向时,如图5和图6所示,工具倾斜了工件设置时的绕Y轴的倾斜误差β的量。
在基于第二方式或第三方式的工件设置误差校正中,在从指令始点到指令终点跨越奇异点的情况下,在通过奇异点(B=0度)时,如图19所示,工具方向(奇异点通过时的工具方向)从应有的工具方向(工件设置误差校正后的工具方向)背离(例如,立起)。
例如,如果工件设置时的倾斜误差小,则奇异点通过时脱离工具方向的角度小,因此不会成为问题。
但是,在工件设置时的倾斜误差大,奇异点通过时脱离工具方向的角度大时(例如,立起角度大时),可能对加工造成恶劣影响。例如,可能产生工具侧面与工件的干扰、或在侧面加工中产生加工不良等。
另外,在基于第一方式的工件设置误差校正中,由于不通过奇异点,因此不会产生工具方向的脱离。
通过以上,由于在基于第二方式或第三方式的工件设置误差校正中可能对加工造成恶劣影响,因此在切削过程中(加工过程中)希望尽可能进行基于第一方式的工件设置误差校正。
因此,在本实施方式中,预读指令位置,预先进行基于第一方式的工件设置误差校正的模拟,只要校正后的指令位置不在加工机的可动区域外,就尽量采用基于第一方式的工件设置误差校正,只有在校正后的位置指令为加工机的可动区域外时,采用基于第二方式或第三方式的工件设置误差校正。
(第一实施方式)
图20是表示第一实施方式涉及的数值控制装置的结构的图。图20所示的数值控制装置10具有上述的基于第一方式的工件设置误差校正功能、以及上述的基于第二方式的工件设置误差校正功能,根据加工机的状态选择性地使用其中的某一个。
数值控制装置10具有:指令解析部(预读部)11、插补部12、工件设置误差校正部13、存储部14。
指令解析部(预读部)11从程序中针对每一个程序块预读指令。指令解析部11将预读出的指令例如存储于作业用的存储器等(省略图示)中。
插补部12对由指令解析部11预读出的指令实施插补处理,生成指令位置(指令数值)。
工件设置误差校正部13具有工具位置方向计算部131和误差校正部132。
工具位置方向计算部131根据3个直线轴和2个旋转轴的指令位置(指令数值)来计算工具的指令坐标系上的位置和方向。
误差校正部132对应于设置工件时的设置误差通过预先设定于存储部14的误差量(平移误差量(δx、δy、δz)、旋转误差量(α、β、γ))来进行针对3个直线轴和2个旋转轴的误差校正,以便在具有设置误差的工件上保持由工具位置方向计算部131计算出的工具的指令坐标系上的位置和方向。
(程序预读时)
工件设置误差校正部13在预读出的指令是切削模式(加工模式)的指令时,对由插补部12进行了插补而得的指令位置(指令数值)实施上述的基于第一方式(选择接近之前解的解的方式)的工件设置误差校正处理,求出各轴的校正指令位置(校正指令数值)(即,X、Y、Z、B(A)、C轴的校正指令位置)。
工件设置误差校正部13在校正指令位置是预先设定于存储部14中的加工机的可动区域内的情况下,设定基于第一方式的误差校正。另一方面,在校正指令位置是加工机的可动区域外的情况下(换言之,是超调的情况下),工件设置误差校正部13设定基于第二方式(选择接近指令数值的解的方式)的误差校正。
例如,工件设置误差校正部13通过针对对应的切削模式(加工模式)Nxx~Nxx设定OT标记[Nxx~Nxx]=0,设定基于第一方式的误差校正,通过针对对应的切削模式(加工模式)Nxx~Nxx设定OT标记[Nxx~Nxx]=1,设定基于第二方式的误差校正。
工件设置误差校正部13在预读出的指令是定位模式的指令时,不进行上述的基于第一方式的工件设置误差校正,而是通过针对对应的定位模式Nxx~Nxx设定OT标记[Nxx~Nxx]=1,设定基于第二方式的误差校正。
(程序执行时)
工件设置误差校正部13在针对切削模式(加工模式)Nxx~Nxx的OT标记[Nxx~Nxx]是0时,进行基于第一方式的工件设置误差校正。另一方面,工件设置误差校正部13在针对切削模式(加工模式)或定位模式Nxx~Nxx的OT标记[Nxx~Nxx]是1时,进行基于第二方式的工件设置误差校正。
存储部14存储预先设定的误差量(平移误差量(δx、δy、δz)、旋转误差量(α、β、γ))。此外,存储部14还存储预先设定的加工机的可动区域。
存储部14例如是EEPROM等能够改写的存储器。
上述的数值控制装置10(以及后述的数值控制装置10A)例如由DSP(DigitalSignal Processor,数字信号处理器)、FPGA(Field-Programmable Gate Array:现场可编程门阵列)等运算处理器构成。数值控制装置10(以及后述的数值控制装置10A)的各种功能例如通过执行存储于存储部的规定软件(程序)来实现。数值控制装置10(以及后述的数值控制装置10A)的各种功能也可以通过硬件与软件的协作来实现,还可以只通过硬件(电子电路)来实现。
接下来,对第一实施方式涉及的数值控制装置10进行的程序预读动作、以及程序执行时的工件设置误差校正动作进行说明。
图21是第一实施方式涉及的数值控制装置10进行的程序预读动作的流程图,图22是第一实施方式涉及的数值控制装置10进行的程序执行时的工件设置误差校正动作的流程图。图23是表示程序的一例的图。
首先,参照图21,对第一实施方式涉及的数值控制装置10进行的程序预读动作进行说明。
首先,指令解析部(预读部)11从程序中针对每一个程序块预读指令,例如存储于作业用的存储器中(S11)。接下来,插补部12对预读出的指令实施插补处理,生成指令位置(指令数值)(S11)。
接下来,工件设置误差校正部13按切削模式(加工模式)或定位模式来判定预读出的指令是否是切削模式(加工模式)的指令(S12)。在预读出的指令是切削模式时,工件设置误差校正部13针对切削模式中的多个程序块的每一个,进行上述的基于第一方式(选择接近之前解的解的方式)的工件设置误差校正,求出各轴的校正指令位置(校正指令数值)(S13)。
接下来,工件设置误差校正部13判定校正指令位置是否是加工机的可动区域内(S14)。在切削模式(加工模式)中的多个程序块中的校正指令位置全部是加工机的可动区域内时,对该切削模式设定基于第一方式的工件设置误差校正(S15)。例如,工件设置误差校正部13通过针对对应的切削模式(加工模式)Nxx~Nxx设定OT标记[Nxx~Nxx]=0,设定基于第一方式的误差校正。
另一方面,在切削模式(加工模式)中的多个程序块中校正指令位置中的至少一个是加工机的可动区域外时(换言之,是超调时),工件设置误差校正部13对该切削模式设定基于第二方式(选择接近指令数值的解的方式)的工件设置误差校正(S16)。例如,工件设置误差校正部13通过针对对应的切削模式(加工模式)Nxx~Nxx设定OT标记[Nxx~Nxx]=1,设定基于第二方式的误差校正。
(例如,图23中的N101~N199、N201~N299)
另一方面,在步骤S12中,在预读出的指令是定位模式的指令时,工件设置误差校正部13通过针对对应的定位模式Nxx~Nxx设定OT标记[Nxx~Nxx]=1,设定基于第二方式的误差校正(S16)。
(例如,图23中的N2、N200、N300)
接下来,参照图22,对第一实施方式涉及的数值控制装置10进行的程序执行时的工件设置误差校正动作进行说明。
首先,工件设置误差校正部13按切削模式(加工模式)或定位模式,判定设定是否是基于第一方式的工件设置误差校正,例如OT标记[Nxx~Nxx]是否是0(S21)。工件设置误差校正部13在OT标记[Nxx~Nxx]=0时,即设定是基于第一方式的工件设置误差校正时,按切削模式来进行上述的基于第一方式(选择接近之前解的解的方式)的工件设置误差校正(S22)。
另一方面,在OT标记[Nxx~Nxx]=1时,即设定是基于第二方式的工件设置误差校正时,工件设置误差校正部13按切削模式或定位模式来进行上述的基于第二方式(选择接近指令数值的解的方式)的工件设置误差校正(S23)。
像以上说明那样,根据第一实施方式的数值控制装置10,预读指令位置,在加工模式时预先进行基于第一方式的工件设置误差校正的模拟,只要校正后的指令位置是加工机的可动范围内则设定基于第一方式(选择接近之前解的解的方式)的工件设置误差校正,只有在校正后的指令位置是加工机的可动范围外时(换言之,是超调时),设定基于第二方式(选择接近指令数值的解的方式)的工件设置误差校正。
由此,在基于第二方式的工件设置误差校正中,在从指令始点到指令终点跨越奇异点时,可以抑制工具方向从工件设置误差校正后的工具方向背离。
因此,可以抑制在通过奇异点时工具方向从应有的方向(工件设置误差校正后的工具方向)背离(例如,立起)而对加工造成恶劣影响。
对每一加工模式进行工件设置误差校正的方式的设定。由此,不会在一个加工模式中切换工件设置误差校正的方式,可以避免对加工造成恶劣影响。
此外,在定位模式时,由于不存在加工的恶劣影响的问题,因此不进行上述的基于第一方式的工件设置误差校正,而是设定基于第二方式的误差校正即可。
(第二实施方式)
图24是表示第二实施方式涉及的数值控制装置的结构的图。图24所示的数值控制装置10A具有上述的基于第一方式的工件设置误差校正功能和上述的基于第三方式的工件设置误差校正功能,根据加工机的状态选择性地使用其中的某一个。
图24所示的数值控制装置10A与第一实施方式的不同点在于,在图20所示的数值控制装置10中代替工件设置误差校正部13而具有工件设置误差校正部13A。并且,数值控制装置10A还具有:奇异点通过判断部15、奇异点通过路径制作部16、解转移开始位置判别部17、解转移部18。
(程序预读时)
工件设置误差校正部13A与图20中的工件设置误差校正部13的不同点在于:在校正指令位置是加工机的可动区域外时(换言之,是超调时),代替第二方式而设定上述的基于第三方式(选择接近之前解的解、并且在所述2个旋转轴的移动为最小的时刻切换为其他解的方式)的误差校正。
例如,工件设置误差校正部13A通过针对对应的切削模式(加工模式)Nxx~Nxx设定OT标记[Nxx~Nxx]=1,设定基于第三方式的误差校正。
此外,工件设置误差校正部13A与图20中的工件设置误差校正部13的不同点还在于:在预读出的指令是定位模式的指令时,不进行上述的基于第一方式的工件设置误差校正,而是通过针对对应的定位模式Nxx~Nxx设定OT标记[Nxx~Nxx]=1,代替第二方式而设定基于第三方式的误差校正。
(程序执行时)
工件设置误差校正部13A与图20中的工件设置误差校正部13的不同点在于:在针对切削模式(加工模式)或定位模式Nxx~Nxx的OT标记[Nxx~Nxx]是1时,代替第二方式而进行基于第三方式的工件设置误差校正。
奇异点通过判断部15针对程序指令中的各程序块指令,在指令始点与指令终点这两个指令位置之间倾斜旋转轴指令跨越奇异点而处于相反侧时判断为需要通过奇异点,设为标记(后述的F_Ps)=1而通知给奇异点通过路径制作部16、解转移开始位置判别部17、解转移部18。
解转移开始位置判别部17判别解转移开始位置,奇异点通过路径制作部16制作倾斜旋转轴通过奇异点的路径并输出给工件设置误差校正部13。解转移部18进行从奇异点通过路径制作部16制作出的解A向解B或者从解B向解A的解转移路径的插补。
换言之,奇异点通过判断部15在所述倾斜旋转轴位置为0度的位置是奇异点的所述5轴加工机中,在指令始点与指令终点这两个指令位置之间所述倾斜旋转轴指令的符号反转时,在上述两个指令位置之间所述倾斜旋转轴指令跨越奇异点而处于相反侧判断为需要通过奇异点,或者,在所述倾斜旋转轴位置并非0度的位置是奇异点的所述5轴加工机中,在所述两个指令位置之间关于所述倾斜旋转轴指令(指令始点-奇异点)与(指令终点-奇异点)的符号反转时,在所述两个指令位置之间所述倾斜旋转轴指令跨越奇异点而处于相反侧判断为需要通过奇异点。
奇异点通过路径制作部16在通过所述奇异点通过判断部判断为需要通过奇异点时,在进行了所述误差校正部132的校正结果的路径中,也做出在上述两个指令位置之间所述倾斜旋转轴通过奇异点的奇异点通过路径。
所述奇异点通过路径制作部16具有判别从当前选择的解向其他解转移的位置的解转移开始位置判别部17、用于向上述2个旋转轴的坐标系中的另一解转移的解转移部18。
所述解转移开始位置判别部17判别为被选择的解最接近指令路径上的奇异点的奇异点最接近位置是解转移开始位置。
所谓所述奇异点最接近位置是上述2个旋转轴的坐标系中的上述2个旋转轴的位置与奇异点位置的距离为最小的位置。
或者,所谓所述奇异点最接近位置是上述2个旋转轴的坐标系中的上述2个旋转轴的各自位置与奇异点位置的绝对值相加而得的量为最小的位置。
上述解转移部18中,作为指令位置是针对上述解转移开始位置的指令位置在上述2个旋转轴的坐标系中关于指令路径上的奇异点点对称位置,且作为解通过制作向其他解以直线方式转移的路径来实现解的转移。
上述解转移部18中,作为指令位置是针对所述解转移开始位置的指令位置在所述2个旋转轴的坐标系中关于指令路径上的奇异点点对称位置,且作为解通过制作向其他解以曲线方式转移的路径来实现解的转移。
接下来,对第二实施方式涉及的数值控制装置10A进行的程序预读动作、以及程序执行时的工件设置误差校正动作进行说明。
图25是第二实施方式涉及的数值控制装置10A进行的程序预读动作的流程图,图26是第二实施方式涉及的数值控制装置10A进行的工件设置误差校正动作的流程图。图27是表示程序的一例的图。
首先,参照图25,对第二实施方式涉及的数值控制装置10A进行的程序预读动作进行说明。
在图25中步骤S11~S15的动作与图21中的步骤S11~S15的动作相同。
在步骤S15中,在切削模式(加工模式)中的多个程序块中校正指令位置中的至少一个是加工机的可动区域外时(换言之,是超调时),工件设置误差校正部13A针对该切削模式设定基于第三方式(选择接近之前解的解、并且在所述2个旋转轴的移动为最小的时刻切换为其他解的方式)的工件设置误差校正(S36)。例如,工件设置误差校正部13A通过针对对应的切削模式(加工模式)Nxx~Nxx设定OT标记[Nxx~Nxx]=1,设定基于第三方式的误差校正。
(例如,图27中的N101~N199、N201~N299)
此外,在步骤S12中,在预读出的指令是定位模式的指令时,工件设置误差校正部13A通过针对对应的定位模式Nxx~Nxx设定OT标记[Nxx~Nxx]=1,设定基于第三方式的误差校正(S36)。
(例如,图27中的N2、N200、N300)
接下来,参照图26,对第二实施方式涉及的数值控制装置10A进行的程序执行时的工件设置误差校正动作进行说明。
在图26中步骤S21和S22的动作与图22中步骤S21和S22的动作相同。
在步骤S21中,在OT标记[Nxx~Nxx]=1时,即设定是基于第三方式的工件设置误差校正时,工件设置误差校正部13A按切削模式或定位模式,进行上述的基于第三方式(选择接近之前解的解、并且在所述2个旋转轴的移动为最小的时刻切换为其他解的方式)的工件设置误差校正(S43)。
根据该第二实施方式的数值控制装置10A,预读指令位置,在加工模式时,预先进行基于第一方式的工件设置误差校正的模拟,只要校正后的指令位置是加工机的可动范围内则设定基于第一方式(选择接近之前解的解的方式)的工件设置误差校正,只有在校正后的指令位置是加工机的可动范围外时(换言之,是超调时),设定基于第三方式(选择接近之前解的解、并且在所述2个旋转轴的移动为最小的时刻切换为其他解的方式)的工件设置误差校正。
由此,可以在基于第三方式的工件设置误差校正中,在从指令始点到指令终点跨越奇异点时,抑制工具方向从工件设置误差校正后的工具方向背离。
因此,可以抑制通过奇异点时工具方向从应有的方向(工件设置误差校正后的工具方向)背离(例如,立起)而对加工造成恶劣影响。
以上,对本发明的实施方式进行了说明,但是本发明并不局限于上述的实施方式,还能够进行各种变更和变形。
Claims (3)
1.一种数值控制装置,其对5轴加工机进行控制,该5轴加工机通过3个直线轴和2个旋转轴来对安装于工作台的工件进行加工,其特征在于,
所述数值控制装置具有:工件设置误差校正部,其对设置了工件时的设置误差进行校正,
所述工件设置误差校正部具有:
工具位置方向计算部,其根据所述3个直线轴和所述2个旋转轴的指令数值来计算工具的指令坐标系上的位置和方向;以及
误差校正部,其通过与设置了工件时的设置误差对应地预先设定的误差量来进行针对所述3个直线轴和所述2个旋转轴的误差校正,以便在具有设置误差的工件上保持由所述工具位置方向计算部计算出的工具的指令坐标系上的位置和方向,当在三角函数的计算中存在多个解时,所述误差校正部通过第一方式、或者通过第二方式和第三方式中的某一个来选择要校正的2个旋转轴的位置,其中,所述第一方式是选择接近之前解的解,所述第二方式是选择所述指令坐标系上的接近所述指令数值的解,所述第三方式是选择接近之前解的解、并且在所述2个旋转轴的移动为最小的时刻切换为其他解,
在根据由所述工件设置误差校正部求出的3个直线轴和2个旋转轴的坐标值来驱动各轴的数值控制装置中,还具有:预读部,其预读程序,
所述工件设置误差校正部通过所述第一方式对预读出的指令数值进行误差校正来求出校正指令数值,
在所述校正指令数值是所述5轴加工机的可动区域内时,所述工件设置误差校正部设定基于所述第一方式的误差校正,在所述校正指令数值是所述5轴加工机的可动区域外时,所述工件设置误差校正部设定基于所述第二方式的误差校正和基于第三方式的误差校正中的某一个。
2.根据权利要求1所述的数值控制装置,其特征在于,
在预读出的指令是加工模式的指令时,
在所述加工模式下的多个程序块中的所述校正指令数值全部是所述5轴加工机的可动区域内时,所述工件设置误差校正部对所述加工模式设定基于所述第一方式的误差校正,
在所述加工模式下的多个程序块中的所述校正指令数值中的至少一个是所述5轴加工机的可动区域外时,所述工件设置误差校正部对所述加工模式设定基于所述第二方式和第三方式中的某一个的误差校正。
3.根据权利要求1或2所述的数值控制装置,其特征在于,
在预读出的指令是定位模式的指令时,所述工件设置误差校正部设定基于所述第二方式和第三方式中的某一个的误差校正。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018-099846 | 2018-05-24 | ||
JP2018099846A JP6703038B2 (ja) | 2018-05-24 | 2018-05-24 | 数値制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110531701A CN110531701A (zh) | 2019-12-03 |
CN110531701B true CN110531701B (zh) | 2020-09-01 |
Family
ID=68499485
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910429123.XA Active CN110531701B (zh) | 2018-05-24 | 2019-05-22 | 数值控制装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11003157B2 (zh) |
JP (1) | JP6703038B2 (zh) |
CN (1) | CN110531701B (zh) |
DE (1) | DE102019003286A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021039401A (ja) * | 2019-08-30 | 2021-03-11 | ファナック株式会社 | 数値制御装置 |
CN113031515B (zh) * | 2019-12-24 | 2022-05-10 | 上海铼钠克数控科技有限公司 | 用于实现五轴rtcp系统的激光测量补偿方法 |
CN111930073B (zh) * | 2020-08-19 | 2024-05-28 | 上海熙锐信息科技有限公司 | 一种五轴激光刀路旋转方法、装置及存储介质 |
CN113219901B (zh) * | 2021-05-06 | 2022-06-24 | 玉林师范学院 | 一种数控机床智能化热误差补偿方法 |
WO2024029007A1 (ja) * | 2022-08-03 | 2024-02-08 | ファナック株式会社 | 制御装置、制御システム及びプログラム |
WO2024047698A1 (ja) * | 2022-08-29 | 2024-03-07 | ファナック株式会社 | 処理装置、プログラム及び処理方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6845295B2 (en) * | 2002-03-07 | 2005-01-18 | Fanuc Robotics America, Inc. | Method of controlling a robot through a singularity |
JP4291386B2 (ja) * | 2007-10-04 | 2009-07-08 | ファナック株式会社 | ワーク設置誤差補正手段を有する数値制御装置 |
CN102608955A (zh) * | 2011-01-20 | 2012-07-25 | 佳能株式会社 | 五轴控制机床的控制装置和控制方法、模具 |
CN103901815A (zh) * | 2012-12-25 | 2014-07-02 | 安川电机(沈阳)有限公司 | 数值控制装置和数值控制方法 |
CN104516311A (zh) * | 2013-09-27 | 2015-04-15 | 发那科株式会社 | 误差校正量生成装置 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4162527A (en) * | 1977-07-29 | 1979-07-24 | Hamill Company, Inc. | Numerically controlled machine tool system with programmable tool offset |
JPS63132307A (ja) * | 1986-11-25 | 1988-06-04 | Hitachi Ltd | ロボツトの制御方法 |
JPS63305407A (ja) * | 1987-06-08 | 1988-12-13 | Fujitsu Ltd | ロボットの軌跡制御方式 |
JPH01228727A (ja) * | 1988-03-03 | 1989-09-12 | Mitsubishi Electric Corp | ワイヤ放電加工方法 |
JPH07299697A (ja) * | 1994-04-28 | 1995-11-14 | Toshiba Mach Co Ltd | 加工物の取付誤差補正方法および取付誤差補正装置 |
JP3643098B2 (ja) | 2001-10-16 | 2005-04-27 | ファナック株式会社 | 数値制御装置 |
JP4494247B2 (ja) * | 2005-02-15 | 2010-06-30 | 三菱電機株式会社 | ロボットの制御装置および制御方法 |
JP4637197B2 (ja) * | 2008-03-24 | 2011-02-23 | 三菱電機株式会社 | 数値制御装置 |
JP5461980B2 (ja) * | 2009-12-22 | 2014-04-02 | ファナック株式会社 | ワーク設置誤差補正手段を有する5軸加工機を制御する数値制御装置 |
JP5192578B2 (ja) * | 2011-06-03 | 2013-05-08 | ファナック株式会社 | 加工プログラムの移動経路を修正する機能を備えた数値制御装置 |
WO2018066048A1 (ja) * | 2016-10-04 | 2018-04-12 | 三菱電機株式会社 | 数値制御装置 |
-
2018
- 2018-05-24 JP JP2018099846A patent/JP6703038B2/ja active Active
-
2019
- 2019-05-03 US US16/402,272 patent/US11003157B2/en active Active
- 2019-05-09 DE DE102019003286.1A patent/DE102019003286A1/de active Pending
- 2019-05-22 CN CN201910429123.XA patent/CN110531701B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6845295B2 (en) * | 2002-03-07 | 2005-01-18 | Fanuc Robotics America, Inc. | Method of controlling a robot through a singularity |
JP4291386B2 (ja) * | 2007-10-04 | 2009-07-08 | ファナック株式会社 | ワーク設置誤差補正手段を有する数値制御装置 |
CN102608955A (zh) * | 2011-01-20 | 2012-07-25 | 佳能株式会社 | 五轴控制机床的控制装置和控制方法、模具 |
CN103901815A (zh) * | 2012-12-25 | 2014-07-02 | 安川电机(沈阳)有限公司 | 数值控制装置和数值控制方法 |
CN104516311A (zh) * | 2013-09-27 | 2015-04-15 | 发那科株式会社 | 误差校正量生成装置 |
Also Published As
Publication number | Publication date |
---|---|
US11003157B2 (en) | 2021-05-11 |
JP2019204354A (ja) | 2019-11-28 |
US20190361420A1 (en) | 2019-11-28 |
CN110531701A (zh) | 2019-12-03 |
JP6703038B2 (ja) | 2020-06-03 |
DE102019003286A1 (de) | 2019-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110531701B (zh) | 数值控制装置 | |
US20130166059A1 (en) | Numerical control device | |
JP4708299B2 (ja) | 数値制御装置 | |
US20120330456A1 (en) | Numerical control device and control method of numerical control device | |
JP5350766B2 (ja) | 5軸加工機用数値制御装置 | |
JP3207409B2 (ja) | ロボットのツール姿勢制御方法 | |
JP4637197B2 (ja) | 数値制御装置 | |
WO2013175573A1 (ja) | 数値制御装置 | |
JPWO2019012692A1 (ja) | 数値制御装置および数値制御方法 | |
JP6242539B1 (ja) | 数値制御装置 | |
JP2005071016A (ja) | 数値制御装置 | |
JP5399881B2 (ja) | 5軸加工機用数値制御装置 | |
CN109514599B (zh) | 机器人系统和工件的制造方法 | |
JP5461980B2 (ja) | ワーク設置誤差補正手段を有する5軸加工機を制御する数値制御装置 | |
EP2644334B1 (en) | Robot control device and control method | |
JP2005352876A (ja) | Ncデータ作成装置、5軸nc工作機械の制御装置及びclデータ作成装置 | |
US10697748B2 (en) | Method for controlling shape measuring apparatus | |
JP6057284B2 (ja) | 多関節ロボット及び半導体ウェハ搬送装置 | |
JP4734440B2 (ja) | 4軸加工機用数値制御装置 | |
JP5875740B1 (ja) | 数値制御装置 | |
JP4734439B2 (ja) | 4軸加工機用数値制御装置 | |
JP2007316862A (ja) | サーボドライバおよび複数軸のサーボシステム | |
JPH01205880A (ja) | ウィービング溶接制御方法 | |
CN109843504B (zh) | 数控装置 | |
JP2020019125A (ja) | ロボット制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |