一种基于ROS的服务机器人及其多目标自主巡航方法与流程

文档序号:15634828发布日期:2018-10-12 21:20阅读:2053来源:国知局

本发明属于服务机器人技术领域,特别是涉及一种基于ros的服务机器人及其多目标自主巡航方法。



背景技术:

近年来,随着科学技术的飞速发展和社会的需要,服务机器人技术也得到了不断的发展,服务机器人已经逐渐进入到家用,商用,导游,医疗,教育,安保等日常生活的各个领域。在人口老龄化加剧,生活压力增大的当今社会,人们需要服务机器人能够提供更加优质的服务。根据目前市场数据显示,在家用服务机器人中,大部分是清洁机器人和除草机器人,他们大多只能按照预先设定的命令完成任务,缺乏解决突发事件的能力,此外,目前投入使用的送餐机器人,在送餐过程中需要沿着预先设定的磁性导航条来指引行走,导航过程中自主性较低,并且大多只能完成一对一的任务。另外一些服务机器人由于精度和成本的原因,很难商业化,例如使用激光测距仪的服务机器人成本就相当高。针对传统服务机器人的这些不足之处,研发出一款具有自主巡航能力的服务机器人成为社会发展的必然趋势。



技术实现要素:

本发明的目的是实现服务机器人在至少两个目标点之间自主巡航,并且在每一次的巡航过程中实现自主导航,自主避障等功能,并且在保证功能的情况下尽可能的缩小成本。

为实现上述目的,本发明解决问题所采取的技术方案是:

一种基于ros的服务机器人,其特征在于,所述服务机器人是一种人形机器人,包含移动底盘,外壳(7)和支撑架(8),pc(10)。其中移动底盘包含有驱动导向支撑车轮组(1)、电机模块(2)、陀螺仪(3)、电子罗盘(4)、电源模块(5)和紧急避障模块(6)。外壳上安装有触摸屏显示器(9)和数据采集模块(11)。所述pc通过usb串口分别与所述紧急避障模块(6),数据采集模块(11),电机模块(2)进行通信。所述电源模块(5)包含电池和电源转换模块,电池电压通过电源转换模块转换为其他电压,供其他设备使用。

其中,上述所述驱动导向支撑车轮组(1)由四个万向轮和两个驱动轮组成,四个万向轮成正方形结构安装在所述服务机器人移动底盘底部,两个驱动轮安装在所述服务机器人移动底盘的中间位置的两侧。

上述所述紧急避障模块(6)包含一组8路超声波传感器,均匀的分散在服务机器人底盘的正前方和左右两侧。

上述所述数据采集模块(11)使用astra深度相机。

上述所述电机模块(5)包括两个直流电机和两个码盘。

上述所述的一种基于ros的服务机器人多目标自主巡航方法,包含以下步骤:

(1)初始化:配置自主巡航模块

(2)启动自主导航模块,并加载步骤(1)中创建的环境地图

(3)在步骤(2)中加载的地图中,手动确定服务机器人的初始位置

(4)随机的选择一个步骤(1)中设置的目标点作为服务机器人一次导航的目标位置

(5)判断步骤(4)中选择的目标位置是否与起始位置相同

(6)当目标位置与起始位置不同时,使用路径规划模块规划出一条从起始位置到目标位置的安全无障碍的路径

(7)当目标位置与起始位置相同时,重复步骤(4)到步骤(6)的方法,直到目标位置与起始位置不同,并规划出一条安全的路径为止

(8)服务机器人按照步骤(6)中规划出的路径行走

(9)判断服务机器人在行走过程中是否遇到突然出现的障碍物

(10)当服务机器人在行走过程中没有遇到突然出现的障碍物时,服务机器人将按照步骤(6)中规划的路径行走,直到到达目标位置为止

(11)当服务机器人在行走过程中遇到突然出现的障碍物时,使用紧急避障模块,通过转动或者后退躲避障碍物,然后重复步骤(6)到步骤(11)的方法,直到服务机器人到达目标位置为止

(12)设置当前目标位置的目标点位姿为下一次导航的起始位置

(13)判断是否结束巡航

(14)当服务机器人结束巡航任务时,那么退出自主巡航,任务结束

(15)当继续巡航任务时,重复步骤(4)到步骤(15)的方法,进行下一次的导航

(16)任务结束

上述所述步骤(1)所述的配置自主巡航模块的具体步骤是:

(1)启动服务机器人,启动数据采集模块

(2)控制服务机器人在环境中运行,采集环境信息

(3)利用步骤(2)中获取的环境信息,使用gmapping功能包建立环境的二位地图

(4)在步骤(3)中建立的地图上,标记出至少两个巡航目标点的位姿(包括位置和方向)

(5)将步骤(4)中得到的巡航目标点的位姿添加到自主巡航模块中

有益效果:本发明与现有技术相比,具有以下优点和有益效果

(1)服务机器人采用目前流行的机器人操作系统——ros,由于其本身的开源性,使得机器人软件系统对环境的适应性更强,同时也提高了软件系统的实时性。

(2)服务机器人采用紧急避障模块,使得服务机器人在环境发生变化的情况下,能够做出迅速的反应,准确的应对。

(3)服务机器人采用了深度相机采集环境信息,采集的数据信息是以相机为顶点的一个圆锥体,获取的环境信息更加丰富,建立的地图更加准确。

(4)服务机器人采用了触摸屏显示器,使用者能够随自己的意愿设定服务机器人巡航的目标点,丰富了人机交互的功能。

(5)服务机器人采用了多目标自主巡航,对比传统的单一点对点导航方法,多目标巡航可以让服务机器人在多个目标点之间连续、循环的行走。

