(57)【特許請求の範囲】
【請求項１】
電力機器を制御するための第１の制御プログラムが実行される第１のプロセッサと、
外部装置から前記電力機器を制御するためのパラメータを受信する第２の制御プログラムが実行される第２のプロセッサと、
前記第１および第２の制御プログラムの双方からアクセス可能なパラメータ領域とデータ領域を有する第１の記憶部と、を備え、
前記第１の制御プログラムは、前記パラメータ領域に設定される前記パラメータにしたがって前記電力機器を制御し、前記電力機器の状態データを前記データ領域に記録し、
前記第２の制御プログラムは、前記外部装置から受信した前記パラメータを前記パラメータ領域に記録し、前記データ領域から前記状態データを読み出して前記外部装置に送信し、
前記第１の制御プログラムと前記第２の制御プログラムは非同期にて前記パラメータおよび前記状態データを前記第１の記憶部を介して送受する
ことを特徴とする電力機器制御装置。
【請求項２】
前記第１および前記第２のプロセッサの双方または一方に付属するキャッシュメモリは、前記第１の記憶部の一部として設定され、
前記キャッシュメモリに前記パラメータ領域および前記データ領域の双方が設定されることを特徴とする請求項１に記載の電力機器制御装置。
【請求項３】
前記第１のプロセッサに付属するキャッシュメモリを前記第１の記憶部の一部として設定することを特徴とする請求項２に記載の電力機器制御装置。
【請求項４】
前記第１の記憶部よりも大容量の第２の記憶部、を更に備え、
前記第２の制御プログラムは、前記データ領域から読み出した前記状態データを前記第２の記憶部に蓄積し、前記第２の記憶部に前記状態データが所定量以上蓄積されたとき、前記第２の記憶部に蓄積された前記状態データを前記外部装置に送信することを特徴とする請求項１から３のいずれかに記載の電力機器制御装置。
【請求項５】
電力機器と接続される電力機器制御装置と、
前記電力機器制御装置と接続されるユーザ端末と、を備え、
前記電力制御装置は、
前記電力機器を制御するための第１の制御プログラムが実行される第１のプロセッサと、
前記ユーザ端末から前記電力機器を制御するためのパラメータを受信する第２の制御プログラムが実行される第２のプロセッサと、
前記第１および第２の制御プログラムの双方からアクセス可能なパラメータ領域とデータ領域を有する第１の記憶部と、を備え、
前記ユーザ端末は、
前記電力制御装置に前記パラメータを送信する監視プログラムを実行する第３のプロセッサ、を備え、
前記第１の制御プログラムは、前記パラメータ領域に設定される前記パラメータにしたがって前記電力機器を制御し、前記電力機器の状態データを前記データ領域に記録し、
前記第２の制御プログラムは、前記ユーザ端末から受信した前記パラメータを前記パラメータ領域に設定し、前記データ領域から前記状態データを読み出して前記ユーザ端末に送信し、
前記第１の制御プログラムと前記第２の制御プログラムは非同期にて前記パラメータおよび前記状態データを前記第１の記憶部を介して送受する
ことを特徴とする電力機器制御システム。
【請求項６】
前記ユーザ端末の前記監視プログラムは、前記第２の制御プログラムから送信された前記状態データを画面表示させることを特徴とする請求項５に記載の電力機器制御システム。
【請求項７】
前記第１のプロセッサに付属するキャッシュメモリは、キャッシュ機能をオフされ、前記第１の記憶部の一部として設定されることを特徴とする請求項５または６に記載の電力機器制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、パワーエレクトロニクス製品を制御する装置、システム、方法およびコンピュータプログラムに関する。
【背景技術】
【０００２】
電源装置やモーターなどのパワーエレクトロニクス製品は、専用の制御装置により制御されることも多い。たとえば、車載モーターの場合、制御プログラムがモーターに各種パラメータ（制御変数）に基づく制御信号を送り、モーターはこれらのパラメータにしたがって動作する。パラメータとしては、たとえば、ＰＩＤ（Proportional,Integral,Differential）制御のＰ値，Ｉ値，Ｄ値などがある。制御プログラムは、また、モーターの各種状態データを読み出す。状態データとしては、モーターの電流値などがある。制御プログラムによるパラメータの設定と状態データの読み出しは、高速かつ定期的に行われ、一般的には２０〜５０ｋＨｚ（１回／５０μ秒〜１回／２０μ秒）程度、場合によっては２００ｋＨｚ（１回／５μ秒）程度の高い頻度にてモーターを制御する必要がある。
【０００３】
モーターの開発に際しては、開発者はモーターと同時に制御プログラムも開発し、制御プログラムによりモーターを動かしながら製品性能をチェックする（特許文献１，非特許文献１参照）。開発時であっても、制御プログラムは高速かつ定期的にモーターと「対話」する必要がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−３８７０３号公報
【非特許文献】
【０００５】
【非特許文献１】福田雅志、濱田正泰、杉田貴紀、坂本三直「パワーエレクトロニクスのための新しい開発環境の提案」、平成２０年電気学会全国大会、日本、２００８年３月１９日（発行）、ｐ．２５４−２５５
【発明の概要】
【発明が解決しようとする課題】
【０００６】
非特許文献１では、制御装置（図４のControl CPU）は、ウェイブユニット（図４のWAVE2Unit）とよばれるハードウェア製品を介してＰＣと接続される。ＰＣにおいては、オシロスコープのように各種状態データが波形表示される。非特許文献１の場合、制御装置で実行される制御プログラムは、パワーエレクトロニクス製品からのタイマ割込を契機として状態データを読み取り、それをウェイブユニットに送信する。また、制御プログラムはＰＣからウェイブユニットのＩ／Ｏメモリに書き込まれるパラメータを取得し、パワーエレクトロニクス製品の制御条件を設定する。
【０００７】
非特許文献１の制御プログラムは、パワーエレクトロニクス製品へのアクセスとウェイブユニットとの通信という２つの処理を担当している。このため、制御プログラムにとってウェイブユニットとの通信はオーバーヘッドとなっている。パワーエレクトロニクス製品の制御周波数が大きくなると、今後はこのようなオーバーヘッドを許容できなくなる可能性がある。
【０００８】
本発明の主たる目的は、パワーエレクトロニクス製品の制御プログラムを高速かつ安定的に動作させることである。
【課題を解決するための手段】
【０００９】
本発明に係る電力機器制御装置は、第１の制御プログラムが実行される第１のプロセッサと、第２の制御プログラムが実行される第２のプロセッサと、第１および第２の制御プログラムの双方からアクセス可能なパラメータ領域とデータ領域を有する第１の記憶部を備える。
第１の制御プログラムは、パラメータ領域に設定されるパラメータにしたがって電力機器を制御し、電力機器の状態データをデータ領域に記録する。第２の制御プログラムは、外部装置から受信したパラメータをパラメータ領域に記録し、データ領域から状態データを読み出して外部装置に送信する。
【００１０】
本発明に係る電力機器制御システムは、電力機器と接続される電力機器制御装置と、電力機器制御装置と接続されるユーザ端末を備える。電力制御装置は、第１の制御プログラムが実行される第１のプロセッサと、第２の制御プログラムが実行される第２のプロセッサと、第１および第２の制御プログラムの双方からアクセス可能なパラメータ領域とデータ領域を有する第１の記憶部を備える。ユーザ端末は、電力制御装置にパラメータを送信する監視プログラムを実行する第３のプロセッサ、を備える。
第１の制御プログラムは、パラメータ領域に設定されるパラメータにしたがって電力機器を制御し、電力機器の状態データをデータ領域に記録する。第２の制御プログラムは、ユーザ端末から受信したパラメータをパラメータ領域に設定し、データ領域から状態データを読み出してユーザ端末に送信する。
【００１１】
本発明に係る電力機器制御プログラムは、マルチコアプロセッサにおいて実行されるプログラムである。このプログラムは、キャッシュメモリに記録されるパラメータを読み出す機能と、読み出したパラメータにしたがって電力機器の制御条件を設定する機能と、電力機器の状態データを読み出し、キャッシュメモリに記録する機能と、を第１のプロセッサにおいて実現させる第１の制御プログラムと、外部装置から送信されたパラメータをキャッシュメモリに記録する機能と、キャッシュメモリに記録された状態データを外部装置に送信する機能と、を第２のプロセッサにおいて実現させる第２の制御プログラムと、を含む。
【００１２】
本発明に係る電力機器制御方法は、第１のプロセッサが、キャッシュメモリに記録されるパラメータを読み出すステップと、読み出したパラメータにしたがって電力機器の制御条件を設定するステップと、電力機器の状態データを読み出し、キャッシュメモリに記録するステップと、を繰り返し実行し、第２のプロセッサが、外部装置から送信されたパラメータをキャッシュメモリに記録するステップと、キャッシュメモリに記録された状態データを外部装置に送信するステップと、を繰り返し実行する。
【発明の効果】
【００１３】
本発明によれば、パワーエレクトロニクス製品の制御プログラムの実行効率を高めることができる。
【図面の簡単な説明】
【００１４】
【図１】電力機器制御システムのシステム構成図である。
【図２】電力機器制御装置のハードウェア構成図である。
【図３】電力機器制御装置およびユーザ端末において実行される各種プログラムの関係を示す図である。
【図４】第１制御プログラムのフローチャートである。
【図５】ウェイブとビューのシーケンス図である。
【図６】インスペクターとビューのシーケンス図である。
【発明を実施するための形態】
【００１５】
以下、添付図面を参照しながら、本発明の好ましい実施形態について詳細に説明する。
【００１６】
図１は、電力機器制御システム１００のシステム構成図である。本実施形態においては、パワーエレクトロニクス製品の一種としてモーター１０６を制御対象として説明する。電力機器制御システム１００は、モーター１０６、電力機器制御装置１０２およびユーザ端末１０４を含む。モーター１０６と電力機器制御装置１０２は外部バスで接続され、電力機器制御装置１０２とユーザ端末１０４はＬＡＮ（Local Area Network）などの通信回線あるいは光ケーブルなどの専用ケーブルを介して接続される。詳細は後述するが、電力機器制御装置１０２は、マルチコアシステムとして電力機器制御プログラムを実行する装置である。ユーザ端末１０４は、一般的なＰＣである。
【００１７】
ユーザ端末１０４は、モーター１０６の制御状態を示す各種状態データをオシロスコープのように画面表示する（図示せず。非特許文献１参照）。ユーザ端末１０４は、モーター１０６の制御条件を示すパラメータを電力機器制御装置１０２に送信する。
【００１８】
電力機器制御装置１０２は、ユーザ端末１０４から指定されたパラメータに基づいてモーター１０６の制御条件を決定する。たとえば、ＰＩＤ制御のＰ値などの制御条件がパラメータとして設定される。電力機器制御装置１０２は、モーター１０６の状態データを定期的に取得し、ユーザ端末１０４に送信する。
【００１９】
モーター１０６は、電力機器制御装置１０２から指定された制御条件にしたがって作動する。モーター１０６が電力機器制御装置１０２に対して定期的にハードウェア割り込みを発生させて状態データを通知してもいいが、本実施形態においては電力機器制御装置１０２の第１制御プログラム（後述）がループ処理によりモーター１０６から状態データをポーリングするものとして説明する。
【００２０】
図２は、電力機器制御装置１０２のハードウェア構成図である。電力機器制御装置１０２は、いわゆるマルチコアシステムであり、コア０パッケージ１０８とコア１パッケージ１１０を含む。コア０パッケージ１０８，コア１パッケージ１１０はそれぞれＣＯＲＥ０（第２のプロセッサ），ＣＯＲＥ１（第１のプロセッサ）を含む。ＣＯＲＥ０，ＣＯＲＥ１はＣＰＵ（Central Processing Unit）やＤＳＰ（Digital Signal Processer）などのプロセッサである。
【００２１】
コア０パッケージ１０８において、ＣＯＲＥ０には一次キャッシュＬ１−０，二次キャッシュＬ２−０が付属している。同様に、コア１パッケージ１１０においては、ＣＯＲＥ１に一次キャッシュＬ１−１，二次キャッシュＬ２−１が付属している。本実施形態においては、一次キャッシュＬ１は６４ＫＢ，二次キャッシュＬ２は１０２４ＫＢであるとする。また、一次キャッシュＬ１は、複数のキャッシュの集合体であってもよい。
【００２２】
電力機器制御装置１０２は、ＳＲＡＭ（Static Random Access Memory）１１２とＤＲＡＭ（Dynamic Random Access Memory）１１４を含む。本実施形態においてはＳＲＡＭ１１２のサイズは１ＭＢであるとする。ＤＲＡＭ１１４はいわゆるＤＤＲ３（Double-Data-Rate 3）型であり、そのサイズは５１２ＭＢであるとする。
【００２３】
アクセス速度は、一次キャッシュＬ１および二次キャッシュＬ２（ローカルキャッシュメモリ）、ＳＲＡＭ１１２、ＤＲＡＭ１１４の順に速く、記憶容量はＤＲＡＭ１１４、ＳＲＡＭ１１２、ローカルキャッシュメモリの順に大きい。
【００２４】
ＳＲＡＭ１１２の全部およびＤＲＡＭ１１４の一部は共有メモリ空間（第１の記憶部）を構成する。また、本実施形態において特徴的な点は、コア１パッケージ１１０の一次キャッシュＬ１−１も共有メモリ空間の一部を構成することである。すなわち、一次キャッシュＬ１−１のキャッシュ機能がオフ設定される。図２では、共有メモリ空間を構成する領域（以下、「共有領域」とよぶ）を斜線により示している。共有メモリ空間は、ＣＯＲＥ０，ＣＯＲＥ１の双方からアクセス可能な領域であり、グローバルアドレスを割り当てられる。本実施形態においては、一次キャッシュＬ１−１はキャッシュとしては機能せず、ＣＯＲＥ０，ＣＯＲＥ１の双方からグローバルアドレスによりアクセス可能な超高速・小容量の共有領域として利用される。なお、ＤＲＡＭ１１４のうち共有領域を形成しないローカル領域（ＣＯＲＥ０のみがアクセス可能な領域）が「第２の記憶部」に対応する。また、ＤＲＡＭ１１４の全体をＣＯＲＥ０のローカルメモリとして設定してもよい。
【００２５】
一次キャッシュＬ１−１は、ＣＯＲＥ１からだけでなくＣＯＲＥ０からもダイレクトにアクセス可能である。一次キャッシュＬ１−０は、ＣＯＲＥ０のみからアクセス可能である（ローカルキャッシュメモリ）。なお、一次キャッシュＬ１−０は、ＣＯＲＥ０の制御に基づきＳＲＡＭ１１２やＤＲＡＭ１１４ともデータの送受が可能である。
【００２６】
本実施形態においては、一次キャッシュＬ１−１のみを共有領域としているが、二次キャッシュＬ２−１や、一次キャッシュＬ１−０，二次キャッシュＬ２−０の全部または一部を同様に共有領域として解放してもよい。
【００２７】
図３は、電力機器制御装置１０２およびユーザ端末１０４において実行される各種プログラムの関係を示す図である。ＣＯＲＥ０で実行される第２制御プログラム１１８と、ＣＯＲＥ１で実行される第１制御プログラム１１６をまとめて「電力制御プログラム」とよぶ。
【００２８】
共有領域１２６には、パラメータの記憶のためのパラメータ領域１２８と状態データの記憶のためのデータ領域１３０が確保される。特に、本実施形態においては、パラメータ領域１２８とデータ領域１３０は合計サイズが数百〜数千バイト程度であるため、一次キャッシュＬ１−１に確保される。もちろん、一次キャッシュＬ１−０や二次キャッシュＬ２−０などの他のキャッシュを共有領域１２６として解放し、パラメータ領域１２８等をこれらのキャッシュメモリに設定してもよい。パラメータや状態データのサイズが一次キャッシュＬ１や二次キャッシュＬ２に収まらないほど大きくなる場合には、ＳＲＡＭ１１２やＤＲＡＭ１１４などの共有領域１２６にパラメータ領域１２８やデータ領域１３０の全部または一部が確保されてもよい。
【００２９】
ユーザ端末１０４においては表示用のプログラムであるビュー１２４（監視プログラム）が実行される。ユーザ端末１０４は、単一のプロセッサ（第３のプロセッサ）を有してもいいし、電力機器制御装置１０２のようなマルチコアシステムであってもよい。ビュー１２４は、電力機器制御装置１０２に各種パラメータを送信するとともに電力機器制御装置１０２から状態データを受信し、表示画像を更新する。ビュー１２４は、オシロスコープのような波形画像を表示することもできる。
【００３０】
第１制御プログラム１１６は、ＣＯＲＥ１において実行され、パラメータ領域１２８からパラメータを読み出し、モーター１０６を制御する。また、モーター１０６の状態データをデータ領域１３０に上書き記録する。
【００３１】
第２制御プログラム１１８は、ビュー１２４からパラメータを受信してパラメータ領域１２８に書き込む。また、データ領域１３０に書き込まれた状態データをビュー１２４に送信する。第２制御プログラム１１８は、インスペクター１２０およびウェイブ１２２という２つのプロセスを含む。インスペクター１２０は、ビュー１２４から指定されたパラメータに基づき、指定された状態データをワンショットで読み取る。具体的には、ビュー１２４からパラメータや読み出したい状態データを指定した命令を受信すると、インスペクター１２０はパラメータ領域１２８にパラメータを記録し、データ領域１３０から指定された状態データを読み取ってビュー１２４に直ちに送る。一方、ウェイブ１２２は、定期的にデータ領域１３０から状態データを読み取りＤＲＡＭ１１４に蓄積する。そして、状態データが所定量、たとえば、９０００バイト程度蓄積されたときにまとめてこれをビュー１２４に送信する。蓄積してから送信するのはパケットあたりのデータサイズを大きくして通信効率を高めるためである。ビュー１２４は、受信した状態データに基づいてグラフを描画する。
なお、第２制御プログラム１１８は、適宜、一次キャッシュＬ１−０に中間データを保存してもよいし、必要に応じて、ＳＲＡＭ１１２やＤＲＡＭ１１４に中間データを保存してもよい。
【００３２】
第１制御プログラム１１６は、第２制御プログラム１１８やユーザ端末１０４とは直接的な対話はしない。第１制御プログラム１１６はパラメータ領域１２８のパラメータに基づいてモーター１０６を制御し、状態データをデータ領域１３０に記録するだけである。しかも、本実施形態の場合、パラメータ領域１２８およびデータ領域１３０は、ＣＯＲＥ１の一次キャッシュＬ１−１に確保されるため、これらの領域へのアクセス速度はキャッシュと同じく高速である。第１制御プログラム１１６は、第２制御プログラム１１８やビュー１２４にパラメータを取りにいく必要も第２制御プログラム１１８がパラメータ領域１２８にパラメータを書き込むのを待つ必要もない。このため、第１制御プログラム１１６は他のプログラムの実行状態に妨げられることなく、高速かつ安定的に動作できる。必須ではないが、本実施形態においてはＣＯＲＥ０の計算リソースは第１制御プログラム１１６のみに割り当てられている。
【００３３】
また、パラメータ領域１２８のライターは第２制御プログラム１１８、リーダーは第１制御プログラム１１６であり、データ領域１３０のライターは第１制御プログラム１１６、リーダーは第２制御プログラム１１８である。このため、パラメータ領域１２８とデータ領域１３０へのアクセスに関して、第２制御プログラム１１８と第１制御プログラム１１６は論理的な競合関係にはならないためミューテックスなどによる排他制御は不要であり、第１制御プログラム１１６と第２制御プログラム１１８は互いに非同期にて動作できる。
【００３４】
一般的には、第１制御プログラム１１６はＤＲＡＭ１１４やＳＲＡＭ１１２にロードされ、一次キャッシュＬ１や二次キャッシュＬ２を利用しながらＣＯＲＥ１により実行される。本実施形態においては、第１制御プログラム１１６全体を最初から一次キャッシュＬ１−１（共有領域１２６）にロードしてもよい。第１制御プログラム１１６のサイズが一次キャッシュＬ１−１に収まらないときには、二次キャッシュＬ２も共有領域１２６として解放し、二次キャッシュＬ２にロードしてもよい。一次キャッシュＬ１や二次キャッシュＬ２はもともとアクセスが高速なキャッシュメモリであるため、第１制御プログラム１１６全体を一次キャッシュＬ１−１や二次キャッシュＬ２−１にロードできればＳＲＡＭ１１２やＤＲＡＭ１１４にロードするよりも高速実行が可能である。なお、第１制御プログラム１１６のサイズが一次キャッシュＬ１−１と二次キャッシュＬ２−１の合計を超えるときには、第１制御プログラム１１６はＳＲＡＭ１１２やＤＲＡＭ１１４にロードされる。
【００３５】
第１制御プログラム１１６は比較的単純なプログラムとなることが多いため、これらのローカルキャッシュメモリに全体をロードすることは充分に可能である。更に、第１制御プログラム１１６をキャッシュに格納してしまえば、キャッシュ・ヒットの有無によって第１制御プログラム１１６の処理速度が変化することもない。特に制御条件がシビアなパワーエレクトロニクス製品の制御においては、第１制御プログラム１１６の処理速度だけでなく、速度安定性の面でもキャッシュメモリの全部または一部をメモリ領域として解放することが望ましい。
【００３６】
なお、同様の理由から、第２制御プログラム１１８も一次キャッシュＬ１−０や二次キャッシュＬ２−０に格納されてもよい。
【００３７】
図４は、第１制御プログラム１１６のフローチャートである。第１制御プログラム１１６は、まず、モーター１０６から状態データを読み取り（Ｓ１０）、パラメータ領域１２８からパラメータと制御条件を読み出して（Ｓ１２）、回転数や電流値等の指令値を所定の演算式にしたがって計算し（Ｓ１３）、これをモーター１０６に設定する（Ｓ１４）。演算式は第１制御プログラム１１６の開発者が任意に設計すればよい。次に、Ｓ１０において読み出した状態データをデータ領域１３０に上書きする（Ｓ１８）。停止を指示されていなければ（Ｓ２０のＮ）、処理はＳ１０に戻る。基本的には、Ｓ１０で読み出した状態データやＳ１２で読み出した制御条件に基づいてＳ１３で適切な指令値を再計算するというフィードバック制御であり、それに加えて、第２制御プログラム１１８によるパラメータの設定によっても制御条件を適宜変更するという処理内容となっている。
【００３８】
本実施形態の場合、パラメータ領域１２８とデータ領域１３０はどちらも一次キャッシュＬ１−１に収まっているので、第１制御プログラム１１６は、モーター１０６のアクセス以外は、一次キャッシュＬ１−１にしかアクセスしていない。また、一次キャッシュＬ１−１へのアクセスは他のプロセスとは論理的に競合しない。このため、第１制御プログラム１１６は他のプロセスの実行待ちといったオーバーヘッドを持たずに高速かつ安定的に繰り返し実行できる。なお、図４に示すプロセスはループ処理として実行されてもよいし、モーター１０６やＣＯＲＥ１のタイマーによるハードウェア割込みにより定期的に実行されてもよい。
【００３９】
図５は、ウェイブ１２２とビュー１２４のシーケンス図である。まず、ビュー１２４のユーザによるパラメータの入力があれば（Ｓ３０のＹ）、ビュー１２４は、パラメータをウェイブ１２２に送信する（Ｓ３２）。パラメータとして、モーター１０６の制御変数だけでなく、チェックしたい状態データを指定してもよい。ウェイブ１２２は、指定されたパラメータをパラメータ領域１２８に記録し（Ｓ３４）、記録完了（第１制御プログラム１１６によるモーター１０６への設定完了）をビュー１２４に通知する（Ｓ３５）。次に、ビュー１２４は、データ要求信号を送信する（Ｓ３６）。なお、パラメータの入力がなければ（Ｓ３０のＮ）、Ｓ３６のデータ要求処理にスキップする。
【００４０】
ウェイブ１２２は、データ領域１３０から状態データを読み出して（Ｓ３７）、ＤＲＡＭ１１４に記録する（Ｓ３８）。ＤＲＡＭ１１４に蓄積された状態データのサイズが所定量に達していなければ（Ｓ４０のＮ）、処理はＳ３７に戻り、所定量に達していれば（Ｓ４０のＹ）、ウェイブ１２２は状態データをビュー１２４にまとめて送信する（Ｓ４２）。ビュー１２４は受信した状態データにしたがって描画を更新する（Ｓ４４）。ビュー１２４は、停止を指示されていなければ（Ｓ４５のＮ）、処理はＳ３０に戻る。停止を指示されたときには（Ｓ４６のＹ）、停止命令をウェイブ１２２に送信した上で（Ｓ４６）、自らの処理を終了する。ウェイブ１２２は、Ｓ４６の停止命令を受信したときには（Ｓ４８のＹ）、処理は終了し、停止命令を受信していなければ（Ｓ４８のＮ）、処理はＳ３７に戻り状態データの読み出しを繰り返す。
【００４１】
なお、Ｓ４０においては、前回の状態データの送信から所定時間が経過したときには状態データが充分に溜まっていなくても送信するとしてもよい。
【００４２】
図６は、インスペクター１２０とビュー１２４のシーケンス図である。インスペクター１２０は、ウェイブ１２２のように自動的に共有領域１２６へのアクセスを繰り返すプロセスではなく、ビュー１２４からの明示的な指示にしたがってパラメータの設定と状態データの読み出しをワンショットにて実行するプロセスである。
【００４３】
まず、ビュー１２４のユーザはパラメータを入力する（Ｓ５０）。パラメータとして、モーター１０６の制御変数だけでなく、確認したい状態データを指定してもよい。ビュー１２４は、パラメータをインスペクター１２０に送信する（Ｓ５２）。インスペクター１２０は、指定されたパラメータをパラメータ領域１２８に記録し（Ｓ５４）、データ領域１３０から状態データを読み出して（Ｓ５８）、そのまま送信する（Ｓ６０）。パラメータの記録後に、ウェイブ１２２と同じく設定完了通知やデータ要求といったハンドシェイクをしてもよい。ビュー１２４は受信した状態データにしたがって描画を更新する（Ｓ６２）。図６には記載していないが、ビュー１２４からインスペクター１２０に停止命令を送ることも可能である。
【００４４】
以上、実施形態に基づいて電力機器制御システム１００について説明した。第１制御プログラム１１６と第２制御プログラム１１８は、共有領域１２６を介してパラメータと状態データを送受する。第１制御プログラム１１６は、第２制御プログラム１１８等の他のプログラムの処理を待つプロセスを含まないため安定的かつ高速の実行が可能である。
【００４５】
更に、第１制御プログラム１１６は一次キャッシュＬ１−１へのアクセスに特化し、より低速のＳＲＡＭ１１２やＤＲＡＭ１１４にアクセスする必要がない。第１制御プログラム１１６は、全体として一次キャッシュＬ１−１に格納され、キャッシュ機能を使わないため処理速度が安定している。
【００４６】
開発者は第１制御プログラム１１６の開発に際して、第２制御プログラム１１８など他のプロセスと対話するためのコードを書く必要がないため、第１制御プログラム１１６をシンプルにできるというメリットもある。同様に、開発者から第２制御プログラム１１８やビュー１２４を完全に隠蔽できる。第１制御プログラム１１６は、制御対象のパワーエレクトロニクス製品に応じて自由に開発できるが、第２制御プログラム１１８やビュー１２４はパワーエレクトロニクス製品の種類に関わらず共通化できるというメリットもある。非特許文献１のウェイブユニットのような追加ハードも不要であり、ＣＯＲＥ０で実行される第２制御プログラム１１８がユーザ端末１０４との対話を担当している。
【００４７】
ウェイブ１２２は低速・大容量のＤＲＡＭ１１４に状態データを一定量ためてからユーザ端末１０４に送信するため、通信効率を確保しつつ、人間の認知能力からみて充分な速度にて状態データをユーザ端末１０４のディスプレイに描画できる。開発者は、第１制御プログラム１１６でモーター１０６を動かしながら、ビュー１２４によりパラメータや状態データのライト／リードを実行できる。
【００４８】
以上、本発明の好ましい実施形態について説明したが、本発明は、上記の実施形態に限定されることなく、本発明の主旨を逸脱しない範囲で種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることはいうまでもない。
【００４９】
本実施形態においては、制御対象をモーター１０６として説明したがこれに限る趣旨ではなく、エアーコンディショナー、冷蔵庫、給湯器、発電機、太陽電池など電気エネルギーと他のエネルギー（たとえば、力学エネルギーや光エネルギー）との間でエネルギー変換する機器であればよく、より好ましくは、ユーザの操作や環境に応じて刻々と制御条件を変化させるべきパワーエレクトロニクス製品であればよい。
【符号の説明】
【００５０】
１００  電力機器制御システム
１０２  電力機器制御装置
１０４  ユーザ端末
１０６  モーター
１０８  コア０パッケージ
１１０  コア１パッケージ
１１２  ＳＲＡＭ
１１４  ＤＲＡＭ
１１６  第１制御プログラム
１１８  第２制御プログラム
１２０  インスペクター
１２２  ウェイブ
１２４  ビュー
１２６  共有領域
１２８  パラメータ領域
１３０  データ領域
Ｌ１  一次キャッシュ
Ｌ２  二次キャッシュ
【図１】
0005990502.tif 000002
【図２】
0005990502.tif 000003
【図３】
0005990502.tif 000004
【図４】
0005990502.tif 000005
【図５】
0005990502.tif 000006
【図６】
0005990502.tif 000007