具体实施方式
3D打印技术的一个问题是,由于打印过程期间发生的不期望的事件(诸如,热应力、杂质和其它干扰),3D打印部件的构造几乎无法准确地匹配对应的3D图纸中提供的规格。因此,CAD制图单独可能不足以为用于从部件移除支撑结构的机器生成切割路径。因此,本文所述的实施例可以被用在自主视觉系统中,该自主视觉系统记录3D打印部件并且生成用于分离部件和支撑结构的切割路径。自主视觉系统还可能使用机器学习或人工智能算法。
所描述的实施例还包括用于3D打印部件的自主识别和制造的信息标记解决方案。增材制造技术能够基于它们的CAD设计生产不同的零件。此外,还可以在相同的基板上打印几个不同设计的部件。因此,希望能够自动地识别3D打印部件,以便自动对部件进行后处理。3D打印部件的后处理可能需要大量部件有关的信息,诸如材料、CAD模型、支撑结构设计、质量规范等。因此,期望在3D打印过程期间在3D打印部件、支撑结构或基板上结合标记,以便在有关部件的标记内编码信息以支持后处理活动。
如图1所示,该系统可以具有底座10,3D打印部件12通过3D打印机14被形成在底座10上。3D打印部件被形成在底座10上并且通过一个或多个支撑结构18被附接到底座10,该支撑结构18在相对侧处被附接到底座10和3D打印部件12。优选地,通过3D打印机14在形成3D打印部件12时形成支撑结构18。因此,例如,在通过3D金属打印机14由金属形成3D打印部件12的情况下,支撑结构18也是金属的。在任何情况下,3D打印部件12和支撑结构18优选由相同材料形成并且具有相同的固化(例如,塑料零件)。还可以打印支撑结构20以支撑3D打印部件12的内部结构。也就是说,3D打印部件12的孔或腔22可以具有在相对侧处附接到不同部分以在形成期间支撑孔或腔22的支撑结构20。在图2中更详细地示出了底座支撑结构18,并且在图3中更详细地示出了内部支撑结构20。如图4所示,支撑结构可以由彼此间隔开并且彼此平行的多个支撑构件22构成。优选地,至少五个支撑构件20彼此等距并且彼此平行,或者甚至更优选地,至少十个支撑构件20彼此等距并且彼此平行。
还可以提供具有安装在机械臂28上的摄像头26(例如,3D摄像头、激光传感器、普通RGB摄像头)的视觉系统24以捕获3D打印部件12的图像。如果需要,视觉系统24还可以被安装在其他静止位置或另一个可移动结构上。在已经通过3D打印机14形成3D打印部件12之后,视觉系统24捕获3D打印部件12和支撑结构18、20的一个或多个图像。如下文进一步描述的,控制器30然后确定3D打印部件12与支撑结构18、20之间的切割路径56(图5)。还提供了具有切割头34和机械臂36的切割系统32,用于沿着切割路径56切割通过3D打印部件12或支撑结构18、20以将3D打印部件12与支撑结构18、20分离。切割系统32被认为是后处理系统32,并且可以理解,其它后处理系统32也是可能的,诸如检查系统32。优选地,3D打印部件12或支撑结构18、20的切割涉及在切割头34上使用旋转磨机、激光或往复锯。应当理解,本文的方法和系统也可以与其它处理系统(诸如,检查系统)一起使用,其中系统学习和跟踪多个3D打印部件12的质量。
在一个实施例中,切割路径56的确定可以通过两个步骤来完成。在第一步骤中,系统可以利用来自CAD模型的离线学习。在第二步骤中,系统可以利用质量评估的在线学习(“继续教育”)。应当理解,离线学习是指在实际使用3D打印部件12之前或之后发生的更新,而在线学习是指在实际使用3D打印部件12期间或作为实际使用3D打印部件12的结果发生的更新。
离线学习可以包括从CAD模型(例如,RGB或点云)生成合成图像以便构建代表性数据集。可以理解,合成图像是由控制器30能够识别的数据所定义的数字图像,并且可以被修改以基于CAD模型与3D打印零件12的捕获的图像之间识别的差异或者两个或多个3D打印零件12之间识别的差异来更新合成图像。可能需要从不同的视角生成部件12和支撑结构18、20的多个图像。还可能期望从不同的视角生成具有部分地被移除的支撑结构18、20的部件12的图像。还可能期望生成与参考CAD模型有偏差的部件12和/或支撑结构18、20的图像,诸如部件12与支撑结构18、20的部分分离,由于热应力引起的变形、在部件12和支撑结构18、20之上延伸的不期望的孔隙、或者可能与3D打印相关联的其它缺陷。CAD模型还可以被用于生成在合成图像上可见的切割路径56和/或区域可以被生成以限定部件12和支撑结构18、20,该区域然后可以被用于生成切割路径56。优选地使用机器学习或人工智能技术来训练该系统以从合成图像生成切割路径56。由于该系统被用于在线将支撑结构18、20与多个3D打印部件12分离,因此合成模型可以(即,基于每个3D打印部件12及其捕获的图像)被连续地更新或(即,基于从多个3D打印部件12捕获的图像)周期性地更新。因此,当系统基于在线使用期间发生的学习更新合成图像时,由系统确定的切割路径56随时间调整。
在许多情况下,合成图像的离线生成可能提供可靠的结果,但是可能面临一些3D打印部件12中意外变形的挑战。因此,从现有经验中学习的系统是优选的。在线学习可以从在新的3D打印部件12上使用离线生成的合成图像开始。然后可以存储在切割过程期间(在移除每个支撑结构18、20之后)获取的3D打印部件的真实捕获图像。然后可以将最近的图像与原始CAD模型(即,初始合成图像)进行比较作为质量控制动作。如果检测到与参考CAD模型的差异超过阈值,则可以更新合成图像以调整图像和正确的切割路径56。质量控制动作还可以被用于确认支撑结构18、20被完全地并且充分地移除或被用于分析在支撑结构18、20移除期间是否在3D打印部件12上出现裂缝。系统的再训练和合成图像的更新可以被连续地或周期性地完成。在足够更新之后,可以预期系统变得越来越可靠并且最终可以单独地基于来自3D打印部件12的视觉输入(即,不参考CAD模型)被使用。
系统从摄像头传感器26获取输入并且将捕获的图像存储在计算机存储器中。使用自主计算机视觉算法,可以执行3D打印部件12与支撑结构18、20之间的切割路径56的第一确定。在第二步骤中,该算法可以将支撑结构18、20的不同区域分组为独立区域。例如,可能期望将底部支撑结构18与内部支撑结构20分组,因为不同的支撑结构18、20的切割可以不同地影响3D打印部件12。因此,期望每个区域都由紧密定位的支撑结构18、20组成,这些支撑结构将受到该区域中的切割操作的影响。在每个区域中,算法检测与其它区域分离的支撑结构18、20与3D打印部件12之间的切割路径56。可选地,自主计算机视觉算法可以将每个区域中的确定的切割路径56与原始的CAD模型进行比较。因此,当捕获3D打印的部件12的图像时,可能期望捕获3D打印部件12的至少两个不同区域的3D打印部件12的至少两个不同的图像,其中每个图像属于不同的区域。然后可以基于两个不同的捕获的图像更新对应于3D打印部件12的两个不同区域的合成图像中的两个不同区域。该系统还可以识别和量化捕获的图像与CAD模型之间或者不同的3D打印部件12的捕获的图像之间的偏差(差异)。优选地,如图5所示,自主生成的切割路径56通过使支撑结构18、20与3D打印部件12的连接点54稍微间隔开的被定位,以提供与3D打印部件12的安全余量。最后,该切割路径56的集合被发送到切割系统34,用于从3D打印部件12实际切割和分离支撑结构18、20。
系统的步骤的集合包括捕获CAD模型和/或实际的3D打印部件12的图像。然后可以使用算法自主地确定支撑结构18、20与3D打印部件12之间的连接点54。然后可以比较计算的连接点54和原始CAD模型中的连接点。然后可以识别和量化捕获的图像中的偏差。然后可以自主地生成通过支撑结构18、20稍微远离连接点54以提供安全余量的切割路径56,以提供用于切割的实际路径56。切割路径56然后可以被通信至与执行实际切割的切割系统32。视觉系统还可以期望通过在支撑结构18、20被附接到3D打印部件12的感兴趣的区域内进行缩放(例如,光学或数字缩放)来捕获区域中的附加的图像。然后可以在学习算法中使用这些图像以改进和提高所产生的切割路径56的准确性。
在图6中示出如本文所述的系统和方法的示例性流程图。如图所示,最初从部件的CAD模型生成合成图像(38)。还应当理解,取而代之,可以从实际的3D打印部件12捕获初始图像。然后将部件的初始图像存储在存储器中(40)。还可以将多个图像用于初始图像。机器学习或人工智能还可以与多个初始图像一起使用,以学习3D打印部件12与支撑结构18、20之间的连接点54的位置。在这种情况下,多个初始图像中的至少一些初始图像将包括3D打印部件12和附接到3D打印部件12的支撑结构18、20。还可以从多个初始图像和学习形成合成图像。然后捕获实际的3D打印部件12的图像,其中3D打印部件12对应于初始图像的部件(42)。优选地,捕获的图像是RGB图像、深度图像、点云或线扫描。如果需要,初始图像还可以是RGB图像、深度图像、点云或线扫描。还可以捕获不同的实际的3D打印部件12的多个图像。机器学习或人工智能还可以与实际的部件12的多个捕获的图像一起使用,以学习3D打印部件12与支撑结构18、20之间的连接点54的位置。在这种情况下,多个捕获的图像中的每个捕获的图像将包括3D打印部件12和附接到3D打印部件12的支撑结构18、20两者。还可以从多个捕获的图像和学习形成合成图像。基于初始图像(44)和3D打印部件12的捕获的图像,然后可以在3D打印部件12与附接到3D打印部件12的一个或多个支撑结构18、20之间确定一个或多个切割路径56(46)。可以使用多个初始图像和多个捕获的图像的数据库以及数据库的学习或人工智能来确定切割路径56。然后可以基于合成图像与捕获的图像之间的差异更新合成图像(初始图像)(48)。然后,切割系统32可以使用生成的切割路径56沿着切割路径56切割通过3D打印部件12或支撑结构18、20,以将3D打印部件12与支撑结构18、20分离(50)。应当理解,可以以非暂时性计算机可读介质的形式在控制器30中实现所描述的系统和方法,该计算机可读介质包括控制3D打印机14、视觉系统24和/或切割系统32以自主地执行所描述的方法的程序代码。
如图5所示,还可以使用一个或多个标记52A-52C来确定3D打印部件12与附接到3D打印部件12的支撑结构18、20之间的切割路径56。如图所示,标记52A可以被嵌入3D打印部件12中,该标记52A编码关于部件12、基板10、支撑结构18、20和/或所需的后处理步骤和工具的信息。编码这种信息的标记52B还可以被嵌入支撑结构18、20中的一个或多个支撑结构中。具有这种信息的标记52C还可以被嵌入在基板10中。优选地,在标记52A、52B被嵌入3D打印部件12和/或支撑结构18、20中的情况下,在由3D打印机14打印3D打印部件12和支撑结构18、20时,优选地利用3D打印机14将标记52A、52B打印在3D打印部件12和/或支撑结构18、20上。尽管基板10上的标记52C可以与3D打印分开嵌入或放置在基板10上,但是在打印时也可以由3D打印机14将标记52C 3D打印在基板10上,或者在打印时可以由3D打印机14一起3D打印基板10和标记52C。可以利用激光雕刻标记52A-52C。标记52A-52C可以实现灵活、可靠和独立的装置来自动地识别3D打印部件12,以足以制定后处理活动的完整级联,从而导致定制3D打印部件12的具有成本竞争力的生产。
通过在3D打印部件12、支撑结构18、20或3D打印部件12的基板10上嵌入标记52A-52C,与3D打印部件12和所需的后处理步骤有关的信息可以与部件12一起可用。因此,用于后处理的机器和设备可以从标记52A-52C读取关于要被处理的实际部件12的可靠的信息,以使能自主的后处理活动。附加地,要被后处理的给定部件12所需的设备、工具和机器可能取决于部件。因此,可以利用用于3D打印部件12的标记52A-52C的使用来包含使能单元自主性所需的所有信息。
可能需要关于3D打印部件12的范围广泛的相关信息(诸如,材料、机械和电气属性、质量规格、支撑结构18、20和CAD设计),以便完成一个或多个后处理步骤(诸如,粉末移除、支撑结构18、20移除、质量检验或用于释放应力的热处理等)。使用标记52A-52C来编码与每个3D打印部件12相关的这种信息可以使能从实际的3D打印部件12到执行后处理操作的其它机器的信息流。
可以由标记52A-52C提供的信息的类型包括(但不限于):印刷在基板10上的部件12的数目和位置;3D打印部件12的规格(诸如,材料、机械和电气属性以及质量限制);用于切割通过支撑结构18、20所需的切割工具及其参数化(例如,切割速度等);支撑结构18、20的尺寸和位置;对后处理步骤的限制,诸如3D打印部件12的机械限制;关于如何移除3D打印留下的粉末和支撑结构18、20的信息;关于用于使用熔炉的热处理参数的信息;以及关于如何将3D打印部件12组装成最终产品的信息(例如,组装步骤)。当标记52B被设置在支撑结构18、20上用于移除支撑结构18、20时,可能需要在单独的支撑结构18、20上提供单独的标记52B,以提供支撑结构18、20的独立的位置信息,以提高当移除多个支撑结构18、20的准确性。
标记52A-52C可以由视觉系统24感测,并且控制器30可以基于感测的标记52A-52C确定切割路径56的位置。然后,切割系统32可以沿着切割路径56切割通过3D打印部件12或支撑结构18、20,以将3D打印部件12与支撑结构18、20分离。标记52A-52C还可以编码与特定的3D打印部件12、支撑结构18、20以及后处理步骤相关联的信息。优选地,在3D打印过程期间使用用于3D打印部件12和支撑结构18、20的相同的打印机14创建标记52A-52C。标记52A-52C可以包括各种特征。例如,标记52A-52C可以被打印在3D打印部件12上、支撑结构18、20上、或者包含多个且可选地不同的3D打印部件12的基板10上。标记52A-52C可以以机器可读的格式(诸如,二维码、条形码、凹口、一系列凹口、雕刻或浮雕)编码信息。标记52A-52C可以编码与其它标记52A-52C或3D打印部件12有关的信息(诸如到其它标记52A-52C、到3D打印部件12、到支撑结构18、20、到3D打印部件12与支撑结构18、20之间的连接点54、到3D打印部件12与支撑结构18、20之间的切割路径56的相对距离),或者可以包括3D打印部件12与支撑结构18、20之间的连接头类型,以便支持零件的后处理。关于支撑结构18、20与3D打印部件12之间的连接点54的尺寸的信息还可以被用于计算切割所需的力。标记52A-52C可以被用于指示支撑结构18、20上的临界点。标记52A-52C可以指示需要施加质量检查的几何点以及如何执行这种检查。标记52A-52C可以编码标记52A-52C与一个或多个连接点54或者与切割路径56中的一个或多个切割路径的相对位置。编码的位置信息或其它部件12信息可以被明确地编码在标记52A-52C中,使得可以直接地读取信息而无需参考另一个数据源。备选地,标记52A-52C可以编码指向关于3D打印部件12的信息的指针,诸如连接点54或切割路径56的相对位置。例如,标记52A-52C可以编码允许访问存储在数据库(例如,网站、网络服务、云)中的所需信息的唯一的标识符或URL。数据库还可以包括其它后处理信息,诸如去粉末、组装、抛光等。标记52A-52C(尤其是3D打印部件12上的标记52A)还可以编码3D打印部件12的身份(例如,通用零件号或特定序列号)。标记52A-52C还可以编码用于3D打印部件12的寿命终止处理的信息,诸如拆卸、回收或所有权说明。
在标记52A被放置在3D打印部件12本身上的情况下,优选的是3D打印部件12的功能不受标记52A的影响。在这种情况下,标记52A中编码的信息不仅可以在制造和组装时使用,而且可以在产品的寿命结束时的拆卸和回收期间使用。这可能有助于提高回收的效率。例如,如果部件12或组装产品具有存储在其上的关于如何最佳地拆卸、再利用和/或回收部件的直接信息,则回收设施可以以更有效的方式回收。如果需要,当存储在标记52A-52C上的信息应该保密时,也可以加密这种信息。
在图7中示出如本文所述的系统和方法的示例性流程图。如图所示,3D打印机14可以被用于同时地3D打印:部件12、支撑结构18、20和标记52A-52C中的一个或多个标记(58)。然后,可以通过视觉系统24或其它感测系统感测标记52A-52C(60)。基于从标记52A-52C获得的信息,然后在3D打印部件12与附接到3D打印部件12的一个或多个支撑结构18、20之间确定一个或多个切割路径56(62)。切割系统32然后可以使用生成的切割路径56以沿着切割路径56切割通过3D打印部件12或支撑结构18、20,以将3D打印部件12与支撑结构18、20分离(64)。应当理解,可以以非暂时性计算机可读介质的形式在控制器中实现所描述的系统和方法,该计算机可读介质包括控制3D打印机14、视觉系统24和/或切割系统32以自主地执行所描述的方法的程序代码。
提供自主制造生产单元布置以将数字设计实现为功能产品也将是有用的。自主制造单元布置可以包括两个元件。一方面,物理器件和设备的集合诸如(但不限于):3D打印机、激光器、打印机、机器人系统、视觉和传感器系统、存储系统、质量检查、传送器带、夹具、铣床或CNC机器)。这些器件的主要目的涉及执行所需的操作的集合,诸如打印、抛光、移除材料、检查或组装,以将原材料和原料件物理地转换为功能产品。另一方面,智能控制系统的集合基于产品的先验知识(例如,部件的CAD、组装计划等)和/或来自物理系统的输入数据来确定和学习处理步骤。控制系统将可用的数据转换为有用的信息,以便基于用户定义的性能指标(诸如,成本、生产时间或步骤的数目)执行最佳地创建功能产品的任务的集合。
制造生产单元布置也将是有利的,该制造生产单元布置自主地设计生产过程并且协调、执行、控制、监测和改进处理步骤以获得功能齐全的产品。这种技术将使定制零件的大批量和短交货期的灵活、可靠和具有成本竞争力的生产成为可能。本文描述了一种生产单元布置,该生产单元布置自主地设计、实现、控制、监测和改进处理步骤以获得需要制造并且具有特定特征(诸如,材料、机械和电气属性、功能属性、质量规格、附接的部件或表面光洁度)的全功能部件、零件、料件或设备。一方面,制造单元布置包括硬件,诸如(但不限于)生产、组装和处理机器和设备,以及机器人系统、运输、存储和质量控制系统。另一方面,制造单元布置中的设备和机器需要以自主方式协同和工作,以实现客户定义的目标,诸如最短生产时间或最低生产成本。系统的可用信息可以包括:部件、零件、料件或设备及其要求(CAD模型、组装计划等)的先验知识、来自制造单元布置中的物理系统的输入数据、以及由单元布置生成的过程数据。决策任务包括(但不限于):生产工艺的设计,即获得产品所需的处理步骤;将生产步骤分配给不同的硬件;生产顺序;每个硬件内的生产活动;生产活动的协调和控制;监测处理步骤;生产步骤的学习策略;以及最大化例如最终质量的优化的工艺参数的学习。
自主制造生产单元布置依赖于如上所述的生产硬件(即,后处理工具),诸如3D打印机、激光器、机器人系统、CNC机器、存储架和传送器带。自主系统在智能学习控制系统的集合中考虑各种可用的生产信息,包括产品的先验知识(例如,零件的CAD、组装计划、材料属性)和由制造单元布置生成的数据,以最佳地实现由客户定义的目标。这提供了由智能控制系统产生的制造自主权,以设计和协调制造单元活动,并且通过学习改进生产过程。这些控制系统的结果是工艺步骤和工艺参数的集合以生产功能齐全的产品。在控制系统中编码的学习算法和方法的集合负责以下活动:使能不同的机器和设备之间的协调和通信,设计和实现处理步骤的学习以及用于每个处理步骤的最合适的工艺参数,调和来自机器和设备的数据,将可用信息集成到处理步骤中,以及生产过程的自主执行。本文描述的3D打印部件的自主后处理也可以被扩展到其它制造操作,诸如3D打印部件的自主组装和许多其它操作。
被嵌入在自主制造单元布置中的智能控制系统属于两个主要软件块中的任一个软件块:(i)工艺设计和优化块;或者(ii)过程执行和控制。前一个块(i)分析制造单元部件,执行计算并且改进步骤和参数,以基于使用学习策略的选择的性能指标(KPI)以最佳地生产期望的产品,该学习策略依赖于制造单元描述,制造单元描述包括可用机器和设备及其规格、产品信息(诸如最终产品的CAD设计)以及由过程执行导致的过程测量。第二块(ii)控制制造步骤的执行并且从传感器和设备捕获数据以创建与工艺设计和优化块共享的新信息。为了创建可行的处理策略并且学习最佳策略,可以使用以下步骤。可以读取制造单元布置中的可用机器和设备的列表。还可以选择性能指标。还可以读取产品信息(CAD文件、料件、材料、属性、质量要求等)。可以获得基于可用信息的初始处理策略,该策略满足单元边界和机器/设备能力,该初始处理策略包括所需的处理步骤、排序和机器/设备参数。可以调用学习算法来设置要被改进的部件并且创建要在制造单元布置(训练集合)中运行的代表性生产序列的集合。可以基于由学习算法提供的训练集合多次执行处理步骤,以从制造单元布置收集过程测量。还可以包括来自持续的质量控制系统的反馈,该系统在构建过程期间监测质量。在通过控制系统过程执行期间,还可以包括自我纠正动作,以避免发生事故。考虑到制造单元的生产边界、CAD的约束、产品规格和选择的性能指标(成本、能量、老化、重量等),可以求解学习算法以从观察到的关于最佳的处理顺序和工艺参数的测量中获得概括。可以通过使用在对学习算法的相应的调用期间获得的学习参数以重复上述步骤来改进结果。在处理策略的后续运行中,学习算法采用不同的处理处理工具,以便更好地满足设定的性能指标。还可以调用学习算法来理解由改变输入参数引起的可变性,方法是(a)使用从上次执行调用中获得的解决方案信息,以及(b)多次调用使用分类和回归技术的概括(generalization)策略。图8示出了使用反馈的输入信息、学习、执行和适应的图示。
在描述的布置中的3D打印机的任务是为最终产品生产大部分(例如,90%)的单个部件。部件一经3D打印,信息就被发送到生产块,该生产块处理信息并且向机器人系统发送有关如何移除其上具有3D打印部件的基板的指令,然后自主地对部件执行后处理任务,例如,移除支撑结构、加工表面边沿、抛光、热处理和质量检查。
后处理过程可以从摄像头记录基板上的3D打印部件开始。可以由生产块算法来处理图像,该算法将支撑结构与主要的3D打印部件区分开来。基于该信息,可以生成支撑与3D打印部件之间的连接点,并且可以表示机器人稍后在移除支撑结构时将遵循的轨迹。为了实现这一点,生产块算法计划移除并且向机器人系统发送关于选择什么工具(例如,取决于要被移除的材料的激光切割和/或铣削工具)以及稍后用于精细表面抛光的刷子类型的指令。一开始,生产块可能会预先设定不同的选项,然后随着时间的推移,它可以根据支撑结构移除经验自学选择什么工具。在该过程期间,机器人系统可以使用其视觉和激光扫描仪功能来记录3D打印部件,并且将真实的3D打印部件的尺寸与CAD制图进行比较,以验证打印部件的质量。
在后处理之后,相同的机器人系统或另一个机器人系统或两者的组合可以接管该部件并且开始将(例如,由不同的材料制成的)不同的零件组装成最终产品。在此,组装块算法可以被用于控制和计划组装过程。可以从部件和产品的CAD设计中获取第一输入。然后,组装块算法可以计算步骤并且识别用于组装的每个步骤所需的工具。机器人可以接收该信息并且开始执行。此外,机器人系统可以使用其视觉能力来实时地接收有关产品及其工作环境的信息,并且将这种信息发送到组装块以更新组装计划。可以由摄像头和其它传感器(诸如,声学测量、激光测量、X射线等)提供输入。组装块优选地自主地决定处理各个部件的顺序以获得最终产品。
因此,完整的生产线可以包括以单元架构组织的机器。单元本身配备了工具的集合和传感器,工具包括机器人、打印机或熔炉以及加工工具(如,激光器、铣刀等)、或组装工具(如,固定装置和扳手)。这种组织提供了更高的灵活性、基于优先级的生产、可扩展性、并且对单个单元的计划外停机具有稳健的抵抗力。
单元可以以下列方式执行构建产品所需的任务。可以使用增材制造单元来处理可能在产品中的任何地方使用的不同的材料。可以使用能够根据需要使用由工具打印机创建的生产工具的常规生产设备。可以使用非产品特定的商品部件的库存(例如,螺钉等),并且该商品部件的库存可以被用于部件或组件中的任何部件或组件中。存储系统可以被用于生产的中间部件。系统可以被用于零件的运输(例如,移动机器人、悬垂机器人、无人机等)。机器人单元可以被用于将部件中的所有部件组装在一起成为成品。可以使用质量检查单元对单个部件或组装产品执行各种检查(例如,表面检查、断层扫描、功能测试)。在图9中示出单元布置的示例。如在一个单元布置70中所示,执行3D打印、机械加工或组装的生产单元78可以具有散布在其间的机器人单元72。机器人单元72可以执行多个3D打印部件的组装、机械加工、检查,或者在不同的生产单元78之间移动部件。在另一个单元布置74中,如果需要,机器人传送器76也可以被用于在生产单元78之间移动部件。
在图10中示出如本文所述的系统和方法的示例性流程图。在前两个步骤中,从一个或多个计算机存储器读取用户定义的性能指标(80)和可用后处理工具的列表(82)。用户定义的性能指标可以是将多个3D打印部件12后处理成成品部件或部分成品部件的性能,并且可以包括成本、生产时间或步骤的数目。可用后处理工具可以将具有不同的处理能力并且可以包括减材制造方法,诸如激光或铣刀、以及扳手或上述任何工具、机器等。可用后处理工具的列表还可以包括来自不同的生产单元78的后处理工具。例如,单元布置可以具有散布有机器人单元72的生产单元78。机器人单元72可以执行后处理步骤,例如将多个3D打印部件12组装在一起,或者可以在不同的生产单元78之间移动3D打印部件。传送器76还可以在生产单元78之间移动3D打印部件12。生产单元78可以包括被用于打印3D打印部件12的一个或多个3D打印机14,并且还可以包括如上所述的CNC机器或其它生产设备。在读取用户定义的性能指标和可用后处理工具的列表之后,可以使用用户定义的性能指标和可用后处理工具的列表在一个或多个计算机处理器中生成第一后处理策略(84)。第一后处理策略可以包括用于操作后处理工具的第一子集的计算机指令。然后可以利用一个或多个3D打印机14打印第一3D打印部件12(86)。应当理解,如果需要,可以在打印3D打印部件12之后生成后处理策略。然后使用第一后处理策略和后处理工具的第一子集来后处理第一3D打印部件12(88)。后处理可以包括移除支撑结构18、20或上述任何其它后处理工艺,支撑结构18、20与3D打印部件12一起被打印。例如,移除支撑结构18、20可以包括铣削、激光切割或锯切通过3D打印部件12或支撑结构18、20。支撑结构18可以被附接到底座10,在底座10上形成3D打印部件12。然后响应于第一3D打印部件12的后处理,利用与用户定义的性能指标相对应的一个或多个传感器来确定第一性能度量(90)。系统然后可以从用户定义的性能指标与第一性能度量之间的差异中学习,以改善未来的后处理策略(92)。例如,然后可以使用用户定义的性能指标、第一性能度量和可用后处理工具的列表、在一个或多个计算机处理器中生成第二后处理策略(92、84)。第二后处理策略可以包括用于操作后处理工具的第一子集或第二子集的计算机指令,并且第二后处理策略可以不同于第一后处理策略。第二后处理策略可以包括用于操作后处理工具的第二子集的计算机指令,其中后处理工具的第一子集和第二子集包括不同的后处理工具。第一后处理策略和第二后处理策略还可以包括第一3D打印部件和第二3D打印部件12的质量检查。例如,质量检查可以将3D打印部件12与CAD制图进行比较。然后可以利用一个或多个3D打印机14打印(86)第二3D打印部件12并且可以使用第二后处理策略和后处理工具的第一子集或第二子集来后处理第二3D打印部件12(88)。然后可以响应于第二3D打印部件12的后处理,利用与用户定义的性能指标相对应的一个或多个传感器来确定第二性能度量(90)。然后可以在一个或多个计算机处理器中比较第一性能度量和第二性能度量以确定第一性能度量和第二性能度量之间的改进的水平,如果需要,这种学习和改进随着每次迭代发生(92)。优选地,整个方法自主地运行。
虽然已经描述了本发明的优选的实施例,但是应当理解,本发明不限于此,并且可以在不脱离本文的发明的情况下进行修改。虽然本文描述的每个实施例可能仅指某些特征,并且可能不具体指关于其它实施例描述的每个特征,但是应当认识到,除非另有说明,否则即使未提及特定的特征,本文描述的特征也是可互换的。还应当理解,上述优点不一定是本发明的唯一优点,并且不一定期望通过本发明的每个实施例来实现所有描述的优点。本发明的范围由所附权利要求限定,并且在权利要求的含义内的所有装置和方法,无论是字面上的还是等效的,都旨在被包含在其中。