掌桥专利:专业的专利平台
掌桥专利
首页

一种用于ROS无人车的导航控制方法及平台

文献发布时间:2023-06-19 11:22:42


一种用于ROS无人车的导航控制方法及平台

技术领域

本发明涉及无人车导航技术领域,尤其涉及一种用于ROS无人车的导航控制方法及平台。

背景技术

ROS是机器人操作系统(Robot Operating System)的英文缩写。ROS对机器人的硬件进行了封装,不同的机器人、不同的传感器,在ROS里可以用相同的方式表示(话题等),供上层应用程序(运动规划等)调用。

目前,很多科研团队开发出了形形色色的基于ROS的无人车,车辆本身也携带着大量的传感器。开始时,操作人员需要开启多个终端启动车辆底盘、遥控无人车以及启动车载传感器。某些传感器(如相机)还需要第三方软件来显示数据(图像)。在正式导航前,操作人员还需要手动在一些配置文件中修改导航算法的参数。

现有技术需要开启多个终端和第三方软件来实现对无人车的遥控和传感器数据的监视,这会导致系统内存的大量增加和运行卡顿。同时,由于多种信息来源的显示比较孤立,没有提示与预处理,严重影响了获取与处理信息的效率。在高风险环境中,无人车可能会因为操作人员对信息处理不及时而陷入危险境地。

发明内容

本发明为了解决上述技术问题提供一种用于ROS无人车的导航控制方法及平台。

本发明通过下述技术方案实现:

一种用于ROS无人车的导航控制方法,包括以下步骤:

S1,将车载开发板和远程计算机连接同一无线网络,远程计算机运行GUI程序;

S2,在GUI界面上输入车辆IP地址与计算机IP地址,连接车辆与远程计算机;

S3,通过GUI界面操控车辆、双目相机、激光雷达、车辆底盘、车载传感器的启动。

进一步的,所述S1中,获取在所述无线网络下的车辆IP地址与计算机IP地址;

所述S2中,可通过点击连接按钮连接车辆与远程计算机,也可选择在打开GUI程序时自动连接车辆与远程计算机。

3.根据权利要求1所述的用于ROS无人车的导航控制方法,其特征在于:所述S3包括:

S3.1,在GUI界面根据实际情况设置车辆启动命令、双目相机启动命令、激光雷达启动命令;

S3.2,点击GUI界面的启动车辆底盘按钮和/或启动传感器按钮;

S3.3,点击GUI界面的开始导航按钮,车辆进入自主导航状态。

进一步的,底盘启动后,会发布一个车辆里程计话题,车辆底盘的位姿数据作为消息同步发布到该车辆里程计话题中;接着,将车辆里程计话题名写入话题设置栏-里程计话题框里,GUI程序订阅车辆里程计话题,收到该车辆里程计话题中的消息;此时主界面上会显示出车辆当前的位姿与实际速度。

进一步的,车辆底盘在启动后,会订阅一个速度控制话题,将该速度控制话题名写入话题设置栏-车辆遥控话题框里,并设置车辆底盘的速度;

当点击GUI界面的遥控区域里的按钮时,GUI程序将速度消息发布到速度控制话题里,车辆底盘接收到消息后按预先设置的速度行驶。

进一步的,传感器启动后,双目相机和激光雷达开始发布话题,将该话题名写入话题设置栏里,GUI界面上会显示出双目相机的实时图像。

进一步的,GUI界面设置了路径规划算法选择按钮,路径规划算法包括全局路径规划算法和局部路径规划算法;

所述S3.3中,先在全局路径规划算法和局部路径规划算法中至少选一种,再点击开始导航按钮。

其中,全局路径规划算法包括A*和/或D*,局部路径规划算法包括DWA和/或Teb。

优选地,所述无线网络为WIFI。

用于ROS无人车的导航控制平台,包括计算机、用于实现车辆与计算机信息数据双向传输的WIFI路由器以及可在计算机上运行的GUI程序;GUI程序运行后具有一主界面;

所述主界面上具有主节点配置区、导航相机图像显示区、地图显示区、导航参数设置区、导航算法选择区、菜单栏、速度显示区、车辆遥控区、车辆底盘启动按钮、传感器启动按钮、建图按钮和开始导航按钮;

主节点配置区:用于分别输入车辆IP地址与计算机IP地址,实现车辆与计算机的通信连接;

导航相机图像显示区:用于显示车辆的双目相机拍摄的实时图像;

地图显示区:用于显示车辆的行驶轨迹;

导航参数设置区:用于设置路径规划算法中的参数值;

导航算法选择区:用于选择路径规划算法;通过菜单栏,可进入设置界面,通过设置界面可设置车辆启动命令,双目相机启动命令,激光雷达启动命令。

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

1,本发明通过一个GUI程序来实现对无人车的遥控和传感器数据的监视,避免使用多个终端,使用方便;

2,一键启动车辆和传感器,无需在终端重复输入启动命令;

3,本发明新增参数输入和导航算法切换功能,帮助用户更快地获取最好的导航效果;

4,本发明使多种信息同时在一个主界面上集成显示,提升了操作员的信息处理效率。

附图说明

此处所说明的附图用来提供对本发明实施例的进一步理解,构成本申请的一部分,并不构成对本发明实施例的限定。

图1是GUI程序主界面图;

图2是ROS无人车示意图;

图3是无人车连接状态示意图;

图4是启动命令输入界面示意图;

图5是话题输入界面示意图;

图6(a)是启动底盘前的无人车当前位姿示意图;

图6(b)是启动底盘后无人车当前位姿示意图;

图7(a)是启动底盘前无人车当前实际速度示意图;

图7(b)是启动底盘后无人车当前实际速度示意图;

图8(a)是启动相机前的双目相机图像;

