节点(Nodes)¶
节点是 ROS 2 计算图中的参与者,它使用客户端库与其他节点通信。节点可以与同一进程内、不同进程或不同机器上的其他节点进行通信。节点通常是 ROS 计算图中的计算单元;每个节点应完成一项逻辑任务。
节点可以向命名话题发布数据以传递给其他节点,也可以订阅命名话题以从其他节点获取数据。它们还可以作为服务客户端,请求其他节点代为执行计算,或作为服务服务器,向其他节点提供功能。对于长时间运行的计算,节点可以作为动作客户端,请求其他节点执行该计算,或作为动作服务器,向其他节点提供此类功能。节点可在运行时提供可配置的参数以改变其行为。
节点通常同时是发布者、订阅者、服务服务器、服务客户端、动作服务器和动作客户端的复杂组合。
节点之间的连接通过分布式发现过程建立。