1. 课程导入与平台全景

机器人控制计算平台,可以理解为机器人“感知—决策—控制”闭环所依赖的计算底座:它把传感器输入、实时控制回路、视觉/AI 推理、运动规划、通信与安全监控等负载,组织在一套可预测、可扩展的硬件与软件栈之上。与通用服务器不同,机器人平台的第一约束往往不是峰值算力,而是确定性——控制周期必须按时到达、抖动必须可控、故障必须可诊断。因此,本课程讨论的不是“选一块性能最强的板子”,而是围绕 Intel 处理器与加速器,建立一套软硬件协同的设计方法。

Intel 在机器人领域的定位,可以从三条产品线来理解。其一是以 Core / Xeon 为代表的通用 CPU,承担实时控制、任务调度、数据分发与系统管理;其二是集成显卡与 Arc 独立显卡,承担视觉预处理、深度学习推理与并行计算;其三是 FPGA、以太网控制器(如 I225/I226 TSN 网卡)以及 OpenVINO、oneAPI 等软件工具链,承担确定性通信、低延迟推理与跨架构代码复用。三者并非互相替代,而是按“实时性—吞吐—能效”三个维度分工协作。

机器人控制计算平台全景:从传感器到执行器的软硬件协同 传感器输入 RGB / 深度相机 30–60 fps 激光雷达 10–20 Hz IMU / 编码器 1–5 kHz 力/力矩传感器 1 kHz 关节位置反馈 EtherCAT Intel 机器人控制计算平台 硬件层 Core / Xeon CPU 实时控制 · 调度 iGPU / Arc GPU 视觉 · AI 推理 FPGA / TSN 网卡 确定性通信 软件层 Linux + PREEMPT_RT 实时内核 OpenVINO / oneAPI 推理 · 跨架构 ROS 2 / DDS 通信中间件 应用层 感知融合 SLAM · 检测 运动规划 轨迹 · 避障 实时控制 PID · 力控 执行器输出 伺服电机 位置/速度/力矩 夹爪 / 末端 开合 · 力控 移动底盘 差速 · 阿克曼 指示灯 / 蜂鸣 状态提示 安全继电器 急停 · 使能 数据 指令 闭环反馈:状态监测 → 误差修正 → 重新规划 软硬件协同设计:实时性 · 确定性 · 可扩展性 · 可诊断性

上图给出了本课程要建立的整体心智模型:左侧是传感器输入,右侧是执行器输出,中间是 Intel 计算平台的三层结构——硬件层、软件层与应用层,底部是贯穿始终的闭环反馈。需要特别注意的是,图中的箭头方向定义了数据流与指令流:传感器数据自左向右进入平台,控制指令自平台向右输出到执行器,而反馈信号则从执行器侧沿底部回路返回传感器与规划模块。这一参照约定在后续所有章节中保持一致。

课程目标与学习路径

本课程的目标不是罗列 Intel 产品参数,而是让读者具备“从需求到平台选型、从平台到软件部署、从部署到性能验证”的完整工程能力。具体来说,完成课程后应能做到:根据控制周期与推理延迟要求,判断 CPU、GPU、FPGA 的分工边界;在 Linux 实时内核上配置 CPU 隔离与中断亲和性;用 OpenVINO 将训练好的模型部署到 iGPU 并测量端到端延迟;用 TSN 或 EtherCAT 构建确定性通信链路;最后通过抖动测量与日志分析定位实时性瓶颈。

学习路径按“认知—搭建—调优—验证”四段推进。前四章建立平台全景与软硬件协同思想;随后进入 CPU 实时性配置、内存与缓存优化、GPU 推理部署、FPGA 加速与通信确定性等专题;最后以移动机器人与机械臂两个综合案例收束,完成从需求分析到性能报告的闭环。每一章都会给出可复现的配置片段、参数示例与判断依据,而不是停留在概念层面。

软硬件协同设计思想

软硬件协同设计的核心,是让软件的可预测性需求反向约束硬件选型与配置,同时让硬件的特性被软件充分利用。举一个具体的教学示例:假设某机械臂关节控制周期为 1 ms,即 1000 Hz。若控制回路运行在 CPU 上,单次计算耗时约 200 μs,则剩余 800 μs 必须留给中断响应、通信与调度开销。此时若将视觉推理放在同一颗 CPU 核心上,推理耗时可能达到数毫秒,直接破坏控制周期。合理的做法是将推理卸载到 iGPU,CPU 核心通过 OpenVINO 异步接口提交推理请求,控制回路只读取上一次推理结果,从而把 1 ms 周期内的 CPU 占用压缩到可控范围。

示例参数(教学假设,非实测):

  • 控制周期:1 ms(1000 Hz),允许抖动 < 50 μs
  • CPU 控制回路计算:约 200 μs
  • iGPU 推理单帧:约 8 ms(异步,不阻塞控制回路)
  • CPU 隔离:isolcpus=2,3,控制线程绑定 core 2,通信中断绑定 core 3
  • 预期结果:控制周期抖动稳定在 20–40 μs,推理帧率约 120 fps

这个例子说明了一个关键判断依据:实时性由最坏情况决定,而不是平均值。测量时不能只看平均周期,而要观察最大抖动、超时次数与分布尾部。后续章节会给出具体的测量命令与日志判读方法。

学习建议:每学完一个专题,回到本节的全景图,标出该专题对应的是硬件层、软件层还是应用层,以及它影响的是数据流、指令流还是反馈回路。这样能把零散知识挂到统一框架上,避免“学了很多工具却不知道用在哪”。

最后需要明确本课程的边界:我们讨论的是机器人控制计算平台的设计与部署,不深入电机驱动电路、机械结构设计或深度学习算法训练。凡是涉及具体数值的地方,都会标注为示例或假设,读者应结合自己的硬件实测进行替换。平台全景已经建立,接下来进入 CPU 实时性这一最基础也最关键的专题。