图8(b)是启动相机后的双目相机图像;

图9是设置无人车行驶速度的示意图;

图10是车辆遥控按钮区域的示意图;

图11是参数输入区域的示意图;

图12是地图上的车辆行驶轨迹的示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。

本发明公开的用于ROS无人车的导航控制方法,包括以下步骤:

S1,将车载开发板和远程计算机连接同一无线网络,远程计算机运行GUI程序;

S2,在GUI界面上输入车辆IP地址与计算机IP地址,连接车辆与远程计算机,以实现车辆与计算机之间信息数据的双向传输;

S3,通过GUI界面操控车辆、双目相机、激光雷达、车辆底盘、车载传感器的启动。

本发明通过一个GUI程序来实现对无人车的遥控和传感器数据的监视,避免使用多个终端,使用方便。

本发明公开的用于ROS无人车的导航控制平台,包括计算机、用于实现车辆与计算机信息数据双向传输的WIFI路由器以及可在计算机上运行的GUI程序。

GUI程序运行后具有一主界面。如图1所示,主界面上具有主节点配置区、导航相机图像显示区、地图显示区、导航参数设置区、导航算法选择区、菜单栏、速度显示区、车辆遥控区、车辆底盘启动按钮、传感器启动按钮、建图按钮和开始导航按钮;

主节点配置区:用于分别输入车辆IP地址与计算机IP地址,实现车辆与计算机的通信连接;

导航相机图像显示区:用于显示车辆的双目相机拍摄的实时图像;

地图显示区:用于显示车辆的行驶轨迹;

导航参数设置区:用于设置路径规划算法中的参数值;

导航算法选择区:用于选择路径规划算法;通过菜单栏,可进入设置界面,通过设置界面可设置车辆启动命令,双目相机启动命令,激光雷达启动命令。

基于上述导航控制方法及平台,本发明公开一实施例。

实施例1

本实施例中GUI程序基于QT进行设计开发,在ROS系统下运行良好。平台组建完毕,利用ROS无人车进行验证,如图2所示,ROS无人车包括无人车底盘、双目相机、激光雷达和开发板。方法如下:

S1,首先将车载开发板和远程计算机连接同一wifi网络,获取在该网络下的车辆IP地址与计算机IP地址。

S2,远程计算机运行GUI程序,程序主界面如图1所示;在主界面右上方输入车辆IP地址与计算机IP地址,点击连接按钮。如图3所示,若成功连接,无人车状态将由离线变为在线。车载开发板与远程计算机之间通过wifi路由器中继实现信息数据的双向传输。

S2,GUI界面最上方有一个菜单栏,点击设置选项,进入设置界面;如图4所示,在终端设置栏,需要根据实际情况设置车辆启动命令,双目相机启动命令,激光雷达启动命令。上述命令设置后,在进行多次实验的过程中无需再重复输入。

S3,点击主界面下方启动设置栏里的启动车辆底盘按钮。

底盘启动后,会发布一个车辆里程计话题,车辆底盘的位姿数据会作为消息同步发布到该话题中;接着将里程计话题名写入话题设置栏-里程计话题框里,如图5所示。GUI程序订阅里程计话题,收到里程计话题中的消息后,主界面上会显示出车辆当前的位姿与实际速度,如图6、7所示。

同理,点击启动传感器按钮,双目相机和激光雷达开始发布话题,将话题名写入话题设置栏里,如图5所示,此时主界面上会显示出双目相机的实时图像,如图8所示。

车辆底盘在启动后,会订阅一个速度控制话题。如图5所示,将该速度控制话题名写入话题设置栏-车辆遥控话题框里,并设置车辆底盘的速度,如图9所示。如图10所示,当点击遥控区域里的按钮时,GUI程序会将速度消息发布到速度控制话题里,车辆底盘接收到消息后按预先设置的速度行驶。

如果,想要在地图上实时显示车辆的移动轨迹,则需事先输入无人车移动的初始坐标与终点坐标,如图11。GUI程序载入已知的当前区域的地图,通过地图分辨率与区域大小的关系,可以得知该地图的比例尺,进而可以得知当前区域的某一坐标点对应着地图中的哪个像素点。将初始坐标点对应的像素改为红色,终点坐标对应的像素改为绿色,无人车移动过程中经过的坐标点改为黄色,如图12所示。

导航功能的实现主要靠ROS自带的Navigation包。Navigation包提供两种路径规划算法,其中A*,Dijkstra为全局路径规划算法;DWA和Teb为局部路径规划算法。

使用时,用户需要在全局算法和局部算法里任选一种,并手动在配置文件中填写算法名称。为了简化该过程,如图1所示,本实施在主界面上设置了便捷的算法选择按钮,支持直接点击实现算法切换。

为了实现更好的导航效果,可将路径规划算法中的默认参数值修改成更适合实验中使用的无人车的参数值。如图11所示,基本参数有:无人车半径,车辆最大线速度,最小线速度,最大角速度,最小角速度。当然还可根据需求继续添加参数。

S4,导航参数设置完成,用户待S2和S3中传感器和车辆正常工作后,点击开始导航按钮,车辆进入自主导航状态(无需人为遥控)。当车辆到达终点后自动退出自主导航状态。同时在自主导航过程中操控员可以点击任意遥控按钮,此时无人车也会退出自动导航状态。

本发明无需开启多个终端,可避免增加系统内存和运行卡顿。同时,由于多种信息在一个主界面上集成显示,利于提高信息处理的效率,避免因为操作人员对信息处理不及时而陷入危险境地。

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

相关技术
  • 一种用于ROS无人车的导航控制方法及平台
  • 基于ROS的园区无人车轨迹生成系统及其控制方法
技术分类

06120112902192