Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
www.etas.com
INCA-MIP V7.3ユーザーズガイド
著作権について
本書のデータを ETAS GmbH からの通知なしに変更しないでください。ETAS GmbH は、本書に関してこれ以外の一切の責任を負いかねます。本書に記載さ
れているソフトウェアは、お客様が一般ライセンス契約あるいは単一ライセンス
をお持ちの場合に限り使用できます。ご利用および複写はその契約で明記されて
いる場合に限り、認められます。
本書のいかなる部分も、ETAS GmbH からの書面による許可を得ずに、複写、転
載、伝送、検索システムに格納、あるいは他言語に翻訳することは禁じられてい
ます。
© Copyright 2020 ETAS GmbH, Stuttgart, Germany
本書で使用する製品名および名称は、各社の(登録)商標あるいはブランドで
す。
INCA-MIP V7.3 - ユーザーズガイド R02 JP - 06.2020
ETAS INCA-MIP V7.3 - ユーザーズガイド 目次
目次
1 はじめに . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1 安全に関する注意事項. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2 本書について . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3 本書内の記述について. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4 INCA 用語集 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2 INCA-MIP アドオンのインストール . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.1 システム要件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2 INCA-MIP のインストール . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3 MATLAB Toolbox ディレクトリ用キャッシュの更新 . . . . . . . . . . . . . . . . . . . . . . . 11
2.4 MATLAB Toolbox ディレクトリ用キャッシュの無効化 . . . . . . . . . . . . . . . . . . . . . 11
2.5 ソフトウェアのライセンス管理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3 API 関数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.1 INCA-MIP API のサンプルファイル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.2 一般的な関数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163.2.1 INCA-MIP インターフェースのメッセージ ID 取得 . . . . . . . . . . . . . . . . . . 163.2.2 スクリプト実行中のメッセージ表示 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183.2.3 有効な INCA-MIP ライセンスの確認. . . . . . . . . . . . . . . . . (拡張コマンド) 183.2.4 インストール済み INCA バージョンに関する情報の取得 . . . . . . . . . . . . . 183.2.5 インストール済みアドオンに関する情報の取得 . . . . . . . . . . . . . . . . . . . . 193.2.6 INCA バージョンの取得 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193.2.7 INCA プロパティの取得. . . . . . . . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 20
3.3 初期化処理に使用される関数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203.3.1 INCA を開く . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203.3.2 INCA を閉じる . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 213.3.3 データベースを開く . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213.3.4 データベースのインポート . . . . . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 213.3.5 データベースアイテムの読み込み. . . . . . . . . . . . . . . . . . . (拡張コマンド) 223.3.6 デバイスにプロジェクトとデータセットを割り当てる . . (拡張コマンド) 233.3.7 実験を開く . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233.3.8 実験のリセット . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243.3.9 デバイスの取得. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 243.3.10 デバイスプロパティの取得 . . . . . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 24
3.4 測定と記録に使用される関数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253.4.1 測定変数名の取得. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 263.4.2 測定ラスタの取得. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 263.4.3 測定変数を実験に追加する . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263.4.4 測定の開始 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283.4.5 測定の終了 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283.4.6 記録のプロパティの取得 . . . . . . . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 293.4.7 記録のプロパティの設定 . . . . . . . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 303.4.8 記録モードの取得. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 323.4.9 記録モードの設定. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 33
3
ETAS INCA-MIP V7.3 - ユーザーズガイド 目次
3.4.10 記録の開始 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333.4.11 記録の終了 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343.4.12 データの読み込みモードの設定(オンライン・オフライン) . . . . . . . . . . 343.4.13 測定データの取得. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353.4.14 リングバッファのリセット . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373.4.15 ハードウェアステータスの取得. . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 373.4.16 トリガの設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 383.4.17 マニュアルトリガの発行 . . . . . . . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 403.4.18 記録ステータスの取得 . . . . . . . . . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 403.4.19 測定変数リストの取得 . . . . . . . . . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 40
3.5 適合に使用される関数. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413.5.1 適合変数名の取得. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 413.5.2 適合変数の追加. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423.5.3 適合値の取得 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423.5.4 適合値の変更(適合の実行) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443.5.5 データセットをデバイスに割り当てる . . . . . . . . . . . . . . . (拡張コマンド) 463.5.6 デバイスのデータセットリストを取得 . . . . . . . . . . . . . . . (拡張コマンド) 463.5.7 適合モードの設定. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 473.5.8 グループデバイス. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 483.5.9 DCM ファイルの書き込み . . . . . . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 48
3.6 メモリページ管理に使用される関数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483.6.1 メモリページの切り替え . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483.6.2 カレントページの取得 . . . . . . . . . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 493.6.3 書き込み保護チェック . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493.6.4 メモリページのダウンロード . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493.6.5 メモリページのコピー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503.6.6 不一致部分のダウンロード . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503.6.7 メモリページのアップロード . . . . . . . . . . . . . . . . . . . . . . (拡張コマンド) 50
3.7 API 関数の応用例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4 スタンドアロン実行ファイルの作成と配布 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.1 スタンドアロン実行ファイルの作成と配布( MATLAB R13 コンパイラ使用時). . 534.1.1 M ファイルのコンパイル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534.1.2 スタンドアロン実行ファイルの配布 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
4.2 スタンドアロン実行ファイルの作成と配布(MATLAB R14 以降のコンパイラ使用時) 544.2.1 M ファイルのコンパイル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544.2.2 スタンドアロン実行ファイルの配布 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5 お問い合わせ先. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
索引 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4
ETAS INCA-MIP V7.3 - ユーザーズガイド 1. はじめに
1 はじめに
INCA-MIP アドオン(INCA MATLAB 統合パッケージ) は、MATLAB を用いて
INCA の機能を制御するための API(アプリケーションプログラミングインター
フェース)です。クライアントである MATLAB がこれらの API を用いてサー
バーである INCA のリソースにアクセスします。
下図は、INCA-MIP API の典型的な使用例を示すものです。INCA と ECU 間の
データアクセスには ETK が使用されています。
INCA-MIP API を用いることにより、以下のような INCA の機能を MATLAB か
ら実行することができます。
メモリページ管理
メモリページの切り替え、ECU へのメモリページのダウンロードなどが
行えます。
適合
INCA の実験に含まれるすべての適合変数を適合することができます。値
は、変数ごとに読み取って変更でき、カーブやマップが参照する軸ポイン
トディストリビューションの書き換えも可能です。
測定
INCA の実験に含まれるすべての測定変数を読み取ることができ、測定の
開始や停止を MATLAB からリモート操作することもできます。ハード
ウェアステータスなどの各種情報も取得可能です。 適化された INCA - MIP インターフェースのデータ転送処理により、測定データの高速転送
が実現されています。
INCA は、測定変数と適合変数の値を倍精度の浮動小数点型で送信するので、
MATLAB 側で値を変換する必要がありません。
MATLAB スクリプト(「M ファイル」と呼ばれます)から INCA-MIP API 関数
(以下「コマンド」とも呼ばれます)を呼び出すことにより、INCA の実験の全制
御フローを定義することができます。
5
ETAS INCA-MIP V7.3 - ユーザーズガイド 1. はじめに
1.1 安全に関する注意事項
INCA を使用する際は、必ず以下の注意事項を守ってください。
1.2 本書について
このユーザーズガイドは、INCA-MIP API の概念、インストール方法、使用方
法、さらに各 API 関数の機能と使用方法について説明するものです。本書には
MATLAB と INCA の基本概念や使用方法は記載されていません。
INCA-MIP API を使用するには、INCA と MATLAB についての基本知識が必要
です。また MATLAB スクリプトの使用方法についてもよく理解している必要が
あります。
1.3 本書内の記述について
本書の記述は、『INCA 入門ガイド』の記述方法に基づいています。それに加え、
各 API 関数の説明部分には以下のような記述方法が用いられています。
API 関数の名前は等間隔フォントのクーリエ体で記述されています。関数の入力
引数は小括弧で囲まれ、その中で省略可能なものは中括弧で囲まれています。
例 : 適合変数の値を読み込む
出力引数(戻り値):
警告
適合操作は、ECU、および ECU によって制御されるシステムの挙動に影響を
与えます。それによって車両の予期しない挙動が生じる可能性があり、その結
果、物理的に危険な状況が発生する恐れがあります。
適合操作は、充分に訓練を受けたユーザーのみが行ってください。
value = IncaGetCalibrationValue(deviceName, calibrationName {, start, size} {, valueType})
value 適合変数の現在の値。データのタイプは以下のとおりで
す。
• スカラ値: (1,1) の行列
• カーブ: (x,1)の行列
• マップ: (x,y)の行列
• 軸ポイントディストリビューション: (x,1)の行列
6
ETAS INCA-MIP V7.3 - ユーザーズガイド 1. はじめに
入力引数:
入力引数 valueTypeの説明部分にクーリエ体で書かれている 3 つの値(v、x、y)
は、 この引数として使用できる値を表します。 実際には、以下のように “' '” で
囲んで値を記述してください。
例:
1.4 INCA 用語集
本書で使用されている INCA の用語について、以下に簡単に説明します。
シグナル
シグナルは、INCA で測定される 1 つの測定変数を指します。各シグナル
には、データ型(論理値、整数、浮動小数点)、データ長(1、2、4、8)、
および変換式が定義されています。変換式は、物理値から実装値への変換
方法を定義したものです。
シグナルグループ
シグナルグループは複数のシグナルで構成され、1 つのシグナルグループ
は 1 つの測定ラスタで測定されます。
測定データ
1 回の測定作業において各測定ラスタで記録されたすべての測定値を指し
ます。複数のデータレコードから構成されます。
測定ラスタ
1 つのシグナルグループとして一連のシグナルを取り込むためのサンプリ
ングレート(測定周期)を表すものです。
複数のラスタを「マルチラスタ」として組み合わて使用することができま
す。マルチラスタは、使用したいラスタの名前を '+' という文字で連結す
るだけで簡単に定義することができます(例 : '10ms+100ms')。マル
チラスタを使用すると、新しい仮想ラスタが生成されます。1 つのシグナ
ルの測定は、1 つのラスタ、またはマルチラスタのいずれかでのみ行えま
す。
データレコード
データレコードは、各測定ラスタでデータ測定が 1 回行われるたびに生成
されます。1 レコードは、タイムスタンプと、1 つの測定ラスタのシグナ
ルグループに含まれるすべてのシグナル(測定変数)の値で構成されま
す。一連の測定処理内で生成される複数のレコードによって、1 つの測定
ラスタの測定データが構成されます。
devicename デバイス名
calibrationName 適合変数名
valueType 出力引数として受け取る値の種類を文字列で指定しま
す。この関数は、適合変数の値(デフォルト)またはブ
レイクポイントの X 座標値または Y 座標値を返します。
以下の設定が可能です。
• v: 値(デフォルト)
• x: カーブ/マップの X 座標値
• y: マップの Y 座標値
yMap = IncaGetCalibrationValue('anEtk', 'Map', 'y');
7
ETAS INCA-MIP V7.3 - ユーザーズガイド 1. はじめに
適合変数
適合変数は、適合作業において値の読み込みと書き込みが可能な変数で
す。適合変数のタイプには、スカラ値、配列、行列、カーブ、マップがあ
ります。カーブとマップが参照する軸ポイントディストリビューション
も、読み込みと書き込みが可能です。
デバイス
測定変数の値を一定の周期で取り込むことのできる測定用ハードウェアを
指します。一部のデバイスでは適合変数の適合を行うこともできます。た
とえば SMB デバイスは測定のみ可能ですが、ETK は測定と適合が可能で
す。
リングバッファ
INCA から MATLAB へ確実に測定データを転送するために、各測定ラス
タ(シグナルグループ)ごとに専用のリングバッファが使用されます。
INCA でオンライン測定または記録が行われている間、取得された測定
データは、自動的にリングバッファ内に保存されます。
リングバッファに保存されたタイムスタンプとデータを MATLAB に転送
するには、IncaGetRecordsコマンドを使用します。
リングバッファに保存される測定データはシグナルあたり 1M バイトに制
限されており、全体で約 8 秒間の測定データを保持することができます
が、この時間はサンプリングレートに応じて変わります。バッファが満杯
になると、データは古い順に上書きされます。データが上書きされて失わ
れてしまうのを防ぐには、周期的に IncaGetRecords を実行してくだ
さい。適切な周期は、通常 1 秒です。
IncaResetRecords コマンドを実行すると、すべての測定ラスタのリ
ングバッファ内に保存されたタイムスタンプとデータを消去することがで
きます。これにより、リングバッファに保存されていたデータはすべて 失われます。
INCAがデータを取得
INCAが
データを取得
MATLABインターフェース
IncaGetRecords
INCAがデータを取得
INCAがデータを取得
MATLABインターフェース
IncaResetRecords
8
ETAS INCA-MIP V7.3 - ユーザーズガイド 2. INCA-MIP アドオンのインストール
2 INCA-MIP アドオンのインストール
INCA-MIP は、INCA の機能を拡張するためのアドオン製品です。
MATLAB は、動的にリンクされる関数呼び出し(「MEX ファイル」と呼ばれま
す)を使用して他のアプリケーションと通信します。INCA-MIP API は一連の
MEX ファイルからなります。これらのファイルは、インストール時に MATLABプログラムディレクトリのサブディレクトリにコピーされます。
INCA-MIP に含まれる API 関数は、INCA-MIP Base という基本セットと、
INCA-MIP Extended という拡張セットの 2 つのセットに分かれています。基本
セットは本製品のインストール後すぐに使用できますが、拡張セットに含まれる
拡張コマンド(= 拡張 API 関数)を使用するには、ソフトウェアライセンスキー
が必要です。全 API 関数の一覧、および各関数が属するセット(拡張または基
本)は、第 3 章 「API 関数」の冒頭にまとめられています。
2.1 システム要件
INCA-MIP アドオンを使用するには、PC に INCA がインストールされている必
要があります。INCA のシステム要件については、『INCA インストールガイド』
を参照してください。
INCA にアクセスするための MATLAB スクリプトを開発する場合は、MATLABのフルライセンスが必要です。
INCA V7.3 用の INCA-MIP を使用するには以下のプログラムが必要です。
• INCA V7.3 SPx
インストールされた INCA のリリース番号が INCA-MIP アドオンパッケー
ジのリリース番号と一致していることを確認してください。
• MATLAB 64 ビットバージョンの 2015b 以降(MATLAB への統合インス
トールを行う場合)
サポートされている MATAB バージョンについての詳細な情報は、INCA サポー
ト窓口までお問い合わせください。
2.2 INCA-MIP のインストール
アドオンをインストールする際は、画面の指示に従って以下のいずれかのインス
トールタイプを選択します。
• MATLAB integrated installation(MATLAB 統合インストール)
1 つの特定のバージョンの MATLAB を使用して MATLAB スクリプトを
開発する場合は、このオプションを選択してください。
• Installation into ETASData
コンパイル済みの MATLAB スクリプトの実行のみを行う場合、または
PC 上にインストールされた複数バージョンの MATLAB から INCA-MIPを使用する場合は、このオプションを選択してください。詳しくは、10ページの操作手順を参照してください。
注記
本バージョンの INCA-MIP をインストールするには、PC に INCA V7.3(V7.3 SPx に含まれるバージョン)がインストールされている必要があ
りますが、インストール後は、すべての INCA V7.x バージョンとともに
この INCA-MIP を使用することができます(20 ページ「INCA を開く」 を参照)。
9
ETAS INCA-MIP V7.3 - ユーザーズガイド 2. INCA-MIP アドオンのインストール
操作手順 : INCA-MIP をインストールする:
1. PC に INCA がインストールされていること、およびその INCAのバージョンが本製品パッケージのバージョンに適合すること
を確認します。
2. INCA にアクセスするための MATLAB スクリプトを開発する場
合は、PC に MATLAB がインストールされていること、および
その MATLAB のリリース番号に本製品パッケージが対応して
いることを確認します。
3. PC で実行されているすべてのプログラムを終了します。
4. インストールファイルが収められている場所を開きます。イン
ストールは、社内規定に応じて、インストール DVD から直接行
う場合や、ネットワークドライブから行う場合があります。詳
しくは社内のツール管理者の方にお尋ねください
5. DVD を使用する場合は、DVD を PC の DVD ドライブに挿入す
ると、インストールプログラムが自動的に起動します。自動起
動しない場合、またはネットワークドライブからインストール
する場合は、それぞれの場所のルートにある
autostart.exeというプログラムをマニュアル操作で起動
します。
インストールプログラムが起動します。このプログラムには、
INCA、ツールとユーティリティ、ドキュメント、その他の情報
が含まれています。
6. メイン をクリックします。
7. INCA-MIP のインストールを選択します。
8. インストールプログラムの指示に従って PC に INCA-MIP をイ
ンストールするための設定を行います。
以下のウィンドウではインストールタイプを選択します。
9. PC にインストールされている 1 つのバージョンの MATLAB を
用いて INCA-MIP 用 MATLAB スクリプトを開発する場合は、
MATLAB integrated installation を選択します。
9. 以下のいずれかの条件に該当する場合は、Installation into ETASData を選択します。
10
ETAS INCA-MIP V7.3 - ユーザーズガイド 2. INCA-MIP アドオンのインストール
- 複数のバージョンの MATLAB で INCA-MIP を使用する
PC にインストールされた複数のバージョンの MATLAB か
ら INCA-MIP のコマンドを使用するには、各バージョンの
MATLAB ツールボックスディレクトリに ¥INCA-MIPサブ
ディレクトリをコピーしておく必要があります。MATLABのパスにディレクトリを追加する方法は、MATLAB のユー
ザードキュメントを参照してください。
- MATLAB R13 で作成されたスタンドアロンスクリプトの実
行のみを行い、スクリプトの開発は行わない
10.インストールプログラムの指示に従い処理を続行します。
操作手順 : INCA-MIP のライセンスを登録する:
拡張セットの API 関数を使用する場合はソフトウェアライセンスファイルが必要
です。
ライセンスについての詳しい情報は、2.5 項の「ソフトウェアのライセンス管
理」を参照してください。
2.3 MATLAB Toolbox ディレクトリ用キャッシュの更新
MATLAB インストール時に MATLAB ツールボックスディレクトリ用のキャッ
シュが有効に設定されていた場合は、INCA-MIP API をインストールした後にこ
のキャッシュを更新し、INCA-MIP API で使用されるファイルを MATLAB に登
録する必要があります。MATLAB V6 以降のバージョンをデフォルト設定でイン
ストールした場合はキャッシュは有効になっていて、それより前のバージョンで
は無効になっています。
MATLAB ツールボックスディレクトリ用キャッシュを更新する方法は、
MATLAB のユーザーマニュアルを参照してください。
2.4 MATLAB Toolbox ディレクトリ用キャッシュの無効化
INCA-MIP API を使用する際は、MATLAB ツールボックスディレクトリ用の
キャッシュは無効にしておくことをお奨めします。有効になっていると、INCA-MIP API や、新しく個別に追加されたスクリプトファイルが認識されなくなる場
合があります。
キャッシュが有効になっている場合、キャッシュを更新することによりファイル
を登録することができますが、予期しない不具合の発生を防ぐため、INCA-MIP API を使用する際は、できる限りキャッシュを無効にしておいてください。
MATLAB ツールボックスディレクトリ用キャッシュの有効/無効を切り替える
方法は、MATLAB のユーザーマニュアルを参照してください。
注記
INCA を操作するための INCA-MIP API コマンドを含むスタン
ドアロン実行ファイルを実行する場合、INCA-MIP は
ETASDataディレクトリにインストールしてください。この
場合、MATLAB のライセンスは必要ありません。ただしこの
実行ファイルを作成するには、MATLAB がインストールされ
た開発環境が必要です。詳しくは 53 ページの「スタンドアロ
ン実行ファイルの作成と配布」を参照してください。
11
ETAS INCA-MIP V7.3 - ユーザーズガイド 2. INCA-MIP アドオンのインストール
2.5 ソフトウェアのライセンス管理
INCA を使用するには、ライセンス契約に基づいて発行されたライセンスファイ
ルが必要です。このファイルは、社内のツール管理者の方から、または ETASホームページのセルフサービスポータルサイト(ÜííéWLLïïïKÉí~ëKÅçãLëìééçêíLäáÅÉåëáåÖ)から入手できます。ライセンスファイルのお申し込み時には、製品購
入時に ETAS から発行された「アクティベーション番号」が必要です。
ETAS 製品のライセンスの管理は、ETAS ライセンスマネージャで行います。こ
れを起動するには、Windows のスタートメニューから以下を選択します。
E → ETAS → ETAS License Manager ETAS のライセンスモデルについての説明や、ライセンスマネージャの操作方法
(ライセンスの確認、登録/削除、借用/返却など)については、ライセンスマ
ネージャのオンラインヘルプを参照してください。オンラインヘルプを開くに
は、ライセンスマネージャで <F1> キーを押します。
12
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3 API 関数
INCA-MIP には、INCA の操作を自動化するためのさまざまな API 関数(以下
「コマンド」とも呼ばれます)が含まれています。基本的な関数は INCA-MIP Base (基本セット)に含まれ、その他の関数(拡張コマンド)は、ライセンス
の必要な INCA-MIP Extended (拡張セット)に含まれています。
以下の表に、INCA V7.3 のアドオン製品に含まれるすべての INCA-MIP API 関数
をアルファベット順に挙げ、各関数について以下の内容を示します。
• 関数が含まれているセット(基本、拡張)
• 関数が使用される目的を示すカテゴリ(初期化、測定、適合、メモリペー
ジ管理、一般)
• 関数についての詳細情報が記載されているページ
注記
INCA-MIP 拡張セットのみに含まれている拡張 API 関数は、ソフトウェアライ
センスキーで保護されています。有効なソフトウェアライセンスがない状態で
拡張 API 関数を使用すると、MATLAB スクリプト実行時に例外が発生します。
そのため、スクリプト開発時のガイドラインとして、 初に
IncaIsLicenseValid 関数を呼び出し、有効なライセンスが確認された後
に INCA-MIP 拡張 API 関数を呼び出すようにしておくことをお勧めします。
関数 基本a 拡張b カテゴリ ページ
IncaAddCalibrationElement ○ ○ 適合 42IncaAddMeasureElement ○ ○ 測定 26IncaBrowseCalibrationElements ○ 適合 41IncaBrowseItemsInFolder ○ 初期化 22IncaBrowseMeasureElements ○ 測定 26IncaClose ○ 初期化 21IncaCopyPageFromTo ○ ○ メモリページ管理 50IncaDatabaseImport ○ 初期化 21IncaDownloadDifferences ○ ○ メモリページ管理 50IncaDownloadPage ○ ○ メモリページ管理 49IncaExecuteManualTrigger ○ 測定 40IncaGetCalibrationValue ○ ○ 適合 42IncaGetCurrentPage ○ メモリページ管理 49IncaGetDatasetsForDevice ○ 適合 46IncaGetDeviceProperties ○ 初期化 24IncaGetDevices ○ 初期化 24IncaGetHardwareStatus ○ 測定 37IncaGetInstalledAddOnInfo ○ ○ 一般 19IncaGetInstalledProductInfo ○ ○ 一般 18IncaGetMeasureRatesForDevice ○ 測定 26IncaGetProperties ○ 一般 20IncaGetRecordingMode ○ 測定 32IncaGetRecordingProperties ○ 測定 29
13
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
本章の以降の部分では、各関数を、以下のカテゴリ順に説明します。
• 一般的な関数(16 ページ)
• 初期化処理に使用される関数(20 ページ)
• 測定と記録に使用される関数(25 ページ)
• 適合に使用される関数(41 ページ)
• メモリページ管理に使用される関数(48 ページ)
さらに、INCA-MIP API には各種サンプルファイルが含まれています。この内容
は 3.1 項「INCA-MIP API のサンプルファイル」に詳しく説明されています。
IncaGetRecordingState ○ 測定 40IncaGetRecords ○ ○ 測定 35IncaGetRecordStruct ○ 測定 40IncaGetVersion ○ ○ 一般 18IncaGroupDevices ○ 適合 48IncaIsLicenseValid ○ 一般 18IncaMessageIds ○ ○ 一般 16IncaIsPageWriteProtected ○ ○ メモリページ管理 49IncaOpen ○ ○ 初期化 20IncaOpenDatabase ○ ○ 初期化 21IncaOpenExperiment ○ ○ 初期化 23IncaResetExperiment ○ ○ 初期化 24IncaResetRecords ○ ○ 測定 37IncaSetCalibrationMode ○ 適合 47IncaSetCalibrationValue ○ ○ 適合 44IncaSetDatasetInDevice ○ 適合 46IncaSetMeasureReadMode ○ ○ 測定 34IncaSetProjectAndDatasetInDevice ○ 初期化 46IncaSetRecordingMode ○ 測定 33IncaSetRecordingProperties ○ 測定 30IncaSetTrigger ○ 測定 38IncaShowMessages ○ ○ 一般 18IncaStartMeasurement ○ ○ 測定 28IncaStartRecording ○ ○ 測定 32IncaStopMeasurement ○ ○ 測定 28IncaStopRecording ○ ○ 測定 42IncaSwitchPage ○ ○ メモリページ管理 48IncaUploadPages ○ メモリページ管理 50IncaWriteToFile ○ 適合 48
a. ○: INCA-MIP API 基本セットに含まれています。
b. ○: INCA-MIP API 拡張セットに含まれています。
関数 基本a 拡張b カテゴリ ページ
14
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
各関数の実際の使用例は、3.7 項「API 関数の応用例」を参照してください。
3.1 INCA-MIP API のサンプルファイル
INCA-MIP には、INCA-MIP API のさまざまな使用例が納められたサンプルファ
イル集が付属しています。製品をインストールすると、これらのサンプルファイ
ルが自動的に MEX ファイルと共に PC にコピーされます。
サンプルファイルには、INCA-MIP API を呼び出す M ファイルのサンプルや、
サンプルスクリプト内で参照されている変数が定義された INCA データベースが
含まれています。
サンプルファイルは、インストール時に以下のディレクトリにコピーされます
(9 ページ「INCA-MIP のインストール」 を参照してください)。
• MATLAB にインストールした場合:
M ファイル: %MatlabDir%¥toolbox¥matlab¥demos• ETASDataディレクトリにインストールした場合:
M ファイル: %EtasDataDir%¥INCA7.3¥INCA-MIPx64INCA デモファイル: %EtasDataDir%¥INCA7.3¥Database¥db_matlabtest
サンプルファイルを実行するには、まず INCA を起動し、サンプルデータベース
を開いておく必要があります。この際、ハードウェアは必要ありません。
サンプルの M ファイルの機能は以下のとおりです。
• tOpen.m - INCA と MATLAB 間の接続を確立します。この関数は、各
MATLAB セッションを開始する際、他の INCA-MIP API 関数を使用する
前に、必ず呼び出しておく必要があります。
• tDummy.m - INCA 上に、「VADI テストデバイス」を含むハードウェア
コンフィギュレーションが定義された空の実験を開きます。さらにこのス
クリプトでは、実験内にいくつかの測定変数を割り当てます。
• tEtkDummy.m - INCA 上に、「ETK テストデバイス」を含むハード
ウェアコンフィギュレーションが定義された空の実験を開き、この実験内
に、いくつかの測定変数と適合変数を定義します。そしてワーキングペー
ジとリファレンスページを ECU にダウンロードして、測定変数と適合変
数の値を ECU から読み取り、さらに各適合変数の値を変更します。
• tGetRecords(aGroupName).m - aGroupName という名前のシグ
ナルグループの測定データを 20 秒間収集し、さらにそのデータを
MATLAB で取得します。ここではテストデバイスの VADI と ETK が使用
されます。シグナルグループについては、383 ページの「INCA 用語集」
の「測定ラスタ」を参照してください。
• tPrintDB ({aFolder{, aFileId}}).m - データベース内のフォルダ
aFolderのすべての内容をファイル aFileId に書き込み。データを
MATLAB に渡します。ここではテストデバイスの VADI と ETK が使用で
きます。引数なしでこの関数を呼び出すと、階層構造になっているデータ
ベース全体が標準出力に出力されます。
注記
INCA-MIP インターフェースは、常に INCA のユーザーオプション設定に基づ
いて動作します。INCA ユーザーオプションについての詳細は、INCA のド
キュメントを参照してください。
15
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
• tHWStatus.m:関数 IncaGetHardwareStatusの使用例です。
MATLAB から、INCA 上に開いている実験にアクセスし、 初に見つかっ
た測定デバイス内の 初の測定変数を選択して、5 分間測定を行います。
測定中にワーニングやエラーが発生すると、測定は中止され、5 秒後に再
開されます。
3.2 一般的な関数
一般的な機能を持つ API 関数について説明します。
3.2.1 INCA-MIP インターフェースのメッセージ ID 取得
INCA-MIP インターフェースの各コマンドを使用した際に、エラーが返る場合が
あります。
そのような場合、try ブロックと catch ブロックを用いて、詳細なエラー情報
を取得することができます。
使用例
try,
<command_1>
...
<command_n>
catch,
[msgstr,msgid] = lasterr
...
end
各変数の内容は以下のとおりです。
msgstr メッセージ文字列
msgid メッセージ識別子(= エラー ID)。以下の ID があります。
• INCA:ParameterError• INCA:ReturnParameterError• INCA:WrongParameterValue• INCA:WrongParameterType• INCA:NaN• INCA:ExecutionError• INCA:ResourceError• INCA:RasterFull• INCA:ObjectIsWriteProtected• INCA:CallSeqenceError• INCA:LicenseError• INCA:RecordingInProcess• INCA:NotInstalled• INCA:WrongVersion
16
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
各エラー ID の意味と対処方法は、以下のとおりです。
INCA:ParameterError 入力引数の数が不正です。
INCA:ReturnParameterError 出力引数の数が不正です。
INCA:WrongParameterValue いずれかの入力引数の値が有効範囲を
超えています。
INCA:WrongParameterType いずれかの入力引数のデータ型が不正
です。
INCA:NaN いずれかの入力引数の値が Not a Number(非数)です。
INCA:ExecutionError コマンド実行中に何らかの原因でエ
ラーが発生しました。INCA ユーザー
インターフェース上での操作によって
原因を特定できる可能性があります。
INCA や PC の再起動も試してみてくだ
さい。
INCA:ResourceError オペレーティングシステムのリソース
を取得できません。INCA を再起動す
るか、または PC を再起動してくださ
い。
INCA:RasterFull 要求された測定ラスタが満杯のため、
測定変数を追加できません。
INCA:ObjectIsWriteProtected 要求された適合変数が書込み禁止のた
め、適合できません。
INCA:CallSeqenceError 要求されたコマンドの前に所定のコマ
ンドを実行する必要があります。
例: IncaAddMeasureElementを
実行するには、
IncaOpenExperimentを先に実行
しておく必要があります。
INCA:LicenseError 要求されたコマンドを実行するには、
ライセンスが必要です。
INCA:RecordingInProcess 現在記録が行われているため、要求さ
れたコマンド
(IncaSetRecordingModeによる
シグナルの記録の有効化/無効化など)
を実行できません。
INCA:NotInstalled IncaOpenコマンドで指定された
INCA バージョンは、インストールさ
れていないため開くことができません。
INCA:WrongVersion IncaOpenコマンドで指定された
INCA バージョンは、以下のいずれか
の理由により開くことができません。
• すでに INCA が起動していて、その
INCA と異なる 'version' 引数と共に
IncaOpenコマンドが実行されま
した。
• INCA Vx.y 用 INCA-MIP から、メ
ジャーバージョンが x でない
'version' 引数と共に IncaOpen コ
マンドが実行されました。
17
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.2.2 スクリプト実行中のメッセージ表示
3.2.3 有効な INCA-MIP ライセンスの確認 (拡張コマンド)
3.2.4 インストール済み INCA バージョンに関する情報の取得
コマンド名 IncaShowMessages
機能 スクリプト実行中の MATLAB ウィンドウへの情報表示をオン/オ
フします。
構文 IncaShowMessages(trueOrFalse)
出力引数
入力引数 trueOrFalse 0: 情報表示オフ
≠ 0: 情報表示オン(デフォルト)
使用例
コマンド名 IncaIsLicenseValid
機能 有効な INCA-MIP ライセンスが利用可能であるかどうかを示すス
テータスを返します。
構文 s = IncaIsLicenseValid
出力引数 s ライセンスステータス
• 0: 有効なライセンスがない
• 1: 有効なライセンスがある
入力引数
使用例 status = IncaIsLicenseValid
コマンド名 IncaGetInstalledProductInfo
機能 インストール済みのすべての INCA バージョンを返します。このコ
マンドは IncaOpen 実行前に実行することができます。
構文 info = IncaGetInstalledProductInfo
出力引数 info インストール済みの各 INCA バージョ
ンについての以下のエントリを含む
MATLAB 構造体
info.name 製品名
info.version 製品バージョン(文字列)
info.hotfixVersion インストール済みホットフィックス
バージョン(文字列)
※ ホットフィックスがインストールさ
れていない場合は空の文字列になりま
す。
入力引数
使用例 i = IncaGetInstalledProductInfo;
注記
このコマンドは、INCA-MIP V16.0 で導入されたものです。
18
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.2.5 インストール済みアドオンに関する情報の取得
3.2.6 INCA バージョンの取得
注記
このコマンドは、INCA V7.1 以降がインストールされている場合にのみ正しく
機能します。
コマンド名 IncaGetInstalledAddOnInfo
機能 指定された製品に対してインストールされているすべてのアドオン
に関する情報を返します。このコマンドは IncaOpen実行前に実
行することができます。
構文 info = IncaGetInstalledAddOnInfo(productName, productVersion)
出力引数 info インストール済みの各アドオンについての
以下のエントリを含む MATLAB 構造体
info.name アドオンの名前
info.version アドオンのバージョン(文字列)
入力引数 productName 製品名
productVersion 製品バージョン(文字列)
※ 完全なバージョン文字列を指定してくだ
さい。
使用例 i = IncaGetInstalledAddOnInfo('INCA', '7.3');i = IncaGetInstalledAddOnInfo('INCA', '7.3 Beta 42');
注記
入力引数 productName および productVersion には、必ず
IncaGetInstalledProductInfoで返される名前とバージョンを使用
してください。
注記
このコマンドは、INCA-MIP V16.0 で導入されたものです。
注記
このコマンドは、INCA V7.1 以降がインストールされている場合にのみ正しく
機能します。
コマンド名 IncaGetVersion
機能 INCA のバージョンを返します。
構文 IncaGetVersion
出力引数
入力引数
使用例
19
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.2.7 INCA プロパティの取得 (拡張コマンド)
3.3 初期化処理に使用される関数
INCA で実行される測定および適合処理は、「実験」というデータベースアイテム
に基づいて実行されます。実験を開くには、適切なハードウェアコンフィギュ
レーションが定義された「ワークスペース」を作成し、そのワークスペースに実
験を割り当てておく必要があります。
INCA-MIP API で INCA の実験を実行するには、あらかじめ、適切なハードウェ
アコンフィギュレーションが定義されたワークスペースを用意し、そのワークス
ペースに「空」の実験(つまり上図のようにまだ何も変数が割り当てられていな
い実験)を割り当てておく必要があります。実験は、MATLAB から開くことが
できます。
INCA で実験を行う際の一連の初期化処理には、以下の API 関数を使用します。
3.3.1 INCA を開く
コマンド名 IncaGetProperties
機能 INCA の各種プロパティを返します。
構文 p = IncaGetProperties
出力引数 p INCA のプロパティを含む MATLAB 構造体
• p.databasePath: 現在 INCA 上に開いているデータ
ベースが保存されているパス。 データベースが開いてい
ない場合は、空の文字列を返します。
• p.dataPath: INCA データディレクトリのパス
• p.installationPath: INCA のインストールディ
レクトリのパス
• p.tempPath: ETAS アプリケーションで使用される
一時ファイルが格納されるパス
入力引数
使用例 p = IncaGetProperties;
コマンド名 IncaOpen
機能 INCA を起動し、INCA と MATLAB との接続を初期化します。
構文 IncaOpenIncaOpen( version )
出力引数
入力引数 version 起動する INCA のバージョン(オプション)
構文: <MajorVersion>.<MinorVersion>※INCA x.y 用の INCA-MIP の場合、接続できる
INCA のバージョンは INCA x(つまりメジャーバー
ジョンが同じもの)だけです。
使用例 IncaOpen;IncaOpen('7.3');
注記
オプションの入力引数 'version' は、INCA-MIP V16.0 で導入されたもので
す。
20
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.3.2 INCA を閉じる (拡張コマンド)
3.3.3 データベースを開く
3.3.4 データベースのインポート (拡張コマンド)
コマンド名 IncaClose
機能 IncaOpenで INCA を開いた後、INCA との接続を切断するには
このコマンドを使用します。さらに、INCA を閉じるか、それとも
起動したままにしておくかを選択できます。
構文 IncaCloseIncaClose( isDisconnectOnly )
出力引数
入力引数 isDisconnect Only MATLAB を INCA から切り離した後に
INCA を閉じるかどうかを指定します。
• 0: INCA を閉じる(デフォルト)
• 1: INCA を閉じない
使用例 IncaClose;IncaClose(1);
注記
このコマンドは INCA-MIP V16.0 で導入されたものです。
入力引数 isDisconnect Only は INCA-MIP V16.1 において追加されまし
た。それより前のバージョンではこの入力引数がないため、IncaCloseを実
行すると必ず INCA が終了します。
コマンド名 IncaOpenDatabase
機能 指定のディレクトリに保存されている INCA データベースを開きま
す。
構文 IncaOpenDatabase({pathName})
出力引数
入力引数 pathName データベースが保存されているディレクトリ
※ ディレクトリが指定されていない場合は、カレン
トデータベース(前回開いていたデータベース)が
開きます。
使用例 IncaOpenDatabase; % open current databaseIncaOpenDatabase('c:¥etasdata¥mydatabase');
コマンド名 IncaDatabaseImport
機能 エクスポートファイル(*.exp)にエクスポートされているデータ
ベースを INCA にインポートします。この際、INCA 上に開いてい
る同名のデータベースアイテムは必ず上書きされます。
構文 IncaDatabaseImport(path)name = IncaDatabaseImport(path)[name, type] = IncaDatabaseImport(path)
21
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.3.5 データベースアイテムの読み込み (拡張コマンド)
出力引数 name インポートされたすべてのデータベースアイテムの名
前(フルパス)の配列
※ 配列の要素にアクセスするには、deblank()を使
用してください。
例: name2 = deblank(name(2,:))type インポートされたすべてのデータベースアイテムのタ
イプの配列。 タイプには以下のものがあります。
• Folder: データベースフォルダ
• Experiemnt: 実験
• Workspace: ワークスペース
• Asap2Project: ASAM-MCD-2MC プロジェクト
• MeasurementCatalog: 測定カタログ(ASAM-MCD-2MC フォーマット)
• CanDB: CAN DB ファイル(ASAM-MCD-2MCフォーマット)
※ 配列の各要素には deblank() でアクセスします。
例: type2 = deblank(type(2,:))入力引数 path インポートする *.expファイルの名前(フルパス)
使用例 names = IncaDatabaseImport('D:¥ETASData¥INCA7.3¥export¥Project0815.exp')
コマンド名IncaBrowseItemsInFolder
機能 検索パターンに一致するデータベースアイテム名を、指定のデータ
ベースフォルダから検索して読み込みます。
構文 [name, type] = IncaBrowseItemsInFolder(pattern, folderName)
出力引数 name データベースアイテム名のリスト
type データベースアイテムのタイプのリスト
• Folder: データベースフォルダ
• Experiemnt: 実験
• Workspace: ワークスペース
• Asap2Project: ASAM-MCD-2MC プロジェク
ト
入力引数 pattern データベースアイテムを指定するための検索文字列
※'*'は 0 または 1 つ以上の任意の文字を表し、
'#' は 1 つの任意の文字を表します。これらのワイ
ルドカードで指定されるもの以外の文字は、すべて正
確に一致している必要があります。
※ 検索文字列内の大文字と小文字は区別されません。
folderNameデータベースアイテムの読み込み先のデータベース
フォルダ
※ フォルダの階層は '¥' で区切ります。 上位レベ
ルに読み込む場合は、この引数は空にしておいてくだ
さい。
使用例 [n,t]=IncaBrowseItemsInFolder('*', 'DEFAULT¥MyProject');[name,type]=IncaBrowseItemsInFolder('Prj*_##', '');
22
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.3.6 デバイスにプロジェクトとデータセットを割り当てる (拡張コ
マンド)
3.3.7 実験を開く
コマンド名 IncaSetProjectAndDatasetInDevice
機能 指定のワークスペース内のデバイスに、プロジェクトとデータセッ
トを割り当てます。
構文 IncaSetProjectAndDatasetInDevice(workspace,device,project,dataset)
出力引数
入力引数 workspace ワークスペースのデータベースパス
device デバイス名
project プロジェクトのデータベースパス
dataset データセットのデータベースパス
使用例 IncaSetProjectAndDatasetInDevice('DEFAULT¥workspace','ETK:1','DEFAULT¥Prj0815','Ds4711¥Ds4711_3')
コマンド名 IncaOpenExperiment
機能 指定の実験(実験環境を格納したデータベースアイテム)を開きま
す。MATLAB から測定変数や適合変数を実験に割り当てるには、
このコマンドで実験を開いておく必要があります。
構文 IncaOpenExperiment({closeAllViewsFlag})
または
IncaOpenExperiment(expFolderName, experimentName, workspaceFolderName, workspaceName {, closeAllViewsFlag})
出力引数
入力引数 expFolderName 実験が保存されているフォルダ名
experimentName 実験名
workspaceFolderName ワークスペースが保存されているフォ
ルダ名
workspaceName ワークスペース名
closeAllViewsFlag 指定の実験に含まれるすべての測定/
適合ウィンドウを閉じます。
※ 以下のいずれかの値が有効です。
• 1: 全ウィンドウを閉じる(デフォ
ルト)
• 0: ウィンドウを開いたままの状態
にする
使用例 IncaOpenExperiment('ExpFolder', 'MyExperiment', 'WorkspaceFolder', 'MyWorkspace');
23
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.3.8 実験のリセット
3.3.9 デバイスの取得 (拡張コマンド)
3.3.10 デバイスプロパティの取得 (拡張コマンド)
注記
このコマンドの処理内容は、INCA V3.0 で変更されました。新しく導入された
データベースアイテムである「ワークスペース」用に 2 つの入力引数が必要に
なったためです。
この IncaOpenExperiment関数が呼ばれる時点ですでに実験が開いてい
る場合、環境を指定する入力引数は省略できます。実験がまだ開いていない場
合は、IncaOpenExperiment の前に IncaOpenDatabase を実行して
おく必要があります。
コマンド名 IncaResetExperiment
機能 現在開いている実験をリセットして閉じます。この関数を実行する
と、実験に割り当てられているすべての変数が、実験内から削除さ
れます。 個々の変数の削除はサポートされていません。
構文 IncaResetExperiment
出力引数
入力引数
使用例
注記
MATLAB コマンドではなく INCA 上でのマニュアル操作により実験を開いて
いた場合、IncaResetExperimentコマンドを発行すると、実験はリセッ
トされますが、実験ウィンドウは開いたままの状態となります。この状態にお
いて再度 MATLAB から実験にアクセスするには、IncaOpenExperimentコマンドを発行する必要があります。
コマンド名 IncaGetDevices
機能 実験内のすべてのデバイス名を返します。
構文 [name, type] = IncaGetDevices
出力引数 name デバイス名のリスト
type デバイスタイプのリスト
• WorkbaseDevice: データセットが割り当て
られたデバイス
• MeasurementDevice: 測定デバイス
入力引数
使用例 [name,type]=IncaGetDevices;
コマンド名 IncaGetDeviceProperties
機能 デバイスのプロパティを返します。
構文 p = IncaGetDeviceProperties(deviceName)
24
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.4 測定と記録に使用される関数
シグナル(= 測定変数)は、ある測定デバイス用に定義された「測定ラスタ」の
一部として取り込まれます。1 つの測定変数は、いずれか 1 つの測定ラスタ(マ
ルチラスタを含む)でのみ測定できます。実験の設定を行うには、 初に測定変
数を個々の測定ラスタに割り当てる必要があります。
出力引数 p MATLAB 構造体で表されたデバイスプ
ロパティ。以下のエントリで構成され
ます。
p.name デバイス名
p.descriptionFile デバイスに割り当てられているプロ
ジェクトに読み込まれているディスク
リプションファイルの名前(バスを含
む)
※ デバイスにプロジェクトが割り当て
られていない場合は空の文字列を返し
ます。
p.binaryFile デバイスに割り当てられているプロ
ジェクトに読み込まれているバイナリ
ファイルの名前(バスを含む)
※ デバイスにプロジェクトが割り当て
られていない場合は空の文字列を返し
ます。
p.projectDBPath デバイスに割り当てられているプロ
ジェクトの名前と INCA データベース
内のパス
※ デバイスにプロジェクトが割り当て
られていない場合は空の文字列を返し
ます。
p.isWriteProtected • 0: デバイスにメモリページが存在
しないか、または現在のページが書
き込み禁止になっていません。
• 1: 現在のページは書込み禁止です。
p.isActive • 0: デバイスが接続されていないか、
または稼動状態になっていません。
• 1: デバイスが接続されていて、稼
動状態になっています。 p.isWorkbaseDevice • 0: デバイスにデータセットが割り
当てられていません。
• 1: デバイスにデータセットが割り
当てられています。 入力引数 deviceName デバイス名
使用例 p = IncaGetDeviceProperties('Device');
注記
変数、デバイス、シグナル、測定ラスタの名前は、大文字と小文字が区別され
ますので、注意が必要です。
25
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.4.1 測定変数名の取得 (拡張コマンド)
3.4.2 測定ラスタの取得 (拡張コマンド)
3.4.3 測定変数を実験に追加する
コマンド名 IncaBrowseMeasureElements
機能 実験に割り当てられている測定変数のうち、検索パターンに一致す
るもの名前とタイプを返します。
構文 [name, type] = IncaBrowseMeasureElements (pattern, {deviceName})[name] = IncaBrowseMeasureElements(pattern, {deviceName})
出力引数 name 測定変数名のリスト
type 測定変数のタイプのリスト
• Scalar: スカラ値
• Array: 配列
• Matrix: 行列
入力引数 pattern 測定変数を指定するための検索文字列
※'*'は 0 または 1 以上の数の文字を表し、'#'は 1 つの文字を表します。これらのワイルドカー
ドで指定されるもの以外の文字は、すべて正確に
一致している必要があります。
※ 検索文字列内の大文字と小文字は区別されませ
ん。
deviceName 測定変数が属するデバイス名
使用例 [n,t]=IncaBrowseMeasureElements('ign*','Device');[name,type]=IncaBrowseMeasureElements('*');
コマンド名 IncaGetMeasureRasterForDevice
機能 指定のデバイスに属するすべてのラスタの名前を返します。
構文 [name] = IncaGetMeasureRatesForDevice(deviceName)
出力引数 name 測定ラスタ名のリスト
入力引数 deviceName デバイス名
使用例 n=IncaGetMeasureRatesForDevice('Device');name=IncaGetMeasureRatesForDevice('Dev');
コマンド名 IncaAddMeasureElement
機能 任意の測定ラスタに測定変数(測定シグナル)を1つ追加します。
構文 IncaAddMeasureElement(deviceName, groupName, signalName {, displayMode})groupName = IncaAddMeasureElement( deviceName, [], signalName{, displayMode})
出力引数
入力引数 deviceName デバイス名
26
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
groupName 測定ラスタ(シグナルグループ)の名前
※ ラスタ名を '+' という文字で連結することに
より、複数のラスタを指定できます(例: '10ms+100ms')。このような「マルチラスタ」
を指定すると、新しい仮想ラスタが生成されます。
※1 つのシグナルの測定は、1 つのラスタ、また
はマルチラスタのいずれかでのみ行えます。
※ グループ名を [](空白)にすることもできま
す(以下の注記を参照してください)。
signalName 測定シグナルの名前
※ スカラタイプの場合は変数のみで、配列タイプ
の場合は変数名にインデックス([n] または
[n,m])を付加します。1 番目の要素のインデッ
クスは 0(ゼロ)です。
displayMode 変数の表示モード
• 1: 表示(デフォルト)
• 0: 非表示
使用例 IncaAddMeasureElement('MyDevice', '10ms', 'Channel01', 0);IncaAddMeasureElement('ETK:1', '1.0ms', 'Matrix[2,1]');group = IncaAddMeasureElement('CalcDev', [], 'MyCalcSig1');
注記
測定ラスタがフル(= 満杯状態)になると、測定変数はその測定ラスタに追加
されません。
注記
入力引数 groupName を [](空)にすると、以下のような方法でシグナルグ
ループが確定されます。
• すでに実験に含まれているシグナルの場合は、実験で指定されているシグ
ナルグループ名が使用されます。
• 実験に含まれていないシグナルの場合は、使用可能なシグナルグループの
いずれかが使用されます。演算シグナル(デバイス名: CalcDev)または
CAN モニタリングの場合、そのシグナル用に定義されているシグナルグ
ループが使用されます。
IncaGetRecords、IncaGetRecordStruct、
IncaGetRecordCount を呼び出す際にはシグナルグループ名が必要となる
ので、オプション引数としてシグナルグループが返されます。
例 :groupName = IncaAddMeasureElement( 'CalcDev', [], 'MyCalcSig')
groupName = IncaAddMeasureElement( 'CAN-Monitoring:1', [], 'nmot', 1)
27
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.4.4 測定の開始
3.4.5 測定の終了
注記
入力引数 groupName を [](空)の状態で使用できるのは、INCA-MIP V16.0 以降に限ります。
注記
追加できるシグナルの総数は、デバイスやプロトコルに応じて異なります。 各シグナルに必要なバッファメモリのサイズはサンプリングレートに依存し、
ターゲットサーバーがアロケートするバッファの空き容量によってシグナル数
が制限されます。
例 :サンプリングレートが 0.1 ms のシグナルの場合は、3 メガバイト以上のデー
タメモリを必要とするため、追加できるシグナルの総数は 400 ~ 600 となり
ます。サンプリングレートを遅くすれば、より多くのシグナルを追加できま
す。
コマンド名 IncaStartMeasurement
機能 INCA の測定処理を開始します。
構文 IncaStartMeasurement
出力引数
入力引数
使用例
コマンド名 IncaStopMeasurement
機能 INCA の測定処理を終了し、記録が行われている場合は記録も終了し
ます。
構文 IncaStopMeasurement{(mdfFileName)}
出力引数
入力引数 mdfFileName 測定とともに記録が終了した場合に、記録された
データが保存される MDF ファイルの名前
※ ファイルへの完全なパスを指定してください=(例: 'c:¥mydata¥store1.dat')。
使用例 IncaStopMeasurement('c:¥mydata¥store1.dat');
注記
長時間の測定によりデータが失われるのを避けるため、データ量が非常に多い
場合は、IncaStopMeasurement(mdfFileName) コマンドで記録を終
了し、残りのデータを IncaGetRecordsコマンドで MATLAB に転送して
ください。
28
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.4.6 記録のプロパティの取得 (拡張コマンド)
コマンド名 IncaGetRecordingProperties
機能 次回の記録処理に適用されるプロパティを返します。
構文 properties = IncaGetRecordingProperties
出力引数 properties 記録のプロパティに関する以下の
エントリで構成される MATLAB構造体
properties.fileName データを記録するメイン測定ファ
イルの名前
properties.directory 測定ファイルのディレクトリ
properties.fileFormat 第 2 の測定ファイルのフォー
マット
※ 以下のいずれかの文字列です。
• ETASBinary• #DiademATF• ETASAscii• ETASGroupAscii• ETASMATLABMFILE• ETASGroupMatlabM• FamosRecord• ETASMDF• ETASMDF4
properties.autoIncrement 測定ファイル名の自動インクリメ
ントモード
• 0: インクリメントしない
• 1: 自動的にインクリメントす
る
properties.comment 測定ファイルのヘッダ部分のコメ
ント
※ 使用できる文字数は、1024 か
らデフォルトコメントの文字数を
引いた数です。
properties.defaultComment INCA によって測定ファイルの
ヘッダに挿入されるデフォルトコ
メント
properties.company 測定ファイルに挿入される会社名
properties.project 測定ファイルに挿入されるプロ
ジェクト名
properties.user 測定ファイルに挿入されるユー
ザー名
properties.vehicle 測定ファイルに挿入される車両名
入力引数
使用例 properties = IncaGetRecordingProperties;
29
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.4.7 記録のプロパティの設定 (拡張コマンド)
注記
INCA-MIP V16.0 において、出力引数 properties.fileFormatの
フォーマット IDが以下のように変更されました。
INCA-MIP V16.0 より前のバージョン:
• ETAS binary data file format• Diadem ATF measure format (write only)• ASCII• ASCII (Multirate/Write only)• MATLAB M-File• MATLAB M-File (Multirate/Write only)• FAMOS (imc)• MDF (Measure Data Format)• MDF4 (Measure Data Format for VSG using 4byte floats
only)
INCA-MIP V16.0 以降のバージョン:
• ETASBinary• #DiademATF• ETASAscii• ETASGroupAscii• ETASMATLABMFILE• ETASGroupMatlabM• FamosRecord• ETASMDF• ETASMDF4
コマンド名 IncaSetRecordingProperties
機能 次回の記録処理に適用されるプロパティを設定します。
構文 IncaSetRecordingProperties(properties)
出力引数
入力引数 properties 記録のプロパティに関する以下の
エントリで構成される MATLAB構造体
properties.fileName データを記録するメイン測定ファ
イルの名前
properties.directory 測定ファイルのディレクトリ
properties.fileFormat 第 2 の測定ファイルのフォーマッ
ト
※ 以下の文字列が有効です。
• ETASBinary• #DiademATF• ETASAscii• ETASGroupAscii• ETASMATLABMFILE• ETASGroupMatlabM• FamosRecord• ETASMDF• ETASMDF4
30
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
properties.autoIncrement 測定ファイル名の自動インクリメ
ントモード
• 0: インクリメントしない
• 1: 自動的にインクリメントす
る
properties.comment 測定ファイルのヘッダ部分のコメ
ント
※ 使用できる文字数は、1024 か
らデフォルトコメントの文字数を
引いた数です。
properties.company 測定ファイルに挿入される会社名
properties.project 測定ファイルに挿入されるプロ
ジェクト名
properties.user 測定ファイルに挿入されるユー
ザー名
properties.vehicle 測定ファイルに挿入される車両名
使用例 properties.user = 'Michael';properties.project = 'K70';IncaSetRecordingProperties(properties);
注記
INCA-MIP V16.0 において、出力引数 properties.fileFormatの
フォーマット IDが以下のように変更されました。
INCA-MIP V16.0 より前のバージョン:
• ETAS binary data file format• Diadem ATF measure format (write only)• ASCII• ASCII (Multirate/Write only)• MATLAB M-File• MATLAB M-File (Multirate/Write only)• FAMOS (imc)• MDF (Measure Data Format)• MDF4 (Measure Data Format for VSG using 4byte floats
only)
INCA-MIP V16.0 以降のバージョン:
• ETASBinary• #DiademATF• ETASAscii• ETASGroupAscii• ETASMATLABMFILE• ETASGroupMatlabM• FamosRecord• ETASMDF• ETASMDF4
31
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.4.8 記録モードの取得 (拡張コマンド)
注記
IncaSetRecordingProperties で記録のプロパティを設定する際は、
IncaStopRecording で記録を終了させるのではなく、
IncaSetTriggerを使用して任意のトリガで記録を終了させてください。
使用例:
一定の時間経過後、記録を終了する:
TIMEDURATION_SECONDS = 25;IncaSetTrigger('none', 'none', 'none', 'none', TIMEDURATION_SECONDS);IncaStartRecording;% Recording automatically stops after TIMEDURATION_SECONDS seconds
マニュアルトリガによって記録を終了する:
IncaSetTrigger('none', 'manual');IncaStartRecording;% Do anything until the stop trigger condition is met...IncaExecuteManualTrigger('stop');
コマンド名 IncaGetRecordingMode
機能 シグナルの記録モード(デフォルトレコーダで記録するかどうか)
を返します。
構文 IncaGetRecordingMode(deviceName, signalName)
出力引数 デフォルトレコーダでの記録モード
• 0: 指定のシグナルはデフォルトレコーダで記録
されません。
• 1: 指定のシグナルはデフォルトレコーダで記録
されます。
入力引数 deviceName デバイス名
signalName 測定シグナル名
※ スカラタイプの場合は変数名のみで、配列タイ
プの場合は変数名にインデックス([n]または
[n,m])を付加します。1 番目の要素のインデッ
クスは 0(ゼロ)です。
使用例 m = IncaGetRecordingMode('ETK:1', 'hfm');mode = IncaGetRecordingMode('CalcDev', 'MyCalcSig1');
注記
このコマンドは、INCA-MIP V16.0 で導入されたものです。
注記
IncaGetRecordingModeを使用するには、あらかじめ
IncaAddMeasureElementでシグナルを実験に割り当てておく必要があ
ります。
32
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.4.9 記録モードの設定 (拡張コマンド)
3.4.10 記録の開始
コマンド名IncaSetRecordingMode
機能 シグナルの記録モード(デフォルトレコーダで記録するかどうか)を
設定します。記録できるのは、INCA の実験に割り当てられているシ
グナルのみです。
このコマンドを実行するには、あらかじめ
IncaAddMeasureSignalでシグナルを実験に割り当てておく必
要があります。
構文 IncaSetRecordingMode(deviceName, signalName, recordingMode)
出力引数
入力引数 deviceName デバイス名
signalName 測定シグナル名
※ スカラタイプの場合は変数名のみで、配列タ
イプの場合は変数名にインデックス([n] また
は [n,m])を付加します。1 番目の要素のイン
デックスは 0(ゼロ)です。
recoredingModeデフォルトレコーダでの記録モード
• 0: 指定のシグナルがデフォルトレコーダから
削除されます。
• 1: 指定のシグナルがデフォルトレコーダに追
加されます。
使用例 IncaSetRecordingMode('ETK:1', 'hfm', 1);IncaSetRecordingMode('CalcDev', 'MyCalcSig1', 0);
注記
このコマンドは、INCA-MIP V16.0 で導入されたものです。
注記
IncaSetRecordingModeを使用するには、あらかじめ
IncaAddMeasureElementでシグナルを実験に割り当てておく必要があ
ります。
コマンド名 IncaStartRecording
機能 INCA での測定データの記録処理を開始します。このコマンドを実
行する際、IncaStarMeasurement があらかじめ実行されてい
る必要はありません。測定または記録処理が開始されると、
MATLAB から測定データを読み込むことが可能となります。
構文 IncaStartRecording
出力引数
入力引数
使用例
33
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.4.11 記録の終了
3.4.12 データの読み込みモードの設定(オンライン・オフライン)
コマンド名 IncaStopRecording
機能 INCA での測定データ記録処理を終了します。このコマンド実行後
も測定はそのまま続行されるので、測定処理の終了は
IncaStopMeasurement コマンドで明示的に行う必要がありま
す。このコマンドを利用して、測定中の記録の開始/終了を任意に
制御することができます。
構文 IncaStopRecording(mdfFileName)
出力引数
入力引数 mdfFileName 測定とともに記録が終了した場合に、記録された
データが保存される MDF ファイルの名前
※ ファイルへの完全なパスを指定してください=(例: 'c:¥mydata¥store1.dat')。
使用例 IncaStopRecording('c:¥mydata¥store1.dat');
コマンド名 IncaSetMeasureReadMode
機能 測定データのデータソースを指定します。ここでは、INCA が測定
したデータをオフラインデータとして蓄積し、後から MATLAB に
転送するか、または各測定デバイスのバッファから直接 MATLABにオンラインデータとして転送するかを選択できます。
ただし ES1303 や ES6xx 測定デバイスなどのように、測定データ
の画面表示のみが行われている時にはオフラインデータを蓄積でき
ないデバイスがあります。これらのデバイスの測定時には、オンラ
インデータを取り込むようにしてください。
測定データの記録時にはオンラインデータとオフラインデータのい
ずれを使用することができますが、大量のデータを測定する場合
は、オンラインデータを取り込もうとすると、データの内容が不完
全なものとなってしまう場合があります。その反面、オフライン
データであれば、転送の遅れは生じますが、データはすべて完全に
取得できます。このため、データの記録中はオフラインデータを取
り込むようにすることをお勧めします。
構文 IncaSetMeasureReadMode(measureReadMode)
出力引数
入力引数 measureReadMode データソースを指定する数値
※ 以下の値が有効です。
• 1: オフラインデータ
• 0: オンラインデータ(デフォルト)
使用例 IncaSetMeasureReadMode(0);
34
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.4.13 測定データの取得
コマンド名 IncaGetRecords
機能 測定データを MABLAB に転送します。各シグナルデータの測定デー
タは、それぞれ専用のリングバッファが用意され、各バッファには
大約 30 秒間分の測定データが保存されます。測定データはグループ
ごとに MATLAB に転送されるので、測定データを取り込んだ後は
MATLAB スクリプトの実行を停止するようにしてください。一度に
転送されるデータが多いほどデータ転送効率が向上します。
この関数は、指定されたシグナルグループについて指定された数の
データレコードを転送します。
リングバッファについては、7 ページの「INCA 用語集」で詳しく説
明されています。
構文 [time, data {,state}] = IncaGetRecords(deviceName, groupName, maxRecords {{,latest{, exact}})
出力引数 time 転送されたレコードのタイムスタンプが格納される
配列
※ 要素の 大数を m とすると、必ず m <= maxRecords でなければなりません。
data 各測定変数の値が含まれる 2 次元配列
※ 含まれる変数の順は
IncaAddMeasureElementで実験に追加された
順と同じです。
※ この 2 次元配列では、m が受信するレコードの数、
nが測定ラスタの数です。
state 以下の状態を表すオプション引数
• 0: データレコードを正しく受信しました。
• 1: 測定が実行されていません。データレコード
を受信しませんでした。
• 2: データレコードが足りないため、データレ
コードをまったく受信していません。この値を返
すのは exact = 1の場合のみです。
入力引数 devicename デバイス名
groupName 測定ラスタ名
※ ラスタ名を '+' という文字で連結することによ
り、複数のラスタを指定できます(例: '10ms+100ms')。このような「マルチラスタ」を
指定すると、新しい仮想ラスタが生成されます。
※1 つのシグナルの測定は、1 つのラスタ、またはマ
ルチラスタのいずれかでのみ行えます。
maxRecords 受信するレコードの 大数(下記の引数 exact も参
照してください)
※ ここには timeまたは dataのサイズ mを指定し
てください。mが maxRecordsの値より大きい場合、
一部のレコードが読み込まれず、リングバッファがオー
バーフローしてしまう可能性があります。
35
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
latest 新データから受け取るか、または も古いデータか
ら受け取るかを指定します。
exact リングバッファ内のデータレコード数が
maxRecordsより少ない場合でもデータを受け取る
ようにするかどうかを指定します。
使用例 [t, d] = IncaGetRecords('ETK:1', '100ms', 500);data = [data; d];time = [time; t];[t, d, s] = IncaGetRecords('ETK:1', '100ms', 25, 1, 1);
より大きなサイズのデータを転送する場合は、51 ページの「例 2」
を参照してください。
注記
オプション入力引数 latestおよび exactは、INCA-MIP V16.0 で導入され
たものです。
注記
IncaGetRecordsに渡すラスタは、以下の例のように必ず
IncaAddMeasureElementに渡したラスタまたはマルチラスタと同じもの
を使用してください。
IncaAddMeasureElement('ETK test device:1','RASTER_A+RASTER_B', 'N')
IncaAddMeasureElement('ETK test device:1','RASTER_A+RASTER_B', 'n')
[t,d]= IncaGetRecords('ETK test device:1','RASTER_A+RASTER_B',15)
ラスタに割り当てられているシグナルは、IncaGetRecordStruct を使用
して以下のように確認できます。
l=IncaGetRecordStruct('ETK test device:1', 'RASTER_A+RASTER_B')
36
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.4.14 リングバッファのリセット
3.4.15 ハードウェアステータスの取得 (拡張コマンド)
注記
2 つの入力引数 latest および exact の組み合わせにより、以下のように処
理されます。
• latest = 0, exact = 0(デフォルト):リングバッファ内の も古いレコードから順に maxRecords 個のレコー
ドを返します。 • latest = 1, exact = 0:
リングバッファ内の 新のレコードから順に maxRecords個のレコード
を返します。それより古いレコードは意図的に破棄されます。
• latest = 0, exact = 1: リングバッファ内の も古いレコードから順に maxRecords 個のレコー
ドを返します。それより新しいレコードは保持されます。リングバッファ
内のレコード数が maxRecords より少ない場合、何も受信しません。
• latest = 1, exact = 1: リングバッファ内の 新レコードから順に maxRecords 個のレコードを
返します。それより古いレコードは意図的に破棄されます。リングバッ
ファ内のレコード数が maxRecordsより少ない場合、何も受信しませ
ん。
コマンド名 IncaResetRecords
機能 すべてのシグナルグループ用のリングバッファをリセットします。
このコマンドは測定中でも実行できます。測定または記録を開始し
た時点においてリングバッファは自動的にリセットされるので、通
常は、この関数を使用する必要はありません。
リングバッファについては、7 ページの「INCA 用語集」で詳しく
説明されています。
構文 IncaResetRecords
出力引数
入力引数
使用例
コマンド名 IncaGetHardwareStatus
機能 測定中または記録中のハードウェアステータスを返します。
構文 [status, message] = IncaGetHardwareStatus
出力引数 status ハードウェアの現在のステータス
• 0: OK• 1: ワーニング状態
• 2: エラー状態
37
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.4.16 トリガの設定 (拡張コマンド)
message ステータス値が 1 または 2の場合、ワーニングまた
はエラーの内容を示すテキストを返します。
ステータス値が 1 または 2の場合、測定または終了
させてからでないと、再度
IncaGetHardwareStatusを実行することはで
きません。
使用例は、15 ページの「INCA-MIP API のサンプル
ファイル」に記述されているサンプルスクリプト
tHWStatus.minを参照してください。
入力引数
使用例
コマンド名 IncaSetTrigger
機能 記録の開始/終了トリガを設定します。この設定は
IncaStartMeasurementまたは IncaStartRecordingコ
マンドで測定または記録を開始する前に行います。
構文 IncaSetTrigger(startTrigger{, stopTrigger{, preTriggerTime{, postTriggerTime{, duration}}}})
出力引数
入力引数 startTrigger 開始時のトリガ条件
• manual: マニュアル操作で開始
• none: トリガを使用しない
stopTrigger 終了時のトリガ条件
• manual: マニュアル操作で開始
• none: トリガを使用しない(デフォルト)
preTriggerTime プリトリガ時間(単位: 秒)
• none: プリトリガ時間を設定しない(デ
フォルト)
postTriggerTime ポストトリガ時間(単位: 秒)
• none: ポストトリガ時間を設定しない
(デフォルト)
duration 記録を行う時間(上記の 4 つのトリガ条件が
すべて none の場合のみ有効)
• none: 時間を設定しない(デフォルト)
この場合、測定または記録の終了コマンド
を実行するまで記録が行われます。
使用例 IncaSetTrigger('nmot¥ETK:1 > 2000', 'none', 2.0, 3.0)IncaSetTrigger('none', 'none', 'none', 'none', 360)
注記
次の表に、入力引数の値として有効な組み合わせを示します。他の組み合わせ
を使用すると例外が発生します。
38
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
トリガの種類 startTrigger
stopTrigger
preTriggerTime
postTriggerTime
duration
記録時間を指定 'none' 'none' 'none' 'none' 値
マニュアルトリガで記録開始、プリトリガ時間を指定、マニュアルトリガで記録終了
'manual' 'manual' 値 'none' 'none'
マニュアルトリガで記録開始、プリトリガ時間とポストトリガ時間を指定
'manual' 'none' 値 値 'none'
マニュアルトリガで記録開始、プリトリガ時間と終了トリガ条件を指定
'manual' 値 値 'none' 'none'
マニュアルトリガで記録終了
'none' 'manual' 'none' 'none' 'none'
開始トリガ条件と記録時間を指定
値 'none' 'none' 'none' 値
開始トリガ条件を指定し、マニュアルトリガで記録終了
値 'manual' 'none' 'none' 'none'
開始トリガ条件とプリトリガ時間を指定し、マニュアルトリガで記録終了
値 'manual' 値 'none' 'none'
開始トリガ条件を指定し、プリトリガ時間とポストトリガ時間を指定
値 'none' 値 値 'none'
開始トリガ条件を指定し、プリトリガ時間と終了トリガ条件を指定
値 値 値 'none' 'none'
39
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.4.17 マニュアルトリガの発行 (拡張コマンド)
3.4.18 記録ステータスの取得 (拡張コマンド)
3.4.19 測定変数リストの取得 (拡張コマンド)
コマンド名 IncaExecuteManualTrigger
機能 記録を開始/終了するためのマニュアルトリガを発行します。ただ
しこのコマンドが有効なのは、前もって IncaSetTriggerコマ
ンドで startTrigger パラメータまたは stopTriggerパラ
メータの値が manualに設定されている場合のみです。
構文 IncaExecuteManualTrigger(type)
出力引数
入力引数 type トリガタイプ
• start: 開始のマニュアルトリガを発行
• stop: 終了のマニュアルトリガを発行
使用例 IncaExecuteManualTrigger('start')
コマンド名 IncaGetRecordingState
機能 現在の記録ステータスを返します。
構文 result = IncaGetRecordingState
出力引数 result 読み込まれたステータス
• 0: 非アクティブ
• 1: トリガ待ち状態、または記録中
入力引数
使用例 s = IncaGetRecordingState
コマンド名 IncaGetRecordStruct
機能 実験に割り当てられている測定変数のリストを返します。リストに
含まれる測定変数の並び順は、IncaAddMeasureElementコ
マンドで測定変数を割り当てた際の並び順と同じです。
構文 list = IncaGetRecordStruct(device,groupName)
出力引数
入力引数 device デバイス名
groupName 測定ラスタ名。ラスタ名を '+'という文字で連結
することにより(例: '10ms+100ms')、複数
のラスタを指定できます。
使用例 l = IncaGetRecordStruct('ETK:1', '10ms');list = IncaGetRecordStruct('device1', 'Syncro');
40
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.5 適合に使用される関数
適合(= 値の編集)は、「スカラ値」、「特性カーブ」、「特性マップ」、さらにカー
ブやマップが参照する「軸ポイントディストリビューション」について行うこと
ができます。各実験ごとに任意の数の適合変数を割り当てて適合することががで
きます。
3.5.1 適合変数名の取得 (拡張コマンド)
注記
適合変数名は、大文字と小文字が区別されます。
コマンド名 IncaBrowseCalibrationElements
機能 実験に割り当てられている適合変数の名前とタイプを、検索パター
ンとデバイスを指定して取得します。
構文 [name, type] = IncaBrowseCalibrationElements (pattern, {deviceName})[name] = IncaBrowseCalibratioElements(pattern, {deviceName})
出力引数 name 適合変数名のリスト
type 適合変数のタイプのリスト
• Distribution: 軸ポイントディストリ
ビューション
• OneDTable: カーブ
• TwoDTable: マップ
• Scalar: スカラ値
• Array: 配列
• Matrix: 行列
入力引数 pattern 適合変数を指定するための検索文字列
※'*' は 0 または 1 つ以上の数の文字を表し、
'#'は 1 つの文字を表します。これらのワイルド
カードで指定されるもの以外の文字は、すべて正確
に一致している必要があります。
※ 検索文字列内の大文字と小文字は区別されませ
ん。
deviceName デバイス名
使用例 [n,t]=IncaBrowseCalibrationElements('MAP*', 'Device');[name,type]=IncaBrowseCalibrationElements('*');
41
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.5.2 適合変数の追加
3.5.3 適合値の取得
コマンド名 IncaAddCalibrationElement
機能 現在開いている実験に、適合変数を1つ追加します。適合変数とし
て使用できるのは、スカラ値、および特性カーブ/マップ(軸ポイ
ントディストリビューションを含む)です。1 つの実験には任意の
数の適合変数を割り当てることができます。軸ポイントディストリ
ビューションとグループ軸ポイントディストリビューションに対し
てもこのコマンドを発行できます。
構文 IncaAddCalibrationElement(deviceName, calibrationName {, displayMode})
出力引数
入力引数 deviceName デバイス名
calibrationName 適合変数の名前
displayMode 変数の表示モード
• 2: 適合変数を表示し、常に内容を更新
します(デフォルト)
• 1: 表示しますが、更新は行いません
• 0: 非表示
※ 高速転送時は、1に設定することによ
りスループットが向上します。
使用例 IncaAddCalibrationElement('anEtk', 'Scalar');IncaAddCalibrationElement('anEtk', 'Curve');IncaAddCalibrationElement('anEtk', 'Map');
注記
タイプが axis(軸)および group axis(グループ軸)の適合変数は、
INCA-MIP V16.0 以降でサポートされています。ただしグループ軸を使用する
カーブとマップの補間は行われません。
コマンド名 IncaGetCalibrationValue
機能 適合変数の現在の値、または適合変数が参照する軸ポイントディス
トリビューションの現在の値を返します。
構文 value = IncaGetCalibrationValue(deviceName, calibrationName {, start, size} {, valueType})
出力引数 value 適合変数の現在の値
※ 変数のタイプに応じて以下の型のデータ
を返します。
• スカラ値の場合: (1,1) の行列
• カーブの場合: (x,1) の行列
• マップの場合: (x,y) の行列
• 軸ポイントディストリビューションの場
合: (x,1) の行列
入力引数 devicename デバイス名
calibrationName 適合変数名
42
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
start インデックスの初期値
※ 以下の値が有効です。
• カーブと軸ポイントディストリビュー
ション
の場合、開始インデックス x を指定しま
す。
(x >= 1)
• マップの場合、開始インデックス [x, y] を指定します。
(x,y >= 1)
size 読み込む値の数
※ 以下の値が有効です。
• カーブと軸ポイントディストリビュー
ションの場合、値の数 nを指定します。
(n >= 1)
• マップの場合、値の数 [n, m] を指定
します。
(n,m >= 1)
valueType 出力引数として受け取る適合変数の値の種
類を文字列で指定します。
• v: 出力値(デフォルト)
• x: カーブ/マップの軸ポイントの X 座
標値
• y: マップの軸ポイントの Y 座標値
使用例 aValue = IncaGetCalibrationValue('anEtk', 'Scalar');aCurve = IncaGetCalibrationValue('anEtk', 'Curve');aMap = IncaGetCalibrationValue('anEtk', 'Map');xMap = IncaGetCalibrationValue('anEtk', 'Map', 'x');yMap = IncaGetCalibrationValue('anEtk', 'Map', 'y');aCurveRange = IncaGetCalibrationValue('anEtk','Curve',2, 3);aMapRange = IncaGetCalibrationValue('anEtk', 'Map', [2,3], [3,4]);xMapRange = IncaGetCalibrationValue('anEtk', 'Map', 2, 3, 'x');
43
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.5.4 適合値の変更(適合の実行)
コマンド名 IncaSetCalibrationValue
機能 適合変数、または適合変数が参照する軸ポイントディストリビュー
ションの値を書き込みます。
構文 IncaSetCalibrationValue( deviceName, calibrationName, value )IncaSetCalibrationValue( deviceName, calibrationName, value, valueType )IncaSetCalibrationValue( deviceName, calibrationName, value, start )IncaSetCalibrationValue( deviceName, calibrationName, value, start, valueType )result = IncaSetCalibrationValue( deviceName, calibrationName, value )result = IncaSetCalibrationValue( deviceName, calibrationName, value, valueType )result = IncaSetCalibrationValue( deviceName, calibrationName, value, start )result = IncaSetCalibrationValue( deviceName, calibrationName, value, start, valueType )
44
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
出力引数 result 適合結果(エラー時のみ)
※ いずれのビットも 1 でない場合、適合値
が正しく変更されたことを示します。
※ ビット 5 ~ 8 のいずれかが 1 の場合、適
合値が条件付きで変更されたことを示しま
す。
※ ビット 0 ~ 4 のいずれかが 1 の場合、適
合値が変更されていません。
• ビット 0: 適合が実行されませんでした
• ビット 1: 値が下限値(ソフトリミット)
を上回っています
• ビット 2: 値が上限値(ソフトリミット)
を下回っています
• ビット 3: 値が下限値(ハードリミット)
を上回っています
• ビット 4: 値が下限値(ハードリミット)
を下回っています
• ビット 5: 値が下限値(ソフトリミット)
に設定されました
• ビット 6: 値が下限値(ソフトリミット)
に設定されました
• ビット 7: 値が上限値(ソフトリミット)
に設定されました
• ビット 8: 値が下限値(ハードリミット)
に設定されました
※ 適合が実行されない理由はいくつかあり
ます。要求された値が、現在設定されてい
る適合モードに応じたリミット値を超えた
場合は、ビット 1 ~ 4 にその詳細が示され
ます。その他の理由による場合、たとえば
適合変数や現在のメモリページが書込み禁
止になっている場合、または要求された値
によって X/Y 座標値のモノトニーが破られ
てしまう(値が順に増加しなくなってしま
う)場合は、ビット 0 のみが 1 にセットさ
れます。
入力引数 devicename デバイス名
calibrationName 適合変数名
value 適合変数の値
※ 変数のタイプに応じて以下の型のデータ
を使用します。
• スカラ値の場合: (1,1) の行列
• カーブの場合: (x,1) の行列
• マップの場合: (x,y) の行列
• 軸ポイントディストリビューションの場
合: (x,1) の行列
45
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.5.5 データセットをデバイスに割り当てる (拡張コマンド)
3.5.6 デバイスのデータセットリストを取得 (拡張コマンド)
start インデックスの初期値。以下の値が有効で
す。
• カーブと軸ポイントディストリビュー
ションの場合、開始インデックス xを指
定します。
(x >= 1)
• マップの場合、開始インデックス [x, y] を指定します。
(x,y >= 1)
valueType 適合する値の種類を文字列で指定します。
• v: 出力値(デフォルト)
• x: カーブ/マップの軸ポイントの X 座
標値
• y: マップの軸ポイントの Y 座標値
使用例 IncaSetCalibrationValue('anEtk', 'Scalar', aValue);IncaSetCalibrationValue('anEtk', 'Curve', aCurve);IncaSetCalibrationValue('anEtk', 'Map', aMap);IncaSetCalibrationValue('anEtk', 'Map', xMap, 'x');IncaSetCalibrationValue('anEtk', 'Map', yMap, 'y');IncaSetCalibrationValue('anEtk', 'Curve', aCurveRange,2);IncaSetCalibrationValue('anEtk', 'Map', aMapRange,[2,3]);IncaSetCalibrationValue('anEtk', 'Map', xMapRange,2, 'x');
コマンド名 IncaSetDatasetInDevice
機能 現在開いている実験内のデバイスにデータセットを割り当てます。
構文 IncaSetDatasetInDevice(device,dataset)
出力引数
入力引数 device デバイス名
dataset データセット名(データベース内のパスを含む)
使用例 IncaSetDatasetInDevice('ETK:1','Ds4711¥Ds4711_3')
コマンド名 IncaGetDatasetsForDevice
機能 指定のデバイスに割り当てられているデータセットのリストを取得
します。
構文 name = IncaGetDatasetsForDevice(device)[name, properties] = IncaGetDatasetsForDevice(device)
46
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.5.7 適合モードの設定 (拡張コマンド)
出力引数 name 検索されたすべてのデータセット名(フルパス)の
リスト
properties データセットの属性を表す以下の文字列リスト
• ''(空の文字列): 読み書き可能
• r: 読み込みのみ可能なデータセット
• m: 読み書き可能なマスタデータセット
• mr: 読み込みのみ可能なマスタデータセット
入力引数 device デバイス名
使用例 l = IncaGetDatasetsForDevice('ETK:1')
コマンド名 IncaSetCalibrationMode
機能 このコマンドの実行後に IncaSetCalibrationValueコマン
ドで実行されるすべての適合処理に適用される共通の適合モード
(上下限値を超える値が指定された際の処理モード)を設定します。
設定されたモードは、実験を一度閉じて再度開いた後も継続して有
効となります。ただし MATLAB インターフェースの起動時には、
上限値と下限値の両方にデフォルトモードである
rejectWeakBoundViolation が設定されます。
構文 IncaSetCalibrationMode(lowerLimitMode, upperLimitMode)
出力引数
入力引数 lowerLimitMode 下限値よりも小さい値についての処理
upperLimitMode 上限値よりも大きな値についての処理
上記 2 つの引数には以下のモードが有効で
す。
• rejectWeakBoundViolation: ソフトリミット値の範囲を超える値を設定
しようとすると、それ以降の適合コマン
ドがすべて拒否されます。(デフォルト)
• limitToWeakBound: ソフトリミッ
ト値の範囲を越える値を設定しようとす
ると、設定しようとした値の代わりにソ
フトリミット値(上限値または下限値)
が設定されます。
• rejectHardBoundViolation: ハードリミット値の範囲を超える値を設
定しようとすると、それ以降の適合コマ
ンドがすべて拒否されます。
• limitToHardBound: ハードリミッ
ト値の範囲を越える値を設定しようとす
ると、設定しようとした値の代わりに
ハードリミット値(上限値または下限値)
が設定されます。
使用例 IncaSetCalibrationMode('rejectHardBoundViolation','limitToHardBound')
47
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.5.8 グループデバイス (拡張コマンド)
3.5.9 DCM ファイルの書き込み (拡張コマンド)
3.6 メモリページ管理に使用される関数
ここまでに説明されているすべての各 API 関数は、デバイス上で現在アクティブ
になっているページについてのみ機能します。ECU への適合アクセスはワーキ
ングページ間で行われますが、INCA データベースと ETK との間でワーキング
ページのチェックサムが一致しない場合、ETK のワーキングページはロックさ
れ、書き込み禁止となります。
以下に、メモリページ管理に関する機能を持つ API 関数を紹介します。
3.6.1 メモリページの切り替え
コマンド名 IncaGroupDevices
機能 グループデバイス(グループ適合が行われる複数のデバイス)のグ
ルーピングのオン/オフを切り替えます。
構文 IncaGroupDevices(onOff)
出力引数
入力引数 onOff • 0: デバイスのグルーピングをオフ(無効)にします。
• 1: デバイスのグルーピングをオン(有効)にします。
使用例 IncaGroupDevices(1)
コマンド名 IncaWriteToFile
機能 現在開いている実験のデータを DCM ファイルに書き込みます。
構文 IncaWriteToFile(format,file,device,calibs{,options})
出力引数
入力引数 format ファイルフォーマットの識別子
• 'DCM': DCM フォーマット
file ファイル名(フルパス)
device 書き込む適合変数が属するデバイスの名前
calibs 書き込む適合変数のリスト(セル配列)
options 指定のファイルフォーマットへの書き込み時のオプ
ション
使用例 calibs = {'A0_KW', 'BRABEVI_KL', 'KFZW_GKF'};IncaWriteToFile('DCM','C:¥DCMOut1.dcm','device1',calibs);IncaWriteToFile('DCM','C:¥DCMOut2.dcm','ETK:1','A0_KW');
コマンド名 IncaSwitchPage
機能 指定のメモリページをアクティブにします。
構文 IncaSwitchPage(deviceName, pageName)
出力引数
48
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.6.2 カレントページの取得 (拡張コマンド)
3.6.3 書き込み保護チェック
3.6.4 メモリページのダウンロード
入力引数 deviceName デバイス名
pageName ページ名
• wp: ワーキングページ
• rp: リファレンスページ
使用例
コマンド名 IncaGetCurrentPage
機能 現在アクティブになっているページを取得します。
構文 pageName = IncaGetCurrentPage(deviceName)
出力引数 pageName ページ名
• wp: ワーキングページ
• rp: リファレンスページ
入力引数 deviceName デバイス名
使用例
コマンド名 IncaIsPageWriteProtected
機能 指定のメモリページが書き込み禁止になっているかどうかを調べま
す。
構文 isRW = IncaIsPageWriteProtected(deviceName, pageName)
出力引数 isRW • 0: 書き込み可能
• ≠ 0: 書き込み禁止
入力引数 deviceName デバイス名
pageName ページ名
• wp: ワーキングページ
• rp: リファレンスページ
使用例
コマンド名 IncaDownloadPages
機能 指定のメモリページを ECU にダウンロードします。
構文 IncaDownloadPage(deviceName, pageName)
出力引数
入力引数 deviceName デバイス名
pageName ダウンロードするページ名
• wp: ワーキングページ
• rp: リファレンスページ
使用例
49
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.6.5 メモリページのコピー
3.6.6 不一致部分のダウンロード
3.6.7 メモリページのアップロード (拡張コマンド)
コマンド名 IncaCopyPageFromTo
機能 指定のメモリページをコピーします。現時点では、リファレンス
ページからワーキングページへのコピーしかサポートされていませ
ん。
構文 IncaCopyPageFromTo(deviceName, sourcePageName, destinationPageName)
出力引数
入力引数 deviceName デバイス名
sourcePageName コピー元のページ
• wp: ワーキングページ
• rp: リファレンスページ
destinationPageName コピー先のページ
• wp: ワーキングページ
• rp: リファレンスページ
使用例
コマンド名 IncaDownloadDifferences
機能 INCA のワーキングページとリファレンスページ間で値の異なる部
分のみを、ECU にダウンロードします。この処理は、ECU のワー
キングページとリファレンスページの内容が INCA のリファレン
スページの内容と一致している場合にのみ実行されます。 構文 IncaDownloadDifferences( deviceName )
出力引数
入力引数 deviceName デバイス名
使用例
コマンド名 IncaUploadPages
機能 ECU のリファレンスページとワーキングページをアップロードし
て、新しいデータセットを作成します。作成されたデータセットは
自動的にそのデバイスに割り当てらます。
構文 IncaUploadPages(device{,referencePage,workingPage})
出力引数
入力引数 device デバイス名
referencePage リファレンスページ用のデータセット名。指
定がない場合はデフォルト名が使用されます。
workingPage ワーキングページ用のデータセット名。指定
がない場合はデフォルト名が使用されます。
使用例 IncaUploadPages('ETK:1');IncaUploadPages('ETK:1', 'ref_1', 'work_1');
50
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
3.7 API 関数の応用例
例 1ワーキングページが(チェックサム不一致により)書き込み禁止になっているか
どうかチェックし、書き込み禁止の場合にはページをダウンロードします。
% Check if working page is write-protected and
% download the page if it is write-protected
if(IncaIsPageWriteProtected ('anEtk', 'wp'))
IncaDownloadPage('anEtk', 'wp');
end
% Switch to the working page
IncaSwitchPage( 'anEtk', 'wp');
例 2以下に、各 API 関数を利用して、デバイス MyDevice の測定ラスタ 10ms から
測定値を読み取る例を示します。この例に示された処理を行うには、前もって
INCA 上で、MyDevice という名前のデバイスが割り当てられた実験を開いて
おく必要があります。
% Measure the following signals (測定変数の割り当て)
IncaAddMeasureElement( 'MyDevice', '10ms', 'Chan1' );
IncaAddMeasureElement( 'MyDevice', '10ms', 'Chan2' );
IncaAddMeasureElement( 'MyDevice', '10ms', 'Chan3' );
IncaAddMeasureElement( 'MyDevice', '10ms', 'Chan4' );
% Now measure (測定開始)
data = [];
time = [];
IncaShowMessages(0);
IncaSetMeasureReadMode(0)
IncaStartMeasurement;
deltaT = 0;
% Measure for 20 seconds (合計で 20秒間測定を行う)
while( deltaT < 20 )
% Pause for 0.1 seconds to have more than one
% record -- saves processor time. (0.1 秒間ポーズ)
pause(0.1)
% Get up to 500 records for group 10ms (10ms ラスタの
データを 大 500レコード取得)
[ t, d ]=IncaGetRecords( 'MyDevice', '10ms', 500 );
% Append t and d to time and data (データを保存)
data = [data; d];
time = [time; t];
if( length(time) )
% Calculate time measured (測定時間の計算)
deltaT = time( length(time)) - time(1);
51
ETAS INCA-MIP V7.3 - ユーザーズガイド 3. API 関数
end
end
IncaStopMeasurement;
IncaShowMessages(1);
% Plot the results (データの視覚化)
plot(time, data);
上記の例では、1 つのラスタのみを使用して測定を行っていますが、実際には複
数のラスタに測定変数を割り当て、各ラスタからデータを取得することができま
す。
52
ETAS INCA-MIP V7.3 - ユーザーズガイド 4. スタンドアロン実行ファイルの作成と配布
4 スタンドアロン実行ファイルの作成と配布
INCA-MIP 関数を含む MATLAB API 関数を使用する M ファイルをコンパイルし
てスタンドアロン形式の実行ファイルを作成すると、MATLAB がインストール
されていない環境でそのファイルを実行することができます。
スタンドアロン形式の実行ファイルの作成と配布の方法は、MATLAB コンパイ
ラバージョンに応じて異なります。
4.1 スタンドアロン実行ファイルの作成と配布( MATLAB R13 コンパイラ使用時)
スタンドアロン形式の実行ファイルを作成するには、MATLAB がインストール
された環境が必要です。作成された実行ファイルをターゲットシステム上で実行
する際は、ターゲットシステムに MATLAB と ETAS のランタイムライブラリ
(DLL ファイル)をコピーする必要がありますが、MATLAB 自体をインストール
しておく必要はありません。
4.1.1 M ファイルのコンパイル
操作手順 : MATLAB R13 コンパイラを使用して M ファイルをコンパイルす
る:
1. 以下のコマンドを実行します。
mcc -m <m-file-script>
例:
以下のコマンドを実行すると、testCase1.m というファイル
からスタンドアロン実行ファイルが生成されます。
mcc -m testCase1
この結果、testCase1.exe というファイルが生成されます。
MATLAB コンパイラの詳しい設定については、MATLAB ユーザーマニュアルの
MATLAB Compiler または mcc というキーワードについての項を参照してくださ
い。
注記
コンパイルされたスクリプトを実行するには、スクリプトで使用される INCAのすべての *.dllファイルと incaRci2Matlab.dll を、スクリプトが
実行されるターゲットシステム上にコピーしておく必要があります。詳しくは
57 ページの「MATLAB R13 コンパイラでコンパイルされたスタンドアロン実
行ファイルを配布する:」を参照してください。
注記
INCA は、一度に 1 つの MATLAB セッションからしか操作できません。
MATLAB やスタンドアロン実行ファイルの複数インスタンスから同時に INCAを操作しようとすると、その処理は中止されてエラーメッセージが表示されま
す。
53
ETAS INCA-MIP V7.3 - ユーザーズガイド 4. スタンドアロン実行ファイルの作成と配布
4.1.2 スタンドアロン実行ファイルの配布
前述の手順で作成されたスタンドアロン実行ファイルを実行するには、
MATLAB と ETAS の両方のランタイムライブラリが必要ですが、MATLAB 自体
をインストールする必要はありません。
操作手順 : MATLAB R13 コンパイラでコンパイルされたスタンドアロン実行
ファイルを配布する:
1. 以下のいずれかを行います。
- ターゲットシステムに、必要な MATLAB ランタイムライブ
ラリをインストールします。MATLAB ランタイムライブラ
リをインストールする方法については、MATLAB ユーザー
マニュアルの Distributing Stand-Alone Applications を参照
してください。
ETAS ランタイムライブラリをインストールするには、
INCA-MIP アドオンをインストールする際に、インストール
プログラム内で Installation into ETASData を選択します
(5 ページの「INCA-MIP を DVD からインストールする」を
参照してください)。
- 必要なファイルを、開発用マシン上の MATLAB ディレクト
リ内の以下の場所からコピーします。
%MATLABDir%¥bin¥win32¥incaRci2Matlab.dll
%MatlabDir%¥toolbox¥matlab¥general¥Inca*.dll
2. これらのファイルを、スタンドアロン実行ファイルを同じディ
レクトリにコピーします。
4.2 スタンドアロン実行ファイルの作成と配布(MATLAB R14 以降のコンパイラ使用時)
スタンドアロン形式の実行ファイルを作成するには、MATLAB がインストール
された環境が必要です。作成された実行ファイルをターゲットシステム上で実行
する際は、MATLAB がインストールされている必要はなく、また R14 以降のコ
ンパイラを使用する場合は、MATLAB と ETAS のランタイムライブラリ(DLLファイル)も必要ありません。
4.2.1 M ファイルのコンパイル
操作手順 : MATLAB R14 コンパイラを使用して M ファイルをコンパイルす
る:
1. INCA の *dllファイルをすべて現在のワーキングディレクト
リにコピーします。
2. 以下のコマンドを実行します。
mcc -m <m-file-script> -a incaRci2Matlab.dll
例:
以下のコマンドを実行すると、testCase2.m というファイル
からスタンドアロン実行ファイルが生成されます。
mcc -m testCase2 -a incaRci2Matlab.dll
この結果、testCase2.exe というファイルが生成されます。
54
ETAS INCA-MIP V7.3 - ユーザーズガイド 4. スタンドアロン実行ファイルの作成と配布
MATLAB R14 コンパイラの場合、コンパイル時に「コンテナ」が作成され、
MATLAB スクリプトを実行する際に使用されるすべての MEX 関数の DLL ファ
イルとその他の関連する DLL ファイルがその中に格納されます。この中には
INCA の全 *.dllファイルと incaRci2Matlab.dll も含まれます。
そのため、コンパイルされたスクリプトを実行する際は、システム上に DLLファイルをコピーしておく必要がありません。
MATLAB コンパイラの詳しい設定については、MATLAB ユーザーマニュアルの
MATLAB Compiler または mcc というキーワードについての項を参照してくださ
い。
4.2.2 スタンドアロン実行ファイルの配布
MATLAB R14 のコンパイラでコンパイルされたスタンドアロン実行ファイルを
実行する際は、その実行ファイル以外のファイルは必要ありません。MATLABがインストールされている必要はなく、ライブラリも必要ありません。
操作手順 : MATLAB R14 コンパイラでコンパイルされたスタンドアロン実行
ファイルを配布する:
1. スタンドアロン実行ファイルをターゲットシステムにコピーし
ます。
上記の操作を行うだけで、実行ファイルを実行することができます。
注記
INCA は、一度に 1 つの MATLAB セッションからしか操作できません。
MATLAB やスタンドアロン実行ファイルの複数インスタンスから同時に INCAを操作しようとすると、その処理は中止されてエラーメッセージが表示されま
す。
注記
MATLAB R14 SP3(バージョン 7.1)以降では、INCA MEX 関数の DLL ファ
イルの拡張子は *.mexw32です。
55
ETAS INCA-MIP V7.3 - ユーザーズガイド 5. お問い合わせ先
56
5 お問い合わせ先
製品に関するご質問等は、各地域の ETAS 支社までお問い合わせください。
ETAS 本社
ETAS GmbH
その他のお問い合わせ先
上記以外の各国支社の連絡先と技術サポート窓口につきましては、ETAS ホーム
ページをご覧ください。
Borsigstrasse 24 電話 : +49 711 3423-070469 Stuttgart Fax: +49 711 3423-2106Germany インターネット : www.etas.com
各国支社 インターネット : www.etas.com/ja/contact.php技術サポート インターネット : www.etas.com/ja/hotlines.php
ETAS INCA-MIP V7.3 - ユーザーズガイド 索引
索引
EETAS ライセンスマネージャ ................. 12
IINCA
ライセンス . . . . . . . . . . . . . . . . . . . 12IncaAddCalibrationElement ................ 42IncaAddMeasureElement ................... 26IncaBrowseCalibrationElements ........ 41IncaBrowseItemsInFolder ................... 22IncaBrowseMeasureElements ............ 26IncaClose ............................................. 21IncaCopyPageFromTo ........................ 50IncaDatabaseImport ........................... 21IncaDownloadDifferences .................. 50IncaDownloadPages ........................... 49IncaExecuteManualTrigger ................. 40IncaGetCalibrationValue ................. 6, 42IncaGetCurrentPage ............................ 49IncaGetDatasetsForDevice ................. 46IncaGetDeviceProperties .................... 24IncaGetDevices ................................... 24IncaGetHardwareStatus ..................... 37IncaGetInstalledAddOnInfo ................ 19IncaGetInstalledProductInfo .............. 18IncaGetMeasureRasterForDevice ...... 26IncaGetProperties ............................... 20IncaGetRecordingMode ...................... 32IncaGetRecordingProperties .............. 29IncaGetRecordingState ....................... 40IncaGetRecords ................................... 35IncaGetRecordStruct .......................... 40IncaGetVersion .................................... 19IncaGroupDevices ............................... 48IncaIsLicenseValid .............................. 18IncaIsPageWriteProtected .................. 49IncaOpen .............................................. 20IncaOpenDatabase .............................. 21IncaOpenExperiment ........................... 23IncaResetExperiment .......................... 24IncaResetRecords ............................... 37IncaSetCalibrationMode ..................... 47IncaSetCalibrationValue ..................... 44IncaSetDatasetInDevice ..................... 46IncaSetMeasureReadMode ................ 34IncaSetProjectAndDatasetInDevice ... 23IncaSetRecordingMode ...................... 33IncaSetRecordingProperties .............. 30IncaSetTrigger ..................................... 38IncaShowMessages ............................ 18IncaStartMeasurement ....................... 28IncaStartRecording ............................. 33IncaStopMeasurement ....................... 28IncaStopRecording ............................. 34
IncaSwitchPage .................................. 48IncaUploadPages ................................ 50IncaWriteToFile ................................... 48
MMATLAB スクリプト ............................... 5mcc ................................................ 53, 54MEX ファイル ................................... 9, 15M ファイル ........................................ 5, 15
コンパイル . . . . . . . . . . . . . . . . 53, 54
さ
サンプルファイル .................................. 15
し
シグナル .................................................. 7シグナルグループ .................................... 7
す
スタンドアロン実行ファイル ................ 53
そ
測定 ......................................................... 5測定データ .............................................. 7測定ラスタ .............................................. 7
て
データレコード ....................................... 7適合 ......................................................... 5適合変数 .................................................. 8デバイス .................................................. 8
と
問い合わせ先 ......................................... 56
め
メモリページ管理 .................................... 5
ら
ライセンス ............................................ 12INCA . . . . . . . . . . . . . . . . . . . . . . . . 12
り
リングバッファ ....................................... 8
57