CN103901815A - 数值控制装置和数值控制方法 - Google Patents

数值控制装置和数值控制方法 Download PDF

Info

Publication number
CN103901815A
CN103901815A CN201210569382.0A CN201210569382A CN103901815A CN 103901815 A CN103901815 A CN 103901815A CN 201210569382 A CN201210569382 A CN 201210569382A CN 103901815 A CN103901815 A CN 103901815A
Authority
CN
China
Prior art keywords
line block
interval
control object
advance
value
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.)
Granted
Application number
CN201210569382.0A
Other languages
English (en)
Other versions
CN103901815B (zh
Inventor
花见和之
东贵志雄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Peace River Motor (shenyang) Co Ltd
Original Assignee
Peace River Motor (shenyang) Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Peace River Motor (shenyang) Co Ltd filed Critical Peace River Motor (shenyang) Co Ltd
Priority to CN201210569382.0A priority Critical patent/CN103901815B/zh
Publication of CN103901815A publication Critical patent/CN103901815A/zh
Application granted granted Critical
Publication of CN103901815B publication Critical patent/CN103901815B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Numerical Control (AREA)

Abstract

数值控制装置和数值控制方法。本发明涉及的一种数值控制装置,包括事先读取判别部件、直线块生成部件、曲线块生成部件和运算部件。事先读取判别部件获取表示与移动控制对象的移动路径相近似的连续的多个直线块的信息,并基于该信息,事先读取并判别移动路径中移动控制对象的移动方向的变化量小于规定阈值的区间和该变化量为阈值以上的区间。直线块生成部件生成与由事先读取判别部件判别为小于阈值的区间相近似的一个直线块。曲线块生成部件生成与由事先读取判别部件判别为阈值以上的区间相近似的一个曲线块。运算部件对作为使移动控制对象沿着一个直线块或一个曲线块移动的指令的数值进行计算,并将其输出到使移动控制对象移动的执行部件。

Description

数值控制装置和数值控制方法
技术领域
本发明的实施方式涉及数值控制装置和数值控制方法。
背景技术
目前,存在如下数值控制装置:基于记述有移动控制对象的移动路径的NC(Numerical Control,数控)程序,对使移动控制对象移动的致动器输出作为动作指令的数值。数值控制装置例如在以使得处理对象物成为所期望的形状的方式进行切削的NC工作母机等的动作控制中使用。
该数值控制装置,基于NC程序以直线块为单位获取表示与移动控制对象的移动路径相近似的连续的多个直线块的信息,并基于所获取的信息,按每个直线块依次计算作为指令的数值,将其输出到致动器。
然而,在预先设计的移动控制对象的移动路径中,有半径较小(急转)的区间和半径较大(缓转)的区间混合存在的情况。而且,在半径较大的区间即使置换为使起点与终点之间为最短路径的直线块也可能毫不逊色。
因此,存在如下数值控制装置:当在移动路径中使包含多个直线块的区间的起点和中点间为最短路径的情况下的路径与不使其为最短路径的情况下的路径的公差为规定的最大值以下时,将该区间置换为一个直线块。
根据该数值控制装置,由于能够减少按每个直线块计算的数值的计算次数,所以能够减少数值控制装置的处理负荷。作为上述现有技术的相关文献,例如有日本特开平9-198116号公报。
然而,在上述现有技术中,对于移动路径中的半径较小的区间,由于需要按NC程序中记述的每个直线块计算作为指令的数值,所以难以减少处理负荷。
此外,在该现有技术中,虽然能够通过将上述公差的最大值设定为更大的数值,来减少关于半径较小的区间的处理负荷,但是在将公差的最大值设定为更大的数值的情况下,移动路径的再现性降低。
本发明的目的在于提供一种数值控制装置和数值控制方法,其能够抑制移动路径的再现性降低,并且减少计算作为指令的数值所需的处理负荷。
发明内容
本发明的一实施方式涉及的数值控制装置,包括事先读取判别部件、直线块生成部件、曲线块生成部件和运算部件。事先读取判别部件获取表示与移动控制对象的移动路径相近似的连续的多个直线块的信息,并基于该信息,事先读取并判别所述移动路径中所述移动控制对象的移动方向的变化量小于规定阈值的区间和该变化量为所述阈值以上的区间。直线块生成部件生成与由所述事先读取判别部件判别为小于所述阈值的区间相近似的一个直线块。曲线块生成部件生成与由所述事先读取判别部件判别为所述阈值以上的区间相近似的一个曲线块。运算部件对作为使所述移动控制对象沿着所述一个直线块或所述一个曲线块移动的指令的数值进行计算,并将其输出到使所述移动控制对象移动的执行部件。
根据本发明的一实施方式,能够提供一种数值控制装置和数值控制方法,其能够抑制移动路径的再现性降低,并且减少计算作为指令的数值所需的处理负荷。
附图说明
以下,对照附图阅读下述发明的详细说明,能够容易地对本发明进行更为完整的认识,并理解与其相关的优点。
图1是表示实施方式涉及的数值控制方法的说明图。
图2是表示实施方式涉及的数值控制装置的说明图。
图3是表示实施方式涉及的生成一个直线块的步骤的说明图。
图4是表示实施方式涉及的生成一个直线块的步骤的变形例的说明图。
图5是表示实施方式涉及的生成一个曲线块的步骤的说明图。
图6和图7是表示实施方式涉及的数值控制装置执行的处理的流程图。
图8是表示实施方式涉及的数值控制装置执行的误差修正步骤的变形例的说明图。
具体实施方式
以下,参照附图,对本申请公开的数值控制装置和数值控制方法的实施方式进行详细说明。此外,本发明并非由以下所示的实施方式限定。
本实施方式涉及的数值控制方法为,基于NC(Numerical Control)程序,例如在使NC工作母机等移动控制对象移动的控制中使用的控制方法,该NC工作母机等对处理对象物进行切削使其成为所期望的形状。
此外,利用实施方式涉及的数值控制方法控制的移动控制对象,不限定于NC工作母机,例如也可以是设置于机器人手臂的前端的末端执行器等。也就是说,实施方式涉及的数值控制方法,能够应用于以使得沿着NC程序中记述的所期望的移动路径移动的方式进行控制的任意设备的移动控制中。
在数值控制方法中,首先基于NC程序获取表示移动控制对象的移动路径(以下简称为“移动路径”)的信息。然后,基于所获取的信息计算作为指令的数值,并将其输出到使移动控制对象移动的致动器,由此控制移动控制对象的移动。
在NC程序中包含表示与移动路径相近似的连续的多个直线块的信息。这里的直线块是近似得到的移动路径的各直线部分的线段。此外,表示直线块的信息,包含表示各直线块的起点和终点的位置的信息等。例如在使移动控制对象三维地移动的情况下,在表示直线块的信息中包含由相互正交的X轴、Y轴、Z轴规定的正交坐标(空间坐标)系中的起点和终点的坐标等。
而且,在数值控制方法中,基于表示直线块的信息,对于使移动控制对象向X轴方向、Y轴方向、Z轴方向移动的各致动器,计算并输出作为各轴方向上的移动方向和移动量的指令的数值。
该数值控制方法中,若基于表示直线块的信息计算作为指令的数值的运算处理的处理量增加,则移动控制对象的移动发生延迟,例如在移动控制对象为NC工作母机的情况下,导致NC工作母机的作业效率降低。因此,作为指令的数值进行运算的处理量少则会比较理想。
这里,在NC程序中以折线近似得到的移动路径中,如果将一部分折线区间置换为最短路径的直线区间,能够减少基于表示直线块的信息计算作为指令的数值的处理次数和处理量。但是,在随意地将折线区间置换为最短路径的直线区间的情况下,所期望的移动路径的再现性可能会降低。
因此,在实施方式涉及的数值控制方法中,要抑制移动路径的再现性降低,并且减少计算作为指令的数值所需的处理负荷地进行移动控制对象的移动控制。具体而言,在实施方式涉及的数值控制方法中,首先,获取表示与移动控制对象的移动路径相近似的连续的多个直线块中的各直线块的信息(以下,称为“直线块的信息”)。
然后,基于所获取的多个直线块的信息,事先读取并判别移动路径中移动控制对象的移动方向的变化量小于规定阈值的区间和该变化量为阈值以上的区间。对于进行该判别的步骤的一个示例,参照图3在后文中说明。
接着,生成与被判别为移动路径中移动控制对象的移动方向的变化量小于阈值的区间相近似的一个直线块。即,将使移动方向的变化量小于阈值的区间的起点和终点之间为最短路径的一条直线作为一个直线块生成。此外,对于生成一个直线块的步骤的一个示例,参照图3在后文中说明。
此外,在实施方式涉及的数值控制方法中,生成与被判别为移动路径中移动控制对象的移动方向的变化量为阈值以上的区间相近似的一个曲线块。即,将从移动方向的变化量为阈值以上的区间的起点起、经由区间内的直线块的各交点后到达区间的终点的平滑的一条曲线作为一个曲线块生成。此外,对于生成一个曲线块的步骤的一个示例,参照图5在后文中说明。
然后,在实施方式涉及的数值控制方法中,对作为使移动控制对象沿着所生成的一个直线块或一个曲线块移动的指令的数值进行计算,将其输出到使移动控制对象移动的执行部件。
这里,参照图1,对利用实施方式涉及的数值控制方法生成移动控制对象的移动路径的步骤的一个示例进行简单说明。图1是表示实施方式涉及的数值控制方法的说明图。此外,在图1中,在空间坐标系中以细线表示NC程序中近似得到的移动路径,在空间坐标系中以粗线表示利用实施方式涉及的数值控制方法生成的移动路径。
这里,如图1所示,对在基于NC程序获取的信息中包含构成以点A为起点、点F为终点的移动路径的连续的五个直线块Iab、Ibc、Icd、Ide、Ief的情况进行说明。
在这种情况下,例如在使移动控制对象从作为起点的点A移动到点D的期间,移动控制对象的移动方向的累积变化量小于阈值,然后,当使移动控制对象移动到点E时,移动方向的累积变化量为阈值以上。
于是,在实施方式涉及的数值控制方法中,生成一个直线块Iad,其用一条直线将作为直线块Iab的起点的点A与作为直线块Icd的终点的点D之间连接。然后,将由三个直线块Iab、Ibc、Icd构成的折线状的移动路径置换为一个直线块Iad,生成从点A到点D的移动路径。
由此,如果不将从点A到点D的区间置换为一个直线块Iad,则需要针对三个直线块Iab、Ibc、Icd中的各直线块,进行总共三次的作为指令的数值计算,而现在能够减少为针对一个直线块Iad仅一次的数值计算。
而且,由于从点A到点D的区间,是移动控制对象的移动方向的变化量小于阈值,如图1所示那样移动路径的弯曲原本较缓的区间,所以即使置换为一个直线块Iad,与所期望的移动路径相比也相差不多。
接着,在移动方向从直线块Iad变更为直线块Ide的情况下,移动方向的变化量为阈值以上,而且,在移动方向从直线块Ide变更为直线块Ief的情况下,移动方向的变化量也为阈值以上。
于是,在实施方式涉及的数值控制方法中,生成从点D经由点E后到达点F的平滑的一个曲线块Rdf。然后,将由两个直线块Ide、Ief构成的折线状的移动路径置换为一个曲线块Rdf,生成从点D到点F的移动路径。
由此,如果不将从点D到点F的区间置换为一个曲线块Rdf,则需要针对两个直线块Ide、Ief中的各直线块,进行总共两次的作为指令的数值计算,而现在能够减少为针对一个曲线块Rdf仅一次的数值计算。
而且,由于一个曲线块Rdf是经过置换前的折线状的移动路径中的点D、点E、点F的所有点的平滑的曲线,所以所期望的移动路径的再现性降低能够被抑制。
此外,通过利用上述一个曲线块Rdf置换折线状的移动路径,例如在移动控制对象是对处理对象的物品进行切削来形成自由曲面的NC工作母机的情况下,能够进行更平滑且美观出色的自由曲面加工。
接着,参照图2,对实施方式涉及的数值控制装置1进行说明。图2是表示实施方式涉及的数值控制装置1的说明图。如图2所示,数值控制装置1包括事先读取判别部件2、直线块生成部件3、曲线块生成部件4和运算部件5。
事先读取判别部件2是基于NC程序10获取与移动路径相近似的连续的多个直线块的信息,并基于所获取的直线块的信息,事先读取并判别移动路径中移动控制对象的移动方向的变化量小于规定阈值的区间的处理部件。该事先读取判别部件2将包含在移动控制对象的移动方向(以下,简称为“移动方向”)的变化量小于规定阈值的区间中的直线块的信息输出到直线块生成部件3。
此外,事先读取判别部件2基于所获取的直线块的信息,事先读取并判别移动路径中的移动方向的变化量为规定阈值以上的区间。然后,事先读取判别部件2将包含在移动方向的变化量为规定阈值以上的区间中的直线块的信息输出到曲线块生成部件4。
直线块生成部件3是生成与由事先读取判别部件2判别为移动方向的变化量小于阈值的区间相近似的一个直线块的处理部件。该直线块生成部件3将生成的一个直线块的信息输出到运算部件5。
此外,曲线块生成部件4是生成与由事先读取判别部件2判别为移动方向的变化量为阈值以上的区间相近似的一个曲线块的处理部件。该曲线块生成部件4将生成的一个曲线块的信息输出到运算部件5。
这里,参照图3~图5,对从数值控制装置1基于NC程序10获取多个直线块的信息,到生成一个直线块或一个曲线块为止的步骤的一个具体示例进行说明。
图3是表示实施方式涉及的生成一个直线块的步骤的说明图。图4是表示实施方式涉及的生成一个直线块的步骤的变形例的说明图。图5是表示实施方式涉及的生成一个曲线块的步骤的说明图。此外,在图3~图5中,在空间坐标系中以细线表示NC程序10中近似得到的移动路径,在空间坐标系中以粗线表示由实施方式涉及的数值控制装置1生成的移动路径。
事先读取判别部件2在获取了连续的多个直线块的信息的情况下,基于所获取的直线块的信息,针对从移动路径的起点到各直线块的终点的各区间,依次判别是否是移动方向的变化量小于阈值的区间。
例如如图3所示,事先读取判别部件2在获取了构成以点G为起点、点K为终点的移动路径的四个直线块Igh、Ihi、Iij、Ijk的信息的情况下,首先,对直线块Igh与直线块Ihi形成的夹角的外角θ1进行计算。
然后,事先读取判别部件2对外角θ1是否小于阈值进行判别。这里,假设外角θ1小于阈值。在这种情况下,事先读取判别部件2将从点G经由点H后到达点I的区间判别为小于阈值的区间。
此外,这里的阈值是能够根据数值控制装置1要生成的移动路径所要求的期望的移动路径的再现性任意进行设定变更的数值。对于数值控制装置1,与处理负荷相比越重视所期望的移动路径的再现性,则将该阈值设定为越小的数值,与所期望的移动路径的再现性相比越重视处理负荷,则将该阈值设定为越大的数值。
接着,事先读取判别部件2对直线块Ihi与直线块Iij形成的夹角的外角θ2进行计算,并对计算出的两个外角θ1、θ2的合计角度是否小于上述阈值进行判别。这里,假设外角θ1、θ2的合计角度小于阈值。在这种情况下,事先读取判别部件2将从点G经由两个点H、I后到达点J的区间判别为小于阈值的区间。
然后,事先读取判别部件2同样地对直线块Iij与直线块Ijk形成的夹角的外角θ3进行计算,并对计算出的三个外角θ1、θ2、θ3的合计角度是否小于上述阈值进行判别。这里,假设外角θ1、θ2、θ3的合计角度为阈值以上。
在这种情况下,事先读取判别部件2将从点G经由两个点H、I后到达点J的区间最终判别为小于阈值的区间,将包含在该区间中的三个直线块Igh、Ihi、Iij的信息输出到直线块生成部件3。
直线块生成部件3基于从事先读取判别部件2输入的直线块Igh、Ihi、Iij的信息,生成将点G和点J间连接的一个直线块Igj的信息,并将其输出到运算部件5。此时,直线块生成部件3例如将作为一个直线块Igj的起点的点G在空间坐标系中的坐标和作为一个直线块Igj的终点的点J在空间坐标系中的坐标等输出到运算部件5。
这样,事先读取判别部件2从移动路径的起点起按移动方向的顺序依次将相邻的连续的直线块所形成的夹角的外角相加,并通过将该角度的总和与阈值比较的简单运算,能够对置换为一个直线块的区间进行判别。
此外,事先读取判别部件2在上述外角θ1为阈值以上的情况下,将直线块Igh的信息和直线块Ihi的信息输出到曲线块生成部件4。此外,事先读取判别部件2在外角θ1小于阈值、两个外角θ1、θ2的总和为阈值以上的情况下,将直线块Igh的信息和直线块Ihi的信息输出到直线块生成部件3。
同样,事先读取判别部件2在外角θ2为阈值以上的情况下,将直线块Ihi、Iij的信息输出到曲线块生成部件4。对于外角θ3也同样如此。也就是说,事先读取判别部件2在外角为阈值以上的情况下,将形成该外角的相邻且连续的直线块的信息输出到曲线块生成部件4。
此外,事先读取判别部件2对小于阈值的区间进行判别的步骤,不限定于图3所示的步骤。例如在移动控制对象是NC工作母机且利用NC工作母机进行模具的切削加工的情况下,事先读取判别部件2也可以按照图4所示的步骤对小于阈值的区间进行判别。
一般而言,模具加工的加工形状由自由曲线表示。在利用多个线段对该自由曲线的任意2点间进行近似计算的情况下,近似得到的曲线为中央部分高的拱型。因此,在这种情况下,若将连续的多个直线块中的各直线块的矢量合成而生成合成矢量,则在合成前的各矢量的交点中、距移动路径的起点的距离和从移动路径的起点到合成矢量的中点的距离最接近的交点为距离合成矢量最远的交点。
因此,在这种情况下,事先读取判别部件2将连续的直线块的各矢量按移动方向的顺序合成,形成多个合成矢量。然后,事先读取判别部件2,将在合成前的各矢量的交点中、距移动路径的起点的距离和从移动路径的起点到各合成矢量的中点的距离最接近的交点与合成矢量之间的距离作为移动方向的变化量进行计算,并与阈值进行比较。
例如事先读取判别部件2在获取了构成以点L为起点、经由四个点M、N、O、P后到达作为终点的点Q的移动路径的五个直线块的信息的情况下,生成各直线块的矢量V1m、Vmn、Vno、Vop、Vpq。
接着,事先读取判别部件2在对从点L经由点M、N、O后到达点P的区间中的移动方向的变化量是否小于阈值进行判别的情况下,将四个矢量V1m、Vmn、Vno、Vop合成,生成从点L朝向点P的合成矢量Vlp。
然后,事先读取判别部件2对在四个矢量V1m、Vmn、Vno、Vop的交点中,距作为区间的起点的点L的距离与从点L到合成矢量Vlp的中点R的距离最接近的交点(这里为点N)进行判别。
而且,事先读取判别部件2对从判别出的点N到合成矢量Vlp的公差(距离)W进行计算,并将该公差W与阈值比较。然后,事先读取判别部件2在公差W小于阈值的情况下,将从点L经由点M、N、O后到达点P的区间判别为利用一个直线块进行置换的区间。
此外,由于这里的阈值是与距离相关的阈值,所以当然是与图3的说明中记载的阈值不同的阈值。但是,就这里的阈值而言同样地也是,对于数值控制装置1,与处理负荷相比越重视所期望的移动路径的再现性,则将该阈值设定为越小的数值,与所期望的移动路径的再现性相比越重视处理负荷,则将该阈值设定为越大的数值。
此外,事先读取判别部件2对于图4所示的其他合成矢量V1n、Vlo、Vlq,也同样地计算公差,并将各公差与阈值比较。然后,事先读取判别部件2将公差小于阈值的合成矢量中、连接矢量长度最长的合成矢量的起点和终点的直线块的信息输出到直线块生成部件3。
根据该判别步骤,在移动控制对象是NC工作母机且利用NC工作母机进行模具的切削加工的情况下,能够提高所期望的移动路径的再现性。此外,事先读取判别部件2在判别为是合成矢量的公差为阈值以上的区间的情况下,将包含在该区间中的各直线块的信息,输出到曲线块生成部件4。
然后,曲线块生成部件4基于从事先读取判别部件2输入的直线块的信息,生成与一个或连续的多个直线块的区间相近似的一个曲线块。该曲线块生成部件4,在按图3所示的步骤,将在被判别为是移动方向的变化量为阈值以上的区间的区间中包含的直线块的信息被输入的情况下,根据图5所示的步骤生成一个曲线块。
例如存在曲线块生成部件4被输入如下信息的情况,即:如图5所示,与以点S为起点、以点T为终点的直线块Ist的外角θ4为阈值以上的直线块Itu、与直线块Itu的外角θ5为阈值以上的直线块Iuv的信息。
在这种情况下,如图5中的点划线所示,曲线块生成部件4生成经过作为直线块Itu的起点的点T、作为两个直线块Itu、Iuv的交点的点U、作为直线块Iuv的终点的点V的三个点的圆。然后,在所生成的圆的圆周上,将经过上述三个点T、U、V的圆弧作为一个曲线块Rtv生成,并将一个曲线块Rtv的信息输出到运算部件5。
这样,曲线块生成部件4生成经过作为移动方向的变化量为阈值以上的区间的起点的点T、作为经过点的点U、作为终点的点V的所有点的平滑的一个曲线块Rtv。然后,曲线块生成部件4将一个曲线块Rtv的信息而不是两个直线块Itu、Iuv的信息输出到运算部件5。因此,根据曲线块生成部件4,所期望的移动路径的再现性降低能够被抑制,并且能够减少运算部件5的处理负荷。
此外,这里对将移动方向的变化量为阈值以上的连续的两个直线块Itu、Iuv的信息输入到曲线块生成部件4的情况进行了说明,但是也存在将移动方向的变化量为阈值以上的一个直线块Itu输入的情况。
在这种情况下,曲线块生成部件4基于被输入的直线块Itu的信息,生成经过该直线块Itu的作为起点的点T和作为终点的点U的圆中、与以点T作为终点的直线块Ist形成圆周切线的圆。然后,在所生成的圆的圆周上,将经过两个点T、U的圆弧作为一个曲线块生成。
此外,曲线块生成部件4,按图4所示的步骤在被判别为是移动方向的变化量为阈值以上的区间的区间中包含的直线块的信息被输入的情况下,也按上述图5所示步骤同样的步骤,生成一个曲线块。
返回图2,数值控制装置1的运算部件5包括指令生成部件51和存储部件52。指令生成部件51是对作为使移动控制对象沿着从直线块生成部件3输入的一个直线块或从曲线块生成部件4输入的一个曲线块移动的指令的数值进行计算的处理部件。
该指令生成部件51将所生成的数值输出到X执行部件61、Y执行部件62、Z执行部件63。X执行部件61是使移动控制对象沿空间坐标系中的X轴方向移动的致动器。Y执行部件62是使移动控制对象沿空间坐标系中的Y轴方向移动的致动器。Z执行部件63是使移动控制对象沿空间坐标系中的Z轴方向移动的致动器。
指令生成部件51例如在这些X执行部件61、Y执行部件62、Z执行部件63是旋转式伺服马达的情况下,将各伺服马达的一个旋转分割成8000份,并作为对伺服马达输出的数值,计算出1~8000中任意的整数数值。
此时,在指令生成部件51中,存在计算结果不为整数,而是包含小数的数值的情况。在这种情况下,指令生成部件51将对作为尾数的小数进行舍去或者进位后的数值作为指令输出到伺服马达。在此,舍去或进位的尾数虽然极其微小,但是可能会成为移动控制对象的移动误差现象而出现。
由于上述运算产生的尾数,具有相对于基于一个直线块的信息计算作为指令的数值的情况,在基于一个曲线块计算作为指令的数值的情况下更容易产生的倾向。
因此,指令生成部件51在计算出的数值产生尾数的情况下,将所产生的尾数的累积值作为累积值信息53存储在存储部件52中。然后,指令生成部件51例如在累积值达到作为规定值的正整数或负整数的情况下,进行将达到整数的累积值与计算出的作为指令的数值相加的处理,并输出到伺服马达。
由此,指令生成部件51在如数值控制装置1那样用一个直线块或一个曲线块对多个连续的直线块进行近似计算的情况下,能够抑制因在对作为指令的数值进行计算时产生的尾数而引起的移动控制对象的移动误差。
此外,指令生成部件51也可以采用使尾数累积达到更大的规定数值为止,而不是尾数的累积值达到整数为止,然后,对尾数的累积值进行分割,并将其与作为各指令的数值相加的结构。对于这一点,参照图8在后文中说明。
接着,参照图6和图7,对实施方式涉及的数值控制装置1执行的处理的一个示例进行说明。图6和图7是表示实施方式涉及的数值控制装置1执行的处理的流程图。
如图6所示,在数值控制装置1中,首先,事先读取判别部件2基于NC程序10获取多个直线块的信息(步骤S101)。接着,事先读取判别部件2基于所获取的直线块的信息,针对从移动路径的起点到各直线块的终点的各区间,依次判别是否是移动方向的变化量小于阈值的区间(步骤S102)。
然后,事先读取判别部件2在判别为是移动方向的变化量小于阈值的区间的情况下(步骤S102:“是”),将包含在该区间中的直线块的信息输出到直线块生成部件3,并使处理转移到步骤S103。另一方面,事先读取判别部件2在判别为是移动方向的变化量为阈值以上的区间的情况下(步骤S102:“否”),将包含在该区间中的直线块的信息输出到曲线块生成部件4,并使处理转移到步骤S104。
在步骤S103中,直线块生成部件3基于从事先读取判别部件2输入的直线块的信息,生成一个直线块,并将所生成的一个直线块的信息输出到运算部件5。另一方面,在步骤S104中,曲线块生成部件4基于从事先读取判别部件2输入的直线块的信息,生成一个曲线块,并将所生成的一个曲线块的信息输出到运算部件5。
运算部件5基于从直线块生成部件3输入的一个直线块的信息或从曲线块生成部件4输入的一个曲线块的信息,对作为向X执行部件61、Y执行部件62、Z执行部件63输出的指令的数值进行计算(步骤S105)。
此外,对于在运算部件5计算作为指令的数值时执行的处理,参照图7在后文中说明。最后,运算部件5将计算出的作为指令的数值分别输出到X执行部件61、Y执行部件62、Z执行部件63(步骤S106),并结束处理。
接着,参照图7,对在运算部件5计算作为指令的数值时执行的处理进行说明。运算部件5的指令生成部件51在被输入一个直线块的信息或一个曲线块的信息时,如图7所示,对作为指令的数值进行计算(步骤S201)。这里,指令生成部件51对计算出的数值是否有尾数进行判断(步骤S202)。
然后,指令生成部件51在判断为没有尾数的情况下(步骤S202:“否”),结束处理,使处理转移到图6所示的步骤S106。另一方面,在判断为有尾数的情况下(步骤S202:“是”),指令生成部件51进行使所生成的尾数存储在存储部件52中的误差累积(步骤S203)。
接着,指令生成部件51对作为累积值信息53存储在存储部件52中的尾数的累积值是否达到规定值进行判断(步骤S204)。然后,指令生成部件51在判断为累积值没有达到规定值的情况下(步骤S204:“否”),结束处理,并使处理转移到图6所示的步骤S106。另一方面,在判断为累积值达到规定值的情况下(步骤S204:“是”),进行将累积值与在步骤S201中计算出的数值相加的数值修正(步骤S205),然后结束处理,并使处理转移到图6所示的步骤S106。
如上所述,实施方式涉及的数值控制装置,包括事先读取判别部件、直线块生成部件、曲线块生成部件和运算部件。事先读取判别部件获取表示与移动控制对象的移动路径相近似的连续的多个直线块的信息,并基于上述信息,事先读取并判别移动路径中移动控制对象的移动方向的变化量小于规定阈值的区间和该变化量为阈值以上的区间。
而且,直线块生成部件生成与由事先读取判别部件判别为小于阈值的区间相近似的一个直线块。曲线块生成部件生成与由事先读取判别部件判别为阈值以上的区间相近似的一个曲线块。运算部件对作为使移动控制对象沿着一个直线块或一个曲线块移动的指令的数值进行计算,并将其输出到使移动控制对象移动的执行部件。
因此,根据实施方式的数值控制装置,移动路径的再现性降低能够被抑制,并且能够减少对作为指令的数值进行计算所需的处理负荷。
此外,事先读取判别部件按移动控制对象的移动方向的顺序,将相邻的直线块所形成的夹角的外角依次相加,并将外角的总和作为变化量进行计算。由此,实施方式涉及的事先读取判别部件,通过对相邻的直线块所形成的夹角的外角进行计算并将其相加,并且与阈值进行比较这样的简单运算处理,能够判别由一个直线块或一个曲线块置换的区间。
此外,事先读取判别部件也可以构成为:按移动控制对象的移动方向的顺序将连续的直线块的各矢量合成来依次生成合成矢量,并将在各矢量的交点中、距移动路径的起点的距离和从起点到合成矢量的中点的距离最接近的交点与合成矢量之间的距离作为变化量进行计算。如果采用这种结构,则在移动控制对象是NC工作母机且利用NC工作母机进行模具的切削加工的情况下,能够提高所期望的移动路径的再现性。
此外,运算部件还具备将在对数值进行计算时产生的误差的累积值存储的存储部件,在由存储部件存储的累积值达到规定值的情况下,基于累积值对计算的数值进行修正。由此,运算部件在用一个直线块或一个曲线块对多个连续的直线块进行近似计算的情况下,能够抑制因在对作为指令的数值进行计算时产生的尾数而引起的移动控制对象的移动误差。
此外,上述实施方式只是一个示例,可以进行各种变形。这里,参照图8,对实施方式涉及的数值控制装置1执行的误差修正步骤的变形例进行说明。图8是表示实施方式涉及的数值控制装置1执行的误差修正步骤的变形例的说明图。
指令生成部件51也可以采用使尾数累积达到更大的规定数值为止,而不是对作为指令的数值进行计算时产生的尾数的累积值达到整数为止,然后,对尾数的累积值进行分割,并将其与作为各指令的数值相加的结构。
如图8所示,指令生成部件51例如进行尾数的误差累积(参照图7的步骤S203),直到尾数的累积值54达到作为规定数值的“4”(这里的规定数值可进行任意变更)为止(步骤S301)。此外,在图8中,利用矩形表示达到整数的尾数55。
然后,指令生成部件51在尾数的累积值54达到“4”的情况下,将累积值54分割成“1”作为尾数55(步骤S302)。然后,指令生成部件51将其与计算出的作为指令的数值D1~D6中的任意一个相加进行数值的修正,由此来修正移动控制对象的移动轨迹(步骤S303)。
此时,直线的移动轨迹与曲线的移动轨迹相比,修正的痕迹从视觉上来说容易显眼。因此,指令生成部件51在对数值D1~D6进行计算时,将达到整数的尾数55与指令曲线移动的数值D1、D3、D4、D6相加,而不将尾数55与指令直线移动的数值D2、D5相加。由此,能够抑制因尾数相加的修正带来的移动轨迹的视觉不良感觉,并且能够对因数值计算而产生的误差进行修正。
此外,事先读取判别部件2的判别步骤也不限定于参照图3和图5说明的步骤。例如也存在如下情况:即使是移动方向的变化量为阈值以上的区间,将包含在该区间中的直线块的信息输出到直线块生成部件3,也能够提高移动路径的再现性。
例如在特意想要在移动路径中形成角度的区间中,即使是移动方向的变化量为阈值以上的区间,也将包含在该区间中的直线块的信息输出到直线块生成部件3,由此提高移动路径的再现性。
因此,事先读取判别部件2例如在中间夹着移动方向的变化量为阈值以上的移动方向的变化点的两侧,连续存在有规定个数以上的沿着直线连续的直线块的情况下,将该变化点前后的直线块的信息输出到直线块生成部件3。通过将该判别步骤加入事先读取判别部件2的判别步骤,能够进一步提高特意想要在移动路径中形成角度的区间的再现性。

Claims (5)

1.一种数值控制装置,其特征在于包括:
事先读取判别部件,其获取表示与移动控制对象的移动路径相近似的连续的多个直线块的信息,并基于该信息,事先读取并判别所述移动路径中所述移动控制对象的移动方向的变化量小于规定阈值的区间和所述变化量为所述阈值以上的区间;
直线块生成部件,其生成与由所述事先读取判别部件判别为小于所述阈值的区间相近似的一个直线块;
曲线块生成部件,其生成与由所述事先读取判别部件判别为所述阈值以上的区间相近似的一个曲线块;以及
运算部件,其对作为使所述移动控制对象沿着所述一个直线块或所述一个曲线块移动的指令的数值进行计算,并将其输出到使所述移动控制对象移动的执行部件。
2.根据权利要求1所述的数值控制装置,其特征在于:
所述事先读取判别部件按所述移动控制对象的移动方向的顺序,将相邻的所述直线块所形成的夹角的外角依次相加,并将该外角的总和作为所述变化量进行计算。
3.根据权利要求1所述的数值控制装置,其特征在于:
所述事先读取判别部件按所述移动控制对象的移动方向的顺序,将连续的所述直线块的各矢量合成来依次生成合成矢量,并将在所述各矢量的交点中、距所述移动路径的起点的距离和从所述起点到所述合成矢量的中点的距离最接近的交点与所述合成矢量的距离作为所述变化量进行计算。
4.根据权利要求1~3中任一项所述的数值控制装置,其特征在于:
所述运算部件还具备将在对所述数值进行计算时产生的误差的累积值存储的存储部件,在由所述存储部件存储的所述累积值达到规定值的情况下,基于所述累积值对计算的所述数值进行修正。
5.一种数值控制方法,其特征在于包括:
获取表示与移动控制对象的移动路径相近似的连续的多个直线块的信息;
基于该信息,事先读取并判别所述移动路径中所述移动控制对象的移动方向的变化量小于规定阈值的区间和所述变化量为所述阈值以上的区间;
生成与被判别为小于所述阈值的区间相近似的一个直线块;
生成与被判别为所述阈值以上的区间相近似的一个曲线块;以及
对作为使所述移动控制对象沿着所述一个直线块或所述一个曲线块移动的指令的数值进行计算,并将其输出到使所述移动控制对象移动的执行部件。
CN201210569382.0A 2012-12-25 2012-12-25 数值控制装置和数值控制方法 Active CN103901815B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210569382.0A CN103901815B (zh) 2012-12-25 2012-12-25 数值控制装置和数值控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210569382.0A CN103901815B (zh) 2012-12-25 2012-12-25 数值控制装置和数值控制方法

Publications (2)

Publication Number Publication Date
CN103901815A true CN103901815A (zh) 2014-07-02
CN103901815B CN103901815B (zh) 2017-02-08

Family

ID=50993208

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210569382.0A Active CN103901815B (zh) 2012-12-25 2012-12-25 数值控制装置和数值控制方法

Country Status (1)

Country Link
CN (1) CN103901815B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105373070A (zh) * 2014-08-07 2016-03-02 发那科株式会社 机床
CN108375957A (zh) * 2017-01-31 2018-08-07 兄弟工业株式会社 数值控制装置和控制方法
CN108829031A (zh) * 2018-06-29 2018-11-16 深圳市汇川技术股份有限公司 轨迹间的局部光顺过渡方法、设备及存储介质
CN110531701A (zh) * 2018-05-24 2019-12-03 发那科株式会社 数值控制装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000003212A (ja) * 1998-06-15 2000-01-07 Yaskawa Electric Corp 曲線補間方法
JP2001188605A (ja) * 1999-12-28 2001-07-10 Yaskawa Electric Corp 曲線補間方法
JP2002373010A (ja) * 2001-06-15 2002-12-26 Yaskawa Electric Corp 自動機械における軌道の補間方法および自動機械制御装置
CN101881954A (zh) * 2009-05-06 2010-11-10 陈学恭 一种设定替代曲线的新插补方法
CN101976308A (zh) * 2010-11-08 2011-02-16 四川红光汽车机电有限公司 一种非圆曲线工艺设计及数控加工方法
JP2012198600A (ja) * 2011-03-18 2012-10-18 Denso Wave Inc ロボットの制御装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000003212A (ja) * 1998-06-15 2000-01-07 Yaskawa Electric Corp 曲線補間方法
JP2001188605A (ja) * 1999-12-28 2001-07-10 Yaskawa Electric Corp 曲線補間方法
JP2002373010A (ja) * 2001-06-15 2002-12-26 Yaskawa Electric Corp 自動機械における軌道の補間方法および自動機械制御装置
CN101881954A (zh) * 2009-05-06 2010-11-10 陈学恭 一种设定替代曲线的新插补方法
CN101976308A (zh) * 2010-11-08 2011-02-16 四川红光汽车机电有限公司 一种非圆曲线工艺设计及数控加工方法
JP2012198600A (ja) * 2011-03-18 2012-10-18 Denso Wave Inc ロボットの制御装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105373070A (zh) * 2014-08-07 2016-03-02 发那科株式会社 机床
US9815125B2 (en) 2014-08-07 2017-11-14 Fanuc Corporation Machine tool
CN108375957A (zh) * 2017-01-31 2018-08-07 兄弟工业株式会社 数值控制装置和控制方法
CN110531701A (zh) * 2018-05-24 2019-12-03 发那科株式会社 数值控制装置
CN110531701B (zh) * 2018-05-24 2020-09-01 发那科株式会社 数值控制装置
CN108829031A (zh) * 2018-06-29 2018-11-16 深圳市汇川技术股份有限公司 轨迹间的局部光顺过渡方法、设备及存储介质
CN108829031B (zh) * 2018-06-29 2022-04-29 深圳市汇川技术股份有限公司 轨迹间的局部光顺过渡方法、设备及存储介质

Also Published As

Publication number Publication date
CN103901815B (zh) 2017-02-08

Similar Documents

Publication Publication Date Title
Shi et al. Corner rounding of linear five-axis tool path by dual PH curves blending
CN111061213B (zh) 一种基于Bezier曲线转角平滑过渡算法的加工方法
Yau et al. Fast Bezier interpolator with real-time lookahead function for high-accuracy machining
Zhang et al. Curve fitting and optimal interpolation on CNC machines based on quadratic B-splines
Pateloup et al. Corner optimization for pocket machining
JP5202735B2 (ja) 数値制御装置
Bahr et al. A real-time scheme of cubic parametric curve interpolations for CNC systems
CN103676787B (zh) 一种用于运动控制系统的圆心模式空间圆弧插补方法
JP2010511919A (ja) 許容差ベースの経路設計と制御の方法
CN103064344A (zh) 一种基于nurbs曲线插补的速度平滑控制方法
CN111158318B (zh) 一种非对称性四次曲线柔性加减速规划方法
CN103901815A (zh) 数值控制装置和数值控制方法
CN102063088B (zh) 一种计算机辅助离散运动规划方法
CN113759827B (zh) 一种高速高精的五轴刀具路径拐角平滑方法
CN107450466A (zh) 一种冲压机器人控制器及其高速平稳控制方法
Baek et al. Precision NURBS interpolator based on recursive characteristics of NURBS
CN110488758B (zh) 一种基于PLCopen规范的轨迹过渡方法
JP6242539B1 (ja) 数値制御装置
TW200821784A (en) Processing path method of converting straight line to NURBS curve of computer numerical control
JP5268974B2 (ja) 数値制御装置および生産システム
Wang et al. Speed optimization control method of smooth motion for high-speed CNC machine tools
Wang et al. Universal real-time NURBS interpolator on a PC-based controller
Lang et al. An efficient motion trajectory planning method in CNC system
WO2022138843A9 (ja) 数値制御装置
Beudaert et al. Feedrate optimization in 5-axis machining based on direct trajectory interpolation on the surface using an open CNC

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant