Main Content

extmodeEvent

エクスターナル モードのイベント トリガー

説明

errorCode = extmodeEvent(eventId, simulationTime) は、イベントの発生のエクスターナル モードの抽象化レイヤーを通知します。

eventId はモデルのサンプル時間 ID です (たとえば基本レートは 0、最初のサブレートは 1)。

この関数は、次のように動作します。

  • 指定のサンプル時間に関連付けられているすべての信号をサンプリングする。

  • 新しいパケット バッファーに信号値を格納する。

  • 後で開発用コンピューターに送信するために、パケット バッファーを基になるトランスポート層へ渡す。

この関数をその他のエクスターナル モードの関数と共に使用することにより、エクスターナル モード シミュレーション時の Simulink® とターゲット アプリケーションとの間の通信を有効にします。

信号値の正確なサンプリングのために、対応するサンプル時間 ID について関数を model_step() の直後に実行します。関数はスレッドセーフなので、別個のスレッド内でさまざまなサンプル時間 ID をもつ関数を呼び出すことができます。

関数 extmodeBackgroundRun は、信号値の開発用コンピューターへの送信を実行します。

エクスターナル モード通信の設定

この関数を関連する関数と共に使用した、エクスターナル モード通信の提供方法を示す擬似コードの例については、エクスターナル モード抽象化レイヤーを参照してください。

入力引数

すべて折りたたむ

モデルのサンプル時間 ID (基本レートは 0、最初のサブレートは 1、2 番目のサブレートは 2 など)。

イベントが発生する時間。

出力引数

すべて折りたたむ

エラー コード。次のいずれかの値をもつ extmodeErrorCode_T 列挙型として返されます。

  • EXTMODE_SUCCESS (0) –– エラーは検出されませんでした。

  • EXTMODE_INV_ARG (-1) –– 引数が無効です。

  • EXTMODE_NOT_INITIALIZED (-9) –– エクスターナル モードはまだ初期化されていません。

  • EXTMODE_NO_MEMORY (-10) –– ターゲット ハードウェアには利用可能なメモリはありません。

バージョン履歴

R2018a で導入