一种基于ROS的四轮车导航系统的制作方法

文档序号:16236418发布日期:2018-12-11 22:38阅读:679来源:国知局
一种基于ROS的四轮车导航系统的制作方法

本发明属于移动机器人技术领域,具体涉及一种基于ros的四轮车导航系统。

背景技术

近年来,随着智能领域的快速发展,仅适用于单一环境的移动机器人已经不能满足人类对生产生活的需求,智能移动机器人以其灵活柔性的导航及路径规划方式进入了日常生活;同时,国内多个大学也开设了人工智能学科,智能移动机器人的研究得到了飞速发展。导航技术是移动机器人的一项核心技术之一,它是指移动机器人通过传感器感知环境信息和自身状态,实现在有障碍的环境中面向目标的自主运动,而导航功能的开发与移动机器人的运动装置紧密相连。目前所见的移动机器人配备的移动装置有全向轮、麦克纳姆轮等,这些移动装置普遍较为复杂,大多具有全向行驶、转向灵活、运动模型简单的优点,但这些移动装置同时也具有价格高、安装难度高、不适于高速场景等缺点。普通的四轮移动方式在移动机器人领域使用的较少,由于四轮车不能全向移动,导致其运动模型更复杂,但其具有价格亲民、速度快、安装简单的特点,在高速运动的场景下有较大应用空间。

ros(机器人操作系统,robotoperatingsystem)是转为机器人软件开发所设计出來的一套电脑作业系统架构,它是一个开源的操作系统,提供类似于操作系统的服务,包括硬件抽象描述、底层驱动程序管理、共用功能的执行、程序间消息传递、程序发行包管理;它也提供一些工具和库用于获取、建立、编写和执行多机融合的程序。ros运行时是由多个松耦合的进程组成,每个进程ros称之为节点(node),所有节点可以运行在一个处理器上,也可以分布式运行在多个处理器上。在实际使用时,这种松耦合的结构设计可以让开发者根据机器人所需功能灵活添加各个功能模块。



技术实现要素:

鉴于上述,本发明提供了一种基于ros的四轮车导航系统,该系统将ros与四轮车的导航融合在一起,为机器人的高速运动提供了一种导航方案,该系统也可应用于自动驾驶领域。

一种基于ros的四轮车导航系统,包括云服务器和四轮车且两者通过远程通信;所述云服务器包括有环境地图构建模块、路径规划模块、里程信息估算模块、车辆定位模块,所述四轮车搭载有小型计算设备、运动控制模块、惯性测量模块、环境感知设备,云服务器和四轮车中的各个功能模块均在ros体系中实现,由ros管理各功能模块执行及模块间消息传递;其中:

所述环境地图构建模块根据环境感知设备采集的环境信息,构建出车辆周围的环境地图并将地图存储下来,以便路径规划模块和车辆定位模块调用;

所述里程信息估算模块根据四轮车运动学模型、惯性测量模块反馈的车辆运动姿态信息实时估算出车辆的当前坐标;

所述车辆定位模块根据车辆周围的环境地图、环境感知设备采集到的环境信息以及车辆的当前坐标,对当前四轮车在地图中的位置及方向做进一步估测得到车辆位置信息;

所述路径规划模块根据当前车辆的运动姿态信息、周围环境地图、环境感知设备采集到的环境信息以及车辆定位模块估测得到的车辆位置信息进行路径规划,实时计算出四轮车前往指定位置所需要的速度及转向角以提供给四轮车;

所述小型计算设备用于收集环境感知设备及惯性测量模块采集测量到的信息并与云服务器进行信息交互,进而向运动控制模块发送关于速度和转向角的控制指令;

所述运动控制模块为搭载在四轮车上的控制系统,包含有控制车轮转动和转向的驱动电路,通过接受小型计算设备发送的控制指令驱动车辆按云服务器所提供的速度及转向角行进;

所述惯性测量模块用于实时测量车辆的速度、加速度、角速度并将这些运动姿态信息传送至小型计算设备;

所述环境感知设备用于采集车辆周围的环境信息并传送至小型计算设备。

进一步地,所述环境感知设备包括雷达和摄像头,其通过采集车辆周围的环境信息以便于云服务器进行环境地图构建和车辆定位。

进一步地,所述惯性测量模块为测量车辆三轴姿态角(或角速率)以及加速度的装置。

进一步地,所述四轮车具有与普通四轮汽车相同的运动机制。

进一步地,所述云服务器还包括有手动控制模块,使得管理人员通过手动控制模块可在服务器端手动操控四轮车行驶,用于初始环境地图的建立和异常调试场景。

进一步地,所述里程信息估算模块通过以下公式实时估算车辆的当前坐标;

x'=x+(vx*cosθ'-vy*sinθ')*dt

y'=y+(vx*sinθ'+vy*cosθ')*dt

θ'=θ+vθ*dt

