Simulink 中的 PID 控制器调节
此示例说明如何使用 PID 调节器自动调节 PID Controller 模块。
PID 调节器简介
PID 调节器为 Simulink® PID Controller 模块提供了一种快速且广泛适用的单环 PID 调节方法。通过这种方法,您可以调节 PID 控制器参数,以实现具有所需响应时间的稳健设计。
使用 PID 调节器的典型设计工作流涉及以下任务:
(1) 启动 PID 调节器。启动时,该软件将自动根据 Simulink 模型计算线性被控对象模型,并设计初始控制器。
(2) 通过在两种设计模式下手动调整设计标准,在 PID 调节器中调节控制器。该调节器会计算以稳健方式稳定系统的 PID 参数。
(3) 将所设计控制器的参数导出回 PID Controller 模块,并在 Simulink 中验证控制器性能。
打开模型
打开使用 PID Controller 模块的发动机转速控制模型,并花一些时间来探索它。
open_system('scdspeedctrlpidblock')
设计概述
在此示例中,您要设计发动机转速控制环路中的 PI 控制器。该设计的目标是跟踪来自 Simulink Step 模块的参考信号 scdspeedctrlpidblock/Speed Reference
。设计要求如下:
稳定时间少于 5 秒
阶跃参考输入的稳态误差为零。
在此示例中,您要通过在 PID 调节器中设计 PI 控制器 scdspeedctrl/PID Controller
,稳定反馈环并实现良好的参考跟踪性能。
打开 PID 调节器
要启动 PID 调节器,请双击 PID Controller 模块以打开其模块对话框。在主要选项卡中,点击调节。
初始 PID 设计
当 PID 调节器启动时,该软件会计算控制器看到的线性化被控对象模型。该软件还会自动识别被控对象输入和输出,并使用当前工作点进行线性化。该被控对象可以具有任意阶数,还可以具有时滞。
PID 调节器可计算初始 PI 控制器,以在性能和稳健性之间进行合理的权衡。默认情况下,阶跃参考跟踪性能会显示在图中。
下图显示具有初始设计的 PID 调节器对话框:
显示 PID 参数
点击显示参数以查看控制器参数 P 和 I,以及一组性能和稳健性测量值。在此示例中,初始 PI 控制器设计提供了 2 秒的稳定时间,这是满足要求的。
在 PID 调节器中调整 PID 设计
参考跟踪响应的超调约为 7.5%。由于在达到稳定时间限制之前还有一些空间,因此,您可以通过增加响应时间来减少超调。向左移动响应时间滑块以增加闭环响应时间。请注意,当您调整响应时间时,响应图以及控制器参数和性能测量值会更新。
下图显示调整后的 PID 设计,超调为零,稳定时间为 4 秒。设计的控制器实际上变成了纯积分控制器。
具有性能权衡的完整 PID 设计
为了在实现零超调的同时将稳定时间减少到 2 秒以下,您需要使用两个滑块。您需要加速控制响应以减少稳定时间,并提高稳健性以减少超调。例如,您可以将响应时间从 3.4 秒减少到 1.5 秒,并将稳健性从 0.6 提高到 0.72。
下图显示具有这些设置的闭环响应:
将调节后的参数写入 PID Controller 模块
在您对线性被控对象模型中的控制器性能感到满意后,您可以基于非线性模型测试设计。为此,请点击 PID 调节器中的更新模块。此操作将参数写回 Simulink 模型中的 PID Controller 模块。
下图显示更新后的 PID Controller 模块对话框:
完成的设计
下图显示闭环系统的响应:
该响应表明,新控制器满足所有设计要求。
当 PID Controller 模块属于多环路设计任务时,您也可以使用控制系统设计器来设计 PID Controller 模块。请参阅示例Single Loop Feedback/Prefilter Compensator Design。
bdclose('scdspeedctrlpidblock')