(一)ROS2学习--环境配置

本文详细指导了在Ubuntu20.04系统上安装ROS2,包括设置locale、添加镜像源、安装关键组件、配置环境以及可选的额外步骤如移植ROS1桥和问题解决方案。
摘要由CSDN通过智能技术生成

环境信息

主机:ubuntu20.04
原网页
https://docs.ros.org/en/iron/Installation/Ubuntu-Install-Debians.html

系统配置

设置locale

确定系统在一个支持utf-8的语言环境,在一些最小化系统里面(比如docker容器),语言环境可能是POSIX。
使用以下命令检查语言环境。

locale    #验证语言环境

如果结果如下就不需要操作

LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

否则,安装配置以下

sudo apt update 
sudo apt install locales
sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8

添加必要的镜像源

sudo apt install software-properties-common
sudo add-apt-repository universe

添加ROS2的GPG的apt密钥

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

然后添加仓库到source list

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

安装开发工具(可选)

如果你将要构建ROS包或者进行开发工作,可以安装开发工具

sudo apt update
sudo apt install ros-dev-tools

安装ROS2

更新软件源缓存,ROS推荐确保系统软件都使用最新的软件包版本

sudo apt update
sudo apt upgrade

桌面安装(推荐):ROS,RViz, demo, tutorials.

sudo apt install ros-iron-desktop

注意:针对ubuntu20.04需要安装相对早一点的版本

sudo apt install ros-foxy-desktop

或者安装ROS基础包:通信库,消息包。命令行,没有GUI工具

sudo apt install ros-iron-ros-base

注意:针对ubuntu20.04需要安装相对早一点的版本

sudo apt install ros-foxy-husky-base

安装额外的RMW实现(可选)

ROS2 使用的默认的中间件是Fast DDS, 但中间件(RMW)可以在运行时替换。可以参考指南 了解如何使用多个RMW的指南。

配置环境

通过使能以下文件来配置环境

# 这里的setup.bash 是因为我们的shell用的bash,如果其它shell,可以选择setup.sh, setup.zsh等
source /opt/ros/iron/setup.bash

注意:上诉中安装foxy版本的ROS 2的配置环境的命令如下:

source /opt/ros/foxy/setup.bash

示例

如果上面安装了桌面版本,而不是精简版本,可以运行示例。
在一个终端里使能初始化文件,并允许C++的 talker

source /opt/ros/iron/setup.bash
ros2 run demo_nodes_cpp talker

foxy版本的ROS2 运行的命令如下

source /opt/ros/foxy/setup.bash
ros2 run demo_nodes_cpp talker

在这里插入图片描述

在另一个终端里执行一个python的listener

source /opt/ros/iron/setup.bash
ros2 run demo_nodes_py listener

foxy版本的ROS2运行的命令如下

source /opt/ros/foxy/setup.bash
ros2 run demo_nodes_py listener

在这里插入图片描述
上诉的示例中talker 打印出它发布的信息,listener打印出它听到的信息。这验证了C++和python的APIs接口都能正常工作。

下一步

继续学习 教程和演示 来配置您的环境,创建您自己的工作区和包,并学习 ROS 2 核心概念。

移植ROS 1桥(可选)

ROS 1 桥可以将主题从 ROS 1 连接到 ROS 2,反之亦然。 请参阅有关如何构建和使用 ROS 1 桥的专用文档

问题

常见问题及解决办法

卸载

如果要卸载ROS2,或者切换到源码安装的方式,但系统中已经安装了二进制,执行以下命令

sudo apt remove ~nros-iron-* 
sudo apt autoremove

注意:foxy版本的运行如下命令

sudo apt remove ~nros-foxy-* 
sudo apt autoremove

如果需要删除软件源:

sudo rm /etc/apt/sources.list.d/ros2.list
sudo apt update
sudo apt autoremove
# Consider upgrading for packages previously shadowed.
sudo apt upgrade

其它安装方法

通过源码安装
通过二进制文件安装

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值