IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社東芝の特許一覧 ▶ 東芝エネルギーシステムズ株式会社の特許一覧

特開2024-117497通信装置、プログラムおよび通信方法
<>
  • 特開-通信装置、プログラムおよび通信方法 図1
  • 特開-通信装置、プログラムおよび通信方法 図2
  • 特開-通信装置、プログラムおよび通信方法 図3
  • 特開-通信装置、プログラムおよび通信方法 図4
  • 特開-通信装置、プログラムおよび通信方法 図5
  • 特開-通信装置、プログラムおよび通信方法 図6
  • 特開-通信装置、プログラムおよび通信方法 図7
  • 特開-通信装置、プログラムおよび通信方法 図8
  • 特開-通信装置、プログラムおよび通信方法 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024117497
(43)【公開日】2024-08-29
(54)【発明の名称】通信装置、プログラムおよび通信方法
(51)【国際特許分類】
   H04W 24/04 20090101AFI20240822BHJP
   H04W 84/18 20090101ALI20240822BHJP
【FI】
H04W24/04
H04W84/18
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023023628
(22)【出願日】2023-02-17
(71)【出願人】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(71)【出願人】
【識別番号】317015294
【氏名又は名称】東芝エネルギーシステムズ株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】井原 聖也
(72)【発明者】
【氏名】野上 侑馬
(72)【発明者】
【氏名】小堺 康之
(72)【発明者】
【氏名】米山 清二郎
【テーマコード(参考)】
5K067
【Fターム(参考)】
5K067AA26
5K067DD24
5K067DD30
5K067EE02
5K067EE25
5K067LL08
(57)【要約】
【課題】無線マルチホップネットワークを構成する通信装置間における障害箇所を正確に検知することができる通信装置、プログラムおよび通信方法を提供することである。
【解決手段】通信タイミングを同期する通信装置であって、前記通信タイミングを示す通し番号と送受信時刻とを含むパケットを送信する送信部と、通信相手から送信された前記パケットを受信する受信部と、受信した前記パケットおよび受信した前記通し番号と送信時刻を基に、前記通信相手に対する上りの通信時間と下りの通信時間と内部処理時間とを計算して、前記通信相手からの応答時間の測定値を算出する計算部と、前記通信相手との間の応答時間の理論値を算出する理論値計算部と、前記応答時間の測定値と前記応答時間の理論値とを比較し、前記通信相手との間の通信状態の異常を検知する異常検知部と、を備える。
【選択図】図2
【特許請求の範囲】
【請求項1】
通信タイミングを同期する通信装置であって、
前記通信タイミングを示す通し番号と送受信時刻とを含むパケットを送信する送信部と、
通信相手から送信された前記パケットを受信する受信部と、
受信した前記パケットおよび受信した前記通し番号と送信時刻を基に、前記通信相手に対する上りの通信時間と下りの通信時間と内部処理時間とを計算して、前記通信相手からの応答時間の測定値を算出する計算部と、
前記通信相手との間の応答時間の理論値を算出する理論値計算部と、
前記応答時間の測定値と前記応答時間の理論値とを比較し、前記通信相手との間の通信状態の異常を検知する異常検知部と、
を備えることを特徴とする通信装置。
【請求項2】
前記送信部は、ブロードキャストで前記パケットを送信し、
前記受信部は、通信相手がブロードキャストした前記パケットを受信する、
ことを特徴とする請求項1に記載の通信装置。
【請求項3】
前記パケットの送信時に、通し番号と送信時刻を記憶しておく記憶部を更に備え、
前記計算部は、受信した前記パケットおよび前記記憶部に記憶した通し番号と送信時刻を基に、通信相手に対する上りの通信時間と下りの通信時間と内部処理時間とを計算して前記通信相手からの応答時間の測定値を算出する、
ことを特徴とする請求項1に記載の通信装置。
【請求項4】
前記理論値計算部は、過去に測定した前記応答時間の測定値を、前記応答時間の理論値とする、
ことを特徴とする請求項1に記載の通信装置。
【請求項5】
前記送信部は、前記パケットを上りと下りの両方向に送出する、
ことを特徴とする請求項1に記載の通信装置。
【請求項6】
前記送信部が前記パケットを上りと下りの両方向に送出する場合において、前記計算部は、前記通信相手に対する上りの通信時間と下りの通信時間と内部処理時間とを計算して、前記通信相手からの応答時間の測定値を算出する、
ことを特徴とする請求項5に記載の通信装置。
【請求項7】
前記送信部が前記パケットを上りと下りの両方向に送出する場合において、root通信装置である場合に、前記計算部は、前記通信相手に対する上りの通信時間と下りの通信時間と内部処理時間とを計算して、前記通信相手からの応答時間の測定値を算出する、
ことを特徴とする請求項5に記載の通信装置。
【請求項8】
通信タイミングを同期する通信装置であって、
前記通信タイミングを示す通し番号と送受信時刻とを含むパケットを送信する送信部と、
通信相手から送信された前記パケットを受信する受信部と、
を備える通信装置を制御するコンピュータを、
受信した前記パケットおよび受信した前記通し番号と送信時刻を基に、前記通信相手に対する上りの通信時間と下りの通信時間と内部処理時間とを計算して、前記通信相手からの応答時間の測定値を算出する計算部と、
前記通信相手との間の応答時間の理論値を算出する理論値計算部と、
前記応答時間の測定値と前記応答時間の理論値とを比較し、前記通信相手との間の通信状態の異常を検知する異常検知部と、
として機能させることを特徴とするプログラム。
【請求項9】
通信タイミングを同期する通信装置における通信方法であって、
送信部が、前記通信タイミングを示す通し番号と送受信時刻とを含むパケットを送信する送信ステップと、
受信部が、通信相手から送信された前記パケットを受信する受信ステップと、
計算部が、受信した前記パケットおよび受信した前記通し番号と送信時刻を基に、前記通信相手に対する上りの通信時間と下りの通信時間と内部処理時間とを計算して、前記通信相手からの応答時間の測定値を算出する計算ステップと、
理論値計算部が、前記通信相手との間の応答時間の理論値を算出する理論値計算ステップと、
異常検知部が、前記応答時間の測定値と前記応答時間の理論値とを比較し、前記通信相手との間の通信状態の異常を検知する異常検知ステップと、
を含むことを特徴とする通信方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、通信装置、プログラムおよび通信方法に関する。
【背景技術】
【0002】
近年、長距離通信可能で省電力な無線マルチホップネットワークを実現できる通信装置が社会のニーズとして高まっている。この技術は、センサデータなどを通信装置間においてバケツリレー方式で伝送し、遠隔地のデータを収集可能にするものである。この技術は、電源や電力線、通信線がない場所でもデータを収集できる点で優れている。このような、通信装置においては、二者間通信で受領応答の確認機能を備えることが求められる。
【0003】
特許文献1には、二者間通信において、通信装置が受領応答の確認機能を利用して計算機にかかる負荷を軽減しつつ、輻輳制御を行う通信装置が開示されている。特許文献2には、無線マルチホップネットワークにおいて、上下両方向のデータ送信の際、適切なACKビットを通知する通信装置が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2006-254383号公報
【特許文献2】特開2020-39038号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、TSCH(Time Synchronized Channel Hopping:時間同期チャンネルホッピング)技術や高い省電力性が求められる通信装置は、通信経路によって通信所要時間が大きく異なる。したがって、どの通信装置間でいつ障害が発生したかを正確に検知することが困難である。
【0006】
本発明は、上記に鑑みてなされたものであって、無線マルチホップネットワークを構成する通信装置間における障害箇所を正確に検知することを目的とする。
【課題を解決するための手段】
【0007】
実施形態の通信装置は、通信タイミングを同期する通信装置であって、前記通信タイミングを示す通し番号と送受信時刻とを含むパケットを送信する送信部と、通信相手から送信された前記パケットを受信する受信部と、受信した前記パケットおよび受信した前記通し番号と送信時刻を基に、前記通信相手に対する上りの通信時間と下りの通信時間と内部処理時間とを計算して、前記通信相手からの応答時間の測定値を算出する計算部と、前記通信相手との間の応答時間の理論値を算出する理論値計算部と、前記応答時間の測定値と前記応答時間の理論値とを比較し、前記通信相手との間の通信状態の異常を検知する異常検知部と、を備える。
【図面の簡単な説明】
【0008】
図1図1は、第1の実施の形態の通信システムの構成例を示す図である。
図2図2は、通信装置の機能構成を示すブロック図である。
図3図3は、通信装置間のパケット通信にかかる異常検知処理の流れを示すシーケンス図である。
図4図4は、ステップS30における異常検知処理の流れを示すフローチャートである。
図5図5は、第2の実施の形態における通信装置間のパケット通信にかかる異常検知処理の流れを示すシーケンス図である。
図6図6は、ステップS50における受信処理の流れを示すフローチャートである。
図7図7は、ステップS60における異常検知処理の流れを示すフローチャートである。
図8図8は、第3の実施の形態における通信装置間のパケット通信にかかる異常検知処理の流れを示すシーケンス図である。
図9図9は、ステップS80における異常検知処理の流れを示すフローチャートである。
【発明を実施するための形態】
【0009】
(第1の実施の形態)
図1は、第1の実施の形態の通信システムの構成例を示す図である。図1に示すように、本実施形態の通信システムは、コンセントレータ200(集約装置の一例)と、複数の通信装置100~10013と、を備えている。
【0010】
複数の通信装置100~10013は、それぞれ、データロガーを介して接続されるセンサ(または内蔵されるセンサ)により取得されたセンサデータをコンセントレータ200に送信する。複数の通信装置100~10013は同様の構成とすることができるため、区別する必要がない場合は単に通信装置100という場合がある。通信装置100の個数は13に限られず、いくつであってもよい。
【0011】
コンセントレータ200は、複数の通信装置100のそれぞれから送信されたセンサデータを集約する装置(集約装置)である。
【0012】
コンセントレータ200と通信装置100~10013とは、無線マルチホップネットワークを構成する。無線マルチホップネットワーク内の通信は、例えば時分割多重方式で制御される。無線通信方式は、どのような方式でもよいが、例えばIEEE 802.11、および、IEEE 802.15.4などの無線通信方式を適用できる。
【0013】
コンセントレータ200は、無線マルチホップネットワークに加えて、ネットワーク300に接続されてもよい。ネットワーク300は、どのようなネットワーク形態であってもよいが、例えば、インターネットのような広域ネットワーク、広域の閉域ネットワーク、または、企業内ネットワークなどのローカルネットワークである。
【0014】
コンセントレータ200とネットワーク300との間の接続は、イーサネット(登録商標)ケーブルまたは光ファイバ等を用いた有線接続でもよいし、携帯電話網または衛星回線を用いた無線接続でもよい。ネットワーク300への接続は必須ではなく、コンセントレータ200と通信装置100~10013とにより構成される無線マルチホップネットワークのみで通信システムが構成されてもよい。
【0015】
なお、ネットワーク300は、例えば複数のコンセントレータ200からセンサデータを収集し、収集したセンサデータを用いた処理を実行するサーバ装置などに接続されてもよい。
【0016】
ここで、本実施形態の通信システムによるセンサデータの収集処理の概要を説明する。
【0017】
通信装置100にはデータロガーが接続される。データロガーにはさらにセンサが接続される。通信装置100は、例えばポーリングなどの方法でデータロガーから新しいセンサデータを得る。このとき、通信装置100は、センサデータ自体と、そのセンサデータのセンシング時刻のデータとを得る。センシング時刻は、例えばセンサデータがデータロガーに記憶された時刻であるが、これに限られない。例えばセンサのプリヒートが行われる場合は、センシング時刻は、プリヒートを開始した時刻であってもよい。プリヒートは、例えば、センサからデータを得る前に、センサに電源を供給した状態で一定時間センサを暖める処理である。例えば、プリヒートの開始が10:00:00であり、プリヒートの完了が10:00:20であり、データロガーにセンサデータが記憶された時刻が10:00:20であったとする。この場合、データロガーには、10:00:00がセンシング時刻として記憶される。
【0018】
通信装置100は、これらの2つのデータ(センサデータ、センシング時刻)に相当するデータを無線により送信する必要があるが、可能な限りデータ量を減らすことが望ましい。例えば、センシング時刻を示すデータのデータ量を減らすことが望ましい。なお、以下では例えば“2021/08/23 11:30:00.000”などのように、日常生活で用いる時刻(後述の実時刻)を表す形式のデータを時刻データという場合がある。
【0019】
本実施形態の通信装置100は、時刻データの代わりに、時分割多重方式の通信を実現するために既に無線マルチホップネットワーク内で使用している通し番号(通信タイミングを示す番号)を、センシング時刻を示すデータとして送信する。
【0020】
時分割多重方式としては、例えば、TSCH(Time-Slotted Channel Hopping)などが適用できる。通信タイミングを示す通し番号は、例えば、タイムスロット番号(ASN:Absolute Slot Number)、スロットフレーム番号、および、スーパーフレーム番号などである。
【0021】
例えば通信装置100は、毎タイムスロットの始端でデータロガーに対してポーリングを行い、新しいセンサデータが得られているかを確認する。新しいデータが存在する場合は、通信装置100は、得られたセンサデータを現在の通し番号とともに無線で送信する。
【0022】
また、他の通信装置100(外部通信装置の一例)から送信されたセンサデータをコンセントレータ200に中継する場合は、通信装置100は、同じ通し番号のセンサデータをまとめて送信してもよい。具体的には、無線で送信するメッセージの中に通し番号は1回のみ入れ、その通し番号に対して複数のセンサデータを対応づけたメッセージを生成する。これにより、送信するデータ量をさらに減らすことができる。
【0023】
何らかの理由でデータロガーの時刻が大きくずれた場合、時刻データをそのまま送信する構成では、センサデータが記憶された正しい時刻が不明確になる可能性がある。本実施形態のように、センシング時刻を表すデータとして通し番号を送信する構成であれば、受信した通し番号を時刻に変換することにより、センサデータが記憶された正しい時刻を知ることができる。
【0024】
例えば、データロガーは、毎正時0分および30分にセンシングを行い、センサデータを内部に備えられる記憶媒体(以下、内部メモリ)に記憶するように設定されているものとする。データロガーが管理する時刻が2分ずれたことにより、実際には毎正時2分と32分にセンシングをしていたとしても、データロガーは時刻がずれたことを知ることはできない。このため、データロガーは、毎正時0分または30分を示す時刻データをセンサデータに対応づけて送信する。毎正時0分または30分を示す時刻データが対応づけられたセンサデータを受信した装置は、実際のセンシング時刻が毎正時2分または32分であることを知ることはできない。
【0025】
一方、本実施形態によれば、無線マルチホップネットワークで使用する通信方式による通信タイミングを示す通し番号が、時刻データの代わりに送信される。従って、ポーリング間隔(指定された時間間隔の一例)、または、通信タイミングを示す通し番号が表す時間間隔(例えばタイムスロット長)が適切に設定されれば、通し番号に対応する時刻と、実際のセンシングの時刻との誤差を最小限にすることができる。例えばポーリング間隔または通信タイミングを示す通し番号が表す時間間隔が30秒である場合、実際のセンシング時刻に対する送信したセンシング時刻の誤差は、30秒以内とすることができる。
【0026】
次に、通信装置100の機能構成について説明する。
【0027】
図2は、通信装置100の機能構成を示すブロック図である。通信装置100は、図2に例示されるように、送信部101と、受信部102と、記憶部103と、制御部107と、を備える。
【0028】
送信部101は、所定の通信インタフェースを用いて他の通信装置100やコンセントレータ200との間でデータ送信を行なう。送信部101は、通し番号と送受信時刻とを含むパケットを、通信相手となる他の通信装置100やコンセントレータ200に対して送信する。加えて、送信部101は、ネットワーク情報(通信装置100のIDなど)やセンサデータなどの付加情報も併せて送信する。
【0029】
受信部102は、所定の通信インタフェースを用いて他の通信装置100から送信されたデータを受信する。受信部102は、通信相手となる他の通信装置100から送信されたパケットを受信する。
【0030】
所定の通信インタフェースは、920MHz帯の無線通信方式やPLC通信方式、4G/LTE通信方式、5G通信方式、WiMAX通信方式などのうち少なくともひとつを含む通信方式を具備する無線マルチホップネットワークを介して通信する通信インタフェースである。所定の通信インタフェースは、例えば、無線チップによって実現される。所定の通信インタフェースは、通信装置100と、他の通信装置100やコンセントレータ200との通信を可能にする。
【0031】
記憶部103は、各種情報(各種プログラム、各種データ)を記憶し、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ等の半導体メモリ素子、ハードディスク等によって実現される。この記憶部103は、送信部101が送信する時に、通し番号と送信時刻とを記憶する。また、記憶部103は、通信装置100のプログラムを記憶する。
【0032】
制御部107は、各種演算処理を実行し、例えば、CPU(Central Processing Unit)によって実現される。制御部107は、CPUがプログラムに従って動作することによって、機能構成として、例えば、計算部104と、理論値計算部105と、異常検知部106と、を備える。
【0033】
計算部104は、受信したパケットおよび記憶部103に記憶されているデータを基に、通信相手に対する上りの通信時間と下りの通信時間、通信装置100の内部処理時間の3つを計算して、通信相手からの応答時間の測定値を算出する。
【0034】
理論値計算部105は、応答時間の理論値を算出する。
【0035】
異常検知部106は、応答時間の理論値と応答時間の測定値とを比較し、応答時間の理論値と応答時間の測定値とが例えば大きくずれていた場合に、通信状態に何らかの異常が生じていると検知する。
【0036】
次に、通信装置100間のパケット通信にかかる異常検知処理の流れについて説明する。
【0037】
図3は、通信装置100間のパケット通信にかかる異常検知処理の流れを示すシーケンス図である。図3は、一例として、root通信装置となる通信装置100と、通信装置100と、の間におけるシーケンスを示したものである。
【0038】
まず、root通信装置となる通信装置100は、通信装置100に対して、通し番号1を含むパケット1を送信する(ステップS201)。なお、ステップS201では、通信装置100は、通し番号1の他にネットワーク情報(通信装置100のIDなど)やセンサデータなどの付加情報も併せて送信する。
【0039】
通信装置100は、パケット1の送信前あるいは送信後に、通し番号1と送信時刻t0とを紐づけた状態で、通信装置100の記憶部103に記憶する(ステップS202)。なお、パケット1の送信タイミングは、例えば特許文献2で開示されているように、各通信装置100が互いに示し合わせたタイミング(スロット)であってもよい。
【0040】
通信装置100は、通信装置100からパケット1を受信すると、通し番号1と通信装置100の受信時刻t1と送信時刻t2とのデータを含めたパケット2を作成し、通信装置100に対して、送信する(ステップS203)。なお、ステップS203では、通信装置100は、通し番号1の他にネットワーク情報(通信装置100のIDなど)やセンサデータなどの付加情報も併せて送信する。
【0041】
通信装置100は、パケット2の送信前あるいは送信後に、通し番号1と通信装置100の送信時刻t2とを、通信装置100の記憶部103に記憶する(ステップS204)。
【0042】
通信装置100は、通信装置100からパケット2を受信すると、異常検知処理を実行する(ステップS30)。
【0043】
次に、ステップS30における異常検知処理の流れについて説明する。
【0044】
図4は、ステップS30における異常検知処理の流れを示すフローチャートである。図4に示すように、root通信装置となる通信装置100は、通信装置100からパケット2を受信すると、図4に示す処理フローを開始する(ステップS301)。
【0045】
通信装置100の計算部104は、受信後、通信装置100の記憶部103から通し番号1に紐づく送信時刻t0を取得する(ステップS302)。
【0046】
通信装置100の計算部104は、送信時刻t0の取得に成功した場合(ステップS302のYes)、通信装置100の受信時刻t1と送信時刻t2から通信装置100の内部処理時間d0(d0=t2-t1)を求める(ステップS303)。
【0047】
なお、通信装置100の計算部104は、送信時刻t0の取得に失敗した場合(ステップS302のNo)、ステップS30における処理を終了する。
【0048】
次に、通信装置100の計算部104は、取得した送信時刻t0と通信装置100からの受信時刻t1とを用いて、下り通信時間d1(d1=t1-t0)を計算する(ステップS304)。
【0049】
また、通信装置100の計算部104は、通信装置100の送信時刻t2と通信装置100からパケット2を受信した時刻t3を用いて、上り通信時間d2(d2=t3-t2)を計算する(ステップS305)。
【0050】
そして、通信装置100の計算部104は、計算した下り通信時間d1と上り通信時間d2と通信装置100の内部処理時間d0とを合計することで、通信装置100と通信装置100との間の応答時間の測定値r0(r0=d0+d1+d2)を計算する(ステップS306)。
【0051】
その後、通信装置100の理論値計算部105は、通信装置100と通信装置100との間の応答時間の理論値s0を計算する(ステップS307)。
【0052】
最後に、通信装置100の異常検知部106は、応答時間の理論値s0と応答時間の測定値r0とを比較する(ステップS308)。
【0053】
通信装置100の異常検知部106は、応答時間の理論値s0と応答時間の測定値r0とを比較することで、例えば大きくずれていた場合に通信状態に何らかの異常が生じていると検知することができる。
【0054】
このように、第1の実施の形態の通信装置によれば、送信するタイミングを一意に定められる通信装置であれば、あらかじめ応答時間の理論値s0を計算することができるため、算出した応答時間の測定値r0と比較することで、例えば大きくずれていた場合に通信状態に何らかの異常が生じていると検知できる。すなわち、本実施形態によれば、無線マルチホップネットワークを構成する通信装置間における障害箇所を正確に検知することができる。
【0055】
なお、本実施形態においては、応答時間の理論値s0を計算するようにしたが、これに限るものではなく、応答時間の理論値s0の代わりに過去に測定した応答時間の測定値と算出した応答時間の測定値r0とを比較するようにしてもよい。これによっても、通信状況の変化を検知することができる。
【0056】
(第2の実施の形態)
次に、第2の実施の形態について説明する。
【0057】
第2の実施の形態は、上下方向通信(ホップ数が2つの場合)に適用するシーケンスである点が、二者間通信(ホップ数が1の場合)でのシーケンスである第1の実施の形態と異なる。以下、第2の実施の形態の説明では、第1の実施の形態と同一部分の説明については省略し、第1の実施の形態と異なる箇所について説明する。
【0058】
図5は、第2の実施の形態における通信装置100間のパケット通信にかかる異常検知処理の流れを示すシーケンス図である。図5は、一例として、root通信装置となる通信装置100と、通信装置100と、通信装置10010と、の間におけるシーケンスを示したものである。なお、本実施形態においては、ホップ数が2つの場合について説明するが、ホップ数は2つ以上であってもよい。
【0059】
まず、root通信装置となる通信装置100は、第1の実施の形態と同様に、通信装置100に対して、通し番号1を含むパケット1を送信する(ステップS201)。なお、ステップS201では、通信装置100は、通し番号1の他にネットワーク情報(通信装置100のIDなど)やセンサデータなどの付加情報も併せて送信する。
【0060】
通信装置100は、第1の実施の形態と同様に、パケット1の送信前あるいは送信後に、通し番号1と送信時刻t0とを紐づけた状態で、通信装置100の記憶部103に記憶する(ステップS202)。なお、パケット1の送信タイミングは、例えば特許文献2で開示されているように、各通信装置100が互いに示し合わせたタイミング(スロット)であってもよい。
【0061】
通信装置100は、通信装置100からパケット1を受信すると、通し番号1と通信装置100の受信時刻t1と送信時刻t2とのデータを含めたパケット2を作成し、通信装置100および通信装置10010に対して、送信する(ステップS203)。なお、ステップS203では、通信装置100は、通し番号1の他にネットワーク情報(通信装置100のIDなど)やセンサデータなどの付加情報も併せて送信する。
【0062】
第1の実施の形態と同様に、通信装置100は、パケット2の送信前あるいは送信後に、通し番号1と通信装置100の送信時刻t2とを、通信装置100の記憶部103に記憶する(ステップS204)。
【0063】
通信装置100は、第1の実施の形態と同様に、通信装置100からパケット2を受信すると、異常検知処理を実行する(ステップS30)。なお、ステップS30における異常検知処理は、第1の実施の形態と同様であるので、詳細な説明は省略する。
【0064】
一方、通信装置10010は、通信装置100からパケット2を受信すると、通し番号1と通信装置10010の受信時刻t4と送信時刻t5とのデータを含めたパケット3を作成し、通信装置100に対して、送信する(ステップS401)。なお、ステップS401では、通信装置10010は、通し番号1の他にネットワーク情報(通信装置100のIDなど)やセンサデータなどの付加情報も併せて送信する。
【0065】
通信装置10010は、パケット3の送信前あるいは送信後に、通し番号1と通信装置10010の送信時刻t5とを、通信装置10010の記憶部103に記憶する(ステップS402)。
【0066】
通信装置100は、通信装置10010からパケット3を受信すると、受信処理を実行する(ステップS50)。
【0067】
次に、ステップS50における受信処理の流れについて説明する。
【0068】
図6は、ステップS50における受信処理の流れを示すフローチャートである。図6に示すように、通信装置100は、通信装置10010からパケット3を受信すると、図6に示す処理フローを開始する(ステップS501)。
【0069】
通信装置100の計算部104は、受信後、通信装置100の記憶部103から通し番号1に紐づく送信時刻t2を取得する(ステップS503)。
【0070】
通信装置100の計算部104は、送信時刻t2の取得に成功した場合(ステップS502のYes)、通信装置10010の受信時刻t4と送信時刻t5から通信装置10010の内部処理時間d3(d3=t5-t4)を求める(ステップS503)。
【0071】
なお、通信装置100の計算部104は、送信時刻t2の取得に失敗した場合(ステップS502のNo)、ステップS50における受信処理を終了する。
【0072】
次に、通信装置100の計算部104は、取得した送信時刻t2と通信装置10010からの受信時刻t4とを用いて、下り通信時間d4(d4=t4-t2)を計算する(ステップS504)。
【0073】
また、通信装置100の計算部104は、通信装置10010の送信時刻t5と通信装置10010からパケット3を受信した時刻t6とを用いて、上り通信時間d5(d5=t6-t5)を計算する(ステップS505)。
【0074】
そして、通信装置100の計算部104は、計算した通信装置10010の内部処理時間d3と下りの通信時間d4、上りの通信時間d5を合計することで、通信装置100と通信装置10010との間の応答時間の測定値r1(r1=d3+d4+d5)を計算し(ステップS506)、ステップS50における処理を終了する。
【0075】
図5に戻り、通信装置100は、ステップS50における処理を終了すると、通し番号1と通信装置10010からの受信時刻t6、通信装置100の送信時刻t7、通信装置10010の受信時刻t4、通信装置10010の送信時刻t5、応答時間r1をパケット2-1に含ませてブロードキャストし、root通信装置である通信装置100に送信する(ステップS403)。
【0076】
通信装置100は、パケット2-1の送信前あるいは送信後に、通し番号1と通信装置100の送信時刻t7とを、通信装置100の記憶部103に記憶する(ステップS404)。
【0077】
なお、通信装置10010は、通信装置100からパケット2-1を受信する。しかし、通信装置は、ネットワーク情報に基づいて自身が作成した受信パケットであるか否か、すなわち自身宛であるかを判断している。そのため、通信装置10010は、パケット2-1が自身宛ではないと判断するため、処理は行わない。
【0078】
一方、通信装置100は、通信装置100からパケット2-1を受信すると、異常検知処理を実行する(ステップS60)。
【0079】
次に、ステップS60における異常検知処理の流れについて説明する。
【0080】
図7は、ステップS60における異常検知処理の流れを示すフローチャートである。図7に示すように、root通信装置となる通信装置100は、通信装置100からパケット2-1を受信すると、図7に示す処理フローを開始する(ステップS601)。
【0081】
通信装置100の計算部104は、受信後、通信装置100の記憶部103から通し番号1に紐づく送信時刻t0を取得する(ステップS602)。
【0082】
通信装置100の計算部104は、送信時刻t0の取得に成功した場合(ステップS602のYes)、通信装置10010の受信時刻t4と通信装置10010の送信時刻t5とt5から通信装置10010の内部処理時間d3(d3=t5-t4)を求める(ステップS603)。
【0083】
なお、通信装置100の計算部104は、送信時刻t0の取得に失敗した場合(ステップS602のNo)、ステップS60における処理を終了する。
【0084】
次に、通信装置100の計算部104は、取得した送信時刻t0と通信装置10010からの受信時刻t4とを用いて、下り通信時間d6(d6=t4-t0)を計算する(ステップS604)。
【0085】
また、通信装置100の計算部104は、通信装置10010の送信時刻t5と通信装置10010の情報を含むパケット2-1を受信した時刻t8とを用いて、上り通信時間d7(d7=t8-t5)を計算する(ステップS605)。
【0086】
そして、通信装置100の計算部104は、計算した下り通信時間d6と上り通信時間d7、通信装置10010の内部処理時間d3を合計することで、root通信装置である通信装置100と通信装置10010との間の応答時間の測定値r2(r2=d3+d6+d7)を計算する(ステップS606)。
【0087】
その後、通信装置100の理論値計算部105は、通信装置100と通信装置10010との間の応答時間の理論値s2を計算する(ステップS607)。
【0088】
そして、通信装置100の異常検知部106は、応答時間の理論値s2と応答時間の測定値r2とを比較する(ステップS608)。
【0089】
通信装置100の異常検知部106は、応答時間の理論値s2と応答時間の測定値r2とを比較することで、例えば大きくずれていた場合に通信状態に何らかの異常が生じていると検知することができる。
【0090】
また、通信装置100の計算部104は、通信装置100と通信装置10010との間の応答時間の理論値s1を計算する(ステップS609)。
【0091】
最後に、通信装置100の異常検知部106は、応答時間の理論値s1と応答時間の測定値r1とを比較する(ステップS610)。
【0092】
通信装置100の異常検知部106は、応答時間の理論値s1と応答時間の測定値r1とを比較することで、例えば大きくずれていた場合に通信状態に何らかの異常が生じていると検知することができる。
【0093】
このように、第2の実施の形態の通信装置によれば、送信するタイミングを一意に定められる通信装置であれば、あらかじめ応答時間の理論値s0を計算することができるため、算出した応答時間の測定値r0と比較することで、例えば大きくずれていた場合に通信状態に何らかの異常が生じていると検知できる。すなわち、本実施形態によれば、無線マルチホップネットワークを構成する通信装置間における障害箇所を正確に検知することができる。
【0094】
なお、本実施形態においては、応答時間の理論値s0を計算するようにしたが、これに限るものではなく、応答時間の理論値s0の代わりに過去に測定した応答時間の測定値と算出した応答時間の測定値r0とを比較するようにしてもよい、これによっても、通信状況の変化を検知することができる。
【0095】
また、本実施形態においては、通信装置100はパケットを上りと下りの両方向に送出したことで、root通信装置である通信装置100と通信装置10010との両方にパケットが届くことになる。このように送信部101がパケットを上りと下りの両方向に送出する場合において、計算部104は、通信相手に対する上りの通信時間と下りの通信時間と内部処理時間とを計算して、通信相手からの応答時間の測定値を算出する。すなわち、root通信装置である通信装置100が、届いたパケットを活用して、速やかに通信装置100と通信装置100との間の上りと下りの通信時間と通信装置100の内部処理時間とを計算することができる。
【0096】
(第3の実施の形態)
次に、第3の実施の形態について説明する。
【0097】
第3の実施の形態は、上りと下りの通信時間、内部処理時間を計算し、応答時間の測定値を求める処理をroot通信装置のみで行う点が、第2の実施の形態と異なる。以下、第3の実施の形態の説明では、第1の実施の形態または第2の実施の形態と同一部分の説明については省略し、第1の実施の形態または第2の実施の形態と異なる箇所について説明する。
【0098】
図8は、第3の実施の形態における通信装置100間のパケット通信にかかる異常検知処理の流れを示すシーケンス図である。図8は、一例として、root通信装置となる通信装置100と、通信装置100と、通信装置10010と、の間におけるシーケンスを示したものである。なお、本実施形態においては、ホップ数が2つの場合について説明するが、ホップ数は2つ以上であってもよい。
【0099】
図8に示すように、本実施形態においては、通信装置100は、通信装置10010からステップS401において送信されたパケット3を受信しても、第2の実施の形態で説明したステップS50の処理は実行せずに、ステップS403に進む。
【0100】
また、本実施形態においては、root通信装置となる通信装置100は、通信装置100からパケット2-1を受信すると、異常検知処理を実行する(ステップS80)。
【0101】
次に、ステップS80における異常検知処理の流れについて説明する。
【0102】
図9は、ステップS80における異常検知処理の流れを示すフローチャートである。図9に示すように、root通信装置となる通信装置100は、通信装置100からパケット2-1を受信すると、図9に示す処理フローを開始する(ステップS601)。
【0103】
通信装置100の計算部104は、受信後、通信装置100の記憶部103から通し番号1に紐づく送信時刻t0を取得する(ステップS602)。
【0104】
通信装置100の計算部104は、送信時刻t0の取得に成功した場合(ステップS602のYes)、通信装置10010の受信時刻t4と通信装置10010の送信時刻t5とt5から通信装置10010の内部処理時間d3(d3=t5-t4)を求める(ステップS603)。
【0105】
なお、通信装置100の計算部104は、送信時刻t0の取得に失敗した場合(ステップS602のNo)、ステップS60における処理を終了する。
【0106】
次に、通信装置100の計算部104は、第2の実施の形態の図6で説明したステップS504の処理と同様に、取得した通信装置100の送信時刻t2と通信装置10010からの受信時刻t4とを用いて、下り通信時間d4(d4=t4-t2)を計算する(ステップS804)。
【0107】
また、通信装置100の計算部104は、第2の実施の形態の図6で説明したステップS505の処理と同様に、通信装置10010の送信時刻t5と通信装置10010からパケット3を受信した時刻t6とを用いて、上り通信時間d5(d5=t6-t5)を計算する(ステップS805)。
【0108】
そして、通信装置100の計算部104は、第2の実施の形態の図6で説明したステップS506の処理と同様に、計算した通信装置10010の内部処理時間d3と下りの通信時間d4、上りの通信時間d5を合計することで、通信装置100と通信装置10010との間の応答時間の測定値r1(r1=d3+d4+d5)を計算する(ステップS806)。
【0109】
以降のステップS604~610の処理は、第2の実施の形態と同様であるので、詳細な説明は省略する。
【0110】
このように、第3の実施の形態の通信装置によれば、送信するタイミングを一意に定められる通信装置であれば、あらかじめ応答時間の理論値s0を計算することができるため、算出した応答時間の測定値r0と比較することで、例えば大きくずれていた場合に通信状態に何らかの異常が生じていると検知できる。
【0111】
なお、本実施形態においては、応答時間の理論値s0を計算するようにしたが、これに限るものではなく、応答時間の理論値s0の代わりに過去に測定した応答時間の測定値と算出した応答時間の測定値r0とを比較するようにしてもよい、これによっても、通信状況の変化を検知することができる。すなわち、本実施形態によれば、無線マルチホップネットワークを構成する通信装置間における障害箇所を正確に検知することができる。
【0112】
また、本実施形態においては、通信装置100はパケットを上りと下りの両方向に送出したことで、root通信装置である通信装置100と通信装置10010との両方にパケットが届くことになる。このように送信部101がパケットを上りと下りの両方向に送出する場合であって、root通信装置である場合に、計算部104は、通信相手に対する上りの通信時間と下りの通信時間と内部処理時間とを計算して、通信相手からの応答時間の測定値を算出する。すなわち、root通信装置である通信装置100が、届いたパケットを活用して、速やかに通信装置100と通信装置100との間の上りと下りの通信時間と通信装置100の内部処理時間とを計算することができる。
【0113】
また、本実施形態によれば、第1の実施の形態または第2の実施の形態に比べて、パケットに含ませる情報量が少ないため、トラフィック量を減らすことができる。
【0114】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0115】
100 通信装置
101 送信部
102 受信部
103 記憶部
104 計算部
105 理論値計算部
106 異常検知部
図1
図2
図3
図4
図5
図6
図7
図8
図9