JP2015175686A - 情報処理装置及び情報処理プログラム - Google Patents
情報処理装置及び情報処理プログラム Download PDFInfo
- Publication number
- JP2015175686A JP2015175686A JP2014051300A JP2014051300A JP2015175686A JP 2015175686 A JP2015175686 A JP 2015175686A JP 2014051300 A JP2014051300 A JP 2014051300A JP 2014051300 A JP2014051300 A JP 2014051300A JP 2015175686 A JP2015175686 A JP 2015175686A
- Authority
- JP
- Japan
- Prior art keywords
- angular velocity
- value
- addition value
- information processing
- movement addition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Navigation (AREA)
Abstract
【課題】自装置の向きの変化を簡易な演算で検出する。
【解決手段】所定のサンプリング周期で角速度値をサンプリングする角速度センサと、プロセッサと、を有する情報処理装置であって、該プロセッサが、所定周期ごとに、所定の期間内に含まれる角速度センサによってサンプリングされた角速度値を加算して、移動加算値を算出し、所定周期ごとに算出された移動加算値が所定時間継続して正又は負のいずれかの値を取るか否かを判定し、移動加算値が所定時間継続して正又は負のいずれかの値を取る場合に、情報処理装置の向きの変化を判定する。
【選択図】図8
【解決手段】所定のサンプリング周期で角速度値をサンプリングする角速度センサと、プロセッサと、を有する情報処理装置であって、該プロセッサが、所定周期ごとに、所定の期間内に含まれる角速度センサによってサンプリングされた角速度値を加算して、移動加算値を算出し、所定周期ごとに算出された移動加算値が所定時間継続して正又は負のいずれかの値を取るか否かを判定し、移動加算値が所定時間継続して正又は負のいずれかの値を取る場合に、情報処理装置の向きの変化を判定する。
【選択図】図8
Description
本発明は、GPSを用いずに自装置の位置を検出するための情報処理装置及び情報処理プログラムに関する。
従来、携帯端末や移動端末では、ジャイロセンサや地磁気センサを用いて、地面に対する回転角から進行方向の変化が検出されていた。また、例えば、3軸加速度センサにより取得される歩行の一周期分の水平成分の加速度値の分布から回帰式を算出し、該回帰式から得られる直線によって示される方向が進行方向と判定される方式もある。
しかしながら、従来の方式では、例えば、回帰直線を求める処理等が複雑であるため、消費電力が大きくなったり、性能の良い高価なプロセッサを必要としたりしていた。
本発明の一態様は、自装置の向きの変化を簡易な演算で検出可能な情報処理装置及び情報処理プログラムを提供することを目的とする。
本発明の態様の一つは、
所定のサンプリング周期で角速度値をサンプリングする角速度センサと、
プロセッサと、
を有する情報処理装置であって、
前記プロセッサが、
所定周期ごとに、所定の期間内に含まれる前記角速度センサによってサンプリングされた角速度値を加算して、移動加算値を算出し、
前記所定周期ごとに算出された移動加算値が所定時間継続して正又は負のいずれかの値を取るか否かを判定し、
前記移動加算値が前記所定時間継続して正又は負のいずれかの値を取る場合に、前記情報処理装置の向きの変化を判定する、
情報処理装置である。
所定のサンプリング周期で角速度値をサンプリングする角速度センサと、
プロセッサと、
を有する情報処理装置であって、
前記プロセッサが、
所定周期ごとに、所定の期間内に含まれる前記角速度センサによってサンプリングされた角速度値を加算して、移動加算値を算出し、
前記所定周期ごとに算出された移動加算値が所定時間継続して正又は負のいずれかの値を取るか否かを判定し、
前記移動加算値が前記所定時間継続して正又は負のいずれかの値を取る場合に、前記情報処理装置の向きの変化を判定する、
情報処理装置である。
本発明の他の態様の一つは、情報処理装置が上記処理を実行する情報処理方法である。また、本発明の他の態様は、コンピュータを上述した情報処理装置として機能させる情報処理プログラム、及び当該プログラムを記録したコンピュータ読み取り可能な記録媒体を含むことができる。コンピュータ等が読み取り可能な記録媒体には、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって非一時的に蓄積し、コンピュータ等から読み取ることができる記録媒体をいう。
開示の情報処理装置及び情報処理プログラムによれば、自装置の向きの変化を簡易な演算で検出することができる。
以下、図面に基づいて、本発明の実施の形態を説明する。以下の実施形態の構成は例示であり、本発明は実施形態の構成に限定されない。
<第1実施形態>
歩行時、右足が前に出ると身体は左回転する。一方、歩行時に左足が前に出ると身体は右回転する。歩行時の身体の回転の速さは、歩幅に依存する。すなわち、歩幅が大きくなるにつれて身体の回転の角速度も速くなる。
歩行時、右足が前に出ると身体は左回転する。一方、歩行時に左足が前に出ると身体は右回転する。歩行時の身体の回転の速さは、歩幅に依存する。すなわち、歩幅が大きくなるにつれて身体の回転の角速度も速くなる。
図1は、左折時の歩行の右足と左足との軌跡の一例を示す図である。図2は、図1における右足、左足それぞれの軌跡を線で示した図である。図3は、図1における左折時の歩行の右足と左足との航路差を示す図である。図1、図2、図3において、右足の軌跡はSG、左足の軌跡はS´G´で示されている。
図3より、左折時には左足の軌跡の方が距離が長くなることがわかる。すなわち、左折時には右足よりも左足の方が間隔が大きくなる。そのため、左折時には、右回転の速さより左回転の角速度の方が相対的に大きくなる。
図4は、直進の場合と左折の場合との角速度と時間との関係を示すグラフの一例である。直進の場合のグラフG1、左折の場合のグラフG2では、それぞれ、縦軸が角速度(ω)、横軸が時間(t)を示している。また、+ω方向は右回転、−ω方向は左回転を示す。グラフG1,G2を比較することによって、左折の場合には、右回転よりも左回転の方が角速度値が大きくなることがわかる。
図5は、直進歩行時の角速度値の時間変化のグラフG1と角速度値の移動加算値の変化との一例を示す図である。図6は、左折時の角速度値の時間変化のグラフG2と角速度値の移動加算値の変化との一例を示す図である。図5及び図6に示されるグラフは、それぞれ、図4に示されるグラフG1、G2と同一のものである。
移動加算値とは、所定の時間幅を有する時間窓に含まれる一部又は全部の角速度値の加
算値である。移動加算値は、所定の周期で算出される。また、時間窓は、移動加算値が算出される周期に合わせて+t方向に移動するものとする。
算値である。移動加算値は、所定の周期で算出される。また、時間窓は、移動加算値が算出される周期に合わせて+t方向に移動するものとする。
図5、図6では、角速度値ωのサンプリング周期は歩行周期Tの1/8、時間窓の時間幅は5/4T、移動加算値が算出される周期は角速度値ωのサンプリング周期と同じである場合の移動加算値の変化が示される。すなわち、図5、図6において、時間窓には10個の角速度値が含まれており、移動加算値は時間窓に含まれる10個の角速度値の総和である。図5、図6では、グラフG1、G2にそれぞれ重ねられた矩形で時間窓が示される。なお、図5、図6中のサンプルNo.は移動加算値のサンプルNo.を示す。
図5に示されるように、直進歩行時には、右回転と左回転とが所定の周期で発生するので(グラフG1参照)、移動加算値は、+と−との値が所定の周期で交互に発生する。一方、図6に示されるように、左折時には、右回転よりも左回転の方が角速度値が大きくなるので(グラフG2参照)、移動加算値は、マイナスの値で連続して発生する。なお、右折時には、移動加算値はプラスの値で連続して発生する。
したがって、図5、図6から、移動加算値を算出し、監視することによって、装置の向きが右方向に変化したか、左方向に変化したか、を判定することができることがわかる。また、所定時間継続して+又は−のいずれかの移動加算値が連続して発生する場合には、移動加算値に該所定時間を乗じた値が歩行による曲りによって生じた向きの変化の角度とみなすことができる。
そこで、第1実施形態では、情報処理装置は、角速度センサを備え、所定の周期ごとに所定期間に含まれる角速度値を加算して移動加算値を算出し、+又は−のいずれかの移動加算値が所定の期間継続して発生する場合には、該情報処理装置の向きの変化を検出する。また、情報処理装置は、移動加算値に継続時間を乗じた値に基づいて、向きの変化のおおよその回転角度を取得する。
<情報処理装置の構成>
図7は、携帯端末1のハードウェア構成の一例を示す図である。携帯端末1は、情報処理装置の一例であって、例えば、スマートフォン、タブレット端末、携帯電話端末等である。なお、情報処理装置の他の一例としては、カーナビゲーションシステムの車載端末、携帯型ゲーム機、携帯型音楽プレーヤー、等がある。
図7は、携帯端末1のハードウェア構成の一例を示す図である。携帯端末1は、情報処理装置の一例であって、例えば、スマートフォン、タブレット端末、携帯電話端末等である。なお、情報処理装置の他の一例としては、カーナビゲーションシステムの車載端末、携帯型ゲーム機、携帯型音楽プレーヤー、等がある。
携帯端末1は、アプリケーションCPU 101、記憶部102、タッチパネル103、ディスプレイ104、無線部105、オーディオ入出力部106、スピーカー107、マイクロフォン108、アンテナ110、サブプロセッサ109、角速度センサ111、記憶部112を備える。
タッチパネル103は、位置入力装置の1つであって、ディスプレイ104の表面に配置されており、ユーザの指のタッチ位置の座標をアプリケーションCPU 101に出力する。タッチパネル103は、静電容量方式、抵抗膜方式、表面弾性波方式、赤外線方式、電磁誘導方式等のいずれであってもよい。
ディスプレイ104は、例えば、液晶ディスプレイ(Liquid Crystal Display、LCD)である。ディスプレイ104は、アプリケーションCPU 101から入力される信号に従って、画面データを表示する。
無線部105は、アンテナ110と接続しており、アンテナ110を通じて受信した無線信号を電気信号に変換してアプリケーションCPU 101に出力したり、アプリケー
ションCPU 101から入力される電気信号を無線信号に変換してアンテナ110を通じて送信したりする。無線部105は、無線通信に係る処理を行い、例えば、第3世代移動通信システム,第2世代移動通信システム,LTE(Long Term Evolution)等の無線
通信方式のうちのいずれか1つ又は複数の方式に則った通信の処理を行う。
ションCPU 101から入力される電気信号を無線信号に変換してアンテナ110を通じて送信したりする。無線部105は、無線通信に係る処理を行い、例えば、第3世代移動通信システム,第2世代移動通信システム,LTE(Long Term Evolution)等の無線
通信方式のうちのいずれか1つ又は複数の方式に則った通信の処理を行う。
オーディオ入出力部106は、音声出力装置としてのスピーカー107と、音声入力装置としてのマイクロフォン108と、に接続する。オーディオ入出力部106は、マイクロフォン108から入力された音声信号を電気信号に変換してアプリケーションCPU 101に出力したり、アプリケーションCPU 101から入力された電気信号を音声信号に変換してスピーカー107に出力したりする。
角速度センサ111は、水晶発振子や圧電セラミック発振子を用い、これらの発振子に加えられた回転力によって生じるひずみを電気信号として取り出し、角速度値を検出する。角速度センサ111は、例えば、3軸方向の角速度値を検知可能である。角速度センサ111によって検出された角速度値は、サブプロセッサ109に出力される。角速度センサ111は、ジャイロセンサとも呼ばれる。なお、第1実施形態では、角速度センサ111のX軸を進行方向、Y軸を左右方向、Z軸を垂直方向に設定した場合、Z軸周りの角速度が用いられる。
記憶部112は、サブプロセッサ109用の記憶手段である。記憶部112は、ROM(Read Only Memory) 112A及びRAM(Random Access Memory) 112Bを含む。RAM 112Bは、半導体メモリであって、揮発性のものと不揮発性のものと、双方が含まれる。ROM 112Aには、向き変化検出プログラム、その他サブプロセッサ109によって実行されるプログラムが保持されている。向き変化検出プログラムは、角速度センサ111によって検出された角速度値を用いて携帯端末1の向きの変化を検出するためのプログラムである。
サブプロセッサ109は、ROM 112Aに格納されるプログラムをRAM 112Bの作業領域に展開し、展開された命令を実行することによって、角速度センサ111から入力される角速度値に関する処理を行う。例えば、サブプロセッサ109は、ROM 112Aに格納される向き変化検出プログラムをRAM 112Aの作業領域にロードし、向き変化検出プログラムの命令を実行する。サブプロセッサ109は、向き変化検出プログラムの実行結果をアプリケーションCPU 101に出力する。サブプロセッサ109は、例えば、マイクロコンピュータである。
記憶部102は、アプリケーションCPU 101用の記憶部である。記憶部102は、ROM 102A及びRAM 102Bを含む。RAM 102Bには、揮発性のものと不揮発性のものと、双方が含まれる。なお、第1実施形態において、ROM 102Aは、内蔵ストレージのことを指し、例えば、フラッシュメモリである。ROM 102Aには、OS(Operating System)や様々なアプリケーションプログラムが格納されている。アプリケーションプログラムの中には、自律測位アプリケーションや、ナビゲーションアプリケーション等が含まれる。
アプリケーションCPU 101は、ROM 102Aに格納されるプログラムをRAM 102Bの作業領域に展開し、展開された命令を実行することによって様々な処理を行う。アプリケーションCPU 101は、例えば、タッチパネル103、無線部105、オーディオ入出力部106、サブプロセッサ109のいずれかからの入力を受ける。アプリケーションCPU 101は、入力を受けると、所定の処理を実行し、処理の結果を、例えば、記憶部102、ディスプレイ104、無線部105、オーディオ入出力部106のいずれかへ出力する。
なお、携帯端末1のハードウェア構成は、図7に示されるものに限定されず、適宜、追加、置換、削除等の変更が可能である。例えば、携帯端末1は、図7に示される構成に加えて、カメラ,赤外線通信部,ICカード通信部等を備えてもよい。携帯端末1は、「情報処理装置」の一例である。
図8は、携帯端末1の機能構成の一例を示す図である。携帯端末1は、機能構成として、角速度取得部11、回転角判定部12、通知処理部13、自律測位アプリケーション14、角速度値保持テーブル15、回転方向角度判定テーブル16を含む。
角速度取得部11は、角速度センサ111に対応する機能構成である。角速度取得部11は、携帯端末1に加えられる回転力の角速度値を取得する。角速度値は、所定のサンプリング周期ごとに取得される。角速度値のサンプリング周期は、例えば、20msである。取得された角速度値は、回転角判定部12に出力される。
回転角判定部12は、サブプロセッサ109がROM 112Aに格納されている向き変化検出プログラムを実行することによって実現される機能構成である。回転角判定部12は、所定の期間内に角速度取得部11からサンプリング周期ごとに入力される角速度値を、所定の周期ごとに加算して移動加算値を算出し、移動加算値を監視し、携帯端末1の向きの変化の発生及び向きの変化の方向と角度とを検出する。移動加算値の算出周期は、「所定周期」の一例である。
より具体的には、回転角判定部12は、後述の角速度値保持テーブル15に所定数の角速度値を保持し、角速度値保持テーブル15に保持される角速度値を足し合わせて移動加算値を算出する。回転角判定部12は、移動加算値が後述の回転方向角度判定テーブル16によって定義されるグループのいずれに属するかを監視する。同じグループに属する移動加算値が所定時間継続して発生する場合には、回転角判定部12は、該グループに対応する方向及び角度に向きが変化したことを判定する。判定結果は、通知処理部13に出力される。
通知処理部13は、アプリケーションCPU 101によって実現される機能構成の一つである。通知処理部13は、例えば、プロセス間通信を行うOSの機能の一つである。通知処理部13は、回転角判定部12から、判定結果として、携帯端末1の向きの変化の発生と向きの変化の角度とが入力されると、該判定結果を、例えば、自律測位アプリケーション14に通知する。
自律測位アプリケーション14は、アプリケーションCPU 101がROM 102Aに格納されている自律測位アプリケーションを実行することによって実現される機能構成である。自律測位アプリケーション14は、GPS(Global Positioning System)に
依存せずに、自装置の位置を取得するためのアプリケーションである。自律測位アプリケーション14は、例えば、ナビゲーションアプリケーションやゲームアプリケーション等のアプリケーションに利用され、これらのアプリケーションによって起動される。
依存せずに、自装置の位置を取得するためのアプリケーションである。自律測位アプリケーション14は、例えば、ナビゲーションアプリケーションやゲームアプリケーション等のアプリケーションに利用され、これらのアプリケーションによって起動される。
図9は、角速度値保持テーブル15の一例を示す図である。角速度値保持テーブル15は、角速度センサ111によって検出される角速度値を、時間窓の時間幅に含まれる角速度値のサンプル数分保持しておくためのテーブルである。角速度値保持テーブル15は、例えば、サブプロセッサ109による向き変化検出プログラムの実行を通じて、RAM 112Bに作成される。
角速度値保持テーブル15は、IDと、角速度値とを含む。IDは、1からN(N:正
の整数)までである。Nは、移動加算値の算出に用いられる角速度値のサンプル数である。第1実施形態では、時間窓の時間幅に含まれる全角速度値を加算して移動加算値とすることを前提とするので、時間窓の時間幅が1000msであり、角速度値のサンプリング周波数が20msである場合には、Nは50となる。
の整数)までである。Nは、移動加算値の算出に用いられる角速度値のサンプル数である。第1実施形態では、時間窓の時間幅に含まれる全角速度値を加算して移動加算値とすることを前提とするので、時間窓の時間幅が1000msであり、角速度値のサンプリング周波数が20msである場合には、Nは50となる。
角速度値保持テーブル15には、回転角判定部12によって、IDの小さい方から角速度値が格納される。ID=Nの角速度値の欄まで角速度値が格納されると、新たに角速度値が取得された場合には、角速度値IDが2からNまでの角速度値が、それぞれ、角速度値IDが1からNまでの角速度値の欄にコピーされ、新たな角速度値はID=Nの角速度の欄に格納される。
なお、移動加算値の算出方法は、時間窓の時間幅に含まれる全角速度値の総和に限定されない。例えば、移動加算値は、各時間窓においてサンプリングする角速度値のルールが統一されていれば、時間窓の時間幅に含まれる角速度値の一部が加算されることによって算出されてもよい。
図10は、回転方向角度判定テーブル16の一例を示す図である。回転方向角度判定テーブル16は、移動加算値のグループと各グループに対応する回転方向及び回転角度とを定義するテーブルである。図10に示される回転方向角度判定テーブル16には、グループIDと、移動加算値の範囲と、判定継続時間と、回転角度とが保持される。
図10に示される回転方向角度判定テーブル16中の回転角度は、1つのグループに対応する範囲の移動加算値が所定時間継続して発生した場合の、携帯端末1のおおよその回転角度である。回転角度は、第1実施形態では、プラスが右回転、−が左回転を示す。判定継続時間は、1つのグループに対応する回転方向及び回転角度に携帯端末1の向きが変化したことを検出するために用いられる、該グループに該当する移動加算値が継続して発生する時間長である。なお、図10に示される回転方向角度判定テーブル16中の回転角度は、例えば、グループに割り当てられた範囲内の移動加算値が1000ms継続した場合の回転角度である。図10に示される回転方向角度判定テーブル16中の判定継続時間は、各グループに対応する回転角度を伴う向きの変化の検出に必要な時間である。すなわち、図10の回転方向角度判定テーブル16は、少なくとも500msの判定継続時間の間移動加算値が1つのグループに対応する範囲内の値を継続してとれば、該グループの対応の回転角度の向きの変化が発生したとみなすことができることを示す。
図10に示される例では、クループ1は、移動加算値が+15〜+60(deg/s)、判定継続時間が500ms、回転角度が+45°である。グループ2は、移動加算値が+60〜+105(deg/s)、判定継続時間が500ms、回転角度が+90°である。グループ3は、移動加算値が−60〜−15(deg/s)、判定継続時間が500ms、回転角度が−45°である。グループ4は、移動加算値が−105〜−60(deg/s)、判定継続時間が500ms、回転角度が−90°である。
なお、グループ1〜4のいずれにも該当しない移動加算値が継続して発生した場合には、携帯端末1の向きの変化は検出されない。図10に示されるグループ分けは一例であってこれに限定されない。回転方向角度判定テーブル16中の判定継続時間は、「所定の期間」の一例である。
<処理の流れ>
図11A及び図11Bは、回転角判定部12の向き変化検出処理のフローチャートの一例を示す図である。図11A及び図11Bに示されるフローチャートは、例えば、自律測位アプリケーション14等の、携帯端末1の向きの変化の判定結果を用いて処理を行うア
プリケーションからの要求を受けて開始される。
図11A及び図11Bは、回転角判定部12の向き変化検出処理のフローチャートの一例を示す図である。図11A及び図11Bに示されるフローチャートは、例えば、自律測位アプリケーション14等の、携帯端末1の向きの変化の判定結果を用いて処理を行うア
プリケーションからの要求を受けて開始される。
OP1では、回転角判定部12は、角速度センサ111を起動する。次に処理がOP2に進む。
OP2では、回転角判定部12は、サンプリング完了フラグ、継続判定フラグ、継続回数カウンタを初期化する。サンプリング完了フラグは、移動加算値を算出するために用いられるサンプル数分の角速度値の取得完了を示すフラグである。継続判定フラグは、回転方向角度判定テーブル16の1つのグループに対応する範囲内の移動加算値が継続して発生していることを示すフラグである。継続判定フラグは、回転方向角度判定テーブル16内の各グループについて備えられる。継続回数カウンタは、回転方向角度判定テーブル16の1つのグループに対応する範囲内の移動加算値の発生回数を示すカウンタである。
継続回数カウンタの上限値はM(M:正の整数)である。継続回数カウンタの上限値Mは、例えば、向きの変化を検出するための回転方向角度判定テーブル16の1つのグループに対応する範囲内の移動加算値の判定継続時間と、移動加算値の算出の周期とに応じて決定される。例えば、向きの変化を検出するための判定継続時間が500msで、移動加算値の算出周期が角速度値のサンプリング周期20msである場合には、Mは25となる。次に処理がOP3に進む。
OP3では、回転角判定部12は、移動加算値の算出周期になったか否かを判定する。移動加算値の算出周期になった場合には(OP3:YES)、処理がOP4に進む。移動加算値の算出周期でない場合には(OP3:NO)、回転角判定部12は待機状態となる。なお、移動加算値の算出周期は、例えば、角速度値のサンプリング周期と同期していてもよいし、サンプリング周期よりも長い周期であってもよい。
OP4では、回転角判定部12は、終了要求があるか否かを判定する。終了要求は、例えば、携帯端末1の向きの変化の検出結果を用いる自律測位アプリケーションや、自律測位アプリケーションを利用するナビゲーションアプリケーション等へユーザ操作によって入力される。終了要求がある場合には(OP4:YES)、処理がOP5に進む。
OP5では、回転角判定部12は、角速度センサ111を停止させ、図11A及び図11Bに示される処理が終了する。
OP4において、終了要求が入力されていない場合には(OP4:NO)、処理がOP6に進む。OP6では、回転角判定部12はサンプリング完了フラグがONであるか否かを判定する。第1実施形態では、サンプリング完了フラグがONの場合には、角速度値保持テーブル15のID=Nの角速度値まで保持された状態である、すなわち、移動加算値の算出の用いられるサンプル数の角速度値の取得が完了したことが示される。サンプリング完了フラグがOFFである場合には(OP6:NO)、処理がOP4に戻る。サンプリング完了フラグがONである場合には(OP6:YES)、処理がOP7に進む。
OP7では、回転角判定部12は、角速度値保持テーブル15に保持される角速度値を足し合わせて移動加算値を取得する。次に処理がOP8に進む。
OP8では、回転角判定部12は、回転方向角度判定テーブル16に、OP7で取得した移動加算値に該当するグループがあるか否かを判定する。回転方向角度判定テーブル16に移動加算値に該当するグループがない場合には(OP8:NO)、処理がOP3にすすみ、次の移動加算値の算出周期になると、OP4からの処理が行われる。回転方向角度判定テーブル16に移動加算値に該当するグループがある場合には(OP8:YES)、
処理がOP9に進む。
処理がOP9に進む。
OP9では、回転角判定部12は、移動加算値に該当するグループ以外のグループで継続判定フラグがONになっているグループがあるか否かを判定する。移動加算値に該当するグループ以外のグループで継続判定フラグがONになっているグループがある場合には(OP9:YES)、処理がOP10に進む。
OP10では、回転角判定部12は、移動加算値に該当するグループの継続判定フラグをONにし、それ以外のグループの継続判定フラグをOFFにする。次に処理がOP11に進む。
OP11では、回転角判定部12は、継続回数カウンタを0にセットする。次に処理がOP13に進む。
OP9において、移動加算値に該当するグループ以外のグループで継続判定フラグがONになっているグループがない場合には(OP9:NO)、処理がOP12に進む。OP12では、回転角判定部12は、移動加算値に該当するグループの継続判定フラグをONにする。その後処理がOP13に進む。
OP13では、回転角判定部12は、継続回数カウンタに1を加算する。次に処理がOP14に進む。
OP14では、回転角判定部12は、継続回数カウンタが上限値Mを超えているか否かを判定する。継続回数カウンタが上限値Mを超えていない場合には(OP14:NO)、処理がOP3に進む。継続回数カウンタが上限値Mを超えている場合には(OP14:YES)、処理がOP15に進む。
OP15では、回転角判定部12は、移動加算値に該当するグループに対応する回転角度に携帯端末1の向きの変化が発生したと判定し、携帯端末1の向きの変化の検出と回転
角度とを自律測位アプリケーションに通知する。その後、処理がOP3に進み、OP3〜OP15の処理が終了要求が入力されるまで繰り返される。
角度とを自律測位アプリケーションに通知する。その後、処理がOP3に進み、OP3〜OP15の処理が終了要求が入力されるまで繰り返される。
図12は、角速度値サンプリング処理のフローチャートの一例を示す図である。図12に示されるフローチャートは、例えば、図11AのOP1における角速度センサ111の起動とともに開始される。
OP31では、回転角判定部12は、角速度値のサンプリング周期になったか否かを判定する。角速度値のサンプリング周期は、例えば、20msである。角速度値のサンプリング周期になった場合には(OP31:YES)、処理がOP32に進む。角速度値のサンプリング周期でない場合には(OP31:NO)、回転角判定部12は待機状態となる。
OP32では、回転角判定部12は、終了要求が入力されたか否かを判定する。終了要求が入力された場合には(OP32:YES)、図12に示される処理が終了する。終了要求が入力されていない場合には(OP32:NO)、処理がOP33に進む。
OP33では、回転角判定部12は、角速度値保持テーブル15のID=Nの角速度値の値が保持されているか否か、すなわち、角速度値保持テーブル15に空きがあるか否かを判定する。角速度値保持テーブル15に空きがある場合には(OP33:YES)、処理がOP34に進む。
OP34では、回転角判定部12は、角速度取得部11から角速度値を取得し、角速度値保持テーブル15の角速度値が保持されていないIDのうち最も小さいIDの欄に取得した角速度値を保持する。次に処理がOP31に進み、次のサンプリング周期になると、OP32から処理が行われる。
OP33において、角速度値保持テーブル15に空きがない場合には(OP33:NO)、処理がOP35に進む。OP35では、回転角判定部12は、サンプリング完了フラグをONにする。次に処理がOP36に進む。
OP36では、回転角判定部12は、角速度値保持テーブル15のIDが2からNまでの角速度値を、それぞれ、IDが1からN−1までの角速度値にコピーする。次に処理がOP37に進む。
OP37では、回転角判定部12は、角速度値を取得し、角速度値保持テーブル15のIDがNの角速度値の欄に取得した角速度値を格納する。その後、処理がOP31に進み、次の角速度値のサンプリング周期になるとOP32から処理が行われる。
<第1実施形態の作用効果>
第1実施形態では、例えば、図10に示される回転方向角度判定テーブル16を用いて、移動加算値が500msの判定継続時間に+15〜+60の値を取り続けた場合には、携帯端末1は、右方向に+45°回転したと判定する。したがって、第1実施形態では、時間窓の時間幅に含まれる角速度値を加算した移動加算値を監視することによって、四則演算を可能な限り減らした演算で移動端末1の向きの変化を検出することができる。これによって、携帯端末1の向きの変化の検出にかかる消費電力を低減することができる。
第1実施形態では、例えば、図10に示される回転方向角度判定テーブル16を用いて、移動加算値が500msの判定継続時間に+15〜+60の値を取り続けた場合には、携帯端末1は、右方向に+45°回転したと判定する。したがって、第1実施形態では、時間窓の時間幅に含まれる角速度値を加算した移動加算値を監視することによって、四則演算を可能な限り減らした演算で移動端末1の向きの変化を検出することができる。これによって、携帯端末1の向きの変化の検出にかかる消費電力を低減することができる。
また、携帯端末1の向きの変化の検出の処理を簡易にすることによって、サブプロセッサ109で実行可能となる。サブプロセッサ109は、アプリケーションCPU 101に比べて廉価であり、消費電力も小さい。したがって、サブプロセッサ109によって向きの変化の検出処理が行われることによって、向きの変化の検出処理にかかる携帯端末1の消費電力をより低減させることができる。
<その他>
第1実施形態では、記憶部112AのROM 112Aに格納される向き変化検出プログラムをサブプロセッサ109が実行する場合について説明されたが、これに限られない。向き変化検出プログラムは、記憶部102のROM 102Aに格納され、アプリケーションCPU 101によって実行されてもよい。
第1実施形態では、記憶部112AのROM 112Aに格納される向き変化検出プログラムをサブプロセッサ109が実行する場合について説明されたが、これに限られない。向き変化検出プログラムは、記憶部102のROM 102Aに格納され、アプリケーションCPU 101によって実行されてもよい。
また、第1実施形態では、回転方向角度判定テーブル16を用いて回転角度を検出したが、回転角度の検出方法は、これに限定されない。例えば、判定継続時間(500ms)の間所定の範囲の値を移動加算値が継続してとった場合には、基準時間(例えば、1000ms)を該所定の範囲の基準となる移動加算値(例えば、中央値、平均値、最頻値等)に乗じることによって回転角度を検出してもよい。
1 携帯端末
11 角速度取得部
12 回転角取得部
13 通知処理部
15 角速度値保持テーブル
16 回転方向角度判定テーブル
101 アプリケーションCPU
102 記憶部
103 タッチパネル
104 ディスプレイ
109 サブプロセッサ
111 角速度センサ
112 記憶部
11 角速度取得部
12 回転角取得部
13 通知処理部
15 角速度値保持テーブル
16 回転方向角度判定テーブル
101 アプリケーションCPU
102 記憶部
103 タッチパネル
104 ディスプレイ
109 サブプロセッサ
111 角速度センサ
112 記憶部
Claims (4)
- 所定のサンプリング周期で角速度値をサンプリングする角速度センサと、
プロセッサと、
を有する情報処理装置であって、
前記プロセッサが、
所定周期ごとに、所定の期間内に含まれる前記角速度センサによってサンプリングされた角速度値を加算して、移動加算値を算出し、
前記所定周期ごとに算出された移動加算値が所定時間継続して正又は負のいずれかの値を取るか否かを判定し、
前記移動加算値が前記所定時間継続して正又は負のいずれかの値を取る場合に、前記情報処理装置の向きの変化を判定する、
情報処理装置。 - 前記プロセッサは、
前記移動加算値が所定時間継続して正又は負のいずれかに属する所定範囲内の値を取る場合に、前記所定範囲に基づいて前記情報処理装置の回転方向及び回転角を判定する、
請求項1に記載の情報処理装置。 - 前記プロセッサは、
前記移動加算値が所定時間継続して正又は負のいずれかに属する所定範囲内の値を取る場合に、前記所定の範囲内の基準となる移動加算値に基準時間長を乗じて前記情報処理装置の回転方向及び回転角を判定する、
請求項1に記載の情報処理装置。 - 所定のサンプリング周期で角速度値をサンプリングする角速度センサと、
プロセッサと、
を有する情報処理装置の、
前記プロセッサに、
所定周期ごとに、所定の期間内に含まれる前記角速度センサによってサンプリングされた角速度値を加算させて、移動加算値を算出させ、
前記所定周期ごとに算出された移動加算値が所定時間継続して正又は負のいずれかの値を取るか否かを判定させ、
前記移動加算値が前記所定時間継続して正又は負のいずれかの値を取る場合に、前記情報処理装置の向きの変化を判定させる、
ための情報処理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014051300A JP2015175686A (ja) | 2014-03-14 | 2014-03-14 | 情報処理装置及び情報処理プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014051300A JP2015175686A (ja) | 2014-03-14 | 2014-03-14 | 情報処理装置及び情報処理プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015175686A true JP2015175686A (ja) | 2015-10-05 |
Family
ID=54255008
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014051300A Pending JP2015175686A (ja) | 2014-03-14 | 2014-03-14 | 情報処理装置及び情報処理プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2015175686A (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03285110A (ja) * | 1990-03-31 | 1991-12-16 | Nec Home Electron Ltd | 角速度計測装置 |
JPH10160506A (ja) * | 1996-11-28 | 1998-06-19 | Murata Mfg Co Ltd | 角度計測装置 |
JP2011038884A (ja) * | 2009-08-10 | 2011-02-24 | Sony Corp | 車両経路判定方法およびナビゲーション装置 |
-
2014
- 2014-03-14 JP JP2014051300A patent/JP2015175686A/ja active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03285110A (ja) * | 1990-03-31 | 1991-12-16 | Nec Home Electron Ltd | 角速度計測装置 |
JPH10160506A (ja) * | 1996-11-28 | 1998-06-19 | Murata Mfg Co Ltd | 角度計測装置 |
JP2011038884A (ja) * | 2009-08-10 | 2011-02-24 | Sony Corp | 車両経路判定方法およびナビゲーション装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI622783B (zh) | 混合定位方法及其電子裝置 | |
US11971498B2 (en) | Hybrid positioning method, electronic apparatus and computer-readable recording medium thereof | |
US10197587B2 (en) | Device and method for using time rate of change of sensor data to determine device rotation | |
JP5888309B2 (ja) | トレーニング支援装置およびシステム、フォーム解析装置および方法、ならびにプログラム | |
CN103080872A (zh) | 用于移动设备中基于手势的用户输入检测的方法和装置 | |
US20150223022A1 (en) | Geofencing | |
CN110134744B (zh) | 对地磁信息进行更新的方法、装置和系统 | |
US9823709B2 (en) | Context awareness based on angles and orientation | |
US10725760B2 (en) | Application program uninstallation method and apparatus | |
CN113906371B (zh) | 根据锻炼环境提供锻炼信息的电子装置及操作该电子装置的方法 | |
US20170082651A1 (en) | Method of motion processing and related mobile device and microcontroller unit | |
JP6085375B2 (ja) | 進行方向判定装置、マップマッチング装置、進行方向判定方法、およびプログラム | |
JP2016509211A (ja) | 磁力計及び加速度計を使用する角速度推定 | |
US20140281617A1 (en) | Preventing sleep mode for devices based on sensor inputs | |
JP2017049115A (ja) | 電子機器及び電子機器のセンサ較正方法、電子機器のセンサ較正プログラム | |
JPWO2014046204A1 (ja) | 電子機器、及びプログラム | |
JP2018194537A (ja) | 位置決定及び追跡のための方法、プログラム、及びシステム | |
US9226113B2 (en) | Constraining inertial navigation system solution according to pedometrical data | |
JP2008224642A (ja) | 磁気式ジャイロ | |
CN104359483A (zh) | 一种无信号覆盖环境下的反向轨迹导航系统及其实现方法 | |
US20140047259A1 (en) | Methods and Apparatus for Mobile Device Power Management Using Accelerometer Data | |
JP2017207848A (ja) | 携帯情報端末、装着腕判定方法、装着向き判定方法、及びプログラム | |
JP5768583B2 (ja) | 電子機器及び運動状態判定方法 | |
JP6311871B2 (ja) | 物理量検出用回路、物理量検出装置、物理量計測システム、電子機器、移動体及び物理量計測データ生成方法 | |
JP2015211268A (ja) | 携帯電子機器、制御方法、及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161206 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170921 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171003 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20180327 |