micro-ROS / micro-ROS/system_modes
Working with non-lifecycle nodes
还没有人认领这个 Issue。
- 主要语言
- C++
- 星标
- 45
- 派生
- 13
- PR 合并指标
- 30 天内没有已合并 PR
描述
When the system definition (SMH) contains non-lifecycle nodes, inference will most probably fail, because nodes woll not report any (of the specified) states / transitions used by the inference.
Two options are:
1. Introduce DONT-CARE in the SMH specification for states or
2. (more convenient and flexible), let the mode manager / inference check for all nodes whether they are lifecycle nodes or states/transitions need to be ignored. Check can be done with the [get_service_names_and_types_by_node()](https://docs.ros2.org/foxy/api/rclcpp/classrclcpp_1_1Node.html#aa3df8a7d8b174f8049dfd2766f4b2eb9) method.
When working, a launch test with a system consisting of i) rclcpp nodes, ii) rclcpp lifecycle nodes, rcl nodes, and iv) rclpy nodes would be great.
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
首先检查处理生命周期节点状态和转换的模式管理器及推理路径,然后查看所引用的 get_service_names_and_types_by_node() API。该 issue 提议使用 DONT-CARE 状态,或忽略非生命周期节点;完成内容应包括在 launch 测试中支持混合使用 rclcpp、lifecycle、rcl 和 rclpy 节点。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- cpp
- 领域
- robotics
- Issue 类型
- 功能
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100