位置検出装置および位置検出プログラム
【課題】自動的にGPS受信機能をオンオフ設定して省電力化する位置検出装置を実現する。
【解決手段】GPS信号受信処理部107がGPS信号を受信したか否かを判断する(ステップSA2)。屋内に移動してGPS信号受信処理部107がGPS衛星信号をロストすると、GPS信号受信処理部107に電源供給停止を指示する(ステップSA6)。屋内に移動した場合には、各センサ出力に基づき屋内での相対的な移動位置を検出する自律航法センシング処理を実行し(ステップSA8)、この自律航法センシング処理で得られる位置が屋内から屋外へ移動したか否かを判断する(ステップSA9)。屋外へ移動してGPS衛星信号を受信し得る状態になると、GPS信号受信処理部107に電源供給開始を指示する(ステップSA10)。これにより、自動的にGPS受信機能をオンオフ設定して省電力化することができる。
【解決手段】GPS信号受信処理部107がGPS信号を受信したか否かを判断する(ステップSA2)。屋内に移動してGPS信号受信処理部107がGPS衛星信号をロストすると、GPS信号受信処理部107に電源供給停止を指示する(ステップSA6)。屋内に移動した場合には、各センサ出力に基づき屋内での相対的な移動位置を検出する自律航法センシング処理を実行し(ステップSA8)、この自律航法センシング処理で得られる位置が屋内から屋外へ移動したか否かを判断する(ステップSA9)。屋外へ移動してGPS衛星信号を受信し得る状態になると、GPS信号受信処理部107に電源供給開始を指示する(ステップSA10)。これにより、自動的にGPS受信機能をオンオフ設定して省電力化することができる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、屋外や屋内を移動するユーザの現在位置を検出する装置に関し、特に電池消耗を防ぐべく省電力化を図る位置検出装置および位置検出プログラムに関する。
【背景技術】
【0002】
車両に据え付けて使用する車載タイプのカーナビゲーションシステムでは、GPS衛星からの測位用電波(以下、GPS衛星信号と称す)を受信できない場所、例えばトンネルなどに入った場合には車速パルスと角速度センサ(ジャイロセンサ)とによって自律航法を実現している。一方、持ち運びが可能なナビゲーションシステム(位置検出装置)では、上記カーナビゲーションシステムと同様に屋外ではGPS衛星信号を受信して測位するが、それを受信できない屋内へ移動した時にはセンシングデバイス(加速度センサや方位センサ等)を用いて相対的な移動位置を検出する。
【0003】
センシングデバイス(加速度センサや方位センサ等)を用いて相対的な移動位置を検出する装置については、例えば特許文献1に開示されている。特許文献1に開示の装置は、ユーザの移動動作を3次元加速度センサやジャイロ等から構成される内界センサにより検出し、検出された加速度や角速度を積分してユーザが移動する方向および距離を算出して位置検出(位置推定)するようになっている。
【0004】
【特許文献1】特開2005−257644号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
ところで、上述の持ち運びが可能な位置検出装置では、電源である電池の消耗を防ぐ省電力化が要求される。比較的消費電力の多いGPS受信機能をユーザが必要に応じてオンオフ設定できる構成であれば、無駄な電力消費を無くして省電力を図れるものの、そのような構成では操作が煩わしい上、例えばGPS衛星信号を受信出来ない屋内に居るにもかかわらずGPS受信機能をオフ設定することを忘れてしまい無駄な電力消費を招致する恐れも生じる。つまり、自動的にGPS受信機能をオンオフ設定して省電力化することが出来ない、という問題がある。
【0006】
本発明は、このような事情に鑑みてなされたもので、自動的にGPS受信機能をオンオフ設定して省電力化することができる位置検出装置および位置検出プログラムを提供することを目的としている。
【課題を解決するための手段】
【0007】
上記目的を達成するため、請求項1に記載の発明では、GPS衛星信号を受信して屋外での現在位置を検出する第1の位置検出手段と、センサ出力に基づき屋内での現在位置を検出する第2の位置検出手段とを備える位置検出装置において、前記第1の位置検出手段がGPS衛星信号を受信したか否かを判定する受信判定手段と、前記受信判定手段によりGPS衛星信号を受信していないと判定された場合に、前記第1の位置検出手段への電源供給を停止する電源供給停止手段と、前記第2の位置検出手段により検出される現在位置が屋内から屋外に移動したか否かを判定する移動判定手段と、前記電源供給停止手段が前記第1の位置検出手段への電源供給を停止している時に、前記移動判定手段により現在位置が屋内から屋外に移動したと判定された場合に、前記第1の位置検出手段への電源供給を開始する電源供給開始手段とを具備することを特徴とする。
【0008】
請求項2に記載の発明では、GPS信号を受信して屋外での現在位置を検出する第1の位置検出手段と、センサ出力に基づき屋内での現在位置を検出する第2の位置検出手段とを備える位置検出装置で実行されるプログラムであって、前記第1の位置検出手段がGPS信号を受信したか否かを判定する受信判定処理と、前記受信判定処理によりGPS信号を受信していないと判定された場合に、前記第1の位置検出手段への電源供給を停止する電源供給停止処理と、前記第2の位置検出手段により検出される現在位置が屋内から屋外に移動したか否かを判定する移動判定処理と、前記電源供給停止処理が前記第1の位置検出手段への電源供給を停止している時に、前記移動判定処理により現在位置が屋内から屋外に移動したと判定された場合に、前記第1の位置検出手段への電源供給を開始する電源供給開始処理とを具備することを特徴とする。
【発明の効果】
【0009】
本発明では、自動的にGPS受信機能をオンオフ設定して省電力化することができる。
【発明を実施するための最良の形態】
【0010】
以下、図面を参照して本発明の実施の形態について説明する。
A.構成
図1は、本発明の実施の一形態による位置検出装置の構成を示すブロック図である。この図に示す位置検出装置は、ユーザが携行可能なサイズの筐体に、後述する構成要素100〜112を備え、屋外又は屋内を携行移動するユーザの現在位置を検出して画面表示するものであり、とりわけ携行移動するユーザの位置が屋内にあると、GPS受信機能を自動的にオフ設定(電源オフ)し、一方、屋内から屋外へ移動すれば、GPS受信機能を自動的にオン設定(電源オン)して省電力化を図ることを特徴とする。
【0011】
以下、こうした位置検出装置の構成について説明する。図1において、CPU100は操作部103から供給される操作イベントに応じて装置各部を制御する。本発明の要旨に係わるCPU100の特徴的な処理動作については追って述べる。ROM101は、CPU100が実行する各種プログラムデータを記憶する。
【0012】
RAM102は、ワークエリアおよびデータエリアを備える。RAM102のワークエリアには、CPU100の演算に用いる各種レジスタ・フラグデータの他、後述する各種センサの出力データや位置情報が一時記憶される。RAM102のデータエリアには、位置検出が行われる建物のフロアレイアウト、すなわち建物の各階毎の平面構造(壁位置、階段位置、エレベータ位置およびエスカレータ位置など)を表すレイアウトデータが記憶される。
【0013】
ここで、図2〜図3を参照してRAM102のデータエリアに格納されるレイアウトデータの内容について説明する。図2はレイアウトデータの一例を示す図である。位置検出が行われる建物の1階部分の平面構造が図2(a)のレイアウト図で示される場合、これに対応するレイアウトデータは、例えばベクトルデータ形式ならば、同図(b)に図示するように、内壁輪郭を表すと共に、階段、エレベータおよびエスカレータの各位置を表すレイアウトデータ(X1(0),Y1(0))〜(X1(n),Y1(n))からなる。
【0014】
こうしたレイアウトデータは、位置検出が行われる建物の各階毎に設けられる。例えば、図3に図示する一例のように、四階建ての建物ならば、一階の高さZ1(標高h1)の1Fレイアウトデータ(X1(0),Y1(0))〜(X1(n),Y1(n))、二階の高さZ2(標高h2)の2Fレイアウトデータ(X2(0),Y2(0))〜(X2(n),Y2(n))、三階の高さZ3(標高h3)の3Fレイアウトデータ(X3(0),Y3(0))〜(X3(n),Y3(n))および四階の高さZ4(標高h4)の4Fレイアウトデータ(X4(0),Y4(0))〜(X4(n),Y4(n))から構成される3次元レイアウトデータがRAM102のデータエリアに格納される。
【0015】
次に、再び図1を参照して実施形態の構成について説明を進める。図1において、操作部103には各種の操作ボタンや操作スイッチが設けられ、操作されるボタンやスイッチの種類に対応した操作イベントを発生してCPU100に供給する。具体的には、装置電源をオンオフするパワースイッチの他、例えば建物入口など屋内での位置検出の基点となる開始点位置を入力する開始点位置入力スイッチなどが操作部103に配設される。
【0016】
表示部104は、CPU100から供給される表示制御信号に応じてユーザの現在位置を表示する。具体的には、GPS測位で得られた位置情報を含むメッシュの地図データで示される地図上に、当該位置情報で特定される現在位置を画面表示したり、位置検出が行われる階のレイアウトデータに基づきレイアウト図を画面表示しながら、検出されたユーザの現在位置をそのレイアウト図に重ね合わせた移動軌跡として画面表示したりする。気圧センサ105は、ピエゾ抵抗効果を利用した圧力センサにより大気圧を検出して気圧データを出力する。
【0017】
地図データベース106は、ベクトル形式で表現される地図データを、メッシュと呼ばれる矩形領域に分割して記憶管理する。GPS信号受信処理部107は、CPU100の指示に従ってGPS衛星信号を受信して少なくとも現在地の緯度および経度を含む位置情報を演算する。この位置情報は、RAM102のワークエリアにストアされる。また、GPS信号受信処理部107は、自己の駆動電源をオンオフするスイッチング素子を備え、CPU100から電源供給停止指示を受領した場合には自己の駆動電源をオフし、一方、CPU100から電源供給開始指示を受領した場合には自己の駆動電源をオンする。
【0018】
3軸地磁気センサ108は、例えば外部磁界の変動に応じてインピーダンスが変化するMI素子を用いて検出した地磁気の3軸(X,Y,Z)成分を表す3軸地磁気データを出力する。3軸加速度センサ109は、ピエゾ抵抗型もしくは静電容量型の検出機構により3軸加速度成分を検出して3軸成分毎の加速度データを出力する。なお、3軸加速度センサ109により検出される3軸成分は、3軸地磁気センサ108の3軸(X,Y,Z)成分にそれぞれ対応する。
【0019】
移動量演算部110は、CPU100の制御の下に、3軸地磁気センサ108から出力される3軸地磁気データに基づき、開始点位置もしくは前回検出した位置からの移動方向を算出すると共に、3軸加速度センサ109から出力される3軸加速度データを積分して開始点位置もしくは前回検出した位置からの移動距離を算出する。この移動量演算部110により算出される移動方向および移動距離は、CPU100に供給される。
【0020】
気圧変化演算部111は、CPU100の制御の下に、本装置を携行移動するユーザの昇降動作を判別する。すなわち、気圧センサ105から出力される気圧データが微減変化する場合にはユーザが上層階に昇っていると判別し、一方、気圧データが微増変化する場合にはユーザが下層階に降りていると判別する。こうした判別結果を表す動作判別データはCPU100に供給される。また、気圧変化演算部111では、気圧センサ105から出力される気圧データの値を標高に換算した標高データを発生する。
【0021】
位置情報処理部112は、CPU100と連携して建物内部を移動するユーザの位置を算出し、算出したユーザの位置を現在参照中のレイアウトデータに対応するレイアウト図上に重ね合わせて表示部104に位置表示したり、算出されたユーザの位置がレイアウト図に示される構造物に交差した場合にはその交差位置を現在位置に補正したりする。CPU100と連携して動作する位置情報処理部112の処理の詳細については追って述べる。
【0022】
B.動作
次に、図4〜図10を参照して上記構成による位置検出装置が実行する測位処理の動作を説明する。なお、図4は測位処理の動作を示すフローチャート、図5〜図6は測位処理からコールされる自律航法センシング処理の動作を示すフローチャートである。図7〜図10は自律航法センシング処理の動作を説明するための図である。
【0023】
(1)測位処理の動作
位置検出装置がパワーオンされると、図4に図示する測位処理のステップSA1に進み、CPU100の指示に従ってGPS信号受信処理部107がGPS衛星信号を受信するGPS信号受信処理を実行する。続いて、ステップSA2では、GPS信号受信処理部107がGPS衛星信号を受信している否かをCPU100が判断する。GPS信号受信処理部107がGPS衛星信号を受信している場合、すなわち本装置を携行するユーザが屋外にいる場合には、上記ステップSA2の判断結果は「YES」になり、ステップSA3に進む。
【0024】
ステップSA3では、GPS信号受信処理部107がGPS衛星信号から少なくとも現在地の緯度および経度を含む位置情報を発生する測位演算処理を実行する。この測位演算処理で得られる位置情報(現在位置)は、RAM102のワークエリアにストアされる。次いで、ステップSA4では、CPU100がRAM102のワークエリアにストアされた位置情報を含むメッシュの地図データを地図データベース106から検索する地図データ検索処理を実行する。続くステップSA5では、上記ステップSA4において検索された地図データで示される地図上に、位置情報で特定される現在位置を表示する表示処理を実行する。この後、上述のステップSA1に処理を戻し、以後、GPS信号受信処理部107がGPS衛星信号をロストするまで上述したステップSA1〜SA5を繰り返す。
【0025】
そして、例えば本装置を携行するユーザが屋外から屋内に移動し、これによりGPS信号受信処理部107がGPS衛星信号をロストしたとする。そうすると、上述したステップSA2の判断結果が「NO」になり、ステップSA6に進み、CPU100がGPS信号受信処理部107に電源供給停止を指示する。GPS信号受信処理部107では、CPU100からの電源供給停止指示に応じて自己の駆動電源をオフする。この結果、本装置を携行するユーザが屋外から屋内に移動してGPS衛星信号をロストすると、自動的にGPS信号受信処理部107の駆動電源をオフ設定して省電力化を図るようになっている。
【0026】
続いて、ステップSA7では、屋外から屋内へ移動したのに対応してユーザが開始点位置入力スイッチを操作して開始点位置を入力すると、入力された開始点位置をCPU100がRAM102のワークエリアにストアする。開始点位置とは、例えば図7(a)に図示する一例のように、建物入口など位置検出の基点を指す。なお、本実施形態では、ユーザ操作で開始点位置を入力する形態としたが、これに限らず、屋内に立ち入る直前、つまりGPS衛星信号をロストする直前にGPS測位で得た位置情報を自動的に開始点位置として入力する形態としても構わない。
【0027】
さて、こうして開始点位置が設定されると、ステップSA8を介して自律航法センシング処理を実行する。この自律航法センシング処理では、後述するように、気圧センサ105、3軸地磁気センサ108および3軸加速度センサ109の各センサ出力に基づき屋内での相対的な移動位置を検出する。そして、ステップSA9では、自律航法センシング処理により得られた位置が屋内から屋外へ移動したか否かを判断する。得られた位置が屋内ならば、判断結果は「NO」になり、上記ステップSA8に処理を戻して自律航法センシング処理を継続する。
【0028】
これに対し、得られた位置が屋外になった場合、つまり屋内から屋外へ移動すると、上記ステップSA9の判断結果は「YES」になり、ステップSA10に進む。ステップSA10では、CPU100がGPS信号受信処理部107に電源供給開始を指示する。GPS信号受信処理部107では、CPU100からの電源供給開始指示に応じて自己の駆動電源をオンする。これにより、本装置を携行するユーザが屋内から屋外に移動してGPS衛星信号を受信し得る状態になると、自動的にGPS信号受信処理部107の駆動電源をオン設定する。こうして、GPS信号受信処理部107が受信動作可能になると、上述のステップSA1に処理を戻してGPS衛星信号を受信するGPS信号受信処理を再び実行する。
【0029】
(1)自律航法センシング処理の動作
次に、図5〜図6を参照して自律航法センシング処理の動作を説明する。上述した測位処理のステップSA8(図4参照)を介して本処理が実行されると、図5に図示するステップSB1に進み、3軸地磁気センサ108から出力される3軸(X,Y,Z)成分の地磁気データを、CPU100が一定期間複数取り込んでRAM102のワークエリアにストアする3軸地磁気センサ計測処理を実行する。
【0030】
続いて、ステップSB2では、CPU100が移動量演算部110に対して絶対方向演算処理の実行を指示する。すると、移動量演算部110は、上記ステップSB1においてRAM102のワークエリアにストアされた3軸(X,Y,Z)成分の地磁気データに基づいて本装置(位置検出装置)を携行移動するユーザの移動方向を算出する絶対方向演算処理を実行する。そして、移動量演算部110が算出したユーザの移動方向を、CPU100がRAM102のワークエリアにストアする。
【0031】
次いで、ステップSB3では、3軸加速度センサ109から出力される3軸(X,Y,Z)成分の加速度データを、CPU100が一定期間複数取り込んでRAM102のワークエリアにストアする3軸加速度センサ計測処理を実行し、続くステップSB4では、気圧センサ105から出力される気圧データを、CPU100が一定期間複数取り込んでRAM102のワークエリアにストアする気圧センサ計測処理を実行する。
【0032】
そして、ステップSB5に進むと、下記(a)〜(d)の処理内容を含む位置情報演算処理を実行する。
(a)CPU100が移動量演算部110に対して移動距離の算出を指示する。すると、移動量演算部110は、上記ステップSB3においてRAM102のワークエリアにストアされた3軸(X,Y,Z)成分の加速度データに基づきユーザの移動距離(開始点位置もしくは前回検出した位置からの移動距離)を算出する。そして、移動量演算部110が算出したユーザの移動距離を、CPU100がRAM102のワークエリアにストアする。
【0033】
(b)CPU100が気圧変化演算部111に対して演算開始を指示する。すると、気圧変化演算部111では、上記ステップSB4においてRAM102のワークエリアにストアされた気圧データを標高に換算した標高データを発生してCPU100に供給する。また、気圧変化演算部111では、RAM102のワークエリアから読み出した気圧データからユーザの昇降動作を判別する動作判別データを発生してCPU100に供給する。すなわち、一定期間複数取り込まれた気圧データが微減変化していれば、ユーザが上層階に昇っていることを表す動作判別データを発生し、一方、微増変化していれば、ユーザが下層階に降りていることを表す動作判別データを発生する。
【0034】
(c)CPU100は、RAM102のデータエリアに格納される3次元レイアウトデータ(図3参照)の内、気圧変化演算部111から供給される標高データに対応した高さの階のレイアウトデータを選択し、選択したレイアウトデータを参照するよう位置情報処理部112に指示する。例えば、気圧変化演算部111から供給される標高データに対応した高さが「h1」であったとする。そうすると、CPU100は図3に図示する3次元レイアウトデータの内から1Fレイアウトデータを選択し、この1Fレイアウトデータを参照するよう位置情報処理部112に指示する。
【0035】
(d)CPU100が位置情報処理部112に対して位置情報演算処理の実行を指示する。すると、位置情報処理部112は、RAM102のワークエリアにストアされる「開始点位置(もしくは前回検出した位置)」、ユーザの「移動方向」および「移動距離」に基づき、現在参照中のレイアウトデータで示されるレイアウト図上におけるユーザの現在位置を算出する。
【0036】
このようにして、レイアウト図上におけるユーザの現在位置が得られると、ステップSB6に処理を進め、CPU100はユーザの移動態様が平地歩行であるか否かを判断する。平地歩行であるか否かは、上記ステップSB3において一定期間複数取り込まれた3軸(X,Y,Z)成分の加速度データに基づき判断する。以下、平地歩行の場合と、平地歩行以外の場合とに分けて動作説明を進める。
【0037】
<平地歩行の場合>
ユーザの移動態様が平地歩行であったとすると、上記ステップSB6の判断結果は「YES」となり、ステップSB7に進む。ステップSB7では、上記ステップSB5において位置情報処理部112が算出したユーザの現在位置を、現在参照中のレイアウトデータで示されるレイアウト図に重ね合わせる。続いて、ステップSB8では、位置補正の必要の有無をCPU100が判断する。
【0038】
すなわち、CPU100では、上記ステップSB5において得られたユーザの現在位置が、現在参照中のレイアウトデータで示されるレイアウト図中の構造物と交差するかどうかで位置補正の必要の有無を判断する。ユーザの現在位置がレイアウト図中の構造物に交差しなければ、位置補正の必要が無いとして、上記ステップSB8の判断結果は「NO」になり、ステップSB9に進み、上述したステップSB7において重ね合わせたユーザの現在位置とレイアウト図とを表示部104に画面表示して本処理を終える。
【0039】
なお、このステップSB9では、位置情報処理部112が重ね合わせたユーザの現在位置とレイアウト図とをCPU100が表示部104に画面表示するが、その際、CPU100は図7(a)に図示する一例のように、開始点位置から時々刻々計測されるユーザの現在位置を移動軌跡として表示するようになっている。
【0040】
一方、ユーザの現在位置がレイアウト図中の構造物に交差した場合、つまり図7(a)に図示する一例のように、実際の移動経路は直進であるのに対し、計測処理にて検出したユーザの位置に累積誤差が生じてレイアウト図中の壁に交差するような状況であると、位置補正が必要となる為、上記ステップSB8の判断結果は「YES」になり、ステップSB10に進む。
【0041】
ステップSB10では、位置情報処理部112がその交差位置をユーザの現在位置に補正する。すなわち、図7(a)の一例の場合には、同図(b)に図示するように、レイアウトデータ(X1(a),Y1(a))とレイアウトデータ(X1(b),Y1(b))とを結ぶベクトルとの交点をユーザの現在位置とする。こうすることによって、累積誤差がリセットされた新たなユーザの現在位置として更新される。そして、ステップSB9に進み、更新されたユーザの現在位置をレイアウト図上に画面表示して本処理を終える。
【0042】
<平地歩行以外の場合>
ユーザの移動態様が平地歩行以外であると、上述したステップSB6の判断結果は「NO」になり、図6に図示するステップSB11に進む。ステップSB11では、上記ステップSB3においてRAM102のワークエリアにストアされた3軸(X,Y,Z)成分の加速度データに基づき、「エレベータ」、「エスカレータ」および「階段歩行」のいずれの移動態様でユーザが移動中であるのかをCPU100が判別する。
【0043】
具体的には、上記ステップSB3において一定期間複数取り込まれた3軸(X,Y,Z)成分の加速度データの変化傾向を抽出し、抽出した変化傾向に応じて「エレベータ」、「エスカレータ」および「階段歩行」のいずれであるかを特定する。以下、特定された移動態様が「エレベータ」、「エスカレータ」および「階段歩行」の各場合に分けて動作説明を進める。
【0044】
<移動態様が「エレベータ」の場合>
移動態様が「エレベータ」と特定されると、ステップSB12に進み、エレベータによる移動が停止しているか否かを、上記ステップSB5において気圧変化演算部111が発生する動作判別データに基づきCPU100が判断する。動作判別データが昇る動作もしくは降りる動作を表している場合、つまりエレベータ移動中ならば、判断結果は「NO」になり、前述したステップSB7(図5参照)に処理を戻す。
【0045】
一方、動作判別データが昇降動作であることを表さず、エレベータ停止と判断されると、上記ステップSB12の判断結果は「YES」になり、ステップSB13に進み、エレベータ降り口位置リセット処理を実行する。このエレベータ降り口位置リセット処理では、CPU100が位置情報処理部112に対してユーザの現在位置をエレベータ降り口位置にリセットするよう指示する。
【0046】
例えば図8(a)に図示する一例のように、位置情報処理部112により算出されるユーザの現在位置がエレベータ内に存在している状態でCPU100がエレベータ停止と判断した場合には、同図(b)に図示するように、ユーザの現在位置をエレベータ降り口位置に補正する。これにより、累積誤差がリセットされた新たなユーザの現在位置に更新される。
【0047】
また、ステップSB13のエレベータ降り口位置リセット処理では、CPU100がRAM102のデータエリアに格納される3次元レイアウトデータ(図3参照)の内、気圧変化演算部111から供給される標高データに対応した高さの階のレイアウトデータを選択し、選択したレイアウトデータを参照するよう位置情報処理部112に指示した後、上述したステップSB7(図5参照)に進む。なお、エレベータ降り口位置リセット処理後のステップSB7では、上記ステップSB13で更新されたユーザの現在位置(エレベータ降り口位置)を、エレベータを使ってユーザが降りた階のレイアウトデータで示されるレイアウト図に重ね合わせる。
【0048】
<移動態様が「エスカレータ」の場合>
移動態様が「エスカレータ」と特定されると、ステップSB14に進み、エスカレータによる移動が停止しているか否かを、上記ステップSB5において気圧変化演算部111が発生する動作判別データに基づきCPU100が判断する。動作判別データが昇る動作もしくは降りる動作を表している場合、つまりエスカレータ移動中ならば、判断結果は「NO」になり、前述したステップSB7(図5参照)に処理を戻す。
【0049】
一方、動作判別データが昇降動作であることを表さず、エスカレータ停止と判断されると、上記ステップSB14の判断結果は「YES」になり、ステップSB15に進み、エスカレータ降り口位置リセット処理を実行する。このエスカレータ降り口位置リセット処理では、CPU100が位置情報処理部112に対してユーザの現在位置をエスカレータ降り口位置にリセットするよう指示する。
【0050】
例えば図9(a)に図示する一例のように、位置情報処理部110により算出されるユーザの現在位置がエスカレータ降り口近傍に存在している状態でCPU100がエスカレータ停止と判断した場合には、同図(b)に図示するように、ユーザの現在位置をエスカレータ降り口位置に補正する。これにより、累積誤差がリセットされた新たなユーザの現在位置に更新される。
【0051】
また、ステップSB15のエスカレータ降り口位置リセット処理では、CPU100がRAM102のデータエリアに格納される3次元レイアウトデータ(図3参照)の内、気圧変化演算部111から供給される標高データに対応した高さの階のレイアウトデータを選択し、選択したレイアウトデータを参照するよう位置情報処理部112に指示した後、上述したステップSB7(図5参照)に進む。なお、エスカレータ降り口位置リセット処理後のステップSB7では、上記ステップSB15で更新されたユーザの現在位置(エスカレータ降り口位置)を、エスカレータを使ってユーザが降りた階のレイアウトデータで示されるレイアウト図に重ね合わせる。
【0052】
<移動態様が「階段歩行」の場合>
移動態様が「階段歩行」と特定されると、ステップSB16に進み、階段踊り場であるか否かを、上記ステップSB5において気圧変化演算部111が発生する動作判別データに基づきCPU100が判断する。動作判別データが昇る動作もしくは降りる動作を表している場合、つまり階段を昇っている状態あるいは降りている状態ならば、判断結果は「NO」になり、前述したステップSB7(図5参照)に処理を戻す。
【0053】
一方、動作判別データが昇降動作であることを表さない場合、つまり階段踊り場での歩行と判断されると、上記ステップSB16の判断結果は「YES」になり、ステップSB17に進み、階段出口位置リセット処理を実行する。この階段出口位置リセット処理では、CPU100が位置情報処理部112に対してユーザの現在位置を階段出口位置にリセットするよう指示する。例えば図10(a)に図示する一例のように、ユーザの現在位置が階段踊り場と判断された場合には、同図(b)に図示するように、ユーザの現在位置を階段出口位置に補正する。これにより、累積誤差がリセットされた新たなユーザの現在位置に更新される。
【0054】
また、ステップSB17の階段出口位置リセット処理では、CPU100がRAM102のデータエリアに格納される3次元レイアウトデータ(図3参照)の内、気圧変化演算部111から供給される標高データに対応した高さの階のレイアウトデータを選択し、選択したレイアウトデータを参照するよう位置情報処理部112に指示した後、上述したステップSB7(図5参照)に進む。なお、階段出口位置リセット処理後のステップSB7では、上記ステップSB17で更新されたユーザの現在位置(階段出口位置)を、ユーザが降りた階のレイアウトデータで示されるレイアウト図に重ね合わせる。
【0055】
(2)自律航法センシング処理の終了
次に、ユーザの現在位置がレイアウト図中の構造物の中から外にでる場合について説明する。図11(a)に図示する一例のように屋内を入り口に向かって歩行している場合は、先に説明した平地歩行の場合と同様にユーザの現在位置を算出し、必要があれば同図(b)に示すレイアウトデータで位置補正を行なう。
【0056】
そして入口から屋外にでると、図4のステップSA9の判断結果は「YES」になり、ステップSA10に進む。ステップSA10では、CPU100がGPS信号受信処理部107に電源供給開始を指示する。GPS信号受信処理部107では、CPU100からの電源供給開始指示に応じて自己の駆動電源をオンする。これによりGPS衛星信号を受信し得る状態となり、GPS信号受信処理部107がGPS衛星信号から少なくとも現在地の緯度および経度を含む位置情報を発生する測位演算処理を実行する。
この結果得られた位置情報に基づき、ユーザの現在位置を補正する。これ以後は、GPS信号受信処理部107から取得した位置情報に基づきユーザの現在位置を表示する。
【0057】
以上のように、本実施形態では、GPS信号受信処理部107がGPS信号を受信したか否かをCPU100が判断し、例えば本装置を携行するユーザが屋外から屋内に移動することによってGPS信号受信処理部107がGPS衛星信号をロストした場合には、CPU100がGPS信号受信処理部107に電源供給停止を指示する。これにより、GPS信号受信処理部107では、CPU100からの電源供給停止指示に応じて自己の駆動電源をオフする結果、自動的にGPS信号受信処理部107の駆動電源をオフ設定して省電力化を図る。
【0058】
そして、本装置を携行するユーザが屋外から屋内に移動したのに対応して開始点位置を入力すると、入力された開始点位置を基点として、気圧センサ105、3軸地磁気センサ108および3軸加速度センサ109の各センサ出力に基づき屋内での相対的な移動位置を検出する自律航法センシング処理を実行する。この自律航法センシング処理により得られる位置が屋外になった場合、つまり本装置を携行するユーザが屋内から屋外へ移動してGPS衛星信号を受信し得る状態になると、CPU100がGPS信号受信処理部107に電源供給開始を指示し、自動的にGPS信号受信処理部107の駆動電源をオン設定する。この結果、自動的にGPS受信機能をオンオフ設定して省電力化することが可能になる。
【0059】
なお、本実施形態では、図2(b)に図示したベクトルデータ形式のレイアウトデータを用いる自律航法センシング処理について言及したが、これに限定されず、ラスタデータ形式のレイアウトデータを用いる自律航法センシング処理であっても構わない。
【図面の簡単な説明】
【0060】
【図1】本発明による一実施形態の構成を示すブロック図である。
【図2】RAM102のデータエリアに格納されるレイアウトデータの内容を説明するための図である。
【図3】RAM102のデータエリアに格納されるレイアウトデータの内容を説明するための図である。
【図4】測位処理の動作を示すフローチャートである。
【図5】自律航法センシング処理の動作を示すフローチャートである。
【図6】自律航法センシング処理の動作を説明するための図である。
【図7】自律航法センシング処理の動作を説明するための図である。
【図8】自律航法センシング処理の動作を説明するための図である。
【図9】自律航法センシング処理の動作を説明するための図である。
【図10】自律航法センシング処理の動作を説明するための図である。
【図11】自律航法センシング処理の終了を説明するための図である。
【符号の説明】
【0061】
100 CPU
101 ROM
102 RAM
103 操作部
104 表示部
105 気圧センサ
106 地図データベース
107 GPS信号受信処理部
108 3軸地磁気センサ
109 3軸加速度センサ
110 移動量演算部
111 気圧変化演算部
112 位置情報処理部
【技術分野】
【0001】
本発明は、屋外や屋内を移動するユーザの現在位置を検出する装置に関し、特に電池消耗を防ぐべく省電力化を図る位置検出装置および位置検出プログラムに関する。
【背景技術】
【0002】
車両に据え付けて使用する車載タイプのカーナビゲーションシステムでは、GPS衛星からの測位用電波(以下、GPS衛星信号と称す)を受信できない場所、例えばトンネルなどに入った場合には車速パルスと角速度センサ(ジャイロセンサ)とによって自律航法を実現している。一方、持ち運びが可能なナビゲーションシステム(位置検出装置)では、上記カーナビゲーションシステムと同様に屋外ではGPS衛星信号を受信して測位するが、それを受信できない屋内へ移動した時にはセンシングデバイス(加速度センサや方位センサ等)を用いて相対的な移動位置を検出する。
【0003】
センシングデバイス(加速度センサや方位センサ等)を用いて相対的な移動位置を検出する装置については、例えば特許文献1に開示されている。特許文献1に開示の装置は、ユーザの移動動作を3次元加速度センサやジャイロ等から構成される内界センサにより検出し、検出された加速度や角速度を積分してユーザが移動する方向および距離を算出して位置検出(位置推定)するようになっている。
【0004】
【特許文献1】特開2005−257644号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
ところで、上述の持ち運びが可能な位置検出装置では、電源である電池の消耗を防ぐ省電力化が要求される。比較的消費電力の多いGPS受信機能をユーザが必要に応じてオンオフ設定できる構成であれば、無駄な電力消費を無くして省電力を図れるものの、そのような構成では操作が煩わしい上、例えばGPS衛星信号を受信出来ない屋内に居るにもかかわらずGPS受信機能をオフ設定することを忘れてしまい無駄な電力消費を招致する恐れも生じる。つまり、自動的にGPS受信機能をオンオフ設定して省電力化することが出来ない、という問題がある。
【0006】
本発明は、このような事情に鑑みてなされたもので、自動的にGPS受信機能をオンオフ設定して省電力化することができる位置検出装置および位置検出プログラムを提供することを目的としている。
【課題を解決するための手段】
【0007】
上記目的を達成するため、請求項1に記載の発明では、GPS衛星信号を受信して屋外での現在位置を検出する第1の位置検出手段と、センサ出力に基づき屋内での現在位置を検出する第2の位置検出手段とを備える位置検出装置において、前記第1の位置検出手段がGPS衛星信号を受信したか否かを判定する受信判定手段と、前記受信判定手段によりGPS衛星信号を受信していないと判定された場合に、前記第1の位置検出手段への電源供給を停止する電源供給停止手段と、前記第2の位置検出手段により検出される現在位置が屋内から屋外に移動したか否かを判定する移動判定手段と、前記電源供給停止手段が前記第1の位置検出手段への電源供給を停止している時に、前記移動判定手段により現在位置が屋内から屋外に移動したと判定された場合に、前記第1の位置検出手段への電源供給を開始する電源供給開始手段とを具備することを特徴とする。
【0008】
請求項2に記載の発明では、GPS信号を受信して屋外での現在位置を検出する第1の位置検出手段と、センサ出力に基づき屋内での現在位置を検出する第2の位置検出手段とを備える位置検出装置で実行されるプログラムであって、前記第1の位置検出手段がGPS信号を受信したか否かを判定する受信判定処理と、前記受信判定処理によりGPS信号を受信していないと判定された場合に、前記第1の位置検出手段への電源供給を停止する電源供給停止処理と、前記第2の位置検出手段により検出される現在位置が屋内から屋外に移動したか否かを判定する移動判定処理と、前記電源供給停止処理が前記第1の位置検出手段への電源供給を停止している時に、前記移動判定処理により現在位置が屋内から屋外に移動したと判定された場合に、前記第1の位置検出手段への電源供給を開始する電源供給開始処理とを具備することを特徴とする。
【発明の効果】
【0009】
本発明では、自動的にGPS受信機能をオンオフ設定して省電力化することができる。
【発明を実施するための最良の形態】
【0010】
以下、図面を参照して本発明の実施の形態について説明する。
A.構成
図1は、本発明の実施の一形態による位置検出装置の構成を示すブロック図である。この図に示す位置検出装置は、ユーザが携行可能なサイズの筐体に、後述する構成要素100〜112を備え、屋外又は屋内を携行移動するユーザの現在位置を検出して画面表示するものであり、とりわけ携行移動するユーザの位置が屋内にあると、GPS受信機能を自動的にオフ設定(電源オフ)し、一方、屋内から屋外へ移動すれば、GPS受信機能を自動的にオン設定(電源オン)して省電力化を図ることを特徴とする。
【0011】
以下、こうした位置検出装置の構成について説明する。図1において、CPU100は操作部103から供給される操作イベントに応じて装置各部を制御する。本発明の要旨に係わるCPU100の特徴的な処理動作については追って述べる。ROM101は、CPU100が実行する各種プログラムデータを記憶する。
【0012】
RAM102は、ワークエリアおよびデータエリアを備える。RAM102のワークエリアには、CPU100の演算に用いる各種レジスタ・フラグデータの他、後述する各種センサの出力データや位置情報が一時記憶される。RAM102のデータエリアには、位置検出が行われる建物のフロアレイアウト、すなわち建物の各階毎の平面構造(壁位置、階段位置、エレベータ位置およびエスカレータ位置など)を表すレイアウトデータが記憶される。
【0013】
ここで、図2〜図3を参照してRAM102のデータエリアに格納されるレイアウトデータの内容について説明する。図2はレイアウトデータの一例を示す図である。位置検出が行われる建物の1階部分の平面構造が図2(a)のレイアウト図で示される場合、これに対応するレイアウトデータは、例えばベクトルデータ形式ならば、同図(b)に図示するように、内壁輪郭を表すと共に、階段、エレベータおよびエスカレータの各位置を表すレイアウトデータ(X1(0),Y1(0))〜(X1(n),Y1(n))からなる。
【0014】
こうしたレイアウトデータは、位置検出が行われる建物の各階毎に設けられる。例えば、図3に図示する一例のように、四階建ての建物ならば、一階の高さZ1(標高h1)の1Fレイアウトデータ(X1(0),Y1(0))〜(X1(n),Y1(n))、二階の高さZ2(標高h2)の2Fレイアウトデータ(X2(0),Y2(0))〜(X2(n),Y2(n))、三階の高さZ3(標高h3)の3Fレイアウトデータ(X3(0),Y3(0))〜(X3(n),Y3(n))および四階の高さZ4(標高h4)の4Fレイアウトデータ(X4(0),Y4(0))〜(X4(n),Y4(n))から構成される3次元レイアウトデータがRAM102のデータエリアに格納される。
【0015】
次に、再び図1を参照して実施形態の構成について説明を進める。図1において、操作部103には各種の操作ボタンや操作スイッチが設けられ、操作されるボタンやスイッチの種類に対応した操作イベントを発生してCPU100に供給する。具体的には、装置電源をオンオフするパワースイッチの他、例えば建物入口など屋内での位置検出の基点となる開始点位置を入力する開始点位置入力スイッチなどが操作部103に配設される。
【0016】
表示部104は、CPU100から供給される表示制御信号に応じてユーザの現在位置を表示する。具体的には、GPS測位で得られた位置情報を含むメッシュの地図データで示される地図上に、当該位置情報で特定される現在位置を画面表示したり、位置検出が行われる階のレイアウトデータに基づきレイアウト図を画面表示しながら、検出されたユーザの現在位置をそのレイアウト図に重ね合わせた移動軌跡として画面表示したりする。気圧センサ105は、ピエゾ抵抗効果を利用した圧力センサにより大気圧を検出して気圧データを出力する。
【0017】
地図データベース106は、ベクトル形式で表現される地図データを、メッシュと呼ばれる矩形領域に分割して記憶管理する。GPS信号受信処理部107は、CPU100の指示に従ってGPS衛星信号を受信して少なくとも現在地の緯度および経度を含む位置情報を演算する。この位置情報は、RAM102のワークエリアにストアされる。また、GPS信号受信処理部107は、自己の駆動電源をオンオフするスイッチング素子を備え、CPU100から電源供給停止指示を受領した場合には自己の駆動電源をオフし、一方、CPU100から電源供給開始指示を受領した場合には自己の駆動電源をオンする。
【0018】
3軸地磁気センサ108は、例えば外部磁界の変動に応じてインピーダンスが変化するMI素子を用いて検出した地磁気の3軸(X,Y,Z)成分を表す3軸地磁気データを出力する。3軸加速度センサ109は、ピエゾ抵抗型もしくは静電容量型の検出機構により3軸加速度成分を検出して3軸成分毎の加速度データを出力する。なお、3軸加速度センサ109により検出される3軸成分は、3軸地磁気センサ108の3軸(X,Y,Z)成分にそれぞれ対応する。
【0019】
移動量演算部110は、CPU100の制御の下に、3軸地磁気センサ108から出力される3軸地磁気データに基づき、開始点位置もしくは前回検出した位置からの移動方向を算出すると共に、3軸加速度センサ109から出力される3軸加速度データを積分して開始点位置もしくは前回検出した位置からの移動距離を算出する。この移動量演算部110により算出される移動方向および移動距離は、CPU100に供給される。
【0020】
気圧変化演算部111は、CPU100の制御の下に、本装置を携行移動するユーザの昇降動作を判別する。すなわち、気圧センサ105から出力される気圧データが微減変化する場合にはユーザが上層階に昇っていると判別し、一方、気圧データが微増変化する場合にはユーザが下層階に降りていると判別する。こうした判別結果を表す動作判別データはCPU100に供給される。また、気圧変化演算部111では、気圧センサ105から出力される気圧データの値を標高に換算した標高データを発生する。
【0021】
位置情報処理部112は、CPU100と連携して建物内部を移動するユーザの位置を算出し、算出したユーザの位置を現在参照中のレイアウトデータに対応するレイアウト図上に重ね合わせて表示部104に位置表示したり、算出されたユーザの位置がレイアウト図に示される構造物に交差した場合にはその交差位置を現在位置に補正したりする。CPU100と連携して動作する位置情報処理部112の処理の詳細については追って述べる。
【0022】
B.動作
次に、図4〜図10を参照して上記構成による位置検出装置が実行する測位処理の動作を説明する。なお、図4は測位処理の動作を示すフローチャート、図5〜図6は測位処理からコールされる自律航法センシング処理の動作を示すフローチャートである。図7〜図10は自律航法センシング処理の動作を説明するための図である。
【0023】
(1)測位処理の動作
位置検出装置がパワーオンされると、図4に図示する測位処理のステップSA1に進み、CPU100の指示に従ってGPS信号受信処理部107がGPS衛星信号を受信するGPS信号受信処理を実行する。続いて、ステップSA2では、GPS信号受信処理部107がGPS衛星信号を受信している否かをCPU100が判断する。GPS信号受信処理部107がGPS衛星信号を受信している場合、すなわち本装置を携行するユーザが屋外にいる場合には、上記ステップSA2の判断結果は「YES」になり、ステップSA3に進む。
【0024】
ステップSA3では、GPS信号受信処理部107がGPS衛星信号から少なくとも現在地の緯度および経度を含む位置情報を発生する測位演算処理を実行する。この測位演算処理で得られる位置情報(現在位置)は、RAM102のワークエリアにストアされる。次いで、ステップSA4では、CPU100がRAM102のワークエリアにストアされた位置情報を含むメッシュの地図データを地図データベース106から検索する地図データ検索処理を実行する。続くステップSA5では、上記ステップSA4において検索された地図データで示される地図上に、位置情報で特定される現在位置を表示する表示処理を実行する。この後、上述のステップSA1に処理を戻し、以後、GPS信号受信処理部107がGPS衛星信号をロストするまで上述したステップSA1〜SA5を繰り返す。
【0025】
そして、例えば本装置を携行するユーザが屋外から屋内に移動し、これによりGPS信号受信処理部107がGPS衛星信号をロストしたとする。そうすると、上述したステップSA2の判断結果が「NO」になり、ステップSA6に進み、CPU100がGPS信号受信処理部107に電源供給停止を指示する。GPS信号受信処理部107では、CPU100からの電源供給停止指示に応じて自己の駆動電源をオフする。この結果、本装置を携行するユーザが屋外から屋内に移動してGPS衛星信号をロストすると、自動的にGPS信号受信処理部107の駆動電源をオフ設定して省電力化を図るようになっている。
【0026】
続いて、ステップSA7では、屋外から屋内へ移動したのに対応してユーザが開始点位置入力スイッチを操作して開始点位置を入力すると、入力された開始点位置をCPU100がRAM102のワークエリアにストアする。開始点位置とは、例えば図7(a)に図示する一例のように、建物入口など位置検出の基点を指す。なお、本実施形態では、ユーザ操作で開始点位置を入力する形態としたが、これに限らず、屋内に立ち入る直前、つまりGPS衛星信号をロストする直前にGPS測位で得た位置情報を自動的に開始点位置として入力する形態としても構わない。
【0027】
さて、こうして開始点位置が設定されると、ステップSA8を介して自律航法センシング処理を実行する。この自律航法センシング処理では、後述するように、気圧センサ105、3軸地磁気センサ108および3軸加速度センサ109の各センサ出力に基づき屋内での相対的な移動位置を検出する。そして、ステップSA9では、自律航法センシング処理により得られた位置が屋内から屋外へ移動したか否かを判断する。得られた位置が屋内ならば、判断結果は「NO」になり、上記ステップSA8に処理を戻して自律航法センシング処理を継続する。
【0028】
これに対し、得られた位置が屋外になった場合、つまり屋内から屋外へ移動すると、上記ステップSA9の判断結果は「YES」になり、ステップSA10に進む。ステップSA10では、CPU100がGPS信号受信処理部107に電源供給開始を指示する。GPS信号受信処理部107では、CPU100からの電源供給開始指示に応じて自己の駆動電源をオンする。これにより、本装置を携行するユーザが屋内から屋外に移動してGPS衛星信号を受信し得る状態になると、自動的にGPS信号受信処理部107の駆動電源をオン設定する。こうして、GPS信号受信処理部107が受信動作可能になると、上述のステップSA1に処理を戻してGPS衛星信号を受信するGPS信号受信処理を再び実行する。
【0029】
(1)自律航法センシング処理の動作
次に、図5〜図6を参照して自律航法センシング処理の動作を説明する。上述した測位処理のステップSA8(図4参照)を介して本処理が実行されると、図5に図示するステップSB1に進み、3軸地磁気センサ108から出力される3軸(X,Y,Z)成分の地磁気データを、CPU100が一定期間複数取り込んでRAM102のワークエリアにストアする3軸地磁気センサ計測処理を実行する。
【0030】
続いて、ステップSB2では、CPU100が移動量演算部110に対して絶対方向演算処理の実行を指示する。すると、移動量演算部110は、上記ステップSB1においてRAM102のワークエリアにストアされた3軸(X,Y,Z)成分の地磁気データに基づいて本装置(位置検出装置)を携行移動するユーザの移動方向を算出する絶対方向演算処理を実行する。そして、移動量演算部110が算出したユーザの移動方向を、CPU100がRAM102のワークエリアにストアする。
【0031】
次いで、ステップSB3では、3軸加速度センサ109から出力される3軸(X,Y,Z)成分の加速度データを、CPU100が一定期間複数取り込んでRAM102のワークエリアにストアする3軸加速度センサ計測処理を実行し、続くステップSB4では、気圧センサ105から出力される気圧データを、CPU100が一定期間複数取り込んでRAM102のワークエリアにストアする気圧センサ計測処理を実行する。
【0032】
そして、ステップSB5に進むと、下記(a)〜(d)の処理内容を含む位置情報演算処理を実行する。
(a)CPU100が移動量演算部110に対して移動距離の算出を指示する。すると、移動量演算部110は、上記ステップSB3においてRAM102のワークエリアにストアされた3軸(X,Y,Z)成分の加速度データに基づきユーザの移動距離(開始点位置もしくは前回検出した位置からの移動距離)を算出する。そして、移動量演算部110が算出したユーザの移動距離を、CPU100がRAM102のワークエリアにストアする。
【0033】
(b)CPU100が気圧変化演算部111に対して演算開始を指示する。すると、気圧変化演算部111では、上記ステップSB4においてRAM102のワークエリアにストアされた気圧データを標高に換算した標高データを発生してCPU100に供給する。また、気圧変化演算部111では、RAM102のワークエリアから読み出した気圧データからユーザの昇降動作を判別する動作判別データを発生してCPU100に供給する。すなわち、一定期間複数取り込まれた気圧データが微減変化していれば、ユーザが上層階に昇っていることを表す動作判別データを発生し、一方、微増変化していれば、ユーザが下層階に降りていることを表す動作判別データを発生する。
【0034】
(c)CPU100は、RAM102のデータエリアに格納される3次元レイアウトデータ(図3参照)の内、気圧変化演算部111から供給される標高データに対応した高さの階のレイアウトデータを選択し、選択したレイアウトデータを参照するよう位置情報処理部112に指示する。例えば、気圧変化演算部111から供給される標高データに対応した高さが「h1」であったとする。そうすると、CPU100は図3に図示する3次元レイアウトデータの内から1Fレイアウトデータを選択し、この1Fレイアウトデータを参照するよう位置情報処理部112に指示する。
【0035】
(d)CPU100が位置情報処理部112に対して位置情報演算処理の実行を指示する。すると、位置情報処理部112は、RAM102のワークエリアにストアされる「開始点位置(もしくは前回検出した位置)」、ユーザの「移動方向」および「移動距離」に基づき、現在参照中のレイアウトデータで示されるレイアウト図上におけるユーザの現在位置を算出する。
【0036】
このようにして、レイアウト図上におけるユーザの現在位置が得られると、ステップSB6に処理を進め、CPU100はユーザの移動態様が平地歩行であるか否かを判断する。平地歩行であるか否かは、上記ステップSB3において一定期間複数取り込まれた3軸(X,Y,Z)成分の加速度データに基づき判断する。以下、平地歩行の場合と、平地歩行以外の場合とに分けて動作説明を進める。
【0037】
<平地歩行の場合>
ユーザの移動態様が平地歩行であったとすると、上記ステップSB6の判断結果は「YES」となり、ステップSB7に進む。ステップSB7では、上記ステップSB5において位置情報処理部112が算出したユーザの現在位置を、現在参照中のレイアウトデータで示されるレイアウト図に重ね合わせる。続いて、ステップSB8では、位置補正の必要の有無をCPU100が判断する。
【0038】
すなわち、CPU100では、上記ステップSB5において得られたユーザの現在位置が、現在参照中のレイアウトデータで示されるレイアウト図中の構造物と交差するかどうかで位置補正の必要の有無を判断する。ユーザの現在位置がレイアウト図中の構造物に交差しなければ、位置補正の必要が無いとして、上記ステップSB8の判断結果は「NO」になり、ステップSB9に進み、上述したステップSB7において重ね合わせたユーザの現在位置とレイアウト図とを表示部104に画面表示して本処理を終える。
【0039】
なお、このステップSB9では、位置情報処理部112が重ね合わせたユーザの現在位置とレイアウト図とをCPU100が表示部104に画面表示するが、その際、CPU100は図7(a)に図示する一例のように、開始点位置から時々刻々計測されるユーザの現在位置を移動軌跡として表示するようになっている。
【0040】
一方、ユーザの現在位置がレイアウト図中の構造物に交差した場合、つまり図7(a)に図示する一例のように、実際の移動経路は直進であるのに対し、計測処理にて検出したユーザの位置に累積誤差が生じてレイアウト図中の壁に交差するような状況であると、位置補正が必要となる為、上記ステップSB8の判断結果は「YES」になり、ステップSB10に進む。
【0041】
ステップSB10では、位置情報処理部112がその交差位置をユーザの現在位置に補正する。すなわち、図7(a)の一例の場合には、同図(b)に図示するように、レイアウトデータ(X1(a),Y1(a))とレイアウトデータ(X1(b),Y1(b))とを結ぶベクトルとの交点をユーザの現在位置とする。こうすることによって、累積誤差がリセットされた新たなユーザの現在位置として更新される。そして、ステップSB9に進み、更新されたユーザの現在位置をレイアウト図上に画面表示して本処理を終える。
【0042】
<平地歩行以外の場合>
ユーザの移動態様が平地歩行以外であると、上述したステップSB6の判断結果は「NO」になり、図6に図示するステップSB11に進む。ステップSB11では、上記ステップSB3においてRAM102のワークエリアにストアされた3軸(X,Y,Z)成分の加速度データに基づき、「エレベータ」、「エスカレータ」および「階段歩行」のいずれの移動態様でユーザが移動中であるのかをCPU100が判別する。
【0043】
具体的には、上記ステップSB3において一定期間複数取り込まれた3軸(X,Y,Z)成分の加速度データの変化傾向を抽出し、抽出した変化傾向に応じて「エレベータ」、「エスカレータ」および「階段歩行」のいずれであるかを特定する。以下、特定された移動態様が「エレベータ」、「エスカレータ」および「階段歩行」の各場合に分けて動作説明を進める。
【0044】
<移動態様が「エレベータ」の場合>
移動態様が「エレベータ」と特定されると、ステップSB12に進み、エレベータによる移動が停止しているか否かを、上記ステップSB5において気圧変化演算部111が発生する動作判別データに基づきCPU100が判断する。動作判別データが昇る動作もしくは降りる動作を表している場合、つまりエレベータ移動中ならば、判断結果は「NO」になり、前述したステップSB7(図5参照)に処理を戻す。
【0045】
一方、動作判別データが昇降動作であることを表さず、エレベータ停止と判断されると、上記ステップSB12の判断結果は「YES」になり、ステップSB13に進み、エレベータ降り口位置リセット処理を実行する。このエレベータ降り口位置リセット処理では、CPU100が位置情報処理部112に対してユーザの現在位置をエレベータ降り口位置にリセットするよう指示する。
【0046】
例えば図8(a)に図示する一例のように、位置情報処理部112により算出されるユーザの現在位置がエレベータ内に存在している状態でCPU100がエレベータ停止と判断した場合には、同図(b)に図示するように、ユーザの現在位置をエレベータ降り口位置に補正する。これにより、累積誤差がリセットされた新たなユーザの現在位置に更新される。
【0047】
また、ステップSB13のエレベータ降り口位置リセット処理では、CPU100がRAM102のデータエリアに格納される3次元レイアウトデータ(図3参照)の内、気圧変化演算部111から供給される標高データに対応した高さの階のレイアウトデータを選択し、選択したレイアウトデータを参照するよう位置情報処理部112に指示した後、上述したステップSB7(図5参照)に進む。なお、エレベータ降り口位置リセット処理後のステップSB7では、上記ステップSB13で更新されたユーザの現在位置(エレベータ降り口位置)を、エレベータを使ってユーザが降りた階のレイアウトデータで示されるレイアウト図に重ね合わせる。
【0048】
<移動態様が「エスカレータ」の場合>
移動態様が「エスカレータ」と特定されると、ステップSB14に進み、エスカレータによる移動が停止しているか否かを、上記ステップSB5において気圧変化演算部111が発生する動作判別データに基づきCPU100が判断する。動作判別データが昇る動作もしくは降りる動作を表している場合、つまりエスカレータ移動中ならば、判断結果は「NO」になり、前述したステップSB7(図5参照)に処理を戻す。
【0049】
一方、動作判別データが昇降動作であることを表さず、エスカレータ停止と判断されると、上記ステップSB14の判断結果は「YES」になり、ステップSB15に進み、エスカレータ降り口位置リセット処理を実行する。このエスカレータ降り口位置リセット処理では、CPU100が位置情報処理部112に対してユーザの現在位置をエスカレータ降り口位置にリセットするよう指示する。
【0050】
例えば図9(a)に図示する一例のように、位置情報処理部110により算出されるユーザの現在位置がエスカレータ降り口近傍に存在している状態でCPU100がエスカレータ停止と判断した場合には、同図(b)に図示するように、ユーザの現在位置をエスカレータ降り口位置に補正する。これにより、累積誤差がリセットされた新たなユーザの現在位置に更新される。
【0051】
また、ステップSB15のエスカレータ降り口位置リセット処理では、CPU100がRAM102のデータエリアに格納される3次元レイアウトデータ(図3参照)の内、気圧変化演算部111から供給される標高データに対応した高さの階のレイアウトデータを選択し、選択したレイアウトデータを参照するよう位置情報処理部112に指示した後、上述したステップSB7(図5参照)に進む。なお、エスカレータ降り口位置リセット処理後のステップSB7では、上記ステップSB15で更新されたユーザの現在位置(エスカレータ降り口位置)を、エスカレータを使ってユーザが降りた階のレイアウトデータで示されるレイアウト図に重ね合わせる。
【0052】
<移動態様が「階段歩行」の場合>
移動態様が「階段歩行」と特定されると、ステップSB16に進み、階段踊り場であるか否かを、上記ステップSB5において気圧変化演算部111が発生する動作判別データに基づきCPU100が判断する。動作判別データが昇る動作もしくは降りる動作を表している場合、つまり階段を昇っている状態あるいは降りている状態ならば、判断結果は「NO」になり、前述したステップSB7(図5参照)に処理を戻す。
【0053】
一方、動作判別データが昇降動作であることを表さない場合、つまり階段踊り場での歩行と判断されると、上記ステップSB16の判断結果は「YES」になり、ステップSB17に進み、階段出口位置リセット処理を実行する。この階段出口位置リセット処理では、CPU100が位置情報処理部112に対してユーザの現在位置を階段出口位置にリセットするよう指示する。例えば図10(a)に図示する一例のように、ユーザの現在位置が階段踊り場と判断された場合には、同図(b)に図示するように、ユーザの現在位置を階段出口位置に補正する。これにより、累積誤差がリセットされた新たなユーザの現在位置に更新される。
【0054】
また、ステップSB17の階段出口位置リセット処理では、CPU100がRAM102のデータエリアに格納される3次元レイアウトデータ(図3参照)の内、気圧変化演算部111から供給される標高データに対応した高さの階のレイアウトデータを選択し、選択したレイアウトデータを参照するよう位置情報処理部112に指示した後、上述したステップSB7(図5参照)に進む。なお、階段出口位置リセット処理後のステップSB7では、上記ステップSB17で更新されたユーザの現在位置(階段出口位置)を、ユーザが降りた階のレイアウトデータで示されるレイアウト図に重ね合わせる。
【0055】
(2)自律航法センシング処理の終了
次に、ユーザの現在位置がレイアウト図中の構造物の中から外にでる場合について説明する。図11(a)に図示する一例のように屋内を入り口に向かって歩行している場合は、先に説明した平地歩行の場合と同様にユーザの現在位置を算出し、必要があれば同図(b)に示すレイアウトデータで位置補正を行なう。
【0056】
そして入口から屋外にでると、図4のステップSA9の判断結果は「YES」になり、ステップSA10に進む。ステップSA10では、CPU100がGPS信号受信処理部107に電源供給開始を指示する。GPS信号受信処理部107では、CPU100からの電源供給開始指示に応じて自己の駆動電源をオンする。これによりGPS衛星信号を受信し得る状態となり、GPS信号受信処理部107がGPS衛星信号から少なくとも現在地の緯度および経度を含む位置情報を発生する測位演算処理を実行する。
この結果得られた位置情報に基づき、ユーザの現在位置を補正する。これ以後は、GPS信号受信処理部107から取得した位置情報に基づきユーザの現在位置を表示する。
【0057】
以上のように、本実施形態では、GPS信号受信処理部107がGPS信号を受信したか否かをCPU100が判断し、例えば本装置を携行するユーザが屋外から屋内に移動することによってGPS信号受信処理部107がGPS衛星信号をロストした場合には、CPU100がGPS信号受信処理部107に電源供給停止を指示する。これにより、GPS信号受信処理部107では、CPU100からの電源供給停止指示に応じて自己の駆動電源をオフする結果、自動的にGPS信号受信処理部107の駆動電源をオフ設定して省電力化を図る。
【0058】
そして、本装置を携行するユーザが屋外から屋内に移動したのに対応して開始点位置を入力すると、入力された開始点位置を基点として、気圧センサ105、3軸地磁気センサ108および3軸加速度センサ109の各センサ出力に基づき屋内での相対的な移動位置を検出する自律航法センシング処理を実行する。この自律航法センシング処理により得られる位置が屋外になった場合、つまり本装置を携行するユーザが屋内から屋外へ移動してGPS衛星信号を受信し得る状態になると、CPU100がGPS信号受信処理部107に電源供給開始を指示し、自動的にGPS信号受信処理部107の駆動電源をオン設定する。この結果、自動的にGPS受信機能をオンオフ設定して省電力化することが可能になる。
【0059】
なお、本実施形態では、図2(b)に図示したベクトルデータ形式のレイアウトデータを用いる自律航法センシング処理について言及したが、これに限定されず、ラスタデータ形式のレイアウトデータを用いる自律航法センシング処理であっても構わない。
【図面の簡単な説明】
【0060】
【図1】本発明による一実施形態の構成を示すブロック図である。
【図2】RAM102のデータエリアに格納されるレイアウトデータの内容を説明するための図である。
【図3】RAM102のデータエリアに格納されるレイアウトデータの内容を説明するための図である。
【図4】測位処理の動作を示すフローチャートである。
【図5】自律航法センシング処理の動作を示すフローチャートである。
【図6】自律航法センシング処理の動作を説明するための図である。
【図7】自律航法センシング処理の動作を説明するための図である。
【図8】自律航法センシング処理の動作を説明するための図である。
【図9】自律航法センシング処理の動作を説明するための図である。
【図10】自律航法センシング処理の動作を説明するための図である。
【図11】自律航法センシング処理の終了を説明するための図である。
【符号の説明】
【0061】
100 CPU
101 ROM
102 RAM
103 操作部
104 表示部
105 気圧センサ
106 地図データベース
107 GPS信号受信処理部
108 3軸地磁気センサ
109 3軸加速度センサ
110 移動量演算部
111 気圧変化演算部
112 位置情報処理部
【特許請求の範囲】
【請求項1】
GPS衛星信号を受信して屋外での現在位置を検出する第1の位置検出手段と、センサ出力に基づき屋内での現在位置を検出する第2の位置検出手段とを備える位置検出装置において、
前記第1の位置検出手段がGPS衛星信号を受信したか否かを判定する受信判定手段と、
前記受信判定手段によりGPS衛星信号を受信していないと判定された場合に、前記第1の位置検出手段への電源供給を停止する電源供給停止手段と、
前記第2の位置検出手段により検出される現在位置が屋内から屋外に移動したか否かを判定する移動判定手段と、
前記電源供給停止手段が前記第1の位置検出手段への電源供給を停止している時に、前記移動判定手段により現在位置が屋内から屋外に移動したと判定された場合に、前記第1の位置検出手段への電源供給を開始する電源供給開始手段と
を具備することを特徴とする位置検出装置。
【請求項2】
GPS信号を受信して屋外での現在位置を検出する第1の位置検出手段と、センサ出力に基づき屋内での現在位置を検出する第2の位置検出手段とを備える位置検出装置で実行されるプログラムであって、
前記第1の位置検出手段がGPS信号を受信したか否かを判定する受信判定処理と、
前記受信判定処理によりGPS信号を受信していないと判定された場合に、前記第1の位置検出手段への電源供給を停止する電源供給停止処理と、
前記第2の位置検出手段により検出される現在位置が屋内から屋外に移動したか否かを判定する移動判定処理と、
前記電源供給停止処理が前記第1の位置検出手段への電源供給を停止している時に、前記移動判定処理により現在位置が屋内から屋外に移動したと判定された場合に、前記第1の位置検出手段への電源供給を開始する電源供給開始処理と
を具備することを特徴とする位置検出プログラム。
【請求項1】
GPS衛星信号を受信して屋外での現在位置を検出する第1の位置検出手段と、センサ出力に基づき屋内での現在位置を検出する第2の位置検出手段とを備える位置検出装置において、
前記第1の位置検出手段がGPS衛星信号を受信したか否かを判定する受信判定手段と、
前記受信判定手段によりGPS衛星信号を受信していないと判定された場合に、前記第1の位置検出手段への電源供給を停止する電源供給停止手段と、
前記第2の位置検出手段により検出される現在位置が屋内から屋外に移動したか否かを判定する移動判定手段と、
前記電源供給停止手段が前記第1の位置検出手段への電源供給を停止している時に、前記移動判定手段により現在位置が屋内から屋外に移動したと判定された場合に、前記第1の位置検出手段への電源供給を開始する電源供給開始手段と
を具備することを特徴とする位置検出装置。
【請求項2】
GPS信号を受信して屋外での現在位置を検出する第1の位置検出手段と、センサ出力に基づき屋内での現在位置を検出する第2の位置検出手段とを備える位置検出装置で実行されるプログラムであって、
前記第1の位置検出手段がGPS信号を受信したか否かを判定する受信判定処理と、
前記受信判定処理によりGPS信号を受信していないと判定された場合に、前記第1の位置検出手段への電源供給を停止する電源供給停止処理と、
前記第2の位置検出手段により検出される現在位置が屋内から屋外に移動したか否かを判定する移動判定処理と、
前記電源供給停止処理が前記第1の位置検出手段への電源供給を停止している時に、前記移動判定処理により現在位置が屋内から屋外に移動したと判定された場合に、前記第1の位置検出手段への電源供給を開始する電源供給開始処理と
を具備することを特徴とする位置検出プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2010−38712(P2010−38712A)
【公開日】平成22年2月18日(2010.2.18)
【国際特許分類】
【出願番号】特願2008−201484(P2008−201484)
【出願日】平成20年8月5日(2008.8.5)
【出願人】(000001443)カシオ計算機株式会社 (8,748)
【Fターム(参考)】
【公開日】平成22年2月18日(2010.2.18)
【国際特許分類】
【出願日】平成20年8月5日(2008.8.5)
【出願人】(000001443)カシオ計算機株式会社 (8,748)
【Fターム(参考)】
[ Back to top ]