ROS机器人导航仿真(kinetic版本)

准备工作:

ubuntu 16.04系统;ROS kinetic版本;ROS包turtlebot,导航包rbx1,模拟器arbotix,可视化rviz

1、安装ubuntu 16.04系统与安装ROS kinetic版本自行百度安装。一下链接可作为参考。

http://blog.csdn.net/weicao1990/article/details/52575314

2、在安装好ROS kinetic版本的ubuntu系统中, ctrl+art+t打开一个终端,安装turtlebot包,输入命令

sudo apt-get install ros-kinetic-turtlebot-*

3、安装可视化工具rviz

rosdep update

rosdep install rviz

rosmake rviz 

运行rviz:

在一个终端中运行

roscore

在另一个终端中运行

rosrun rviz rviz

(记得先运行roscore,否则就会出现错误:could not contact ROS master)

4、安装arbotix模拟器

方法一:

sudo apt-get install ros-kinetic-arbotix-*

方法二:(使用git源码安装)

在ROS工作包caktkin_ws中的源码文件夹src中下载git源码

cd  ~/catkin_ws/src

git clone  https://github.com/vanadiumlabs/arbotix_ros.git

cd ..

catkin_make

(ps:提示找不到ROS包错误,就去更新一下环境:source ~/catkin_ws/devel/setup.bash)

5、安装ROS-BY-EXAMPLE书配套的代码包rbx1

cd ~/catkin_ws/src

git clone https://github.com/pirobot/rbx1.git

cd ..

catkin_make

ps:在安装rbx1之前,可以选择性的安装一些依赖包

sudo apt-get install ros-kinetic-turtlebot-bringup \

ros-kinetic-turtlebot-create ros-kinetic-openni-* \

ros-kinetic-openni2-* ros-kinetic-freenect-* ros-kinetic-usb-cam \
ros-kinetic-laser-* ros-kinetic-hokuyo-node \
ros-kinetic-audio-common gstreamer0.-pocketsphinx \
ros-kinetic-pocketsphinx ros-kinetic-slam-gmapping \
ros-kinetic-joystick-drivers python-rosinstall \
ros-kinetic-orocos-kdl ros-kinetic-python-orocos-kdl \
python-setuptools ros-kinetic-dynamixel-motor \
libopencv-dev python-opencv ros-kinetic-vision-opencv \
ros-kinetic-depthimage-to-laserscan ros-kinetic-arbotix-* \
ros-kinetic-turtlebot-teleop ros-kinetic-move-base \
ros-kinetic-map-server ros-kinetic-fake-localization \
ros-kinetic-amcl
准备工作到此结束,接下来进行仿真。
6、导航仿真
     运行机器人节点:
 roslaunch rbx1_bringup fake_turtlebot.launch  

     使用测试地图运行amcl节点:        
roslaunch rbx1_nav fake_amcl.launch map:=test_map.yaml  
运行rviz
rosrun rviz rviz -d `rospack find rbx1_nav`/nav.rviz
之后单击2D Pose Estimate,单击地图位置,选择机器人初始位置,点击2D Nav Goal ,点击地图,选择机器人目的位置。选择完成后机器人后自动走到目的位置。
加载地图:
ROS机器人导航仿真(kinetic版本)
 选择机器人初始位置
ROS机器人导航仿真(kinetic版本)

选择机器人目的位置

ROS机器人导航仿真(kinetic版本)

自动导航效果:

ROS机器人导航仿真(kinetic版本)

相关导航的原理可查询ros官网wiki

http://wiki.ros.org/cn/navigation/Tutorials

参考博客

http://www.guyuehome.com/273

上一篇:CAP原理和BASE思想和ACID模型


下一篇:记录一次BUG修复-Entity Framwork SaveChanges()失效