2. 四足机器人基础
四足机器人是强化学习算法落地的重要物理载体。无论是仿真环境中的策略训练,还是真实机体的部署调试,理解其硬件构成都是前提。本章将系统拆解四足机器人的机械结构、关节驱动链路、传感器配置与执行器特性,帮助你在设计奖励函数、动作空间和状态空间时,能够将算法术语与物理实体一一对应。
2.1 四足机器人硬件结构:从机身到足端的层级拆解
四足机器人的机械结构通常采用对称式布局,每条腿拥有3至4个主动自由度。以最常见的12自由度构型为例,每条腿包含髋关节横滚(Hip Roll)、髋关节俯仰(Hip Pitch)和膝关节俯仰(Knee Pitch)。这种构型参考了哺乳动物的骨骼设计,能够在保持灵活性的同时降低控制复杂度。机身主体通常采用碳纤维板或铝合金框架,以减轻重量并保证结构刚度。
从硬件层级来看,四足机器人可以划分为五个层次:机身平台层(承载主控、电池、传感器)、腿部结构层(大腿、小腿连杆)、关节执行层(电机+减速器+编码器)、足端接触层(橡胶足垫或力传感器)以及外围防护层(外壳、散热结构)。在强化学习任务中,机身平台层的重心位置和腿部连杆长度直接影响动力学模型的准确性,进而影响仿真到现实的迁移效果。
| 层级 | 关键部件 | 对RL的影响 | 典型参数 |
|---|---|---|---|
| 机身平台层 | 碳纤维板、电池仓、主控支架 | 决定质心位置与转动惯量 | 整机质量 8-15 kg |
| 腿部结构层 | 大腿/小腿连杆、关节限位块 | 影响运动学正逆解精度 | 大腿长 200-250 mm |
| 关节执行层 | 无框电机、谐波减速器、双编码器 | 决定力矩带宽与位置精度 | 峰值扭矩 20-40 N·m |
| 足端接触层 | 半球形橡胶足、六维力传感器 | 提供接触状态真值 | 接触力采样率 ≥1 kHz |
| 外围防护层 | 防撞梁、散热风扇、线束管理 | 影响长期运行稳定性 | IP等级 ≥ IP20 |
2.2 关节驱动链路:电机、减速器与编码器的协同
关节驱动是四足机器人最核心的执行环节。当前主流方案采用无框力矩电机+谐波减速器的组合,部分低成本平台使用行星减速器或直驱方案。无框电机具有高扭矩密度和低齿槽转矩的特点,配合谐波减速器可以获得大减速比(通常50:1至160:1),从而在关节端输出足够扭矩。编码器通常采用双编码器配置:电机端增量式编码器用于换相和速度环,关节端值编码器用于位置环和运动学解算。
在强化学习训练中,关节驱动链路的动态特性往往被简化为理想的位置源或力矩源。但实际系统存在摩擦、间隙、柔性等非线性因素。因此,在仿真环境中需要建立包含摩擦力矩、电机时间常数、减速器背隙的驱动模型。例如,在MuJoCo或Isaac Gym中,可以通过设置 armature、damping 和 frictionloss 参数来近似真实关节特性。
核心原理:关节驱动链路的带宽决定了强化学习策略能够执行的最大动作频率。若策略输出频率为50 Hz,而关节驱动带宽仅为10 Hz,则高频动作指令会被严重衰减,导致实际运动与仿真预测不符。因此,在训练前应测量关节的阶跃响应和频率响应,确保驱动带宽至少为策略频率的3倍。
2.3 传感器系统:状态感知与外部环境感知
四足机器人的传感器系统分为本体感知和外部感知两大类。本体感知包括IMU(惯性测量单元)、关节编码器和足端力传感器,用于估计机身姿态、关节角度和接触力。外部感知包括深度相机、激光雷达和触觉传感器,用于地形识别和避障。在强化学习框架中,本体感知数据通常直接构成状态向量的一部分,而外部感知数据则用于构建环境表示或奖励信号。
IMU通常安装在机身质心附近,提供三轴加速度和三轴角速度。通过扩展卡尔曼滤波(EKF)或互补滤波,可以融合关节编码器数据,估计出机身的横滚角、俯仰角和偏航角。足端力传感器则直接测量地面反作用力,对于检测支撑相和摆动相的切换至关重要。在训练步态策略时,接触力信息可以作为奖励函数的一部分,例如鼓励平滑的力过渡以减少冲击。
实战经验:在仿真环境中,IMU数据通常直接由物理引擎提供,不存在噪声和漂移。但在真实机器人上,IMU的零偏不稳定性和振动噪声会显著影响状态估计质量。建议在训练时对IMU数据添加高斯噪声和随机偏置,以提高策略的鲁棒性。
2.4 执行器与底层控制接口:PD控制与力矩指令
强化学习策略的输出通常有两种形式:目标关节位置或目标关节力矩。无论哪种形式,最终都需要通过底层PD控制器转换为电机的电流指令。位置控制模式下,策略输出目标角度,PD控制器计算位置误差和速度误差,输出力矩指令;力矩控制模式下,策略直接输出关节力矩,PD控制器仅作为阻尼补偿。
底层控制接口的通信频率和延迟是强化学习部署的关键指标。常见的通信方案包括CAN总线(1 Mbps,典型周期1-2 ms)和EtherCAT(100 Mbps,典型周期0.5-1 ms)。在训练时,需要将控制频率与仿真步长对齐。例如,若仿真步长为0.02秒(50 Hz),则底层控制频率也应设置为50 Hz,避免频率不匹配导致的抖动。
# 底层PD控制接口示例(伪代码)
def compute_torque(target_pos, target_vel, current_pos, current_vel):
kp = 40.0 # 位置增益
kd = 2.0 # 速度增益
torque = kp * (target_pos - current_pos) + kd * (target_vel - current_vel)
return torque
2.5 案例拆解:从仿真到实机的硬件参数对齐
以宇树科技Go1或MIT Cheetah 3为参考平台,我们来看一个典型的硬件参数对齐案例。假设仿真环境中使用的关节最大扭矩为30 N·m,而实际电机的峰值扭矩为25 N·m,那么训练出的策略在真实机器人上执行时,可能会因为力矩饱和而无法完成预期动作。
具体操作流程如下:
- 测量真实关节极限:通过堵转实验测量每个关节的最大持续扭矩和峰值扭矩,记录对应的电流和温度。
- 更新仿真模型:在仿真环境中设置相同的力矩上限,并添加饱和函数模拟电流限制。
- 验证动态响应:对比仿真和实机的阶跃响应曲线,调整阻尼和惯量参数。
- 迁移测试:在仿真中训练策略后,直接部署到实机,观察关节力矩是否频繁达到饱和值。
在一次实际迁移中,我们发现仿真中策略输出的平均关节力矩为12 N·m,但实机运行时的平均力矩达到18 N·m,原因是仿真中忽略了减速器的效率损失(约80%)。通过在仿真中增加力矩效率系数,最终将实机平均力矩降至14 N·m,策略表现与仿真基本一致。
风险提示:硬件参数对齐不是一次性工作。随着电池电压下降、电机温度升高,关节的实际输出力矩会发生变化。建议在策略部署时加入自适应力矩缩放机制,或定期重新校准仿真模型。
2.6 常见误区与总结复盘
在四足机器人硬件与强化学习结合的过程中,初学者常犯以下错误:
- 忽略关节柔性:将关节视为刚体,导致仿真中高频振动被低估,实机出现共振。
- 传感器噪声建模不足:仿真中不添加噪声,策略对真实传感器噪声极其敏感。
- 控制频率不匹配:仿真步长与底层控制周期不一致,导致策略在实机上表现不稳定。
- 电源压降影响:大电流驱动时电池电压跌落,导致电机输出力矩不足,而仿真中未建模。
总结而言,四足机器人的硬件结构、关节驱动和传感器系统是强化学习策略从仿真走向实机的桥梁。只有深入理解每个硬件的物理特性和接口约束,才能设计出既高效又鲁棒的步态控制策略。建议在项目初期就建立硬件参数清单,并与仿真模型保持同步更新,这是减少迁移试错成本最有效的方法。