机器人的定位方法、装置、机器人以及存储介质与流程

文档序号:21450719发布日期:2020-07-10 17:43阅读:161来源:国知局
机器人的定位方法、装置、机器人以及存储介质与流程

本发明属于机器人技术领域,尤其涉及一种机器人的定位方法、装置、机器人以及存储介质。



背景技术:

机器人(例如洗地机器人)在准确定位的基础上,才能对周围环境自适应,进而规划路径,从而到达目的地执行任务。

现有技术中,采用激光定位技术进行机器人自主定位最为成熟与应用最为广泛,主要是采用激光雷达发射出一个激光信号,根据收到从物体反射回来的信号的时间差来计算这段距离,然后根据发射激光的角度来确定物体和发射器的角度,从而得出物体与发射器的相对位置。

激光定位方法虽然简单、精度较高、受环境光影响较小,然而,激光定位方法在一些特定的场景下效果并不理想,例如长廊、楼道等特征不充分的环境,在此类环境中采用激光定位存在定位不准确的问题,无法保证机器人在规划路径中完成预期任务。



技术实现要素:

本发明实施例提供一种机器人的定位方法,旨在解决特征不充分的环境下激光定位不准确的问题。

本发明实施例是这样实现的,一种机器人的定位方法,所述机器人包括蓝牙接收模块以及激光定位模块,所述蓝牙接收装置用于接收在预设区域内设置的多个蓝牙基站发送的通讯信号,所述方法包括如下步骤:

检测到所述机器人进入蓝牙基站覆盖范围内时,获取所述机器人与各个所述蓝牙基站的通讯信号;

根据所述通讯信号的强度以及发送所述通讯信号的蓝牙基站的位置信息计算所述机器人的第一位置;

获取所述激光定位模块检测到的所述机器人的第二位置,以及所述第二位置对应的扫描匹配得分;

当所述第二位置对应的扫描匹配得分小于第一预设阈值时,将所述第一位置作为所述机器人的当前位置。

更进一步地,所述获取所述机器人与各个所述蓝牙基站的通讯信号的步骤之前,所述方法还包括:

检测到所述机器人进入蓝牙基站覆盖范围内时,获取所述激光定位模块检测到的所述机器人的第二位置,以及所述第二位置对应的扫描匹配得分;

当所述第二位置对应的扫描匹配得分小于第二预设阈值时,执行所述获取所述机器人与各个所述蓝牙基站的通讯信号的步骤,并在根据所述通讯信号的强度以及发送所述通讯信号的蓝牙基站的位置信息计算所述机器人的第一位置之后,将所述第一位置作为所述机器人的当前位置。

更进一步地,所述获取所述机器人与各个所述蓝牙基站的通讯信号的步骤之前,所述方法还包括:

控制所述激光定位模块向所述机器人周围发射激光;

获取激光定位模块发射的激光点云;

根据所述激光点云获取所述机器人当前所在位置的场景轮廓信息;

当所述场景轮廓信息与预设轮廓信息匹配时,执行所述获取所述机器人与各个所述蓝牙基站的通讯信号的步骤。

更进一步地,所述根据所述激光点云获取所述机器人当前所在位置的场景轮廓信息的步骤包括:

将所述激光点云中的噪点去除;

根据去除噪点后的所述激光点云进行线段拟合;

通过所述线段拟合获取所述机器人当前所在位置的场景轮廓信息。

更进一步地,所述方法还包括如下步骤:

获取所述场景轮廓信息中的边界线信息;

根据所述边界线信息修正所述机器人当前的行进方向,以使所述行进方向与所述边界线平行。

更进一步地,将所述第一位置作为所述机器人的当前位置的步骤之后,所述方法还包括:

检测到所述机器人移动至所述蓝牙基站覆盖范围之外时,将激光定位模块检测到的所述第二位置作为所述机器人的当前位置。

本发明实施例还提供一种机器人的定位装置,所述机器人包括蓝牙接收模块以及激光定位模块,所述蓝牙接收装置用于接收在预设区域内设置的多个蓝牙基站发送的通讯信号,所述装置包括:

通讯信号获取单元,用于检测到所述机器人进入蓝牙基站覆盖范围内时,获取所述机器人与各个所述蓝牙基站的通讯信号;

第一位置计算单元,用于根据所述通讯信号的强度以及发送所述通讯信号的蓝牙基站的位置信息计算所述机器人的第一位置;

扫描匹配得分获取单元,用于获取所述激光定位模块检测到的所述机器人的第二位置,以及所述第二位置对应的扫描匹配得分;

