上一篇博客是腿足机器人的骨架和关节的机械和电气组件,关节不仅需要通过机械设计实现复杂的运动能力,还必须通过电子组件和控制系统来精确控制这些运动。
和人类类似,本篇博客介绍腿足机器人运动系统的设计,机器人关节的控制系统是其运动的大脑,负责解读传感器反馈并向执行器发送指令,以精确调节位置、速度和扭矩。这一系统由传感器、控制器和执行器共同工作,确保运动控制的准确性和效率。
腿足机器人的所有运动,最终都会反应在对关节的控制上,大体上关节的运动一般采用运动学和强化学习两类方法,如运动学逆解算法用于规划关节角度(如肘式/膝式腿的几何求解),强化学习(RL)优化步态生成,如NVIDIA Isaac Lab端侧部署方案。
机器人上的各个传感器连续监测关节的位置、速度及其他相关参数,并向控制器提供反馈。控制器将这一反馈与期望的设定值进行比较,生成纠正信号以调整关节的运动。这种反馈回路允许实时调整,确保关节即使在外部干扰或负载变化的情况下也能准确地遵循预定轨迹。
闭环控制系统提供高精度和稳定性,非常适合需要精确定位和运动控制的应用,如机器人手术和制造过程。
早期机器人运动控制以波士顿波力Spot机器人为典型代表,其采用的PD+前馈控制技术,可以见第三篇博客。
而当前较新主流腿足机器人运动控制以PD+MPC/强化学习为主,流程大致可以分为高层运动规划、中层逆运动学与逆动力学以及底层执行器控制三层。本篇博客先概览简要介绍各个部分,以建立top-down机器人运动控制的整体概念。
一个完整的动作流程大致如下:
传感器数据(IMU、关节编码器、力传感器)→ MPC规划/RL规划 → 逆运动学 → 关节目标角度 → PD控制器 → 电机驱动信号
高层运动规划
在接收到运动指令(行走、奔跑)之后,高层算法(模型预测控制(MPC)或者强化学习(RL)算法)负责全局规划,底层PD确保实时跟踪,两者协同实现动态运动。
MPC
在奔跑/行走的动作规划和控制中,高层运动规划模块主要完成步态生成和轨迹生成两部分。其运行频率在50-100Hz(每10-20ms规划一次)。
对于步态生成则可基于机器人动力学模型,滚动规划未来几步的质心(CoM)轨迹和足端接触力,确保动态平衡,在行走的时候,计算支撑多边形内的零力矩点(ZMP)位置,防止跌倒。躯干姿态和加速度可以使用IMU测量,足端接触力科使用六轴力传感器测量,关节的角度和速度使用关节编码器测量。
对于轨迹生成包括足端轨迹和质心轨迹,足端轨迹指的是规划摆动退的抛物线轨迹(奔跑时)或直线轨迹(行走时),质心轨迹是指通过简化模型(如倒立摆模型)生成质心高度和水平位置的变化曲线。
以ANYmal机器人为例
传感器数据--->MPC估计--->生成$\theta_{desired}$--->PD控制器--->电机驱动
- MPC层:每50ms计算一次未来0.5秒的足端轨迹和接触力
- PD层:以1kHz频率跟踪关节角度,公式:
τ = K p ( θ d e s i r e d − θ ) + K d ( θ ˙ d e s i r e d − θ ) \tau =K_p(\theta_{desired}-\theta) + K_d(\dot \theta_{desired}-\theta) τ=Kp(θdesired−θ)+Kd(θ˙desired−θ)
模型预测控制存在如下挑战:
挑战 | 解决方案 |
---|---|
模型不准确 | 自适应控制(如在线参数估计) + 鲁棒PD参数 |
执行器延迟 | 提高控制频率 + 预测滤波(如卡尔曼滤波) |
地面接触突变 | 阻抗控制(调节PD的 K p K_p Kp为虚拟刚度, |