一、双环PID控制概述

1.1 单环PID控制的局限

单环PID控制作为经典控制策略,在简单系统中表现良好,但其在复杂动态系统中存在以下固有缺陷:

  • 响应速度与稳态精度的矛盾
    单环PID通过单一控制器平衡比例(P)、积分(I)、微分(D)参数。增大比例增益可加快响应,但易导致超调;增加积分项虽能消除稳态误差,但会降低系统响应速度。例如在电机调速系统中,单环PID难以同时满足快速启停和精准定位的需求。

  • 抗干扰能力不足
    单环控制对外部扰动(如负载突变、摩擦变化)的抑制能力有限。当扰动直接作用于被控对象时,PID控制器需通过误差反馈间接调整,可能导致动态过程振荡或恢复缓慢。

  • 非线性系统适应性差
    单环PID基于线性模型设计,对非线性特性(如死区、饱和)敏感。例如在机器人关节控制中,低速时的静摩擦会导致单环控制出现“爬行”现象。

  • 高频噪声放大
    微分环节对高频噪声敏感,单环PID可能将传感器噪声放大,影响控制稳定性。

1.2 双环PID控制的定义与特性

双环PID控制通过串级控制结构(Cascade Control)将两个PID控制器嵌套,形成外环(主环)和内环(副环)的协同控制,其核心思想是:

  • 外环:负责跟踪系统的最终目标(如位置、速度),输出作为内环的设定值。
  • 内环:快速响应外环指令,直接控制执行器(如电机),抑制高频扰动。

典型结构示例(以位置-速度双环为例):

目标位置 → 位置环PID → 目标速度 → 速度环PID → 电机驱动 → 实际位置/速度

关键特性

  1. 分级控制,动态解耦

    • 外环处理低频、大时间常数的动态(如位置跟踪),内环处理高频、小时间常数的动态(如速度调节)。
    • 例如无人机姿态控制中,角度环(外环)输出目标角速度,角速度环(内环)直接控制舵机,实现姿态快速稳定。
  2. 增强系统鲁棒性

    • 内环作为“随动系统”,将被控对象的不确定性(如参数变化、扰动)隔离在外环之外。
    • 案例:在机械臂关节控制中,速度环(内环)通过实时补偿摩擦和惯性变化,使位置环(外环)只需关注轨迹跟踪。
  3. 提升响应速度与控制精度

    • 内环带宽通常设计为外环的3-5倍,可快速响应指令变化。
  4. 抗饱和与非线性补偿

    • 双环结构允许对不同环节设置饱和限幅(如内环限制最大加速度,外环限制最大速度),避免单一控制器的积分饱和问题。

对比案例:单环 vs 双环在电机控制中的表现

指标 单环PID控制 双环PID控制
阶跃响应 超调大(如20%),调节时间长(>500ms) 超调小(<5%),调节时间短(<200ms)
负载扰动抑制 速度波动大(±15%) 速度波动小(±3%)
参数敏感性 增益变化10%即导致振荡 增益变化30%仍稳定
指令跟踪误差 稳态误差>0.5% 稳态误差<0.1%

二、双环 PID 控制的结构与原理

2.1 双环结构的构成

双环 PID 控制结构是在单环 PID 基础上发展而来的一种更高级的控制策略,它主要由外环和内环两个 PID 控制器串联组成。外环的主要作用是对系统的最终控制目标进行跟踪,比如位置、角度等;内环则负责快速响应外环输出的指令,对一些中间变量进行精确控制,像速度、加速度等。外环的输出会作为内环的输入设定值,通过这种分级控制的方式,能够有效提高系统的控制性能。

常见的双环结构组合有位置 - 速度环、角度 - 角速度环、速度 - 加速度环等。以位置 - 速度环为例,在工业机器人的关节控制中,位置环作为外环,它接收来自上位机的目标位置指令,将目标位置与实际位置进行比较后,输出一个期望的速度值给速度环;速度环作为内环,接收位置环输出的期望速度,再将其与实际速度进行对比,计算出控制量来驱动电机,从而实现关节位置的精确控制。