当前位置获取单元,用于当所述第二位置对应的扫描匹配得分小于第一预设阈值时,将所述第一位置作为所述机器人的当前位置。

更进一步地,所述扫描匹配得分获取单元,还用于检测到所述机器人进入蓝牙基站覆盖范围内时,获取所述激光定位模块检测到的所述机器人的第二位置,以及所述第二位置对应的扫描匹配得分;

当前位置获取单元,还用于当所述第二位置对应的扫描匹配得分小于第二预设阈值时,执行所述获取所述机器人与各个所述蓝牙基站的通讯信号的步骤,并在根据所述通讯信号的强度以及发送所述通讯信号的蓝牙基站的位置信息计算所述机器人的第一位置之后,将所述第一位置作为所述机器人的当前位置。

更进一步地,所述装置还包括:

控制单元,用于控制所述激光定位模块向所述机器人周围发射激光;

激光点云获取单元,用于获取激光定位模块发射的激光点云;

轮廓信息获取单元,用于根据所述激光点云获取所述机器人当前所在位置的场景轮廓信息;

所述通讯信号获取单元,还用于当所述场景轮廓信息与预设轮廓信息匹配时,执行所述获取所述机器人与各个所述蓝牙基站的通讯信号的步骤。

更进一步地,所述轮廓信息获取单元包括:

去噪模块,用于将所述激光点云中的噪点去除;

拟合模块,用于根据去除噪点后的所述激光点云进行线段拟合;

轮廓信息获取模块,用于通过所述线段拟合获取所述机器人当前所在位置的场景轮廓信息。

更进一步地,所述装置还包括:

边界线获取单元,用于获取所述场景轮廓信息中的边界线信息;

修正单元,用于根据所述边界线信息修正所述机器人当前的行进方向,以使所述行进方向与所述边界线平行。

更进一步地,当前位置获取单元,还用于检测到所述机器人移动至所述蓝牙基站覆盖范围之外时,将激光定位模块检测到的所述第二位置作为所述机器人的当前位置。

本发明实施例还提供一种机器人,所述机器人包括蓝牙接收模块、激光定位模块以及所述的机器人的定位装置,其中,所述蓝牙接收装置用于接收在预设区域内设置的多个蓝牙基站发送的通讯信号。

本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有机器人的定位程序,所述机器人的定位程序被处理器执行时实现所述的机器人的定位方法的步骤。

本实施例解决了机器人在长走廊、楼道等特征不充分的环境下定位不准确的问题,当机器人行走到特征不充分的环境区域,启动蓝牙定位,弥补激光定位的不准确。在特征不充分的环境区域设置多个蓝牙基站,在启动蓝牙定位过程中,当激光定位的扫描匹配得分比较高时,也可采用激光定位结果。

附图说明

图1是本发明实施例一提供的机器人的定位方法流程图;

图2是本发明实施例一提供的另一机器人的定位方法流程图;

图3是本发明实施例二提供的机器人的定位方法流程图;

图4是本发明实施例三提供的机器人的定位方法流程图;

图5是本发明实施例三中的步骤s33流程图;

图6是本发明实施例三提供的机器人的定位方法另一流程图;

图7是本发明实施例四提供的机器人的定位装置框图;

图8是本发明实施例六提供的机器人的定位装置框图;

图9是本发明实施例六提供的轮廓信息获取单元63框图;

图10是本发明实施例六提供的机器人的定位装置另一框图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明提供一种机器人的定位方法,当检测到机器人进入蓝牙基站覆盖范围内时,说明机器人进入了长走廊区域,通过蓝牙定位得到机器人的第一位置,通过激光定位检测机器人的第二位置,当第二位置对应的扫描匹配得分小于第一预设阈值时,说明第二位置与机器人的实际位置匹配程度不够高,此时蓝牙定位得到机器人的第一位置更为准确,将其作为机器人的当前位置。解决了机器人在长走廊、楼道等特征不充分的环境下定位不准确的问题,当机器人行走到特征不充分的环境区域,启动蓝牙定位,弥补激光定位的不准确。在特征不充分的环境区域设置多个蓝牙基站,在启动蓝牙定位过程中,当激光定位的扫描匹配得分比较高时,也可采用激光定位结果。

实施例一

本实施例提供一种机器人的定位方法,该机器人包括蓝牙接收模块以及激光定位模块,蓝牙接收装置用于接收在预设区域内设置的多个蓝牙基站发送的通讯信号,该方法包括如下步骤:

