跳到主要内容

接口目录

本目录罗列 Robonix 在 capabilities/ 下随仓库分发的标准能力约定。能力约定描述接口名称、数据类型和交互方式,不指定由哪个提供方实现,也不记录某次运行中的网络地址。完整概念见命名空间与能力约定

每条能力约定由 capabilities/<kind>/ 下的一份 TOML 和 capabilities/lib/ 下的消息或服务定义共同描述。rbnx codegen 根据软件包的构建目标生成 gRPC 接口、模型上下文协议(Model Context Protocol,MCP)类型辅助代码或 ROS 2 消息包;一次构建只生成明确请求的产物。详见软件包构建与代码生成

按命名空间组织

标准业务能力约定按原语、服务和系统接口组织;robonix/skill/* 由技能软件包自行定义。生命周期管理使用一个跨类别共享命名空间:

命名空间含义
robonix/primitive/*原语:低层设备抽象机械臂 · 音频 · 相机 · 底盘 · 设备健康 · 惯性测量单元 · 激光雷达 · 机器人描述
robonix/service/*服务:可替换的通用能力空间地图 · 导航 · 语音 · 声纹 · 记忆
robonix/system/*系统服务:Robonix 自身组件规划器 · 执行器 · 交互服务 · 场景服务 · 本体服务 · 健康服务
robonix/lifecycle/*跨原语、服务和技能复用的生命周期管理接口robonix/lifecycle/driver

完整的 12 个系统组件(含不对外暴露能力约定的)见 系统组件

怎么读每张表

每个域页面都是一张接口表:

  • 能力约定 ID:接口名称,例如 robonix/primitive/camera/rgb。多个提供方可以暴露同一个接口;运行时由提供方 ID 区分具体设备。Atlas 按能力约定 ID 合并接口定义,重复定义会保留后加载者并给出警告。
  • 模式:调用方与提供方的交互方式,包括一次请求响应、流式请求响应和单向话题。表中保留运行时使用的 rpcrpc_server_streamrpc_client_streamrpc_bidirectional_streamtopic_outtopic_in 原值;语义见命名空间与能力约定
  • 载荷(IDL):接口定义语言(Interface Definition Language,IDL)描述的消息或服务类型,解析到 capabilities/lib/ 下的 .msg.srv。Robonix 自带的 ROS 2 消息定义也从这里生成,使不同 ROS 2 发行版上的 Robonix 组件使用同一套数据结构。
  • 能力约定 TOML:能力约定描述文件相对 capabilities/ 的路径;绝对路径见 rbnx path capabilities

robonix/lifecycle/driver 是提供方共享的生命周期入口,不是业务数据接口。新软件包省略 Driver 条目时由框架自动使用该约定,不创建自己的 Driver TOML;显式声明共享 Driver 也受支持。

后向兼容:已有命名空间 Driver

各领域页面仍列出的 <provider-namespace>/driver 是已有软件包自己维护的兼容接口。目前仍可使用,但计划迁移到共享 Driver,且不能与共享 Driver 同时注册。完整兼容与迁移流程见软件包与部署清单规范