检测和校正激光切割变形的系统和方法与流程

文档序号:32086615发布日期:2022-11-05 09:25阅读:159来源:国知局
检测和校正激光切割变形的系统和方法与流程

1.本发明总体上涉及激光切割机,更具体地,涉及激光切割机中的切割边缘变形的检测和校正。


背景技术:

2.激光切割是允许通过激光切割金属材料和非金属材料的技术。尽管通常用于工业制造应用,但激光切割也开始被学校、小型企业和业余爱好者使用。激光切割通过经由光学器件将高功率激光的输出引导至待切割的材料来工作。通常,包括激光切割头的激光切割机被配置为实现激光切割技术。传统激光切割机遵循用于要从材料切割出的图案的指令。聚焦激光束对准材料,然后材料根据指令熔融、燃烧、蒸发或被气体射流吹走,因此留下具有高质量表面光洁度的边缘。激光切割机用于切割平板材料以及结构化和管线材料。
3.通常,激光切割机的激光切割头沿着正交轴线在有界平面内平移。激光切割头常常用于从不同厚度的塑料和金属片材切割零件。激光切割头的控制通常由激光切割机中的控制器(例如,计算机数控器(cnc))基于编程指令来执行。
4.cnc遵循称为“g代码”的规定指令列表。g代码是最广泛使用的数控(nc)编程语言的通用名称。它主要用在计算机辅助制造中,以控制诸如cnc的自动化机床。g代码是用于告诉计算机化机床如何制造某物的语言。“如何”由提供给机器控制器(工业计算机)的g代码指令定义,其告诉电机移动到哪里、移动多快以及遵循什么路径。
5.在激光切割工艺期间,在材料与由其参数和g代码控制的激光切割机之间发生热相互作用和机械相互作用。在还未熔融但其微观结构和机械性质受激光切割期间生成的热影响的材料区域中产生热影响区(haz)。热影响区可能导致不良影响。例如,在一些情况下,片材金属的激光切割会导致切割边缘的变形。
6.因此,需要开发一种用于激光切割机的系统,其通过激光切割操作来提供无变形零件。


技术实现要素:

