主要内容

采样时间类型

离散采样时间

给定一个具有离散采样时间的块,Simulink金宝app®不时执行块输出或更新方法

t n n T 年代 + | T o |

样本时间段在哪里 T 年代 总是大于零且小于模拟时间 T 年代 .周期数( n )是一个必须满足的整数

0 n T 年代 T 年代

随着仿真的进行,Simulink在每个固定的时间间隔金宝app中只计算一次块输出 t n .在给定的采样时间内,Simulink执行块的输出方法的这些模拟时金宝app间被调用采样时间命中.离散抽样时间是已知抽样时间命中的唯一类型先天的

如果你需要延迟初始采样命中时间,你可以定义一个偏移量, T o

单位延迟块是具有离散采样时间的块的一个例子。

连续采样时间

连续采样时间命中分为大时间步长和小时间步长。小时间步长是大时间步长的细分。求解器在每个主要时间步骤生成一个结果。求解器使用小时间步的结果来提高大时间步结果的准确性。

您选择的ODE求解器集成从模拟开始时间到给定的主要或次要时间步长的所有连续状态。求解器确定小步的次数,并使用小时间步的结果来提高大时间步结果的准确性。您只能在主要时间步长处看到块输出。

为一个块指定连续采样时间,例如导数块,用于样品时间参数,输入(0,0)0

继承采样时间

如果设置块采样时间为[1 0]1,采样时间为继承了, Simu金宝applink根据模型中块的上下文确定块的最佳采样时间。金宝appSimulink在编译过程中为具有继承采样时间的块确定采样时间。因为继承的设置在编译中被覆盖,采样时间图例永远不会显示继承的采样时间[1 0]在编译模型中。有关更多信息,请参见查看采样时间信息

一些块默认继承采样时间。对于这些块,除非指定非继承值,否则参数是不可见的。例如,获得而且圆的函数块没有可见的采样时间参数,默认情况下继承了采样时间。作为最佳实践,不要更改样品时间参数。有关更多信息,请参见不建议采样时间的块

所有继承的块都服从于采样时间传播的过程。有关更多信息,请参见传播如何影响继承的采样时间

Fixed-in-Minor-Step

如果某块的采样时间为[0 1],块已经fixed-in-minor-step样品时间。对于这个示例时间,块不会在较小的时间步骤中执行。块只在主要时间步骤执行。固定的小步骤采样时间消除了对输出在主要步骤之间不能改变的块进行不必要的计算。

虽然您可以显式地将块设置为固定的小步采样时间,但软件通常将此条件设置为继承的采样时间或对连续采样时间规范的更改。在使用固定步长求解器的系统中,固定小步采样时间相当于最快的离散速率。当使用固定步长求解器时,固定在小步长的采样时间被转换为最快的离散采样时间。

恒定采样时间

在Si金宝appmulink中,a常数是符号名称或表达式,只能在算法之外或通过监督控制更改其值。模块,其输出在模型正常执行期间不会改变,例如常数块,总是被认为是常数。

金宝appSimulink为这些块分配恒定的采样时间。它们运行块输出方法:

  • 在模拟开始时

  • 响应环境中的运行时更改,例如调优参数

对于固定采样时间,块采样时间分配为(正0)

对于允许恒定采样时间的块,该块不能有连续或离散状态,也不能驱动有条件执行的子系统的输出端口。有关更多信息,请参见使用已启用的子系统

Simu金宝applink块库包括几个块,其端口可以以不同的采样速率产生输出,例如MATLAB的s函数块,二级MATLAB s函数Block和C s函数块。这些块的某些端口可以具有恒定的采样时间。

可变采样时间

使用可变采样时间的块具有块指定的隐式采样时间参数。该块告诉软件何时执行。编译后的样本时间为[2T签证官),T签证官是唯一的变量偏移量。

达到调度器Block和脉冲发生器两个块都有可变采样时间。变量采样时间只支持变量步长求解器。金宝app的达到调度器固定步骤求解器不支持Blo金宝appck。当您使用固定步解算器来模拟包含脉冲发生器块,该块指定一个离散采样时间。

若要了解如何编写使用可变采样时间的自己的块,请参见C MEX s -函数示例

可控采样时间

您可以配置一个块,以使用具有分辨率的可控采样时间T基地T基地块执行之间允许的最小时间间隔。设置T基地在你自己的C s函数块,使用ssSetControllableSampleTime函数。

当一个块使用可控的采样时间时,您可以动态地配置块的执行时间n的倍数T基地.下一次执行块的时间为

T下一个nT基地+T

你可以设置n在你的C s函数块,使用ssSetNumTicksToNextHitForControllableSampleTime函数。

触发采样时间

如果一个块在一个触发的子系统中,比如一个函数调用子系统或启用的子系统,块可以是常量,或者有一个触发的采样时间,异步函数调用除外。不能显式指定触发的采样时间类型。要在编译期间实现触发采样时间,请将块采样时间设置为inherited (1).然后,软件确定在模拟过程中块执行的具体时间。

异步采样时间

异步采样时间类似于触发采样时间。在这两种情况下,您都需要指定继承的采样时间,因为Simulink引擎不会定期执行该块。金宝app相反,运行时条件决定块何时执行。对于异步采样时间,s函数进行异步函数调用。

这些样本时间类型之间的差异是:

  • 只有函数调用子系统可以有异步采样时间。看到使用函数调用子系统

  • 函数调用信号的源是一个具有选项的s函数SS_OPTION_ASYNCHRONOUS

  • 当虚拟块连接到异步s函数或异步函数调用子系统时,也会发生异步采样时间。

  • 异步采样时间对于某些代码生成应用程序非常重要。看到异步事件(金宝app仿真软件编码器)

  • 采样时间为 1 n

有关如何使用块为异步事件处理建模和生成代码的说明,请参见速率转换和异步块(金宝app仿真软件编码器)

相关的话题