首页 / 专利库 / 人工智能 / 机器人自主导航 / 基于Docker容器的云机器人导航系统及其工作方法

基于Docker容器的机器人导航系统及其工作方法

阅读:499发布:2020-05-15

专利汇可以提供基于Docker容器的机器人导航系统及其工作方法专利检索,专利查询,专利分析的服务。并且本 发明 提供一种基于Docker容器的 云 机器人 导航系统 及其工作方法,包括:云控制平台以及 移动机器人 ,移动机器人包括第一无线收发器、用于实现自身移动的移动本体、用于采集自身周围环境图像数据的环境 感知 组件以及对图像数据绘制区域地图的 数据处理 器,所述云控制平台包括与所述第一无线收发器通信的第二无线收发器、用于通过所述第二无线收发器接收所述移动机器人的采集数据以及向所述数据处理器发送控制指令的 服务器 主机,服务器主机具有Docker ROS容器,数据处理器通过第一无线收发器接收所述控制指令,通过采用Docker容器云控制平台,具有可移植性高、以应用为中心、自动化构建、节约带宽资源、组件重用、镜像共享以及工具 生态系统 等优点。,下面是基于Docker容器的机器人导航系统及其工作方法专利的具体信息内容。

1.一种基于Docker容器的机器人导航系统,其特征在于,包括:云控制平台以及一个以上的移动机器人,所述移动机器人与所述云控制平台之间采用无线通信信道连接;
所述移动机器人包括第一无线收发器、用于实现自身移动的移动本体、用于采集自身周围环境图像数据的环境感知组件以及对所述图像数据绘制区域地图的数据处理器,所述数据处理器分别与所述移动本体、所述环境感知组件电连接;
所述云控制平台包括与所述第一无线收发器通信的第二无线收发器、用于通过所述第二无线收发器接收所述移动机器人的采集数据以及向所述数据处理器发送控制指令的服务器主机,所述服务器主机具有Docker ROS容器,所述数据处理器通过所述第一无线收发器接收所述控制指令。
2.根据权利要求1所述的基于Docker容器的云机器人导航系统,其特征在于,所述数据处理器设置于所述移动本体内部,所述环境感知组件设置在所述移动本体上。
3.根据权利要求1所述的基于Docker容器的云机器人导航系统,其特征在于,所述控制指令包括地图绘制指令和导航指令,所述数据处理器还用于根据所述地图绘制指令控制所述移动本体在周围环境中运动并绘制区域地图,并根据所述导航指令确定所述移动本体在所述绘制的区域地图中的行进方向和行进路线。
4.根据权利要求3所述的基于Docker容器的云机器人导航系统,其特征在于,所述移动本体还用于根据所述行进方向和所述行进路线进行导航。
5.根据权利要求1所述的基于Docker容器的云机器人导航系统,其特征在于,还包括用于提供预存的预绘制地图的存储设备,所述存储设备与所述移动机器人采用无线连接。
6.根据权利要求1所述的基于Docker容器的云机器人导航系统,其特征在于,所述移动机器人还包括用于提供预存的预绘制地图的存储器,所述存储器与所述数据处理器电连接。
7.根据权利要求1所述的基于Docker容器的云机器人导航系统,其特征在于,所述移动机器人还包括用于安装所述环境感知组件并实现转动的旋转运动组件,所述旋转运动组件安装在所述移动本体上,所述旋转运动组件与所述数据处理器电连接。
8.根据权利要求6或7所述的基于Docker容器的云机器人导航系统,其特征在于,所述预绘制地图为所述移动机器人在环境区域内移动并通过SLAM算法绘制所在区域的地图。
9.根据权利要求1所述的基于Docker容器的云机器人导航系统,其特征在于,所述环境感知组件包括摄像头、红外传感器、激光传感器中至少一种或多种。
10.一种如权利要求1-9任意一项所述的基于Docker容器的云机器人导航系统的工作方法,其特征在于,包括以下步骤:
S1、在服务器主机上配置云机器人的通讯网络;
S2、在服务器主机上指定每个云机器人的通讯地址(IP地址);
S3、在移动机器人上运行SLAM的地图构建程序;
S4、在服务器主机上运行rivz软件同步显示地图的构建,完成后并保存;
S5、在服务器主机上打开构建的地图,并在地图上指定目的地,移动机器人能够自主导航到目的地。

说明书全文

基于Docker容器的机器人导航系统及其工作方法

技术领域

[0001] 本发明涉及云平台机器人控制领域,特别涉及一种基于Docker容器的云机器人导航系统及其工作方法。

背景技术

[0002] 目前,应用于服务机器人的导航技术多种多样,其中最常用的主要有磁导航、惯性导航、传感器导航、卫星导航、视觉导航。
[0003] 磁导航:机器人磁导航主要通过以下方式实现,在行驶路线下埋设能够产生磁场的结构(如可通电导线或磁),通过机器人上安装的磁传感器检测磁场,并引导机器人按照预定轨道行驶进行导航。
[0004] 惯性导航:惯性导航最初主要应用于航空宇航领域,该导航系统分为平台式惯导系统和捷联式惯导系统两类,平台式惯导系统存在一个物理平台,惯性元件安装在物理平台上测量平台相对于惯性空间的速度与加速度;捷联式惯导系统采用数字式平台替代了传统的物理平台,将惯性器件直接固连在载体上。
[0005] 传感器数据导航:通过非视觉传感器进行定位导航,常用的传感器数据导航技术有红外导航,超声导航激光导航。红外导航利用红外传感器进行距离测量,判断机器人在环境中的位置。其结构简单,反应速度快,但易受光线、颜色、形状等影响。超声导航是应用最为广泛的传感器导航技术,通过超声传感器实现距离测量进而完成导航,该方法成本低,结构简单,不受光线影响,但易受物体表面形状影响而降低导航精度且无法探测远距离物体。激光导航通过激光传感器测距,原理与红外导航和超声导航基本相同,但是激光信号能量密度大,亮度高,颜色纯,因此激光导航的精度更高,测量的距离更远且分辨率更好,但是成本相对较高。
[0006] 卫星导航:卫星导航最开始应用于军事领域,通过给机器人安装卫星信号接收系统,利用全球导航卫星系统提供的位置、速度、时间等信息来完成导航。之后,民用卫星导航的精度逐渐得到提高,而卫星导航不受地形,环境等的影响,可提供全球性的导航,因此卫星导航的应用范围较广,但导航精度不高。
[0007] 视觉导航:机器视觉技术已广泛应用于服务机器人导航系统。视觉导航主要通过在机器人上装载摄像机,获取机器人周围环境的视觉信息,通过图像处理完成障碍物以及路标的识别,得到导航参数并完成导航。据摄像机数目的不同,视觉导航分为单目视觉导航,双目视觉导航以及多目视觉导航。单目视觉系统计算量小,算法已经较为成熟,但其视野范围有限;双目视觉系统能够获得较为全面的环境信息,并且能够通过立体匹配得到场景中的深度信息,实现准确的三维定位;多目视觉系统可以观测到环境的不同方位,但其结构复杂,且需要处理的信息量过大,目前针对多目视觉的研究相对较少。
[0008] 当前的各类导航技术主要有以下缺点;
[0009] 磁导航:可变性和维护性差,无法实现避障运动;
[0010] 惯性导航:随着路程增加,误差会累积,导致精度下降;
[0011] 传感器导航:相互产生干扰,无法很好识别,吸收性强或者透明的障碍物;
[0012] 卫星导航:定位精度低,无法进行室内导航;
[0013] 视觉导航:计算量大、远距离时精度较低。

发明内容

[0014] 本发明实施例提供了一种基于Docker容器的云机器人导航系统及其工作方法,解决上述之一问题,并具有可移植性高、以应用为中心、自动化构建、节约带宽资源、组件重用以及镜像共享等优点。
[0015] 一种基于Docker容器的云机器人导航系统,包括:云控制平台以及一个以上的移动机器人,所述移动机器人与所述云控制平台之间采用无线通信信道连接;
[0016] 所述移动机器人包括第一无线收发器、用于实现自身移动的移动本体、用于采集自身周围环境图像数据的环境感知组件以及对所述图像数据绘制区域地图的数据处理器,所述数据处理器分别与所述移动本体、所述环境感知组件电连接;
[0017] 所述云控制平台包括与所述第一无线收发器通信的第二无线收发器、用于通过所述第二无线收发器接收所述移动机器人的采集数据以及向所述数据处理器发送控制指令的服务器主机,所述服务器主机具有Docker ROS容器,所述数据处理器通过所述第一无线收发器接收所述控制指令。
[0018] 作为一种可选的方案,所述数据处理器设置于所述移动本体内部,所述环境感知组件设置在所述移动本体上。
[0019] 作为一种可选的方案,所述控制指令包括地图绘制指令和导航指令,所述数据处理器还用于根据所述地图绘制指令控制所述移动本体在周围环境中运动并绘制区域地图,并根据所述导航指令确定所述移动本体在所述绘制的区域地图中的行进方向和行进路线。
[0020] 作为一种可选的方案,所述移动本体还用于根据所述行进方向和所述行进路线进行导航。
[0021] 作为一种可选的方案,还包括用于提供预存的预绘制地图的存储设备,所述存储设备与所述移动机器人采用无线连接。
[0022] 作为一种可选的方案,所述移动机器人还包括用于提供预存的预绘制地图的存储器,所述存储器与所述数据处理器电连接。
[0023] 作为一种可选的方案,所述移动机器人还包括用于安装所述环境感知组件并实现转动的旋转运动组件,所述旋转运动组件安装在所述移动本体上,所述旋转运动组件与所述数据处理器电连接。
[0024] 作为一种可选的方案,所述预绘制地图为所述移动机器人在环境区域内移动并通过SLAM算法绘制所在区域的地图。
[0025] 作为一种可选的方案,所述环境感知组件包括摄像头、红外传感器、激光传感器中至少一种或多种。
[0026] 为了解决上述技术问题,本发明还提供一种如上述任意一项所述导航系统的工作方法,包括以下步骤:
[0027] S1、在服务器主机上配置云机器人的通讯网络;
[0028] S2、在服务器主机上指定每个云机器人的通讯地址(IP地址);
[0029] S3、在移动机器人上运行SLAM的地图构建程序;
[0030] S4、在服务器主机上运行rivz软件同步显示地图的构建,完成后并保存;
[0031] S5、在服务器主机上打开构建的地图,并在地图上指定目的地,移动机器人能够自主导航到目的地。
[0032] 本发明提供一种基于Docker容器的云机器人导航系统及其工作方法,包括:云控制平台以及移动机器人,所述移动机器人与所述云控制平台之间采用无线通信信道连接;所述移动机器人包括第一无线收发器、用于实现自身移动的移动本体、用于采集自身周围环境图像数据的环境感知组件以及对所述图像数据绘制区域地图的数据处理器,所述数据处理器分别与所述移动本体、所述环境感知组件电连接,所述云控制平台包括与所述第一无线收发器通信的第二无线收发器、用于通过所述第二无线收发器接收所述移动机器人的采集数据以及向所述数据处理器发送控制指令的服务器主机,所述服务器主机具有Docker ROS容器,所述数据处理器通过所述第一无线收发器接收所述控制指令,通过采用Docker容器云控制平台,通过结合云机器人的平台技术与SLAM视觉构图技术,可以克服单体机器人构图与导航的诸多困难,具有可移植性高、以应用为中心、自动化构建、节约带宽资源、组件重用、镜像共享以及工具生态系统等优点。
附图说明
[0033] 图1是本发明实施例提供的基于Docker容器的云机器人导航系统的结构框图
[0034] 图2是本发明实施例提供的基于Docker容器的云机器人导航系统中云控制平台的工作流程图
[0035] 图3是本发明实施例提供的基于Docker容器的云机器人导航系统中服务器主机的工作流程图。

