(57)【特許請求の範囲】
【請求項１】
可動部に取り付けられた音波を発信する音波発信機と、前記可動部に接続される本体部に取り付けられ、前記音波発信機から音波を受信する複数の音波受信機とに接続される位置算出装置であって、
前記複数の音波受信機から音波の受信時間を取得して、前記音波発信機から音波が発信された時間から前記音波受信機に音波が到達するまでの到達時間を音波受信機毎に特定し、特定した複数の到達時間と、前記可動部から前記本体部までの利用者の腕の長さに対応する距離を音波の音速で除算した値を示す基準到達時間とを基にして、到達時間を利用して前記音波発信機の位置を算出するか否かを判定する判定部と、
前記判定部の判定結果に応じて、前記複数の到達時間のうち、三つ以上の到達時間が前記基準到達時間以内である場合に、前記基準到達時間以内の到達時間に基づき前記音波発信機の位置を算出する位置算出部と
を有することを特徴とする位置算出装置。
【請求項２】
前記判定部によって、前記到達時間が、前記基準到達時間を超えていると判定された場合に、前記音波発信機に音波を再発信させる発信制御部を更に有することを特徴とする請求項１に記載の位置算出装置。
【請求項３】
前記発信制御部は、前記音波発信機に音波を再発信させる場合に、基準の間隔よりも短い間隔で音波を発信させることを特徴とする請求項２に記載の位置算出装置。
【請求項４】
前記位置算出部は、前記音波受信機から前回取得した到達時間を利用して、前記音波発信機の位置を算出することを特徴とする請求項１に記載の位置算出装置。
【請求項５】
前記位置算出部は、前記判定部によって前記音波受信機から取得した到達時間が、前記基準到達時間を超えていると判定された場合に、評価関数を利用して、前記音波発信機の位置を算出することを特徴とする請求項１に記載の位置算出装置。
【請求項６】
可動部に取り付けられた音波を発信する音波発信機と、前記可動部に接続される本体部に取り付けられ、前記音波発信機から音波を受信する複数の音波受信機とに接続されるコンピュータの位置算出方法であって、
前記複数の音波受信機から音波の受信時間を取得して、前記音波発信機から音波が発信された時間から前記音波受信機に音波が到達するまでの到達時間を音波受信機毎に特定し、特定した複数の到達時間と、前記可動部から前記本体部までの利用者の腕の長さに対応する距離を音波の音速で除算した値を示す基準到達時間とを基にして、到達時間を利用して前記音波発信機の位置を算出するか否かを判定し、
判定結果に応じて、前記複数の到達時間のうち、三つ以上の到達時間が前記基準到達時間以内である場合に、前記基準到達時間以内の到達時間に基づき前記音波発信機の位置を算出することを特徴とする位置算出方法。
【請求項７】
可動部に取り付けられた音波を発信する音波発信機と、前記可動部に接続される本体部に取り付けられ、前記音波発信機から音波を受信する複数の音波受信機とに接続されるコンピュータに、
前記複数の音波受信機から音波の受信時間を取得して、前記音波発信機から音波が発信された時間から前記音波受信機に音波が到達するまでの到達時間を音波受信機毎に特定し、特定した複数の到達時間と、前記可動部から前記本体部までの利用者の腕の長さに対応する距離を音波の音速で除算した値を示す基準到達時間とを基にして、到達時間を利用して前記音波発信機の位置を算出するか否かを判定し、
判定結果に応じて、前記複数の到達時間のうち、三つ以上の到達時間が前記基準到達時間以内である場合に、前記基準到達時間以内の到達時間に基づき前記音波発信機の位置を算出する処理を実行させる位置算出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、位置算出装置等に関する。
【背景技術】
【０００２】
人物の行動を認識するための各種の技術が存在する。例えば、カメラで人物の画像を撮影し、撮影した画像を分析することで、人物の行動を識別する技術が存在する。この技術によれば、人物の行動を正確に識別することは可能であるが、この画像分析を行うための設備費用が高価である。また、この技術では、人物がカメラに写らない場所にいる場合には、人物の行動を識別することができず、使用できる場所が限られる。
【０００３】
これに対して、手先の動きを基にして人物の行動を識別する技術が存在する。手先の動きは、物をもってくる、物を動かす等の基本動作であり、手先から体までの距離も重要な意味を持つ。この技術では、例えば、超音波を用いた３次元計測により手先の位置を順次算出し、手先の位置と体の位置との位置関係から、人物の行動を識別する。例えば、この技術では、手先が体から離れた後に、手先が耳元に近づけば、利用者は電話をかけたと識別する。この技術によれば、３次元計測により人物の行動を識別するので、画像分析によって行動を識別する場合と比較して、低コストであり、使用場所も制限されない。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開昭６２−０４４８２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、超音波を用いた３次元計測により手の位置を算出すると、障害物や反射の影響を受けやすく、手先の位置を誤検出する場合があるという問題があった。
【０００６】
開示の技術は、上記に鑑みてなされたものであって、手の位置の誤検出を防止することができる位置算出装置、位置算出方法および位置算出プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本願の開示する位置算出装置は、音波発信機および音波受信機に接続され、判定部と位置算出部を有する。音波発信機は、可動部に取り付けられ、音波を発信する。音波受信機は、可動部に接続された本体部に取り付けられ、音波を受信する。判定部は、複数の音波受信機から音波の受信時間を取得して、音波発信機から音波が発信された時間から音波受信機に音波が到達するまでの到達時間を音波受信機毎に特定する。そして、判定部は、特定した複数の到達時間と、可動部の可動域から導かれる音波の基準到達時間とを基にして、到達時間を利用して前記発信機の位置を算出するか否かを判定する。位置算出部は、判定部の判定結果に応じて、複数の到達時間に基づき音波発信機の位置を算出する。
【発明の効果】
【０００８】
本願の開示する位置算出装置の一つの態様によれば、手の位置の誤検出を防止することができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、本実施例１にかかる位置算出システムの構成を示す図である。
【図２】図２は、本実施例１にかかる超音波発信機の構成を示す図である。
【図３】図３は、超音波の波形の一例を示す図である。
【図４Ａ】図４Ａは、本実施例１にかかる位置算出装置の構成を示す図である。
【図４Ｂ】図４Ｂは、人体情報のデータ構造の一例を示す図である。
【図４Ｃ】図４Ｃは、位置情報テーブルのデータ構造の一例を示す図である。
【図５】図５は、本実施例１の位置算出装置の処理手順を示すフローチャートである。
【図６】図６は、本実施例２にかかる位置算出システムの構成を示す図である。
【図７】図７は、本実施例２にかかる位置算出装置の構成を示す図である。
【図８】図８は、本実施例２の位置算出装置の処理手順を示すフローチャートである。
【図９】図９は、本実施例３にかかる位置算出システムの構成を示す図である。
【図１０】図１０は、本実施例３にかかる位置算出装置の構成を示す図である。
【図１１】図１１は、本実施例３の処理手順を示すフローチャートである。
【図１２】図１２は、本実施例４にかかる位置算出システムの構成を示す図である。
【図１３】図１３は、本実施例４にかかる超音波発信機の構成を示す図である。
【図１４】図１４は、実施例にかかる位置算出装置を構成するコンピュータのハードウェア構成を示す図である。
【発明を実施するための形態】
【００１０】
以下に、本願の開示する位置算出装置、位置算出方法および位置算出プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例１】
【００１１】
図１は、本実施例１に係る位置算出システムの構成を示す図である。図１に示すように、この位置算出システムは、超音波発信機１０、超音波受信機２０ａ〜２０ｃ、位置算出装置１００を有する。超音波受信機２０ａ〜２０ｃと位置算出装置１００は、それぞれ有線により接続される。超音波発信機１０と位置算出装置１００は、無線により接続される。本実施例１では一例として、超音波発信機１０は、利用者１の手首に設置される。また、超音波受信機２０ａ〜２０ｃは、利用者１の胸部にそれぞれ設置される。利用者１の腕は可動部の一例である。利用者１の胸部は、可動部に接続された本体部の一例である。
【００１２】
超音波発信機１０は、超音波を発信する装置である。超音波発信機１０が発信する超音波は、超音波受信機２０ａ〜２０ｃによって受信される。また、超音波発信機１０は、超音波を発信するタイミングで、ＬＥＤ（Light  Emitting  Diode）を発光させることで、超音波の発信時間を位置算出装置１００に通知する。
【００１３】
超音波受信機２０ａ〜２０ｃは、超音波発信機１０からの超音波を受信する装置である。超音波受信機２０ａ〜２０ｃは、超音波を受信した受信時間を位置算出装置１００に通知する。
【００１４】
位置算出装置１００は、超音波発信機１０から発信された超音波が超音波受信機２０ａ〜２０ｃに到着するまでの到達時間に基づいて、超音波発信機１０の位置を順次算出する装置である。本実施例１では、利用者１は手首に超音波発信機１０を装着しているので、位置算出部１００が算出する位置は、利用者１の手の位置を算出するに等しい。
【００１５】
更に、位置算出装置１００は、利用者１の人体の特徴に基づいて、到達時間を算出し直すか否かを判定する。具体的に、位置算出装置１００は、超音波発信機１０から超音波受信機２０ａ〜２０ｃに超音波が到達するまでの最大到達時間を算出する。例えば、位置算出装置１００は、利用者１の腕の長さを超音波の音速で割った時間を最大到達時間として算出する。位置算出装置１００は、到達時間が最大到達時間を超える場合には、到達時間を算出し直す。
【００１６】
位置算出装置１００が、到達時間を算出し直す場合には、超音波発信機１０に超音波の再発信要求を行う。この再発信要求により、超音波発信機１０は超音波を再発信し、超音波受信機２０ａ〜２０ｃは超音波の受信時間を位置算出装置１００に通知し、位置算出装置１００は、到達時間を再度算出する。
【００１７】
到達時間が最大到達時間を超えるような場合には、超音波発信機１０と超音波受信機２０ａ〜２０ｃとの間に障害物が存在し、超音波が適切に届いていないと考えられる。位置算出装置１００は、利用者１の人体の特徴に基づいて、最大到達時間を求めることで、適切でない到達時間を除外し、手の位置の誤検出を防止する。
【００１８】
本実施例１にかかる位置算出装置１００は、３点測量の要領で、超音波発信機１０の位置を算出するものとする。位置算出装置１００が３点測量の要領で超音波発信機１０の位置を算出するためには、それぞれ位置の異なる位置から超音波受信機までの距離が、最低３種類必要となる。このため、位置算出装置１００は、超音波受信機２０ａ〜２０ｃを利用して、超音波受信機２０ａと超音波発信機１０との距離、超音波受信機２０ｂと超音波発信機１０との距離、超音波受信機２０ｃと超音波発信機１０との距離を求める。
【００１９】
次に、図１に示した超音波発信機１０の構成について説明する。図２は、本実施例１にかかる超音波発信機の構成を示す図である。図２に示すように、超音波発信機１０は、超音波発信部１１、ＬＥＤ発光部１２、無線通信部１３、超音波発信制御部１４を有する。また、超音波発信機１０は、入力装置１５に接続される。例えば、入力装置１５は、超音波発信機１０に超音波の送信要求を行うスイッチに対応する。例えば、利用者が入力装置１５のスイッチを押すことにより、入力装置１５から超音波発信機１０に超音波の送信要求が出力される。
【００２０】
超音波発信部１１は、超音波発信制御部１４の発信命令を受けた場合に、超音波を発信する装置である。例えば、超音波発信部１１は、一定の周期Ｔ毎に超音波を発信する。図３は、超音波の波形の一例を示す図である。図３の横軸は時間を示し、縦軸は超音波の強さを示す。図３に示すように、超音波発信部１１は、一時的に信号強度が高くなる超音波を、一定の周期毎に発信する。
【００２１】
なお、超音波発信部１１は、超音波発信制御部１４から再発信命令を受ける場合がある。超音波発信部１１は、再発信命令を受けた場合には、通常の周期Ｔよりも短い周期で、超音波を発信する。例えば、超音波発信部１１は、周期Ｔ／ｎ毎に超音波を発信する。ｎは、２以上の整数である。
【００２２】
ＬＥＤ発光部１２は、超音波発信制御部１４の発光命令を受けた場合に、ＬＥＤを発光させる装置である。ＬＥＤが発光するタイミングは、超音波発信部１１が超音波を発信するタイミングと同じタイミングである。例えば、ＬＥＤ発光部１２は、超音波発信部１１の発信タイミングに合わせて、ＬＥＤを発光させてもよい。
【００２３】
無線通信部１３は、位置算出装置１００との間で無線通信を行う装置である。例えば、無線通信部１３は、位置算出装置１００から、超音波の再発信要求を受信した場合には、再発信要求を超音波発信制御部１４に出力する。
【００２４】
超音波発信制御部１４は、入力装置１５から超音波の送信要求を受けた場合に、超音波の発信命令を超音波発信部１１に出力し、ＬＥＤの発光命令をＬＥＤ発光部１２に出力する。超音波発信制御部１４が超音波の発信命令を出力するタイミング、およびＬＥＤの発光命令を出力するタイミングは、同じタイミングとする。
【００２５】
また、超音波発信制御部１４は、位置算出装置１００からの再発信要求を受信した場合には、再発信命令を超音波発信部１１に出力し、発光命令をＬＥＤ発光部１２に出力する。超音波発信制御部１４が、再発信命令を出力するタイミング、および発光命令を出力するタイミングは、同じタイミングとする。
【００２６】
次に、図１に示した位置算出装置１００の構成について説明する。図４Ａは、本実施例１にかかる位置算出装置の構成を示す図である。図４Ａに示すように、この位置算出装置１００は、無線通信部１１０、ＬＥＤ受光部１２０、記憶部１３０、判定部１４０、位置算出部１５０、位置情報通知部１６０を有する。また、位置算出装置１００は、超音波受信機２０ａ〜２０ｃ、ＰＣ（Personal  Computer）２００に接続される。
【００２７】
無線通信部１１０は、超音波発信機１０との間で無線通信を行う装置である。例えば、無線通信部１１０は、判定部１４０から超音波の再発信要求を受けた場合には、再発信要求を超音波発信機１０に送信する。例えば、無線通信部１１０と超音波発信機１０とは、ブルートゥース（登録商法）、その他無線通信規格に基づいて、無線通信を実行する。
【００２８】
ＬＥＤ受光部１２０は、超音波発信機１０のＬＥＤから発光される光を受光する装置である。ＬＥＤ受光部１２０は、受光した時間を判定部１４０に出力する。ここで、超音波発信機１０は、超音波を発信すると共に、ＬＥＤを発光させる。また、光の速さは、音速に比べて十分早いため、ＬＥＤ受光部１２０がＬＥＤの光を受光した時間は、超音波発信機１０から超音波が発信された時間に相当する。以下の説明において、ＬＥＤ受光部１２０が、ＬＥＤの光を受光した時間を、超音波発信時間と表記する。
【００２９】
記憶部１３０は、人体情報１３１および位置情報テーブル１３２を記憶する記憶部である。このうち、人体情報１３１は、利用者の身体の特徴を含む。例えば、人体情報１３１は、利用者１の腕の長さの情報などを含む。
【００３０】
図４Ｂは、人体情報のデータ構造の一例を示す図である。図４Ｂに示すように、人体情報１３１は、利用者ＩＤ、腕の長さ、足の長さを対応づけて記憶する。図４Ｂに示す例では、利用者ＩＤ「１」の利用者の腕の長さは「０．３７ｍ」、足の長さは「０．６５ｍ」である。腕の長さや足の長さは、腕や足の可動域といえる。
【００３１】
位置情報テーブル１３２は、手の位置情報を含むテーブルである。例えば、位置情報テーブル１３２は、時間毎の手の位置情報を保持する。図４Ｃは、位置情報テーブルのデータ構造の一例を示す図である。図４Ｃに示すように、位置情報テーブル１３２は、時間と、位置座標とを対応づけて記憶する。時間は、例えば、超音波発信機１０がＬＥＤを発光させた超音波発信時間に対応する。位置座標は、ある時間の超音波発信機１０の３次元座標である。例えば、時間ｔ１に対する、超音波発信機１０ａの位置座標は「ｘ１、ｙ１、ｚ１」である。
【００３２】
判定部１４０は、超音波発信時間と、超音波受信機２０ａ〜２０ｃの超音波受信時間とを基にして、超音波発信機１０から超音波受信機２０ａ〜２０ｃまでの超音波の到達時間を求め、到達時間が最大到達時間を超えるか否かを判定する処理部である。
【００３３】
判定部１４０は、最大到達時間を超える到達時間が一つでも存在する場合には、再発信要求を無線通信部１１０に出力する。無線通信部１１０に出力された再発信要求は、超音波発信機１０に送信される。これに対して、判定部１４０は、最大到達時間を超える到達時間が存在しない場合には、超音波発信時間と各到達時間とを対応づけて位置算出部１５０に出力する。
【００３４】
ここで、判定部１４０が、各到達時間を算出する処理の一例について順に説明する。判定部１４０は、超音波受信機２０ａ〜２０ｃから受信時間をそれぞれ取得する。判定部１４０は、超音波受信機２０ａの受信時間から超音波発信時間を減算することで、超音波受信機２０ａの到達時間を算出する。判定部１４０は、超音波受信機２０ｂの受信時間から超音波発信時間を減算することで、超音波受信機２０ｂの到達時間を算出する。判定部１４０は、超音波受信機２０ｃの受信時間から超音波発信時間を減算することで、超音波受信機２０ｃの到達時間を算出する。
【００３５】
判定部１４０が、最大到達時間を算出する処理の一例について説明する。判定部１４０は、人体情報１３１から、利用者１の腕の長さの情報を取得する。そして、判定部１４０は、腕の長さを超音波の音速で割り算することで、最大到達時間を算出する。なお、判定部１４０は、腕の長さを音速で割り算した値に、所定の補正数を加算することで、最大到達時間を補正してもよい。
【００３６】
図１に示す例では、超音波発信機１０が手首に取り付けられており、超音波受信機２０ａ〜２０ｃが利用者の胸部に取り付けられている。超音波発信機１０から、超音波受信機２０ａ〜２０ｃまでの最大の距離は、利用者が腕を伸ばした状態であり、利用者１の腕の長さに相当する。この最大の距離を超音波の音速で割り算すれば、超音波発信機１０から、超音波受信機２０ａ〜２０ｃまでの音波の最大到達時間を算出することができる。この最大到達時間を経過することは物理的にあり得ないので、超音波発信機２０と超音波受信機２０ａ〜２０ｃとの間に障害物等が存在しているものと考えられる。
【００３７】
位置算出部１５０は、超音波受信機２０ａ〜２０ｃの到達時間を基にして、利用者１の手首に装着された超音波発信機１０の３次元位置を計算する処理部である。例えば、位置算出部１５０は、超音波発信機１０と超音波受信機２０ａ〜２０ｃとの距離を求め、各距離を利用して、位置を算出する。
【００３８】
超音波発信機１０の位置を算出する場合の処理について説明する。位置算出部１５０は、超音波受信機２０ａの到達時間と音速とをかけたものを半径として算出し、超音波受信機２０ａの位置を中心とした球を算出する。また、位置算出部１５０は、超音波受信機２０ｂの到達時間と音速とをかけたものを半径として算出し、超音波受信機２０ｂの位置を中心とした球を算出する。また、位置算出部１５０は、超音波受信機２０ｃの到達時間と音速とをかけたものを半径として算出し、超音波受信機２０ｃの位置を中心とした球を算出する。
【００３９】
位置算出部１５０は、超音波受信機２０ａ〜２０ｃを中心とした球を算出した後に、各球の交点の３次元座標を、超音波発信機１０の３次元位置として算出する。位置算出部１５０は、３次元位置の情報と、超音波発信時間に対応する時間とを対応づけて、位置情報テーブル１３２に記録する。
【００４０】
位置情報通知部１６０は、位置情報テーブル１３２の情報を、ＰＣ２００に通知する処理部である。位置情報通知部１６０は、位置情報テーブル１３２が更新される度に、位置情報テーブル１３２の情報をＰＣ２００に通知しても良いし、所定の時間毎に位置情報テーブル１３２の情報をＰＣ２００に通知しても良い。
【００４１】
また、位置情報通知部１６０は、位置情報テーブル１３２に記憶された位置情報を基にして、ベクトル成分を計算し、手の動作を推定する。位置情報通知部１６０は、推定した手の動作をＰＣ２００に通知する。
【００４２】
次に、本実施例１にかかる位置算出装置１００の処理手順について説明する。図５は、本実施例１の位置算出装置の処理手順を示すフローチャートである。例えば、図５に示す処理は、位置算出装置１００がＬＥＤの光を受光したことを契機にして実行される。図５に示すように、位置算出装置１００は、ＬＥＤからの光を受光し（ステップＳ１０１）、超音波発信時間を測定する（ステップＳ１０２）。
【００４３】
位置算出装置１００は、超音波受信機２０ａ〜２０ｃから超音波の受信時間を取得し（ステップＳ１０３）、到達時間を計算する（ステップＳ１０４）。位置算出装置１００は、人体情報１３１から導かれる最大到達時間よりも、到達時間が大きいかを判定する（ステップＳ１０５）。
【００４４】
位置算出装置１００は、到達時間が最大到達時間よりも大きい場合には（ステップＳ１０６，Ｙｅｓ）、再発信要求を超音波発信機１０に送信し（ステップＳ１０７）、ステップＳ１０１に移行する。
【００４５】
一方、位置算出装置１００は、到達時間が最大到達時間以下の場合には（ステップＳ１０６，Ｎｏ）、手の３次元位置を算出する（ステップＳ１０８）。位置算出装置１００は、位置情報を位置情報テーブル１３２に記録し（ステップＳ１０９）、位置情報テーブル１３２の位置情報をＰＣ２００に通知する（ステップＳ１１０）。
【００４６】
次に、本実施例１に係る位置算出装置１００の効果について説明する。位置算出装置１００は、利用者の人体情報１３１を基にして最大到達時間を算出する。また、位置算出装置１００は、超音波受信機２０ａ〜２０ｃの到達時間が、最大到達時間を超えていない場合には、各到達時間に基づいて、利用者の手の位置を算出する。これに対して、位置算出装置１００は、超音波受信機２０ａ〜２０ｃの到達時間のいずれかが、最大到達時間を超えている場合には、再発信要求を超音波発信機１０に発信する。このように、位置算出装置１００は、利用者の人体の特徴を基に、到達時間が適切であるか否かを判定した後に、手の位置を算出するので、手の位置の誤検出を防止することができる。
【００４７】
また、位置算出装置１００は、利用者の人体の特徴から最大到達時間を算出し、各到達時間が最大到達時間を超えているか否かを判定している。このように、利用者の人体の特徴から最大到達時間を算出する手法は、複雑な装置や処理を必要としないので、コストを削減することができる。
【００４８】
また、位置算出装置１００が超音波発信機１０に再発信要求を行うと、超音波発信機１０は、通常の周期よりも短い周期で、超音波を再送する。このため、障害物等の影響により、到達時間を適切に求められなくても、最適な到達時間を迅速に得ることができる。例えば、超音波発信機１０と超音波受信機２０ａ〜２０ｃの間に、超音波を遮る障害物が存在したとしても、利用者１の身体の動きによって障害物による超音波の遮断が一時的に解除される場合がある。そこで、超音波が、通常の周期よりも短い周期で再送されることによって、障害物による超音波の一時的な遮断のタイミングを捉え、最適な到達時間を得ることができる場合がある。
【００４９】
なお、実施例１では、最大到達時間を超える到達時間が一つでも存在する場合には、判定部１４０が、再発信要求を無線通信部１１０に出力していたが、これに限定されるものではない。例えば、最大到達時間を超える到達時間が一つでも存在する場合に、再発信要求を出力する発信制御部を位置算出装置１００に設けてもよい。
【実施例２】
【００５０】
次に、本実施例２にかかる位置算出システムの構成について説明する。図６は、本実施例２にかかる位置算出システムの構成を示す図である。図６に示すように、この位置算出システムは、超音波発信機１０、超音波受信機２０ａ〜２０ｃ、位置算出装置３００を有する。
【００５１】
超音波発信機１０は、超音波を発信する装置である。超音波発信機１０に関するその他の説明は、実施例１に示した超音波発信機１０の説明と同様である。超音波受信機２０ａ〜２０ｃは、超音波発信機１０からの超音波を受信する装置である。超音波受信機２０ａ〜２０ｃに関するその他の説明は、実施例１に示した超音波受信機２０ａ〜２０ｃの説明と同様である。
【００５２】
位置算出装置３００は、超音波発信機１０から発信された超音波が超音波受信機２０ａ〜２０ｃに到着するまでの到達時間に基づいて、超音波発信機１０の位置を順次算出する装置である。本実施例２では、利用者１は手首に超音波発信機１０を装着しているので、位置算出部３００が算出する位置は、利用者１の手の位置を算出することに等しい。
【００５３】
更に、位置算出装置３００は、利用者１の人体の特徴に基づいて、到達時間が適切であるか否かを判定する。具体的に、位置算出装置３００は、超音波発信機１０から超音波受信機２０ａ〜２０ｃに超音波が到達するまでの最大到達時間を算出する。例えば、位置算出装置３００は、利用者１の腕の長さを音速で割った時間を最大到達時間として算出する。
【００５４】
位置算出装置３００は、到達時間が最大到達時間を超える場合には、前回算出した到達時間を利用して、利用者１の手の位置を算出する。利用者１の動作速度は、それほど急激に変化しないという特性に鑑みれば、前回の到達時間を利用しても問題はない。
【００５５】
次に、図６に示した位置算出装置３００の構成について説明する。図７は、本実施例２にかかる位置算出装置の構成を示す図である。図７に示すように、この位置算出装置３００は、無線通信部１１０、ＬＥＤ受光部１２０、位置算出部１５０、位置情報通知部１６０、記憶部３１０、判定部３２０を有する。
【００５６】
このうち、無線通信部１１０、ＬＥＤ受光部１２０、位置算出部１５０、位置情報通知部１６０に関する説明は、図４Ａの無線通信部１１０、ＬＥＤ受光部１２０、位置算出部１５０、位置情報通知部１６０の説明と同様である。
【００５７】
記憶部３１０は、人体情報１３１、位置情報テーブル１３２、到達時間情報３１１を記憶する記憶部である。人体情報１３１および位置情報テーブル１３２の説明は、実施例１の人体情報１３１および位置情報テーブル１３２の説明と同様である。到達時間情報３１１は、判定部３２０が算出する到達時間の履歴を含む情報である。
【００５８】
判定部３２０は、超音波発信時間と、超音波受信機２０ａ〜２０ｃの超音波受信時間とを基にして、超音波発信機１０から超音波受信機２０ａ〜２０ｃまでの超音波の到達時間を求め、到達時間が最大到達時間を超えるか否かを判定する処理部である。
【００５９】
判定部３２０は、最大到達時間を超える到達時間が一つでも存在する場合には、前回算出した到達時間を到達時間情報３１１から取得する。そして、判定部３２０は、前回の到達時間を位置算出部１５０に出力する。これに対して、判定部３２０は、最大到達時間を超える到達時間が存在しない場合には、各到達時間を位置算出部１５０に出力する。
【００６０】
次に、本実施例２にかかる位置算出装置３００の処理手順について説明する。図８は、本実施例２の位置算出装置の処理手順を示すフローチャートである。例えば、図８に示す処理は、位置算出装置３００がＬＥＤの光を受光したことを契機にして実行される。図６に示すように、位置算出装置３００は、ＬＥＤからの光を受光し（ステップＳ２０１）、超音波発信時間を測定する（ステップＳ２０２）。
【００６１】
位置算出装置３００は、超音波受信機２０ａ〜２０ｃから超音波の受信時間を取得し（ステップＳ２０３）、到達時間を計算する（ステップＳ２０４）。位置算出装置３００は、人体情報１３１から導かれる最大到達時間よりも、到達時間が大きいかを判定する（ステップＳ２０５）。
【００６２】
位置算出装置３００は、到達時間が最大到達時間よりも大きい場合には（ステップＳ２０６，Ｙｅｓ）、前回の到達時間を利用して、手の３次元位置を計算し（ステップＳ２０７）、ステップＳ２０９に移行する。
【００６３】
一方、位置算出装置３００は、到達時間が最大到達時間以下の場合には（ステップＳ２０６，Ｎｏ）、到達時間から手の３次元位置を計算する（ステップＳ２０８）。ステップＳ２０８において、位置算出装置３００は、３点測量の要領で、３次元位置を計算する。位置算出装置３００は、超音波受信機２０ａの到達時間と音速とをかけたものを半径として算出し、超音波受信機２０ａの位置を中心とした球を算出する。また、位置算出装置３００は、超音波受信機２０ｂの到達時間と音速とをかけたものを半径として算出し、超音波受信機２０ｂの位置を中心とした球を算出する。また、位置算出装置３００は、超音波受信機２０ｃの到達時間と音速とをかけたものを半径として算出し、超音波受信機２０ｃの位置を中心とした球を算出する。そして、位置算出装置３００は、超音波受信機２０ａ〜２０ｃを中心とした球を算出した後に、各球の交点の３次元座標を、超音波発信機１０の３次元位置として算出する。例えば、各球の交点の座標が「ｘ１、ｙ１、ｚ１」となる場合には、位置算出装置３００は、超音波発信機１０の３次元位置を「ｘ１、ｙ１、ｚ１」とする。
【００６４】
位置算出装置３００は、位置情報を位置情報テーブル１３２に記録し（ステップＳ２０９）、位置情報テーブル１３２の位置情報をＰＣ２００に通知する（ステップＳ２１０）。
【００６５】
次に、本実施例２にかかる位置算出装置３００の効果について説明する。位置算出装置３００は、利用者の人体情報１３１を基にして最大到達時間を計算する。また、位置算出装置３００は、超音波受信機２０ａ〜２０ｃの到達時間が、最大到達時間を超えていない場合には、各到達時間に基づいて、利用者の手の位置を算出する。これに対して、位置算出装置３００は、超音波受信機２０ａ〜２０ｃの到達時間のいずれかが、最大到達時間を超えている場合には、前回の到達時間を利用して、利用者の手の位置を算出する。利用者の動作速度は、それほど急激に変化しないという特性に鑑みれば、前回の到達時間を利用しても手の位置の誤差は僅かであり、問題はない。このため、簡易的な方法により、到達時間を補完することができ、利用者の位置情報を連続的に算出できる。
【実施例３】
【００６６】
次に、本実施例３にかかる位置算出システムの構成について説明する。図９は、本実施例３にかかる位置算出システムの構成を示す図である。図９に示すように、この位置算出システムは、超音波発信機１０、超音波受信機２０ａ〜２０ｃ、位置算出装置４００を有する。
【００６７】
超音波発信機１０は、超音波を発信する装置である。超音波発信機１０に関するその他の説明は、実施例１に示した超音波発信機１０の説明と同様である。超音波受信機２０ａ〜２０ｃは、超音波発信機１０からの超音波を受信する装置である。超音波受信機２０ａ〜２０ｃに関するその他の説明は、実施例１に示した超音波受信機２０ａ〜２０ｃの説明と同様である。
【００６８】
位置算出装置４００は、超音波発信機１０から発信された超音波が超音波受信機２０ａ〜２０ｃに到着するまでの到達時間に基づいて、超音波発信機１０の位置を順次算出する装置である。本実施例３では、利用者１は手首に超音波発信機１０を装着しているので、位置算出部４００が算出する位置は、利用者１の手の位置を算出することに等しい。
【００６９】
更に、位置算出装置４００は、利用者１の人体の特徴に基づいて、到達時間が適切であるか否かを判定する。具体的に、位置算出装置４００は、超音波発信機１０から超音波受信機２０ａ〜２０ｃに超音波が到達するまでの最大到達時間を算出する。例えば、位置算出装置４００は、利用者１の腕の長さを音速で割った時間を最大到達時間として算出する。
【００７０】
位置算出装置４００は、到達時間が最大到達時間を超える場合には、可操作度を評価関数として利用し、利用者の手の位置を推測することで、手の位置を補完する。可操作度は、ロボット技術の分野利用されており、あるロボットの姿勢において、あらゆる方向にどれくらいの速度でアーム等を移動させることができるのかを評価するための尺度である。この可操作度の評価関数を利用することで、利用者の手の動きを予測することができる。
【００７１】
次に、図９に示した位置算出装置４００の構成について説明する。図１０は、本実施例３にかかる位置算出装置の構成を示す図である。図１０に示すように、この位置算出装置４００は、無線通信部１１０、ＬＥＤ受光部１２０、位置情報通知部１６０、記憶部４１０、判定部４２０、位置算出部４３０を有する。
【００７２】
このうち、無線通信部１１０、ＬＥＤ受光部１２０、位置情報通知部１６０に関する説明は、図４Ａの無線通信部１１０、ＬＥＤ受光部１２０、位置情報通知部１６０の説明と同様である。
【００７３】
記憶部４１０は、人体情報１３１、位置情報テーブル１３２、評価関数情報４１１を記憶する記憶部である。人体情報１３１および位置情報テーブル１３２の説明は、実施例１の人体情報１３１および位置情報テーブル１３２の説明と同様である。評価関数情報４１１は、可操作度の評価関数の情報である。
【００７４】
判定部４２０は、超音波発信時間と、超音波受信機２０ａ〜２０ｃの超音波受信時間とを基にして、超音波発信機１０から超音波受信機２０ａ〜２０ｃまでの超音波の到達時間を求め、到達時間が最大到達時間を超えるか否かを判定する処理部である。
【００７５】
判定部４２０は、最大到達時間を超える到達時間が一つでも存在する場合には、評価関数による位置情報の算出依頼を位置算出部４３０に出力する。これに対して、判定部４２０は、最大到達時間を超える到達時間が存在しない場合には、各到達時間を位置算出部４３０に出力する。
【００７６】
位置算出部４３０は、超音波受信機２０ａ〜２０ｃの到達時間を基にして、利用者１の手首に装着された超音波発信機１０の３次元位置を計算する処理部である。例えば、位置算出部４３０は、３点測量の原理に基づいて、超音波発信機１０の位置を算出する。
【００７７】
また、位置算出部４３０は、評価関数による位置情報の算出依頼を受けた場合には、評価関数情報４１１の可操作度の評価関数を利用して、利用者の手の位置を算出する。例えば、可操作度の評価関数は、式（１）で定義される。ここでは、式（１）を用いて位置座標を算出する場合の処理の一例を説明する。
【００７８】
【数１】
0005720269.tif 000002
【００７９】
式（１）において、ｖは、手先速度を示し、Ｊ（ｑ）はヤコビ行列を示し、
【数２】
0005720269.tif 000003
は、関節の角速度を示す。位置算出部４３０は、式（１）によって求められる手先速度と、前回の位置座標を基にして、今回の位置座標を算出する。
【００８０】
例えば、位置算出部４３０は、手先速度ｖに含まれるｘ、ｙ、ｚ方向の速度と、時間間隔とをそれぞれ乗算して、ｘ、ｙ、ｚ方向の変化量を算出する。時間間隔は、前回の位置座標を算出した時間から、今回の位置座標を算出するまでの時間である。位置算出部４３０は、前回のｘ座標、ｙ座標、ｚ座標にそれぞれ変化量を加えることで、今回の位置座標を算出する。例えば、ｘ、ｙ、ｚ方向の変化量をそれぞれａ、ｂ、ｃとし、前回の位置座標をｘ１、ｙ１、ｚ１とする。この場合には、今回の位置座標は（ｘ１＋ａ、ｙ１＋ｂ、ｚ１＋ｃ）となる。位置算出部４３０は、３次元位置の情報と、超音波発信時間とを対応づけて、位置情報テーブル１３２に記録する。
【００８１】
次に、本実施例３にかかる位置算出装置４００の処理手順について説明する。図１１は、本実施例３の処理手順を示すフローチャートである。例えば、図１１に示す処理は、位置算出装置４００がＬＥＤの光を受光したことを契機にして実行される。図１１に示すように、位置算出装置４００は、ＬＥＤからの光を受光し（ステップＳ３０１）、超音波発信時間を測定する（ステップＳ３０２）。
【００８２】
位置算出装置４００は、超音波受信機２０ａ〜２０ｃから超音波の受信時間を取得し（ステップＳ３０３）、到達時間を計算する（ステップＳ３０４）。位置算出装置４００は、人体情報１３１から導かれる最大到達時間よりも、到達時間が大きいかを判定する（ステップＳ３０５）。
【００８３】
位置算出装置４００は、到達時間が最大到達時間よりも大きい場合には（ステップＳ３０６，Ｙｅｓ）、評価関数を利用して、位置情報を計算し（ステップＳ３０７）、ステップＳ３０９に移行する。
【００８４】
一方、位置算出装置４００は、到達時間が最大到達時間以下の場合には（ステップＳ３０６，Ｎｏ）、到達時間から手の３次元位置を計算する（ステップＳ３０８）。位置算出装置４００は、位置情報を位置情報テーブル１３２に記録し（ステップＳ３０９）、位置情報テーブル１３２の位置情報をＰＣ２００に通知する（ステップＳ３１０）。
【００８５】
次に、本実施例３にかかる位置算出装置４００の効果について説明する。位置算出装置４００は、利用者の人体情報１３１を基にして最大到達時間を計算する。また、位置算出装置４００は、超音波受信機２０ａ〜２０ｃの到達時間が、最大到達時間を超えていない場合には、各到達時間に基づいて、利用者の手の位置を算出する。これに対して、位置算出装置４００は、超音波受信機２０ａ〜２０ｃの到達時間のいずれかが、最大到達時間を超えている場合には、評価関数を利用して、利用者の手の位置を算出する。利用者は、手をランダムに動かしているつもりであっても、手の動きは利用者固有の規則性がある。このため、評価関数を利用することで、到達時間を正確に求められなくても、手の位置を補完することができる。
【実施例４】
【００８６】
次に、本実施例４にかかる位置算出システムの構成について説明する。図１２は、本実施例４にかかる位置算出システムの構成を示す図である。図１２に示すように、この位置検出システムは、接触センサ５、超音波発信機５００、超音波受信機２０ａ〜２０ｃ、位置算出装置１００を有する。
【００８７】
接触センサ５は、例えば、利用者１の指先に装着される。利用者１が物体４をつかむと接触センサ５が物体４に触れ、接触センサ５は、接触を知らせる信号を超音波発信機５００に通知する。
【００８８】
超音波発信機５００は、接触センサ５から信号を受けたことを契機にして、超音波を発信する装置である。
【００８９】
超音波受信機２０ａ〜２０ｃは、超音波発信機５００からの超音波を受信する装置である。超音波受信機２０ａ〜２０ｃに関するその他の説明は、実施例１に示した超音波受信機２０ａ〜２０ｃの説明と同様である。
【００９０】
位置算出装置１００は、超音波発信機５００から発信された超音波が超音波受信機２０ａ〜２０ｃに到着するまでの到達時間に基づいて、超音波発信機５００の位置を順次算出する装置である。位置算出装置１００に関するその他の説明は、実施例１に示した位置算出装置１００の説明と同様である。
【００９１】
次に、図１２に示した超音波発信機５００の構成について説明する。図１３は、本実施例４にかかる超音波発信機の構成を示す図である。図１３に示すように、超音波発信機５００は、超音波発信部１１、ＬＥＤ発光部１２、無線通信部１３、超音波発信制御部５１０を有する。また、超音波発信機５００は、接触センサ５に接続される。
【００９２】
超音波発信部１１、ＬＥＤ発光部１２、無線通信部１３に関する説明は、実施例１に示した超音波発信部１１、ＬＥＤ発光部１２、無線通信部１３に関する説明と同様である。
【００９３】
超音波発信制御部５１０は、接触センサ５から信号を受けた場合に、超音波の発信命令を超音波発信部１１に出力し、ＬＥＤの発光命令をＬＥＤ発光部１２に出力する。超音波発信制御部５１０が超音波の発信命令を出力するタイミング、およびＬＥＤの発光命令を出力するタイミングは、同じタイミングとする。
【００９４】
また、超音波発信制御部５１０は、位置算出装置１００からの再発信要求を受信した場合には、再発信命令を超音波発信部１１に出力し、発光命令をＬＥＤ発光部１２に出力する。超音波発信制御部５１０が、再発信命令を出力するタイミング、および発光命令を出力するタイミングは、同じタイミングとする。
【００９５】
次に、本実施例４にかかる位置算出システムの効果について説明する。本実施例４にかかる位置算出システムは、利用者１が自発的にスイッチなどを操作しなくても、手の位置の算出処理を開始することができる。また、接触センサ５を用いることで、処理開始時の意味づけが可能となる。
【００９６】
なお、本実施例４では、接触センサ５を例に説明したがこれに限られるものではない。例えば、接触センサの代わりに、加速度センサ、圧力センサ、ＲＦＩＤ（Radio  Frequency  Identification）等を利用して、利用者の行動開始点を特定し、処理を開始してもよい。
【００９７】
上記実施例１〜４では、超音波発信機１０を手先に装着し、手先が体の前面にあることを想定して説明を行ったが、手先が体の後に移動することも考えられる。このような場合には、利用者１の前面に超音波受信機２０ａ〜２０ｃを装着させ、利用者１の背面に超音波受信機２０ｄ〜２０ｆを装着させる。超音波受信機２０ｄ〜２０ｆは、超音波受信機２０ａ〜２０ｃと同様にして、超音波発信機１０からの超音波受信し、超音波を受信した受信時間を位置算出装置に通知する。手先の位置が前面にある場合には、超音波受信機２０ａ〜２０ｃが、超音波の受信時間を位置算出装置に通知し、手先の位置が背面にある場合には、超音波受信機２０ｄ〜２０ｆが、超音波の受信時間を位置算出装置に通知する。このようにすることで、位置算出装置は、手先の位置によらず、超音波発信機１０の位置を算出することができる。
【００９８】
また、上記実施例１〜４では、超音波発信機１０が利用者１の手先に装着されている場合を例にして説明したが、超音波発信機１０を利用者１の足先に装着しても良い。利用者１の足先に超音波発信機１０を取り付けた場合には、判定部１４０は、人体情報１３１から、利用者の足の長さの情報を取得し、足の長さを超音波の音速で割り算することで、最大到達時間を算出する。判定部１４０が、腕の長さを利用して、最大到達時間を算出するのか、足の長さを利用して、最大到達時間を算出するのかは、予め設定されているものとする。
【００９９】
また、上記実施例１〜４では、超音波発信機１０、超音波受信機２０ａ〜２０ｆを利用者に装着する例を示したがこれに限定されるものではない。例えば、ロボットの腕または足に超音波発信機１０を装着し、ロボットの胴体部に超音波受信機２０ａ〜２０ｆを装着し、ロボットの腕の位置、足の位置を算出しても良い。
【０１００】
ところで、位置算出装置１００の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、位置算出装置１００の分散、統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、位置算出装置１００は、有線によって、超音波発信機１０と通信を行ってもよい。位置算出装置３００、４００も同様である。
【０１０１】
また、位置算出装置１００は、既知の移動体通信端末またはＰＤＡなどの情報処理装置に、位置算出装置１００の各機能を搭載することによって実現することもできる。位置算出装置３００、４００も同様である。
【０１０２】
図１４は、実施例にかかる位置算出装置を構成するコンピュータのハードウェア構成を示す図である。図１４に示すように、このコンピュータ６００は、各種演算処理を実行するＣＰＵ（Central  Processing  Unit）６０１と、ユーザからのデータの入力を受け付ける入力装置６０２と、ディスプレイ６０３とを有する。また、コンピュータ６００は、記憶媒体からプログラム等を読み取る読み取り装置６０４と、超音波受信機やＬＥＤ受信装置と接続するインターフェース装置６０５と、超音波発信機と無線通信を行う無線通信装置６０６とを有する。また、コンピュータ６００は、各種情報を一時記憶するＲＡＭ（Random  Access  Memory）６０７と、フラッシュメモリ等の記憶装置６０８とを有する。各装置６０１〜６０８は、バス６０９に接続される。
【０１０３】
記憶装置６０８は、判定プログラム６０８ａ、位置算出プログラム６０８ｂを記憶する。
【０１０４】
ＣＰＵ６０１は、記憶装置６０８に記憶された各プログラム６０８ａ、６０８ｄを読み出して、ＲＡＭ６０７に展開する。これにより、判定プログラム６０８ａは、判定プロセス６０７ａとして機能する。位置算出プログラム６０８ｂは、位置算出プロセス６０７ｂとして機能する。
【０１０５】
判定プロセス６０７ａは、図４Ａの判定部１４０に対応する。位置算出プロセス６０７ｂは、図４Ａの位置算出部１５０に対応する。各プロセス６０７ａ、６０７ｂにより、ＣＰＵ６０１は、手の位置情報を算出する。
【０１０６】
なお、上記のプログラム６０８ａ、６０８ｂは、必ずしも記憶装置６０８に格納されている必要はない。例えば、ＣＤ−ＲＯＭ等の記憶媒体に記憶されたプログラム６０８ａ、６０８ｂを、コンピュータ６００が読み出して実行するようにしてもよい。また、公衆回線、インターネット、ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）等に接続された記憶装置に、各プログラム６０８ａ、６０８ｂを記憶させておいてもよい。この場合、コンピュータ６００がこれらから各プログラム６０８ａ、６０８ｂを読み出して実行するようにしてもよい。
【０１０７】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１０８】
（付記１）可動部に取り付けられた音波を発信する音波発信機と、前記可動部に接続される本体部に取り付けられ、前記音波発信機から音波を受信する複数の音波受信機とに接続される位置算出装置であって、
前記複数の音波受信機から音波の受信時間を取得して、前記音波発信機から音波が発信された時間から前記音波受信機に音波が到達するまでの到達時間を音波受信機毎に特定し、特定した複数の到達時間と、前記可動部の可動域から導かれる音波の基準到達時間とを基にして、到達時間を利用して前記発信機の位置を算出するか否かを判定する判定部と、
前記判定部の判定結果に応じて、前記複数の到達時間に基づき前記発信機の位置を算出する位置算出部と
を有することを特徴とする位置算出装置。
【０１０９】
（付記２）前記判定部によって、前記到達時間が、前記基準到達時間を超えていると判定された場合に、前記音波発信機に音波を再発信させる発信制御部を更に有することを特徴とする付記１に記載の位置算出装置。
【０１１０】
（付記３）前記発信制御部は、前記音波発信機に音波を再発信させる場合に、基準の間隔よりも短い間隔で音波を発信させることを特徴とする付記２に記載の位置算出装置。
【０１１１】
（付記４）前記位置算出部は、前記音波受信機から前回取得した到達時間を利用して、前記音波発信機の位置を算出することを特徴とする付記１に記載の位置算出装置。
【０１１２】
（付記５）前記位置算出部は、前記判定部によって前記音波受信機から取得した到達時間が、前記基準到達時間を超えていると判定された場合に、前記音波発信機の過去の位置情報と、評価関数とを利用して、前記音波発信機の位置を算出することを特徴とする付記１に記載の位置算出装置。
【０１１３】
（付記６）可動部に取り付けられた音波を発信する音波発信機と、前記可動部に接続される本体部に取り付けられ、前記音波発信機から音波を受信する複数の音波受信機と接続されるコンピュータの位置算出方法であって、
前記複数の音波受信機から音波の受信時間を取得して、前記音波発信機から音波が発信された時間から前記音波受信機に音波が到達するまでの到達時間を音波受信機毎に特定し、特定した複数の到達時間と、前記可動部の可動域から導かれる音波の基準到達時間とを基にして、到達時間を利用して前記発信機の位置を算出するか否かを判定し、
判定結果に応じて、前記複数の到達時間に基づき前記発信機の位置を算出することを特徴とする位置算出方法。
【０１１４】
（付記７）前記到達時間が前記基準到達時間を超えていると判定した場合に、前記音波発信機に音波を再発信させることを特徴とする付記６に記載の位置算出方法。
【０１１５】
（付記８）前記音波発信機に音波を再発信させる場合に、基準の間隔よりも短い間隔で音波を発信させることを特徴とする付記７に記載の位置算出方法。
【０１１６】
（付記９）前記到達時間が前記基準到達時間を超えていると判定した場合に、前記音波受信機から前回取得した到達時間を利用して、前記音波発信機の位置を算出することを特徴とする付記６に記載の位置算出方法。
【０１１７】
（付記１０）前記音波受信機から取得した到達時間が、前記基準到達時間を超えていると判定された場合に、前記音波発信機の過去の位置情報と、評価関数とを利用して、前記音波発信機の位置を算出することを特徴とする付記６に記載の位置算出方法。
【０１１８】
（付記１１）可動部に取り付けられた音波を発信する音波発信機と、前記可動部に接続される本体部に取り付けられ、前記音波発信機から音波を受信する複数の音波受信機とに接続されるコンピュータに、
前記複数の音波受信機から音波の受信時間を取得して、前記音波発信機から音波が発信された時間から前記音波受信機に音波が到達するまでの到達時間を音波受信機毎に特定し、特定した複数の到達時間と、前記可動部の可動域から導かれる音波の基準到達時間とを基にして、到達時間を利用して前記発信機の位置を算出するか否かを判定し、
判定結果に応じて、前記複数の到達時間に基づき前記発信機の位置を算出する処理を実行させる位置算出プログラム。
【０１１９】
（付記１２）前記到達時間が前記基準到達時間を超えていると判定した場合に、前記音波発信機に音波を再発信させることを特徴とする付記１１に記載の位置算出プログラム。
【０１２０】
（付記１３）前記音波発信機に音波を再発信させる場合に、基準の間隔よりも短い間隔で音波を発信させることを特徴とする付記１２に記載の位置算出プログラム。
【０１２１】
（付記１４）前記到達時間が前記基準到達時間を超えていると判定した場合に、前記音波受信機から前回取得した到達時間を利用して、前記音波発信機の位置を算出することを特徴とする付記１１に記載の位置算出プログラム。
【０１２２】
（付記１５）前記音波受信機から取得した到達時間が、前記基準到達時間を超えていると判定された場合に、前記音波発信機の過去の位置情報と、評価関数とを利用して、前記音波発信機の位置を算出することを特徴とする付記１１に記載の位置算出プログラム。
【符号の説明】
【０１２３】
１０    超音波発信機
２０ａ、２０ｂ、２０ｃ  超音波受信機
１００    位置算出装置
【図１】
0005720269.tif 000004
【図２】
0005720269.tif 000005
【図３】
0005720269.tif 000006
【図４Ａ】
0005720269.tif 000007
【図４Ｂ】
0005720269.tif 000008
【図４Ｃ】
0005720269.tif 000009
【図５】
0005720269.tif 000010
【図６】
0005720269.tif 000011
【図７】
0005720269.tif 000012
【図８】
0005720269.tif 000013
【図９】
0005720269.tif 000014
【図１０】
0005720269.tif 000015
【図１１】
0005720269.tif 000016
【図１２】
0005720269.tif 000017
【図１３】
0005720269.tif 000018
【図１４】
0005720269.tif 000019