这段时间导师让研究一下amcl,在这之前只有一点ros基础,根本不知道amcl是什么东东,于是开始查资料找教程,但是真心没有找到面向小白的配置教程,在这几天的摸索中,终于让amcl正常跑起来了,所以,一定要做一下笔记,免得以后忘光了。
amcl的英文全称是adaptive Monte Carlo localization,即自适应蒙特卡罗定位,它是2D机器人运动的概率定位系统,它实现了自适应(或KLD采样)Monte Carlo定位方法,该方法使用粒子滤波器跟踪已知地图上的机器人姿态。好了,废话就这么多,接下来开始介绍配置过程,面向小白哦。
既然是面向小白,那从ros安装开始说起吧:(以安装ros的indigo为例,ubuntu选用14.04版本,ubuntu版本不建议太高)
首先官网安装教程网址:http://wiki.ros.org/indigo/Installation/Ubuntu ,如果你不想看英文,那么对于下面的东西,一路复制粘贴就ok了。
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
sudo apt-get update
# ------------下面几个不同功能的版本任选一个(强烈建议选第一个)------------------
1. 完整版:
sudo apt-get install ros-indigo-desktop-full
2. ROS,rqt,rviz和机器人通用库(rqt,用来显示节点、消息传递图;rviz,可视化界面)
sudo apt-get install ros-indigo-desktop
3. ROS包,构建和通信库,没有GUI工具。
sudo apt-get install ros-indigo-ros-base
4. 也可以安装特定的ROS软件包,例如gmapping;通过 apt-cache search ros-indigo 命令可以查看找到可用的软件包
sudo apt-get install ros-indigo-slam-gmapping
------------------------------以上4选1-------------------------------------
sudo rosdep init
rosdep update
echo "source /opt/ros/indigo/setup.bash" >> ~/.bashrc
source ~/.bashrc
sudo apt-get install python-rosinstall
嗯…,然后,再贴一个新手入门教程:http://wiki.ros.org/cn/ROS/Tutorials ,接下来,开始创建一个工作空间,开始鼓捣amcl
创建工作空间:
mkdir -p ~/catkin_ws/src
切换目录到src:
cd ~/catkin_ws/src
下载navigation,rbx包:
git clone https://github.com/ros-planning/navigation
git clone https://github.com/pirobot/rbx1
下载完之后编译
cd ..
catkin_make
然后报错:
然后(参考