ubuntu16.04+ROS+Inter D415安装
本文主要参考kkruaruarua博文结合自己的实际操作写成

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

安装ubuntu16.04,我用的是64bit的系统,安装步骤大家可以参考百度,很多
更改软件源,我用的是清华的软件源,但是在我刚装好系统的时候出现了这个问题

解决办法如下:先sudo gedit /etc/apt/sources.list,删除文件里面的所有内容,再输入下列代码

接着修改软件源就可以了

安装最新版本的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
输出如下:

到此,cmake已经安装成功

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

接下来就是安装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

这个时候遇到了这个问题:

上网搜索了一下,是因为没有开启更新

全部打开就可以了
之后,我们继续

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,就可以看到成功输出图像了

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设置:首先

然后是:
add-pointcloud2

topic设置一下
这样应该就没问题了,上图:

Python-Linux环境安装:
为了使python能调用D415需要我们导入pyrealsense2库:

使用命令命令行pip install --user pyrealsense2在线安装。
或者手动下载,地址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。下面是运行的结果:

Python-Windows环境安装:

现在只是使用了SDK显示,然而我想要做的是使用python读取,安装完成后在bin目录会有已经预编译好的python pyd文件,如下图:

将pyrealsense2.pyd文件复制到你的python site-package文件夹即可,我的路径是这个D:\anaconda\envs\py27\Lib\site-packages可以做一下参考。
以下是运行官方DEMO的结果,源代码:,使用python直接运行wrappers/python/examples/python-tutorial-1-depth.py。下面是运行的结果: