欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

ubuntu16.04 Inter D415安装指南(SDK+ROS+Python)

程序员文章站 2022-07-12 17:58:44
...

ubuntu16.04+ROS+Inter D415安装

本文主要参考kkruaruarua博文结合自己的实际操作写成

ROS部分安装

鉴于我在安装ros和D415驱动的过程中遇到的许多问题,在此和大家分享,希望可以帮助到大家

  1. 安装ubuntu16.04,我用的是64bit的系统,安装步骤大家可以参考百度,很多
  2. 更改软件源,我用的是清华的软件源,但是在我刚装好系统的时候出现了这个问题
    ubuntu16.04 Inter D415安装指南(SDK+ROS+Python)
    解决办法如下:先sudo gedit /etc/apt/sources.list,删除文件里面的所有内容,再输入下列代码
    ubuntu16.04 Inter D415安装指南(SDK+ROS+Python)
    接着修改软件源就可以了
  3. 安装最新版本的cmake,我是参考的这篇博客
    简化一下:
sudo apt-get autoremove cmake
wget http://www.cmake.org/files/v3.11/cmake-3.11.3.tar.gz
tar xf cmake-3.11.3.tar.gz
cd cmake-3.11.3
./configure
make
sudo make install

最后检查一下,
cmake --version
输出如下:
ubuntu16.04 Inter D415安装指南(SDK+ROS+Python)
到此,cmake已经安装成功

必须要安装最新版本的cmake,在之后安装D415驱动的时候会因为版本问题导致驱动安装失败,切记切记!

  1. 接下来就是安装ROS系统了,这个大家可以参考ros的官方安装指南。 ubuntu16.04对应kinetic版本,18.04对应最新的Melodic,简单罗列一下吧:
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 421C365BD9FF1F717815A3895523BAEEB01FA116
sudo apt-get update
sudo apt-get install ros-kinetic-desktop-full

这个时候遇到了这个问题:
ubuntu16.04 Inter D415安装指南(SDK+ROS+Python)
上网搜索了一下,是因为没有开启更新
ubuntu16.04 Inter D415安装指南(SDK+ROS+Python)
全部打开就可以了
之后,我们继续

sudo rosdep init
rosdep update
echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
source ~/.bashrc

安装D415驱动

当然啦,如果严格按照上述的步骤的话,接下来的安装是不会有问题的,在这里还是推荐大家去官方的网站安装https://github.com/IntelRealSense/librealsense/blob/master/doc/distribution_linux.md
这里面有详细的步骤以及解释,总结一下,命令大概如下:

sudo apt-key adv --keyserver keys.gnupg.net --recv-key C8B3A55A6F3EFCDE || sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key C8B3A55A6F3EFCDE
Ubuntu 16 LTS:
sudo add-apt-repository "deb http://realsense-hw-public.s3.amazonaws.com/Debian/apt-repo xenial main" -u
Ubuntu 18 LTS:
sudo add-apt-repository "deb http://realsense-hw-public.s3.amazonaws.com/Debian/apt-repo bionic main" -u
sudo rm -f /etc/apt/sources.list.d/realsense-public.list
sudo apt-get update
sudo apt-get install librealsense2-dkms
sudo apt-get install librealsense2-utils
#到这里安装基本结束,可以使用下一个代码打开工作站,确认安装
realsense-viewer

这个时候发现插上d415还是没有画面,这是因为我们没有安装驱动,所以接下来安装驱动

这里我们可以先下载源码,https://github.com/IntelRealSense/librealsense/releases/tag/v2.16.1 选择最后一个。tar.gz文件,下载之后解压,具体也可以参考原文:https://blog.csdn.net/riancy_riancy/article/details/83270836 ,运行下列命令

拔掉摄像头和电脑的连接
sudo apt-get update
sudo apt-get install git libssl-dev libusb-1.0-0-dev pkg-config libgtk-3-dev
sudo apt-get install libglfw3-dev
cd librealsense(tab)(刚才下载的文件,不过是解压之后的)
sudo cp config/99-realsense-libusb.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules && udevadm trigger
./scripts/patch-ubuntu-kernel-4.16.sh (或者./scripts/patch-realsense-ubuntu-lts.sh)
mkdir build && cd build
cmake ..

