(57)【要約】      （修正有）【課題】より短い時間で受変電設備の検証ソフトウェアを開発することができるソフトウェア生成装置を提供する。【解決手段】ソフトウェア生成装置１００は、検証モジュール記憶部１０３、１０４と、検証ソフトウェア生成部１５５とを持つ。検証モジュール記憶部は、制御対象となる設備を構成する機器に関する機器情報と、設備を制御する制御ソフトウェアが正常に動作するか否かを検証するための所定の処理を表す検証モジュールと、を対応付けて複数記憶する。検証ソフトウェア生成部は、機器情報を含み、かつ設備の仕様を表す仕様情報に基づいて、１つ以上の検証モジュールを検証モジュール記憶部から取得し、取得された検証モジュールと仕様情報とに基づいて制御ソフトウェアが正常に動作するか否かを検証するための所定の処理を制御ソフトウェアに指示する検証ソフトウェアを生成する。【選択図】図１
2020154537.tif 000002
【特許請求の範囲】
【請求項１】
制御対象となる設備を構成する機器に関する機器情報と、前記設備を制御する制御ソフトウェアが正常に動作するか否かを検証するための所定の処理を表す検証モジュールと、を対応付けて複数記憶する検証モジュール記憶部と、
ユーザーによって入力された、前記機器情報を含み、かつ前記設備の仕様を表す仕様情報に基づいて、１つ以上の前記検証モジュールを前記検証モジュール記憶部から取得し、取得された前記検証モジュールと前記仕様情報とに基づいて前記制御ソフトウェアが正常に動作するか否かを検証するための所定の処理を前記制御ソフトウェアに指示する検証ソフトウェアを生成する検証ソフトウェア生成部と、
を備える、ソフトウェア生成装置。
【請求項２】
制御対象となる設備を構成する機器に関する機器情報と、前記設備を制御するための所定の処理を表す制御モジュールと、を対応付けて複数記憶する制御モジュール記憶部と、
前記仕様情報に基づいて、１つ以上の前記制御モジュールを前記制御モジュール記憶部から取得し、取得された前記制御モジュールと前記仕様情報とに基づいて前記制御ソフトウェアを生成する制御ソフトウェア生成部と、
さらに備える、請求項１に記載のソフトウェア生成装置。
【請求項３】
前記検証ソフトウェア生成部は、前記制御ソフトウェアが生成されるタイミングに基づいて、前記検証ソフトウェアを生成する、
請求項２に記載のソフトウェア生成装置。
【請求項４】
前記仕様情報は、前記検証モジュールの動作に関する動作情報を有し、
前記検証ソフトウェア生成部は、取得された前記検証モジュールに前記動作情報を加え、前記動作情報を加えられた前記検証モジュールに基づいて前記検証ソフトウェアを生成する、
請求項１から３のいずれか一項に記載のソフトウェア生成装置。
【請求項５】
前記仕様情報は、前記検証モジュールの実行順序を表す制御順を有し、
前記検証ソフトウェア生成部は、前記制御順に基づいて、取得された前記検証モジュールを並び替えることで検証ソフトウェアを生成する、
請求項１から４のいずれか一項に記載のソフトウェア生成装置。
【請求項６】
制御対象となる設備を構成する機器に関する機器情報と、前記設備を制御する制御ソフトウェアが正常に動作するか否かを検証するための所定の処理を表す検証モジュールと、を対応付けて複数記憶する検証モジュール記憶部と、
ユーザーによって入力された、前記機器情報を含み、かつ前記設備の仕様を表す仕様情報に基づいて、１つ以上の前記検証モジュールを前記検証モジュール記憶部から取得し、取得された前記検証モジュールと前記仕様情報とに基づいて前記制御ソフトウェアが正常に動作するか否かを検証するための所定の処理を前記制御ソフトウェアに指示する検証ソフトウェアを生成する検証ソフトウェア生成部と、
を備える、ソフトウェア生成システム。
【請求項７】
制御対象となる設備を構成する機器に関する機器情報と、前記設備を制御する制御ソフトウェアが正常に動作するか否かを検証するための所定の処理を表す検証モジュールと、を対応付けて複数記憶する検証モジュール記憶部を備えるソフトウェア生成装置が行うソフトウェア生成方法であって、
前記ソフトウェア生成装置が、ユーザーによって入力された、前記機器情報を含み、かつ前記設備の仕様を表す仕様情報に基づいて、１つ以上の前記検証モジュールを前記検証モジュール記憶部から取得し、取得された前記検証モジュールと前記仕様情報とに基づいて前記制御ソフトウェアが正常に動作するか否かを検証するための所定の処理を前記制御ソフトウェアに指示する検証ソフトウェアを生成する検証ソフトウェア生成ステップ、
を有する、ソフトウェア生成方法。
【請求項８】
請求項１から５のいずれか一項に記載のソフトウェア生成装置としてコンピュータを機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、ソフトウェア生成装置、ソフトウェア生成システム、ソフトウェア生成方法及びコンピュータプログラムに関する。
【背景技術】
【０００２】
受変電設備は、災害や故障によって停電することがある。受変電設備の制御システムは、受変電設備の停電に応じて発電機を稼働させることで負荷への給電を再開する。受変電設備が復電すると、制御システムは、商用電源に切り替えることで負荷への給電を継続する。このように制御システムを動作させるソフトウェアを、設備の仕様に関する情報に基づいて、所定のシステムによって生成する技術が検討されている。しかし、生成されたソフトウェアの動作を検証するために、生成されたソフトウェアの動作を検証するための検証ソフトウェアが必要となる。検証ソフトウェアは、設備の仕様に関する情報に基づいて個別に開発されている。このため、設備の仕様によっては、検証ソフトウェアの開発に長い時間を要する場合があった。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−１２６７００号公報
【特許文献２】特開２０１５−２１０８１４号公報
【特許文献３】特開２０１７−７２８７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明が解決しようとする課題は、より短い時間で受変電設備の検証ソフトウェアを開発することができるソフトウェア生成装置、ソフトウェア生成システム、ソフトウェア生成方法及びコンピュータプログラムを提供することである。
【課題を解決するための手段】
【０００５】
実施形態のソフトウェア生成装置は、検証モジュール記憶部と、検証ソフトウェア生成部とを持つ。検証モジュール記憶部は、制御対象となる設備を構成する機器に関する機器情報と、前記設備を制御する制御ソフトウェアが正常に動作するか否かを検証するための所定の処理を表す検証モジュールと、を対応付けて複数記憶する。検証ソフトウェア生成部は、ユーザーによって入力された、前記機器情報を含み、かつ前記設備の仕様を表す仕様情報に基づいて、１つ以上の前記検証モジュールを前記検証モジュール記憶部から取得し、取得された前記検証モジュールと前記仕様情報とに基づいて前記制御ソフトウェアが正常に動作するか否かを検証するための所定の処理を前記制御ソフトウェアに指示する検証ソフトウェアを生成する。
【図面の簡単な説明】
【０００６】
【図１】実施形態のソフトウェア生成装置１００の機能構成の概略を示す概略ブロック図。
【図２】実施形態の制御モジュールテーブルの具体例の一つを示す図。
【図３】実施形態の検証モジュールテーブルの具体例の一つを示す図。
【図４】実施形態のソフトウェア生成装置１００による制御ソフトウェア生成処理の概要を示す図。
【図５】実施形態のソフトウェア生成装置１００による検証ソフトウェア生成処理の概要を示す図。
【図６】実施形態のソフトウェアの生成の処理の流れの一具体例を示すフローチャート。
【発明を実施するための形態】
【０００７】
以下、実施形態のソフトウェア生成装置、ソフトウェア生成システム、ソフトウェア生成方法及びコンピュータプログラムを、図面を参照して説明する。
【０００８】
（第１の実施形態）
図１は、実施形態のソフトウェア生成装置１００の機能構成の概略を示す概略ブロック図である。ソフトウェア生成装置１００は、パーソナルコンピュータ、サーバー装置やメインフレーム等の情報処理装置を用いて構成される。ソフトウェア生成装置１００は、入力部１０１、出力部１０２、制御モジュール記憶部１０３、検証モジュール記憶部１０４及び制御部１０５を備える。ソフトウェア生成装置１００は、ユーザーから入力された仕様情報に基づいて制御ソフトウェア及び検証ソフトウェアを生成する。仕様情報は、制御対象となる設備の仕様を表す情報である。仕様情報は、例えば、系統情報、制御情報、機器数、制御順及びタイマー値等の設備を制御するために必要となる情報を含む。仕様情報は、設備の構成に応じて異なる情報を有していてもよい。系統情報は、制御対象の設備に含まれる電気機器の種別を表す。電気機器は、例えば設備に設置された遮断器、断路器、変流器、変圧器又は発電機設備等の機器である。設備は、例えば、受変電設備であってもよいし、受変電設備を制御する制御システムであってもよい。設備は、制御ソフトウェアによって制御される機器であればどのようなものであってもよい。
【０００９】
制御情報は、系統情報の電気機器をどのように制御させるかを表す情報である。制御情報は、例えば、停電時に電気機器の遮断を行う制御に関する情報であってもよい。制御情報は、停電時に発電機設備を稼働する制御に関する情報であってもよい。制御情報は、平常時に発電機設備を停止させる制御に関する情報であってもよい。制御情報は、系統情報によって表される電気機器の制御に関する情報であればどのような情報であってもよい。機器数は、設備に設けられた機器の数である。仕様情報は、機器数と系統情報とを対応付けて有する。例えば、系統情報として機器Ａと機器Ｂとを有する場合について説明する。この場合、仕様情報は、機器Ａを２台、機器Ｂを３台のように機器数を有する。制御順は、制御ソフトウェアの生成に用いられる制御モジュールの実行順序を表す情報である。また、制御順は、検証ソフトウェアの生成に用いられる検証モジュールの実行順序を表す情報である。タイマー値は、系統情報に対して指令を出力するタイミングを表す。電気機器の制御では、電気機器に指示を出力するタイミングをユーザーが任意に設定できる方が便利がよい場合がある。この場合、ユーザーは、タイマー値によって制御モジュール又は検証モジュールに対して指令を出力するタイミングを設定できる。
【００１０】
制御ソフトウェアは、設備を制御するためのソフトウェアである。制御ソフトウェアは、設備を制御する制御システム又は設備を構成する電気機器にインストールされる。制御ソフトウェアは、設備を制御するための所定の処理に関するプログラムである。制御ソフトウェアは、制御システム又は設備にインストールされた検証ソフトウェアからの入力に対して、入力に応じた応答を検証ソフトウェアに出力する。
【００１１】
検証ソフトウェアは、制御ソフトウェアが正常に動作するか否かを検証するためのソフトウェアである。検証ソフトウェアは、設備を制御する制御システム又は設備を構成する電気機器にインストールされる。検証ソフトウェアは、検証対象となる制御ソフトウェアがインストールされている制御システム又は設備と同じ制御システム又は設備にインストールされる。検証ソフトウェアは、制御ソフトウェアが正常に動作するか否かを検証するための所定の処理を制御システム又は設備に実行させるソフトウェアである。検証ソフトウェアは、制御システム又は電気機器にインストールされた制御ソフトウェアに対して、設備の動作を模擬するための所定の指示を入力する。
【００１２】
入力部１０１は、タッチパネル、マウス及びキーボード等の入力装置を用いて構成される。入力部１０１は、入力装置をソフトウェア生成装置１００に接続するためのインタフェースであってもよい。この場合、入力部１０１は、入力装置において入力された入力信号から入力データ（例えば、ソフトウェア生成装置１００に対して入力された仕様情報）を生成し、ソフトウェア生成装置１００に入力する。
【００１３】
出力部１０２は、ソフトウェア生成装置１００に接続された不図示の出力装置を介し、ソフトウェア生成装置１００のユーザに対してデータの出力を行う。出力装置は、例えば画像や文字を画面に出力する装置を用いて構成されても良い。例えば、出力装置は、ＣＲＴ（Cathode Ray Tube）や液晶ディスプレイや有機ＥＬ（Electro-Luminescent）ディスプレイ等を用いて構成できる。また、出力装置は、画像や文字をシートに印刷（印字）する装置を用いて構成されても良い。例えば、出力装置は、インクジェットプリンタやレーザープリンタ等を用いて構成できる。また、出力装置は、文字を音声に変換して出力する装置を用いて構成されても良い。この場合、出力装置は、音声合成装置及び音声出力装置（スピーカー）を用いて構成できる。出力装置は、ＬＥＤ（Light Emitting Diode）等の発光装置を用いて構成されてもよい。出力部１０２は、ソフトウェア生成装置１００に設けられた通信装置を介して他の情報処理装置に対してデータを送信してもよい。
【００１４】
制御モジュール記憶部１０３は、磁気ハードディスク装置や半導体記憶装置等の記憶装置を用いて構成される。制御モジュール記憶部１０３は、制御モジュールテーブルを記憶する。図２は、実施形態の制御モジュールテーブルの具体例の一つを示す図である。制御モジュールテーブルは、複数の制御モジュールレコードを有する。制御モジュールレコードは、系統情報、制御情報及び制御モジュールの各値を有する。制御モジュールレコードは、予め制御モジュールテーブルに記憶される。制御モジュールは、電気機器を制御するにあたって、機能又は処理単位に部分的にモジュール化されたソフトウェアである。制御モジュールは、電気機器や発電機設備等の系統情報によって表される機器を制御するためのソフトウェアである。制御モジュールは、制御モジュールに対応付けされた系統情報、制御ソフトウェアを生成する際に組み合せされうる他の制御モジュール等の情報が付加される。
【００１５】
図２に示される例では、制御モジュールテーブルの最上段の制御モジュールレコードは、系統情報の値が“遮断器”、制御情報の値が“停電時遮断”、制御モジュールの値が“第１制御モジュール”である。従って、制御モジュールテーブルの最上段のレコードによると、仕様情報が、系統情報として“遮断器”を含み、制御情報として“停電時遮断”を含む場合に、制御モジュール“第１制御モジュール”を用いた制御ソフトウェアが生成される。なお、図２に示される制御モジュールテーブルは一具体例に過ぎない。そのため、図２とは異なる態様で制御モジュールテーブルが構成されてもよい。
【００１６】
図１に戻ってソフトウェア生成装置１００の説明を続ける。検証モジュール記憶部１０４は、磁気ハードディスク装置や半導体記憶装置等の記憶装置を用いて構成される。検証モジュール記憶部１０４は、検証モジュールテーブルを記憶する。図３は、実施形態の検証モジュールテーブルの具体例の一つを示す図である。検証モジュールテーブルは、複数の検証モジュールレコードを有する。検証モジュールレコードは、系統情報、制御情報及び検証モジュールの各値を有する。検証モジュールレコードは、予め検証モジュールテーブルに記憶される。検証モジュールは、生成された制御ソフトウェアが正常に動作するか否かを検証するにあたって、機能又は処理単位に部分的にモジュール化されたソフトウェアである。検証モジュールは、電気機器や発電機設備等の系統情報によって表される機器の動作を模擬的に動作させるための指示を制御ソフトウェアに出力するためのソフトウェアである。検証モジュールは、制御ソフトウェアが正常に動作するか否かを検証するための所定の処理の一部を制御システム又は設備に実行させるプログラムである。検証モジュールは、検証モジュールに対応付けされた系統情報、検証ソフトウェアを生成する際に組み合せされうる他の検証モジュール等の情報が付加される。
【００１７】
図３に示される例では、検証モジュールテーブルの最上段の検証モジュールレコードは、系統情報の値が“遮断器”、制御情報の値が“停電時遮断”、検証モジュールの値が“第１検証モジュール”である。従って、検証モジュールテーブルの最上段のレコードによると、仕様情報が、系統情報として“遮断器”を含み、制御情報として“停電時遮断”を含む場合に、検証モジュール“第１検証モジュール”を用いた検証ソフトウェアが生成される。なお、図３に示される検証モジュールテーブルは一具体例に過ぎない。そのため、図３とは異なる態様で検証モジュールテーブルが構成されてもよい。
【００１８】
図１に戻ってソフトウェア生成装置１００の説明を続ける。制御部１０５は、ソフトウェア生成装置１００の各部の動作を制御する。制御部１０５は、例えばＣＰＵ（Central Processing Unit）等のプロセッサ及びＲＡＭ（Random Access Memory）を備えた装置により実行される。制御部１０５は、ソフトウェア生成プログラムを実行することによって、仕様情報取得部１５１、制御モジュール取得部１５２、制御ソフトウェア生成部１５３、検証モジュール取得部１５４及び検証ソフトウェア生成部１５５として機能する。
【００１９】
仕様情報取得部１５１は、入力部１０１を介して仕様情報を取得する。仕様情報取得部１５１は、取得した仕様情報を制御モジュール取得部１５２、制御ソフトウェア生成部１５３、検証モジュール取得部１５４及び検証ソフトウェア生成部１５５に出力する。
【００２０】
制御モジュール取得部１５２は、仕様情報に基づいて制御モジュール記憶部１０３から制御モジュールを取得する。具体的には、制御モジュール取得部１５２は、仕様情報に含まれる系統情報と制御情報と機器数とを取得する。制御モジュール取得部１５２は、取得された系統情報と制御情報と同じ系統情報と制御情報とをいずれも有する制御モジュールレコードを制御モジュール記憶部１０３の制御モジュールテーブルから検索する。制御モジュール取得部１５２は、検索された制御モジュールレコードを機器数に応じて取得する。制御モジュール取得部１５２は、複数の制御モジュールレコードを検索した場合、検索された全ての制御モジュールレコードを取得してもよい。例えば、制御モジュール取得部１５２は、仕様情報に複数の系統情報と制御情報とが含まれる場合に複数の制御モジュールレコードを検索するように構成されてもよい。制御モジュール取得部１５２は、取得された制御モジュールレコードを制御ソフトウェア生成部１５３に出力する。
【００２１】
制御ソフトウェア生成部１５３は、取得された制御モジュールと仕様情報とに基づいて制御ソフトウェアを生成する。具体的には、制御ソフトウェア生成部１５３は、仕様情報が有する制御順に応じて、取得された制御モジュールを組み合わせる。例えば、制御ソフトウェア生成部１５３は、仕様情報が有する制御順と、制御モジュールに付加された情報に応じて、取得された制御モジュールを並べ替える。また、制御ソフトウェア生成部１５３は、制御モジュールに付加された情報に基づいて、取得された制御モジュールを組み合わせる。次に、制御ソフトウェア生成部１５３は、仕様情報が有するタイマー値を制御モジュールに設定する。仕様情報がタイマー値として５秒を有する場合について説明する。この場合、制御ソフトウェア生成部１５３は、タイマーに関する変数を有する制御モジュールに対して、５秒を設定する。なお、仕様情報は、タイマー値を複数有してもよい。この場合、仕様情報は、いずれの制御モジュールに設定されるタイマー値であるかを識別する識別情報とタイマー値とを対応付けて有する。制御ソフトウェア生成部１５３は、生成された制御ソフトウェアを出力部１０２に出力する。
【００２２】
図４は、実施形態のソフトウェア生成装置１００による制御ソフトウェア生成処理の概要を示す図である。ソフトウェア生成装置１００は、制御モジュール記憶部１０３及び制御部１０５を備える。制御モジュール記憶部１０３は、第１制御モジュール及び第２制御モジュール等の複数の制御モジュールを記憶する。第１制御モジュールは、条件Ａ、条件Ｂ及び条件Ｃに対して図示された所定の論理演算を行うことでＡＡ投入指令を指示するモジュールである。第２制御モジュールは、条件Ａ、条件Ｂ、条件Ｃ及び条件Ｄに対して図示された所定の論理演算を行うことでＢＢ投入指令を指示するモジュールである。
【００２３】
制御部１０５は、仕様情報が入力されると、制御モジュール記憶部１０３から制御モジュールを取得する。制御部１０５は、仕様情報と制御モジュールとに基づいて制御ソフトウェアを出力する。図４における制御ソフトウェアは第１制御仕様を実行する制御ソフトウェアである。第１制御仕様は、点線で囲まれた３つの制御モジュールを組み合わせて実現される制御ソフトウェアである。ユーザーは、生成された制御ソフトウェアを制御システムにインストールすることで設備の制御を行うことが可能になる。ユーザーとは、例えば、設備の運用を行う者であってもよい。
【００２４】
図１に戻ってソフトウェア生成装置１００の説明を続ける。検証モジュール取得部１５４は、仕様情報に基づいて検証モジュール記憶部１０４から検証モジュールを取得する。具体的には、検証モジュール取得部１５４は、仕様情報に含まれる系統情報と制御情報と機器数とを取得する。検証モジュール取得部１５４は、取得された系統情報と制御情報とを同じ系統情報と制御情報とをいずれも有する検証モジュールレコードを検証モジュール記憶部１０４の検証モジュールテーブルから検索する。検証モジュール取得部１５４は、検索された検証モジュールレコードを機器数に応じて取得する。検証モジュール取得部１５４は、複数の検証モジュールレコードを検索した場合、検索された全ての検証モジュールレコードを取得してもよい。例えば、検証モジュール取得部１５４は、仕様情報に複数の系統情報と制御情報とが含まれる場合に複数の検証モジュールレコードを検索するように構成されてもよい。検証モジュール取得部１５４は、取得された検証モジュールレコードを検証ソフトウェア生成部１５５に出力する。
【００２５】
検証ソフトウェア生成部１５５は、取得された検証モジュールと仕様情報とに基づいて検証ソフトウェアを生成する。具体的には、検証ソフトウェア生成部１５５は、仕様情報が有する制御順に応じて、取得された検証モジュールを組み合わせる。例えば、検証ソフトウェア生成部１５５は、仕様情報が有する制御順と、検証モジュールに付加された情報に応じて、取得された検証モジュールを並べ替える。また、検証ソフトウェア生成部１５５は、検証モジュールに付加された情報に基づいて、取得された検証モジュールを組み合わせる。次に、検証ソフトウェア生成部１５５は、仕様情報が有するタイマー値を検証モジュールに設定する。仕様情報がタイマー値として５秒を有する場合について説明する。この場合、検証ソフトウェア生成部１５５は、タイマーに関する変数を有する検証モジュールに対して、５秒を設定する。なお、仕様情報は、タイマー値を複数有してもよい。この場合、仕様情報は、いずれの検証モジュールに設定されるタイマー値であるかを識別する識別情報とタイマー値とを対応付けて有する。検証ソフトウェア生成部１５５は、生成された検証ソフトウェアを出力部１０２に出力する。なお、検証ソフトウェア生成部１５５は所定のタイミングで検証ソフトウェアを生成するように構成されてもよい。所定のタイミングとは、例えば、制御ソフトウェア生成部１５３が制御ソフトウェアを生成するタイミングであってもよいし、制御ソフトウェアが生成されて所定の時間が経過した後であってもよいし、制御ソフトウェアが生成される前であってもよい。
【００２６】
図５は、実施形態のソフトウェア生成装置１００による検証ソフトウェア生成処理の概要を示す図である。ソフトウェア生成装置１００は、検証モジュール記憶部１０４及び制御部１０５を備える。検証モジュール記憶部１０４は、第１検証モジュール、第２検証モジュール及び第３検証モジュール等の複数の検証モジュールを記憶する。第１検証モジュールは、機器の動作を模擬することで検証を行うモジュールである。第１検証モジュールは、機器に対してＡＡ投入指令を制御ソフトウェアがインストールされた制御システムに投入する。次に第１検証モジュールは、機器の動作時間タイマにて指定された時間が経過すると、ＡＡを開放から投入に切り替える指示を制御システムに投入するモジュールである。第２検証モジュールは、機器の動作を模擬することで検証を行うモジュールである。第２検証モジュールは、機器に対してＢＢ投入指令を制御ソフトウェアがインストールされた制御システムに投入する。次に第２検証モジュールは、機器の動作時間タイマにて指定された時間が経過すると、ＢＢの投入から解放に切り替える指示を制御システムに投入するモジュールである。第３検証モジュールは、発電機設備の動作を模擬的に動作させることで検証を行うモジュールである。第３検証モジュールは、停電発生と起動指令とを制御ソフトウェアがインストールされた制御システムに投入する。次に第３検証モジュールは、動作時間タイマにて指定された時間が経過すると、発電機を起動するモジュールである。
【００２７】
制御部１０５は、仕様情報が入力されると、検証モジュール記憶部１０４から検証モジュールを取得する。制御部１０５は、仕様情報と検証モジュールとに基づいて検証ソフトウェアを出力する。図５における検証ソフトウェアは第１検証処理を実行する検証ソフトウェアである。第１制御処理は、複数の検証モジュールを組み合わせて実現される検証ソフトウェアである。ユーザーは、生成された検証ソフトウェアを制御システムにインストールすることで、制御システムにインストールされた制御ソフトウェアが正常に動作するか否かを検証することが可能になる。
【００２８】
図６は、実施形態のソフトウェアの生成の処理の流れの一具体例を示すフローチャートである。仕様情報取得部１５１は、入力部１０１を介して仕様情報を取得する（ステップＳ１０１）。制御モジュール取得部１５２は、仕様情報に基づいて制御モジュール記憶部１０３から制御モジュールを取得する（ステップＳ１０２）。具体的には、制御モジュール取得部１５２は、仕様情報に含まれる系統情報と制御情報と機器数とを取得する。制御モジュール取得部１５２は、取得された系統情報と制御情報と同じ系統情報と制御情報とをいずれも有する制御モジュールレコードを制御モジュール記憶部１０３の制御モジュールテーブルから検索する。制御モジュール取得部１５２は、検索された制御モジュールレコードを機器数に応じて取得する。
【００２９】
制御ソフトウェア生成部１５３は、取得された制御モジュールがタイマーに関する変数を有するか否かを判定する（ステップＳ１０３）。制御モジュールがタイマーに関する変数を有する場合（ステップＳ１０３：ＹＥＳ）、制御ソフトウェア生成部１５３は、タイマーに関する変数に、仕様情報に含まれるタイマー値を設定する（ステップＳ１０４）。制御モジュールがタイマーに関する変数を有さない場合（ステップＳ１０３：ＮＯ）、処理は、ステップＳ１０５に遷移する。制御ソフトウェア生成部１５３は、取得された制御モジュールと仕様情報とに基づいて制御ソフトウェアを生成する（ステップＳ１０５）。
【００３０】
検証モジュール取得部１５４は、仕様情報に基づいて検証モジュール記憶部１０４から検証モジュールを取得する（ステップＳ１０６）。具体的には、検証モジュール取得部１５４は、仕様情報に含まれる系統情報と制御情報と機器数とを取得する。検証モジュール取得部１５４は、取得された系統情報と制御情報と同じ系統情報と制御情報とをいずれも有する検証モジュールレコードを検証モジュール記憶部１０４の検証モジュールテーブルから検索する。検証モジュール取得部１５４は、検索された検証モジュールレコードを機器数に応じて取得する。
【００３１】
検証ソフトウェア生成部１５５は、取得された検証モジュールがタイマーに関する変数を有するか否かを判定する（ステップＳ１０７）。検証モジュールがタイマーに関する変数を有する場合（ステップＳ１０７：ＹＥＳ）、検証ソフトウェア生成部１５５は、タイマーに関する変数に、仕様情報に含まれるタイマー値を設定する（ステップＳ１０８）。検証モジュールがタイマーに関する変数を有さない場合（ステップＳ１０７：ＮＯ）、処理は、ステップＳ１０９に遷移する。検証ソフトウェア生成部１５５は、取得された検証モジュールと仕様情報とに基づいて検証ソフトウェアを生成する（ステップＳ１０９）。
【００３２】
制御ソフトウェア生成部１５３は生成された制御ソフトウェアを出力部１０２に出力する。検証ソフトウェア生成部１５５は、生成された検証ソフトウェアを出力部１０２に出力する。出力部１０２は、出力された制御ソフトウェアと検証ソフトウェアとを出力する（ステップＳ１１０）。なお、出力部１０２は、制御ソフトウェアと検証ソフトウェアとを同時に出力してもよいし、所定の間隔をあけて出力してもよい。
【００３３】
このように構成されたソフトウェア生成装置１００では、検証モジュール記憶部１０４が、制御対象となる設備を構成する機器に関する系統情報又は制御情報と、設備を制御する制御ソフトウェアが正常に動作するか否かを検証するための所定の処理を表す検証モジュールと、を対応付けて複数記憶する。ソフトウェア生成装置１００の検証ソフトウェア生成部１５５は、ユーザーから機器情報を含む仕様情報の入力を受け付ける。検証ソフトウェア生成部１５５は、受け付けた機器情報に基づいて、検証モジュール記憶部１０４から検証モジュールを取得する。検証ソフトウェア生成部１５５は、取得された検証モジュールと、仕様情報と、に基づいて制御ソフトウェアが正常に動作するか否かを検証するための所定の処理を制御ソフトウェアに指示する検証ソフトウェアを生成する。このように、ソフトウェア生成装置１００は、入力された仕様情報に基づいて検証ソフトウェアを生成する。このため、ユーザーは、より短い時間で受変電設備の制御ソフトウェアの検証ソフトウェアを開発することが可能になる。
【００３４】
＜変形例＞
上述の実施形態では、ソフトウェア生成装置１００は、系統情報、制御情報、機器数、制御順及びタイマー値を含む仕様情報に基づいて、検証モジュールを選択し、検証ソフトウェアを生成するように構成されている。しかし、ソフトウェア生成装置１００は、上記の仕様情報以外の情報に基づいて検証ソフトウェアを生成するように構成されてもよい。このように構成されることで、ソフトウェア生成装置１００は、生成可能な検証ソフトウェアの種類を増加させることができ、より汎用的に使用することが可能になる。
【００３５】
上述の実施形態では、ソフトウェア生成装置１００は、検証ソフトウェアと制御ソフトウェアとを所定のタイミングで生成するように構成されたが、これに限定されない。例えば、ソフトウェア生成装置１００は、検証ソフトウェアだけを生成するように構成されてもよい。
【００３６】
ソフトウェア生成装置１００は、ネットワークを介して通信可能に接続された複数台の情報処理装置を用いて実装されてもよい。この場合、ソフトウェア生成装置１００が備える各機能部は、複数の情報処理装置に分散して実装されてもよい。例えば、制御ソフトウェア生成部と検証ソフトウェア生成部とはそれぞれ異なる情報処理装置に実装されてもよい。この場合、ソフトウェア生成装置１００は、他の情報処理装置と通信可能な通信部をさらに備える。
【００３７】
上記各実施形態では、検証モジュール取得部１５４及び検証ソフトウェア生成部１５５はソフトウェア機能部であるものとしたが、ＬＳＩ等のハードウェア機能部であってもよい。
【００３８】
以上説明した少なくともひとつの実施形態によれば、検証モジュール取得部１５４及び検証ソフトウェア生成部１５５を持つことにより、より短い時間で受変電設備の制御ソフトウェアの検証ソフトウェアを開発することができる。
【００３９】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【００４０】
１００…ソフトウェア生成装置、１０１…入力部、１０２…出力部、１０３…制御モジュール記憶部、１０４…検証モジュール記憶部、１０５…制御部、１５１…仕様情報取得部、１５２…制御モジュール取得部、１５３…制御ソフトウェア生成部、１５４…検証モジュール取得部、１５５…検証ソフトウェア生成部
【図１】
2020154537.tif 000003
【図２】
2020154537.tif 000004
【図３】
2020154537.tif 000005
【図４】
2020154537.tif 000006
【図５】
2020154537.tif 000007
【図６】
2020154537.tif 000008