系列文章目录
文章目录
前言
一、基础概念
ROS 2 是一个基于强类型、匿名发布/订阅机制的中间件,它允许在不同进程之间传递消息。
任何 ROS 2 系统的核心都是 ROS 图。ROS 图是指 ROS 系统中的节点网络以及它们之间进行通信的连接。
这些概念将帮助您开始了解 ROS 2 的基础知识。
1.1 Nodes(节点)
节点是 ROS 2 图中的参与者,它使用客户端库与其他节点通信。节点可以与同一进程内、不同进程内或不同机器上的其他节点通信。节点通常是 ROS 图中的计算单元;每个节点应该做一件合乎逻辑的事情。
节点可以发布到命名主题以将数据传递给其他节点,或者订阅命名主题以从其他节点获取数据。它们还可以充当服务客户端,让另一个节点代表它们执行计算,或者充当服务服务器,为其他节点提供功能。对于长时间运行的计算,节点可以充当操作客户端,让另一个节点代表它们执行,也可以充当操作服务器,为其他节点提供功能。节点可以提供可配置参数,以在运行时更改行为。
节点通常是同时包含发布者、订阅者、服务服务器、服务客户端、操作服务器和操作客户端的复杂组合。
节点之间的连接是通过分布式发现过程建立的。