制造支持系统和方法与流程

文档序号:21090613发布日期:2020-06-12 17:11阅读:513来源:国知局
制造支持系统和方法与流程

本申请涉及支持诸如齿轮之类的对象的制造。



背景技术:

用于制造对象的制造系统可以由操作员基于他/她的经验来配置。例如,制造系统的配置可以包括诸如机器加工设备和/或工具等的必要硬件的选择、用于这种硬件的操作条件的选择、和/或这种硬件的控制程序的生成。

人工智能(ai)已经被用于支持制造和/或机器加工对象。例如,jp2017-33138a和jp2017-62695a公开了一种机器加工设备,其包括:运动评估单元,被配置为评估机器加工设备的运动并且输出评估数据;以及机器学习设备,被配置为学习机器加工设备的轴的行进量。jp2017-33138a中公开的机器学习设备被配置为:基于轴之间的调整的行进、机器加工设备的物理量数据以及基于物理量数据和评估数据计算出的奖励数据,来学习机器加工设备的轴的行进量的调整。jp2017-62695a中公开的机器学习设备被配置为:基于所确定的轴的行进量、机器加工设备的状态数据以及基于状态数据计算出的奖励,来学习对机器加工设备的轴的行进量的确定。

此外,例如,jp2017-30152a公开了一种注射模制系统,包括:状态观察部分,用于在执行注射成型时观察与执行注射成型有关的物理量;物理量数据存储部分,用于存储物理量数据;奖励条件设置部分,用于设置用于机器学习的奖励条件;奖励计算部分,用于基于物理量数据和奖励条件来计算奖励;操作条件调整学习部分,用于执行机器学习以用于基于由奖励计算部分计算出的奖励、操作条件调整和物理量数据来调整操作条件;学习结果存储部分,用于存储由操作条件调整学习部分进行的机器学习的学习结果;以及操作条件调整量输出部分,用于基于由操作条件调整学习部分进行的机器学习来确定和输出要被调整的操作条件和调整量。

在一些情形下,期望促进对制造对象所必需的硬件的选择,以提高制造过程的整体效率。



技术实现要素:

根据一个方面,提供了一种制造支持系统。制造支持系统可以包括以下:

获取单元,被配置为获取要被制造的对象的对象数据(诸如对象形状数据,特别是3d对象数据);

人工智能ai引擎,被配置为:接收对象数据作为输入,并且参考与用于制造系统的可用硬件有关的信息来确定用于制造对象的制造系统的硬件配置;以及

输出单元,被配置为输出所确定的硬件配置。

在一些情形下,根据本公开的各个方面的制造支持系统可以有助于高效地确定制造系统的硬件配置,从而使得提高用于制造要被制造的对象的制造过程的整体效率。

在一些示例中,ai引擎还可以被配置为确定要由制造系统执行以用于制造对象的制造加工步骤,并且输出单元还被配置为输出所确定的制造加工步骤。

另外,ai引擎还可以被配置为确定用于参数的值或值范围,该参数与制造加工步骤中包括的一个或多个步骤中的每个步骤有关,并且输出单元还被配置为输出所确定的值或值范围。

在一些示例中,与用于制造系统的可用硬件有关的信息可以包括针对可能的制造加工步骤的至少一部分指示可用的并且是执行制造加工步骤必需的至少一个硬件元件的信息,

其中ai引擎可以包括:

机器学习设备,机器学习设备被配置为:

接收对象数据作为输入;

使用所接收的对象数据执行计算;以及基于计算,输出指示用于制造对象的制造加工步骤的至少一个集合的信息;以及

硬件信息处理单元,被配置为:通过参考与可用硬件有关的信息来标识执行用于制造对象的制造加工步骤的至少一个集合中包括的一个或多个步骤中的每个步骤所需的至少一个硬件元件,确定制造系统的硬件配置。

在这些示例中,用于制造对象的制造加工步骤可以由ai确定,而用于制造系统的硬件配置可以参考例如可以被预先存储在数据库中的与可用硬件有关的信息来确定。因此,在一些情形下,当对可用硬件进行了任何改变时,可以更新被存储在数据库中的与可用硬件有关的信息,并且可以执行硬件配置的确定,而无需关于对可用硬件的改变来重新训练ai。这可以有助于提高确定硬件配置的效率,从而提高制造过程的整体效率。

关于ai引擎可以包括机器学习设备和硬件信息处理单元的上述示例,机器学习设备可以包括神经网络,神经网络被配置为使用所接收的对象数据来执行计算,其中神经网络已使用训练数据而被训练,训练数据包括一个或多个对象的对象数据以及指示用于制造一个或多个对象的制造加工步骤的集合的信息。可以根据深度学习技术来执行神经网络的训练。

关于如上的方面和各种示例,与可用硬件有关的信息可以包括指示用于可用硬件元件的操作调度的信息,

其中ai引擎可以被配置为确定多于一个的硬件配置,

其中制造支持系统还可以包括:

选择单元,被配置为基于用于对象的要求交付时间和操作调度来选择多于一个的硬件配置中的一个硬件配置,并且

其中输出单元可以被配置为输出多于一个的硬件配置中的所选择的一个硬件配置。

另外,ai引擎还可以被配置为确定多于一个的硬件配置间的优先级,并且选择单元可以被配置为进一步基于多于一个的硬件配置间的优先级来选择多于一个的硬件配置中的一个硬件配置。

关于如上的方面和各种示例,制造支持系统还可以包括:控制信息生成单元,被配置为基于对象数据和/或所确定的硬件配置来生成控制信息,控制信息用于利用所确定的硬件配置来控制制造系统。

根据另一方面,提供了一种用于支持制造的计算机实现的方法。

该方法可以包括以下:

获取要被制造对象的对象数据(诸如对象形状数据,特别是3d对象数据);

由人工智能ai引擎接收对象数据作为输入;

由ai引擎参考与用于制造系统的可用硬件有关的信息来确定用于制造对象的制造系统的硬件配置;以及

输出所确定的硬件配置。

在一些示例中,根据上述方面的方法还可以包括:

由ai引擎确定要由制造系统执行以用于制造对象的制造加工步骤;以及

输出所确定的制造加工步骤。

另外,根据上述方面和示例的方法还可以包括:

由ai引擎确定用于参数的值或值范围,该参数与制造加工步骤中包括的一个或多个步骤中的每个步骤有关;以及

输出所确定的值或值范围。

关于根据上述示例的方法,与用于制造系统的可用硬件有关的信息可以包括针对可能的制造加工步骤的至少一部分指示可用的并且是执行制造加工步骤必需的至少一个硬件元件的信息,

其中制造加工步骤的上述确定可以由ai引擎中包括的机器学习设备来执行,制造加工步骤的上述确定可以包括:

接收对象数据作为输入;

使用所接收的对象数据执行计算;以及

基于计算,输出指示用于制造对象的制造加工步骤的至少一个集合的信息,并且

其中制造系统的硬件配置的上述确定可以通过参考与可用硬件有关的信息来标识执行用于制造对象的制造加工步骤的至少一个集合中包括的一个或多个步骤中的每个步骤所需的至少一个硬件元件来执行。

另外,机器学习设备可以包括神经网络,神经网络被配置为使用所接收的对象数据来执行计算,

其中该方法还可以包括:

使用训练数据训练神经网络,训练数据包括一个或多个对象的对象数据以及指示用于制造一个或多个对象的制造加工步骤的集合的信息,并且

其中神经网络的上述训练可以根据深度学习技术来执行。

关于根据上述方面和各个示例的方法,与可用硬件有关的信息可以包括指示针对可用硬件元件的操作调度的信息,

其中多于一个的硬件配置可以由ai引擎来确定,

