用于装配任务进行排序的系统和方法与流程

未命名 08-15 阅读:70 评论:0

用于装配任务进行排序的系统和方法
1.相关申请
2.本技术要求发明人sabarish kuduwa sivanath和zheng xu于2022年2月9日提交的第63/308,339号美国临时专利申请的权益,该美国临时专利申请的代理人案卷号为ebot22-1002psp,标题为“system and method for sequencing assemblytasks”,出于各种目的,该美国临时专利申请的公开内容通过引用全部并入本文。
技术领域
3.本发明总体上涉及一种用于控制机器人系统操作的系统和方法。特别是,本公开涉及一种允许用户定义任务的序列的用户界面,从而促进机器人系统执行任务的序列。


背景技术:

4.先进的机器人技术极大地改变了产品的生产方式,并导致了第四次工业革命(也称为工业4.0)。第四次工业革命通过允许计算机和机器人相互连接和通信从而最终在没有人类参与的情况下做出决策,来改进在第三次工业革命期间发展的计算和自动化技术。信息物理系统、物联网(iot)和系统互联网(ios)的组合使工业4.0成为可能,并且使智能工厂成为现实。智能机器(例如机器人)可以变得更智能,因为它们可以访问更多数据并学习新技能,这可以使工厂更高效、更高产和浪费更少。最终,一个由数字连接的智能机器的网络可以创造和共享信息,这将导致真正的“熄灯制造”,其中不需要人类监督。
5.随着三维(3d)计算机视觉技术的发展,电气/电子行业已开始在其装配线中使用机器人来代替人类工人。装配电子设备(尤其是消费电子产品,如智能手机、数码相机、平板电脑或笔记本电脑等)通常需要数百项精细的任务,诸如放置部件、插入连接器、铺设电缆等。更重要的是,这些任务需要以特定的顺序来执行,以成功地装配电子设备。在制造环境中,相同的机器人可以用于装配不同种类的电子设备。任务的类型和执行这些任务的对应顺序可以因设备而不同。配置机器人以不同的顺序执行不同的任务可能是耗时的,并且通常需要高度熟练的劳动力(例如,可能需要具有机器人控制系统知识的工程师来对机器人编程以执行任务的序列)。


技术实现要素:

