Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

Function-Call Generator

サブシステムまたはモデルの実行を制御する関数呼び出しイベントを提供

  • ライブラリ:
  • Simulink / Ports & Subsystems

  • Function-Call Generator block

説明

Function-Call Generator ブロックは、Function-Call Subsystem または関数呼び出しモデルを [サンプル時間] パラメーターで指定したレートで実行する関数呼び出しイベントを提供します。各関数呼び出しブロックを各タイム ステップで複数回反復して実行するには、[反復回数] パラメーターを使用します。

複数の Function-Call Subsystem またはモデルを指定した順序で実行するには、Function-Call Generator ブロックを Function-Call Split ブロックと使用します。例については、Function-Call Split を参照してください。

端子

出力

すべて展開する

Function-Call Subsystem または関数呼び出しモデル (つまり、[トリガー タイプ][関数呼び出し] に設定された Trigger ブロックを含むサブシステムまたはモデル) の関数呼び出し入力端子に関数呼び出しイベントを送信します。

パラメーター

すべて展開する

関数呼び出しイベントの時間間隔を Function-Call Subsystem またはモデルに指定します。そのサブシステムまたはモデルの実際の呼び出し頻度がこのパラメーターが指定する時間間隔と異なる場合は、Simulink® でエラーが表示されます。

既定では、ブロックは時間間隔 1 を使用します。異なる間隔を設定するには、サンプル時間のタイプの表に基づいて有効なサンプル時間を入力するか、-1 を指定してモデルから時間間隔を継承します。

プログラムでの使用

ブロック パラメーター: sample_time
: 文字ベクトル
: '1' | スカラー表現 | ベクトル表現 | '-1'
既定の設定: '1'

このパラメーターの値は、ベクトルとすることができ、その場合、ベクトルの各要素は Function-Call Subsystem またはモデルを実行する回数を指定します。ベクトルが指定されている場合、ブロックは関数呼び出しイベントのベクトルを出力します。このベクトルは Demux ブロックを使用して個々の関数呼び出しイベントに分割され、これを使用して複数の Function-Call Subsystem またはモデルを駆動できます。

[反復回数][3 2] と指定し、このブロックの出力を、2 つの Function-Call Subsystem の制御端子に接続する Demux ブロックに接続すると仮定します。この場合、最初の Function-Call Subsystem は各タイム ステップで 3 回実行され、2 番目の Function-Call Subsystem は各タイム ステップで 2 回実行されます。

ただし、このブロックの出力を 1 つの Function-Call Subsystem またはモデルに接続する場合、Function-Call Subsystem またはモデルがタイム ステップごとに実行する合計回数は、ベクトル要素値の合計に等しくなります。上記の例では、[反復回数][3 2] に指定して、このブロックの出力を 1 つの Function-Call Subsystem に接続すると、結果として Function-Call Subsystem は各タイム ステップで 5 回実行されます。

設定

1

各タイム ステップ中に関数呼び出しを 1 回提供します。

整数

符号付きまたは符号なしの整数。タイム ステップごとに指定した回数の関数呼び出しを提供します。

プログラムでの使用

ブロック パラメーター: numberOfIterations
: 文字ベクトル
: '1' | '<integer>''<vector of integers>'
既定の設定: '1'

このパラメーターがオンに "なっていない" 場合、このブロックの出力は、接続先のブロックを駆動するために必要に応じてベクトルに拡張されます。たとえば、[反復回数]2 に設定されていて、[広範囲の出力を許可しない] がオンになっていない場合、そしてこのブロックの出力が、3 つの別個の Function-Call Subsystem に接続している Demux ブロックに接続されている場合、各 Function-Call Subsystem は各タイム ステップで 2 つの関数呼び出しイベントを受け取ります。このブロックの出力が複数のイベントをもつ Stateflow® チャートに接続している場合、同様の結果が発生します。これらの状況で [広範囲の出力を許可しない] がオンになっている場合、Simulink でエラーが発生します。

このブロックの出力信号の暗黙的な拡張を回避するには、このパラメーターをオンにします。

このブロックの出力信号の暗黙的な拡張を適宜許可するには、このパラメーターをオフにします。

プログラムでの使用

ブロック パラメーター: DisallowWideOutput
: 文字ベクトル
: 'off' | 'on'
既定の設定: 'off'

ブロックの特性

データ型

直接フィードスルー

いいえ

多次元信号

いいえ

可変サイズの信号

いいえ

ゼロクロッシング検出

いいえ

拡張機能

C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。

R2006a より前に導入