(57)【要約】【課題】電子装置の誤動作防止を目的とし、設定装置で生成された設定情報に異常が検知された場合、他の正常な設定情報を用いて動作する電子装置等を提供する。【解決手段】本発明に係る電子装置は、設定装置により生成された設定情報に従って動作する電子装置であって、設定情報を取得する取得手段と、電子装置の設定情報で定義されるべき機能定義を記憶した第１記憶手段と、動作開始前、取得手段により取得された設定情報に機能定義が定義されているか否かを検証する検証手段と、検証手段により設定情報に機能定義が定義されていると検証されたときに、該設定情報を記憶した第２記憶手段と、検証手段により設定情報に機能定義が定義されていないと検証された場合、第２記憶手段に記憶された設定情報に従って、動作を制御する動作制御手段とを備える。【選択図】図１３
2014217186.tif 000002
【特許請求の範囲】
【請求項１】
設定装置により生成された設定情報に従って動作する電子装置であって、
設定情報を取得する取得手段と、
電子装置の設定情報で定義されるべき機能定義を記憶した第１記憶手段と、
動作開始前、前記取得手段により取得された前記設定情報に前記機能定義が定義されているか否かを検証する検証手段と、
前記検証手段により前記設定情報に前記機能定義が定義されていると検証されたときに、該設定情報を記憶した第２記憶手段と、
前記検証手段により前記設定情報に前記機能定義が定義されていないと検証された場合、前記第２記憶手段に記憶された前記設定情報に従って、前記動作を制御する動作制御手段と、
を備える電子装置。
【請求項２】
前記検証手段により前記設定情報に前記機能定義が定義されていると検証された場合、該設定情報を前記第２記憶手段に記憶する予備設定情報記憶手段を備える請求項１記載の電子装置。
【請求項３】
電子装置の有する機器構成に応じて付与される識別子を記憶した第３記憶手段を備え、
前記予備設定情報記憶手段は、前記識別子と前記設定情報とを対応付けて前記第２記憶手段に記憶し、
前記動作制御手段は、前記識別子に対応付けられた前記設定情報に従って、前記動作を制御する請求項２記載の電子装置。
【請求項４】
前記検証手段により前記設定情報に前記機能定義が定義されていないと検証された場合であって、前記第２記憶手段に前記設定情報が記憶されていない場合、警報を出力する警報手段を備える請求項１ないし３何れか一項記載の電子装置。
【請求項５】
前記設定情報は、国際標準規格ＩＥＣ６１８５０に準拠するＣＩＤファイルであって、
前記機能定義は、電子装置の前記設定情報で定義されるべき、論理デバイス、論理ノード、該論理ノードのデータオブジェクト、該データオブジェクトのデータ項目、該データ項目のＦＣ及びデータ型を含む請求項１ないし４何れか一項記載の電子装置。
【請求項６】
設定装置により生成された設定情報の検証方法であって、
電子装置に、
設定情報を取得する手順と、
電子装置の設定情報で定義されるべき機能定義を第１記憶手段から読み出す手順と、
動作開始前、前記取得する手順により取得された前記設定情報に前記機能定義が定義されているか否かを検証する手順と、
前記検証する手順により前記設定情報に前記機能定義が定義されていると検証されたときに、該設定情報を第２記憶手段に記憶する手順と、
前記検証する手順により前記設定情報に前記機能定義が定義されていないと検証された場合、前記第２記憶手段に記憶された前記設定情報に従って、前記動作を制御する手順と、
を実行させる検証方法。
【請求項７】
設定装置により生成された設定情報に従って動作する電子装置に、
設定情報を取得する取得手段と、
電子装置の設定情報で定義されるべき機能定義を記憶した第１記憶手段と、
動作開始前、前記取得手段により取得された前記設定情報に前記機能定義が定義されているか否かを検証する検証手段と、
前記検証手段により前記設定情報に前記機能定義が定義されていると検証されたときに、該設定情報を記憶した第２記憶手段と、
前記検証手段により前記設定情報に前記機能定義が定義されていないと検証された場合、前記第２記憶手段に記憶された前記設定情報に従って、前記動作を制御する動作制御手段として機能させるための検証プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子装置、検証方法及び検証プログラムに関する。
【背景技術】
【０００２】
所定の施設内の機器に対し、ネットワークを介して外部の設定装置から設定情報を登録し、施設内の各機器が設定情報に基づき制御されるシステムがある。例えば、変電所内の各機器は、国際標準規格であるＩＥＣ６１８５０に準拠して構築され、ＩＥＣ６１８５０で定められた設定情報に基づいて制御される。変電所内の機器としては、開閉器、駆動装置、発電機、又は変圧器等の主装置、及び主装置を制御する電子装置（以下、ＩＥＤ：Intelligent Electronic Deviceという）などが挙げられる。
【０００３】
例えば、変電所のような施設内の各機器を制御する技術として、特許文献１に記載の技術がある。特許文献１に記載の設備制御システムは、フィールドデバイス（例えば、ＩＥＤ）の機能が制御ステーションにインストールされ、通信リンクがデバイス機能と制御ステーションとの間に形成されて、フィールドデバイスの集積化を行う。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−２０２１０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＩＥＣ６１８５０では、ＩＥＤの機能をＩＣＤ（IED Capability Description）ファイルと呼ばれるテンプレートファイルで表す。施設内に設置されるＩＥＤは、各々のＩＣＤファイルを有するので、複数ベンダーのＩＥＤが存在する場合、ベンダー各社は、それぞれ自社ＩＥＤのＩＣＤファイルを用意する。
【０００６】
ＩＥＣ６１８５０のシステムエンジニアリングでは、まず、システムコンフィグレータと呼ばれるエンジニアリングツールを使用する。システムコンフィグレータは、各社ＩＥＤのＩＣＤファイルを統合的に読み込んで、システム全体の設定などを反映したＳＣＤ（System Configuration Description）ファイルを生成する。ＳＣＤファイルには、各社のＩＣＤファイルの内容をベースにして、各々のＩＥＤに対し、全体のシステム仕様に合わせた設定値を反映する。よって、システムコンフィグレータにより生成されたＳＣＤファイルには、施設内に設置される全てのＩＥＤのそれぞれに対し設定された設定情報が含まれている。
【０００７】
次に、施設内に設置される各々のＩＥＤに対し、設定情報を反映する場合、ＩＥＤコンフィグレータと呼ばれるエンジニアリングツールを使用する。ＩＥＤコンフィグレータは、システムコンフィグレータにより生成されたＳＣＤファイルを読み込み、対象となるＩＥＤの設定情報を抽出し、ＩＥＤに対し、抽出された設定情報を反映する。各々のＩＥＤに反映すべき設定情報は、ＣＩＤ（Configured IED Description）ファイルとして出力される。このため、ＩＥＤコンフィグレータは、ＳＣＤファイルから対象となるＩＥＤの設定情報を抽出し、ＣＩＤファイルを生成し、ＩＥＤに対し生成したＣＩＤファイルを設定する。
【０００８】
このように、ＩＥＣ６１８５０のシステムエンジニアリングでは、各々のＩＥＤに設定するための設定情報（ＣＩＤファイル）が出来上がるまでに、システムコンフィグレータ及びＩＥＤコンフィグレータというエンジニアリングツールを経由する。
【０００９】
ここで、システムコンフィグレータでのＳＣＤファイル作成時、ベンダー各社のＩＣＤファイルから取り込んだＩＥＤの機能定義が誤って変更されてしまうと、ＩＥＤに設定情報（ＣＩＤファイル）が反映された場合、ＩＥＤが適切に動作できなくなるという問題がある。
【００１０】
現状、統一されたシステムコンフィグレータツールは提供されておらず、ＳＣＤファイルは、任意のシステムコンフィグレータツールにより作成される。このため、システムコンフィグレータでのＳＣＤファイル作成時、誤って、ＩＥＤの機能定義にかかる論理ノードやそのデータ項目の追加や削除がなされる可能性を排除できない。
【００１１】
また、ＩＥＤコンフィグレータでのＣＩＤファイル作成時においても、ＳＣＤファイルから取り込んだＩＥＤの機能定義が誤って変更されてしまうと、ＩＥＤに設定情報（ＣＩＤファイル）が反映された場合、ＩＥＤが適切に動作できなくなる可能性がある。
【００１２】
本発明の実施の形態においては、このような点に鑑みて、電子装置の誤動作防止を目的とし、設定装置で生成された設定情報に異常が検知された場合、他の正常な設定情報を用いて動作する電子装置等を提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明の一態様における電子装置は、設定装置により生成された設定情報に従って動作する電子装置であって、設定情報を取得する取得手段と、電子装置の設定情報で定義されるべき機能定義を記憶した第１記憶手段と、動作開始前、前記取得手段により取得された前記設定情報に前記機能定義が定義されているか否かを検証する検証手段と、前記検証手段により前記設定情報に前記機能定義が定義されていると検証されたときに、該設定情報を記憶した第２記憶手段と、前記検証手段により前記設定情報に前記機能定義が定義されていないと検証された場合、前記第２記憶手段に記憶された前記設定情報に従って、前記動作を制御する動作制御手段とを備える。
【００１４】
また、本発明の他の態様における検証プログラムは、設定装置により生成された設定情報の検証方法であって、電子装置に、設定情報を取得する手順と、電子装置の設定情報で定義されるべき機能定義を第１記憶手段から読み出す手順と、動作開始前、前記取得する手順により取得された前記設定情報に前記機能定義が定義されているか否かを検証する手順と、前記検証する手順により前記設定情報に前記機能定義が定義されていると検証されたときに、該設定情報を第２記憶手段に記憶する手順と、前記検証する手順により前記設定情報に前記機能定義が定義されていないと検証された場合、前記第２記憶手段に記憶された前記設定情報に従って、前記動作を制御する手順とを実行させる。
【００１５】
また、本発明の他の態様における検証プログラムは、設定装置により生成された設定情報に従って動作する電子装置に、設定情報を取得する取得手段と、電子装置の設定情報で定義されるべき機能定義を記憶した第１記憶手段と、動作開始前、前記取得手段により取得された前記設定情報に前記機能定義が定義されているか否かを検証する検証手段と、前記検証手段により前記設定情報に前記機能定義が定義されていると検証されたときに、該設定情報を記憶した第２記憶手段と、前記検証手段により前記設定情報に前記機能定義が定義されていないと検証された場合、前記第２記憶手段に記憶された前記設定情報に従って、前記動作を制御する動作制御手段として機能させる。
【発明の効果】
【００１６】
開示の技術によれば、電子装置は、設定装置で生成された設定情報に異常が検知された場合、他の正常な設定情報を用いて動作することができる。
【図面の簡単な説明】
【００１７】
【図１】システム構成の一例を示す図である
【図２】システムコンフィグレータ１及びＩＥＤコンフィグレータ２のハードウェア構成の一例を示す図である。
【図３】システムコンフィグレータ１の有する機能の一例を示すブロック図である。
【図４】ＩＥＤコンフィグレータ２の有する機能の一例を示すブロック図である。
【図５】ＩＥＤ３の有する機能の一例を示すブロック図である。
【図６】Ａ社のＩＣＤファイルの一例を示す図である。
【図７】Ｂ社のＩＣＤファイルの一例を示す図である。
【図８】Ｃ社のＩＣＤファイルの一例を示す図である。
【図９】ＳＣＤファイルの一例を示す図である。
【図１０】Ａ社のＣＩＤファイルの一例を示す図である。
【図１１】検証項目テーブルの一例を示す図である。
【図１２】予備ＣＩＤファイルの管理例を示す図である。
【図１３】ＩＥＤ３の起動処理動作の一例を示すフローチャートである。
【図１４】ＩＥＤ３のＣＩＤファイル検証処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１８】
以下、上記課題を解決する実施例について、添付図面を参照しながら説明する。
【００１９】
［実施例］
＜システム構成＞
図１は、実施例におけるシステム構成の一例を示す図である。図１に示す制御システムは、システムコンフィグレータ１と、ＩＥＤコンフィグレータ２と、ＩＥＤ（電子装置）３と、主装置４とを有する。変電所１００には、主装置4、及び主装置4を制御するＩＥＤ３などが設置される。
【００２０】
システムコンフィグレータ１は、システム全体をコンフィグレーション（構成）する全体設定装置である。システムコンフィグレータ１は、例えばＰＣ（Personal Computer）のハードウェアに、システムコンフィグレータと呼ばれるエンジニアリングツール（ソフトウェア）をインストールして構築することができる。
【００２１】
ＩＥＤコンフィグレータ２は、各々のＩＥＤをコンフィグレーションする設定装置である。ＩＥＤコンフィグレータ２は、例えばＰＣのハードウェアに、ＩＥＤコンフィグレータと呼ばれるエンジニアリングツール（ソフトウェア）をインストールして構築することができる。
【００２２】
ＩＥＤ３は、プロセッサと通信機能とを有するインテリジェントな電子装置であり、主装置４の制御を行う。ＩＥＤ３は、ＩＥＤコンフィグレータ２から設定情報（例えば、ＣＩＤファイル）を取得し、この設定情報に基づいて、主装置４を制御するためのデータモデルを生成する。ＩＥＤ３は、データモデルの設定値に基づいて機器を制御する。
【００２３】
主装置４は、複数のベンダーによって提供される開閉器、駆動装置、発電機、又は変圧器等の機器装置である。主装置４は、ＩＥＤ３により制御される。ＩＥＤ３と主装置４とは、シリアル通信ケーブル、アナログ信号やデジタル（ＯＮ／ＯＦＦ）信号を伝送する銅線などで接続される。
【００２４】
なお、通常の場合、変電所１００内のＩＥＤ３及び主装置４は、例えば、Ａ社、Ｂ社、Ｃ社といった複数のベンダーにより提供されることも多い。ベンダー各社は、自社のＩＥＤを設定するためのＩＥＤコンフィグレータ２を、ベンダー各社毎に準備する。
【００２５】
＜ＩＥＣ６１８５０システムエンジニアリング＞
次に、国際標準規格ＩＥＣ６１８５０のシステムエンジニアリングの流れについて説明する前に、まず、ＩＣＤファイル、ＳＣＤファイル、ＣＩＤファイルについて説明する。
【００２６】
・「ＩＣＤファイル」
ＩＣＤファイルは、個々のＩＥＤが有する機能を、ＸＭＬ形式で記述し定義した機能定義ファイルである。ベンダー各社は、自社のＩＥＤが有する機能定義（仕様）をＩＣＤファイルとして、変電所の管理者に対し提出する。
【００２７】
・「ＳＣＤファイル」
ＳＣＤファイルは、変電所システム全体の設定情報を、ＸＭＬ形式で記述した設定ファイルである。ＳＣＤファイルは、システムコンフィグレータ１により生成される。変電所１００の管理者は、ベンダー各社から各々のＩＣＤファイルを取得し、システムコンフィグレータ１を用いて、ＳＣＤファイルを生成する。ＳＣＤファイルは、機能定義ファイルであるＩＣＤファイルに基づいて生成され、ベンダー各社のＩＥＤ毎に、ＩＥＤが有する機能定義と、機能定義により定義された機能を動作させるために付与された設定値とを含む。
【００２８】
例えば、ベンダー各社のＩＥＤがネットワーク通信機能を有する場合、付与される設定値として、ＩＥＤのＩＰアドレス設定等が挙げられる。管理者は、システム全体内でネットワークアドレスが重複しないように、個々のＩＥＤのＩＰアドレスを決定し、ＳＣＤファイル内に記述する。
【００２９】
また、例えば、ベンダー各社のＩＥＤがＩＥＤ同士の連携機能を有する場合、付与される設定値は、連携にかかる設定値である。例えば、Ａ社のＩＣＤファイルによれば、Ａ社のＩＣＤは、緊急通知をマルチキャストで送信する機能を有し、Ｂ社のＩＣＤファイルによれば、Ｂ社のＩＣＤは、緊急通知を受信し警報を出力する機能を有するとする。この場合、連携機能を実現させるには、Ａ社のＩＥＤには、緊急通知を送信する設定及び通知条件の設定が必要とされ、Ｂ社のＩＥＤには、Ａ社のＩＥＤから緊急通知を受信する設定及び受信時の動作設定などが必要とされる。
【００３０】
このように、ＳＣＤファイルには、システム全体の下、各社のＩＥＤが有する個々の機能を動作させるための設定情報が記述される。
【００３１】
・「ＣＩＤファイル」
ＣＩＤファイルは、個々のＩＥＤに対し設定するための設定情報を、ＸＭＬ形式で記述した設定ファイルである。ＣＩＤファイルは、ＩＥＤコンフィグレータ２により生成される。ベンダー各社の担当者は、システムコンフィグレータ１により生成されたＳＣＤファイルを取得し、取得したＳＣＤファイルをＩＥＤコンフィグレータ２に取り込んでから、自社ＩＥＤ３の設定情報の部分を抽出することで、ＣＩＤファイルを生成する。ＣＩＤファイルは、ＩＥＤの設定情報ファイルであるので、そのＩＥＤが有する機能定義と、機能定義により定義された機能を動作させるために付与された設定値とを含む。
【００３２】
次に、再び図１を参照しながら、ＩＥＣ６１８５０のシステムエンジニアリングの流れについて説明する。
【００３３】
（１）まず、変電所１００内において、複数ベンダーのＩＥＤ３が設置される場合、ベンダー各社は、それぞれ自社ＩＥＤ３のＩＣＤファイルを用意する。
【００３４】
（２）変電所１００の管理者は、ベンダー各社から提供される各々のＩＣＤファイルを取得し、取得したＩＣＤファイルをシステムコンフィグレータ１に取り込んで、変電所全体のシステム仕様に基づき、具体的な設定値を付与し、変電所システム全体の設定情報を作成する。これにより、ＳＣＤファイルが生成される。生成されたＳＣＤファイルには、施設内に設置される全てのＩＥＤのそれぞれに対し設定された設定情報が含まれている。
【００３５】
（３）ベンダー各社の担当者は、システムコンフィグレータ１により生成されたＳＣＤファイルを取得し、取得したＳＣＤファイルをＩＥＤコンフィグレータ２に取り込んでから、自社ＩＥＤ３の設定情報の部分を抽出する。これにより、ＣＩＤファイルが生成される。
【００３６】
（４）ベンダー各社の担当者は、ＩＥＤコンフィグレータ２を用いて、生成したＣＩＤファイルを、ネットワークを介し、自社ＩＥＤ３に対し、設定（登録）する。これにより、ＩＥＤ３の設定は完了する。なお、携帯型記憶媒体などを介し、ＩＣＤファイルを自社ＩＥＤ３に対し、設定してもよい。
【００３７】
（５）ＩＥＤ３は、ＩＥＤコンフィグレータ２からＣＩＤファイルを取得すると、ＣＩＤファイルに基づいて、設定情報を自装置に反映する。その後、ＩＥＤ３は、自装置に反映された設定情報に従って、自装置を動作させる。
【００３８】
＜ハードウェア構成＞
図２は、実施例におけるシステムコンフィグレータ１及びＩＥＤコンフィグレータ２のハードウェア構成の一例を示す図である。システムコンフィグレータ１及びＩＥＤコンフィグレータ２は、主要な構成として、ＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３、ＨＤＤ１４、記憶媒体読取装置１５、入力装置１６、表示装置１７、及び通信装置１８を有する。システムコンフィグレータ１及びＩＥＤコンフィグレータ２は、例えば、ディスプレイを備えたＰＣ、ノートＰＣ、サーバなどにより実現される。
【００３９】
ＣＰＵ１１は、マイクロプロセッサ及びその周辺回路から構成され、装置全体を制御する回路である。また、ＲＯＭ１２は、ＣＰＵ１１で実行される所定の制御プログラムを格納するメモリである。また、ＲＡＭ１３は、ＣＰＵ１１がＲＯＭ１２に格納された所定の制御プログラムを実行して各種の制御を行うときの作業領域として使用するメモリである。
【００４０】
ＨＤＤ１４は、汎用のＯＳ、各種プログラムを含む各種情報を格納する装置であり、不揮発性の記憶装置である。記憶媒体読取装置１５は、ＣＤやＤＶＤ、ＵＳＢメモリ等の外部記憶媒体から情報を入力する装置である。
【００４１】
入力装置１６は、ユーザが各種入力操作を行うための装置である。入力装置１６は、マウス、キーボード、表示装置１７の表示画面上に重畳するように設けられたタッチパネルスイッチなどを含む。
【００４２】
表示装置１７は、各種データを表示画面に表示する装置である。例えばＬＣＤ(Liquid Crystal Display)、ＣＲＴ(Cathode Ray Tube)などから構成される。
【００４３】
通信装置１８は、ネットワークを介して他の機器との通信を行う装置である。有線ネットワークや無線ネットワークなど含む各種ネットワーク形態に応じた通信をサポートする。
【００４４】
＜機能構成＞
図３は、実施例におけるシステムコンフィグレータ１の有する機能の一例を示すブロック図である。図３に示すシステムコンフィグレータ１は、ＩＣＤファイル取得部１０１、ＳＣＤファイル生成部１０２、記憶部１０３を有する。
【００４５】
ＩＣＤファイル取得部１０１は、ベンダー各社により提供される各々のＩＥＤ３のＩＣＤファイルを取得する。ＩＣＤファイル取得部１０１は、ネットワーク、携帯型記憶媒体などを介し、ＩＣＤファイルを取得すればよい。
【００４６】
ＳＣＤファイル生成部１０２は、ＩＣＤファイルを取り込んで、変電所全体のシステム仕様に基づき、具体的な設定値を付与し、変電所システム全体の設定情報を作成することにより、ＳＣＤファイルを生成する。
【００４７】
記憶部１０３は、取得したＩＣＤファイルや、生成されたＳＣＤファイルなどを記憶する。
【００４８】
以上、これらの機能部は、システムコンフィグレータ１を構成するコンピュータのＣＰＵ、ＲＯＭ、ＲＡＭ等のハードウェア資源上で実行されるエンジニアリングツール（ソフトウェア）によって実現される。
【００４９】
図４は、実施例におけるＩＥＤコンフィグレータ２の有する機能の一例を示すブロック図である。図４に示すＩＥＤコンフィグレータ２は、ＳＣＤファイル取得部２０１、ＣＩＤファイル生成部２０２、ＣＩＤファイル設定部２０３、記憶部２０４を有する。
【００５０】
ＳＣＤファイル取得部２０１は、システムコンフィグレータ１により生成されたＳＣＤファイルを取得する。ＳＣＤファイル取得部２０１は、ネットワーク、携帯型記憶媒体などを介し、ＳＣＤファイルを取得すればよい。
【００５１】
ＣＩＤファイル生成部２０２は、ＳＣＤファイルの中から、特定のＩＥＤ（例えば、Ａ社のＩＥＤ３ａ）についての設定情報を抽出することにより、特定のＩＥＤに対し設定するＣＩＤファイルを生成する。
【００５２】
ＣＩＤファイル設定部２０３は、特定のＩＥＤ３に対し、ＣＩＤファイルを設定する。ＣＩＤファイル設定部２０３は、ネットワーク、携帯型記憶媒体などを介し、ＣＩＤファイルをＩＥＤ３に設定する。
【００５３】
記憶部２０４は、取得したＳＣＤファイル、生成したＣＩＤファイルなどを記憶する。
【００５４】
以上、これらの機能部は、ＩＥＤコンフィグレータ２を構成するコンピュータのＣＰＵ、ＲＯＭ、ＲＡＭ等のハードウェア資源上で実行されるエンジニアリングツール（ソフトウェア）によって実現される。
【００５５】
図５は、実施例におけるＩＥＤ３の有する機能の一例を示すブロック図である。図５に示すＩＥＤ３は、ＣＩＤファイル取得部３０１、ＣＩＤファイル検証部３０２、予備ＣＩＤファイル記憶部３０３、動作制御部３０４、予備ＣＩＤファイル取得部３０５、警報部３０６、記憶部３０７を有する。
【００５６】
ＣＩＤファイル取得部３０１は、ＩＥＤコンフィグレータ２により生成されたＣＩＤファイルを取得する。ＣＩＤファイル取得部３０１は、ネットワーク、携帯型記憶媒体などを介し、ＣＩＤファイルを取得できる。ＣＩＤファイル取得部３０１により取得されたＣＩＤファイルは、ＣＩＤファイル記憶領域３０７ａに記憶（格納）される。
【００５７】
ＣＩＤファイル検証部３０２は、例えばＩＥＤ３の起動時に、ＣＩＤファイル記憶領域３０７ａのＣＩＤファイルを読み込んで、ＣＩＤファイルがＩＥＤ３の動作制御で必要となる機能を動作させるための機能項目が正しく定義されているかどうかを検証する。つまり、ＣＩＤファイル検証部３０２は、ＩＥＤ３の誤動作を防止するため、ＣＩＤファイルがシステムコンフィグレータ１やＩＥＤコンフィグレータ２で生成された際に、データ項目（機能項目）の設定が不正な項目や値に変更等されていないかどうかを検証する。なお、検証には、検証項目テーブル記憶領域３０７ｂの検証項目テーブルが用いられる。
【００５８】
予備ＣＩＤファイル記憶部３０３は、ＣＩＤファイル検証部３０２により、ＣＩＤファイル記憶領域３０７ａのＣＩＤファイルがＩＥＤ３の動作制御で必要となる機能を動作させるための機能項目が正しく定義されていると検証された場合、即ち検証結果が正常と判定された場合、ＣＩＤファイル記憶領域３０７ａのＣＩＤファイルを、予備ＣＩＤファイルとして予備ＣＩＤファイル記憶領域３０７ｃに記憶（格納）する。なお、予備ＣＩＤファイルを記憶する際、予備ＣＩＤファイルと、機器構成版数記憶領域３０７ｃの機器構成版数とを対応付けて記憶する。
【００５９】
動作制御部３０４は、ＣＩＤファイル検証部３０２の検証結果が正常と判定された場合、ＣＩＤファイル記憶領域３０７ａのＣＩＤファイルに基づいて、主装置４を制御し動作させる。一方、動作制御部３０４は、ＣＩＤファイル検証部３０２の検証結果が異常と判定された場合、予備ＣＩＤファイル記憶部３０３の予備ＣＩＤファイルが存在するときは、その予備ＣＩＤファイルに基づいて、主装置４を制御し動作させる。
【００６０】
予備ＣＩＤファイル取得部３０５は、ＣＩＤファイル検証部３０２の検証結果が異常と判定された場合、予備ＣＩＤファイル記憶領域３０７ｃから、機器構成版数記憶領域３０７ｃの機器構成版数に対応付けられている予備ＣＩＤファイルを取得する。そして、予備ＣＩＤファイル取得部３０５は、予備ＣＩＤファイルを取得できた場合、動作制御部３０４に対し、取得した予備ＣＩＤファイルを渡す。一方、予備ＣＩＤファイル取得部３０５は、予備ＣＩＤファイルを取得できない場合、警報部３０６に対し、警報出力命令を通知する。
【００６１】
警報部３０６は、予備ＣＩＤファイル取得部３０５により警報出力命令が通知されると、例えば、発光、音声、又はその他通知方法を用いて、ユーザに対し、警報を出力する。警報は、ＩＥＤ３に設定されている現在のＣＩＤファイルは異常（不正）なものであると共に予備ＣＩＤファイルを取得できないことでＩＥＤ３が正常に動作できない旨を、ユーザに対し通知し、警告するものである。
【００６２】
記憶部３０５は、ＣＩＤファイル、検証項目テーブル、予備ＣＩＤファイル、機器構成版数を記憶する。また、これら情報を記憶するための領域として、例えば、ＣＩＤファイルを記憶するＣＩＤファイル記憶領域３０７ａ、検証項目テーブルを記憶する検証項目テーブル記憶領域３０７ｂ、予備ＣＩＤファイルを記憶する予備ＣＩＤファイル記憶領域３０７ｃ、機器構成版数を記憶する機器構成版数記憶領域３０７ｃを有する。なお、予備ＣＩＤファイル記憶領域３０７ｃに対する書き込みや書き換えは、予備ＣＩＤファイル記憶部３０３のみが実行できる。即ち、外部からの書き込み、書き換えは不可能となっており、ユーザ等が予備ＣＩＤファイル記憶領域３０７ｃに対し、任意の予備ＣＩＤファイルを書き込んだり、書き換えたりすることはできないようになっている。
【００６３】
以上、これらの機能部は、ＩＥＤ３を構成するコンピュータのＣＰＵ、ＲＯＭ、ＲＡＭ等のハードウェア資源上で実行されるＩＥＤ制御プログラムによって実現される。また、本実施例では、１の記憶部３０５に複数の記憶領域を有する構成としたが、それぞれ、複数の記憶部を有する構成としてもよい。
【００６４】
＜各種データ＞
次に、実施例で用いられる各種データの具体例について説明する。
【００６５】
（ＩＣＤファイル）
図６は、Ａ社のＩＣＤファイルの一例を示す図である。図６のＩＣＤファイルは、Ａ社のＩＥＤ（IED name=””E1”）が有する機能定義（仕様）を、ＸＭＬ形式で記述し定義した機能定義ファイルである。
【００６６】
ＩＣＤファイルは、複数の「要素」から構成される。「要素」は、マークアップしたい対象の文字列（要素の内容）を、「タグ」で囲んだ情報の単位を示す。「タグ」とは、要素の境界を明示的に示すもので、「要素」の開始を「開始タグ」、「要素」の終わりを「終了タグ」という。
【００６７】
例えば、＜ＩＥＤ＞要素６０１は、ＩＥＤ装置を定義する要素である。＜ＩＥＤ＞要素６０１は、＜ＩＥＤ＞という開始タグ、＜／ＩＥＤ＞という終了タグで囲まれて定義される。
【００６８】
また、「要素」は、属性を有する。例えば、＜ＩＥＤ＞要素６０１は、「ｎａｍｅ」、「ｔｙｐｅ」、「ｍａｎｕｆａｃｔｕｒｅｒ」、「ｃｏｎｆｉｇＶｅｒｓｉｏｎ」という属性を有する。
【００６９】
また、「要素」は、要素内に他の「要素」を含むことができる。例えば、＜ＩＥＤ＞要素６０１は、「ＡｃｃｅｓｓＰｏｉｎｔ」、「Ｓｅｒｖｅｒ」、「ＬＤｅｖｉｃｅ」、「ＬＮ０」といった「要素」を含んでいる。
【００７０】
また、属性には、参照データを指定可能である。例えば、＜ＩＥＤ＞要素６０１内で定義される＜ＬＮ０＞要素６０２は、「ｌｎＴｙｐｅ」という属性を有し、「ｌｎＴｙｐｅ」の属性値は、「ＬＬＮ０＿０」という参照データで指定されている。
【００７１】
属性値の参照先は、＜ＤＡＴＡＴＹＰＥＴＥＭＰＬＡＴＥＳ＞要素６０３内で定義される。例えば、＜ＬＮ０＞要素６０２の「ｌｎＴｙｐｅ」の属性値は、＜ＤＡＴＡＴＹＰＥＴＥＭＰＬＡＴＥＳ＞要素６０３内で定義される＜ＬＮｏｄｅＴｙｐｅ＞要素６０４の「ｉｄ」属性と対応付けられる。よって、「ｌｎＴｙｐｅ」の属性値の参照先を取得する場合、「ｌｎＴｙｐｅ」属性の属性値（例えば、「ＬＬＮ０＿０」）と一致する＜ＬＮｏｄｅＴｙｐｅ＞要素６０４の「ｉｄ」属性値を探索する。
【００７２】
また、例えば、＜ＤＯ＞要素６０５の「ｔｙｐｅ」属性の属性値は、「ＩＮＣ＿０」である。属性値の参照先は、＜ＤＡＴＡＴＹＰＥＴＥＭＰＬＡＴＥＳ＞要素６０３内で定義される＜ＤＯＴｙｐｅ＞要素６０６の「ｉｄ」属性と対応付けられる。よって、「ｔｙｐｅ」の属性値の参照先を取得する場合、「Ｔｙｐｅ」属性の属性値（例えば、「ＩＮＣ＿０」）と一致する＜ＤＯＴｙｐｅ＞要素６０６の「ｉｄ」属性値を探索する。
【００７３】
図７は、Ｂ社のＩＣＤファイルの一例を示す図である。図８は、Ｃ社のＩＣＤファイルの一例を示す図である。ベンダー各社は、図６〜８のＩＣＤファイルを、自社のＩＥＤが有する機能定義（仕様）として、変電所の管理者に対し提出する。
【００７４】
（ＳＣＤファイル）
図９は、ＳＣＤファイルの一例を示す図である。図９のＳＣＤファイルは、Ａ社、Ｂ社、Ｃ社のＩＥＤを含む変電所システム全体の設定情報を、ＸＭＬ形式で記述した設定ファイルである。ＳＣＤファイルは、システムコンフィグレータ１により、ＩＣＤファイルに基づいて生成され、ベンダー各社のＩＥＤ毎に、ＩＥＤが有する機能定義と、機能定義により定義された機能を動作させるために付与された設定値とを含む。
【００７５】
例えば、＜ＣＯＭＭＵＮＩＣＡＴＩＯＮ＞要素９０１は、Ａ社のＩＥＤ、Ｂ社のＩＥＤ、Ｃ社のＩＥＤのネットワーク設定情報を示す。例えば、変電所１００の管理者が、システムコンフィグレータ１を用い、各社のＩＥＤの有するネットワーク機能に対し、ＩＰアドレス（設定値）を設定する。
【００７６】
また、＜ＩＥＤ＞要素９０２は、Ａ社のＩＣＤファイル（図６）に基づいて生成される設定情報である。具体的に、＜ＩＥＤ＞要素９０２は、Ａ社のＩＣＤファイル内の＜ＩＥＤ＞要素６０１と、Ａ社のＩＥＤ３ａの有する機能に対し付与された設定値とを含む。例えば、変電所１００の管理者が、システムコンフィグレータ１を用い、＜ＩＥＤ＞要素９０１に基づくＩＥＤ３ａの有する機能に対し、Ａ社のＩＥＤ３ａの設定値を設定する。システムコンフィグレータ１は、ＩＥＤ３ａの有する機能に対し設定された設定値を記述することにより、ＳＣＤファイルを生成する。
【００７７】
同様に、＜ＩＥＤ＞要素９０３、＜ＩＥＤ＞要素９０４は、それぞれ、Ｂ社のＩＣＤファイル（図７）及びＣ社のＩＣＤファイル（図８）に基づいて生成される設定情報である。変電所の管理者１００は、システムコンフィグレータ１を用い、ＩＥＤ３ｂ及びＩＥＤ３ｃの有する機能に対し、それぞれの設定値を設定する。
【００７８】
また、＜ＤＡＴＡＴＹＰＥＴＥＭＰＬＡＴＥＳ＞要素９０５は、属性値の参照先を定義する要素である。Ａ社、Ｂ社、Ｃ社のＩＣＤファイル（図６〜８）に記述されている＜ＤＡＴＡＴＹＰＥＴＥＭＰＬＡＴＥＳ＞要素の全てが、ここに記述される。
【００７９】
（ＣＩＤファイル）
図１０は、Ａ社のＣＩＤファイルの一例を示す図である。図１０のＣＩＤファイルは、Ａ社のＩＥＤ３ａの設定ファイルを示す。ＩＥＤコンフィグレータ２ａは、図９のＳＣＤファイルから、ＩＥＤ３ａの設定情報を抽出することにより、ＩＥＤ３ａのＣＩＤファイルを生成することができる。
【００８０】
例えば、図１０のＣＩＤファイルは、図９のＳＣＤファイルから、以下の記述箇所が抽出されて生成される。
・＜ＣＯＭＭＵＮＩＣＡＴＩＯＮ＞要素９０１のうち、ＩＥＤ３ａに関する記述箇所
・＜ＩＥＤ＞要素９０２の記述箇所
・＜ＤＡＴＡＴＹＰＥＴＥＭＰＬＡＴＥＳ＞要素９０５のうち、＜ＩＥＤ＞要素９０２内の他要素の属性値により参照される記述箇所（参照データ）
（検証項目テーブル）
図１１は、検証項目テーブルの一例を示す図である。検証項目テーブルは、ＣＩＤファイルの検証時に使用され、検証を行うための検証項目を要素毎に分けて規定するテーブルである。検証項目テーブルは、開発者等によりＩＥＤ３の有する機能に従って作成され、記憶部３０５の検証項目テーブル記憶領域３０７ｂに予め格納され保存される。
【００８１】
図１１の検証項目テーブルは、「検証項目ＩＤ」、「論理デバイス名」、「論理ノード名」、「データオブジェクト名」、「データ項目名」、「ＦＣ名」、「データ型（タイプ）」などの項目を有する。
【００８２】
「検証項目ＩＤ」は、検証項目テーブルに、一の検証項目が登録されるたびに付与される検証項目の識別子である。
【００８３】
「論理デバイス名」は、ＩＥＤが正常に動作するために必要な論理デバイスであって、検証対象となる論理デバイスの名称を示す。詳細は後述するが、例えば、図１０のＣＩＤファイル中、論理デバイスである＜ＬＤｅｖｉｃｅ＞要素６０７の「ｉｎｓｔ」属性（論理デバイス名を示す属性）の属性値「Ｒｌｙ１」に対応する。
【００８４】
「論理ノード名」は、ＩＥＤが正常に動作するために必要な論理ノードであって、検証対象となる論理ノードの名称を示す。詳細は後述するが、例えば、図１０のＣＩＤファイル中、論理ノードである＜ＬＮ０＞要素６０２の「ｌｎＣｌａｓｓ」属性（論理ノード名を示す属性）の属性値「ＬＬＮ０」に対応する。
【００８５】
「データオブジェクト名」は、ＩＥＤが正常に動作するために必要なデータオブジェクトであって、検証対象となるデータオブジェクトの名称を示す。詳細は後述するが、例えば、図１０のＣＩＤファイル中、＜ＬＮｏｄｅＴｙｐｅ＞要素６０４において、データオブジェクトである＜ＤＯ＞要素６０５の「ｎａｍｅ」属性（データオブジェクト名を示す属性）の属性値「Ｍｏｄ」に対応する。
【００８６】
「データ項目名」は、ＩＥＤが正常に動作するために必要なデータ項目であって、検証対象となるデータ項目の名称を示す。詳細は後述するが、例えば、図１０のＣＩＤファイル中、＜ＤＯＴｙｐｅ＞要素６０６内において、データ項目である＜ＤＡ＞要素６０８の「ｎａｍｅ」属性（データ項目名を示す属性）の属性値「ｃｔｌＶａｌ」に相当する。
【００８７】
「ＦＣ名」は、検証対象となるデータ項目のＦＣ名称を示す。詳細は後述するが、例えば、図１０のＣＩＤファイル中、データ項目である＜ＤＡ＞要素６０８の「ｆｃ」属性（ＦＣ名を示す属性）の属性値「ＣＯ」に相当する。
【００８８】
「データ型（タイプ）」は、検証対象となるデータ項目のデータ型を示す。詳細は後述するが、例えば、図１０のＣＩＤファイル中、データ項目である＜ＤＡ＞要素６０８の「ｂＴｙｐｅ」属性（データ型を示す属性）の属性値「ＩＮＴ８」に相当する。
【００８９】
（予備ＣＩＤファイル）
図１２は、予備ＣＩＤファイルの管理例を示す図である。予備ＣＩＤファイルは、ＣＩＤファイル検証部３０２により、ＣＩＤファイルがＩＥＤ３の動作制御で必要となる機能を動作させるための機能項目が正しく定義されていると検証された場合（検証結果が正常と判定された場合）、予備ＣＩＤファイルとして予備ＣＩＤファイル記憶領域３０７ｃに記憶されるファイルである。つまり、予備ＣＩＤファイルは、ＩＥＤ３の動作制御で正常な動作が担保されているＣＩＤファイルといえる。なお、予備ＣＩＤファイルは、予備ＣＩＤファイル記憶部３０３により記憶される際、機器構成版数記憶領域３０７ｃの機器構成版数と対応付けて記憶される。
【００９０】
図１２に示されるように、予備ＣＩＤファイルは、「ファイルＩＤ」、「機器構成版数」、「予備ＣＩＤファイル名」が対応付けられて管理される。
【００９１】
「ファイルＩＤ」は、機器構成版数記憶領域３０７ｃに、一の予備ＣＩＤファイルが記憶されるたびに付与される予備ＣＩＤファイルの識別子である。
【００９２】
「機器構成版数」は、予備ＣＩＤファイルが記憶される際に対応付けられる機器構成版数記憶領域３０７ｃの機器構成版数である。ここで、機器構成版数は、機器構成版数記憶領域３０７ｃに記憶されている情報であって、ＩＥＤ３が有する機器構成を特定するための版数（識別子）である。よって、例えば、「機器構成版数」が２．０の予備ＣＩＤファイルは、版数２．０で特定される機器構成を有するＩＥＤ３の動作制御で必要となる機能を動作させるための機能項目が正しく定義されていると検証されたＣＩＤファイルである。なお、「機器構成版数」の他、ＩＥＤ３が有する機器構成を特定するための他の識別子を用いてもよい。
【００９３】
「予備ＣＩＤファイル名」は、ＩＥＤ３の動作制御で必要となる機能を動作させるための機能項目が正しく定義されていると検証されたＣＩＤファイルのファイル名である。
【００９４】
（機器構成版数）
機器構成版数は、機器構成版数記憶領域３０７ｃに記憶されている情報であって、現在のＩＥＤ３が有する機器構成を特定するための版数（識別子）である。現在のＩＥＤ３が有する機器構成に応じて対応する版数が、機器構成版数記憶領域３０７ｃにセットされる。
【００９５】
＜動作＞
（起動処理動作）
図１３は、ＩＥＤ３の起動処理動作の一例を示すフローチャートである。
【００９６】
まず前提として、ＩＥＤ３は、ＩＥＤコンフィグレータ２により生成されたＣＩＤファイルを取り込んで、取り込んだＣＩＤファイルを、ＣＩＤファイル記憶領域３０７ａに保存しておく。また、検証項目テーブル記憶領域３０７ｂには、検証項目テーブルが予め保存されている。また、機器構成版数記憶領域３０７ｃには、機器構成版数（例えば、２．０）が予め保存されている。なお、予備ＣＩＤファイルは、予備ＣＩＤファイル記憶領域３０７ｃに保存されている場合と、保存されていない場合とがあるので、場合毎に応じて以下で説明する。
【００９７】
Ｓ１：予備ＣＩＤファイル取得部３０５は、ＩＥＤ３が起動されると、まず、記憶部３０５の機器構成版数記憶領域３０７ｃから、機器構成版数（例えば、２．０）を取得しておく。
【００９８】
Ｓ２：次に、ＣＩＤファイル検証部３０２は、記憶部３０５のＣＩＤファイル記憶領域３０７ａ及び検証項目テーブル記憶領域３０７ｂから、ＣＩＤファイル及び検証項目テーブルを取得する。
【００９９】
Ｓ３：ＣＩＤファイル検証部３０２は、Ｓ２で、記憶部３０５のＣＩＤファイル記憶領域３０７ａからＣＩＤファイルを取得できたか否かを判定する。記憶部３０５のＣＩＤファイル記憶領域３０７ａにＣＩＤファイルが存在している場合には、ＣＩＤファイルを取得できる。一方、記憶部３０５のＣＩＤファイル記憶領域３０７ａにＣＩＤファイルが存在していない場合には、ＣＩＤファイルを取得できない。
【０１００】
ＣＩＤファイルを取得できた場合、Ｓ４へ進む。一方、ＣＩＤファイルを取得できない場合、Ｓ９へ進む。
【０１０１】
Ｓ４：ＣＩＤファイル検証部３０２は、Ｓ２で取得したＣＩＤファイルを対象として、ＣＩＤファイル検証処理を実行する。ＣＩＤファイル検証処理については後述する。
【０１０２】
Ｓ５：ＣＩＤファイル検証部３０２は、Ｓ３のＣＩＤファイル検証処理の検証結果が正常か異常かにより処理を分岐する。なお、ＣＩＤファイル検証処理の検証結果が正常とは、Ｓ２で取得したＣＩＤファイルがＩＥＤ３の動作制御で必要となる機能を動作させるための機能項目が正しく定義されていると検証された場合である。
【０１０３】
検証結果が正常の場合、Ｓ６へ進む。一方、検証結果が異常の場合、Ｓ９へ進む。
【０１０４】
Ｓ６：次に、予備ＣＩＤファイル記憶部３０３は、検証結果が正常の場合、予備ＣＩＤファイル記憶領域３０７ｃを参照し、Ｓ１で取得した機器構成版数をキーとして、Ｓ１で取得した機器構成版数に対応付けられている予備ＣＩＤファイルが存在するか否かを判定する。例えば、図１２を参照すると、機器構成版数が２．０の場合、機器構成版数２．０に対応付けられているＣＩＤファイル２．０が存在することが分かる。
【０１０５】
Ｓ１で取得した機器構成版数に対応付けられている予備ＣＩＤファイルが存在しない場合、Ｓ７へ進む。一方、Ｓ１で取得した機器構成版数に対応付けられている予備ＣＩＤファイルが存在する場合、Ｓ８へ進む。
【０１０６】
Ｓ７：予備ＣＩＤファイル記憶部３０３は、Ｓ１で取得した機器構成版数に対応付けられている予備ＣＩＤファイルが存在しない場合、Ｓ１で取得した機器構成版数と、Ｓ２で取得したＣＩＤファイルとを対応付けて、予備ＣＩＤファイルとして、記憶部３０５の予備ＣＩＤファイル記憶領域３０７ｃに記憶する。
【０１０７】
例えば、図１２を参照し、仮に、機器構成版数２．０に対応付けられているＣＩＤファイル２．０が存在していない場合には、Ｓ１で取得した機器構成版数２．０と、Ｓ２で取得したＣＩＤファイルとを対応付けて、予備ＣＩＤファイルとして、記憶部３０５の予備ＣＩＤファイル記憶領域３０７ｃに記憶する。その結果、図１２に示されるように、「ファイルＩＤ」００２、「機器構成版数」２．０、「予備ＣＩＤファイル名」ＣＩＤファイル２．０が記憶される。
【０１０８】
Ｓ８：予備ＣＩＤファイル記憶部３０３は、Ｓ２で取得したＣＩＤファイルを、動作制御部３０４に渡す。このＣＩＤファイルは、Ｓ４で検証結果が正常と判定されたＣＩＤファイルである。よって、動作制御部３０４は、検証済のＣＩＤファイルに基づいて、主装置４を正常に制御し動作させることができる。これにより、ＩＥＤ３が不正な動作をすることを防止できる。
【０１０９】
Ｓ９：一方、予備ＣＩＤファイル取得部３０５は、Ｓ３でＣＩＤファイルを取得できない、又は、Ｓ４及び５で検証結果が異常であると判定された場合、予備ＣＩＤファイル記憶領域３０７ｃを参照し、Ｓ１で取得した機器構成版数をキーとして、Ｓ１で取得した機器構成版数に対応付けられている予備ＣＩＤファイルが存在するか否かを判定（確認）する。例えば、図１２を参照すると、機器構成版数が２．０の場合、機器構成版数２．０に対応付けられているＣＩＤファイル２．０が存在することが分かる。
【０１１０】
Ｓ１０：予備ＣＩＤファイル取得部３０５は、予備ＣＩＤファイル記憶領域３０７ｃから、Ｓ９で存在すると判定した予備ＣＩＤファイルを取得する。例えば、図１２を参照すると、機器構成版数が２．０の場合、機器構成版数２．０に対応付けられているＣＩＤファイル２．０が取得される。
【０１１１】
Ｓ１１：予備ＣＩＤファイル取得部３０５は、Ｓ１０で取得した予備ＣＩＤファイルを、動作制御部３０４に渡す。この予備ＣＩＤファイルは、過去にＳ４で検証結果が正常と判定されたＣＩＤファイルである。
【０１１２】
通常、Ｓ２でＣＩＤファイル記憶領域３０７ａから取得したＣＩＤファイルの検証結果が異常である場合、ＣＩＤファイルの定義内容等をチェックし、誤りを訂正するなどの手間や時間がある。
【０１１３】
しかしながら、動作制御部３０４は、Ｓ２でＣＩＤファイル記憶領域３０７ａから取得したＣＩＤファイルの検証結果が異常であっても、過去に検証済のＣＩＤファイル（予備ＣＩＤファイル）に基づいて、主装置４を正常に制御し動作させることができる。これにより、ＩＥＤ３が不正な動作をすることを防止できるとともに、迅速に主装置４を正常に制御し動作させることができる。
【０１１４】
Ｓ１２：一方、予備ＣＩＤファイル取得部３０５は、Ｓ９で、予備ＣＩＤファイル記憶領域３０７ｃに、Ｓ１で取得した機器構成版数に対応付けられている予備ＣＩＤファイルが存在しない場合、警報出力命令を警報部３０６へ通知する。例えば、図１２を参照し、仮に、機器構成版数が２．０の場合、機器構成版数２．０に対応付けられているＣＩＤファイル２．０が存在していなかった場合が該当する。
【０１１５】
なお、Ｓ１２のケースにおいて、Ｓ２でＣＩＤファイル記憶領域３０７ａから取得したＣＩＤファイルの検証結果は異常であるので、そのＣＩＤファイルを使用することはできない。ＩＥＤ３の誤動作を招く可能性があるためである。また、予備ＣＩＤファイル記憶領域３０７ｃには、現在の機器構成版数に対応する予備ＣＩＤファイルが存在しないため、予備ＣＩＤファイルを使用することもできない。
【０１１６】
この場合、動作制御部３０４は、ＣＩＤファイルを読み込めず、動作を開始できない（動作開始を中止する）。これにより、ＩＥＤ３は動作しないながらも、ＩＥＤ３が不正な動作をしてしまうことを防止できる。
【０１１７】
また、警報部３０６は、検証結果が異常と判定された場合であって、現在の機器構成版数に対応する予備ＣＩＤファイルも存在しない場合に、警報出力命令の通知を受けて、ユーザに対し、警報を出力する。これにより、ユーザは、ＩＥＤ３に設定されているＣＩＤファイルは異常（不正）なものであり、また、現在の機器構成版数に対応する予備ＣＩＤファイルも存在しないので、ＩＥＤ３を正常に制御し動作させることができない旨を認識することができる。
【０１１８】
なお、警報出力方法は、ＩＥＤ３の警報部３０６が、警報ランプを発光させたり、スピーカから警報音をならしたり、ディスプレイ上に警告を表示するなどの方法が挙げられる。また、警報部３０６は、他の装置に警報を通知（送信）し、警報を通知された装置側で警報を出力してもよい。
【０１１９】
（ＣＩＤファイル検証処理）
図１４は、ＩＥＤ３のＣＩＤファイル検証処理の一例を示すフローチャートである。ＣＩＤファイル検証部３０２が実行するＣＩＤファイル検証処理（図１３のＳ４）について、図１４に加え、図１０及び図１１を参照しながら、詳しく説明する。
【０１２０】
Ｓ４０：ＣＩＤファイル検証部３０２は、Ｓ２で取得した検証項目テーブルを参照し、最初の検証項目を一つ取得する。例えば、図１１の検証項目テーブルでは、最初の検証項目として、一行目の「検証項目ＩＤ」００１「論理デバイス名」Ｒｌｙ１、「論理ノード名」ＬＬＮ０、「データオブジェクト名」Ｍｏｄ、「データ項目名」ｃｔｌＶａｌ、「ＦＣ名」ＣＯ、「データ型（タイプ）」ＩＮＴ８が取得される。
【０１２１】
Ｓ４１：次に、ＣＩＤファイル検証部３０２は、Ｓ２で取得したＣＩＤファイルを参照し、まず、ＩＥＤが正常に動作するために必要な論理デバイスが存在するかの検証を行う。具体的には、Ｓ２で取得したＣＩＤファイルに、Ｓ４０で取得した「論理デバイス名」（例えば、Ｒｌｙ１）と一致する論理デバイスが存在するかを確認する。
【０１２２】
ここで、図１０のＣＩＤファイルを参照する。ＣＩＤファイル中、ＩＥＤが正常に動作するためには、＜ＬＤｅｖｉｃｅ＞といった要素により、ＩＥＤの論理デバイスが定義されなくてはならない。
【０１２３】
従って、ＣＩＤファイル検証部３０２は、「論理デバイス名」がＲｌｙ１である論理デバイスの定義、具体的には、「論理デバイス名」がＲｌｙ１である＜ＬＤｅｖｉｃｅ＞要素が存在するかを確認する。
【０１２４】
図１０のＣＩＤファイルの場合、＜ＬＤｅｖｉｃｅ＞要素６０７という論理デバイスの定義が存在する。また、論理デバイスである＜ＬＤｅｖｉｃｅ＞要素６０７の「ｉｎｓｔ」属性（論理デバイス名を示す属性）の属性値は「Ｒｌｙ１」である。これは、Ｓ４０で取得した「論理デバイス名」Ｒｌｙ１と一致する。つまりこの場合、図１０のＣＩＤファイルにおいて、「論理デバイス名」がＲｌｙ１である論理デバイスの存在が確認されたことになる。
【０１２５】
Ｓ４０で取得した「論理デバイス名」と一致する論理デバイスが存在する場合、Ｓ４２へ進む。一方、存在しない場合、Ｓ４９へ進む。
【０１２６】
Ｓ４２：次に、ＣＩＤファイル検証部３０２は、ＩＥＤが正常に動作するために必要な論理ノードが存在するかの検証を行う。具体的には、Ｓ４１で検証した論理デバイスを対象に、Ｓ４０で取得した「論理ノード名」（例えば、ＬＬＮ０）と一致する論理ノードが存在するかを確認する。
【０１２７】
ここで、図１０のＣＩＤファイルを参照する。ＣＩＤファイル中、ＩＥＤが正常に動作するためには、「論理デバイス名」がＲｌｙ１である＜ＬＤｅｖｉｃｅ＞要素６０７内で、＜ＬＮ０＞といった要素により、ＩＥＤの論理ノードが定義されなくてはならない。
【０１２８】
従って、ＣＩＤファイル検証部３０２は、＜ＬＤｅｖｉｃｅ＞要素６０７内から、「論理ノード名」がＬＬＮ０である論理ノードの定義、具体的には、「論理ノード名」がＬＬＮ０である＜ＬＮ０＞要素が存在するかを確認する。
【０１２９】
図１０のＣＩＤファイルの場合、＜ＬＤｅｖｉｃｅ＞要素６０７内には、論理ノードである＜ＬＮ０＞要素６０２が存在する。また、論理ノードである＜ＬＮ０＞要素６０２の「ｌｎＣｌａｓｓ」属性（論理ノード名を示す属性）の属性値は「ＬＬＮ０」である。これは、Ｓ４０で取得した「論理ノード名」ＬＬＮ０と一致する。つまりこの場合、図１０のＣＩＤファイルにおいて、「論理ノード名」がＬＬＮ０である論理ノードの存在が確認されたことになる。
【０１３０】
Ｓ４０で取得した「論理ノード名」と一致する論理ノードが存在する場合、Ｓ４３へ進む。一方、存在しない場合、Ｓ４９へ進む。
【０１３１】
Ｓ４３：次に、ＣＩＤファイル検証部３０２は、ＩＥＤが正常に動作するために必要なデータオブジェクトが存在するかの検証を行う。具体的には、Ｓ４２で検証した論理ノードを対象に、Ｓ４０で取得した「データオブジェクト名」（例えば、Ｍｏｄ）と一致するデータオブジェクトが存在するかを確認する。
【０１３２】
再び図１０のＣＩＤファイルを参照する。「論理ノード名」がＬＬＮ０である＜ＬＮ０＞要素６０２は、「ｌｎＴｙｐｅ」属性を有する。また、「ｌｎＴｙｐｅ」属性（参照データを示す属性）の属性値は「ＬＬＮ０＿０」という参照データで指定されている。
【０１３３】
属性値の参照先は、＜ＤＡＴＡＴＹＰＥＴＥＭＰＬＡＴＥＳ＞要素６０３内で定義される。例えば、＜ＬＮ０＞要素６０２の「ｌｎＴｙｐｅ」の属性値は、＜ＤＡＴＡＴＹＰＥＴＥＭＰＬＡＴＥＳ＞要素６０３内で定義される＜ＬＮｏｄｅＴｙｐｅ＞要素の「ｉｄ」属性と対応付けられる。よって、「ｌｎＴｙｐｅ」の属性値の参照先を取得する場合、「ｌｎＴｙｐｅ」属性の属性値（例えば、「ＬＬＮ０＿０」）と一致する＜ＬＮｏｄｅＴｙｐｅ＞要素の「ｉｄ」属性値を探索する。その結果、＜ＬＮｏｄｅＴｙｐｅ＞要素６０４が探索される。
【０１３４】
参照先として、＜ＬＮｏｄｅＴｙｐｅ＞要素６０４が探索されたならば、＜ＬＮｏｄｅＴｙｐｅ＞要素６０４内から、「データオブジェクト名」がＭｏｄであるデータオブジェクトの定義、具体的には、「データオブジェクト名」がＭｏｄである＜ＤＯ＞要素が存在するかを確認する。
【０１３５】
図１０のＣＩＤファイルの場合、＜ＬＮｏｄｅＴｙｐｅ＞要素６０４内には、データオブジェクトである＜ＤＯ＞要素が複数存在しているが、このうち、＜ＤＯ＞要素６０５は、「ｎａｍｅ」属性（データオブジェクト名を示す属性）の属性値が「Ｍｏｄ」である。これは、Ｓ４０で取得した「データオブジェクト名」Ｍｏｄと一致する。つまりこの場合、図１０のＣＩＤファイルにおいて、「データオブジェクト名」がＭｏｄであるデータオブジェクトの存在が確認されたことになる。
【０１３６】
Ｓ４０で取得した「データオブジェクト名」と一致するデータオブジェクトが存在する場合、Ｓ４４へ進む。一方、存在しない場合、Ｓ４９へ進む。
【０１３７】
Ｓ４４：次に、ＣＩＤファイル検証部３０２は、ＩＥＤが正常に動作するために必要なデータ項目が存在するかの検証を行う。具体的には、Ｓ４３で検証したデータオブジェクトを対象に、Ｓ４０で取得した「データ項目名」（例えば、ｃｔｌＶａｌ）と一致するデータ項目が存在するかを確認する。
【０１３８】
再び図１０のＣＩＤファイルを参照する。データオブジェクトである＜ＤＯ＞要素６０５は、「Ｔｙｐｅ」属性を有する。また、「Ｔｙｐｅ」属性（参照データを示す属性）の属性値は「ＩＮＣ＿０」という参照データで指定されている。
【０１３９】
属性値の参照先は、＜ＤＡＴＡＴＹＰＥＴＥＭＰＬＡＴＥＳ＞要素６０３内で定義される。例えば、＜ＤＯ＞要素６０５の「Ｔｙｐｅ」の属性値は、＜ＤＡＴＡＴＹＰＥＴＥＭＰＬＡＴＥＳ＞要素６０３内で定義される＜ＤＯＴｙｐｅ＞要素の「ｉｄ」属性と対応付けられる。よって、「Ｔｙｐｅ」の属性値の参照先を取得する場合、「Ｔｙｐｅ」属性の属性値（例えば、「ＩＮＣ＿０」）と一致する＜ＤＯＴｙｐｅ＞要素の「ｉｄ」属性値を探索する。その結果、＜ＤＯＴｙｐｅ＞要素６０６が探索される。
【０１４０】
参照先として、＜ＤＯＴｙｐｅ＞要素６０６が探索されたならば、＜ＤＯＴｙｐｅ＞要素６０６内から、「データ項目名」がｃｔｌＶａｌであるデータ項目の定義、具体的には、「データ項目名」がｃｔｌＶａｌである＜ＤＡ＞要素が存在するかを確認する。
【０１４１】
図１０のＣＩＤファイルの場合、＜ＤＯＴｙｐｅ＞要素６０６内には、データ項目である＜ＤＡ＞要素が複数存在しているが、このうち、＜ＤＡ＞要素６０８は、「ｎａｍｅ」属性（データ項目名を示す属性）の属性値が「ｃｔｌＶａｌ」である。これは、Ｓ４０で取得した「データ項目名」ｃｔｌＶａｌと一致する。つまりこの場合、図１０のＣＩＤファイルにおいて、「データ項目名」がｃｔｌＶａｌであるデータ項目の存在が確認されたことになる。
【０１４２】
Ｓ４０で取得した「データ項目名」と一致するデータ項目が存在する場合、Ｓ４５へ進む。一方、存在しない場合、Ｓ４９へ進む。
【０１４３】
Ｓ４５：次に、ＣＩＤファイル検証部３０２は、Ｓ４０で取得した「データ項目名」と一致するデータ項目が存在すると確認された場合、Ｓ４４のデータ項目である＜ＤＡ＞要素６０８の「ＦＣ名」及び「データ型」が、ＩＥＤが正常に動作するために適切な値であるかの検証を行う。具体的には、Ｓ４４のデータ項目を対象に、当該データ項目が、Ｓ４０で取得した「ＦＣ名」（例えば、ＣＯ）及び「データ型」（例えば、ＩＮＴ８）と一致する「ＦＣ名」及び「データ型」で定義されているかを確認する。
【０１４４】
再び図１０のＣＩＤファイルを参照する。＜ＤＡ＞要素６０８は、「ｆｃ」属性（ＦＣ名を示す属性）の属性値が「ＣＯ」であり、「ｂＴｙｐｅ」属性（データ型を示す属性）の属性値が「ＩＮＴ８」である。これは、Ｓ４０で取得した「ＦＣ名」ＣＯ及び「データ型」ＩＮＴ８と一致する。つまりこの場合、図１０のＣＩＤファイルにおいて、当該データ項目が、Ｓ４０で取得した「ＦＣ名」及び「データ型」と一致する「ＦＣ名」及び「データ型」で定義されていることになる。
【０１４５】
Ｓ４５のデータ項目が、Ｓ４０で取得した「ＦＣ名」及び「データ型」と一致する「ＦＣ名」及び「データ型」で定義されている場合、Ｓ４６へ進む。一方、「ＦＣ名」又は「データ型」の何れか片方でも定義されていない場合、Ｓ４９へ進む。
【０１４６】
Ｓ４６：ここで、ＣＩＤファイル検証部３０２は、再び検証項目テーブルを参照し、検証項目テーブルには、未処理の検証項目があるか否かを判定する。未処理の検証項目がある場合、Ｓ４７へ進む。検証項目テーブル内の全検証項目について検証（Ｓ４１〜Ｓ４５）を実行するためである。一方、未処理の検証項目がない場合、全検証項目について検証を完了したことになるため、Ｓ４８へ進む。
【０１４７】
Ｓ４７：ＣＩＤファイル検証部３０２は、検証項目テーブルを参照し、次の検証項目を一つ取得する。例えば、図１１の検証項目テーブルにおいて、Ｓ４０で「検証項目ＩＤ」００１が取得されていた場合、次の検証項目として、「検証項目ＩＤ」００２が取得される。取得後は、再びＳ４１へ進み、取得した検証項目の検証を実行する（Ｓ４１〜Ｓ４５）。
【０１４８】
Ｓ４８：ＣＩＤファイル検証部３０２は、ＣＩＤファイルの検証結果は正常であると判定し、図１３のＳ５へ進む。
【０１４９】
Ｓ４９：ＣＩＤファイル検証部３０２は、Ｓ４１〜Ｓ４５でいずれかがＮの場合、ＣＩＤファイルの検証結果は異常（不正）であると判定し、図１３のＳ５へ進む。
【０１５０】
以上、ＣＩＤファイル検証部３０２によりＣＩＤファイル検証処理が実行される。
【０１５１】
＜まとめ＞
ＩＥＣ６１８５０のシステムエンジニアリングでは、システムコンフィグレータ１やＩＥＤコンフィグレータ２など、複数の設定装置を介してＣＩＤファイルが生成される。また、システムコンフィグレータツールやＩＥＤコンフィグレータツールは、統一されたツールは提供されていない。このため、誤って、ＩＥＤの機能定義にかかる論理ノードやそのデータ項目の追加や削除がなされる可能性を排除できない。
【０１５２】
本実施例に係るＩＥＤ３は、例えば、ＩＥＤ３が起動されたタイミングで、正常に動作が可能なＣＩＤファイルかどうかの検証の上、ＣＩＤファイルの読み込みを行う。また、設定情報が、ＩＥＤ機器の仕様と不整合であった場合に、それ以前に検証結果が正常と判定されたＣＩＤファイル（予備ＣＩＤファイル）の読み込みを行う。これにより、ＩＥＤ３は、ＩＥＤ３が不正な動作をすることを防止できるとともに、迅速に主装置４を正常に制御し動作させることができる。またさらに、それ以前に検証結果が正常と判定されたＣＩＤファイル（予備ＣＩＤファイル）が存在しない場合には、ユーザに対し警報を出力すると共に、ＩＥＤを動作をさせないようにすることによって、ＩＥＤ３が不正な動作をすることを防止することができる。
【０１５３】
即ち、本実施例によれば、電子装置の誤動作防止を目的とし、設定装置で生成された設定情報に異常が検知された場合、他の正常な設定情報を用いて動作する電子装置等を提供することが可能である。
【０１５４】
以上、実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、種々の変形及び変更が可能である。
【符号の説明】
【０１５５】
１           システムコンフィグレータ
２           ＩＥＤコンフィグレータ
３           ＩＥＤ
４           主装置
１１       ＣＰＵ
１２       ＲＯＭ
１３       ＲＡＭ
１４       ＨＤＤ
１５       記憶媒体読取装置
１６       入力装置
１７       表示装置
１８       通信装置
１００    変電所
１０１    ＩＣＤファイル取得部
１０２    ＳＣＤファイル生成部
１０３    記憶部
２０１    ＳＣＤファイル取得部
２０２    ＣＩＤファイル生成部
２０３    ＣＩＤファイル設定部
２０４    記憶部
３０１    ＣＩＤファイル取得部
３０２    ＣＩＤファイル検証部
３０３    予備ＣＩＤファイル記憶部
３０４    動作制御部
３０５    予備ＣＩＤファイル取得部
３０６    警報部
３０７    記憶部
【図１】
2014217186.tif 000003
【図２】
2014217186.tif 000004
【図３】
2014217186.tif 000005
【図４】
2014217186.tif 000006
【図５】
2014217186.tif 000007
【図６】
2014217186.tif 000008
【図７】
2014217186.tif 000009
【図８】
2014217186.tif 000010
【図９】
2014217186.tif 000011
【図１０】
2014217186.tif 000012
【図１１】
2014217186.tif 000013
【図１２】
2014217186.tif 000014
【図１３】
2014217186.tif 000015
【図１４】
2014217186.tif 000016