(57)【要約】【課題】低消費電力で稼働させることができる無線通信システムの時刻同期方法及びデータ収集方法を提供する。【解決手段】本発明の無線通信システムの時刻同期方法は、子機が自身の内部時計に基づいて起動すると同時にスリープモードから送信モードに切り替わり、センサデータを取得する第1ステップと、子機がセンサデータを親機に送信し、その後一定時間受信モードに切り替わる第2ステップと、親機がセンサデータを受信した場合、子機に対して実時間に基づいた時刻補正信号を送信する第3ステップと、子機が前記受信モード中に時刻補正信号を受信した場合、内部時計を補正すると共にスリープモードに切り替わる第4ステップと、子機が受信モード中に時刻補正信号を受信しなかった場合、受信モードから送信モードに切り替わり、センサデータを親機に再送信し、受信モードに切り替わる第5ステップを少なくとも備える。【選択図】図5
2019009626.tif 000002
【特許請求の範囲】
【請求項１】
親機と、センサに接続された複数の子機とを備える無線通信システムの時刻同期方法において、
前記子機が自身の内部時計に基づいて起動すると同時にスリープモードから送信モードに切り替わり、センサデータを取得する第1ステップと、
前記子機が前記センサデータを前記親機に送信し、その後一定時間受信モードに切り替わる第2ステップと、
前記親機が前記センサデータを受信した場合、前記子機に対して実時間に基づいた時刻補正信号を送信する第3ステップと、
前記子機が前記受信モード中に前記時刻補正信号を受信した場合、前記内部時計を補正すると共にスリープモードに切り替わる第4ステップと、
前記子機が前記受信モード中に前記時刻補正信号を受信しなかった場合、前記受信モードから送信モードに切り替わり、前記センサデータを前記親機に再送信し、受信モードに切り替わる第5ステップを少なくとも備えることを特徴とする無線通信システムの時刻同期方法。
【請求項２】
前記第2ステップにおいて、前記子機の受信モード中に他の子機の起動時刻になった場合、当該受信モード中の子機がスリープモードに切り替わることを特徴とする請求項1に記載の無線通信システムの時刻同期方法。
【請求項３】
前記第5ステップにおいて、前記時刻補正信号を受信しなかった子機がランダム時間経過後に前記センサデータを前記親機に再送信することを特徴とする請求項1又は2に記載の無線通信システムの時刻同期方法。
【請求項４】
前記無線通信システムに子機が新しく追加された場合、
前記追加された子機が前記時刻補正信号を要求する信号を前記親機に送信するステップと、
前記親機が前記要求信号を受け取った場合、前記追加された子機に対して前記時刻補正信号を送信するステップと、
前記追加された子機が前記時刻補正信号を受信し、前記内部時計を補正すると共にスリープモードに切り替わるステップを備えることを特徴とする請求項1〜3のいずれか一項に記載の無線通信システムの時刻同期方法。
【請求項５】
親機と、センサに接続された複数の子機とを備える無線通信システムのデータ収集方法において、
複数の子機のうち親機に最も近い子機が親機にセンサデータを転送すると共に当該センサデータ転送後の子機がスリープモード又は電源オフに切り替わる第1−1ステップと、
第1−1ステップと同時に、親機に最も近い子機以外の複数の子機のうち距離が最も近い2つの子機同士でコネクションを確立し、当該コネクションを確立した2つの子機のうち親機に遠い方の子機が近い方の子機へセンサデータを転送すると共に当該センサデータ転送後の子機がスリープモード又は電源オフに切り替わる第1−2ステップと、
スリープモード又は電源オフに切り替わっていない複数の子機のうち親機に最も近い子機が親機にセンサデータを転送すると共に当該センサデータ転送後の子機がスリープモード又は電源オフに切り替わる第2−1ステップと、
第2−1ステップと同時に、スリープモード又は電源オフに切り替わっていない複数の子機のうち距離が最も近い2つの子機同士でコネクションを確立し、当該コネクションを確立した2つの子機のうち親機に遠い方の子機が近い方の子機へセンサデータを転送すると共に当該センサデータ転送後の子機がスリープモード又は電源オフに切り替わる第2−2ステップとを備えており、
以後、全ての子機が親機にセンサデータを転送してスリープモード又は電源オフになるまで第2−1ステップ及び第2−2ステップを繰り返し行なうことを特徴とする無線通信システムのデータ収集方法。
【請求項６】
親機と、センサに接続された複数の子機とを備える無線通信システムのデータ収集方法において、
前記複数の子機が自身の内部時計に基づいて起動すると同時にスリープモード又は電源オフから送信モードに切り替わり、センサデータを取得する第1ステップと、
複数の子機のうち親機に最も近い子機Aが親機にセンサデータを転送し、次に前記子機Aに対して親機が実時間に基づいた時刻補正信号を送信し、次に前記時刻補正信号を受信した前記子機Aが自身の内部時計を補正すると共にスリープモード又は電源オフに切り替わる第2−1ステップと、
第2−1ステップと同時に、前記子機A以外の複数の子機のうち距離が最も近い2つの子機同士でコネクションを確立し、当該コネクションを確立した2つの子機のうち親機に遠い方の子機B1が近い方の子機B2へセンサデータを転送し、次に前記近い方の子機B2が自身の内部時計に基づいた時刻補正信号を前記遠い方の子機B1に送信し、次に前記時刻補正信号を受信した前記遠い方の子機B1が自身の内部時計を補正すると共にスリープモード又は電源オフに切り替わる第2−2ステップと、
スリープモード又は電源オフに切り替わっていない複数の子機のうち親機に最も近い子機Cが親機にセンサデータを転送し、次に前記子機Cに対して親機が実時間に基づいた時刻補正信号を送信し、次に前記時刻補正信号を受信した前記子機Cが自身の内部時計を補正すると共にスリープモード又は電源オフに切り替わる第3−1ステップと、
第3−1ステップと同時に、スリープモード又は電源オフに切り替わっていない複数の子機のうち距離が最も近い2つの子機同士でコネクションを確立し、当該コネクションを確立した2つの子機のうち親機に遠い方の子機D1が近い方の子機D2へセンサデータを転送し、次に前記近い方の子機D2が自身の内部時計に基づいた時刻補正信号を前記遠い方の子機D1に送信し、次に前記時刻補正信号を受信した前記遠い方の子機D1が自身の内部時計を補正すると共にスリープモード又は電源オフに切り替わる第3−2ステップとを備えており、
以後、全ての子機が親機にセンサデータを転送してスリープモード又は電源オフになるまで第3−1ステップ及び第3−2ステップを繰り返し行なうことを特徴とする無線通信システムのデータ収集方法。
【請求項７】
親機と、センサに接続された複数の子機とを備える無線通信システムのデータ収集方法において、
前記複数の子機が自身の内部時計に基づいて起動すると同時にスリープモード又は電源オフから送信モードに切り替わり、センサデータを取得する第1ステップと、
複数の子機のうち親機に最も近い子機Aが親機にセンサデータを転送し、次に前記子機Aに対して親機が実時間に基づいた時刻補正信号を送信し、次に前記時刻補正信号を受信した前記子機Aが自身の内部時計を補正すると共にスリープモード又は電源オフに切り替わる第2−1ステップと、
第2−1ステップと同時に、前記子機A以外の複数の子機のうち2つの子機同士でコネクションを確立し、当該コネクションを確立した2つの子機のうち一方の子機B1が他方の子機B2へセンサデータを転送し、次に前記子機B2が自身の内部時計に基づいた時刻補正信号を前記子機B1に送信し、次に前記時刻補正信号を受信した前記子機B1が自身の内部時計を補正すると共にスリープモード又は電源オフに切り替わる第2−2ステップと、
スリープモード又は電源オフに切り替わっていない複数の子機のうち親機に最も近い子機Cが親機にセンサデータを転送し、次に前記子機Cに対して親機が実時間に基づいた時刻補正信号を送信し、次に前記時刻補正信号を受信した前記子機Cが自身の内部時計を補正すると共にスリープモード又は電源オフに切り替わる第3−1ステップと、
第3−1ステップと同時に、スリープモード又は電源オフに切り替わっていない複数の子機のうち2つの子機同士でコネクションを確立し、当該コネクションを確立した2つの子機のうち一方の子機D1が他方の子機D2へセンサデータを転送し、次に前記子機D2が自身の内部時計に基づいた時刻補正信号を前記子機D1に送信し、次に前記時刻補正信号を受信した前記子機D1が自身の内部時計を補正すると共にスリープモード又は電源オフに切り替わる第3−2ステップとを備えており、
以後、全ての子機が親機にセンサデータを転送してスリープモード又は電源オフになるまで第3−1ステップ及び第3−2ステップを繰り返し行なうことを特徴とする無線通信システムのデータ収集方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、低消費電力で稼働させることができる無線通信システムの時刻同期方法及びデータ収集方法に関する。
【背景技術】
【０００２】
近年、農業従事者の高齢化が進み、早急な知識や技術の伝承が必要とされている（非特許文献1）。我々はそれらを手助けするための稲作用フィールドサーバと、それに付随するアプリケーションの開発を行ってきた（非特許文献2）。フィールドサーバは電源の無い圃場に設置されるため、田植えから稲刈りまでの6か月間をモバイルバッテリーで稼働することが望まれている。それを実現するためは、フィールドサーバの低消費電力化が必須である。
現在市販されている製品は、フィールドサーバから取得したセンサデータ等をクラウドに保存する際に、3G回線が利用されている（非特許文献3、4）。しかし、フィールドサーバの台数分、3G回線の月額使用料が必要であり、運用コストを増加させるため、フィールドサーバの導入障壁となりうる。そこで我々は、運用コストの削減を行うために、回線使用料の必要がない、Wi-SUN、LoRa等の基本通信特性を実圃場で調査した。結果、稲作圃場ではLoRaが適していることが判明した（非特許文献5〜7）。
【０００３】
また、電源の無い環境で6か月間稼働させるためには、センサデータ取得および通信を行っていない間、電源をOFFにする必要がある。そのため、間欠動作通信プロトコルおよび時刻同期技術が必要である。時刻同期技術については、広く研究が行われている。 
電波時計を用いた時刻同期手法が提案されている（非特許文献8）。この手法は、時刻合わせを行うために3分間程度の時間を要する。そのため、稼働時間が長くなり、低消費電力の実現は困難である。また、受信した信号(タイムコード)をフィールドサーバ内で扱える形式への変換を必要とするが、メモリの少ないPICマイコンにこの処理を行うプログラムは書き込むことができない。そのため、稲作用フィールドサーバに用いることは困難である。
GPSを用いて時刻同期を行う手法が提案されている（非特許文献9）。この手法を用いるには、各フィールドサーバすべてにGPS受信モジュールを搭載する必要があり、導入時における初期費用の増加につながる。このため、導入障壁を下げることが望まれる稲作用フィールドサーバに用いることは困難である。
【０００４】
RBS(Reference Broadcast Synchronization)は、無線ネットワークの時刻同期手法として提案されている（非特許文献10）。ある任意のブロードキャストパケットを受け取ったノード同士で時刻情報を交換することにより時刻同期を行う。しかしRBSは受信ノード数の増加に比例して交換する情報量も増えるため、消費電力を増加させる問題がある。そのため、稲作用フィールドサーバに適用することは困難である。
RBSの改善方法としてTPSN(Timing-sync Protocol for Sensor Networks)が提案されている（非特許文献11）。TPSNは、親機をトップとした木構造を形成し、親機(ルートノード)は子ノードと時刻同期を行う。その子ノードは、さらに下位の子ノードと時刻同期を行う。このように全体を通して時刻を同期する仕組みである。この手法では、時刻同期に長い時間を必要とするため、低消費電力の稼働を望まれる稲作用フィールドサーバには適さない方法である。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】農林水産省: 農業労働力に関する統計，農林水産省(オンライン)，入手先<http://www.maff.go.jp/j/tokei/sihyo/data/08.html>
【非特許文献２】豊田 真治，寺田 恵太郎，高田 裕也，平田 忠明，袖 美樹子:LoRaを用いた圃場管理用ネットワーク構築手法の検討，電子情報通信学会技術研究報告, NS2017-11，pp．61-66
【非特許文献３】富士通: FUJITSU Intelligent Society Solution 食・農クラウド Akisai(秋彩), 富士通(オンライン），入手先 <http://jp.fujitsu.com/solutions/cloud/agri/>
【非特許文献４】ベジタリア株式会社: スマート農業における水稲の水位・水温を計測する水田センサ  PaddyWatch, ベジタリア株式会社(オンライン), 入手先 <http://field-server.jp/paddywatch/>
【非特許文献５】Wi-SUN Alliance: Home - Wi SUN Alliance, Wi-SUN Allian-ce(online), from<https://www.wi-sun.org/index.php/en/>
【非特許文献６】LoRa Alliance: Home, LoRa Alliance(online), from<https://www.lora-alliance.org>
【非特許文献７】川上 悠太，豊田 真治，寺田 恵太郎，袖 美樹子: Sub-GHz無線を使用した圃場間通信の検討，電子情報通信学会技術研究報告，NS2016-138，pp.107-112
【非特許文献８】渡辺 貴文，森戸 貴，南 正輝，森川 博之: 電波時計を用いた同期型バッテリレス無線センサネットワークの設計と実装， 情報処理学会研究報告モバイルコンピューティングとユビキタス通信，vol.2007，No.44，pp.113-118(2007)
【非特許文献９】ポジション株式会社: 時刻基準としてのGPS受信について，ポジション株式会社(オンライン)，入手先<http://www.posit.co.jp/mission/pdf/1998.6.pdf>
【非特許文献１０】J. Elson, L. Girod and D. Estrin: Fine-Grained Network Time Synchronization using Reference Broadcasts, Proceedings of the5th Symposium on Operating Systems Design and Implementa-tion (OSDI’ 02), Boston, Massachusetts (2002)
【非特許文献１１】S. Ganeriwal, R. Kumar and M. B. Srivastava: Timing-sync Protocol for Sensor Networks, Proceedings of the 1st ACM Conference on Embedded Network Sensor Systems (SenSys'03), Los Angeles, California (2003)
【非特許文献１２】セイコーエプソン株式会社: RX-8025SA | RTC (I2C) リアルタイムクロック | 製品情報 | エプソンデバイス，セイコーエプソン株式会社(オンライン)，入手先<http://www5.epsondevice.com/ja/products/i2c/rx8025sa.html >
【発明の概要】
【発明が解決しようとする課題】
【０００６】
そのため我々は稲作用フィールドサーバ向けのLoRaを用いたネットワーク構築方法および間欠動作通信プロトコルの検討を行った(非特許文献2)。間欠動作を行うためには複数のフィールドサーバの同時起動および、これにともなう同時送信を避けるための協調動作が必要である。時刻同期を行わず、フィールドサーバ内部のマイコンにより時間管理を行う場合、1か月で最大4,688秒のずれが生じる。また我々のフィールドサーバに搭載できるリアルタイムクロックICを複数検討した結果、ICによって異なるが、ずれが最小となるICでも、1か月に約±13秒のずれを生じることが判明した（非特許文献12）。6か月間稼働させると、1分以上のずれが生じることとなる。フィールドサーバは複数台存在するため、そのずれを考慮して通信プロトコルを作成した場合、6か月間の稼働は困難である。
【０００７】
本発明は、上記のような問題を考慮して、低消費電力で稼働させることができる無線通信システムの時刻同期方法及びデータ収集方法を提供することを課題とする。
【課題を解決するための手段】
【０００８】
(1)本発明の無線通信システムの時刻同期方法は、親機と、センサに接続された複数の子機とを備える無線通信システムの時刻同期方法において、前記子機が自身の内部時計に基づいて起動すると同時にスリープモードから送信モードに切り替わり、センサデータを取得する第1ステップと、前記子機が前記センサデータを前記親機に送信し、その後一定時間受信モードに切り替わる第2ステップと、前記親機が前記センサデータを受信した場合、前記子機に対して実時間に基づいた時刻補正信号を送信する第3ステップと、前記子機が前記受信モード中に前記時刻補正信号を受信した場合、前記内部時計を補正すると共にスリープモードに切り替わる第4ステップと、前記子機が前記受信モード中に前記時刻補正信号を受信しなかった場合、前記受信モードから送信モードに切り替わり、前記センサデータを前記親機に再送信し、受信モードに切り替わる第5ステップを少なくとも備えることを特徴とする。
(2)また、前記第2ステップにおいて、前記子機の受信モード中に他の子機の起動時刻になった場合、当該受信モード中の子機がスリープモードに切り替わることを特徴とする。
(3)また、前記第5ステップにおいて、前記時刻補正信号を受信しなかった子機がランダム時間経過後に前記センサデータを前記親機に再送信することを特徴とする。
(4)また、前記無線通信システムに子機が新しく追加された場合、前記追加された子機が前記時刻補正信号を要求する信号を前記親機に送信するステップと、前記親機が前記要求信号を受け取った場合、前記追加された子機に対して前記時刻補正信号を送信するステップと、前記追加された子機が前記時刻補正信号を受信し、前記内部時計を補正すると共にスリープモードに切り替わるステップを備えることを特徴とする。
【０００９】
(5)本発明の無線通信システムのデータ収集方法は、親機と、センサに接続された複数の子機とを備える無線通信システムのデータ収集方法において、複数の子機のうち親機に最も近い子機が親機にセンサデータを転送すると共に当該センサデータ転送後の子機がスリープモード又は電源オフに切り替わる第1−1ステップと、第1−1ステップと同時に、親機に最も近い子機以外の複数の子機のうち距離が最も近い2つの子機同士でコネクションを確立し、当該コネクションを確立した2つの子機のうち親機に遠い方の子機が近い方の子機へセンサデータを転送すると共に当該センサデータ転送後の子機がスリープモード又は電源オフに切り替わる第1−2ステップと、スリープモード又は電源オフに切り替わっていない複数の子機のうち親機に最も近い子機が親機にセンサデータを転送すると共に当該センサデータ転送後の子機がスリープモード又は電源オフに切り替わる第2−1ステップと、第2−1ステップと同時に、スリープモード又は電源オフに切り替わっていない複数の子機のうち距離が最も近い2つの子機同士でコネクションを確立し、当該コネクションを確立した2つの子機のうち親機に遠い方の子機が近い方の子機へセンサデータを転送すると共に当該センサデータ転送後の子機がスリープモード又は電源オフに切り替わる第2−2ステップとを備えており、以後、全ての子機が親機にセンサデータを転送してスリープモード又は電源オフになるまで第2−1ステップ及び第2−2ステップを繰り返し行なうことを特徴とする。
(6)本発明の無線通信システムのデータ収集方法は、親機と、センサに接続された複数の子機とを備える無線通信システムのデータ収集方法において、前記複数の子機が自身の内部時計に基づいて起動すると同時にスリープモード又は電源オフから送信モードに切り替わり、センサデータを取得する第1ステップと、複数の子機のうち親機に最も近い子機Aが親機にセンサデータを転送し、次に前記子機Aに対して親機が実時間に基づいた時刻補正信号を送信し、次に前記時刻補正信号を受信した前記子機Aが自身の内部時計を補正すると共にスリープモード又は電源オフに切り替わる第2−1ステップと、第2−1ステップと同時に、前記子機A以外の複数の子機のうち距離が最も近い2つの子機同士でコネクションを確立し、当該コネクションを確立した2つの子機のうち親機に遠い方の子機B1が近い方の子機B2へセンサデータを転送し、次に前記近い方の子機B2が自身の内部時計に基づいた時刻補正信号を前記遠い方の子機B1に送信し、次に前記時刻補正信号を受信した前記遠い方の子機B1が自身の内部時計を補正すると共にスリープモード又は電源オフに切り替わる第2−2ステップと、スリープモード又は電源オフに切り替わっていない複数の子機のうち親機に最も近い子機Cが親機にセンサデータを転送し、次に前記子機Cに対して親機が実時間に基づいた時刻補正信号を送信し、次に前記時刻補正信号を受信した前記子機Cが自身の内部時計を補正すると共にスリープモード又は電源オフに切り替わる第3−1ステップと、第3−1ステップと同時に、スリープモード又は電源オフに切り替わっていない複数の子機のうち距離が最も近い2つの子機同士でコネクションを確立し、当該コネクションを確立した2つの子機のうち親機に遠い方の子機D1が近い方の子機D2へセンサデータを転送し、次に前記近い方の子機D2が自身の内部時計に基づいた時刻補正信号を前記遠い方の子機D1に送信し、次に前記時刻補正信号を受信した前記遠い方の子機D1が自身の内部時計を補正すると共にスリープモード又は電源オフに切り替わる第3−2ステップとを備えており、以後、全ての子機が親機にセンサデータを転送してスリープモード又は電源オフになるまで第3−1ステップ及び第3−2ステップを繰り返し行なうことを特徴とする。
(7)本発明の無線通信システムのデータ収集方法は、親機と、センサに接続された複数の子機とを備える無線通信システムのデータ収集方法において、前記複数の子機が自身の内部時計に基づいて起動すると同時にスリープモード又は電源オフから送信モードに切り替わり、センサデータを取得する第1ステップと、複数の子機のうち親機に最も近い子機Aが親機にセンサデータを転送し、次に前記子機Aに対して親機が実時間に基づいた時刻補正信号を送信し、次に前記時刻補正信号を受信した前記子機Aが自身の内部時計を補正すると共にスリープモード又は電源オフに切り替わる第2−1ステップと、第2−1ステップと同時に、前記子機A以外の複数の子機のうち2つの子機同士でコネクションを確立し、当該コネクションを確立した2つの子機のうち一方の子機B1が他方の子機B2へセンサデータを転送し、次に前記子機B2が自身の内部時計に基づいた時刻補正信号を前記子機B1に送信し、次に前記時刻補正信号を受信した前記子機B1が自身の内部時計を補正すると共にスリープモード又は電源オフに切り替わる第2−2ステップと、スリープモード又は電源オフに切り替わっていない複数の子機のうち親機に最も近い子機Cが親機にセンサデータを転送し、次に前記子機Cに対して親機が実時間に基づいた時刻補正信号を送信し、次に前記時刻補正信号を受信した前記子機Cが自身の内部時計を補正すると共にスリープモード又は電源オフに切り替わる第3−1ステップと、第3−1ステップと同時に、スリープモード又は電源オフに切り替わっていない複数の子機のうち2つの子機同士でコネクションを確立し、当該コネクションを確立した2つの子機のうち一方の子機D1が他方の子機D2へセンサデータを転送し、次に前記子機D2が自身の内部時計に基づいた時刻補正信号を前記子機D1に送信し、次に前記時刻補正信号を受信した前記子機D1が自身の内部時計を補正すると共にスリープモード又は電源オフに切り替わる第3−2ステップとを備えており、以後、全ての子機が親機にセンサデータを転送してスリープモード又は電源オフになるまで第3−1ステップ及び第3−2ステップを繰り返し行なうことを特徴とする。
【発明の効果】
【００１０】
(1)の無線通信システムの時刻同期方法の発明では、子機が親機へセンサデータを送信したのち、これを受信した親機が子機に時刻補正信号を送信し、親機と子機の時刻同期を行なう。子機は自身の内部時計に基づいて起動し、センサデータの取得及び通信を行ない、その後スリープモードに切り替わるので消費電力を抑えることができ、無線通信システム全体を低消費電力で稼働させることができる。
また、(2)の発明では、第2ステップにおいて、子機の受信モード中に他の子機の起動時刻になった場合、当該受信モード中の子機をスリープモードに切り替えることにすれば、当該他の子機との通信の衝突を防止できる。
また、(3)の発明では、第5ステップにおいて、子機がランダム時間経過後にセンサデータを親機に再送信することにした場合も、他の子機との通信の衝突を防止できる。
また、(4)の発明では、無線通信システムに新たに追加した子機の時刻同期を行なうことができるため、システムの拡張が容易になる。
【００１１】
(5)の無線通信システムのデータ収集方法の発明では、センサから取得したセンサデータを保持する各子機間、子機と親機間で、データのマージ処理および伝達を行うことによって、データ収集に必要な時間を短縮することができる。すなわち、まず1子機分のセンサデータが親機に送られ、次に2子機分のセンサデータが親機に送られ、次に4子機分のセンサデータが親機に送られる。この様に親機に送られるデータの個数は毎回2倍で増加していく。この為急速にデータが収集される。従来手法とのシミュレーションによる比較の結果、本発明の方法は子機のデータを親機に収集する収集時間が最も短いことが確認できた。また、消費電力も従来方法と比べ小さいことが確認できた。さらに、子機数の増加による親機へのデータ収集に必要な時間の伸び率が他の手法と比べ小さく、有効な方法であることが確認できた。
(6)の無線通信システムのデータ収集方法の発明は、(5)のデータ収集方法の発明に(1)の時刻同期方法の発明を取り入れた内容である。具体的には、親機に最も近い子機が親機にセンサデータを転送すると、当該子機に対して親機から実時間に基づいた時刻補正信号が送信され、当該子機は自身の内部時計を補正すると共にスリープモード又は電源オフになる。これと同時に、他の子機のうち距離が最も近い2つの子機同士でコネクションを確立し、親機に遠い方の子機が近い方の子機へセンサデータを転送する。近い方の子機は自身の内部時計に基づいた時刻補正信号を遠い方の子機に送信する。そして、遠い方の子機は自身の内部時計を補正すると共にスリープモード又は電源オフになる。このような動作を繰り返すことで、子機の時刻同期を行いながらセンサデータを迅速に収集することができ、無線通信システムを低消費電力で長期間正確に稼働させることができる。
(7)の無線通信システムのデータ収集方法の発明は、(6)のデータ収集方法の発明の応用例にあたる。具体的には、親機に最も近い子機が親機にセンサデータを転送すると、当該子機に対して親機から実時間に基づいた時刻補正信号が送信され、当該子機は自身の内部時計を補正すると共にスリープモード又は電源オフになる。これと同時に、他の子機のうち適当な2つの子機同士でコネクションを確立し、一方の子機が他方の子機へセンサデータを転送する。他方の子機は自身の内部時計に基づいた時刻補正信号を一方の子機に送信する。そして、一方の子機は自身の内部時計を補正すると共にスリープモード又は電源オフになる。このような動作を繰り返すことで、子機の時刻同期を行いながらセンサデータを迅速に収集することができ、無線通信システムを低消費電力で長期間正確に稼働させることができる。
【図面の簡単な説明】
【００１２】
【図１】圃場管理システム全体イメージ図
【図２】各圃場と事務所の位置関係
【図３】フィールドサーバの構成
【図４】親機の構成
【図５】通信プロトコルシーケンス図
【図６】センサデータ衝突時のシーケンス図
【図７】親機とフィールドサーバ間の時刻同期の仕組み
【図８】提案するネットワークトポロジー
【図９】データ送信完了ノード数
【図１０】1ラウンドの稼働時間
【図１１】最大稼働時間比較
【発明を実施するための形態】
【００１３】
本発明の無線通信システムの時刻同期方法の実施の形態について説明する。
本実施の形態では、無線通信システムを、圃場の環境情報を各種センサによって取得および活用するための圃場管理システムとする。
【００１４】
［システム全体概要］
圃場管理システムの全体構成図を図1に示す。本システムはフィールドサーバ（子機）、親機、クラウドサービスから構成されている。
フィールドサーバは圃場に設置し、センサデータを取得したのち、無線ネットワークを通じて親機へそのデータを送信する。親機は各圃場に設置されているフィールドサーバからのセンサデータを集約し、3G回線やWi-Fiを介してクラウドへ転送する。
クラウドサービスはスマートフォンやタブレット等のアプリケーションおよびWebページで提供される。農業従事者に対して水位等の警告、作業計画の提案、作業記録の保存などの機能を提供する。
フィールドサーバと親機間の通信に関しては、長距離通信が可能なLoRaを用いる。LoRaは我々が行った基本通信特性調査により、実用通信距離が3,000〜4,000mであることが判っている[7]。今回想定している石川県の圃場では、親機とフィールドサーバ間の直線距離は約3,000m以内である。そのため我々はフィールドサーバと親機間で直接通信が可能なLoRaを採用した。
想定した石川県内の農業法人の各圃場と事務所の位置関係を図2に示す。 A、B、C、D、E、F、Gが各圃場の位置を表し、この地点にフィールドサーバを設置する。Pは事務所の所在地を表し、事務所に親機を設置する。フィールドサーバA〜Gと親機P間の直線距離は、AP間397m、BP間923m、CP間943m、DP間684m、EP間1,150m、FP間1,440m、GP間1,910mである。
【００１５】
［フィールドサーバおよび親機概要］
フィールドサーバと親機により構成される無線ネットワークの詳細を説明する。
フィールドサーバの構成を図3に示す。フィールドサーバは、モバイルバッテリー、電源ON/OFF回路、AVRマイコン、LoRa無線モジュール、各種センサ、SDカードモジュールで構成されている。フィールドサーバは、圃場に設置することから電源供給が困難であるため、モバイルバッテリー(リチウムイオン二次電池)によって電源供給が行われる。低消費電力を実現するため、電源ON/OFF回路によって1時間のうち、数十秒間のみ稼働する。無線通信やセンサの制御は、AVRマイコンによって行われる。センサは5種類搭載し、温度、湿度、水位、土壌温度、土壌水分度を計測している。
SDカードにはセンサデータをタイムスタンプとともに保存する。これは親機にセンサデータを送信できない場合や親機からの時刻補正信号を受信できない場合においても、センサデータを確実に保存するための機能である。親機との時刻同期に失敗した場合は、SDカードに記録されている前回記録時のタイムスタンプに3,600を加算し、今回記録用のタイムスタンプを求める。
【００１６】
電源ON/OFF回路はPICマイコンとFETにより構成されており、電源ON/OFF回路に電力線で繋がるモジュールへの電源供給を制御する。PICマイコンはGPIOピンでHIGH/LOW出力することによってFETを制御する。PICマイコンは電源制御に必要な時間を内部クロックのタイマ割り込みを用いて計測し、制御を行っている。
親機の構成を図4に示す。親機は、Raspberry Pi、送信用LoRa無線モジュール、受信用LoRa無線モジュール、3Gドングルで構成されている。
フィールドサーバは初回電源投入時、時刻を保持していないため待機することなく起動する。そのため親機は常に受信状態を維持し、農業従事者がいつフィールドサーバを設置してもフィールドサーバからの通信に対応できることが望ましい。また、LoRa無線モジュールには受信モードと送信モードが存在し、モードの切り替えには時間を要する。そのため、親機では受信専用と送信専用のLoRa無線モジュールを2個搭載することにより、送受信の待機時間削減と常時受信状態の維持を実現した。
【００１７】
［通信プロトコル概要］
フィールドサーバはPIC内時刻が3,600(0)秒の時に起動し、センサデータの取得を行う。そのセンサデータを親機に送信し、親機がセンサデータの受信に成功した場合、親機はフィールドサーバに補正時刻を送信する。フィールドサーバは補正時刻を受け取り、AVRマイコンがPICマイコンに補正時刻を転送する。PICマイコンはこの補正時刻をもとにPIC内時刻を補正する。転送が終了した時点、もしくは後述の1時間あたりの稼働時間が経過した時点でAVRなど電源ON/OFF回路以外は電源をOFFにし、次回起動時まで待機する。
通信に用いるフレームフォーマットを表1、表2、表3に示す。
表1は共通フレームフォーマットである。送信先、送信元およびペイロードで構成される。表2はセンサデータ送信のフォーマットである。これはフィールドサーバから親機へ送信される信号である。現在搭載しているセンサは5種類あるため、センサデータ1〜5までにそれぞれ2Byteでデータを格納できるフォーマットを定義している。またセンサの種類が増えた場合には、センサデータ送信のフォーマットに、2Byte分ずつ追加することで対応できる。表3は時刻補正信号のフォーマットである。これは親機からフィールドサーバへ送信される信号である。親機が取得したタイムスタンプとそれをもとに計算した各フィールドサーバへの補正時刻が格納される。
【表１】
2019009626.tif 000003
【表２】
2019009626.tif 000004
【表３】
2019009626.tif 000005
【００１８】
通信プロトコルのシーケンス図を図5に示す。図5は、フィールドサーバ3台であり、すべての通信において再送が発生しない場合の例である。初めにフィールドサーバA(以下、FS-A)が起動する。起動後はセンサが安定するまで固定時間待機する。その後FS-Aはセンサデータを取得し、表2のセンサデータ送信フォーマットに従って送信パケットを生成したのち、センサデータを親機へ送信する。フィールドサーバはLoRa無線モジュールを1個のみの搭載であるため、送信モードから受信モードへ切り替えを行う。この切り替えには数秒を要する。受信モードに切り替えた後は、設定されたタイムアウト時間まで受信待機し、親機から送られる時刻補正信号の受信を行う。
親機はFS-Aからのセンサデータを受け取ると時刻補正信号をFS-Aに対して送信する。FS-Aはその時刻補正信号をもとにPIC内時刻を補正する。補正後は再送可能時間の途中であっても、スリープ状態へ移行する。フィールドサーバが時刻補正信号の受信もしくは親機が送信に失敗した場合は再送を行う必要があるため、再送可能時間を設けている。この一連の動作をフィールドサーバB(FS-B)、フィールドサーバC(FS-C)も同様に行う。
1時間あたりの稼働時間は、次式(数1)から求められる。この稼働時間は事前にAVRマイコンに書き込まれ、AVRマイコンに電源が投入される毎にPICマイコンへ送られる。
各フィールドサーバの稼働時間は、
【数１】
2019009626.tif 000006
となる。センサ安定待機および取得時間は、電源投入後の電圧が安定し、センサ取得が可能になるまでの固定待機時間およびセンサデータを測定する時間である。センサデータ送信時間は親機にセンサデータを送信する時間である。モード切替時間は、LoRa通信モジュールを送信モードから受信モードへ切り替える固定時間である。受信時間は親機から時刻補正信号を受信する時間である。再送可能時間はセンサデータを親機に送信できない場合、再送処理を行える時間である。
【００１９】
［再送発生時の動作概要］
フィールドサーバは時刻補正信号を受信できず、かつ受信待機時間が経過した場合、タイムアウト動作を行う。タイムアウト後は、フィールドサーバは0.1から5.0秒までランダム秒待機したのち、再送を行う。この場合のシーケンス動作を図6に示す。図6において、フィールドサーバC(FS-C)がタイムアウトとなり、再送動作を行っている。タイムアウトの発生要因は、
1)電波減衰や復調できない程のノイズによって、親機がフィールドサーバからの通信を受信できない場合
2)複数のフィールドサーバの送信時刻の重なりにより、送信データに衝突が生じた場合
などが考えられる。その際、親機はフィールドサーバに対して時刻補正信号を送らないため、フィールドサーバの受信待機はタイムアウトとなる。タイムアウトとなったフィールドサーバは再送を行うが、初回電源投入のフィールドサーバが行う通信との再衝突を防ぐため、ランダム秒の待機時間を設けている。
フィールドサーバは再送を行なったのち、送信モードから受信モードへ切り替え、受信待機を行う。この動作をフィールドサーバは、親機からの時刻補正信号を受け取れるまで続ける。ただし、他のフィールドサーバと通信の衝突を避けるため、他のフィールドサーバの稼働開始時刻になった場合、強制的に電源をOFFにする。他のフィールドサーバの稼働開始時間までに安定して再送可能な時間を考慮し、1回の再送を行う。
【００２０】
［時刻補正信号］
親機は常時受信待機を行なっているため、フィールドサーバは任意のタイミングでセンサデータを送信できる。親機は事前にNTPサーバと時刻同期を行い、正確な時刻を取得している。親機はこの時刻によって時刻補正信号を生成し、フィールドサーバからセンサデータを受信したのち、時刻補正信号を送信する。表3の時刻補正信号のフォーマットに示すとおり、タイムスタンプはUNIX(登録商標)時間が4Byteで入る。これはAVRマイコンのEEPROMやSDカードへセンサデータの書き込みに使用する。補正時刻は、PIC内時刻を補正する際に利用するため、現在時刻から各フィールドサーバ用にずらした時刻を0〜3599秒として2Byteで入れる。通信エラー検出および訂正に用いられるCRC等は、LoRa通信モジュールが追加するため、フォーマットでは定義していない。
図7にフィールドサーバと親機間の時刻同期の仕組みを示す。親機はNTPサーバによって得られた正確な時刻を補正時刻形式でフィールドサーバに送信する。フィールドサーバは補正時刻を受信すると、AVRマイコンを経由し、電源ON/OFF回路内のPICマイコンに転送する。補正時刻は他のフィールドサーバと同時に起動することを防ぐため、現在時刻を適切にずらしたものである。この時刻をずらす計算式を次式(数2)に示す。数2に関して、各フィールドサーバは一意に割り当てられたフィールドサーバ識別子(以下FSID)を持っており、現在時刻t_1からFSID・30を引くことにより、フィールドサーバへ送信する補正時刻t_2が求められている。またフィールドサーバの電源投入時間によっては、時刻t_2が負の値となるが、この場合はt_2に3,600を加算する。
【数２】
2019009626.tif 000007
【００２１】
FSIDは0x00から0x77の範囲で使用でき、FSIDの昇順に起動を行う。FSIDを用いることにより各フィールドサーバの同時起動を防ぎ、フィールドサーバの送信信号を衝突させないようにしている。
電源ON/OFF回路を制御するPICでは常に内部のクロックで0から3,599秒をカウントしている。PIC内時刻が3,600(0)秒になると、AVRマイコンへ電源を供給する。フィールドサーバは親機から時刻補正信号を受け取ると、PIC内時刻を親機から送信された補正時刻に補正し、カウントを続ける。これを行うことで、フィールドサーバと親機で時刻同期を行っている。2回目以降の起動においてもPIC内時刻が3,600(0)秒に達することでAVRマイコンへ電源供給を行う。
親機は通信エラーなどによりフィールドサーバからのデータを正常に受信できなかった場合、時刻補正信号を送信せずにセンサデータの受信待機状態を維持する。
【実施例１】
【００２２】
［通信プロトコルの検証方法］
LoRaおよび考案した通信プロトコルを利用し、親機とフィールドサーバ間で想定通りの動作を行うか確認する目的で、7日間の稼働試験を行った。
検証内容は、
1)親機がフィールドサーバへ時刻補正信号をフィールドサーバの受信待機時間内に返送可能かの確認
2)時刻補正信号を受け取ったフィールドサーバは、即時にスリープ状態へ移行するかの確認
3)時刻補正信号によって各フィールドサーバが適切にタイミングを変更し、指定した時刻に起動するかの確認
である。
通信プロトコルの検証では、フィールドサーバの台数を我々が対象としている圃場例と同数の7台で行った。フィールドサーバと親機間の距離は、親機を中心とし、全フィールドサーバを半径1m以内に設置した。フィールドサーバから親機へ送られたセンサデータは、検証用クラウドへ保存した。
【００２３】
また7日間の稼働試験に加え、フィールドサーバと親機間の通信に失敗した際、想定した再送動作を、各フィールドサーバに割り当てられた稼働時間内に行えるかを検証する。検証方法は、フィールドサーバが1回目のセンサデータを送信する際に、親機は受信待機をせず、フィールドサーバの受信待機をタイムアウトさせる。その後、フィールドサーバが2回目のセンサデータを送信する際に、親機は受信待機および時刻補正信号をフィールドサーバへ送る。フィールドサーバがこれを受信し、スリープ状態へ移行するか確認する。
本プロトコルは圃場管理を対象としており、各圃場から収集するセンサデータの時刻に数秒程度のずれは許容する。しかし、各フィールドサーバの起動時刻に大きなずれが生じた場合は、送信するセンサデータの衝突や親機からの時刻補正信号を受け取れないなどの問題を生じる。そのため、各フィールドサーバに指定した一定の時刻に起動するかを検証した。検証方法は各フィールドサーバのFSIDが0x02のフィールドサーバから0x08の順序で通信を行う。フィールドサーバはそれぞれ30秒間隔で起動させる。親機がセンサデータを受信した時刻をもとに72時間分の平均誤差の算出を行い、それぞれ平均最大誤差[s]と平均最小誤差[s]を求めた。
【００２４】
［通信プロトコルの検証結果］
表4に通信プロトコルの検証結果を示す。フィールドサーバの稼働日数は7日間であり、センサデータ取得および送信は1時間間隔である。フィールドサーバが親機へデータを送信した回数は、フィールドサーバ7台、1時間間隔で7日間のため、1,176回である。これに加え、フィールドサーバが親機から時刻補正信号を受信できず、再送を行った回数は9回である。そのため総センサデータ送信回数は1,185回となる。再送を行った9回のうち、9回すべてが再送1回目で時刻同期を完了した。
また再送動作の検証では、フィールドサーバが再送処理でのセンサデータ再送を行ったのち、親機からの時刻補正信号受信し、スリープ状態へと移行した。この動作がシーケンス通りに行われることを確認した。よって問題なく動作していると判断できる。
【表４】
2019009626.tif 000008
【００２５】
各フィールドサーバに指定した一定の時刻に起動するかを検証した結果を表5に示す。
１時間間隔で行われるすべてのフィールドサーバの通信において、各フィールドサーバに与えられた想定起動時刻と実際に起動した時刻の差を絶対値で調べ、その平均最大・最小誤差を求めた。結果は平均最大誤差が5.277秒、平均最小誤差が4.041秒であった。このことより、各フィールドサーバの起動タイミングはおおよそ5〜6秒のずれが生じると判断できる。時刻同期を用いることで誤差を小さく抑えられているが、少なからず誤差は存在している。
これらの誤差が生じる要因として、電源ON/OFF回路に用いているPICマイコンにおけるクロックの誤差、LoRa通信モジュールの個体差による送信時間のぶれ、CRCによる誤り訂正時間、LoRa変調および復調にかかる誤差などが挙げられる。
【表５】
2019009626.tif 000009
【００２６】
PICマイコンの誤差に関しては、測定することが可能であるため検証を行った。PICマイコンを１時間計測し、実際の時刻とのずれを誤差とした。この計測をPICマイコン7台(A〜G)で12時間分計測し、PICマイコンごとに平均誤差を算出した。その結果を次の表6に示す。表より、最大で誤差が6.512秒である。このことから各フィールドサーバの誤差を招く要因しては、PICマイコンの誤差が大半であることがわかる。
しかし、今回提案する圃場管理用通信プロトコルおいて、この誤差は他のフィールドサーバとの衝突が起きない範囲内である。そのため、この通信プロトコルにおいて時刻同期は効果的であり、使用時間に比例する時刻の誤差増加を減少できていることが確認できた。
【表６】
2019009626.tif 000010
【００２７】
［消費電力の評価］
通信プロトコルの検証とは別に消費電力を検証するための稼働試験を行った。検証の目的は、本システムが要求されている期間、運用可能であるかを確認するためである。
検証内容は、各プロセスでの消費電流をテスターによって測定し、理論的に消費電力を算出することにより要求期間の連続稼働が可能かを確認することである。測定結果を表7に示す。
【表７】
2019009626.tif 000011
次式(数3)にシステム稼動時における電力量WN[mW]を求める式を示す。ここで、V1はフィールドサーバの定格電圧[V]、Iaおよびt1はセンサ安定待機時とセンサ取得時の電流[mA]および時間[s]、Ibおよびt2はセンサデータ送信時の電流[mA]および時間[s]、Icおよびt3はモード切り替え時の電流[mA]および時間[s]、Idおよびt4は受信待機時の電流[mA]および時間[s]、Ieおよびt5は受信時の電流[mA]および時間[s]を示している。
【数３】
2019009626.tif 000012
【００２８】
次式(数4)にシステムスリープ時における電力量Ws [mW]を求める式を示す。ここで、Ig はスリープ時の電流[mA]を示している。
【数４】
2019009626.tif 000013
次式(数5)に稼働時間Th[h]を求める式を示す。ここで、V2はモバイルバッテリーの電圧[V]、Qはモバイルバッテリーの電気量[mAh]を示している。分子のV2・Qによってモバイルバッテリーの電力量[mWh]を求め、分母のWNおよびWsでフィールドサーバが消費する電力量[mW/h]を求めている。
【数５】
2019009626.tif 000014
【００２９】
稼働日数の理論値を数3〜5と表7より求めた。1時間あたりの消費電力量は3.14[mW/h]であり、1日あたり75.36[mW]消費する。今回想定したモバイルバッテリーの容量は75,000[mWh]であることから、995日程度稼働できることが分かった。この日数は理論値であるが、モバイルバッテリーの自然放電等を考慮しても農業法人の要求である6か月間の稼働は可能であると考える。
稼働日数の理論値を数3〜5と表7より求めた。1時間あたりの消費電力量は3.14[mW/h]であり、1日あたり75.36[mW]消費する。今回想定したモバイルバッテリーの容量は75,000[mWh]であることから、995日程度稼働できることが分かった。この日数は理論値であるが、モバイルバッテリーの自然放電等を考慮しても農業法人の要求である6か月間の稼働は可能であると考える。
【００３０】
［通信プロトコルと消費電力の考察］
今回考案した通信プロトコル、特に時刻同期の効果について考察する。従来我々が開発したフィールドサーバでは、同様のハードウェア構成で時刻同期を行わない通信手法を用いている。この手法は親機からすべてのフィールドサーバに対して、データ受信確認およびスリープ命令を兼ねたブロードキャスト信号を一定間隔で送る。ブロードキャスト信号を送る時間の間隔は、フィールドサーバにおける時刻の誤差を考慮して設定しなければならない。そのため、間隔を広く設定する必要がある。また、親機が管理するフィールドサーバの台数増加に比例して時間の間隔を広く設定する必要がある。これは、台数増加による時刻の揺れをすべて許容しなくてはならないためである。我々の想定している圃場例と同数の7台の場合、フィールドサーバ1台あたりの稼働時間は最小48秒で、消費電力は6.10[mW/h]であった。時刻同期を行った本提案の通信プロトコルでは、稼働時間は約16秒で消費電力は3.14[mW/h]であった。
従来の通信手法に対して、今回考案した通信プロトコルでは時刻同期を行うことにより、フィールドサーバ1台あたりの稼働時間を最大30秒に短縮でき、約2倍の効率で低消費電力の実現に成功した。
【００３１】
［まとめ］
田植えから稲刈りまでの6ヶ月間稼働するフィールドサーバ開発とLoRaを用いた圃場管理向け通信プロトコルについて述べた。特に時刻同期を行う通信プロトコルの安定性について述べた。提案した通信プロトコルを用いてネットワークを構築し、検証を行った。その結果、センサデータ送信は1,185回行われ、そのうち9回が再送１回目で成功した。そのため1回目の通信に失敗した場合でも、すべてのフィールドサーバからセンサデータの受信に成功することが確認できた。
フィールドサーバの消費電力については、１日あたり75.36[mW]であった。よって、理論上995日の連続稼働が可能であることを確認した。
各フィールドサーバの起動タイミングとしては、おおよそ5〜6秒のずれが生じる。しかし、このずれによって他のフィールドサーバに干渉することはない。そのため、この通信プロトコルにおいて時刻同期は効果的であり、稼働時間に比例する誤差増加を減少することができた。
これらのことから、本フィールドサーバは安定して長期間の稼働が可能であるため、圃場管理システムに有効である。そのため、農作業の負荷低減に本システムは非常に期待できる。
しかし考案した通信プロトコルでは、同一の周波数で管理できるフィールドサーバの台数に制約があり、120台を超える接続ができない。そのため、考案した通信プロトコルを拡張し、マルチホップに対応することで接続台数の上限を改善する必要がある。
【００３２】
次に、本発明の無線通信システムのデータ収集方法の実施の形態について説明する。
本実施の形態では、無線通信システムを、圃場の環境情報を各種センサによって取得および活用するための圃場管理システムとする。
【００３３】
［ルーティングトポロジーと通信手順］
稲作向け圃場管理システムでは、電池等で田植えから稲刈りまでの6か月間稼働を行う必要がある。また、センサで取得したデータは遅延なく農業従事者に提供する必要がある。ここでは、1ラウンドに於いて全データを収集するのにかかる時間を最小化し、また、制約条件として各子機が6か月以上稼働とする消費電力とすることを目標とする。親機および子機はすべて時刻同期が行われていることを前提し、各子機は同じ時刻に起動するとする。データ送受信時は、親機、子機とも1回の処理で高々1つの子機もしくは親機としか通信できない、もしくは1個の子機、親機からすべてのノードへのブロードキャストが行えることとする。そのため、親機および各子機において、同期を取りながら規定されたタイミングでブロードキャスト、子機からのデータを親機が受信、子機は親機もしくは別の子機にデータを送信する。これを繰り返すことで、すべての子機が持つデータを親機に収集する。
【００３４】
提案手法の基本的な考え方を説明する。データはなるべく早く農業従事者に提示することが望ましいため、親機は休みなくデータを子機から受信し、インタネット上のクラウドに蓄積することとする。また、消費電力削減の目的で子機はなるべく早くデータを送信し、データ送信が完了次第電源をOffにすることが望まれる。そこで、子機は必ず最も自分に近い子機もしくは親機にデータを送信し、送信が完了したら電源をOffにすることとする。
送信処理は同期しながら、同じ間隔で繰り返し行われる。1回の送信処理で、稼働している子機、親機はコネクションを確立後、データを送信するため、その時点で稼働している子機数は、第Tステップの子機の数をN(T)とすると、次式（数6）となる。
【数６】
2019009626.tif 000015
即ち、1回の処理で必ず約1/2の子機の電源をoffできることとなる。これを繰り返すことにより、データ収集に必要な時間を最小限に抑えることが可能となる。また稼働時間も抑えることが出来るため、低電力化にも寄与する。
【００３５】
図8に提案手法のネットワークトポロジーを示す。枝に付けられた番号はデータが送信されるステップ数を表す。この例では子機が11個、親機が1個である。
まず、親機に最も近い子機から親機に対してデータを転送する。同時に子機間の距離が最も近い子機とコネクションが確立され、親機に遠い方の子機から近い方の子機へデータを転送する。次にデータ送信が完了した子機は電源をoffにする。この処理をデータ送信が完了していないノードがなくなるまで繰り返す。提案手法のルーティングプロトコルは以下の通りである。
(1)  各子機に電源が投入され、起動する
(2)  親機から子機へブロードキャストにより送信要求を送付する
(3)  送信要求を受けた子機はデータを取得する
(4)  親機に最も近い子機が親機にデータを送信する。残りの子機は最も距離が近い子機同士でコネクションを確立し、データを親機から遠い方の子機から親機に近い子機へ送信する
(5)  データの送信が完了したノードは電源をoffにする
(6)  (4)、(5)の処理をすべての子機がデータを転送し、電源OFFされるまで繰り返す
【００３６】
［ルーティングネットワークグラフとデータ収集手順］
ここでは、ルーティングネットワークグラフ作成手順について説明を行う。ルーティングネットワークグラフとは、子機、親機間、子機、子機間でデータを送信する順序、方向、送信タイミングを記載した表＝グラフである。送信処理は、このグラフに従って行われる。ルーティングネットワークを有効グラフ G=(V, E)で定義することとし、Vはノードの集合で、親機と子機がノードとなる。Eは枝の集合で枝e={I, j}はノードiからノードjへデータが送信することを表す。E_iはiステップでデータが送信される枝の集合を表す。ここで、以後の議論を簡単にするため、次のように記号を定義しておく。
V:{N1,N2}ノードの集合
N2:子機ノードの集合
N1:親機ノードの集合
n_0:親機ノード
n_j:子機ノードj   where j=1,2,3…
l:親機ノードの数
m:子機ノードの数
e={n_j, n_i}:ノードn_iからノードn_jへのデータ送信
E_i:ステップiでの枝の集合
E={E_1, E_2、 …}
F:送信完了ノードの集合
G:送信未完了ノードの集合
Neighbor(j, G):送信が完了していないノード集合Gの中でノードjに最も距離が近いノード
far(j, G)：送信が完了していないノード集合Gの中でノードjに最も距離が遠いノード
【００３７】
ルーティングネットワークグラフ作成プログラムを以下に示す。
Procedure Routing(V, E)
1:  F={n_0};
2:  G=N2;
3:  t=0；
4:  While(Gに属するノードが存在する) {
5:  /*親機への送信*/
6:  t=t+1;
7:  i= Neighbor(n_0, G);
/*親機に最も近い子機ノードを見つける. */
8:  枝{n_0, i}を生成し、tタイムステップでの処理を表す集合E_tに入れる
9:  ノードiを未送信集合Gから削除する.
10:  ノードiを送信完了集合Fに入れる.
11:  /*子機間のデータ転送*/
12:  T=G;
13:  While(Tに属するノードが存在する) {
14:  j=far(n_0,T);
15:  jをTから削除する。
16:  i=Neighbor(j,T)
17:  iをTから削除する。
18:  枝{I, j}を生成し、tタイムステップでの処理を表す集合E_tに入れる;
19:  ノードjを未送信集合Gから削除する.
20:  ノードjを送信完了集合Fに入れる.
21:  }
22:}
【００３８】
図8に示す親機1個、子機11個の例を用いてプログラムの動きを説明する。
第1ステップでは親機に最も近い子機5が選ばれ、親機への送信を表す枝が張られる。次に親機から最も遠くにある子機11が選ばれ、子機11に最も近い子機7への枝が張られる。同様に、子機3から子機2への枝、子機10から子機9への枝、子機8から子機6への枝、子機4から子機1への枝が作成され、第1ステップが完了する。第2ステップでは、第1ステップ同様に、親機から最も近い子機9から親機への枝が作成され、子機7から子機6への枝、子機2から子機4への枝が作成される。第3ステップでは、子機4から親機への枝、第4ステップでは子機6から親機への枝が作成される。
【００３９】
次にデータ収集通信手順について説明を行う。ルーティングネットワーク作成プログラムで作成されたグラフの木構造に従い、データを親機に収集する。ここでは、図8の例を用いて動作を説明する。
第1ステップでは、第1ステップでの処理を表す枝集合E_1に属する枝に対応する送信が親機から子機11、子機11から子機7、子機3から子機2、子機10から子機9、子機8から子機6、子機4から子機1への送信が行われる。送信を受けた子機は自分が保持していたデータと送られてきたデータを１パケットとし、次の送信に備える。
第2ステップでは、第2ステップでの処理を表す枝集合E_2に属する枝に対応する送信、子機9から親機、子機7から子機6、子機2から子機4の送信が行われる。
第3ステップでは、枝集合E_3に属する枝に対応する送信、子機4から親機への送信が行われる。
第4ステップでは、枝集合E_4に属する枝に対応する送信、子機6から親機への送信が行われる。
データ収集に必要なステップ数は、Tステップに於ける起動中の子機の数をN(T)とすると次式（数7）が成立する。
【数７】
2019009626.tif 000016
即ち、N(T+1)=0 となるTがデータをすべて親機に送信するのに必要なステップとなる。例えば子機が10個の例の場合、
【数８】
2019009626.tif 000017
となり、4ステップですべてのデータを親機に送信できることとなる。
【実施例２】
【００４０】
［シミュレーションによる性能評価］
すべての子機データの収集に必要な時間、消費電力を確認するシミュレーションを行った。シミュレータはC言語で作成した。まず、消費電力の計算方法について説明する。親機は常時電源が供給されるため、その消費電力を考察の範囲から除外し、子機のみ計算することとした。各子機は、電池を保持しており、75,000(mWh)の容量があるものとした。子機は動作状態に応じ6つのモード(表8)があるとした。なお、LoRaを用いた消費電力実測値報告(寺田 恵太郎, 豊田 真治, 平田 忠明, 高田 裕也, 松本 恵子, 袖 美樹子LoRaを用いた圃場管理向け通信プロトコルの提案DICOMO2017))を参考に電流消費は下記の通りと仮定した。ここでデータ転送時の電力値が複数存在するのは、送信電力が距離に依存するためであり、距離と実験機器に設定できる送信電力モードに応じて53mA、62mA、69mA、78mAとした。
【表８】
2019009626.tif 000018
【００４１】
また、システム立ち上げ、センサデータ取得に必要な時間は、実験用器材の実測値から60秒、またデータの送受信に必要な時間は3.4秒とした。各ラウンドでは、まず各子機が起動時間になったらシステムを起動し、センサからデータを取得する。次に親機がデータ送信要求をすべての子機に対し送信する。子機はデータ送信要求を受信したらデータ収集フェーズに移行し、センサからのデータを取得、データを親機へ送信する手順を実行する。各子機はデータの送信が完了したら低消費電力を実現する目的で電源をoffにする。本シミュレーションでは、時刻同期が完全に行われていると仮定する。また、データ送受信の失敗はないものとした。
ところで、子機によるデータの結合時間に関しては、本来ならば時間測定を行い、それに基づき消費電力を導出すべきであるが、実装上、送信すべきデータを連続した領域に並べて配置するようにした関係上、送信時の消費電力に含めてよいほど微細であり今回のシミュレーションでは無視している。今後、マージする子機数が増加した場合には配慮すべき点であるが、今回は送信時の動作に含まれるとした。
表9に、作成したデータの親機と子機の配置について説明する。ここでは親機を中心として、指定した半径にランダムに子機を指定個数配置した。DATA1は親機1、子機99とし、親機と子機の分散範囲は半径500mとした。DATA2は、親機1、子機200とし、親機と子機の分散範囲は半径500mとした。DATA3は、親機1、子機300とし、親機と子機の分散範囲は半径3000mとした。子機の数、および距離の選定理由は、実際の圃場で農業従事者が連続的に監視するエリアの大きさ、またそれを子機に置き換えた場合に必要な子機数、圃場全域のサイズを考慮して決定した。
比較はDirect、PEGASIS、EPEGASIS、CHIONと提案手法でシミュレーションにより行った。また、比較を行った項目は、以下の3つの項目とした。その理由は、農業従事者が水田のデータをリアルタイムに確認出来る事、即ちデータ収集時間最小、田植えから稲刈りまでの6か月間電池で稼働することとした事に起因する。
(1)  1ラウンドに於けるデータ収集に必要な時間
(2)  1ラウンドに於ける総消費電力
(3)  最大稼働日数
【表９】
2019009626.tif 000019
【００４２】
DATA1のシミュレーション結果を表10、図9に示す。提案手法は、他の方法と比べ、データを親機に収集する時間が最も短い事が分かる。また、消費電力、寿命も最も小さいことが分かる。結果的に理論値に於いては、田植えから稲刈りまでの期間6か月稼働できることが分かる。
図9では各ステップに於ける送信完了ノード数を示す。Directはノードが直接親機にデータを送信するため、1ノードずつ親機へのデータ送信が完了する。その為、線形に送信完了ノード数が増加することが分かる。PEGASISは、チェインでデータを送っていく仕組みであるため、最終チェインヘッドがデータを親機に送信した時にすべての子機データが親機に送信されたことになる。その為最後の時刻ですべてのデータが親機に送信され、処理が完了することが分かる。EPEGASISは、複数のチェインを作成しチェインに沿ってデータをチェインヘッドに送って行き、次に各チェインヘッドがデータを親機にデータを送る仕組みである。その為データは、数度にわたり親機に送られ、階段状にデータ送信完了ノードが増加している。CHIRONは複数の小さな領域に分け、その領域でチェインを形成しデータをチェインヘッドに収集し、チェインヘッドがデータを親機に送信する仕組みである。その為、小さなクラスタ毎データが収集され親機に送られることが確認できる。
一方、提案手法は、まず1子機分のデータが親機に送られ、次に2子機分のデータが親機に送られ、次に4子機分のデータが送られる。この様に親機に送られるデータの個数は毎回2倍で増加していく。この為急速にデータが収集されることが確認できる。結果として、提案する手法が最も高速にデータ収集可能なことが確認出来る。
【表１０】
2019009626.tif 000020
【００４３】
DATA2に対するシミュレーション結果を表11に示す。提案手法は、他の方法と比べ、データを親機に収集する時間が最も短い事が分かる。また、消費電力、寿命も最も小さいことが分かる。また、理論値に於いては、田植えから稲刈りまでの期間6か月稼働できることが分かる。また、提案手法は、DATA1と比べ子機数が2倍となっているが収集に必要な時間の増加は3秒と短いことが分かる。
DATA3に対するシミュレーション結果を表12に示す。提案手法は、他の方法と比べ、データを親機に収集する時間が最も短い事が分かる。また、消費電力、寿命も最も小さいことが分かる。また、理論値に於いては、田植えから稲刈りまでの期間6か月稼働できることが分かる。また、DATA1と比べ子機数が3倍となっているが収集に必要な時間の増加は6秒と短いことが分かる。
【表１１】
2019009626.tif 000021
【表１２】
2019009626.tif 000022
【００４４】
図10に1ラウンドに於ける稼働時間を示す。Direct、PEGASISはデータ数が増加するに従い、データの親機への送信時間が増加し稼働時間が急激に増加していることが分かる。
図11は、図10からEPEGASIS、CHIRON、提案手法を抜き出し図示したものである。この図から、提案手法はデータ数増加に対するデータ収集に必要な時間の増加率が最も小さく、子機数が増えても短い時間でデータを収集可能であることが分かる。また、伸び率はノード数に対して3%の伸びであることが分かる。このため、想定した圃場管理システムにとって、最も適した方法と考えられる。
【００４５】
［まとめ］
水田は他の圃場と異なり電源供給が難しい点に加え、農作業の障害となる大型の発電装置を設置することは困難である。その為、フィールドサーバは電池等で動作しなくてはならず、低消費電力化に課題があった。また、通信に供する回線使用料は農耕に必要なコスト全体から考えると可能な限り低減せざるを得ない。我々は、IoT向け通信規格であるISMバンドを用いた低消費電力かつ伝送距離の長いLoRaを用いた圃場間通信の検討を行った。
電源の無い環境で、田植えから収穫までの6か月稼働するセンサノードである子機と親機間において、短時間でデータの収集を可能とするルーティング手法を提案した。提案手法は、センサから取得したデータを保持する各子機間、子機と親機間で、データのマージ処理および伝達を行うことによって、データ収集に必要な時間を短縮する特徴を持ち、従来手法とのシミュレーションを用いた比較の結果、子機のデータを親機に収集する収集時間が最も短いことが確認できた。また、消費電力も従来方法と比べ小さいことが確認できた。さらに、子機数の増加による親機へのデータ収集に必要な時間の伸び率が他の手法と比べ小さく、有効な方法であることが確認できた。
稲作圃場の状況をタイムリーに伝達可能とする本提案は、農作業の負担軽減に有益な手法と考える。今後は、親機の受信能力や、子機間のデータのルーティング方法、データの集約個数などのパラメータを増減することによって、圃場に最適な解を得るため、シミュレーションおよびフィールドでの実験を進める予定である。
【産業上の利用可能性】
【００４６】
本発明は、低消費電力で稼働させることができる無線通信システムの時刻同期方法及びデータ収集方法であり、産業上の利用可能性を有する。
【図１】
2019009626.tif 000023
【図２】
2019009626.tif 000024
【図３】
2019009626.tif 000025
【図４】
2019009626.tif 000026
【図５】
2019009626.tif 000027
【図６】
2019009626.tif 000028
【図７】
2019009626.tif 000029
【図８】
2019009626.tif 000030
【図９】
2019009626.tif 000031
【図１０】
2019009626.tif 000032
【図１１】
2019009626.tif 000033