其中该方法还可以包括:

基于针对对象的要求交付时间和操作调度来选择上述多于一个的硬件配置中的一个硬件配置,并且

其中上述多于一个的硬件配置中的所选择的一个硬件配置可以被输出作为所确定的硬件配置。

另外,ai引擎还可以确定上述多于一个的硬件配置间的优先级,并且上述选择上述多于一个的硬件配置中的一个硬件配置可以还基于上述多于一个的硬件配置间的优先级。

此外,根据上述方面和各个示例的方法还可以包括:基于对象数据和/或所确定的硬件配置来生成控制信息,控制信息用于利用所确定的硬件配置来控制制造系统。

另外,根据上述方面和各个示例的方法还可以包括:

获取与要被制造对象的材料、加工和/或尺寸有关的信息,

其中ai引擎还可以接收与要被制造对象的材料、加工和/或尺寸有关的信息,并且

其中ai引擎还可以使用与要被制造对象的材料、加工和/或尺寸有关的信息来确定制造系统的硬件配置。

根据另一方面,提供了一种包括计算机可读指令的计算机程序,该计算机可读指令在被加载并在计算机上运行时,使计算机执行根据上述方面和各种示例的方法中的任何一个方法的步骤。

根据又一方面,提供了一种用于训练ai的设备,该设备被配置为:(i)接收要被制造的对象的对象数据;(ii)使用所接收的对象数据执行计算;以及(iii)基于计算,输出指示用于制造对象的制造加工步骤的至少一个集合的信息。

该设备可以包括:

ai训练单元,被配置为使用训练数据来训练ai,训练数据包括一个或多个对象的对象数据以及指示用于制造一个或多个对象的制造加工步骤的集合的信息。

根据又一方面,提供了一种用于训练ai的计算机实现的方法,该方法被配置为:(i)接收要被制造的对象的对象数据;(ii)使用所接收的对象数据执行计算;以及(iii)基于计算,输出指示用于制造对象的制造加工步骤的至少一个集合的信息。方法可以包括:

使用训练数据来训练ai,训练数据包括一个或多个对象的对象数据以及指示用于制造一个或多个对象的制造加工步骤的集合的信息。

本申请中描述的主题可以以一种或多种计算机程序产品的形式被实现为方法或系统。本申请中描述的主题可以在数据信号中或在机器可读介质上实现,其中该介质体现在一个或多个信息载体中,诸如cd-rom、dvd-rom、半导体存储器或硬盘。这样的计算机程序产品可以使数据处理装置执行本申请中描述的一个或多个操作。

另外,本申请中描述的主题还可以被实现为包括处理器和耦合到处理器的存储器的系统。存储器可以对一个或多个程序进行编码,以使处理器执行本申请中描述的一种或多种方法。本申请中描述的其他主题可以使用各种机器来实现。

附图说明

在示例性附图和下面的描述中阐述了一个或多个实现的细节。其他特征将从说明书、附图以及从权利要求书中显而易见。然而,应当理解,即使分开描述了实施例,不同实施例的单个特征也可以被组合成另外的实施例。

图1示出了根据示例性实施例的制造支持系统的示例的功能性框图。

图2示出了被存储在硬件信息数据库(db)中的数据的示例。

图3示出了被存储在硬件信息db中的数据的另一示例。

图4a示出了可以使用深度学习技术而被训练的神经网络的示例性配置。

图4b示出了在一些示例中图4a中所示的神经网络的隐藏层可以如何被训练。

图5示出了图示了卷积神经网络(cnn)的示例性输入层和示例性卷积层的示意图。

图6示出了图示了示例性最大池化操作的示意图。

图7示出了cnn的示例性配置。

图8示出了用于训练机器学习设备的ai的示例性处理的流程图。

图9示出了由制造支持系统执行的示例性处理的流程图。

图10示出了由ai引擎执行的示例性处理的流程图。

图11示出了针对生成制造系统的控制程序而执行的示例性处理的流程图。

图12示出了根据另一示例性实施例的制造支持系统的输出数据的示例。

图13示出了可以被用来实现制造支持系统的计算机的示例性硬件配置。

具体实施方式

在下文中,将参考附图给出示例的详细描述。应当理解,可以对示例进行各种修改。特别地,一个示例的元素可以被组合并且在其他示例中被使用以形成新的示例。

本文中描述的示例性实施例和各种示例涉及通过以下来支持对象的制造:获取要被制造的对象的对象数据,以及参考与用于制造系统的可用硬件有关的信息,使用人工智能(ai)从所获取的对象数据中确定用于制造对象的制造系统的硬件配置。

制造支持系统的功能性配置

图1示出了根据示例性实施例的制造支持系统的示例的功能性框图。

如图1中所示,制造支持系统可以包括获取单元10、ai引擎20、硬件信息数据库30、神经网络数据库35、选择单元40、控制信息生成单元50和/或输出单元60。

获取单元10可以被配置为获取要被制造的对象的对象数据(诸如对象形状数据,特别是3d对象数据)。要被制造的对象可以是可以通过例如机器加工、模制、铸造、热处理和/或表面精加工来制造的任何对象。在下文中,将关于要被制造的对象是齿轮的情况来描述实施例和示例。齿轮可以通过机器加工来制造,机器加工包括例如切割、钻孔、滚齿、倒角和/或刮削的步骤。然而,应注意,本领域技术人员容易理解,本文中所述的各种实施例和示例可适用于通过包括机器加工步骤以外的步骤的制造过程来制造齿轮以外的对象。

对象数据可以是例如诸如齿轮之类的要被制造的对象的图像数据。图像数据可以包括像素的2d图像阵列,每个像素包括至少一个值。例如,灰度图像数据中的像素可以包括指示该像素的强度的一个值。彩色图像数据中的像素可以包括多个值,例如三个值,这些值指示诸如rgb颜色空间之类的颜色空间中的坐标。图像数据可以由诸如相机之类的成像设备生成,成像设备包括例如ccd(电荷耦合设备)传感器并且被配置为捕获场景的一个或多个图像。

对象数据的另一示例可以是诸如齿轮之类的要被制造的对象的2d图像数据和对应的深度图数据的组合。如上文关于作为图像数据的对象数据所提及的,可以通过诸如相机之类的成像设备来生成2d图像数据。对应的深度图数据可以包括针对2d图像数据中的每个像素的值,该值指示在对应的像素处的2d图像中的对象表面与视点的距离。可以使用已知的3d重建技术来生成深度图,例如,多视图立体方法,在这种方法中,通过标识场景的从不同视点捕获的至少两个图像中的相同点来重建深度信息。

在对象数据是2d图像数据和对应的深度图数据的组合的具体示例中,对象数据可以是rgb-d(rgb和深度)数据。rgb-d数据可以由诸如microsoftkinect和asusxtionprolive之类的rgb-d传感器捕获,这些传感器包括光学相机和结构化光深度传感器。

对象数据的另一具体示例可以是具有结构化光投影的2d图像数据,其中结构化光在预定照明角度下被投射到要被制造的对象上或该对象的模型上。在预定成像角度(相对于照明角度)下拍摄的2d图像中,对象的被照射部分的结构表示被照射对象的(3d)形状。

对象数据的又一示例可以是诸如齿轮之类的要被制造的对象的3d模型。3d模型可以包括对象的任何表面在三维中的数学表示。例如,3d模型可以包括使用3d空间中的点的集合的对象的物理体的表示,这些点由诸如三角形、线、曲面等的各种几何实体连接。在具体示例中,对象数据可以是3dcad(计算机辅助设计)模型。可以使用诸如autocad、blender、freecad之类的用于3d建模的已知软件来生成3d模型。另外,在一些示例中,可以通过已知的3d扫描仪来生成3d模型。

