一种基于ros操作系统的机器人远程控制方法和远程控制系统的制作方法

文档序号:10653610阅读:988来源:国知局
一种基于ros操作系统的机器人远程控制方法和远程控制系统的制作方法
【专利摘要】本发明公开了一种基于ROS操作系统的机器人远程控制方法,包括如下步骤:步骤(1)、微型主机内安装ROS操作系统,利用ROS操作系统建立二维导航地图;或人工绘制二维导航地图,将二维导航地图储存至服务器后台;步骤(2)、按住客户端的语音按钮输入语音指令,并将语音指令传输至服务器,服务器接收语音指令后获取语音指令内的位置信息,生成规划路径,并根据规划路径生成序列操作指令;步骤(3)、微型主机根据序列操作指令控制机器人按序执行命令;步骤(4)、通过语音播报装置语音播报需要执行的命令以及命令执行结果。本发明客户端输入语音指令,生成规划路径,完成语音指令的任务并返回初始点,且能远程遥控室内家电。
【专利说明】
一种基于ROS操作系统的机器人远程控制方法和远程控制系统
技术领域
[0001]本发明属于机器人技术领域,特别是涉及一种基于ROS操作系统的机器人远程控制方法和远程控制系统。
【背景技术】
[0002]移动机器人是一种可在复杂环境下工作,具有自规划、自组织、自适应能力的机器人,具有行动快捷、工作效率高、结构简单、可控性强、安全性好等优势,目前在国内外正在被广泛的应用。
[0003]在移动机器人相关技术研究中,导航技术属于其核心技术,也是实现智能化和自主移动的关键技术。目前常见的导航方式有电磁导航、惯性导航、视觉导航、无线导航、卫星导航、传感器数据导航等等。传统的导航方式或多或少存在着一些弊端,电磁导航灵活性差,定位不准确,智能性不高且大面积磁条铺设维护成本高。如专利号201210083407.6公开的一种磁导航巡检机器人,包括:可见光摄像机、云台、红外热成像仪、托台、电机驱动器、计算机、声音采集器、交换机、无线接收器WCB、声音采集器、前避碰传感器、前导航传感器、履带、道路摄像机、烟雾探测器、后避碰传感器、环境检测器、后导航传感器、地标传感器,机器人由四部分组成,分别是磁导航部分、履带行走结构部分、控制和采集部分、无线通讯部分结合实现自动循环检测,所述的磁导航部分包含前导航传感器和后导航传感器,导航传感器用于接收地面机器人行走轨迹的磁条信号;所述的履带行走结构部分,包含履带、避碰传感器、电机驱动器、地标传感器、急停开关、轮子;所述的无线通讯部分,包含交换机、无线接收器、全向扩展天线;所述的控制和采集部分,包含一个微处理器和多个传感器,通过连接伺服驱动器控制车体的移动;传感器与处理器相连,处理器与无线网桥相连,将传感器采集到的数据经过处理后通过无线传输到远程的PC,实现远端对现场的实时监控。
[0004]而惯性导航灵活性好,但定位准确度差,运动过程中容易产生并积累偏差,适合于短距离移动。传统的视觉导航一般采用多目视觉的方式,定位精度可以达到很高,但在运动过程中的实时运算量很大,不够灵活,且受光照等周围环境的影响比较大;其他导航方式或多或少存在着稳定性差、定位精度低、或布设维护成本高等缺点。
[0005]随着机器人朝着复杂化、通用化以及工作环境不确定化发展,对代码的复用性、模块化提出了较高的要求。现有的Player、MOOS、CARMEN、YARP、Orocos、微软RoboticsStudiο等操作系统无法满足实际应用的需求。R0S(Robot Operating System)是一种开源机器人操作系统,能够提供类似于操作系统的功能,为机器人应用系统提供硬件抽象、底层驱动、消息传递和包管理,以及一些辅助开发工具,例如建立、编写和运行多机通信系统整合的程序。ROS操作系统的设计目标就是为了提高代码的复用性,所以采用一种分布式的进程架构,使得程序具有高度的独立性和低耦合性。针对ROS操作系统的优势,如何提供一种基于ROS操作系统的机器人系统,其能够实现远程语音输入指令,机器人根据输入的语音指令规划路径到达目的地,完成语音指令的相应操作,定位精度高,且能远程遥控开启或关闭室内家电,其有待进一步研究解决。

【发明内容】