其中:x'和y'分别为当前时刻车辆在地图x轴和y轴上的坐标,x和y分别为前一时刻车辆在地图x轴和y轴上的坐标,vx和vy分别为当前车辆在地图x轴和y轴上的行驶速度,θ'为当前时刻车辆的朝向角,θ为前一时刻车辆的朝向角,dt为车辆保持当前运动姿态行驶的时间,vθ为当前车辆的角速度。

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

(1)本发明提出了基于ros的四轮车导航系统,ros具有优良的开源基因,松耦合的设计方法,可扩展的软件结构,功能复用思想,极大降低了机器人领域的进入门槛,让开发者无需像前人一样走过众多弯路。

(2)本发明系统中车端仅完成基本的环境感知和运动控制功能,降低了制造成本和车端的硬件复杂度。

(3)本发明系统中四轮车行驶速度快、安装简单、价格低,在高速场景下有较大应用空间。

(4)本发明系统中移动四轮车由云服务器管理,主要运算单元集中在云服务器上,提高了在车的数量、系统修改升级上的可扩展性。

附图说明

图1为本发明导航系统的工作流程示意图。

具体实施方式

为了更为具体地描述本发明,下面结合附图及具体实施方式对本发明的技术方案进行详细说明。

本发明基于ros的四轮车导航系统包括云服务器和四轮车,云服务器包括环境地图构建模块、路径规划模块、里程信息估算模块、车辆定位模块、手动控制模块,四轮车搭载小型计算设备、运动控制模块、惯性测量模块、环境感知设备;ros为一种开源的机器人操作系统,本发明的各个功能模块均在ros的体系中实现,由ros管理各功能模块执行、模块间消息传递。

云服务器为能够与四轮车进行远程通信的计算机,其中:

环境地图构建模块能够根据环境感知设备采集的信息,构建出周围环境的地图,并能够将地图存储下来,以便路径规划模块和车辆定位模块使用。

路径规划模块能够根据当前车辆的运动姿态(包括速度、加速度、角速度等)、构建出的地图信息、当前环境感知设备获取的环境信息,车辆定位模块输出的车辆位置信息进行路径规划,输出四轮车前往指定位置所需要的速度、转向角信息。

里程信息估算模块能够根据四轮车运动学模型、惯性测量模块实时反馈的四轮车运动姿态信息实时估算一个四轮车的坐标,所使用的四轮车运动学公式如下:

x'=x+(vx*cosθ'-vy*sinθ')*dt

y'=y+(vx*sinθ'+vy*cosθ')*dt

θ'=θ+vθ*dt

其中:x'和y'分别为当前时刻车辆在地图x轴和y轴上的坐标,x和y分别为前一时刻车辆在地图x轴和y轴上的坐标,vx和vy分别为当前车辆在地图x轴和y轴上的行驶速度,θ'为当前时刻车辆的朝向角,θ为前一时刻车辆的朝向角,dt为车辆保持当前运动姿态行驶的时间,vθ为当前车辆的角速度。

车辆定位模块能够根据已经建立的地图数据、当前环境感知设备采集的信息、并融合四轮车里程信息估计的坐标,对当前车辆在地图中的位置与方向进行进一步的估测。

手动控制模块可让管理人员在服务器端手动操控车辆行驶,可用于初始完整地图的建立和异常调试。

四轮车具有和普通的四轮汽车相同的运动机制,其中:

小型计算设备为小型计算机,能够向运动控制模块发送指令、收集环境感知设备采集的信息,并能够和云端服务器交换信息。

运动控制模块为搭载在四轮车上的控制系统,一般包括可以控制轮子转向和旋转的驱动电路、接受小型计算设备发送的指令。

惯性测量模块为测量车辆三轴姿态角(或角速率)以及加速度的装置,其不断的测量车辆的速度、加速度、角速度信息并传送至车载的小型计算设备。

环境感知设备为雷达或摄像头,其可收集车辆周围的环境信息,以便于云服务器进行环境地图构建和车辆定位。

如图1所示,本发明系统采用基于ros的四轮车导航方法,其完成一次充电对接任务的过程如下:

车端由环境感知设备采集环境信息,惯性测量模块采集运动姿态信息,并将信息发送至云服务器,云服务器接收到信息后,其里程信息估算模块根据四轮车运动模型并结合当前车辆运动姿态估算出大致坐标,并将坐标发送至车辆定位模块,车辆定位模块根据环境地图构建模块构建好的地图信息和当前采集的环境信息进行匹配,并结合里程信息估算模块估算的坐标进行计算,输出最终定位坐标,并将坐标信息发送至路径规划模块,路径规划模块根据车辆坐标和当前运动姿态信息规划出一条行驶路径,并输出控制指令,由云服务器将指令发送至车端执行。

上述对实施例的描述是为便于本技术领域的普通技术人员能理解和应用本发明。熟悉本领域技术的人员显然可以容易地对上述实施例做出各种修改,并把在此说明的一般原理应用到其他实施例中而不必经过创造性的劳动。因此,本发明不限于上述实施例,本领域技术人员根据本发明的揭示,对于本发明做出的改进和修改都应该在本发明的保护范围之内。

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