从零搭建一台基于ROS的自动驾驶车-----1.整体介绍

系列文章目录

北科天绘 16线3维激光雷达开发教程
基于Rplidar二维雷达使用Hector_SLAM算法在ROS中建图
Nvidia Jetson Nano学习笔记–串口通信
Nvidia Jetson Nano学习笔记–使用C语言实现GPIO 输入输出
Autolabor ROS机器人教程



前言

最近期间开始学习Linux嵌入式,ROS,激光SLAM,学的很杂,学的很乱,学习的过程中愈发地想造一台ROS小车,小车的最终要实现的功能是实现自动导航运动。经过一段时间的学习,已经初步实现了导航功能。
下面我将记录一下实现的过程。


整个智能车主要由 主控制器(我用的是NVIDIA Jetson AGX Xavier 简称为Nvidia),一个二维雷达,一个小车底盘等组成。本文只是做一个概述,详细的实现过程和代码我将会写在后面的博客。
目前是实现一个比较简单的导航功能,整个实现过程大部分也是按照Autolabor机器人的教程来做的。
请添加图片描述

一、小车底盘

智能车的底盘一般采用四轮差速底盘,通常Nvidia通过串口或者CAN协议来控制底盘的运动,也可以获取小车的编码器数据等等,在我的车里面采用的是四轮底盘,Nvidia通过串口发送数据给底盘来控制其运动。

二、激光雷达

激光雷达是激光SLAM中非常重要的一个传感器,可以通过激光雷达+cartography算法来建图,也可以通过激光雷达+amcl来实现定位功能,也可以用在move_base功能包中来实现避障功能。

三、建图

在现实生活中,当我们需要实现导航时,可能会首先参考一张全局性质的地图,然后根据地图来确定自身的位置、目的地位置,并且也会根据地图显示来规划一条大致的路线… 对于机器人导航而言,也是如此,在机器人导航中地图是一个重要的组成元素,当然如果要使用地图,首先需要绘制地图。 在激光SLAM中 建图的算法有很多,但是对于二维雷达来说效果比较好的建图算法就是Cartography。

四、定位

导航伊始和导航过程中,机器人都需要确定当前自身的位置,如果在室外,那么 GPS 是一个不错的选择,而如果室内、隧道、地下或一些特殊的屏蔽 GPS 信号的区域,由于 GPS 信号弱化甚至完全不可用,那么就必须另辟蹊径了,比如前面的 SLAM 就可以实现自身定位,除此之外,ROS 中还提供了一个用于定位的功能包: amcl。
说白了定位就是在地图中让机器人确定自己所在的位置,可以采用激光雷达+amcl来实现定位功能。

amcl(adaptiveMonteCarloLocalization)自适应的蒙特卡洛定位,是用于2D移动机器人的概率定位系统。它实现了自适应(或KLD采样)蒙特卡洛定位方法,该方法使用粒子过滤器根据已知地图跟踪机器人的姿态。

五、导航

导航就是机器人从A点运动至B点的过程,在这一过程中,机器人需要根据目标位置计算全局运动路线,并且在运动过程中,还需要时时根据出现的一些动态障碍物调整运动路线,直至到达目标点,该过程就称之为路径规划。在 ROS 中提供了 move_base 包来实现路径规则,该功能包主要由两大规划器组成:
全局路径规划(gloable_planner)

根据给定的目标点和全局地图实现总体的路径规划,使用 Dijkstra 或 A* 算法进行全局路径规划,计算最优路线,作为全局路线

本地时时规划(local_planner)

在实际导航过程中,机器人可能无法按照给定的全局最优路线运行,比如:机器人在运行中,可能会随时出现一定的障碍物… 本地规划的作用就是使用一定算法(Dynamic Window Approaches) 来实现障碍物的规避,并选取当前最优路径以尽量符合全局最优路径

全局路径规划与本地路径规划是相对的,全局路径规划侧重于全局、宏观实现,而本地路径规划侧重与当前、微观实现。


总结

整个智能车的组成部分就上面所介绍,后面我将一一介绍智能车的每一个部分。

  • 7
    点赞
  • 55
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
### 回答1: ros-6.44.6-x64-l6-60m.zip是一个文件压缩包的名称。其中,ROS代表RouterOS操作系统,6.44.6代表版本号,x64表示支持64位处理器架构,l6表示该版本为Level 6许可证,60m表示该版本支持最多60个用户连接。 文件压缩包通常用于将多个文件或者文件夹打包成一个单独的文件,以便于存储、传输和共享。对于ros-6.44.6-x64-l6-60m.zip这个压缩包来说,它可能包含了安装RouterOS操作系统所需的一系列文件和文件夹,包括系统的核心文件、配置文件、驱动程序等等。这个压缩包的使用可以方便用户快速安装和部署RouterOS操作系统,同时也提供了一定数量的用户连接许可证。 使用这个压缩包时,我们可以首先将它下载到本地计算机中,然后使用解压缩软件进行解压。解压后,我们可以找到对应的安装文件和许可证文件,按照相关的安装指南进行操作,以完成RouterOS操作系统的安装。在安装完成后,我们可以根据许可证的规定确定最多可以连接的用户数,并进行相应的网络配置和管理,以满足我们的需求。 总而言之,ros-6.44.6-x64-l6-60m.zip是一个用于安装和部署RouterOS操作系统的文件压缩包,它包含了操作系统的相关文件和用户连接许可证。使用这个压缩包可以方便地进行RouterOS的安装和配置工作,以满足我们的网络需求。 ### 回答2: ros-6.44.6-x64-l6-60m.zip是一个文件压缩包的名称。按照命名规则,文件名称中的"ros"可能是指"RouterOS",它是一种基于Linux的操作系统,用于运行于MikroTik路由器设备上。 "6.44.6"是指该压缩包对应RouterOS的版本号。每个版本的RouterOS都有各自的更新和改进。 "x64"表示该版本是64位架构,适用于支持64位操作系统的设备。 "l6"代表该RouterOS版本的许可等级为Level 6。RouterOS有不同的许可等级,每个等级拥有不同的功能和限制。 "60m"可能代表了该版本RouterOS的许可有效期为60个月。RouterOS的许可期限可以根据购买的类型和许可等级而有所不同。 "zip"是一种常见的文件压缩格式,意味着该文件通过压缩算法进行了压缩,以便更有效地存储和传输。 综上所述,"ros-6.44.6-x64-l6-60m.zip"是一份包含RouterOS版本为6.44.6,64位架构,许可等级为Level 6,许可有效期为60个月的压缩文件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不会武功不懂江湖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值