树莓派控制无人机实现定点降落(一)——树莓派4安装ROS(Kinetic)

树莓派控制无人机实现定点降落(一)——树莓派4安装ROS(Kinetic)

树莓派4安装ROSKinetic可按照官网教程链接在此
本文顺一下安装过程(与官网教程一致),并指出我安装过程中踩到的坑和解决方法。
我烧写的系统是Raspbian2019.9.26更新的系统,该系统内核使用的是Buster,安装过程以官网Buster对应的为准。

1、安装ROS仓库

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 C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

2、安装Bootstrap依赖

sudo apt-get install -y python-rosdep python-rosinstall-generator python-wstool python-rosinstall build-essential cmake

3、rosdep初始化

sudo rosdep init
rosdep update

4、安装ros

mkdir -p ~/ros_catkin_ws
cd ~/ros_catkin_ws
rosinstall_generator ros_comm --rosdistro kinetic --deps --wet-only --tar > kinetic-ros_comm-wet.rosinstall
wstool init src kinetic-ros_comm-wet.rosinstall

这里安装的是ROS-Comm,是官网推荐的,大家还可以安Desktop版的(树莓派带起来可能会卡),安装方法官网写得也很清楚,这里就不写了

5、解决依赖

mkdir -p ~/ros_catkin_ws/external_src
cd ~/ros_catkin_ws/external_src
wget http://sourceforge.net/projects/assimp/files/assimp-3.1/assimp-3.1.1_no_test_models.zip/download -O assimp-3.1.1_no_test_models.zip
unzip assimp-3.1.1_no_test_models.zip
cd assimp-3.1.1
cmake .
make
sudo make install
cd ~/ros_catkin_ws
rosdep install -y --from-paths src --ignore-src --rosdistro kinetic -r --os=debian:buster

6、构建

sudo ./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release --install-space /opt/ros/kinetic
source /opt/ros/kinetic/setup.bash
echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc

构建过程中可能会出现一些错误

(1)如果你安装发的是destop版,安装opencv时可能会出错

在这里插入图片描述
这时我们看到报错出现在文件/home/pi/ros_catkin_ws/src/opencv3/modules/stitching/include/opencv2/stitching/detail/matchers.hpp里,通过寻找可以找到cuda.hpp位于/home/pi/ros_catkin_ws/src/opencv3/opencv_contrib/xfeatures2d/include/opencv2/xfeatures2d/cuda.hpp,故将出错文件52行直接改为绝对路径

#include "/home/pi/ros_catkin_ws/src/opencv3/opencv_contrib/xfeatures2d/include/opencv2/xfeatures2d/cuda.hpp"

问题解决

(2)安装过程中可能会出现有关boost的错误:

boost/tr1/unordered_set.hpp: No such file or directory
这是版本问题,树莓派上自带的可能是1.67版本,但我们需要的是1.58版本,故:

sudo apt remove libboost1.67-dev
sudo apt autoremove
sudo apt install -y libboost1.58-dev libboost1.58-all-dev
sudo apt install -y g++-5 gcc-5
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 10
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 20
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 10
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 20
sudo update-alternatives --install /usr/bin/cc cc /usr/bin/gcc 30
sudo update-alternatives --set cc /usr/bin/gcc
sudo update-alternatives --install /usr/bin/c++ c++ /usr/bin/g++ 30
sudo update-alternatives --set c++ /usr/bin/g++
sudo apt install -y python-rosdep python-rosinstall-generator python-wstool python-rosinstall build-essential cmake

问题解决

  • 7
    点赞
  • 55
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值