(57)【要約】【課題】既存通信環境において、稼働中の規格対応機器を交換等する場合、交換等に伴う機器間通信の不具合発生を事前に検証可能な検証プログラム等を提供する。【解決手段】本発明に係る検証プログラムは、コンピュータに、制御機器と第１被制御機器との間から、所定規格に基づく制御信号を取得する取得手段と、第２被制御機器に制御信号を送信する制御手段と、制御信号に対する応答結果に応じて、第１被制御機器と第２被制御機器との、制御機器に対する互換性を検証する検証手段として機能させる。【選択図】図６
2015002362.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
制御機器と第１被制御機器との間から、所定規格に基づく制御信号を取得する取得手段と、
第２被制御機器に前記制御信号を送信する制御手段と、
前記制御信号に対する応答結果に応じて、前記第１被制御機器と前記第２被制御機器との、前記制御機器に対する互換性を検証する検証手段として機能させるための検証プログラム。
【請求項２】
複数の前記制御信号と、送信する順序と、送信する間隔とを含む検証シナリオを生成する生成手段として機能させ、
前記制御手段は、前記検証シナリオに従って、前記制御信号を送信する、請求項１記載の検証プログラム。
【請求項３】
コンピュータに、
第１制御機器と被制御機器との間から、所定規格に基づく制御信号に対応する応答信号とを取得する取得手段と、
第２制御機器から制御信号を受信すると、該制御信号に対応する前記応答信号を送信する制御手段と、
前記制御信号に対する応答結果に応じて、前記第１制御機器と前記第２制御機器との、前記被制御機器に対する互換性を検証する検証手段として機能させるための検証プログラム。
【請求項４】
前記制御信号と、該制御信号に対応する前記応答信号とを含む検証シナリオを生成する生成手段として機能させ、
前記制御手段は、前記検証シナリオに従って、受信した前記制御信号に対応する前記応答信号を送信する、請求項３記載の検証プログラム。
【請求項５】
前記所定規格は、ECHONET Lite規格である、請求項１ないし４何れか一項記載の検証プログラム。
【請求項６】
制御機器と第１被制御機器との間から、所定規格に基づく制御信号を取得する取得手段と、
第２被制御機器に前記制御信号を送信する制御手段と、
前記制御信号に対する応答結果に応じて、前記第１被制御機器と前記第２被制御機器との、前記制御機器に対する互換性を検証する検証手段と、
を有することを特徴とする検証装置。
【請求項７】
第１制御機器と被制御機器との間から、所定規格に基づく制御信号に対応する応答信号とを取得する取得手段と、
第２制御機器から制御信号を受信すると、該制御信号に対応する前記応答信号を送信する制御手段と、
前記制御信号に対する応答結果に応じて、前記第１制御機器と前記第２制御機器との、前記被制御機器に対する互換性を検証する検証手段と、
を有することを特徴とする検証装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検証プログラム及び検証装置の分野に関する。
【背景技術】
【０００２】
近年、家電メーカや通信会社、電力会社などが加入する「エコーネットコンソーシアム」により、「ECHONET Lite」と呼ばれる通信規格が策定された（例えば、非特許文献１参照）。ECHONET Liteは、家電製品の制御、運転状態や消費電力量の把握などを行うための通信規約である。
【０００３】
スマートハウス等の実現を目指して、ECHONET Lite対応の家電製品が登場してくると、家庭内の様々な機器の運転状態を自動的に制御したり、停止させたりといったことが可能になる。例えば、ＨＥＭＳ機器（Home Energy Management System：家庭向けエネルギー管理システム）を用いて、家庭内の家電製品から運転状態や消費電力量の情報を収集すると共に、家電製品に対し制御信号を送って、運転動作を操作することが可能である。また、遠隔地からＰＣやスマートフォンを用いて、家庭内の電力消費量を確認したり、機器を停止させるといったことも可能である。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述の通信規格ECHONET Liteは、実装依存の通信規格であるので、反面、通信プロトコルの規制が比較的緩いという問題がある。例えば、コマンドに対する応答は受信したことを確認しただけで、そのコマンドに対する処理を受付けたかどうかは規約していない。このため、ECHONET Lite 対応機器であっても、実際の動作上、機器間のバラツキが大きいという事態が発生する。
【０００５】
また、ECHONET Liteでは、その規格仕様を定期的にバージョンアップしているが、更新内容の一部には、その互換性が保たれていないところがある。このため、ECHONET Lite 対応機器間であっても、バージョンアップ後に通信動作できなくなってしまうという事態も発生している。特に、製造時期が離れており規格仕様のバージョンが違う同士での互換性問題は顕著である。
【０００６】
本実施の形態は、上記のような問題に鑑み提案されたものであり、その目的とするところは、既存通信環境において、稼働中の規格対応機器を交換等する場合、交換等に伴う機器間通信の不具合発生を事前に検証可能な検証プログラム等を提供することにある。
【課題を解決するための手段】
【０００７】
そこで上記課題を解決するため、本発明に係るデータ検証プログラムは、コンピュータに、制御機器と第１被制御機器との間から、所定規格に基づく制御信号を取得する取得手段と、第２被制御機器に前記制御信号を送信する制御手段と、前記制御信号に対する応答結果に応じて、前記第１被制御機器と前記第２被制御機器との、前記制御機器に対する互換性を検証する検証手段として機能させる。
【０００８】
なお、本発明の構成要素、表現または構成要素の任意の組合せを、方法、装置、システム、コンピュータプログラム、記録媒体、などに適用したものも本発明の態様として有効である。
【発明の効果】
【０００９】
本実施の形態によれば、既存通信環境において、稼働中の規格対応機器を交換等する場合、交換等に伴う機器間通信の不具合発生を事前に検証可能な検証プログラム等を提供することができる。
【図面の簡単な説明】
【００１０】
【図１】システム構成図の一例を示す図である。
【図２】検証装置３のハードウェア構成の一例を示す図である。
【図３】検証装置３の主要機能構成を示す機能ブロック図である。
【図４】規格ＤＢ３０２ｃの規格情報の一例を示す図である。
【図５】特定パケットデータ３０２ａの一例を示す図である。
【図６】検証シナリオ３０２ｂ（エアコン機器２Ａ用）の一例を示す図である。
【図７】検証処理を説明するシーケンス図である。
【図８】検証装置３の検証処理を説明するフローチャートである。
【図９】検証結果の一例を示す図である。
【図１０】システム構成図の一例を示す図である。
【図１１】定パケットデータ３０２ａの一例を示す図である。
【図１２】検証シナリオ３０２ｂ（コントローラ１−２用）の一例を示す図である。
【図１３】検証処理を説明するシーケンス図である。
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態を各実施形態において図面を用いて説明する。
【００１２】
[システム]
（全体構成）
はじめに、具体的な発明の内容を説明する前に、本発明を実施するにあたっての全体構成について説明する。
【００１３】
図１は、本実施形態に係るシステム構成図の一例を示す図である。既存環境１００は、スマートハウスなどとして構築され、ECHONET Lite対応の家電製品等で構成される通信ネットワーク環境である。例えば、既存環境１００は、コントローラ１、機器２及び検証装置３が、ネットワーク４を介して構成される。
【００１４】
コントローラ１は、例えば、機器２から運転状態や消費電力量等の情報を収集したり、機器２に対し制御信号を送って運転動作を操作する制御機器である。コントローラ１は、ＨＥＭＳ機器（Home Energy Management System：家庭向けエネルギー管理システム）とも呼ばれる。
【００１５】
機器２は、例えば、家電製品などのECHONET Lite対応機器であって、コントローラ１により制御される被制御機器である。既存環境１００において、コントローラ１の制御の下、機器２は既に正常に稼働している。例えば、コントローラ１からECHONET Liteの規格に基づく制御信号を受信すれば、受信した制御信号を解釈し、制御信号に従って動作する。つまり、既存環境１００においては、コントローラ１及び機器２は正常に稼働しており、コントローラ１と機器２との間でECHONET Lite規格の実装上の差異等に基づく通信不具合等は発生していない。
【００１６】
検証装置３は、コントローラ１に対する互換性の動作検証を行う装置である。通常時、検証装置３は、ネットワーク４上に接続され、コントローラ１及び機器２間の通信パケットを収集する。また、コントローラ１又は機器２の交換やバージョンアップに伴い、新たな機器２の動作検証が必要となった際に使用される。なお、検証装置３は、例えば、一般的なＰＣ（Personal Computer）でよく、ＰＣに対して検証プログラム（検証ツール）がインストールされることで実現される。
【００１７】
ここで、既存環境１００において、正常稼働中の機器２Ａ（例えば、エアコン）を交換する場合を考える。例えば、ユーザは、エアコン機器２Ａが古くなったため、新型のエアコン機器２ａを購入の上、交換（リプレイス）を行う。
【００１８】
しかしながら、上述したように、通信規格ECHONET Liteは、実装依存の通信規格であるので、通信プロトコルの規制が比較的緩いという問題がある。このため、リプレイス後、既存環境１００において、コントローラ１の制御の下、新型のエアコン機器２ａがこれまで通り正常に稼働できるかどうかの確証はない。即ち、既存環境１００においては、コントローラ１はECHONET Lite規格に基づく制御信号を用いてエアコン機器２Ａを正常に制御することが可能であった。しかしながら、それまでの既存環境１００において、コントローラ１が同様に新型のエアコン機器２ａを正常に制御することが可能であるかどうかは未知である。
【００１９】
そこで、本実施形態では、既存環境１００で新型のエアコン機器２ａを稼働させる前に、検証環境２００の下、検証装置３を用いて、エアコン機器２Ａの動作検証を行うことで、エアコン機器２Ａとエアコン機器２ａとの、コントローラ１に対する互換性を検証する。エアコン機器２ａは、エアコン機器２Ａと互換可能と検証されれば、既存環境１００において、コントローラ１の制御の下、エアコン機器２ａは、エアコン機器２Ａと同様にこれまで通り正常に稼働できる。
【００２０】
検証環境２００は、検証対象となる機器２ａ及び検証装置３で構成される通信ネットワーク環境である。
【００２１】
機器２ａは、既存環境１００で稼働予定の機器２ａ（例えば、新型のエアコン）など、検証対象となる機器である。機器２ａは、一応はECHONET Lite対応機器であるものの、コントローラ１との間において、エアコン機器２Ａと同様にこれまで通り正常に稼働できるかどうかの確証はないものである。
【００２２】
検証装置３は、コントローラ１に対する互換性の動作検証を行う装置である。上述したように、通常時、検証装置３は、コントローラ１及び機器２Ａ間の通信パケットを収集する。その後、機器２Ａの交換等に伴い、交換対象の機器２ａの動作検証が必要となった際に使用される。検証時、検証装置３は既存環境１００から取り外され、検証環境２００の下、検証対象となる機器２ａと接続される。
【００２３】
（ハードウェア）
図２は、本実施形態に係る検証装置３のハードウェア構成の一例を示す図である。検証装置３は、主要な構成として、ＣＰＵ３１、ＲＯＭ３２、ＲＡＭ３３、ＨＤＤ３４、入力装置３５、表示装置３６、及び通信装置３７を有する。
【００２４】
ＣＰＵ３１は、マイクロプロセッサ及びその周辺回路から構成され、装置全体を制御する回路である。また、ＲＯＭ３２は、ＣＰＵ３１で実行される所定の制御プログラムを格納するメモリである。また、ＲＡＭ３３は、ＣＰＵ３１がＲＯＭ３２に格納された所定の制御プログラムを実行して各種の制御を行うときの作業領域として使用するメモリである。
【００２５】
ＨＤＤ３４は、汎用のＯＳ、各種プログラムを含む各種情報を格納する装置であり、不揮発性の記憶装置である。
【００２６】
入力装置３５は、ユーザが各種入力操作を行うための装置である。入力装置３５は、マウス、キーボード、表示装置３６の表示画面上に重畳するように設けられたタッチパネルスイッチなどを含む。
【００２７】
表示装置３６は、各種データを表示画面に表示する装置である。例えば、ＬＣＤ(Liquid Crystal Display)、ＣＲＴ(Cathode Ray Tube)などから構成される。
【００２８】
通信装置３７は、ネットワーク４を介して他の機器との通信を行う装置である。有線ネットワークや無線ネットワークなど含む各種ネットワーク形態に応じた通信をサポートする。
【００２９】
（機能）
図３は、本実施形態に係る検証装置３の主要機能構成を示す機能ブロック図である。検証装置３は、特定パケット取得部３０１、記憶部３０２、検証シナリオ生成部３０３、互換性検証部３０４を有する。
【００３０】
特定パケット取得部３０１は、ネットワーク４上から、特定パケット（例えば、ECHONET Lite規格に基づくパケット）を取得する。このため、特定パケット取得部３０１は、パケット取得部３０１ａ、フィルター部３０１ｂを含む。
【００３１】
パケット取得部３０１ａは、ネットワーク４上から、ネットワーク４上を流れるネットワーク・パケットを取得（キャプチャ）する。なお、ここでいうネットワーク・パケットとは、ネットワーク４上を流れる全ネットワーク・パケットである。ECHONET Lite規格に基づくパケットの他、他の規格（プロトコル）に基づくパケットを含んでいる。
【００３２】
フィルター部３０１ｂは、パケット取得部３０１ａにより取得されたネットワーク・パケットの中から、特定パケット（例えば、ECHONET Lite規格に基づくパケット）のフィルタリングを行うことで、他の規格に基づくパケットを除外し、特定パケットのみを取得する。
【００３３】
記憶部３０２は、特定パケット３０２ａ、検証シナリオ３０２ｂ、規格ＤＢ（規格情報）３０２ｃなどを記憶する。
【００３４】
検証シナリオ生成部３０３は、特定パケット３０２ａに基づいて、コントローラ１に対する機器間（例えば、エアコン機器２Ａとエアコン機器２ａ）の互換性検証を行うための検証シナリオ３０２ｂを生成する。
【００３５】
互換性検証部３０４は、検証シナリオ３０２ｂに基づいて、コントローラ１に対する機器間の互換性を検証する。このため、互換性検証部３０４は、制御部３０４ａ、検証部３０４ｂを含む。
【００３６】
制御部３０４ａは、検証シナリオ３０２ｂに基づいて、検証対象となる機器（例えば、エアコン機器２ａ）に対し制御信号を送信する。
【００３７】
検証部３０４ｂは、制御部３０４ａにより送信された制御信号に対する機器からの応答結果に応じて、コントローラ１に対する機器間の互換性を検証する。例えば、検証結果が検証ＯＫの場合、エアコン機器２ａは、コントローラ１に対しエアコン機器２Ａとの互換性がある、即ち、エアコン機器２ａは、コントローラ１の制御の下、正常に稼働可能である。一方、検証結果が検証ＮＧの場合、エアコン機器２ａは、コントローラ１に対しエアコン機器２Ａとの互換性がない、即ち、エアコン機器２ａは、コントローラ１の制御の下、正常に稼働不可能である。
【００３８】
ここで、正常に稼働可能／不可能とは、コントローラ１の制御の下、エアコン機器２ａがエアコン機器２Ａと完全同一に稼働可能か不可能かを意味するものである。エアコン機器２ａそれ自体が動作するしないを意味するものではない。
【００３９】
なお、特定パケット取得部３０１、検証シナリオ生成部３０３、互換性検証部３０４の各機能は、実際にはＣＰＵ３１が実行する検証プログラム（検証ツール）により、コンピュータである検証装置３に実現させるものである。
【００４０】
（規格ＤＢ３０２ｃ）
規格ＤＢ３０２ｃは、ECHONET Lite規格に基づくもので、規格上、機器の有する可能性のある機能一覧、機能毎の規格要件などが、予め規定された規格情報である。規格ＤＢ３０２ｃは、記憶部３０２に予め記憶される。
【００４１】
図４は、本実施形態に係る規格ＤＢ３０２ｃの規格情報の一例を示す図である。図４の規格情報は、例えば、ECHONET Lite規格対応の家庭用エアコン（オブジェクト）の「プロパティ」を示す規格情報例である。「プロパティ」では、家庭用エアコンが有する個々の搭載機能として、プロパティと、プロパティの規格要件とが規定される。
【００４２】
「プロパティ名称」は、規格上、機器（オブジェクト）の搭載するプロパティの名称を示す。例えば、「動作状態」、「運転モード設定」などがある。
【００４３】
「プロパティコード（ＥＰＣ）」は、規格上、プロパティ毎に一意に対応付けられる識別子を示す。いわばＩＤであり、機器同士の通信上などでは、プロパティを特定するために、「ＥＰＣ」が用いられる。
【００４４】
「プロパティ内容」及び「値域」は、規格上、そのプロパティの内容と、プロパティの内容を表現する値の内容を示す。例えば、「動作状態」の「プロパティ内容」は、ＯＮ／ＯＦＦの状態を示し、「値域」は、ＯＮ＝０ｘ３０、ＯＦＦ＝０ｘ３１と規定されている。これは、「ＥＰＣ」が０ｘ８０で特定されるプロパティ（＝動作状態）について、例えば、機器から、０ｘ３０の値が取得された場合、機器の動作状態は、ＯＮの状態を示すことを規定している。
【００４５】
「データ型」は、規格上、そのプロパティの内容を表現する値のデータの型を示す。例えば、「動作状態」の内容を表現する値は、規格上、必ず「unsigned char」のデータ型で表現されなくてはならない。
【００４６】
「データサイズ」は、規格上、そのプロパティの内容を表現する値のデータのサイズを示す。例えば、「動作状態」の内容を表現する値は、規格上、必ず「１ｂｙｔｅ」のデータサイズで表現されなくてはならない。
【００４７】
「単位」は、規格上、そのプロパティの内容を表現する値の単位を示す。
【００４８】
「アクセスルール」は、規格上、そのプロパティの内容を表現する値を取得する場合、使用されるアクセスのルールを示す。このアクセスのルール（例えば、Ｓｅｔ、Ｇｅｔ等）は、そのプロパティに対しアクセスする際の制御信号（コマンド）として用いられる。
【００４９】
「必須」は、規格上、機器がそのプロパティを備えることが必須かどうかを示す。例えば、「動作状態」は、必須プロパティとなっていることから、規格上、このオブジェクトに該当する機器（例えば、家庭用エアコン）は、規格上、必ず「動作状態」のプロパティを備えなくてはならない。逆に、「動作状態」のプロパティを備えない機器は、規格に準拠しない機器といえる。
【００５０】
「状変時アナウンス」は、規格上、そのプロパティの値が変化した場合に、ネットワーク上の他の機器に対して、値を通知するプロパティであることを示す。
【００５１】
「備考」は、規格上、そのプロパティに付随させておくテキスト情報（メモ、コメント等）を示す。
【００５２】
なお、「プロパティ名称」や「ＥＰＣ」は、規格上規定されているプロパティ自体であり、「プロパティ内容」、「値域」、「データサイズ」、「単位」、「アクセスルール」、「必須」、「状変時アナウンス」、「備考」は、そのプロパティが遵守すべき規格要件といえる。
【００５３】
また、図４の規格情報は、あくまで家庭用エアコンの規格情報（「プロパティ」）の一例を示すものである。よって、規格ＤＢ３０２ｃには、家庭用エアコン以外にも、冷蔵庫、テレビ、オーディオ、太陽光発電システム等々、ECHONET Lite規格に対応しうる機器の規格情報を含む。また、規格ＤＢ３０２ｃは、検証装置３内の記憶部３０２に記憶される他、検証装置３が規格ＤＢ３０２ｃにアクセスできる限り、外部装置などに記憶されてもよい。
【００５４】
（特定パケットデータ３０２ａ）
図５は、本実施形態に係る特定パケットデータ３０２ａの一例を示す図である。本実施形態に係る特定パケットデータ３０２ａは、実際にネットワーク４上を流れたネットワーク・パケットから取得されたECHONET Lite規格に基づく制御パケットのデータである。このため、特定パケットデータ３０２ａは、実際にコントローラ１が機器２に対して発行したECHONET Lite規格に基づく制御パケット（コマンド）を収集したものとなっている。
【００５５】
なお、ECHONET Lite規格の通信処理は、ＯＳＩレイヤの５〜７層で規定されるので、図５の特定パケットデータ３０２ａでは、ＯＳＩレイヤの５〜７層のパケットデータのみを示す。また、実際にネットワーク４上を流れたネットワーク・パケットは、いうまでもなくビットデータであるが、特定パケット取得部３０１によりビットデータがCHONET Lite規格に翻訳されることで、図５の特定パケットデータ３０２ａとして表示される。
【００５６】
「Ｎｏ」は、管理上、パケット毎に付番される識別子番号である。
【００５７】
「ＥＨＤ１」、「ＥＨＤ２」は、ECHONET Liteヘッダの領域である。「ＥＨＤ１」は１バイトで規定され、値が１０（１６進数表記）の場合、ECHONET Lite規格に基づくパケットヘッダであることを示す。また、「ＥＨＤ２」は１バイトで規定され、値が８１（１６進数表記）の場合は「規定電文形式」を示し、値が８２の場合は「任意電文形式」を示す。
【００５８】
「ＳＥＯＪ」は、送信元ECHONET Liteの機器を指定する領域である。また、「ＤＥＯＪ」は、送信先ECHONET Liteの機器を指定する領域である。規格上、「ＳＥＯＪ」、「ＤＥＯＪ」の両方の値は必須である。例えば、図５の特定パケットデータ３０２ａは、コントローラ１と機器２との間のECHONET Lite規格に基づく制御パケットである。このため、「ＳＥＯＪ」には送信元であるコントローラ１の識別子が格納され、また、「ＤＥＯＪ」には送信先である機器２（例えば、エアコン機器２Ａ、冷蔵庫機器２Ｂ等）の識別子が格納されている。
【００５９】
「ＥＳＶ」は、サービスを指定する領域である。例えば、読み出しサービスを要求する場合、６２（ｇｅｔ）を指定する。また、書き込みサービスを要求する場合、６１（ｓｅｔ）を指定する。
【００６０】
「ＥＳＶ」は、１つの電文（パケット）で扱うプロパティの数を指定する領域である。
【００６１】
「ＥＰＣｎ」は、プロパティコード（ＥＰＣ）を指定する領域である。例えば、「電源状態」のＥＰＣを指定する場合、０ｘ８０が指定される（例えば、図４参照）。また、エラーコードを指定する場合、０ｘ８８が指定される。
【００６２】
「ＰＤＣｎ」は、プロパティデータカウンタを意味し、ＥＤＴのバイト数である。
【００６３】
「ＥＤＴｎ」は、プロパティデータを指定する領域である。例えば、「電源状態」（「ＥＰＣ」０ｘ８０）のプロパティ内容をＯＮに指定する場合、０ｘ３０が指定される（例えば、図４参照）。なお、「ＥＤＴｎ」は、必須ではない。例えば、ｇｅｔによる取得要求などでは、値を取得するコマンドなので、指定すべきプロパティデータは存在しない。一方、ｓｅｔによる設定要求などでは、値を設定するコマンドなので、設定すべきプロパティデータが必要である。また、例えば、ｇｅｔによる取得要求に対する応答などでは、取得値となるプロパティデータが必要である。
【００６４】
（検証シナリオ３０２ｂ）
図６は、本実施形態に係る検証シナリオ３０２ｂ（エアコン機器２Ａ用）の一例を示す図である。検証シナリオ３０２ｂは、特定パケット３０２ａに基づいて機器２毎に生成される。具体的には、実際にコントローラ１が機器２に対して発行したECHONET Lite規格に基づく制御パケット（コマンド）に加え、その制御パケットの「実行順」と、その制御パケットの「実行間隔」とが付加されて生成される。
【００６５】
「実行順」は、機器２に対し、「ＥＨＤ１」〜「ＥＤＴｎ」の制御パケットを実行すべき順序である。検証用シナリオの実行時、「実行順」に従って、複数の制御パケットが機器２に対し送信される。
【００６６】
「実行間隔」は、機器２に対し、「ＥＨＤ１」〜「ＥＤＴｎ」の制御パケットを送信（実行）すべき間隔である。検証用シナリオとして、「実行間隔」毎に、複数の制御パケットが機器２に対し送信される。「実行間隔」を短くするほど、機器２に対して一定負荷をかけながら検証を行うことができる。
【００６７】
「ＥＨＤ１」〜「ＥＤＴｎ」は、機器２に対し実行される制御パケット（コマンド）の実体である。制御パケットはECHONET Lite規格に基づくものであるので、ECHONET Lite規格対応の機器２は、この制御パケットを受信すると、制御パケットに従って、動作を行う。
【００６８】
なお、上述したように、「ＤＥＯＪ」は、送信先ECHONET Liteの機器を指定する領域である。このため、検証シナリオ３０２ｂでは一旦「ＤＥＯＪ」を空欄とし、検証時、検証対象となる機器（例えば、エアコン機器２ａ）の識別子を設定するようにする。
【００６９】
以上、検証シナリオ３０２ｂは、実際にコントローラ１が例えばエアコン機器２Ａに対して発行したECHONET Lite規格に基づく制御パケット（コマンド）に基づいて生成される。よって、検証シナリオ３０２ｂの制御パケットが、例えばエアコン機器２ａに対し実行され、エアコン機器２ａが制御パケットに従って正常動作を行えた場合、エアコン機器２ａは、エアコン機器２Ａと同様、コントローラ１の制御パケットに対し、実績ベースで正常に動作できたことになる。つまり、この場合（検証ＯＫ）、エアコン機器２ａは、コントローラ１に対しエアコン機器２Ａと実績ベースで互換性がある。
【００７０】
一方、検証シナリオ３０２ｂの制御パケットが、例えばエアコン機器２ａに対し実行され、エアコン機器２ａが制御パケットに従って正常動作を行えない場合（検証ＮＧ）、エアコン機器２ａは、コントローラ１に対しエアコン機器２Ａと実績ベースで互換性がない。
【００７１】
なお、ユーザは、検証装置３の管理画面等を通じ、検証シナリオ３０２ｂ内の「実行順」、「実行間隔」、さらには制御パケットの「ＥＨＤ１」〜「ＥＤＴｎ」の値を、任意に修正することも可能である。これにより、様々な検証を可能とするとともに、検証結果ＮＧの際、各値を任意に変更したりして、原因究明や適正値を検証することが可能である。
【００７２】
[検証作業]
次に、本実施形態に係る検証作業について順を追って説明する。
【００７３】
（前提）
・既存環境１００において、エアコン機器２Ａは、コントローラ１の制御の下、正常に稼働している（例えば、図１参照）。
・また、検証装置３は、コントローラ１とエアコン機器２Ａとの間の制御パケットを収集し取得している（例えば、図１参照）。
・今回、エアコン機器２Ａを、新たなエアコン機器２ａに交換することとなった。
・このため、ユーザは、既存環境１００において、新しくエアコン機器２ａに交換した場合、従来通り、エアコン機器２ａは、コントローラ１の制御の下、正常に稼働できるかどうかを交換前に検証する。
【００７４】
（作業ステップ１）
まず、ユーザは、検証環境２００を構築する。具体的には、エアコン機器２Ａを入手の上、既存環境１００から取り外した検証装置３とエアコン機器２ａを接続する（例えば、図１参照）。
【００７５】
（作業ステップ２）
ユーザは、検証装置３を操作し、エアコン機器２ａに対し、エアコン機器２ａ用の検証シナリオを実行する。これより、検証結果が得られる。
【００７６】
（作業ステップ３）
ユーザは、検証ＯＫとの検証結果が得られた場合、既存環境１００において、エアコン機器２Ａを取り外し、エアコン機器２ａを接続する。この場合、従来通り、既存環境１００において、エアコン機器２ａは、コントローラ１の制御の下、正常に稼働可能である。
【００７７】
なお、検証ＮＧとの検証結果が得られた場合、既存環境１００において、エアコン機器２ａは、コントローラ１の制御の下、正常に稼働しない可能がある。よって、ユーザは、例えば、検証装置３を用いて、エラー等の分析を行って原因を究明することができる。
【００７８】
[情報処理]
図７は、本実施形態に係る検証処理を説明するシーケンス図である。なお、上述の作業ステップ２に係る検証成処理を説明する。
【００７９】
Ｓ１：まず、ユーザは、検証装置３を操作し、検証のための設定を行う。例えば、検証対象となるエアコン機器２ａの識別子を設定する。ここで設定された識別子は、検証シナリオ３０２ｂ内の「ＤＥＯＪ」にセットされる（例えば、図６の「ＤＥＯＪ」欄を参照）。
【００８０】
Ｓ２：次に、ユーザは、検証装置３を操作し、検証シナリオを実行する。検証装置３は、実行命令を受けると、記憶部３０２から検証対象となるエアコン機器２ａ用の検証シナリオを取得して、「実行順」に従って、検証シナリオ内の制御パケットの送信を開始する（例えば、図６参照）。
【００８１】
Ｓ３：検証装置３は、エアコン機器２ａに対し、検証シナリオ内から、「順序」１の制御パケットを送信する。例えば、図６の場合、検証装置３は、「ＥＰＣ」０ｘ８０（動作状態）を取得するためのｇｅｔコマンド（「ＥＳＶ」６２）を送信する。
【００８２】
Ｓ４：検証装置３は、エアコン機２ａから制御パケットに対する応答を受信する。例えば、動作状態を取得するためのｇｅｔコマンドの応答パケットにより、「ＥＤＴ」０ｘ３０（ＯＮ）又は０ｘ３１（ＯＦＦ）との値を受信する。
【００８３】
一方、エアコン機器２ａが制御パケットを処理できない場合、適切な応答が得られない。例えば、制御パケットがｇｅｔコマンドの場合、エアコン機器２ａからは取得値を含む応答パケットが期待されるが、エアコン機器２ａが当該ｇｅｔコマンドを処理できない場合、エラーを応答する、未応答、想定外の応答がなされるなどの事象が発生しうる。
【００８４】
Ｓ５：次に、検証装置３は、エアコン機器２ａに対し、「順序」２の制御パケットを、「実行間隔」による送信タイミングに従って送信する。例えば、図６の場合、検証装置３は、「ＥＰＣ」０ｘ８０（動作状態）をセットするためのｓｅｔコマンド（「ＥＳＶ」６１）を送信する。また、ｓｅｔコマンドでは、「ＥＤＴ」に０ｘ３０（ＯＮ）をセットする。
【００８５】
Ｓ６：検証装置３は、エアコン機２ａから制御パケットに対する応答を受信する。例えば、動作状態をセットするためのｓｅｔコマンドの応答として、ＯＫとの値を受信する。
【００８６】
一方、例えば、制御パケットがｓｅｔコマンドの場合、エアコン機器２ａからはセット完了を示す応答パケットが期待されるが、エアコン機器２ａが当該ｓｅｔコマンドを処理できない場合、エラーを応答する、未応答、想定外の応答がなされるなどの事象が発生しうる。
【００８７】
Ｓ７：検証装置３は、検証シナリオ内の全制御パケットを「実行順」に送信し終えると、エアコン機器２ａからの応答状況に基づいて、検証結果（検証ＯＫ／検証ＮＧ）を出力する。例えば、エアコン機器２ａから、検証シナリオ内の全制御パケットに対し正常な応答パケットが応答された場合、検証ＯＫを出力する。一方、例えば、エアコン機器２ａから、検証シナリオ内の何れか一つの制御パケットに対し正常な応答パケットが応答されない場合、検証ＮＧを出力する。
【００８８】
図８は、本実施形態に係る検証装置３の検証処理を説明するフローチャートである。なお、上述のＳ２〜Ｓ７に対応する。
【００８９】
Ｓ２１：検証装置３の互換性検証部３０４（制御部３０４ａ）は、ユーザからの検証実行命令を受けると、記憶部３０２から検証対象となる検証シナリオを取得する（例えば、図６参照）。
【００９０】
Ｓ２２：互換性検証部３０４（制御部３０４ａ）は、検証シナリオ内から、「実行順」に従って制御パケットを一つ取得し、「実行間隔」に従って検証対象となる機器２に送信する。
【００９１】
Ｓ２３：互換性検証部３０４（制御部３０４ａ）は、検証対象となる機器２から制御パケットに対する応答を受信したか否かを判定する。
【００９２】
Ｓ２４：互換性検証部３０４（制御部３０４ａ）は、応答を受信した場合、応答は正常か否かを判定する。なお、正常か否かの判定は、ECHONET Lite規格（例えば、図４）に応じて判定すればよい。例えば、「ＥＰＣ」０ｘ８０（動作状態）を取得するための制御パケット（ｇｅｔコマンド）を送信した場合、ECHONET Lite規格によれば、期待される応答は、「ＥＤＴ」０ｘ３０（ＯＮ）又は０ｘ３１（ＯＦＦ）の値である。よって、互換性検証部３０４（制御部３０４ａ）は、期待通りの応答を受信した場合、応答は正常と判定できる。
【００９３】
Ｓ２５：互換性検証部３０４（検証部３０４ｂ）は、応答は正常の場合、「応答ＯＫ」と判定する。
【００９４】
Ｓ２６：一方、互換性検証部３０４（検証部３０４ｂ）は、応答は正常でない場合、「応答ＮＧ」と判定する。
【００９５】
Ｓ２７：また、互換性検証部３０４（制御部３０４ａ）は、Ｓ２７で、一定時間の間に、検証対象となる機器２から制御パケットに対する応答を受信したか否かを判定する。つまり、応答がタイムアップか否かを判定する。タイムアップの場合、未応答とみなし、Ｓ２６へ進んで「応答ＮＧ」と判定する。
【００９６】
Ｓ２８：互換性検証部３０４（制御部３０４ａ）は、検証シナリオ内から、「実行順」に従って、全制御パケットを送信したか否かを判定する。全制御パケットを送信しない場合、残る制御パケットが存在するので、Ｓ２２へ戻る。
【００９７】
Ｓ２８：互換性検証部３０４（検証部３０４ｂ）は、検証シナリオ内の全制御パケットを送信した場合、検証結果を出力する。
【００９８】
図９は、本実施形態に係る検証結果の一例を示す図である。検証結果は、検証シナリオの検証結果である。このため、「検証結果」の欄において、検証シナリオの制御パケット毎にその検証結果（応答ＯＫ／応答ＮＧ）が示される。
【００９９】
以上のように、本実施形態によれば、既存環境１００の下、稼働中の機器交換やファームアップがなされる場合、検証装置３を用いて機器の検証を事前に行うことが可能である。検証に用いられる検証シナリオ３０２ｂは、実際にコントローラ１が機器２に対して発行したECHONET Lite規格に基づく制御パケット（コマンド）に基づいて生成される。このため、検証装置３は、擬似的にコントローラ１と同一の制御パケットを送信できる。検証装置３により検証シナリオ３０２ｂの制御パケットが機器２に対し送信され、機器２が制御パケットに従って正常応答を行えた場合、機器２は、既存環境１００の下、コントローラ１の制御パケットに対し実績ベースで正常に動作できることを確認できる。
【０１００】
なお検証装置３が機器２に対して実行（送信）する制御パケット（コマンド）は、通常時、コントローラ１が機器２に対して使用している実績ベースの制御パケットである。このため、単純に機器の有するECHONET Lite規格スペックの確認のみでは洗い出せないような不具合の存在を含め、事前に機器２の動作検証を行うことが可能である。
【０１０１】
[変形例]
（全体構成）
図１０は、本変形例に係るシステム構成図の一例を示す図である。図１と同様、既存環境１００は、コントローラ１、機器２及び検証装置３が、ネットワーク４を介して構成される。
【０１０２】
本変形例では、既存環境１００において、今度は、コントローラ１を交換する場合を考える。例えば、ユーザは、コントローラ１が古くなったため、新型のコントローラ１−２を購入の上、交換（リプレイス）を行う。
【０１０３】
しかしながら、リプレイス後、既存環境１００において、新型のコントローラ１−２の制御の下、各々の機器２がこれまで通り正常に稼働できるかどうかの確証はない。即ち、既存環境１００においては、コントローラ１はECHONET Lite規格に基づく制御信号を用いて機器２を正常に制御することが可能であった。しかしながら、コントローラ１−２が同様に機器２を正常に制御することが可能であるかどうかは未知である。
【０１０４】
そこで、本変形例では、既存環境１００で新型のコントローラ１−２を稼働させる前に、検証環境２００の下、検証装置３を用いて、コントローラ１−２の動作検証を行うことで、コントローラ１とコントローラ１−２との、機器２に対する互換性を検証する。コントローラ１−２は、コントローラ１と互換可能と検証されれば、既存環境１００において、コントローラ１−２は、機器をこれまで通り正常に稼働（制御）できる。
【０１０５】
検証環境２００は、検証対象となるコントローラ１−２及び検証装置３で構成される通信ネットワーク環境である。
【０１０６】
検証装置３は、コントローラ１−２に対する互換性の動作検証を行う装置である。上述したように、通常時、検証装置３は、コントローラ１及び機器２Ａ間の通信パケットを収集する。その後、コントローラ１の交換等に伴い、交換対象のコントローラ１−２の動作検証が必要となった際に使用される。検証時、検証装置３は既存環境１００から取り外され、検証環境２００の下、検証対象となるコントローラ１−２と接続される。コントローラ１−２の互換性を検証するには、機器２Ａ、２Ｂ、２Ｃ、２Ｄなど、既存環境１００に接続されている全ての機器２について、コントローラ１−２との動作検証を行う。
【０１０７】
（特定パケットデータ３０２ａ）
図１１は、本変形例に係る特定パケットデータ３０２ａの一例を示す図である。本変形例に係る特定パケットデータ３０２ａは、実際にネットワーク４上を流れたネットワーク・パケットから取得されたECHONET Lite規格に基づく制御パケットに対する応答パケットのデータである。このため、特定パケットデータ３０２ａは、実際にコントローラ１が機器２（例えば、エアコン機器２Ａ）に対して発行したECHONET Lite規格に基づく制御パケット（コマンド）を受けて、機器２がコントローラ１に対して応答した応答パケットを収集したものとなっている。
【０１０８】
例えば、「Ｎｏ」１の応答パケットは、「ＥＰＣ」０ｘ８０／「ＥＳＶ」７２となっていることから、規格上、これは、「電源状態」を取得するための制御パケット（「ＥＳＶ」６２／ｇｅｔコマンド）のに対する応答パケットである。このことからも、「ＥＤＴｎ」には、取得値０ｘ３０（ＯＮ）が格納されている。
【０１０９】
また、例えば、「Ｎｏ」２の応答パケットは、「ＥＰＣ」０ｘ８０／「ＥＳＶ」７１となっていることから、規格上、これは、「電源状態」をセットするための制御パケット（「ＥＳＶ」６２／ｓｅｔコマンド）のに対する応答パケットである。このことからも、「ＥＤＴｎ」には、値は格納されていない。
【０１１０】
（検証シナリオ３０２ｂ）
図１２は、本変形例に係る検証シナリオ３０２ｂ（コントローラ１−２用）の一例を示す図である。検証シナリオ３０２ｂは、実際にコントローラ１が機器２（例えば、エアコン機器２Ａ）に対して発行したECHONET Lite規格に基づく制御パケット（コマンド）を受けて、機器２がコントローラ１に対して応答した応答パケットに加え、その応答パケットの元となった制御パケットの「制御ＥＳＶ」が付加されて生成される。
【０１１１】
[情報処理]
図１３は、本変形例に係る検証処理を説明するシーケンス図である。
【０１１２】
Ｓ３１：まず、ユーザは、検証装置３を操作し、検証のための設定を行う。例えば、検証対象となるコントローラ１−２の識別子を設定する。ここで設定された識別子は、検証シナリオ３０２ｂ内の「ＤＥＯＪ」にセットされる（例えば、図１２の「ＤＥＯＪ」欄を参照）。
【０１１３】
Ｓ３２：次に、ユーザは、検証装置３を操作し、検証シナリオを実行する。検証装置３は、実行命令を受けると、記憶部３０２から検証対象となるコントローラ１−２用の検証シナリオを取得して、コントローラ１−２からの制御パケットを待機する。
【０１１４】
Ｓ３３：次に、ユーザは、ユーザは、コントローラ１−２を操作し、制御実行操作を行う。例えば、コントローラ１−２の操作パネル等から、エアコン機器２Ａの動作状態を参照する操作を行う。
【０１１５】
Ｓ３４：コントローラ１−２は、制御実行操作を受けて、検証装置３（擬似エアコン機器２Ａ）に対し、制御パケットを送信する。例えば、図１３の場合、コントローラ１−２は、動作状態（「ＥＰＣｎ」０ｘ８０）を取得するための制御パケット（「ＥＳＶ」６２／ｇｅｔコマンド）を送信する。
【０１１６】
Ｓ３５：検証装置３は、コントローラ１−２から制御パケットを受信すると、検証シナリオを参照し、検証シナリオの「制御ＥＳＶ」を参照し、「制御ＥＳＶ」が一致する応答パケットを応答する。例えば、制御パケット（「ＥＳＶ」６２／ｇｅｔコマンド）を受信した場合、検証シナリオの「制御ＥＳＶ」６２を参照し、「制御ＥＳＶ」６２の応答パケットを応答する（例えば、図１２参照）。これにより、コントローラ１−２では、動作状態ＯＦＦ（「ＥＤＴｎ」０ｘ３１）の値を取得し、操作パネル上、エアコン機器２Ａの動作状態をＯＦＦと表示する。
【０１１７】
Ｓ３６：続いて、ユーザは、コントローラ１−２を操作し、制御実行操作を行う。例えば、コントローラ１−２の操作パネル等から、エアコン機器２Ａの動作状態をＯＦＦにする操作を行う。
【０１１８】
Ｓ３７：コントローラ１−２は、制御実行操作を受けて、検証装置３に対し、制御パケットを送信する。例えば、図１３の場合、コントローラ１−２は、動作状態（「ＥＰＣｎ」０ｘ８０）をＯＦＦ（「ＥＤＴｎ」０ｘ３１）にセットするための制御パケット（「ＥＳＶ」６１／ｓｅｔコマンド）を送信する。
【０１１９】
Ｓ３８：検証装置３は、コントローラ１−２から制御パケットを受信すると、検証シナリオを参照し、検証シナリオの「制御ＥＳＶ」を参照し、「制御ＥＳＶ」が一致する応答パケットを応答する。例えば、制御パケット（「ＥＳＶ」６１／ｓｅｔコマンド）を受信した場合、検証シナリオの「制御ＥＳＶ」６１を参照し、「制御ＥＳＶ」６１の応答パケットを応答する（例えば、図１２参照）。これにより、コントローラ１−２では、セットＯＫとの応答を取得し、操作パネル上、エアコン機器２Ａの動作状態をＯＮへと切替え表示する。
【０１２０】
Ｓ３９：検証装置３は、検証結果（検証ＯＫ／検証ＮＧ）を出力する。例えば、コントローラ１−２ａからの制御パケットに対し、検証シナリオ内から対応する応答パケットを応答できた場合、検証ＯＫを出力する。一方、例えば、検証シナリオ内に対応する応答パケットがなく応答できない場合、検証ＮＧを出力する。
【０１２１】
以上のように、本変形例によれば、既存環境１００の下、稼働中のコントローラ交換やファームアップがなされる場合、検証装置３を用いてコントローラの検証を事前に行うことが可能である。検証に用いられる検証シナリオ３０２ｂは、実際に機器２がコントローラ１に対して発行したECHONET Lite規格に基づく応答パケットに基づいて生成される。このため、検証装置３は、擬似的に機器２と同一の応答パケットを送信できる。検証装置３により検証シナリオ３０２ｂの応答パケットがコントローラ１−２に対し送信され、コントローラ１−２が応答パケットに従って正常応答を行えた場合、コントローラ１−２は、既存環境１００の下、機器２の応答パケットに対し実績ベースで正常に実行できることを確認できる。
【０１２２】
[総括]
以上、本実施形態及び変形例によれば、既存通信環境において、稼働中の規格対応機器を交換等する場合、交換等に伴う機器間通信の不具合発生を事前に検証可能である。
【０１２３】
なお、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。例えば本実施形態においては通信規格の一例として、ECHONET Lite規格に対して本発明を適用したものであり、その他の通信規格においても広く適用され得る。
【符号の説明】
【０１２４】
１          コントローラ
２          機器
３          検証装置
４、５      ネットワーク
３１        ＣＰＵ
３２        ＲＯＭ
３３        ＲＡＭ
３４        ＨＤＤ
３５        入力装置
３６        表示装置
３７        通信装
１００      既存環境
２００      検証環境
３０１      特定パケット取得部
３０１ａ    パケット取得部
３０１ｂ    フィルター部
３０２      記憶部
３０２ａ    特定パケットデータ
３０２ｂ    検証シナリオ
３０２ｃ    規格ＤＢ
３０３      検証シナリオ生成部
３０４      互換性検証部
３０４ａ    制御部
３０４ｂ    検証部
【先行技術文献】
【非特許文献】
【０１２５】
【非特許文献１】「ECHONET Lite規格書  Ver1.01（日本語版）」、エコーネットコンソーシアム、2012年3月5日発行
【図１】
2015002362.tif 000003
【図２】
2015002362.tif 000004
【図３】
2015002362.tif 000005
【図４】
2015002362.tif 000006
【図５】
2015002362.tif 000007
【図６】
2015002362.tif 000008
【図７】
2015002362.tif 000009
【図８】
2015002362.tif 000010
【図９】
2015002362.tif 000011
【図１０】
2015002362.tif 000012
【図１１】
2015002362.tif 000013
【図１２】
2015002362.tif 000014
【図１３】
2015002362.tif 000015