6.一个实施例可提供一种用于配置机器人系统的方法和系统。在操作期间,该系统可以在图形用户界面上向用户呈现包括多个部件的工作场景的图像,并且从用户接收操作命令的序列。相应的操作命令可以对应于图像中的像素位置。对于每个操作命令,系统可以基于图像确定要在工作场景中的对应位置执行的任务,并且基于接收到的操作命令的序列生成有向图。有向图中的每个节点可以对应于任务,并且有向图中的每个有向边可以对应于任务执行顺序,从而促进机器人系统基于操作命令的序列执行任务的序列。
7.在该实施例的变体中,图形用户界面可包括触摸屏显示器,并且相应的操作命令可对应于用户敲击图像中的像素位置。
8.在该实施例的变体中,确定要在对应位置执行的任务可包括将图像中的像素位置转换为工作场景中的对应位置,并识别位于工作场景中的对应位置的部件。
9.在进一步的变体中,该系统可访问部件库,以获取与所识别的部件相关联的信息,并向用户呈现与所识别的部件相关联的信息,以允许用户验证或修改该信息。
10.在进一步的变体中,与该部件相关联的信息可包括以下一项或多项:该部件的三维模型、与该部件相关联的操作类型和要耦合到该部件的第二部件。
11.在该实施例的变体中,确定任务可包括接收用户输入,该用户输入指示要放置在工作场景中的对应位置的部件。
12.在该实施例的变体中,响应于用户命令,系统可以控制机器人系统基于有向图在第二工作场景中执行任务的序列。
13.在进一步的变体中,控制机器人系统执行任务的序列可包括捕捉第二工作场景的图像;基于捕捉的图像为第二工作场景重建有向图;对于所重建的有向图中的每个节点,获取与对应于该节点的任务相关联的任务信息;以及由机器人系统的控制器基于获取的任务信息生成运动命令。
14.在该实施例的变体中,任务信息可包括以下一项或多项:位置信息、部件信息和操作类型信息。
15.在进一步的变体中,操作类型信息可指示任务包括插入任务还是放置任务。
16.一个实施例可提供一种用于配置机器人系统的装置。该装置可以包括图形用户界面,以呈现包括多个部件的工作场景的图像,并从用户接收操作命令的序列。相应的操作命令可以对应于图像中的像素位置。该装置还可以包括计算机视觉系统,用于针对每个操作命令并基于该图像来确定要在工作场景中的对应位置执行的任务,以及图构建单元,用于基于接收到的操作命令的序列来生成有向图。有向图中的每个节点可以对应于任务,并且有向图中的每个有向边可以对应于任务执行顺序,从而促进机器人系统基于操作命令的序列执行任务的序列。
附图说明
17.图1示出了根据一个实施例的示例性机器人系统。
18.图2示出了根据一个实施例的用于基于用户输入构建图的示例性场景。
19.图3示出了根据一个实施例的由人机界面(hmi)装置呈现的示例性图形用户界面(gui)。
20.图4呈现了流程图,该流程图示出了根据一个实施例的用于配置任务序列的示例性过程。
21.图5a呈现了流程图,该流程图示出了根据一个实施例的用于执行任务序列的示例性过程。
22.图5b示出了根据一个实施例的示例性图重建场景。
23.图6显示了根据一个实施例的用于配置机器人系统的示例性人机界面(hmi)装置的框图。
24.图7示出了根据一个实施例的促进hmi系统操作的示例性计算机系统。
25.在图中,相同的参考数字指代相同的图元素。
具体实施方式
26.呈现以下描述以使得任何本领域技术人员能够制造和使用实施例,并以下描述是在特定应用及其要求的背景下提供的。对本公开的实施例的各种修改对于本领域技术人员来说将是显而易见的,并且本文定义的一般原理可以应用于其他实施例和应用,而不脱离本公开的精神和范围。因此,本发明不限于所示的实施例,而是符合与本公开的原理和特征一致的最宽范围。
27.综述
28.本文所描述的实施例解决了机器人系统高效配置的技术问题。更具体地,该解决方案利用机器人系统的感知(即计算机视觉),同时向用户提供用户界面以通过该用户界面配置机器人系统。用户界面可以包括场景显示区域,该场景显示区域显示由计算机视觉系统的摄像机捕捉的工作场景的图像。工作场景可以包括由机器人操作的多个部件,并且计算机视觉系统可以具有“理解”工作场景的能力(例如,识别或找到感兴趣的部件、测量部件的尺寸、计算用于抓取部件的抓取器的姿势等)。为了将机器人系统配置为自动执行任务的序列,用户可以通过点击/敲击所显示的图像,基于在序列中的任务顺序依次选择多个部件或位置。每次选择部件或位置时,用户还可以定义要在该部件或位置上执行的操作类型(例如,插入或放置操作)。基于用户的输入,系统可以生成表示任务序列的有向图,该图中的每个节点对应于机器人要执行的任务。该有向图可以存储在任务序列数据库中。在机器人操作期间,为了执行特定的任务序列,机器人系统可以访问任务序列数据库,以获取对应于特定任务序列的有向图。然后机器人系统可以通过执行与有向图中的节点相对应的任务来“重建”有向图。
29.具有三维计算机视觉的机器人系统
30.高效的机器人系统可以模仿人类,并且可以包括手臂/手、眼睛和大脑。像人类的手臂一样,机器人手臂可以使用其手和手指(例如,末端执行器)来拾取或抓取感兴趣的部件,将该部件带到所需的安装位置,并安装该部件。像人类使用眼睛来引导手臂运动一样,机器人系统可以使用计算机视觉来引导机器人手臂的运动。人类手臂的运动由大脑控制,并且类似地,机器人手臂的运动由机器人控制器控制,机器人控制器使用由计算机视觉提供的视觉信息来确定抓取器的姿势,以便执行某个任务或任务的序列。在传统方法中,熟练的工程师需要基于机器人要执行的实际任务序列(例如,用于装配特定产品的任务序列)来对机器人控制器进行编程。当机器人必须转换工作(例如,从装配一个产品到另一个产品)时,熟练的工程师需要再次对机器人控制器进行重新编程,这可能很耗时。为了简化机器人系统的配置过程(例如机器人控制器的手动编程),在本技术的一些实施例中,机器人系统可以包括用户界面(其可以是人机界面(hmi)的一部分),该用户界面促进更容易和更有效地配置机器人系统。没有机器人控制专用知识的人类操作员可以通过经由用户界面向hmi输入简单的命令来简单地“显示”机器人如何执行任务的序列。然后hmi可以与机器人控制器进行交互,以控制机器人臂执行任务序列。
31.图1示出了根据一个实施例的示例性机器人系统。机器人系统100可以包括机器人手臂102、3d计算机视觉系统104和hmi 106。在一些实施例中,机器人手臂102可以包括基座108、多个关节(例如,关节110和112)和抓取器114。多个关节的组合可以使机器人手臂102具有广泛范围的运动,并且具有六个自由度(6dof)。抓取器114可以抓取感兴趣的部件(例
如部件116)并操纵该部件(例如,将其移动到所需的位置,将其置于所需的姿势等)来执行所需的任务。
32.3d计算机视觉系统104(其可包括多个摄像机)可捕捉工作场景的图像,包括抓取器114、由抓取器114抓取的部件116和工作场景中可能呈现的其他部件。除了摄像机之外,3d计算机视觉系统104还可以包括用于基于捕捉的图像“理解”工作场景的各种机制。例如,3d计算机视觉系统104可以包括用于检测/识别部件的机制、用于测量部件尺寸的机制、用于计算抓取器姿势的机制等。
33.图1显示了三种不同的笛卡尔坐标系(例如x-y-z),包括以机器人基座为原点的坐标系(称为机器人基座坐标系),以工具/抓取器中心为原点的坐标系(称为工具中心坐标系)以及以摄像机中心为原点的坐标系(称为摄像机坐标系)。机器人控制器(图1中未示出)通常参考机器人基座坐标系控制机器人手臂102的运动。摄像机通常参考摄像机坐标系观察场景(包括观察到的抓取器114的姿势)。被抓取部件的实际姿势可以在工具中心坐标系中计算。可以使用各种机制来促进不同坐标系之间的坐标变换。例如,可以使用校准目标和机器学习技术来校准从摄像机坐标系到机器人基座坐标系的变换(这种变换被称为眼-手协调)。用于减少机器人眼-手协调中的误差的技术的更详细的描述可以在美国专利申请第17/751,228号(代理人案卷号ebot21-1001np)中找到,该专利申请题为“system andmethod for error correction and compensationfor 3d eye-to-hand coordination”,由发明人sabarishkuduwa sivanath和zheng xu于2022年5月23日提交,其公开内容通过引用并入本文。
34.hmi 106可提供图形用户界面(gui),其允许用户输入用户命令以定义任务序列。在一些实施例中,gui可以显示由3d计算机视觉系统104的摄像机捕捉的工作场景的图像。工作场景可以是设备的装配过程的快照。例如,它可能显示半装配的智能手机。在图像内可以有许多部件,一些部件被装配到设备中,并且一些部件没有被装配。用户可以通过根据预定顺序选择(例如,使用鼠标指针、光笔或手指)显示在用户界面上的多个部件来定义任务序列。每个选择可以定义要在所选部件上执行的任务。在一些实施例中,在3d计算机视觉系统104内的感知单元可以基于用户选择的像素位置来确定工作场景中的对应位置和对应位置处的部件。例如,用户可以点击或敲击图像中显示的电路部件。在3d计算机视觉系统104内的感知单元可以将屏幕上的像素位置转换为工作场景中的位置(例如,使用世界坐标系的坐标表示)。此外,在3d计算机视觉系统104内的感知单元可以识别部件的类型,并且可以访问部件库以获取部件的3d模型(例如,点云)。3d模型可以提供与部件相关联的尺寸和方向信息。
35.对于每个部件,部件库还可包括指定在部件上执行的预定义操作的信息。例如,对于电缆部件,包括在部件库中的信息可以指定要在电缆上执行的操作是插入操作。如果部件是智能手机中的摄像机单元,则部件库可以指定要在摄像机单元上执行的操作是放置操作。对于与插入操作相关联的部件,部件库还可以包括相关联的配对信息。注意,关于特定部件的相关联的配对信息指定了要插入该特定部件或与该特定部件耦合的不同部件。例如,电缆可以是接收电缆的对应电缆连接器的相关联配对,衬垫可以是对应衬垫插座的相关联配对,等等。
36.在一些实施例中,在用户选择显示图像中的部件后,gui可提示用户确认与所选部
件相关联的各种信息,诸如部件的类型、部件的尺寸(例如宽度、高度等)、要在部件上执行的操作的类型(例如,插入操作或放置操作)、部件在工作场景内的位置、相关联的部件配对、部件的颜色等。注意,部件的尺寸可以通过将最小边界框拟合到部件来确定。用户可以确认/接受呈现在用户界面上的信息,或者基于用户关于部件的知识来编辑某些信息。
37.如果用户点击/敲击图像中的空白区域(例如,没有部件的位置),在3d计算机视觉系统104内的感知单元可识别出此处没有部件,并推断对应的操作将为放置操作(即将部件放置在选定位置)。在这种场景下,gui可以提示用户输入与要放置在该位置的部件相关联的信息(例如类型或部件号)。基于用户的输入,可以从部件库中获取与待放置部件相关联的其他信息(例如对应的3d模型)。
38.在一些实施例中,3d计算机视觉系统104可包括结构光投影仪,其可将编码图像(例如空间变化的光图案)投射到工作场景上。当用户点击/敲击由hmi 106移位的图像时,在3d计算机视觉系统104内的摄像机可以捕捉具有投射的结构光图案工作场景的图像的序列。这些图像可用于获取摄像机像素位置和投影仪像素位置之间的对应关系。对于图像中的每个点,可以使用校准矩阵通过三角测量来获取世界坐标系中的对应3d点。可以使用各种对象检测技术(例如图像分割)来识别用户选择的部件。例如,可以使用基于掩模区域的卷积神经网络(mask r-cnn)分割图像。为了改进分割精度,3d计算机视觉系统104可以包括多个单色光源以获取伪彩色图像。基于伪彩色图像的图像分割的更详细描述可以在美国专利申请第18/098,427号(代理人案卷号ebot22-1001np)中找到,该专利申请题为“systemand method for improving image segmentation”,由发明人zheng xu,john w.wallerius和sabarish kuduwa sivanath于2023年1月18日提交,其公开内容通过引用并入本文。
39.一旦识别出部件,可基于由3d计算机视觉系统104计算的3d点云和部件的3d模型来估计部件的姿势。该部件的尺寸信息也可以相应地获取。
40.hmi 106还可以包括图构建单元,其可基于用户的点击/敲击操作和从部件库获取的信息构建有向图。更具体地,每个用户选择可以对应于有向图中的节点,并且图的方向(即有向边)指示用户的选择的序列。
41.图2示出了根据一个实施例的用于基于用户输入构建图的示例性场景。在图2中,gui显示包括待装配的电子设备200的工作场景。在该示例中,用户可以通过点击或敲击(在触摸屏的情况下)位置/部件202至208来依次选择电子设备200中的位置/部件。更具体地,用户首先选择对应于放置操作的位置202,然后用户选择部件204-208,其中每个部件对应于插入操作。
42.有向图210可以基于用户的选择被构建。在该示例中,图210中的节点1对应于用户对位置202的选择,而图210中的节点2-4分别对应于用户对部件204-208的选择。每个节点可以表示要在所选位置或所选部件上执行的任务。图中的每个有向边(例如,节点1和节点2之间的边)指示任务执行顺序。例如,从节点1指向节点2的边指示对应于节点2的任务应该在对应于节点1的任务执行之后执行。在该示例中,整个序列的任务执行顺序是从节点1到节点4,从而遵循用户的选择的顺序。
43.当生成有向图210中表示任务的节点时,hmi还可以在节点中存储与任务或操作相关联的信息,包括但不限于:部件类型、操作类型、位置、部件尺寸、相关联的配对信息和其
他数据。在一个示例中,位置可以根据特定坐标系(例如,摄像机坐标系或机器人外壳坐标系)表示为一组坐标(例如(x,y,z))。部件的尺寸可以包括长度、宽度、高度等。如前所讨论的,hmi可以访问部件库以获取与部件相关联的各种信息。图2示出了与节点3相关联的示例性信息。在一个实施例中,有向图也可以呈现在gui中,并且当用户将鼠标悬停或者将手指放在特定节点上方时,与该节点相关联的信息可以显示在gui中。然后用户可以确认或修改这些信息。
44.在一些实施例中,除了指示操作或任务的顺序之外,有向图210中的边还可指示连续的操作或任务的位置之间的物理距离/方向。例如,节点1和节点2之间的边可以被示为图210中的向量,并且向量的长度和方向可以分别对应于位置202和部件204之间的距离和方向。注意,当机器人系统正在执行任务序列时,连续的任务之间的机器人手臂的位移(例如,方向和距离)可以对应于有向图210中的边。
45.在图2所示的示例中,有向图是基于工作场景的一个图像生成的,并且任务序列仅包括四个任务/操作。在实践中,工作场景可以不断进化的,并且随着装配过程的进行,可以捕捉工作场景的附加图像。在一些实施例中,工作场景的多个图像可以根据任务序列逐一显示给用户。用户可以基于序列中任务的执行顺序在每个图像中选择一个或多个位置/部件。在生成的任务序列中,操作/任务的数量可以远大于四个。例如,用于装配电子设备的任务序列可以包括数十甚至数百个操作。
46.图3示出了根据一个实施例的由人机界面(hmi)装置呈现的示例性图形用户界面(gui)。图3示出了hmi的显示器(例如,触摸屏显示器)300。显示器300可以呈现可包括多个显示区域的gui302。在图3所示的示例中,四个显示区域(区域304-310)可以同时呈现在显示器300上,每个显示区域占据gui 302的一部分。在另一实施例中,不同的显示区域可以被呈现为不同的页面,每个页面占据显示器300的整个屏幕。用户可以将gui 302的视图从一页转换到下一页。
47.显示区域304可显示与用户和/或系统设置相关联的信息。用户可以经由显示区域304修改用户设置以及系统设置。
48.显示区域306呈现与hmi相关联的计算机视觉系统的摄像机视图。在机器人系统的配置期间,显示区域306可以显示由计算机视觉系统的摄像机捕捉的工作场景的图像,并且用户可以通过经由鼠标点击(或用手指敲击)所显示的图像中的某些位置来配置机器人系统。点击或敲击操作的位置和顺序对应于机器人系统要执行的任务序列,每个点击或敲击操作定义任务。在一个实施例中,gui 302可以包括邻近显示区域306的序列完成按钮。在定义了要在序列中执行的最后一个任务之后(例如,通过最后一次选择显示区域306中显示的图像中的位置/部件),用户可以点击/敲击序列完成按钮来指示任务序列被完成。
49.显示区域308可显示对应于用户定义的任务序列的有向图。该有向图可以由系统基于用户输入(即用户从显示区域306中所显示的图像中选择的位置/部件)生成。该有向图可以类似于图2中所示的图210。在一个实施例中,有向图可以在用户做出选择时同时显示,这意味着每当用户点击或敲击显示区域306中的位置(或部件)时,就可以将节点添加到显示区域中所显示的有向图中。除了节点之外,节点信息也可以显示在显示区域308中。用户必须确认或修改节点信息(例如,部件类型、操作类型、位置、部件尺寸、相关联的配对等)之后,才可以在显示区域306中进行下一个选择。在另一实施例中,在用户已经定义了整个任
务序列(即用户已经选择了所有位置/组件)之后,可以生成并显示有向图,然后用户可以查看有向图中每个节点的节点信息,以确认或修改节点信息。
50.显示区域310可显示用于执行任务序列的机器人手臂的模拟运动视图。在一些实施例中,hmi可以与机器人系统的控制器通信。例如,hmi可以向控制器发送与序列中的每个任务相关联的信息(即节点信息),并且控制器可以生成对应于任务的序列的运动命令。hmi系统中的运动模拟单元可以基于运动命令模拟机器人手臂的运动。用户可查看机器人手臂的模拟运动,以确定运动序列是否包含错误。该特征可以是可选的。
51.图4呈现了流程图,该流程图示出了根据一个实施例的配置任务序列的示例性过程。在操作期间,hmi系统可以显示(例如,在触摸屏显示器上)工作场景的图像(操作402)。该工作场景可以包括待装配的电子设备和多个部件。
52.hmi系统可从用户接收与任务序列内的任务相关联的输入(操作404)。用户输入可以是用户点击或敲击显示图像内的位置或部件。基于用户输入,hmi系统可以确定在工作场景内的对应于在显示器上的用户输入的像素位置的位置(例如坐标)、所选部件的类型和尺寸、要在该位置或部件上执行的操作的类型,以及在适用时相关联的配对(操作406)。在一些实施例中,hmi系统可以与计算机视觉系统通信,以基于图像和用户输入来确定由用户选择的部件的部件类型。例如,计算机视觉系统可以使用机器学习技术(例如,通过执行基于神经网络的图像分割)来分析图像,以检测图像中包括的部件,并识别由用户选择的部件。然后hmi系统可以访问部件库以获取与所选部件相关联的各种信息(例如,尺寸、操作类型、相关联的配对等)。
53.随后,hmi系统可以在有向图中生成对应于任务的节点(操作408)。有向图可以表示任务序列,并且节点可以表示任务序列内的任务。在一个实施例中,生成节点可以包括在节点中存储与任务相关联的各种信息(例如,任务位置、任务中涉及的部件的类型、部件的尺寸、操作类型、相关联的部件配对等)。在另一实施例中,生成节点还可以包括向用户呈现与任务相关联的各种信息,以允许用户验证和/或修改任务信息。
54.hmi系统可确定任务是否是序列中的最后一项(操作410)。在一些实施例中,hmi系统可以接收来自用户的输入,其指示最近的任务是序列中的最后一个任务。如果该任务是最后一个任务,hmi系统可以输出生成的任务序列(操作412)。在一些实施例中,hmi系统可以将任务序列输出到任务序列数据库。在一个实施例中,任务序列可以是有向图的形式(例如,图2中所示的图210)。如果任务不是序列中的最后一个,hmi系统可以接收来自用户的附加输入(操作404)。
55.一旦定义了任务序列(例如有向图),机器人系统可以被配置为自动执行整个任务序列,无需人类干预。为了执行任务序列,机器人系统可以“重建”对应于机器人系统遇到的工作场景的任务序列的有向图。机器人系统然后可以依次执行对应于重建的有向图中的节点的操作/任务,一次一个操作/任务,直到整个任务序列被完成(即重建的图中的每个节点都已经被遍历)。为了重建有向图,计算机视觉系统可以分析当前工作场景,以定位各种部件和/或用于在当前工作场景内放置部件的位置。注意,当前工作场景通常可以与机器人系统在配置步骤期间遇到的工作场景相似但不相同。计算机视觉系统可以基于对应于任务序列的原始有向图和当前工作场景内的所识别的部件/位置来重建当前工作场景的有向图。更具体地,在重建图的同时,计算机视觉系统可以从原始有向图中获取节点信息,并且然后
通过识别当前工作场景内的对应部件在重建的图中生成节点。计算机视觉系统随后可以将重建的有向图发送到机器人控制器,然后机器人控制器可以控制机器人(例如,通过发送适当的运动命令)来执行任务序列。
56.图5a呈现了流程图,该流程图示出了根据一个实施例的用于执行任务序列的示例性过程。在操作期间,该系统可以经由hmi接收与待执行的任务序列相关联的用户输入(操作502)。例如,用户可以输入命令来指定任务序列是装配特定电子设备或特定电子设备的子模块。在一个实施例中,hmi可以显示多个先前生成的任务序列,以允许用户做出选择。
57.响应于用户输入,系统可访问任务序列数据库,以获取对应于待执行任务序列的有向图(操作504)。有向图中的每个节点可以对应于任务序列内的任务。然后系统可以根据由有向图指定的顺序选择当前待处理的节点(操作506)。在一个实施例中,有向图中的节点可以基于任务的执行顺序以升序的数字顺序被索引(即具有较大索引的节点对应于较后的任务),并且系统选择具有最小索引的节点作为当前节点。
58.响应于所选节点,系统可确定与对应于该节点的任务相关联的各种信息(操作508)。任务信息可以包括但不限于:任务位置、任务中涉及的部件类型、部件尺寸、操作类型、相关联的部件配对等。
59.然后计算机视觉系统可确定操作中涉及的部件是否在摄像机视图中(操作510)。在一些实施例中,计算机视觉系统中的摄像机可以捕捉工作场景的图像,并且计算机视觉系统内的感知单元可以使用机器学习技术来识别图像内的各种部件。如果部件不在摄像机视图中,则计算机视觉系统可以搜索工作空间来定位和拾取部件(操作512)。注意,如果由当前节点指定的操作类型是插入操作,则计算机视觉系统可以被配置为定位相关联的配对。如果相关联的配对不在摄像机视图中,则计算机视觉系统可以搜索工作空间来定位和拾取相关联的配对。如果操作类型是放置操作,则计算机视觉系统可以首先定位放置点,然后确定要放置的部件是否在摄像机视图中。如果要放置的部件在摄像机视图之外,计算机视觉系统可以搜索工作空间来定位和拾取要放置的部件。
60.计算机视觉系统可随后在重建的图中生成节点(操作514)。重建的图中的节点对应于与任务序列相关联的原始有向图中的节点。当生成重建的图中的节点时,与节点相关联的信息(例如,位置、部件的类型/尺寸、操作类型、相关联的配对等)可以存储在重建的图中。注意,重建的图中的部件的位置可能与原始图中的对应部件的位置略有不同。
61.然后系统可确定整个图是否成功重建(操作516)。该系统可以比较从任务序列数据库获取的原始图和重建的图。如果重建了整个图,则系统可以将重建的图发送到机器人控制器,以控制机器人手臂执行任务序列(操作518)。更具体地,机器人控制器可以基于重建的有向图(即根据由重建的图定义的操作序列)生成适当的运动命令,并将运动命令发送到机器人手臂,使得机器人手臂执行任务序列。如果整个图还没有被重建,则对应于任务序列的有向图中的下一个节点被选择(操作506)。
62.在一些实施例中,系统可从有向图中提取附加的图特征(例如,节点距离和部件的关系方向)。该系统可以基于置信传播迭代地重建的图。图5b示出了根据一个实施例的示例性图重建场景。图5b的左图显示了对应于任务序列的有向图520。有向图520可以类似于图2中所示的有向图210。图5b的右图显示了当前工作场景530,其可以包括比有向图520中的节点所表示的部件更多的部件。
63.更具体地,当前工作场景530可包括位置532和分别对应于有向图520的节点1至节点4的部件534-538。当前工作场景530还可以包括与由有向图520中的节点表示的部件相似的部件(例如,部件540和542)。此外,当前工作场景530包括与由有向图520中的节点表示的部件不同的部件(例如,部件544-548)。
64.基于有向图520,系统确定感兴趣的部件列表。然后系统可以扫描当前工作场景530,并使用部件识别算法(例如,使用基于maskr-cnn的图像分割技术)来移除不在列表中的背景和部件(例如,部件544-548)。可以基于工作场景530中的剩余部件来构建图,初始图中的节点表示工作场景530中的剩余部件。与图中每个节点相关联的信息(例如尺寸、姿势、位置等)可以通过3d计算机视觉从部件库获取。
65.然后系统可将构建的图中的节点与原始有向图中的节点进行匹配。如果原始图中的每个节点可以唯一地匹配(基于组件类型和大小)到所构建的图中的对应节点,则该图已经成功地被重建。如果不可以,则可以使用置信传播来迭代地构建(匹配)该图。由边连接的两个节点的边际概率可以使用节点和边缘特征来计算。在该示例中,边缘特征可以包括部件之间的距离。最大化该置信度的图配置可以被认为是最终匹配,并作为重建的图输出。
66.图6显示了根据一个实施例的用于配置机器人系统的示例性hmi装置的框图。hmi装置600可以促进人类用户和机器人系统之间的交互。hmi装置600可以包括显示器602、用户界面604、计算机视觉界面606、机器人控制器接口608、图构建单元610、可选的运动模拟单元612、任务序列数据库614和部件库616。
67.显示器602可为传统的显示器或触摸屏显示器。用户界面604可以呈现在显示器602上。用户界面604允许用户查看机器人系统的状态并输入命令以配置机器人系统。如果显示器602是触摸屏显示器,则用户可以使用触摸手势经由用户界面604输入命令。
68.摄像机接口606允许hmi装置600与计算机视觉系统通信。由计算机视觉系统的摄像机捕捉的工作场景的图像可以通过摄像机接口606发送到hmi装置600。
69.机器人控制器接口608促进hmi装置600和机器人控制器之间的通信。hmi装置600可以将任务信息(例如,任务位置、任务中涉及的部件等)发送到机器人控制器,使得机器人控制器可以计算机器人手臂的姿势,并生成要发送到机器人手臂的运动命令。
70.图构建单元610可负责在用户配置任务序列的配置阶段期间构建有向图。更具体地,在机器人的配置阶段期间,每次用户定义任务(例如,通过选择工作场景的图像中的部件),图构建单元610可以在有向图中添加对应于该任务的节点。与任务相关联的各种信息(例如,位置、部件的类型/大小、操作类型、相关联的配对等)可以由计算机视觉系统确定,并经由摄像机接口606发送到图构建单元610。图构建单元610又可以将这些信息存储在对应的节点中。在机器人的操作阶段期间,图构建单元610可以重建对应于由机器人系统正在执行的任务序列的图。更具体地,每次机器人系统完成任务时,图构建单元610可以在重建的图中添加节点。
71.可选的运动模拟装置612可模拟机器人手臂的运动以执行任务序列。在一些实施例中,运动模拟单元612可以经由机器人控制器接口608接收来自机器人控制器的运动命令,并且可以根据接收到的运动命令模拟机器人手臂的运动。模拟的运动可以显示在显示器602上。
72.任务序列数据库614可存储生成的任务序列(例如,由图构建单元610构建的有向
图)。图中的每个节点对应于任务,与该任务相关联的各种信息存储在该节点中。机器人控制器可以基于存储在节点中的任务信息生成运动计划。部件库616可以存储与任务序列中涉及的各种部件相关联的信息。在一些实施例中,部件库616可以存储部件的3d模型(例如,3d点云)。
73.图7示出了根据一个实施例的促进hmi系统操作的示例性计算机系统。计算机系统700包括处理器702、存储器704和存储设备706。此外,计算机系统700可以耦合到外围输入/输出(i/o)用户设备710,例如显示设备712、键盘714和定点设备716。存储设备706可以存储操作系统720、计算机视觉控制系统722和数据740。
74.hmi系统722可包括指令,当由计算机系统700执行时,可以使计算机系统700或处理器702执行本公开中所述的方法和/或过程。具体地,hmi系统722可以包括用于实现图形用户界面的指令(图形用户界面指令724)、用于与计算机视觉系统接口的指令(计算机视觉界面指令726)、用于与机器人控制器接口的指令(机器人控制器接口指令728)、用于构建或重建表示任务序列的有向图的指令(图构建指令730)、以及用于运行机器人手臂运动模拟的指令(运动模拟指令732)。数据740可以包括任务序列742和部件模型744。
75.总体上而言,本发明的实施例可提供用于配置机器人系统以执行任务的序列的系统和方法。所提供的系统可以包括与用户、机器人系统的计算机视觉系统和机器人控制器接口的hmi。hmi可以向用户呈现图形用户界面,该界面显示包括待装配设备的工作场景的图像。用户可以根据序列中任务的预定执行顺序,经由图形用户界面选择图像内的多个位置/部件。每个用户选择(即位置或部件)对应于待执行的任务(例如,放置任务或插入任务)。对于每个用户选择,计算机视觉系统可以确定工作场景中的对应位置以及与要在该位置执行的任务相关联的各种信息。该系统还可以构建有向图,图中的每个节点对应于用户定义的任务。配置机器人系统以执行任务序列的过程变成了构建表示任务序列的有向图的过程,图中的每个节点表示任务,并且该任务信息存储在该节点中。在配置过程完成之后,表示任务序列的有向图可以被存储(例如,在任务序列数据库中)。当机器人系统需要执行任务序列时,机器人系统可以获取表示任务序列的有向图,并且通过逐一任务地执行由节点指定的任务来重建有向图。更具体地,每次执行任务时,可以在重建的图中生成对应的节点。一旦整个图被重建,任务序列就完成了。
76.详细描述部分中所述的方法和过程可体现为代码和/或数据,其可存储在上述计算机可读存储介质中。当计算机系统读取并执行存储在计算机可读存储介质上的代码和/或数据时,计算机系统执行体现为数据结构和代码并存储在计算机可读存储介质内的方法和过程。
77.此外,上述方法和过程可被包括在硬件设备或装置中。硬件模块或装置可以包括但不限于专用集成电路(asic)芯片、现场可编程门阵列(fpgas)、在特定时间执行特定软件单元或一段代码的专用或共享处理器,以及现在已知或以后发展的其他可编程逻辑设备。当硬件设备或装置被激活时,它们会执行包括在其中的方法和过程。
78.本发明实施例的上述描述仅出于说明和描述目的而呈现。它们并不旨在穷举或将本发明限制于所公开的形式上。因此,许多修改和变体对于本领域技术人员来说是显而易见的。此外,上述公开并不旨在限制本发明。本发明的范围由所附权利要求定义。

