当一个模型不可用时,整定一个PID控制器

由Arkadiy Turevskiy,Mathworks


作为控制工程师所知,具有精确的工厂模型对于设计具有高性能和鲁棒性的控制器至关重要。如果植物模​​型已经可用(以传递函数,状态空间表示或类似的形式金宝app®框图),然后调整PID控制器增益很简单。但是如果没有植物模型,那么你不能轻易创建一个原则?也许你必须控制的系统太复杂,或者您没有足够的洞察系统的物理学。那么,你唯一的选择,那么,要在实际硬件上调整收益,希望你不会在这个过程中损坏它吗?

幸运的是,答案是否定的。在类似的情况下,您可以使用系统识别。利用系统识别,您可以创建描述从测量的输入输出测试数据的物理系统的数学模型。练习控制工程师有时被系统识别吓倒,因为它通常只在研究生级控制类别中被教授,并且一些工程师认为他们需要一个博士学位。在控制器中使用系统识别技术。

本文描述了一个工作流程,从输入输出测试数据创建一个传递函数,并使用这个传递函数来自动调整PID控制器的增益。整个工作流程是使用控制系统工具箱™中的PID调谐器应用程序完成的。

植物建模与控制设计挑战

让我们假设我们无法使用第一个原则创建工厂模型,因为我们没有了解系统的物理,但我们确实可以访问实际硬件。这意味着我们可以通过系统运行激励信号并记录输入输出数据。我们将使用此测量的输入输出数据来创建工厂模型,然后使用此模型来调谐PID控制器增益,使PID控制器提供快速且稳定的响应。

系统识别和控制设计的工作流程

工作流程包括三个主要步骤:

  1. 导入输入-输出测试数据。
  2. 从数据中识别工厂模型。
  3. 使用识别的工厂模型来调整PID控制器增益。

导入输入输出测试数据

输入-输出测试数据如图1所示。为了激活系统动态,我们在5秒时向系统中注入一个步骤更改,并记录输出(可作为变量使用输出在Matlab工作区)。输出数据的视觉分析显示它似乎捕获了系统动态的变化。步骤输入是激发系统动态的常用方法,但可以使用其他励磁信号。

图1.输入输出测试数据。输入是5秒的步骤。

我们首先将测量的输入输出数据导入PID调谐器。为此,我们通过键入来启动PID调谐器应用程序pidTuner在MATLAB命令行或选择PID调谐器应用程序在MATLAB应用程序库。PID调谐器打开时,我们选择的选项从输入输出数据确定一个新工厂,和我们指定的输出和输入信号(图2)。因为我们的系统是一个步骤的输入信号,我们指定步骤的特征信号注入测量输出信号的系统和数据存储。该工具还支持任意输入输出数据金宝app的导入。

图2.将测量的步骤响应数据导入PID调谐器的接口。

识别植物模型

导入数据之后,我们就可以使用System Identification Toolbox™创建一个工厂模型了。系统识别包括选择一个植物模型结构和该结构的参数值,使模拟模型输出与测量输出数据匹配。PID调谐器提供了预处理测量数据,选择模型结构,调整模型参数,直到模拟模型输出匹配测试数据的能力。

我们不会详细讨论数据预处理,但只是提及从测量的输出数据中删除偏移量(图3)。图3中的绿线显示了测量的系统输出。请注意,此行从0开始,而图1中的测量输出数据在-2左右开始。这是因为我们通过删除偏移来预处理测量的输出数据,是系统识别中的常用技术。PID调谐器包括其他数据预处理功能,例如过滤和重采样。

图3.测量的输出数据(绿色)和所识别的工厂模型响应(蓝色)。

我们现在需要选择模型结构并调整模型参数,直到测量的系统输出与被识别的植物模型的响应之间有一个很好的拟合。图3中的蓝线显示了已识别的工厂模型的初始响应(具有默认的模型结构和默认的模型参数值)。我们需要调整模型来改善蓝线和绿线之间的拟合。通过从PID Tuner中的下拉列表中选择,我们可以快速尝试不同的模型结构。选择包括一个极点,一对实极点,一对欠阻尼极点和一个选定阶的状态空间模型。我们还可以指定模型是否应该包括时延、零和一个积分器。

一旦我们选择了模型结构,我们可以交互式地调整参数,或者让PID调谐器自动计算给定模型结构的参数值。对于在我们的例子中测量的输出数据,我们通过使用带有时滞的一阶模型获得了良好的拟合(图4)。如果我们没有与这个低阶传递函数得到良好的拟合,我们可以很容易地尝试对数据拟合一个高阶模型。我们将简单地从下拉列表中选择一个高阶模型。PID调谐器会自动估计参数值。

图4。确定的植物模型响应(蓝色)和测量的输出数据(绿色)。对象模型结构为一阶时滞传递函数。所有的传递函数参数(增益,极点位置,和时间延迟)已被自动估计,以提供一个良好的拟合与测量输出数据。

优化控制器

既然我们已经确定了一个植物模型,我们可以用它来调整PID控制器的增益。PID调谐器自动计算控制器增益,提供快速和稳定的响应。我们可以使用交互式滑块来调整闭环性能。在我们的例子中,除了设计一个快速和稳定的控制器,我们需要确保发送到执行器的控制器输出不超过执行器可以提供的最大值。这就是为什么我们将控制器工作图添加到闭环步骤响应中,并使用滑块来实现所需的性能——快速且稳定的响应,这不会对执行器产生不切实际的要求(图5)。

图5。调谐PID控制器的参考跟踪和控制器努力步进响应图。

我们现在可以将调谐的PID控制器导出到MATLAB工作区以进行进一步的分析和设计。

发布2014 - 92234v00

查看相关功能的文章