步骤s11、检测到机器人进入蓝牙基站覆盖范围内时,获取机器人与各个蓝牙基站的通讯信号;

步骤s12、根据通讯信号的强度以及发送通讯信号的蓝牙基站的位置信息计算机器人的第一位置;

步骤s13、获取激光定位模块检测到的机器人的第二位置,以及第二位置对应的扫描匹配得分;

步骤s14、当第二位置对应的扫描匹配得分小于第一预设阈值时,将第一位置作为机器人的当前位置。

本实施例中,预设区域可以是长走廊区域,激光定位模块可以是激光雷达,在长走廊区域内设置多个蓝牙基站,当检测到机器人进入蓝牙基站覆盖范围内时,说明机器人进入了长走廊区域,通过蓝牙定位得到机器人的第一位置,通过激光定位检测机器人的第二位置,当第二位置对应的扫描匹配得分小于第一预设阈值时,说明第二位置与机器人的实际位置匹配程度不够高,此时蓝牙定位得到机器人的第一位置更为准确,将其作为机器人的当前位置。本实施例解决了机器人在长走廊、楼道等特征不充分的环境下定位不准确的问题,当机器人行走到特征不充分的环境区域,启动蓝牙定位,弥补激光定位的不准确。在特征不充分的环境区域设置多个蓝牙基站,在启动蓝牙定位过程中,当激光定位的扫描匹配得分比较高时,也可采用激光定位结果。

在步骤s14之后,该方法还可以进一步包括:

步骤s15、检测到机器人移动至蓝牙基站覆盖范围之外时,将激光定位模块检测到的第二位置作为机器人的当前位置。

具体地,在机器人移动至蓝牙基站覆盖范围之外时,机器人已经不在预设区域,此时通过激光定位模块即可获得机器人的定位信息,无需再进行蓝牙定位,退出蓝牙定位。因此,将激光定位模块检测到的第二位置作为机器人的当前位置。

实施例二

本实施例提供一种机器人的定位方法,如图3所示,包括:

步骤s21、检测到机器人进入蓝牙基站覆盖范围内时,获取激光定位模块检测到的机器人的第二位置,以及第二位置对应的扫描匹配得分;

步骤s22、当第二位置对应的扫描匹配得分小于第二预设阈值时,获取机器人与各个蓝牙基站的通讯信号;

步骤s23、根据通讯信号的强度以及发送通讯信号的蓝牙基站的位置信息计算机器人的第一位置;

步骤s24、将第一位置作为机器人的当前位置。

本实施例中,在实施例一的基础上调整了步骤的执行顺序,在启动蓝牙定位之前先通过激光定位获得第二位置,判断第二位置的扫描匹配得分,在扫描匹配得分较高(不小于第二预设阈值)时,说明第二位置与机器人的实际位置匹配程度足够高,此时无需启动蓝牙定位,增加此蓝牙启动条件,能够减少程序运算。当在扫描匹配得分较低(小于第二预设阈值)时,说明第二位置与机器人的实际位置匹配程度不够高,需要启动蓝牙定位,提高了定位效率。

由于激光定位准确度本身就低于蓝牙定位,因此对于于激光定位所获得的第二位置的匹配得分需要更高的要求,优选地,第二预设阈值大于或等于第一预设阈值,当第二位置的扫描匹配得分不小于第二预设阈值时,则说明激光定位所获取的第二位置的准确度达到足够高的程度,当第二位置的扫描匹配得分小于第二预设阈值时,启动蓝牙定位,以此提高了定位的准确性,弥补激光定位的缺陷。

实施例三

本实施例提供一种机器人的定位方法,如图4所示,该方法包括:

步骤s31、检测到机器人进入蓝牙基站覆盖范围内时,控制激光定位模块向机器人周围发射激光;

步骤s32、获取激光定位模块发射的激光点云;

步骤s33、根据激光点云获取机器人当前所在位置的场景轮廓信息;

步骤s34、当场景轮廓信息与预设轮廓信息匹配时,获取机器人与各个蓝牙基站的通讯信号;

步骤s35、根据通讯信号的强度以及发送通讯信号的蓝牙基站的位置信息计算机器人的第一位置;

步骤s36、获取激光定位模块检测到的机器人的第二位置,以及第二位置对应的扫描匹配得分;

步骤s37、当第二位置对应的扫描匹配得分小于第一预设阈值时,将第一位置作为机器人的当前位置。

