一种可视化且自定义的ROS智能机器人人机交互系统及其控制方法

文档序号:26445317发布日期:2021-08-27 13:45阅读:436来源:国知局
一种可视化且自定义的ROS智能机器人人机交互系统及其控制方法

本发明涉及ros智能机器人人机交互领域,特别是指一种基于qtcreator的可视化且自定义的ros智能机器人人机交互系统及其控制方法。



背景技术:

近年来,随着计算机视觉和人工智能高新技术的逐成熟,人机协作的不断深入,ros智能机器人产品应用产业不断拓展,全球ros智能机器人行业将迎来新一轮的增长,将广泛地应用于人们生活中的每个角落。ros智能机器人在使用过程中,主要是通过终端命令输入,实现相应的功能,如:slam建图、slam导航、人脸识别、动态物体识别、二维码立体检测等,在使用过程中涉及到较多的命令和ubuntu终端命令操作,较为复杂且繁琐。虽然有3d可视化rviz和qt工具箱rqt作为显示,但是依然没办法充分满足多种多样的功能需求,无法满足使用者对于便捷性日益提升的需求。

因此,为实现ros智能机器人系统的简易操作、交互界面终端一键控制,针对ros智能机器人开发一款集成各种自定义功能的可视化人机交互系统具有十分重要的意义。



技术实现要素:

为了克服现有技术中ros智能机器人使用过程中,涉及到较多的命令和ubuntu终端操作较为复杂且繁琐问题,本发明实施例所要解决的技术问题在于,提供一种可视化且自定义的ros智能机器人人机交互系统及其控制方法。

为实现上述目的,本发明的第一个方面是包括激光探测及测距模块、深度相机及图像处理模块、ros图像话题显示模块、3d可视化rviz建图导航显示模块、ros智能机器人主节点控制模块、速度及电量显示模块和底盘控制模块;

所述激光探测及测距模块用于slam建图、slam导航,并与3d可视化rviz建图导航显示模块进行信息交互;

所述深度相机及图像处理模块用于提供ros智能机器人周围图像信息、运动物体识别检测、视觉巡线、人脸检测及二维码立体检测;

所述ros图像话题显示模块用于显示智能机器人前方图像信息、视觉巡线图像信息、运动物体识别图像信息、人脸识别图像信息及二维码立体检测图像信息,并完成人机交互任务;

所述3d可视化rviz建图导航显示模块用于显示周围环境slam建图及导航结果,并完成人机交互任务;

ros机器人主节点控制模块用于订阅与发布ros话题,并与3d可视化rviz建图导航显示模块进行信息交互;

所述速度及电量显示模块用于ros智能机器人电量与速度的实时显示;所述底盘控制模块用于ros智能机器人不同运动方向控制,同时可进行速度及角度大小调控。

进一步设置是所述激光探测及测距模块由用于探测目标的位置、速度等特征量的激光雷达组成;所述激光雷达用于ros智能机器人在未知的环境中从一个未知位置开始移动,移动过程中根据位置估计和地图进行自身定位,同时构建增量式地图,实现ros智能机器人的自主定位和导航;并将所需显示的建图与导航信息,由ros智能机器人主节点控制模块传输至3d可视化rviz建图导航显示模块。

进一步设置是所述深度相机及图像处理模块包括深度相机模块和图像处理单元;所述深度相机模块由ros智能机器人前端深度相机构成,用于实时拍摄机器人前端图像;所述图像处理单元采用ros中的cv_bridge功能包建立与opencv接口,用于深度摄像头图像的处理,完成人脸识别、动态物体识别和二维码立体检测,并将所需显示的图像信息,由ros智能机器人主节点控制模块传输至ros图像话题显示模块。

进一步设置是所述ros机器人主节点控制模块与ros图像话题显示模块、3d可视化rviz建图导航显示模块进行信息交互,完成ros智能机器人的多功能控制与显示;将机器人运动的图像、建图、导航信息通过图像、3d可视化rviz建图导航显示模块以图像的形式呈现给用户。

另外,本发明还提供一种ros智能机器人的控制方法,该控制方法通过权利要求1所述的人机交互系统进行,该控制方法包括以下步骤:

s1:进行ros智能机器人及虚拟机ip地址配置,连接远程机器人并启动,ros智能机器人系统开始工作,其主节点控制模块等待指令并发布相应功能话题;

s2:通过可视化、自定义人机交互系统进行ros智能机器人功能控制,具体通过终端一键控制实现slam建图、slam导航、人脸识别、动态物体识别和二维码立体检测启动命令发布;ros智能机器人主节点控制模块,接收功能指令并发布相应话题消息;驱动相应的激光探测及测距模块、深度相机及图像处理模块、底盘控制模块,实现相应话题功能;

s3:判断是否有话题发布,若有话题发布,则转至步骤s4;若无话题发布,则执行步骤s7,等待话题发布;

s4:判断功能话题类型,如果属于slam建图、slam导航话题类型,则执行步骤s5中的3d可视化rviz建图导航显示模块进行话题订阅,完成信息交互显示;如为人脸识别、动态物体识别、二维码立体检测等图像类型话题,则执行步骤s5中的ros图像话题显示模块进行话题订阅,完成信息交互显示;若为速度及电量话题,则执行步骤s5中的速度及电量显示模块进行话题订阅,完成信息交互显示;

