2019年大學生智能車大賽室外光電組+在ROS下搭建仿真模擬環境,編程控制小車,按照給定賽道完成比賽

一、前言

操作系統:ubuntu16.04

ROS版本:kinetic

Gazebo版本:7.0.0

二、效果圖

三、準備工作

1.在Ubuntu上安裝ROS Kinetic

2.創建ROS工作區間

①1創建racecar_ws和src文件夾

mkdir -p ~/racecar_ws/src

②初始化工作空間

cd ~/racecar_ws/src
catkin_init_workspace

在這裏插入圖片描述

③下載racecar源代碼包,並編譯工程

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

創建成功如下:
在這裏插入圖片描述在這裏插入圖片描述
在這裏插入圖片描述

四、啓動仿真

1.設置環境變量

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

source ~/.bashrc

2.啓動地圖

roslaunch racecar_gazebo racecar_runway.launch

在這裏插入圖片描述

五、建圖

1.啓動slam和rviz

新建終端

cd racecar_ws/
roslaunch racecar_gazebo slam_gmapping.launch

在這裏插入圖片描述

2 控制車輛(左側有個控制窗口),WASD控制前左後右的運動就可以建圖了:

在這裏插入圖片描述

原圖:
在這裏插入圖片描述
成果圖:
在這裏插入圖片描述

3.新建終端保存地圖

保存地圖的路徑:/racecar_ws/src/racecar/racecar_gazebo/map

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

在這裏插入圖片描述
在這裏插入圖片描述

分析:在控制小車運動時,小車很容易翻車。不過最終能運行完地圖。

六、自主定位導航

1.啓動導航和環境地圖:

新建終端

cd racecar_ws/
roslaunch racecar_gazebo racecar_runway_navigation.launch

在這裏插入圖片描述

2.啓動rviz:

新建終端:

cd racecar_ws/
roslaunch racecar_gazebo racecar_rviz.launch

在這裏插入圖片描述

3.用2D Nav Goal發佈目標:

在這裏插入圖片描述

4.啓動導航腳本

新建終端

cd racecar_ws/
rosrun racecar_gazebo path_pursuit.py

在這裏插入圖片描述
在這裏插入圖片描述
上圖,對比發現小車確實打導航定位成功。

七、此次智能車仿真的問題解決辦法彙總鏈接

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章