在数控坐标测量机上产生测量探针路径的方法 【技术领域】
本发明涉及具有数值控制器(NC)等等连同辅助软件的机床的控制,以及更具体地,但不排它地,涉及机床上测量所需的控制。
背景技术
传统的NC机床使得机床运动的控制的编程相对容易。用于如切割的操作的程序用来控制NC机床的操作。最常见的,程序由低级语言的命令构成,即,能通过NC机床的运动控制系统或其他辅助控制系统直接解释为运动控制命令和其他辅助控制命令。已知的低级语言命令集地例子有G代码或ISO代码。辅助软件(例如程序编辑器)可以用来辅助生成这些切割程序。例如,所谓的CAD/CAM软件可用,可基于用软件表示的部件的额定尺寸,生成切割路径。通过以高级语言指令的形式,即不必由NC控制系统直接解释的指令的形式,CAD/CAM或一些其他编辑器软件生成机床操作的序列。这些指令通过进一步(后)处理,转换成NC能理解的G代码。由后处理产生的精确切割程序依赖于所控制的NC机床的类型。其他程序编辑器使得可以直接生成低级语言命令,因此取消后处理。
使用这些低级命令来执行工件的检查是公知的技术。通常,通过命令使机床拾取检查探针而不是刀具,并且,在所述工件的表面上行进并接触所述工件来生成信号。通常,检查命令是单独的NC程序或是从切割程序调用的子程序,或是通过专用低级指令到高级语言指令的输入。
CAD/CAM和类似的编辑器也能基于特征生成切割路径。根据这样的功能,程序员只需要选择几何特征,例如钻孔(bore)或平表面,并且编辑器将基于该特征的已知额定数据和其他可用数据,诸如刀具的尺寸和一次能够切除的材料量,自动地生成切割路径。因此,通过螺旋地向下移动小刀具,可以产生钻孔,以及可通过刀具的来回平直移动,可以产生平表面。程序员不需要指定特定的刀具运动,而只需指定成品特征。
【发明内容】
根据本发明,提供一种用于在机床上产生测量探针路径用来检查工件的方法,该方法包括步骤:
i)运行包含有与工件的几何特征有关的数据的程序;
ii)选择将检查的工件的几何特征;
其特征在于步骤:
iii)基于所选择的几何特征,生成测量探针路径;以及
iv)将所生成的测量探针路径转换成另一程序,该程序与机床的运动控制一起使用以便控制测量探针的路径。
优选地,所述的运行包含有与工件的几何特征有关的数据的程序的步骤包括运行CAM程序,该程序在计算机屏幕上产生几何特征的图形。
优选地,所述的选择要检查的工件的几何特征的步骤包括选择计算机屏幕上的几何特征的图形。
优选地,所述的生成测量探针路径的步骤包括下述至少一个:
生成用于刀具的路径,以便在工件的表面行进;或
生成路径,用于接触工件表面处的所选择的点。
优选地,该方法进一步包括下述的任一步骤:
选择所述测量探针趋向或离开所述工件的路径;
选择测量探针的速度;或
选择将检查的工件的表面上的点数量。
优选地,该方法进一步包括步骤:
生成关于所述工件的所述测量探针的路径的可视化,并在计算机屏幕上显示可视化。
优选地,所述的包含有与工件的几何特征有关的数据的程序是编辑软件程序。
优选地,所选择的几何特征是未完成工件特征,并且相应地生成工件路径。
优选地,生成机床刀具路径的步骤,以及将所生成的机床刀具路径转换成用于与NC机床控制器一起使用的另外的程序的步骤。
根据本发明的另一方面,提供用于与NC机床一起使用的NC机床程序,该程序具有低级语言命令,由NC机床的运动控制来解释,以及该程序包含不由NC机床的运动控制解释的高级语言指令。
由此,本发明的实施例使得在CAD/CAM环境内可根据特征生成检查路径。直到现在,还没有人尝试过这种技术,并且,这种技术能够更快生成检查例程以及生成的加工与检查例程的集成。当执行这些基于特征的检查路径的生成时,要创建属性,所述属性包括必须检查以便定义特征的点的数量、这些点的几何位置和靠近与离开这些点时所行进的路径。在CAD/CAM环境内,编程检查例程能够检查中间特征,即那些只是部分完成的特征,这是很有利的。检查NC机床上的中间特征而不是成品特征,这意味着可以实施后续的刀具路径中的必要校正以及防止废品。
一旦获得检查数据,如何使用检查数据也是需要解决的问题。已经知道,在NC机床上运行检查例程能够改变NC内的变量,例如,跳转到切割程序的不同部分,或通过更新刀具的尺寸或工作坐标系统参数而改变随后的刀具路径。然而,所有这些命令的处理都在NC内发生,因此,对能执行什么有所限制,例如仅能执行有限的数学计算。
本发明进一步提供用于与NC机床一起使用的NC机床程序,该程序具有低级语言命令,由NC机床的运动控制解释,并且该程序包含不由NC机床的运动控制解释的高级语言指令。
本发明还提供用于生成在上述段落中所述类型的NC程序的方法。
优选地,生成NC程序的方法包括步骤:
产生要包含在NC程序中的高级语言指令,例如切割路径和检查例程;以及
仅将这些指令中的一些转换成低级语言。
按照这种方式,后处理程序将处理剩余的未处理的检查。这些未处理指令可以是检查例程,并且,当该程序加载到NC中时,可以由辅助软件读取。当需要时,可以通过辅助软件将指令转换成低级语言命令并由NC使用。
所述辅助软件可以等待机床反馈,例如来自检查探针的反馈,并且可以根据反馈来处理数据和做出决策。另外,当获得反馈时,可以由辅助软件生成低级语言命令。
所述辅助软件可以在与NC分开的处理器内运行。
本发明还提供一种控制NC机床操纵的方法,具有步骤:
提供具有辅助处理器的NC机床;
提供具有一些低级命令和一些高级指令的NC程序;
在所述辅助处理器提供辅助软件;
经由所述辅助处理器,将程序加载到NC,以及
由所述辅助软件解释所述高级指令。
按照这种方式,对于要求在与NC分开的处理器上的处理的程序部分,例如要求复杂处理的基于特征的检查例程,可以在辅助处理器上加载和解释。所述软件可以在NC程序运行时处理指令。
【附图说明】
图1示出了适合于实现本发明的第一NC机床及其控制;
图2示出了适合于实现本发明的第二NC机床及其控制;以及
图3示出了用于实现本发明的计算机。
【具体实施方式】
参考图1,示出了具有传统数值控制器NC 10的NC机床。NC 10运行基于G代码的程序,通过运动控制系统32控制的伺服器36,G代码被转换成机床的运动。在本例中,运动是在x、y和z平面中。除刀具之外,测量探针30也可以安装到机床的主轴32上。通过程序的控制,探针30绕工件34移动,并可以把有关铁针(stylus)38相对于探针30的主体部分偏移的数据16传送到接收机14。该数据能用来确定工件大小、几何和表面加工等等。使用应用程序接口API 18把程序加载到NC 10。从连接到NC机床的辅助处理器20(称为“前端p.c”)中操作的软件系统向API 18馈送程序。系统的操作的详细情况包含在迄今未公开的专利申请PCT/GB02/03312并在此引用以供参考。在本例中,接收机14直接连接到NC 10。
在该实例中,前端p.c.20的软件系统用于控制何种程序要馈送到NC 10。在解释器模块22中做出有关加工过程的决策,并且该决策基于在NC中运行的探测例程所获得的数据。
按照在单独的p.c.40上运行的CAD/CAM软件44的形式,在高级语言编辑器中生成NC程序。还示出了三种其他高级语言编辑器:
i)也在单独的p.c.40上运行驻留的离线编辑器软件42;
ii)驻留在前端p.c.20上的即兴软件22;以及
iii)也驻留在前端p.c.20上的手动数据输入MDI 26。
单独的p.c.40还运行后处理软件,该软件将高级语言转换成适合于NC的低级语言G代码。在操作中,可以例如通过即兴编辑器24或MDI26,在前端p.c.20生成、编写或下载NC程序。可以在单独的p.c.40,例如通过CAD/CAM44或离线编辑器42生成、编写或下载程序。无论程序来自何处,系统可以控制该程序,并有能力根据来自机床的反馈进行决策。反馈经由API18接收,并且该反馈可包括机床位置数据和探针数据。
在该例子中,通过附加的软件采用CAD/CAM14程序,这样,除了生成高级指令在工件34上执行必要的切割操作之外,程序能从有关要生产的工件的数据,产生类似的检查指令。这些检查指令嵌入切割指令中,作为注释字段。整个程序要进行后处理,以便将指令转换成能由NC 10读取的G代码命令。然而,注释字段不这样转换,并依然保持被NC 10忽略的指令形式。
这种复合程序加载到解释器22中,随后经API18进入NC 10。此时驻留在NC 10中的该程序在下文称为主程序。复合程序中注释字段中的指令由解释器来识别,并用来产生能控制主程序的程序(控制程序)。
如我们的在前专利申请PCT/GB02/03312中所述,主程序在暂停之前一直运行。而在控制程序指示主程序继续运行之前,暂停要一直持续。控制程序将处理来自机床的反馈数据并根据该数据进行决策。
在方块部件的加工过程期间所做的这些决策的典型例子是:
1)从前端p.c.加载主程序,从而由主程序的注释字段中的指令,在前端p.c.生成控制程序;
2)运行主程序:将工件装载到机床中;以及
3)从机具传送带加载刀具,并加工方块的两侧;将刀具替换到传送带中以及暂停主程序;加载和运行探测例程(由注释字段中的指令生成)以便从传送带选择探针并检查所述两侧以及替换传送带中的探针;暂停主程序以及等待重启信号;
4)将检查数据发送到前端p.c.以便进行处理(与该实例中与探测例程并行执行),基于结果做出逻辑决策,以及如果需要则更新控制程序;
5)如果有关方块的头两侧的数据良好,则发送重启信号并继续加工;或
6)如果探测数据表示需要更多加工,则下载适当的路径校正,并重新执行主程序以便发送步骤2)的重启信号;或
7)探测数据表示切除了太多的材料,因此出现废品工件,并且重新开始重启周期。
上述实例非常简化。在实际加工中,会要求更多移动和检测步骤。然而,在系统做出决策之前主程序将一直暂停,但主程序在NC 10中运行的同时要进行决策。因此,暂停时间将非常短甚至为零。如果要求重复加工,在NC 10运行其他指令的同时可计算所需的加工路径,因此来节省时间。
可以看出,同只有切割程序(可能跟随检查程序)的传统的程序相比,这种程序将节约加工时间。
如上述复合程序一样,可以产生完全可由NC读取的NC程序,而没有不可读的高级指令。同样,也可以具有部分可由NC读取的NC程序,并且其要求子程序(通常称为宏)并由NC程序来调用。将不可由NC程序读取的注释添加到上述程序中,使得在需要的情况下,将这些程序随后加载回修改的编辑器中。
参考图2,示出了改进的控制系统,尽管与图1所示的系统类似,但在该系统中没有前端p.c.。单独的p.c.40用于程序编辑器42和44,并用于后处理46。在后处理期间,将检查指令转换成G代码。在这种情况下,高级指令不必包含在G代码中。检查所需的所有指令可包括在NC程序中。然而,仍然生成复合程序,并且可以根据特征生成检查例程。
在图1和2所示的控制系统的每一个中,接收机14也可以充当发射机,用于将数据发送到探针,例如,为了改变其操作模式。
实际上,可以使用改进的CAM软件生成上述所有NC程序。图3示出了运行改进的CAM软件的计算机40和屏幕48,利用屏幕48,可选择在屏幕48上所示的工件34的表示的几何特征50。另外,可使用允许选择几何特征的任何编辑软件。
在使用中,操作者能使用屏幕指针操纵——例如使用鼠标49“点击”特征——来选择几何特征,并且这将生成用于探针30的检查路径。另外,操作者能基于几何特征,生成刀具路径。在选择几何特征后执行的后处理阶段,将该路径转换成可使用NC命令和/或高级语言指令的形式。
可以设想除上述外的许多变种。例如,可以改变硬件的配置。可以采用能并行运行软件的单一控制处理器,因此可替换所示的一些或全部的单独设备。更具体地说,所述的NC 10能由任何类型的处理器替代,并且单独p.c.和前端p.c.同样可是任何类型的处理装置。
尽管描述了将前端p.c.应用于检查目的,将该p.c.用于与加工过程(不一定是检查)有关的其他功能也是可以的,例如,复杂数字计算和分析、改进机具路径和定义机具路径的程序、产生错误恢复动作、格式化打印机输出、将结果保存到外部文件或数据库以及驱动诸如操纵设备的辅助装置。