一、前期工作准备:
1.环境
:虚拟机ubuntu18.04+ros melodic,开机前建议把“启用3D加速”关闭。
2.功能包解释
:一个是环境仿真、机器人模型仿真;另一个是无人驾驶功能包,实现了基于地图的定位、环境感知、路径规划等功能。
3.安装环境依赖
安装键盘控制节点:sudo apt-get install ros-melodic-teleop-twist-keyboard
安装gmapping:sudo apt-get install ros-melodic-gmapping
安装地图服务节点:sudo apt-get install ros-melodic-map-server
安装导航包:
sudo apt-get install ros-melodic-amcl ros-melodic-move-base ros-melodic-slam-gmapping ros-melodic-slam-karto ros-melodic-cartographer ros-melodic-cartographer-ros ros-melodic-dwa-local-planner ros-melodic-teb-local-planner ros-melodic-map-server ros-melodic-hector-slam*
echo "export BASE_TYPE=NanoRobot" >> ~/.bashrc
source ~/.bashrc
sudo apt-get install ros-melodic-global-planner
ps:1-如果出现安装安装依赖错误问题,比如:E:xxx,按照以下说明进行更新后在执行“环境依赖安装。
sudo rm /var/lib/dpkg/lock-frontend
sudo rm /var/lib/dpkg/lock
sudo apt-get update
4.新建一个工程
end_work/src,然后把解压后的bingda和robot_navigation文件copy至src文件下,在end_work文件下新建一个终端进行编译:catkin_make,直至100%完成。
5.总结
以上完成准备工作,清仔细阅读!
二、基于仿真环境和机器人模型进行二维的点云地图构建
1.仿真环境
在end_work工程新建终端,执行:
source devel/setup.bash
roslaunch bingda_tutorials simulation_robot.launch
2.开启gmapping
新建终端下运行:rosrun gmapping slam_gmapping scan:=scan
3.rviz显示
新建终端下运行:rviz
并在rviz中add-map话题,显示当前建图效果
4.键盘孔控制节点
在新建终端下运行:rosrun teleop_twist_keyboard teleop_twist_keyboard.py
通过键盘控制建立完整环境地图
5.保存点云地图
在end_work工程新建终端,执行:
source devel/setup.bash
roslaunch bingda_tutorials save_map.launch
6.地图查看
构建的地图在工程end_word/src/bingda_tutorials/map文件下查看。
三、自动驾驶功能测试
1.点云地图导入
把第二部构建完整的点云地图nav.pgm和nav.yaml文件copy至:
robot_navigation/src/robot_navigation/maps文件下
2.仿真环境开启
在end_work工程新建终端,执行:
source devel/setup.bash
roslaunch bingda_tutorials simulation_robot.launch
3.自动驾驶功能开启
在end_work工程新建终端,执行:
source devel/setup.bash
roslaunch robot_navigation navigation_stack.launch simulation:=true
4.显示终端开启
在end_work工程新建终端,执行:
source devel/setup.bash
roslaunch robot_navigation navigation_rviz.launch
5.路径规划
在rviz中设置pose终点:通过rviz中的2D Nav Goal在点云地图中设置目标点。
运行结果如图所示:

6.总结
以上完成了整个依据仿真环境、机器人搭建,点云地图的构建及自动驾驶功能测试等任务。

7917

被折叠的 条评论
为什么被折叠?



