本発明の一実施形態について図1から図8に基づいて説明すると以下の通りである。
なお、以下の実施形態では、状態判断装置として携帯端末を例に説明するが、これに限るものではない。傾き情報を自身の姿勢情報として取得するセンサを備えた電子機器であれば、携帯電話機、PDA(Personal Digital Assistant)、電子辞書、ゲーム機、コンピュータ、ナビゲーション装置、およびその他の電子機器であっても好適に適用することができる。ただし、本実施形態のような携帯端末の場合は、端末の姿勢情報からユーザの運動状態を把握して適切なメッセージを通知することができるので、特に効果が大きい。
まず、図1および図2を参照して本実施形態で説明する携帯端末について説明する。図1は、携帯端末10の要部構成を示す機能ブロック図である。図2は、図1で示した制御部の機能をさらに詳細に説明する機能ブロック図である。
携帯端末10(状態判断装置)は、制御部20、3軸センサ(方位検出部)40、記録部42、表示部44、音声出力部46、および操作部48を備えている。制御部20は、携帯端末10の各部を制御し、各機能ブロック間のデータの入出力を制御する処理装置であり、内部にさらに、演算部22、判断部(状態判断手段)26、および通知部(通知手段)30を備えている。
3軸センサ40は、携帯端末10の3次元空間における各次元軸に対する回転角度によって決まる傾き情報を自身の姿勢情報として取得する方位センサであり、ここでは3軸の地磁気センサを用いて、図3に示すような、水平方向に対する回転角度(Roll)、垂直横方向に対する回転角度(Pitch)、垂直縦方向に対する回転角度(Yaw)の各角度情報を取得している。
記録部42は、半導体メモリや光学、磁気などの記録媒体をもちいた記録デバイスに対して、3軸センサ40が検出した姿勢情報や、制御部20による演算結果や、携帯端末10で用いる各種設定データ、歩行記録データなどの記録を行う。
表示部44は、液晶や有機EL(Electro Luminescence)などの表示素子を用いた表示出力デバイスである。音声出力部46は、スピーカまたは外部音声出力端子などで構成された音声出力デバイスである。操作部48は、スイッチ、ボタン、キーボード、タッチパネル、ダイアル、およびその他の入力デバイスで構成された操作入力デバイスである。
なお、上述の説明では、表示部44および音声出力部46によって、携帯端末10からの出力を行うものとしたが、これに限らない。スピーカからのアラーム音や、音声合成等による音声メッセージ、LED(Light Emitting Diode)などを用いた光による通知、バイブレータなどを用いた振動による通知などを用いて、ユーザに通知する構成であってもよい。
演算部22は、3軸センサ40から入力された姿勢情報を演算し、時系列に沿って集計を行い、判断部26における状態判断に用いることができる形式に変換してデータ出力を行う。本実施形態の演算部22は、図2に示すように、内部にさらに方位変位量演算部(変位レート算出手段)23と、上下変位量演算部(滞留検出手段)24を備えている。
方位変位量演算部23は、3軸センサ40から入力された3軸の角度情報(図4の(a))を合成して、合成角度情報(図4の(b))を演算して算出する。上下変位量演算部24は、方位変位量演算部23によって算出された合成角度情報から、変位量の上限値および下限値を検出し、現在の変位量の値と共に出力する。なお、上下変位量の検出については、詳細は後述する。
判断部26は、演算部22による演算結果の出力を受けて、様々な判断を行う処理部である。本実施形態の判断部26は、図2に示すように、ウォーキング状態判断部27を備えている。ウォーキング状態判断部27は、上下変位量演算部24から出力された演算結果を用いて、変位範囲の上部(図4(b)の354度前後)および下部(図4(b)の50度前後)付近で所定時間、値が所定の範囲内の変化に留まっているか否かを検出する。
ウォーキング状態判断部27は、合成角度情報の変位量の値が、変位量の上限値および下限値の近傍で、一定時間保たれていた場合に、携帯端末10を保持するユーザがウォーキング運動状態であるものと判断している。なお、以下ではウォーキング運動状態とは、通常の歩行とは異なる、カロリー消費や運動量を考慮した好ましい歩き方を意味し、具体的には、背筋を伸ばし、腕を大きく振り、普段より早めに、大股で、ひざを伸ばして歩くといったの動きを指すものとして説明する。詳細については、後述する。
通知部30は、判断部26からの判断結果の出力に基づいて表示部44や音声出力部46に対する出力を制御する。本実施形態の通知部30は、内部にウォーキング状態通知部31を備えている。ウォーキング状態通知部31は、ウォーキング状態判断部27による判断結果を受けて、現在、携帯端末10を保持しているユーザがウォーキング運動状態で歩行できているか否かを画面への映像出力または音声案内で出力させる。
次に、図3から図5を参照して、検出および演算する姿勢情報および合成角度情報について説明する。図3は、略直方体形状の携帯端末10の各方向に対して設定された方向の定義を示す模式図である。図4は、3軸センサ40によって取得された、水平方向に対する回転角度、垂直横方向に対する回転角度、垂直縦方向に対する回転角度の各角度情報の具体例を示すグラフである。図5は、携帯端末10を手に持った場合の、各角度情報の具体例を示すグラフである。
図3(a)は、略直方体形状の2つ折りの、いわゆるクラムシェル型の携帯端末10を開いて地面に水平に保持した場合、水平方向に対する回転角度(Roll)の検出を示す概略図を示している。同様に、図3(b)は垂直横方向に対する回転角度(Pitch)の検出を、図3(c)は垂直縦方向に対する回転角度(Yaw)の各角度情報を取得している。
図4(a)は、図3の方向と検出角度の設定において、3軸センサ40の地磁気センサによって検出された各角度情報の具体例を示すグラフである。グラフの上から順に、垂直横方向に対する回転角度(Pitch)、垂直縦方向に対する回転角度(Yaw)、水平方向に対する回転角度(Roll)の変位量の値を示している。
横軸は、経過時間をミリセカンド[ms]単位で、2000msまで示している。縦軸は、回転角度を0.1度単位で、0.0度から400.0[°/sec]前後までの変位量として値を示している。図4(a)に示された所定期間の変位量91は、時間x1からx2の間の変位角度y1からy2までを示している。
図4(a)に示された3軸の各回転角度情報は、方位変位量演算部23によって、以下の数式(1)を用いて合成角度情報として計算される。
図4(b)は、図4(a)のグラフに示された各回転角度の変位量の値を、数式(1)を用いて演算し、合成したグラフである。図4(b)に示すように、垂直横方向に対する回転角度(Pitch)、垂直縦方向に対する回転角度(Yaw)、水平方向に対する回転角度(Roll)の変位量の値を合成した場合には、変位量の幅は50度から400度前後の範囲内の値で納まっている。図4(b)に示された範囲92は、時間x3からx4の間の変位角度y3からy4までを示している。
図4(b)では、グラフ下部の変位量が50度から100度前後の範囲内と、グラフ上部の変位量が300度から400度前後の範囲内で、一定期間、回転角度の変位量の値が滞留している期間が存在している。携帯端末10を保持するユーザがウォーキング運動状態で歩行している場合、このグラフ上部および下部の双方において、滞留状態が存在することが、本発明の発明者によって見出された。これを用いて、本発明では、携帯端末10を保持するユーザのウォーキング運動状態をより正確に把握している。
ユーザが、携帯端末10を衣服のポケット等に保持しながらウォーキング運動を行った場合には、図4(b)のグラフに示すように変位の3軸合成波形が、上部および下部に、所定時間の間、ある一定範囲で値が滞留する期間が生じる。
一方、図13(a)に示すように、ユーザが衣服のポケットに携帯端末10を保持して歩行した場合には、上下両方の端で所定時間、値を維持するような波形は得られない。
同様に、図13(b)に走行時における変位の3軸合成波形のグラフを示す。同じくウォーキング時の波形とは異なり、上下端の所定時間以上の保持時間を得る事はできない。
本実施形態では、所定期間(期間TA)における合成角度の変位量の値が、それぞれ最大値および最小値の値の間で、差が規定値(規定値Vα)よりも大きく、かつ各上部および下部で次の反対の極が最大値と最小値の中間点より越えない区間の上部の区間を上部滞留区間、下部の区間を下部滞留区間としている。
また、3軸の変位量を合成した波形より変位量の上部および下部における停滞を検出する事により、ウォーキング運動の判断を行う。例えば、ある時間からの合成値の変化の極大点より初期の上端を検出し、初期上端の値をベースに規定値Dの範囲内にある場合を、上端の値を保持している時間を上端保持時間とする。これら上下の端の値を保持する時間をベースにウォーキング運動の判断を行う。
具体的には、上部および下部の滞留の期間が規定値より短い場合は、上部および下部の滞留区間から除外している。また、規定期間内(期間TB)の上部滞留区間の時間および下部滞留区間の時間が占める比率が、所定の比率より小さい場合には、ウォーキング運動状態と判断する。
例えば、上部および下部における変位量の値の差が例えば、40:60の様に小さい場合は、携帯端末10を保持するユーザはウォーキング運動状態であると判断している。逆に、上部および下部における変位量の値の差が、例えば、10:180の様に大きい場合は、ウォーキング運動状態ではないと判断している。
さらに、図5に示すように、一定の周期性を持って上部滞留区間、または、下部滞留区間が規定値(規定値Vβ)よりも長くなる場合には、携帯端末10を手に持っているか、手首などの腕の先端付近に装着した状態で、ウォーキング運動をしていると判断することもできる。図5は、ユーザが携帯端末10を手で保持してウォーキング歩行を行った場合における角度変位量の合成値の例を示すグラフである。
上記の判断に基づいて、ユーザが携帯端末10を、手または手首などの腕の先端付近に保持していない場合には、音、光、振動等を用いて、ユーザに保持位置を変更するように促してもよい。この保持位置の変更を促す処理については、詳細は後述する。
また、上部または下部における、角度変位量の変化が所定の範囲に納まる時間が長くなる周期は、ユーザが歩行する際に腕を振って歩く周期(歩行ピッチ93)と概ね一致するため、上記周期を参照してウォーキング運動時の腕振りピッチを検出し、腕振りピッチの変化をウォーキング運動アドバイスとしてユーザにフィードバックしてもよい。このユーザに対するウォーキング方法のアドバイスについては、詳細は後述する。
次に、図6から図8を用いて、携帯端末10の各機能ブロックで行われる処理の流れについて、順に説明する。
図6は、携帯端末10を保持するユーザの歩行状態がウォーキング運動状態であるか否かを判断する処理の流れを示すフロー図である。図7は、ユーザがウォーキング運動状態であるか否かを判断するために、図4(b)のような3軸合成グラフにおいて、上部における変位角度の停滞状態を検出するための処理の流れを、同様に、図8は下部における変位角度の停滞状態を検出するための処理の流れを示すフロー図である。
図6において、処理が開始されると、まず、S101において、携帯端末10における各初期設定が制御部20によって行われる。具体的には、上端の初期値UTx=0、下端の初期値DTX=0、上部滞留時間の初期値UTS=0、下部滞留時間の初期知DTS=0、および、ユーザがウォーキング運動状態であるか否かを判断する状態フラグStatusW=「非ウォーキング運動状態」といった初期値をそれぞれ設定する。
次に、S102において、制御部20の演算部22は、3軸センサ40から出力された各方向に対する回転角度の角度情報を変位量の値として受け取り、数式(1)を用いて3軸合成の演算を行い、角度合成値Svとして出力する。
次に、S103において、S102の処理で算出された角度情報Svが上部の所定の範囲内、具体例をあげれば、図4(b)における300度から400度付近の範囲内で滞留しているか否かを検出する。上部の所定の範囲内で滞留していることを検出した場合(S103でYES)、処理はS104に進む。上部の所定の範囲内で滞留していることを検出しなかった場合(S103でNO)、処理はS105に進む。
S104において、上下変位量演算部24は、後述する図7のフローで示す処理を用いて、上部の所定の範囲内で角度合成値の値が滞留している時間である上部滞留時間UTxを取得し、新たな値であった場合には更新する。
S106において、判断部26は、S104で上部滞留時間UTxが更新されたか否かを判断する。UTxが更新されており、S104で新たな値を取得していた場合(S106でYES)、処理はS107に進む。UTxが更新されておらず、S104で新たな値を取得していなかった場合(S106でNO)、処理はS102に戻る。
S107において、制御部20は記録部42に対して、更新された新たな上部滞留時間UTxを記録させる。処理はS111に進む。
S105において、S102の処理で算出された角度情報Svが下部の所定の範囲内、具体例をあげれば、図4(b)における0度から50度付近の範囲内で滞留しているか否かを検出する。下部の所定の範囲内で滞留していることを検出した場合(S105でYES)、処理はS108に進む。下部の所定の範囲内で滞留していることを検出しなかった場合(S105でNO)、処理はS102に戻る。
S108において、上下変位量演算部24は、後述する図8のフローで示す処理を用いて、下部の所定の範囲内で角度合成値の値が滞留している時間である下部滞留時間DTxを取得し、新たな値であった場合には更新する。
S109において、判断部26は、S105で下部滞留時間DTxが更新されたか否かを判断する。DTxが更新されており、S105で新たな値を取得していた場合(S109でYES)、処理はS110に進む。DTxが更新されておらず、S108で新たな値を取得していなかった場合(S109でNO)、処理はS102に戻る。
S110において、制御部20は記録部42に対して、更新された新たな下部滞留時間DTxを記録させる。処理はS111へ進む。
S111において、上下変位量演算部24は、上部滞留時間UTxあるいは下部滞留時間DTxが記録された後、規定期間A時間前から滞留時間終了までの期間における上部滞留時間の積算UTSおよび下部滞留時間の積算DTSを演算する。なお、本実施形態では、上部滞留時間UTxおよび下部滞留時間DTxw、UT0、UT1、UT2、……、UTxという様に、時系列に沿って順に記録している。
次に、S112において、ウォーキング状態判断部27は、UTSおよびDTSの合計が規定値B以上であるか否か判断する。(UTS+DTS)の値が規定時間B以上である場合(S112でYES)、処理はS113に進む。(UTS+DTS)の値が規定時間B未満である場合(S112でNO)、処理はS115に進む。
なお、この規定時間Bは、経過時間に対する上部および下部の滞留時間が占める時間を規定するものであり、ウォーキング状態を判断する判断条件の1つが規定時間B以上であることと設定している。例えば、過去1分間のデータから条件判断する場合の上部及び下部の滞留時間占有率の条件を80%以上とした場合は、規定時間Bは、60、000ms×0.8=48、000msとする事などが考えられる。
S113において、ウォーキング状態判断部27は、UvおよびDvの差の絶対値が規定値C以上であるか否か判断する。|Uv−Dv|の値が規定値C以上である場合(S113でYES)、処理はS114に進む。|Uv−Dv|の値が規定値C未満である場合(S113でNO)、処理はS115に進む。
なお、この規定時間この規定値Cは、上端滞留値と下端滞留値の差異の規定であり、上下部滞留値の差異が規定値C以上の場合はウォーキング状態と判断するものとする。例えば、ウォーキング状態の判断条件として、上下端滞留値の差異が100°以上とする事などが考えられる。
S114において、ウォーキング状態判断部27は、ユーザのウォーキング運動状態を示すStatusWの値を「ウォーキング運動状態」を示す値(例えば、1)に設定し、処理はS102に戻る。S115において、ウォーキング状態判断部27は、ユーザのウォーキング運動状態を示すStatusWの値を「非ウォーキング運動状態」を示す値(例えば、0)に設定し、処理はS102に戻る。
以上の一連の処理によって、携帯端末10は、端末自身を保持するユーザの歩行状態がウォーキング運動状態であるか否か、判断する。
次に、図6のS104で行われた上部滞留時間UTxを更新する処理の流れについて、図7を参照して詳細を説明する。
まず、処理が開始されると、S201において、演算部22の方位変位量演算部23は、3軸センサ40からの出力から算出した角度合成値Svから最大の値を算出し、上端値Uvとして更新する。さらに、上端値Uvが新たな値に更新された場合、角度合成値の上部滞留範囲を示す変動範囲値Rvを更新する。
ここで、変動範囲値Rvは、それまでに得られた上端値Uvと下端値Dvより得られる変動値としている。具体例をあげれば、例えば、上端値Uvと下端値Dvの差に占める割合から、変動範囲値Rvを定義する方法が考えられる。具体例としてとしては、例えば、上端および下端における値の差分の40%とする事などが考えられる。
次に、S202において、上下変位量演算部24は、3軸合成値Svと上端値Uvが変動範囲値Rvの範囲内にあるか否かを、SvおよびUvの差の絶対値がRvより大きいか否かによって判断する。|Sv−Uv|がRvよりも大きい場合(S202でYES)、処理はS203に進む。|Sv−Uv|がRv以下の場合(S202でNO)、処理はS207に進む。
S207において、上下変位量演算部24は、Rv範囲内にある場合は磁気センサのサンプリング周期等を元に上端保持時間UTxをインクリメントし、処理はS209に進む。
S203において、上下変位量演算部24は、UvおよびRvの差を演算し、3軸合成値Svが変動範囲値Rvの範囲以下か判断する。(Uv−Rv)がSvより大きい場合(S203でYES)、処理はS204に進む。(Uv−Rv)がSv以下の場合(S203でNO)、処理はS208に進む。
S204において、上下変位量演算部24は、上部滞留時間UTxが規定時間D以上であるか判断を行う。UTxが規定時間Dよりも短い場合(S204でNO)、処理はS208へ進む。UTxが規定時間Dよりも長い場合(S204でYES)、処理はS205へ進む。なお、この規定時間Dは、滞留継続時間を規定するものである。例えば、滞留継続時間10msを規定時間Dとするような事が考えられる。
S205において、上下変位量演算部24は上部滞留時間UTxを新たな値で更新し、S206において、取得フラグStatusXをUTx取得済みの状態に設定することで、UTxの更新処理は終了する。
S208において、上下変位量演算部24は上部滞留時間UTxをクリアし、S209において取得フラグStatusXをUTx未取得の状態に設定することで、UTxの更新処理は終了する。
次に、図6のS108で行われた下部滞留時間DTxを更新する処理の流れについて、図8を参照して詳細を説明する。
まず、処理が開始されると、S301において、演算部22の方位変位量演算部23は、3軸センサ40からの出力から算出した角度合成値Svから最小の値を算出し、下端値Dvとして更新する。さらに、下端値Dvが新たな値に更新された場合、角度合成値の下部滞留範囲を示す変動範囲値Rvを更新する。
次に、S302において、上下変位量演算部24は、3軸合成値Svと下端値Dvが変動範囲値Rvの範囲内にあるか否かを、SvおよびDvの差の絶対値がRvより大きいか否かによって判断する。|Sv−Dv|がRvよりも大きい場合(S302でYES)、処理はS303に進む。|Sv−Dv|がRv以下の場合(S302でNO)、処理はS307に進む。
S307において、上下変位量演算部24は、Rv範囲内にある場合は磁気センサのサンプリング周期等を元に下部滞留時間DTxをインクリメントし、処理はS309に進む。
S303において、上下変位量演算部24は、DvおよびRvの和を演算し、3軸合成値Svより大きいか否かを判断する。(Dv+Rv)がSvより小さい場合(S303でYES)、処理はS304に進む。(Dv+Rv)がSv以上の場合(S303でNO)、処理はS308に進む。
S304において、上下変位量演算部24は、下部滞留時間DTxが規定時間D以上であるか判断を行う。DTxが規定時間Dよりも短い場合(S304でNO)、処理はS308へ進む。DTxが規定時間Dよりも長い場合(S304でYES)、処理はS305へ進む。
S305において、上下変位量演算部24は下部滞留時間DTxを新たな値で更新し、S306において、取得フラグStatusXをDTx取得済みの状態に設定することで、更新処理は終了する。
S308において、上下変位量演算部24は下部滞留時間DTxをクリアし、S309において取得フラグStatusXをDtx未取得の状態に設定することで、更新処理は終了する。
以上の手順で、本実施形態の携帯端末10は、上部滞留時間UTxおよび下部滞留時間DTxを更新し、携帯端末10を保持するユーザの状態がウォーキング運動状態であるか否かを判断している。
なお、上述の実施形態では、制御部20の判断部26がウォーキング状態判断部27を備え、通知部30がウォーキング状態通知部31を備える構成として説明したが、図9に示すように、判断部26がさらに端末状態判断部28を備え、通知部30がさらに端末状態通知部32を備える構成としてもよい。
この場合、演算部22の方位変位量演算部23および上下変位量演算部24は、3軸センサ40からの方位情報の3軸合成値Svから、携帯端末10を保持するユーザが携帯端末自身を、体のどの部分で保持しているかを判断する構成とすることができる。
図5は、ユーザが携帯端末10を手にもって歩行した場合の3軸センサ40からの出力の合成値の変化を示すグラフである。図5に示すように、一定の周期性を持って上部滞留区間、または、下部滞留区間が規定値(規定値Vβ)よりも長くなる場合には、携帯端末10を手に持っているか、手首などの腕の先端付近に装着した状態で、ウォーキング運動をしていると判断することもできる。
具体的には、合成変位量の値がグラフの上部または下部どちらかの端に規定時間E以上の滞留時間を有し、規定誤差範囲G以下の周期性を有する場合に、ユーザが携帯端末10を手に持ってウォーキング運動を行っていると判断する事ができる。
端末状態判断部28は、演算部22の方位変位量演算部23および上下変位量演算部24の演算結果に基づいて、携帯端末10がユーザの身体部位のどの部分で保持されているかを判断する処理を行う。端末状態通知部32は、端末状態判断部28の判断結果に基づいて、ユーザに対して携帯端末10の保持位置を通知したり、保持位置の変更を指示したりするメッセージを出力する処理を行う。
上記の判断に基づいて、ユーザが携帯端末10を、手または手首などの腕の先端付近に保持していない場合には、音、光、振動等を用いて、ユーザに保持位置を変更するように促してもよい。
上述のユーザによる携帯端末10の保持位置の判断手順について、図10を参照して説明する。図10は、ユーザが携帯端末10を保持している身体部位を判断する処理の流れを示すフロー図である。
S401において、携帯端末10における各初期設定が制御部20によって行われる。具体的には、上端の初期値UTx=0、下端の初期値DTX=0、上部滞留時間の初期値UTS=0、下部滞留時間の初期知DTS=0、ユーザがウォーキング運動状態であるか否かを判断する状態フラグStatusW=「非ウォーキング運動状態」、およびユーザが携帯端末10を保持している部位を示す保持部位フラグStatusH=「非手持ち状態」といった初期値をそれぞれ設定する。その後、S402において、ウォーキング状態判断部27は、図6のフロー図で示した手順でウォーキング運動状態の検知を行う。
S403において、判断部26は、ウォーキング運動状態を示す変数StatusWが「ウォーキング運動」状態であるか否か判断する。「ウォーキング運動」状態の場合(S403でYES)、処理はS404へ進む。「ウォーキング運動」状態でない場合(S403でNO)、処理はS402に戻る。
S404において、端末状態判断部28は、現在検知している上部または下部の滞留に対し、上部滞留であれば上端滞留時間UTxが規定時間E以上保持しているか否かを判断し、下部滞留であれば下部滞留時間DTxが規定時間E以上であるか否か判断する。上記の条件を満たす場合(S404でYES)、処理はS405へ進む。上記の条件を満たさない場合(S404でNO)、処理はS408へ進む。
S408において、端末状態判断部28は、携帯端末10のユーザによる保持状態を示す変数StatusHを「ウォーキング運動」状態、かつ「非手持ち」状態であることを示すように設定し、処理はS402に戻る。
S405において、端末状態判断部28は、上部滞留または下部滞留を開始した時刻をPTx、開始周期をCxとして記録する。S406において、端末状態判断部28は、規定時間F内の滞留開始周期Cxの誤差範囲が規定時間G以下であるか否かを判断する。Cxが規定時間G以下の場合(S406でYES)、処理はS407に進む。Cxが規定時間Gより大きい場合(S406でNO)、処理はS408に進む。
なお、図5に示すように、歩行ピッチ93は、滞留開始周期Cとほぼ一致しており、ユーザがウォーキング運動時に携帯端末10を手に持つ事により正確な歩行ピッチを計測する事ができるようになる。
S407において、端末状態判断部28は、端末保持状態が「手持ち」状態であると判断し、StatusHを「ウォーキング運動」状態、かつ、「手持ち」状態であると設定して、処理を終了する。端末状態通知部32は、上述の処理で設定したStatusHを参照して、ユーザに対して携帯端末10の状態を通知する。
以上の一連の処理を用いて、携帯端末10を保持するユーザがウォーキング運動状態にある場合に、携帯端末10を手に保持しているか否かを判断する事ができる。なお、ユーザがウォーキング運動状態にあり、かつ携帯端末10を手に保持していない場合には、ユーザに対して手に持つよう通知を行う構成としてもよい。
その場合、制御部20の判断部26がウォーキング状態判断部27および端末状態判断部28を備え、通知部30がウォーキング状態通知部31および端末状態通知部32を備えるだけではなく、図11に示すように、判断部26がさらにアドバイス判断部29を備え、通知部30がさらにアドバイス通知部33を備える構成とすることが好ましい。
アドバイス判断部29は、端末状態判断部28は、演算部22の方位変位量演算部23および上下変位量演算部24の演算結果と、端末状態判断部28におけるウォーキング運動状態および端末保持位置の判断結果とに基づいて、ユーザに対してよりよいウォーキング運動を行うためのアドバイスを行う。具体的には、携帯端末10を所定の位置(例えば、手で持つ)ように指示する、歩行ピッチを上げる(早く歩く)、歩幅を大きくする、手を大きく振る、手足を進めるタイミングを整える、左右同時に足を出す、休憩することを促すなどといった、運動効果を高めるアドバイス、または、体調を管理するためのアドバイスなどを提示する。
上述のユーザによる携帯端末10によるアドバイスの提示手順について、図12を参照して説明する。図12は、ユーザが携帯端末10を保持している身体部位に基づいて判断する処理の流れを示すフロー図である。
S501において、携帯端末10における各初期設定が制御部20によって行われる。
その後、S502において、ウォーキング状態判断部27は、図6のフロー図で示した手順でウォーキング運動状態の検知を行い、ウォーキング状態を示す変数StatusWの更新を行う。
S503において、端末状態判断部28は、ウォーキング状態を示す変数StatusWが「ウォーキング運動」状態であるか否かを判断する。StatusWが「ウォーキング運動」状態の場合(S503でYES)、処理はS504へ進む。「ウォーキング運動」状態でない場合(S503でNO)、処理はS502に戻り、ウォーキング状態の検知を繰り返す。S504において、端末状態判断部28は、図10のフロー図で示した手順で「手持ち」状態の検出し、手持ち状態を示す変数StatusHを更新する。
S505において、端末状態判断部28は、手持ち状態を示す変数StatusHが「手持ち」状態であるか否か判断する。StatusHが「手持ち」状態の場合(S505でYES)、処理はS506に進む。StatusHが「非手持ち」状態の場合(S505でNO)、処理はS507に進む。
S506において、アドバイス通知部33は、演算部22から出力された検知および演算結果に基づいて、よりよいウォーキング運動を行うためのアドバイスを行い、処理はS502に戻る。S507において、アドバイス通知部33は、ユーザに対して携帯端末10を手に持つように指示するアドバイスを提示し、処理はS502に戻る。
以上の手順で処理を行うことで、携帯端末10を持つユーザに対してウォーキング運動の挙動を検知しやすく、よりアドバイスがしやすい端末の保持状態へユーザを誘導し、かつ年齢や性別等の統計データによらないウォーキングアドバイスを行う事ができるようになる。
次に、携帯端末10を様々な保持位置で保持し、歩行および走った場合の3軸合成のグラフについて、図13〜図17に示す。いずれの図も、横軸が時間[msec]、縦軸が単位時間あたりの変位量[°/sec]を示している。
図13は、ポケットに携帯端末10を入れて運動した場合の3軸合成のグラフを示すものであり、図13(a)はポケットに携帯端末10をいれて歩行した場合、図13(b)はポケットに携帯端末10をいれて走った場合のグラフである。
図13(a)では、354度付近に上部滞留状態が見られ、下部滞留は見られない。図13(b)では、歩行時よりも短い周期でグラフが繰り返され、上部滞留は見られず、下部でわずかに滞留している箇所が存在している。
図14は、保持する場所を変えた場合の3軸合成のグラフを示すものである。
図14(a)は、携帯端末10をポケットにいれて歩行した場合の3軸合成のグラフであり、上部および下部に滞留している期間が見られる。
図14(b)は、携帯端末10を手に持って歩行した場合の3軸合成のグラフであり、上部および下部に滞留期間がみられ、上部の滞留が下部の滞留に比べて長くなる傾向が見られる。
図15は、携帯端末10を持って走った場合の3軸合成のグラフであり、図15(a)は携帯端末10をポケットにいれて走った場合のグラフ、図15(b)は携帯端末10を手に持って走った場合のグラフを示している。
図16は、携帯端末10をポケットにいれて歩行した場合の3軸合成のグラフであり、図16(a)はズボンのポケットに携帯端末10をいれて歩行した場合、図16(b)は胸のポケットに携帯端末10をいれて歩行した場合を示している。
図17は、携帯端末10をポケットにいれて歩行した場合と手に持って歩行した場合を比較するグラフであり、図17(a)は携帯端末10をポケットにいれて歩行した場合を、図17(b)は携帯端末10を手に持って歩行した場合を示している。
上述のように、携帯端末を構成することで、携帯端末の向きの変位量を検出し、そのパターンによりウォーキング運動状態の判別ができるようになる。また、ウォーキング運動状態時に携帯端末を手首付近に保持しているか判別も可能となる。
これによりウォーキング運動時に携帯端末を手首の付近に保持していない場合には、ユーザに手に持つ等のフィードバックを行い、ユーザが手首付近に保持した事を検出した後は、ユーザに対してウォーキング運動を適切に行うためのアドバイスを開始する事ができる。
さらに携帯端末を手首付近に保持しながらウォーキング運動を行った場合には腕の振りピッチを正確に計測する事が可能になり、あらかじめユーザの年齢・性別・身長等のその他身体的特徴を設定するといった負担が無く、腕振りピッチの変化データより腕振りピッチを適正に行えるようユーザにアドバイスする事ができる携帯端末を構成することができる。
以上のように、本実施形態の携帯端末10は、自装置を保持するユーザの移動状態を判断する携帯端末10であって、自装置の方位を検出する3軸センサ40と、検出された前記方位の単位時間あたりの変位量を変位レートとして算出する方位変位レート演算部23と、前記変位レートの滞留が存在するか否かを検出する上下変位レート演算部24と、検出結果から、前記ユーザの移動状態を判断する判断部26とを備えている。
また、本実施形態の状況判断方法は、自装置を保持するユーザの移動状態を判断する携帯端末10における状態判断方法であって、自装置の方位を検出する方位検出ステップと、検出された前記方位の単位時間あたりの変位量を変位レートとして算出する変位レート算出ステップと、前記変位レートの滞留が存在するか否かを検出する滞留検出ステップと、検出結果から、前記ユーザの移動状態を判断する状態判断ステップとを含んでいる。
上記の構成によれば、変位レートの滞留を検出し、滞留の状態からユーザの運動状態を判断するので、ユーザが保持する位置、ユーザの身体的特徴、およびユーザの移動の癖に関わらず、ユーザの運動状態を判断できる携帯端末10および状態判断方法を構成することができる。
上記の携帯端末10では、3軸センサ40は、3次元の方位を検出するものであり、方位変位レート演算部23は、検出された前記3次元の方位の変位レートを算出している。
上記の構成によれば、3次元の方位から変位レートを算出するので、自装置が保持される方向に関わらず、滞留の判断を行うことができる。
上記の携帯端末10では、判断部26は、異なる2つの変位レートで滞留が存在する場合、前記ユーザの移動状態をウォーキング運動状態であると判断している。
上記の構成によれば、ユーザのウォーキング運動状態を正確に判断することができる。
上記の携帯端末10では、判断部26は、滞留の存在する前記2つの変位レートのうち、滞留を維持している時間が長い方の変位レートに存在する滞留に関して、前記滞留の発生する周期が揃っている場合に、ユーザが携帯端末10を手に持っていると判断している。
上記の構成によれば、合成変位量の変動範囲に基づいて自装置が保持されている位置を検出するので、方位の変位レートから保持位置の情報を取得し、保持位置の情報に基づいた各種処理を行うことができる。
上記の携帯端末10では、判断部26が判断した結果を通知する通知部30をさらに備えている。
上記の構成によれば、任意の出力デバイス、具体的には、表示部44や音声出力部46などを介して判別した運動状態に応じたユーザへの情報提示を行うことができるため、適切な出力デバイスを選択してユーザに情報を提示することができる。
上記の携帯端末10では、通知部30は、判断部26が検出した前記保持位置が所定の位置ではなかった場合、保持位置の変更指示を通知している。
上記の構成によれば、ユーザに対して保持位置の変更を通知することで、ユーザに保持位置をより適切な状態判断を行うことができる位置に変更させて、より正確な状態判断を行うことができる。
上記の携帯端末10では、判断部26は、滞留の存在する前記2つの変位レートのうち、滞留を維持している時間が長い方の変位レートに存在する滞留に関して、前記滞留の発生する実際の周期と理想的な周期とを比較し、通知部30は、前記比較の結果に基づいて、前記ユーザに対して適正なウォーキング運動へのアドバイスを通知している。
上記の構成によれば、理想的な周期と、センサによって検出された周期を比較することで、ユーザに対してより適切なアドバイスを提示することができる。
本発明は上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。すなわち、請求項に示した範囲で適宜変更した技術的手段を組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
最後に、携帯端末10の各ブロック、特に制御部20の演算部22、判断部26、および通知部30は、ハードウェアロジックによって構成してもよいし、次のようにCPUを用いてソフトウェアによって実現してもよい。
すなわち、携帯端末10は、各機能を実現する制御プログラムの命令を実行するCPU(central processing unit)、上記プログラムを格納したROM(read only memory)、上記プログラムを展開するRAM(random access memory)、上記プログラムおよび各種データを格納するメモリ等の記憶装置(記録媒体)などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアである携帯端末10の制御プログラムのプログラムコード(実行形式プログラム、中間コードプログラム、ソースプログラム)をコンピュータで読み取り可能に記録した記録媒体を、上記携帯端末10に供給し、そのコンピュータ(またはCPUやMPU)が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ系、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD−ROM/MO/MD/DVD/CD−R等の光ディスクを含むディスク系、ICカード(メモリカードを含む)/光カード等のカード系、あるいはマスクROM/EPROM/EEPROM/フラッシュROM等の半導体メモリ系などを用いることができる。
また、携帯端末10を通信ネットワークと接続可能に構成し、通信ネットワークを介して上記プログラムコードを供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、LAN、ISDN、VAN、CATV通信網、仮想専用網(virtual private network)、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、IEEE1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL回線等の有線でも、IrDAやリモコンのような赤外線、Bluetooth(登録商標)、802.11無線、HDR、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。