ROS机器人定位导航仿真——智能车

一、创建ROS工作空间

1、创建racecar_ws文件夹、src文件夹

mkdir -p ~/racecar_ws/src

在这里插入图片描述

2、初始化工作空间

cd ~/racecar_ws/src
catkin_init_workspace

在这里插入图片描述

3、下载racecar源代码包

git clone https://github.com/xmy0916/racecar.git

在这里插入图片描述

4、编译工程

cd ..
catkin_make

在这里插入图片描述
如下图所示,则编译成功
在这里插入图片描述

二、仿真

1、设置环境变量

echo "source ~/racecar_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc

在这里插入图片描述

2、启动赛道地图

roslaunch racecar_gazebo racecar_runway.launch

在这里插入图片描述
在这里插入图片描述

3、赛道地图自主导航

(1)新开终端,启动slam和rviz

cd racecar_ws/
roslaunch racecar_gazebo slam_gmapping.launch

在这里插入图片描述
在这里插入图片描述

(2)控制车辆运动,建图

在这里插入代码片

在这里插入图片描述
最终地图如下:
在这里插入图片描述

(3)保存地图

地图保存路径:racecar_ws/src/racecar/racecar_gazebo/map

cd ~/racecar_ws/src/racecar/racecar_gazebo/map
rosrun map_server map_saver -f map_racecar

在这里插入图片描述

4.自主定位导航

(1)运行环境地图

roslaunch racecar_gazebo racecar_runway_navigation.launch

在这里插入图片描述
在这里插入图片描述

(2)启动rviz

roslaunch racecar_gazebo racecar_rviz.launch

在这里插入图片描述
在这里插入图片描述

(3) 用2D Nav Goal发布目标

在这里插入图片描述
在这里插入图片描述
选择工具栏中的2D Nav Goal按钮,将鼠标定位到想要去的位置。

(4)启动导航脚本

rosrun racecar_gazebo path_pursuit.py

在这里插入图片描述
在这里插入图片描述
由图片可以看出,小车在确定最终点之后,进行了自主导航。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