对象数据的类型可以根据ai引擎20要求的哪种类型的输入数据来选择。

获取单元10可以从连接到获取单元10的计算机(未示出)或存储设备(未示出)获取对象数据。

备选地,获取单元10可以被配置为生成对象数据。例如,在对象数据是对象的图像数据的情况下,获取单元10可以由诸如相机之类的成像设备来实现。另外,例如,在对象数据是对象的3d模型的情况下,获取单元10可以由已知的3d扫描仪或由其上安装了用于3d建模的已知软件的计算机来实现。另外,例如,在对象数据是2d图像数据和对应的深度图数据的组合的情况下,获取单元10可以包括被配置为捕获要被制造的对象的rgb-d数据的rgb-d传感器。在其他示例中,获取单元10可以包括成像设备,诸如相机,用以捕获对象的一个或多个图像;以及系统,被配置为根据例如上面所提及的多视图立体方法来获取深度图数据。

在任何情况下,如果有必要,获取单元10还可以被配置为处理对象数据以适合作为ai引擎20的输入。

ai引擎20可以被配置为从获取单元10接收对象数据作为输入。ai引擎20还可以被配置为:参考与用于制造系统的可用硬件有关的信息,确定用于制造对象的制造系统(未示出)的硬件配置。如图1中所示,ai引擎20可以包括机器学习设备200、ai训练单元210和/或硬件信息处理单元212。

机器学习设备200可以包括接收单元202、ai计算单元204和输出单元206。接收单元202可以被配置为接收对象数据作为输入。在一些示例中,接收单元202还可以被配置为接收可以在由ai计算单元204执行的计算中被使用的信息。例如,接收单元202还可以接收与要被制造的对象的材料、加工和/或尺寸有关的信息。例如,与要被制造的对象的材料有关的信息可以例如指示材料的名称和/或材料的特性,诸如颜色、刚性、相对密度、耐热性等。与要被制造的对象的加工有关的信息可以例如指示对象的表面是如何被机器加工和/或处理的,材料是如何被加工的(例如烧结、软钎焊、焊接等),对象的元件是如何被组装的等等。与对象的尺寸有关的信息可以例如指示对象的至少一部分的整体长度、宽度、厚度、高度和/或直径。与要被制造的对象的材料、加工和/或尺寸有关的进一步的信息可以由用户经由输入设备(未示出)输入,或者可以从连接到ai引擎20的计算机(未示出)和/或存储设备(未示出)获取。

ai计算单元204可以被配置为执行ai的计算。换言之,ai计算单元204可以被理解为实现ai的单元。具体地,在本文描述的示例中,ai计算单元204可以被配置为使用所接收的对象数据来执行计算。在接收单元202接收到与要被制造的对象的材料、加工和/或尺寸有关的进一步信息的情况下,ai计算单元204可以被配置为不仅使用所接收的对象数据而且还使用与对象的材料、加工和/或尺寸有关的进一步的信息来执行计算。由ai计算单元204执行的计算可以基于已知的机器学习技术,例如涉及神经网络的技术。本文稍后将描述ai计算单元204的详细示例。基于由ai计算单元204执行的计算,可以确定用于制造对象的制造加工步骤的至少一个集合。

输出单元206可以被配置为:基于由ai计算单元204执行的计算,输出指示用于制造对象的制造加工步骤的至少一个集合的信息。例如,在要被制造的对象是正齿轮的情况下,由输出单元206输出的制造加工步骤的集合可以包括切割步骤、钻孔步骤、滚齿步骤、倒角步骤和刮削步骤。

在一些示例中,输出单元206还可以被配置为:基于由ai计算单元204执行的计算,输出指示与被包括在制造过程的集合中的一个或多个步骤中的每个步骤有关的一个或多个参数的(多个)值和/或(多个)值范围。例如,关于切割步骤,可以将切割深度的值范围输出为参数值范围。另外,例如,关于钻孔步骤,可将孔的深度和直径的值范围输出为参数值范围。

应注意,取决于要被制造的对象的类型(例如,齿轮类型,诸如正齿轮、斜齿轮、内齿轮等),适当的制造加工步骤的集合和/或与一个或多个步骤有关的一个或多个参数的(多个)值和/或(多个)值范围可以变化。制造加工步骤的该变化可以引起制造系统执行这制造加工步骤的集合所必需的硬件配置的变化。

ai训练单元210可以被配置为训练由机器学习设备200的ai计算单元204实现的ai。例如,ai训练单元210可以被配置为训练由ai计算单元204实现的ai,以用于确定用以制造对象的制造加工步骤的至少一个集合。另外,例如,ai训练单元210可以被配置为训练由ai计算单元204实现的ai,以用于除了确定制造加工步骤的至少一个集合之外,还确定与制造加工集合中包括的一个或多个步骤中的每个步骤有关的一个或多个参数的(多个)值和/或(多个)值范围。

在一些示例中,ai训练单元210可以被配置为:从神经网络db35获取神经网络的数据结构,以及训练神经网络以用于确定用以制造对象的制造加工步骤的至少一个集合。

神经网络db35可以是存储具有各种配置的神经网络的数据结构的数据库。例如,神经网络db35可以存储神经网络的数据结构,该神经网络具有输入层、一个或多个隐藏层和输出层,输入层具有各种数目的节点,一个或多个隐藏层具有各种数目的节点,输出层具有各种数目的节点以及节点之间的各种加权连接。另外,如稍后将参考图4a到图7所解释的,例如,神经网络db35可以存储诸如自动编码器和卷积神经网络(cnn)之类的神经网络的数据结构。被存储在神经网络db35中的神经网络可以没有针对任何具体目的而被训练。

在一些示例中,ai训练单元210可以被包括在除了制造支持系统之外的设备中,并且不需要被包括在ai引擎200中。

硬件信息处理单元212可以被配置为:通过参考硬件信息db30来标识执行一个或多个步骤中的每个步骤所需的至少一个硬件元件,来确定制造系统的硬件配置,该一个或多个步骤被包括在用于制造对象的制造加工步骤的至少一个集合中。

硬件信息db30可以存储关于可用于制造系统的硬件元件的信息。例如,硬件信息db30可以存储信息,针对可能的制造加工步骤中的至少一部分,该信息指示可用的并且是执行制造加工步骤所需的硬件元件或硬件元件的组合。例如,可用硬件元件可以是在安装有制造系统的工厂中存在的硬件元件。用于制造系统的硬件元件可以包括但不限于诸如nc(数控)机床、滚齿机、倒角机、刮削机、钻孔机、铣孔机、电火花机(edm)之类的机器加工设备,以及在机器加工设备中使用的工具,例如切割工具、钻孔工具、滚齿、倒角切割器、刮削切割器、夹具等。

图2示出了可以被存储在硬件信息db30中的信息的示例。如图2中所示,硬件信息db30可以包括表,该表包括关于可用机器和关于用于每个机器的可用工具的信息。在图2中所示的表中,表的每一行对应于机器并且包括机器的类型、机器的型号/id(标识信息)以及可以在机器中被使用的工具的类型和型号/id。例如,根据图2中所示的表,可以在型号/id为“a001”的nc机床上使用型号/id为“ka012”的切割工具和型号/id为“da123”的钻孔件。

