Zhicheng

Robotics, Learning, and Control

0%

双足机器人原理学习

双足机器人的控制方法汇总

层级 控制范式 代表方法
1⃣ 底层控制 位置/速度/力控制 PID控制、阻抗控制、力控制
2⃣ 运动学级 逆运动学、任务空间控制 IK伪逆、OSC、Stack-of-Tasks
3⃣ 动力学级 基于模型的控制 WBC、Feedback Linearization、优化控制
4⃣ 步态规划与预测控制 步态生成、预测控制 ZMP轨迹规划、MPC、Preview Control
5⃣ 混合系统与学习 稳定性优化与学习 HZD、强化学习、RL-MPC、模仿学习
方法 控制层级 优点 局限 适合场景
PID/阻抗 底层 简单鲁棒 控制力弱 力控制、人机交互
SoT / OSC 运动学 多任务清晰 不考虑动态 多目标位置控制
WBC 动力学 多任务 + 力控制 实时性要求高 全身控制、双足
MPC / Preview 预测 稳定性强 需模型、优化开销大 CoM轨迹、ZMP稳定
HZD 杂交系统 周期稳定性好 难以适应非周期 平地行走、理论研究
强化学习 数据驱动 灵活自适应 样本量大、转移难 非结构环境

杂交系统是指包含连续动态系统(例如由微分方程描述的运动)和离散事件系统(例如接触切换、碰撞、跳跃)的组合系统。

双足机器人中的杂交结构

  • 系统由两种部分构成:连续阶段(Continuous Dynamics:机器人在空中摆腿、质心运动

例如:单腿支撑期、双腿支撑期的动力学模型

离散事件(Discrete Transitions):脚与地面接触或离地引起的状态突变

一个杂交系统一般写作如下六元组:$ H = ( Q , X , f , D , R , G )$

控制流程总结图

目标行走任务(如向前走)

[高层任务] 决定步长/频率

[步态生成] 生成ZMP轨迹、抬脚时序

[运动规划] 用ZMP规划CoM轨迹(如 Preview Control)

[任务空间控制] 生成CoM和足端运动指令

[关节控制] 逆解得到关节目标值(IK/ID)

[底层控制] PID or 力矩控制跟踪

[电机执行,机器人行走]

双足机器人中步行常用轨迹类型

轨迹类型 控制目标 怎么求得的
ZMP轨迹(零力矩点) 动态稳定性 ZMP保持在支撑面内部
质心轨迹(CoM) 平衡、重心移动 CoM 按LIPM/MPC等控制
足端轨迹(swing foot) 摆动腿落点精度 Bézier曲线、多项式轨迹
关节轨迹(joint angles) 驱动指令输入 由逆运动学或优化求得
任务空间轨迹(如髋/躯干) 姿态保持 水平/垂直速度稳定

双足机器人中OMPL的用途

  • 环境中的路径规划(从A到B点)
  • 多步脚印序列规划: OMPL 可用来在配置空间中搜索一条“步态合法序列”。

ESO在双足机器人中的应用

双足机器人是高度非线性、耦合、强扰动的系统:

问题 对应解决目标
地面不确定性(软硬、摩擦) 外部扰动估计
建模误差(动力学不完整) 结构性扰动估计
控制信号延迟、误差 观测状态误差补偿
状态难以精确传感(如关节加速度) 使用 ESO 估计不可测状态

双足中的欠驱动问题

欠驱动意味着控制输入的自由度少于系统的自由度,导致系统无法直接驱动所有运动变量。控制这类系统时,通常需要利用系统本身的动力学特性和非线性控制方法。

方法类别 具体方法
反馈线性化控制 利用系统的非线性动力学方程,通过反馈设计奖系统部分状态线性化,便于设计线性控制器
滑膜控制 设计滑膜面
非线性控制(如反馈线性化结合非线性轨迹规划) - 设计非线性控制器匹配系统非线性动力学,同时结合轨迹规划确保系统按预期运动
阶段切换控制(Hybrid Control) - 欠驱动系统多表现为混合动力学(如步态中不同相位),通过切换不同控制策略完成不同阶段的控制
反步法(Backstepping) - 递归设计控制律,将复杂系统分解为层级子系统,逐步设计控制器,适用于非线性欠驱动系统
优化控制与MPC(Model Predictive Control) - 利用模型预测未来状态,求解带约束的最优控制输入,特别适合处理欠驱动系统的运动规划和实时控制
学习控制与强化学习 - 通过数据驱动的方法,学习欠驱动系统的控制策略,适合模型不准确或环境复杂的情况

双足机器人中走的更快的问题

轨迹规划改进

  • 动态步态生成
  • 可变的步态调整

控制算法应该怎么改进

  • 前馈和反馈进行结合:前馈部分用于快速响应人体和环境变化,反馈部分保证稳定性和误差校正。
  • MPC:利用预测未来状态,提前计算控制输入,增强快速运动的稳定性和灵活性。
  • 自适应控制:实时调整控制参数,应对人体动力学变化和不同的速度变化。

解决走路晃动幅度很大的问题

加强平衡控制:对质心和零力矩点进行控制

控制算法优化:

  • 增强反馈控制增益
  • 阻抗控制或者自适应阻抗控制
  • 模型预测控制