Ubuntu24.04安装ROS2 Jazzy

ops/2025/3/19 20:57:49/

ROS2有多个版本,Jazzy是Ubuntu24.04目前支持的ROS版本,而之前的humble,noetic等版本是不在该版本支持的,所以一定不能安装错版本。

1、版本介绍

1.1、支持的软硬件设备

Ubuntu 24.04 (Noble): amd64 和 arm64
Windows 10 (Visual Studio 2019): amd64
RHEL 9: amd64
macOS: amd64
Debian Bookworm: amd64

1.2、版本的改进

common_interfaces :新增 VelocityStamped 消息和 Marker.msg 中的 ARROW_STRIP 类型。
image_transport :支持懒订阅者,添加设置回调组和允许列表的选项。
ros2cli :增加了 --log-file-name 命令行参数和订阅选项中的 QoS。
rosbag2 :支持服务数据的录制和回放,新增过滤模式,优化播放器和录音机组件的性能。
rviz2 :添加 TF 显示的正则表达式过滤字段和话题状态的订阅频率显示。

2、安装教程

安装教程参考以下链接:

Ubuntu 24.04 安装 ROS2 Jazzy_ubuntu24.04安装ros2-CSDN博客

Ubuntu-Install-Debians — ROS 2 Documentation: Jazzy documentation

2.1、查看是否支持UTF-8编码

打开终端,执行以下命令:

locale  # check for UTF-8sudo 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-8locale  # verify settings

 执行后,系统语言设置成了英语。

2.2、启动Ubuntu universe储存库

终端执行命令:

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

2.3、设置软件源

执行命令:

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

报告错误:

curl: (7) Failed to connect to raw.githubusercontent.com port 443 after 1 ms: Couldn't connect to server
参考方法:古月居 - ROS机器人知识分享社区

2.4、添加密钥

执行命令:

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

2.5、安装ROS2

先进行更新检测

sudo apt update

然后进行升级

sudo apt upgrade

安装桌面完整版(建议)

sudo apt install ros-jazzy-desktop

2.6、环境配置

每次打开终端时,都需要进行环境配置:

# Replace ".bash" with your shell if you're not using bash
# Possible values are: setup.bash, setup.sh, setup.zsh
source /opt/ros/jazzy/setup.bash

若想在后续使用中不用进行环境配置,可以直接将命令写进bashrc文件

echo "source /opt/ros/jazzy/setup.bash" >> ~/.bashrc

3、测试ROS2

3.1、话题发布与监听

打开一个新的终端,输入命令,开始发布话题:

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

 然后打开另一个新的终端,接收话题:

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

3.2、小海龟测试

启动两个终端,分别运行如下指令:

ros2 run turtlesim turtlesim_node
ros2 run turtlesim turtle_teleop_key


http://www.ppmy.cn/ops/167111.html

相关文章

7种数据结构

7种数据结构 顺序表sqlite.hseqlite.c 单链表linklist.clinklist.h 双链表doulinklist.cdoulinklist.h 链式栈linkstack.clinkstack.h 队列SeqQueue.cSeqQueue.h 树tree.c 哈希表hash.c 顺序表 sqlite.h #ifndef __SEQLIST_H__ #define __SEQLIST_H__ typedef struct person…

(C语言)typedef 讲解

typedef 是 C 语言中的一个重要关键字,用于为已存在的数据类型、结构体或函数指针等创建别名,从而简化代码并提高可读性。 1. typedef 的基本概念 typedef 不会创建新的数据类型,而是为已有的类型提供一个别名。例如: typedef …

【004】deepseek本地化部署后,python的调用方式_#py

python调用本地deepseek 1 本地化部署deepseek2 python调用方式 1 本地化部署deepseek 已经有很多大佬们说了不少部署本地化部署deepseek的工作了,我就不过多重复了。 先安装Ollama软件,再通过Ollama获取deepseek的模型文件,大家根据电脑的配…

NLP高频面试题(四)——BN和LN的区别与联系,为什么attention要用LN

在深度学习模型中,Normalization是一种极为重要的技巧,Batch Normalization(BN)和Layer Normalization(LN)是其中最为常用的两种方法。然而,二者在实际应用中有着明显的区别与联系,尤…

vscode使用ssh同时连接主机CentOS:user和ubuntu20.04:docker

主机为CentOS docker为Ubuntu20.04 两者可以使用一个vscode远程链接 1.使用已拉取好的Ubuntu镜像建立docker容器 2.进入容器内,下载一些关于ssh的安装包 apt-get install vim apt-get install openssh-client apt-get install openssh-server apt-get install ssh passwd …

DeepSeek + Kimi 自动生成 PPT

可以先用deepseek生成ppt大纲,再把这个大纲复制到Kimi的ppt助手里: https://kimi.moonshot.cn/kimiplus/conpg18t7lagbbsfqksg 选择ppt模板: 点击生成ppt就制作好了。

Unity shader管道液体流入并流出效果

Unity shader管道液体流入并流出效果 效果展示: 实现思路: 1、通过Alpha 和UV 配合进行液体显示。 2、通过split节点R通道,上下UV滚动,配合Step节点进行截断显示。 3、通过Enum方案,切换向前,或向后截断流动。 4、…

不像人做的题————十四届蓝桥杯省赛真题解析(上)A,B,C,D题解析

题目A:日期统计 思路分析: 本题的题目比较繁琐,我们采用暴力加DFS剪枝的方式去做,我们在DFS中按照8位日期的每一个位的要求进行初步剪枝找出所有的八位子串,但是还是会存在19月的情况,为此还需要在CHECK函数…