图3示出了可以被存储在硬件信息db30中的信息的另一示例。更具体地,图3示出了信息的示例,针对可能的制造加工步骤的至少一部分,该信息指示可用的并且执行制造加工步骤所需的至少一个硬件元件。在图3所示的示例性表中,第一列指示可能的制造步骤,并且第二列指示与制造步骤相对应的可能的参数集合。在图3的示例性表中,参数集合由具体参数集合的标识信息来指示。如图3的示例性表中所示,硬件信息db30可以存储被包括在由每个标识信息所标识的参数集合中的参数的(多个)具体值和/或(多个)值范围。另外,图3中所示的示例性表的第三列指示了用参数集合来执行相应制造步骤所必需的机器和工具的组合。例如,根据图3中所示的表,具有参数集合“cup1”的切割步骤要求机器“a001”和工具“ka012”的组合。

硬件信息db30可以进一步存储用于可用硬件元件的操作调度。操作调度可以指示哪个硬件元件当前准备好使用和/或将准备好在哪个时间点使用。备选地或附加地,操作调度可以指示哪个硬件元件当前正在使用中和/或将在哪个时间段内使用,和/或哪个硬件元件当前正处于维护工作中和/或将在哪个时间段内处于维护工作中。操作调度可以进一步指示哪个硬件元件在哪个时间点之前准备好或将要准备好使用。

再次参考图1,通过参考被存储在诸如图3中所示的硬件信息db之类的硬件信息db30中的信息表来标识由机器学习设备200输出的、用以执行制造对象的制造加工步骤的至少一个集合中包括的一个或多个步骤中的每个步骤所需的硬件元件的组合,硬件信息处理单元212可以确定制造系统的硬件配置。例如,假定硬件配置信息db30存储了在图3中所示的示例性表,并且机器学习设备200已经输出了制造加工步骤的集合,包括具有参数集合“cup1”的切割步骤、具有参数集合“drpm”的钻孔步骤、具有参数集合“hop1”的滚齿步骤、以及具有参数集合“chp1”的倒角步骤。在该示例中,硬件信息处理单元212可以标识用于切割步骤的“a001-ka012”、用于钻孔步骤的“a001-da123”、用于滚齿步骤的“b001-hb011”、以及用于倒角步骤的“c001-ma103”的机器-工具组合。所确定的硬件配置可以包括被标识用于制造加工步骤的这些机器-工具组合“a001-ka012”、“a001-da123”、“b001-hb011”和“c001-ma103”。

在一些示例中,ai引擎20可以确定用于制造对象的多于一个的硬件配置。例如,机器学习设备200可以确定用于制造对象的制造加工步骤的多于一个的集合。在这种情况下,硬件信息处理单元212可以确定多于一个的硬件配置,每个硬件配置对应于上述制造加工步骤的多于一个的集合中的一个集合。

另外,在ai引擎20确定多于一个的硬件配置的示例中,ai引擎20还可以确定多于一个的硬件配置的优先级。换言之,ai引擎20可以确定多于一个的硬件配置中的哪一个硬件配置比其他硬件配置更优选和/或更推荐。

在ai引擎20确定用于制造对象的多于一个的硬件配置的情况下,选择单元40可以被配置为基于针对对象的要求交付时间和针对可用硬件元件的操作调度来选择上述多于一个的硬件配置中的一个硬件配置。当ai引擎20进一步确定多于一个的硬件配置的优先级时,由选择单元40做出的选择可以进一步基于多于一个的硬件配置的优先级。要求交付时间可以由用户使用输入设备(未示出)输入,或者从与选择单元40连接的计算机(未示出)或存储设备(未示出)获取。操作调度可以从硬件信息db30获取。选择单元40可以将所选择的硬件配置提供给控制信息生成单元50和/或输出单元60。

注意,选择单元40是用于制造支持系统的可选单元。例如,在ai引擎20被配置为仅确定用于制造系统的一个硬件配置的情况下,制造支持系统不需要包括选择单元40。

控制信息生成单元50可以被配置为:基于对象数据和/或所确定的硬件配置,生成用于利用所确定的硬件配置来控制制造系统的控制信息。例如,控制信息可以包括用于利用所确定的硬件配置来控制制造系统的操作的控制参数的值。控制参数可以表示所选择的硬件配置中包括的硬件元件的操作条件。备选地或附加地,控制信息可以包括用于所选择的硬件配置中包括的硬件元件的控制程序。控制信息生成单元50可以将所生成的控制信息提供给输出单元60。

控制信息生成单元50也是用于制造支持系统的可选单元。

输出单元60可以被配置为输出由选择单元40提供的所选择的硬件配置和/或由控制信息生成单元50提供的所生成的控制程序。在制造支持系统不包括选择单元40的情况下,输出单元60可以被配置为从ai引擎20接收由ai引擎20确定的硬件配置并输出所接收的硬件配置。

根据以上参考图1描述的示例性制造支持系统,机器学习设备200可以使用ai计算单元204来确定制造加工步骤的至少一个集合,并且硬件信息处理单元212基于制造加工步骤的至少一个集合并参考被存储在硬件信息db30中的信息来确定硬件配置,该信息关于执行制造加工步骤的至少一个集合中包括的一个或多个步骤中的每个步骤所需的一个或多个硬件元件(例如,参见图3中所示的示例性表)。因此,当对可用硬件元件进行任何改变时,可以更新硬件信息db30以反映该改变,并且然后由ai引擎20确定的硬件配置也可以反映该改变。在这种情况下,由于ai计算单元204不一定需要被存储在硬件信息db30中的信息,因此可能不需要关于对可用硬件的改变而由ai计算单元204实现对ai进行再训练。这可以有助于提高确定硬件配置的效率,从而引起制造过程的整体效率的提高。

制造支持系统中所使用的ai的示例

下面提供ai计算单元204的详细示例。

a)自动编码器

在一些示例中,ai计算单元204可以包括具有如图4a中所示的配置的神经网络,并且该神经网络可以使用涉及自动编码器的已知的深度学习技术来训练。

要由已知的深度学习技术来训练的神经网络总共可以包括多于三层,包括输入层(例如,图4a中的层l0)、两个或更多个隐藏层(例如,图4a中的层l1、l2)和输出层(例如,图4a中的层l3)。尽管图4a示出了四层,但是用于深度学习的神经网络可以具有多于四层,例如多于两个的隐藏层。另外,用于深度学习的神经网络中的每一层可以具有比图4a中所示的节点更多或更少数目的节点。

图4a中所示的神经网络的输入层可以包括节点,这些节点接收被包括在获取单元10所获取的对象数据中或者从获取单元10所获取的对象数据中可得出的值。例如,在对象数据是要被制造的对象的图像数据的情况下,输入层可以包括与图像数据中包括的像素相对应的节点。换言之,输入层中的每个节点可以被配置为接收图像数据中包括的像素之一的强度值。对于彩色图像数据,输入层中的多个节点可以对应于图像数据的单个像素的多个强度值(例如,用于红色、绿色和蓝色信道的强度值)。

在对象数据是要被制造的对象的2d图像数据和对应的深度图数据的组合的情况下,输入层可以包括与2d图像数据的像素相对应的输入节点以及与深度图数据的像素相对应的输入节点。

另外,在对象数据是要被制造的对象的3d模型的情况下,可以使用体积表示来表示该3d模型,例如体素化,以使对象数据包括易于输入到神经网络的输入层的输入节点的值,如图4a中所示。3d模型的体积表示可以驻留在3d空间中的体素中(例如,具有n×n×n个体素(n=2、3、4...)的立方体),并且每个体素可以取在0到1之间的值,0指示体素为空,而1指示体素要被3d模型占用。神经网络的输入层可以包括与这种3d空间中的体素相对应的输入节点。在对象数据是对象的3d模型的示例中,获取单元10还可以被配置为生成3d模型的体积表示并将该体积表示提供给ai引擎20。

在这样的信息由ai引擎20接收的示例中,不管对象数据的类型如何,输入层还可以包括一个或多个节点,该一个或多个节点对应于与要被制造的对象的材料、加工和/或尺寸有关的信息。例如,不同的值可以被分配给不同的材料名称,并且与材料名称相对应的输入节点可以接收被分配给该对象的材料名称的值。备选地或附加地,输入节点可以对应于材料的特性,例如颜色、刚性、相对密度、耐热性等,并且例如接收指示特性的值。另外,例如,在输入层中提供与对象的加工相对应的一个或多个输入节点的情况下,一个或多个输入节点可以接收指示加工的类型(例如,烧结、软钎焊、焊接等)和/或如何组装对象的元件等的一个或多个值。另外,在输入层中提供了与对象的尺寸相对应的输入节点的情况下,附加节点可以接收指示对象的尺寸的值。

当训练如图4a中所示的神经网络时,与神经网络的每个隐藏层的连接的权重可以被调整,以构建学习用于数据集合的表示(例如,编码)的自动编码器。例如,为了训练图4a中所示的隐藏层l2,可以构造和训练具有图4b中所示的神经网络的自动编码器。参考图4b,可以将层l1视为连接到隐藏层l2的输入层,并且可以提供具有与输入层l1相同数目的节点的输出层。注意,图4b中的层l1和l2对应于图4a中的层l1和l2。可以使用输入层的输入数据作为监督信号来训练图4b中所示的自动编码器。换言之,可以调整到隐藏层l2的连接权重,以使输出层输出与输入数据相同的数据。执行这样的训练可以使自动编码器的隐藏层表示输入数据的压缩信息,换言之,表示输入数据的特性或特征。图4b中所示的自动编码器的训练可以针对如图4a中所示的神经网络的每个隐藏层而被迭代。

可以应用若干技术来提高自动编码器的鲁棒性。例如,在训练自动编码器以恢复原始的未失真输入时,可以使用部分损坏的输入(例如,具有增加的噪声的输入)。另外,例如,可以在训练期间将稀疏性施加到隐藏层上(例如,在隐藏层中提供比输入层更多的节点),并且可以对自动编码器进行训练,以使隐藏层中仅指定百分比的节点是活动的。对于另一示例,在训练期间可以使隐藏层中的一个或多个节点是不活动的。

图4a中所示的神经网络的输出层可以包括与用于制造要被制造的对象的可能的制造加工步骤集合相对应的输出节点。例如,每个输出节点可以被配置为输出表示对应的制造加工步骤集合适合于制造对象的可能性的值。因此,机器学习设备的输出单元206可以输出指示与具有最高可能性值的输出节点相对应的制造加工步骤的集合的信息。在一些示例中,机器学习设备的输出单元206可以标识在所有输出节点中具有最高可能性值的指定(预定或可预定)数目的输出节点,以及指示与标识的输出节点相对应的指定数目的制造加工步骤集合的输出信息。基于由所标识的输出节点输出的可能性值,输出单元206可以进一步输出指定数目的制造加工步骤集合的优先级。例如,输出单元206可以输出指示以下的信息:制造加工步骤集合的较高优先级(换言之,偏好和/或较高推荐级别)与具有较高输出值的所标识的输出节点相对应。

在输出单元206还被配置为输出指示与该集合中包括的一个或多个步骤中的每个步骤有关的一个或多个参数的(多个)值和/或(多个)值范围的信息的示例中,对应于输出节点的每个可能的制造加工步骤集合可以包括(多个)这样的值和/或(多个)值范围或与之相关联。

b)卷积神经网络(cnn)

在一些示例中,ai计算单元204可以包括被称为适合于图像识别的神经网络的卷积神经网络(cnn)。下面将参考图5到图7来描述cnn到制造支持系统的ai计算单元204的示例性应用。

图5示出了图示了cnn的示例性输入层和示例性卷积层的示意图。在图5中所示的cnn中,对于k(k=1、2、3、...)个信道(例如,对应于红色、绿色和蓝色的三个信道),具有w×w(w=1、2、3、...)个像素的输入图像可以被输入到输入层。在该示例中,输入图像可以是诸如齿轮之类的要被制造的对象的图像(例如,由获取单元10获取的对象数据)。用于信道的像素的强度值可以被认为是输入层的输入节点的输入值。换言之,输入层可以包括w×w×k个输入节点,每个输入节点对应于像素的信道的强度值。

图5中所示的cnn的卷积层的每个节点可以对应于尺寸为f×f(f=1、2、3、...;f<w)的被应用到输入图像的一部分的滤波器。如图4中所示,可以在k个信道上将m个(m=1、2、3、...)滤波器应用到输入图像的相同部分。卷积层中的每个节点的输出可以用等式(1)表示如下:

其中xi可以表示输入节点的输入值(例如,对应滤波器所覆盖的区域内的对于信道的像素的强度值);wi可以表示用于卷积层中的节点与对应于xi的输入节点之间的连接的可调整权重;并且b可以表示偏置参数。激活函数f可以是整流线性单位f(x)=max(x,0)。

在一些示例中,通过在图5中所示的宽度和高度方向上以s个像素的步幅滑动滤波器,可以将m个滤波器中的每一个应用到输入图像的整个区域。对于m个滤波器在输入图像上的每个位置,在卷积层中可以存在与m个滤波器相对应的m个节点。在s=1的情况下,卷积层的输出数目可以是w×w×m。卷积层的输出可以被视为尺寸为w×w的m个图像(对应于m个滤波器)。

卷积层的输出可以经受由最大池化操作进行的下采样。最大池化操作可以在多个输入值中选择最大值。最大池化操作可以被应用到如上所述的从卷积层输出的尺寸为w×w的m个图像中的每一个图像。

图6示出了图示了示例性最大池化操作的示意图。在如图6中所示的示例性最大池化操作中,尺寸为2×2的滤波器可以以两个像素的步幅被应用到输入图像(应用到最大池化操作)。这可以使得输出图像包括以下像素:其中的每个像素在对应的滤波器内的、输入图像的像素间都具有最大强度值。在最大池化操作中使用的每个滤波器都可以被视为cnn中包含的池化层的节点。

池化层的输出可以被输入到另一卷积层。备选地,池化层的输出可以被输入到被称为全连接神经网络的神经网络,其中全连接神经网络的每个节点都被连接到池化层的所有输出(例如,节点)。全连接神经网络的输出可以被连接到另一全连接神经网络或输出层。

输出层可以包括与cnn的一个或多个期望的输出参数相对应的一个或多个节点。例如,在示例性实施例中,类似于如上所述使用图4a中所示的自动编码器来训练的神经网络的输出节点的示例,输出层可以包括多个输出节点,每个输出节点对应于用于制造对象的可能的制造加工步骤的集合。另外,如上面在使用自动编码器的示例中所述,与输出节点相对应的每个可能的制造加工步骤集合可以包括与该集合中包括的一个或多个步骤中的每个步骤有关的一个或多个参数的(多个)值和/或(多个)值范围或与之相关联。每个输出节点可以包括softmax函数作为激活函数。当输出层包括两个或更多个节点时,cnn可以被视为解决分类问题,以将输入图像中的对象分类成指定(预定或可预定)数目的群组之一。

图7示出了cnn的示例性配置。在图7中所示的cnn包括输入层、卷积层1、池化层1、卷积层2、池化层2、全连接层和输出层。卷积层1、2和池化层1、2可以具有如上参考图5和图6所解释的配置。如上所提及,cnn可以包括更多对的卷积层和池化层。另外,cnn可以包括一系列卷积层,而在相邻的卷积层之间没有池化层,只要该序列的最后一个卷积层被连接到池化层即可。另外,cnn可以在输出层之前包括多于一个的全连接层。

在ai计算单元204除了对象数据之外还接收与要被制造的对象的材料、加工和/或尺寸有关的信息的示例中,ai计算单元204中包括的cnn中的全连接层之一可以包括被配置为接收指示这样的信息的(多个)值的一个或多个附加节点。例如,不同的值可以被分配给不同的材料名称,并且对应于材料名称的附加节点可以接收被分配给该对象的材料名称的值。备选地或附加地,附加节点可以对应于材料的特性,例如颜色、刚性、相对密度、耐热性等,并且例如接收指示特性的值。另外,例如,在cnn中的全连接层之一中的一个或多个附加节点可以对应于加工的类型(例如,烧结、软钎焊、焊接等)和/或如何组装对象的元件等。另外,在对应于对象尺寸的附加节点在cnn中的全连接层之一中被提供的情况下,附加节点可以接收指示对象尺寸的值。

例如,可以结合本公开而被应用的已知cnn技术的更多细节可以在2015年4月1日,日本操作研究学会,操作研究作为管理科学研究,60(4),第198-204页,okatani的“深度学习和图像识别,-基础和当前趋势-”(以日语书写)以及匿名的“卷积神经网络”,维基百科(url:https://en.wikipedia.org/wiki/convolutional_neural_network)中找到。

尽管以上关于cnn的解释涉及对象数据是要被制造的对象的图像数据的情况,但是在对象数据是3d模型或2d图像数据与对应的深度图数据的组合的示例中,也可以采用cnn。

在对象数据是3d模型的情况下,可以关于使用自动编码器训练的神经网络(参见图4a和图4b)而使用如上所提及的体积表示来表示3d模型。cnn的输入层可以包括与布置了3d模型的3d空间的体素相对应的输入节点。如上所述,每个体素可以具有在0和1之间的值,0指示体素为空,而1指示体素要被3d模型占用。

在对象数据是2d图像数据和对应的深度图数据的组合的情况下,cnn的输入层(例如,参见图5)除了对应于2d图像数据的(多个)信道之外还可以具有与深度图数据相对应的信道。

用于支持制造的处理

a)ai的训练

图8示出了由机器学习设备200的ai计算单元204实现的用于训练ai的示例性处理的流程图。图8中所示的处理可以由图1中所示的ai训练单元210执行。例如,响应于来自用户的开始训练ai计算单元204的指令,图8中所示的处理可以开始。

在图8的步骤s10中,训练数据可以被准备以用于训练ai计算单元204。例如,ai训练单元210可以获取对象的对象数据和指示用于制造对象的制造加工步骤集合的信息。然后,ai训练单元210可以生成训练数据集合的元素,该元素包括所获取的对象数据和指示用于制造对象的制造加工步骤的集合的信息的组合。ai训练单元210可以生成训练数据集合的指定数目的这样的元素。

当在图8的步骤s10中准备训练数据时,可以从连接到ai训练单元210的计算机(未示出)或存储设备(未示出)获取对象数据。备选地,ai训练单元210可以被配置为以类似于上面参考图1所描述的获取单元10的方式来生成对象数据。例如,指示制造加工步骤集合的信息可以是指示制造加工步骤集合的标识信息。不同的制造加工步骤集合可以针对不同的对象而被定义,并且可以被分配相应的标识信息。

在一些具体示例中,ai训练单元210可以接收特定种类的(多个)齿轮的图像(作为示例性对象数据),以及指示用于制造该种类的(多个)齿轮的制造加工步骤集合的信息(例如,加工步骤包括切割、钻孔、滚齿、齿倒角和刮削)。在这些具体示例中,训练数据集合中的每个元素可以是特定种类的齿轮的图像和指示用于制造该特定种类的齿轮的制造加工步骤集合的信息的组合。

在图8的步骤s12中,可以使用在步骤s10中生成的训练数据来训练由ai计算单元204实现的ai。例如,如上文参考图4a到图7所述,通过调整自动编码器或cnn的(多个)卷积层和(多个)全连接层的权重,ai训练单元210可以从神经网络db80取回自动编码器(例如参见图4a和图4b)或cnn(例如参见图5到图7)的数据结构,并将自动编码器或cnn训练为ai计算单元204。为了调整权重,例如,训练数据集合中的对象数据可以被用作自动编码器或cnn的输入,并且指示制造加工步骤集合的对应信息可以被用作监督信号。在上面关于步骤s10所提及的具体示例的情况下,其中所生成的训练数据集合的每个元素包括特定种类的齿轮的图像和指示用于制造该特定种类的齿轮的制造加工步骤集合的信息,可以将(多个)齿轮的图像输入到自动编码器或cnn,并且可以将指示用于制造该特定种类的齿轮的制造加工步骤集合的信息用作监督信号来调整权重。通过训练步骤s12,可以训练ai计算单元204的ai以输出指示用于制造对象数据的制造加工步骤的一个或多个集合的信息,该对象数据由作为输入被接收的对象数据来表示。

在步骤s12之后,ai训练单元210可以在图8的步骤s14中确定训练是否足够。在一些示例中,ai训练单元210可以将包括对象数据和指示制造加工步骤集合的信息的组合的测试数据用于步骤s14的确定。可以以类似于在步骤s10中用于准备训练数据集合的方式来准备测试数据集合。在一些示例中,ai训练单元210可以将在步骤s10中准备的训练数据的一部分用于在步骤s12中训练ai计算单元204,并将在步骤s10中准备的训练数据的其余部分用作测试数据,以用于在步骤s14中确定训练是否足够。在步骤s14中使用测试数据的示例中,ai训练单元210可以将测试数据中的对象数据输入到ai计算单元204,并将来自ai计算单元204的用于对象数据的输出与用以制造由对象数据表示的对象的已知制造加工步骤集合进行比较。如果来自ai计算单元204的正确输出的数目与测试数据中的对象数据的实例的总数目之比超过预定阈值,则ai训练单元210可以例如确定训练是足够的。备选地,例如,如果来自ai计算单元204的正确输出的数目超过预定阈值,则ai训练单元210可以确定训练是足够的。当确定训练不足够时(步骤s14中为“否”),处理可以返回到步骤s12。当确定训练足够时(步骤s14中为“是”),处理可以前进到步骤s16。

在步骤s16中,ai训练单元210可以确定是否存在ai计算单元204要学习的另外的(多个)物体。例如,在期望ai计算单元204确定用于多于一个种类的对象的制造加工步骤集合并且在步骤s10中尚未生成与上述多于一个种类的对象的至少一个种类有关的训练的情况下,ai训练单元210可以确定存在另外的(多个)物体可以由ai计算单元204进行学习。当确定存在要被学习的另外的(多个)物体时(步骤s6中为“是”),处理可以返回到步骤s10。否则(步骤s16为“否”),图8中所示的处理可以结束。

b)使用经训练的ai的处理

图9示出了由制造支持系统执行的示例性处理的流程图。例如,响应于来自用户的开始图9中所示的处理的指令,图9中所示的处理可以开始。

在步骤s20中,获取单元10可以获取要被制造的对象的对象数据。在一些示例中,获取单元10可以从连接到获取单元10的计算机或存储设备获取对象数据。在其他示例中,获取单元10可以生成对象数据。在对象数据是图像数据的情况下,获取单元10可以通过使用诸如相机之类的成像设备来捕获对象的图像来生成对象数据。在对象数据是3d模型的情况下,通过由已知的3d扫描仪或利用用于3d建模的已知软件来扫描对象,获取单元10可以生成对象数据。在对象数据是2d图像数据和对应的深度图数据的组合的情况下,获取单元10可以例如通过由rgb-d传感器捕获对象来生成对象数据。