s5:由ros图像话题显示模块、3d可视化rviz建图导航显示模块、速度及电量显示模块实时显示不同类型话题消息,实现人机信息交互;

s6:是否结束话题发布,若结束话题发布,执行步骤s2,过终端一键控制实现功能结束命令发布,ros智能机器人主节点控制模块,接收功能指令并关闭相应话题消息;否则,执行步骤s5,继续进行话题订阅,处于人机交互状态;

s7:等待超时,执行步骤s8,结束整个流程;若在等待时间内查阅到发布话题信息,则执行步骤s4。

进一步设置是,ros智能机器人人机交互系统,用户可进行自定义可视化功能模块,通过一键控制命令封装,并由ros智能机器人主节点控制模块发布相应功能话题,并由ros图像话题显示模块、3d可视化rviz建图导航显示模块等进行话题订阅,完成人机交互;

进一步设置是,3d可视化rviz建图导航显示模块属性,根据用户需求,由rviz配置界面进行设置;

进一步设置是,用户通过人机交互系统,完成ros智能机器人控制过程中人机交互的任务,可始终通过屏幕显示的实时图像、建图、导航等话题,查阅智能机器人不同功能结果及运行状态。

本发明具有如下有益效果:通过在ros环境下利用qtcreator工具开发的一款可视化、自定义人机交互界面,集成librviz库开发、速度仪表盘显示、键盘控制实现、电池电量显示与实现、订阅并显示图像话题、qt中订阅与发布ros话题等功能,可实现一键式操作实现ros智能机器人多功能控制,解决ros智能机器人在使用过程中涉及较多的命令和ubuntu终端命令操作,较为复杂且繁琐问题,实现slam建图、slam导航、人脸识别、动态物体识别、二维码立体检测等终端一键控制功能,可有效实现ros智能机器人简易控制与操作。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,根据这些附图获得其他的附图仍属于本发明的范畴。

图1为本发明的用于ros智能机器人控制的可视化、自定义人机交互系统的系统构成示意图;

图2为本发明的用于ros智能机器人控制的可视化、自定义人机交互系统示意图;

图3为本发明的用于ros智能机器人控制的可视化、自定义人机交互系统的工作步骤流程图;

图4本发明控制方法流程图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述。

针对上述问题,本实施例提供了一种用于ros智能机器人控制的人机交互系统,用于解决ros智能机器人使用过程中,涉及到较多命令和ubuntu终端操作等较为复杂且繁琐问题。

如图1所示,一种用于ros智能机器人控制的人机交互系统,包括激光探测及测距模块、深度相机及图像处理模块、ros图像话题显示模块、3d可视化rviz建图导航显示模块、ros智能机器人主节点控制模块、速度及电量显示模块、底盘控制模块。

所述激光探测及测距模块用于slam建图、slam导航,并与3d可视化rviz建图导航显示模块进行信息交互;在本实施例中,激光探测及测距模块探测目标的位置、速度等特征量的激光雷达组成,用于获取机器人周围障碍物的距离信息,构建增量式地图,实现ros智能机器人的自主定位和导航。具体地,本实施例选用思岚a1型激光雷达。

所述深度相机及图像处理模块用于提供智能机器人周围图像信息、运动物体识别检测、视觉巡线、人脸检测及二维码立体检测等;在本实施例中,深度相机及图像处理模块包括深度相机模块、图像处理单元;所述深度相机模块由ros智能机器人前端深度相机构成,用于实时拍摄机器人前端图像;所述图像处理单元采用ros中的cv_bridge功能包建立与opencv接口,实现ros强大的图像处理能力,用于深度摄像头图像的处理,完成人脸识别、动态物体识别、二维码立体检测等多种功能,所述深度相机及图像处理模块包括深度相机模块、图像处理单元;所述深度相机模块由ros智能机器人前端深度相机构成,用于实时拍摄机器人前端图像;所述图像处理单元采用ros中的cv_bridge功能包建立与opencv接口,实现ros强大的图像处理能力,用于深度摄像头图像的处理,完成人脸识别、动态物体识别、二维码立体检测等多种功能,并将所需显示的图像信息,由ros智能机器人主节点控制模块传输至图像话题显示模块。具体地,本实施例选用astarpro深度相机。

所述ros图像话题显示模块用于显示智能机器人前方图像信息、视觉巡线图像信息、运动物体识别图像信息、人脸识别图像信息及二维码立体检测图像信息,并完成人机交互任务;

所述3d可视化rviz建图导航显示模块用于显示周围环境slam建图及导航结果,并完成人机交互任务;ros机器人控制系统用于订阅与发布ros话题,实现不同功能,并与ros智能机器人主节点控制模块、3d可视化rviz建图导航显示模块进行信息交互。

并通过ros图像话题显示模块、3d可视化rviz建图导航显示模块、速度及电量显示模块进行人机交互,实现集成各种自定义功能的智能机器人可视化人机交互系统。

