天天看点

SLAM之VeloyneLiDAR-VLP-16激光雷达从安装到地图创建

我使用的系统是: Ubuntu 16.04 x64,ros-kinetic,Python2.7。(其它系统版本也相仿)

硬件是: VeloyneLiDAR VLP-16

安装Point Cloud Library(PCL),Ubuntu下PCL官方提供安装方式是:

sudo add-apt-repository ppa:v-launchpad-jochen-sprickerhof-de/pcl  
sudo apt-get update  
sudo apt-get install libpcl-all  
           

出现如下错误:

以下两种方式解决:

sudo apt-get install libpcl1
#or 
sudo apt-get install libpcl*
           

安装python2.7的warp:

git clone https://github.com/strawlab/python-pcl.git  
cd python-pcl  
make  
sudo python2 setup.py install 
           

我的提示找不到Cpython,于是运行

sudo apt-get install Cpython*
           

使用指令检查是否安装成功

python
import pcl
           

之后的部分假设已接通线路,ubuntu能够连接到激光雷达,并可以用VeloView显示实景

安装VLP-16的ROS驱动

安装VeloView软件,可以从VeloView官网下载或者在附赠的U盘里找到,使用如下指令把安装文件夹中的Velodyne XML文件转成ROS节点的YAML文件,转换后生成VLP-16.yaml

rosrun velodyne_pointcloud gen_calibration.py ~/Desktop/VLP-.xml 
roslaunch velodyne_pointcloud VLP16_points.launch calibration:=/home/lordjesus/Desktop/VLP-.yaml
           

在rviz中显示

rosrun rviz rviz -f velodyne 
           

然后在rviz中点Add,增加PointCloud2,再在PointCloud2下点topic输入/velodyne_points。这样就可以实时显示获取的3D点云图

使用rosbag记录数据

rosbag record -O bagname /velodyne_points 
#or 
rosbag record -a bagname
           

rosbag的其他指令复习

http://wiki.ros.org/cn/ROS/Tutorials/Recording%20and%20playing%20back%20data

rosbag record -a                                #录制所有发布的话题到当前目录
rosbag record -O bagname /velodyne_points       #录制指定的话题到当前目录
rosbag info <your bagfile>                      #检查看bag文件的内容
rosbag play data_file_name.bag                  #回放bag文件以再现系统运行过程
rosbag play data_file_name.bag -r            #以0.5倍速播放.bag文件的内容
           

试跑LOAM SLAM的算法

cd ~/catkin_ws/src  
git clone https://github.com/laboshinl/loam_velodyne.git  
cd ~/catkin_ws  
catkin_make -DCMAKE_BUILD_TYPE=Release  
source ~/catkin/devel/setup.bash  
roslaunch loam_velodyne loam_velodyne.launch 
           

然后在新的终端运行:

rosbag play ~/bagname.bag  
#or  
roslaunch velodyne_pointcloud VLP16_points.launch pcap:="/home/username/bagname.pcap"  
           

在rosbagplay运行结束后,rviz中应有一个map,如没有,可以多试几次或检查节点:

rosrun rqt_graph rqt_graph
           
SLAM之VeloyneLiDAR-VLP-16激光雷达从安装到地图创建
SLAM之VeloyneLiDAR-VLP-16激光雷达从安装到地图创建
SLAM之VeloyneLiDAR-VLP-16激光雷达从安装到地图创建

转载请注明:转自http://blog.csdn.net/littlethunder/article/details/51920212

继续阅读