Agent Skills
返回列表
💻

ROS2 开发助手

开发编程 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/ros2-development-lr-kwn9

技能介绍

要解决的工程问题

  • 从零搭建 ROS2 包时,package.xml 和 CMakeLists.txt 的字段规则容易踩坑,节点参数声明、QoS 配置也常因遗漏细节导致通信异常。
  • 多节点启动时条件逻辑不清晰,自定义消息/服务/动作的定义方式影响后续扩展性。
  • 生命周期(managed)节点的状态切换逻辑复杂,DDS 发现或 QoS 不匹配时调试成本高。

技能如何工作

核心能力

  • 包结构与构建配置:给出 ament_cmake / ament_python 包的标准布局,指导编写 package.xml 依赖声明与 CMakeLists.txt 构建规则。
  • 节点设计模式:基于 rclpy 的节点类模板,包含参数声明(declare_parameter)、QoS 策略(QoSProfile)等关键代码片段。
  • 接口定义:展示自定义消息(msg)、服务(srv)、动作(action)的 YAML 语法与生成流程。
  • 启动文件逻辑:用 launch 文件组织多节点启动,支持条件判断与参数注入。

关键步骤

  1. 按工作区规范初始化 colcon 包,确保依赖能被正确解析。
  2. 在节点类中声明带类型和范围的参数,通过 get_parameter 读取。
  3. 根据数据特性(如传感器流)选择 BEST_EFFORT 或 RELIABLE QoS 策略。
  4. 用 ros2 interface 生成自定义接口,并在代码中引用。
  5. 通过 launch 文件配置节点启动顺序与参数覆盖。

适用边界与注意点

  • 侧重开发模式与规范,不涉及具体算法(如 Nav2 路径规划的参数调优)。
  • 示例代码需按项目需求调整(如参数默认值、QoS 深度)。
  • 未覆盖嵌入式部署(如 micro-ROS)的完整配置,需结合目标平台单独适配。

使用场景

  • 搭建ROS2新功能包时,需按规范配置`package.xml`依赖与`CMakeLists.txt`构建规则
  • 自定义消息/服务接口时,需编写符合语法的YAML文件并验证生成流程
  • 开发带参数的节点时,需声明带类型的参数并设置QoS策略
  • 调试DDS通信异常时,需检查QoS配置不匹配问题

适合人员

  • 从事机器人开发的工程师,需快速搭建ROS2包结构避免配置错误
  • 编写节点逻辑的开发者,需规范的参数声明和QoS配置示例
  • 定义接口的技术人员,需正确的消息服务YAML语法指导
  • 调试通信问题的工程师,需定位QoS不匹配的具体原因