从系统架构的角度来看,外环和内环的设计需要根据具体的应用场景和被控对象的特性来确定。外环的控制周期相对较长,因为它主要关注系统的整体性能和长期稳定性;内环的控制周期则较短,以保证能够快速响应外环的指令,及时调整系统的动态特性。

2.2 工作流程与控制逻辑

双环 PID 控制的工作流程遵循一定的逻辑顺序,以确保系统能够稳定、准确地跟踪目标值。具体步骤如下:

  1. 设定目标值
    这是控制过程的起始点,根据系统的任务需求,人为地设定一个期望的最终控制目标值。例如在无人机的飞行控制中,会设定期望的飞行高度、姿态角度等。

  2. 获取反馈信号
    通过各种传感器实时测量系统的实际输出值。对于位置 - 速度环系统,位置传感器可以测量出当前的实际位置,速度传感器可以测量出当前的实际速度。这些反馈信号将作为后续误差计算的依据。

  3. 计算误差
    误差是目标值与实际反馈值之间的差值。在外环中,计算目标值与外环反馈值的误差;在内环中,计算外环输出的设定值与内环反馈值的误差。例如在位置 - 速度环中,位置环计算目标位置与实际位置的误差,速度环计算位置环输出的期望速度与实际速度的误差。误差的大小反映了系统当前状态与期望状态之间的偏离程度。

  4. 进行 PID 调节
    根据计算得到的误差,外环和内环的 PID 控制器分别进行调节。PID 控制器由比例(P)、积分(I)、微分(D)三个环节组成,通过不同的组合方式对误差进行处理,以计算出合适的控制量。比例环节用于快速响应误差,积分环节用于消除系统的稳态误差,微分环节用于预测误差的变化趋势,提前进行调整。外环 PID 控制器根据外环误差计算出一个中间控制量,作为内环的设定值;内环 PID 控制器根据内环误差计算出最终的控制量。

  5. 输出控制量
    将内环 PID 控制器计算得到的最终控制量输出到执行机构,如电机驱动器等,驱动执行机构动作,从而改变系统的状态。执行机构的动作会使系统的实际输出值发生变化,再次通过传感器获取反馈信号,形成一个闭环控制回路,不断重复上述步骤,直到系统的实际输出值接近或达到目标值。

2.3 双环 PID 的数学模型

以位置 - 速度环为例,下面详细介绍双环 PID 的数学模型。

  1. 外环(位置环)的数学模型
    设目标位置为 rpr_prp,实际位置为 ypy_pyp,则位置误差 ep=rp−ype_p=r_p - y_pep=rpyp。外环 PID 控制器的输出 uposu_{pos}upos 可以表示为:
    upos=Kppep+Kip∫epdt+Kdpdepdtu_{pos}=K_{p_p}e_p + K_{i_p}\int e_pdt+K_{d_p}\frac{de_p}{dt}upos=Kppep+Kipepdt+Kdpdtdep
    其中,KppK_{p_p}Kpp 是位置环的比例系数,它决定了系统对位置误差的响应速度;KipK_{i_p}Kip 是位置环的积分系数,用于消除系统的稳态位置误差;KdpK_{d_p}Kdp 是位置环的微分系数,能够预测位置误差的变化趋势,提前进行调整,改善系统的动态性能。

  2. 内环(速度环)的数学模型
    外环输出的 uposu_{pos}upos 作为内环速度环的目标速度 rvr_vrv,设实际速度为 yvy_vyv,则速度误差 ev=rv−yve_v=r_v - y_vev=rvyv。内环 PID 控制器的输出 uvelu_{vel}uvel 可以表示为:
    uvel=Kpvev+Kiv∫evdt+Kdvdevdtu_{vel}=K_{p_v}e_v + K_{i_v}\int e_vdt+K_{d_v}\frac{de_v}{dt}uvel=Kpvev+Kivevdt+Kdvdtdev
    其中,KpvK_{p_v}Kpv 是速度环的比例系数,影响系统对速度误差的响应速度;KivK_{i_v}Kiv 是速度环的积分系数,用于消除系统的稳态速度误差;KdvK_{d_v}Kdv 是速度环的微分系数,有助于抑制速度的波动,提高系统的稳定性。

三、速度 - 加速度双环控制

下面以速度 - 加速度环为例,详细介绍其原理

