安装 ROS概述
RK3566的板子包含4核心的1.8GHz的A53处理器以及0.8T的NPU。理论上可以替换树莓派来做ARM端的ROS小车。同时由于RK355具有NPU单元,所以其在目标检测和识别上更有优势。
通过FireFly官方网站下载Ubuntu18.04并 安装完毕后,就可以安装 ROS 操作系统了,大致步骤如下:
- 配置ubuntu的软件和更新
- 设置安装源
- 设置key
- 安装
- 配置环境变量
1、配置ubuntu的软件和更新
由于Ubuntu默认的软件源是美国,由于国内的网络原因导致访问较慢或者不能访问,所以许多大学和公司提供的对应软件镜像源,以提高软件的下载的速度。
ros一般源配置:
sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list'
如果是ARM版本的,采用如下配置系统源:
备份原版源:
cp -a /etc/apt/sources.list /etc/apt/sources.list.bak
使用华为的嵌入式源:
wget -O /etc/apt/sources.list https://mirrors.huaweicloud.com/repository/conf/Ubuntu-Ports-bionic.list
设置key:
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
2、配置ubuntu的软件和更新
在安装之前先更新apt的索引,此处ubuntu18.04对应的ros版本为melodic。
sudo apt update
sudo apt-get install ros-melodic-desktop-full
如果出现以下问题:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
ros-melodic-desktop-full : Depends: ros-melodic-perception but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
问题分析:第一次遇到这个问题以为是源的问题,实际上当源换错的时候会直接提示找不到ros包,这里实际提示的是部分依赖存在问题。相对于apt安装,apt会告诉你现在这个依赖不行然后停下,aptitude能够自动帮你处理依赖问题提出方案,输入Y即可自动执行处理。
sudo apt install aptitude
sudo aptitude install ros-melodic-desktop-full
*避免后面出现sudo rosdep:找不到命令提示,这里需要执行如下命令:
sudo apt install python-rosdep
然后执行:
sudo rosdep init
rosdep update
由于网络的问题,部分会出现以下情况:
ERROR: cannot download default sources list from:
https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
Website may be down.
上面问题产生的原因大概率是指当前计算机不能访问指定的网址获取数据,一个非常好的解决办法是用[20210831解决 rosdep init 错误的核武器 - 知乎 ]提供的方法,它的原理是使用了GitHub在国内的备份网址,gitee, 然后自动把需要修改源文件的地方都自动替换了,相当于手动下载,然后修改各个文件路径的自动化版本,完美的解决了问题。
sudo pip install rosdepc
# 如果显示没有pip可以试试pip3。
sudo pip3 install rosdepc
# 如果pip3还没有就先安装一个pip
sudo apt-get install python3-pip
sudo rosdepc init
rosdepc update
安装rosinstall
sudo apt-get install python-rosinstall
加载环境设置文件
source /opt/ros/melodic/setup.bash
创建并初始化工作目录
ROS使用一个名为catkin的ROS专用构建系统。为了使用它,用户需要创建并初始化catkin工作目录,如下所示。除非用户创建新的工作目录,否则此设置只需设置一次。
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace
ROS经典测试,小海龟测试,打开三个终端:
roscore
rosrun turtlesim turtlesim_node
rosrun turtlesim turtle_teleop_key