odroid平台——ASUS Xtion Pro Live + Openni + ROS搭建

时间:2022-05-09 06:32:26

之前一直在PC端的ubuntu下操作ASUS的Xtion这款RGB-D,最近做无人机项目需要移植到机载开发板上,于是开始了为期几天的尝试。

我无人机机载使用的开发板是Odroid-xu3,系统是Lubuntu14.04,资料见点击打开链接www.hardkernel.com

根本上讲,odroid-xu3是基于ARM的开发板,本文适用于其他基于ARM的开发板。

ARM + Lubuntu + Xtion +ROS

进入正题!!

先安装依赖库

sudo apt-get install -y g++ python libusb-1.0-0-dev freeglut3-dev doxygen graphviz
下载OpenNI的源码,注意,只下载一次就可以了,不需要额外的driver了(下载 tags=2.1版本的

git clone https://github.com/OpenNI/OpenNI2 && cd OpenNI2
有两个文件需要修改,一个是ARM平台相关,一个是代码错误,找一下两个文件的位置

find . -iname platform.arm && find . -iname redist.py
./ThirdParty/PSCommon/BuildSystem/Platform.Arm
./Redist/Redist.py
打开 Platform.Arm并修改

CFLAGS += -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp #-mcpu=cortex-a8
修改为

CFLAGS += -march=armv7-a -mtune=cortex-a9 -mfpu=neon -mfloat-abi=hard

打开Redist.py并修改,将

compilation_cmd = "make -j" + calc_jobs_number() + " CFG=" + configuration + " PLATFORM=" + platform + " > " + outfile + " 2>&1"
修改为

compilation_cmd = "make -j1" + " CFG=" + configuration + " PLATFORM=" + platform + " > " + outfile + " 2>&1"
开始编译

PLATFORM=Arm make
编译好之后生成安装包

cd Redist && python ReleaseVersion.py arm

安装包存在了


./Redist/Final/

将其移动到你想要安装的目录,然后解压安装

tar -xvf OpenNI-Linux-Arm-2.1.0.tar.bz2 && cd OpenNI-2.1.0-arm && sudo sh install.sh

编译一个读取的小例子

cd Samples/SimpleRead && make
cd ../Bin && ./SimpleRead

执行之后不报错,则驱动已经安装完成。

安装基于ROS的openni_launch支持

sudo apt-get install ros-indigo-openni-launch
roslaunch openni_launch openni_launch


BUG:

问题:openni_launch 过程中有可能会出现 Interface : USB is not supported!

解决方法:

sudo vim /etc/openni/GlobalDefaults.ini
去掉这行的注释(去掉分号);UsbInterface=2



效果如图!一个暴力熊奉上!


odroid平台——ASUS Xtion Pro Live + Openni + ROS搭建