基本概念

速度 - 加速度环是一种双闭环控制策略,属于串级控制的一种形式。外环是速度环,主要负责跟踪期望的速度;内环是加速度环,其作用是快速响应速度环的输出并精确控制加速度,从而提高系统的动态性能和抗干扰能力。这种控制结构常用于对运动控制要求较高的系统,如工业机器人的关节控制、高性能电机驱动系统等。

结构组成
  • 速度环(外环):它接收系统的期望速度指令 vrefv_{ref}vref,并通过传感器测量得到实际速度 vactualv_{actual}vactual。速度环的误差信号 eve_vev 为期望速度与实际速度之差,即 ev=vref−vactuale_v = v_{ref}-v_{actual}ev=vrefvactual。速度环的PID控制器根据这个误差信号计算出期望的加速度 arefa_{ref}aref 作为加速度环的输入。
  • 加速度环(内环):接收速度环输出的期望加速度 arefa_{ref}aref,同时通过加速度传感器测量得到实际加速度 aactuala_{actual}aactual。加速度环的误差信号 eae_aea 为期望加速度与实际加速度之差,即 ea=aref−aactuale_a=a_{ref}-a_{actual}ea=arefaactual。加速度环的PID控制器根据这个误差信号计算出最终的控制量 uuu,如电机的驱动电压或扭矩,用于驱动被控对象。
工作原理
  • 速度环工作过程

    1. 设定期望速度 vrefv_{ref}vref
    2. 测量实际速度 vactualv_{actual}vactual
    3. 计算速度误差 ev=vref−vactuale_v = v_{ref}-v_{actual}ev=vrefvactual
    4. 速度环PID控制器根据误差 eve_vev 计算期望加速度 arefa_{ref}aref,其PID公式为:
      aref=Kpvev+Kiv∫0tev(τ)dτ+Kdvdevdta_{ref}=K_{p_v}e_v + K_{i_v}\int_{0}^{t}e_v(\tau)d\tau+K_{d_v}\frac{de_v}{dt}aref=Kpvev+Kiv0tev(τ)dτ+Kdvdtdev
      其中 KpvK_{p_v}Kpv 是速度环的比例系数,KivK_{i_v}Kiv 是速度环的积分系数,KdvK_{d_v}Kdv 是速度环的微分系数。
  • 加速度环工作过程

    1. 接收速度环输出的期望加速度 arefa_{ref}aref
    2. 测量实际加速度 aactuala_{actual}aactual
    3. 计算加速度误差 ea=aref−aactuale_a=a_{ref}-a_{actual}ea=arefaactual
    4. 加速度环PID控制器根据误差 eae_aea 计算最终控制量 uuu,其PID公式为:
      u=Kpaea+Kia∫0tea(τ)dτ+Kdadeadtu = K_{p_a}e_a+K_{i_a}\int_{0}^{t}e_a(\tau)d\tau + K_{d_a}\frac{de_a}{dt}u=Kpaea+Kia0tea(τ)dτ+Kdadtdea
      其中 KpaK_{p_a}Kpa 是加速度环的比例系数,KiaK_{i_a}Kia 是加速度环的积分系数,KdaK_{d_a}Kda 是加速度环的微分系数。
具体例子:直流电机速度 - 加速度控制
建模过程
  • 直流电机数学模型:直流电机的电压平衡方程为:
    Ldidt+Ri+E=uL\frac{di}{dt}+Ri + E = uLdtdi+Ri+E=u
    其中 LLL 是电枢电感,RRR 是电枢电阻,iii 是电枢电流,EEE 是反电动势,uuu 是施加在电机上的电压。
    反电动势 E=KeωE = K_e\omegaE=Keω,其中 KeK_eKe 是反电动势常数,ω\omegaω 是电机的角速度(对应速度)。
    电机的转矩方程为:
    T=KtiT = K_tiT=Kti
    其中 TTT 是电机产生的转矩,KtK_tKt 是转矩常数。
    电机的运动方程为:
    Jdωdt+Bω=TJ\frac{d\omega}{dt}+B\omega=TJdtdω+Bω=T
    其中 JJJ 是电机和负载的转动惯量,BBB 是粘性摩擦系数。

