一种机器人控制方法和装置与流程

文档序号:19250777发布日期:2019-11-27 20:12阅读:174来源:国知局
一种机器人控制方法和装置与流程

本发明涉及机器人技术领域,尤其涉及一种机器人控制方法和装置。



背景技术:

在生产制造等工业领域中,越来越多的任务需要依赖于人和机器人的合作来完成。其中一个亟需解决的问题是如何进行人和机器人之间的安全检测。

以往在进行机器人安全防护时,通常将机器人限制在一个固定区域内(比如:锁在一个笼子里),机器人只能在该固定区域内活动。由于机器人被限制在固定区域内,无法配合人的移动而移动,进而限制了人与机器人的交互。并且当人突然移动落入该固定区域内时,机器人可能会对人造成伤害。



技术实现要素:

有鉴于此,本公开提供一种机器人控制方法和装置,既能够有效保护人的安全,又能够保证人与机器人的交互。其中,通过检测人的当前位置来确定围绕人的各个区域,并通过控制机器人在这些区域内的运动来保护人在与机器人交互过程中的安全。由于这些区域是围绕着人来设置的,会随着人的移动而移动,因此即使人移动也不会影响人与机器人的交互。并且这种围绕人来设置区域的方式,以被保护的对象为目标,控制机器人在围绕着人的各个区域内的运动,与将机器人限制在固定空间内相比,无论人如何移动,都能够有效保护人的安全。

本公开目的是通过权利要求1提供的机器控制方法,权利要求8、14提供的机器人控制装置以及权利要求15提供的机器可读介质来实现的。其中,本公开优选的实施例由从属权利要求提供。从属权利要求中的特征可与相应的独立权利要求中的特征相结合,并且除非特别声明,各从属权利要求也可以相互接合。

第一方面,提供一种机器人控制方法,用于对与一个人进行交互的一个机器人进行控制,包括:

检测所述人的当前位置;

根据检测到的所述人的当前位置,确定围绕所述人的至少两个区域;

控制所述机器人在所述至少两个区域的任一区域内的运动,以在所述人与所述机器人的交互过程中保护所述人的安全。

第二方面,提供一种机器人控制装置,用于对与一个人进行交互的一个机器人进行控制,包括:

一个检测模块,用于检测所述人的当前位置;

一个区域确定模块,用于根据所述检测模块检测到的所述人的当前位置,确定围绕所述人的至少两个区域;

一个机器人控制模块,用于控制所述机器人在所述至少两个区域的任一区域内的运动,以在所述人与所述机器人的交互过程中保护所述人的安全。

第三方面,提供一种机器人控制装置,包括:

至少一个存储器,用于存储机器可读代码;

至少一个处理器,用于调用所述机器可读代码执行上述第一方面提供的方法。

第四方面,提供一种机器可读介质,所述机器可读介质上存储有机器可读代码,所述机器可读代码在被至少一个处理器调用时,执行上述第一方面提供的方法。

可选地,可通过如下方式控制机器人的运动:

检测所述机器人的当前位置;

确定所述机器人的当前位置所进入的区域;

按照所述机器人的当前位置所进入的区域对应配置的控制方式,控制所述机器人的运动。

可选地,围绕所述人的所述至少两个区域的类型包括下列类型中的至少一种:禁止运动区域;允许交互区域;自由运动区域,其中可禁止所述机器人在所述禁止运动区域中运动;允许所述机器人在所述允许交互区域中与所述人进行交互;允许所述机器人在所述自由运动区域中自由运动。

可选地,所述禁止运动区域可包括下列区域中的至少一个:

围绕着所述人的除了与所述机器人交互时所使用的交互部位之外的其他部位的第一禁止运动区域;

根据记录的所述人的最高位置而确定的第二禁止运动区域,其中,所述第二禁止运动区域用于在所述人突然移动时保护所述人的安全;以及

包围所述允许交互区域的第三禁止运动区域。

可选地,所述至少两个区域的类型还包括缓慢运动区域,其中,所述缓慢运动区域包围所述禁止运动区域,其中,可控制所述机器人在所述缓慢运动区域中运动的速度不高于预设的速度阈值。

其中对围绕人的各个区域进行上述分类设置,通过禁止机器人在禁止运动区域内运动来保护人的关键部位的安全;通过将人与机器人进行交互的部位(比如:手)周围设置为允许交互区域,控制机器人在该区域内与人交互,在保证人的安全前提下使得人与机器人可以有效交互;通过将围绕着允许交互区域的一个区域设置为禁止运动区域,这样当机器人与人接近时停止,而由人主动向机器人移动,从而使机器人进入允许交互区域,由人来主导交互过程而非机器人,可以更有效地保护人的安全;通过将围绕着禁止运动区域的外围区域设置为缓慢运动区域,使得机器人在向人的移动过程中,进入禁止区域之前能够有足够的时间将速度降下来,保证机器人在禁止运动区域内静止,有效保护人的安全;考虑到人的突然移动,比如跌倒、挥手等,根据记录的人的最高位置而设置一个禁止运动区域,这样即使人突然移动机器人也不会对人造成伤害。

