上周成功的在新的嵌入式平台RK3399上移植了SLAM开源框架ORB-SLAM2与VINS-MONO,并使用摄像头RealSense D435进行实测。现整理记录一下整体流程,对遇到的问题进行总结,便于后续查询与复现。
本人之前也有总结过PC端与JetSon TX2嵌入式平台上的开源SLAM框架搭建流程,欢迎有需要的朋友浏览查阅:
PC端ORB-SLAM2搭建:https://blog.csdn.net/nannan7777/article/details/102843929
PC端VINS-MONO搭建:https://blog.csdn.net/nannan7777/article/details/102915699
JetSon TX2嵌入式平台VINS-MONO搭建:https://blog.csdn.net/nannan7777/article/details/103128397
开源SLAM框架在嵌入式平台的ROS环境搭建与RealSense D435相机实测
我这里已安装的基础环境与平台:
嵌入式平台RK3399
、系统Ubuntu 16.04
(xubuntu轻量级桌面系统)、架构Arm64
、Python2.7.1
、OpenCV3.4.0
、Eigen3.3.7
1、安装与配置ROS Kinetic Kame环境
实时SLAM框架需要配合ROS平台使用,需按照Ubuntu版本指定安装对应的ROS版本,最后在ROS工作空间中编译与配置ORB-SLAM2开源框架。这里提供四种指令来查看Ubuntu版本:
uname -a
cat /proc/version
cat /etc/lsb-release
cat /etc/issue
我这里的系统版本为
Xenial (Ubuntu 16.04)
,可以安装ROS Kinetic
。
ROS Kinetic官方说明:http://wiki.ros.org/Installation/Ubuntu?distro=kinetic
下面进行ROS Kinetic安装与配置:
1.1、配置Ubuntu软件中心
配置Ubuntu要求允许接受”restricted” “universe” 和 “multiverse”的软件源,一般是系统默认设置,可以在Software & Updates 中查看。
1.2、设置sources.list(软件源)
添加ROS官方软件源与设置秘钥,从packages.ros.org接收软件包。执行命令行如下:
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 0xB01FA116
如果上述源无法连接可以添加以下国内的源:
sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list'
1.3、安装 ROS Kinetic
首先更新Debian包索引,确保系统软件处于最新版,执行命令行:sudo apt-get update
ROS Kinetic 含有多种库和工具,也有很多版本,比如工业版,基础版,高级版,豪华版,至尊豪华…
可以依据自己的需求进行个性化安装。我这里安装的是桌面完整版,命令行如下,安装完成后可用后可查看能使用的包:
sudo apt-get install ros-kinetic-desktop-full
apt-cache search ros-kinetic
之后解决ROS的环境依赖,执行如下命令行:
sudo rosdep init
rosdep update
1.4、设置环境变量
使用apt-get方式在 Ubuntu上安装 ROS,在使用前需要激活/opt/ros/kinetic/目录下的setup.bash文件来添加 ROS 环境变量,命令如下:
echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
source ~/.bashrc #使环境变量设置立即生效
之后安装常用的插件,执行如下命令行:
sudo apt-get install python-rosinstall -y
1.5、测试 ROS
启动ROS环境,命令行:roscore
如果显示started core service [/rosout]
,说明 ROS 已经成功安装并配置。
问题记录-01 -------------------------------------------------------------------------------------------------------
ERROR: unable to process source https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/......
出现这个错误原因是因为raw.githubusercontent.com网站无法访问。
解决办法是修改hosts文件,添加这个网站的ip地址,执行如下命令行:
#打开hosts文件
sudo gedit /etc/hosts
#在文件末尾添加
151.101.84.133 raw.githubusercontent.com
#保存后退出再尝试
2、安装RealSense D435相机的ROS环境驱动
将Intel RealSense摄像头与R