文档

模型离散化

什么是模型离散器?

模型离散器选择性地替代了连续的Simulink万博1manbetx®具有离散等价物的块。离散化是数字控制器设计和硬件在环仿真的关键步骤。

你可以使用模型离散器:

  • 识别模型的连续块

  • 将块的参数从连续更改为离散

  • 对模型中的所有连续块或选定块应用离散化设置

  • 创建包含多个离散候选和原始连续块的可配置子系统

  • 在不同的离散候选模型之间切换,并评估得到的模型模拟结果

需求

使用模型离散器

  • 您必须拥有控制系统工具箱™许可证,版本5.2或更高版本。

  • 确保您的模型不包含任何过时的块,并升级到当前的Simulink版本。万博1manbetx有关更多信息,请参见模型的升级

  • 确保您的模型不包含任何被屏蔽的子系统。有关更多信息,请参见块面具

用模型离散器离散模型

使模型离散化:

  • 启动模型离散器

  • 指定转换方法

  • 指定采样时间

  • 指定离散化方法

  • 离散块

f14模型显示了离散化模型的步骤。

启动模型离散器

要打开该工具,在Simulink编辑器中,选择万博1manbetx分析>控制设计>模型离散化

万博1manbetxSimulink模型离散器打开。

或者,你可以从MATLAB打开模型离散器®命令窗口使用slmdldiscui函数。

下面的命令打开万博1manbetxSimulink模型离散器窗口的f14模型:

slmdldiscui(“f14”)

要从模型离散器中打开一个新的模型或库,请选择文件>负荷模型

指定转换方法

变换方法指定在离散化中使用的算法的类型。有关不同转换方法的更多信息,请参见控制系统工具箱。

转换方法列表包含以下选项:

  • 零级举行

    输入的零阶保持。

  • 一阶举行

    输入的线性插值。

  • Tustin

    双线性(Tustin)近似。

  • 带预整经的塔斯汀

    带频率预翘曲的Tustin近似。

  • 匹配pole-zero

    匹配极零方法(仅适用于SISO系统)。

指定采样时间

输入采样时间样品时间字段。

您可以通过为离散块或可配置子系统输入双元素向量来指定偏移时间。第一个元素是采样时间,第二个元素是偏移时间。例如,一个条目[1.0 0.1]将指定1.0秒采样时间和0.1秒偏移量。如果没有指定偏移量,则默认为零。

当离散s域中的块时,可以输入工作空间变量。看到离散块(在s域输入参数)

指定离散化方法

中指定离散化方法将当前选择替换为字段。选项有

离散块(在s域中输入参数)。创建一个离散块,其参数从相应的连续块中保留。采样时间和离散化参数也在块的参数对话框中。

该块被实现为一个使用汇集在掩码初始化代码中将连续参数转换为离散参数。

如果采样时间为零,这些块具有恢复到连续行为的独特能力。输入示例时间作为工作空间变量(“t”例如)允许从连续到离散的转换,然后再返回。看到指定采样时间

请注意

如果您从模型生成代码,当参数不可调优时默认参数行为设置为内联在模型的配置参数对话框中。

下图显示了在s域中离散化的传递函数块旁边的连续传递函数块。每个块的块参数对话框出现在该块的下方。

离散块(在z域输入参数)。创建一个离散块,其参数是直接放置在块对话框中的“硬编码”值。模型离散器使用汇集函数获取离散化参数(如果需要)。

更多的帮助汇集函数,在命令窗口中输入以下命令:

帮助汇集

下图显示了一个连续的传递函数块,旁边是一个在z域中离散化的传递函数块。每个块的块参数对话框出现在该块的下方。

请注意

如果您想在模型离散化会话之后精确地恢复原始的连续参数值,您应该在s域中输入参数。

可配置子系统(在s域输入参数)。使用当前选择的s域值创建多个离散化候选项。可配置子系统可以由一个或多个块组成。

块在可配置子系统中的位置当选择此选项时,字段将变为活动的。此选项允许您创建新的可配置子系统或覆盖现有的子系统。

请注意

当前文件夹必须是可写的,以便为可配置子系统选项保存一个或多个库。

可配置子系统(输入z域参数)。在z域为当前选择创建多个离散候选对象。可配置子系统可以由一个或多个块组成。

块在可配置子系统中的位置当选择此选项时,字段将变为活动的。此选项允许您创建新的可配置子系统或覆盖现有的子系统。

请注意

当前文件夹必须是可写的,以便为可配置子系统选项保存一个或多个库。

可配置子系统存储在一个包含离散候选和原始连续块的库中。图书馆将被命名<模型名称> _disc_lib它会被储存在电流中。控件创建的可配置子系统f14模型将被命名为f14_disc_lib

如果从同一个模型创建多个库,则文件名将相应增加。方法创建的第二个可配置子系统库f14模型将被命名为f14_disc_lib2

