主要内容

函数调用生成器

提供函数调用事件来控制子系统或模型的执行

  • 库:
  • Simulink / Ports &子系统

  • 函数调用生成器块

描述

函数调用生成器块提供函数调用事件,以指定的速率执行函数调用子系统或函数调用模型样品时间参数。函数调用子系统或函数调用模型是一个包含触发块的触发类型参数设置为函数调用

要在每个时间步上多次迭代执行每个函数调用子系统或函数调用模型,可以使用的迭代次数参数。

要按指定的顺序执行多个函数调用子系统或函数调用模型,请使用函数调用生成器块和一个函数调用分裂块。举个例子,见函数调用分裂

要间歇性地执行函数调用子系统或函数调用模型,即不是在每个时间步上,请选择显示启用端口参数。然后,您可以使用enable端口的输入来控制块何时输出函数调用事件。实际上,你可以根据需要打开或关闭块。

港口

输入

全部展开

只有当该端口的输入为正数时,块才输出函数调用事件。

依赖关系

要启用此端口,请选择显示启用端口复选框。

输出

全部展开

将函数调用事件发送到函数调用子系统或函数调用模型的函数调用输入端口。

参数

全部展开

指定函数调用子系统或函数调用模型的函数调用事件之间的时间间隔。如果子系统或模型的实际调用率与此参数指定的时间间隔不同,则Simulink®显示一个错误。

默认情况下,块使用的时间间隔为1。要设置不同的间隔,根据中的表格输入有效的采样时间采样时间类型,或指定1从模型中继承时间间隔。

依赖关系

若要启用此参数,请清除显示启用端口复选框。如果您选择显示启用端口,采样时间自动设置为1(继承)。

编程使用

块参数:sample_time
类型:特征向量
:' 1 '|标量表达式|向量表达式|' 1 '
默认的:' 1 '

这个参数的值可以是一个向量,其中向量的每个元素指定了执行函数调用子系统或模型的次数。如果指定了一个向量,那么块输出一个函数调用事件向量,它可以使用a将其拆分为单个的函数调用事件多路分配器块,用于驱动多个函数调用子系统或模型。

假设您指定的迭代次数(3 - 2)并将此块的输出连接到a多路分配器Block,连接两个函数调用子系统的控制端口。在这种情况下,第一个函数调用子系统在每个时间步执行3次,第二个函数调用子系统在每个时间步执行2次。

但是,如果将此块的输出连接到单个函数调用子系统或模型,则每个时间步执行函数调用子系统或模型的总次数等于向量元素值的和。因此,在上面的例子中,指定的迭代次数(3 - 2)并且将这个块的输出连接到单个函数调用子系统,会导致函数调用子系统在每个时间步上执行5次。

设置

1

在每个时间步骤中提供一次函数调用。

整数

有符号或无符号整数。在每个时间步提供指定的函数调用次数。

编程使用

块参数:numberOfIterations
类型:特征向量
:' 1 '|“整数> <”“整数> <向量”
默认的:' 1 '

除非选择此参数,否则此块的输出将展开为一个向量,如有必要,以驱动其所连接的块。例如,如果的迭代次数被设置为2不允许宽输出,且此块的输出连接到多路分配器Block,它依次连接到三个独立的函数调用子系统,那么每个函数调用子系统在每个时间步接收两个函数调用事件。如果这个块的输出连接到Stateflow,则会出现类似的结果®多事件图表。如果不允许宽输出在这些情况下,Simulink产生一个错误。

选择此参数可防止输出信号的隐式扩展。

清除此参数,允许在适当时隐式扩展输出信号。

编程使用

块参数:DisallowWideOutput
类型:特征向量
:“关闭”|“上”
默认的:“关闭”

选择此参数为块添加一个控制信号输入端口。只有当控制信号输入端口的值为正数时,块才输出函数调用事件。

清除此参数可移除控制信号输入端口。该块在每个时间步上输出函数调用事件。

编程使用

块参数:ShowEnablePort
类型:特征向量
:“关闭”|“上”
默认的:“关闭”

块特征

数据类型

直接引线

没有

多维信号

没有

适应信号

没有

讨论二阶导数过零检测

没有

扩展功能

C / c++代码生成
使用Simulink®Coder™生成C和c++代码。

版本历史

之前介绍过的R2006a

Baidu
map