前馈增强PID控制

在闭环运动控制应用中,通常将目标速度和目标加速度乘以速度和加速度前馈,以产生前馈对控制输出的贡献。前馈增强是一种预测技术,可以在不等待PID算法响应的情况下估计比例积分导数(PID)控制算法的输出。前馈比单纯依赖PID算法能更快地减小误差或保持误差更小。

通过杨金 2015年3月31日

前馈增强是一种预测技术,估计输出从proportional-integral-derivative (PID)控制算法,而不需要等待PID算法的响应。如果前馈预测能够接近地估计控制输出,PID算法的任务是最小化系统当前状态与期望状态之间的误差,将需要做更少的工作来纠正误差。方法可以更快地减少错误或使错误保持在较小的范围内PID算法一个人。前馈控制输出通常使用设定值及其导数(基于目标速度和加速度值)计算,并将每个导数乘以增益。在闭环运动控制应用中,通常将目标速度和目标加速度乘以速度和加速度前馈,以产生前馈对控制输出的贡献。(图1包含一个典型的控制环路图,其中前馈项添加到传统的P、I和D项中。)

电机PID实例

举个简单的例子,考虑一个向内移动1的马达。每秒,如果施加1v, 2英寸。当施加2v时,速度为每秒,以此类推,施加10v将导致速度为10in。每秒。在这种情况下,前馈值将与速度成比例:速度前馈值是1伏每英寸每秒。这意味着如果设定值(即系统的目标速度)是8英寸。每秒,速度前馈项的输出将是8v。

在一个运动控制应用速度设定值平滑地上升到最终设定值,因此前馈项平滑地上升,以避免控制输出的突然变化,从而使系统受到冲击。

此外,运动控制应用程序通常具有加速度前馈,它乘以速度设定值的变化率,以在加速到最终位置时给予电机额外的推动,并在达到最终位置时减速时进行少量制动。

温度控制应用通常在不使用前馈的情况下表现良好,因为过程相对较慢,积分器增益项有时间完成大部分工作。然而,在某些情况下,负载会迅速变化。

前馈故事问题

例如,考虑一个烘烤应用程序,加热的材料在传送带上通过烤箱移动。假设材料必须在烤箱中的时间是恒定的,但烤箱温度可以变化,烘烤速度的差异只能是由于被加热的材料的密度。当材料离开烤箱时,它会带走热量;材料以较高的速率离开烤箱会造成更大的热量损失。为了补偿这些因素,需要某种机制来估计通过烤箱的材料密度,这可以用来计算所需的烤箱温度变化。

通常情况下,通过烤箱的物品的体积或数量越大,烤箱的温度就应该越高。如果烤箱很长,有很多区域,那么需要实现一个队列,以便每个区域可以响应其中不同数量的材料。甚至可能需要在队列中添加“提前查看”功能,以弥补烘烤物品之间的空白时间。

理论上,前馈应该能够预测正确的控制输出,因此不会有错误,使得PID控制算法的使用是不必要的。在现实中,由于工厂的真实反应是非线性的,不断变化的负载,或与过程相关的时间常数不是真正恒定的,前馈增益不会完美。因此,仍然需要PID来纠正错误。但是,如果前馈能估计出所需实际控制值的10%以内的控制输出,那么PID只需要完成最后10%的工作。随着时间的推移,这将导致更快的响应和更少的错误,并且可能会降低制造过程的成本和更高的生产率。

计算前馈增益

前馈增益实际上与工厂模型(被控制的操作或过程的数学模型)相反。如果植物模型是某个函数Gp(s),则前馈为FF(s) = 1/Gp(s)。这个事实很有用,因为在控制系统时,过程变量[PV(s),过程的测量状态]应该等于设定值SP(s)。用数学术语来说,前馈控制是:

SP (s) * FF (s) * Gp (s) = PV (s)

由于前馈是植物的逆,Gp(s)*FF(s) = 1,因此上式化简为

SP (s) = PV (s)

过程变量与设定值相同,因此不存在误差。这是理想的目标。如上所述,唯一的问题是,通常情况下,电厂设计人员忽略了提供电厂模型,因此前馈增益必须手动调整。如果进行调优的人可以访问积分器对控制输出的增益贡献,这就没有看起来那么难。

如果积分器的增益贡献可以在趋势上绘制或在图中捕获,则是最好的。这样做的原因是,如果前馈增益有误差,积分器增益将试图补偿误差(见图2a)。

3微调图

图2a、2b和2c显示了三个调优图。每个图中的黄色标线表示积分器项。红色和浅蓝色是实际位置和目标位置。蓝色和洋红色是实际速度和目标速度,绿色是对阀门的控制输出。目标是使实际轴位置和目标轴位置在每个时间点(横轴)精确重叠。

通过观察图表或趋势,可以确定错误的原因。然后,为了减少误差,可以将前馈增益计算为引起误差的函数。例如,如果前面讨论的电机被告知以10英寸的速度移动。每秒,电机的实际速度将滞后于目标速度,直到PID的积分器组件的值足以增加控制输出到10英寸。每秒。

改变目标速度会导致误差,因此第一步是计算前馈项作为速度的函数。使用上述示例中的数字,积分器值需要增加到足以为控制输出贡献10v,导致系统进入10in。每秒。现在调整系统的人可以将速度除以控制输出,很容易得到速度前馈项。

加速、减速

假设速度前馈现在是正确的,当系统以恒定速度运动时,误差应该很小(如果有的话)(见图2b)。然而,在加速和减速过程中很可能会出现一些错误。在加速过程中,积分器输出将趋向于增加一点,以保持实际速度不落后于目标速度。由于目标加速度也可以被绘制出来,所以积分器在加速过程中的上卷量可以除以加速度峰值,从而得到加速度前馈增益的一个很好的估计。这将减少在加速阶段和减速归零时的以下误差。图2c显示了一个由前馈完成所有工作的完美调优系统。

直线电机模型

最后,如上所述,前馈增益提供了植物模型的系数,因为前馈项是线性植物模型的逆。一个简单的直线电机模型可以是:

所以前馈增益为:

…的地方:

K是电机带负载时的增益

τ为带负载电机的时间常数

s是拉普拉斯算子

1/K是速度前馈项

τs/K为加速度前馈项

提醒:拉普拉斯变换是一种数学方法,用于从时间域往返到频率相关的复变量域(s)。拉普拉斯算子是由函数的梯度给出的微分算子。

液压缸模型

液压缸与负载的线性化模型比较复杂。圆柱和负载可以被建模为两个弹簧之间的质量,因此这是一个欠阻尼的两极系统。线性模型为:

反求前馈增益:

其中附加项ζ是阻尼因子,ω是固有频率

1/K是速度前馈项

(2ζs) / (Kω)为加速度前馈项

而且

1 / (Kω2)为抽动前馈项

注意,这里有一个额外的(s)次方和一个相应的前馈项。这是脉冲前馈增益乘以目标发生器产生的当前目标脉冲。参见图1,了解控制循环结构中所有的术语是如何组合的。

前馈相对容易调优或根据经验确定,可以显著减少错误和提高响应时间。当设定值或负载发生变化时,应始终考虑前馈,但误差必须最小化。

Peter Nachtwey是Delta Computer Systems Inc.的总裁;由Mark T. Hoske编辑,他是CFE Media的内容经理,控制工程mhoske@cfemedia.com

关键概念

  • 前馈估计比例积分导数(PID)控制算法的输出,而不等待PID算法的响应。
  • 前馈比单纯依靠PID算法能更快地减小误差或保持误差更小。
  • 当设定值或负载变化和误差必须最小化时,总是应该考虑前馈。

考虑一下这个

你有开环,可以受益于前馈预测应用于PID运动控制?

在线额外

下面,请参阅控制工程教程,回到基础:重新学习术语,过程控制的概念,以及相关文章,使用PID进行运动控制,机器人。

另外,请参阅Delta Computer Systems的另一篇文章:机器内部:运动控制使培根移动得更快