通过右键单击模型中的子系统并选择,您可以打开一个可配置的子系统库库链接>去图书馆区从上下文菜单。

离散块

要离散链接到库的块,您必须要么离散库本身中的块,要么在模型窗口中禁用库链接。

您可以通过选择从模型离散器打开库负荷模型文件菜单。

通过在块上右键单击并选择,可以禁用库链接库链接>禁用链接从上下文菜单。

离散块有两种方法。

选择块和离散化

  1. 在模型离散化树视图窗格中选择一个或多个块。

    要选择多个块,按住Ctrl按钮,同时选择方块。

    请注意

    您必须从模型离散化树视图中选择块。在编辑器中单击块不会选择它们进行离散化。

  2. 选择离散电流块离散化菜单(如果选中单个块)或选择离散选定的块离散化菜单,如果选择多个块。

    控件还可以对当前块进行离散化离散化按钮,如下所示。

存储离散化设置,并将它们应用到模型中选定的块

  1. 输入当前块的离散化设置。

  2. 点击商店设置

    这将把当前块及其离散化设置添加到预置块组中。

  3. 如有必要,重复步骤1和2。

  4. 选择离散预设块离散化菜单。

从可配置子系统中删除离散化候选项

控件中的离散化候选项,可以从可配置子系统中删除该候选项块在可配置子系统中的位置字段并单击删除按钮。

撤消离散化

要撤消离散化,请单击撤销离散化按钮。

或者,您也可以选择撤销离散化离散化菜单。

此操作撤销当前选择及其子对象中的离散化。例如,在子系统上执行undo操作将从子系统层次结构的所有级别的所有块中删除离散化。

查看离散化模型

模型离散器在一个层次树视图中显示模型。

查看离散块

树视图中的块图标将用“z当块被离散化时。

下图显示,飞机动力学模型子系统已经离散成一个可配置的子系统,有三个离散候选子系统。

其他的块f14模型尚未离散化。

下图显示了飞机动力学模型子系统f14离散化后的示例模型进入一个可配置子系统,该子系统包含原始连续模型和三个离散化候选模型。

下图显示了包含飞机动力学模型可配置子系统的库,该子系统具有原始的连续模型和三个离散候选模型。

刷新模型的模型离散视图

要在模型已更改时刷新模型离散化器的树视图,请单击刷新按钮。

或者,您也可以选择刷新视图菜单。

的块离散化万博1manbetx模型

您可以使用离散化库将Simulink软件模型中的连续块替换为s域中离散化的等价万博1manbetx块。

下面的程序展示了如何替换飞机动力学模型子系统中的连续传输Fcn块f14用离散化库中的离散化传输Fcn块建立模型。用零阶保持变换方法和2秒采样时间在s域对块进行离散化。

  1. 打开f14模型。

  2. 打开飞机动力学模型子系统f14模型。

  3. 打开离散化库窗口。

    输入离散化在MATLAB命令提示符。

    库:离散化窗口打开。

    这个库包含s域离散块。

  4. 将离散化传输Fcn(带有初始状态)块添加到f14/飞机动力学模型窗口。

    1. 中单击离散化传输Fcn块库:离散化窗口。

    2. 把它拖到f14/飞机动力学模型窗口。

  5. 打开Transfer Fcn.1块的参数对话框。

    中双击Transfer Fcn.1块f14/飞机动力学模型窗口。

    弹出“阻塞参数:传输Fcn.1”对话框。

  6. 打开离散化传输Fcn块的参数对话框。

    中双击离散化传输Fcn块f14/飞机动力学模型窗口。

    打开“块参数:离散化传输Fcn”对话框。

    将参数信息从传输Fcn.1块的对话框复制到离散化传输Fcn块的对话框。

  7. 输入2样品时间字段。

  8. 选择zoh方法下拉列表。

    离散化传输Fcn的参数对话框现在看起来像这样。

  9. 点击好吧

    f14/飞机动力学模型窗口现在是这样的。

  10. 删除原来的Transfer Fcn.1块。

    1. 单击Transfer Fcn.1块。

    2. 按下删除关键。

      f14/飞机动力学模型窗口现在是这样的。

  11. 将离散转移Fcn块添加到模型中。

    1. 单击离散化传输Fcn块。

    2. 拖动离散化转移Fcn块到合适的位置以完成模型。

      f14/飞机动力学模型窗口现在是这样的。

使用sldiscmdl函数离散模型

使用sldiscmdl从MATLAB命令窗口离散化Simulink软万博1manbetx件模型的函数。方法可以指定变换方法、采样时间和离散化方法sldiscmdl函数。

例如,以下命令离散f14使用零阶保持变换方法在s域中建模,采样时间为1秒:

sldiscmdl (f14, 1.0,“zoh”)

另请参阅

相关的话题

这个话题有帮助吗?