附图说明

图1为服务机器人结构图

图2为服务机器人多目标自主巡航流程图

图3为服务机器人设置自主巡航目标点流程图

具体实施方式

下面结合附图,进一步阐述本发明。

本发明涉及一种基于ros的服务机器人及其多目标自主巡航方法,所述服务机器人是一种人形机器人,包含移动底盘,外壳7和支撑架8,pc10。其中移动底盘包含有驱动导向支撑车轮组1、电机模块2、陀螺仪3、电子罗盘4、电源模块5和紧急避障模块6。外壳上安装有触摸屏显示器9和数据采集模块11。所述pc通过usb串口分别与所述紧急避障模块6,数据采集模块11,电机模块2进行通信。启动服务机器人和数据采集模块11后,控制服务机器人在未知环境中运行,外壳上安装的astra深度相机采集环境信息,从移动底盘上读取编码器、陀螺仪3和电子罗盘4的信息,获取机器人的里程计信息,综合环境信息和里程计信息,使用ros提供的gmapping功能包,建立环境的二维地图,并在地图中获取至少两个巡航目标点的位姿,每个目标点的位姿包含位置和方向信息。将获取的巡航目标点的位姿添加到自主巡航模块中。启动自主巡航模块后,会在可视化窗口中自动加载已建立的二维地图,需要我们手动的在地图中确认服务机器人的初始位置,自主巡航模块会从巡航目标点中随机选取一个与起始位置不同的目标点作为一次导航的目标位置,使用路径规划模块规划出一条从起始位置到目标位置的安全、无碰撞的路径,服务机器人按照规划出来的路径从起始位置运行到目标位置,运行到目标位置后,服务机器人将当前的位置作为下一次巡航的起始位置,然后重复上述方法,进行巡航。在运行的过程中,服务机器人使用紧急避障模块躲避环境中出现的一些新的障碍物。

本发明服务机器人外形如图1所示,包含移动底盘,外壳7和支撑架8,pc10。其中移动底盘包含有驱动导向支撑车轮组1,电机模块2、陀螺仪3、电子罗盘4、电源模块5和紧急避障模块6。驱动导向支撑车轮组1包含有四个万向轮呈正方形结构均匀的安装在移动底盘的下方,起到导向和支撑的作用;两个驱动轮安装在移动底盘中心位置的两侧,起到驱动的作用,电机模块2包含有两个直流电机和两个编码器,两个编码器分别读取电机的实时速度;陀螺仪3和电子罗盘4用来检测服务机器人实时的朝向,即方向;电源模块5包含电池和电源转换模块,电池电压通过电源转换模块转换为其他电压,供其他设备使用;紧急避障模块6包含有一组八个超声波测距传感器,均匀的分布在服务机器人移动底盘的正前方和左右两侧,用来检测小范围内的障碍物,应对移动过程中的突然出现的障碍物;外壳上安装有触摸屏显示器()和数据采集模块(),数据采集模块使用astra深度相机,采集环境信息,并利用获取的环境信息,建立地图。c通过usb串口分别与所述紧急避障模块(6),数据采集模块(11),电机模块(2)进行通信。

如图2所示,本发明的基于ros的服务机器人多目标自主巡航方法,步骤如下:

(1)初始化:配置自主巡航模块

(2)启动自主导航模块,并加载步骤(1)中创建的环境地图

(3)在步骤(2)中加载的地图后,会在可视化界面中出现一张二维的地图,点击定位按钮,手动的在地图中确定服务机器人的初始位姿(位置和方向)

(4)随机的选择一个步骤(1)中设置的目标点作为服务机器人一次导航的目标位置

(5)判断步骤(4)中选择的目标位置是否与起始位置相同

(6)当目标位置与起始位置不同时,使用路径规划模块规划出一条从起始位置到目标位置的安全无障碍的路径

(7)当目标位置与起始位置相同时,重复步骤(4)到步骤(6)的方法,直到目标位置与起始位置不同,并规划出一条安全的路径为止

(8)服务机器人按照步骤(6)中规划出的路径行走

(9)判断服务机器人在行走过程中是否遇到突然出现的障碍物,例如之前环境中不存在的障碍物,或者是突然出现的行人等

(10)当服务机器人在行走过程中没有遇到突然出现的障碍物时,服务机器人将按照步骤(6)中规划的路径行走,直到到达目标位置为止

(11)当服务机器人在行走过程中遇到突然出现的障碍物时,使用紧急避障模块,也就是超声波传感器,通过每一个传感器检测服务机器人与障碍物之间的距离,调整避障策略,最后通过转动或者后退躲避障碍物,然后重复步骤(6)到步骤(11)的方法,直到服务机器人到达目标位置为止

(12)设置当前目标位置的目标点位姿为下一次导航的起始位置,

(13)判断是否结束巡航

(14)当服务机器人结束巡航任务时,那么退出自主巡航,任务结束

(15)当继续巡航任务时,重复步骤(4)到步骤(15)的方法,进行下一次的导航,一直不退出巡航就可以反复在设定的巡航目标点之间运行,达到巡航的目的

(16)任务结束

上述所述基于ros的服务机器人多目标自主巡航方法,其特征在于,步骤(1)所述的配置自主巡航模块。如图3所示,包括以下步骤:

(1)启动服务机器人,启动数据采集模块

(2)控制服务机器人在环境中运行,采集环境信息

(3)利用步骤(2)中获取的环境信息,使用gmapping功能包建立环境的二位地图

(4)在步骤(3)中建立的地图上,标记出至少两个巡航目标点的位姿(包括位置和方向)

(5)将步骤(4)中得到的巡航目标点的位姿添加到自主巡航模块中。

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