一种基于ros操作系统的机器人位置丢失找回方法和控制系统的制作方法

文档序号:10692221阅读:716来源:国知局
一种基于ros操作系统的机器人位置丢失找回方法和控制系统的制作方法
【专利摘要】本发明公开了一种基于ROS操作系统的机器人位置丢失找回方法,包括如下步骤:步骤(1)、利用ROS操作系统建立导航地图;或人工绘制导航地图;步骤(2)、利用摄像头扫描ar_marker,获取ar_marker的ID信息和姿态信息,同时设定ar_marker在导航地图中的坐标并保存至微型主机内;步骤(3)、机器人随机游走,探索周边环境中的ar_marker;步骤(4)、当摄像头捕捉到ar_marker时,与保存在微型主机内的ar_marker的ID信息进行匹配;步骤(5)、通过机器人本身的坐标树转换读取摄像头相对于ar_marker的空间位置信息,获得机器人在导航地图中的位置和朝向角度;步骤(6)、重新定位机器人在导航地图中的位置。本发明机器人位置丢失时通过随机漫游探索位置标定好的ar_marker,实现机器人位置丢失后自主找回位置。
【专利说明】
一种基于ROS操作系统的机器人位置丢失找回方法和控制系统
技术领域
[0001]本发明属于机器人技术领域,特别是涉及一种基于ROS操作系统的机器人位置丢失找回方法和控制系统。
【背景技术】
[0002]在移动机器人相关技术研究中,导航技术属于其核心技术,也是实现智能化和自主移动的关键技术。目前常见的导航方式有电磁导航、惯性导航、视觉导航、无线导航、卫星导航、传感器数据导航等等。传统的导航方式或多或少存在着一些弊端,电磁导航灵活性差,定位不准确,智能性不高且大面积磁条铺设维护成本高。如专利号201210083407.6公开的一种磁导航巡检机器人,包括:可见光摄像机、云台、红外热成像仪、托台、电机驱动器、计算机、声音采集器、交换机、无线接收器WCB、声音采集器、前避碰传感器、前导航传感器、履带、道路摄像机、烟雾探测器、后避碰传感器、环境检测器、后导航传感器、地标传感器,机器人由四部分组成,分别是磁导航部分、履带行走结构部分、控制和采集部分、无线通讯部分结合实现自动循环检测,所述的磁导航部分包含前导航传感器和后导航传感器,导航传感器用于接收地面机器人行走轨迹的磁条信号;所述的履带行走结构部分,包含履带、避碰传感器、电机驱动器、地标传感器、急停开关、轮子;所述的无线通讯部分,包含交换机、无线接收器、全向扩展天线;所述的控制和采集部分,包含一个微处理器和多个传感器,通过连接伺服驱动器控制车体的移动;传感器与处理器相连,处理器与无线网桥相连,将传感器采集到的数据经过处理后通过无线传输到远程的PC,实现远端对现场的实时监控。
[0003]惯性导航灵活性好,但定位准确度差,运动过程中容易产生并积累偏差,适合于短距离移动。传统的视觉导航一般采用多目视觉的方式,定位精度可以达到很高,但在运动过程中的实时运算量很大,不够灵活,且受光照等周围环境的影响比较大;其他导航方式或多或少存在着稳定性差、定位精度低、或布设维护成本高等缺点。
[0004]现有导航技术在各自存在上述缺点的基础之上,还存在现有的导航技术在面对机器人位置丢失时,无法找回自身位置,从而无法再进行正确地导航,使得机器人无法再进行正常的工作,因此如何提供一种机器人位置丢失的找回方法,当机器人位置丢失时能自行找回,以继续导航完成操作。

【发明内容】

