(57)【特許請求の範囲】
【請求項１】
プロセスプラントで使用される資産管理システム（ＡＭＳ）データベースに装置データをインポートする方法であって、
入力手段が、１セットのインポートパラメータを利用して装置がどのように動作するのかの特性を記述する装置データを含むインポートファイルを受け取ることであって、該インポートファイルは、前記１セットのインポートパラメータの各インポートパラメータに対応するインポートパラメータ値を含み、
前記入力手段が、前記資産管理システム（ＡＭＳ）データベース内で前記装置を記述するために使用される１セットの出力パラメータを、前記資産管理システム（ＡＭＳ）データベースから受け取ることと、
制御手段が、前記１セットの出力パラメータが受け取られた後、前記１セットのインポートパラメータを前記１セットの出力パラメータにマッピングするマッピングが存在するか否かを決定し、該マッピングが存在しなければ、前記入力手段により受け取られた、前記資産管理システム（ＡＭＳ）データベースによって使用される前記１セットの出力パラメータに対する、前記入力手段により受け取られた前記インポートファイルによって使用される前記１セットのインポートパラメータのマッピングを作成することと、
前記制御手段が、前記１セットの出力パラメータを使用して前記装置を記述する出力データを含む出力ファイルを生成するために、前記マッピングを使用することであって、各出力パラメータは、前記装置データ及び前記マッピングから決定される対応する値を有し、
前記制御手段が、前記資産管理システム（ＡＭＳ）データベースに前記出力ファイルからの出力データをマージすることと、
を含み、
前記インポートファイルを受け取ることは、
前記入力手段が、前記装置の製造者名、前記装置のモデル名、及び前記装置の改訂を表す値を含む装置情報をユーザから受け取ることと、
前記制御手段が、前記入力手段により受け取られた前記装置情報に基づいて、前記インポートファイルを開くことと、
前記入力手段が、前記インポートファイルからの前記装置データを受け取ることと、
を含み、
前記１セットの出力パラメータを受け取ることが、
前記制御手段が、前記装置情報に基づいて、前記１セットの出力パラメータを含むテンプレートファイルを開くことと、
前記入力手段が、前記テンプレートファイルから前記１セットの出力パラメータを受け取ることと、
を含み、
前記マッピングを作成することが、
前記制御手段がコンピュータ出力装置上に、前記１セットのインポートパラメータの第１のリストを表示することと、
前記制御手段が前記コンピュータ出力装置上に、前記１セットの出力パラメータの第２のリストを表示することと、
前記入力手段が、前記コンピュータ出力装置上に表示された前記第１のリストから第１のインポートパラメータを選択する信号を入力することと、
前記入力手段が、前記コンピュータ出力装置上に表示された前記第２のリストから第１の出力パラメータを選択する信号を入力することと、
前記制御手段が、前記入力手段により入力された信号に基づいて選択された前記第１のインポートパラメータを、前記入力手段により入力された信号に基づいて選択された前記第１の出力パラメータにマッピングすることと、
を含み、
前記第１のリスト及び前記第２のリストが、前記コンピュータ出力装置上の第１のウインドウ内に提供され、
前記第１のリストが、第１の複数のセルを含む第１の列を含む第１のグリッド上に提供され、前記第１の複数のセルの少なくとも１つが前記１セットのインポートパラメータからのインポートパラメータを含み、
前記第２のリストが、第２の複数のセルを有する第２の列と、第３の複数のセルを含む第３の列と、第４の複数のセルを含む第４の列とを含む第２のグリッド上に提供され、前記第２の複数のセルの少なくとも１つが前記１セットの出力パラメータからの出力パラメータを含み、前記第３の複数のセルの少なくとも１つが前記１セットの出力パラメータからの出力パラメータのデータタイプを含み、前記第４の複数のセルの少なくとも１つが前記１セットのインポートパラメータからのインポートパラメータを含む、
プロセスプラントで使用される資産管理システム（ＡＭＳ）データベースに装置データをインポートする方法。
【請求項２】
前記入力手段が、前記装置に関連したアクセス変数、コマンド及び操作手順の定義を受け取ることを更に含む、請求項１記載の方法。
【請求項３】
前記入力手段が、前記１セットのインポートパラメータの前記第１のリストに含まれていない第２のインポートパラメータの名称をユーザから受け取ることと、
前記制御手段が、前記第２のインポートパラメータを前記１セットのインポートパラメータに追加することと、
前記制御手段が前記コンピュータ出力装置上において、前記第２のインポートパラメータを前記第１のウインドウの前記第１の列のセルに表示することと、
を更に含む、請求項１記載の方法。
【請求項４】
前記入力手段が、前記１セットのインポートパラメータからの第３のインポートパラメータを含む前記第１の列から第１のセルを選択する信号を入力することと、
前記入力手段が、前記第３のインポートパラメータを削除するための命令をユーザから受け取ることと、
前記制御手段が、前記入力手段により前記削除するための命令が入力された場合、前記１セットのインポートパラメータから、前記入力手段により入力された信号に基づいて選択された前記第３のインポートパラメータを削除することと、
前記制御手段が、前記第１の列から前記入力手段により入力された信号に基づいて選択された前記第１のセルを削除することと、
を更に含む、請求項１記載の方法。
【請求項５】
前記制御手段が前記コンピュータ出力装置上の第２のウインドウであって、第５の複数のセルを含む第３のグリッドを含み、前記第５の複数のセルの少なくとも１つが前記インポートファイルからのインポートパラメータ値を含む、第２のウインドウ内に、前記装置データをリスト表示することと、
前記入力手段が、前記コンピュータ出力装置上において、前記第５の複数のセルから、前記１セットのインポートパラメータからの第４のインポートパラメータに対応する第１のインポートレコードの第１のインポート値を含む第１のセルを選択する信号を入力することと、
前記制御手段が、前記第１のセルの値を前記第１のインポート値から第２のインポート値に変更することと、
前記制御手段が、前記第２のインポート値を前記第１のインポートレコード内の前記第４のインポートパラメータに割り当てることと、
を更に含む、請求項１記載の方法。
【請求項６】
前記第１のセルの値を変更することが、
前記制御手段が、前記第５の複数のセルの第２のセルから前記第２のインポート値をコピーすることと、
前記制御手段が、前記第２のインポート値を前記第１のセルにペーストすることと、
を含む、
請求項５記載の方法。
【請求項７】
前記第１のセルの値を変更することが、
前記制御手段が、前記第５の複数のセルの第３のセルであって、前記第３のグリッド内の前記第１のセルを含む第５の列の一番上にある第３のセルから、前記第２のインポート値をコピーすることと、
前記制御手段が、前記第２のインポート値を、前記第５の列の前記第３のセルと前記第１のセルとの間にある各セルにペーストすることと、
を含む、
請求項５記載の方法。
【請求項８】
前記第１のセルの値を変更することが、
前記制御手段が、前記第５の複数のセルの第４のセルであって、前記第１のセルを含む前記第３のグリッド内の第６の列の一番上にある第４のセルから、第３のインポート値をコピーすることと、
前記制御手段が、前記第２のインポート値を得るために、前記第３のインポート値を所定の数だけ増加させることと、
前記制御手段が、前記第２のインポート値を前記第１のセルにペーストすることと、
を含む、
請求項５記載の方法。
【請求項９】
前記第１のインポートパラメータを選択すること、及び、前記第１の出力パラメータを選択することが、
前記入力手段が、前記第１の出力パラメータを含む前記第２の列内のセルを選択する信号を入力することと、
前記制御手段が、前記第１のインポートパラメータを受け取るために第１の入力テンプレートを開くことと、
前記制御手段が、前記第１の入力テンプレート上に、前記１セットのインポートパラメータからの第３のインポートパラメータリストを提供することと、
前記入力手段が、前記第３のインポートパラメータリストから前記第１のインポートパラメータを選択する入力をユーザから受け取ることと、
を含む、
請求項１記載の方法。
【請求項１０】
前記第１のインポートパラメータを選択すること、及び、前記第１の出力パラメータを選択することが、
前記入力手段が、前記第１のインポートパラメータを含む前記第１の列内のセルを選択する信号を入力することと、
前記制御手段が、前記第１のウインドウ上のカーソルをドラッグ−ドロップポインタに変更することと、
前記入力手段が、前記第１の出力パラメータを含む前記第２の列内のセルを選択する信号を入力することと、
を含む、
請求項１記載の方法。
【請求項１１】
前記制御手段が、前記装置情報に基づいて、前記第１の出力パラメータに対応する第１の列挙値セットを含む列挙ファイルを開くことを更に含む、請求項１記載の方法。
【請求項１２】
前記制御手段が、前記装置データ内の前記第１のインポートパラメータに対応する第１のインポート値リストを提供することと、
前記入力手段が、前記第１のインポート値リストから第１のインポート値を選択する信号を入力することと、
前記制御手段が、前記第１の出力パラメータに対応する前記第１の列挙値セットからの第２の列挙値リストを提供することと、
前記入力手段が、前記第１の列挙値リストから第１の列挙値を選択する信号を入力することと、
前記制御手段が、前記第１の列挙値に対する前記第１のインポート値の列挙マッピングを作成することと、
を更に含む、請求項１１記載の方法。
【請求項１３】
前記入力手段が、前記第２の列から前記第１の出力パラメータを選択する信号を入力することと、
前記制御手段が、前記第１の出力パラメータに対する第１の出力パラメータ特性セットであって、（１）前記第１の出力パラメータのタイプ、（２）前記第１の出力パラメータの最大長、（３）前記第１の出力パラメータの値に含まれ得る第１の明示的な文字セット、（４）前記第１の出力パラメータの値から除外される第２の明示的な文字セット、（５）前記第１の出力パラメータのデフォルト値、及び（６）前記第１の出力パラメータの許容可能値の列挙リストの少なくとも１つを含む第１の出力パラメータ特性セットを受け取るために、第２のテンプレートを提示することと、
前記入力手段が、前記第１の出力パラメータ特性セットの少なくとも１つの特性を表す値をユーザから受け取ることと、
を更に含む、請求項１２記載の方法。
【請求項１４】
前記制御手段が、第１の明示的な値に対する第２の出力パラメータの第２のマッピングを作成することを更に含む、請求項８記載の方法。
【請求項１５】
前記第２のマッピングを作成することが、
前記制御手段が、前記第１の明示的な値を受け取るために、前記第１の入力テンプレート上に第１の入力フィールドを提供することと、
前記入力手段が、前記第１の入力フィールドにおいてユーザから前記第１の明示的な値を受け取ることと、
前記制御手段が、前記第１の明示的な値に対する前記第２の出力パラメータの前記第２のマッピングを作成することと、
を含む、
請求項１４記載の方法。
【請求項１６】
前記入力手段が、前記第１の入力フィールドにおいてユーザから第１の置換キーを受け取ることと、
前記制御手段が、前記第１の置換キーを第２の明示的な値に変換することと、
前記制御手段が、前記第２の明示的な値を前記第２の出力パラメータにマッピングすることと、
を更に含む、請求項１５記載の方法。
【請求項１７】
前記第１の置換キーが、（１）日付キー、（２）時間キー、（３）アプリケーション名キー、（４）製造者名キー、（５）パスキー、及び（６）装置名キーの１つとして選択される、請求項１６記載の方法。
【請求項１８】
前記制御手段が前記コンピュータ出力装置上において、前記コンピュータ出力装置の第３のウインドウであって、第６の複数のセルを含む第４のグリッドを含み、前記第６の複数のセルの少なくとも幾つかが前記複数の出力値からの出力値を含む、第３のウインドウ内に、前記第１の出力データセットをリスト表示することと、
前記入力手段が、前記第６の複数のセルから、前記１セットの出力パラメータからの第２の出力パラメータに対応する第１の出力レコードの第１の出力値を含む第５のセルを選択する信号を入力することと、
前記制御手段が、前記第５のセルの値を前記第１の出力値から第２の出力値に変更することと、
前記制御手段が、前記第１の出力レコード内の前記第２の出力パラメータに前記第２の出力値を割り当てることと、
を更に含む、請求項１記載の方法。
【請求項１９】
プロセスプラントで使用される資産管理システム（ＡＭＳ）データベースに装置データをインポートするコンピュータシステムであって、
コンピュータが読み取り可能な媒体と、
処理装置と、
前記コンピュータが読み取り可能な媒体に格納されかつ前記処理装置上で実行されるルーチンであって、
前記ルーチンは、
入力手段が、１セットのインポートパラメータを利用して装置がどのように動作するのかの特性を記述する装置データを含むインポートファイルを受け取る第１のルーチンであって、該インポートファイルは、前記１セットのインポートパラメータの各インポートパラメータに対応するインポートパラメータ値を含む、該第１のルーチンと、
前記入力手段が、１セットの出力パラメータを受け取る第２のルーチン、
制御手段が、前記１セットの出力パラメータが受け取られた後、前記１セットのインポートパラメータを前記１セットの出力パラメータにマッピングするマッピングが存在するか否かを決定し、該マッピングが存在しなければ、前記入力手段により受け取られた前記１セットの出力パラメータに対する前記入力手段により受け取られた前記１セットのインポートパラメータの第１のマッピングを作成する第３のルーチンと、
前記制御手段が、前記第１のマッピングを含むマッピングファイルを生成する第４のルーチンと、
前記制御手段が、前記マッピングファイルを用いて出力ファイルを生成する第５のルーチンであって、前記出力ファイルが、第１の出力レコードセットを含む第１の出力データセットを含み、各出力レコードが複数の出力値を含み、各出力値が前記１セットの出力パラメータからの１つの出力パラメータに対応する、第５のルーチンと、
前記制御手段が、前記出力ファイルからの前記第１の出力データセットを前記資産管理システム（ＡＭＳ）データベースにマージする更なる第５のルーチンと、
を含み、
前記第１のルーチンが、
前記入力手段が、装置の製造者名、装置のモデル名及び装置の改訂を表す値を含む第１の装置識別情報セットをユーザから受け取る第６のルーチンと、
前記制御手段が、前記第１の装置識別情報セットに基づいて前記１セットのインポートパラメータを含む前記インポートファイルを開く第７のルーチンと、
前記入力手段が、前記インポートファイルから前記１セットのインポートパラメータを受け取る第８のルーチンと、
を更に含み、
前記第１のルーチンが、
前記制御手段が、前記第１の装置識別情報セットに基づいて前記１セットの出力パラメータを含むテンプレートファイルを開く第９のルーチンと、
前記入力手段が、前記テンプレートファイルからの前記１セットの出力パラメータを受け取る第１０のルーチンと、
を更に含み、
前記第３のルーチンが、
前記制御手段がコンピュータ出力装置上に、前記１セットのインポートパラメータの第１のリストを表示する第１１のルーチンと、
前記制御手段が前記コンピュータ出力装置上に、前記１セットの出力パラメータの第２のリストを表示する第１２のルーチンと、
前記入力手段が、前記第１のリストから第１のインポートパラメータを選択する信号を入力する第１３のルーチンと、
前記入力手段が、前記第２のリストから第１の出力パラメータを選択する信号を入力する第１４のルーチンと、
前記制御手段が、前記入力手段により入力された信号に基づいて選択された前記第１のインポートパラメータを、前記入力手段により入力された信号に基づいて選択された前記第１の出力パラメータにマッピングする第１５のルーチンと、
を更に含み、
前記第１のリスト及び前記第２のリストが、コンピュータ出力装置の第１のウインドウ内で提供され、
前記第１のリストが、第１の複数のセルを含む第１の列を含む第１のグリッド上に提供され、前記第１の複数のセルの少なくとも１つが前記１セットのインポートパラメータからのインポートパラメータを含み、
前記第２のリストが、第２の複数のセルを有する第２の列と、第３の複数のセルを含む第３の列と、第４の複数のセルを含む第４の列とを含む第２のグリッド上に提供され、前記第２の複数のセルの少なくとも１つが前記１セットの出力パラメータからの出力パラメータを含み、前記第３の複数のセルの少なくとも１つが前記１セットの出力パラメータからの出力パラメータのデータタイプを含み、前記第４の複数のセルの少なくとも１つが前記１セットのインポートパラメータからのインポートパラメータを含む、
プロセスプラントで使用される資産管理システム（ＡＭＳ）データベースに装置データをインポートするコンピュータシステム。
【請求項２０】
前記制御手段が、前記第１の装置識別情報セットに基づいて、前記第１の出力パラメータに対応する第１の列挙値セットを含む列挙ファイルを開く第１６のルーチンを更に含む、請求項１９記載のコンピュータシステム。
【請求項２１】
前記制御手段が、前記第１のデータセット内の前記第１のインポートパラメータに対応する第１のインポート値リストを提供する第１７のルーチンと、
前記入力手段が、前記第１のインポート値リストから第１のインポート値を選択する信号を入力する第１８のルーチンと、
前記制御手段が、前記第１の出力パラメータに対応する前記第１の列挙値セットからの第２の列挙値リストを提供する第１９のルーチンと、
前記入力手段が、前記第１の列挙値リストから第１の列挙値を選択する信号を入力する第２０のルーチンと、
前記制御手段が、前記第１の列挙値に対する前記第１のインポート値の列挙マッピングを作成する第２１のルーチンと、
を更に含む、請求項２０記載のコンピュータシステム。
【請求項２２】
前記入力手段が、前記第２の列から前記第１の出力パラメータを選択する信号を入力する第２２のルーチンと、
前記制御手段が、前記第１の出力パラメータに対する第１の出力パラメータ特性セットであって、（１）前記第１の出力パラメータのタイプ、（２）前記第１の出力パラメータの最大長、（３）前記第１の出力パラメータの値に含まれ得る第１の明示的な文字セット、（４）前記第１の出力パラメータの値から除外される第２の明示的な文字セット、（５）前記第１の出力パラメータのデフォルト値、及び（６）前記第１の出力パラメータの許容可能値の列挙リストの少なくとも１つを含む第１の出力パラメータ特性セットを受け取るために、第２のテンプレートを提示する第２３のルーチンと、
前記入力手段が、前記第１の出力パラメータ特性セットの少なくとも１つの特性を表す値をユーザから受け取る第２４のルーチンと、
を更に含む、請求項２１記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本特許は、一般にプロセス制御システムに関し、より詳しくは、プロセスプラントで用いられるデータベースシステムに関する。
【背景技術】
【０００２】
化学、石油または他のプロセスで用いられるようなプロセスプラントは、アナログバス、デジタルバスまたはアナログ／デジタル複合バスを介して、少なくとも１つのホストまたはオペレータワークステーション、並びに１つ以上の現場装置等のプロセス制御及び計装装置に通信可能に接続された、１つ以上の集中式または分散式のプロセスコントローラを含むのが一般的である。例えば、バルブ、バルブポジショナ、スイッチ、送信機及びセンサ（例えば温度センサ、圧力センサ及び流量センサ）であり得る現場装置は、例えばバルブの開閉やプロセスパラメータの測定等といったプロセス内の機能を実行する。典型的なプロセスプラントは、バルブ、送信機、センサ等といった多くのプロセス制御及び計装装置を有し、これらは、プロセスのオペレーション中にこれらの装置を制御するソフトウェアを実行する１つ以上のプロセスコントローラに接続されているが、プロセスオペレーションのために必要なまたは関連があるその他の多くのサポート装置も存在する。これらの付加装置には、例えば、電力供給装置、発電及び配電装置、タービン等の回転機械装置等が含まれ、これらは典型的なプラントの多くの場所に配置される。この付加設備は、必ずしもプロセス変数を作成または使用するわけではなく、多くの事例においては、制御されないか、またはプロセスオペレーションに影響を及ぼすためにプロセスコントローラに接続さえされないが、それにも関わらず、この装置は、プロセスの適切なオペレーションのために重要であると共に、最終的に必要である。しかし、従来は、プロセスコントローラは、これらの他の装置を必ずしも認識していないか、或いは、プロセスコントローラは、プロセス制御を実行する際に、単にこれらの装置が適切に動作していると仮定していた。
【０００３】
更に、多くのプロセスプラントには、ビジネス機能や保守機能に関連したアプリケーションを実行する他のコンピュータが関連付けられている。例えば、あるプラントは、原料の注文、プラントの部品や装置の交換に関連するアプリケーションや、販売及び製品ニーズの予測等に関連するアプリケーションを実行するコンピュータを含む。同様に、多くのプロセスプラント、特に、高性能な現場装置を用いるプロセスプラントは、これらの装置がプロセス制御及び計装装置であるか、または他のタイプの装置であるかに関係なく、プラント内の装置の監視、追跡記録及び保守を支援する資産管理アプリケーションを用いる。例えば、フィッシャー・ローズマウント・システムズ社（Fisher-Rosemount Systems, Inc.）が販売しているアセット・マネージメント・ソリューションズ（Asset Management Solutions）（ＡＭＳ）アプリケーションは、様々な現場装置の動作状態を確認及び追跡記録するために、現場装置と通信して、現場装置に関するデータを格納できるようにする。このようなシステムの例は、例えば特許文献１に開示されている。
【０００４】
プロセス内の実際の装置が効率的に動作することを確実にすることと、不具合が生じた装置を修理及び交換することとを主たる任務とする保守要員は、保守用インターフェイス、上述のＡＭＳアプリケーション、及び、プロセス内の装置の動作状態に関する情報を提供する他の多くの診断ツール等のツールを用いる。プロセス制御システム内の様々な現場装置に関する情報を維持するために、このようなＡＭＳアプリケーションは、複数の装置に関する情報のデータベースを維持する。一般に、プロセス制御システムで用いられる各種装置は、多くの異なる製造者によって製造されることが予想できる。全ての装置が同じ方法で相互にまたはプロセス制御装置と通信するわけではないということも、全くありそうである。異なる製造者によって製造された装置間の非互換性の問題を解決するために、プロセス計装業界は、単一のアプリケーションが複数の装置タイプと通信できるようにするために、ＨＡＲＴ協会やフィールドバス（Ｆｉｅｌｄｂｕｓ）協会等の協会によって定められているような標準化されたデジタル装置通信プロトコルを用いている。一般的に、これらの協会は、各装置が、標準通信プロトコル及び装置記述（ＤＤ）を用いて、プロセス制御システムに対してどのようにそれ自体を識別するかを定めた標準を有する。各装置タイプは独自のＤＤを有するのが一般的である。一般的に、ＤＤは、例えば装置の製造者名、装置の製造番号、装置の改訂番号等といった、装置を識別する複数のパラメータを含む。ＤＤは、一般的に、アクセス可能な変数、コマンド及び操作手順に対する定義も含む。
【０００５】
或るプロセスプラントで用いられている各装置タイプが、各装置がその機能を実行するための異なるセットのパラメータをサポートすることも、全くあり得ることである。或いは、幾つかの装置が、同じパラメータに対して異なる名称や構造を用いることもあり得る。例えば、装置を記述するパラメータの１つは、その装置の製造者と関連付けられたＩＤ番号に関する情報を提供するmanufacture＿IDであり得る。ＡＭＳアプリケーションは、manufacture＿IDに対して数字のみを許容する場合がある。一方、他の装置は、任意の英数字を許容するmanufacture＿identificationという名称のパラメータを用いて、装置の製造者に関する同じ情報を提供する場合がある。
【０００６】
このような装置を用いるプロセスプラントにＡＭＳアプリケーションを実装する際に、保守要員は、担当の機器類に関する既存のデータをＡＭＳにインポートすることを望む場合がある。この既存の情報は、装置製造者、他の資産管理システム、工学設計システム等といったサードパーティアプリケーションからのものであり得る。一般的に、この既存のデータは、これらのサードパーティシステムから一般的テキストファイルにエクスポートできる。このような一般的テキストファイルが、ＡＭＳデータベースが期待するデータ構造と異なるデータ構造を用いて装置識別情報を提供する場合には、このようなデータをＡＭＳデータベースにインポートする前に、この一般的テキストファイル、または一般的テキストファイルからのデータを修正し、そのデータ構造がＡＭＳによって許容されるデータ構造に準拠していることを確実にしなければならない。
【０００７】
ＡＭＳデータベースへの装置情報のインポートに関連する別の問題は、装置を記述する各種パラメータを定義するための列挙値の使用である。例えば、ＡＭＳで、或るタイプの装置の圧力取出口トランスポート関数を記述するために用いられるpressure＿output＿transport＿functionという名称のパラメータは、０または１（０は線形関数を表し、１は平方根関数を表す）の値のみを含み得る。一方、サードパーティからの同じタイプの装置を記述している一般的テキストファイルは、ＬまたはＳ（Ｌは線形関数を表し、Ｓは平方根関数を表す）の値のみを含み得るoutput＿pressure＿transport＿functionという名称のパラメータによって、その装置の同じ特性を定義し得る。このような一般的テキストファイルからのデータをＡＭＳアプリケーションにインポートする際には、Ｌの全インスタンスを０に変換し、Ｓの全インスタンスを１に変換することが必要である。
【０００８】
現在のところ、資産管理データベースへのデータのインポートを可能にするために、装置に関連するインポートパラメータを１つのフォーマットから別のフォーマットにマッピングするために、スプレッドシートまたは類似ツールの使用を含み得る様々な手動のデータマッピング法やカスタムプログラミングが用いられている。手動の方法では、前記データをインポートする際に非常に時間がかかると共に、データの整合性に関する信頼性が高くない。工程を自動化してデータの信頼性を向上させるためにカスタムプログラミングを行うこともできるが、これには、毎回のワークを行うためのカスタムアプリケーションの開発が必要であると共に、どのようにマッピングを行うかを誰かが文書化する必要がある。
【特許文献１】米国特許第５，９６０，２１４号明細書
【発明を実施するための最良の形態】
【０００９】
本特許を、添付の図面に例示するが、本特許はこれらの図面に限定されない。図面中、同一参照番号は同一要素を示す。
【００１０】
図１は資産管理システム１０（ＡＭＳ）の例示的な図である。ＡＭＳ１０は、プロセス１２及びプロセス１２を制御する分散制御システム１４（ＤＣＳ）と相互接続している。プロセス１２は、製造プロセスや精練プロセス等の任意の所望のタイプのプロセスを含んでよく、２つのＨＡＲＴ装置１６、１８及び１つのフィールドバス装置２０を含む３つのプロセス装置を含むものとして示されている。装置１６、１８及び２０は、ＤＣＳ１４によって任意の方法で制御される。
【００１１】
一般に、ＡＭＳ１０は、様々な現場装置に関する情報を維持するアプリケーションを含むコンピュータベースのツールである。ＡＭＳ１０は、プロセス１２内の様々な装置に関する情報を収集して維持する。ＡＭＳシステム１０は、ディスプレイ３０、プリンタ等の他の任意の出力装置３２、キーボードまたは他入力装置３４、マウス３６、オペレーティングシステム及びＣＰＵ３８、通信バス４０、並びに、ＡＭＳデータベース及びマッピングユーティリティ４４を含むメモリ４２を含んでもよい。メモリ４２は、ランダムアクセスメモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）またはディスクドライブ、テープドライブ等の形態の外的メモリ、または上記の幾つかの組合せを含む、任意のタイプのメモリであってもよい。ＡＭＳ１０において、ＡＭＳデータベース及びマッピングユーティリティ４４に含まれるＡＭＳデータベースは、各種装置に関するデータを装置協会標準に基づくフォーマットで格納する。ＡＭＳデータベース及びマッピングユーティリティ４４については、図２で更に詳細を説明する。
【００１２】
ＤＣＳ１４は、イーサネット（登録商標）通信システム４６によってＡＭＳ１０に接続される。ＨＡＲＴ装置１６、１８は、ＨＡＲＴインターフェイス４８によってＡＭＳに接続される。ＡＭＳ１０において、ＨＡＲＴ装置１６、１８の製造者は、装置協会標準に準拠した装置記述ファイルを提供している。従って、ＨＡＲＴ装置１６、１８の装置記述ファイルは、ＡＭＳデータベース及びマッピングユーティリティ４４が装置データの格納に用いるフォーマットと同様のフォーマットでこれらの装置を記述した情報を含む。フィールドバス装置２０は、フィールドバスインターフェイス５０によってＡＭＳに接続される。ＡＭＳ１０において、フィールドバス装置２０の製造者は、装置協会標準に準拠していない装置記述ファイルを提供している。従って、フィールドバス装置２０の装置記述ファイルは、ＡＭＳデータベース及びマッピングユーティリティ４４が装置データの格納に用いるフォーマットとは異なるフォーマットでこの装置を記述した情報を含む。
【００１３】
図２は、ＡＭＳデータベース及びマッピングユーティリティ４４の例示的な図であり、ＡＭＳデータベース及びマッピングユーティリティ４４は、ＡＭＳデータベース６０、ＡＭＳマッピングユーティリティ６２、インポートファイルデータベース６４、テンプレートファイルデータベース６６、列挙ファイルデータベース６８、マッピングユーティリティテンプレートデータベース７０、マッピングファイルデータベース７２、及び出力ファイルデータベース７４を含む。ＡＭＳデータベース６０は、業界で入手可能な多くの普及しているデータベース（例えばオラクルデータベース、ＳＱＬデータベース等）の１つを用いて設計可能である。ＡＭＳデータベース６０は複数のレコードを含む。各レコードは、複数のフィールド内に装置に関する情報を含む。各フィールドは、装置協会標準が推奨する装置記述フォーマットに従ってその装置を記述したパラメータに対応する値を含む。ＡＭＳマッピングユーティリティ６２は、インポートファイルデータベース６４に含まれる様々なインポートファイルからの各種パラメータを、ＡＭＳデータベース６０において装置の記述に用いられる各種パラメータにマッピングすることを可能にする。インポートファイルデータベース６４に含まれるインポートファイルは、様々な装置製造者または他のサードパーティアプリケーションによって提供されてもよい。ＡＭＳデータベース及びマッピングユーティリティ４４の例示的な説明では、ＡＭＳマッピングユーティリティ６２は、任意の普及しているプログラミング言語で設計されたソフトウェアを用いて実装され、メモリ４２に格納される。しかし、ＡＭＳデータベース及びマッピングユーティリティ４４の別の実装では、ＡＭＳマッピングユーティリティ６２は、ファームウェア、ハードウェア等として実装されてもよい。ソフトウェアを用いて実装されメモリ４２に格納されるＡＭＳマッピングユーティリティ６２については、図３で更に詳細に説明する。
【００１４】
インポートファイルデータベース６４は、様々な製造者やサードパーティによって提供される様々な一般的テキストファイルを含む。各一般的テキストファイルは、所与の装置タイプの複数の装置に関する複数のレコードを含む。例えば、インポートファイルデータベース６４は、ローズマウント社（Rosemount, Inc.）によって提供された、ローズマウント１１５１改１タイプの約５０台の装置に関する情報を含む、file＿1という名称のファイルを含み得る。このようなファイルは５０のレコードを含んでもよく、各レコードは、ローズマウント１１５１改１タイプの装置を記述する複数のパラメータに対応する複数の値を含む。加えて、file＿1は、例えばローズマウント１１５１改１タイプの装置に関するアクセス変数、操作手順及びコマンド等といった、ローズマウント１１５１改１タイプの装置に関する他の情報を含んでもよい。ローズマウント社が、これらのレコードをＡＭＳ標準フォーマットに準拠するフォーマットで提供している場合には、file＿1内の各レコードのパラメータは、ＡＭＳデータベース６０でローズマウント１１５１改１タイプの装置を記述するために用いられるパラメータと同様である。この場合、ＡＭＳマッピングユーティリティ６２は、File＿1からの各種パラメータをＡＭＳデータベース６０で装置レコードの記述に用いられる各種パラメータにマッピングせずに、File＿1からレコードをインポートすることができる。
【００１５】
或いは、インポートファイルデータベース６４は、ＡＢＣコントロールによって提供された、ＸＹＺ装置３０１改２タイプの約５０台の装置に関する情報を含む、File＿2という名称のファイルを含み得る。このようなファイルは５０のレコードを含んでもよく、各レコードは、ＸＹＺ装置３０１改２タイプの装置を記述する複数のパラメータに対応する複数の値を含む。ＡＢＣコントロールが、これらのレコードをＡＭＳ標準フォーマットに準拠したフォーマットで提供していない場合には、ファイル２内の各レコードの幾つかのパラメータは、ＡＭＳデータベース６０でＸＹＺ装置３０１改２タイプの装置を記述するために用いられるパラメータと同様ではない。この場合、ＡＭＳマッピングユーティリティ６２は、ＡＭＳデータベース６０においてＸＹＺ装置３０１改２タイプの装置についての装置レコードを記述する各種パラメータに対する、File＿2内の装置レコードを記述する各種パラメータのマッピングを作成しなければ、File＿2からのデータをＡＭＳデータベース６０にインポートすることができない。
【００１６】
このような状況に対処するために、ＡＭＳマッピングユーティリティ６２は、テンプレートファイルデータベース６６に格納されている、ＸＹＺ装置３０１改２タイプの装置に関連するテンプレートファイルと、列挙ファイルデータベース６８に格納されている、ＸＹＺ装置３０１改２タイプの装置に関連する列挙ファイルとを用いる。所与のタイプの装置のためのテンプレートファイルは、ＡＭＳデータベース６０がそのタイプの装置に関するパラメータリストの格納に用いるデータ構造に基づき、ＡＭＳ１０によって生成される。テンプレートファイルは、ＡＭＳデータベース６０において装置タイプを記述するパラメータのリストと、パラメータの記述に使用可能なデータタイプ（例えば、アルファベット、数値、日付、時間等）やそのパラメータに対して許容可能な値の範囲（例えば１〜２５５、Ａ〜Ｋ等）等といった、このような各パラメータを記述する様々な他の情報とを含んでもよい。列挙ファイルは、ＡＭＳデータベース６０において装置を記述するパラメータのリストと、パラメータに関する様々な列挙パラメータ値と、各列挙パラメータ値を説明するユーザが理解可能な文字列とを含んでもよい。（例えば、ローズマウント３０５１Ｃ改２タイプの装置のための列挙ファイルは、burse＿mode＿selectという名称のパラメータに対する０及び１の値と、この０及び１の値を説明する文字列である“ｏｆｆ”及び “ｏｎ”とを含んでもよい。）
【００１７】
File＿2のようなサードパーティアプリケーションによって生成されたエクスポートファイルからの各種パラメータを、ＡＭＳデータベース６０の各種パラメータにマッピングするために、ＡＭＳマッピングユーティリティ６２は、マッピングユーティリティテンプレートデータベース７０からの複数のマッピングユーティリティテンプレートを用いる。マッピングユーティリティデータベース７０に格納されているマッピングユーティリティテンプレートは、様々なオペレーティングシステムによって用いられるグラフィカルユーザーインターフェイス（ＧＵＩ）マッピングテンプレートの形態で提示されてもよい。このような各ＧＵＩマッピングテンプレートは、任意の適切なプログラミング言語で実装される１つ以上のソフトウェアルーチンを含んでもよい。なお、各種ＧＵＩマッピングテンプレートを構成するソフトウェアルーチンは、ＡＭＳ１０のオペレーティングシステム及びＣＰＵ３８で処理されてもよく、或いは、イーサネット（登録商標）４６または他の任意の通信ネットワークによってＡＭＳ１０に接続されてよい他の任意のワークステーション、コンピュータ等で処理されてもよい。このようなＧＵＩマッピングテンプレートは、ディスプレイ３０（コンピュータモニタであってもよい）上に表示され、それらは、キーボード３４、マウス３６またはＡＭＳ１０に取り付けられた他の任意のデータ入力装置によるユーザからの入力を受け取る。本実施例においては、複数のＧＵＩマッピングテンプレートを格納するためにマッピングユーティリティデータベース７０を用いたが、別の実施例においては、当業者によく知られているＧＵＩエンジンによって、このようなＧＵＩマッピングテンプレートを生成できる。このようなＧＵＩエンジンを用いる場合には、必要に応じて即座にＧＵＩテンプレートが作成される。
【００１８】
ＧＵＩマッピングテンプレートは、よく知られているウインドウズベースのグラフィカル構造及び外観を用いて実装されるのが好ましいが、必ずしもそうでなくてもよい。この場合、複数のインターリンクされたグラフィカル画面またはページは、ユーザが複数のページを見るために所望の方法でナビゲートすること、および／または、特定のタイプの情報を取り出すことを可能にする、１つ以上のプルダウンメニューを含む。ＡＭＳ１０の特徴および／または機能は、ＧＵＩマッピングテンプレートの１つ以上の対応するページ、画面または表示を介して、表され、アクセスされ、呼び出される等してもよい。更に、ユーザがＡＭＳ１０の特定の機能を呼び出すために迅速且つ直感的に複数の表示をナビゲートするのを容易にするために、ＧＵＩマッピングテンプレートを構成する様々な表示は、論理的方法でインターリンクされてもよい。マッピングテンプレートデータベース７０に含まれる各種ＧＵＩマッピングテンプレートの一部、及びそれらに添付される各種ソフトウェアルーチンについては、図４〜図２１において更に詳細に論じる。
【００１９】
ＡＭＳマッピングユーティリティ６２は、ＧＵＩマッピングテンプレートデータベース７０からの各種ＧＵＩマッピングテンプレートと、ユーザによってこれらのＧＵＩマッピングテンプレートの幾つかに供給される各種入力とを用いることにより、或る装置タイプ（例えばＡＢＣコントロール３０５１改２タイプの装置）のためのマッピングファイルにおいてデータマッピングを文書化する。ＡＭＳマッピングユーティリティ６２によって作成されるこのようなマッピングファイルは、インポートファイルデータベース６４に含まれる様々なインポートファイルからの各種パラメータを、ＡＭＳデータベース６０の各種パラメータにそれぞれマッピングする。このようなマッピングファイルは、マッピングファイルデータベース７２に格納できる。
【００２０】
或る装置タイプのためのマッピングファイルが作成されると、ユーザは、ＡＭＳデータベース６０にマージ可能なデータ構造及びフォーマットに変換された所与のインポートファイルからのデータを含む、出力ファイルの作成を決定することができる。このような出力ファイルは、出力ファイルデータベース７４に格納できる。このマッピングファイルは、マッピングファイルデータベース７２に永続的に格納できるので、ユーザは、将来いつでも、このようなマッピングファイルを用いてファイルを作成することができる。
【００２１】
図３は、ソフトウェアプログラムを用いて実装されるＡＭＳマッピングユーティリティ６２を説明するフローチャート６４の例示的な図である。この例示的なＡＭＳマッピングユーティリティ６２は、マッピングユーティリティテンプレートデータベース７０からの複数のマッピングユーティリティテンプレートを用いているマッピング処理を実行するので、ＡＭＳマッピングユーティリティ６２は、図３では複数のテンプレートを用いて示されている。フローチャート６４を参照してＡＭＳマッピングユーティリティ６２を説明するが、ＡＭＳマッピングユーティリティ６２と関連付けられたアクションを実行する他の多くの方法を用いてよいことが、当業者には容易に認識されよう。例えば、図３に示される多数のテンプレートの順序は変更されてもよく、本明細書で説明するテンプレートの幾つかは、ＡＭＳマッピングユーティリティ６２内の他のテンプレートの性能に影響を及ぼすことなく、フローチャートからから削除されてもよい。同様に、ユーザが、図３で説明されるテンプレートの一部のみを用いてもよいことは、当業者には明らかなはずである。図３で説明される様々な各テンプレートには、ソフトウェアルーチンが添付されてもよい。図３で説明されるＧＵＩマッピングテンプレート及びこれらの各テンプレートに添付される各種ソフトウェアルーチンについては、図４〜図２３で更に詳細に説明する。
【００２２】
図３を参照すると、ブロック１００で、ＡＭＳマッピングユーティリティ６２は、ユーザにマッピングユーティリティテンプレート１１０を提示し、インポートファイルデータベース６４のインポートファイルの各種パラメータをＡＭＳデータベース６０で用いられるパラメータにマッピングするためにＡＭＳマッピングユーティリティを開始することをユーザが望むか否かを尋ねる。マッピングユーティリティテンプレート１１０については、図４で更に詳細に論じる。マッピングユーティリティテンプレート１１０には、マッピングユーティリティルーチン１２０が添付されている。マッピングユーティリティルーチン１２０については、図５で更に詳細に論じる。
【００２３】
ブロック２００で、ＡＭＳマッピングユーティリティ６２は、ユーザにインポートファイル編集テンプレート２１０を提示し、インポートファイルデータベース６４のインポートファイルを編集することをユーザが望むか否かを尋ねる。インポートファイル編集テンプレート２１０については、図６で更に詳細に論じる。インポートファイル編集テンプレート２１０には、インポートファイル編集ルーチン２２０が添付されている。インポートファイル編集ルーチン２２０については、図７で更に詳細に論じる。
【００２４】
ブロック３００で、ＡＭＳマッピングユーティリティ６２は、ユーザにインポートパラメータ追加テンプレート３１０を提示し、インポートファイルデータベース６４のインポートファイルにインポートパラメータを追加することをユーザが望むか否かを尋ねる。インポートパラメータ追加テンプレート３１０については、図８で更に詳細に論じる。インポートパラメータ追加テンプレート３１０には、インポートパラメータ追加ルーチン３２０が添付されている。インポートパラメータ追加ルーチン３２０については、図９で更に詳細に論じる。
【００２５】
ブロック４００で、ＡＭＳマッピングユーティリティ６２は、ユーザにインポートパラメータ削除テンプレート４１０を提示し、インポートファイルデータベース６４のインポートファイルからインポートパラメータを削除することをユーザが望むか否かを尋ねる。インポートパラメータ削除テンプレート４１０については、図１０で更に詳細に論じる。インポートパラメータ削除テンプレート４１０には、インポートパラメータ削除ルーチン４２０が添付されている。インポートパラメータ削除ルーチン４２０については、図１１で更に詳細に論じる。
【００２６】
ブロック５００で、ＡＭＳマッピングユーティリティ６２は、ユーザにパラメータマッピングテンプレート５１０を提示し、インポートパラメータをＡＭＳデータベース６０で用いられる出力パラメータにマッピングすることをユーザが望むか否かを尋ねる。パラメータマッピングテンプレート５１０については、図１２で更に詳細に論じる。パラメータマッピングテンプレート５１０には、パラメータマッピングルーチン５２０が添付されている。パラメータマッピングルーチン５２０については、図１３で更に詳細に論じる。
【００２７】
ブロック６００で、ＡＭＳマッピングユーティリティ６２は、ユーザに明示値マッピングテンプレート６１０を提示し、ＡＭＳデータベース６０の出力パラメータに明示的な値をマッピングすることをユーザが望むか否かを尋ねる。明示値マッピングテンプレート６１０については、図１４で更に詳細に論じる。明示値マッピングテンプレート６１０には、明示値マッピングルーチン６２０が添付されている。明示値マッピングルーチン６２０については、図１５で更に詳細に論じる。
【００２８】
ブロック７００で、ＡＭＳマッピングユーティリティ６２は、ユーザに列挙マッピング編集テンプレート７１０を提示し、インポートファイルデータベース６４のインポートファイル内のインポートパラメータとＡＭＳデータベース６０の出力パラメータとの間の列挙マッピングを編集することをユーザが望むか否かを尋ねる。列挙マッピング編集テンプレート７１０については、図１６で更に詳細に論じる。列挙マッピング編集テンプレート７１０には、列挙マッピング編集ルーチン７２０が添付されている。列挙マッピング編集ルーチン７２０については、図１７で更に詳細に論じる。
【００２９】
ブロック８００で、ＡＭＳマッピングユーティリティ６２は、ユーザに出力パラメータデフォルト修正テンプレート８１０を提示し、ＡＭＳデータベース６４の出力パラメータに関連したデフォルトを修正することをユーザが望むか否かを尋ねる。出力パラメータデフォルト修正テンプレート８１０については、図１８で更に詳細に論じる。出力パラメータデフォルト修正テンプレート８１０には、出力パラメータデフォルト修正ルーチン８２０が添付されている。出力パラメータデフォルト修正ルーチン８２０については、図１９で更に詳細に論じる。
【００３０】
ブロック９００で、ＡＭＳマッピングユーティリティ６２は、ユーザに出力ファイル生成テンプレート９１０を提示し、ＡＭＳデータベース６０にマージ可能な出力ファイルを生成することをユーザが望むか否かを尋ねる。出力ファイル生成テンプレート９１０については、図２０で更に詳細に論じる。出力ファイル生成テンプレート９１０には、出力ファイル生成ルーチン９２０が添付されている。出力ファイル生成ルーチン９２０については、図２１で更に詳細に論じる。
【００３１】
図４は、ＡＭＳインポートユーティリティ６２の実行を開始するためにユーザに提示され得る例示的なマッピングユーティリティテンプレート１１０である。ＡＭＳ１０のウインドウズベースの実装では、ユーザは、ＡＭＳ１０のモニタ３０上のアイコンをマウス３６でクリックすることによって、このようなマッピングユーティリティテンプレート１１０を呼び出すことができる。このマッピングユーティリティテンプレート１１０の例示的なバージョンは、ＡＭＳインポートユーティリティ６２によって実行されるマッピング処理のために必要な様々なファイルを選択するための複数の選択肢をユーザに提示する。ユーザは、ボタン１１１を選択することにより、ＡＭＳインポートユーティリティ６２が用いるべきインポートファイルのパスを指定できる。このようなインポートファイルは、インポートファイルデータベース６４に格納されてもよく、特定のタイプの装置を記述する複数のレコードを含んでもよい。例えば、このようなインポートファイルは、ローズマウント１１５１改６タイプの装置を記述する複数のレコードを含んでもよい。ユーザによって指定されたインポートファイル内の装置タイプを特定する複数のインポートパラメータは、マッピング処理起動テンプレート１１０の第１のウインドウ１１２内に表示される。図４に示される例示的なマッピング処理起動テンプレート１１０では、第１のウインドウ１１２は、ローズマウント１１５１改６（Rosemount1151 Rev.6）タイプの装置を記述するパラメータ（例えばAC/DC、Deadband Mix等）のリストを示しており、これらは、ユーザが指定したインポートファイル中でこのタイプの装置を記述するものである。
【００３２】
ユーザは、ボタン１１３を選択することにより、ＡＭＳデータベース６０で装置タイプを記述する出力パラメータのリストと、このような各出力パラメータを記述する様々な情報（例えば、パラメータの値として使用可能なデータタイプ（例えば、アルファベット、数値、日付、時間、列挙等）やそのパラメータに対して許容可能な値の範囲（例えば１〜２５５、Ａ〜Ｋ等））とを含むテンプレートファイルのパスを指定できる。図４では、マッピング処理起動テンプレート１１０の第２のウインドウ１１５の第１の列１１４には、ＡＭＳデータベース６０で装置タイプを記述する複数の出力パラメータが表示されており、第２のウインドウ１１５の第２の列１１６は、第１の列１１４にリスト表示されている幾つかのパラメータの様々なデータタイプを表示している。図４に示される例示的なマッピング処理起動テンプレート１１０において、第１の列１１４は、ローズマウント１１５１改６タイプの装置を記述するパラメータ（例えばDevice S/N、AMS Tag等）のリストを示しており、これらは、ＡＭＳデータベース６０でこのタイプの装置を記述するものである。第２の列１１６は、例えば、analog＿output＿alarm＿selectという名称のパラメータに対して、ＡＭＳデータベース６０が列挙された値のリストを許容することを示している。
【００３３】
ユーザは、ボタン１１７を選択することにより、ＡＭＳデータベース６０の装置タイプに対する各種パラメータを列挙したリストを含む列挙ファイルのパスを指定できる。このような列挙ファイルは、列挙ファイルデータベース６８に格納されてもよい。列挙ファイルは、ＡＭＳデータベース６０で装置を記述するパラメータのリストと、パラメータに関連する様々な列挙パラメータ値と、各列挙パラメータ値を説明するユーザが理解可能な文字列とを含んでもよい。例えば、図４に示される例示的なマッピング処理起動テンプレート１１０では、ローズマウント１１５１改６タイプの装置に対してユーザが指定した列挙ファイルは、パラメータ及び列挙値のリストを含んでもよく、ここでは、analog＿output＿alarm＿selectというパラメータは、０及び１の値を含む列挙リストと、０がＨｉの状態を意味し１がＬｏの状態を意味することを特定する説明とを含んでもよい。
【００３４】
ユーザは、ボタン１１８を選択することにより、ＡＭＳマッピングユーティリティ６２によって生成されるマッピングファイルを保存すべきパスを指定してもよい。同様に、ユーザは、ボタン１１９を選択することにより、ＡＭＳマッピングユーティリティ６２によって生成される出力ファイルを保存すべきパスを指定してもよい。
【００３５】
図５は、マッピングユーティリティテンプレート１１０に添付されるマッピングユーティリティルーチン１２０を説明するフローチャートの例示的な図である。ブロック１２１で、ユーザは、マッピングユーティリティテンプレート１１０のボタン１１１を選択してインポートファイルへのパスを指定することにより、インポートファイルを選択する。ブロック１２２で、マッピング処理起動ルーチン１２０は、ユーザが指定したパスのインポートファイルを見つけ出そうとする。マッピング処理起動ルーチン１２０が、ユーザが指定したパスのインポートファイルを見つけ出すことができない場合には、ブロック１２３で、マッピング処理起動ルーチン１２０はエラーメッセージを表示して、ユーザに、新たなパスを指定することによって異なるインポートファイルを選択するよう求める。ブロック１２４で、ユーザは、マッピングユーティリティテンプレート１１０のボタン１１３を選択してテンプレートファイルへのパスを指定することにより、テンプレートファイルを選択する。ブロック１２５で、マッピング処理起動ルーチン１２０は、ユーザが指定したパスのテンプレートファイルを見つけ出そうとする。マッピング処理起動ルーチン１２０が、ユーザが指定したパスのテンプレートファイルを見つけ出すことができない場合には、ブロック１２６で、マッピング処理起動ルーチン１２０はエラーメッセージを表示して、ユーザに、新たなパスを指定することによって異なるテンプレートファイルを選択するよう求める。ブロック１２７で、ユーザは、マッピングユーティリティテンプレート１１０のボタン１１７を選択して列挙ファイルへのパスを指定することにより、列挙ファイルを選択する。ブロック１２８で、マッピング処理起動ルーチン１２０は、ユーザが指定したパスの列挙ファイルを見つけ出そうとする。マッピング処理起動ルーチン１２０が、ユーザが指定したパスの列挙ファイルを見つけ出すことができない場合には、ブロック１２９で、マッピング処理起動ルーチン１２０はエラーメッセージを表示して、ユーザに、新たなパスを指定することによって異なる列挙ファイルを選択するよう求める。
【００３６】
ブロック１３０で、ユーザは、マッピングユーティリティテンプレート１１０のボタン１１８を選択して、既存のマッピングファイルを見出すべきパスまたは新たに作成されたマッピングファイルを保存すべきパスを指定することにより、マッピングファイルを選択する。ブロック１３１で、マッピング処理起動ルーチン１２０は、ユーザが指定したパスのマッピングファイルを見つけ出そうとする。マッピング処理起動ルーチン１２０が、ユーザが指定したパスのマッピングファイルを見つけ出すことができた場合には、ブロック１３２で、マッピング処理起動ルーチン１２０はこのようなマッピングファイルに上書きする。マッピング処理起動ルーチン１２０が、ユーザが指定したパスのマッピングファイルを見つけ出すことができない場合には、ブロック１３３で、マッピング処理起動ルーチン１２０は新たなマッピングファイルを作成し、それをユーザが指定したパスに保存する。ブロック１３４で、ユーザは、マッピングユーティリティテンプレート１１０のボタン１１９を選択して、既存の出力ファイルを見出すことができるパスまたは新たに作成された出力ファイルを保存すべきパスを指定することにより、出力ファイルを選択する。ブロック１３５で、マッピング処理起動ルーチン１２０は、ユーザが指定したパスの出力ファイルを見つけ出そうとする。マッピング処理起動ルーチン１２０が、ユーザが指定したパスの出力ファイルを見つけ出すことができた場合には、ブロック１３６で、マッピング処理起動ルーチン１２０は、このような出力ファイルに上書きすべきか否かをユーザに尋ねる。ユーザが、出力ファイルに上書きしないことを選択した場合には、マッピングユーティリティルーチン１２０は、ユーザに、出力ファイルを保存すべき新たなパスを提供するよう求める。ユーザが、ユーザが指定したパスで見つけ出された出力ファイルに上書きするよう選択した場合には、ブロック１３７で、マッピング処理起動ルーチン１２０はこのような出力ファイルに上書きする。ユーザが指定したパスに出力ファイルが存在しない場合には、ブロック１３８で、マッピング処理起動ルーチン１２０は新たな出力ファイルを作成する。
【００３７】
図６は、ユーザが第１のインポートファイルを編集できるようにするために、ＡＭＳマッピングユーティリティ６２によって表示され得る、例示的なインポートファイル編集テンプレート２１０を示す。このような第１のインポートファイルのパスは、マッピングユーティリティテンプレート１１０でボタン１１１を選択することによって指定できる。ユーザは、図６に示されるマッピング処理起動テンプレート１１０のインポート編集ボタン２１１を選択することにより、インポートファイル編集テンプレート２１０を呼び出すことができる。インポートファイル編集テンプレート２１０は、第１のインポートファイルからの複数のレコードをウインドウ２１２にリスト表示する。ウインドウ２１２は複数の列２１３、２１４、２１５等を有し、各列は、見出しとして、第１のインポートファイルからのパラメータの名称を含む。ウインドウ２１２は複数の行２１６、２１７、２１８等も含み、各行は、第１のインポートファイルからのレコードの各種パラメータに対応する複数の値を含む複数のセルを有する。例えば、図６に示されるウインドウ２１２は、列２１３の見出しとしてDevice S/Nを示すと共に、各行２１６、２１７、２１８はDevice S/Nパラメータの値を表す複数の値を示している。ユーザは、ウインドウ２１２のセルを選択して、このようなセルの値を編集することができる。例えば、図６では、next calibration dateというパラメータを表す行２２０及び列２２１のセル２１９がユーザによって選択されている。ユーザがセル２１９の内容を変更できる複数の方法がある。セル２１９の内容を編集する１つの方法は、ＡＭＳ１０のキーボード３４を用いて、所望の新たな値を入力することである。
【００３８】
セルの内容を編集する別の方法は、或る列内の或る範囲のセルを選択し、ＡＭＳ１０のマウス３６の右マウスボタンをクリックすることによって起動可能なコンテクストメニューから「フィルダウン（fill down）」メニュー項目を選択することであり、これにより、その範囲のセルの一番上のセルの値が、その範囲のセルの残りの各セルにコピーされる。例えば、ユーザは、列２２１内のセル２２２、２２３、２２４及び２１９をハイライトさせ、コンテクストメニューからフィルダウンメニュー項目を選択し、セル２２２の内容を各セル２２３、２２４及び２１９にコピーすることができる。
【００３９】
セル２１９の値を編集する更に別の方法として、列２２１のセル２２２、２２３、２２４及び２１９を選択し、コンテクストメニューから「インクリメントダウン（increment down）」メニュー項目を選択してもよく、これにより、セル２２３には、選択された一番上のセル２２２の値を１だけ増加した値に等しい第１の増分値がコピーされ、セル２２４には、第１の増分値を１だけ増加した値に等しい第２の増分値がコピーされ、セル２１９には、第２の増分値を１だけ増加した結果である第３の増分値がコピーされる。
【００４０】
セル２１９の値を編集する更に別の方法として、セル２１９を選択し、コンテクストメニューから「今日の日付を挿入（insert today's date）」メニュー項目を選択してもよく、これにより、このような編集が実行された日付がセル２１９に入力される。ここでは、セル２１９の値を編集する僅かな方法のみを論じたが、セル２１９の値を編集する別の方法が提供されてもよいことが、当業者には認識されよう。同様に、ここでは、セルの値を編集する様々な代替方法をセル２１９に関して論じたが、これらの代替方法は、ウインドウ２１２の他の任意のセルの値の変更に使用できることが認識されよう。
【００４１】
なお、インポートファイルを編集するためにインポートファイル編集テンプレート２１０が用いられ、インポート編集ボタン２１１を選択することによって編集対象のインポートファイルが指定されるが、ユーザは、出力ファイル編集ボタン２２５を選択することによって出力ファイルを選択した場合には、同じテンプレートを用いて出力ファイルも編集できることを留意されたい。
【００４２】
図７は、インポートファイル編集テンプレート２１０に添付されるインポートファイル編集ルーチン２４０を説明するフローチャートの例示的な図である。ユーザは、マッピングユーティリティ起動テンプレートのボタン２１１を選択することによってこのルーチンを起動させることができ、これにより、第１のインポートファイルからのレコードがウインドウ２１２に示される。ブロック２４１で、インポートファイル編集ルーチン２４０は、ユーザにインポートファイル編集テンプレート２１０を提示し、ユーザからの入力を待つ。この時点で、インポートファイル編集ルーチン２４０は、インポートファイル編集テンプレート２１０のウインドウ２１２上にフォーカスを有する。
【００４３】
ＡＭＳマッピングユーティリティ６２によって用いられるようなグラフィカルユーザーインターフェイス（ＧＵＩ）において、ＧＵＩが用いるウインドウまたは他のオブジェクト上のフォーカスは、入力等の次のユーザーアクションが、このようなユーザーアクション時にフォーカスを有するオブジェクトに向けられていることを示す。ユーザがウインドウ２１２内の特定のセルを選択すると、フォーカスは選択されたセルに移る。ユーザは、例えば右向き矢印、左向き矢印等のナビゲーションキーを用いることを含む複数の異なる方法で、或るセルにフォーカスを移すことができる。ユーザがセルの値の編集を開始すると、インポートファイル編集ルーチン２４０は編集フィールドを作成し、その編集フィールドにフォーカスを移す。このような編集フィールドは、一般的に、ユーザが行ったものであり得る任意の編集を伴うセルに含まれる値を格納し、ＡＭＳ６０のＲＡＭに格納されることができる。
【００４４】
ブロック２４２で、ユーザは、ナビゲーションアクション、セル選択または文字入力の形態であり得る第１の入力を提供する。ユーザは、キーボード３４またはマウス３６を用いて、このような第１の入力を提供できる。ブロック２４３で、インポートファイル編集ルーチン２４０は、第１の入力がナビゲーションアクションまたはセル選択であるか否かを判定する。ユーザが提供した第１の入力がナビゲーションまたはセル選択である場合には、ブロック２４４で、インポートファイル編集ルーチン２４０は、フォーカスを有する編集フィールドが存在するか否かを判定する。フォーカスを有する編集フィールドが存在する場合には、ブロック２４５で、このような編集フィールドに含まれる値が、ウインドウ２１２の現在選択されたセルにコミットされる。しかし、ブロック２４４で、インポートファイル編集ルーチン２４０が、フォーカスを有する編集フィールドが存在しないと判定した場合には、ブロック２４６で、インポートファイル編集ルーチン２４０は、ユーザのアクションに応答して適切なセルを選択する。例えば、このようなアクションは、マウス３６によるナビゲーションアクション、新たなセルの選択等であってもよい。
【００４５】
ブロック２４３で、第１の入力がナビゲーションまたはセルの選択ではないと判定された場合には、ブロック２４７で、インポートファイル編集ルーチン２４０は、第１の入力が英数字であるか否かを判定する。第１の入力が英数字ではないと判定された場合には、ブロック２４８で、インポートファイル編集ルーチン２４０は、第１の入力がエスケープ（ＥＳＣ）文字であるか否かを判定する。第１の入力がエスケープ文字であると判定された場合には、ブロック２４９で、インポートファイル編集ルーチン２４０は、編集フィールドの内容に対する任意の編集を復帰させ、フォーカスを編集フィールドからウインドウ２１２に移す。
【００４６】
ブロック２４７で、第１の入力が英数字であると判定された場合には、ブロック２５０で、インポートファイル編集ルーチン２４０は、編集フィールドがフォーカスを有するか否かを判定する。編集フィールドがフォーカスを有していないと判定された場合には、ブロック２５１で、インポートファイル編集ルーチン２４０は、フォーカスを編集フィールドに移し、ブロック２５２で、インポートファイル編集ルーチン２４０は、ユーザによる任意の文字入力を処理して編集フィールド内の値を変更する。
【００４７】
一方、ブロック２４８で、第１の入力がＥＳＣ文字ではないと判定された場合には、ブロック２５３で、インポートファイル編集ルーチンは、第１の入力がＯＫ信号またはキャンセル（Ｃａｎｃｅｌ）信号であるか否かを判定する。このようなＯＫ信号またはキャンセル信号は、マウス３６の右マウスボタンをクリックすることによって 起動されるコンテクストメニューのボタンを押すことによって入力できる。入力が、ＯＫ信号またはキャンセル信号以外であると判定された場合には、ブロック２５４で、インポートファイル編集ルーチンは、コンテクストメニューからどのメニュー選択肢が選択されたかを判定する。
【００４８】
ブロック２５４で、選択されたメニュー選択肢がフィルダウン選択肢であると判定された場合には、ブロック２５５で、インポート編集ルーチン２４０は、ユーザに、ウインドウ２１２から垂直方向の範囲のセルを選択するよう促す。ユーザは、垂直方向の範囲のセルを選択した後で、その垂直方向の範囲のセルの一番上のセルの値を、その垂直方向の範囲のセルの他の全てのセルにコピーするために、コンテクストメニューからフィルダウン選択肢を選択することができる。
【００４９】
ブロック２５４で、選択されたメニュー選択肢がインクリメントダウン選択肢であると判定された場合には、ブロック２５６で、インポート編集ルーチン２４０は、ユーザに、ウインドウ２１２から、一番上のセルが日付または数値を含む垂直方向の範囲のセルを選択するよう促す。ユーザは、垂直方向の範囲のセルを選択した後で、コンテクストメニューからインクリメントダウン選択肢を選択することができ、これにより、一番上のセルの値を１だけ増加した値に等しい第１の値が、一番上のセルの下の１番目のセルにコピーされ、第１の値を１だけ増加した値に等しい第２の値が、一番上のセルの下の２番目のセルにコピーされ、以下同様に続く。ブロック２５４で、選択されたメニュー選択肢が日付挿入選択肢であると判定された場合には、ブロック２５７で、選択されたセルに現在の日付及びタイムスタンプが挿入される。
【００５０】
ブロック２５３で、インポートファイル編集ルーチン２４０が、第１の入力がＯＫ信号であると判定した場合には、ブロック２５８で、インポートファイル編集ルーチン２４０は第１のインポートファイルを保存し、ブロック２５９でインポートファイル編集ルーチン２４０が終了する。一方、ブロック２５３で、第１の入力がキャンセル（Ｃａｎｃｅｌ）信号であると判定された場合には、ブロック２５９で、インポートファイル編集プロセス２４０は第１のインポートファイルを保存せずに終了する。
【００５１】
なお、インポートファイルを編集するためにインポートファイル編集ルーチン２４０が用いられ、インポート編集ボタン２１１を選択することによって編集対象のインポートファイルが指定されるが、出力ファイル編集ボタン２２５を選択することによって出力ファイルを選択した場合には、同じルーチンを用いて出力ファイルも編集できる。
【００５２】
図８は、ユーザが第１のインポートファイルにインポートパラメータを追加できるようにするために、ＡＭＳマッピングユーティリティ６２によって表示され得る、例示的なインポートパラメータ追加テンプレート３１０と、マッピングユーティリティ起動テンプレート１１０とを示す。インポートファイル追加テンプレート３１０は、マウス３６の右マウスボタンをクリックすることによって呼び出されるコンテクストメニューからインポートパラメータ追加選択肢を選択することによって起動されてもよい。ユーザは、第１のインポートファイルに第１の新たなパラメータを追加するために、第１のインポートファイルに追加すべき第１の新たなパラメータ名を３１１に入力し、ＯＫボタン３１２を選択することができる。或いは、ユーザは、第１のインポートファイルに第１の新たなパラメータを追加するオペレーションを中止するために、キャンセル（Ｃａｎｓｅｌ）ボタン３１３を選択できる。
【００５３】
図９は、インポートパラメータ追加テンプレート３１０に添付されるインポートパラメータ追加ルーチン３２０を説明するフローチャートの例示的な図である。ブロック３２１で、インポートパラメータ追加ルーチン３２０は、インポートパラメータ追加テンプレート３１０からの第１のユーザ入力を受け入れる。ブロック３２２で、インポートパラメータ追加ルーチン３２０は、第１のユーザ入力がＯＫ信号であるかキャンセル（Ｃａｎｃｅｌ）信号であるかを判定する。ブロック３２４で、第１のユーザ入力がキャンセル信号であると判定された場合には、インポートパラメータ追加ルーチン３２０は終了する。第１のユーザ信号がＯＫ信号であると判定された場には、ブロック３２３で、インポートパラメータ追加ルーチン３２０は、テンプレート３１０の３１１にユーザによって入力された第１のパラメータの名称が、第１のインポートファイル中に既に存在するか否かを判定する。第１のパラメータの名称が第１のインポートファイル中に既に存在する場合には、インポートパラメータ追加ルーチン３２０はエラーメッセージを表示し、新しい名称を入力するようユーザに求める。第１のパラメータの名称が第１のインポートファイル中に存在しない場合には、ブロック３２５で、インポートパラメータ追加ルーチン３２５は、第１のパラメータを第１のインポートファイルに追加し、このパラメータはマッピングユーティリティ起動テンプレート１１０の第１のウインドウ１１２内でマッピングに使用可能になる。
【００５４】
図１０は、インポートファイルからインポートパラメータを削除するために用いられるマッピングユーティリティテンプレート１１０を示す。ユーザは、第１のウインドウ１１２から、削除すべきインポートパラメータを選択できる。図１０は、第１のインポートファイルから削除されるよう選択された第２のインポートパラメータ４１１も示す。ユーザは、第２のインポートパラメータ４１１を選択した後、第１のインポートファイルから第２のインポートパラメータ４１１を削除するために、マウス３６の右マウスボタンをクリックしてコンテクストメニューを起動させ、このようなコンテクストメニューからパラメータ削除ボタンを選択することができる。
【００５５】
図１１は、マッピングユーティリティテンプレート１１０に添付されるインポートパラメータ削除ルーチン４２０を示す。ブロック４２１で、ユーザは、ウインドウ１１２内の第２のインポートパラメータ４１１を選択する。ブロック４２２で、ユーザは、コンテクストメニューからパラメータ削除ボタンを選択する。ブロック４２３で、ユーザは、第１のインポートファイルからの第２のインポートパラメータ４１１の削除を確認するよう求められる。ユーザが削除を確認した場合には、ブロック４２４で、インポートパラメータ削除ルーチン４２０は、第１のインポートファイルから第２のインポートパラメータ４１１を削除する。ユーザが削除を確認しなかった場合には、インポートパラメータ削除ルーチン４２０は、ブロック４２５で、第２のインポートパラメータ４１１を削除せずに終了する。
【００５６】
図１２は、インポートパラメータを出力パラメータにマッピングするために用いられるパラメータマッピングテンプレート５１０と、マッピングユーティリティテンプレート１１０とを示す。ユーザは、第１の列１１４内の出力パラメータをダブルクリックすることによって、または第１の列１１４内の出力パラメータを選択し、次に、マウス３６の右マウスボタンをクリックすることによって呼び出されるコンテクストメニューからマッピング編集ボタンを選択することによって、パラメータマッピングテンプレート５１０を呼び出すことができる。ユーザは、インポートパラメータを出力パラメータにマッピングするために、パラメータマッピングテンプレート５１０上の「マッピングされたインポートパラメータ（インポートパラメータにマッピング）（mapped import parameter）」選択肢５１１を選択しなければならない。例えば、ユーザが第１の列１１４から第１の出力パラメータを選択して、パラメータマッピングテンプレート５１０を呼び出すと、第１の出力パラメータの名称がフィールド５１２に示される。ユーザは、第１の出力パラメータに第３のインポートパラメータをマッピングするために、パラメータマッピングテンプレートの５１３に第３のインポートパラメータの名称を入力する。この時点で、ユーザは、ＯＫボタン５１４を選択することによって、第３のインポートパラメータと第１の出力パラメータとの間のマッピングを完了できる。或いは、ユーザは、第３の入力パラメータと第１の出力パラメータとの間でいかなるマッピングも実行せずにパラメータマッピングテンプレート５１０を閉じるために、キャンセル（Ｃａｎｃｅｌ）ボタン５１５を選択できる。
【００５７】
ユーザは、第１のウインドウ１１２内の第３のインポートパラメータをダブルクリックすることによって、第３のインポートパラメータを第１の出力パラメータにマッピングすることもできる。このように第３のインポートパラメータをダブルクリックすると、ディスプレイ３０上のカーソルがドラッグ−ドロップポインタに変更される。ユーザは、続いて、第３のインポートパラメータを第１の出力パラメータにマッピングするために、第１の列１１４から第１の出力パラメータを選択できる。
【００５８】
図１３は、第３のインポートパラメータを第１の出力パラメータにマッピングするためのパラメータマッピングルーチン５２０を示す。ブロック５２１で、ユーザは、第１の出力パラメータにマッピングする第３のインポートパラメータを選択する。上述したように、ユーザは、第３のインポートパラメータをダブルクリックすることによって、またはマッピングパラメータテンプレート５１０を呼び出すことによって、第３のインポートパラメータを選択できる。ブロック５２２で、パラメータマッピングルーチン５２０は、第３のインポートパラメータが他の任意の出力パラメータにマッピングされるか否かをチェックする。第３のインポートパラメータが別の出力パラメータにマッピングされると判定された場合には、ブロック５２３で、パラメータマッピングルーチン５２０は、第３のインポートパラメータの潜在的な多重マッピングに関してユーザに通知するために、ユーザに対する警告を表示する。ブロック５２４で、ユーザは、パラメータマッピングテンプレート５１０上のキャンセルボタン５１５を選択することによってマッピングをキャンセルするか、またはパラメータマッピングテンプレート５１０のＯＫボタン５１４を選択することによって先に進んでマッピングを作成するかの選択肢を有する。ユーザがＯＫボタン５１４を選択した場合には、ブロック５２５で、ユーザは、第３のインポートパラメータがマッピングされる第１の出力パラメータを選択する。ブロック５２６で、パラメータマッピングルーチン５２０は、第１の出力パラメータに対する第３のインポートパラメータのマッピングを作成する。
【００５９】
図１４は、第１の明示的な値を第２の出力パラメータにマッピングするために用いられるパラメータマッピングテンプレート５１０と、マッピングユーティリティテンプレート１１０とを示す。ユーザは、第１の列１１４の第２の出力パラメータをダブルクリックすることによって、または、第１の列１１４の第２の出力パラメータを選択し、次に、マウス３６の右マウスボタンをクリックすることによって呼び出されるコンテクストメニューからマッピング編集ボタンを選択することによって、パラメータマッピングテンプレート５１０を呼び出すことができる。ユーザは、第１の明示的な値を第２の出力パラメータにマッピングするために、パラメータマッピングテンプレート５１０上の「明示値へのマッピング（mapped to explicit value）」選択肢６１１を選択する。ユーザは、フィールド６１２に、第２の出力パラメータにマッピングされる第１の明示的な値を入力できる。
【００６０】
第２の出力パラメータのデータタイプが定められている場合には、フィールド６１２に入力される第１の明示的な値は、第２の出力パラメータに対して定められたデータタイプでなければならない。例えば、第２の出力パラメータのデータタイプがテキストである場合には、フィールド６１２に入力される第１の明示的な値もテキストでなければならない。第２の出力パラメータに対する他の可能なデータタイプは、日付、数値、列挙等であってもよい。第２の出力パラメータに対して、可能な値の列挙リストが定められている場合には、フィールド６１２で入力される明示的な値は、このような列挙リストに含まれていなければならない。第２の出力パラメータに対してデフォルト値が提供されている場合には、ユーザはデフォルト（Ｄｅｆａｕｌｔ）ボタン６１３を選択することによって、フィールド６１２にこのようなデフォルト値を入力できる。出力パラメータにマッピングされる明示的な値は、後で異なる値と置換される置換キーによって指定されてもよい。例えば、＃ＤＡＴＥ＃というキーを第１の明示的な値としてフィールド６１２に入力すると、第２の出力パラメータには現在の日付がマッピングされる。このような置換キーの他の例としては、現在時刻に対する＃ＴＩＭＥ＃、アプリケーション名に対する＃ＡＰＰ＃、アプリケーションのワーキングフォルダに対する＃ＰＡＴＨ＃、製造者名に対する＃ＭＡＮ＃、装置名に対する＃ＤＥＶ＃等がある。
【００６１】
図１５は、第２の出力パラメータに明示的なパラメータ値をマッピングするために用いられる明示パラメータマッピングルーチン６２０を示す。ブロック６２１で、ユーザは、明示的な値をマッピングする必要がある第２の出力パラメータを選択する。ブロック６２２で、明示パラメータマッピングルーチン６２０は、第２の出力パラメータのデータタイプが何であるかを判定する。第２の出力パラメータのデータタイプが文字列タイプまたは数値タイプである場合には、ブロック６２３及び６２４で、明示パラメータマッピングルーチン６２０は、明示パラメータマッピングテンプレート６１０のフィールド６１２に、通常の入力フィールドを提示する。第２の出力パラメータのデータタイプが日付タイプである場合には、ブロック６２５で、明示パラメータマッピングルーチン６２０は、フィールド６１２に日付入力フィールドを提示する。同様に、第２の出力パラメータのデータタイプが列挙タイプである場合には、ブロック６２６で、明示パラメータマッピングルーチン６２０は、フィールド６１２に、列挙値を有するドロップダウンリストを提示する。ブロック６２７で、明示パラメータマッピングルーチン６２０は、ユーザによって６１２に提供された第１の明示的な値に対する入力値を受け入れる。ブロック６２８で、明示パラメータマッピングルーチン６２０は、ユーザによって入力された第１の明示的な値のデータタイプが、第２の出力パラメータのデータタイプにマッチするかどうかを確認する。ルーチン６２０は、ユーザによって入力された第１の明示的な値が、第２の出力パラメータに対する許容可能値に対する任意の制約の範囲内であることも確認する。このような制約には、例えば、テキストデータタイプに対する英数字制約、数値データタイプに対する範囲制約等が含まれ得る。第１の明示的な値が全ての制約基準を満たし、且つ、第１の明示的な値が有効である場合には、ブロック６２９で、明示パラメータマッピングルーチン６２０は、第２の出力パラメータに対する第１の明示的な値のマッピングを作成する。
【００６２】
図１６は、出力パラメータに対する列挙マッピングを編集するために用いられる列挙マッピング編集テンプレート７１０と、マッピングユーティリティテンプレート１１０とを示す。ユーザは、第１の列１１４から、列挙マッピングが編集されるべき第３の出力パラメータを選択する。第３の出力パラメータの列挙マッピングを編集するためには、第３の出力パラメータは列挙タイプでなければならない。第２の列１１６は、第１の列１１４内のパラメータのタイプを示している。例えば、図１６において、第１の出力列１１４内のburst＿command＿numberという名称の出力パラメータは、第２の列１１６から分かるように列挙タイプのパラメータである。列挙マッピング編集テンプレート７１０は、マウス３６の右マウスボタンをクリックすることで起動できるコンテクストメニューから列挙マッピング編集ボタンを選択することによって呼び出すことができる。
【００６３】
ユーザが、第３の出力パラメータに対する列挙を編集するために列挙マッピング編集テンプレート７１０を起動させると、列挙マッピング編集テンプレート７１０上の７１１及び７１２に、第３の出力パラメータの名称と第３の出力パラメータにマッピングされる第４のインポートパラメータとが表示される。第１の入力フィールド７１３は、第４のインポートパラメータに添付され得る第１のインポートファイル内の値のドロップダウンリストを提供する。第２の入力フィールド７１４は、第３の出力パラメータに対して許容可能なＡＭＳデータベース６０内の値のドロップダウンリストを提供する。ユーザは、第１の入力フィールド７１３の第４のインポートパラメータに添付される第１のインポート値と、第２の入力フィールド７１４の第３の出力パラメータに添付される第１の列挙出力値とを選択した後、第１のインポート値を第１の列挙出力値にマッピングするために、列挙マッピング追加ボタン７１５を選択できる。一旦列挙マッピング追加ボタン７１５が選択されると、列挙マッピングウインドウ７１６に、第１の列挙出力値に対する第１のインポート値の列挙が示される。
【００６４】
ユーザは、第４のインポートパラメータと第３の出力パラメータとの間の列挙マッピングを削除するために、列挙マッピングウインドウ７１６に示される列挙マッピングを選択して、列挙マッピング削除（Ｒｅｍｏｖｅ）ボタン７１７を選択できる。ユーザは、いつでも、ＯＫボタン７１８を選択することによって、列挙マッピングウインドウ７１６に示されている列挙マッピングの保存を選択できる。キャンセル（Ｃａｎｃｅｌ）ボタン７１９を選択すると、列挙マッピングウインドウ７１６に示されている列挙マッピングに対して行われたいかなる編集も保存せずに、列挙マッピング編集ウインドウが閉じられる。
【００６５】
図１７は、第３の出力パラメータに対する列挙マッピングを編集するために添付される列挙マッピング編集ルーチン７２０を示す。ユーザは、第３の出力パラメータに対する列挙マッピングを編集するために、マッピングユーティリティテンプレート１１０内の第１の列１１４から第３の出力パラメータを選択して、列挙マッピング編集ルーチン７２０を起動させてもよい。ブロック７２１で、列挙マッピング編集ルーチン７２０は、第３の出力パラメータに対する現在の列挙マッピングを有する列挙マッピング編集テンプレート７１０を表示する。ブロック７２２で、ユーザは、列挙マッピング編集テンプレート７１０を用いてどのオペレーションを実行するか決定する。
【００６６】
ユーザが、第３の出力パラメータに対する列挙マッピングを追加することを望む場合には、７２３で、ユーザは、列挙マッピング編集テンプレート７１０の第１の入力フィールド７１３内の第１のインポート値を選択する。ブロック７２４で、ユーザは、第２の入力フィールド７１４内の第１の列挙出力値を選択する。
ブロック７２５で、ユーザは、第１の入力値と第１の列挙出力値との間の列挙マッピングを作成するために、列挙追加ボタン７１５を選択する。ブロック７２６で、ユーザは、列挙マッピングを保存するためにＯＫボタン７１８を選択できる。
【００６７】
ユーザが、第３の出力パラメータに対する列挙マッピングを削除することを望む場合には、ブロック７２７で、ユーザは、列挙マッピング編集テンプレート７１０の列挙マッピングウインドウ７１６内で、削除すべき列挙マッピングを選択できる。ブロック７２８で、ユーザは、選択した列挙マッピングを削除するために列挙マッピング削除（Ｒｅｍｏｖｅ）ボタン７１７を選択できる。
【００６８】
図１８は、出力パラメータに対するデフォルト設定を修正するための出力パラメータデフォルト修正テンプレート８１０を示す。ユーザは、マウス３６の右マウスボタンをクリックすることによって、出力パラメータデフォルト修正テンプレート８１０を起動させることができる。ユーザは、出力パラメータデフォルト修正テンプレート８１０のデフォルト値タブを選択することによって、出力パラメータのデフォルト設定に関する様々な情報を入力できる。
【００６９】
定義済みデフォルト値ウインドウ８１１は、デフォルト設定が定められる第１の出力ファイル内の様々な出力パラメータをリスト表示する。ユーザは、第４の出力パラメータのデフォルト設定を変更するために、定義済みデフォルト値ウインドウ８１１から第４の出力パラメータを選択するか、または、パラメータ入力フィールド８２２に第４のパラメータの名称を入力することができる。第４の出力パラメータのタイプは、項目タイプ入力フィールド８２３のドロップダウンリストから選択できる。項目タイプ入力フィールド８２３で選択された第４の出力パラメータのタイプは、第４の出力パラメータに割り当て可能なデフォルト値に影響する。例えば、第４の出力パラメータの項目タイプが数値タイプとして選択された場合には、第４の出力パラメータには数値のみを割り当てることができる。出力パラメータに対する他の可能な項目タイプとしては、例えば、日付タイプ、文字列タイプ等が含まれる。
【００７０】
第４の出力パラメータの最大長は、最大長入力フィールド８２４内のドロップダウンリストから選択できる。第４の出力パラメータの最大長は、第４の出力パラメータに入力され得る文字数を制御する。最大長として０を選択すると、第４の出力パラメータに任意の数の文字を含ませることができる。
【００７１】
包含文字入力フィールド８２５は、第４の出力パラメータに含まれ得る明示的な文字のリストの定義を可能にする。例えば、包含文字入力フィールド８２５に「０１２３４５６７８９」という文字列を入力すると、第４の出力パラメータに対する文字の入力は数値のみに制限される。
【００７２】
除外文字入力フィールド８２６は、第４の出力パラメータから除外され得る明示的な文字のリストの定義を可能にする。例えば、除外文字入力フィールド８２６に「ａｅｉｏｕ」という文字列を入力すると、第４の出力パラメータに対する文字の入力は、ａ、ｅ、ｉ、ｏ及びｕを除く任意の文字に制限される。例えば、ユーザが、第４の出力パラメータに「ｌａｚｙ ｂｒｏｗｎ ｄｏｇ」という文字列を入力すると、第４の出力パラメータには「ｌｚｙ ｂｒｗｎ ｄｇ」という文字列のみが入力される。
【００７３】
デフォルト値入力フィールド８２７は、ユーザが、第４の出力パラメータにデフォルト値としてマッピングされる明示的な値を定めることができるようにする。しかし、出力パラメータデフォルト修正テンプレート８１０の他の入力フィールドの１つにおいて、第４の出力パラメータの値に対する何らかの制約が選択される場合には、このような制約が、デフォルト値入力フィールド８２７に入力された値に適用される。例えば、最大長入力フィールド８２４の入力が５である場合には、出力パラメータデフォルト修正テンプレート８１０は、デフォルト値入力フィールド８２７への５文字を超える値の入力を許可しない。デフォルト値入力フィールド８２７に明示的なデフォルト値を入力することに加えて、ユーザは、デフォルト値入力フィールド８２７に１つ以上の置換キー（例えば＃ＤＡＴＥ＃、＃ＴＩＭＥ＃、＃ＡＰＰ＃、＃ＰＡＴＨ＃、＃ＭＡＮ＃、＃ＤＥＶ＃等）を入力できる。ＡＭＳマッピングユーティリティ６２は、このような置換キーを、第４の出力パラメータに対する値で変換する。例えば＃ＤＡＴＥ＃というキーは、現在の日付で置換される。
【００７４】
列挙値選択肢入力フィールド８２８は、ユーザが、第４の出力パラメータに対する許容可能な値の明示的なリストを入力できるようにする。ユーザは、第４の出力パラメータに対して許容され得る値を第１の列挙値リストに追加するために、列挙値選択肢入力フィールド８２８に値を入力して、列挙値追加ボタン８２９を選択できる。第１の列挙値リストは、選択肢ウインドウ８３０に表示される。一旦、ユーザが、第１の列挙値リストに少なくとも１つの値を追加すると、このリストに含まれる値のみが第４の出力パラメータに入力可能になる。ユーザは、選択肢ウインドウ８３０の第１の列挙値リストから値を選択し、列挙値削除（Ｒｅｍｏｖｅ）ボタン８３１を選択することによって、第１の列挙値リストから値を削除することもできる。
【００７５】
一旦、ユーザが、定義済みデフォルト値ウインドウ８１１から第４の出力パラメータを選択するか、または、パラメータ入力フィールド８２２に第４のパラメータの名称を入力すると、ユーザは、出力パラメータデフォルト修正テンプレート８１０の他の任意の入力フィールドに１つ以上の値を入力して、第４の出力パラメータに対するデフォルト設定を更新するために更新（Ｕｐｄａｔｅ）ボタン８３２を選択することができる。ユーザは、出力パラメータに割り当てられているデフォルト設定を削除するために、定義済みデフォルト値ウインドウ８１１内の出力パラメータを選択して、デフォルト設定削除（Ｒｅｍｏｖｅ）ボタン８３３を選択できる。ユーザは、デフォルト値クリア（Ｃｌｅａｒ）ボタン８３４を選択することによって、出力パラメータデフォルト修正テンプレート８１０の全ての入力フィールドをクリアすることができる。
【００７６】
図１９は、出力パラメータに対するデフォルト設定を修正するための出力パラメータデフォルト修正ルーチン８４０を示す。ブロック８４１で、出力パラメータデフォルト修正ルーチン８４０は、定義済みデフォルト値ウインドウ８１１に第１の定義済みデフォルトパラメータリストを表示する。ブロック８４２で、ユーザは、第４の出力パラメータに対するデフォルト設定を削除するか、または第４の出力パラメータに対するデフォルト設定を追加／編集するかを選択する。ユーザは、第４の出力パラメータに対するデフォルト設定を削除するために、ブロック８４３で、第１の定義済みデフォルトパラメータリストから第４の出力パラメータを選択してもよい。ブロック８４４で、ユーザは、第４の出力パラメータに対するデフォルト設定を削除するために、デフォルト設定削除ボタン８３３を選択してもよい。
【００７７】
ユーザは、第４の出力パラメータにデフォルト設定を追加するか、または第４の出力パラメータのデフォルト設定を編集するために、ブロック８４５で、定義済みデフォルト値ウインドウ８１１の第１の定義済みデフォルトパラメータリストから第４の出力パラメータを選択するか、または、パラメータ入力フィールド８２２に第４の出力パラメータの名称を入力する。ブロック８４６で、ユーザは、項目タイプ入力フィールド８２３のドロップダウンリストから第４の出力パラメータのタイプを選択する。ブロック８４７で、ユーザは、最大長入力フィールド８２４のドロップダウンリストから第４の出力パラメータの最大長を選択する。ブロック８４８で、ユーザは、包含文字入力フィールド８２５に第４の出力パラメータに含まれ得る文字のリストを入力する。ブロック８４９で、ユーザは、除外文字入力フィールド８２６に第４の出力パラメータから除外され得る文字のリストを入力する。ブロック８５０で、ユーザは、第４の出力パラメータに単一のデフォルト値または列挙デフォルト値のいずれをマッピングするかを決定する。第４の出力パラメータに単一のデフォルト値をマッピングする場合には、ブロック８５１で、ユーザは、デフォルト値入力フィールド８２７に明示的なデフォルト値を入力する。第４の出力パラメータに列挙デフォルト値をマッピングする場合には、ブロック８５２で、ユーザは、列挙値選択肢入力フィールド８２８に列挙デフォルト値を入力する。ブロック８５３で、ユーザは、列挙デフォルト値を更に入力する必要があるか否かを判定する。一旦、全ての列挙デフォルト値が入力されると、ブロック８５４で、ユーザは、選択肢ウインドウ８３０に表示される列挙デフォルト値のリストから１つの列挙デフォルト値を選択する。
【００７８】
図２０は、ＡＭＳデータベース６０が用いるフォーマットと同様のフォーマットの複数のレコードを含む第１の出力ファイルを生成するために用いられるマッピングユーティリティテンプレート１１０を示す。出力パス定義ボタン１１９を選択することによって、出力パス入力ウインドウ９０１内の第１の出力ファイルのパスを定めることができる。一旦、第１の出力ファイルのパスが定められると、ユーザは、出力ファイル生成ボタン９０２を選択することによって第１の出力ファイルを生成できる。このような出力ファイルは、出力ファイルデータベース７４に格納される。
【００７９】
図２１は、出力ファイル生成ルーチン９２０を示す。ユーザが、出力ファイル生成ボタン９０２を選択することによって、第１の出力ファイルを作成することを選択すると、ブロック９２１で、出力ファイル生成ルーチン９２０は、第１の出力ファイルの出力パラメータと第１のインポートファイルのインポートパラメータとの間の様々なマッピングの完全性及び精度を確認する。このようなマッピングに何らかのエラーが発見された場合には、ブロック９２２で、出力ファイル生成ルーチン９２０は、失われたまたは誤ったマッピングの警告を表示する。
【００８０】
一旦、出力ファイル生成ルーチン９２０が、様々なマッピングの精度及び完全性を確認すると、ブロック９２３で、出力ファイル生成ルーチン９２０は、出力ファイル内の第１のレコードの各種パラメータに対する値の書き込みを開始する。ブロック９２４で、出力ファイル生成ルーチン９２０は、このようなマッピングが明示的か否かを確認するために、第５の出力パラメータに対するマッピングをチェックする。出力パラメータに対するマッピングが明示的でない場合には、ブロック９２５で、出力ファイル生成ルーチン９２０は、インポートパラメータに対する第５の出力パラメータのマッピングが存在するか否かをチェックする。インポートパラメータに対する第５の出力パラメータのマッピングが存在しない場合には、ブロック９２６で、出力ファイル生成ルーチン９２０は、出力ファイル内の第５の出力パラメータに対してブラック（ブランク）値（black value）を書き込む。
【００８１】
第５の出力パラメータのマッピングが明示的であることがわかった場合には、ブロック９２７で、出力ファイル生成ルーチン９２０は、第５の出力パラメータに対する明示的な値の再処理が必要であるか否かをチェックする。出力パラメータデフォルトテンプレート８１０の入力フィールド８２７に入力された明示的な値を、入力フィールド８２４、８２５、８２６等に入力された様々な制約に準拠するよう変更するために、このような再処理が必要となり得る。明示的な値の再処理が必要であることがわかった場合には、ブロック９２８で再処理が実行される。例えば、入力フィールド８２７に入力された明示的な値が「Ｄｅｃｅｍｂｅｒ」であり、このような文字列に対して入力フィールド８２４で指定された最大長が３文字である場合には、ブロック９２８で、このような明示的な値は「Ｄｅｃ」という値に前処理される。
【００８２】
ブロック９２５で、出力ファイル生成ルーチン９２０が、インポートパラメータに対する第５の出力パラメータのマッピングが存在することを発見した場合には、ブロック９２９で、出力ファイル生成ルーチン９２０は、第５の出力パラメータが列挙であるか否かをチェックする。第５の出力パラメータが列挙であることがわかった場合には、ブロック９３０で、出力ファイル生成ルーチン９２０は、このような第５の出力パラメータにマッピングされる入力パラメータの値に対応する、第５の出力パラメータに対する列挙値を見つけ出す。ブロック９３１で、出力ファイル生成ルーチン９２０は、ブロック９２７、９２８、９２９及び９３０の１つで決定された値を、９２３で選択されたレコードの第１の出力ファイルに書き込む。ブロック９３２で、出力ファイル生成ルーチン９２０は、インポートファイル内に、処理されて第１の出力ファイルに書き込まれる必要があるレコードがまだ存在するか否かをチェックする。
【００８３】
本明細書に記載したマッピングユーティリティは、ユーザが、系統的且つ効率的な方法で、様々なタイプの装置に関するデータをＡＭＳデータベースにインポートすることを可能にする。このようなマッピングユーティリティは、ユーザが、プロセスプラント内で用いられる全ての装置を含む完全なデータベースを維持することを可能にする。また、本明細書に記載したマッピングユーティリティを装置データのインポートに用いると、データベース内のデータの完全性を、このようなデータを手動でインポートするよりも遙かに高いレベルに維持することができる。同様に、このマッピングユーティリティを、１つを超えるタイプの装置に関するデータのインポートに用いると、このようなデータをインポートしたユーザに関わりなく、各装置タイプに対する列挙値の間の整合性が得られる。このような整合性は、ＡＭＳに装置データをインポートする際に用いられる様々な手動の方法を用いて達成するのは困難である。
【００８４】
本願明細書で説明及び図示した技術及び構造には、本発明の趣旨および範囲から逸脱することなく、多くの変形及び変更がなされ得る。従って、本願明細書で説明した方法及び装置は例示のみを目的とするものであり、本特許の範囲を限定するものではないと理解されるべきである。
【図面の簡単な説明】
【００８５】
【図１】プロセスプラントで用いられるＡＭＳアプリケーションの例示的な図である。
【図２】ＡＭＳデータベース及びマッピングユーティリティの例示的な図である。
【図３】例示的なＡＭＳマッピングユーティリティプログラムを示すフローチャートの例示的な図である。
【図４】マッピングユーティリティテンプレートの例示的な図である。
【図５】マッピングユーティリティルーチンの例示的な図である。
【図６】インポートファイル編集テンプレートの例示的な図である。
【図７】インポートファイル編集ルーチンの例示的な図である。
【図８】インポートパラメータ追加テンプレートの例示的な図である。
【図９】インポートパラメータ追加ルーチンの例示的な図である。
【図１０】インポートパラメータ削除テンプレートの例示的な図である。
【図１１】インポートパラメータ削除ルーチンの例示的な図である。
【図１２】パラメータマッピングテンプレートの例示的な図である。
【図１３】パラメータマッピングルーチンの例示的な図である。
【図１４】明示値マッピングテンプレートの例示的な図である。
【図１５】明示値マッピングルーチンの例示的な図である。
【図１６】列挙マッピング編集テンプレートの例示的な図である。
【図１７】列挙マッピング編集ルーチンの例示的な図である。
【図１８】出力パラメータデフォルト修正テンプレートの例示的な図である。
【図１９】出力パラメータデフォルト修正ルーチンの例示的な図である。
【図２０】出力ファイル生成テンプレートの例示的な図である。
【図２１】出力ファイル生成ルーチンの例示的な図である。
【図１】
0004689276.tif 000002
【図２】
0004689276.tif 000003
【図３】
0004689276.tif 000004
【図４】
0004689276.tif 000005
【図５】
0004689276.tif 000006
【図６】
0004689276.tif 000007
【図７】
0004689276.tif 000008
【図８】
0004689276.tif 000009
【図９】
0004689276.tif 000010
【図１０】
0004689276.tif 000011
【図１１】
0004689276.tif 000012
【図１２】
0004689276.tif 000013
【図１３】
0004689276.tif 000014
【図１４】
0004689276.tif 000015
【図１５】
0004689276.tif 000016
【図１６】
0004689276.tif 000017
【図１７】
0004689276.tif 000018
【図１８】
0004689276.tif 000019
【図１９】
0004689276.tif 000020
【図２０】
0004689276.tif 000021
【図２１】
0004689276.tif 000022