香橙派5max安装 Fast-Drone-250 项目和Realsense D435i相机驱动和配置ROS 主从机通信

香橙派5max安装 Fast-Drone-250 项目和Realsense D435i相机驱动和配置ROS 主从机通信


📌 参考链接


1️⃣ 安装 ROS 环境

推荐使用 鱼香 ROS 一键安装脚本

wget http://fishros.com/install -O fishros && . fishros

执行后,按提示选择安装 ROS1 完整版,期间建议配置国内镜像并清除第三方源以避免冲突。

安装完成后,可通过运行 roscore 验证是否安装成功。


2️⃣ 安装 MAVROS

sudo apt-get install ros-noetic-mavros

cd /opt/ros/noetic/lib/mavros
# 注意:此步骤较耗时,请耐心等待
sudo ./install_geographiclib_datasets.sh

3️⃣ 安装 RealSense 驱动

✨ 前置检查

使用 uname -a 查看当前内核版本,确认是否与官方支持内核匹配:

支持内核示例:4.4, 4.8, 4.10, 4.13, 4.15, 4.18*, 5.0*, 5.3*, 5.4, 5.13, 5.15, 5.19, 6.2, 6.5

若版本在支持范围内,可优先选择 方式一(软件包安装),否则推荐使用 方式二(源码编译)

⚠️ 安装时,请勿插入相机!


✅ 方式一:软件包安装

参考官方:distribution_linux.md

sudo mkdir -p /etc/apt/keyrings
curl -sSf https://librealsense.intel.com/Debian/librealsense.pgp | sudo tee /etc/apt/keyrings/librealsense.pgp > /dev/null

sudo apt-get install apt-transport-https

echo "deb [signed-by=/etc/apt/keyrings/librealsense.pgp] https://librealsense.intel.com/Debian/apt-repo $(lsb_release -cs) main" | \
sudo tee /etc/apt/sources.list.d/librealsense.list

sudo apt-get update

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

✅ 方式二:源码编译

参考官方:installation.md

sudo apt-get install libssl-dev libusb-1.0-0-dev libudev-dev pkg-config libgtk-3-dev
sudo apt-get install git wget cmake build-essential
sudo apt-get install libglfw3-dev libgl1-mesa-dev libglu1-mesa-dev at

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

# 配置 UDEV 规则
./scripts/setup_udev_rules.sh

# 根据内核版本选择补丁:
# Ubuntu 20/22 LTS (5.13, 5.15, 5.19, 6.2, 6.5)
./scripts/patch-realsense-ubuntu-lts-hwe.sh

# Ubuntu 18/20 LTS (< 5.13) — 例如香橙派的 5.4 内核
./scripts/patch-realsense-ubuntu-lts.sh

# 编译安装
mkdir build && cd build
cmake ../ -DBUILD_EXAMPLES=true -DFORCE_RSUSB_BACKEND=true -DCMAKE_BUILD_TYPE=Release -DBUILD_GRAPHICAL_EXAMPLES=true

sudo make uninstall && make clean && make -j4 && sudo make install

4️⃣ 安装 realsense-ros(可选)

如需单独使用 ROS 驱动,可单独安装 realsense-ros

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src

git clone https://github.com/IntelRealSense/realsense-ros.git
cd realsense-ros/
git checkout $(git tag | sort -V | grep -P "^2.\d+\.\d+" | tail -1)
cd ..

catkin_init_workspace
cd ..

# 若遇到缺少 ddynamic-reconfigure 错误
sudo apt-get install ros-noetic-ddynamic-reconfigure

# 若仍然报错,可源码安装:
cd ~/catkin_ws/src
git clone https://github.com/pal-robotics/ddynamic_reconfigure.git

# 编译
cd ~/catkin_ws
catkin_make clean
catkin_make -DCATKIN_ENABLE_TESTING=False -DCMAKE_BUILD_TYPE=Release
catkin_make install

source devel/setup.bash

5️⃣ 安装 Fast-Drone-250 项目

git clone https://github.com/ZJU-FAST-Lab/Fast-Drone-250
# 若无法 clone,可直接下载 ZIP 并解压

cd Fast-Drone-250/

# 安装依赖 glog、ceres、ddynamic-reconfigure
cd glog
./autogen.sh && ./configure && make && sudo make install

注意这里的是libcxsparse3而不是libcxsparse3.1.2,libcxsparse3.1.2的不知道为什么会报错安装不成功
sudo apt-get install liblapack-dev libsuitesparse-dev libcxsparse3 libgflags-dev libgoogle-glog-dev libgtest-dev

cd ../ceres-solver
mkdir build && cd build
cmake ..
make -j4
sudo make install

# 编译项目
cd ~/Fast-Drone-250
catkin_make
source devel/setup.bash

# 测试运行
roslaunch ego_planner single_run_in_sim.launch

6️⃣ 推荐的辅助调试工具

工具安装命令
VS Codesudo dpkg -i *.deb
Terminatorsudo apt install terminator
Plotjugglersudo apt install ros-noetic-plotjuggler ros-noetic-plotjuggler-ros
Net-tools (ifconfig)sudo apt install net-tools
SSHsudo apt install openssh-server

7️⃣ 配置 ROS 主从机通信

为什么要使用主从机模式

