CN115114683A - 用于将自主技能执行中的约束反馈到设计中的系统与方法 - Google Patents
用于将自主技能执行中的约束反馈到设计中的系统与方法 Download PDFInfo
- Publication number
- CN115114683A CN115114683A CN202210278896.4A CN202210278896A CN115114683A CN 115114683 A CN115114683 A CN 115114683A CN 202210278896 A CN202210278896 A CN 202210278896A CN 115114683 A CN115114683 A CN 115114683A
- Authority
- CN
- China
- Prior art keywords
- skill
- design
- simulation
- skills
- library
- 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.)
- Pending
Links
- 238000013461 design Methods 0.000 title claims abstract description 130
- 238000000034 method Methods 0.000 title claims abstract description 103
- 230000002567 autonomic effect Effects 0.000 title abstract description 8
- 230000008569 process Effects 0.000 claims abstract description 62
- 238000004088 simulation Methods 0.000 claims abstract description 39
- 230000009466 transformation Effects 0.000 claims abstract description 15
- 238000010801 machine learning Methods 0.000 claims description 11
- 230000008859 change Effects 0.000 claims description 2
- 238000010276 construction Methods 0.000 abstract description 8
- 239000000047 product Substances 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000001228 spectrum Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 4
- 241000282414 Homo sapiens Species 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000004806 packaging method and process Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 238000000844 transformation Methods 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001093 holography Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1661—Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- 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
- G05B17/00—Systems involving the use of models or simulators of said systems
- G05B17/02—Systems involving the use of models or simulators of said systems electric
-
- 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/41845—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 system universality, reconfigurability, modularity
-
- 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/4188—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 CIM planning or realisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/27—Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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/31—From computer integrated manufacturing till monitoring
- G05B2219/31052—Find feasable assembly sequences
-
- 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/40—Robotics, robotics mapping to robotics vision
- G05B2219/40102—Tasks are classified in types of unit motions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/04—Constraint-based CAD
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Robotics (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Geometry (AREA)
- Biophysics (AREA)
- Medical Informatics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Quality & Reliability (AREA)
- Manufacturing & Machinery (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Computational Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Manipulator (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及用于将自主技能执行中的约束反馈到设计中的系统与方法。一种用于设计由机器人单元执行过程的计算机实现方法,该方法包括:获得过程目标以及一个或多个过程约束。方法包括:访问构造库和技能库。每个构造包括机器人单元的部件的数字表示或机器人单元的几何变换。每个技能包括使用机器人单元的机器人与物理环境交互来执行技能目标的功能描述。方法使用模拟引擎对多种设计进行模拟,其中,每个设计表征为实现过程目标的构造与技能的组合,并且确定满足一个或多个过程约束的一组可行设计。方法包括:从该组可行设计输出推荐设计。
Description
技术领域
本发明整体涉及一种自主系统,并且具体地,涉及一种用于基于自主技能执行中的约束来设计由机器人单元执行过程的方法与装置。
背景技术
在全球和高度竞争格局中,管理快速的创新周期、复杂的定制需求、以及不断增长的成本压力的需求使得传统的工业自动化系统面临不断增长的挑战。这种挑战激励了制造商从自动化逐渐转换成自主化的趋势。与自动化相反,自主化为工厂里的每个人赋予决策制定与自控能力,以在局部出现问题的情况下独立地采取行动。
在自主系统的上下文中,能够将机器指令抽象成技能,诸如物体抓取或放置。能够对这些技能进行组合,以生成合适上下文感知的应用程序。
预期自主系统在工厂里的工业使用情况较为广泛并且覆盖大范围的应用情景。在一些使用情况中,需要减少或甚至排除人类的参与。在其他情景中,自主机器能增强工厂工人的物理与智力能力。这种发展是能够实现工业4.0的上下文中所设想的柔性制造操作的技术的核心。
柔性通常以速度为代价。希望能够在工厂里的自主系统的设计与试运行中做出合理的决策,以在增加约束(例如,速度/吞吐量)时对性能进行优化。
发明内容
简言之,本发明的各方面面向一种用于将自主技能执行中的约束反馈到由机器人单元执行过程的设计中的技术。
本发明的第一方面提供一种用于设计由机器人单元执行过程的计算机实现方法。方法包括:获得过程目标以及一个或多个过程约束。方法包括:访问构造库和技能库。构造库中的每个构造包括机器人单元的部件的数字表示或机器人单元的几何变换。技能库中的每个技能包括使用机器人单元的机器人与物理环境交互来执行技能目标的功能描述。方法包括:使用模拟引擎对多种设计进行模拟,其中,每个设计表征为实现过程目标的构造与技能的组合,并且由此获得满足一个或多个过程约束的一组可行设计。该方法进一步包括:从该组可行设计输出推荐设计。
本发明的其他方面在计算系统与计算机程序产品中实现上述方法的特征。
本发明的另一方面提供一种用于设计由机器人单元执行过程的系统。系统包括:库模块,包括构造库和技能库。构造库中的每个构造包括机器人单元的部件的数字表示或机器人单元的几何变换。技能库中的每个技能包括使用机器人单元的机器人与物理环境交互来执行技能目标的功能描述。系统包括:模拟模块,包括被配置用于对多种设计进行模拟的模拟引擎,其中,每个设计表征为实现所指定的过程目标的构造与技能的组合,并且由此获得满足一个或多个指定过程约束的一组可行设计。该系统进一步包括:推荐模块,被配置用于从该组可行设计输出推荐设计。
能够通过本发明的技术实现附加的技术特征与益处。此处对本发明的实施方式及各方面进行了详细描述并且被视为是要求保护的主题的一部分。为了更好地理解,参考细节描述与附图。
附图说明
当结合所附附图进行阅读时,从下列细节描述中能够很好地理解本发明的上述及其他方面。为了易于识别对任意元件或行为的讨论,附图标记中的一个或多个最高有效位指其中首次引入该元件或行为的图号。
图1示出根据示例性实施方式的阐明系统的示意性框图。
图2示出用于表明执行封装瓶子的过程的机器人单元的基线设计的示出性实施例。
图3示出由系统基于图2中的过程目标进行评估的设计谱的实施例。
图4示出用于执行与图2相同的过程目标的机器人单元的推荐设计的一个实施例。
图5示出根据示例性实施方式的计算环境。
具体实施方式
现参考附图对与系统和方法有关的各种技术进行描述,其中,类似的附图标记始终表示类似的元件。用于在该专利文献中描述本发明的原理的下面讨论的附图以及各个实施方式仅是示出性并且不应以任意方式解释为限制本发明的范围。本领域技术人员应当理解的是,能够在任意合适的布置的装置中实现本发明的原理。应当理解的是,能够通过多个元件执行被描述为由特定系统元件执行的功能。同样,例如,元件能够被配置用于执行被描述为由多个元件执行的功能。参考示例性的非限制性实施方式对本申请的多个创新型教导进行描述。
本发明的各方面涉及一种自主系统。自主性为工厂里的每个人赋予决策制定与自控能力,以在局部出现问题的情况下单独采取行动。在常规自动化中,自动化机器人通常被编程为执行单一、重复性的任务,诸如将汽车板定位在每个车辆上的完全相同的位置上。在这种情况下,工程师通常涉及对从开始到结束的整个任务进行编程,通常利用低级代码生成各个命令。相反,在自主系统中,使用技能代替各个命令以更高的抽象级对自主机器或机器人进行编程。
在对自主机器进行编程的上下文中,以各个编程块(也被称为技能代码)表示技能,包括使用机器人与物理环境进行交互来执行指定的技能目标的功能描述。技能能够具有功能部件以及结构部件。技能是针对更高层次的抽象行为而衍生的,这些行为的核心是编程机器人如何修改环境。能够使用此处所述的技术实现的技能的示出性实施例包括打开门的技能、检测物体的技能、抓取并且拾取物体的技能、放置物体的技能等。能够将激活的技能设计成编程环境内的函数。例如,能够通过调用作为设备服务的一部分的技能函数来执行此操作。一旦被激活,技能函数则从物理环境中读出结构信息来确定其操作。
机器人单元的机械设计与装置对其能够支持的自主技能的速度和类型具有很深的影响。换言之,如果借助于机械构造,软件定义的自主技能能够动态地增加单元的成功率和吞吐量。这些构造能够是机器人单元的设备/部件的形式,诸如固定装置、馈送装置、夹具设计等、以及单元的几何布局。设计执行过程的两个维度,即,所使用的技能(软件)与机械设计,是高度相关的并且不能仅在其中一个维度上完成最优设计。
目前的技术水平在将自主技能与生产单元或产品设计的其他方面联系起来的方面存在差距。例如,如果一个技能是“拾取”技能,现有系统则提供必要的编程或配置步骤,以确保机器人确实能够拾取物体。然而,不存在除了机器人、摄像机、三爪抓取器之外的其他方面的联系。如果需要增加吞吐量或如果系统经历太多错误,系统集成商则不得不涉及到改善单元的整体设计。可替代地,需要涉及到产品设计团队并且修改产品设计。或可替代地,对技能进行编程的公司需要再次对其进行重新编程,从而利用不同的图像集对其算法进行重新训练。在所有这些情况下,引入了延迟与潜在的停机时间,并且在筒仓中制定决策。即使人类是产品或单元的最终设计者,也将当今的信息存储在筒仓中。设计团队对自主机器技能的能力没有任何预见性。系统集成商能在获取材料以及输入和输出材料的方式上存在一些约束,但其不一定能够知道其设计决策的后果。例如,如果系统仅需要将物体放在不同的箱子或箱体中,“从箱子拾取”技能能表现良好,但是,如果需要精确地插入所拾取的物体,则可能不能表现得最佳。作为另一实施例:如果需要进行定位,如果“交接技能”可用,则两个机器人臂能够执行任务,但是,能以速度和成本为代价。能够帮助机器人使物体旋转的固定装置能够降低成本(不需要第二臂)。如果吞吐量受约束,则不同的馈送器能够作为解决方案。所有这些约束使得系统集成商的工作具有挑战性。
本发明的实施例解决了在机器人单元的机械设计中,以及在一些实施例中,在产品设计和/或其他工程步骤(例如机器学习模型的训练)中,使用自主技能表现作为反馈的问题。
目前,人们努力创建传统自动化开发的生产与操作的数字化双胞胎,以使设计与操作之间的环路闭合。所公开的实施方式向前迈进了一步并且添加了自主维度,从而增加了系统的柔性,但也增加了对与机器人单元中的物理设备的更紧密耦接的不可预测性和需求。考虑到机器人单元试运行时所规定的约束,所公开的实施方式利用了高保真度的模拟来达到更佳的机器人单元设计,从而借助于协同模拟提供更合理的虚拟试运行。
现转向附图,图1示出了用于根据本发明的实施方式设计由机器人单元执行过程的系统100。广义上,系统100包括包含技能库104和构造库106的库模块102、模拟模块108、以及推荐模块110。能够将系统100的公开模块涵盖在一个或多个计算系统中。该计算系统包括耦接至存储器的处理器。可选地,系统能够包括用于显示图形用户界面(GUI)的显示器、其上记录有包括用于执行方法的指令的计算机程序的存储器。存储器还能够存储包括此处所述的库的数据集。存储器指被适配用于这种存储的任意硬件,能够包括若干物理不同的部分(例如,一个部分用于程序并且一个部分能用于数据库)。参考图5示出了计算环境的示例性实施方式。
结合系统100所公开的方法是计算机实现的。这指由至少一个计算机或计算系统执行所公开方法的步骤(或大致全部步骤)。由此,能够由计算机全自动或半自动地执行所公开的步骤。在实施例中,能够通过用户-计算机交互执行对所公开方法的至少一些步骤的触发。所需的用户-计算机交互程度能取决于所预见的自动化程度并且与实现用户愿望的需求平衡。在实施例中,该程度能是用户定义和/或预定义的。
继续参考图1,技能库104能够包括机器人单元中可用的一个或多个机器人能够执行的一组技能。技能库104中的每个技能包括使用机器人单元的机器人与物理环境交互来执行技能目标的功能描述。在一个实现方式中,技能库104能够包括每个单独技能的技能代码。在各个实施方式中,技能代码能够包括机器学习模型和/或机器视觉算法。在另一实现方式中,代替实际的技能代码,技能库104能够提供各个技能的明确特征。除技能的功能描述之外,该特征能够包括各个技能的一个或多个技能性能参数,诸如执行时间、错误率、成本等。
构造库106包括机器人单元的可用部件的数字表示和/或机器人单元的不同几何变换。例如,机器人单元的部件能够包括一种或多种类型的机器人、固定装置、抓取器、馈送器等。几何变换能够包括机器人单元的不同几何布局,诸如摄像机放置、输入物体方位等。例如,构造的数字表示能够包括包含从中生成几何结构的规范的CAD模型。在其他实施方式中,代替或除采用CAD模型之外,能够利用作为成像数据的传感器数据生成构造的数字表示。
例如,作为机器人单元的数字化双胞胎,模拟模块108是可用的,其通过利用单元的物理部件与几何布局的数字表示(例如,CAD模型)来提供机器人单元的高保真度数字模型。模拟模块108包括被配置用于模拟由机器人单元执行过程的基于物理的模拟引擎(也被称为“物理引擎”)。机器人单元的执行过程包括至少一个机器人在由表示单元的机械设计的构造组合定义的物理环境中执行一个或多个技能(通常是技能的组合),以实现过程目标。
所公开的实施方式利用模拟模块108基于一个或多个指定的过程约束生成一组设计,以实现指定的过程目标。过程目标定义过程的整体目标或任务(在图2所示的实施例中,诸如将瓶子封装在箱子中)。过程约束能够定义整体过程的可接收范围内的性能参数(例如,执行时间、错误率、成本等)。在一个实施方式中,经由用户接口(例如,GUI)基于输入112获得过程目标以及一个或多个过程约束。在其他实施方式中,能够基于已经存储在计算系统的存储器中的信息自动获得相同的输入112。
基于从库模块102访问的信息,模拟模块108使用模拟引擎来模拟多种设计,其中,每个设计表征为实现过程目标的构造与技能的组合。每个设计的模拟涉及:测量设计的整体性能,即,测量使用设计所执行的整体过程的一个或多个性能参数。在第一实现方式中,模拟引擎能够执行设计中包括的每个单独技能的技能代码(即,激活或调用功能),以测量各个技能的一个或多个技能性能参数,并且由此测量整体设计性能。在第二实现方式中,模拟引擎能够基于设计中包括的每个单独技能的一个或多个技能性能参数来测量整体设计性能,其中,技能库中明确指定技能性能参数。基于所测量的整体设计性能,获得满足指定过程约束的一组可行设计。
在一个实施方式中,模拟模块108能够被配置用于基于生成设计的过程来生成用于模拟的设计。为此,模拟模块108能够包括基于指定过程约束生成设计的基于机器学习的生成模型,例如,包括神经网络。初始训练阶段能够包括迭代过程:利用实现由模拟引擎所模拟的过程目标的技能与构造的组合(分别为技能库104和构造库106),使用生成模型生成设计,以测量整体设计性能;并且调整模型参数(例如,权重、神经网络的偏置),以使得所测量的整体设计性能满足指定约束。在后一阶段,生成模型能够使用来自技能库104的可用技能与来自构造库106的可用构造生成实现满足过程约束的过程目标的多种可行设计。
如图1中所示,在所公开的实施方式中,通过生成基线设计114的最优变换(通过生成设计或其他技术)来生成用于模拟的设计。通常,基线设计能够包括机器人单元的当前系统设计、或另一参考设计。能够通过识别基线设计中的至少一个瓶颈技能来生成基线设计的变换。将瓶颈技能识别为其执行在设计中引入最大约束的技能,从而使得设计不适合于满足指定的过程约束。通过测量运行时的技能性能参数,例如,通过模拟或使用现实世界的数据(在现有系统设计的情况下),能够确定基线设计的瓶颈技能。基于所识别的瓶颈技能,能够通过对与执行瓶颈技能有关的构造进行混排和/或生成消除瓶颈技能的其他组合的技能来生成变换。
在一个实施方式中,模拟模块108能够基于将过程目标分解成技术问题并且评估与每个问题有关的设计参数谱(构造和/或技能)来生成设计(例如,见图3)。能够基于领域专业知识识别与每个问题有关的设计参数谱。在一个实施方式中,基于专家系统的人工智能能够用于此目的。例如,所识别的一个技术问题能涉及机器人对物体的运输。如果确定(例如,通过模拟或现实世界的数据)物体太重并且抓取器不能施加足够的吸力,由此物体掉落并且需要重新抓取,模拟模块108则能够评估使吸力最大化的可替代吸盘的直径或形状。
推荐模块110产生从一组可行设计推导的输出116,以供工程师或设计者进行评估。能够经由允许用户观看并且在一些情况下基于推荐设计控制模拟过程的执行的形式的GUI进行输出116。推荐模块110的输出116通常包括人类设计者能够审阅的大量设计选项。每个设计选项表征为构造(单元的机械硬件)与技能的组合。
在一些实施方式中,能够通过模拟模块108生成非常大量的可行设计,在这种情况下,推荐模块110能够仅选择性地输出该组可行设计中的少量子集设计。在一个示例性的实施方式中,推荐模块110能够包括通过例如选择指定设计或改变输入值(例如,约束)来对可行区域进行精细调整的算法。在另一示例性的实施方式中,推荐模块110能够包括彼此大致相似的集群设计的聚类算法并且仅输出集群设计的一个代表设计。
如果构造库106中不存在能够执行变换的装置,推荐模块110则能够在输出116中指出此情况。随后,设计者能够设计该部件并且将其添加到单元中。
在各个实施方式中,能够建立对能够简化或加速机器人单元的工作的不同生产阶段的其他反馈环路。一个实施例是为产品设计提供自动反馈。另一实施例是为工程/机器学习管道提供自动反馈。
在一个实施方式中,推荐模块110的输出116能够包括基于执行所识别的瓶颈技能的技能代码的指定推荐。在第一示例性实施方式中,瓶颈技能的技能代码能够基于机器视觉算法。能由于该技能而产生瓶颈,例如,由于减少平均吞吐量的错误检测。在这种情况下,执行技能代码包括:模拟由摄像机捕捉的图像。在这种情况下,推荐模块110能够输出改变由机器人单元处理的产品的设计的推荐。例如,推荐能够包括产品设计中的区别特征,以使得其更易于被机器视觉算法识别。在第二示例性的实施方式中,瓶颈技能的技能代码能够基于机器学习模型。例如,“拾取”技能的技能代码能够基于深度学习方法。能由于该技能而产生瓶颈,例如,由于难以预测指定物体的成功拾取率,其进而使得整体操作延迟。在这种情况下,推荐模块110能够输出推荐,以对机器学习模型进行重新训练。例如,推荐能使用不同的图像集或物体对机器学习模型的“拾取”技能进行训练。
基于参考图2至图4的示出性实施例,能够更好地理解上面公开的方法。
图2示出了用于执行封装瓶子的过程的机器人单元的基线设计200。附图的顶部描绘了基线设计200中用于实现过程目标的技能以及每个技能的相应执行时间,即,将瓶子封装到详细中。附图的底部示出了根据基线设计200的机器人单元的机械设计。由于瓶子的最终方位较为重要,自主系统首先需要识别瓶子的方位,然后,需要拾取瓶子、计算最终方位、并且借助于第二机器人执行重新定位动作,并且最后,将瓶子插入到箱子中。如图2中所示,第一机器人202执行识别瓶子204的输入方位的技能1(姿势评估)和拾取瓶子204的技能2(拾取)。然后,第一机器人202结合第二机器人206执行实现瓶子204的所需最终方位的技能3(定向)。最后,第二机器人206执行将瓶子204插入到箱子208中的最终方位上的技能4(插入)。
由于瓶子能具有任意输入方位,自主系统具有最大柔性,从而以速度为代价。我们假设,引入过程约束将整体过程执行时间限制为10ms。基线设计200具有20ms的过程执行时间并且因此不再满足指定的过程约束。所公开的方法能够使用技能库与构造库(包括潜在设备与几何变换)找出基线设计200的最优变换,以通过降低柔性来增加速度。在图2的实施例中,能够确定姿势评估与方位技能使得操作放慢并且因此被识别为瓶颈技能。在识别瓶颈技能之后,所公开的方法通过模拟全部库部件而在几何上寻找促进任务的方式或甚至首先排除对这些瓶颈技能的需求。方法能涉及:生成性地模拟成千或数百万的组合并且返回设计者的大量试验性设计进行评估。
图3示出了由系统基于图2中的示出性实施例的过程目标进行评估的设计参数谱的实施例。最左侧列302上的项指整体过程目标能够分解成的指定问题。列304中的项包括与相应问题有关的设计参数。
图4示出了用于执行与图2相同的过程目标的机器人单元的推荐设计400的一个实施例。例如,能够通过评估图3中所示的设计谱来生成设计400,以围绕所识别的瓶颈技能对构造进行混排和/或排除这些瓶颈技能。根据该推荐设计400,在输入处引入馈送器402,以使瓶子204自动旋转至所需方位来实现所需的最终方位。这排除了设计400中对第二机器人的需求,并且还排除了基线设计200中所识别的瓶颈技能。设计400中的构造与技能的组合通过牺牲柔性来满足指定的过程约束,以实现较高的速度或吞吐量。
所公开的实施方式为通过使用自主技能所施加的约束的机器人单元的系统集成商和终端用户提供更好的透明度并且提供其到单元的机械设计的链接。所公开的实施方式导致产生若干技术性益处,包括模块架构、最优机械-软件设计、以及成本降低。预期这将明显影响诸如自主系统的基于技能编程的当前趋势。
图5示出了包括计算机系统502的示例性计算环境,在该计算环境内,能够实现本发明的各方面。在一个实施方式中,计算环境能够包括包含此处所述的一个或多个计算系统的云计算环境。本领域技术人员已知诸如计算机系统502和计算环境500的计算机与计算环境并且由此此处进行简要地描述。
如图5中所示,计算机系统502能够包括诸如系统总线504的通信机制或用于与计算机系统502通信信息的其他通信机制。计算机系统502进一步包括与系统总线504耦接、用于处理信息的一个或多个处理器506。处理器506能够包括本技术领域中已知的一个或多个中央处理单元(CPU)、图形处理单元(GPU)、或任意其他处理器。
计算机系统502还包括耦接至系统总线504、用于存储由处理器506执行的信息和指令的系统存储器508。系统存储器508能够包括易失性和/或非易失性存储器的形式的计算机可读存储介质,诸如只读存储器(ROM)510和/或随机存取存储器(RAM)。系统存储器RAM512能够包括其他动态存储设备(例如,动态RAM、静态RAM、以及同步DRAM)。系统存储器ROM510能够包括其他静态存储设备(例如,可编程ROM、可擦除PROM、以及电可擦除PROM)。此外,系统存储器508能够用于在处理器506执行指令的过程中存储临时变量或其他中间信息。包含有助于诸如在启动过程中在计算机系统502内的元件之间传输信息的基本例程的基本输入/输出系统514(BIOS)能够存储在系统存储器ROM 510中。系统存储器RAM 512能够包含处理器506可立即访问和/或当前操作的数据和/或程序模块。此外,例如,系统存储器508能够包括操作系统516、应用程序518、其他程序模块520、以及程序数据522。
计算机系统502还包括耦接至系统总线504的磁盘控制器524,以控制用于存储信息和指令的一个或多个存储设备,诸如磁性硬盘526和可移除介质驱动528(例如,软盘驱动、压密盘驱动、磁带驱动、和/或固态驱动)。能够使用适当的设备接口(例如,小型计算机系统接口(SCSI)、集成设备电子件(IDE)、通用串行总线(USB)、或火线)将存储设备添加至计算机系统502。
计算机系统502还能够包括耦接至系统总线504的显示控制器530,以控制诸如阴极射线管(CRT)或液晶显示器(LCD)等的显示器532将信息显示给计算机用户。计算机系统502包括用户输入接口534以及一个或多个输入设备,诸如键盘536与点击设备538,以与计算机用户交互并且将信息提供给一个或多个处理器506。例如,定点设备538能够是用于将方向信息和命令选择通信给一个或多个处理器506并且用于控制显示器532上的光标移动的鼠标、光笔、轨迹球、或指针。显示器532能够提供允许输入以补充或取代定点设备538对方向信息和命令选择的通信的触摸屏接口。
计算系统502还包括耦接至系统总线504的I/O适配器546,以使计算系统502连接至可控物理设备,诸如机器人。在图5所示的实施例中,I/O适配器546连接至机器人控制器548,其包括例如用于控制物理设备或机器人的各个部位(例如,臂、底部等)的线性和/或角度位置的一个或多个电机。
计算机系统502能够响应执行诸如系统存储器508的存储器中所包含的一个或多个指令的一个或多个序列的一个或多个处理器506来执行本发明的实施方式的处理步骤的一部分或全部。能够将该指令从另一计算机可读存储介质读取到系统存储器508中,诸如磁性硬盘526或可移除介质驱动528。磁性硬盘526能够包含本发明的实施方式所使用的一个或多个数据库与数据文件。能够对数据库内容和数据文件进行加密来提高全息性。还能够在多处理布置中采用处理器506来执行系统存储器508中所包含的指令的一个或多个序列。在可替代的实施方式中,能够使用硬接线电路代替软件指令或结合软件指令使用硬接线电路。由此,实施方式并不精选与硬件电路与软件的任意特定的组合。
计算机系统502能够包括用于保存根据本发明的实施方式所编程的指令并且用于包含此处所述的数据结构、图表、记录、或其他数据的至少一个计算机可读存储介质或存储器。此处使用的术语“计算机可读存储介质”指参与将指令提供给一个或多个处理器506而执行的任意介质。计算机可读存储介质能够采取多种形式,包括但不限于非暂时性、非易失性介质、易失性介质、以及传输介质。非易失性介质的非限制性实施例包括光盘、固态驱动、磁盘、磁光盘,诸如磁性硬驱动526或可移除介质驱动528。易失性介质的非限制性实施例包括动态存储器,诸如系统存储器508。传输介质的非限制性实施例包括同轴电缆、铜线、以及光纤,包括构成系统总线504的电线。传输介质还能够采用声学或光波的形式,诸如在无线电波与红外数据通信过程中生成的波。
计算环境500能够进一步包括使用到一个或多个远程计算机的逻辑连接在网络环境中操作的计算机系统502,诸如远程计算设备544。远程计算设备544能够是个人计算机(笔记本型或台式型)、移动设备、服务器、路由器、网络PC、对等设备或其他常见网络节点,并且通常包括上面关于计算机系统502所描述的许多或全部元件。当在网络环境中使用时,计算机系统502能够包括用于通过诸如因特网的网络540建立通信的调制解调器542。调制解调器542能够经由网络接口546或经由另一适当的机制连接至系统总线504。
网络540能够是本技术领域中通常已知的任意网络或系统,包括因特网、内联网、局域网(LAN)、广域网(WAN)、城域网(MAN)、直接连接或串联连接、蜂窝电话网络、或能够便于在计算机系统502与其他计算机(例如,远程计算设备544)之间进行通信的任意其他网络或介质。网络540能够是有线、无线、或其组合。能够使用以太网、通用串行总线(USB)、RJ-6、或本技术领域中通常已知的任意其他有线连接实现有线连接。能够使用Wi-Fi、WiMAX、以及蓝牙、红外、蜂窝网络、卫星、或本技术领域中通常已知的任意其他无线连接方法实现无线连接。此外,若干网络能够单独或彼此结合来工作,以便于在网络540内进行通信。
能够通过硬件与软件的组合实现本发明的实施方式。此外,本发明的实施方式能够包括具有例如非易失性计算机可读存储介质的制造制品(例如,一个或多个计算机程序产品)。例如,计算机可读存储介质中能够涵盖用于提供并且促进本发明的实施方式的机制地计算机可读程序指令。能够包括作为计算机系统的一部分或单独出售的制造制品。
计算机可读存储介质能够包括保存并且存储供指令执行设备使用的指令的有形设备。例如,计算机可读存储介质能够是、但不限于电子存储设备、磁性存储设备、光学存储设备、电磁存储设备、半导体存储设备、或上述任意合适的组合。能够将此处所述的计算机可读程序指令从计算机可读存储介质下载至相应的计算/处理设备或经由网络下载至外部计算机或外部存储设备,例如,因特网、局域网、广域网、和/或无线网络。
图中的系统与过程不是唯一的。能够根据本发明的原理推导其他系统、过程、以及菜单,以实现相同的目标。尽管已经参考具体实施方式对本发明进行了描述,然而,应当理解的是,此处示出和描述的实施方式与变体方案仅用于说明的目的。在不偏离本发明的范围的情况下,本领域技术人员能够实现对当前设计的修改。
Claims (15)
1.一种用于设计由机器人单元执行过程的计算机实现方法,所述方法包括:
获得过程目标以及一个或多个过程约束;
访问构造库,每个构造包括所述机器人单元的部件的数字表示或所述机器人单元的几何变换;
访问技能库,每个技能包括使用所述机器人单元的机器人与物理环境交互来执行技能目标的功能描述;
使用模拟引擎对多种设计进行模拟,其中,每个设计表征为实现过程目标的构造与技能的组合,并且由此获得满足所述一个或多个过程约束的一组可行设计;并且
从该组可行设计输出推荐设计。
2.根据权利要求1所述的方法,包括:基于所述一个或多个过程约束,使用基于机器学习的生成模型生成用于模拟的设计。
3.根据权利要求1和2中任一项所述的方法,包括:通过基于识别基线设计中的至少一个瓶颈技能生成所述基线设计的变换来生成用于模拟的设计。
4.根据权利要求3所述的方法,包括:基于执行瓶颈技能的技能代码来输出推荐。
5.根据权利要求4所述的方法,其中,瓶颈技能的技能代码基于机器视觉算法,并且其中,推荐包括由所述机器人单元处理的产品的设计变化。
6.根据权利要求4所述的方法,其中,瓶颈技能的技能代码基于机器学习模型,并且其中,推荐包括对所述机器学习模型的重新训练。
7.根据权利要求1至3中任一项所述的方法,其中,模拟引擎对每个设计的模拟包括:基于设计中包括的每个单独技能的一个或多个技能性能参数来测量设计的整体性能,其中,在所述技能库中明确指定技能性能参数。
8.根据权利要求1至6中任一项所述的方法,其中,所述模拟引擎对每个设计进行模拟包括:执行设计中包括的每个单独技能的技能代码,以测量单独技能的一个或多个技能性能参数,并且由此测量设计的整体性能。
9.根据权利要求7和8中任一项所述的方法,其中,所述一个或多个技能性能参数选自由执行时间、错误率、以及成本构成的组。
10.一种包括指令的非暂时性计算机可读存储介质,当由计算机处理所述指令时,所述指令将所述计算机配置用于执行根据权利要求1至9中任一项所述的方法。
11.一种计算装置,包括:
处理器;和
存储指令的存储器,当由处理器执行所述指令时,所述指令将所述计算装置配置用于执行根据权利要求1至10中任一项所述的方法。
12.一种用于设计由机器人单元执行过程的系统,包括:
库模块,所述库模块包括:
构造库,每个构造包括所述机器人单元的部件的数字表示或所述机器人单元的几何变换;
技能库,每个技能包括使用所述机器人单元的机器人与物理环境交互来执行技能目标的功能描述;以及
模拟模块,所述模拟模块包括被配置用于对多种设计进行模拟的模拟引擎,其中,每个设计表征为实现指定的过程目标的构造与技能的组合,并且由此获得满足一个或多个指定过程约束的一组可行设计;与
推荐模块,所述推荐模块被配置用于从该组可行设计中输出推荐设计。
13.根据权利要求12所述的系统,其中,所述模拟模块包括基于机器学习的生成模型,以基于一个或多个过程约束生成用于模拟的设计。
14.根据权利要求12和13中任一项所述的系统,其中,所模拟模块被配置用于通过基于识别基线设计中的至少一个瓶颈技能生成所述基线设计的变换来生成用于模拟的设计。
15.根据权利要求14所述的系统,其中,推荐模块被配置用于基于执行瓶颈技能的技能代码来输出推荐。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP21163684.0A EP4060439A1 (en) | 2021-03-19 | 2021-03-19 | System and method for feeding constraints in the execution of autonomous skills into design |
EP21163684.0 | 2021-03-19 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115114683A true CN115114683A (zh) | 2022-09-27 |
Family
ID=75111478
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210278896.4A Pending CN115114683A (zh) | 2021-03-19 | 2022-03-21 | 用于将自主技能执行中的约束反馈到设计中的系统与方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220297295A1 (zh) |
EP (1) | EP4060439A1 (zh) |
CN (1) | CN115114683A (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3587046A1 (de) * | 2018-06-28 | 2020-01-01 | Siemens Aktiengesellschaft | Verfahren und vorrichtung zum rechnergestützten ermitteln von regelparametern für eine günstige handlung eines technischen systems |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3379434A1 (en) * | 2017-03-22 | 2018-09-26 | Tata Consultancy Services Limited | A system and method for design of additively manufactured products |
WO2018194965A1 (en) * | 2017-04-17 | 2018-10-25 | Siemens Aktiengesellschaft | Mixed reality assisted spatial programming of robotic systems |
WO2019066979A1 (en) * | 2017-09-30 | 2019-04-04 | Siemens Aktiengesellschaft | AUTONOMOUS ENGINEERING SYSTEMS WITH REUSABLE SKILLS |
CN111797446A (zh) * | 2019-04-08 | 2020-10-20 | 来临机器人有限公司 | 柔性制造系统和方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5523960A (en) * | 1994-08-10 | 1996-06-04 | Samsung Electronics Co., Ltd. | Evaluation method of assembly sequences |
WO2018031005A1 (en) * | 2016-08-10 | 2018-02-15 | Siemens Aktiengesellschaft | Skill interface for industrial applications |
-
2021
- 2021-03-19 EP EP21163684.0A patent/EP4060439A1/en active Pending
-
2022
- 2022-02-08 US US17/666,836 patent/US20220297295A1/en active Pending
- 2022-03-21 CN CN202210278896.4A patent/CN115114683A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3379434A1 (en) * | 2017-03-22 | 2018-09-26 | Tata Consultancy Services Limited | A system and method for design of additively manufactured products |
WO2018194965A1 (en) * | 2017-04-17 | 2018-10-25 | Siemens Aktiengesellschaft | Mixed reality assisted spatial programming of robotic systems |
WO2019066979A1 (en) * | 2017-09-30 | 2019-04-04 | Siemens Aktiengesellschaft | AUTONOMOUS ENGINEERING SYSTEMS WITH REUSABLE SKILLS |
CN111797446A (zh) * | 2019-04-08 | 2020-10-20 | 来临机器人有限公司 | 柔性制造系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
EP4060439A1 (en) | 2022-09-21 |
US20220297295A1 (en) | 2022-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112783018B (zh) | 工业环境模拟下的机器人数字孪生控制 | |
CN113039499B (zh) | 通过自主机器支持任务的对象标记 | |
US11213947B2 (en) | Apparatus and methods for object manipulation via action sequence optimization | |
CN112784328B (zh) | 用于开发自动化系统模型的系统和方法 | |
US20220156433A1 (en) | Industrial network communication emulation | |
JP7203635B2 (ja) | ロボティクス環境のための制御システムソリューションを生成するためのシステムおよび方法 | |
US11554482B2 (en) | Self-learning industrial robotic system | |
US11675936B2 (en) | Unifying multiple simulation models | |
CN115916477A (zh) | 机器人演示学习的技能模板分发 | |
EP4059671A1 (en) | Training collaborative robots through user demonstrations | |
WO2018176025A1 (en) | System and method for engineering autonomous systems | |
CN114265329B (zh) | 工业网络仿真 | |
CN111164522A (zh) | 设计具有可重复使用技能的自主系统 | |
CN115114683A (zh) | 用于将自主技能执行中的约束反馈到设计中的系统与方法 | |
CN117769724A (zh) | 使用深度学习的对象检测和分类的合成数据集创建 | |
US12115670B2 (en) | Equipment specific motion plan generation for robotic skill adaptation | |
KR20200097896A (ko) | 매니퓰레이터 urdf파일 생성장치 및 방법 | |
EP4298562A1 (en) | Imitation learning in a manufacturing environment | |
Solberg et al. | Utilizing Reinforcement Learning and Computer Vision in a Pick-And-Place Operation for Sorting Objects in Motion | |
Danielsen | Vision-based robotic grasping in simulation using deep reinforcement learning | |
EP3974928B1 (en) | Wiring diagram manager and emulator | |
Aiello | Robotic arm pick-and-place tasks: Implementation and comparison of approaches with and without machine learning (deep reinforcement learning) techniques | |
Williams | Real-Time Hybrid Visual Servoing of a Redundant Manipulator via Deep Reinforcement Learning | |
Xu et al. | Cognitive digital twin-enabled multi-robot collaborative manufacturing: Framework and approaches |
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 |