这个时候运行realsense-viewer还是出不来图像,这是因为我们还需要一个文件,叫Signed_Image_UVC_5_10_13.bin,下载链接在这里:https://downloadcenter.intel.com/download/28377/Latest-Firmware-for-Intel-RealSense-D400-Product-Family?v=t 下载时候注意解压,路径不能包含中文,否则可能会出错
在链接里Available Downloads选项是下载选项,Detailed Description里面有安装步骤的链接,选择linux环境安装,点击进入后,有一个pdf文档的链接,文档不大,按照里面的步骤就可以顺利配置成功。
大致配置如下:

#添加 Intel server 到 list of repositories:
echo 'deb http://realsense-hw-public.s3.amazonaws.com/Debian/apt-repo xenial main' | sudo tee /etc/apt/sources.list.d/realsense-public.list
#注册the servers public key:
sudo apt-key adv --keyserver keys.gnupg.net --recv-key 6F3EFCDE
sudo apt-get update
#安装the intel-realsense-dfu(有星号)包:
sudo apt-get install intel-realsense-dfu*
#将相机连接上电脑,USB3.0接口,输入lsusb,查询对应 “Intel Corp”的bus号和device号:
lsusb
#升级D400系列的相机固件(一次即可)
intel-realsense-dfu -b 002 -d 003 -f -i /home/intel/downloads/Signed_Image_UVC_5_9_2_0.bin

这里解释一下这个代码:

intel-realsense-dfu -b 002 -d 003 -f -i /home/wk/intel/downloads/Signed_Image_UVC_5_10_13_0.bin

-b是器件的Bus号,使用lsusb命令可以查询的到,这里,我们的Bus号就是002
-d就是Device,这里就是007
-i后面是我们刚刚下载的文件的地址

所以代码应为

intel-realsense-dfu -b 002 -d 007 -f -i /home/wk/intel/downloads/Signed_Image_UVC_5_10_13_0.bin

这个时候连接上传感器,输入命令realsense-viewer,就可以看到成功输出图像了
ubuntu16.04 Inter D415安装指南(SDK+ROS+Python)
ubuntu16.04 Inter D415安装指南(SDK+ROS+Python)

ROS+D415

接上文,在完整的安装上一篇博客的依赖项

sudo apt-get install librealsense2-dkms
sudo apt-get install librealsense2-utils
sudo apt-get install librealsense2-dev
sudo apt-get install librealsense2-dbg

之后,接下来就可以继续在ros上运行D415
https://github.com/intel-ros/realsense 中,有具体的安装步骤,总结如下:

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src/
Clone the latest Intel® RealSense™ ROS from here into 'catkin_ws/src/'   (务必去链接处下载2.1.2,2.1.3支持只D435i,当然,各取所需嘛)
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

附上官方的操作链接
(1)安装librealsence2 SDK
(2)配置ros+d415的ros通讯

然后是rviz设置:首先
ubuntu16.04 Inter D415安装指南(SDK+ROS+Python)
然后是:
add-pointcloud2
ubuntu16.04 Inter D415安装指南(SDK+ROS+Python)
topic设置一下
这样应该就没问题了,上图:
ubuntu16.04 Inter D415安装指南(SDK+ROS+Python)

Python-Linux环境安装:

为了使python能调用D415需要我们导入pyrealsense2库:

  1. 使用命令命令行pip install --user pyrealsense2在线安装。
  2. 或者手动下载,地址https://pypi.org/project/pyrealsense2/ ,并把pyrealsense2文件夹复制到librealsense/wrappers/python/下。使用命令行python setup.py install --user运行setup.py文件完成安装

以下是运行官方DEMO的结果,源代码:,使用python直接运行wrappers/python/examples/python-tutorial-1-depth.py。下面是运行的结果:
ubuntu16.04 Inter D415安装指南(SDK+ROS+Python)

Python-Windows环境安装:

现在只是使用了SDK显示,然而我想要做的是使用python读取,安装完成后在bin目录会有已经预编译好的python pyd文件,如下图:
ubuntu16.04 Inter D415安装指南(SDK+ROS+Python)
将pyrealsense2.pyd文件复制到你的python site-package文件夹即可,我的路径是这个D:\anaconda\envs\py27\Lib\site-packages可以做一下参考。
以下是运行官方DEMO的结果,源代码:,使用python直接运行wrappers/python/examples/python-tutorial-1-depth.py。下面是运行的结果:
ubuntu16.04 Inter D415安装指南(SDK+ROS+Python)