惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

J
Java Code Geeks
月光博客
月光博客
aimingoo的专栏
aimingoo的专栏
Google DeepMind News
Google DeepMind News
Recent Announcements
Recent Announcements
MyScale Blog
MyScale Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
S
SegmentFault 最新的问题
Hugging Face - Blog
Hugging Face - Blog
Martin Fowler
Martin Fowler
WordPress大学
WordPress大学
F
Fortinet All Blogs
小众软件
小众软件
D
Docker
U
Unit 42
博客园 - 聂微东
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
爱范儿
爱范儿
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
IT之家
IT之家
云风的 BLOG
云风的 BLOG
博客园 - 司徒正美
有赞技术团队
有赞技术团队
腾讯CDC

编程笔记

智元灵犀X2机器人二开02:端侧环境与第一个 AIMDK 程序 腾讯WorkBuddy海外版来啦,注册畅玩gpt-6-Astra,deepseek-4.1-flash限时免费 Tencent's WorkBuddy AI: Sign Up to Enjoy GPT-6-Astra and now DeepSeek-4.1-Flash is Free AI|大模型智力测试,鹈鹕SVG生成 Grok账号如何获取SSO cookie及如何在vscode中使用grok api 转载|一图看懂大模型性价比 谷歌云收入暴增82%、公募科技持仓突破60%:AI不会减速的七个铁证 AI|AI面试题,AI来解答 译|为什么 TypeScript 7.0 用 Go 重写 解决Fish Shell中使用vfox报错,Lacks hook support 股票配债缴款操作指南 Deepseek大模型越狱/破甲提示词 用DeepSeek-V4-Pro大模型写长篇小说,网文 全网寻找的同花顺板块同列网页版来了!盯盘效率提升 5 倍的黑科技 等一个黄金坑:中海物业跌到什么价位,到手股息率能有6%? Claude Code(1)在 WSL Ubuntu 上安装和配置指南 (译)AI 裁员潮:亚马逊、微软等科技巨头将 2025 年裁员归因于人工智能 AI|L2和L3级自动驾驶有什么区别 AI|Gemini CLI 实用技巧与窍门 AI|Gemini CLI Tips & Tricks 限制 Microsoft Edge 浏览器的内存占用 (Repost)4.3 Million Browsers Infected,Inside ShadyPanda's 7-Year Malware Campaign (译)430万浏览器被感染,揭秘 ShadyPanda 持续 7 年的恶意软件活动 github Fine-grained personal access token 使用 必应搜索屏蔽垃圾网站 译|Linux 启动过程:从按下电源到内核 独立开发:AI图生图获得第一位付费用户,现在支持在线支付了 译|面试官引诱我安装恶意软件(我是如何在一次“工作面试”中差点被黑的) 译|在 Go 中防止 CSRF 的现代方法,CrossOriginProtection AI图生图:释放你的无限创造力,免费在线生成惊艳图像
智元灵犀X2机器人二开01:认识灵犀 X2 与二开全景,端侧、云端...
yigmmk · 2026-09-13 · via 编程笔记

本系列:从 0 到 1 入门智元灵犀 X2 二次开发
本篇要解决的问题:给定一个需求,判断它应该落在端侧还是云端。

从认知、端侧、云端到端云联合与进阶架构的六篇文章推进路线。 从 0 到 1 · 六篇推进线 01 · 认知:X2 与二开全景 端侧 vs 云端,架构与能力边界 02 · 端侧环境与第一个程序 连上机器人,跑通 ROS2 节点 03 · 端侧接口实战 控制 / 交互 / 感知三大模块 04 · 云端 AgentSDK 被动交互、语义技能、打断与拒识 05 · 端云联合打通 语音控动作 + 导航,含 Demo 修复 06 · 从 Demo 到产品 任务流、状态机、复杂场景 Agent

灵犀X2

灵犀X2是智元机器人发布的搭载情感计算引擎的双足智能交互人形机器人,旗舰版整体具备 30 个自由度,标配 激光雷达、前视双目 RGB 摄像头、RGBD 相机与后视 RGB 摄像头,并配备高算力板 Nvidia Orin NX 计算单元,标配 4G/5G 模块。具备全量的二次开发能力,同时支持灵创平台使用。

一、两条二开路径

智元把二开能力拆成了两套并行、且可以协同的体系。选错路径的代价不是多写几行代码,整个技术方案会拧着走。

端侧开发 云端开发
开发框架 AIMDK(任务编程与扩展框架) 灵心 AgentSDK(LinkSoul)
代码运行位置 机器人本体 你的服务器 / 云主机
通信方式 ROS 2(service / topic) WebSocket 长连接
支持语言 Python、C++ Python、Java
核心能力 控制、感知、交互 语义理解、LLM、TTS
版本 AIMDK 1.0(接口 v0.8) AgentSDK v1.4.0

一句话概括职责边界:端侧管身体,云端管脑子。

但”管身体 / 管脑子”这种说法容易掩盖真正的判断依据。下面给出可操作的判据。

1
2
3
4
5
6
7
8
flowchart TD
S["需求"] --> Q1{"需要毫秒级实时闭环?"}
Q1 -->|是| E["端侧 AIMDK"]
Q1 -->|否| Q2{"涉及语义理解 / LLM / 知识库?"}
Q2 -->|是| C["云端 AgentSDK"]
Q2 -->|否| Q3{"需要多步动作编排或离线可用?"}
Q3 -->|是| E
Q3 -->|否| C

真实系统几乎都会落到”两者协同”:云端负责听懂并决定,端侧负责执行并反馈。第 05 篇专门处理两者的接缝。


写代码前需要先接受几个硬约束,它们会直接限制程序能做什么。

计算单元。X2 有两套计算单元:标配计算单元,以及面向二开的开发计算单元(Orin NX / RK3588)。二开程序部署在开发计算单元上,通过千兆以太网(RJ45)访问。

⚠️ 硬约束运控计算单元(PC1,10.0.1.40)上不可部署二开程序。该单元承担运控等高实时任务,占用其算力会直接影响机器人行走安全。这不是性能建议,是安全边界。

传感器。X2 配备多路传感器(相机、麦克风阵列、触觉等),官方文档给出能力、视场角与参数。注意部分传感器属于选装——写依赖视觉的代码前,先确认目标机器是否装配。

关节活动范围。文档分别给出手臂、腿部、头部、腰部的可保证活动空间。超出范围的关节指令轻则执行失败,重则损伤硬件。动作类程序必须以此为边界。

坐标系。AIMDK 有明确的坐标系约定,所有位姿与导航点位都基于它。导航和位姿相关代码上线前必须先读这一节——否则会出现”坐标数值正确、但机器人朝向反了”这类难以定位的问题。


三、端侧 AIMDK

AIMDK 是智元为二开提供的机器人开放接口与配套工具,基于 ROS 2 Humble

接口按模块划分:

模块 内容
控制模块 运动模式切换、走跑控制、MC 控制信号与输入源、预设动作、灵创动作、末端执行器、关节控制
交互模块 语音控制(ASR / TTS / MIC 音频流)、屏幕控制、灯带控制
感知模块(选装) 视觉等感知能力
硬件抽象模块 底层硬件统一抽象
故障与系统管理 标注”待发布”
开发者模式 开发者相关配置

接口命名规范(后续会反复用到):

类型 前缀
Service /aimdk_5Fmsgs/srv/
Topic /aima/
消息包 aimdk_msgs

⚠️ 已知缺陷:ROS 的 service 机制在跨板通信时存在待优化问题。官方明确要求二开时”参考例程添加异常处理、快速重试等保护机制”。


四、云端灵心 AgentSDK

AgentSDK 是对话智能层。程序以 WebSocket 长连接接入灵心开放平台网关,机器人端侧把音频 / 视频 / 文本推给二开程序,处理后回传。

两种交互模式,方向相反:

  • 被动交互:机器人发起(音频 / 视频 / 文本)→ 二开程序处理 → 返回结果(ASR / LLM / VLM / TTS)
  • 主动交互:二开代码主动发起 → 平台转发 → 机器人响应。v1.4.0 起公开入口收敛为”任务流”,即可编排的多步任务序列

五、系统全景

1
2
3
4
5
6
7
8
9
10
11
12
13
14
graph TB
subgraph Cloud["灵心平台 LinkSoul Platform"]
LG["LinkskyGateway<br/>二开网关"]
BR["Bridge 桥接器<br/>控制面 / 数据面"]
IGW["交互网关<br/>连接机器人终端"]
LG <--> BR
BR <--> IGW
end

APP["二开应用<br/>AgentSDK"]
ROBOT["机器人终端<br/>MIC / Camera / Speaker / Motor"]

APP <-->|"WebSocket (wss)"| LG
IGW <-->|"WebSocket / TCP"| ROBOT

两条数据流的方向差异,是理解整套体系的关键。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
sequenceDiagram
autonumber
participant R as 机器人
participant G as 交互网关
participant B as Bridge
participant L as LinkskyGateway
participant A as AgentSDK,二开程序

Note over R,A: 被动交互(机器人 → 你)
R->>G: 音频 / 视频 / 文本
G->>B: 转发
B->>L: 转发
L->>A: on_request()
A->>L: response.on_*()
L->>B: 转发
B->>G: 转发
G->>R: 屏幕显示 + 扬声器播放

Note over R,A: 主动交互(你 → 机器人)
A->>L: register_task_flow() / start_request()
L->>B: 转发
B->>G: 转发
G->>R: 执行任务
R->>G: 执行结果
G->>B: 转发
B->>L: 转发
L->>A: on_*_ack()

注意agent_id 不是机器人硬件编号,是灵心平台上配置的智能体 ID(形如 AGENT_0000001)。机器人在端侧绑定某个智能体后上线,SDK 通过 on_robot_online(agent_id, ...) 收到通知。一个 SDK 实例可以同时服务多个 agent_id——这个设计直接影响状态管理方式,后续会展开讲解。


下一篇进入实操:端侧环境搭建,以及第一个自己写的 AIMDK 节点。

声明

本文首发智元AIMA平台,并在博客同步