【20-8-7】树莓派上部署英特尔深度相机IntelRealsense T265

2023-05-16

最近在搭建无人机的自主飞行平台,无GPS的情况下室内定位的方案除了光流,最好的就是配合intel的realsense系列的摄像头。尤其是T265本身带IMU,可以直接给飞控输出位姿信息,不管是APM固件还是PX4固件,在ROS和MAVROS的帮助下,都可以直接获取T265的信息。
自主飞行平台的板载电脑是树莓派3b+,运行ubuntu mate 18.04的系统和ROS Melodic,理论上可以随时更换为性能更强劲的英伟达Jetson系列系统,或者intel upboard系列。
ROS的安装,在其他的文章中已经讲过了。本文只涉及部署Intel的T265相机。分为两个部分,SDK的安装和ROS节点的安装。前提是ROS系统已经被部署在树莓派上。

0. 预操作:扩大Swap分区

Ubuntu mate默认的Swap分区太小,编译时会直接卡死,并且不会报错,所以首先要扩大swap分区。另外,编译操作会让树莓派温度升高的很厉害,需要安装好散热风扇。
查看当前的交换空间大小,我的默认是100M

free -m 

1.建立交换空间文件
随便在哪里都行,放到碰不到的地方,防治误删除

cd /opt/
sudo mkdir swap_temp #名字任意起
cd swap_temp
sudo touch swap

2.设置交换文件的大小

sudo dd if=/dev/zero of=/opt/swap_temp/swap bs=1024 count=3048000  # 我这里设置的是3G

等一会儿,结束时才会有回显,我的写入速度是20M每秒,3G需要2分钟左右
结束后返回:

3048000+0 records in
3048000+0 records out
2097152000 bytes (2.9 GB, 3.0 GiB) copied, 242.095 s, 18.7 MB/s

3.设置为交换空间

sudo mkswap /opt/swap_temp/swap

4.启用交换空间

sudo swapon /opt/swap_temp/sawp

现在已经可以使用了,通过free -m查看

5.写入分区

sudo vim /etc/fstab
文件最后加入
/opt/swap_temp/sawp /swap swap defaults 0 0

1.Intel Realsense SDK的安装

1.安装依赖包

sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade
sudo apt-get install git cmake libssl-dev libusb-1.0-0-dev pkg-config libgtk-3-dev
sudo apt-get install libglfw3-dev libgl1-mesa-dev libglu1-mesa-dev

第二行的是核心依赖,必装。第三行是3D相关的依赖,如果不打算使用realsense-viewer,可以不装,树莓派性能有限,安装SDK的目的是为了安装好驱动,不需要执行太多本机操作,建议内存卡小的不用装了。

3.下载Realsense SDK

git clone https://github.com/IntelRealSense/librealsense.git

4.编译准备

cd librealsense
mkdir build && cd build
cmake ../ -DCMAKE_BUILD_TYPE=Release -DBUILD_EXAMPLES=true \
-DFORCE_RSUSB_BACKEND=ON -DBUILD_WITH_TM2=false -DIMPORT_DEPTH_CAM_FW=false

-DFORCE_RSUSB_BACKEND=ON 必选,强制LIBUVC后端,否则你要自己给内核打补丁。
5.编译