在必要的情况下,在步骤s20中,获取单元10可以将对象数据进一步处理为适合作为ai引擎20的输入。例如,在对象数据是3d模型并且ai引擎20的ai计算单元204包括如上参考图4a到图7所述的自动编码器或cnn的情况下,获取单元10可以生成3d模型的体积表示。

对象数据(具有或不具有进一步处理)可以被提供给ai引擎20。

在步骤s25中,ai引擎20可以接收与要被制造的对象的材料、加工和/或尺寸有关的信息。例如,可以经由输入设备从用户接收与对象的材料和/或尺寸有关的信息。备选地或附加地,可以从连接到ai引擎20的计算机或存储设备接收与对象的材料和/或尺寸有关的信息。

在步骤s30中,ai引擎20确定用于制造对象的制造系统的多个硬件配置。

图10示出了图9的步骤s30的详细处理的示例。当开始图9的步骤s30时,图10中所示的处理可以开始。

在图10的步骤s300中,被包括在ai引擎20中的机器学习设备200的接收单元202可以接收输入数据。输入数据可以包括在图9的步骤s20中获取的对象数据以及在图9的步骤s25中接收的与对象的材料和/或尺寸有关的信息。

在图10的步骤s302中,ai计算单元204可以使用在步骤s300中由接收单元202接收的输入数据来执行计算。例如,当采用自动编码器(例如,参见图4a和图4b)或cnn(例如,参见图5到图7)作为ai计算单元204时,ai计算单元204可以通过将所接收的输入数据输入到自动编码器或cnn来执行计算,并且从自动编码器或cnn获取输出。

在步骤s304中,输出单元206可以基于在步骤s302中执行的计算,将指示多个制造加工步骤集合的信息输出到硬件信息处理单元212。例如,在ai计算单元204包括其每个输出节点对应于可能的制造加工步骤集合的神经网络(例如,自动编码器或cnn)的情况下,输出单元206可以标识指定数目的输出节点,这些输出节点具有对应的制造加工步骤集合适用于制造对象的可能性最高值。然后,输出单元206可以输出指示与所标识的输出节点相对应的指定数目的制造加工步骤集合的信息。在一些示例中,在步骤s304中,输出单元206还可以基于由所标识的输出节点输出的可能性值,输出指示在指定数目的制造加工步骤集合间的优先级(例如,偏好和/或推荐级别)的信息。

在步骤s306中,硬件信息处理单元212针对每个制造加工步骤集合确定硬件配置。例如,硬件信息处理单元212可以访问硬件信息db30(例如,参见图3中的表)以标识用于执行被包括在制造加工步骤集合中的一个或多个制造加工步骤中的每个步骤所需的硬件元件或硬件元件的组合。

在步骤s306之后,图10中所示的处理可以结束。然后,制造支持系统的处理可以前进到图9的步骤s40。

再次参考图9,在步骤s30中由ai引擎20确定硬件配置之后,选择单元40可以基于在步骤s40中的可用硬件元件的操作调度来估计用于所确定的硬件配置之一的对象的交付日期。可以从硬件信息db30获取操作调度。例如,选择单元40可以首先考虑由ai引擎20确定的具有最高优先级的硬件配置,并且检查硬件信息db30中的操作调度以确定是否(或何时)硬件配置中包括的每个硬件元件已(或将要)准备好使用。基于每个硬件元件是否或何时准备好或将要准备好使用并且基于与硬件配置相对应的制造加工步骤集合,选择单元40可以针对硬件配置估计对象的交付日期。

在步骤s50中,可以确定所估计的交付日期是否满足要求的交付日期。可以经由输入设备从用户或者从连接到选择单元40的计算机或存储设备获取要求的交付日期。

如果所估计的交付日期满足要求的交付日期(步骤s50中为“是”),则在步骤s70中,选择单元40可以选择硬件配置的上述一个硬件配置。在步骤s70之后,输出单元60可以在步骤s75中输出所选择的硬件配置,并且图9中所示的处理可以结束。

如果所估计的交付日期不满足要求的交付日期(步骤s50中为“否”),则处理前进到步骤s60,并且选择单元40确定选择单元40是否尚未处理任何硬件配置。如果存在未被处理的硬件配置(步骤s60中为“是”),则处理可以返回到步骤s40。在步骤s40中,例如,可以估计针对具有下一最高优先级的所确定的硬件配置的对象的交付日期。

如果不存在未被处理的硬件配置(步骤s60中为“否”),则输出单元60可以在步骤s80中输出警告消息。例如,警告消息可以指示由ai引擎20确定的硬件配置中的任何一个都不能满足要求的交付日期。备选地或附加地,警告消息可以指示针对所有所确定的硬件配置而确定的估计交付日期。

图9中的处理可以在步骤s80之后结束。

c)使用确定的硬件配置的处理

在一些示例中,制造支持系统可以通过控制信息生成单元50生成用于确定的硬件配置的控制程序。

图11示出了由控制信息生成单元50执行的示例性处理的流程图。例如,当选择单元40已经选择了硬件配置时,控制信息生成单元50可以开始图11的处理。备选地,例如,当用户已经经由输入设备指令开始图11的处理时,控制信息生成单元50可以开始图11的处理。

在步骤s90中,控制信息生成单元50可以接收硬件配置。例如,控制信息生成单元50可以从选择单元40接收由选择单元40选择的硬件配置。在ai引擎20被配置为仅确定一个硬件配置的情况下,控制信息生成单元50可以从ai引擎20接收所确定的硬件配置。

在步骤s92中,在必要的情况下,控制信息生成单元50可以为硬件配置中的机器和工具的一个或多个组合生成一个或多个工具路径。例如,在硬件配置中包括了其中工具可以沿路径移动的、机器和工具的组合(例如,铣孔机和铣切割器)的情况下,控制信息生成单元50可以生成针对该组合的工具路径。例如,在硬件配置中包括了其中工具不沿着路径移动的、机器和工具的这样的组合的情况下,在步骤s92中可能不需要针对该组合生成工具路径。

例如,可以使用要被制造的对象的3d模型来生成工具路径。在对象数据是对象的3d模型的示例中,控制信息生成单元50可以从获取单元10接收作为3d模型的对象数据,以生成(多个)工具路径。在对象数据不是对象的3d模型(例如,对象的图像数据或rgb-d数据)的示例中,控制信息生成单元50可以接收由连接到控制信息生成单元50的设备(未示出)生成的对象的3d模型。备选地,控制信息生成单元50可以从对象数据和生成对象的3d模型所必需的任何附加信息(例如,关于对象的形状和/或尺寸的信息)生成对象的3d模型。附加信息可以例如经由输入设备从用户和/或从连接到控制信息生成单元50的计算机(未示出)或存储设备(未示出)获取。

在步骤s94中,控制信息生成单元50可以基于工具和/或工具路径来设置每个机器的机器加工条件。机器加工条件可以包括操作机器所需的控制参数的值。控制参数可以包括但不限于工具移动的速度和/或加速度、工具和/或工件的旋转频率、工具和/或工件的取向等。例如,在机器是数控机床的情况下,机器加工条件可以包括切割速度(例如,工件的旋转速度)、切割工具的馈送速度和/或切割深度。取决于机器的类型,可以使用已知技术来确定机器加工条件。用于确定机器加工条件的已知技术可以采用机器学习技术,例如,如jp2017-62695a和jp2017-30152a所公开的。

在步骤s96中,控制信息生成单元50可以基于机器加工条件和/或工具路径来生成每个机器的控制程序。控制程序可以包括机器可读指令,该机器可读指令使机器能够在机器加工条件下操作并且在适用的情况下沿着该工具路径移动工具。对于具体的示例,在机器是nc机床并且机器加工条件包括切割速度、切割工具的馈送速度和切割深度的情况下,所生成的控制程序的机器可读指令可以是以下指令:nc机床的控制器可以读取的并且指令nc机床的控制器输出控制信号,以使nc机床以机器加工条件中包括的切割速度、切割工具的馈送速度和切割深度进行操作。

