librealsense安装
sudo apt-get install libudev-dev pkg-config libgtk-3-dev
sudo apt-get install libusb-1.0-0-dev pkg-config
sudo apt-get install libglfw3-dev
sudo apt-get install libssl-dev
sudo apt-get install ros-noetic-ddynamic-reconfigure
sudo apt-key adv --keyserver keys.gnupg.net --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE || sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE
sudo add-apt-repository “deb https://librealsense.intel.com/Debian/apt-repo bionic main” -u
sudo apt-get install librealsense2-utils
sudo apt-get install librealsense2-dev
拉取librealsense
git clone https://github.com/IntelRealSense/librealsense.git
//也可以指定版本
//git clone -b v2.50.0 https://github.com/IntelRealSense/librealsense.git
//sudo chmod u+x ./installLibrealsense.sh
//./installLibrealsense.sh
cd librealsense
mkdir build
cd build
cmake ../ -DBUILD_EXAMPLES=true
make
sudo make install
realsense-viewer
Cloning into ‘libcurl’…
error: RPC failed; HTTP 408 curl 22 The requested URL returned error: 408
fatal: the remote end hung up unexpectedly
直接去 https://github.com/curl/curl 下载curl.zip。
注释掉 ~/librealsense/CMake 文件下的 external_libcurl.cmake 的 GIT_REPOSITORY "git://github.com/curl/curl.git" 。即在 GIT_REPOSITORY "git://github.com/curl/curl.git"前加#。
并将提前下载后的 curl.zip 解压后 改名为 libcurl ,放入到 ~/librealsense/build/third-party。
由此可跳过git clone libcurl 失败的问题。
ROS包安装
cd ~/catkin_ws/src
git clone https://github.com/IntelRealSense/realsense-ros.git
cd ~/catkin_ws && catkin_make
roslaunch realsense2_camera demo_pointcloud.launch
roslaunch realsense2_camera rs_camera.launch
etting Dynamic reconfig parameters.
hwmon command 0x80( 5 0 0 0 ) failed (response -7= HW not ready)
hwmon command 0x80( 5 0 0 0 ) failed (response -7= HW not ready)
hwmon command 0x80( 5 0 0 0 ) failed (response -7= HW not ready)
hwmon command 0x80( 5 0 0 0 ) failed (response -7= HW not ready)
[ INFO] [1683620250.396558236]: Done Setting Dynamic reconfig parameters.
/opt/ros/noetic/lib/nodelet/nodelet: symbol lookup error: /home/bitcq/fast-drone-250/devel/lib//librealsense2_camera.so: undefined symbol: _ZN2cv3MatC1Ev
librealsense和realsense-ros的版本不一致的问题,librealsense和realsense-ros的版本对应关系。通过打开realsense-viewer查看之前二进制安装的librealsense的版本 。每个realsense2_camera功能包的cmakelists里面有写对应需要多少版本的librealsense
源码安装librealsense驱动:
cd librealsense
git checkout v2.50.0
git branch
未定义标识符undefined symbol: _ZN2cv3MatC1Ev。猜测是OpenCV库的问题。首先看看自己有没有安装OpenCV,没有安装请先安装,安装过程略。
kg-config --modversion opencv
安装ros-realsense
创建ros工作空间
mkdir -p ~/realsense_ws/src && cd ~/realsense_ws/src
编译安装
cd ~/realsense_ws
catkin_make -DCATKIN_ENABLE_TESTING=False -DCMAKE_BUILD_TYPE=Release
catkin_make install
echo "source ~/realsense_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc
测试
roslaunch realsense2_camera rs_camera.launch
多主机ROS通信
export ROS_HOSTNAME=[master_host_ip]
export ROS_MASTER_URI=http://[host_ip]:11311
rgbd_launch是一组打开RGBD设备,并load 所有nodelets转化 raw depth/RGB/IR 流到深度图(depth image), 视差图(disparity image)和点云(point clouds)的launch文件集。
sudo apt-get install ros-noetic-rgbd-launch