2. 机器人系统状态空间建模

数字孪生要“同步”,前提是先把机器人系统里所有需要同步的量,用一套统一的语言描述清楚。这套语言就是状态空间。状态空间建模不是把机器人所有数据堆在一起,而是回答三个问题:哪些量必须进入状态向量、它们各自在什么坐标系下定义、它们之间通过什么关系耦合。本节围绕关节空间、任务空间、传感器状态、执行器状态与系统健康状态五个子空间,说明如何把它们组织成一个可计算、可同步、可判定的统一状态描述。

一、为什么需要统一状态空间

机器人系统天然是“多域”的:控制器关心关节角,规划器关心末端位姿,感知模块输出点云与位姿估计,驱动器反馈电流与温度,运维系统关心健康度。如果每个模块各自维护一套数据格式,数字孪生就会退化成“多个看板拼在一起”,无法做一致性校验,也无法在孪生体里复现真实系统的因果链。统一状态空间的价值在于:用同一个时间戳、同一套坐标约定、同一个状态向量,把物理侧与孪生侧对齐,使“当前机器人处于什么状态”成为一个可比较、可推理的对象。

二、五个子空间的职责与典型变量

关节空间描述机器人本体的运动学内部量,最核心的是关节位置 q、关节速度 q̇,以及(若考虑动力学)关节力矩 τ。对 n 自由度机器人,q ∈ Rⁿ。关节空间是控制器直接闭环的层面,也是数字孪生做运动学复现最可靠的输入。

任务空间描述机器人在笛卡尔世界中的位姿与运动,通常用末端位姿 x = [p, φ] 表示,p 为位置,φ 为姿态(欧拉角或四元数)。任务空间与关节空间通过正运动学 x = f(q) 和雅可比 J(q) 联系:ẋ = J(q)q̇。需要注意,任务空间维度通常低于关节空间维度,因此存在冗余与奇异问题。

传感器状态是孪生体感知物理世界的入口,包括关节编码器、力矩传感器、IMU、视觉/深度相机、力/触觉传感器等。它既包含原始测量值,也包含经过滤波、标定、时间对齐后的估计值,例如位姿估计 x̂ 与协方差 P。

执行器状态描述驱动与传动链的实际工作点,包括电机电流 i、母线电压 U、驱动器温度 T、使能/抱闸状态、故障码等。执行器状态往往比关节状态更早暴露异常,是健康评估的重要证据来源。

系统健康状态是对上述子空间的综合抽象,通常用健康指标 HI、剩余寿命 RUL、故障模式标签与置信度表示。它不是独立测量量,而是由关节跟踪误差、电流残差、温度趋势、振动频谱等特征融合得到。

机器人统一状态空间:五子空间耦合关系 关节空间 q ∈ Rⁿ 关节位置 q̇ 关节速度 τ 关节力矩 控制器直接闭环层 任务空间 x = [p, φ] 末端位姿 ẋ 末端速度 F 末端力/力矩 规划与交互层 正运动学 x = f(q) 逆运动学 q = f⁻¹(x) 雅可比 J(q) ẋ = J(q)·q̇ 传感器状态 编码器 / 力矩 / IMU 视觉 / 深度 / 触觉 估计值 x̂ 与协方差 P 感知与估计层 执行器状态 电流 i / 电压 U 温度 T / 使能 / 抱闸 故障码 / 驱动器状态 驱动与传动层 测量反馈 力矩输出 系统健康状态 HI 健康指标 · RUL 剩余寿命 故障模式标签 · 置信度 特征提取 特征提取 跟踪误差/残差

三、统一状态向量的组织方式

把五个子空间拼成一个统一状态向量 s,可以写成:

s = [ q, q̇, τ, x, ẋ, z_sensor, u_act, h ]
其中:
  q, q̇, τ        —— 关节空间(n 维)
  x, ẋ           —— 任务空间(6 维位姿 + 6 维速度)
  z_sensor       —— 传感器测量与估计(含时间戳、协方差)
  u_act          —— 执行器工作点(电流、温度、状态字)
  h              —— 健康状态(HI、RUL、故障标签)

这个向量不是简单拼接,而是带有层级与约束的:关节空间与任务空间由运动学约束绑定;传感器状态是对关节/任务状态的观测;执行器状态是关节运动的驱动来源;健康状态是前四者的函数。数字孪生同步时,必须保证同一时刻的 s 在物理侧与孪生侧可比较,因此时间戳、坐标系、单位、符号约定必须显式声明。

四、坐标与符号约定

统一描述最容易出错的地方是参照系。建议在建模之初固定以下约定,并在全文与图示中保持一致:

  • 世界坐标系 W:固定于机器人基座或工作空间原点,z 轴竖直向上。
  • 基座坐标系 B:与机器人底座固连,通常与 W 重合或仅差一个安装变换。
  • 末端坐标系 E:与末端法兰或工具中心点 TCP 固连。
  • 关节角正方向:按右手定则绕关节轴线,从基座向末端看逆时针为正。
  • 力矩正方向:与关节角正方向一致,驱动力矩为正,负载反力矩为负。

若某模块使用不同约定(例如相机坐标系 z 轴向前),必须在状态向量中附带坐标系标识,或在进入统一状态空间前完成变换,不能混用。

五、从状态到同步:一个可执行的建模示例

假设一台 6 自由度协作机械臂,控制周期 1 ms,孪生体同步周期 10 ms。建模时可按以下方式组织:

  1. 关节空间:采集 q(6 维,单位 rad)、q̇(rad/s)、τ(N·m),由编码器与电流环估算得到。
  2. 任务空间:用正运动学计算 TCP 位姿 x,并记录雅可比条件数 κ(J),用于判断是否接近奇异。
  3. 传感器状态:记录关节编码器原始值、力矩传感器读数、IMU 姿态,并给出估计协方差。
  4. 执行器状态:记录各关节电流、驱动器温度、使能状态与故障码。
  5. 健康状态:以关节跟踪误差 e = q_cmd − q_meas、电流残差、温度变化率为特征,计算 HI ∈ [0,1] 与故障标签。

同步时,孪生体在每个 10 ms 周期接收物理侧的状态快照,先做时间对齐与坐标变换,再更新自身状态,最后比较物理侧与孪生侧的 x、τ、HI 等关键量。若偏差超过阈值(例如 TCP 位置偏差 > 2 mm,或 HI 下降速率异常),则触发一致性告警。

统一状态空间的关键不是“变量多”,而是“关系清”。只要关节空间、任务空间、传感器状态、执行器状态与健康状态之间的映射关系、坐标约定和时间基准明确,数字孪生就能从“数据展示”升级为“状态推理”。

六、常见建模误区

实践中容易出现的偏差包括:只记录关节角而忽略执行器温度,导致健康评估缺少早期证据;任务空间与关节空间混用不同单位或坐标系,使同步偏差无法定位;传感器状态未附带时间戳与协方差,导致融合结果不可信;健康状态被当作独立测量量,而不是由其他子空间特征计算得到。避免这些误区的办法,是在建模文档中为每个状态量写明来源、坐标系、单位、更新频率、精度与耦合关系,使统一状态空间真正成为可执行、可验证的工程对象。