可选地,可为各种类型的区域分别配置优先级,当不同优先级的区域重叠时,可按照高优先级类型的区域对应配置的控制方式控制所述机器人在重叠区域内的运动。这样,就解决了不同区域重叠时对机器人控制的问题,通过设置优先级,既能够保护人的安全,又能够在人安全的前提下实现人与机器人的交互。

可选地,本公开提供的方案中对所述机器人的控制可独立于所述机器人内部控制装置而执行。其中,通过独立于机器人内部控制装置的外部装置来实现来检测人的位置、确定围绕人的各个区域,并控制机器人在这些区域内的运动,对机器人的控制不依赖于机器人内置的传感器,即使机器人内部传感器失效,也能够有效控制机器人,避免对人造成伤害。

附图说明

图1、图2a~图2c为本发明实施例中机器人控制装置控制工作方式示意图。

图3为本发明实施例提供的机器人控制方法的流程图。

图4为本发明实施例中安全区域的示意图。

图5为本发明实施例提供的机器人控制装置的一种结构示意图。

图6为本发明实施例提供的机器人控制装置的另一种结构示意图。

附图标记列表:

具体实施方式

如前所述,以往通过将机器人限制在一个固定区域进行安全防护的方式,限制了人与机器人之间的交互。也无法有效避免人在突然移动时,机器人可能对人造成的伤害。

本发明实施例中,通过检测人的当前位置来确定围绕人的各个区域,并通过控制机器人在这些区域内的运动来保护人在与机器人交互过程中的安全。由于这些区域是围绕着人来设置的,会随着人的移动而移动,因此即使人移动也不会影响人与机器人的交互。并且这种围绕人来设置区域的方式,以被保护的对象为目标,控制机器人在围绕着人的各个区域内的运动,与将机器人限制在固定空间内相比,无论人如何移动,都能够有效保护人的安全。

以往的安全防护方法大都依赖于机器人内置的传感器对机器人进行控制,避免机器人对人造成伤害,但是当机器人失控时,与机器人交互的人就处于比较危险的情况。本发明实施例中,可通过独立于机器人内部控制装置的外部装置来实现来检测人的位置、确定围绕人的各个区域,并控制机器人在这些区域内的运动,对机器人的控制不依赖于机器人内置的传感器,即使机器人内部传感器失效,也能够有效控制机器人,避免对人造成伤害。

本发明实施例,还可对围绕人的各个区域分类设置,比如:将围绕着人的头部和躯干的区域设置为禁止运动区域,禁止机器人在该区域内运动,从而保护人的关键部位的安全;将人与机器人进行交互的部位(比如:手)周围设置为允许交互区域,控制机器人在该区域内与人交互,在保证人的安全前提下使得人与机器人可以有效交互;将围绕着允许交互区域的一个区域设置为禁止运动区域,这样当机器人与人接近时停止,而由人主动向机器人移动,从而使机器人进入允许交互区域,由人来主导交互过程而非机器人,可以更有效地保护人的安全。此外,还可将围绕着禁止运动区域的外围区域设置为缓慢运动区域,使得机器人在向人的移动过程中,进入禁止区域之前能够有足够的时间将速度降下来,保证机器人在禁止运动区域内静止,有效保护人的安全。此外,考虑到人的突然移动,比如跌倒、挥手等,根据记录的人的最高位置而设置一个禁止运动区域,这样即使人突然移动机器人也不会对人造成伤害。

下面结合附图对本发明实施例进行详细说明。

图1示出了本发明实施例中,机器人控制装置40在人10与机器人20的交互过程中,控制机器人20的方式示意图。

其中,机器人控制装置40检测人10的当前位置,并根据检测到的人10的当前位置,确定围绕人10的至少两个区域30,进而控制机器人20在至少两个区域30的任一区域30内的运动,以在人10与机器人20的交互过程中保护人10的安全。

其中,机器人控制装置40可独立于机器人20内部控制装置而运行,也可由机器人20内部控制装置来实现。当机器人控制装置40独立于机器人20内部控制装置运行时,可独立地检测人的位置、确定围绕人的各个区域,并控制机器人在这些区域内的运动,对机器人的控制不依赖于机器人内置的传感器,即使机器人内部传感器失效,也能够有效控制机器人。