所述速度及电量显示模块用于ros智能机器人电量与速度的实时显示;

所述底盘控制模块用于ros智能机器人不同运动方向控制,同时可进行速度及角度大小调控。

参照附图2对本发明用于ros智能机器人控制的可视化、自定义人机交互系统进行说明。

如图2所示,1为终端一键控制命令封装,本实施例通过一键控制可实现slam建图、slam导航、动态物体识别、二维码立体检测等功能;通过1进行一键启动命令,ros智能机器人主节点控制模块,接收功能指令并发布相应话题消息(如slam建图话题、slam导航话题等);驱动相应的激光探测及测距模块、深度相机及图像处理模块、底盘控制模块,实现相应话题功能。

在本实施例中,实现slam建图功能,首先通过5进行ros智能机器人及虚拟机ip地址配置,连接远程机器人并启动;然后,由1发出slam建图指令,ros智能机器人主节点控制模块接收该指令,并发布slam建图话题及底盘控制话题,驱动思岚a1型激光雷达及底盘运动控制器,并由7控制机器人线速度、角速度大小及运动方向,获取机器人周围障碍物的距离信息,构建增量式地图;由23d可视化rviz建图导航显示模块订阅话题,并人机交互显示,实现对构建地图进行查阅。其中,本实施例ros智能机器人运动过程,电压及速度话题由速度及电量显示模块4与6进行人机交互显示。

在本实施例中,实现动态目标检测功能,由1发出动态目标检测指令,ros智能机器人主节点控制模块接收该指令,并发布动态目标检测话题,驱动astarpro深度相机,进行动态目标检测,获取动态目标物体;并由3ros图像话题显示模订阅图像话题,并人机交互显示;同时,由8日志显示窗口输出相应功能日志信息。

实施例2

本实施例提供了一种用于ros智能机器人控制的人机交互系统,其可以通过交互界面终端一键控制,实现ros话题发布与订阅,并通过ros图像话题显示模块、3d可视化rviz建图导航显示模块、速度及电量显示模块进行人机交互,实现集成各种自定义功能的智能机器人可视化人机交互系统。

如图3所示,一种用于ros智能机器人控制的人机交互系统,其包括以下步骤:

s1:进行ros智能机器人及虚拟机ip地址配置,连接远程机器人并启动,ros智能机器人系统开始工作,其主节点控制模块等待指令并发布相应功能话题;

s2:通过可视化、自定义人机交互系统进行ros智能机器人功能控制,具体通过终端一键控制实现slam建图、slam导航、人脸识别、动态物体识别、二维码立体检测等功能启动命令发布;ros智能机器人主节点控制模块,接收功能指令并发布相应话题消息;驱动相应的激光探测及测距模块、深度相机及图像处理模块、底盘控制模块,实现相应话题功能;

s3:判断是否有话题发布,若有话题发布,则转至步骤s4;若无话题发布,则执行步骤s7,等待话题发布;

s4:判断功能话题类型,如果属于slam建图、slam导航话题类型,则执行步骤s5中的3d可视化rviz建图导航显示模块进行话题订阅,完成信息交互显示;如为人脸识别、动态物体识别、二维码立体检测等图像类型话题,则执行步骤s5中的ros图像话题显示模块进行话题订阅,完成信息交互显示;若为速度及电量话题,则执行步骤s5中的速度及电量显示模块进行话题订阅,完成信息交互显示;

s5:由ros图像话题显示模块、3d可视化rviz建图导航显示模块、速度及电量显示模块实时显示不同类型话题消息,实现人机信息交互;

s6:是否结束话题发布,若结束话题发布,执行步骤s2,过终端一键控制实现功能结束命令发布,ros智能机器人主节点控制模块,接收功能指令并关闭相应话题消息;否则,执行步骤s5,继续进行话题订阅,处于人机交互状态;

s7:等待超时,执行步骤s8,结束整个流程;若在等待时间内查阅到发布话题信息,则执行步骤s4。

在本实施例提供的可视化、自定义人机交互系统及方法中,ros智能机器人人机交互系统,用户可进行自定义可视化功能模块,通过一键控制命令封装,并由ros智能机器人主节点控制模块发布相应功能话题,并由ros图像话题显示模块、3d可视化rviz建图导航显示模块等进行话题订阅,完成人机交互;

在本实施例中,3d可视化rviz建图导航显示模块属性,根据用户需求,由rviz配置界面进行设置;

在本实施例中,用户通过人机交互系统,完成ros智能机器人控制过程中人机交互的任务,可始终通过屏幕显示的实时图像、建图、导航等话题,查阅智能机器人不同功能结果及运行状态。

本发明在ros环境下利用qtcreator工具开发的一款可视化、自定义人机交互界面,集成librviz库开发、速度仪表盘显示、键盘控制实现、电池电量显示与实现、订阅并显示图像话题、qt中订阅与发布ros话题等功能,可实现slam建图、slam导航、人脸识别、动态物体识别、二维码立体检测等终端一键控制功能,可有效实现ros智能机器人简易控制与操作。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质,如rom/ram、磁盘、光盘等。

以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

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