技术特征:
1.一种用于配置机器人系统的计算机实现的方法,所述方法包括:在图形用户界面上向用户呈现包括多个部件的工作场景的图像;从所述用户接收操作命令的序列,其中相应的操作命令对应于所述图像中的像素位置;对于每个操作命令,基于所述图像确定要在所述工作场景中的对应位置执行的任务;和基于所接收到的操作命令的序列生成有向图,其中所述有向图中的每个节点对应于任务,并且其中所述有向图中的每个有向边对应于任务执行顺序,从而促进所述机器人系统基于所述操作命令的序列执行任务的序列。2.根据权利要求1所述的计算机实现的方法,其中所述图形用户界面包括触摸屏显示器,并且其中所述相应的操作命令对应于所述用户敲击所述图像中的所述像素位置。3.根据权利要求1所述的计算机实现的方法,其中确定要在所述对应位置执行的所述任务包括:将所述图像中的所述像素位置转换为所述工作场景中的所述对应位置;和识别位于所述工作场景中的所述对应位置的部件。4.根据权利要求3所述的计算机实现的方法,还包括:访问部件库以获取与所识别的部件相关联的信息;和向所述用户呈现与所识别的部件相关联的所述信息,以允许所述用户验证或修改这种信息。5.根据权利要求4所述的计算机实现的方法,其中与所识别的部件相关联的所述信息包括以下一项或多项:所述部件的三维模型;与所述部件相关联的操作类型;和要被耦合到所述部件的第二部件。6.根据权利要求1所述的计算机实现的方法,其中确定所述任务包括接收用户输入,所述用户输入指示要放置在所述工作场景中的所述对应位置的部件。7.根据权利要求1所述的计算机实现的方法,还包括:响应于用户命令,控制所述机器人系统基于所述有向图在第二工作场景中执行所述任务的序列。8.根据权利要求7所述的计算机实现的方法,其中控制所述机器人系统执行任务的序列还包括:捕捉所述第二工作场景的图像;基于所捕捉的图像为所述第二工作场景重建所述有向图;对于所重建的有向图中的每个节点,获取与所述节点对应的任务相关联的任务信息;和由所述机器人系统的控制器基于所获取的任务信息生成运动命令。9.根据权利要求1所述的计算机实现的方法,其中所述任务信息包括以下一项或多项:位置信息;部件信息;和
操作类型信息。10.根据权利要求9所述的计算机实现的方法,其中所述操作类型信息指示所述任务包括插入任务还是放置任务。11.一种用于配置机器人系统的装置,所述装置包括:图形用户界面,用于呈现包括多个部件的工作场景的图像,并用于从用户接收操作命令的序列,其中相应的操作命令对应于所述图像中的像素位置;计算机视觉系统,用于对于每个操作命令并基于所述图像来确定要在所述工作场景中的对应位置执行的任务;和图构建单元,用于基于所接收到的操作命令的序列生成有向图,其中所述有向图中的每个节点对应于任务,并且其中所述有向图中的每个有向边对应于任务执行顺序,从而促进所述机器人系统基于所述操作命令的序列执行任务的序列。12.根据权利要求11所述的装置,其中所述图形用户界面包括触摸屏显示器,并且其中所述相应的操作命令对应于所述用户点击所述图像中的所述像素位置。13.根据权利要求11所述的装置,其中所述计算机视觉系统用于:将所述图像中的所述像素位置转换为所述工作场景中的所述对应位置;和识别位于所述工作场景中的所述对应位置的部件。14.根据权利要求13所述的装置,其中:所述计算机视觉系统用于访问部件库以获取与所识别的部件相关联的信息;和所述图形用户界面用于向所述用户呈现与所识别的部件相关联的所述信息,以允许所述用户验证或修改这种信息。15.根据权利要求14所述的装置,其中与所述部件相关联的所述信息包括以下一项或多项:所述部件的三维模型;与所述部件相关联的操作类型;和要被耦合到所述部件的第二部件。16.根据权利要求11所述的装置,其中所述图形用户界面用于接收用户输入,所述用户输入指示要放置在所述工作场景中的所述对应位置的部件。17.根据权利要求11所述的装置,还包括:机器人控制器,用于响应于用户命令,控制所述机器人系统基于所述有向图在第二工作场景中执行所述任务的序列。18.根据权利要求17所述的装置,其中所述计算机视觉系统用于捕捉所述第二工作场景的图像;其中所述图构建单元用于基于所捕捉的图像为所述第二工作场景重建所述有向图;和其中所述机器人控制器用于:对于所重建的有向图中的每个节点,获取与对应于所述节点的任务相关联的任务信息;和基于所获取的任务信息生成运动命令。19.根据权利要求11所述的装置,其中所述任务信息包括以下一项或多项:位置信息;
部件信息;和操作类型信息。20.根据权利要求19所述的装置,其中所述操作类型信息指示所述任务包括插入任务还是放置任务。

技术总结
本公开涉及用于装配任务进行排序的系统和方法。一个实施例可以提供一种用于配置机器人系统的方法和系统。在操作期间,该系统可以在图形用户界面上向用户呈现包括多个部件的工作场景的图像,并且从用户接收操作命令的序列。相应的操作命令可以对应于图像中的像素位置。对于每个操作命令,系统可以基于图像确定要在工作场景中的对应位置执行的任务,并且基于接收到的操作命令的序列生成有向图。有向图中的每个节点可以对应于任务,并且有向图中的每个有向边可以对应于任务执行顺序,从而促进机器人系统基于操作命令的序列来执行任务的序列。序列。序列。


技术研发人员:萨布里什
受保护的技术使用者:埃博茨股份有限公司
技术研发日:2023.02.09
技术公布日:2023/8/14
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