当机器人控制装置40独立于机器人20内部控制装置运行时,可能存在的一种情况是,按照机器人20内部控制装置的控制逻辑,机器人20在当前时刻需要运动以执行某种操作;而根据机器人控制装置40的判断,机器人20已进入了离人10的头部非常近的区域,需要停止运动(以避免对人10造成伤害),则一种实现方式时,机器人控制装置40对机器人20控制的优先级高于机器人20内部控制装置,机器人20按照机器人控制装置40的指令停止运动。

机器人控制装置40在检测人10的当前位置以及控制机器人20时有多种可选的实现方式,这里以图2a~图2c为例加以说明。可采用的方式不限于这些示例。

图2a所示的例子中,机器人控制装置40通过至少一个摄像头跟踪人10和机器人20,采用图像识别等技术确定人10的当前位置,以及机器人20的当前位置,据此确定至少两个区域30,并控制机器人20在这些区域30中的运动。

图2b所示的例子中,机器人控制装置40通过至少一个摄像头跟踪人10以及机器人20上的标签412,通过确定的这些标签412的位置来确定人10的当前位置,以及机器人20的当前位置,据此确定至少两个区域30,并控制机器人20在这些区域30中的运动。

图2c所示的例子中,机器人控制装置40通过至少一个无线检测器跟踪人10以及机器人20上的标签412,其中这些标签412具有无线发射功能,可发射无线信号,无线检测器具有无线接收功能,可接收无线信号。各个标签412可以相同的发射功率发射,机器人控制装置40可将无线检测器接收到的无线信号的功率与预先知道的各个标签412的发射功率进行比较,根据信号衰减确定各个标签412与无线检测器之间的距离。并且通过无线检测器检测各个标签412发射的信号到达无线检测器时的到达角,进而无线检测器根据到达角和距离确定标签412的位置。

这里,将用于检测人10和/或机器人20的位置的摄像头、无线检测器等称为“检测器411”,将图2b和图2c中用于标记人10和/或机器人20各个部位的设备称为“标签412”。

可选地,可在不同的位置设置多个检测器411,以避免当10和/或机器人20在某些位置时,部分部位被其他部位挡住,而无法准确确定位置的问题。标签412可设置在人10穿着的保护衣物上,比如头盔、上衣、裤子、鞋、手套上。

图2b和图2c中,标签412可放置在人10的几个关键部位,比如:人的头部、躯干、手部等与机器人20交互的部位、上肢、下肢等,从而对人10的各个部位进行标记,机器人控制装置40在确定人10的当前位置时,可分别确定各个部位的位置。标签412也可放置在机器人20的几个关键部位。以机械臂为例,标签412可放置在机械臂的各个关节处以及夹子处,机器人控制装置40在确定机器人20的当前位置时,可分别确定这些被标记的各个部位的位置。机器人控制装置40在判断机器人20进入哪种区域30时,可判断机器人20的各个标签412与人10的各个标签412之间的位置关系,进而根据判断结果确定机器人20进入哪种区域30。或者,也可分别根据人10的各个标签412确定人的各个部位的位置,根据机器人20的各个标签412判断机器人20的各个部位的位置,进而根据确定的人的各个部位的位置和机器人20的各个部位的位置,判断机器人20进入哪种区域30。

下面,结合图3说明本发明实施例提供的机器人控制方法的流程。该方法可由机器人控制装置40执行。如图3所示,该流程可包括如下步骤:

s301:检测人10的当前位置。

比如可确定前述的人的各个关键部位的当前位置。

s302:确定围绕人10的至少两个区域30。

这些区域30可分为多种类型,比如:禁止运动区域301、允许交互区域302、自由运动区域303和缓慢运动区域304。其中,禁止运动区域301又可以分为第一禁止运动区域3011、第二禁止运动区域3012和第三禁止运动区域3013。这里以人10的手作为与机器人20交互的交互部位来举例说明。

s303:控制机器人20在至少两个区域30的任一区域30内的运动。

其中步骤s303又可以分为以下几个子步骤:

s3031:检测机器人20的当前位置。

s3032:确定机器人20的当前位置所进入的区域30。

s3033:按照机器人20的当前位置所进入的区域30对应配置的控制方式,控制机器人20的运动。

下面,结合图4、下表对区域30的各种类型加以说明。

上述各区域是围绕人10而设置的,区域的边界与人10的距离可依工程实践灵活设置,比如:根据机器人20的体积、人10与机器人20交互的动作等,保证人10的安全又不影响人10与机器人20交互。比如:第一禁止运动区域3011的边界与人10的头或躯干的距离不大于第一距离阈值,第二禁止运动区域3012的边界与记录的人10的最高位置之间的距离不大于第二距离阈值,允许交互区域302的边界与人10的交互部位的距离不小于第三距离阈值且不大于第四距离阈值,缓慢运动区域304的边界与禁止运动区域301的边界的距离不大于第五距离阈值等。