[0006]本发明的目的就在于克服现有技术的不足,提供了一种基于ROS操作系统的机器人远程控制方法和远程控制系统,本发明通过客户端输入语音指令,机器人内的微型主机在ROS操作系统的作用下绘制二维导航地图或人工绘制二维导航地图,服务器获取客户端输入的语音指令中的位置信息,并与二维导航地图中的位置数据进行匹配以生成规划路径,根据规划路径到达指点目的地,通过语音播报装置语音播报需要执行的命令以及命令执行结果,任务完成后返回初始位置,具有定位精度高,机器人轨迹运动偏差小,且配合万能红外遥控功能,通过客户端输入控制设备名称,通过机器人红外开启或关闭控制设备,以实现远程遥控开启或关闭室内家电。
[0007]为了实现上述目的,本发明提供了一种基于ROS操作系统的机器人远程控制方法,包括如下步骤:
[0008]步骤(I)、微型主机内安装ROS操作系统,利用ROS操作系统中的xt1n采集到的摄像头数据生成二维点云数据,并利用gmapping框架和粒子滤波算法进行局部优化建立二维导航地图;或人工绘制二维导航地图,并将二维导航地图导入到微型主机内的ROS操作系统中,最后将二维导航地图储存至服务器后台;
[0009]步骤(2)、按住客户端的语音按钮输入语音指令,并将语音指令传输至服务器,月艮务器接收语音指令后获取语音指令内的位置信息,并将位置信息与服务器后台储存的二维导航地图中的位置数据进行匹配,得到匹配结果后生成规划路径,并根据规划路径生成序列操作指令;
[0010]步骤(3)、服务器将生成的序列操作指令发送到微型主机,微型主机根据序列操作指令控制机器人按序执行命令,以完成客户端语音指令中的相应操作,完成语音指令中指定操作后机器人返回初始位置;
[0011]步骤(4)、通过语音播报装置语音播报需要执行的命令以及命令执行结果;
[0012]步骤(5)、通过底座上的红外检测传感器、里程计和碰撞检测传感器检测机器人在按序执行命令过程中碰到的障碍物,并将检测数据通过微处理器发送给微型主机,微型主机内的ROS操作系统根据检测数据重新规划路径,以绕开障碍物。
[0013]进一步的,客户端登陆控制界面,通过按下控制界面上的方向键,以发送请求指令至服务器,服务器接收指令并解析后发送至微型主机,微型主机根据指令改变机器人的行走方向。
[0014]进一步的,通过客户端的控制界面能显示基于ROS操作系统生成的二维导航地图,在二维导航地图标记规划路径,同时能看到机器人在二维导航地图中所处的实时位置。
[0015]进一步的,在步骤(2)中,客户端利用科大讯飞SDK进行语音交互,SDK(将客户端输入的语音指令转化成文本指令后传输至服务器,服务器获取文本指令中的位置信息后与服务器后台储存的二维导航地图中的位置数据进行匹配,得到匹配结果后生成规划路径,并根据规划路径生成序列操作指令。
[0016]进一步的,在步骤(5)中,微型主机读取底座上的红外检测传感器的高低电平数据、里程计数据和碰撞检测传感器的高低电平数据,根据读取的数据通过ROS操作系统中cmd_vel发布Twi st消息,Twist消息包括机器人期望的前进速度和转向速度,通过微处理器解算Twist消息后,传输给底座上的电机,调整电机的输入电压或频率,以调整驱动轮的转速,以控制机器人的行走速度。
[0017]进一步的,按住客户端的语音按钮输入控制设备位置和控制设备名称的语音指令,并将语音指令传输至服务器,服务器接收语音指令后获取语音指令中控制设备位置的位置信息,并将位置信息与服务器后台储存的二维导航地图中的位置数据进行匹配,得到匹配结果后生成规划路径,并根据规划路径生成序列操作指令;同时获取语音指令中控制设备名称的红外发送率;服务器将生成的序列操作指令和红外发送率发送至微型主机,微型主机根据序列操作指令控制机器人按序执行命令以到达控制设备的位置处,到达后红外控制装置输出红外发送率以开启或关闭控制设备。
[0018]另外,本发明提供了一种实现基于ROS操作系统的机器人远程控制方法的远程控制系统,包括客户端、服务器,以及安装于机器人上的微型主机、摄像头和语音播报装置,还包括安装于机器人底座上的微处理器、红外检测传感器、里程计和碰撞检测传感器,所述客户端与所述服务器相通讯,所述服务器与所述微型主机相通讯,所述微型主机分别与所述摄像头、语音播报装置和微处理器相连接,所述微处理器分别与所述红外检测传感器、里程计和碰撞检测传感器相连接。
[0019]进一步的,所述底座上还安装有电机和驱动轮,所述微处理器与所述电机相连接,所述电机与所述驱动轮相连接。
[0020]进一步的,所述微型主机通过功率放大器与所述语音播报装置相连接。
[0021]进一步的,所述机器人上还安装有红外控制装置,所述微型主机与所述红外控制装置相连接。
[0022]与现有技术相比,本发明的有益效果:本发明通过客户端输入语音指令,机器人内的微型主机在ROS操作系统的作用下绘制二维导航地图或人工绘制二维导航地图,服务器获取客户端输入的语音指令中的位置信息,并与二维导航地图中的位置数据进行匹配以生成规划路径,根据规划路径到达指点目的地,通过语音播报装置语音播报需要执行的命令以及命令执行结果,任务完成后返回初始装置,具有定位精度高,机器人轨迹运动偏差小,实现了远程输入语音指令,机器人根据语音指令完成相应操作,智能化程度高。同时配合万能红外遥控功能,通过客户端输入控制设备名称,通过机器人红外开启或关闭控制设备,以实现远程遥控开启或关闭室内家电。
【附图说明】
[0023]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0024]图1为本发明实施例的框架原理图。
[0025]上述附图标记:
[0026]I客户端,2服务器,3摄像头,4微型主机,5语音播报装置,6微处理器,7红外控制装置,8红外检测传感器,9里程计,1碰撞检测传感器。
【具体实施方式】
[0027]下面结合附图对发明进一步说明,但不用来限制本发明的范围。
[0028]实施例
[0029]如图1所示,本发明提供的一种本发明的一种基于ROS操作系统的机器人远程控制方法,包括如下步骤:
[0030]步骤(I)、微型主机4内安装ROS操作系统,利用ROS操作系统中的xt1n(华硕深度摄像头)采集到的摄像头3数据生成二维点云数据,并利用gmapping(导航绘图)框架和粒子滤波算法进行局部优化建立二维导航地图;或人工绘制二维导航地图,并将二维导航地图导入到微型主机4内的ROS操作系统中,最后将二维导航地图储存至服务器2后台;
[0031]步骤(2)、按住客户端I的语音按钮输入语音指令,并将语音指令传输至服务器2,服务器2接收语音指令后获取语音指令内的位置信息,并将位置信息与服务器2后台储存的二维导航地图中的位置数据进行匹配,得到匹配结果后生成规划路径,并根据规划路径生成序列操作指令;
[0032]步骤(3)、服务器2将生成的序列操作指令发送到微型主机4,微型主机4根据序列操作指令控制机器人按序执行命令,以完成客户端I语音指令中的相应操作,完成语音指令中指定操作后机器人返回初始位置;
[0033]步骤(4)、通过语音播报装置5语音播报需要执行的命令以及命令执行结果;
[0034]步骤(5)、通过底座上的红外检测传感器8、里程计9和碰撞检测传感器10检测机器人在按序执行命令过程中碰到的障碍物,并将检测数据通过微处理器6发送给微型主机4,微型主机4内的ROS操作系统根据检测数据重新规划路径,以绕开障碍物。
[0035]客户端I登陆控制界面,通过按下控制界面上的方向键,以发送请求指令至服务器2,服务器2接收指令并解析后发送至微型主机4,微型主机4根据指令改变机器人的行走方向。
[0036]通过客户端I的控制界面能显示基于ROS操作系统生成的二维导航地图,在二维导航地图标记规划路径,同时能看到机器人在二维导航地图中所处的实时位置。
[0037]在步骤(2)中,客户端I利用科大讯飞SDK(Software Development Kit,即软件开发工具包)进行语音交互,SDK将客户端I输入的语音指令转化成文本指令后传输至服务器2,服务器2获取文本指令中的位置信息后与服务器2后台储存的二维导航地图中的位置数据进行匹配,得到匹配结果后生成规划路径,并根据规划路径生成序列操作指令。
[0038]在步骤(5)中,微型主机4读取底座上的红外检测传感器8的高低电平数据、里程计9数据和碰撞检测传感器10的高低电平数据,根据读取的数据通过ROS操作系统中cmd_vel(速度指令)发布Twi st (转动)消息,Twi st (转动)消息包括机器人期望的前进速度和转向速度,通过微处理器6解算Twist(转动)消息后,传输给底座上的电机,调整电机的输入电压或频率,以调整驱动轮的转速,以控制机器人的行走速度。
[0039]按住客户端I的语音按钮输入控制设备位置和控制设备名称的语音指令,并将语音指令传输至服务器2,服务器2接收语音指令后获取语音指令中控制设备位置的位置信息,并将位置信息与服务器2后台储存的二维导航地图中的位置数据进行匹配,得到匹配结果后生成规划路径,并根据规划路径生成序列操作指令;同时获取语音指令中控制设备名称的红外发送率;服务器2将生成的序列操作指令和红外发送率发送至微型主机4,微型主机4根据序列操作指令控制机器人按序执行命令以到达控制设备的位置处,到达后红外控制装置7输出红外发送率以开启或关闭控制设备。
[0040]本发明通过客户端I输入语音指令,机器人内的微型主机4在ROS操作系统的作用下绘制二维导航地图或人工绘制二维导航地图,服务器2获取客户端I输入的语音指令中的位置信息,并与二维导航地图中的位置数据进行匹配以生成规划路径,根据规划路径到达指点目的地,通过语音播报装置5语音播报需要执行的命令以及命令执行结果,任务完成后返回初始位置,具有定位精度高,机器人轨迹运动偏差小,实现了远程输入语音指令,机器人根据语音指令完成相应操作,智能化程度高。同时配合万能红外遥控功能,通过客户端I输入控制设备名称,通过机器人红外开启或关闭控制设备,以实现远程遥控开启或关闭室内家电。
[0041]另外,本发明提供的一种实现基于ROS操作系统的机器人远程控制方法的远程控制系统,包括客户端1、服务器2,以及安装于机器人上的微型主机4、摄像头3和语音播报装置5,还包括安装于机器人底座上的微处理器6、红外检测传感器8、里程计9和碰撞检测传感器10,所述客户端I与所述服务器2相通讯,所述服务器2与所述微型主机4相通讯,所述微型主机4分别与所述摄像头3、语音播报装置5和微处理器6相连接,所述微处理器6分别与所述红外检测传感器8、里程计9和碰撞检测传感器10相连接。
[0042]本发明远程控制系统的所述底座上还安装有电机和驱动轮,所述微处理器6与所述电机相连接,所述电机与所述驱动轮相连接。
[0043]本发明远程控制系统的所述微型主机4通过功率放大器与所述语音播报装置5相连接。
[0044]本发明远程控制系统的所述机器人上还安装有红外控制装置7,所述微型主机4与所述红外控制装置7相连接。
[0045]通过以下实施例进行具体说明:
[0046]—、要求机器人到某地拿东西的语音指令:客户端I语音输入目的地,服务器2获取语音指令中的位置信息,根据ROS操作系统生成的二维导航地图规划路径并生成序列操作指令,同时语音播报装置5语音播放出“我将要去某地”的指令;机器人根据序列操作指令到达目的地后,语音播报装置5语音播放出“我要拿东西”的指令,以提示操作人员将东西放置机器人货架上;当操作人员放好东西后,语音播报装置5语音播放出“已拿取东西”的指令,同时微型主机4接收语音播报装置5语音播放出的“已拿取东西”的指令后,微型主机4控制机器人返回初始位置。
[0047]二、要求机器人去某地叫人的语音指令:客户端I语音输入目的地和人名,服务器2获取语音指令中的位置信息以及人名,根据ROS操作系统生成的二维导航地图规划路径并生成序列操作指令,同时将人名数据格式转化为语境文本,机器人根据序列操作指令到达目的地后,将语境文本通过语音播报装置5语音播放出来,完成后返回初始位置。
[0048]三、要求机器人红外开启或关闭室内家电的语音指令:客户端语音输入控制设备位置和控制设备名称,服务器2获取语音指令中控制设备位置的位置信息,根据ROS操作系统生成的二维导航地图规划路径并生成序列操作指令;同时获取语音指令中控制设备名称的红外发送率;服务器2将生成的序列操作指令和红外发送率发送至微型主机4,微型主机4根据序列操作指令控制机器人按序执行命令以到达控制设备的位置处,到达后红外控制装置7输出红外发送率以开启或关闭控制设备,同时红外控制装置7成功开启或关闭控制设备后,将结果返回服务器2,服务器2根据返回结果,以提示客户端I发出下一个语音指令。
[0049]本发明将服务器2生成的按序操作指令,将任务抽象为串行任务和并行任务,简化任务管理流程,实现高实时性任务调度系统。将任务进行抽象,简化任务添加流程,降低任务编写复杂度。在保证任务调度效率的同时,保证了任务调度的可靠性,充分考虑了异常处理,保证程序的稳健性。
[0050]以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等同物界定。
【主权项】
1.一种基于ROS操作系统的机器人远程控制方法,其特征在于,包括如下步骤: 步骤(I )、微型主机内安装ROS操作系统,利用ROS操作系统中的xt 1n采集到的摄像头数据生成二维点云数据,并利用gmapping框架和粒子滤波算法进行局部优化建立二维导航地图;或人工绘制二维导航地图,并将二维导航地图导入到微型主机内的ROS操作系统中,最后将二维导航地图储存至服务器后台; 步骤(2)、按住客户端的语音按钮输入语音指令,并将语音指令传输至服务器,服务器接收语音指令后获取语音指令内的位置信息,并将位置信息与服务器后台储存的二维导航地图中的位置数据进行匹配,得到匹配结果后生成规划路径,并根据规划路径生成序列操作指令; 步骤(3)、服务器将生成的序列操作指令发送到微型主机,微型主机根据序列操作指令控制机器人按序执行命令,以完成客户端语音指令中的相应操作,完成语音指令中指定操作后机器人返回初始位置; 步骤(4)、通过语音播报装置语音播报需要执行的命令以及命令执行结果; 步骤(5)、通过底座上的红外检测传感器、里程计和碰撞检测传感器检测机器人在按序执行命令过程中碰到的障碍物,并将检测数据通过微处理器发送给微型主机,微型主机内的ROS操作系统根据检测数据重新规划路径,以绕开障碍物。2.根据权利要求1所述的一种基于ROS操作系统的机器人远程控制方法,其特征在于,客户端登陆控制界面,通过按下控制界面上的方向键,以发送请求指令至服务器,服务器接收指令并解析后发送至微型主机,微型主机根据指令改变机器人的行走方向。3.根据权利要求2所述的一种基于ROS操作系统的机器人远程控制方法,其特征在于,通过客户端的控制界面能显示基于ROS操作系统生成的二维导航地图,在二维导航地图标记规划路径,同时能看到机器人在二维导航地图中所处的实时位置。4.根据权利要求1所述的一种基于ROS操作系统的机器人远程控制方法,其特征在于,在步骤(2)中,客户端利用科大讯飞SDK进行语音交互,SDK将客户端输入的语音指令转化成文本指令后传输至服务器,服务器获取文本指令中的位置信息后与服务器后台储存的二维导航地图中的位置数据进行匹配,得到匹配结果后生成规划路径,并根据规划路径生成序列操作指令。5.根据权利要求1所述的一种基于ROS操作系统的机器人远程控制方法,其特征在于,在步骤(5)中,微型主机读取底座上的红外检测传感器的高低电平数据、里程计数据和碰撞检测传感器的高低电平数据,根据读取的数据通过ROS操作系统中cmd_vel发布Twist消息,Twist消息包括机器人期望的前进速度和转向速度,通过微处理器解算Twist消息后,传输给底座上的电机,调整电机的输入电压或频率,以调整驱动轮的转速,以控制机器人的行走速度。6.根据权利要求1所述的一种基于ROS操作系统的机器人远程控制方法,其特征在于,按住客户端的语音按钮输入控制设备位置和控制设备名称的语音指令,并将语音指令传输至服务器,服务器接收语音指令后获取语音指令中控制设备位置的位置信息,并将位置信息与服务器后台储存的二维导航地图中的位置数据进行匹配,得到匹配结果后生成规划路径,并根据规划路径生成序列操作指令;同时获取语音指令中控制设备名称的红外发送率;服务器将生成的序列操作指令和红外发送率发送至微型主机,微型主机根据序列操作指令控制机器人按序执行命令以到达控制设备的位置处,到达后红外控制装置输出红外发送率以开启或关闭控制设备。7.—种采用权利要求1?6任一项所述远程控制方法的机器人远程控制系统,其特征在于:包括客户端、服务器,以及安装于机器人上的微型主机、摄像头和语音播报装置,还包括安装于机器人底座上的微处理器、红外检测传感器、里程计和碰撞检测传感器,所述客户端与所述服务器相通讯,所述服务器与所述微型主机相通讯,所述微型主机分别与所述摄像头、语音播报装置和微处理器相连接,所述微处理器分别与所述红外检测传感器、里程计和碰撞检测传感器相连接。8.根据权利要求7所述的机器人远程控制系统,其特征在于,所述底座上还安装有电机和驱动轮,所述微处理器与所述电机相连接,所述电机与所述驱动轮相连接。9.根据权利要求7所述的机器人远程控制系统,其特征在于,所述微型主机通过功率放大器与所述语音播报装置相连接。10.根据权利要求7所述的机器人远程控制系统,其特征在于,所述机器人上还安装有红外控制装置,所述微型主机与所述红外控制装置相连接。
【文档编号】G05D1/02GK106020208SQ201610599824
【公开日】2016年10月12日
【申请日】2016年7月27日
【发明人】杨燕, 刘名运, 申颖, 夏锋, 李朝晖, 李景龙
【申请人】湖南晖龙股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1