[0005]本发明的目的就在于克服现有技术的不足,提供一种基于ROS操作系统的机器人位置丢失找回方法和控制系统,本发明在机器人位置丢失时通过随机漫游探索位置标定好的arjnarker,以重新定位机器人位置,实现机器人位置丢失后自主找回位置,且能适应更加复杂环境下的位置找回。
[0006]为了实现上述目的,本发明提供了一种基于ROS操作系统的机器人位置丢失找回方法,包括如下步骤:
[0007]步骤(1)、微型主机内安装ROS操作系统,利用ROS操作系统采集摄像头扫描的环境三维数据并生成二维点云数据,利用gmapping框架和粒子滤波算法进行局部优化建立导航地图;或人工绘制导航地图,并将导航地图导入到微型主机内的ROS操作系统中;其中二维点云数据为以点的形式记录摄像头采集的数据,数据点中包含颜色信息和深度信息,并把空间的数据转换为平面上的数据;粒子滤波算法为寻找一组在状态空间传播的随机粒子对概率密度函数进行近似,以粒子均值代替积分运算,从而获得状态最小方差分布。
[0008]步骤(2)、机器人行走至ar_marker的前方,利用摄像头扫描ar_marker,以获取ar_marker的ID信息和相对于机器人的姿态信息,同时设定ar_marker在导航地图中的坐标并保存至微型主机内;
[0009]步骤(3)、当机器人在导航地图中的位置丢失时,机器人会随机游走,通过摄像头扫描环境并配合点云处理,探索周边环境中的arjnarker;
[00?0] 步骤(4)、当摄像头捕捉到ar_marker时,ROS操作系统便调用ar_track_alvar功能包识别ar_marker的ID信息并匹配保存在微型主机内的ar_marker的ID信息,匹配后调取ar_marker的姿态信息和ar_marker在导航地图中的坐标;
[0011 ]步骤(5)、通过机器人本身的坐标树转换读取摄像头相对于ar_marker的空间位置信息,并将读取到的摄像头相对于ar_marker的空间位置信息转化成ar_marker相对于机器人的空间位置信息,并结合arjnarker在导航地图中的空间位置,以获得机器人在导航地图中的位置和朝向角度;其中机器人本身的坐标树为机器人本身传感器和运动节点相对于base_l ink (机器人几何坐标中心)坐标系的坐标转换。
[0012]步骤(6)、在ROS操作系统的初始化姿态中将获得的机器人在导航地图中的位置和朝向角度修改成机器人的当前位置参数,以重新定位机器人在导航地图中的位置,从而找回位置丢失的机器人。
[0013]进一步的,通过显示屏显示微型主机生成的导航地图,且在显示屏上能看到机器人在导航地图中所处的实时位置。
[OOM]进一步的,通过微处理器读取底座上的红外悬空检测单元和压力检测单元的高低电平信号以检测机器人是否被人为搬走,并将检测数据通过微处理器发送给微型主机,以控制机器人找回位置。
[0015]进一步的,通过机器人底座上的霍尔传感器实时测量机器人的行走速度,并将监测到的速度值反馈至微处理器,并通过ROS操作系统的控制界面修改机器人行走的速度参数值,以通过微型主机将调整信号发送至微处理器,通过微处理器改变驱动电机的PWM以调整机器人行走速度。
[0016]进一步的,机器人在行走过程中,通过摄像头扫描环境以采集检测范围内的物体信息,并通过ROS操作系统转换成摄像头相对于物体的空间位置信息,当摄像头相对于物体的空间位置在障碍物范围内时,通过微处理器改变驱动电机的PWM以控制机器人减速行驶并转向绕开障碍物。
[0017]另外,本发明提供了一种实现基于ROS操作系统的机器人位置丢失找回方法的控制系统,包括安装于机器人上的微型主机和摄像头,以及安装于机器人底座上的微处理器、红外悬空检测单元和压力检测单元,所述微型主机分别与所述摄像头和微处理器相连接,所述微处理器与所述红外悬空检测单元和压力检测单元相连接。
[0018]进一步的,所述机器人上还安装有显示屏,所述显示屏与所述微型主机相连接。
[0019]进一步的,所述机器人底座上还设置有霍尔传感器,所述霍尔传感器与所述微处理器相连接。
[0020]本发明通过在微型主机内安装ROS操作系统。R0S(Robot Operating System)是一种开源机器人操作系统,能够提供类似于操作系统的功能,为机器人应用系统提供硬件抽象、底层驱动、消息传递和包管理,以及一些辅助开发工具,例如建立、编写和运行多机通信系统整合的程序。ROS操作系统的设计目标就是为了提高代码的复用性,所以采用一种分布式的进程架构,使得程序具有高度的独立性和低耦合性。本发明利用ROS操作系统的优势建立导航地图,以实现机器人的高精度导航。
[0021]本发明利用ROS操作系统建立的导航地图进行导航,以命令机器人完成相应操作,当机器人在完成相应操作的过程中出现位置丢失时,本发明通过机器人随机漫游探索位置标定好的ar_marker,在机器人识别ar_marker的前提下能精确定位机器人的位置和方向,同时配合CropBox(空间裁剪)将点云限制在固定大小的的立方体空间内,同时使用VoxelGrid(三维相素点)3D体素网格滤波器将点云之间的距离调整到2cm范围内,以减少点云数据优化了计算速度,提高识别率。
[0022]本发明为适应了更复杂的环境,配合使用了一套随机漫游探索算法,即机器人在一个空间里自由行走,只往一个方向转向,转动的角度随机分配,并配合摄像头避开障碍物,自由探索空间寻找ar_marker,以适应了更加复杂环境下的位置找回。
[0023]与现有技术相比,本发明的有益效果:本发明利用ROS操作系统建立导航地图,以实现机器人的高精度导航。当机器人在完成相应操作的过程中出现位置丢失时,本发明通过机器人随机漫游探索位置标定好的arjnarker,以重新定位机器人位置,实现机器人位置丢失后自主找回位置,且能适应更加复杂环境下的位置找回。
【附图说明】
[0024]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0025]图1为本发明实施例的流程示意图。
[0026]图2为本发明实施例的框架原理图。
[0027]上述附图标记:
[0028]I微型主机,2摄像头,3微处理器,4红外悬空检测单元,5压力检测单元。
【具体实施方式】
[0029]下面结合附图对发明进一步说明,但不用来限制本发明的范围。
[0030]实施例
[0031]如图1、2所示,本发明提供的一种本发明的一种基于ROS操作系统的机器人位置丢失找回方法,包括如下步骤:
[0032]步骤(I)、微型主机I内安装ROS操作系统,利用ROS操作系统采集摄像头2扫描的环境三维数据并生成二维点云数据,利用gmapping(导航绘图)框架和粒子滤波算法进行局部优化建立导航地图;或人工绘制导航地图,并将导航地图导入到微型主机I内的ROS操作系统中;其中二维点云数据为以点的形式记录摄像头采集的数据,数据点中包含颜色信息和深度信息,并把空间的数据转换为平面上的数据;粒子滤波算法为寻找一组在状态空间传播的随机粒子对概率密度函数进行近似,以粒子均值代替积分运算,从而获得状态最小方差分布。
[0033]步骤(2)、机器人行走至ar_marker的前方,利用摄像头2扫描ar_marker,以获取ar_marker的ID信息和相对于机器人的姿态信息,同时设定ar_marker在导航地图中的坐标并保存至微型主机I内;
[0034]步骤(3)、当机器人在导航地图中的位置丢失时,机器人会随机游走,通过摄像头2扫描环境并配合点云处理,探索周边环境中的arjnarker;
[0035]步骤(4)、当摄像头2捕捉到ar_marker时,ROS操作系统便调用ar_track_alvar(ar标记跟踪)功能包识别ar_mar ker的ID信息并匹配保存在微型主机I内的ar_marker的ID信息,匹配后调取ar_marker的姿态信息和ar_marker在导航地图中的坐标;
[0036]步骤(5)、通过机器人本身的坐标树转换读取摄像头2相对于ar_marker的空间位置信息,并将读取到的摄像头2相对于ar_marker的空间位置信息转化成ar_marker相对于机器人的空间位置信息,并结合arjnarker在导航地图中的空间位置,以获得机器人在导航地图中的位置和朝向角度;其中机器人本身的坐标树为机器人本身传感器和运动节点相对于base_l ink (机器人几何坐标中心)坐标系的坐标转换。
[0037]步骤(6)、在ROS操作系统的初始化姿态中将获得的机器人在导航地图中的位置和朝向角度修改成机器人的当前位置参数,以重新定位机器人在导航地图中的位置,从而找回位置丢失的机器人。
[0038]通过显示屏显示微型主机I生成的导航地图,且在显示屏上能看到机器人在导航地图中所处的实时位置。
[0039]通过微处理器读取底座上的红外悬空检测单元4和压力检测单元5的高低电平信号以检测机器人是否被人为搬走,并将检测数据通过微处理器3发送给微型主机I,以控制机器人找回位置。
[0040]通过机器人底座上的霍尔传感器实时测量机器人的行走速度,并将监测到的速度值反馈至微处理器3,并通过ROS操作系统的控制界面修改机器人行走的速度参数值,以通过微型主机I将调整信号发送至微处理器3,通过微处理器3改变驱动电机的PffM以调整机器人行走速度。
[0041]机器人在行走过程中,通过摄像头2扫描环境以采集检测范围内的物体信息,并通过ROS操作系统转换成摄像头2相对于物体的空间位置信息,当摄像头2相对于物体的空间位置在障碍物范围内时,通过微处理器3改变驱动电机的PWM以控制机器人减速行驶并转向绕开障碍物。
[0042]另外,本发明提供的一种实现基于ROS操作系统的机器人位置丢失找回方法的控制系统,包括安装于机器人上的微型主机I和摄像头2,以及安装于机器人底座上的微处理器3、红外悬空检测单元4和压力检测单元5,所述微型主机I分别与所述摄像头2和微处理器3相连接,所述微处理器3与所述红外悬空检测单元4和压力检测单元5相连接。
[0043]本发明控制系统的所述机器人上还安装有显示屏,所述显示屏与所述微型主机I相连接。
[0044]本发明控制系统的所述机器人底座上还设置有霍尔传感器,所述霍尔传感器与所述微处理器3相连接。
[0045]本发明通过在微型主机I内安装ROS操作系统。R0S(Robot Operating System)是一种开源机器人操作系统,能够提供类似于操作系统的功能,为机器人应用系统提供硬件抽象、底层驱动、消息传递和包管理,以及一些辅助开发工具,例如建立、编写和运行多机通信系统整合的程序。ROS操作系统的设计目标就是为了提高代码的复用性,所以采用一种分布式的进程架构,使得程序具有高度的独立性和低耦合性。本发明利用ROS操作系统的优势建立导航地图,以实现机器人的高精度导航。
[0046]本发明利用ROS操作系统建立的导航地图进行导航,以命令机器人完成相应操作,当机器人在完成相应操作的过程中出现位置丢失时,本发明通过机器人随机漫游探索位置标定好的ar_marker,在机器人识别ar_marker的前提下能精确定位机器人的位置和方向,同时配合CropBox(空间裁剪)将点云限制在固定大小的的立方体空间内,同时使用VoxelGrid(三维相素点)3D体素网格滤波器将点云之间的距离调整到2cm范围内,以减少点云数据优化了计算速度,提高识别率。
[0047]本发明为适应了更复杂的环境,配合使用了一套随机漫游探索算法,即机器人在一个空间里自由行走,只往一个方向转向,转动的角度随机分配,并配合摄像头避开障碍物,自由探索空间寻找ar_marker,以适应了更加复杂环境下的位置找回。
[0048]本发明利用ROS操作系统建立导航地图,以实现机器人的高精度导航。当机器人在完成相应操作的过程中出现位置丢失时,本发明通过机器人随机漫游探索位置标定好的arjnarker,以重新定位机器人位置,实现机器人位置丢失后自主找回位置,且能适应更加复杂环境下的位置找回。
[0049]以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等同物界定。
【主权项】
1.一种基于ROS操作系统的机器人位置丢失找回方法,其特征在于,包括如下步骤: 步骤(I)、微型主机内安装ROS操作系统,利用ROS操作系统采集摄像头扫描的环境三维数据并生成二维点云数据,利用gmapping框架和粒子滤波算法进行局部优化建立导航地图;或人工绘制导航地图,并将导航地图导入到微型主机内的ROS操作系统中; 步骤(2)、机器人行走至ar_marker的前方,利用摄像头扫描ar_marker,以获取ar_marker的ID信息和相对于机器人的姿态信息,同时设定ar_marker在导航地图中的坐标并保存至微型主机内; 步骤(3)、当机器人在导航地图中的位置丢失时,机器人会随机游走,通过摄像头扫描环境并配合点云处理,探索周边环境中的ar_mar ker ; 步骤(4)、当摄像头捕捉到ar_marker时,R0S操作系统便调用ar_track_alvar功能包识别ar_marker的ID信息并匹配保存在微型主机内的ar_marker的ID信息,匹配后调取ar_marker的姿态信息和ar_marker在导航地图中的坐标; 步骤(5)、通过机器人本身的坐标树转换读取摄像头相对于ar_marker的空间位置信息,并将读取到的摄像头相对于ar_marker的空间位置信息转化成ar_marker相对于机器人的空间位置信息,并结合arjnarker在导航地图中的空间位置,以获得机器人在导航地图中的位置和朝向角度; 步骤(6)、在ROS操作系统的初始化姿态中将获得的机器人在导航地图中的位置和朝向角度修改成机器人的当前位置参数,以重新定位机器人在导航地图中的位置,从而找回位置丢失的机器人。2.根据权利要求1所述的一种基于ROS操作系统的机器人位置丢失找回方法,其特征在于,通过显示屏显示微型主机生成的导航地图,且在显示屏上能看到机器人在导航地图中所处的实时位置。3.根据权利要求1所述的一种基于ROS操作系统的机器人位置丢失找回方法,其特征在于,通过微处理器读取底座上的红外悬空检测单元和压力检测单元的高低电平信号以检测机器人是否被人为搬走,并将检测数据通过微处理器发送给微型主机,以控制机器人找回位置。4.根据权利要求1所述的一种基于ROS操作系统的机器人位置丢失找回方法,其特征在于,通过机器人底座上的霍尔传感器实时测量机器人的行走速度,并将监测到的速度值反馈至微处理器,并通过ROS操作系统的控制界面修改机器人行走的速度参数值,以通过微型主机将调整信号发送至微处理器,通过微处理器改变驱动电机的PWM以调整机器人行走速度。5.根据权利要求1所述的一种基于ROS操作系统的机器人位置丢失找回方法,其特征在于,机器人在行走过程中,通过摄像头扫描环境以采集检测范围内的物体信息,并通过ROS操作系统转换成摄像头相对于物体的空间位置信息,当摄像头相对于物体的空间位置在障碍物范围内时,通过微处理器改变驱动电机的PWM以控制机器人减速行驶并转向绕开障碍物。6.—种采用权利要求1?5任一项所述位置丢失找回方法的机器人控制系统,其特征在于:包括安装于机器人上的微型主机和摄像头,以及安装于机器人底座上的微处理器、红外悬空检测单元和压力检测单元,所述微型主机分别与所述摄像头和微处理器相连接,所述微处理器与所述红外悬空检测单元和压力检测单元相连接。7.根据权利要求6所述的机器人控制系统,其特征在于,所述机器人上还安装有显示屏,所述显示屏与所述微型主机相连接。8.根据权利要求6所述的机器人控制系统,其特征在于,所述机器人底座上还设置有霍尔传感器,所述霍尔传感器与所述微处理器相连接。
【文档编号】G01C21/20GK106066179SQ201610596785
【公开日】2016年11月2日
【申请日】2016年7月27日
【发明人】李景龙, 李朝晖
【申请人】湖南晖龙股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1