Sorry, your browser cannot access this site
This page requires browser support (enable) JavaScript
Learn more >

1. 环境说明

操作系统环境: Ubuntu 24.04 LTS
要安装的版本: ROS2 (Jazzy Jalisco版本)

2. 软件安装

2.1. 设置系统的编码格式

可以通过以下指令检查自己系统的编码格式:

1
2
echo $LANG
C.UTF-8

如果已经是UTF-8的格式,可以忽略下面的操作。

设置编码格式为UTF-8:

1
2
3
4
5
6
7
8
locale  # check for UTF-8

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

locale # verify settings

2.2. 安装ROS2

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# 首先要确保已启用Ubuntu的全球软件源(universe)。
sudo apt install software-properties-common
sudo add-apt-repository universe

# 添加 ROS 2 GPG key
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

# 添加ROS2的源码仓库到Ubuntu的sources.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

# 安装开发工具包
sudo apt update && sudo apt install ros-dev-tools

# 更新apt的软件源
sudo apt update
sudo apt upgrade

# 安装桌面版 ROS, RViz, demos, tutorials.
sudo apt install ros-jazzy-desktop

# 安装ROS-Base(包含Communication libraries, message packages, command line tools)
sudo apt install ros-jazzy-ros-base

2.3. 设置ROS环境变量

1
2
3
4
# 我的SHELL用的是zsh,所以执行以下脚本
source /opt/ros/jazzy/setup.zsh
# 如果用bash,执行以下脚本
source /opt/ros/jazzy/setup.bash

3. 测试验证

1
2
3
4
5
6
7
# 运行C++版本的Demo talker
source /opt/ros/jazzy/setup.zsh
ros2 run demo_nodes_cpp talker

# 运行Python版本的Demo listener
source /opt/ros/jazzy/setup.zsh
ros2 run demo_nodes_py listener

如果能看到talker发送消息,listener接收消息,说明安装成功。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# talker
ros2 run demo_nodes_cpp talker
[INFO] [1747627873.809800673] [talker]: Publishing: 'Hello World: 1'
[INFO] [1747627874.809893242] [talker]: Publishing: 'Hello World: 2'
[INFO] [1747627875.810024532] [talker]: Publishing: 'Hello World: 3'
[INFO] [1747627876.809823580] [talker]: Publishing: 'Hello World: 4'
[INFO] [1747627877.809836723] [talker]: Publishing: 'Hello World: 5'

# listener
ros2 run demo_nodes_py listener
[INFO] [1747627874.822606084] [listener]: I heard: [Hello World: 2]
[INFO] [1747627875.812733396] [listener]: I heard: [Hello World: 3]
[INFO] [1747627876.810810031] [listener]: I heard: [Hello World: 4]
[INFO] [1747627877.812446615] [listener]: I heard: [Hello World: 5]

4. 卸载ROS2

卸载软件

1
sudo apt remove ~nros-jazzy-* && sudo apt autoremove

从apt的软件源中删除ROS2的源码仓库

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

5. 参考文档

https://docs.ros.org/en/jazzy/Installation/Ubuntu-Install-Debs.html#id5

推荐阅读
ROS2中ROS_DOMAIN_ID的作用与配置 ROS2中ROS_DOMAIN_ID的作用与配置 Linux C++ 开发1 - 搭建C++开发环境 Linux C++ 开发1 - 搭建C++开发环境 Ubuntu系统清理磁盘缓存 Ubuntu系统清理磁盘缓存

评论