メインコンテンツ

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

CAN Log

受信したCANメッセージを記録する

  • CAN Log block

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

説明

CAN Log ブロックは、CAN ネットワークからの CAN メッセージ、またはブロックの入力ポートに送信されたメッセージを .mat ファイルに記録します。保存したメッセージを MATLAB® にロードしてさらに解析したり、別の Simulink® モデルにロードしたりできます。

CAN Log ブロックを Simulink 入力ポートからログを記録するように構成します。詳細については、CAN メッセージのロギングと再生を参照してください。

CAN Log ブロックは、指定されたファイル名に現在の日付と時刻を追加し、繰り返しログ記録するための一意のログ ファイルを作成します。

Simulink ブロックを使用して記録されたメッセージを MATLAB コマンド ウィンドウで使用する場合は、canMessage を使用してメッセージを正しい形式に変換します。

メモ

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

メモ

同じ PEAK-System デバイス チャネルを使用するモデルでは、複数の CAN Log ブロックを使用することはできません。

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

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

CAN Log ブロックは、必要なソース コードと依存する共有ライブラリをグループ化するために、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 Msg 入力ポートは、メッセージのログ記録元 パラメータが Input port に設定されている場合に使用できます。別のブロックからの入力を、タイプ CAN_MESSAGE_BUSCAN_MESSAGE または Simulink 信号バスとして提供します。

データ型: CAN_MESSAGE | CAN_MESSAGE_BUS

パラメーター

すべて展開する

CAN メッセージを記録するファイルの名前とパスを入力するか、参照 をクリックしてファイルの場所を参照します。

モデルは、ログ ファイル名に現在の日付と時刻を YYYY-MMM-DD_hhmmss の形式で追加します。繰り返しログに記録する場合にファイルを区別するための一意の名前を指定します。

CAN メッセージ情報を保持する MAT ファイルに保存される変数の名前を指定します。

選択したデバイスまたはポートからこのブロックが記録できるメッセージの最大数を指定します。指定する値は正の整数である必要があります。デフォルト値は 10000 メッセージです。ログ ファイルには、指定された最大数までの最新のメッセージが保存されます。

ブロックによって記録されるメッセージのソースを選択します。CAN バス ネットワークからのメッセージを記録するには、CAN Bus を選択し、デバイス を指定します。モデル内の別のブロックからのメッセージを記録するには、ブロックに入力ポートを追加する Input port を選択します。

メッセージを記録する CAN ネットワーク上のデバイスを選択します。このフィールドは、メッセージのログ記録元 オプションに CAN Bus を選択した場合にのみ使用できます。

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

拡張機能

すべて展開する

バージョン履歴

R2011b で導入