机器人系统及其颜色控制方法与流程

文档序号:33191862发布日期:2023-02-04 08:49阅读:40来源:国知局
机器人系统及其颜色控制方法与流程

1.本发明总体上涉及关节机器人,特别是涉及包括多个关节机器人的机器人系统及其颜色控制方法。


背景技术:

2.关节机器人是具有旋转关节的机器人,也被称为关节机械手臂或多关节机器人。关节机器人的范围可以从简单的双关节结构到具有十个以上互动的关节的系统。关节机器人是当今工业领域中最常见的工业机器人的形态之一,适合用于诸多工业领域的机械自动化作业。
3.随着关节机器人结构复杂性的增加,以及要执行的任务难度的提高,为了便于对关节机器人进行任务规划,集成开发环境(integrated development environment,ide)已被用于对关节机器人的编程。ide是一种辅助程序开发人员开发软件的应用软件,在开发工具内部就可以辅助编写源代码文本、并编译打包成为可用的程序。ide通常包括编程语言编辑器、自动构建工具和调试器。ide可将常用的开发人员工具合并到单个图形用户界面(graphical user interface,gui)中,因此开发人员无需切换应用程序即可执行操作。
4.支持可视化程序设计的ide可以允许开发人员通过直接移动编程的构建块或代码节点来创建流程图和结构图,然后对创建的流程图和结构图进行编译或解释,从而创建新的应用程序。这些流程图和结构图通常基于统一建模语言。这样的ide的gui提供可视化编程语言(visual programming language)环境。vpl又称为图形化编程语言,是允许用户通过以图形方式来操作程序元素而不是通过文本指定来创建程序的编程语言。vpl允许使用视觉表达、文本和图形符号的空间排列进行编程。例如,许多vpl基于“块和箭头”的概念,其中块或其他屏幕对象被视为实体,这些实体通过代表关系的箭头、直线段或弧线连接。


技术实现要素:

5.本发明的一个方面涉及机器人系统。所述机器人系统包括至少两个关节机器人,每个关节机器人具有机器人控制器、多个转动关节和多个发光装置,每个发光装置布置在所述多个转动关节中的相应一个转动关节处。所述机器人系统还包括服务器,所述服务器包括控制器、存储单元和显示单元。所述存储单元存储控制器可执行的多个指令,并且存储包括多个可视化程序设计语言块的可视化程序设计语言库。
6.所述至少两个关节机器人和所述服务器连接至通信网络。所述至少两个关节机器人包括第一关节机器人和第二关节机器人。
7.所述服务器配置为使用所述控制器执行来自所述存储单元的指令以运行集成开发环境,并使用所述显示单元显示所述集成开发环境的图形用户界面,所述图形用户界面配置为提供可视化程序设计语言工具。
8.所述服务器配置为使用所述可视化程序设计语言工具从所述可视化程序设计语言库中选择第一初始可视化程序设计语言块和第二初始可视化程序设计语言块,所述第一
初始可视化程序设计语言块与所述第一关节机器人相对应,所述第二初始可视化程序设计语言块与所述第二关节机器人相对应,在选择所述第一初始可视化程序设计语言块之后,所述服务器在所述通信网络上与所述第一关节机器人建立基于所述集成开发环境的第一连接,并且在选择所述第二初始可视化程序设计语言块之后,所述服务器在所述通信网络上与所述第二关节机器人建立基于所述集成开发环境的第二连接。
9.所述服务器配置为从所述第一初始可视化程序设计语言块获取指示第一颜色的第一颜色信息,并且从所述第二初始可视化程序设计语言块获取指示第二颜色的第二颜色信息,所述第二颜色不同于所述第一颜色。所述服务器配置为将所获取的所述第一颜色信息和所述第二颜色信息分别经由所建立的第一连接和第二连接发送至所述第一关节机器人和所述第二关节机器人。
10.所述第一关节机器人的机器人控制器配置为响应于接收到的所述第一颜色信息生成第一颜色指令,以控制所述第一关节机器人的多个发光装置显示所述第一颜色。所述第二关节机器人的机器人控制器配置为响应于接收到的所述第二颜色信息生成第二颜色指令,以控制所述第二关节机器人的多个发光装置显示所述第二颜色;
11.在根据上述方面的机器人系统中,所述至少两个关节机器人中的每个关节机器人均具有唯一标识符,所述服务器配置为使用所述可视化程序设计语言工具基于所述第一关节机器人的唯一标识符与所述第一颜色信息相关联地创建所述第一初始可视化程序设计语言块,基于所述第二关节机器人的唯一标识符与所述第二颜色信息相关联地创建所述第二初始可视化程序设计语言块,并将创建的所述第一初始可视化程序设计语言块和所述第二初始可视化程序设计语言块添加至存储于所述存储单元的所述可视化程序设计语言库中。
12.特别地,所述至少两个关节机器人中的每个关节机器人的唯一标识符选自所述关节机器人的互联网协议地址或所述关节机器人的序列号。
13.在根据上述方面的机器人系统中,所述服务器配置为使用所述可视化程序设计语言工具编辑所述第一初始可视化程序设计语言块或所述第二初始可视化程序设计语言块,以修改包含在所述第一初始可视化程序设计语言块或所述第二初始可视化程序设计语言块中的所述第一颜色信息或所述第二颜色信息,修改后的第一颜色信息或第二颜色信息指示不同于所述第一颜色或所述第二颜色的颜色。
14.在根据上述方面的机器人系统中,每个关节机器人的机器人控制器配置为当所述关节机器人没有与所述服务器建立基于所述集成开发环境的连接时,控制所述关节机器人的多个发光装置显示预先设定的颜色,或者由所述关节机器人前一次接收到的颜色信息所指示的颜色。
15.在根据上述方面的机器人系统中,所述服务器配置为:使用所述可视化程序设计语言工具从所述可视化程序设计语言库中选择多个第一任务可视化程序设计语言块和多个第二任务可视化程序设计语言块,所述多个第一任务可视化程序设计语言块与所述第一关节机器人相对应,所述多个第二任务可视化程序设计语言块与所述第二关节机器人相对应;将所述第一初始可视化程序设计语言块和所述多个第一任务可视化程序设计语言块中的每个可视化程序设计语言块与所述第一颜色相关联地显示,并且将所述第二初始可视化程序设计语言块和所述多个第二任务可视化程序设计语言块中的每个可视化程序设计语
言块与所述第二颜色相关联地显示。所述第一初始可视化程序设计语言块和所述多个第一任务可视化程序设计语言块构成要由所述第一关节机器人执行的任务序列,并且所述第二初始可视化程序设计语言块和所述多个第二任务可视化程序设计语言块构成要由所述第二关节机器人执行的任务序列。
16.特别地,所述第一初始可视化程序设计语言块和所述多个第一任务可视化程序设计语言块中的每个可视化程序设计语言块的至少一部分呈现所述第一颜色,并且所述第二初始可视化程序设计语言块和所述多个第二任务可视化程序设计语言块中的每个可视化程序设计语言块的至少一部分呈现所述第二颜色。
17.更特别地,所述第一初始可视化程序设计语言块和所述多个第一任务可视化程序设计语言块中的每个可视化程序设计语言块由所述第一颜色勾勒出,并且所述第二初始可视化程序设计语言块和所述多个第二任务可视化程序设计语言块中的每个可视化程序设计语言块由所述第二颜色勾勒出。
18.可选地,在所述第一初始可视化程序设计语言块和所述多个第一任务可视化程序设计语言块中的每个可视化程序设计语言块中以文字形式标注出所述第一颜色,并且在所述第二初始可视化程序设计语言块和所述多个第二任务可视化程序设计语言块中的每个可视化程序设计语言块中以文字形式标注出所述第二颜色。
19.本发明的另一方面涉及机器人系统的颜色控制方法。所述机器人系统包括服务器和至少两个关节机器人,每个关节机器人具有机器人控制器、多个转动关节和多个发光装置,每个发光装置布置在所述多个转动关节中的相应一个转动关节处,所述至少两个关节机器人和所述服务器连接至通信网络,所述至少两个关节机器人包括第一关节机器人和第二关节机器人。所述服务器包括存储单元,在所述存储单元中存储有包括多个可视化程序设计语言块的可视化程序设计语言库。
20.所述颜色控制方法包括:通过所述服务器运行集成开发环境,并显示所述集成开发环境的图形用户界面,所述图形用户界面配置为提供可视化程序设计语言工具;通过所述服务器,使用所述可视化程序设计语言工具从所述可视化程序设计语言库中选择第一初始可视化程序设计语言块和第二初始可视化程序设计语言块,所述第一初始可视化程序设计语言块与所述第一关节机器人相对应,所述第二初始可视化程序设计语言块与所述第二关节机器人相对应;响应于对所述第一初始可视化程序设计语言块的选择,所述服务器在所述通信网络上与所述第一关节机器人建立基于所述集成开发环境的第一连接,并且响应于对所述第二初始可视化程序设计语言块的选择,所述服务器在所述通信网络上与所述第二关节机器人建立基于所述集成开发环境的第二连接;通过所述服务器从所述第一初始可视化程序设计语言块获取指示第一颜色的第一颜色信息,并且从所述第二初始可视化程序设计语言块获取指示第二颜色的第二颜色信息,其中,所述第二颜色不同于所述第一颜色;通过所述服务器将所获取的所述第一颜色信息和所述第二颜色信息分别经由所建立的第一连接和第二连接发送至所述第一关节机器人和所述第二关节机器人;响应于接收到的所述第一颜色信息,通过所述第一关节机器人生成第一颜色指令,以控制所述第一关节机器人的多个发光装置显示所述第一颜色;并且响应于接收到的所述第二颜色信息,通过所述第二关节机器人生成第二颜色指令,以控制所述第二关节机器人的多个发光装置显示所述第二颜色。
21.在根据上述方面的颜色控制方法中,所述至少两个关节机器人中的每个关节机器人均具有唯一标识符。所述颜色控制方法还包括:通过所述服务器,使用所述可视化程序设计语言工具,基于所述第一关节机器人的唯一标识符与所述第一颜色信息相关联地创建所述第一初始可视化程序设计语言块,基于所述第二关节机器人的唯一标识符与所述第二颜色信息相关联地创建所述第二初始可视化程序设计语言块,并将创建的所述第一初始可视化程序设计语言块和所述第二初始可视化程序设计语言块添加至存储于所述存储单元的所述可视化程序设计语言库中。
22.特别地,所述至少两个关节机器人中的每个关节机器人的唯一标识符选自所述关节机器人的互联网协议地址或所述关节机器人的序列号。
23.在根据上述方面的颜色控制方法中,所述颜色控制方法还包括:通过所述服务器,使用所述可视化程序设计语言工具编辑所述第一初始可视化程序设计语言块或所述第二初始可视化程序设计语言块,以修改包含在所述第一初始可视化程序设计语言块或所述第二初始可视化程序设计语言块中的所述第一颜色信息或所述第二颜色信息,修改后的第一颜色信息或第二颜色信息指示不同于所述第一颜色或所述第二颜色的颜色。
24.在根据上述方面的颜色控制方法中,所述颜色控制方法还包括:当所述至少两个关节机器人中的任意一个关节机器人没有与所述服务器建立基于所述集成开发环境的连接时,通过所述关节机器人控制所述关节机器人的多个发光装置显示预先设定的颜色,或者由所述关节机器人前一次接收到的颜色信息所指示的颜色。
25.在根据上述方面的颜色控制方法中,所述颜色控制方法还包括:通过所述服务器,使用所述可视化程序设计语言工具从所述可视化程序设计语言库中选择多个第一任务可视化程序设计语言块和多个第二任务可视化程序设计语言块,所述多个第一任务可视化程序设计语言块与所述第一关节机器人相对应,所述多个第二任务可视化程序设计语言块与所述第二关节机器人相对应;将所述第一初始可视化程序设计语言块和所述多个第一任务可视化程序设计语言块中的每个可视化程序设计语言块与所述第一颜色相关联地显示,并且将所述第二初始可视化程序设计语言块和所述多个第二任务可视化程序设计语言块中的每个可视化程序设计语言块与所述第二颜色相关联地显示。所述第一初始可视化程序设计语言块和所述多个第一任务可视化程序设计语言块构成要由所述第一关节机器人执行的任务序列,并且所述第二初始可视化程序设计语言块和所述多个第二任务可视化程序设计语言块构成要由所述第二关节机器人执行的任务序列。
26.特别地,所述第一初始可视化程序设计语言块和所述多个第一任务可视化程序设计语言块中的每个可视化程序设计语言块的至少一部分呈现所述第一颜色,并且所述第二初始可视化程序设计语言块和所述多个第二任务可视化程序设计语言块中的每个可视化程序设计语言块的至少一部分呈现所述第二颜色。
27.更特别地,所述第一初始可视化程序设计语言块和所述多个第一任务可视化程序设计语言块中的每个可视化程序设计语言块由所述第一颜色勾勒出,并且所述第二初始可视化程序设计语言块和所述多个第二任务可视化程序设计语言块中的每个可视化程序设计语言块由所述第二颜色勾勒出。
28.可选地,在所述第一初始可视化程序设计语言块和所述多个第一任务可视化程序设计语言块中的每个可视化程序设计语言块中以文字形式标注出所述第一颜色,并且在所
述第二初始可视化程序设计语言块和所述多个第二任务可视化程序设计语言块中的每个可视化程序设计语言块中以文字形式标注出所述第二颜色。
附图说明
29.为了更清楚地解释本发明的实施例中的技术方案,下面将简要描述在实施例的描述中使用的附图。以下描述中的附图仅仅是本发明的示例性实施例。对于本领域普通技术人员来说,也可以基于这些附图获得其它附图而无需任何创造性工作。
30.图1示出了应用在本发明的实施例中的关节机器人的结构图。
31.图2示出了应用在本发明的实施例中的关节机器人的一部分的等角视图。
32.图3示出了应用在本发明的实施例中的关节机器人的控制系统的框图。
33.图4示出了应用在本发明的实施例中的服务器的框图。
34.图5示出了根据本发明的一个实施例的机器人系统的示意图。
35.图6示出了根据本发明的一个实施例的利用vpl工具创建机器人的任务序列的示意图。
36.图7示出了具有由相应的颜色勾勒出的vpl块的图6所示的任务序列。
37.图8示出用于图5所述的机器人系统的颜色控制方法的流程图。
具体实施方式
38.为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明的具体实施方式做详细的说明。在下面的描述中阐述了很多具体细节以便于充分理解本发明。但是本发明能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似改进,因此本发明不受下面公开的具体实施的限制。
39.图1示出了应用在本发明的实施例中的示例性关节机器人100,以下简称为机器人。机器人100可以是工业机器人或任何其它类型的机器人,例如,仿人型机器人。机器人100可以包括多个连杆110(也称为臂)、发光装置130和执行器(未图示)。可以理解,在图1所示的示例性机器人中,执行器位于连杆110和发光装置130内,因此执行器是不可见的。连杆110可以沿着单根轴线(即,一维)、沿着两根轴线(即,二维)旋转,或者可以具有在三维空间中任意移动的自由度。
40.两个相邻的连杆110可以形成俯仰关节或滚转关节。参考图2,其示出关节机器人的一部分。在图2中,连杆110a和连杆110b可以共同形成俯仰关节141,俯仰关节141可以围绕其轴线a旋转,连杆110b和连杆110c可以共同形成滚转关节142,滚转关节142可以围绕其轴线b旋转。在上述任一情况下,发光装置130可以位于两个连杆110之间(例如,连杆110a和连杆110b之间,或连杆110b和连杆110c之间)并邻近执行器的。可以理解,两个相邻的连杆110可以形成其它类型的转动关节。
41.发光装置130可以是能够产生可见光的任何类型的装置,例如,led或多色led。发光装置130设置在转动关节处,例如,俯仰关节141或滚转关节142。在某些实施例中,每个转动关节处均布置有一个发光装置130。在某些实施例中,每个发光装置130可以对应于一个执行器,并且可以围绕相应的执行器布置。例如,发光装置130可以具有围绕相应执行器的整个圆周延伸的环形结构。在这样的实施例中,机器人100的操作者可以在相对于示机器人
100的任何位置观察到发光装置130。以下将位于转动关节处并围绕转动关节的这样的发光装置130称为关节环形灯。
42.此外,可以理解,在一些实施例中,发光装置130可以不在相应的执行器的整个圆周上延伸。还可以理解,发光装置130可以采用任何形状,例如圆形、八边形、十边形,波浪形等。发光装置130露出在机器人100的外表面上,使得机器人100的操作者可以容易地观察到发光装置130的点亮。
43.如上所述,在一些实施例中,发光装置130可以位于两个相邻的连杆110之间。例如,当两个相邻的连杆110通过执行器连接在一起时,在两个连杆110之间可以存在间隙(未图示),并且发光装置130可以位于该间隙中。在其它实施例中,发光装置130可以位于相应的执行器附近,而不在上述间隙中。例如,对应于执行器的发光装置130可以位于由执行器连接的两个相邻的连杆110中的任意一个连杆的外表面上。
44.发光装置130能够显示各种颜色,并且配置为根据接收到的颜色指令,显示相应的颜色。
45.图3示出了应用在本发明的实施例中的关节机器人100的控制系统的框图。该控制系统具有控制器310、存储单元320、通信单元330和输出单元340。该控制系统可以配置为控制由发光装置130显示的颜色。
46.控制器310包括一个或多个处理器。每个处理器可以是通用处理器,或专用于特定处理的专用处理器,但不限于此。存储单元320包括一个或多个存储器。每个存储器可以是半导体存储器、磁表面存储器或光存储器,但不限于此。存储单元320存储用于机器人100的操作的任何信息。
47.通信单元330具有一个或多个通信模块。通信模块可以采用无线通信或有线通信的方式与诸如服务器的外部设备通信。在一些实施例中,机器人100可以经由通信单元330与外部服务器通过电缆建立通信连接。在其他实施例中,机器人100可以经由通信单元330连接至服务器所处的网络。机器人100利用通信单元330与服务器进行数据交互。
48.输出单元340具有一个或多个信号接口。每个信号接口通过信号传输线连接至发光装置130。输出单元340配置为将控制器310生成的颜色指令传送至发光装置130。
49.图4示出了应用在本发明的实施例中的服务器400的构造。服务器400具有控制器410、存储单元420、通信单元430、输入单元440和显示单元450。服务器10可以是一台计算机,或者由可以彼此通信的两台以上计算机组成。
50.控制器410包括一个或多个处理器。每个处理器是通用处理器,或专用于特定处理的专用处理器,但不限于此。控制器410根据存储在存储单元420中的控制和处理程序来控制服务器410的运行。
51.存储单元420包括一个或多个存储器。每个存储器可以是半导体存储器、磁表面存储器或光存储器,但不限于此。每个存储器可以用作服务器400的主存储装置、辅助存储装置或高速缓冲存储装置。存储单元420存储控制器410可执行的多个指令,特别地,存储用于服务器400的运行、控制和处理的程序,并且存储各种数据库,以及其他任何信息。更特别地,存储单元420存储适用于由服务器400运行的ide和包括由ide创建和编辑的vpl块的vpl库。
52.通信单元430具有一个或多个通信模块。通信模块可以采用无线通信或有线通信
的方式与诸如关节机器人的终端设备通信。在一些实施例中,服务器400可以经由通信单元430与终端设备通过电缆建立通信连接。在其他实施例中,服务器400可以经由通信单元430连接至终端设备所处的网络。服务器400利用通信单元430与终端设备进行数据交互。
53.输入单元440配置为接收用户输入。输入单元440可以包括鼠标、键盘、遥控器、控制杆等允许接收用户输入的装置的各种组合。此外,输入单元440可以包括能够感测触摸并与显示单元450交互的、覆盖在显示单元450上的触摸屏数据转换器。
54.显示单元450可以是诸如lcd显示器、led显示器和类似的显示器类型的任何电子视频显示器。在一些实施例中,显示单元450可以是触摸屏,例如,电容式触摸屏、电阻式触摸屏、表面声波触摸屏等。触摸屏可为用户同时提供输入界面和输出界面。在这种情况下,输入单元440和显示单元450集成在一起。显示单元450可以呈现图形用户界面(gui),特别地,ide的gui,该gui具有各种用户可选择的图标、菜单、复选框、对话框、图形框,以及可由用户选择的其他组件和元素,以设定机器人100的操作状态或条件。
55.图5示出了根据本发明的一个实施例的机器人系统的示意图。在工作台上布置有两个机器人,即,第一机器人100a和第二机器人100b。第一机器人100a具有多个第一关节环形灯130a,第二机器人100b具有多个第二关节环形灯130b。第一关节环形灯130a和第二关节环形灯130b均为上面描述的发光装置130,在此不再赘述。在图5所示的第一机器人100a和第二机器人100b中仅分别标识出了一个第一关节环形灯130a和一个第二关节环形灯130b。可以理解,在图5所示的第一机器人100a和第二机器人100b中分别存在其他多个未标识出的第一关节环形灯130a和第二关节环形灯130b。
56.在本实施例中,仅示例性地示出了具有两个机器人的工作站。可以理解,工作站可以仅具有一个机器人,或者具有三个以上机器人。如上所述,每个机器人都能够经由有线或无线连接与服务器400进行数据交互。服务器400为每个机器人设定操作状态或条件,以控制机器人的运行。在图5所示的实施例中,第一机器人100a、第二机器人100b和服务器400都连接至基于诸如tcp/ip协议的通信协议的通信网络。并且,第一机器人100a、第二机器人100b和服务器400构成采用分布式数据服务(data distributed service,dds)的分布式数据系统。
57.在工作台上存在多个机器人的情况下,为了便于区分各个机器人,需要为这些机器人设置可见的独特的标识。特别地,在对这些机器人进行编程的过程中,从这些机器人中直观地识别出正在编程的机器人是极其有利的。传统地,需要为这些机器人增设额外的配件,例如,显示有各机器人独特的识别信息的印刷标志、数字显示器或指示灯等。这增大了工作量,并导致成本的提高。在本实施例中,通过控制各个机器人各自的发光装置来显示不同的颜色,能够更有效、更直观地识别各个机器人。例如,控制第一机器人100a的第一关节环形灯130a来显示蓝色,并且控制第二机器人100b的第二关节环形灯130b来显示绿色。这样,仅通过辨别关节环形灯所显示的颜色,就能够将这两个机器人区分开来。以下将详细描述控制机器人的关节环形灯的颜色的过程。
58.结合图5,并参考图6。第一机器人100a、第二机器人100b和服务器400都连接至通信网络。为了使第一机器人100a和第二机器人100b执行各自预期的操作,用户在服务器400上运行ide,以对第一机器人100a和第二机器人100b进行编程。服务器400的控制器410执行来自存储单元420的指令以运行ide,ide的gui显示在服务器400的显示单元450上。gui为用
户提供vpl工具,用户可以利用vpl工具对第一机器人100a和第二机器人100b进行编程。
59.图6示出了根据本发明的一个实施例的利用vpl工具创建机器人的任务序列的示意图。如图6所示,vpl工具610包括ide的gui中示出的允许用户操作以创建机器人要执行的任务序列的诸如按钮的交互式元素。用户通过服务器400的输入单元440操作vpl工具610,在任务区域620分别创建针对第一机器人100a和第二机器人100b的任务序列。在图6中,第一机器人100a的任务序列由第一初始vpl块631a和多个第一vpl任务快632a构成,第二机器人100b的任务序列由第二初始vpl块631b和多个第二vpl任务快632b构成。
60.创建机器人的任务序列可能包括:从vpl库中选择与该机器人相对应的初始vpl块,即,图6中显示为“开始”的块,并将初始vpl块放置在任务区域620中;从vpl库中选择与该机器人相对应的任务块,即,图6中显示为“任务1”、“任务2”、“任务3”和“结束”的块;将这些块用表示执行顺序的线,例如,带箭头的线连接起来,以形成顺序执行的一系列任务。每个任务可能包括机器人的多个连杆和多个转动关节中的任意一者或多者实现的移动、转动等动作。例如,特定距离的移动、特定角度的转动、特定方向的转动等等。vpl块可以转换为机器人的运动命令。
61.可以理解,为便于说明,在图6中对ide的gui进行了简化,并且对机器人的任务序列的创建也进行了简化。在具体实施过程中,gui可能具有更丰富的交互式元素,并且任务序列的创建也可能更复杂。ide将vpl块构成的任务序列编译打包成为机器人可执行的程序,并将该程序传送给机器人。机器人通过执行该程序来实现预期的操作。
62.在本实施例中,用户使用vpl工具610从vpl库中选择与第一机器人100a相对应的第一初始vpl块631a,并且从vpl库中选择与第二机器人100b相对应的第二初始vpl块631b。当vpl库中不存在与机器人相对应的初始vpl块时,用户需要创建初始vpl块,并将该初始vpl块添加到vpl库中。用户可能通过ide中的vpl工具基于机器人的唯一标识符创建初始vpl块。唯一标识符包括机器人的互联网协议地址、机器人的序列号或其他能够唯一标识机器人的信息。通过从初始vpl块中获取该唯一标识符,服务器能够识别要进行编程的机器人。
63.从vpl库选取某一机器人的初始vpl块,并将该初始vpl块置于任务区域620中,表明将开始对该机器人的编程。此时,ide获悉添加了待编程的机器人,服务器400可以在通信网络上与该机器人建立基于ide的连接。替代地,服务器可以在利用ide编译或调试vpl块时,与该机器人建立基于ide的连接。基于ide的连接表示在服务器上运行的ide能够从机器人接收数据,并将ide生成的数据发送到机器人。该基于ide的连接可以是在tcp/ip的顶层上使用dds协议的通信连接。
64.在本实施例中,在选择第一初始vpl块631a之后,服务器400在通信网络上与第一机器人100a建立基于ide的第一连接,并且在选择第二初始vpl块631b之后,服务器400在通信网络上与第二机器人100b建立基于ide的第二连接。
65.如前所述,在工作台上存在多个机器人的情况下,传统技术为了区分各个机器人,需要为这些机器人增设额外的易于分辨的配件。这将导致成本的提高和工作量的增大。此外,传统技术不便于在编程时在gui界面上分辨工作台上的机器人。例如,可能需要对vpl块添加可见的文字描述,以说明正在编程的是哪个机器人。例如,参考图5,可能为与第一机器人100a相对应的vpl块添加“从工作台的正面看,位于左边的机器人”的文字描述,并且可能
为与第二机器人100b相对应的vpl块添加“从工作台的正面看,位于右边的机器人”的文字描述。这些文字描述既不直观,也影响vpl块的易读性。
66.由此,本发明提出在对多个机器人编程中,为不同机器人分配不同的颜色。例如,将蓝色分配给第一机器人100a,使得第一机器人100a的第一关节环形灯130a显示蓝色,而将绿色分配给第二机器人100a,使得控制第二机器人100b的第二关节环形灯130b显示绿色。
67.为实现上述目的,在本实施中,在使用vpl工具610创建初始vpl块的过程中,与分配给机器人的颜色相关联地创建初始vpl块。例如,与指示分配给第一机器人100a的第一颜色(即,蓝色)的第一颜色信息相关联地创建第一初始vpl块631a,并且与指示分配给第二机器人100b的第二颜色(即,绿色)的第二颜色信息相关联地创建第二初始vpl块631b。这样,指示分配的颜色的颜色信息保存在初始vpl块中。
68.可选地,用户可能通过编辑存储于vpl库中的初始vpl块,修改颜色信息,以指示不同的颜色。例如,用户可能使用vpl工具编辑第一初始vpl块631a以修改包含在第一初始vpl块631a中的第一颜色信息,使得修改后的第一颜色信息指示不同于第一颜色的颜色,例如,紫色。类似地,用户也可能编辑第二初始vpl块631b,使得修改后的第二颜色信息指示不同于第二颜色的颜色。
69.在本实施例中,服务器400可以从第一初始vpl块631a获取指示第一颜色的第一颜色信息,从第二初始vpl块631b获取指示第二颜色的第二颜色信息,并且将所获取的第一颜色信息和第二颜色信息分别经由所建立的第一连接和第二连接发送至第一机器人100a和第二机器人100b。
70.第一机器人100a的控制器310可以响应于接收到的第一颜色信息生成第一颜色指令,以控制第一机器人100a的第一关节环形灯130a均显示第一颜色,即,蓝色。第二机器人100b的控制器310可以响应于接收到的第二颜色信息生成第二颜色指令,以控制第二机器人100b的第二关节环形灯130b均显示第二颜色,即,绿色。这样,通过识别第一机器人100a的第一关节环形灯130a的颜色和第二机器人100b的第二关节环形灯130b便可以简单地、直观地将第一机器人100a和第二机器人100b区分开来。
71.可以理解,在第一机器人100a和第二机器人100b连接至服务器400所在的通信网络的情况下,如果vpl库中不存在第一机器人100a或第二机器人100b的初始vpl块,或者用户没有选择第一机器人100a或第二机器人100b的初始vpl块,则第一机器人100a或第二机器人100b不会与服务器400建立基于ide的连接。当第一机器人100a或第二机器人100b没有与服务器400建立基于ide的连接时,第一机器人100a或第二机器人100b不会从服务器400接收到颜色信息。在这种情况下,第一机器人100a或第二机器人100b可能控制第一关节环形灯130a或第二关节环形灯130b显示预先设定的颜色。该预先设定的颜色存储在第一机器人100a或第二机器人100b的存储单元320中。替代地,第一机器人100a或第二机器人100b可能控制第一关节环形灯130a或第二关节环形灯130b显示第一机器人100a或第二机器人100b前一次接收到的颜色信息所指示的颜色。前一次接收到的颜色信息表示机器人前一次与服务器建立基于ide的连接时,从服务器接收到的颜色信息。该服务器可能是服务器400,也可能是其他服务器。
72.在本实施例中,讨论了具有两个机器人的机器人系统。以下将简单介绍具有三个
机器人的机器人系统的情况。本领域技术人员可以基于此设想具有超过三个机器人的机器人系统的情况,本文对此将不再赘述。
73.用户可能将不同于第一颜色和第二颜色的第三颜色(例如,紫色)分配给第三机器人。针对第三机器人,用户使用vpl工具基于第三机器人的唯一标识符与指示第三颜色的第三颜色信息相关联地创建第三初始vpl块,并将第三初始vpl块存储于vpl库中。
74.当需要对机器人系统中存在的第三机器人编程时,用户使用vpl工具从vpl库中选择与第三机器人相对应的第三vl初始vpl块。在选择第三初始vpl块之后,服务器在通信网络上与第三机器人建立基于ide的第三连接。服务器从第三初始vpl块获取指示第三颜色的第三颜色信息,将所获取的第三颜色信息经由所建立的第三连接发送至第三机器人。第三机器人的机器人控制器响应于接收到的第三颜色信息生成第三颜色指令,以控制第三机器人的关节环形灯均显示第三颜色。
75.继续参考图6,用户可能从vpl库中选择与第一机器人100a相对应的多个第一任务vpl块632a,以与第一初始vpl块631a一起构成要由第一机器人100a执行的任务序列。并且,用户可能从vpl库中选择与第二机器人100b相对应的多个第二任务vpl块632b,以与第二初始vpl块631b一起构成要由第二机器人100b执行的任务序列。任务vpl块可以与初始vpl块类似地创建,并存储在vpl库中。
76.在本发明的一个实施例中,为便于在gui界面上区分正在编程的多个机器人,将与各个机器人相对应的vpl块与分配给该机器人的颜色相关联地显示。例如,对于第一机器人100a,将第一初始vpl块631a和多个第一任务vpl块632a均与第一颜色相关联地显示,而对于第二机器人100b,将第二初始vpl块631b和多个第二任务vpl块632b均与第二颜色相关联地显示。例如,使第一初始vpl块631a和多个第一任务vpl块632a中的每个vpl块的至少一部分呈现第一颜色,并且使第二初始vpl块631b和多个第二任务vpl块632b中的每个vpl块的至少一部分呈现所述第二颜色。
77.图7示出了vpl块与颜色相关联地显示的其中一个方式。在图7所示的实施例中,第一初始vpl块631a和第一任务vpl块632a均由蓝色(即,第一颜色)勾勒,第二初始vpl块631b和第二任务vpl块632b均由绿色(即,第二颜色)勾勒。在图7中,为体现vpl块由“蓝色”或“绿色”勾勒,特意用文字将“蓝色勾勒”和“绿色勾勒”标注出。可以理解,这仅是为了便于说明,在实际中,不存在这样的文字标注。由于第一初始vpl块631a和第一任务vpl块632a均由蓝色勾勒,因此第一初始vpl块631a和第一任务vpl块632a的轮廓均为蓝色。并且,由于第二初始vpl块631b和第二任务vpl块632b均由绿色勾勒,因此第二初始vpl块631b和第二任务vpl块632b的轮廓均为绿色。这样,通过对蓝色或绿色的识别,就可以辨别哪组vpl块对应的是第一机器人100a,哪组vpl块对应的是第二机器人100b。例如,当需要修改显示蓝色(即,第一关节环形灯130a显示蓝色)的第一机器人100a的任务序列时,用户能够很快地在显示的gui的任务区域620找到蓝色勾勒的一组vpl块,对该组中的至少一个vpl块进行编辑,或者向该组添加或从该组中删减至少一个vpl块。
78.可以理解,可以采用其他方式将vpl块与颜色相关联地显示。例如,使与第一机器人100a相对应的每个vpl块的底层的部分或全部的颜色呈现第一颜色,并且使与第二机器人100b相对应的每个vpl块的底层的部分或全部的颜色呈现第二颜色。
79.替代地,可以在与第一机器人100a相对应的每个vpl块中以文字形式标注出第一
颜色,并且可以在与第二机器人100b相对应的每个vpl块中以文字形式标注出第二颜色。
80.以上实施例描述了根据本发明的机器人系统。在根据本发明的机器人系统中,通过控制各个机器人各自的发光装置来显示不同的颜色,用户能够更有效、更直观地识别各个机器人。此外,通过在gui中将与各个机器人相对应的一组vpl块与分配给该机器人的颜色相关联地显示,用户能够容易地识别各个机器人所对应的vpl块。
81.下面将描述根据本发明的应用于机器人系统中的颜色控制方法。
82.图8示出用于图5所述的机器人系统的颜色控制方法的流程图。本领域技术人员可以理解,该方法也可以用于任何合适的其他机器人系统。示例的机器人系统包括服务器和至少两个关节机器人,每个关节机器人具有机器人控制器、多个转动关节和多个发光装置,每个发光装置布置在多个转动关节中的相应一个转动关节处,至少两个关节机器人和服务器连接至通信网络。
83.参考图5,在本实施例中,机器人系统包括第一机器人100a、第二机器人100b和服务器400。第一机器人100a具有多个第一关节环形灯130a,第二机器人100b具有多个第二关节环形灯130b。第一机器人100a、第二机器人100b和服务器400都连接至基于诸如tcp/ip协议的通信协议的通信网络。并且,第一机器人100a、第二机器人100b和服务器400构成采用dds的分布式数据系统。关于机器人和服务器的配置请参考上面的描述,在此不再赘述。
84.在步骤s1中,服务器400运行ide,并在显示单元450上显示ide的gui。gui为用户提供vpl工具,用户可以利用vpl工具对第一机器人100a和第二机器人100b进行编程。参考图6,vpl工具610包括ide的gui中示出的允许用户操作以创建机器人要执行的任务序列的诸如按钮的交互式元素。用户通过服务器400的输入单元440操作vpl工具610,在任务区域620分别创建针对第一机器人100a和第二机器人100b的任务序列。
85.在步骤s2中,用户使用vpl工具610从vpl库中选择与第一机器人100a相对应的第一初始vpl块631a,并且从vpl库中选择与第一机器人100b相对应的第一初始vpl块631b。第一初始vpl块631a具有指示第一颜色(例如,蓝色)的第一颜色信息。第二初始vpl块631b具有指示第二颜色(例如,绿色)的第二颜色信息。
86.在步骤s3中,在选择第一初始vpl块631a之后,服务器400在通信网络上与第一机器人100a建立基于ide的第一连接,并且在选择第二初始vpl块631b之后,服务器400在通信网络上与第二机器人100b建立基于ide的第二连接。基于ide的连接表示在服务器上运行的ide能够从机器人接收数据,并将ide生成的数据发送到机器人。该基于ide的连接可以是在tcp/ip的顶层上使用dds协议的通信连接。
87.在步骤s4中,服务器400可以从第一初始vpl块631a获取指示第一颜色的第一颜色信息,从第二初始vpl块631b获取指示第二颜色的第二颜色信息。
88.在步骤s5中,服务器400将所获取的第一颜色信息和第二颜色信息分别经由所建立的第一连接和第二连接发送至第一机器人100a和第二机器人100b。
89.在步骤s6中,第一机器人100a的控制器310响应于接收到的第一颜色信息生成第一颜色指令,以控制第一机器人100a的第一关节环形灯130a均显示第一颜色,即,蓝色。
90.在步骤s7中,第二机器人100b的控制器310响应于接收到的第二颜色信息生成第二颜色指令,以控制第二机器人100b的第二关节环形灯130b均显示第二颜色,即,绿色。
91.在本实施例中,每个机器人均具有唯一标识符。唯一标识符包括机器人的互联网
协议地址、机器人的序列号或其他能够唯一标识机器人的信息。颜色控制方法还包括:通过服务器400,使用vpl工具610,基于第一机器人100a的唯一标识符与第一颜色信息相关联地创建第一初始vpl块631a,基于第二机器人100b的唯一标识符与第二颜色信息相关联地创建第二初始vpl块631b,并将第一初始vpl块631a和第二初始vpl块631b添加至存储于服务器400的存储单元420的vpl库中。
92.颜色控制方法还包括:通过服务器400,使用vpl工具610编辑编辑存储于vpl库中的初始vpl块,修改颜色信息,以指示不同的颜色。例如,用户可能使用vpl工具编辑第一初始vpl块631a以修改包含在第一初始vpl块631a中的第一颜色信息,使得修改后的第一颜色信息指示不同于第一颜色的颜色,例如,紫色。类似地,用户也可能编辑第二初始vpl块631b,使得修改后的第二颜色信息指示不同于第二颜色的颜色。
93.在第一机器人100a和第二机器人100b连接至服务器400所在的通信网络的情况下,如果vpl库中不存在第一机器人100a或第二机器人100b的初始vpl块,或者用户没有选择第一机器人100a或第二机器人100b的初始vpl块,则第一机器人100a或第二机器人100b不会与服务器400建立基于ide的连接。当第一机器人100a或第二机器人100b没有与服务器400建立基于ide的连接时,第一机器人100a或第二机器人100b不会从服务器400接收到颜色信息。在这种情况下,颜色控制方法还包括:第一机器人100a或第二机器人100b控制第一关节环形灯130a或第二关节环形灯130b显示预先设定的颜色。该预先设定的颜色存储在第一机器人100a或第二机器人100b的存储单元320中。替代地,颜色控制方法还包括:第一机器人100a或第二机器人100b控制第一关节环形灯130a或第二关节环形灯130b显示第一机器人100a或第二机器人100b前一次接收到的颜色信息所指示的颜色。前一次接收到的颜色信息表示机器人前一次与服务器建立基于ide的连接时,从服务器接收到的颜色信息。该服务器可能是服务器400,也可能是其他服务器。
94.在其他实施例中,机器人系统可以包括三个以上的机器人。以下将简单介绍具有三个机器人的机器人系统的情况。本领域技术人员可以基于此设想具有超过三个机器人的机器人系统的情况。用户可能将不同于第一颜色和第二颜色的第三颜色(例如,紫色)分配给第三机器人。针对第三机器人,用户使用vpl工具基于第三机器人的唯一标识符与指示第三颜色的第三颜色信息相关联地创建第三初始vpl块,并将第三初始vpl块存储于vpl库中。
95.颜色控制方法还包括:通过服务器400,使用vpl工具610从vpl库中选择与第三机器人相对应的第三初始vpl块;响应于对第三初始vpl块的选择,服务器400在通信网络上与第三机器人建立基于ide的第三连接;服务器从第三初始vpl块获取指示第三颜色的第三颜色信息,将所获取的第三颜色信息经由所建立的第三连接发送至第三机器人;第三机器人的机器人控制器响应于接收到的第三颜色信息生成第三颜色指令,以控制第三机器人的关节环形灯均显示第三颜色。
96.参考图6所示的利用vpl工具创建机器人的任务序列的示意图。为便于在gui界面上区分正在编程的多个机器人,可以将与各个机器人相对应的vpl块与分配给该机器人的颜色相关联地显示。颜色控制方法还包括:将与第一机器人100a相对应的第一初始vpl块631a和多个第一任务vpl块632a均与第一颜色相关联地显示;将与第二机器人100b相对应的第二初始vpl块631b和多个第二任务vpl块632b均与第二颜色相关联地显示。例如,使第一初始vpl块631a和多个第一任务vpl块632a中的每个vpl块的至少一部分呈现第一颜色,
并且使第二初始vpl块631b和多个第二任务vpl块632b中的每个vpl块的至少一部分呈现所述第二颜色。
97.如图7所示,在一个实施例中,第一初始vpl块631a和第一任务vpl块632a均由蓝色(即,第一颜色)勾勒,第二初始vpl块631b和第二任务vpl块632b均由绿色(即,第二颜色)勾勒。由于第一初始vpl块631a和第一任务vpl块632a均由蓝色勾勒,因此第一初始vpl块631a和第一任务vpl块632a的轮廓均为蓝色。并且,由于第二初始vpl块631b和第二任务vpl块632b均由绿色勾勒,因此第二初始vpl块631b和第二任务vpl块632b的轮廓均为绿色。这样,通过对蓝色或绿色的识别,就可以辨别哪组vpl块对应的是第一机器人100a,哪组vpl块对应的是第二机器人100b。
98.如上所述,可以采用其他方式将vpl块与颜色相关联地显示。例如,使与第一机器人100a相对应的每个vpl块的底层的部分或全部的颜色呈现第一颜色,并且使与第二机器人100b相对应的每个vpl块的底层的部分或全部的颜色呈现第二颜色。替代地,可以在与第一机器人100a相对应的每个vpl块中以文字形式标注出第一颜色,并且可以在与第二机器人100b相对应的每个vpl块中以文字形式标注出第二颜色。
99.本领域技术人员应当理解,本文中所公开的方法和程序都可以使用一个或多个计算机程序或组件来实施。这些组件可以作为任何常规计算机可读介质或机器可读介质(包括易失性和非易失性存储器,诸如ram、rom、闪存、磁盘或光盘、光学存储器或其他存储介质)上的一系列计算机指令来提供。这些指令可以作为软件或固件提供,并且可以在asic、fpga、dsp或任何其他类似设备等硬件组件中全部或部分实现。这些指令可以配置为由一个或多个处理器执行,当处理器执行这些指令时,执行或促进所公开的方法和程序的全部或部分的实施。
100.本领域技术人员应当理解,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应当理解,说明书中所描述的实施例均属于可选实施例,所涉及的动作并不一定是本发明所必须的。
101.以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1