7.一些实施方式的目的在于防止由激光切割机从材料片材切割的零件的变形。另外地或另选地,一些实施方式的目的是在执行激光切割操作之前解决潜在变形的原因并减少这种变形的发生。
8.一些实施方式基于这样的观察:在一些情况下,从材料片材切割的零件的边缘变形。例如,并非具有为切割规划的直线边缘,零件可能具有从零件形状向外弓起的边缘,因此当零件以该变形边缘放置在平坦表面上时表现出“摇摆”行为。例如,随着从材料切割零件,来自激光切割工艺的热扩散到零件本身以及零件之间的剩余材料中。在一些情况下,零件之间的材料可能长且细,本文中称为支柱。当热被困在零件之间的细支柱中时,零件经历热膨胀,并且这种膨胀会使正在切割的片材移动,从而导致切割的零件具有变形边缘。
9.为此,通过对激光切割操作进行仿真(即,在虚拟系统上使用与实际切割零件关联
的指令执行激光切割操作)来预先检测从材料片材切割的零件的潜在变形边缘。
10.一些实施方式基于由热模型和机械模型指导的以下观察:并非零件的所有边缘均可能表现出这种弓形变形,而是通常只有为各个零件最后切割的最终边缘如此。例如,如果零件具有正方形形状,则激光切割机通过切割四个直线边缘(正方形的每一边一个)的序列来从材料片材切割该零件。据观察,只有为完成零件的切割而最后切割的最终边缘可能具有这种变形。切割其它三个边缘未观察到弓形变形。为此,在一些实施方式中,基于与从材料片材切割零件关联的指令,只有为各个零件最后切割的最终切割边缘被视为潜在变形候选。
11.还观察到,需要满足至少两个条件才潜在地导致变形。第一条件是对于为完成零件形状的切割而最后切割的零件边缘发生变形。第二条件是该最终边缘的切割应该在先前切割零件旁边进行。此外,一些实施方式基于这样的认识:只有切割满足这两个条件才可能潜在地导致弓形变形。
12.一些实施方式基于由一些实验支持的认识:由激光切割期间的热传播的细微差别导致弓形变形。例如,激光切割工艺的热仿真表明,沿着切割零件的边缘的变形效应主要是由于当热被困在时间上依次处理的两个零件之间时发生的热堆积。此外,变形效应主要发生在依次处理的零件之间的区域形成细支柱的情况下,例如,当共享边缘长度(即,零件的相邻边缘的共同区域)与零件之间的距离之比大于阈值时。该阈值的值取决于待切割的材料的性质和共享边缘长度。然而,通常在工作板上待切割的零件密集地放置,因此在许多情况下,支柱足够细从而导致变形。
13.此外,观察到在切割零件接近尾声时,切割可能与先前切割零件形成细支柱,并且通过当前激光切割工艺沉积在材料片材中的热无法穿过先前切割逃逸并被困在细支柱内部。这种困住的热导致细支柱的热膨胀。由于这是零件上的最后切割,所以只有膨胀的细支柱支撑正在切割的零件的位置,因此支柱和零件可能相对于激光切割头所使用的原始坐标系略微移动。在这种情况下,激光切割不在正确的位置,从而导致零件的变形。
14.一些实施方式基于这样的认识:由于在切割序列所创建的条件下由热膨胀导致弓形变形,所以可通过改变切割顺序来减少潜在弓形变形的问题。例如,在一些情况下,可通过改变切割方向,使得待切割的最终边缘不沿着由先前切割零件的相邻边缘引起的细支柱来消除变形。对于激光切割,编程指令(即,g代码)指定切割顺序。为此,一些实施方式或者在g代码数据的原始设计期间解决变形的原因,或者对于先前构造的g代码,检测传入g代码数据中潜在地导致变形的切割序列,并且修改所检测的序列中的切割顺序以减少变形的可能性。
15.一些实施方式基于这样的理解:当零件具有矩形形状并在材料片材上对齐时,可容易地检测两个零件之间细支柱的形成。然而,在许多激光切割应用中并非总是如此。因此,需要检测潜在变形以用于切割以任意图案布置在材料片材上的任意形状的零件。
16.在一些实施方式中,利用诸如形态膨胀的图像处理技术来检测变形。形态膨胀操作导致围绕应用形态膨胀操作的零件的轮廓生成膨胀形状。在一些实施方式中,当零件的最终边缘的至少一部分与安排要在当前零件之前切割的先前零件的膨胀形状相交时,检测当前零件的潜在检测。实际上,形态膨胀简化了会导致任意形状的零件的潜在弓形变形的细支柱的检测。
17.另外地或另选地,一些实施方式基于这样的理解:会导致潜在弓形变形的细支柱不必仅形成在两个零件之间,而是可形成在一个零件与先前切割零件的组合之间。为了解决这一问题,一些实施方式维持材料片材的二值图像,其中先前切割空间中与通过形态膨胀内核膨胀的先前切割零件的位置对应的像素具有一个值,并且所有其它像素具有不同的值。这种二值图像允许在当前零件的最终边缘的至少一部分在先前切割空间的边界内时检测潜在变形。另外,在处理当前零件之后,一些实施方式通过翻转与当前零件的形态膨胀对应的像素的值来向二值图像的先前切割空间添加当前零件的形态膨胀。以这种方式,形成二值图像以用于针对潜在变形测试下一零件。
18.以这种方式,各种实施方式针对潜在变形测试指定零件的切割顺序和各个零件的边缘的切割数据,并且修改/选择避免潜在变形的不同零件的边缘的切割顺序。实施方式生成具有为避免潜在变形而选择的当前零件的边缘的切割顺序的g代码并且经由有线或无线信道发送所生成的g代码以控制激光切割机。
19.当前公开的实施方式参照附图进一步说明。所示的附图未必按比例,而是重点通常放在示出当前公开的实施方式的原理。
附图说明
20.[图1a]图1a示出根据一些实施方式所采用的原理控制的示例性激光切割机118的框图。
[0021]
[图1b]图1b示出根据一些实施方式的要由激光切割机118切割的材料片材142的示例。
[0022]
[图2]图2示出根据一些实施方式所采用的原理切割零件的示意图,在其切割期间会导致零件边缘的潜在变形。
[0023]
[图3]图3示出根据一些实施方式的生成g代码以用于控制激光切割机的操作以从材料片材切割零件以避免零件的潜在变形的方法的流程图。
[0024]
[图4a]图4a示出根据一个实施方式的避免潜在变形的切割顺序的修改和选择的示意图。
[0025]
[图4b]图4b示出根据另一实施方式的避免潜在变形的切割顺序的修改和选择的示意图。
[0026]
[图4c]图4c示出根据另一实施方式的避免潜在变形的切割顺序的修改和选择的示意图。
[0027]
[图5a]图5a示出根据一个实施方式的从输入g代码中指定的切割数据生成避免潜在变形的g代码的方法的框图。
[0028]
[图5b]图5b示出根据一个实施方式的从指定要由激光切割机切割的零件的几何形状的设计数据生成避免潜在变形的g代码的方法的框图。
[0029]
[图5c]图5c示出不同实施方式所使用的最终边缘的不同示例。
[0030]
[图5d]图5d示出不同实施方式所使用的最终边缘的不同示例。
[0031]
[图5e]图5e示出不同实施方式所使用的最终边缘的不同示例。
[0032]
[图5f]图5f示出不同实施方式所使用的最终边缘的不同示例。
[0033]
[图6a]图6a示出根据一些实施方式的使用形态膨胀检测易受变形影响的边缘的
示意图。
[0034]
[图6b]图6b示出根据一些实施方式的使用形态膨胀检测易受变形影响的边缘的示意图。
[0035]
[图7a]图7a示出一些实施方式用来简化潜在变形的检测的映射图像的示意图。
[0036]
[图7b]图7b示出一些实施方式用来简化潜在变形的检测的映射图像的示意图。
[0037]
[图8]图8示出根据一些实施方式的生成避免由激光切割机从材料片材切割的零件的变形的g代码的系统800的框图。
[0038]
[图9a]图9a示出根据一些实施方式的将所生成的g代码传输至多个外部装置的示意图。
[0039]
[图9b]图9b示出根据一些实施方式的将生成避免潜在变形的g代码的系统800集成在云计算基础设施中的示意图。
具体实施方式
[0040]
在以下描述中,为了说明,阐述了众多具体细节以便提供本公开的彻底理解。然而,对于本领域技术人员而言将显而易见的是,本公开可在没有这些具体细节的情况下实践。在其它情况下,设备和方法仅以框图形式示出,以避免使本公开模糊。
[0041]
如本说明书和权利要求中使用的,术语“例如”和“诸如”以及动词“包括”、“具有”、“包含”及其其它动词形式在结合一个或更多个组件或其它项目的列表使用时各自应被解释为开放式,意味着列表不应被视为排除其它附加组件或项目。术语“基于”意指至少部分地基于。此外,将理解,本文所采用的措辞和术语是为了描述目的,不应被视为限制。此描述内利用的任何标题仅是为了方便,不具有法律或限制作用。
[0042]
图1a示出根据一些实施方式所采用的原理控制的示例性激光切割机118的框图。在此示例中,激光切割机118包括激光谐振器128,其生成用于从材料片材142切割零件的激光束138。此外,激光切割机118包括光学输出耦合器130和透镜132以便聚焦从激光谐振器128输出的激光束138。激光切割机118还包括电机134(也称为致动器)、控制器136和激光切割头140。在一些实施方式中,控制器136是计算机数控器(cnc)。
[0043]
控制器136根据g代码110控制激光切割机118的操作,g代码110指定激光切割机118从材料片材切割零件的命令。控制器136被配置为接收g代码110并执行所接收的g代码以控制电机134定位激光切割头140以及控制激光谐振器128本身的开/关状态。在某些实施方式中,操作可包括根据g代码控制激光切割头140的取向以从材料片材142切割零件。在其它实施方式中,控制激光切割机118的操作包括控制切割速率、喷嘴相对于激光切割机118的激光头140的对准等。
[0044]
在各种实施方式中,生成g代码110,其中为了避免由困在不同零件的切割之间所形成的支柱中的热导致的潜在变形而选择零件边缘的切割顺序。各种实施方式预先生成g代码110以在执行激光切割操作之前解决潜在变形的原因并减少这种变形的发生。为此,通过对激光切割操作进行仿真(例如,通过在虚拟系统上使用与实际切割零件关联的指令执行激光切割操作)来预先检测从材料片材切割的零件的潜在变形边缘。这种测试可在切割之前由激光切割机118的处理器执行和/或由与激光切割机118通信上连接的远程机器执行。
[0045]
图1b示出根据一些实施方式的要由激光切割机118切割的材料片材142的示例。在激光切割操作期间,材料片材142与至少三种类型的零件关联,例如:已从材料片材142切割的一个或更多个零件作为“先前零件146”;当前正从材料片材142切割的零件作为“当前零件144”;以及在当前零件144之后要从材料片材142切割的一个或更多个零件作为“下一零件148”。在一些实施方式中,当前零件144的最终边缘、先前零件146的相邻边缘和下一零件148的相邻边缘是直线边缘。在一些其它实施方式中,当前零件144具有由直线段以弧连接的边缘形成的圆角矩形形状。
[0046]
一些实施方式基于这样的观察:在一些情况下,从材料片材切割的零件的边缘变形。例如,并非具有为切割规划的直线边缘,零件可能具有从零件形状向外弓起的边缘,因此当零件以该变形边缘放置在平坦表面上时表现出“摇摆”行为。例如,随着从材料切割零件,来自激光切割工艺的热扩散到零件本身以及零件之间的剩余材料中。在一些情况下,零件之间的材料可能长且细,本文中称为支柱。当热被困在零件之间的细支柱中时,零件经历热膨胀并且这种膨胀会使正在切割的片材移动,从而导致切割的零件具有变形边缘,这在零件沿着变形边缘沿着平坦表面放置时会导致摇摆运动。
[0047]
一些实施方式基于由热模型和机械模型指导的以下观察:并非零件的所有边缘均可能表现出这种弓形变形,而是通常只有为各个零件最后切割的最终边缘如此。例如,如果零件具有正方形形状,则激光切割机通过切割四个直线边缘(正方形的每一边一个)的序列来从材料片材切割该零件。据观察,只有为完成零件的切割而最后切割的最终边缘可能具有这种变形。切割其它三个边缘未观察到弓形变形。为此,在一些实施方式中,基于与从材料片材切割零件关联的指令,只有为各个零件最后切割的最终切割边缘被视为潜在变形候选。
[0048]
还观察到,需要满足至少两个条件才潜在地导致变形。第一条件是对于为完成零件形状的切割而最后切割的零件边缘发生变形。第二条件是该最终边缘的切割应该在先前切割零件旁边进行。此外,一些实施方式基于这样的认识:只有切割满足这两个条件才可能潜在地导致弓形变形。
[0049]
图2示出根据一些实施方式所采用的原理切割零件的示意图,在其切割期间会导致零件边缘的潜在变形。在此示例中,根据零件的预定切割顺序在先前零件146之后切割当前零件144。零件的切割顺序包含在切割数据中,切割数据可预先或就在切割之前生成。在指定激光切割机118的切割操作的g代码中提供了切割数据的一个示例。另外地或另选地,切割数据可由处理指定要由激光切割机切割的零件的几何形状的计算机辅助设计(cad)文件的计算机辅助制造(cam)程序确定。各种实施方式在切割之前针对潜在变形测试切割数据并且从避免潜在变形的切割数据生成g代码。
[0050]
除了零件的切割顺序之外,切割数据还可包括各个零件的边缘的切割顺序。在图2的示例中,切割零件144的边缘的切割顺序是从起点210开始沿逆时针方向208。根据该切割顺序,首先切割边缘212,然后切割边缘214,然后是边缘216和边缘202。因此,在此示例中,边缘202是当前零件144的切割中被安排最后切割的最终边缘。
[0051]
在此示例中,最终边缘202与形成支柱206的先前切割零件146的边缘204相邻。如果根据该示例的切割顺序进行激光切割,则激光切割操作将在从材料片材142切割先前零件146的同时在材料片材142中沉积热。所沉积的热从已被切割的先前零件146的边缘204在
材料片材142中进一步传播。在零件144的切割期间发生相同的过程,但在这种情况下,当来自最终边缘202的沉积的热在零件146的方向上传播时,该热传递因零件146的附近边缘204所导致的气隙而停止,以使得热被困在细支柱206中,因此细支柱206的温度升高并且支柱经历热膨胀的物理力。在最终边缘202的切割期间,当前零件144与材料片材142的仅有附接是通过正经受热膨胀应力的细支柱206。该应力会使细支柱206变形,从而使零件144移动,导致激光切割机在片材142上追踪略微非预期的路径进行最后切割202,从而导致该边缘202的变形。因此,由于在激光切割操作期间困在支柱206中的热,最终边缘202移位成当前零件144的边缘202a,这导致当前零件144的边缘(即,边缘202a)中的弓形变形。为了清晰,图2示出从端到端逐渐弓起,但是这种逐渐弓起并非总是如此。有时变形更多地集中在最终切割边缘上。
[0052]
一些实施方式基于这样的认识:由于在切割序列所创建的条件下由热膨胀导致弓形变形,所以可通过改变切割顺序来减少潜在弓形变形的问题。例如,在一些情况下,可通过改变切割方向,使得待切割的最终边缘不沿着由先前切割零件的相邻边缘引起的细支柱来消除变形。对于激光切割,编程指令(即,g代码)指定切割顺序。为此,一些实施方式或者在g代码数据的原始设计期间解决变形的原因,或者对于先前构造的g代码,检测传入g代码数据中潜在地导致变形的切割序列,并且修改所检测的序列中的切割顺序以减少变形的可能性。
[0053]
图3示出根据一些实施方式的生成g代码以用于控制激光切割机的操作以从材料片材切割零件的方法的流程图,其避免了零件的潜在变形。该方法使用与所存储的实现该方法的指令联接的处理器。这些指令在由处理器执行时执行该方法的步骤。
[0054]
在接收到指定零件的切割顺序和各个零件的边缘的切割顺序的切割数据310时,该方法根据切割数据针对由切割导致的潜在变形测试零件,即,各个零件的切割数据。例如,该方法根据切割数据310中接收的零件的切割顺序依次测试零件。为了测试由零件的切割顺序指定的当前零件320,当当前零件的最终边缘与根据零件的切割顺序安排在当前零件之前切割的先前切割零件的边缘相邻时,该方法检测330根据当前零件的边缘的切割顺序切割当前零件的最终边缘的潜在变形。如果检测到潜在变形,则该方法修改340当前零件的边缘的切割顺序并且选择350最终边缘不与任何先前切割零件的任何边缘相邻的修改的切割顺序,使得所选切割顺序不会导致切割当前零件的潜在变形。如果没有检测到潜在变形,则可选择350零件的原始切割顺序。
[0055]
如果根据零件的切割顺序,当前零件不是要切割的最后零件,则处理下一零件以检测潜在变形。否则,该方法生成360具有为避免潜在变形而选择的当前零件的边缘的切割顺序的g代码,并且经由有线或无线信道发送所生成的g代码以控制激光切割机。因此,当激光切割机将根据一些实施方式所生成的g代码切割零件时,可避免由困在细支柱中的热导致的潜在变形。
[0056]
不同实施方式可按相同或不同的方式修改切割顺序。例如,一些实施方式将当前零件的边缘的切割顺序从顺时针顺序修改为逆时针顺序或从逆时针顺序修改为顺时针顺序。另外地或另选地,一些实施方式通过改变切割当前零件的边缘的初始起点的位置来修改当前零件的边缘的切割顺序。
[0057]
图4a示出根据一个实施方式的避免潜在变形的切割顺序的修改和选择的示意图。
图4a示出具有切割顺序的零件402,其通过指定初始切割起点406(即,零件402的右上角)和逆时针方向上的切割顺序410来限定最终边缘408。在此示例中,修改401零件402的边缘的切割顺序,以形成边缘404的切割顺序。切割顺序404通过指定修改的初始切割起点412(即,零件404边缘的中间)和修改的顺时针方向上的切割顺序416来得到最终边缘414。
[0058]
图4b和图4c示出根据另一实施方式的避免潜在变形的切割顺序的修改和选择的示意图。在图4b中,在当前零件432之前切割先前零件422,其中先前零件422具有边缘424。当前零件432具有初始切割起点418、逆时针切割方向410以及与先前零件422的边缘424形成支柱426的最终边缘420。图4c示出在最终切割期间避免形成支柱426的零件432的切割顺序的修改的示意图。在此示例中,通过将初始切割起点418改变为点406来修改切割顺序,同时保留逆时针切割方向410。
[0059]
作为示例,参照图4b,切割当前零件402的切割顺序指定当前零件432的初始切割起点418在左下角,并且当前零件432的切割顺序是逆时针顺序410。因此,由激光切割机118切割当前零件432,使得当前零件420的最终边缘420与先前零件422的边缘424相邻。由于在材料片材142中在最终边缘420与先前切割零件422的相邻边缘424之间形成支柱426,来自切割边缘420的热无法扩散越过先前切割424,该热被困在细支柱426中。细支柱中升高的温度导致细支柱426中的热膨胀和应力。由于当前零件432仅通过细支柱426附接到片材142,所以细支柱426中的热膨胀和应力会导致零件432的运动,以使得尽管激光切割机以直线移动,但在片材表面上追踪的边缘420具有弓形变形。因此,从材料片材142获得变形的当前零件432。图4c上作为示例示出的不同切割顺序的选择有助于避免这种变形。
[0060]
零件的切割顺序是切割数据的一部分,其可预先或就在切割之前生成。在指定激光切割机118的切割操作的g代码中提供了切割数据的一个示例。g代码是用于控制计算机自动化机床的编程语言,例如旋切机、铣床和钻床。各个命令通常由字母后跟数字(例如,g01)或一系列字母/数字组合(例如,“g01 x205.y330.”)组成。在此示例中,g代码中提供的指令是切割从当前位置到位置x,y=(205,330)mm的线性路径(g01)。
[0061]
g代码语言可具有指定不同命令的数百代码以控制激光切割机的操作。通常,g代码的命令包括指定激光切割机的操作模式的激光数据和切割数据。例如,命令“g00x295.y300.”命令激光切割机进行快速扫描,关闭激光,到x,y=(295,300)mm。命令“m98 p9010”命令打开激光并刺穿片材。以这种方式,g代码的切割数据指定切割机的激光头的移动路径以及当激光头处于不同位置以进行实际切割时的具体操作模式。
[0062]
值得注意的是,g代码可具有被设计为由处理器执行的复杂结构。例如,在此示例中,g代码的m98部分实际调用刺穿片材的子例程,p9010部分提供例程的地址(例如,在存储器中)。因此,仅仅通过查看g代码并不总是能够理解要执行的g代码命令。为此,一些实施方式执行激光切割仿真器以对激光头的运动进行仿真,以确定零件的切割顺序和各个零件的边缘的切割顺序。
[0063]
图5a示出根据一个实施方式的从输入g代码中指定的切割数据生成避免潜在变形的g代码的方法的框图。此实施方式有利于测试由传统g代码生成器生成的g代码。该实施方式使用与所存储的实现该方法的指令联接的处理器510。这些指令在由处理器执行时执行该方法的步骤。
[0064]
该实施方式使用输入接口来接收输入g代码520,其包括指定激光切割机的操作模
式的激光数据和切割数据。该实施方式:解释(例如,仿真)输入g代码以提取502切割数据和激光数据;在检测到潜在变形时修改504切割数据中的切割顺序;以及将修改的切割数据与激光数据重新组合506以生成避免潜在变形的g代码505。
[0065]
例如,在一些实现中,实施方式将g代码划分成三个数据阵列。第一阵列存储与用于路径分析的切割数据有关的命令。第二阵列是存储与激光数据有关的g代码行的单元阵列,其不用于路径分析,但为了稍后构造修改的切割路径而保留。第三阵列存储指向第一阵列和第二阵列中的指针,以记录原始g代码文件的各行存储在哪里。第三阵列允许将修改的第一阵列与未修改的第二阵列重新组合506以生成避免潜在变形的g代码505。
[0066]
另外地或另选地,切割数据可例如由处理指定要由激光切割机切割的零件的几何形状的计算机辅助设计(cad)文件的计算机辅助制造(cam)程序从设计数据确定。各种实施方式针对潜在变形测试切割数据并且从避免潜在变形的切割数据生成g代码。
[0067]
图5b示出根据一个实施方式的从指定要由激光切割机切割的零件的几何形状的设计数据生成避免潜在变形的g代码的方法的框图。该实施方式有利于使用各种计算机辅助制造(cam)程序来生成避免潜在变形的g代码。该实施方式使用与所存储的实现该方法的指令联接的处理器540。这些指令在由处理器执行时执行该方法的步骤。
[0068]
图5b的实施方式在接收到指定要由激光切割机切割的零件的几何形状的设计数据530时,确定532零件的切割顺序,并且依次为各个零件生成避免潜在变形的g代码535。例如,为了为当前零件生成g代码,实施方式针对潜在变形测试534具有指定的几何形状的当前零件的边缘的不同的可能切割顺序534,选择536不会导致潜在变形的当前零件的边缘的切割顺序,并且根据所选切割顺序生成535g代码。
[0069]
例如,在一个实施方式中,零件的切割顺序指定零件的切割在材料片材的一个拐角中开始并且继续向材料片材的对角上相对的拐角。为了简化边缘的切割顺序的选择,实施方式生成g代码,其中各个零件的最终边缘比原始片材拐角更靠近对角上相对的片材拐角。这确保了最终切割永不与先前切割的边缘相邻。
[0070]
图5c至图5f示出不同实施方式所使用的最终边缘的不同示例。不同实施方式可使用相同或不同的测试来识别为完成零件的切割而最后切割的最终边缘。在所有示例中,切割方向是逆时针558。例如,图5c示出当零件的所有边缘均是通过改变切割方向而识别的直线段时的示例。在此示例中,最终边缘是通向切割起点555的最终直线段550。类似地,在图5d中,最终边缘是通向切割起点565的最终直线段560。
[0071]
然而,在不同的实施方式中,零件可具有任意形状,不仅由直线段形成(如图5e中),完全没有任何直线段(如图5f中)。在图5e的示例中,一些实施方式选择切割起点577之前的最后直线段570作为最终边缘。这些实施方式认为直线段常常更有助于形成细支柱。然而,另外地或另选地,一些实施方式可将直线段与其它形状的段组合。例如,在一个实现中,最终边缘包括图5e的零件的直线段570和连接直线段的弧575。在另一实现中,仅弧575被视为最终边缘。在另一实现中,通向切割起点585的零件的周边的预定部分(例如,周边的最后三分之一或四分之一)被视为最终边缘580。
[0072]
不同的实施方式使用不同的技术来测试最终边缘是否与可导致潜在变形的先前切割零件相邻。例如,一个实施方式假设用于切割的零件密集地装在工作板上,因此如果零件的最终边缘朝着先前切割零件取向,则检测到潜在变形。另外地或另选地,一些实施方式
测试最终边缘是否确实与先前切割零件的边缘形成足够细的支柱。
[0073]
例如,返回参照图2,当当前零件144的最终边缘202与先前零件146的相邻边缘204之间的距离被确定为小于预定义的距离(即,最小距离)时,一些实施方式检测到潜在变形。在一些实现中,一个实施方式确定支柱206沿着边缘的平行部分的长度,并且当支柱206沿着平行部分的长度至少是由最小距离定义的支柱206的宽度的两倍长时检测到潜在变形。该数可基于切割速度、材料片材142的厚度、激光功率和形成材料片材142的材料类型之一或组合在不同的实现之间变化。材料类型通常是金属,因为它们经历热膨胀,但不限于金属,可包括纸、木材、丙烯酸等。
[0074]
在一些实施方式中,利用图像处理技术来检测变形。图像处理技术的示例是(但不限于)形态学和能够分析几何结构的其它图像处理技术。形态学(也称为“数学形态学”)是一种用于基于集合论、格论、拓扑学和随机函数来分析和处理几何结构的理论和技术。
[0075]
形态膨胀操作导致围绕应用形态膨胀操作的零件的轮廓生成膨胀形状。在一些实施方式中,当零件的最终边缘的至少一部分与安排要在当前零件之前切割的先前零件的膨胀形状相交时,检测当前零件的潜在变形。实际上,形态膨胀简化了会导致任意形状的零件的潜在弓形变形的细支柱的检测。
[0076]
图6a和图6b示出根据一些实施方式的使用形态膨胀来检测易受变形影响的边缘的示意图。具体地,图6a示出形态膨胀应用于先前零件646的示意图。这种形态膨胀根据内核612使先前零件646的形状膨胀。图6b示出当当前零件644的最终边缘602的至少一部分与先前切割零件646的膨胀形状614相交时检测到潜在变形的示意图。
[0077]
形态膨胀操作(也称为“形态膨胀”)是向图像中的对象的边界添加像素以扩展对象的轮廓的操作。形态膨胀操作基于两条数据作为输入:要膨胀的输入形状以及称为结构元素的坐标点的集合(也称为“内核”)。内核是封闭形状,其中内核的形状或半径是自由参数,取决于例如材料片材142的热性质和机械性质、激光切割机118的切割速度、激光功率和材料片材142的厚度。
[0078]
一些实施方式基于切割速度、材料片材142的厚度、激光功率和形成材料片材142的材料类型之一或组合来选择内核612以用于形态膨胀操作。例如,在一些实施方式中,使用映射算法从允许内核集合中自动地选择内核612,其输入特征包括(但不限于)材料片材142、激光功率和形成材料片材142的材料类型之一或组合。这些映射算法的示例是机器学习分类器,例如决策树或神经网络。
[0079]
参照图6a,一个实施方式这样测试潜在变形:首先对先前切割零件应用形态膨胀操作,其次通过标注那些边缘何时与膨胀区域相交来检测易受变形影响的当前零件的边缘。在形态膨胀操作中,实施方式通过内核612的序列扩展先前零件646的轮廓,使得围绕先前零件646的边界创建形状(即,膨胀形状614)(如图6b所示)。
[0080]
此外,实施方式检测膨胀形状614是否与当前零件644相交。在膨胀形状614被确定为与当前零件644相交的情况下,实施方式将与膨胀形状614相交的当前零件644的一个或更多个边缘标记为潜在可变形边缘。具体地,实施方式检测当前零件644的最终边缘602的至少一部分是否在膨胀形状614的边界内。在这种情况下,当前零件644的最终边缘602的一部分被检测为在由先前零件646的形态膨胀定义的膨胀形状614的边界内,实施方式检测潜在变形并将最终边缘602标记为潜在可变形边缘以用于后续校正。
[0081]
另外地或另选地,一些实施方式基于这样的理解:会导致潜在弓形变形的细支柱不必仅形成在两个零件之间,而是可形成在一个零件与先前切割零件的组合之间。为了解决这一问题,一些实施方式维持材料片材的二值图像,其中先前切割空间中与通过形态膨胀内核膨胀的先前切割零件的位置对应的像素具有一个值,并且所有其它像素具有不同的值。这种二值图像允许在当前零件的最终边缘的至少一部分在先前切割空间的边界内时检测潜在变形。另外,在处理当前零件之后,一些实施方式通过翻转与当前零件的形态膨胀对应的像素的值来向二值图像的先前切割像素集合添加当前零件的形态膨胀。以这种方式,形成二值图像以用于针对潜在变形测试下一零件。
[0082]
图7a和图7b示出一些实施方式用来简化潜在变形的检测的映射图像的示意图。图7a示出表示已被切割的先前零件集合706和要从材料片材142切割的下一零件集合704的示意图702。下一零件集合704对应于当前零件144和下一零件148。此外,各个先前零件集合对应于先前零件146。图7b示出表示映射图像708的示意图。映射图像708包括表示下一零件集合704的0集合710以及表示已被切割的先前零件集合706的1集合712。0集合710对应于“0”像素的集合,1集合712对应于“1”像素的集合。
[0083]
映射图像708可以是包括像素的二值图像,其包括0集合710和1集合712,其中“0”像素可表示用于激光切割的开放材料片材,“1”像素可表示作为已被切割的零件的膨胀先前零件的集合。由于材料片材142包括多个零件,这些实施方式被配置为比较要在先前切割零件附近切割的零件,以便检测潜在变形。
[0084]
为此,在处理当前零件144之后,实施方式通过翻转与当前零件144的形态膨胀对应的像素的值来向映射图像708添加当前零件144的形态膨胀。
[0085]
例如,在一个实施方式中,与要切割的当前零件144对应的像素的值为“0”。在当前零件144被切割之后,当前零件144被形态膨胀,以便检查要切割的下一零件148中的潜在变形。然后,实施方式在映射图像708中将膨胀当前零件144的像素的值从“0”改变为“1”。类似地,实施方式基于从材料片材142的零件切割通过在其被切割时将其它膨胀零件的像素的值从“0”翻转为“1”来更新映射图像708。
[0086]
一些实施方式使用处理器和存储器来创建由内核612膨胀的先前零件集合706(例如,先前零件146)的映射图像708以用于检测潜在变形。更具体地,在零件被切割之后,由内核612基于形态膨胀操作的应用对零件进行膨胀。此外,膨胀零件被添加到映射图像708以便检查相对于膨胀零件形成支柱的后续零件(下一零件集合704)。
[0087]
在执行激光切割操作之前,映射图像708仅包括0集合710。“1”像素可表示在先前零件(例如,先前零件146)被切割之后材料片材142中的先前切割空间。此外,为了将像素从“0”翻转为“1”,实施方式在映射图像708与通过形态膨胀操作的内核612膨胀的膨胀当前零件的像素之间执行逻辑或运算。此后,当当前零件144的最终边缘602的一部分与先前切割空间相交(即,“1”像素)时,实施方式检测潜在变形。可使用当前零件144的边缘与映射708的逻辑与运算来确定该相交。实施方式基于先前映射图像与膨胀当前零件的逻辑或运算来维持先前切割空间的映射图像708。此外,实施方式基于用于检测后续零件中的潜在变形的逻辑或运算的执行来存储新的映射图像708。
[0088]
图8示出根据一些实施方式的用于生成避免由激光切割机从材料片材切割的零件的变形的g代码的系统800的框图。不同实施方式使用系统800的模块的不同组合。
[0089]
系统800包括输入接口802,输入接口802被配置为接受来自外部装置(未示出)的切割数据826,以用于由激光切割机118从材料片材切割零件。此外,系统800包括网络接口控制器(nic)822,其适于通过总线820将系统800连接到网络824。通过网络824(无线地或有线地),系统800可接收切割数据826并且可存储切割数据826以供g代码生成器模块808使用。切割数据826可以是在激光切割机118上执行以便从材料片材切割零件的编程代码(即,g代码)的一部分。在这种情况下,g代码生成器模块808输出修改的g代码。另外地或另选地,切割数据826可以是足以生成g代码的设计信息的一部分。例如,在一个实施方式中,切割数据826包括计算机辅助设计(cad)文件,使得g代码生成器模块808执行计算机辅助制造(cam)程序以生成g代码。
[0090]
在一些实现中,系统800通过总线820连接到输出接口816,总线820适于将系统800连接到可基于系统800所生成的g代码操作的激光切割机118。因此,激光切割机118在操作上联接到系统800,使得激光切割机118根据从系统800接收的g代码执行操作。在一些其它实施方式中,系统800在操作上联接到多个激光切割机。
[0091]
系统800包括存储器806,其存储可由处理器804执行的指令。处理器804可被配置为执行所存储的指令以便控制系统800的操作。处理器804可以是单核处理器、多核处理器、图形处理单元(gpu)、计算集群或任何数量的其它配置。存储器806可包括随机存取存储器(ram)、只读存储器(rom)、闪存或任何其它合适的存储器系统。存储器806存储系统800的模块之一或组合,例如:g代码生成器模块808,其被配置为从修改的输入g代码生成g代码;切割变形检测模块810,其被配置为检测潜在变形;以及防变形器模块812,其被配置为测试和选择避免潜在变形的切割顺序;g代码仿真器809,其被配置为对激光切割机118的操作进行仿真以便提取零件的切割顺序和零件的边缘;以及cam模块811,其被配置为通过使用变形检测模块810并测试避免变形的切割顺序来从cad文件生成g代码。
[0092]
在一些实现中,系统800包括输出接口816,其被配置为输出所生成的避免潜在变形的g代码。输出接口816适于将系统800连接到激光切割机118。激光切割机118从系统800接收所生成的g代码并执行激光切割操作。更具体地,激光切割机118的致动器(即,电机134)基于系统800所生成的g代码来执行激光切割机118的操作。
[0093]
在一些实现中,系统800被集成在激光切割机118中,使得激光切割机118是生成修改的g代码以便从材料片材142没有变形地切割零件的独立装置。另外地或另选地,在一些实施方式中,经由网络824将所生成的g代码发送至存储装置814(例如文件服务器)以便存储所生成的g代码,使得所生成的g代码可被其它装置(例如,激光切割机或者能够基于g代码执行激光切割操作的任何机器)访问而无需与系统800通信。
[0094]
图9a示出根据一些实施方式的将所生成的g代码传输至多个外部装置的示意图。在这些实施方式中,系统800经由通信网络908在通信上联接到文件服务器902、多个激光切割机904a、904b和904c以及云服务器906。
[0095]
多个激光切割机904a-904c中的每一个对应于激光切割机118。通信网络908对应于网络824。因此,为了简明起见,本公开省略了多个激光切割机904a-904c和通信网络908的描述。
[0096]
在一些实施方式中,系统800可将所生成的g代码发送至文件服务器902,由其它装置(例如,多个激光切割机904a-904c)从文件服务器902进一步访问。文件服务器902是附接
到网络(即,网络908)的计算机,其中文件服务器902存储从一个或更多个装置(即,系统800)接收的数据并使用文件传输协议(ftp)或任何其它合适的通信协议将数据提供给客户端计算机(例如,激光切割机118)。文件服务器902还可长期存储修改的g代码,使得将来访问修改的g代码以用于切割具有相同规格的零件。
[0097]
在一些附加或替代实施方式中,系统800可将所生成的g代码发送至云服务器906。云服务器906是在云计算环境中运行的虚拟服务器,其中云计算是计算机系统资源的按需可用性,特别是数据存储、服务器、软件应用等。更具体地,云计算经由互联网向用户提供不同的服务。因此,云服务器906存储经由通信网络908从系统800接收的修改的g代码,以便将来访问修改的g代码。另外地或另选地,在云服务器上生成g代码。例如,云服务器906接收切割数据、原始g代码和/或指定零件的几何形状的设计数据,生成避免潜在变形的g代码,并且将所生成的g代码发送至激光切割机或存储部。
[0098]
图9b示出根据一些实施方式的将生成避免潜在变形的g代码的系统800集成在云计算基础设施中的示意图。在这些实施方式的一些实现中,云计算基础设施912还包括经由云网络916彼此连接的激光切割机118和远程服务器926。云计算基础设施912是实现云计算所需的硬件元件和软件元件的集合。云计算包括计算能力、联网和存储,以及供用户访问其虚拟化资源的接口。虚拟资源镜像物理基础设施,其具有类似服务器、网络交换机、存储器和存储集群的组件。云网络916是在云启用应用之间提供互连以提供对虚拟化资源的访问的计算机网络。此外,远程服务器926被配置为存储系统800的生成的g代码。在云计算基础设施912中,激光切割机118可被配置为执行基于云的应用,使得激光切割机118被配置为经由云网络916从远程服务器926取回所生成的g代码。因此,激光切割机118基于由系统800生成并从远程服务器926取回的g代码来执行激光切割操作。
[0099]
以上描述仅提供示例性实施方式,并非旨在限制本公开的范围、适用性或配置。相反,示例性实施方式的以上描述将向本领域技术人员提供用于实现一个或更多个示例性实施方式的可行描述。在不脱离所附权利要求中阐述的公开的主题的精神和范围的情况下,可以想到可对元件的功能和布置进行各种改变。
[0100]
在以上描述中给出具体细节以提供实施方式的彻底理解。然而,本领域普通技术人员可理解,实施方式可在没有这些具体细节的情况下实践。例如,所公开的主题中的系统、过程和其它元件可作为组件以框图形式示出,以免在不必要的细节方面使实施方式模糊。在其它情况下,熟知过程、结构和技术可在没有不必要的细节的情况下示出,以避免使实施方式模糊。此外,各种附图中的相似标号和指代指示相似的元件。
[0101]
另外,各个实施方式可作为过程描述,其被描绘为流程图、数据流程图、结构图或框图。尽管流程图可将操作描述为顺序过程,但许多操作可并行或同时执行。另外,操作次序可重新布置。过程在其操作完成时可终止,但是可具有未讨论或附图中未包括的附加步骤。此外,并非任何具体描述的过程中的所有操作可出现在所有实施方式中。过程可对应于方法、函数、程序、子例程、子程序等。当过程对应于函数时,函数的终止可对应于函数返回到调用函数或主函数。
[0102]
此外,所公开的主题的实施方式可至少部分地手动或自动实现。可通过使用机器、硬件、软件、固件、中间件、微码、硬件描述语言或其任何组合来执行或至少辅助手动或自动实现。当以软件、固件、中间件或微码实现时,执行所需任务的程序代码或代码段可被存储
在机器可读介质中。处理器可执行所需任务。
[0103]
另外,本文中概述的各种方法或处理可被编码为可在采用各种操作系统或平台中的任一种的一个或更多个处理器上执行的软件。另外,这种软件可使用多种合适的编程语言和/或编程或脚本工具中的任一种来编写,并且也可被编译为在框架或虚拟机上执行的可执行机器语言代码或中间代码。通常,在各种实施方式中,程序模块的功能可根据需要组合或分布。
[0104]
本公开的实施方式可被具体实现为一种方法,已提供其示例。作为该方法的一部分执行的动作可按照任何合适的方式排序。因此,可构造以与所示不同的次序执行动作的实施方式,其可包括同时执行一些动作,尽管在例示性实施方式中作为顺序动作示出。
[0105]
尽管参考特定优选实施方式描述了本公开,但是将理解,在本公开的精神和范围内可进行各种其它调整和修改。因此,所附权利要求的方面涵盖落在本公开的真实精神和范围内的所有这些变化和修改。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1