(57)【特許請求の範囲】
【請求項１】
応答を要する要求信号を機器に送信する送信部と、
前記要求信号の送信からの経過時間が応答待ち時間内である場合、前記要求信号の応答である応答信号の受信処理を行う受信部と、
前記要求信号の送信から前記応答信号の受信までの応答時間を計測するタイマと、
前記応答時間の履歴が、前記機器の属性情報に対応付けられて格納される記憶部と、
前記要求信号の送信先の前記機器の前記属性情報と同じ前記属性情報に対応する前記応答時間の履歴に基づいて、前記要求信号の送信先の前記機器に対応する前記応答待ち時間を設定する時間設定部とを備える
ことを特徴とする通信装置。
【請求項２】
前記時間設定部は、前記要求信号の送信先の前記機器の前記属性情報と同じ前記属性情報に対応する前記応答時間の履歴の中から最長の時間に基づいて、前記要求信号の送信先の前記機器に対応する前記応答待ち時間を設定する
ことを特徴とする請求項１記載の通信装置。
【請求項３】
前記送信部は、前記機器に前記要求信号を送信し前記タイマが前記応答時間の計測中である場合、前記機器に対して新たな要求信号を送信しない
ことを特徴とする請求項１または２記載の通信装置。
【請求項４】
前記機器の前記属性情報は、製品に割り当てられた商品コードを含む
ことを特徴とする請求項１〜３のうちいずれか１項に記載の通信装置。
【請求項５】
前記機器の前記属性情報は、前記機器の種別を示す種別情報を含む
ことを特徴とする請求項１〜４のうちいずれか１項に記載の通信装置。
【請求項６】
前記機器の前記属性情報は、前記機器のメーカを示すメーカ情報を含む
ことを特徴とする請求項１〜５のうちいずれか１項に記載の通信装置。
【請求項７】
前記要求信号は、前記機器に対する制御内容が含まれ、
前記記憶部は、前記応答時間に前記制御内容が対応付けられて格納され、
前記時間設定部は、前記機器の前記属性情報と前記制御内容とに基づいて、前記応答待ち時間を設定する
ことを特徴とする請求項１〜６のうちいずれか１項に記載の通信装置。
【請求項８】
前記時間設定部は、前記要求信号の送信先の前記機器に対応する前記応答時間の履歴に基づいて、前記応答時間が短縮傾向であるか否かを判定し、前記応答時間が短縮傾向であると判定した場合、前記応答待ち時間を、現在設定されている第１の時間よりも短い第２の時間に変更する
ことを特徴とする請求項１〜７のうちいずれか１項に記載の通信装置。
【請求項９】
前記時間設定部は、前記第２の時間に変更した前記応答待ち時間が前記タイマで計測した前記応答時間よりも短い場合、前記応答待ち時間を、前記第２の時間よりも長い第３の時間に変更する
ことを特徴とする請求項８記載の通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に通信装置、より詳細には、他の機器との間で通信を行う通信装置に関する。
【背景技術】
【０００２】
従来、住宅設備機器（太陽電池、蓄電池など）や家電機器（エアコン、照明器具、冷蔵庫など）などを監視、制御するＨＥＭＳ（Home Energy Management System）がある（例えば特許文献１参照）。また、ＨＥＭＳの普及加速を目的として、ＨＥＭＳを構成する機器間における通信方式の業界標準化が進められており、互いに異なるメーカの機器の相互接続環境が整備されつつある。
【０００３】
一般的に、機器が通信相手の機器（相手機器）に要求信号を送信した場合、要求信号の送信から応答待ち時間の間は応答待ちを行う。そして、機器は、応答待ち時間内に相手機器からの応答信号を受信した場合に、この応答信号の受信処理を行う。また、機器は、応答待ち時間内に通信相手の機器から応答信号を受信しなかった場合、通信相手の機器に送信した要求信号はタイムアウトであると判定され、要求信号の再送信などのタイムアウト処理が行われる。
【０００４】
ここで、同一のメーカの機器間で通信を行う場合、相手機器の応答性能に関する情報を予め保持しているので、相手機器の性能に応じて応答待ち時間を設定することが一般的である。例えば、互いに同一メーカであるＨＥＭＳのコントローラとデバイス機器との間で通信を行う場合、コントローラは、デバイス機器の応答性能に応じた応答待ち時間を設定することができる。これにより、デバイス機器において、コントローラからの連続要求による通信バッファのオーバーフローが防止される。すなわち、デバイス機器が受信できない要求の発生が防止され、デバイス機器がコントローラからの要求を取りこぼすことが防止される。したがって、同一メーカであるコントローラとデバイス機器との間では、通信ロスが発生することがなかった。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１４−１２４０６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、互いに異なるメーカの機器間で通信を行う場合、相手機器の応答性能が不明であるので適切な応答待ち時間の設定ができなかった。この応答待ち時間が短すぎる場合、タイムアウトが頻発し多重要求の発生によって要求の取りこぼしが発生するおそれある。また、応答待ち時間が長すぎる場合、システムの応答性が低下し、ユーザビリティの低下につながる。
【０００７】
本発明は、上記事由に鑑みてなされており、その目的は、通信相手の機器の応答性能に応じた応答待ち時間を設定することができる通信装置を提供することにある。
【課題を解決するための手段】
【０００８】
本発明の通信装置は、応答を要する要求信号を機器に送信する送信部と、前記要求信号の送信からの経過時間が応答待ち時間内である場合、前記要求信号の応答である応答信号の受信処理を行う受信部と、前記要求信号の送信から前記応答信号の受信までの応答時間を計測するタイマと、前記応答時間の履歴が、前記機器の属性情報に対応付けられて格納される記憶部と、前記要求信号の送信先の前記機器の前記属性情報と同じ前記属性情報に対応する前記応答時間の履歴に基づいて、前記要求信号の送信先の前記機器に対応する前記応答待ち時間を設定する時間設定部とを備えることを特徴とする。
【発明の効果】
【００１０】
本発明では、通信相手の機器の応答性能に応じた応答待ち時間を設定することができるという効果がある。
【図面の簡単な説明】
【００１１】
【図１】実施形態の通信装置のブロック構成図である。
【図２】要求判定処理のフローチャートである。
【図３】図３Ａ、図３Ｂは、要求信号の送信、応答信号の受信のシーケンス図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態を図面に基づいて説明する。
（実施形態）
図１に、本実施形態のブロック構成図を示す。本実施形態では、通信装置１と複数の機器２とでＨＥＭＳ（Home Energy Management System）を構成している。通信装置１は、ＨＥＭＳのコントローラであり、複数の機器２のそれぞれはＨＥＭＳのデバイス（例えば、エアコン、照明器具など）である。なお、本実施形態において、通信装置１と機器２とは互いに異なるメーカである。また、複数の機器２の区別する場合、機器２１、機器２２、機器２３という。通信装置１は、それぞれの機器２との間でネットワークを介して通信可能に構成されている。ここで、ＨＥＭＳを構成する機器２において、互いに異なるメーカ間の機器２で相互に接続、制御を行うために業界標準化の通信規格（通信方式）がある。本実施形態では、この業界標準化の通信規格として、一般社団法人エコーネットコンソーシアムによって策定された通信プロコトルであるECHONET Lite（登録商標）（以降、共通通信規格という）を用いた場合を例にして説明する。以下に、本実施形態における通信装置１の構成について図１を用いて説明する。
【００１３】
本実施形態の通信装置１は、通信部１１、要求生成部１２、操作部１３、通信制御部１４、送信部１５、受信部１６、タイマ１７、記憶部１８、および時間設定部１９を備えるＨＥＭＳのコントローラである。
【００１４】
通信部１１は、いわゆる通信インターフェースであり、機器２との間に構築されたネットワークを介して、有線または無線を媒体とした信号の授受を行う。なお、必要に応じて通信装置１と機器２との間にルータが設けられていてもよい。
【００１５】
要求生成部１２は、第１要求部１２１と第２要求部１２２とを備え、機器２に対する制御要求を生成する。
【００１６】
第１要求部１２１は、ネットワークを介して通信装置１と接続されたＧＵＩ（Graphical User Interface）端末、通信装置１が備える操作部１３の操作内容が入力され、この操作内容に基づいた制御要求を生成する。ＧＵＩ端末３は、表示部３１と操作部３２とを備えており、ＧＵＩを用いた入力デバイスとしての機能と、ＨＥＭＳの状態を表示するモニタとしての機能とを兼用している。表示部３１は、ＥＬ（Electro Luminescence）ディスプレイ、液晶ディスプレイなどで構成されおり、例えば機器２に対する制御情報（例えば稼働、停止、情報取得など）を示すアイコンが表示される。操作部３２は、表示部３１を構成するディスプレイ上に設けられたタッチパネルで構成されている。そして、ＧＵＩ端末３は、ユーザによる操作部３２への操作内容（例えば選択されたアイコンが示す制御情報）を通信装置１に送信し、第１要求部１２１は、この操作内容を取得する。また、通信装置１が備える操作部１３は、例えばタクタイルスイッチ（押しボタンスイッチ）で構成されており、ユーザによって操作されることで、この操作部１３に割り当てられた操作内容が第１要求部１２１に伝えられる。
【００１７】
そして、第１要求部１２１は、ＧＵＩ端末３または操作部１３から受け取った操作内容が、機器２に対して制御が必要である場合、この操作内容が示す制御情報に基づいて機器２への制御要求を生成し、通信制御部１４に出力する。例えば、操作内容が示す制御情報が「機器２の稼働」である場合、第１要求部１２１は、「機器２を稼働させる」という制御要求を生成し、通信制御部１４に出力する。
【００１８】
第１要求部１２１は、ユーザによる操作をトリガとして制御要求を生成する構成であるのに対し、第２要求部１２２は、機器２への制御要求を自動的に生成する構成である。第２要求部１２２は、例えばユーザによって決められたスケジュールに基づいたタイミングで、機器２への制御要求を生成し、通信制御部１４に出力する。
【００１９】
通信制御部１４は、機器２への制御要求が要求生成部１２（第１要求部１２１、第２要求部１２２）から入力されると、すぐにこの制御要求を機器２に伝えるか否かの要求判定処理を行う。なお、この要求判定処理については後述し、ここでは機器２への制御要求をすぐに伝える場合について説明する。
【００２０】
通信制御部１４は、機器２に制御要求を伝える場合、この制御要求を識別するための識別子であるトランザクションＩＤを制御要求に割り当てる。そして、通信制御部１４は、トランザクションＩＤを付加した制御要求を送信部１５に出力する。さらに、通信制御部１４は、制御要求に付加したトランザクションＩＤを受信部１６に通知する。この、トランザクションＩＤによって、要求と応答とが対応付けられ、機器２からの応答を受信した場合に、どの要求に対する応答であるかを判別することができる。
【００２１】
送信部１５は、通信制御部１４から受け取った制御要求を、共通通信規格に則った信号フォーマットで構成される要求信号に変換する。このとき、送信部１５は、制御要求に付加されたトランザクションＩＤを要求信号にも付加する。また、共通通信規格では、要求に対して応答が必要であるか不要であるかの情報も要求信号に付加される。本実施形態では、要求に対して応答が必要であるという情報が、要求信号に付加されている場合を例にして説明する。すなわち、本実施形態において、要求信号には、機器２への制御要求が機器２に対する制御内容として含まれており、さらに応答が必要であるという情報とトランザクションＩＤとが付加されている。そして、送信部１５は、生成した要求信号をネットワークを介して機器２に送信する。
【００２２】
送信部１５からの要求信号を受信した機器２は、この要求信号の応答である応答信号を生成して、通信装置１に返信する。例えば、要求信号に含まれた制御要求が「機器２の稼働」である場合、機器２は、起動が完了し稼働状態であることを示す応答が含まれた応答信号を、通信装置１に返信する。また、要求信号に含まれた制御要求が、機器２の属性情報を要求する「情報取得」である場合、機器２は、要求された属性情報を示す応答が含まれた応答信号を通信装置１に返信する。そして、機器２は、受信した要求信号に対する応答信号を生成する際に、この要求信号に付加されたトランザクションＩＤを応答信号に付加する。
【００２３】
受信部１６は、応答信号に付加されたトランザクションＩＤを確認し、このトランザクションＩＤが通信制御部１４に通知されたトランザクションＩＤと一致する場合、この応答信号の受信処理を行う。また、受信部１６は、受信した応答信号に含まれる機器２からの応答情報を、要求元の要求生成部１２に出力する。要求生成部１２は、必要に応じて応答情報をＧＵＩ端末３に送信し、ＧＵＩ端末３の表示部３１を用いて応答情報を表示させる。
【００２４】
タイマ１７は、送信部１５から送信される要求信号と受信部１６が受信する応答信号とを監視しており、要求信号の送信から応答信号の受信までの応答時間を計測する。タイマ１７は、送信部１５から要求信号が送信されると計時を開始し、この要求信号に対応する応答信号を受信部１６が受信すると計時を停止し、計時結果が応答時間となる。そして、タイマ１７は、計測した応答時間を記憶部１８に格納する。また、タイマ１７は、要求信号の送信からの経過時間を、この要求信号に付加されたトランザクションＩＤと対応付けて通信制御部１４に通知する。通信制御部１４は、この経過時間を用いて後述するタイムアウト判定処理を行う。
【００２５】
記憶部１８は、タイマ１７が計測した応答時間の履歴が格納される。
【００２６】
時間設定部１９は、記憶部１８に格納された応答時間の履歴に基づいて、要求信号に対する応答待ち時間を設定する。受信部１６は、応答待ち時間内に応答信号を受信した場合に、応答信号の受信処理を行う。なお、応答待ち時間の設定については後述する。
【００２７】
次に、タイムアウト判定処理について説明する。
【００２８】
通信制御部１４は、要求信号の送信からの経過時間と、応答待ち時間とを比較するタイムアウト判定処理を行う。そして、通信制御部１４は、経過時間が応答待ち時間を上回った場合、要求信号に対する応答待ちをタイムアウトさせる。具体的には、通信制御部１４は、経過時間が応答待ち時間を上回った場合、受信部１６に対して要求信号に付加されたトランザクションＩＤを破棄するように指示する。受信部１６は、トランザクションＩＤを破棄することで、要求信号に対する応答信号の受信処理を行わない。すなわち、要求信号の送信からの経過時間が応答待ち時間を上回った場合、この要求信号に対する応答信号の応答待ちを終了させるタイムアウトが実行される。なお、応答待ち時間内に受信部１６が応答信号を受信した場合、この応答信号の受信処理が行われる。
【００２９】
次に、通信制御部１４が要求生成部１２から制御要求を入力された際に、すぐにこの制御要求を機器２に伝えるか否かを判断する要求判定処理について、図２に示すフローチャートを用いて説明する。
【００３０】
まず、通信制御部１４は、要求生成部１２から入力された制御要求の要求先の機器２に対して、応答待ち中の要求があるか否かを確認する（Ｓ１）。通信制御部１４は、制御要求の要求先の機器２に対して応答待ちの要求がある場合（Ｓ１のＹｅｓ）、この要求がタイムアウトであるか否かをタイムアウト判定処理によって確認する（Ｓ２）。要求がタイムアウトではない、すなわち応答待ち中である場合（Ｓ２のＮｏ）、応答信号の受信確認を行う（Ｓ３）。そして、応答信号の受信処理が未処理である場合（Ｓ３のＮｏ）、ステップＳ２のタイムアウト判定処理に戻る。
【００３１】
一方、制御要求の要求先の機器２に対して応答待ち中の要求がない場合（Ｓ１のＮｏ）、通信制御部１４は、要求生成部１２から入力された制御要求を送信部１５に出力し、送信部１５から要求信号が送信される（Ｓ４）。同様に、要求がタイムアウトである場合（Ｓ２のＹｅｓ）、または応答信号の受信処理が行われた場合（Ｓ３のＹｅｓ）、通信制御部１４は、要求生成部１２から入力された制御要求を送信部１５に出力し、送信部１５から要求信号が送信される（Ｓ４）。
【００３２】
上述したタイムアウト判定処理、要求判定処理により、要求信号の送信、応答信号の受信を示すシーケンス図は、図３Ａ、図３Ｂで表される。
【００３３】
図３Ａに示すように、通信装置１から機器２に要求信号が送信されると、タイマ１７が計時を開始する（Ｐ１）。そして、応答待ち時間内に応答信号の受信処理が行われた場合、タイマ１７は計時を停止し計時結果が応答時間となる（Ｐ２）。このとき、通信装置１が機器２からの応答信号を受信するまでの間、すなわちタイマ１７が応答時間の計測中である場合、通信装置１から機器２に対して新たな要求信号が送信されない。このように、応答待ち時間内は、応答中の機器２に対して新たな要求信号の送信の禁止期間となる。
【００３４】
そして、機器２に対して新たな要求がある場合、応答信号の受信後に機器２に対して要求信号が送信される（Ｐ３）。したがって、ユーザの操作によって第１要求部１２１が多数の制御要求を生成した場合であっても、この制御要求は通信制御部でバッファされ、機器２への連続要求が防止される。これにより、機器２が受信バッファのオーバーフローによる要求の受信ロスが防止され、さらに不要なリソースの消費による処理の遅延を防止することができる。
【００３５】
また、応答待ち時間内に応答信号の受信処理が行われなかった場合、図３Ｂに示すように、応答待ち時間後に要求信号が送信される（Ｐ４）。このとき、機器２に対して新たな要求がない場合、タイムアウトした要求信号が再送信される。
【００３６】
次に、上述したタイムアウト判定処理に用いられる応答待ち時間の設定について説明する。
【００３７】
本実施形態のタイマ１７は、計測した応答時間を、応答時間を計測する際に対象となった要求信号に含まれる制御内容、および応答信号の送信元である機器２の属性情報、応答信号の受信日時を示すタイムスタンプに対応付けて記憶部１８に格納する。
【００３８】
要求信号に含まれる制御内容（制御パラメータ）とは、機器２に対する要求の数（要求数）、要求のコマンド、要求のデータ長などを示す。本実施形態では、要求信号に含まれる制御内容として、要求数が応答時間と対応付けられて記憶部１８に格納される。
【００３９】
また、機器２の属性情報とは、機器２のメーカ名を示すメーカコード、製品に割り当てられた商品コード、機器２の種別（機器オブジェクト）を示すクラスコードなどを示す。本実施形態では、機器２の属性情報としてメーカコード、商品コード、クラスコードが応答時間と対応付けられて記憶部１８に格納される。メーカコードには、エコーネットコンソーシアムによってメーカごとに割り当てられたコードを用いている。商品コードには、機器２の製品型番を用いている。クラスコードには、エコーネットコンソーシアムによって分類された機器２の種別（機器オブジェクト）を示すコードを用いている。なお、メーカコード、商品コード、クラスコードは、上記に限定せず、例えば、商品コードは、ＪＡＮ（Japanese Article Number）コードであってもよい。また、応答時間に対応付けられる機器２の属性情報は、機器２に対して上記属性情報を要求する要求信号を送信することで取得することができる。
【００４０】
表１に、記憶部１８に格納された応答時間の履歴の一例を示す。なお、表１の列方向において、機器２と要求数との組み合わせを１グループとしてまとめて記載しており、各グループ内における列方向の並び順はタイムスタンプの昇順としている。そのため、異なるグループ間においてタイムスタンプの前後関係は規定されない。また、表１は、記憶部に格納された応答時間の履歴の一部であり、記憶部に格納される応答時間の履歴数は表１の個数に限定されない。
【００４１】
【表１】
0006704166.tif 000002
【００４２】
表１に示すように、機器２１〜機器２３は、クラスコードが共通であり、機器２１と機器２２とはメーカコードが共通である。また、機器２１において、要求数が互いに異なる応答時間のデータがある。
【００４３】
時間設定部１９は、記憶部１８に格納された応答時間の履歴に基づいて、機器２の属性情報と制御内容とに対応する応答待ち時間を設定する。本実施形態では、時間設定部１９は、機器２の各属性情報と要求数との組み合わせの各々に対応する応答待ち時間を設定する。以下では、メーカコードＭ１、商品コードＩ１、クラスコードＣ１、要求数［３］のの組み合わせに対応する応答待ち時間の設定について説明する。
【００４４】
時間設定部１９は、記憶部１８に格納された応答時間の履歴の中から、メーカコードＭ１、商品コードＩ１、クラスコードＣ１、要求数［３］の組み合わせに対応する応答時間を抽出する（タイムスタンプＴ１１〜Ｔ１３の応答時間）。そして、時間設定部１９は、抽出した応答時間の中から、最長の時間を選択する。すなわち、時間設定部１９は、タイムスタンプがＴ１１である応答時間（５．５秒）を選択する。
【００４５】
そして、時間設定部１９は、選択した最長の応答時間（５．５秒）に基づいて、メーカコードＭ１、商品コードＩ１、クラスコードＣ１、要求数［３］の組み合わせに対応する応答待ち時間を設定する。本実施形態では、通信上の揺らぎ、受信処理時間の誤差などを考慮し、時間設定部１９は、選択した最長の応答時間の５％をマージンとした５．７７秒（＝５．５秒×１．０５）を応答待ち時間に設定する。また、時間設定部１９は、機器２の各属性情報と要求数との他の組み合わせについても応答待ち時間を設定する。表２に、時間設定部１９が設定した応答待ち時間を示す。なお、本実施形態では、時間設定部１９は、選択した最長の応答時間に対して５％を付加した時間を応答待ち時間に設定しているが、５％に限定せず、通信上の揺らぎ、受信処理時間の誤差などを考慮して適宜設定される。また、時間設定部１９は、選択した最長の応答時間に対して所定時間（例えば０．５秒など）を付加した時間を応答待ち時間に設定してもよい。
【００４６】
【表２】
0006704166.tif 000003
【００４７】
通信制御部１４は、時間設定部１９によって設定された応答待ち時間を用いて上述したタイムアウト判定処理を行う。例えば、属性情報がメーカコードＭ１、商品コードＩ１、クラスコードＣ１である機器２１に対して要求数が［３］の要求信号を送信する場合、応答待ち時間には５．７７秒が設定される。また、機器２１に対して要求数が［２］の要求信号を送信する場合、応答待ち時間には５．２５秒が設定される。また、複数の機器２に対して同一の要求信号をマルチキャストで送信する場合、応答待ち時間は、送信先の機器２のうち最長の応答待ち時間が適用される。
【００４８】
なお、時間設定部１９が応答待ち時間を求めるタイミングは、要求信号の送信時であってもよいし、要求信号の送信前に予め求めておいてもよい。要求信号の送信前に応答待ち時間を求める場合、時間設定部１９は、機器２の属性情報と制御内容とに対応する応答待ち時間を予め求めてデータテーブルに格納しておく。そして、要求信号の送信時において、時間設定部１９は、機器２の属性情報と制御内容とに対応する応答待ち時間をデータテーブルから抽出し、通信制御部１４は、時間設定部１９が抽出した応答待ち時間を用いてタイムアウト判定処理を行う。
【００４９】
このように、本実施形態では、応答時間の履歴に基づいて、機器２の属性情報と制御内容とに対応する応答待ち時間が設定される。したがって、要求信号の送信先である機器２の応答性能が不明であっても、応答時間の履歴に基づいてこの機器２に適した応答待ち時間を設定することができ、応答待ち時間が不要に短く設定される、または不要に長く設定されることが防止される。これにより、タイムアウトが頻発し機器２の受信バッファがオーバーフローすることを防止することができる。また、要求信号がタイムアウトした際に次の要求信号が送信されるまでの間隔が不要に長くなることが防止されるので、システムの応答性の低下が防止され、ユーザビリティを向上させることができる。なお、本実施形態では、応答待ち時間は、機器２の属性情報と制御内容とに基づいて設定されているが、機器２の属性情報のみに基づいて設定されていてもよい。
【００５０】
また、時間設定部１９は、機器２の属性情報と制御内容に対応する応答時間の履歴に基づいて、応答時間が短縮傾向であるか否かを判定する。例えば、現在から所定期間（例えば１ヶ月、３ヶ月など）前までの応答時間の履歴のうち最長の応答時間を、応答待ち時間から引いた差分が所定時間よりも長い場合、時間設定部１９は、応答時間が短縮傾向であると判定する。または、応答時間が、応答待ち時間の所定割合（例えば７０％）よりも短い状態が所定回数（例えば５回）連続した場合、時間設定部１９は、応答時間が短縮傾向であると判定する。そして、時間設定部１９は、応答時間が短縮傾向であると判定した場合、応答待ち時間を現在設定されている第１の時間よりも短い第２の時間に設定する。例えば、時間設定部１９は、メーカコードＭ１、商品コードＩ１、クラスコードＣ１、要求数［３］に対応する応答時間が短縮傾向であると判定したとする。この場合、時間設定部１９は、応答待ち時間を、現在設定されている５．７７秒（第１の時間）よりも短い５．６７秒（第２の時間）に変更する。これにより、機器２のファームウェアの更新などによって応答性能が向上し、応答時間が短くなった場合などに、応答待ち時間を短縮させシステムの応答性を向上させることができる。なお、第２の時間は、第１の時間に対して所定時間短い値、または所定の割合で小さい値に設定される。あるいは、第２の時間は、現在設定されている応答待ち時間と、所定期間前までにおける最長の応答時間との差の大きさに基づいた時間に設定される。
【００５１】
また、時間設定部１９は、第２の時間に変更した応答待ち時間が、タイマ１７で計測した応答時間よりも短い場合、応答待ち時間を第２の時間よりも長い第３の時間に変更する。例えば、メーカコードＭ１、商品コードＩ１、クラスコードＣ１、要求数［３］に対応する応答時間が５．６７秒（第２の時間）を所定回数上回ったとする。この場合、時間設定部１９は、応答待ち時間を５．６７秒（第２の時間）よりも長い５．７２秒（第３の時間）に設定する。これにより、応答待ち時間が不要に短縮されることを防止することができる。なお、第３の時間は、第２の時間に対して所定時間長い値、または所定の割合で大きい値に設定される。あるいは、第３の時間は、第２の時間と、第２の時間を上回った応答時間との差の大きさに基づいた時間に設定される。
【００５２】
ここで、応答時間は製品の応答性能が大きく影響する。そこで、本実施形態では、機器２の属性情報（メーカコード、商品コード、クラスコード）の組み合わせを用いて製品を特定し、この製品に応答待ち時間を対応付けている。したがって、通信装置１に対して新たに接続された機器２の属性情報の組み合わせが、既に設定された応答待ち時間に対応する機器２の属性情報の組み合わせと一致する場合、この応答待ち時間を用いることができる。例えば、通信装置１に対して新たに接続された機器２の属性情報がメーカコードＭ１、商品コードＩ２、クラスコードＣ１であるとする。そして、通信装置１が、この機器２に対して要求数［２］の要求信号を送信する場合、応答待ち時間が３．１５秒に設定される（表２参照）。このように、本実施形態では、応答待ち時間を機器２の属性情報に対応付けている。これにより、新たに接続された機器２の応答時間の履歴がない場合であっても機器２の属性情報が、すでに設定された応答待ち時間に対応付けられた機器２の属性情報と一致する場合、この応答待ち時間を用いることができる。さらに、本実施形態では、機器２の属性情報（メーカコード、商品コード、クラスコード）の組み合わせを用いて製品を特定しているため、製品特定の精度が高い。
【００５３】
また、応答時間は、制御内容にも影響される。例えば、要求数が多い場合と少ない場合とでは、応答時間に差が生じる。そこで、本実施形態では、制御内容を応答待ち時間に対応させている。これにより、応答待ち時間を制御内容に応じてより細かく設定することができる。したがって、例えば要求数が少ない場合に、不要に長い応答待ち時間が設定されることを防止することができる。なお、応答待ち時間に対応付けられる制御内容は、要求数に限定せず、要求のコマンド、データ長などが対応付けられていてもよい。
【００５４】
また、本実施形態の通信装置１は、ＨＥＭＳのコントローラで構成されているが、この形態に限定せず、他の機器、あるいはコンピュータを上述した通信装置１として機能させるためのプログラムを用いて実現される形態であってもよい。このプログラムにより、コンピュータを通信装置１として機能させることができ、応答時間の履歴に基づいて機器２に適した応答待ち時間を設定することができる。なお、プログラムは、ＲＯＭ（Read Only Memory）に格納された状態、コンピュータで読取可能な記録媒体に格納された状態などで提供、あるいはインターネットのような電気通信回線を介して提供される。
【００５５】
このように、本実施形態の通信装置１は、送信部１５と受信部１６とタイマ１７と記憶部１８と時間設定部１９とを備える。送信部１５は、応答を要する要求信号を機器２に送信する。受信部１６は、要求信号の送信からの経過時間が応答待ち時間内である場合、要求信号の応答である応答信号の受信処理を行う。タイマ１７は、要求信号の送信から応答信号の受信までの応答時間を計測する。記憶部１８は、機器２の応答時間の履歴が、機器２の属性情報に対応付けられて格納される。時間設定部１９は、機器２の属性情報に対応する応答時間の履歴に基づいて、機器２の属性情報に対応する応答待ち時間を設定する。
【００５６】
また、本実施形態のプログラムは、コンピュータを通信装置１として機能させる。
【００５７】
上記構成により、本実施形態の通信装置１、プログラムは、要求信号の送信先である機器２の応答性能が不明であっても、応答時間の履歴に基づいてこの機器２に適した応答待ち時間を設定することができる。
【００５８】
また、時間設定部１９は、機器２の属性情報に対応する応答時間の履歴の中から最長の時間に基づいて、機器２の属性情報に対応する応答待ち時間を設定する。上記構成により、応答待ち時間が不要に短く設定されることを防止することができる。
【００５９】
また、送信部１５は、機器２に要求信号を送信しタイマ１７が応答時間の計測中である場合、機器２に対して新たな要求信号を送信しない。上記構成により、応答中の機器２に対して連続要求が防止され、機器２が受信バッファのオーバーフローによる要求の受信ロスが防止され、さらに不要なリソースの消費による処理の遅延を防止することができる。
【００６０】
また、機器２の属性情報は、製品に割り当てられた商品コードを含む。機器２の属性情報に商品コードが含まれることによって、機器２の製品を容易に特定することができる。
【００６１】
また、機器２の属性情報は、機器２の種別を示すクラスコード（種別情報）を含む。また、機器２の属性情報は、機器２のメーカを示すメーカコード（メーカ情報）を含む。機器２の属性情報に、商品コードに加えて、クラスコード、メーカコードが含まれることによって、機器２の製品を特定する精度が向上する。
【００６２】
また、本実施形態の通信装置１において、要求信号は、機器２に対する要求数（制御内容）が含まれる。記憶部１８は、応答時間に要求数（制御内容）が対応付けられて格納される。時間設定部１９は、機器２の属性情報と要求数（制御内容）とに基づいて、応答待ち時間を設定する。
【００６３】
応答時間は、要求信号に含まれる制御内容に大きく影響する。そのため、応答待ち時間を制御内容に対応付けて設定することで、応答待ち時間をより細かく設定することができる。したがって、例えば要求数が少ない場合に、不要に長い応答待ち時間が設定されることを防止することができる。
【００６４】
また、時間設定部１９は、機器２の属性情報に対応する応答時間の履歴に基づいて、応答時間が短縮傾向であるか否かを判定する。応答時間が短縮傾向であると判定した場合、応答待ち時間を、現在設定されている第１の時間よりも短い第２の時間に設定する。
【００６５】
上記構成により、応答待ち時間の設定後に応答時間が短くなった場合に、応答待ち時間を短縮させることができる。
【００６６】
また、時間設定部１９は第２の時間に変更した応答待ち時間がタイマ１７で計測した応答時間よりも短い場合、応答待ち時間を第２の時間よりも長い第３の時間に変更する。
【００６７】
上記構成により、応答待ち時間が不要に短縮されることを防止することができる。
【００６８】
また、上述したように、通信装置１の時間設定部１９は、機器２の属性情報のみ、または機器２の属性情報と制御内容とに基づいて、応答待ち時間を設定するように構成されているが、上記構成に限定しない。時間設定部１９は、制御内容のみに基づいて応答待ち時間を設定するように構成されていてもよい。このように構成する場合、記憶部１８には、機器２の応答時間の履歴が、機器２に対する制御内容に対応付けられて格納される。すなわち、記憶部１８には、機器２に対して送信した要求信号に含まれる制御内容（例えば、要求のコマンド）に対応する応答時間の履歴が格納される。そして、時間設定部１９は、要求信号の送信時において、この要求信号に含まれる制御内容に対応する応答時間の履歴に基づいて、この制御内容に対応する応答待ち時間を設定する。
【００６９】
このように、本実施形態の通信装置１は、送信部１５と受信部１６とタイマ１７と記憶部１８と時間設定部１９とを備える。送信部１５は、機器２に対する制御内容が含まれ、応答を要する要求信号を機器２に送信する。受信部１６は、要求信号の送信からの経過時間が応答待ち時間内である場合、要求信号の応答である応答信号の受信処理を行う。タイマ１７は、要求信号の送信から応答信号の受信までの応答時間を計測する。記憶部１８は、機器２の応答時間の履歴が、制御内容に対応付けられて格納される。時間設定部１９は、制御内容に対応する応答時間の履歴に基づいて、制御内容に対応する応答待ち時間を設定する。
【００７０】
上記構成により、応答待ち時間は、制御内容に対応して設定される。したがって、要求信号の送信先である機器２の応答性能が不明であっても、要求信号に含まれる制御内容に対応する応答待ち時間が設定されるので、応答待ち時間が不要に短く設定される、または不要に長く設定されることが防止される。これにより、タイムアウトが頻発し機器２の受信バッファがオーバーフローすることを防止することができる。また、要求信号がタイムアウトした際に次の要求信号が送信されるまでの間隔が不要に長くなることが防止されるので、システムの応答性の低下が防止され、ユーザビリティを向上させることができる。
【００７１】
なお、上述した実施形態は本発明の一例である。このため、本発明は、上述の実施形態に限定されることはなく、この実施形態以外であっても、本発明に係る技術的思想を逸脱しない範囲であれば、設計等に応じて種々の変更が可能であることはもちろんのことである。
【符号の説明】
【００７２】
１  通信装置
１５  送信部
１６  受信部
１７  タイマ
１８  記憶部
１９  時間設定部
２  機器
【図１】
0006704166.tif 000004
【図２】
0006704166.tif 000005
【図３】
0006704166.tif 000006