T=KtiT = K_tiT=Kti 代入运动方程,再结合电压平衡方程,经过拉普拉斯变换(假设初始条件为零)可得电机的传递函数:
G(s)=ω(s)U(s)=Kt(Ls+R)(Js+B)+KeKtG(s)=\frac{\omega(s)}{U(s)}=\frac{K_t}{(Ls + R)(Js + B)+K_eK_t}G(s)=U(s)ω(s)=(Ls+R)(Js+B)+KeKtKt

在实际应用中,为了简化模型,当电感 LLL 较小时可以忽略不计,此时传递函数简化为:
G(s)=ω(s)U(s)=KtR(Js+B)+KeKtG(s)=\frac{\omega(s)}{U(s)}=\frac{K_t}{R(Js + B)+K_eK_t}G(s)=U(s)ω(s)=R(Js+B)+KeKtKt

公式推导过程
  • 速度环推导
    设速度环的输入为期望速度 Vref(s)V_{ref}(s)Vref(s),输出为实际速度 V(s)V(s)V(s),速度环的误差 Ev(s)=Vref(s)−V(s)E_v(s)=V_{ref}(s)-V(s)Ev(s)=Vref(s)V(s)
    速度环PID控制器的传递函数为 Gcv(s)=Kpv+Kivs+KdvsG_{c_v}(s)=K_{p_v}+\frac{K_{i_v}}{s}+K_{d_v}sGcv(s)=Kpv+sKiv+Kdvs
    速度环的输出(期望加速度)Aref(s)=Gcv(s)Ev(s)A_{ref}(s)=G_{c_v}(s)E_v(s)Aref(s)=Gcv(s)Ev(s)

  • 加速度环推导
    设加速度环的输入为期望加速度 Aref(s)A_{ref}(s)Aref(s),输出为实际加速度 A(s)A(s)A(s),加速度环的误差 Ea(s)=Aref(s)−A(s)E_a(s)=A_{ref}(s)-A(s)Ea(s)=Aref(s)A(s)
    加速度环PID控制器的传递函数为 Gca(s)=Kpa+Kias+KdasG_{c_a}(s)=K_{p_a}+\frac{K_{i_a}}{s}+K_{d_a}sGca(s)=Kpa+sKia+Kdas
    加速度环的输出(控制电压)U(s)=Gca(s)Ea(s)U(s)=G_{c_a}(s)E_a(s)U(s)=Gca(s)Ea(s)

将电机的传递函数 G(s)G(s)G(s) 与加速度环和速度环结合起来,就可以得到整个速度 - 加速度环控制系统的传递函数。

控制过程分析
  • 启动阶段:当系统接收到一个期望速度指令时,速度环检测到速度误差较大,会输出一个较大的期望加速度。加速度环根据这个期望加速度迅速调整控制量,使电机快速加速,减少速度误差。
  • 稳态阶段:当电机速度接近期望速度时,速度环的误差逐渐减小,输出的期望加速度也相应减小。加速度环继续微调控制量,使电机保持稳定的速度运行,同时抑制外界干扰对速度的影响。
  • 干扰响应阶段:如果系统受到外界干扰,如负载突然变化,会导致实际速度发生变化。速度环检测到速度误差后,调整期望加速度,加速度环快速响应,通过改变控制量来抵消干扰的影响,使系统尽快恢复到期望速度。
参数整定
  • 加速度环参数整定:可以先采用Ziegler - Nichols方法等经典方法进行初步整定。例如,将积分和微分系数设为零,逐渐增大比例系数 KpaK_{p_a}Kpa,直到系统出现临界振荡,记录此时的比例系数 KcrK_{cr}Kcr 和振荡周期 TcrT_{cr}Tcr,然后根据经验公式计算出合适的PID参数。
  • 速度环参数整定:在加速度环参数整定好之后,再对速度环进行整定。同样可以采用类似的方法,先调整比例系数 KpvK_{p_v}Kpv,观察系统的响应,再逐步加入积分和微分环节,以达到最佳的控制效果。
    通过速度 - 加速度环控制策略,可以使直流电机系统在不同工况下都能实现快速、准确和稳定的速度控制。
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