在步骤s98中,控制信息生成单元50可以将控制程序提供给输出单元60。控制程序可以由输出单元60输出。

在步骤s98之后,图11中所示的处理可以结束。

图11中所示的处理仅是可以由控制信息生成单元50执行的处理的示例。例如,在一些其他示例中,可以跳过生成控制程序的步骤s96,并且可以输出机器加工条件而不是控制程序。

变型

本领域技术人员应理解,在上面参考图1到图11所描述的示例性实施例及其变型只是示例性的,并且可以存在其他实施例和变型。

例如,在上述的示例性实施例和示例中,机器学习设备的ai计算单元204确定用于制造对象的制造加工步骤的至少一个集合,并且硬件信息处理单元212参考被存储在如图3中所示的硬件信息db30中的信息表来确定制造系统的硬件配置。

在另一示例性实施例和示例中,机器学习设备200的ai计算单元204不仅可以确定制造加工步骤的至少一个集合,而且可以确定制造系统的硬件配置。在这样的示例性实施例和示例中,ai引擎200不需要包括硬件信息处理单元212。

在ai计算单元204确定硬件配置以及制造加工步骤的示例性实施例和示例中,可以训练ai计算单元204基于将对象数据用作输入的计算来输出硬件配置和制造加工步骤。对象数据可以类似于在上面参考图1到图11所描述的示例性的实施例和示例中使用的对象数据。另外,类似于在上面参考图1到图11所描述的示例性实施例和示例,ai计算单元204可以进一步使用与对象的材料、加工和/或尺寸有关的信息作为输入的一部分。另外,ai计算单元204可以包括神经网络,例如,自动编码器(参见图4a和图4b)或cnn(参见图5到图7)。

图12示出了ai计算单元204确定硬件配置以及制造加工步骤的示例性实施例和示例中的输出的示例。如图12中所示,输出可以包括用于制造对象(例如齿轮)的制造加工步骤以及每个制造加工步骤所需的机器、工具和机器加工条件的组合。当训练ai计算单元204时,例如,可以生成涉及制造加工步骤的不同集合和对应的硬件配置的指定数目的可能输出。

标识信息可以被分配给每个可能的输出,并且可以在ai计算单元204中包括的神经网络中提供与可能的输出相对应的输出节点。用于训练ai计算单元204的训练数据集合的元素可以是可能的输出的标识号和要被制造的对象的对象数据的组合。例如,可以根据图8中所示的流程图来执行训练ai计算单元204的处理。

由ai计算单元204确定硬件配置以及制造加工步骤的示例性实施例和示例中的制造系统执行的处理可以遵循图9中所示的流程图。然而,当在步骤s30中确定硬件配置时,由ai计算单元204使用输入数据(例如,对象数据以及与对象的材料、加工和/或尺寸有关的可选信息)执行的计算可能已经确定了硬件配置以及制造加工步骤的集合,而没有参考诸如图3中所示的硬件信息db30中的信息表。

在又一示例性实施例和示例中,机器学习设备200的ai计算单元204可以确定用于制造对象的制造系统的硬件配置,而无需标识制造加工步骤。在这样的示例性实施例和示例中,来自制造支持系统的输出可以仅包括一个或多个硬件配置,例如,制造对象所需的(多个)机器和/或(多个)工具的列表。在这种情况下,可以使用一个或多个对象的对象数据以及可能的输出来训练ai计算单元204,其中每个可能的输出包括硬件配置。

另外,尽管上面的示例性实施例和各种示例是关于涉及对工件进行机器加工的制造加工步骤来描述的,但是上述的示例性实施例和各种示例可以类似地被应用于涉及除机器加工之外的加工的制造加工步骤,例如,模制、铸造、热处理和/或表面处理。例如,图3中所示的表和/或图12中所示的示例性输出可以包括例如可以在刮削步骤之后执行的用于制造齿轮的淬火硬化步骤。例如,用于淬火硬化步骤的机器加工条件可以包括例如温度控制表等。另外,例如,制造加工步骤可以涉及用于通过机器加工形成模或模具的步骤,以及用于通过使用模或模具进行铸造或模制来形成要被制造的对象的步骤。

用于实现制造支持系统的硬件

如上所述的被包括在制造支持系统中的单元和ai引擎20的各种示例可以使用计算机来实现。

图13示出了计算机的示例性硬件配置,该计算机可以被用于实现示例性ai引擎20和/或制造支持系统中包括的任何一个单元。图13中所示的计算机包括处理单元70、系统存储器72、网络接口74、硬盘驱动(hdd)接口76、外部磁盘驱动接口78和输入/输出(i/o)接口80。计算机的这些组件通过系统总线82彼此耦合。处理单元70可以通过访问系统存储器72来执行算术、逻辑和/或控制操作。处理单元70可以实现示例性ai引擎的处理器和/或上述制造支持系统中包含的任何一个单元。系统存储器72可以存储与处理单元70结合使用的信息和/或指令。系统存储器72可以包括易失性和非易失性存储器,诸如随机存取存储器(ram)720和只读存储器(rom)722。基本输入/输出系统(bios)可以被存储在rom722中,该基本输入/输出系统(bios)包含有助于诸如在启动过程期间在计算机内的元件之间传送信息的基本例程。系统总线82可以是若干类型的总线结构中的任何一个,包括使用各种各样的总线架构中的任何一个的存储器总线或存储器控制器、外围总线和本地总线。

计算机可以包括用于经由网络与其他计算机和/或设备进行通信的网络接口74。

另外,计算机可以包括:硬盘驱动(hdd)84,用于从硬盘(未示出)读取和向硬盘(未示出)写入;以及外部磁盘驱动86,用于从可移除硬盘(未示出)读取和向可移除硬盘(未示出)写入。可移除磁盘可以是用于磁盘驱动的磁盘,也可以是诸如用于光盘驱动的cdrom之类的光盘。hdd84和外部磁盘驱动86分别通过hdd接口76和外部磁盘驱动接口78连接到系统总线82。驱动及其相关联的计算机可读介质为通用计算机提供计算机可读指令、数据结构、程序模块和其他数据的非易失性存储。数据结构可以包括用于实现如本文所述的用于加密和/或解密文档的方法的相关数据。相关数据可以被组织在数据库中,例如组织在关系数据库或对象数据库中。

尽管本文所述的示例性环境采用了硬盘(未示出)和外部磁盘(未示出),但是本领域技术人员应当理解,可以存储计算机可访问的数据的其他类型的计算机可读介质也可以在示例性的操作环境中被使用,诸如磁带、闪存卡、数字视频盘、随机存取存储器、只读存储器等。

多个程序模块可以被存储在硬盘、外部磁盘、rom722或ram720上,包括操作系统(未示出)、一个或多个应用程序7202、其他程序模块(未示出)以及程序数据7204。应用程序可以包括如上所述的功能性的至少一部分。

计算机还可以包括诸如相机之类的成像设备90、诸如鼠标和/或键盘之类的输入设备92以及诸如液体显示器之类的显示设备94。成像设备90、输入设备92和显示设备94可以经由i/o接口80a至80c被连接到系统总线82。

作为使用图13中所示的计算机的实现的附加或备选,本文描述的示例性实施例的一部分或全部的功能性可以被实现为一个或多个硬件电路。这样的硬件电路的示例可以包括但不限于:大规模集成(lsi)、精简指令集电路(risc)、专用集成电路(asic)和现场可编程门阵列(fpga)。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1