如上表中最后一列所示,上述各种类型的区域被分别配置优先级,步骤s303中,当不同优先级的区域30重叠时,当机器人控制装置40可按照高优先级类型的区域30对应配置的控制方式控制机器人20在重叠区域内的运动。上表中优先级从高到低依次为“最高->高->中->低”。

比如:当人10将手靠近身体时,允许交互区域302可以和第一禁止运动区域3011部分重叠,由于第一禁止运动区域3011和禁止运动区域具有“最高”优先级,而允许交互区域302具有“高”优先级,因此,当机器人20进入该重叠区域内时,按照具有较高优先级的第一禁止运动区域3011对应的控制方式,禁止机器人20在该重叠区域内的运动,从而避免机器人20对人造成伤害。另一方面,考虑到人与机器人交互时,比如通过手与机器人交互,通常会向机器人伸出手臂,而不是将手拉近身体,因此,当人的手靠近身体时,通常不是要与机器人交互。通过设置第一禁止运动区域3011、禁止运动区域和自由运动区域303的优先级,另一方面确认了人10与机器人20的交互意图。

以上介绍了本发明实施例中机器人控制装置40控制机器人的流程。下面,介绍机器人控制装置40的几种可选实现方式。

如图6所示,机器人控制装置40可包括至少一个存储器404,用于存储机器可读代码;以及至少一个处理器405,用于调用机器可读代码执行前述的机器人控制流程。

如图5所示,机器人控制装置40可包括一个检测模块401,用于检测人10的当前位置;一个区域确定模块402,用于根据检测模块401检测到的人10的当前位置,确定围绕人10的至少两个区域30;一个机器人控制模块403,用于控制机器人20在至少两个区域30的任一区域30内的运动,以在人10与机器人20的交互过程中保护人10的安全。

其中图5中的各模块可为机器人控制装置40中实现各个功能的功能模块,比如:检测模块401可用于检测人10和/或机器人20的当前位置;区域确定模块402可用于确定围绕人10的各个区域30;机器人控制模块403可用于控制机器人20在各个区域30的运动,以保证人10的安全。这些功能模块的控制逻辑可预先烧制到诸如现场可编程逻辑门阵列(fieldprogrammablegatearray,fpga)、复杂可编程逻辑器件(complexprogrammablelogicdevice,cpld)、系统级芯片(systemonchip,soc)等芯片上,芯片上电后,实现这些预先烧制的控制逻辑,实现对机器人20的控制。

其中,图5中的各模块也可视为机器人控制装置40中存储在至少一个存储器404中的机器可读代码。该机器可读代码可包括上述各模块,通过至少一个处理器405的调用,执行本发明实施例提供的机器人控制流程。

此外,本发明实施例还提供一种机器可读介质,其上存储有机器可读指令,该机器可读指令在被处理器执行时,使处理器执行前述的任一种方法。具体地,可以提供配有机器可读介质的系统或者装置,在该机器可读介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机或处理器读出并执行存储在该机器可读介质中的机器可读指令。

在这种情况下,从机器可读介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此机器可读代码和存储机器可读代码的机器可读介质构成了本发明的一部分。

机器可读介质的实施例包括软盘、硬盘、磁光盘、光盘(如cd-rom、cd-r、cd-rw、dvd-rom、dvd-ram、dvd-rw、dvd+rw)、磁带、非易失性存储卡和rom。可选择地,可以由通信网络从服务器计算机上或云上下载程序代码。

需要说明的是,上述各流程和各系统结构图中不是所有的步骤和模块都是必须的,可以根据实际的需要忽略某些步骤或模块。各步骤的执行顺序不是固定的,可以根据需要进行调整。上述各实施例中描述的系统结构可以是物理结构,也可以是逻辑结构,即,有些模块可能由同一物理实体实现,或者,有些模块可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。

以上各实施例中,硬件单元可以通过机械方式或电气方式实现。例如,一个硬件单元可以包括永久性专用的电路或逻辑(如专门的处理器,fpga或asic)来完成相应操作。硬件单元还可以包括可编程逻辑或电路(如通用处理器或其它可编程处理器),可以由软件进行临时的设置以完成相应操作。具体的实现方式(机械方式、或专用的永久性电路、或者临时设置的电路)可以基于成本和时间上的考虑来确定。

上文通过附图和优选实施例对本发明进行了详细展示和说明,然而本发明不限于这些已揭示的实施例,基于上述多个实施例本领域技术人员可以知晓,可以组合上述不同实施例中的代码审核手段得到本发明更多的实施例,这些实施例也在本发明的保护范围之内。

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