PID Controller Tuning in Simulink MATLAB_help文档DeepSeek翻译
Simulink 中的 PID 控制器整定
本示例展示如何使用 PID Tuner 自动整定 PID 控制器模块。
PID Tuner 简介
PID Tuner 为 Simulink® PID 控制器模块提供了一种快速且广泛适用的单回路 PID 整定方法。使用此方法,您可以整定 PID 控制器参数,以实现具有期望响应时间的鲁棒设计。
使用 PID Tuner 的典型设计工作流程包括以下任务:
- 启动 PID Tuner。启动时,软件会自动从 Simulink 模型计算线性被控对象模型并设计初始控制器。
- 通过在两种设计模式下手动调整设计准则,在 PID Tuner 中整定控制器。整定器计算能够鲁棒稳定系统的 PID 参数。
- 将设计好的控制器参数导出回 PID 控制器模块,并在 Simulink 中验证控制器性能。
打开模型
打开包含 PID 控制器模块的发动机转速控制模型,并花些时间熟悉它。
open_system(‘scdspeedctrlpidblock’)

设计概述
在本示例中,您将在发动机转速控制回路中设计一个 PI 控制器。设计目标是跟踪来自 Simulink 阶跃模块 scdspeedctrlpidblock/Speed Reference 的参考信号。设计要求是:
- 调节时间小于 5 秒
- 对阶跃参考输入的稳态误差为零。
在本示例中,您通过在 PID Tuner 中设计 PI 控制器 scdspeedctrl/PID Controller 来稳定反馈回路并实现良好的参考跟踪性能。
打开 PID Tuner
要启动 PID Tuner,请双击 PID 控制器模块以打开其模块对话框。在 主要 选项卡中,点击 整定。

初始 PID 设计
当 PID Tuner 启动时,软件会计算控制器所见的线性化被控对象模型。软件会自动识别被控对象的输入和输出,并使用当前工作点进行线性化。被控对象可以是任意阶次,并且可以包含时间延迟。
PID Tuner 会计算一个初始 PI 控制器,以在性能和鲁棒性之间实现合理的折衷。默认情况下,图中显示阶跃参考跟踪性能。
下图显示了具有初始设计的 PID Tuner 对话框:

显示 PID 参数
点击 显示参数 以查看控制器参数 P 和 I,以及一组性能和鲁棒性测量值。在本示例中,初始 PI 控制器设计给出的调节时间为 2 秒,满足要求。

在 PID Tuner 中调整 PID 设计
参考跟踪响应的超调量约为 7.5%。由于在达到调节时间限制之前我们仍有一些余地,您可以通过增加响应时间来减少超调量。将响应时间滑块向左移动以增加闭环响应时间。请注意,当您调整响应时间时,响应图以及控制器参数和性能测量值会更新。
下图显示了一个调整后的 PID 设计,其超调量为零,调节时间为 4 秒。设计出的控制器实际上变成了一个纯积分控制器。


完成具有性能折衷的 PID 设计
为了在将调节时间减少到 2 秒以下的同时实现零超调,您需要同时利用两个滑块。您需要使控制响应更快以减少调节时间,并增加鲁棒性以减少超调。例如,您可以将响应时间从 3.4 秒减少到 1.5 秒,并将鲁棒性从 0.6 增加到 0.72。
下图显示了具有这些设置的闭环响应:


将整定后的参数写入 PID 控制器模块
当您对线性被控对象模型上的控制器性能感到满意后,可以在非线性模型上测试设计。为此,请点击 PID Tuner 中的 更新模块。此操作会将参数写回 Simulink 模型中的 PID 控制器模块。
下图显示了更新后的 PID 控制器模块对话框:

完成的设计
下图显示了闭环系统的响应:

响应表明新控制器满足所有设计要求。
当 PID 控制器模块属于多回路设计任务时,您也可以使用 Control System Designer 来设计 PID 控制器模块。请参阅示例 Single Loop Feedback/Prefilter Compensator Design (Simulink Control Design)。
bdclose(‘scdspeedctrlpidblock’)
另请参阅
PID Tuner
相关主题
- Tune PID Controller to Favor Reference Tracking or Disturbance Rejection (Simulink Control Design)
- Analyze Design in PID Tuner (Simulink Control Design)
版权标注与来源说明
本文译文对应的原文内容,均来源于 MathWorks 官方网站(https://www.mathworks.com/)及官方帮助中心,原文版权均独家归属MathWorks 公司所有。
原文进行的非官方翻译,仅为方便个人学习、理解MathWorks相关产品(含MATLAB等)的功能、操作及技术细节而制作,不代表MathWorks公司官方立场,也不构成官方翻译版本。
建议使用者优先查阅官方原文。
更多推荐



所有评论(0)