【解決手段】位置取得アンテナ230と、通信インターフェイス260と、位置取得アンテナ230を利用して取得した現在位置を通信インターフェイス260を介してサーバ100に送信するためのプロセッサ210とを備える位置取得装置1が提供される。プロセッサ210は、所定の条件が満たされる際に、現在位置の送信間隔を短く設定する。
前記プロセッサは、前記現在位置の送信に失敗すると、送信に失敗した複数の現在位置のうちの取得されたタイミングが新しいものから順に前記サーバに送信する、請求項1から3のいずれか1項に記載の位置取得装置。
【発明を実施するための形態】
【0009】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
<第1の実施の形態>
<位置取得システムの全体構成>
【0010】
まず、本実施の形態にかかる位置取得システム1の全体構成について説明する。
図1を参照して、位置取得システム1は、主に、インターネットに接続されたサーバ100と、車両500に搭載される位置取得装置200と、オフィスや家庭に配置される通信端末300とを含む。
【0011】
そして、位置取得装置200は、LTEなどのキャリア網やインターネットを介してサーバ100と通信する。通信端末300も、ルータやインターネットやキャリア網を介してサーバ100と通信する。
<位置取得システムの動作概要>
【0012】
本実施の形態においては、位置取得装置200は、定期的に、すなわち第1の間隔毎に、GPSアンテナを利用することによって現在位置を取得してサーバ100に提供する。特に、本実施の形態にかかる位置取得システム1においては、位置取得装置200は、所定の条件が満たされる場合に、第1の間隔よりも短い第2の間隔毎に現在位置を取得してサーバ100に提供する。
【0013】
具体的には、
図2を参照して、たとえば、営業車が会社の近くに戻ってくると、現在位置の取得頻度やサーバ100への送信頻度を上げることが考えられる。現在位置の測定の第3回目、第4回目、第5回目、第11回目のように、ユーザによる営業のために位置取得装置200が会社から離れた位置にいるときは、第1の間隔、たとえば1分毎に、GPSアンテナを利用することによって現在位置を取得してサーバ100に提供する。一方、第6回目、第7回目、第8回目、第9回目のように、ユーザが会社の近くに戻ってきたときは、第2の間隔、たとえば15秒毎に、GPSアンテナを利用することによって現在位置を取得してサーバ100に提供する。
【0014】
そして、サーバ100への現在位置の送信に失敗した場合は、位置取得装置200は、通信可能な状態に復帰した際に、送信できなかった複数回分の現在位置を順にサーバ100に送信する。
【0015】
これによって、社内の通信端末300は、サーバ100に要求することによって、ユーザの車に乗せられた位置取得装置200の現在位置の推移や履歴などを閲覧することができる。以下では、このような機能を実現するための位置取得システム1について詳細に説明する。
<位置取得装置200の構成>
【0016】
まず、本実施の形態にかかる位置取得システム1における車両500に取り付けられる位置取得装置200の構成について説明する。
【0017】
なお、位置取得装置200は、車両500の向きや姿勢などを正確に測定するために、予め定められた位置に、予め定められた姿勢で、車両500に取り付けられることが好ましい。ただし、位置取得装置200が取り付けられた状態で車両500を数分間走行させることによって、車両500の向きや姿勢に対する位置取得装置200の向きや姿勢を予め特定しておき、これによってその後の位置取得装置200の向きや姿勢に基づいて車両500の向きや姿勢を計算する形態であってもよい。
【0018】
図3を参照して、位置取得装置200は、主に、MCU(Micro Controller Unit)210や、位置情報取得部230や、通信部260や、モーションセンサ270や、DC/DCコンバータ280や、バッテリー電圧モニタ290などを搭載する。
【0019】
より詳細には、MCU210は、プロセッサ211や、RAM(Random Access Memory)、各種のROM(Read-Only Memory)などのメモリ212、などから構成される。プロセッサ211は、メモリ212のプログラムやデータに基づいて位置取得装置200の各部を制御する。そして、本実施の形態においては、メモリ212は、取得された少なくとも現在位置情報および取得日時や、現在位置を測定するための間隔や、当該間隔を短くするための所定の条件を示す情報を格納する。本実施の形態においては、メモリ212は、所定の条件として、現在位置の測定の頻度を上げるべきエリアを特定するための情報を格納する
【0020】
位置情報取得部230は、GNSS(Global Navigation Satellite System)機能などを有し、定期的に、GNSSアンテナで取得した信号に基づいて、位置取得装置200すなわち車両500の現在の位置と時刻とのデータをMCU210に提供する。たとえば、MPU210は、定期的に、位置情報取得部230で測定されたデータを通信部260を利用してサーバ100にアップロードする。
【0021】
モーションセンサ270は、定期的に、車両500の向きや姿勢や振動、すなわち所定の姿勢で車両500に取り付けられた位置取得装置200自身の向きや姿勢や振動を測定して、測定データをMPU210に定期的に入力する。たとえば、車両500のエンジン始動中は、エンジンの振動によってモーションセンサ270は小さな振動を検知してMPU210に入力する。そして、車両500の走行中には、モーションセンサ270は車両500のゆれに起因する大きな振動を検知してMPU210に入力する。なお、車両500のエンジンが停止しているときは、モーションセンサ270はエンジンの振動を検知しない。
【0022】
DC/DCコンバータ280は、車両500のバッテリー501からの電力を、位置取得装置200の各部に供給する。
【0023】
バッテリー電圧モニタ290は、バッテリー501の電圧を測定して、測定結果をMCU210に出力する。たとえば、車両500のエンジン始動中は、バッテリー501の電圧が上がったり下がったりするため、バッテリー電圧モニタ290は、変動する電圧の数値をMPU210に入力する。なお、車両500のエンジン停止中は、バッテリー501の電圧がほとんど変動しない。
【0024】
通信部260は、LTEアンテナやSIMカードなどを有し、キャリア網やインターネットや他の通信端末を介してサーバ100との間でデータを送受信する。たとえば、MPU210は、定期的に、位置情報取得部230で取得した現在位置情報やモーションセンサ270で取得した振動の大きさを示す情報やバッテリー電圧モニタ290で測定された電圧情報などを通信部260を利用してサーバ100にアップロードする。ただし、通信部260は、bluetooth(登録商標)やWiFi(登録商標)を利用して、スマートフォンや他の通信装置と通信することによって、サーバ100と各種のデータをやり取りしてもよい。
<位置取得装置200の情報処理>
【0025】
次に本実施の形態にかかる位置取得装置200の情報処理について説明する。本実施の形態にかかるプロセッサ211は、メモリ212のプログラムに従って、
図4に示す処理を実行する。
【0026】
まず、プロセッサ211は、設定された測定期間が経過したか否かを判断する(ステップS102)。設定された測定期間が経過した場合(ステップS102にてYESである場合)、プロセッサ211は、位置情報取得部230に現在位置を取得させる(ステップS104)。プロセッサ211は、通信部260を介して、今回取得した現在位置を含む、メモリ212に蓄積されている未だ送信が完了していない少なくとも1つの現在位置をサーバ100に提供する(ステップS106)。
【0027】
プロセッサ211は、通信部260を介して、サーバ100への現在位置の送信に成功したか否かを判断する(ステップS108)。サーバ100への現在位置の送信に成功しなかった場合(ステップS108にてNOである場合)、プロセッサ211は、当該現在位置を、現在位置の取得日時とともにメモリ212に蓄積する(ステップS110)。
【0028】
サーバ100への現在位置の送信に成功した場合(ステップS108にてYESである場合)、プロセッサ211は、ステップS102からの処理を繰り返す。
【0029】
一方、設定された測定期間が経過していない場合(ステップS102にてNOである場合)、プロセッサ211は、所定の条件が満たされているか否かを判断する(ステップS120)。ここではプロセッサ211は、最新の現在位置が、予め定められたエリア、たとえば会社から1km以内、などに属するか否かを判断する。
【0030】
所定の条件が満たされている場合(ステップS120にてYESである場合)、プロセッサ211は、測定期間を短め、たとえば5秒など、に設定する(ステップS132)。そして、プロセッサ211は、ステップS102からの処理を繰り返す。
【0031】
所定の条件が満たされていない場合(ステップS120にてNOである場合)、プロセッサ211は、測定期間を眺め、たとえば1分など、に設定する(ステップS134)。そして、プロセッサ211は、ステップS102からの処理を繰り返す。
<サーバ100のハードウェア構成>
【0032】
次に、位置取得システム1を構成するサーバ100の構成の一態様について説明する。
図5を参照して、サーバ100は、主たる構成要素として、CPU110と、メモリ120と、操作部140と、通信インターフェイス160とを含む。
【0033】
CPU110は、メモリ120に記憶されているプログラムを実行することによって、サーバ100の各部を制御する。たとえば、CPU110は、メモリ120に格納されているプログラムを実行し、各種のデータを参照することによって、後述する各種の処理を実行する。
【0034】
メモリ120は、各種のRAM、各種のROMなどによって実現され、サーバ100に内包されているものであってもよいし、サーバ100の各種インターフェイスに着脱可能なものであってもよいし、サーバ100からアクセス可能な他の装置内のデータベースであってもよい。メモリ120は、CPU110によって実行されるプログラムや、CPU110によるプログラムの実行により生成されたデータ、機器情報データ121と、位置情報データ122などを記憶する。
【0035】
ここで、
図6を参照して、機器情報データ121は、位置取得装置200毎に、機器の識別情報や、ユーザの識別情報や、所定の条件を示す情報や、現在位置を送信するための通信端末のアドレスなどの対応関係を格納する。
【0036】
図7を参照して、位置情報データ122は、位置取得装置200毎に準備され、現在位置情報のNo.と、現在位置を示す緯度情報および経度情報と、GNSSアンテナによる取得日時と、位置取得装置200からの受信時刻などの対応関係を格納する。
【0037】
図5に戻って、操作部140は、サービスの管理者などからの操作命令を受け付けてCPU110に入力する。
【0038】
通信インターフェイス160は、CPU110からのデータを、インターネットやキャリア網、ルータなどを介して位置取得装置200や通信端末300などの他の装置に送信する。逆に、通信インターフェイス160は、インターネット、キャリア網、ルータなどを介して他の装置からのデータを受信して、CPU110に受け渡す。
<通信端末300のハードウェア構成>
【0039】
次に、通信端末300の構成の一態様について説明する。通信端末300は、たとえばパーソナルコンピュータやタブレットやスマートフォンやサーバなどによって実現される。
図8を参照して、通信端末300は、主たる構成要素として、CPU310と、メモリ320と、タッチパネル350(ディスプレイ330とポインティングデバイス340)と、通信インターフェイス360と、スピーカ370と、マイク380とを含む。
【0040】
CPU310は、メモリ320あるいは外部の記憶媒体に記憶されているプログラムを実行することによって、通信端末300の各部を制御する。すなわち、CPU310は、メモリ320に格納されているプログラムを実行することによって、後述する各種の処理を実行する。
【0041】
メモリ320は、各種のRAMや各種のROMなどによって実現され、通信端末300に内包されているものであってもよいし、通信端末300の各種インターフェイスに着脱可能なものであってもよいし、通信端末300からアクセス可能な他の装置の記録媒体であってもよい。メモリ320は、CPU310によって実行される各種プログラム、CPU310によるプログラムの実行に利用される各種データなどを記憶する。
【0042】
ディスプレイ330は、CPU310からの信号に基づいて、文字や画像を出力する。ポインティングデバイス340は、ユーザからの命令を受け付けて、当該命令をCPU310に入力する。なお、本実施の形態においては、通信端末300は、ディスプレイ330とポインティングデバイス340とが組み合わされたタッチパネル350を有する。
【0043】
通信インターフェイス360は、アンテナやコネクタによって実現され、インターネットやキャリア網を介してサーバなどの他の装置との間でデータをやり取りする。また、通信インターフェイス360は、Bluetooth(登録商標)やWiFi(登録商標)を利用して、位置取得装置200などの他の装置との間でデータをやり取りする。
【0044】
スピーカ370は、CPU310からの音声信号に基づいて各種音声を出力する。マイク380は、周囲の音声に基づいて、音声データをCPU310に入力する。
<第2の実施の形態>
【0045】
上記の実施の形態においては、
図2に示すように、サーバ100への現在位置の送信に失敗すると、位置取得装置200は、通信可能な状態に復帰した際に、送信が完了していない少なくとも現在位置を古いものから順にサーバ100に送信するものであった。しかしながら、
図9に示すように、位置取得装置200は、通信可能な状態に復帰した際に、送信が完了していない少なくとも現在位置を新しいものから順にサーバ100に送信してもよい。つまり、ステップS106において、プロセッサ211は、通信部260を介して、蓄積されている未だ送信が完了していない少なくとも1つの現在位置を新しいものから順にサーバ100に提供する(ステップS106)。
【0046】
これによって、サーバ100のCPU110は、通信インターフェイス160を介して、位置取得装置200のユーザの通信端末300に、未だ送信が完了していない少なくとも1つの現在位置を新しいものから順に送信する。そして、通信端末300のCPU310は、サーバ100から受信した順に、すなわち、位置取得装置200に関して、今回受信した少なくとも1つの現在位置を新しいものから順に、ディスプレイ330の地図上に表示していくことが好ましい。
<第3の実施の形態>
【0047】
上記の実施の形態においては、位置取得装置200毎に、現在位置の取得・送信頻度を高めるべきエリアが登録されるものであった。しかしながら、このような形態には、限られない。たとえば、所定の時間帯に現在位置の取得・送信頻度を高めるために、位置取得装置200のメモリ212が、時間帯と、現在位置の取得・送信頻度と、の対応関係を記憶して、プロセッサ211が当該対応関係に基づいて時間帯に応じた現在位置の取得・送信頻度を設定してもよい。
【0048】
あるいは、位置取得装置200は、通信環境をモニタしておき、当該通信環境が悪くなり始めると、現在位置の取得・送信頻度を高めてもよい。たとえば、プロセッサ211は、所定の条件として、通信環境が悪いか否かを判断し(ステップS120)、通信環境が悪い場合に、現在位置の取得・送信頻度を高めてもよい(ステップS132)。
【0049】
あるいは、位置取得装置200は、GPS環境をモニタしておき、当該GPS環境が悪くなり始めると、現在位置の取得・送信頻度を高めてもよい。たとえば、プロセッサ211は、所定の条件として、GPS環境が悪いか否かを判断し(ステップS120)、GPS環境が悪い場合に、現在位置の取得・送信頻度を高めてもよい(ステップS132)。
<第4の実施の形態>
【0050】
あるいは、
図10に示すように、現在位置の取得・送信に失敗した場合に(ステップS108にてNOである場合)、位置取得装置200のプロセッサ211は、当該現在位置を、現在位置の取得日時とともにメモリ212に蓄積するとともに(ステップS110)、当該現在位置を所定のエリアを特定するための情報としてメモリ212に蓄積する(ステップS112)。これによって、プロセッサ211は、次回から、当該位置を含む所定のエリア内、たとえば500m内など、に位置したか否かを判断してもよい(ステップS120)。そして、位置取得装置200が、当該位置を含む所定のエリア内に位置したと判断した際に(ステップS120にてYESである場合)、現在位置の取得・送信頻度を高めてもよい(ステップS132)。
【0051】
逆に、現在位置の取得・送信に成功した場合には(ステップS108にてYESである場合)、位置取得装置200のプロセッサ211は、当該現在位置を所定のエリアを特定するための情報から削除する(ステップS114)。
<第5の実施の形態>
【0052】
上記の実施の形態の位置取得システム1の各装置の役割の一部または全部を他の装置が実行してもよい。たとえば、サーバ100や位置取得装置200や通信端末300の各々の役割の一部または全部を別の装置が担ったり、サーバ100や位置取得装置200や通信端末300の各々の役割の一部または全部を複数の装置で担ったりしてもよい。具体的には、サーバ100の役割をクラウド上の複数のサーバで担ったり、サーバ100の役割を通信端末300のアプリケーションが担ったりすることができる。
【0053】
一例として、位置取得装置200の現在位置の取得・送信の頻度をサーバ100が判断する場合について説明する。
図11に示すように、サーバ100のCPU110は、通信インターフェイス160を介して、位置取得装置200から現在位置情報を受信して(ステップS204)、メモリ120の位置情報データ122に蓄積する(ステップS206)。
【0054】
CPU110は、所定の条件が満たされているか否かを判断する(ステップS220)。ここではCPU110は、今回の位置取得装置200の現在位置が、予め定められたエリア、たとえば会社から1km以内、などに属するか否かを判断する。
【0055】
所定の条件が満たされている場合(ステップS220にてYESである場合)、CPU110は、通信インターフェイス160を介して、測定期間を短くするように位置取得装置200に指示する(ステップS232)。逆に、所定の条件が満たされていない場合(ステップS220にてNOである場合)、CPU110は、測定期間を長くするように位置取得装置200に指示する(ステップS234)。そして、CPU110は、通信インターフェイス160を介して、次の位置取得装置200からのデータを待ち受ける。
【0056】
あるいは別の一例として、位置取得装置200は、位置情報取得部230として、車両500に搭載されているカーナビゲーションシステムのGPSアンテナなどを利用するものであってもよい。また、位置取得装置200は、モーションセンサ270なども、車両に搭載されているドライブレコーダの振動センサなどを利用してもよい。
<まとめ>
【0057】
上記の実施の形態においては、位置取得アンテナと、通信インターフェイスと、位置取得アンテナを利用して取得した現在位置を通信インターフェイスを介してサーバに送信するためのプロセッサとを備える位置取得装置が提供される。プロセッサは、所定の条件が満たされる際に、現在位置の送信間隔を短く設定する。
【0058】
好ましくは、所定の条件は、現在位置が所定のエリアに位置することを含む。
【0059】
好ましくは、所定の条件は、位置取得アンテナの電波強度または通信インターフェイスが利用する電波強度が弱くなることを含む。
【0060】
好ましくは、プロセッサは、現在位置の送信に失敗すると、送信に失敗した複数の現在位置のうちの取得されたタイミングが新しいものから順にサーバに送信する。
【0061】
好ましくは、プロセッサが、所定の条件が満たされるか否かを判断する。
【0062】
上記の位置取得装置とサーバとを備える、位置取得システムが提供される。サーバが、所定の条件が満たされるか否かを判断して、送信間隔の指示を位置取得装置に送信する。
【0063】
上記の位置取得装置とサーバと端末とを備える、位置取得システムが提供される。サーバは、位置取得装置から受信した複数の現在位置のうちの取得が新しいものから順に端末に表示させる。
【0064】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。