给定的块以一个离散采样时间,Simulink的万博1manbetx®执行在时间块输出或更新方法
其中样品的时间段 总是大于零且小于模拟时间, 。周期(数 )是必须满足的整数:
作为模拟进展,Simulink中在每个这些固定时间间万博1manbetx隔的计算块仅输出一次 。这些仿真时间,在该执行的Simulink对于给定的采样时间的块的输万博1manbetx出的方法,被称为采样时间点击。离散采样时间是对于哪个样品时间命中是已知的唯一类型先验。
如果您需要延迟初始样本命中时,你可以定义一个偏移量, 。
该单位延迟块是具有离散采样时间的块的例子。
不同于离散采样时间,连续样本命中倍分为主要时间的步骤和较小的时间步长,其中,所述次要步骤代表的主要步骤细分。解算器产生在每个主要时间步的结果。它使用在较小的时间步的结果,以提高结果的准确性在大时间步长。
求解你的ODE选择集成了模拟开始时给定的主要或次要时间步骤中的所有连续状态。求解器确定的次要步骤的时间,并使用在较小的时间步骤的结果,以提高结果的准确性在大的时间步骤。但是,你看到的只是在主要时间步长的块输出。
要指定的块,如衍生物块,是连续的,输入[0,0]
要么0
在里面采样时间块对话框的字段。
如果一个块的采样时间被设定为[0,1
],块变得固定在小调步。对于这种设置,Simulink中不执万博1manbetx行在次要时间步长的块;更新只在主要的时间步骤发生。这个过程消除,其输出主要步骤之间不能改变块的不必要的计算。
虽然可以显式地设置一个块要被固定在小调步,更典型的Simulink设置该条件为或者继承的采样时间或作为改动的用户规范万博1manbetx0
(连续)。当使用固定的步长求解器此设置等同于,并因此转换成,最快的离散速率。
如果一个块的采样时间被设定为[-1,0]
要么-1
时,采样时间为遗传和Sim万博1manbetxulink确定用于基于所述模型内的块的上下文块的最佳采样时间。万博1manbetxSimulink中进行编译过程中这个任务;原来继承的设置不会出现在编译模型。因此,你永远看不到的采样时间传说继承([-1,0])。(看到查看采样时间信息。)
存在其中的采样时间被默认继承(-1)的一些块。对于这些块,除非它被设置为一个非继承值的参数是不是块对话框中可见。这些块的例子包括获得和取整函数块。作为一个良好的建模习惯,不改变采样时间参数这些块。欲了解更多信息,请参阅对于哪些取样时间块,不推荐。
所有继承块都受到采样时间传播的过程中,如在讨论如何传播影响继承样品时报
在Si万博1manbetxmulink中,常量是一个象征性的名称或表达式,其价值只能在外面算法或通过监控改变。块,像块恒定,其输出的模型的正常执行期间不改变,总是被认为是恒定的。
万博1manbetxSimulink的分配常数采样时间到这些块。他们跑他们的块输出方法:
在一个模拟的开始。
响应于环境中的运行时的变化,如调谐参数。
对于恒定的采样时间,块采样时间分配是[INF,0]
要么[INF]
。
对于一个块,以允许恒定的采样时间,在这些条件成立:
该块没有连续的或离散的状态。
该块没有驱动条件执行子系统的输出端口(参见使用支持子系统)。
在Sim万博1manbetxulink模块库包括几个块,如MATLAB S-功能块,则Level-2的MATLAB S-功能块,并且(C S) - 功能块,其端口可以在不同的采样速率产生输出。这是可能的一些这些块的端口以具有恒定的采样时间。
使用可变的采样时间块具有一个隐含的采样时间
参数,该块指定;该块告诉Simulink的时候运万博1manbetx行它。编译后的采样时间为[-2,
]其中ŤVO
是一个独特的可变偏移。ŤVO
该脉冲发生器块是具有可变采样时间的块的例子。由于Simu万博1manbet万博1manbetxxlink中支持可变步距求解程序变量的采样时间而已,脉冲发生器块指定如果使用固定的步长求解器的离散采样时间。
要了解如何编写自己的块使用可变采样时间,请C MEX S-函数示例。
块可以被配置为使用一个可控的采样时间,分辨率Ť基础。Ť基础是块执行之间的最小可允许的时间间隔。设置Ť基础在自己的C S-功能块,使用ssSetControllableSampleTime
。
使用可控的采样时间的块可被动态地设定为在执行ñ的倍数Ť基础。块的下一次执行的时间为
Ť下一个=ñŤ基础+Ť
您可以设置ñ在C S-功能块使用ssSetNumTicksToNextHitForControllableSampleTime
。
如果一个块是内部的触发型的(例如,函数调用,启用并触发,或迭代)子系统,该块可以是恒定的或有一个触发采样时间。你不能明确指定触发采样时间类型。然而,要实现在编译过程中触发类型,你必须块采样时间设置为继承(-1)。万博1manbetx的Simulink然后确定在该模拟过程中块计算其输出的特定次。一个例外是如果子系统是一个异步函数调用,以下部分所讨论的。
异步采样时间是类似于触发采样时间。在这两种情况下,有必要指定继承采样时间,因为Simulink的发动机不定时执行块。万博1manbetx取而代之的是,一个运行时间条件确定块执行时。对于一个异步采样时间的情况下,一个S-功能使一个异步函数调用。
这些采样时间类型之间的区别是:
对于如何使用块模式,并为异步事件处理代码的说明,请参阅速率转换和异步块(万博1manbetxSimulink的编码器)。