生命周期节点
Lifecycle Node (Managed Node)进阶ROS 2 中带标准状态机的节点,可被外部按顺序配置、启动、暂停和关闭。
生命周期节点是 ROS 2 引入的一种节点类型。普通节点一启动就开始工作,多个节点之间谁先就绪无法保证;生命周期节点则内置一个标准状态机,主要状态有未配置、未激活、激活、已终止,通过配置、激活、停用、清理、关闭等转换在状态间切换,每次转换都会调用开发者写好的回调(如在「配置」里读参数、分配资源,在「激活」里开始发布消息)。外部管理器可以按顺序把一组节点拉起,出错时统一停用,使系统启动和故障处理可控。Nav2 导航栈就用生命周期管理器来启动它的各个服务器节点。
例子Nav2 的 lifecycle_manager 先把地图服务器、定位节点依次配置并激活,确认就绪后再激活规划器和控制器,避免控制器在没有地图时就开始输出速度。
- 也叫
- 托管节点、Managed Node、LifecycleNode
- 相关
- ROS 2(Robot Operating System 2)、节点(Node (ROS))、Nav2(ROS 2 Navigation Stack)、有限状态机(Finite State Machine)、启动文件(Launch File)、ros2_control
- 来源
- ROS 2 Design: Managed nodes