Open Source Robotics

精选高质量开源机器人项目、工具和软件,推动机器人社区发展。

Cascaded Control

  • 又称: cascade control, nested-loop control, inner-outer loop control
  • 类别: Control › Feedback control
  • 标签: feedback-control, pid, flight-control, motor-control, control-architecture

一种具有嵌套反馈回路的控制结构,外环为更快的内环计算设定值,例如无人机上依次为位置、姿态、机体角速率。

定义

串级控制(Cascaded control)把一个控制问题拆分为嵌套的反馈回路。外环调节用户关心的慢变量,例如位置,其输出不是执行器指令,而是给内环的设定值,内环调节一个变化更快的中间量,例如速度、姿态或电流。每个回路只需处理一部分动力学,这使控制器更易于设计和整定,并且内环能在阵风或负载力矩等扰动影响到外环变量之前就将其抑制。

当内环比外环快得多时,这种结构效果最好。这时外环可以把内环视为能立即跟踪其设定值。一条常用的经验法则是让每个内环的带宽比包围它的回路高出数倍,通常约为五到十倍。回路从内向外整定:先整定最内环,然后在内环闭合的情况下依次整定每个外环。限制值必须在各层之间传递,例如最大倾角或最大电流,并且外环需要抗积分饱和,以免在内环饱和时仍持续累积误差积分。

在机器人学中,有两个例子几乎无处不在。电机驱动器采用电流(力矩)环套在速度环内、速度环又套在位置环内的结构。多旋翼飞控使用一个输出期望加速度的位置控制器,期望加速度被转换为总推力和期望姿态;随后姿态控制器输出机体角速率指令;角速率控制器再产生力矩,由混控器转换为各个电机的指令。外环可以是 PD、PID 或基于模型的控制器,位置层有时会被模型预测控制取代,同时保留内部的姿态环和角速率环。串级控制的局限在于它忽略了各层之间的耦合:需要接近内环带宽性能的激进机动,或强耦合的动力学,由同时考虑整个系统的控制器来处理会更好。

为何重要

大多数商用无人机、电机驱动器和许多机器人关节都由串级回路控制,因此工程师在整定、调试或扩展真实硬件时都会遇到这种结构。理解带宽分离以及回路之间的接口,可以解释许多常见问题,从位置跟踪迟缓到由内环整定不当引起的振荡。

主要应用

  • 带有位置环、姿态环和角速率环的多旋翼飞控
  • 带有电流环、速度环和位置环的伺服电机驱动器
  • 机械臂和腿足机器人的关节控制
  • 过程控制,例如温度和流量调节
  • 把模型预测外环与快速的内部跟踪环结合起来

实际应用

在一架竞速无人机上,团队的规划器发送位置、速度和加速度参考值。一个以较低频率运行的外层 PD 位置环计算期望加速度,加上重力和前馈加速度,并把结果转换为总推力和期望推力方向。一个内层比例姿态环把姿态误差转换为机体角速率指令,飞控的角速率环利用陀螺仪反馈,以高得多的频率跟踪这些指令。当无人机在悬停中振荡时,团队先单独重新整定角速率环,然后是姿态环,最后才是位置增益,而不是调整外环去弥补整定不当的内环。

常见误解

  • 任何控制器都可以堆叠成串级 — 这种结构依赖于内环明显更快;没有这种分离,回路之间会相互作用,并可能变得不稳定
  • 串级回路可以按任意顺序整定 — 应先整定内环,因为外环的行为取决于内环如何响应
  • 与模型预测控制相比,串级控制已经过时 — 许多基于 MPC 的系统仍然运行着用于姿态、角速率或电流的串级内环,MPC 只取代了外层

谁需要了解

  • 无人机和飞控工程师
  • 电机控制与驱动工程师
  • 整定关节控制器和移动底盘控制器的机器人工程师
  • 学习实用反馈控制的学生

相关技术

  • PID 控制(PID Control)
  • PX4 Autopilot
  • Betaflight
  • 磁场定向控制(Field-Oriented Control)
  • 抗积分饱和(Anti-Windup)

相关术语

  • PID Controller
  • UAV
  • Differential Flatness
  • Model Predictive Control
  • Thrust-to-Weight Ratio
  • Fault-Tolerant Control

相关项目

  • MAVROS: ROS gateway for MAVLink-compatible autopilots (PX4, ArduPilot)

视频

  • Introduction to Cascade Control: LearnChemE

本网站需要 JavaScript 才能正常运行。请启用 JavaScript 以浏览我们的开源机器人项目。