栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

树莓派4b安装Ubuntu20.04桌面版并安装ROS1-Noetic和ROS2-Foxy

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

树莓派4b安装Ubuntu20.04桌面版并安装ROS1-Noetic和ROS2-Foxy

树莓派4b安装Ubuntu20.04桌面版并安装ROS1-Noetic和ROS2-Foxy 1 树莓派4b安装Ubuntu20.04 1.0 引言

树莓派4b并未适配1804及2004的桌面版Ubuntu(官方镜像连接),而ROS未免会需要图形界面,故有以下几种方法安装Ubuntu20.04桌面版:

    安装Server版本,这种方法实测无法安装GPU驱动导致界面卡顿,图形显示不正常。参照国外大神给出的教程,详见:Raspberry Pi 4 / 400 Ubuntu USB Mass Storage Boot Guide,在他的博客里也可以找到Ubuntu1804的桌面版镜像安装官方支持的Ubuntu Mate(链接),下文只讲这种方法。
1.1 准备工作

这里需要下载几个工具:balenaEtcher、

还需要准备一个SD卡,推荐使用32GB

1.2 镜像烧录

打开balenaEtcher,选择镜像,选择SD卡,点击flash即可

1.3 开启树莓派

将SD卡插到树莓派上,接上显示器,上电开机

按照提示一步一步操作

1.4 换清华源

树莓派安装的是ARM版本的Ubuntu,所以要使用 ubuntu-ports 镜像。

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ focal main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ focal main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ focal-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ focal-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ focal-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ focal-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ focal-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ focal-security main restricted universe multiverse

# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ focal-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ focal-proposed main restricted universe multiverse

然后更新+升级

sudo apt-get update
sudo apt-get upgrade

下文讲解ROS的安装。本文只讨论二进制安装,源码安装之后单独出一篇文章讲述。

2 安装ROS1-Noetic

Ubuntu20.04推荐版本为Noetic,此版本也为LTS,所以本文安装Noetic版本ROS1。

2.1 设置sources.list
sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'
2.2 设置秘钥
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

这里会出现无法连接至密钥服务器,请科学上网。

2.3 安装完整桌面版
sudo apt install ros-noetic-desktop-full
2.4 设置环境
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
2.5 测试
roscore

如果成功安装则可以看到ROS版本为Noetic。

2.6 卸载

未测试过!!!

如需卸载,运行:

sudo apt-get purge ros-* && sudo apt-get autoremove

然后自行删除相关的环境变量

3 安装ROS2-Galactic

ROS2目前官网推荐版本为Galactic,虽然Galactic修复了Foxy的许多bug,但是Foxy的资料比Galactic多一些,所以本文安装Foxy。

Foxy正在向Galactic迁移,本文安装最新版本的Galactic

3.1 添加ROS2 apt仓库

添加仓库

sudo apt update && sudo apt install curl gnupg lsb-release

验证GPG key

sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

将仓库加入软件源

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(source /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
3.2 安装ROS2包

上文设置了仓库,需要更新apt缓存

sudo apt update

桌面版安装

sudo apt install ros-galactic-desktop
3.3 设置环境
echo "source /opt/ros/galactic/setup.bash" >> ~/.bashrc
source ~/.bashrc

此时应该报错如下:

ROS_DISTRO was set to ‘noetic’ before. Please make sure that the environment does not mix paths from different distributions. 

出现该警告的原因在于环境变量中同时存在ROS1、ROS2。如果要切换使用ROS1和ROS2,则应该修改环境变量。

3.3.1 更新vim

预装的vim版本过旧,先更新一下

sudo apt-get install vim

使用vi打开环境变量文件

vi ~/.bashrc

滚动到最后,在以下两句前加#注释掉

source /opt/ros/noetic/setup.bash
source /opt/ros/galactic/setup.bash

在后面加入

echo "ros noetic(1) or ros2 galactic(2)?"
read edition
if [ "$edition" -eq "1" ];then
  source /opt/ros/noetic/setup.bash
else
  source /opt/ros/galactic/setup.bash
fi

刷新终端source ~/.bashrc,然后输入1或2即可在当前终端内应用对应的环境变量

3.4 测试

输入ros2,出现相关command的提示即为安装成功

3.5 卸载

如需卸载,运行:

sudo apt remove ~nros-galactic-* && sudo apt autoremove

然后自行删除相关的环境变量

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/748252.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号