在ROS中使用Neato XV-11 激光雷达

本文转自雷达大叔:http://make4e.com/pages/g000007


在ROS系统中使用XV-11 Lidar 进行SLAM,需要做如下软硬件的准备:

硬件:
xv-11 激光雷达一个  (店里有卖 http://y0.cn/lidar)
USB 转换串口转接线一个 (店里也有卖, 如果自己手头有FT232RL芯片的线也OK, 其他芯片注意不能用)
调速板一块 (最好有,否则可能因为转速问题ROS不显示数据,马达转速是有差异的)
软件:
Ubuntu 14.04 Desktop 版本 (最好是这个版本,其他版本会遇到兼容问题)
ROS Indigo 版本
XV-11 在 ROS下的驱动
首先我会建议大家用真机进行测试而不用虚拟机,并不是因为性能的差异,我用一台很老的PC也完成了所有步骤。如果使用虚拟机,可能会遇到串口驱动等麻烦,这些不是很必要,如果您很确定虚拟机能支持串口芯片使用虚拟机倒也无妨。

另外最好事先准备一个翻墙利器,VPN或者代理都可以。这点在整个安装软件的过程会非常有好处。由于某些众所周知的原因,部分软件包会被屏蔽,有翻墙手段可以防止因为软件无法下载卡在某一阶段,也可以加快下载速度。

OK,我们正式开始了。

1. 安装 UBUNTU
Ubuntu 可以直接到官方站点下载ISO即可,刻盘安装, 注意版本是14.04 Desktop 就好。

此处是下载地址:

http://releases.ubuntu.com/14.04/

整个安装过程不赘述,参考屏幕提示即可。

2.安装 ROS
ROS的官方安装教程在此, 我基本也是按照这篇文章安装的

http://wiki.ros.org/indigo/Installation/Ubuntu

在Ubuntu终端内输入

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 --recv-key 0xB01FA116
然后开始更新

 

sudo apt-get update
在这里建议大家安装完整版的ROS,如果不是对ROS充分了解可能会缺失必要的工具

sudo apt-get install ros-indigo-desktop-full
经过漫长的下载,ROS安装完成.我们开始进行一些设置

初始化 rosdep
sudo rosdep init
rosdep update
环境设置
echo "source /opt/ros/indigo/setup.bash" >> ~/.bashrc
source ~/.bashrc
安装rosinstall
sudo apt-get install python-rosinstall
到此为止 ros基本安装完成了, 但仍然需要设置workspace, 这是后面编译雷达驱动所需要的.创建 catkin workspace 的方法我参考了这篇文章 http://wiki.ros.org/cn/catkin/Tutorials/create_a_workspace
基本是如下几个步骤

让配置生效

source /opt/ros/hydro/setup.bash
在home目录下创建一个catkin的目录, 并且运行初始化的命令
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace
到此为止,我们已经完成了ROS的安装,下一步我们开始编译lidar的驱动程序
3 编译雷达驱动程序
这个过程中主要是跟随这篇文章的指导.

http://meetjanez.splet.arnes.si/2015/08/22/neato-xv-11-to-ros-slam/

作者提供的驱动程序是亲测可用的,只是有个细节需要说明,作者写这篇文章的时候,1.x的雷达是主流, (3.3V) 而目前市面上已经几乎绝迹,大部分在销售的时2.6 版本的雷达. 所以在使用驱动的时候,要特别制定使用2.0版本 1.0 和 2.0版本的雷达数据格式是完全不同的.

下面我们开始,下载编译过程

cd ~/catkin_ws/src
git clone https://github.com/rohbotics/xv_11_laser_driver.git
cd ~/catkin_ws
catkin_make

经过几秒钟的编译,驱动程序已经可以使用了.

4 USB串口转接线驱动
默认Ubuntu14.04 应该是集成了FT232RL芯片的驱动, 如果不放心可以到Arudino的官方下载一个Arudino IDE安装上,里面有这个芯片的驱动,这算一个取巧的方法.

验证驱动是否安装正常的办法, 将转接线查到USB口中,敲入如下命令,查看有没有名叫 ttyUSB0 的设备 (一般都叫这个名字,或许也有不同)

ls /dev/
4 连接硬件,准备开始测试
硬件的连接方法请看这里,可恶的wordpress不能直接贴视频上来.

http://v.youku.com/v_show/id_XMTYxOTMzNzAyNA==.html#paction

5 开始测试
终于要开始测试了.

首先我们要打开三个独立的终端, 三个终端里会分别运行 roscore 机关雷达的publisher 以及 rviz

第一个窗口

cd ~/catkin_ws
source devel/setup.bash
roscore
第二个窗口

cd ~/catkin_ws
source devel/setup.bash
rosrun xv_11_laser_driver neato_laser_publisher _port:=/dev/ttyUSB0 _firmware_version:=2

特别注意使用版本2

第三个窗口

rosrun rviz rviz
三个窗口启动之后大概是这个样子, 注意保持别关闭




接下来我们在rviz里调整配置

我们将 Global Options 下的 Fixed Frame 修改为  /neato_laser




然后点击下方的Add 按钮,在弹出的窗口中选择Topic下的 LaserScan




如果雷达连接正确,此刻我们应该能看到点云了. 如果没出点云或者出现随机的红色点,请看之前硬件连接的说明视频

http://v.youku.com/v_show/id_XMTYxOTMzNzAyNA==.html#paction

实际显示效果(我把点的尺寸调大了)



  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值