具体实施方式

[0036] 为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0037] 本发明的说明书权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0038] 结合图1所示,本发明实施例中提供一种基于Docker容器的云机器人导航系统,包括:云控制平台以及移动机器人,所述移动机器人与所述云控制平台之间采用无线通信信道连接;所述移动机器人包括第一无线收发器、用于实现自身移动的移动本体、用于采集自身周围环境图像数据的环境感知组件以及对所述图像数据绘制区域地图的数据处理器,所述数据处理器分别与所述移动本体、所述环境感知组件电连接,所述云控制平台包括与所述第一无线收发器通信的第二无线收发器、用于通过所述第二无线收发器接收所述移动机器人的采集数据以及向所述数据处理器发送控制指令的服务器主机,所述服务器主机具有Docker ROS容器,所述数据处理器通过所述第一无线收发器接收所述控制指令,通过采用Docker容器云控制平台,通过结合云机器人的平台技术与SLAM视觉构图技术,可以克服单体机器人构图与导航的诸多困难,具有可移植性高、以应用为中心、自动化构建、节约带宽资源、组件重用、镜像共享以及工具生态系统等优点。
[0039] 移动本体可以设置有外壳以保护内部的元器件和整体美观,所述数据处理器设置于所述移动本体内部,即壳内,所述环境感知组件设置在所述移动本体上,即壳上,本领域普通技术人员可以灵活选择对此不做限定。
[0040] 具体地,所述控制指令可以包括地图绘制指令和导航指令,所述数据处理器可以根据所述地图绘制指令控制所述移动本体在周围环境中运动并绘制区域地图,并根据所述导航指令确定所述移动本体在所述绘制的区域地图中的行进方向和行进路线,移动本体还用于根据所述行进方向和所述行进路线进行导航。
[0041] 对于预存预绘制地图的方式,本实施例中提供两种方式,一种是采用外置存储的方式,具体是还包括用于提供预存的预绘制地图的存储设备,所述存储设备与所述移动机器人采用无线连接,具体可以采用蓝牙或者近场通信等方式,具体不做限定。
[0042] 作为一种可选的方案,所述移动机器人还包括用于提供预存的预绘制地图的存储器,所述存储器与所述数据处理器电连接。
[0043] 为了实现环境感知组件对周围环境扫描,移动机器人还包括用于安装所述环境感知组件并实现转动的旋转运动组件,所述旋转运动组件安装在所述移动本体上,所述旋转运动组件与所述数据处理器电连接,旋转运动组件在所述数据处理器的控制下使移动机器人带动环境感知组件在空间平移、转弯,以使环境感知组件拍摄到周围环境状况,本实施例中旋转运动组件可以采用伺服电机结构。
[0044] 预绘制地图为所述移动机器人在环境区域内移动并通过SLAM算法绘制所在区域的地图,SLAM技术,即时定位与地图构建,机器人从未知环境的未知地点出发,在运动过程中通过重复观测到的地图特征(比如,墙角,柱子等)定位自身位置和姿态,再根据自身位置增量式的构建地图,从而达到同时定位和地图构建的目的。
[0045] 本实施例中,环境感知组件包括摄像头、红外传感器、激光传感器中至少一种或多种,本领域普通技术人员可以灵活选择,对此不做限定。
[0046] 作为一种可选的方案,所述机器人至少包括一个,可以对多个机器人同时进行控制操作。
[0047] 结合图2所示,对于云控制平台,其工作方法可以是这样的:
[0048] S1、在服务器主机上配置云机器人的通讯网络;
[0049] S2、在服务器主机上指定每个云机器人的通讯地址(IP地址);
[0050] S3、在移动机器人上运行SLAM的地图构建程序;
[0051] S4、在服务器主机上运行rivz软件同步显示地图的构建,完成后并保存;
[0052] S5、在服务器主机上打开构建的地图,并在地图上指定目的地,移动机器人能够自主导航到目的地。
[0053] 结合图3所示,在服务器主机进行网络设置可以包括:
[0054] S11、在服务器主机开启网关服务器的路由转发功能,设置net.ipv4.ip_forward=1;
[0055] S12、在服务器主机启动Docker容器(ROS(Robot Operating System)作为启动镜像),网络设置为none模式,关闭bridge模式,设置容器环境变量(--env="DISPLAY)、(--env="QT_X11_NO_MITSHM=1")数据卷共享变量(--volume="/tmp/.X11-unix:/tmp/.X11-unix:rw");
[0056] S13、在服务器主机的容器外终端窗口,设置X server host的权限(xhost+local:root);
[0057] S14、在服务器主机的容器外终端窗口,用pipework工具分别设定容器(ROS作为启动镜像)的IP地址;
[0058] S15、把服务器主机的eth0网卡桥接到br0网桥上(sudo brctl addif br0 eth0);
[0059] S16、在服务器主机设置网桥br0的IP地址(ip addr adddev br0)。
[0060] 经过实验,结果表现良好。进行过实验,开启Docker ROS容器,实现了Docker容器的跨主机通信、对移动机器人的控制、以及摄像头采集的环境数据传输到Docker容器云控制平台,根据摄像头、红外等传感器采集到的RGB-D数据,Docker容器云控制平台进行局域地图的绘制,在Docker容器云控制平台的局域地图上置顶合理目标点,线下移动机器人可根据目标指令移动到对应的目标点。
[0061] 本发明中提到的移动机器人就是结合云计算的强大计算能,把机器人的处理任务卸载到云端。而云计算技术中,与适用于大规模场景的技术即为容器化集群技术,当今运用到云机器人的虚拟化技术主要为LXC(LinuxContainer)容器化技术,然而随着Docker技术平台的推出,Docker的底层就是使用了LXC来实现的。LXC将Linux进程沙盒化,使得进程之间相互隔离,并且能够控制各进程的资源分配。Docker在LXC的基础之上,Docker提供了一系列更强的功能。(1)可移植性:Docker定义了一种新的格式,将应用和其依赖环境全部打包到一个单一对象中,这个对象可以在任何安装有Docker的机器上共享,在任何机器上执行这个对象的效果都是一样的。LXC仅仅实现了进程沙盒化,并不能在不同机器上进行移植。Docker将应用的所有配置进行抽象,打包到一个容器中,使得该容器具有可移植性。(2)以应用为中心:Docker针对应用的部署做了优化,反映在其API,用户接口,设计原理及文档上面。而LXC仅仅关注容器作为一个轻量级的服务器。(3)自动化构建:Docker中支持Dockerfile,将应用的所有依赖项,构建工具和包都以源码的形式写在Dockerfile中,然后Docker可以根据Dockerfile构建镜像。该镜像在任何机器上面运行的效果都一样。(4)版本控制:Docker对容器提供了类Github的版本控制功能,支持版本回滚等功能。Docker也实现了增量上传和下载的功能,节约了上传和下载时的带宽资源。(5)组件重用:一个镜像可以作为基础镜像来创建更多特定的镜像,镜像之间支持多层重用。(6)镜像共享:Docker开发了一个Docker Hub,里面包含了各种常用的镜像,非常方便,我们也可以将自己的镜像上传到Docker Hub中。用户也可以在私有环境中搭建自己的Docker仓库,用来满足镜像的内部共享。(7)工具生态系统:Docker定义了一个API,用于自动化和本地化容器的创建和部署。已经存在大量的集成了Docker的工具集,例如Deis、mesos、Docker-ui、jenkins等等。
[0062] 所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0063] 在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0064] 所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0065] 另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0066] 本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁盘或光盘等。
[0067] 以上对本发明所提供的一种基于Docker容器的云机器人导航系统进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