メインコンテンツ

このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。

CAN FD Replay

記録されたCAN FDメッセージを再生する

  • CAN FD Replay block

ライブラリ:
Vehicle Network Toolbox / CAN FD Communication

説明

CAN FD Replay ブロックは、.mat ファイルから CAN ネットワークまたはバス信号として Simulink® に記録されたメッセージを再生します。Simulink バス オブジェクトの詳細については、「合成インターフェイス (Simulink)」を参照してください。ネットワークに再生するには CAN FD Configuration ブロックが必要です。

MATLAB® コマンド ウィンドウに記録されたメッセージを Simulink モデルで再生するには、canMessageReplayBlockStruct を使用してメッセージを互換性のある形式に変換し、結果を別のファイルに保存します。詳細については、CAN メッセージのロギングと再生を参照してください。

メモ

このブロックを使用するには、Vehicle Network Toolbox™ と Simulink ソフトウェアの両方のライセンスが必要です。

再生タイミング

ブロックは、元のタイムスタンプを使用してメッセージを再生し、シミュレーション時間 (通常のシミュレーションの場合) またはウォールクロック時間 (物理ネットワークへの再生の場合) と同期します。具体的には、Simulink ソルバーが 1 つのタイム ステップを進めると、ブロックはそのタイム ステップに属するタイムスタンプを持つメッセージを送信します。したがって、タイムスタンプがシミュレーションの時間範囲と一致していることが重要です。シミュレーションの開始時間を 0 に設定し、メッセージのタイムスタンプをシフトして初期タイムスタンプが 0 になるようにすることをお勧めします。

詳細については、開始時間 (Simulink) および例 CAN FD メッセージのロギングと再生 を参照してください。

その他のサポートされている機能

  • CAN FD Replay ブロックは、Simulink アクセラレータ モードの使用をサポートします。この機能を使用すると、Simulink モデルの実行を高速化できます。この機能の詳細については、高速化 (Simulink) を参照してください。

  • CAN FD Replay ブロックは、必要なソース コードと依存する共有ライブラリをグループ化するために、packNGo 関数とともにコード生成の使用をサポートします。

コード生成

Vehicle Network Toolbox Simulink ブロックを使用するとコードを生成でき、これらのブロックを含むモデルをアクセラレータ モード、ラピッド アクセラレータ モード、外部モード、およびデプロイ モードで実行できるようになります。

Simulink Coder を使用したコード生成

Vehicle Network Toolbox、Simulink Coder™、および Embedded Coder® ソフトウェアを一緒に使用して、モデルの実装に使用できるコードをホスト側で生成できます。コード生成の詳細については、生成されたコードのコンパイル (Simulink Coder) を参照してください。

共有ライブラリの依存関係

ブロックは移植性が制限されたコードを生成します。ブロックは、DLL などの事前コンパイルされた共有ライブラリを使用して、特定の種類のデバイスの I/O をサポートします。このブロックを使用すると、Simulink Coder でサポートされている packNGo 関数を使用して、モデルのビルド情報を設定および管理できます。packNGo (Simulink Coder) 関数を使用すると、モデル コードと依存する共有ライブラリを zip ファイルにパッケージ化して展開できます。ターゲット システムに MATLAB がインストールされている必要はありませんが、ターゲット システムは MATLAB でサポートされている必要があります。

packNGo を設定するには:

set_param(gcs,'PostCodeGenCommand','packNGo(buildInfo)');

この例では、gcs は現在構築するモデルです。モデルをビルドすると、モデル名と同じ名前の zip ファイルが作成されます。この zip ファイルを別のマシンに移動し、そこで zip ファイル内のソース コードをビルドして、MATLAB および Simulink から独立して実行できる実行可能ファイルを作成できます。生成されたコードは C コンパイラと C++ コンパイラの両方でコンパイルされます。詳細については、コード コンパイルのカスタマイズ (Simulink Coder)を参照してください。

メモ

Linux® プラットフォームでは、ライブラリを解凍するフォルダーを環境変数 LD_LIBRARY_PATH に追加する必要があります。

端子

出力

すべて展開する

この出力ポートには、特定のタイムステップで記録されたパックされた CAN FD メッセージが含まれており、タイプ CAN_FD_MESSAGE_BUS の信号バスとして出力されます。

データ型: CAN_FD_MESSAGE_BUS

このポートは、ブロックが新しいメッセージを受信したときに、Function-Call subsystem にトリガーを提供します。これを Function-Call Subsystem (Simulink) に接続してメッセージをアンパックし、処理することができます。

データ型: function-call event

パラメーター

すべて展開する

ヒント

CAN FD Receive ブロック パラメータを設定する前に、モデル内の CAN FD Configuration ブロックを設定します。

再生可能なログに記録された CAN FD メッセージが含まれる MAT ファイルのパスと名前を指定します。参照 をクリックすると、ファイルの場所を参照してファイルを選択できます。

CAN FD メッセージを保持する MAT ファイルに保存されている変数を指定します。

モデル内でメッセージを再生する回数を指定します。Inf を含む任意の正の整数を指定できます。Inf を指定すると、シミュレーションが停止するまでメッセージが継続的に再生されます。

モデルが CAN FD ネットワークまたは出力ポートにメッセージを再生するかどうかを指定します。ネットワークの場合は、デバイス も指定する必要があります。

メッセージを再生する CAN FD ネットワーク上のデバイスを選択します。Replay message to パラメータに Output port を選択した場合、このフィールドは使用できません。

シミュレーション中のブロックのサンプリング時間を指定します。この値は、シミュレーション中に CAN FD Replay ブロックが実行される頻度を定義します。ブロックが Triggered Subsystem 内にある場合、またはサンプル時間を継承する場合は、サンプル時間として –1 を指定できます。サンプル時間には MATLAB 変数を指定することもできます。デフォルト値は 0.01 シミュレーション秒です。詳細については、ハードウェアインターフェースモデルのタイミングを参照してください。

拡張機能

すべて展開する

バージョン履歴

R2018b で導入