由于通过 VNC 远程桌面连接香橙派时,无法稳定运行 RViz 等图形化工具,因此推荐使用主从机通信:

  • 开发板(主机):运行 roscore、传感器驱动,发布话题。
  • 笔记本(从机):通过局域网连接开发板,订阅话题并运行 RViz。

核心配置

📌 开发板(主机)

在每个需要运行 roscoreroslaunchrosrun 的终端,务必先执行

export ROS_MASTER_URI=http://<开发板_IP>:11311
export ROS_IP=<开发板_IP>

然后再运行:

roscore
# 或直接启动相机等驱动
roslaunch realsense2_camera rs_camera.launch

⚠️ 任何新终端都必须先 export,否则会出现 rostopic list 有话题但无数据的情况。


📌 笔记本(从机)

在笔记本(推荐使用 WSL)上,同样在每个终端中执行:

export ROS_MASTER_URI=http://<开发板_IP>:11311
export ROS_IP=<笔记本_IP>

然后再运行:

rviz
rostopic list

小技巧

  • 这四个 export 是临时生效,新终端需重新设置。推荐写入 ~/.bashrc 或制作一键脚本,避免重复输入。
  • 确保开发板与笔记本在同一局域网,且 IP 地址不要变动。
<think>嗯,用户的问题是关于解决Fast-Drone-250编译时遇到的PCL相关错误。首先,我需要回忆一下之前处理类似问题的经验。根据用户提供的引用,他们提到了安装ROSPCL的必要性,这可能意味着编译过程中缺少某些依赖库或者版本不兼容。 首先,我应该检查系统是否安装了正确版本的PCL库。用户提到要安装ros-$ROS_DISTRO-pcl-ros,这说明需要确保ROS的PCL包已经安装。如果用户没有正确安装这些包,编译时可能会找不到头文件或链接库,导致错误。 然后,考虑PCL的版本兼容性。Fast-Drone-250可能依赖于较新或特定版本的PCL,如果系统安装的版本过旧,可能会引发API不兼容的问题。例如,PCL 1.11之前的版本在API上有些变化,比如函数参数的变化,这需要代码进行相应的调整。 接下来,查看编译错误的具体信息非常重要。如果是找不到pcl_conversions头文件,可能需要安装pcl_conversions包,或者包含正确的路径。如果是链接错误,可能需要检查CMakeLists.txt中的链接库是否正确,比如是否链接了pcl_common、pcl_io等必要的库。 另外,用户提到之前解决过FastPlanner的类似问题,错误信息是进程崩溃,可能与动态链接库路径有关。这时候需要确认LD_LIBRARY_PATH是否包含PCL库的路径,或者是否存在多个版本的PCL导致冲突。 还有,用户可能没有正确配置CMake,比如没有找到PCL的组件,或者没有启用C++11/14标准。这需要在CMakeLists.txt中添加find_package(PCL REQUIRED COMPONENTS ...)设置CXX标准。 最后,如果以上步骤都尝试过,问题依旧存在,可能需要查看项目的GitHub issues,看看是否有其他开发者遇到相同的问题,或者向社区寻求帮助,提供详细的错误日志以便更精准的解决。</think>### Fast-Drone-250 编译 PCL 错误解决方案 #### 1. 确认系统依赖安装 首先需确保已安装 **ROS 对应版本的 PCL 相关包**。根据引用[2],安装命令为: ```bash sudo apt install ros-$ROS_DISTRO-pcl-ros libpcl-dev ``` 其中 `$ROS_DISTRO` 需替换为实际 ROS 版本(如 melodic/noetic)[^2]。 *注:`libpcl-dev` 提供 PCL 核心库开发文件,`ros-<distro>-pcl-ros` 提供 ROS 与 PCL 的接口支持。* --- #### 2. 检查 PCL 版本兼容性 Fast-Drone-250 可能依赖 **PCL 1.8 及以上版本**。通过以下命令验证版本: ```bash pcl_version --version ``` 若版本过低,需通过源码编译升级 PCL(参考 [PCL 官方文档](https://pointclouds.org/documentation/))。 --- #### 3. 修复编译配置问题 在项目 `CMakeLists.txt` 中添加以下内容确保正确链接 PCL: ```cmake find_package(PCL REQUIRED COMPONENTS common io filters) include_directories(${PCL_INCLUDE_DIRS}) link_directories(${PCL_LIBRARY_DIRS}) target_link_libraries(your_target ${PCL_LIBRARIES}) ``` 同时需确保 **C++标准设置为 C++14**: ```cmake set(CMAKE_CXX_STANDARD 14) ``` --- #### 4. 处理头文件缺失错误 若出现类似 `#include <pcl_conversions/pcl_conversions.h>` 的报错,需安装: ```bash sudo apt install ros-$ROS_DISTRO-pcl-conversions ``` --- #### 5. 验证动态库路径 若运行时出现 `libpcl_*.so` 未找到错误,需更新动态库路径: ```bash export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH ``` --- #### 6. 典型案例参考 引用[1]中提到的 `fast_planner_node` 进程崩溃问题,通常与 **PCL 版本冲突**或 **ROS 消息类型不匹配**有关,可通过重新编译 PCL 与 ROS 包解决[^1]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值