本实施例,在获取机器人与各个蓝牙基站的通讯信号之前,可以通过激光定位模块发射的激光点云获取机器人当前所在位置的场景轮廓信息,当场景轮廓信息与预设轮廓信息匹配时,再获取机器人与各个蓝牙基站的通讯信号进行激光定位,避免场景轮廓信息与预设轮廓信息不匹配时误启动蓝牙定位,增加运行成本和计算时间。举例来说,预设轮廓为长走廊,轮廓成两条线、线条长度较长和/或两线间的距离为一定距离区间。

为了机器人当前所在位置的场景轮廓的线段拟合准确性,如图5所示,上述步骤s33还可以进一步包括:

步骤s331、将激光点云中的噪点去除;

步骤s332、根据去除噪点后的所述激光点云进行线段拟合;

步骤s333、通过线段拟合获取机器人当前所在位置的场景轮廓信息。

通过上述步骤,将激光点云中的噪点去除后,再进行线段拟合,能有效提高线段拟合的准确性,获得的场景轮廓信息与实际轮廓误差小。

在场景轮廓信息与预设轮廓信息匹配时,机器人已经进入特征不充分的环境,为了保证机器人在该环境内顺利运行,有必要对机器人的行进方向进行修正,避免行进方向由于定位误差而偏移预设路线方向,基于此,如图6所示,上述步骤s37之后,该方法还包括如下步骤:

步骤s38、获取场景轮廓信息中的边界线信息;

步骤s39、根据边界线信息修正机器人当前的行进方向,以使行进方向与边界线平行。

具体地,仍以预设轮廓为长走廊为例,根据获取的机器人当前所在位置的场景轮廓信息,提取到长走廊的边界线,根据边界线信息修正机器人的行进方向,使其平行于长走廊行进。

实施例四

与实施例一对应的,本实施例提供一种机器人的定位装置,机器人包括蓝牙接收模块以及激光定位模块,蓝牙接收装置用于接收在预设区域内设置的多个蓝牙基站发送的通讯信号,如图7所示,该装置包括:

通讯信号获取单元41,用于检测到机器人进入蓝牙基站覆盖范围内时,获取机器人与各个蓝牙基站的通讯信号;

第一位置计算单元42,用于根据通讯信号的强度以及发送通讯信号的蓝牙基站的位置信息计算机器人的第一位置;

扫描匹配得分获取单元43,用于获取激光定位模块检测到的机器人的第二位置,以及第二位置对应的扫描匹配得分;

当前位置获取单元44,用于当第二位置对应的扫描匹配得分小于第一预设阈值时,将第一位置作为机器人的当前位置。

可以理解的是,通讯信号获取单元41可用于执行上述实施例中的步骤s11,第一位置计算单元42可用于执行上述实施例中的步骤s12,扫描匹配得分获取单元43可用于执行上述实施例中的步骤s13,当前位置获取单元44可用于执行上述实施例中的步骤s14。

当前位置获取单元44,还进一步用于检测到所述机器人移动至蓝牙基站覆盖范围之外时,将激光定位模块检测到的第二位置作为机器人的当前位置。

可以理解的是,当前位置获取单元44,还可用于执行上述实施例中的步骤s15。

实施例五

本实施例提供一种机器人的定位装置,在实施例四的基础上,扫描匹配得分获取单元43,还可以进一步用于检测到机器人进入蓝牙基站覆盖范围内时,获取激光定位模块检测到的机器人的第二位置,以及第二位置对应的扫描匹配得分;

当前位置获取单元44,还可以进一步用于当第二位置对应的扫描匹配得分小于第二预设阈值时,执行获取机器人与各个蓝牙基站的通讯信号的步骤,并在根据通讯信号的强度以及发送通讯信号的蓝牙基站的位置信息计算机器人的第一位置之后,将第一位置作为机器人的当前位置。

可以理解的是,扫描匹配得分获取单元43还可以用于执行上述实施例中的步骤s21、步骤s22,当前位置获取单元44还可以用于执行上述实施例中的步骤s23、步骤s24。

实施例六

本实施例提供一种机器人的定位装置,在实施例四的基础上,如图8所示,该装置还包括:

控制单元61,用于控制激光定位模块向机器人周围发射激光;

激光点云获取单元62,用于获取激光定位模块发射的激光点云;

轮廓信息获取单元63,用于根据激光点云获取机器人当前所在位置的场景轮廓信息;

通讯信号获取单元41,还用于当场景轮廓信息与预设轮廓信息匹配时,执行获取机器人与各个蓝牙基站的通讯信号的步骤。

