メインコンテンツまでスキップ

LIN記述ファイルを使用してシミュレーション設定をインポートする

概要

マスターシミュレーションのスケジュールやスレーブシミュレーションのレスポンスデータは、 LIN記述ファイル(LDF) から設定をインポートすることが可能です。
これにより、スケジュールやレスポンスデータを入力する手間を軽減できます。

設定手順

マスタシミュレーション

マスタシミュレーションでは、LDFのスケジュール情報を、任意のスケジュールにインポートすることができます。

1. シミュレーションモードを選択する
メインメニューから「Simulation Window」を表示させ、「LIN Simulation Mode」に「Master Sim.」を選択します。

Select Master Sim.

2. インポート先のスケジュールを選択する
「Schedule」タブのSchedule Listから、LDFのスケジュール情報をインポートしたいスケジュールを選択します。

Select Schedule of Destination

3. LDFを読み込む
「Schedule」タブのMenuボタンをクリックして表示されるメニューから「Import From LDF」を選択します。
これによりファイルダイアログが表示されますので、読み込み対象のLDFファイルを選択します。

Import From LDF

4. インポートするスケジュール情報を選択する
「Schedule Import」ダイアログが表示されますので、「Schedule Table List」からインポートするスケジュール情報を選択します。
「Frame List」には、選択したスケジュール情報のフレームリストが表示されます。

Select Schedule Table

5. スケジュール情報をインポートする
「Schedule Import」ダイアログの「Import」ボタンをクリックすると、手順4で選択したスケジュール情報が、手順2で選択したスケジュールにインポートされます。

Import Schedule Table
ヒント

インポート先のスケジュールでインポート前に登録されていたフレーム情報は、全て削除されます。

スレーブシミュレーション

スレーブシミュレーションでは、LDFのスレーブノードの情報に含まれるレスポンス設定をインポートすることができます。

1. シミュレーションモードの選択
メインメニューから「Simulation Window」を表示させ、「LIN Simulation Mode」に「Slave Sim.」を選択します。

Select Slave Sim.

2. LDFを読み込む
Menuボタンをクリックして表示されるメニューから「Import From LDF」を選択します。
これによりファイルダイアログが表示されますので、読み込み対象のLDFを選択します。

Import From LDF

3. インポートするスレーブノードを選択する
「Response Import」ダイアログが表示されますので、「Slave Node List」からインポートするスレーブノードを選択します。
「Response List」には、選択したスレーブノードのレスポンスリストが表示されます。

Select Slave Node

4. レスポンスリストをインポートする
「Response Import」ダイアログの「Import」ボタンをクリックすると、手順3で選択したスレーブノードのレスポンスリストがインポートされます。

Import Response List
ヒント

インポート前に登録されていたレスポンス情報は、全て削除されます。

LDFの読み込み仕様

本製品では、以下の要素を読み込み対象としています。

定義名必須内容
LIN_description_fileLDF宣言
Nodesノード定義
Signalsシグナル定義
Framesフレーム定義
Schedule_tablesスケジュールテーブル定義

読み込み対象要素詳細

LDF宣言

表記形式は以下の通りです。

LIN_description_file;

ノード定義

表記形式は以下の通りです。

Nodes {
ノード種別;
...
}

ノード種別は以下の2種類で、それぞれ表記形式が異なります。

ノード種別表記形式
マスタノードMaster:ノード名,メイン周期,ジッター時間;
スレーブノードSlaves:ノード名,...;
要素必須読み込み形式備考
ノード名文字列スレーブノードでは、カンマ区切りで複数のノード名を列挙できます。
同じノード名が複数存在する場合、最初に検出したものが有効となり、それ以外は無効となります。
メイン周期浮動小数点数浮動小数点数に変換できない場合、設定値は"0"となります。
本製品ではこの値は使用しません。
ジッター時間浮動小数点数浮動小数点数に変換できない場合、設定値は"0"となります。
本製品ではこの値は使用しません。
ヒント

ノード定義から取り込まれたノード名が2件未満の場合はエラーとなります。

シグナル定義

表記形式は以下の通りです。

Signals {
シグナル名:データ長(bit),初期値,レスポンスノード,受信ノード,...;
...
}
要素必須読み込み方式備考
シグナル名文字列同じシグナル名の設定が複数存在する場合、最初に検出した設定が有効となり、それ以外は無効となります。
データ長(bit)10進整数有効な値は以下のいずれかのみです。
1~16,24,32,40,48,56,64
以下のいずれかに該当する場合、そのシグナルは無効となります。
- 設定値を10進整数に変換できない場合
- 設定値が有効な値ではない場合
初期値10進整数または16進数先頭が0xで始まる場合は16進数、そうでない場合は10進整数として扱います。
以下のように1バイトずつカンマで区切った形式にすることも可能です。
{0x11,0x22,0x33,0x44}
設定値を10進整数または16進数に変換できない場合、設定値は"0"となります。
レスポンスノード文字列ノード定義でこのノード名が取り込まれていなかった場合、そのシグナルは無効となります。
受信ノード文字列ノード定義でこのノード名が取り込まれていなかった場合、そのシグナルは無効となります。

フレーム定義

表記形式は以下の通りです。

Frames {
フレーム名:ID,レスポンスノード(,DL){
シグナル名,データ位置(bit);
シグナル名,データ位置(bit);
...
}
}
要素必須読み込み方式備考
フレーム名文字列同じフレーム名の設定が複数存在する場合、最初に検出した設定が有効となり、それ以外は無効となります。
ID10進整数または16進数頭が0xで始まる場合は16進数、そうでない場合は10進整数として扱います。
以下のいずれかに該当する場合、そのフレームは無効となります。
- 設定値を10進整数または16進数に変換できない場合
- 設定値が0(00H)~63(3FH)の範囲にない場合
レスポンスノード文字列ノード定義でこのノード名が取り込まれていなかった場合、そのフレームは無効となります。
DL10進整数設定値を10進整数に変換できない場合、そのフレームは無効となります。
シグナル名文字列シグナル定義でこのシグナル名が取り込まれていなかった場合、そのフレームは無効となります。
データ位置(bit)10進整数設定値を10進整数に変換できない場合、そのフレームは無効となります。
ヒント

フレーム定義から取り込まれたフレームが一件も無い場合はエラーとなります。

スケジュールテーブル定義

表記形式は以下の通りです。

Schedule_tables{
テーブル名 {
フレーム名 delay ディレイ時間;
...
}
...
}
要素必須読み込み形式備考
テーブル名文字列同じテーブル名の設定が複数存在する場合、最初に検出した設定が有効となり、それ以外は無効となります。
フレーム名文字列フレーム定義でこのフレーム名のフレーム情報が取り込まれていない場合、そのフレームは無効となります。
ディレイ時間10進整数本製品ではディレイ時間の単位はミリ秒固定です。設定値を10進整数に変換できない場合、そのフレームは無効となります。
ヒント

スケジュールに有効なフレームが一件も存在しない場合、そのテーブル名は無効となります。