新建终端进入racecar工作空间的src目录下
cd ~/racecar_ws/src下载Gazebo搭建赛道功能包racecar
git clone https://github.com/xmy0916/racecar.git新建一个终端,进行控件的安装(这个不安装后面会运行不起) (1)driver_base的控件安装
sudo apt-get install ros-kinetic-driver-base(2)controllers控件安装
sudo apt-get install ros-kinetic-gazebo-ros-control sudo apt-get install ros-kinetic-effort-controllers sudo apt-get install ros-kinetic-joint-state-controller(3)ackermann_msgs控件安装
sudo apt-get install ros-kinetic-ackermann-msgs(4)planner控件安装
sudo apt-get install ros-kinetic-global-planner sudo apt-get install ros-kinetic-teb-local-planner新建终端
cd ~/racecar_ws catkin_make编译过程中,如果遇到问题,则可根据提示修改。
通过锁定在tk窗口下,用WASD来控制小车,然后对比两图,发现小车确实动了,证明我们的仿真环境搭建的还是不错的。
(1)不关闭之前运行的程序终端,新建终端,运行rviz,进行gmapping建图
cd ~/racecar_ws source ./devel/setup.bash roslaunch racecar_gazebo slam_gmapping.launch接下来就是手动控制小车进行赛道扫描绘图。 最后保存地图
rosrun map_server map_saver -f test_map绘制好的地图 在racecar工作空间下新建一个map文件夹保存跑好的地图
友情提示:在控制小车运动时,小车撞墙后很容易翻车。所以,不能急,慢慢控制跑动。
新建终端
cd racecar_ws/ roslaunch racecar_gazebo racecar_rviz.launch使用上排的2D Nav Goal标签发布信息,设置好起点和终点,它就会自动规划出来一条路线。(途中绿色的细线就为其规划好的路线)
图1 图2 这里已经可以明显看出小车走了比较远了,然后导航上的绿色细线也覆盖了红色。(实际运行后小车路线会有不小的偏差 ) 最后发现小车到达目的坐标,定位导航成功!!!