肌肉骨骼机器人基础
肌肉骨骼机器人(musculoskeletal robot)用肌肉驱动关节,而不是用电机直接 输出力矩。这一差别不只是执行器换了个名字,它改变了控制量的含义、出力的大小, 以及整个控制问题的结构。
本文介绍基本概念与常用仿真工具,本版块的模块在此基础上展开。
1 与电机驱动机器人的区别
| 电机驱动机器人 | 肌肉骨骼机器人 | |
|---|---|---|
| 控制量 | 力矩 / 电流,可正可负 | 激活度 a ∈ [0, 1],只能"收缩" |
| 反向运动 | 电机反转即可 | 必须由对侧肌肉拉动 |
| 出力大小 | 近似恒定,与位形无关 | 随长度与收缩速度变化 |
| 响应速度 | 快,近似瞬时 | 一阶滞后,且激活快于放松 |
| 刚度 | 由控制器决定 | 共激活可直接调节关节刚度 |
| 能量 | 通电即消耗 | 可被动储能(肌腱弹性) |
因此肌肉骨骼系统的控制问题更难也更有研究价值:控制量被限制在 [0, 1], 反向力只能靠拮抗肌,出力还随状态变化。
2 核心概念
2.1 肌肉与肌腱
一块骨骼肌由收缩成分(肌纤维)和弹性成分(肌腱)串联组成。肌纤维主动 收缩产生力,肌腱像弹簧一样储能并缓冲冲击。仿真中常把肌腱简化为串联弹性单元 (series elasticity),或先忽略它、只建收缩成分。
本版块用 肌肉-肌腱串联弹性实验 把这一步补上: 同样的激活度下,肌腱会被拉长、肌纤维会变短,传到关节上的力会小一点, 但肌腱里存下了弹性势能。
2.2 激活度
神经系统不直接控制肌肉出力,而是发出神经指令 u,使肌肉产生激活度
a ∈ [0, 1]。激活度不能瞬时跳变,用一阶滞后描述:
da/dt = (u - a) / τ, τ = τ_act (u > a,正在激活)
τ = τ_deact (u ≤ a,正在放松)
生理上激活快于放松,因此 τ_act < τ_deact。
2.3 力-长度-速度关系
肌肉能产生多大力,取决于它当前有多长、收缩得多快:
- 力-长度:肌节在最优长度
l_opt时主动力最大,过短或过长都下降; 被拉长超过最优长度时,结缔组织还会产生被动力。 - 力-速度:缩短(向心收缩)时力下降,缩短到最大速度时力为 0; 拉长(离心收缩)时力反而超过等长收缩,上限约 1.4 倍。
离心收缩比等长收缩更有力,这是肌肉区别于弹簧、阻尼器的重要特性。
2.4 共激活
一对拮抗肌(屈肌 / 伸肌)可以同时保持一定激活度。这会:
- 提高关节刚度,增强抗扰与稳定性
- 增加能耗
- 降低定位精度、减慢响应(两侧相互对抗)
刚度和精度之间的这种权衡,是肌肉骨骼系统里必须面对的问题。
3 Hill 肌肉模型
最常用的肌肉模型由 Hill(1938)提出,把总肌肉力写为
F = F_max · [ a · f_l(l_n) · f_v(v_n) + f_p(l_n) ]
其中归一化长度 l_n = l / l_opt,归一化缩短速度 v_n = v / v_max:
| 符号 | 含义 | 典型形式 |
|---|---|---|
f_l |
主动力-长度 | 高斯型,l_n = 1 处为 1 |
f_p |
被动力-长度 | 指数型,l_n ≤ 1 时为 0 |
f_v |
力-速度 | Hill 方程,离心段超过 1 |
本版块有完整的实现、验证与实测数据:
4 仿真工具
| 工具 | 说明 |
|---|---|
| MuJoCo | 通用物理引擎,内置肌肉执行器(dyntype="muscle"),本仓库水域载具模块也用它 |
| MyoSuite | 基于 MuJoCo 的肌肉骨骼环境与任务集合,接入 OpenAI Gym API |
| MyoConverter | 把 OpenSim 的骨骼肌模型转成 MuJoCo 格式 |
| OpenSim | 生物力学领域的标准建模与仿真平台 |
| LocoMuJoCo | 面向运动的模仿学习基准,含两足与肌肉骨骼人体模型 |
想快速上手,建议顺序:先用本文档对应模块把单关节的肌肉模型搞明白, 再接 MuJoCo 或 MyoSuite 做整机仿真。
5 本版块的内容
| 文档 | 内容 |
|---|---|
| 本文 | 基本概念与工具 |
| 肌肉-肌腱串联弹性实验 | 单关节 + 拮抗肌,肌腱的传力损失、储能与松手释放,32 个单元测试 |
| 肌肉驱动的关节控制与 Hill 肌肉模型 | 单自由度关节 + 拮抗肌对,Hill 模型实现、134 个单元测试与实测数据 |
| MuJoCo 双关节肌肉骨骼手臂到达控制 | 肩肘两自由度、六条肌肉、双关节肌与笛卡尔到达 |
| MuJoCo 肌肉骨骼手臂本体感觉与串联弹性肌腱 | 肌梭、高尔基腱器官、噪声/延迟与共收缩刚度实验 |
| MuJoCo 肌肉骨骼人键盘遥操作 | 22 条 Hill 肌肉驱动 13 DoF 全身模型,行走/踢腿/蹲起 |
| MuJoCo 肌肉骨骼灵巧手 | 11 条肌肉驱动灵巧手,键盘遥操作与神经网络激活控制 |
参考
- 肌肉骨骼人的示例
- A. V. Hill, The heat of shortening and the dynamic constants of muscle, 1938
- F. E. Zajac, Muscle and tendon: properties, models, scaling, and application to biomechanics and motor control, 1989