CN114818162A - 自动生成用于表面检查和零件对准的探测路径 - Google Patents
自动生成用于表面检查和零件对准的探测路径 Download PDFInfo
- Publication number
- CN114818162A CN114818162A CN202210104821.4A CN202210104821A CN114818162A CN 114818162 A CN114818162 A CN 114818162A CN 202210104821 A CN202210104821 A CN 202210104821A CN 114818162 A CN114818162 A CN 114818162A
- Authority
- CN
- China
- Prior art keywords
- points
- computer
- alignment
- probe
- manufacturing
- 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
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/4097—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 using design data to control NC machines, e.g. CAD/CAM
- G05B19/4099—Surface or curve machining, making 3D objects, e.g. desktop manufacturing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/23—Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01B—MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
- G01B5/00—Measuring arrangements characterised by the use of mechanical techniques
- G01B5/004—Measuring arrangements characterised by the use of mechanical techniques for measuring coordinates of points
- G01B5/008—Measuring arrangements characterised by the use of mechanical techniques for measuring coordinates of points using coordinate measuring machines
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B29—WORKING OF PLASTICS; WORKING OF SUBSTANCES IN A PLASTIC STATE IN GENERAL
- B29C—SHAPING OR JOINING OF PLASTICS; SHAPING OF MATERIAL IN A PLASTIC STATE, NOT OTHERWISE PROVIDED FOR; AFTER-TREATMENT OF THE SHAPED PRODUCTS, e.g. REPAIRING
- B29C64/00—Additive manufacturing, i.e. manufacturing of three-dimensional [3D] objects by additive deposition, additive agglomeration or additive layering, e.g. by 3D printing, stereolithography or selective laser sintering
- B29C64/30—Auxiliary operations or equipment
- B29C64/386—Data acquisition or data processing for additive manufacturing
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B33—ADDITIVE MANUFACTURING TECHNOLOGY
- B33Y—ADDITIVE MANUFACTURING, i.e. MANUFACTURING OF THREE-DIMENSIONAL [3-D] OBJECTS BY ADDITIVE DEPOSITION, ADDITIVE AGGLOMERATION OR ADDITIVE LAYERING, e.g. BY 3-D PRINTING, STEREOLITHOGRAPHY OR SELECTIVE LASER SINTERING
- B33Y50/00—Data acquisition or data processing for additive manufacturing
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01B—MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
- G01B21/00—Measuring arrangements or details thereof, where the measuring technique is not covered by the other groups of this subclass, unspecified or not relevant
- G01B21/02—Measuring arrangements or details thereof, where the measuring technique is not covered by the other groups of this subclass, unspecified or not relevant for measuring length, width, or thickness
- G01B21/04—Measuring arrangements or details thereof, where the measuring technique is not covered by the other groups of this subclass, unspecified or not relevant for measuring length, width, or thickness by measuring coordinates of points
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01B—MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
- G01B5/00—Measuring arrangements characterised by the use of mechanical techniques
- G01B5/20—Measuring arrangements characterised by the use of mechanical techniques for measuring contours or curvatures
-
- 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/401—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 measuring, e.g. calibration and initialisation, measuring workpiece for machining purposes
-
- 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/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41885—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by modeling, simulation of the manufacturing system
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/17—Mechanical parametric or variational design
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01B—MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
- G01B21/00—Measuring arrangements or details thereof, where the measuring technique is not covered by the other groups of this subclass, unspecified or not relevant
- G01B21/20—Measuring arrangements or details thereof, where the measuring technique is not covered by the other groups of this subclass, unspecified or not relevant for measuring contours or curvatures, e.g. determining profile
-
- 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/37—Measurements
- G05B2219/37223—Identify minimum number of appropriate measuring points
-
- 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/37—Measurements
- G05B2219/37443—Program cmm, coordinate measuring machine, use cad data
-
- 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/49—Nc machine tool, till multiple
- G05B2219/49007—Making, forming 3-D object, model, surface
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Manufacturing & Machinery (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Chemical & Material Sciences (AREA)
- Materials Engineering (AREA)
- Evolutionary Computation (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Mechanical Engineering (AREA)
- Software Systems (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computer Graphics (AREA)
- Optics & Photonics (AREA)
- Length Measuring Devices With Unspecified Measuring Means (AREA)
Abstract
用于自动生成用于表面检查和零件对准的探测路径的方法、系统和设备,包括介质编码的计算机程序产品。使用计算机控制的制造系统获得待制造零件的三维模型的至少一部分的网格模型。从所述网格模型中收集顶点作为所述计算机控制的制造系统的工作坐标系的三维空间中的初始探测点集合,并基于所述三维模型的所述至少一部分的覆盖范围从所述初始探测点集合中过滤出点,以产生最终探测点集合。提供所述最终探测点集合,用于由所述计算机控制的制造系统对所述零件进行对准或表面检查。
Description
背景技术
本说明书涉及使用增材和/或减材制造系统和技术制造物理结构。
已经开发了计算机辅助设计软件和计算机辅助制造软件,并使用它们来生成零件的三维(3D)表示以及例如使用计算机数控(CNC)制造技术来制造这些零件的物理结构。此外,也称为固体自由形式制造或3D打印的增材制造是指由一系列二维层或横截面的原材料(通常是粉末、液体、悬浮液或熔融固体)制成3D零件的任何制造过程。增材制造的一个示例是熔丝制造(FFF)。3D挤压打印机通常使用FFF将从线圈解开的例如塑料细丝或金属线的材料分层放置以生产3D打印零件。
另外,减材制造是指通过切除库存材料的部分而从库存材料(通常是比3D零件大的“坯件”或“工件”)创建3D零件的任何制造过程。此类制造过程通常涉及在从粗加工操作、可选半精加工操作和精加工操作开始的一系列操作中使用多个CNC机器切削工具。在粗加工操作期间,使用CNC加工系统的切削工具快速(相对于半精加工和精加工操作)切掉大部分工件,以接近所制造零件的最终形状。此外,还开发了其中将增材制造和减材制造相结合的混合制造系统,例如将激光金属沉积与高精度5轴自适应铣削相结合的CNC机器。
发明内容
本说明书描述了与确定用于在减材和/或增材制造系统中执行三维(3D)零件的表面检查和/或零件对准的最佳探测点集合相关的技术。可以从为3D零件生成的初始探测点集合中过滤出最佳探测点集合,其中最佳探测点集合可以包括满足零件对准的精度阈值所需的最少数量的点,同时最小化在每一个探测点处执行测量的时间量。
通常,本说明书中描述的主题的一个或多个方面可以体现在一种或多种方法中,所述方法包括:使用计算机控制的制造系统获得待制造零件的三维模型的至少一部分的网格模型。从网格模型中收集顶点作为计算机控制的制造系统的工作坐标系的三维空间中的初始探测点集合,并基于零件的三维模型的至少一部分的覆盖范围从初始探测点集合中过滤出点,以在计算机控制的制造系统的工作坐标系的三维空间中产生最终探测点集合。提供最终探测点集合,用于由计算机控制的制造系统对零件进行对准或表面检查。
前述和其他实现方式可以各自任选地单独或组合地包括本文描述的特征中的一个或多个。具体地,一个实现方式组合地包括所有以下特征。在一些实现方式中,获得网格模型包括使用根据探测工具的大小定义的顶点之间的最小边缘长度将零件的三维模型的至少一部分转换为网格模型,所述探测工具由计算机控制的制造系统用于零件的对准或表面检查。顶点的收集可以包括从初始探测点集合中排除探测工具无法到达的三维空间中的任何点,这是由于探测工具的几何形状以及当固定在计算机控制的制造系统中时,探测工具在零件的工作包络内的一个或多个可用定向而导致。
在一些实现方式中,零件的对准或表面检查包括零件对准,包括:找到初始探测点集合中的每个顶点的向量,顶点的向量在顶点处垂直于零件的表面;以及根据每个顶点的向量与相应制造轴中的每一个之间的对准程度,将顶点分配给计算机控制的制造系统的工作坐标系中可用的相应制造轴。探测点的过滤可以包括确保在相应制造轴中的每一个中有最小数量的点保持在最终探测点集合中,以锁定零件对准的自由度。
在一些实现方式中,分配包括对相应制造轴中的顶点进行分等级,并且过滤包括移除分配给制造轴中的相应制造轴的较低等级的点,同时保持零件的三维模型的至少一部分的覆盖范围。通过不移除任何较高等级的点,可以确保相应制造轴中的每一个中的最小点数量保持不变,从而形成先前识别为锁定自由度所需的最小点集合。
在一些实现方式中,所述方法包括在初始探测点集合上产生体素集合,其中体素集合的分辨率根据点密度的指定水平来确定,并且所述过滤包括移除位于体素集合的体素内的点,直到每个体素包含仅一个点或仅包括在先前识别为锁定自由度所需的最小点集合中的点。
在一些实现方式中,所述方法包括接收指定以下内容的用户输入:(i)指示零件的三维模型的至少一部分的一个或多个表面、实体或两者,(ii)要使用的探测工具,(iii)要约束的自由度,(iv)点密度的指定水平,(v)要执行的对准、表面检查或两者,或(vi)其中两个或多个的组合。
在一些实现方式中,所述方法包括识别锁定自由度所需的最小点集合,包括:基于每个点与至少一个制造轴的向量对准从初始探测点集合中选择点,以确保前三个制造轴中的每一个的良好对准。当所选点不足以锁定自由度时,选择至少第四制造轴,并且可以向初始探测点集合添加探测工具使用至少第四制造轴可到达的附加点。基于每个点与至少一个制造轴的向量对准从附加点中选择点,以确保前三个制造轴中的每一个的良好对准,并完成锁定自由度所需的最小点集合。
在一些实现方式中,提供最终探测点集合包括引导计算机控制的制造系统使用最终探测点集合来执行零件的对准或表面检查。
同样,本说明书中描述的主题的一个或多个方面可以在一个或多个系统中体现,所述系统包括数据处理设备,其包括至少一个硬件处理器;以及非暂时性计算机可读介质,其编码计算机辅助设计或制造程序的指令。
因此,如将理解,非暂时性计算机可读介质可以编码指令,所述指令配置成使得数据处理设备执行如上文和本文详细描述的一种或多种方法。此外,所述系统可以包括计算机控制的制造系统。
可以实现本说明书中描述的主题的特定实施方案以实现以下优点中的一个或多个。探测点的自动或半自动生成可以减少最终用户选择哪些点用于执行零件检查和/或零件对准的负担,这可能导致增加所得测量的准确性。优化的探测点集合可以包括执行零件/表面检查和/或对准所需的最少数量的点,其中优化的探测点集合分布在零件上。使用最少数量的点来执行零件/表面检查和/或对准可以通过省略对无关探测点的不必要采样来减少执行测量的时间。
在一些实现方式中,优化的探测点集合可以包括锁定为执行测量的系统指定的多个自由度的点集合。
附图和下文描述中阐述本说明书中描述的主题的一个或多个实施方案的细节。从具体实施方式、附图和权利要求将明白本发明的其它特征、方面和优点。
附图说明
图1示出可用于设计和制造物理结构的系统的示例。
图2示出生成用于执行表面检查和/或零件对准的探测点的过程的示例。
图3A示出生成用于执行表面检查和/或零件对准的探测点的过程的另一示例。
图3B示出生成用于执行表面检查和/或零件对准的探测点的过程的另一示例。
图4A和图4B示出网格模型和网格模型的探测点的示例示意图。
图5是可用于实施所描述的系统和技术的数据处理系统的示意图。
各个附图中相同的参考数字和符号表示相同的元件。
具体实施方式
在例如减材制造和/或增材制造的制造过程之前、期间和/或之后,可以对例如CNC机器的制造系统内的零件进行零件对准和/或表面检查。选择用于执行零件对准和/或表面检查的检查点集合,其中每个检查点是制造系统将收集探测测量以便收集有关零件的物理信息(例如,位置和/或表面特性)的点。从零件的三维模型生成检查点集合可以包括平衡多个测量标准,包括识别多个检查点,所述检查点允许理解感兴趣零件和/或零件的部分的至少一个精度阈值;减少执行测量的时间量;收集分布在感兴趣零件和/或零件的部分上的点;并在制造系统中锁定零件的一个或多个自由度。
图1示出可用于设计和制造物理结构的系统100的示例。计算机110包括处理器112和存储器114,并且计算机110可以连接至网络140,所述网络可以是私有网络、公共网络、虚拟私有网络等。处理器112可以是一个或多个硬件处理器,每个硬件处理器可以包括多个处理器内核。存储器114可以包括易失性和非易失性存储器两者,例如随机存取存储器(RAM)和闪存RAM。计算机110可以包括各种类型的计算机存储介质和装置,其可包括存储器114,用于存储在处理器112上运行的程序的指令。
此类程序包括一个或多个三维(3D)建模、模拟(有限元分析或其他)和制造控制程序,例如计算机辅助设计(CAD)和/或计算机辅助制造(CAM)程序116,也被称为计算机辅助工程(CAE)程序等。用户190可以与程序116交互以创建和/或加载要使用制造机器170制造的零件的3D模型132,所述制造机器例如是多轴多工具铣床,例如计算机数控(CNC)机器。程序116可以在计算机110上本地运行、在一个或多个远程计算机系统150(例如,计算机110可通过网络140访问的一个或多个第三方提供商的一个或多个服务器系统)的计算机上远程运行、或本地和远程两者。
在一些实现方式中,用户190可以提供用户输入参数127,例如,要探测的零件的所选表面和/或主体、测量的精度阈值和/或用户190是否对零件对准和/或零件177的表面检查感兴趣。探测点优化器125可以利用输入参数127来生成优化的探测点集合,以供制造系统170执行一个或多个操作,例如表面检查和/或零件对准。
CAD/CAM程序116可以是实施用于为要从工件加工的零件和/或要通过增材制造来制造的零件设计3D模型的逻辑的计算机程序。基于此类定义的3D模型,可以定义探测点集合,以针对与机器部件相关的零件或零件的一部分执行表面检查和/或零件对准。可以使用探测点优化器125来确定优化的探测点集合,所述探测点优化器输出优化的探测点集合,以供制造系统170用来执行表面检查和/或零件对准。此种探测点优化可以作为CAD/CAM程序116的一部分来实施,或者作为与CAD/CAM程序116通信耦合的外部部件来实施。
CAD/CAM程序116在计算机110的显示装置120上呈现用户界面(UI)122,所述用户界面可以使用计算机110的一个或多个输入装置118(例如,键盘和鼠标)来操作。应注意,虽然在图1中示为单独的装置,但显示装置120和/或输入装置118还可以彼此集成和/或与计算机110集成,例如在平板计算机或虚拟现实(VR)或增强现实(AR)系统中。例如,输入/输出装置118、120可以包括VR输入手套118a和VR耳机120a。
CAD/CAM程序116可以与通过利用提供给用户190的设计工具165为例如CNC制造机器的制造系统创建3D模型136(例如3D模型132)相关联。这可以使用已知的图形用户界面工具来完成,并且可以使用各种已知的3D建模格式在计算机中定义3D模型136,例如实体模型或表面模型(例如,B-Rep(边界表示(B-Rep))和表面网格)。此外,用户190可以根据需要与程序116交互以修改零件的3D模型132。
在一些实现方式中,例如制造系统170的制造系统可以包括功能强大且高度准确的计算机控制工具,其执行重复且精确的移动以执行减材制造和/或增材制造。例如,制造系统170可以是执行减材制造和增材制造两者的混合CNC机器。制造系统170可以接收计算机生成的代码并且基于在CNC机器处实施的逻辑将所述代码转换为电子信号,从而基于接收到的指令再现一些机器部件的移动。在CNC机器上接收到的关于执行表面检查、零件对准和/或加工零件的指令可以根据定义机床和/或探针运动、工作层(工作台)运动或两者来定义。
制造系统170包括一个或多个探测工具172,其可以用于对零件177执行表面检查、零件对准等。探测工具172可以包括例如机械接触探针、例如激光器的光学测量探针等。一般而言,实施方案可以应用于任何合适形式的NC(数控)坐标测量装置,每个NC坐标测量装置在本文件中被称为探测工具,而不管探测工具是否与零件物理接触。探测工具172可以配置成测量位于零件的相应位置处的探测点,其中探测点可以是例如探测工具172与零件177接触的点(对于机械接触探针)。当执行表面触摸测量和/或边缘触摸测量时,生成测量数据,例如包括与零件进行接触的位置。虽然图1中未描绘,但制造系统170可以另外包括例如用于执行零件177的减材和/或增材制造的一个或多个加工部件。
制造系统170可以具有由程序116存储的相关联的工具参数161的集合,其中工具参数包括与制造系统170的操作相关的信息,特别是与探测工具172的操作相关的信息,例如探针几何形状和探针定向。工具参数161另外可以包括与制造系统170的工作包络相关的信息,其中工作包络定义探测工具172的运动范围和通过运动范围的定向。
制造系统170包括工作层180,其中工作层180配置成将零件177保持在制造系统170内。工作层180可以包括平台和一个或多个固定装置,用于在表面检查和/或零件对准测量期间保持和固定零件177。
例如CNC机器的制造系统170可以通过在测量零件、从工件加工零件和/或通过增材制造3D打印零件时移动所涉及的多个轴来广泛分类。在一些实现方式中,制造系统170是3轴CNC机器。然而应理解,其他CNC机器,或更一般地,其他制造系统170可以包括4轴、5轴等(例如,2轴机器、2.5轴机器等)。制造系统170通常接收用于相对于至少一个机器部件检查和/或对准工件的指令,例如由下文参考图2、图3A和图3B描述的过程生成的指令。
当制造系统170接通时,机器操作员可以启动原始位置的定义,以便制造系统170知道探测部件的位置以及用于移动探测部件的轴的位置,探测部件例如是在工作台/层180处的工作空间(例如,工作包络)中对工件执行表面检查和/或零件对准的探测工具。一旦定义了初始位置,制造系统170就定义了与此初始位置相关的工作坐标系。制造系统170可以是定义三坐标系的3轴机器,其中x轴和y轴被定义为在工作层(或工作台)的层上,且z轴被定义为用于当工具从上方定位在工作层上时工具开始与工件接触并以向上和向下运动的方式朝向工件移动以执行操作(例如表面检查操作)的移动。
在一些实现方式中,工件相对于原始位置定位在制造系统170的工作层180上,以执行用于执行工具测量以检查和/或对准零件的所接收指令。工作包络中的原始位置的定义可以基于相对于制造系统170的一个或多个机器部件(例如,探测工具172)的探测的所提供位置来生成。
在一些实现方式中,工作包络相对于工作层180定义,其中多个线性导轨被定义为引导系统的一部分,以允许定位工件保持器(例如,机器虎钳或其他固定装置)以固定加工零件177的工件位置。
制造系统170可以包括配置成监控制造系统170的过程的监控系统195,例如,所述系统可以存储用于执行系统170的操作的日志数据,其中此类日志数据可以包括关于以下内容的元数据:执行时间、部件的定位、执行的移动、执行加工时机器上的配置,以及其他内容。
在所示的示例中,模型132是特定零件177或零件的一部分的3D模型,所述零件例如用于将制造零件附接至更大系统或机器的连接器。在一些示例中,模型132可以是例如电路板、工具零件、珠宝等其他零件的3D模型。许多不同类型的模型可以与本文描述的系统和技术一起使用。在任何情况下,3D模型132可以用于通过生成供计算机控制的制造系统使用以对零件进行测量的探测点集合来促进执行表面检查和/或零件对准。例如,3D模型132可以用于生成探测点规范文档160,所述文档可被发送至制造系统170并用于控制一个或多个探测工具172的操作。CAD/CAM程序116可以包括指令生成器168,所述指令生成器生成与制造系统170基于探测点集合(例如,探测路径)执行零件的表面检查和/或零件对准有关的指令,例如探测点规范160。
在一些实现方式中,可以基于用户190提供的输入或根据用户对另一动作的请求(例如,发送3D模型132至制造系统170或可以直接连接至计算机110或如图所示经由网络140连接至所述计算机的其他制造机器)来生成用于执行包括探测路径的表面检查和/或零件对准的指令。这可以涉及在本地计算机110或云服务上执行的后处理,以将3D模型132导出到要用于制造的电子文档。注意,电子文档(为简洁起见将简称为文档)可以是文件,但不一定对应于文件。文档可以存储在包含其他文档的文件的一部分中、专用于相关文档的单个文件中或多个协调文件中。文档还可以包括用于加工定位的数据,包括工件的初始位置和加工期间的其他位置,例如,与为加工零件定义的不同设置有关的位置。
在一些实现方式中,当检查零件或零件在系统170内对准时,可以用探测点规范160来定义用于检查和/或对准的不同设置。基于与设置相关联的探测点规范信息,指示探测工具172相对于零件或工件的定位以及制造系统170内的零件或工件位置和定向移动。此外,在一些实现方式中,将计算机110集成到制造系统170中,因此由将使用文档160来检查和/或对准零件177的同一计算机创建文档160。
在210,获得关于将由计算机控制的制造系统从工件加工的零件的几何形状的信息。在一些实现方式中,所述信息可以是待加工零件的接收到的3D模型。基于零件的3D模型,例如,可以基于用于工具路径生成的逻辑,例如在图1的CAD/CAM程序116处实施的逻辑生成用于加工零件的工具路径规范。在一些实现方式中,信息可以是零件几何形状的接收到的探测路径规范,例如,所述探测路径规范由CAD/CAM程序提供,与生成用于探测具有特定几何形状的零件的规范的请求相关。在一些实现方式中,所提供的探测路径规范可以由计算机控制的制造系统用于从工件加工零件的几何形状的至少一部分。
图2、图3A和图3B示出由关于图1描述的系统100实施的探测点生成过程的示例。例如,图2、图3A和图3B的过程可以实施为计算机辅助设计或制造程序116的一部分,所述计算机辅助设计或制造程序与计算机控制的制造系统170相关地运行,用于测量和/或加工来自不同材料和形状的工件的零件。在又一个示例中,图2、图3A和图3B的过程可以在CAD/CAM程序之外在单独的程序处执行,所述程序包括例如由探测点优化器125实施的用于探测点生成的逻辑。可以将过程输出馈送到此CAD/CAM程序116或直接提供到用于测量和/或加工来自工件的零件的计算机控制的制造系统170,例如图1的制造系统170。
在200,系统接收制造系统170的工具参数,包括探针几何形状和探针定向。工具参数161可以包括探测工具172的探针几何形状和探针定向。工具参数161可以部分地取决于所使用的特定探测工具172和要执行的测量,例如,零件对准和/或表面检查。在一些实现方式中,工具参数161可以包括与制造系统的配置相关的信息,例如,可用的自由度、用于零件保持的夹具、系统170的工作包络等。用户190可以指定其他工具参数,例如,指定要执行的测量的类型、要用于测量的探测工具172的类型等。探测点优化器125可以使用工具参数161过滤最终探测点集合,使得所述最终探测点集合中的每个点可通过探测工具和制造系统的当前配置到达。
在202,系统接收要用于测量的零件或零件的一部分的表面集合和/或主体集合。用户可以提供用户输入参数127,包括指定一个或多个表面、一个或多个实体或其组合,以指示用于测量的零件的三维模型的至少一部分。可以通过用户在图形用户界面122中与3D模型132的交互来指示表面集合和/或主体集合。
在204,系统可以接收要约束的多个自由度。在一些实现方式中,用户190可以指定例如在零件对准的情况下要约束的自由度。要约束的自由度的数量可以取决于特定的零件,其中锁定自由度的最小探测点数量将取决于零件的配置。在一些实现方式中,最少需要六个探测点来锁定三维零件的自由度。锁定自由度的目的是为了将零件确定地约束到特定的定向,换句话说,通过锁定自由度,制造系统170将能够确立零件的定向。
可选地,在206,系统可以接收用于测量(例如,用于零件对准测量)的阈值精度。在一些实现方式中,例如,通过指定探测点之间的近似距离、探测点密度和/或测量的总点数,用户190可以提供指定用于测量的阈值精度的用户输入参数127。在另一示例中,用户190可以指定执行测量的总时间。如下所述,指定阈值精度的用户输入参数127可以用于确定网格模型的体素的大小,这可以最终确定为测量生成的最终探测点的分布。例如,精度阈值可以是系统生成以实现给定的测量点密度的最小点数量。
在208,系统生成3D模型的网格模型。生成网格模型包括使用根据探测工具172的大小定义的顶点之间的最小边缘长度将零件177的3D模型132的至少一部分转换成网格模型,所述探测工具将由计算机控制的制造系统170用于零件的零件对准或表面检查。网格模型可以是例如三角形网格模型、多边形网格模型等。在一些实现方式中,如图4A所描绘,系统将3D模型132转换成网格模型400,其中体素的大小可以部分地根据探测工具172的大小来确定。在一些实现方式中,可以向系统提供网格模型,例如,从外部源接收网格模型作为系统100的输入。
返回参考图2,在210,系统根据网格模型生成点集合,其中这些点表示网格模型的顶点。网格模型的顶点在制造系统170的工作坐标系的三维空间中形成初始探测点集合(例如,取决于系统170的自由度)。初始探测点集合可以包括过量的探测点,其中一些探测点通过参考图2、图3A和图3B描述的过程中的后续操作过滤。例如,来自初始探测点集合的探测点可以包括沿着同一表面的多个点,并且多个点中的一个或多个可以被探测点优化器125过滤掉以形成最终探测点集合。
在212,系统基于接收到的工具参数从初始探测点集合中选择点的子集。如上所述,工具参数161可以包括探针几何形状和探针定向,以及与系统170的工作包络相关的信息。位于探测工具172无法到达的三维空间中的探测点被排除在初始探测点集合之外。换句话说,当零件固定在制造系统170中(例如,附连至工作层180)时,初始探测点集合中在探测工具172在零件的工作包络内的一个或多个可用定向中无法访问的任何探针点被排除。
现在参考图3A,在300,系统确定如何锁定自由度,例如,以执行零件对准测量。用户190可以提供指令,例如用户输入参数127,指示使用生成的探测点集合来执行零件对准测量的意图。在一些实现方式中,为了执行零件对准,可以锁定零件相对于制造系统170的自由度,以确保准确理解工作包络内的零件位置和定向。例如,锁定3轴系统的自由度可能需要最少六个探测点来锁定所有三个维度。在一些实现方式中,系统不需要锁定自由度,例如对于如下文参考下面的操作312所描述的表面检查测量。
在一些实现方式中,系统识别锁定自由度所需的最小点集合。系统可以基于每个探测点与制造系统170的工作坐标系的至少一个轴的向量对准从初始探测点集合中选择探测点,以确保前三个制造轴中的每一个的良好对准。现在参考图4A,垂直于网格模型400的相应顶点的向量402和404可以不同程度地与制造系统170的工作坐标系401对准。在图4A所示的示例中,向量402与工作坐标系401的x轴对准,且向量404沿着工作坐标系401的x-z平面定向。
在302,系统使用来自操作212的点集合的子集中的每一个的相应表面法线来生成法线向量集合。与探测点子集中的探测点相对应的每个法线向量垂直于零件的3D模型的表面并且位于网格模型的顶点处。根据每个顶点的向量与相应制造轴中的每一个之间的对准程度,将对应于顶点的相应探测点的每个法线向量分配给计算机控制的制造系统的工作坐标系中可用的相应制造轴。例如,如图4A所描绘,向量402与工作坐标系401的x轴对准。向量404与工作坐标系401的x轴对准到第一度且与z轴对准到第二度。尽管本文参考3轴系统进行了描述,但是可以针对3+轴系统(例如,4轴系统、5轴系统)以及2和2.5轴系统执行本文描述的过程。包括3+轴的系统,例如5轴或3+1轴系统可以实现对3轴系统上可能无法访问的零件特征的附加访问。3+轴系统上的测量可以通过包括探测工具的探头的一个或多个旋转轴来促进,所述旋转轴可以改变探测工具轴角度,使得探测工具轴指向与垂直于x-y平面的方向不同的方向。在一些实现方式中,本文描述的过程可以由工业机器人(例如,6轴机器人)执行。
返回参考图3A,在操作304,系统执行检查以确定是否满足自由度约束。系统可以确定具有在相应制造轴中的每一个上对准的对应法线向量的最小数量的探测点保留在探测点的子集中以锁定零件对准的自由度。在一个示例中,为了锁定所有六个自由度,需要各自大致沿着第一主方向(例如,沿着z轴)定向的三个点、各自大致沿着第二主方向(例如,沿着y轴)定向的两个点以及大致沿着第三主方向(例如,沿着x轴)定向的一个点,总共六个点。
在一些实现方式中,与主方向(例如,系统的工作坐标)的偏差会影响锁定零件自由度所需的最小点数量。例如,对应于相应探测点的法线向量与系统的工作坐标(例如,x、y、z轴)的较大偏差会导致需要更多的探测点来实现良好的对准和/或锁定自由度。
在306,系统确定点的子集中是否包括具有与工作坐标系对准的法向定向并且充分地分布在网格模型上的足够数量的点。在一些实现方式中,基于零件的3D模型的部分的覆盖范围,从初始探测点集合中过滤出探测点,以在系统的工作坐标系的3D空间中生成最终探测点集合。换句话说,所选择的点子集包括来自探测探针的初始集合的探测点,所述探测点分布在三维零件的网格模型的表面上。
在一些实现方式中,基于探测点在零件的3D模型表面上的分布,从初始探测点集合中过滤出探测点,例如,以确保在零件的3D模型表面上均匀地分布探测点。所选探测点的分布可以由体素网格控制,使得每个体素中至少有一个有效点。体素的大小以及因此点的密度可以由精度阈值,例如由用户190作为用户输入参数127提供的精度阈值控制。例如,网格模型的较小体素产生的探测点数量增加,这会导致测量精度更高以及收集测量值的时间量增加,而较大体素(对于相同的网格模型)产生的探测点数量减少,这会导致测量精度更低以及收集测量值的时间量减少。
在一些实现方式中,系统确定系统的运动主轴(例如,三个运动主轴)不足以锁定零件的自由度。系统可以可选地包括例如通过重新定向探测工具、零件或其组合提供的附加运动轴。对于包括一个或多个附加运动轴的系统,可以选择附加制造轴,例如,当所选点不足以锁定自由度时,可以选择制造系统170的至少第四制造轴。系统可以向初始探测点集合添加探测工具使用至少第四制造轴可到达的附加点。为了将附加探测点添加到初始探测点集合中,系统可以基于每个探测点与至少一个制造轴的向量对准从附加点中选择探测点,以确保前三个制造轴中的每一个的良好对准,并完成锁定自由度所需的最小点集合。
在308,当系统确定包括在点的子集中的具有沿着系统工作坐标方向中的一个大致对准(例如,与x、y或z轴对准)的法向定向的点的数量不足时,系统可以生成报告并将报告提供给用户190。报告可以包括建议的补救步骤,例如,选择附加表面、调整一个或多个用户输入参数127。提供给用户的补救步骤可以包括更改系统配置的请求,例如,切换到不同的探测工具、启用系统的附加自由度、重新定向零件以允许访问不同集合和/或附加表面等。
在310,当系统确定包括在点的子集中的具有沿着系统工作坐标方向中的一个大致对准(例如,与x、y或z轴对准)的定向的点的数量充足时,系统从最终点定义点的锁定子集,其中点的锁定子集包括可能产生完全约束的对准的最小点数量。
在一些实现方式中,如在312所描绘,例如出于表面检查的目的,系统确定不锁定3D网格模型的自由度。当系统确定不锁定自由度时,选择未锁定的探测点子集,例如,可以使用从操作212产生的点子集执行表面检查测量。表面检查可能不需要锁定自由度,其中使用表面检查确认零件的质量。出于表面检查的目的,可以为零件测量生成探测点,其中使用测量的探测点与CAD模型上的标称零件的计算偏差来确定零件的精度。对于表面检查,需要零件上的点的分布,并确保探测工具可以访问探测点集合中的每一个,例如,不会由于零件在工作包络中的固定或位置而限制访问。
在一些实现方式中,用户可以提供用户输入参数127,包括用于测量的点的数量和/或执行测量的时间,系统使用所述用户输入参数来推断其有时间收集测量(例如,表面检查或零件对准)的点的数量。
在314,根据点的锁定子集或未锁定子集,系统生成包括多个体素的3D体素网格。3D体素网格的体素集合的分辨率可以根据指定的点密度水平来确定。
在316,系统过滤3D体素网格,使得每个体素包括至多一个点或仅包括来自锁定子集的锁定点。过滤可以包括移除位于体素集合的体素内的探测点,直到每个体素包含仅一个点或仅包括在先前识别为锁定自由度所需的最小点集合中的点。例如,如图4B所描绘,探测点406、408、410、412、414和416表示可以用于最终探测点集合的过滤的探测点集合。探测点406到416中的每一个可以代表锁定子集的锁定点和/或使得每个体素至多包括一个点。此外,如图4B所描绘的探测点集合分布在零件401上以确保零件401上的测量。
在一些实现方式中,可以使用二叉树来执行从初始探测点集合中过滤探测点。例如,一旦已知初始探测点集合通过锁定的探测点集合来锁定自由度,就可以利用二叉树从网格模型的体素中识别探测点。换句话说,一旦确定锁定的探测点,就可以添加附加的点以达到获得所需精度阈值的点密度。探测点优化器125可以基于测量精度与测量速度之间的相互影响来优化多个最终探测点。下文参考图3B可见关于过滤探测点的锁定子集以优化和/或最小化包括在最终探测点集合中的锁定探测点的进一步讨论。
在318,系统向例如CNC机器的制造系统提供使用最终探测点集合来执行零件的对准和/或表面检查的指示。提供指示可以包括根据最终探测点集合生成用于由计算机控制的制造系统执行表面检查和/或零件对准的指示,例如用于操作CNC机器的代码。
在一些实现方式中,制造系统170接收用于执行表面检查和/或零件对准的指示并执行所述指示以执行表面检查和/或零件对准,包括在最终探测点集合处执行测量。对于制造系统170执行的每个测量,制造系统170可以将测量结果存储在探测测量数据197中。系统(例如,程序116)可以利用探测测量数据197来计算零件对准和/或表面检查。
在一些实现方式中,程序116可以执行参考3D模型的探测点位置与零件上的探测点的测量位置之间的比较以确定对准或表面检查信息。在一些实现方式中,将探测测量数据197与用于生成最终探测点集合的3D模型提供给程序116,例如,其中探测测量数据197连同用于生成探测点的零件的原始CAD模型一起被导入程序116。
在一些实现方式中,探测测量数据197由系统在后续过程(例如,在CNC机器上执行的代码)中使用以执行减材制造和/或增材制造。探测测量数据197可以用于例如通过加工工具调整制造系统移动的坐标,和/或可以用于调整制造系统的工作坐标。
在320,系统向用户提供报告,所述报告包括来自3D体素网格的最终探测点集合的位置。系统可以提供结果,包括例如最终探测点集合的位置、对应于最终探测点集合的探测测量数据197等。报告可以包括关于对准错误和/或表面检查信息的详细信息。
在一些实现方式中,过滤锁定探测点(例如操作316)包括选择锁定自由度的最优探测点集合。选择锁定探测点可以包括基于对应于每个探测点的法线向量的定向对探测点进行分等级。图3B是用于过滤点的锁定子集的示例过程的流程图。
在322,探测点子集中的每个探测点,例如操作312的探测点的锁定集合可以基于探测点沿着机器系统的轴(例如,相应制造轴)定向的程度被分配等级或权重。在一些实现方式中,探测点的分等级可以包括根据探测点的相应向量为每个探测点分配相应的权重。权重可以对应于以下中的一个或多个:向量与制造轴对准的程度、探测点相对于每个其他探测点的位置、与零件的3D模型的感兴趣特征的接近度、零件形状等。例如,与包括高密度探测点的3D模型的部分中的探测点相比,包括低密度探测点的3D模型的部分中的探测点可以被分配更高的权重。在另一示例中,与沿着3D模型的平坦表面定位的探测点相比,位于接近零件的感兴趣特征(例如,沉头孔、刻字等)或在零件的感兴趣特征上的阈值内的探测点可以被分配更高的权重。在又一个示例中,与沿着3D模型的平坦表面定位的探测点相比,沿着零件的曲率定位的探测点可以被分配更高的权重。
在324,移除较低等级的探测点,例如,最低等级的探测点、沿着不是z轴的轴对准的较低等级的探测点等。在一些实现方式中,在迭代过程中从探测点子集移除一个探测点,其中系统移除探测点(例如,较低等级的探测点),然后验证自由度是否保持锁定。替代地,可以一次从探测点子集中移除两个或更多个探测点。系统移除探测点集合中的特定探测点的决定可以部分地取决于分配的权重或等级,例如移除最低等级的探测点。
在326,系统确定在移除一个或多个较低等级的探测点之后,剩余的探测点集合是否保持零件的三维模型的至少一部分的覆盖范围(例如,锁定自由度)。换句话说,通过不移除任何较高等级的点,相应制造轴中的每一个中的最小点数量保持不变,以形成先前识别为锁定自由度所需的最小点集合。
在328,系统确定没有保持覆盖范围,例如剩余的探测点集合不足以锁定自由度。在一些实现方式中,系统将确定重新添加移除的探测点。包括先前移除的所添加探测点的剩余探测点集合被选为最终探测点集合,例如,如操作316所述。
在330,系统确定保持覆盖范围,例如剩余的探测点集合足以锁定自由度。系统可以在操作326和328中描述的迭代过程中继续移除较低等级的点。
图5是包括数据处理设备500的数据处理系统的示意图,所述数据处理设备可以被编程为客户端或服务器。数据处理设备500通过网络580与一个或多个计算机590连接。虽然图5中只示出一个计算机作为数据处理设备500,但是可以使用多个计算机。数据处理设备500包括各种软件模块,其可以分布在应用层与操作系统之间。这些可以包括可执行和/或可解译的软件程序或库,包括实施上文描述的系统和技术的3D建模/模拟和制造控制程序504的工具和服务。所使用的软件模块的数量可以因实现方式而异。此外,软件模块可以分布在由一个或多个计算机网络或其他合适的通信网络连接的一个或多个数据处理设备上。
数据处理设备500还包括硬件或固件装置,包括一个或多个处理器512、一个或多个附加装置514、计算机可读介质516、通信接口518和一个或多个用户接口装置520。每个处理器512能够处理用于在数据处理设备500内执行的指令。在一些实现方式中,处理器512是单线程或多线程处理器。每个处理器512能够处理存储在计算机可读介质516或例如附加装置514之一的存储装置上的指令。数据处理设备500使用通信接口518例如通过网络580与一个或多个计算机590通信。用户接口装置520的示例包括显示器;相机;扬声器;麦克风;触觉反馈装置;键盘;鼠标和VR和/或AR装备。数据处理设备500可以将实施与上文描述的程序相关联的操作的指令存储在例如计算机可读介质516或一个或多个附加装置514上,所述附加装置例如硬盘装置、光盘装置、磁带装置和固态存储器装置中的一个或多个。
本说明书中描述的主题的实施方案和功能操作可实现在数字电子电路中,或实现在计算机软件、固件或硬件中(包括本说明书中公开的结构及其等效结构)或它们中的一项或多项的组合中。本说明书中描述的主题的实施方案可使用一个或多个计算机程序指令模块实现,所述计算机程序指令编码在非暂时性计算机可读介质上,用于由数据处理设备执行或控制数据处理设备的操作。计算机可读介质可以是制成品,例如计算机系统中的硬盘驱动器或通过零售渠道销售的光盘,或者嵌入式系统。可以单独获取计算机可读介质,并且随后用一个或多个计算机程序指令模块编码,例如,通过经由有线或无线网络传送一个或多个计算机程序指令模块。计算机可读介质可以是机器可读存储装置、机器可读存储基板、存储器装置或它们中的一项或多项的组合。
术语“数据处理设备”涵盖用于处理数据的所有设备、装置和机器,例如包括可编程处理器、计算机或多个处理器或计算机。除了硬件之外,设备还可以包括为所讨论计算机程序产生执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统、运行时环境或它们中的一项或多项的组合的代码。此外,设备可以采用各种不同的计算模型基础设施,例如网络服务、分布式计算和网格计算基础设施。
计算机程序(还称为程序、软件、软件应用、脚本或代码)可以任何合适的编程语言形式(包括编译或解译的语言、声明性或过程化语言)编写,且其可以任何合适的形式部署,包括作为独立程序或作为模块、部件、子例程、或适用于计算环境的其它单元。计算机程序不一定对应于文件系统中的文件。程序可存储在保存其它程序或数据的文件的一部分(例如,存储在标记语言文档中的一个或多个脚本)中、在专用于所讨论程序的单一文件中或在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。计算机程序可被部署以在一个计算机上或在多个计算机(其位于一个地点或分布在多个地点且通过通信网络互连)上执行。
本说明书中描述的过程和逻辑流程可以由一个或多个可编程处理器执行,所述处理器执行一个或多个计算机程序以通过对输入数据进行操作并生成输出来执行功能。处理和逻辑流程也可以由专用逻辑电路执行,并且设备也可以实现为专用逻辑电路,例如现场可编程门阵列(FPGA)或专用集成电路(ASIC)。
适合于执行计算机程序的处理器包括例如通用和专用微处理器,以及任何类型的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本要素是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器装置。通常,计算机还将包括用于存储数据的一个或多个大容量存储装置(例如,磁盘、磁光盘或光盘),或可操作地耦合以从所述大容量存储装置接收数据或将数据传输到所述大容量存储装置中,或两者。然而,计算机不需要有这样的装置。此外,计算机可以嵌入到另一个装置中,例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器或便携式存储装置(例如,通用串行总线(USB)闪存驱动器),仅举几例。适用于存储计算机程序指令和数据的装置包括所有形式的非易失性存储器、介质和存储器装置,包括半导体存储器装置(例如,可擦除可编程只读存储器(EPROM)和电可擦除可编程只读存储器(EEPROM);闪存装置;磁盘(例如,内置硬盘或可移动磁盘);磁光盘;以及CD-ROM和DVD-ROM磁盘。处理器和存储器可由专用逻辑电路补充或合并到专用逻辑电路中。
为了提供与用户的互动,本说明书中描述的主题的实施方案可以在具有用于向用户显示信息的显示装置(例如,液晶显示器(LCD)、有机发光二极管(OLED)或另一监视器)以及用户可通过其向计算机提供输入的键盘和指向装置(例如,鼠标或轨迹球)的计算机上实现。其它类型的装置也可用来提供与用户的互动;例如,提供给用户的反馈可以是任何合适形式的感官反馈,例如视觉反馈、听觉反馈或触觉反馈;且来自用户的输入可以任何合适形式被接收,包括声学、语音或触觉输入。
计算系统可包括客户端和服务器。客户端和服务器一般彼此远离且通常通过通信网络进行交互。客户端和服务器的关系由于在各自的计算机上运行并且彼此之间具有客户端-服务器关系的计算机程序而产生。本说明书中描述的主题的实施方案可以在包括后端部件(例如,数据服务器)或包括中间部件(例如,应用程序服务器)或包括前端部件(例如,具有图形用户界面或网络浏览器的客户端计算机,用户可以通过所述网络浏览器与本说明书描述的主题的实现方式进行交互)或一个或多个这样的后端部件、中间部件或前端部件的任何组合的计算系统中实现。系统的部件可通过任何合适形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(LAN)和广域网(WAN)、互联网络(例如,互联网)和对等网络(例如,专用对等网络)。
虽然本说明书包含许多实现细节,但这些不应被解释为对正在或可能要求保护的范围的限制,而是对所公开主题的特定实施方案特有的特征的描述。本说明书中以单独实施方案为背景描述的某些特征还可以组合方式在单一实施方案中实现。相反地,在单一实施方案的背景下描述的各个特征还可单独或以任何合适子组合的方式在多个实施方案中实现。此外,虽然上文将特征描述成以某些组合作用且甚至最初这样要求,但来自所要求的组合的一个或多个特征可在一些情况中脱离所述组合,且要求的组合可针对子组合或子组合的变更。
类似地,虽然附图中以特定次序描绘了操作,但这不应该理解为需要以所示的特定次序或按顺序次序执行此类操作,或执行全部图示操作来达到期望结果。在某些情况中,多任务和并行处理可能是有利的。此外,上文描述的实施方案中的各个系统部件的分离不应理解为在全部实施方案中需要这种分离,且应理解为描述的程序部件和系统一般可一起整合在单一软件产品中或封装在多个软件产品中。
因此,已经描述了本发明的特定实施方案。其它实施方案在所附权利要求的范围内。
Claims (20)
1.一种计算机实现的方法,其包括:
使用计算机控制的制造系统获得待制造零件的三维模型的至少一部分的网格模型;
从所述网格模型中收集顶点作为所述计算机控制的制造系统的工作坐标系的三维空间中的初始探测点集合;
基于所述零件的所述三维模型的所述至少一部分的覆盖范围从所述初始探测点集合中过滤出点,以在所述计算机控制的制造系统的所述工作坐标系的所述三维空间中产生最终探测点集合;以及
提供所述最终探测点集合,用于由所述计算机控制的制造系统对所述零件进行对准或表面检查。
2.如权利要求1所述的计算机实现的方法,其中所述获得包括使用根据探测工具的大小定义的所述顶点之间的最小边缘长度将所述零件的所述三维模型的所述至少一部分转换为所述网格模型,所述探测工具由所述计算机控制的制造系统用于所述零件的所述对准或表面检查,并且所述收集包括从所述初始探测点集合中排除所述三维空间中所述探测工具无法到达的任何点,这是由于所述探测工具的几何形状以及当固定在所述计算机控制的制造系统中时,所述探测工具在所述零件的工作包络内的一个或多个可用定向而导致。
3.如权利要求2所述的计算机实现的方法,其中所述零件的所述对准或表面检查包括零件对准,并且所述方法包括:
找到所述初始探测点集合中的每个顶点的向量,所述顶点的所述向量在所述顶点处垂直于所述零件的表面;以及
根据每个顶点的所述向量与相应制造轴中的每一个之间的对准程度,将所述顶点分配给所述计算机控制的制造系统的所述工作坐标系中可用的所述相应制造轴;
其中所述过滤包括确保在所述相应制造轴中的每一个中有最小数量的点保持在所述最终探测点集合中,以锁定所述零件对准的自由度。
4.如权利要求3所述的计算机实现的方法,其中所述分配包括对所述相应制造轴中的所述顶点进行分等级,并且所述过滤包括:
移除分配给所述制造轴中的相应制造轴的较低等级的点,同时保持所述零件的所述三维模型的所述至少一部分的覆盖范围;以及
通过不移除任何较高等级的点来确保所述相应制造轴中的每一个中的所述最小点数量保持不变,从而形成先前识别为锁定所述自由度所需的最小点集合。
5.如权利要求4所述的计算机实现的方法,其包括在所述初始探测点集合上产生体素集合,其中所述体素集合的分辨率根据点密度的指定水平来确定,并且所述过滤包括移除位于所述体素集合中的所述体素内的点,直到每个体素包含仅一个点或仅包括在先前识别为锁定所述自由度所需的所述最小点集合中的点。
6.如权利要求5所述的计算机实现的方法,其包括接收指定以下内容的用户输入:(i)指示所述零件的所述三维模型的所述至少一部分的一个或多个表面、实体或两者,(ii)要使用的所述探测工具,(iii)要约束的所述自由度,(iv)点密度的所述指定水平,(v)要执行的对准、表面检查或两者,或(vi)其中两个或多个的组合。
7.如权利要求4所述的计算机实现的方法,其包括识别锁定所述自由度所需的所述最小点集合,所述识别包括:
基于每个点与至少一个制造轴的向量对准从所述初始探测点集合中选择点,以确保前三个所述制造轴中的每一个的良好对准;
当所选点不足以锁定所述自由度时,选择至少第四制造轴;
向所述初始探测点集合添加所述探测工具使用所述至少第四制造轴可到达的附加点;以及
基于每个点与至少一个制造轴的向量对准从所述附加点中选择点,以确保所述前三个所述制造轴中的每一个的良好对准,并完成锁定所述自由度所需的所述最小点集合。
8.如权利要求1所述的计算机实现的方法,其中所述提供包括引导所述计算机控制的制造系统使用所述最终探测点集合来执行所述零件的所述对准或表面检查。
9.一种系统,其包括:
数据处理设备,其包括至少一个硬件处理器;以及
非暂时性计算机可读介质,其编码计算机辅助设计程序的指令,所述指令配置成使得所述数据处理设备执行以下操作:
使用计算机控制的制造系统获得待制造零件的三维模型的至少一部分的网格模型;
从所述网格模型中收集顶点作为所述计算机控制的制造系统的工作坐标系的三维空间中的初始探测点集合;
基于所述零件的所述三维模型的所述至少一部分的覆盖范围从所述初始探测点集合中过滤出点,以在所述计算机控制的制造系统的所述工作坐标系的所述三维空间中产生最终探测点集合;以及
提供所述最终探测点集合,用于由所述计算机控制的制造系统对所述零件进行对准或表面检查。
10.如权利要求9所述的系统,其中所述获得包括使用根据探测工具的大小定义的所述顶点之间的最小边缘长度将所述零件的所述三维模型的所述至少一部分转换为所述网格模型,所述探测工具由所述计算机控制的制造系统用于所述零件的所述对准或表面检查,并且所述收集包括从所述初始探测点集合中排除所述三维空间中所述探测工具无法到达的任何点,这是由于所述探测工具的几何形状以及当固定在所述计算机控制的制造系统中时,所述探测工具在所述零件的工作包络内的一个或多个可用定向而导致。
11.如权利要求10所述的系统,其中所述零件的所述对准或表面检查包括零件对准,并且所述方法包括:
找到所述初始探测点集合中的每个顶点的向量,所述顶点的所述向量在所述顶点处垂直于所述零件的表面;以及
根据每个顶点的所述向量与相应制造轴中的每一个之间的对准程度,将所述顶点分配给所述计算机控制的制造系统的所述工作坐标系中可用的所述相应制造轴;
其中所述过滤包括确保在所述相应制造轴中的每一个中有最小数量的点保持在所述最终探测点集合中,以锁定所述零件对准的自由度。
12.如权利要求11所述的系统,其中所述分配包括对所述相应制造轴中的所述顶点进行分等级,并且所述过滤包括:
移除分配给所述制造轴中的相应制造轴的较低等级的点,同时保持所述零件的所述三维模型的所述至少一部分的覆盖范围;以及
通过不移除任何较高等级的点来确保所述相应制造轴中的每一个中的所述最小点数量保持不变,从而形成先前识别为锁定所述自由度所需的最小点集合。
13.如权利要求12所述的系统,其包括识别锁定所述自由度所需的所述最小点集合,所述识别包括:
基于每个点与至少一个制造轴的向量对准从所述初始探测点集合中选择点,以确保前三个所述制造轴中的每一个的良好对准;
当所选点不足以锁定所述自由度时,选择至少第四制造轴;
向所述初始探测点集合添加所述探测工具使用所述至少第四制造轴可到达的附加点;以及
基于每个点与至少一个制造轴的向量对准从所述附加点中选择点,以确保所述前三个所述制造轴中的每一个的良好对准,并完成锁定所述自由度所需的所述最小点集合。
14.如权利要求9所述的系统,其中所述提供包括引导所述计算机控制的制造系统使用所述最终探测点集合来执行所述零件的所述对准或表面检查。
15.一种非暂时性计算机可读介质,其编码指令,所述指令可操作以使得数据处理设备执行包括以下项的操作:
使用计算机控制的制造系统获得待制造零件的三维模型的至少一部分的网格模型;
从所述网格模型中收集顶点作为所述计算机控制的制造系统的工作坐标系的三维空间中的初始探测点集合;
基于所述零件的所述三维模型的所述至少一部分的覆盖范围从所述初始探测点集合中过滤出点,以在所述计算机控制的制造系统的所述工作坐标系的所述三维空间中产生最终探测点集合;以及
提供所述最终探测点集合,用于由所述计算机控制的制造系统对所述零件进行对准或表面检查。
16.如权利要求15所述的非暂时性计算机可读介质,其中所述获得包括使用根据探测工具的大小定义的所述顶点之间的最小边缘长度将所述零件的所述三维模型的所述至少一部分转换为所述网格模型,所述探测工具由所述计算机控制的制造系统用于所述零件的所述对准或表面检查,并且所述收集包括从所述初始探测点集合中排除所述三维空间中所述探测工具无法到达的任何点,这是由于所述探测工具的几何形状以及当固定在所述计算机控制的制造系统中时,所述探测工具在所述零件的工作包络内的一个或多个可用定向而导致。
17.如权利要求16所述的非暂时性计算机可读介质,其中所述零件的所述对准或表面检查包括零件对准,并且所述方法包括:
找到所述初始探测点集合中的每个顶点的向量,所述顶点的所述向量在所述顶点处垂直于所述零件的表面;以及
根据每个顶点的所述向量与相应制造轴中的每一个之间的对准程度,将所述顶点分配给所述计算机控制的制造系统的所述工作坐标系中可用的所述相应制造轴;
其中所述过滤包括确保在所述相应制造轴中的每一个中有最小数量的点保持在所述最终探测点集合中,以锁定所述零件对准的自由度。
18.如权利要求17所述的非暂时性计算机可读介质,其中所述分配包括对所述相应制造轴中的所述顶点进行分等级,并且所述过滤包括:
移除分配给所述制造轴中的相应制造轴的较低等级的点,同时保持所述零件的所述三维模型的所述至少一部分的覆盖范围;以及
通过不移除任何较高等级的点来确保所述相应制造轴中的每一个中的所述最小点数量保持不变,从而形成先前识别为锁定所述自由度所需的最小点集合。
19.如权利要求18所述的非暂时性计算机可读介质,其包括识别锁定所述自由度所需的所述最小点集合,所述识别包括:
基于每个点与至少一个制造轴的向量对准从所述初始探测点集合中选择点,以确保前三个所述制造轴中的每一个的良好对准;
当所选点不足以锁定所述自由度时,选择至少第四制造轴;
向所述初始探测点集合添加所述探测工具使用所述至少第四制造轴可到达的附加点;以及
基于每个点与至少一个制造轴的向量对准从所述附加点中选择点,以确保所述前三个所述制造轴中的每一个的良好对准,并完成锁定所述自由度所需的所述最小点集合。
20.如权利要求15所述的非暂时性计算机可读介质,其中所述提供包括引导所述计算机控制的制造系统使用所述最终探测点集合来执行所述零件的所述对准或表面检查。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US17/162,787 US11644294B2 (en) | 2021-01-29 | 2021-01-29 | Automatic generation of probe path for surface inspection and part alignment |
| US17/162,787 | 2021-01-29 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN114818162A true CN114818162A (zh) | 2022-07-29 |
| CN114818162B CN114818162B (zh) | 2024-11-29 |
Family
ID=80682525
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202210104821.4A Active CN114818162B (zh) | 2021-01-29 | 2022-01-28 | 用于表面检查或零件对准的方法、系统及可读介质 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US11644294B2 (zh) |
| EP (1) | EP4036520B1 (zh) |
| CN (1) | CN114818162B (zh) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB202103105D0 (en) * | 2021-03-05 | 2021-04-21 | Renishaw Plc | Measurement probe |
| US11557078B1 (en) * | 2022-02-08 | 2023-01-17 | Honeywell Federal Manufacturing & Technologies, Llc | Machine learning simulation of finite element analysis in augmented reality |
| CN115454006A (zh) * | 2022-09-30 | 2022-12-09 | 广东三维家信息科技有限公司 | 工件加工方法、装置、电子设备及计算机可读取存储介质 |
Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE102005037837A1 (de) * | 2005-08-08 | 2007-02-15 | Daimlerchrysler Ag | Verfahren und Vorrichtung zur Erstellung eines Messplans zur Vermessung eines 3D-Messobjekts |
| CN101871775A (zh) * | 2009-04-21 | 2010-10-27 | 鸿富锦精密工业(深圳)有限公司 | 三坐标测量机编程系统及方法 |
| CN106425490A (zh) * | 2016-09-05 | 2017-02-22 | 华中科技大学 | 一种增减材复合加工设备及其应用 |
| CN107067469A (zh) * | 2016-12-27 | 2017-08-18 | 中国人民解放军装甲兵工程学院 | 获取损伤零件缺损部位模型的系统 |
| JP2018087743A (ja) * | 2016-11-29 | 2018-06-07 | 株式会社ミツトヨ | 形状測定装置の制御方法 |
| CN110126279A (zh) * | 2019-05-07 | 2019-08-16 | 西安交通大学 | 一种面向曲面3d打印的随形切层及路径规划方法 |
| CN111077223A (zh) * | 2019-12-19 | 2020-04-28 | 西安增材制造国家研究院有限公司 | 一种具有三维显示、在线检测及修复功能的增材制造方法 |
Family Cites Families (24)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH1062150A (ja) | 1996-08-19 | 1998-03-06 | Mitsutoyo Corp | ボールプローブおよびこれを用いた座標測定機 |
| US5898590A (en) | 1996-08-21 | 1999-04-27 | The Boeing Company | Method and apparatus for numerically controlled pattern determination |
| FR2762110A1 (fr) | 1997-04-14 | 1998-10-16 | Renishaw Plc | Systeme formant capteur programmable |
| GB2350429B (en) | 1999-05-28 | 2003-11-12 | Taylor Hobson Ltd | A metrological instrument |
| DE19957366C1 (de) | 1999-11-29 | 2001-04-05 | Daimler Chrysler Ag | Verfahren zur Festlegung von Meßpositionen und Verfahren zur Planung von Meßbahnen für die Vermessung eines Objektes oder eines Teiles davon sowie Verfahren und Vorrichtung zur Vermessung eines Objektes oder eines Teiles davon |
| GB0210990D0 (en) | 2002-05-14 | 2002-06-19 | Rolls Royce Plc | Method of generating an inspection program and method of generating a visual display |
| EP1570234A2 (de) | 2002-12-13 | 2005-09-07 | Werth Messtechnik GmbH | Verfahren zum scannenden messen einer kontur eines werkstücks |
| DE102005032749A1 (de) | 2005-07-13 | 2007-01-18 | Carl Zeiss Industrielle Messtechnik Gmbh | Verfahren zum Antasten eines Werkstücks mit einem Koordinatenmessgerät und Koordinatenmessgeräte |
| GB0611109D0 (en) | 2006-06-06 | 2006-07-19 | Renishaw Plc | A method for measuring workpieces |
| GB0625260D0 (en) | 2006-12-19 | 2007-01-24 | Renishaw Plc | A method for measuring a workpiece using a machine tool |
| GB0716218D0 (en) | 2007-08-20 | 2007-09-26 | Renishaw Plc | Measurement path generation |
| EP3730896B1 (en) | 2008-10-29 | 2023-04-19 | Renishaw PLC | Measurement method |
| JP5690941B2 (ja) | 2010-09-13 | 2015-03-25 | ヘキサゴン・テクノロジー・センター・ゲーエムベーハーHexagon Technology Center Gmbh | 表面走査座標測定装置の制御方法及び制御装置 |
| DE102011100467B3 (de) | 2011-05-02 | 2012-07-05 | Carl Zeiss Industrielle Messtechnik Gmbh | Messkopf für ein Koordinatenmessgerät zum Bestimmen von Raumkoordinaten an einem Messobjekt |
| US9366519B2 (en) | 2011-10-06 | 2016-06-14 | Renishaw Plc | Measurement method |
| EP2762832B1 (de) | 2013-01-30 | 2018-06-13 | Hexagon Technology Center GmbH | Optische Einzelpunktmessung |
| JP6157953B2 (ja) | 2013-06-27 | 2017-07-05 | 株式会社ミツトヨ | 三次元形状測定システム及びその制御用ソフトウェア |
| ITBO20130426A1 (it) | 2013-08-01 | 2015-02-02 | Marposs Spa | Sonda di tastaggio e relativi circuiti e metodi di elaborazione dei segnali |
| EP3194884B1 (en) | 2014-09-19 | 2023-11-01 | Hexagon Metrology, Inc | Multi-mode portable coordinate measuring machine |
| GB201417771D0 (en) | 2014-10-08 | 2014-11-19 | Delcam Ltd | Measuring device and related methods |
| EP3034991B2 (en) | 2014-12-19 | 2022-08-24 | Hexagon Technology Center GmbH | Method and system for actively counteracting displacement forces with a probing unit |
| JP6872556B2 (ja) * | 2016-02-11 | 2021-05-19 | スリーエム イノベイティブ プロパティズ カンパニー | 母集団に基づく表面メッシュの再構成 |
| US11042146B2 (en) * | 2017-11-17 | 2021-06-22 | Kodak Alaris Inc. | Automated 360-degree dense point object inspection |
| EP3846065A1 (en) * | 2019-12-30 | 2021-07-07 | Dassault Systèmes | 3d modeled object of a physical prototype of a product |
-
2021
- 2021-01-29 US US17/162,787 patent/US11644294B2/en active Active
-
2022
- 2022-01-27 EP EP22153757.4A patent/EP4036520B1/en active Active
- 2022-01-28 CN CN202210104821.4A patent/CN114818162B/zh active Active
Patent Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE102005037837A1 (de) * | 2005-08-08 | 2007-02-15 | Daimlerchrysler Ag | Verfahren und Vorrichtung zur Erstellung eines Messplans zur Vermessung eines 3D-Messobjekts |
| CN101871775A (zh) * | 2009-04-21 | 2010-10-27 | 鸿富锦精密工业(深圳)有限公司 | 三坐标测量机编程系统及方法 |
| CN106425490A (zh) * | 2016-09-05 | 2017-02-22 | 华中科技大学 | 一种增减材复合加工设备及其应用 |
| JP2018087743A (ja) * | 2016-11-29 | 2018-06-07 | 株式会社ミツトヨ | 形状測定装置の制御方法 |
| CN107067469A (zh) * | 2016-12-27 | 2017-08-18 | 中国人民解放军装甲兵工程学院 | 获取损伤零件缺损部位模型的系统 |
| CN110126279A (zh) * | 2019-05-07 | 2019-08-16 | 西安交通大学 | 一种面向曲面3d打印的随形切层及路径规划方法 |
| CN111077223A (zh) * | 2019-12-19 | 2020-04-28 | 西安增材制造国家研究院有限公司 | 一种具有三维显示、在线检测及修复功能的增材制造方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| EP4036520A1 (en) | 2022-08-03 |
| CN114818162B (zh) | 2024-11-29 |
| US11644294B2 (en) | 2023-05-09 |
| US20220244029A1 (en) | 2022-08-04 |
| EP4036520B1 (en) | 2024-08-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Lasemi et al. | Accurate identification and compensation of geometric errors of 5-axis CNC machine tools using double ball bar | |
| CN114818162B (zh) | 用于表面检查或零件对准的方法、系统及可读介质 | |
| EP4154073B1 (en) | Computer aided generative design with tool size control to facilitate 2.5-axis subtractive manufacturing processes | |
| ElKott et al. | Isoparametric line sampling for the inspection planning of sculptured surfaces | |
| JP2019070916A (ja) | 切削シミュレーション方法および装置 | |
| Ibaraki et al. | Formulation of influence of machine geometric errors on five-axis on-machine scanning measurement by using a laser displacement sensor | |
| EP4154156B1 (en) | Computer aided generative design with layer boundary determination to facilitate 2.5-axis subtractive manufacturing processes | |
| WO2003040651A1 (en) | Tolerance digitizing method | |
| US10684609B2 (en) | Program code generating method for tilted plane machining by multi-axis machine tool and device thereof | |
| CN111324977A (zh) | 利用动态位置误差模拟切削方法 | |
| CN106406237A (zh) | 一种具有自由曲面金属零件的加工方法 | |
| Phan et al. | Optimal scanning strategy for on-machine inspection with laser-plane sensor | |
| Lai et al. | Machining error inspection of T-spline surface by on-machine measurement | |
| Sa et al. | A digital twin synchronous evolution method of CNC machine tools associated with dynamic and static errors | |
| Xu et al. | A method of generating spiral tool path for direct three-axis computer numerical control machining of measured cloud of point | |
| Majstorovic et al. | Development of a knowledge base for the planning of prismatic parts inspection on CMM | |
| Chen et al. | Design for manufacturing: Geometric manufacturability evaluation for five-axis milling | |
| CN104200063A (zh) | 机床空间加工误差的非确定性描述及预测方法 | |
| Liu et al. | A method for assessing geometrical errors in layered manufacturing. Part 1: Error interaction and transfer mechanisms | |
| TWI684841B (zh) | 加工傾斜平面的多軸工具機的程式碼產生方法及其裝置 | |
| Montavon et al. | A digital perspective on machine tool calibration | |
| CN111061218B (zh) | 一种基于acis的复杂曲面加工切削力预测方法及设备 | |
| Gollee et al. | Development and Extrinsic Calibration of a 3D Optical Multisensor Platform Using Laser Line Scanner and a Three-Axis Linear Motion Unit | |
| JP2008018495A (ja) | 加工条件取得装置およびそのプログラム | |
| Chen et al. | An efficient, accurate approach to representing cutter-swept envelopes and its applications to three-axis virtual milling of sculptured surfaces |
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 |