sudo make uninstall && make clean && make  && sudo make install 

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZXy1hIT5-1596855868528)(file://C:/Users/kids/Documents/Gridea/post-images/1596802908724.png)]
我自己的3B+需要编译三小时左右。中间交换空间最大占用为1.6G。

6.设置udev规则

sudo ./scripts/setup_udev_rules.sh

主要是为了识别设备,最重要的也就是这里
7.测试

realsense-viewer

我的机载电脑没有开图形界面,一般都是VNC连接上去。

2. 编译ROS驱动

目的是为了让ROS节点可以订阅T265发回的IMU信息。
英特尔官方发布了两种安装方式,1是通过apt的方式安装二进制文件,2是通过源码编译。但是前提是系统里已经安装好了对应的ROS系统,我的是18.04+Melodic

2.1 APT-Get 安装

export ROS_VER=melodic

安装

sudo apt-get install ros-$ROS_VER-realsense2-camera

用于3D显示的库

sudo apt-get install ros-$ROS_VER-realsense2-description

注意:

  • 这种方法安装的librealsense2总是落后于最新发布的版本

2.2 源码编译

1.创建工作目录

工作目录的名字不一定要是catkin_ws

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src/
2.克隆源码
git clone https://github.com/IntelRealSense/realsense-ros.git
cd realsense-ros/
git checkout `git tag | sort -V | grep -P "^\d+\.\d+\.\d+" | tail -1`
cd ..
3.编译
catkin_init_workspace
cd ..
catkin_make clean
catkin_make -DCATKIN_ENABLE_TESTING=False -DCMAKE_BUILD_TYPE=Release
catkin_make install
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc

3.使用

启动节点

roslaunch realsense2_camera rs_camera.launch
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【20-8-7】树莓派上部署英特尔深度相机IntelRealsense T265 的相关文章

随机推荐

  • Docker Desktop的安装

    如果安装了 Docker Desktop xff0c 则已经安装了完整的 Docker xff0c 包括 Compose 一 在 Ubuntu 上安装 Docker Desktop DEB 包 先决条件 要成功安装 Docker Deskt
  • Intel Realsense D435i Firmware Update

    Intel Realsense D435i Firmware Update 0 引言1 更新2 显示设备信息 0 引言 固件下载更新教程 1 更新 固件名称 xff1a Signed Image UVC lt firmware versio
  • Intel RealSense D435i Calibration

    Intel RealSense D435i Calibration 0 引言1 标定工具安装1 1 imu utils Install1 2 kalibr Install 2 IMU标定3 相机标定4 IMU 43 相机联合标定5 VINS
  • G2O优化

    G2O优化 0 引言0 1 参考0 1 G2O的解决问题0 2 G2O整体框架 1 基本使用1 1 构造 g2o 模型1 2 g2o 类图 2 g2o 的顶点 xff08 Vertex xff09 2 1 顶点的格式2 2 自定义顶点2 3
  • Kalman Filter

    Kalman Filter 0 引言1 Kalman Filter1 1 建模1 2 五个重要公式 2 推导3 MatlabDemo 0 引言 卡尔曼滤波 xff08 Kalman filtering xff09 一种利用线性系统状态方程
  • 发一套最完整的直升机原理(绝对完整,绝对精华)

    发一套最完整的直升机原理 xff08 绝对完整 xff0c 绝对精华 xff09 这是找到的最完整 xff0c 最系统介绍直升机的原理及发展史的文章 转到这里 xff0c 送给论坛里喜欢飞行 xff0c 向往蓝天的朋友 xff01 xff0
  • 模拟串口UART的实现

    我所祷告的 xff0c 就是要你们的爱心 xff0c 在知识和见识上 xff0c 多而又多 xff0c 使你们能分辨是非 xff0c 做诚实无过的人 xff0c 直到基督的日子 腓立比书 1 9 10 最近在调的MCU的型号为STM32F0
  • VScode安装git插件使用说明

    VScode创建代码功能目录后 xff0c 可以安装git相关插件查看代码合入历史记录 代码提供 更新 合入等操作 xff0c 使用起来比较方便 1 安装试用Git History 离线安装包 xff1a donjayamanne gith
  • 使用java代码连接RedisCluster集群实现

    Redis5 x集群学习须知 学前须知 xff1a 当前redis的最新版本是5 0以上 xff0c 其搭建cluster的方法与早期的redis4 0以前的不太一样 xff0c 不再使用ruby相关的组件 1 redis集群的常见搭建方式
  • [设计] Doris血缘解析流程

    一 背景 1 1 元数据概述 元数据是凌久中台重要功能模块 xff0c 是数据治理的重要一环 xff0c 元数据治理是一切数据治理的基础 xff0c 主要分为元数据管理和表血缘管理 xff1b 元数据管理主要用来做数据地图 数据资产等 xf
  • [安装] 搭建hadoop集群

    参考资料 xff1a Hadoop集群搭建 xff0c 14张过程截图超详细教程 目录 目录 hadoop集群构建 for ljgk 一 基础环境准备 修改主机名称 配置yum源 1 局域网中配置代理环境 2 或者使用私有的yum源的方式
  • presto和doris查询对比

    本文对比了presto和doris在即席查询场景下的性能对比 1 count 查询数据总条数 例子 xff1a select count from ods tb device point data presto查询结果 presto vas
  • JAVA常用工具类

    JAVA常用工具类 根据GITHUB代码统计 从Google你能搜索到大量的关于Struts Spring Hibernate iBatis等比较大的框架的资料 xff0c 但是很少有人去关注一些小的工具包 xff0c 但是当你真正知道了这
  • Kafka遇到的坑-- Error while fetching metadata with correlation id : {LEADER_NOT_AVAILABLE}

    1 创建topic中出现出现错误 kafka出现 Error while fetching metadata with correlation id LEADER NOT AVAILABLE 表示无法识别kafka hostname 正确处
  • 怎样让Intellij IDEA工程中输出日志信息

    Intellij IDEA中使用log4j日志 一 在pom xml中添加依赖 span class token tag span class token tag span class token punctuation lt span d
  • 面试一般流程

    面试流程 xff1a 个人介绍 gt 技术面试 gt 项目介绍 gt 职业规划 一 个人介绍 xff1a xff08 1 xff09 个人履历 xff1a 你的学校 专业 xff08 突出自己的优势 已经做的项目突出你的个人能力 xff09
  • 31岁之十大拙见

    版权归作者所有 xff0c 任何形式转载请联系作者 作者 xff1a 萧汐汐 xff08 来自豆瓣 xff09 来源 xff1a https www douban com note 696211880 31岁之十大拙见 工作是人生大事 xf
  • Flink日志输出查看方式

    在网上查看flink日志查看方式 xff0c 竟然查询不到 xff0c 因此写下这篇文章 xff0c 给有此困惑的小盆友们 xff0c 也给自己做个总结 xff01 前情提要 xff1a 我是通过flink web ui提交的flink任务
  • 重学C语言之开始

    还记得是大一上学期学习的C语言 xff0c 当时就是为了应付一下考试 xff0c 很多东西其实还没有吃透 虽然大学玩了几年的单片机 xff0c 自己也写了不少的C代码 xff0c 但是总是感觉自己还是没有搞透C语言 xff0c 没有抓住C语
  • 【20-8-7】树莓派上部署英特尔深度相机IntelRealsense T265

    最近在搭建无人机的自主飞行平台 xff0c 无GPS的情况下室内定位的方案除了光流 xff0c 最好的就是配合intel的realsense系列的摄像头 尤其是T265本身带IMU xff0c 可以直接给飞控输出位姿信息 xff0c 不管是