Turtlebot_02——ROS indigo下Kinect建图
一、基本环境:
- 电脑系统:Ubuntu14.04 LTS
- ROS版本:indigo
- 传感器:Kinect v1
- 机器人:Turtlebot2
二、安装Kinect1.0驱动
1、将Kinect与电脑USB端口连接后,查看是否识别该设备。
$ lsusb
显示的设备厂商是 Microsoft ,应该就是Kinect1
注意:Kinect1.0使用USB2.0或者USB3.0;而Kinect2.0则只能使用USB3.0 。区别USB2.0和3.0的方法是查看端口的颜色,黑色的就是USB2.0,蓝色的就是USB3.0 。如下图:
2、安装openni和freenect驱动
$ sudo apt-get install ros-indigo-openni-* ros-indigo-openni2-* ros-indigo-freenect-*
$ rospack profile
3、检查环境变量。在使用Kinect设备之前,首先通过下面命令的输出结果,检查turtlebot默认的3D传感器的环境变量(仅在TUrtlebot上网本操作)
$ echo $TURTLEBOT_3D_SENSOR
# Kinect
在该配置中由于使用的是微软的Kinect传感器,所以如果结果显示为:Kinect,则表示默认的3D传感器环境变量是正确的。若显示的是 asus_xtion_pro ,则需要执行该命令:echo "export TURTLEBOT_3D_SENSOR=kinect" >> .bashrc ,来修改3D传感器环境变量的默认值,并重新启动终端。但是如果使用的是 asus_xtion_pro相机,则设置为 asus_xtion_pro 。
三、测试Kinect相机
1、由于电脑USB端口的电压很低,不能使Kinect进行工作。所以需要用转接线连接Kinect的梯形USB接口,然后一端通过电源对Kinect进行供电,另一端连接电脑的USB接口。在使用Kinect相机时,需要为其提供12V,1.5A的电源。将对Kinect供电的线头接到turtlebot的12V,1.5A的端口(注意:褐色接正极,白色接负极),然后打开turtlebot的开关,若转换线接头上的信号灯点亮,则表示供电正常。
2、启动相机(只是测试相机的话,无需在电脑上启动turtlebot的节点,也无需连接电脑和机器人,只要打开机器人的开关供电即可)
$ roscore
#打开新终端
$ roslaunch freenect_launch freenect-registered-xyzrgb.launch
3、查看 rgb 图
#打开新终端
$ rosrun image_view image_view image:=/camera/rgb/image_color
可以运行:rosrun rqt_reconfigure rqt_reconfigure ,来调整分辨率。
4、查看depth(深度图)
#打开新终端
$ rosrun image_view image_view image:=/camera/depth_registered/image
Kinect的两个版本对比
参考资料:
[2] Turtlebot入门-硬件安装