可以理解的是,控制单元61可用于执行上述实施例中的步骤s31,激光点云获取单元62可用于执行上述实施例中的步骤s32,轮廓信息获取单元63可用于执行上述实施例中的步骤s33,通讯信号获取单元41可用于执行上述实施例中的步骤s34。

优选地,如图9所示,上述轮廓信息获取单元63可以进一步包括:

去噪模块631,用于将激光点云中的噪点去除;

拟合模块632,用于根据去除噪点后的激光点云进行线段拟合;

轮廓信息获取模块633,用于通过线段拟合获取机器人当前所在位置的场景轮廓信息。

可以理解的是,去噪模块631可用于执行上述实施例中的步骤s331,拟合模块632可用于执行上述实施例中的步骤s332,轮廓信息获取模块633可用于执行上述实施例中的步骤s333。

优选地,如图10所示,该装置还进一步包括:

边界线获取单元64,用于获取场景轮廓信息中的边界线信息;

修正单元65,用于根据边界线信息修正机器人当前的行进方向,以使行进方向与边界线平行。

可以理解的是,边界线获取单元64可用于执行上述实施例中的步骤s38,修正单元65可用于执行上述实施例中的步骤s39。

实施例七

本发明实施例还提供一种机器人,机器人包括蓝牙接收模块、激光定位模块以及机器人的定位装置,其中,蓝牙接收装置用于接收在预设区域内设置的多个蓝牙基站发送的通讯信号。

所属领域的技术人员可以清楚的是,为描述的方便和简洁,机器人的定位装置的具体方案,可以参考前述装置实施例中的相应内容,在此不再赘述。

实施例八

本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有机器人的定位程序,机器人的定位程序被处理器执行时实现机器人的定位方法的步骤。

在处理器上运行的计算机程序被执行时所实现的机器人的定位方法可参照本发明实施例提供的机器人的定位方法的具体实施例,此处不再赘述。

处理器可以是专用集成电路(applicationspecificintegratedcircuit,简称asic)、数字信号处理器(digitalsignalprocessor,简称dsp)、数字信号处理设备(digitalsignalprocessingdevice,简称dspd)、可编程逻辑器件(programmablelogicdevice,简称pld)、现场可编程门阵列(fieldprogrammablegatearray,简称fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述实施例中的机器人的定位方法。

计算机可读存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(staticrandomaccessmemory,简称sram),电可擦除可编程只读存储器(electricallyerasableprogrammableread-onlymemory,简称eeprom),可擦除可编程只读存储器(erasableprogrammableread-onlymemory,简称eprom),可编程只读存储器(programmableread-onlymemory,简称prom),只读存储器(read-onlymemory,简称rom),磁存储器,快闪存储器,磁盘或光盘。

本发明实施例提供一种机器人的定位方法,当检测到机器人进入蓝牙基站覆盖范围内时,通过蓝牙定位得到机器人的第一位置,通过激光定位检测机器人的第二位置,当第二位置对应的扫描匹配得分小于第一预设阈值时,此时蓝牙定位得到机器人的第一位置更为准确,将其作为机器人的当前位置。在机器人移动至蓝牙基站覆盖范围之外时,通过激光定位模块即可获得机器人的定位信息,无需再进行蓝牙定位,退出蓝牙定位,将激光定位模块检测到的第二位置作为机器人的当前位置。本方法也可以在启动蓝牙定位之前先通过激光定位获得第二位置,判断第二位置的扫描匹配得分,在扫描匹配得分较高时无需启动蓝牙定位,能够减少程序运算。当在扫描匹配得分较低时需要启动蓝牙定位,提高了定位效率。优选地,在获取机器人与各个蓝牙基站的通讯信号之前,还可以通过激光定位模块发射的激光点云获取机器人当前所在位置的场景轮廓信息,当场景轮廓信息与预设轮廓信息匹配时,再获取机器人与各个蓝牙基站的通讯信号进行激光定位,避免场景轮廓信息与预设轮廓信息不匹配时误启动蓝牙定位,增加运行成本和计算时间。优选地,将激光点云中的噪点去除后,再进行线段拟合,能有效提高线段拟合的准确性,获得的场景轮廓信息与实际轮廓误差小。为了保证机器人在该环境内顺利运行,还可以对机器人的行进方向进行修正,避免行进方向由于定位误差而偏移预设路线方向。相应地,本发明实施例还提供一种机器人的定位装置、包括机器人的定位装置的机器人以及计算机可读存储介质。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

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