主要内容

控制系统设计器

设计单输入单输出 (SISO) 控制器

说明

使用控制系统设计器,您可以为在 MATLAB® 或 Simulink® 中建模的反馈系统设计单输入单输出 (SISO) 控制器(需要 Simulink Control Design™ 软件)。

使用此 App,您可以:

  • 使用以下方法设计控制器:

    • 交互式波特图、根轨迹图和尼柯尔斯图等图形编辑器,用于添加、修改和删除控制器极点、零点和增益

    • 自动 PID、LQG 或 IMC 调节

    • 基于优化的调节(需要 Simulink Design Optimization™ 软件)

    • 自动环路成形

  • 调节单环或多环控制架构的补偿器。

  • 使用时域和频域响应(如阶跃响应和零极点图)分析控制系统设计。

  • 比较多个控制系统设计的响应图。

  • 为多模型控制应用设计控制器。

Control System Designer app

打开 控制系统设计器 App

  • MATLAB 工具条:在 App 选项卡上的控制系统设计和分析下,点击 App 图标。

  • MATLAB 命令提示符:输入 controlSystemDesigner

  • Simulink 工具条:在 App 选项卡上的控制系统下,点击该 App 的图标。

示例

全部展开

控制系统设计器中完成控制器设计后,您可以将设计导出到 MATLAB 工作区,以便进行进一步的分析或设计。

控制系统设计器中,在控制系统选项卡的导出下,点击导出调节模块

在“导出模型”对话框的选择设计下拉列表中,选择您要导出的设计。您可以选择当前设计,也可以从数据浏览器中选择其中一个存储的设计。

将模型导出到 MATLAB 工作区表的导出列中,选择您要导出的模型。

对于所有设计,您都可以导出控制器和预滤波器模型。此外,对于当前设计,您还可以从数据浏览器中导出固定模块模型和任何响应。

有关每个控制架构中的预滤波器、控制器和固定模块的详细信息,请参阅Feedback Control Architectures in Control System Designer

导出为列中,您可以为导出的模型指定备用名称。如果为导出的模型指定的名称与 MATLAB 工作区中的某个现有变量同名,则将覆盖该变量。

要将所选模型保存到 MATLAB 工作区,请点击导出

控制系统设计器中完成控制器设计后,为了对您的系统进行仿真,您可以自动为控制架构生成 Simulink 模型。

控制系统选项卡的导出下,点击创建 Simulink 模型

该 App 会将当前设计的控制器和固定模块导出到 MATLAB 工作区,并生成与当前控制架构匹配的 Simulink 模型。有关每个控制架构中的控制器和固定模块的详细信息,请参阅Feedback Control Architectures in Control System Designer

例如,如果您使用配置 1 设计控制系统,控制系统设计器会将 CFGH 导出到 MATLAB 工作区,并生成以下 Simulink 模型。

在生成的模型中,Input 模块是 Signal Generator (Simulink)。使用此模块,您可以用不同的输入波形(例如正弦波或随机信号)对您的模型进行仿真。要生成冲激响应,请将 Input 模块替换为 Step (Simulink) 模块。

要为存储的设计生成 Simulink 模型,请先将该设计设为当前设计。在控制系统选项卡的检索下,选择您要为其生成模型的设计。

相关示例

编程用途

全部展开

controlSystemDesigner 打开控制系统设计器,使用以下默认控制架构:

该架构由 LTI 对象组成:

  • G - 被控对象模型

  • C - 补偿器

  • H - 传感器模型

  • F - 预滤波器

默认情况下,该 App 将其中每个模型都配置为一个单位增益。

controlSystemDesigner(plant) 将被控对象 G 初始化为 plantplant 可以是使用 sstfzpkfrd 创建的任何 SISO·LTI 模型,也可以是这些模型的数组。

controlSystemDesigner(plant,comp) 将补偿器 C 初始化为 SISO·LTI 模型 comp

controlSystemDesigner(plant,comp,sensor) 将传感器模型 H 初始化为 sensorsensor 可以是任何 SISO LTI 模型,也可以是这些模型的数组。如果将 plantsensor 都指定为 LTI 模型数组,则这些数组的长度必须匹配。

controlSystemDesigner(plant,comp,sensor,prefilt) 将预滤波器模型 F 初始化为 SISO·LTI 模型 prefilt

controlSystemDesigner(views) 打开 App 并指定初始图形编辑器配置。views 可以是以下任何字符向量,也可以是一个包含多个字符向量的元胞数组。

  • "rlocus" - 根轨迹编辑器

  • "bode" - 开环波特编辑器

  • "nichols" - 开环尼柯尔斯编辑器

  • "filter" - 波特编辑器,用于从预滤波器输入到被控对象输出的闭环响应

除了打开指定的图形编辑器,App 还可绘制闭环输入-输出阶跃响应。

controlSystemDesigner(views,plant,comp,sensor,prefilt) 指定初始绘图配置,并使用指定的模型初始化被控对象、补偿器、传感器和预滤波器。如果省略模型,App 将使用默认值。

controlSystemDesigner(initData) 打开 App,并使用初始化数据结构体 initdata 初始化系统配置。要创建 initdata,请使用 sisoinit

controlSystemDesigner(sessionFile) 打开 App 并加载之前保存的会话。sessionFile 是 MATLAB 路径中的会话数据文件的名称。这些数据包括当前系统架构和绘图配置,以及保存在数据浏览器中的任何设计和响应。

要保存会话,请在控制系统设计器中的控制系统选项卡上,点击 保存会话

版本历史记录

在 R2015a 中推出

全部展开