自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 ROS2 QoS(服务质量)详解

是 ROS2 的核心特性,它提供了一套精细化的通信质量控制机制。与 ROS1 的简单通信模型不同,ROS2 通过 QoS 策略允许开发者精确控制消息传递的可靠性、实时性和资源使用。

2025-11-01 00:18:29 393

原创 ROS2 生命周期节点详解

生命周期节点是 ROS2 中的一种。

2025-10-31 21:04:26 984

原创 ROS2 Nav2详解与C++ API介绍

一、 什么是Nav2?Nav2是ROS2中的导航系统,它提供了一系列算法和工具,使移动机器人能够从一点自主移动到另一点。Nav2采用行为树结构来组织导航任务,并大量使用动作通信来实现模块间的交互。全局规划器 - 计算从起点到目标点的全局路径局部规划器 - 根据全局路径和传感器数据计算局部控制命令恢复行为 - 在机器人被困时执行恢复操作行为树 - 协调导航任务中的各个模块Nav2就像一个自动驾驶系统全局规划器 = 导航系统(计算整个路线)

2025-10-31 20:38:17 687

原创 ROS2 C++ TF2详解

什么是 tf2?是 ROS 2 中用于管理和使用坐标变换的核心库。它负责跟踪多个坐标框架(坐标系)之间的变换关系,并允许在任意两个坐标系之间进行点、向量等数据的变换。核心概念1. 坐标框架 (Coordinate Frame)每个坐标系都是一个三维空间用字符串标识,如:“base_link”, “laser”, “map”, “camera”形成树状结构(不能有环)2. 变换 (Transform)描述两个坐标系之间的相对位置和姿态包含平移 (x, y, z) 和旋转 (四元数)

2025-10-31 15:30:29 428

原创 ROS2 启动管理工具-Launch

一、 什么是ROS 2 Launch 系统?对于一个机器人系统来说,往往由很多个不同功能的节点组成,启动一个机器人系统时往往需要启动多个节点,同时根据应用场景和机器人的不同,每个节点还会有不同的配置项。如果一项一项进行启动,那么将会非常麻烦。ROS 2 Launch 系统是一个用于启动和管理多个 ROS 2 节点的强大工具。它允许你通过单个命令启动复杂的机器人系统,包括节点、参数、配置和依赖关系。# 需要手动启动每个节点(繁琐且容易出错) ros2 run package1 node1。

2025-10-30 23:33:00 395

原创 ROS2 C++ 动作通信

一、 什么是动作通信?动作是一种异步双向通信机制,专门设计用于需要较长时间执行的任务。它采用客户端-服务器向服务器发送任务目标,并接收反馈和最终结果接收目标,执行任务,定期发送反馈,最终返回结果核心组成部分:目标- 客户端发送的任务描述反馈- 服务器定期发送的进度更新结果- 任务完成后的最终输出形象比喻动作就像一个外卖订单目标 = 你点的菜品反馈 = 餐厅处理进度(准备中、配送中)结果 = 最终送达的餐品Goal是客户端发送给服务器的任务描述,它定义了要做什么。Result。

2025-10-30 19:48:06 1289

原创 ROS2 C++ 参数通信

一、 什么是参数通信?参数是 ROS 2 节点提供的动态可配置配置项。你可以将其类比为程序的**“启动参数”或“配置文件”**,但它的强大之处在于可以在节点运行时动态地进行查询修改,而无需重启节点。参数不是一种持续不断的数据流(如话题),也不是一次性的请求-响应(如服务)。它是一种键值对存储,每个参数都有一个名字(键)和一个值。用于调整节点的行为。例如,调整机器人的最大速度、设置算法的系数、切换传感器模式、设置命名空间等。

2025-10-30 18:37:28 679

原创 ROS2 C++ 服务通信

一、 什么是服务通信?服务是 ROS 2 中一种同步双向的通信机制。它基于客户端-服务器模型,允许一个节点(客户端)向另一个节点(服务器)发送一个请求,并等待其返回一个响应。同步双向:通信是双向的,并且客户端在收到响应之前会阻塞(或异步等待)。这是一个“请求-响应”的交互模式。客户端-服务器模型:提供某种特定功能或计算服务,并等待客户端的请求。当收到请求后,服务端处理请求并返回响应。需要某种特定功能时,向服务端发送请求,并等待其返回响应。一个服务通常由一个服务端提供,但可以被多个客户端调用。

2025-10-29 23:28:15 1450

原创 ROS2 C++ 话题通信

一、 什么是话题通信?话题是 ROS 2 中最核心、最常用的一种异步单向通信机制。它基于发布-订阅模型,允许多个节点之间通过命名信道(即话题)进行数据交换。单向异步:数据流是单向的,从一个节点流向另一个或多个节点,且发送方和接收方无需同步等待。发布者:负责向特定话题发布 消息。订阅者:负责从特定话题订阅 并接收消息。多对多通信一个话题可以有多个发布者和多个订阅者,实现了高度的解耦和灵活性。话题就像一个杂志社的订阅频道。发布者 是杂志社,负责定期出版杂志。

2025-10-29 22:39:42 647

原创 ROS2 humble C++ 节点创建

以上代码为创建一个ROS2节点。

2025-10-29 21:55:58 109

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除