(57)【要約】【課題】  利用者が登録して利用することが可能なプラットフォームに依存しないアプリケーションプログラムで、位置、向き、姿勢、動きを検知するための検知手段によって得られる検知結果データを利用することを可能とする。【解決手段】  アプリケーションプログラムを携帯電話機にダウンロードして、これを実行する場合、まず、そのアプリケーション実行環境を起動し、その環境下においてアプリケーションプログラムを動作させる。起動したアプリケーションプログラムは、加速度データの取得要求を送り、これを電話機プラットフォームが受け付けると、携帯電話機に設けられた加速度センサによって検知した加速度データをアプリケーションプログラムに受け渡す。これにより、アプリケーションプログラムでは、加速度データを利用した処理を行うことができる。【選択図】  図１
2008167453.tif 000002
【特許請求の範囲】
【請求項１】
データを記憶する第１の記憶手段及び第２の記憶手段と、
該第２の記憶手段に記憶されたデータを用いて、アプリケーションプログラムを実行するアプリケーションプログラム実行手段とを備えた移動体通信端末において、
当該移動体通信端末の位置、向き、姿勢及び動きのうちの少なくとも１つを検知するための検知手段と、
該検知手段による検知結果に基づいて得られる検知結果データを、上記第１の記憶手段に記憶する記憶処理を行う記憶処理手段と、
上記アプリケーションプログラム実行手段からのデータ移行命令に応じ、該第１の記憶手段に記憶された検知結果データを上記第２の記憶手段に移行するデータ移行手段とを有し、
上記アプリケーションプログラム実行手段は、該第２の記憶手段に記憶された検知結果データを用いて、上記アプリケーションプログラムを実行することを特徴とする移動体通信端末。
【請求項２】
請求項１の移動体通信端末において、
上記検知手段は、所定方向に延びる仮想軸のまわりの基準角に対する角度を検知するための角度検知手段を含むことを特徴とする移動体通信端末。
【請求項３】
請求項１又は２の移動体通信端末において、
上記検知手段は、当該移動体通信端末に働く所定方向の加速度を検知するための加速度検知手段を含むことを特徴とする移動体通信端末。
【請求項４】
請求項１、２又は３の移動体通信端末において、
上記アプリケーションプログラム実行手段は、上記アプリケーションプログラムの記述に従って上記データ移行命令を発生させる命令セットを実装していることを特徴とする移動体通信端末。
【請求項５】
請求項４の移動体通信端末が有するアプリケーションプログラム実行手段により実行されることにより、上記命令セットを用いて該アプリケーションプログラム実行手段に上記データ移行命令を発生させるように、該移動体通信端末のコンピュータを機能させることを特徴とするアプリケーションプログラム。
【請求項６】
データを記憶する記憶手段に記憶されたデータを用いて、アプリケーションプログラムを実行するアプリケーションプログラム実行手段とを備えた移動体通信端末において、
上記アプリケーションプログラムの記述に従って上記アプリケーションプログラム実行手段が生成する検知命令に応じて、当該移動体通信端末の位置、向き、姿勢及び動きのうちの少なくとも１つを検知するための検知手段として、３軸の磁気センサ及び２軸の加速度センサを用い、
該検知手段による検知結果に基づいて得られる検知結果データを、上記記憶手段に記憶する記憶処理手段を有し、
該アプリケーションプログラム実行手段は、該記憶手段に記憶された検知結果データを用いて、上記アプリケーションプログラムを実行することを特徴とする移動体通信端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションプログラムを実行可能な携帯電話機等の移動体通信端末及びそのアプリケーションプログラムに関するものである。
【背景技術】
【０００２】
従来、この種の移動体通信端末としては、プラットフォームに依存しないオブジェクト指向のプログラミング言語で記述されたアプリケーションプログラムを実行可能な携帯電話機が知られている。例えば、ＪＡＶＡ（サンマイクロシステムズ社の登録商標。以下同様。）仮想マシン機能を実装し、ＪＡＶＡで記述されたアプリケーションプログラムを実行できるようにした携帯電話機が知られている（特許文献１参照）。このような携帯電話機では、所定のサーバからダウンロードするなどして取得した様々なアプリケーションプログラムを利用することが可能である。また、ＢＲＥＷ（クアルコム社の登録商標。以下同様。）のアプリケーション実行環境上で動作するアプリケーションプログラムなどについても、同様である。
【０００３】
また、特許文献２には、加速度又は角速度を検知するセンサ（検知手段）を備えた携帯電話機が開示されている。この携帯電話機は、センサによって検知した加速度又は角速度に関するデータを表示手段に表示することができる。
また、特許文献３には、加速度を検知するセンサ（検知手段）を備えた携帯電話機が開示されている。この携帯電話機は、センサによって検知した加速度を用いて、その移動軌跡を求め、その移動軌跡を入力文字として認識することができる。
また、特許文献４には、方位を検知する地磁気センサ（検知手段）を備えた携帯電話機が開示されている。この携帯電話機は、複数の方位に数値が関連付けられていて、携帯電話機本体を特定の方位に向けることで、数値入力を行うことができる。
【０００４】
【特許文献１】特開２０００−３４７８６７号公報
【特許文献２】特開２００１−２７２４１３号公報
【特許文献３】特開２００２−１６９６４５号公報
【特許文献４】特開２００３−１１１１４２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述した特許文献２、３及び４に記載された携帯電話機は、そのセンサの検知結果に基づいて、携帯電話機の位置、向き、姿勢あるいは動きを検知することができる。このような各種センサは、これらの特許文献には具体的な記載はないが、電話機プラットフォームによって制御されるものである。また、各種センサによって検知された加速度等のデータの保存場所についても、これらの特許文献には具体的な記載はないが、その保存場所は、通常、その電話機プラットフォームが管理するプラットフォーム用記憶領域（第１の記憶手段）である。そのため、従来の携帯電話機において、上記プラットフォーム用記憶領域に記憶された加速度等のデータ（検知結果データ）を利用するプログラムは、その記憶領域を管理する電話機プラットフォーム上で直接動作するものでなければならない。したがって、上記特許文献２、３及び４には明記されていないが、これらの特許文献に開示の携帯電話機において、その検知結果データを用いて行う各種処理は、電話機プラットフォーム上で直接動作するプログラムによって実現される。このようなプログラムは、電話機プラットフォームに依存するものであるため、通常は、予め携帯電話機に登録して、利用者に提供される。そのため、検知結果データを用いるプログラムが新たに開発されても、利用者は、そのプログラムを自分の携帯電話機に登録することができず、これを利用することはできなかった。
【０００６】
一方、上述したＪＡＶＡで記述されたアプリケーションプログラムは、これを実行するためのアプリケーション実行環境（ＪＡＶＡ仮想マシン等）上で動作するため、電話機プラットフォームに依存しない。よって、上述したように、所定のサーバからダウンロードするなどして自分の携帯電話機に登録して利用することが可能である。しかし、このようなアプリケーションプログラムは、上記アプリケーション実行環境上で管理されるアプリケーション用記憶領域（第２の記憶手段）に記憶されたデータしか利用することができない。すなわち、電話機プラットフォームが管理するプラットフォーム用記憶領域に記憶されたデータは、直接利用することはできない。しかも、従来の携帯電話機には、各種センサによって検知した加速度等の検知結果データを、プラットフォーム用記憶領域からアプリケーション用記憶領域へ移行するための手段がない。したがって、ＪＡＶＡで記述されたアプリケーションプログラムのようにプラットフォームに依存しないアプリケーションプログラムにおいて、検知結果データを用いた処理を行うことができなかった。これは、ＢＲＥＷのアプリケーション実行環境上で動作するアプリケーションプログラムなどについても、同様である。
【０００７】
なお、以上の説明は、携帯電話機を例に挙げて行ったが、他の移動体通信端末においても、同様である。
【０００８】
本発明は、上述した背景に鑑みなされたものであり、その目的とするところは、利用者が登録して利用することが可能なプラットフォームに依存しないアプリケーションプログラムで、位置、向き、姿勢、動きを検知するための検知手段によって得られる検知結果データを利用することが可能な移動体通信端末及びアプリケーションプログラムを提供することである。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、請求項１の発明は、データを記憶する第１の記憶手段及び第２の記憶手段と、該第２の記憶手段に記憶されたデータを用いて、アプリケーションプログラムを実行するアプリケーションプログラム実行手段とを備えた移動体通信端末において、当該移動体通信端末の位置、向き、姿勢及び動きのうちの少なくとも１つを検知するための検知手段と、該検知手段による検知結果に基づいて得られる検知結果データを、上記第１の記憶手段に記憶する記憶処理を行う記憶処理手段と、上記アプリケーションプログラム実行手段からのデータ移行命令に応じ、該第１の記憶手段に記憶された検知結果データを上記第２の記憶手段に移行するデータ移行手段とを有し、上記アプリケーションプログラム実行手段は、該第２の記憶手段に記憶された検知結果データを用いて、上記アプリケーションプログラムを実行することを特徴とするものである。
この移動体通信端末においては、検知手段によって得られる検知結果データが記憶される第１の記憶手段と、アプリケーションプログラム実行手段が利用可能なデータが記憶される第２の記憶手段とを備えている。このような第２の記憶手段を有することで、アプリケーションプログラム実行手段は、プラットフォームに依存しないアプリケーションプログラムを実行することが可能となる。このようなアプリケーションプログラムは、プラットフォームに依存するアプリケーションプログラムとは異なり、利用者が登録して利用することが可能である。そして、このアプリケーションプログラム実行手段からのデータ移行命令があると、その命令に応じて、第１の記憶手段に記憶された検知結果データが第２の記憶手段に移行される。よって、アプリケーションプログラム実行手段は、検知手段によって得られる検知結果データを用いた処理を行うアプリケーションプログラムを実行することが可能となる。
【００１０】
また、請求項２の発明は、請求項１の移動体通信端末において、上記検知手段は、所定方向に延びる仮想軸のまわりの基準角に対する角度を検知するための角度検知手段を含むことを特徴とするものである。
この移動体通信端末においては、当該移動体通信端末の姿勢を特定することができる。
【００１１】
また、請求項３の発明は、請求項１又は２の移動体通信端末において、上記検知手段は、当該移動体通信端末に働く所定方向の加速度を検知するための加速度検知手段を含むことを特徴とするものである。
この移動体通信端末においては、当該移動体通信端末の位置や動きを特定することが可能となる。
【００１２】
また、請求項４の発明は、請求項１、２又は３の移動体通信端末において、上記アプリケーションプログラム実行手段は、上記アプリケーションプログラムの記述に従って上記データ移行命令を発生させる命令セットを実装していることを特徴とするものである。
アプリケーションプログラム実行手段がアプリケーションプログラムの実行中に検知結果データを利用するためには、第１の記憶手段内の検知結果データを第２の記憶手段へ移行させるべく、データ移行命令を発する必要がある。本移動体通信端末においては、このデータ移行命令を発生させるための命令セットが、アプリケーションプログラム実行手段に予め実装されている。よって、アプリケーションプログラム中に、その命令セットを用いる旨の記述を入れておくだけで、そのアプリケーションプログラムを実行するアプリケーションプログラム実行手段に、検知結果データを利用させることができる。
【００１３】
また、請求項５の発明に係るアプリケーションプログラムは、請求項４の移動体通信端末が有するアプリケーションプログラム実行手段により実行されることにより、上記命令セットを用いて該アプリケーションプログラム実行手段に上記データ移行命令を発生させるように、該移動体通信端末のコンピュータを機能させることを特徴とするものである。
このアプリケーションプログラムは、アプリケーションプログラム実行手段に予め実装されている命令セットを用いて、検知手段によって得られる検知結果データを利用した処理を行うことができる。なお、本アプリケーションプログラムの受け渡しは、デジタル情報としてプログラムを記録したＦＤ、ＣＤ−ＲＯＭ等の記録媒体を用いて行なってもいいし、移動体通信ネットワーク等の通信回線を用いて行ってもよい。
【００１４】
また、請求項６の発明は、データを記憶する記憶手段に記憶されたデータを用いて、アプリケーションプログラムを実行するアプリケーションプログラム実行手段とを備えた移動体通信端末において、上記アプリケーションプログラムの記述に従って上記アプリケーションプログラム実行手段が生成する検知命令に応じて、当該移動体通信端末の位置、向き、姿勢及び動きのうちの少なくとも１つを検知するための検知手段として、３軸の磁気センサ及び２軸の加速度センサを用い、該検知手段による検知結果に基づいて得られる検知結果データを、上記記憶手段に記憶する記憶処理手段を有し、該アプリケーションプログラム実行手段は、該記憶手段に記憶された検知結果データを用いて、上記アプリケーションプログラムを実行することを特徴とするものである。
この移動体通信端末において、アプリケーションプログラムが利用する検知結果データは、３軸の磁気センサ及び２軸の加速度センサの検知結果に基づいて得られるものである。３軸の磁気センサを用いれば、これにより地磁気を検知することで、簡単な構成で、各軸まわりの基準角に対する角度を特定することができ、当該移動体通信端末の姿勢を特定することができる。また、３軸の磁気センサを用いて地磁気を検知すれば、当該移動体通信端末の向き、すなわち、当該移動体通信端末上の特定方向が向いている方位を特定することができる。更に、本移動体通信端末は、２軸の加速度センサによって加速度も検知できるので、当該移動体通信端末の位置や動きも特定することが可能となる。例えば、２軸の加速度センサによって得られる加速度を時間で積分すれば、当該移動体通信端末の速度（動き）を特定することができる。また、例えば、上記３軸の磁気センサの検知結果と組み合わせることで、２軸の加速度センサによって得られる加速度から、検知開始地点に対する現在位置を特定することが可能となる。このように、本移動体通信端末によれば、簡単な構成で、当該移動体通信端末の位置、向き、姿勢及び動きのすべてを特定することが可能となる。なお、本移動体通信端末のアプリケーションプログラム実行手段が実行するアプリケーションプログラムは、プラットフォームに依存しないアプリケーションプログラムだけでなく、プラットフォームに依存するアプリケーションプログラムも含まれる。
【００１５】
なお、上記「移動体通信端末」としては、ＰＤＣ（Personal Digital Cellular）方式、ＧＳＭ（Global System for Mobile Communication）方式、ＴＩＡ（Telecommunications Industry Association）方式等の携帯電話機、ＩＭＴ（International Mobile Telecommunications）−２０００で標準化された携帯電話機、ＰＨＳ（Personal Handyphone Service）、自動車電話機等の電話機のうち、プラットフォームに依存しないアプリケーションプログラムを実行可能なものが挙げられる。また、この「移動体通信端末」としては、上記電話機のほか、電話機能を有しないＰＤＡ（Personal Digital Assistance）等の移動型の移動体通信端末も挙げられる。
【発明の効果】
【００１６】
請求項１乃至５の発明によれば、位置、姿勢、動きを検知するための検知手段によって得られる検知結果データを、利用者が登録して利用することが可能なプラットフォームに依存しないアプリケーションプログラムで利用することが可能となるという優れた効果がある。
特に、請求項２の発明によれば、当該移動体通信端末の姿勢を利用した様々なアプリケーションプログラムを実行することが可能となるという優れた効果がある。
また、請求項３の発明によれば、当該移動体通信端末の位置や動きを利用した様々なアプリケーションプログラムを実行することが可能となるという優れた効果がある。
また、請求項４及び５の発明によれば、アプリケーションプログラムのプログラミングが容易になるという優れた効果がある。
また、請求項６の発明によれば、移動体通信端末の位置、向き、姿勢及び動きの一部又は全部を利用する多種多様なアプリケーションプログラムを実行することが可能となるので、利用者へ提供できるアプリケーションプログラムの種類を増やすことが可能となるという優れた効果がある。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の一実施形態を、図面を参照しながら説明する。
図２は、本実施形態に係る移動体通信端末としての携帯電話機が利用可能な移動体通信システムの全体構成を説明するための説明図である。
この移動体通信システムにおいて、ユーザー１が使用する携帯電話機２０は、ユーザー１によって登録されたアプリケーションプログラムを実行可能な構成を有している。本実施形態において、このアプリケーションプログラムは、プラットフォームに依存しないオブジェクト指向プログラミングによって開発されたものである。このようなアプリケーションプログラムとしては、ＪＡＶＡで記述されたアプリケーションプログラム、ＢＲＥＷのアプリケーション実行環境上で動作するアプリケーションプログラムなどが挙げられる。この携帯電話機２０は、通信ネットワークとしての携帯電話通信網１０に接続可能である。また、この携帯電話通信網１０には、プログラム提供用サーバとしてのアプリケーションプログラムダウンロードサーバ（以下、「ダウンロードサーバ」という。）１１が接続されている。このダウンロードサーバ１１は、携帯電話機２０からのダウンロード要求を受け付けると、その要求に係るアプリケーションプログラムを携帯電話機２０に対して送信する。
【００１８】
ダウンロードサーバ１１から提供されるアプリケーションプログラムは、アプリケーションプログラムの開発元２から提供される。具体的には、例えば、アプリケーションプログラム開発元２側のパーソナルコンピュータ等から、専用回線や公衆回線を介してダウンロードサーバ１１にアップロードして提供する。なお、開発したアプリケーションプログラムを記録した光ディスクや磁気ディスク等の記録媒体を、アプリケーションプログラム開発元２からダウンロードサーバ１１を管理・運営する通信事業者に送り、その記録媒体内のアプリケーションプログラムをダウンロードサーバ１１で読み取るようにして、提供してもよい。このようにして提供されたアプリケーションプログラムは、携帯電話機２０から携帯電話通信網１０を介してダウンロード可能な状態でダウンロードサーバ１１に登録される。
【００１９】
図３は、上記ダウンロードサーバ１１のハードウェア構成を示す概略構成図である。
このダウンロードサーバ１１は、システムバス１００、ＣＰＵ１０１、内部記憶装置、外部記憶装置１０４、入力装置１０５及び出力装置１０６を備えている。上記内部記憶装置は、ＲＡＭ１０２やＲＯＭ１０３等で構成されている。上記外部記憶装置は、ハードディスクドライブ（ＨＤＤ）や光ディスクドライブ等で構成されている。上記入力装置１０５は、外部記憶装置１０４、マウスやキーボード等で構成されている。上記出力装置１０６は、ディスプレイやプリンタ等で構成されている。更に、このダウンロードサーバ１１は、携帯電話通信網１０を介して各ユーザー１の携帯電話機２０と通信するための携帯電話用通信装置１０７を備えている。
上記ＣＰＵ１０１やＲＡＭ１０２等の構成要素は、システムバス１００を介して、互いにデータやプログラムの命令等のやり取りを行っている。このダウンロードサーバ１１を所定の手順に従って動作させるためのプログラムは、ＲＯＭ１０３や外部記憶装置１０４に記憶されており、必要に応じてＣＰＵ１０１やＲＡＭ１０２上の作業エリアに呼び出されて実行される。また、このダウンロードサーバ１１には、携帯電話機２０に提供するアプリケーションプログラムが外部記憶装置１０４に記憶されている。ダウンロードサーバ１１は、携帯電話機２０からのダウンロード要求に応じ、ＣＰＵ１０１、ＲＡＭ１０２、携帯電話通信網用通信装置１０７等が協働して、外部記憶装置１０４に記憶されているアプリケーションプログラムを、携帯電話通信網１０を介して携帯電話機２０に送信する機能を有している。なお、このダウンロードサーバ１１は、専用の制御装置として構成してもいいし、汎用のコンピュータシステムを用いて構成してもよい。また、１台のコンピュータで構成してもいいし、複数の機能をそれぞれ受け持つ複数台のコンピュータをネットワークで結んで構成してもよい。
【００２０】
図４は、上記携帯電話機２０の外観を示す正面図であり、図５は、その携帯電話機２０のハードウェア構成を示す概略構成図である。
この携帯電話機２０は、クラムシェル（折り畳み）タイプの携帯電話機であり、システムバス２００、ＣＰＵ２０１、ＲＡＭ２０２やＲＯＭ２０３等からなる内部制御装置、入力装置２０４、出力装置２０５、携帯電話用通信装置２０６、加速度センサ２０７及び地磁気センサ２０８を備えている。ＣＰＵ２０１やＲＡＭ２０２等の構成要素は、システムバス２００を介して、互いに各種データや後述のプログラムの命令等のやり取りを行っている。上記入力装置２０４は、データ入力キー（テンキー、＊キー、＃キー）２１、通話開始キー２２、終話キー２３、スクロールキー２４、多機能キー２５、マイク２６等から構成されている。上記出力装置２０５は、液晶ディスプレイ（ＬＣＤ）２７、スピーカ２８等から構成されている。上記携帯電話用通信装置２０６は、携帯電話通信網１０を介して他の携帯電話機や上記ダウンロードサーバ１１と通信するためのものである。また、ＲＡＭ２０２内には、後述する電話機プラットフォームが管理する第１の記憶手段としてのプラットフォーム用記憶領域と、後述するアプリケーション実行環境上で管理される第２の記憶手段としてのアプリケーション用記憶領域とが存在する。
【００２１】
上記加速度センサ２０７は、ＬＣＤ２７の画像表示面に対して平行な面内で互いに直交する２方向（図４中、Ｘ軸方向及びＹ軸方向）に向かう加速度αｘ，αＹを検出するための２軸のセンサである。この加速度センサ２０７は、携帯電話機２０の内部に設けられた図示しない回路基板上に実装されており、上記加速度αｘ，αＹを検出できる公知のものを用いることができる。
また、上記地磁気センサ２０８は、上記Ｘ軸及び上記Ｙ軸並びにこれらの軸に直交するＺ軸からなる３次元座標上における地磁気の方向を検知する３軸のセンサである。そして、本実施形態では、この地磁気センサ２０８の検知結果を利用して、Ｘ軸、Ｙ軸及びＺ軸のまわりの角度θｘ，θＹ，θＺを検出する。具体的には、地磁気の方向が、基準となる地磁気の方向（基準方向）に対して変化したときの変化量を、Ｘ軸、Ｙ軸及びＺ軸のまわりの角度θｘ，θＹ，θＺを用いて検出する。これにより、地磁気の方向が基準方向にあるときの姿勢から携帯電話機がその姿勢を変化させたとき、その変化後の姿勢を各角度θｘ，θＹ，θＺによって特定することができる。なお、以下の説明では、Ｘ軸まわりの角度θｘをピッチ角といい、Ｙ軸まわりの角度θＹをロール角といい、Ｚ軸まわりの角度θＺをヨー角という。また、上記地磁気センサ２０８を用いることで、例えば上記Ｙ軸が北方位に対してどの向きに向いているかを検知することもできる。この場合、例えば、上記Ｙ軸と北方位とのなす角（以下、「方位角」という。）θＮによって携帯電話機が向いている方角を特定する。この地磁気センサ２０８も、携帯電話機２０の内部に設けられた図示しない回路基板上に実装されている。
なお、これらのセンサ２０７，２０８は、携帯電話機２０の本体とは別体の装置として構成してもよい。この場合、例えば、これらのセンサ２０７，２０８を備えた外部装置を、携帯電話機２０の本体に設けられる外部端子に接続し、その外部装置と携帯電話機２０の本体とが一体となるように構成する。
【００２２】
図６は、上記携帯電話機２０の主要部を抽出して示したブロック図であり、図７は、その携帯電話機２０におけるソフトウェア構造の説明図である。
この携帯電話機２０は、電話通信部２１１、データ通信部２１２、操作部２１３、アプリケーションプログラム実行管理部２１４、主制御部２１５、出力部２１６、検知手段としてのセンサ検知部２１７等を備えている。後述する動作例１及び動作例２においては、アプリケーションプログラム実行管理部２１４がアプリケーションプログラム実行手段として機能し、後述する動作例３においては、主制御部２１５がアプリケーションプログラム実行手段として機能する。
【００２３】
上記電話通信部２１１は、他の携帯電話機や固定電話機と電話通信を行うために、携帯電話通信網１０の基地局と無線通信を行うものであり、上述のハードウェア構成上の携帯電話用通信装置２０６等に対応する。
【００２４】
上記データ通信部２１２は、上記電話通信部２１１と同様に、上述のハードウェア構成上の携帯電話用通信装置２０６等に対応する。このデータ通信部２１２は、携帯電話機通信網１０を介して他の携帯電話機とメールのやり取りを行ったり、携帯電話機通信網１０からゲートウェイサーバを介して、インターネット等の外部の通信ネットワークに接続し、インターネット上での電子メールのやり取りやＷｅｂページの閲覧等を行ったりするためのものである。また、このデータ通信部２１２は、携帯電話機通信網１０を介して、ダウンロードサーバ１１が提供するアプリケーションプログラムをダウンロードするためにも用いられる。
【００２５】
上記操作部２１３は、ユーザー１が操作可能な上述のテンキー２１、通話開始キー２２、終話キー２３等で構成されている。この操作部２１３を操作することにより、ユーザーは、携帯電話機２０に対してＵＲＬ等のデータを入力したり、電話着信の際に通話の開始及び終了を行ったり、アプリケーションプログラムの選択、起動及び停止を行ったりすることができる。また、ユーザーは操作部２１３を操作することにより、上記ダウンロードサーバ１１からアプリケーションプログラムをダウンロードすることもできる。
【００２６】
上記アプリケーションプログラム実行管理部２１４は、上述のシステムバス２００、ＣＰＵ２０１やＲＡＭ２０２の一部等で構成されている。このアプリケーションプログラム実行管理部２１４は、図７のソフトウェア構造上において中央の「アプリケーション実行環境」に対応しており、オブジェクト指向プログラミングで開発されたアプリケーションプログラムに利用されるクラスライブラリ、実行環境管理ライブラリ、アプリケーション管理等のソフトウェアを提供し、アプリケーションプログラムの実行環境を管理する。このアプリケーション実行環境は、実行するアプリケーションプログラムに応じて適宜選定される。例えば、実行するアプリケーションプログラムがＪＡＶＡで記述されたものである場合には、ＪＡＶＡのアプリケーション実行環境を選定する。また、実行するアプリケーションプログラムがＢＲＥＷの実行環境上で動作するＣ言語で記述されたものである場合には、ＢＲＥＷのアプリケーション実行環境を選定する。なお、実行するアプリケーションプログラムがＪＡＶＡで記述されたものである場合には、ＢＲＥＷのアプリケーション実行環境上に更にＪＡＶＡのアプリケーション実行環境を構築することで、これを実行することができる。
【００２７】
ここで、アプリケーションプログラムは、クラスライブラリＡＰＩ（アプリケーションインターフェース）を介して上記アプリケーション実行環境内にある関数等のクラスライブラリを呼び出して使用できるようになっている。この関数等のクラスライブラリの呼び出しの履歴は、アプリケーションプログラムの仮想的な実行環境（仮想マシン：ＶＭ）が終了するまで、ＲＡＭ２０２内におけるアプリケーション用記憶領域に記憶される。また、アプリケーション実行環境は、アプリケーションプログラムの実行に際して用いる各種データも、そのアプリケーション用記憶領域に記憶する。そして、この各種データを用いるときには、このアプリケーション用記憶領域から読み出したり、書き込んだりする。また、アプリケーション実行環境内の実行環境管理ライブラリは、電話機プラットフォームＡＰＩを介して後述の電話機プラットフォーム内の電話機プラットフォームライブラリを呼び出して使用できるようになっている。
【００２８】
後述の動作例１，２において説明するように、加速度センサ２０７及び地磁気センサ２０８等で構成される後述のセンサ検知部２１７で検知した検知結果データ（加速度αｘ，αＹ及びピッチ角θｘ、ロール角θＹ、ヨー角θＺ）は、アプリケーションプログラムで利用される。従来のアプリケーション実行環境においては、アプリケーションプログラムが上記検知結果データを利用する手段がなかったため、本実施形態では、クラスライブラリに新しいクラス（Orientationクラス）を追加している。このOrientationクラスには、加速度αｘ，αＹのデータを取得するためのメソッドや、ピッチ角θｘ、ロール角θＹ、ヨー角θＺを取得するためのメソッドが個別に用意されており、いくつかの命令セットを定義可能である。よって、本実施形態によれば、アプリケーションプログラムは、これらのメソッドを使用して上記検知結果データを取得し、これを利用することができる。
【００２９】
上記主制御部２１５は、上記電話通信部２１１、データ通信部２１２、操作部２１３、センサ検知部２１７を制御するものであり、上述のシステムバス２００、ＣＰＵ２０１やＲＡＭ２０２等で構成されている。この主制御部２１５は、アプリケーションプログラム実行管理部２１４との間で制御命令や各種データのやりとりを行い、これらと協働して制御を行う。また、主制御部２１５は、図７のソフトウェア構造上において最下部の「電話機プラットフォーム」に対応しており、上記電話通信部２１１等を制御するための制御用プログラムやユーザインターフェースを実行したり、電話機プラットフォームライブラリを提供したりする。この電話機プラットフォームは、上記アプリケーション実行環境内の実行環境管理ライブラリに対してイベントを送ることにより、アプリケーションプログラムにおいて各種処理を実行したり、アプリケーション管理ＡＰＩを介して上記アプリケーション実行環境内のアプリケーション管理のソフトウェアを呼び出して使用したりできるようになっている。また、アプリケーション実行環境が電話機プラットフォームＡＰＩを介して電話機プラットフォームライブラリを呼び出して使用したとき、電話機プラットフォームは、その電話機プラットフォームライブラリに応じた処理を実行する。例えば、電話機プラットフォームは、電話機プラットフォームライブラリを利用したアプリケーション実行環境からの指示に基づき、ＲＡＭ２０２内における電話機プラットフォームが管理するプラットフォーム用記憶領域に記憶されたデータを読み出して、これをアプリケーション用記憶領域に移行することができる。
【００３０】
上記出力部２１６は、上述の液晶ディスプレイ２７、スピーカ２８等からなる出力装置２０５等で構成されている。この出力部２１６は、上記データ通信部２１２で受信したＷｅｂページ画面を液晶ディスプレイ２７に表示する。また、この出力部２１６の液晶ディスプレイ２７は、上記電話通信部２１１やデータ通信部２１２で情報を着信した旨をユーザーに報知するときに用いられる。具体的には、その情報を着信すると、主制御部２１５により、出力部２１６の液晶ディスプレイ２７に着信報知画像を表示したり、スピーカ２８から着信音を出力させたりする。更に、この出力部２１６は、アプリケーション実行環境上で実行されるアプリケーションプログラムの実行中に、そのプログラム実行に関連したメニュー画面等の表示や音楽の出力にも用いられる。
【００３１】
上記センサ検知部２１７は、上述の加速度センサ２０７及び地磁気センサ２０８等で構成されている。このセンサ検知部２１７は、上記主制御部２１５の制御の下で動作し、その検出結果は主制御部２１５が取得する。その検出結果が示す加速度αｘ，αＹ並びにピッチ角θｘ、ロール角θＹ及びヨー角θＺのデータは、上述したようにＲＡＭ２０２のプラットフォーム用記憶領域に記憶される。
例えばユーザー１によって携帯電話機２０が変位すると、Ｘ軸方向及びＹ軸方向に働く加速度がセンサ検知部２１７を構成する加速度センサ２０７によって検知される。その検知信号が主制御部２１５に入力されると、主制御部２１５は、その検出信号からＸ軸方向の加速度αｘ及びＹ軸方向の加速度αＹを算出する。算出した加速度αｘ，αＹのデータは、記憶処理手段として機能する主制御部２１５によって、ＲＡＭ２０２内のプラットフォーム用記憶領域に記憶される。
また、携帯電話機２０の姿勢が変わると、その姿勢の変化後におけるピッチ角θｘ、ロール角θＹ及びヨー角θＺがセンサ検知部２１７を構成する地磁気センサ２０７によって検知される。その検知信号が主制御部２１５に入力されると、主制御部２１５は、その検出信号から姿勢変化後のそれぞれの角度θｘ，θＹ，θＺを算出する。算出した各角度θｘ，θＹ，θＺのデータは、加速度αｘ，αＹの場合と同様に、主制御部２１５によってＲＡＭ２０２内のプラットフォーム用記憶領域に記憶される。
また、携帯電話機２０の向きが変わると、その向きの変化後における方位角θＮがセンサ検知部２１７を構成する地磁気センサ２０８によって検知される。その検知信号が主制御部２１５に入力されると、主制御部２１５は、その検出信号から姿勢変化後の方位角θＮを算出する。算出した方位角θＮのデータも、同様に、主制御部２１５によってＲＡＭ２０２内のプラットフォーム用記憶領域に記憶される。
【００３２】
なお、プラットフォーム記憶領域へ記憶する加速度αｘ，αＹや各角度θｘ，θＹ，θＺのデータを、主制御部２１５がセンサ検知部２１７から取得する方法としては、次のようなものが挙げられる。例えば、主制御部２１５からセンサ検知部２１７へリクエストを送り、これに応じてセンサ検知部２１７が出力したデータを主制御部２１５が受信する取得方法である。また、例えば、リクエストがなくてもセンサ検知部２１７が連続的に出力するデータを、主制御部２１５が適宜受信する取得方法を採用してもよい。また、アプリケーションプログラムがアプリケーションプログラム実行管理部２１４を介して出力したリクエストに応じて主制御部２１５がセンサ検知部２１７へリクエストを送り、これに応じてセンサ検知部２１７が出力したデータを主制御部２１５が受信する取得方法を採用することもできる。
【００３３】
携帯電話機２０を所定の手順に従って動作させる電話機プラットフォームを構築するための制御用プログラムは、ＲＡＭ２０２やＲＯＭ２０３に記憶されている。また、基本ＯＳ（オペレーティングシステム）のプログラムや、上記アプリケーション実行環境を構築するためのプログラム及びアプリケーションプログラムも、ＲＡＭ２０２やＲＯＭ２０３に記憶されている。そして、これらのプログラムは、必要に応じてＣＰＵ２０１やＲＡＭ２０２中の作業エリアに呼び出されて実行される。
【００３４】
〔動作例１〕
次に、上記加速度αｘ，αＹを用いたアプリケーションプログラムを実行するための処理動作（以下、「動作例１」という。）について説明する。本動作例１のアプリケーションプログラムは、上記携帯電話機２０を、ノートパソコン等の携帯型パーソナルコンピュータやＰＤＡ等のポインティングデバイスであるマウスとして動作させるためのものである。もちろん、据え置き型のパーソナルコンピュータなどのポインティングデバイスとしても同様に動作させることができる。
【００３５】
図１は、本動作例１におけるアプリケーションプログラムを実行するための処理の流れを示すフローチャートである。
まず、ユーザー１は、マウス用のアプリケーションプログラムを上記ダウンロードサーバ１１からダウンロードして取得し、これを登録する（Ｓ１）。具体的には、ユーザー１は、操作部２１３のキーを操作して、ダウンロードサーバ１１にアクセスする。これにより、ダウンロード可能なアプリケーションプログラムを選択するためのダウンロード選択画面が液晶ディスプレイ２７上に表示される。そして、そのダウンロード選択画面において、実行対象となるマウス用のアプリケーションプログラムをスクロールキー２４を用いて選択し、多機能キー２５を押下すると、主制御部２１５がデータ通信部２１２を制御して、そのアプリケーションプログラムをダウンロードサーバ１１からダウンロードする。このようにしてダウンロードされたアプリケーションプログラムは、主制御部２１５により、ＲＡＭ２０２に記憶される。
【００３６】
ダウンロードしたアプリケーションプログラムを実行する場合、ユーザー１は、まず、携帯電話機２０の外部端子と、ノートパソコン等のＵＳＢ（Universal Serial Bus）端子とを接続する。本実施形態の接続方式は、ＵＳＢ端子を利用した有線接続であるが、その他の有線接続又は無線接続を用いた方式であってもよい。また、本携帯電話機２０をノートパソコン等に接続する場合に用いる携帯電話機２０側の通信手段としては、その外部端子に限らず、ノートパソコン等との間でデータ通信が可能なあらゆる通信手段を利用することが可能である。携帯電話機２０とノートパソコン等とを接続したら、ユーザー１は、操作部２１３のキーを操作して、実行するアプリケーションプログラムを選択するためのアプリケーション選択画面を液晶ディスプレイ２７上に表示させる。そして、そのアプリケーション選択画面において、実行対象であるマウス用のアプリケーションプログラムをスクロールキー２４を用いて選択し、多機能キー２５を押下する。すると、図７に示した電話機プラットフォームすなわち図６に示した主制御部２１５に、アプリケーションプログラムの実行指示が入力される（Ｓ２）。これにより、主制御部２１５は、図７に示したアプリケーション実行環境すなわち図６に示したアプリケーションプログラム実行管理部２１４を起動させる（Ｓ３）。そして、アプリケーションプログラム実行管理部２１４は、アプリケーションプログラム実行手段として機能し、マウス用のアプリケーションプログラムを読み出してこれを起動する（Ｓ４）。
【００３７】
マウス用のアプリケーションプログラムが起動した後、そのアプリケーションプログラムは、センサ検知部２１７によって検知される加速度αｘ，αＹのデータをほぼリアルタイムで取得する。そして、アプリケーションプログラムは、取得したデータに基づいて携帯電話機２０の移動量及び移動方向を求める。この移動量及び移動方向は、所定の短い時間間隔で、連続的に携帯電話機２０の外部端子を介してノートパソコン等に出力される。
具体的に説明すると、図８に示すように、アプリケーション実行環境において、起動したアプリケーションプログラムは、アプリケーションプログラム実行管理部２１４に対して、加速度データの取得要求を送る。本動作例１では、加速度αｘ，αＹのデータを取得するメソッドとしてgetXGravity()及びgetYGravity()の命令セットが定義されているので、これらの命令セットを利用する要求を送る。これを受けたアプリケーションプログラム実行管理部２１４は、電話機プラットフォームの主制御部２１５に対してデータ移行命令である加速度データの取得要求を送る（Ｓ５）。これを受けた主制御部２１５は、ＲＡＭ２０２内のプラットフォーム用記憶領域に記憶した加速度αｘ，αＹのデータを、アプリケーションプログラム実行管理部２１４に送り、このデータはアプリケーションプログラムに渡される（Ｓ６）。そして、加速度αｘ，αＹのデータを取得したアプリケーションプログラムは、そのデータを、ＲＡＭ２０２内のアプリケーション用記憶領域に記憶する。そして、その加速度αｘ，αＹのデータから携帯電話機２０の移動量及び移動方向を算出し、その移動量及び移動方向の情報を外部端子からノートパソコン等に出力する処理を実行する（Ｓ７）。本動作例１において、主制御部２１５は、アプリケーションプログラム実行管理部２１４から加速度データの取得要求を受け取ると、その後、プラットフォーム記憶領域内の加速度αｘ，αＹが更新されるたびに、更新後のデータをアプリケーションプログラム実行管理部２１４に送る。よって、マウス用のアプリケーションプログラムは、ほぼリアルタイムで、加速度αｘ，αＹのデータを取得し、ノートパソコン等に移動量及び移動方向の情報を出力することができる。
【００３８】
以上、本動作例１によれば、電話機プラットフォームに依存しない利用者が登録して利用することが可能なアプリケーションプログラムにより、電話機プラットフォームが制御するセンサ検知部２１７によって得られる加速度αｘ，αＹのデータを用いた処理を行うことができる。具体的には、携帯電話機２０を、携帯型パーソナルコンピュータ等のポインティングデバイスとして利用することができる。一般に、携帯型パーソナルコンピュータ等は小型化のため、備え付けのポインティングデバイスの操作性は、ディスクトップ型パーソナルコンピュータには劣るものである。そのため、ユーザーの中には、携帯型パーソナルコンピュータ等とは別個に、いわゆる外付けマウスを携帯する者も多い。本動作例１においては、一般のユーザーであればほぼ常時携帯している携帯電話機２０を、外付けマウスとして利用することができる。よって、従来のように、外付けマウスをわざわざ持ち歩かなくても、ディスクトップ型パーソナルコンピュータと同様の操作性を得ることができる。
【００３９】
なお、本動作例１では、加速度αｘ，αＹのデータを用いたアプリケーションプログラムとして、マウス用のアプリケーションプログラムを例に挙げて説明したが、これに限られるものではない。
他のアプリケーションプログラムとしては、例えば、携帯電話機２０を万歩計（登録商標）として動作させるものが挙げられる。この場合、そのアプリケーションプログラムは、例えば、上記と同様にほぼリアルタイムで加速度データを連続的に取得し、ある一定の閾値を越える加速度が検知された回数をカウントするような内容とする。また、上述した加速度αｘ，αＹのデータを用いれば、その加速度変化から、歩いている時、走っている時、電車に乗っている時などのユーザー１の動きを推測することが可能である。これらの推測をもとに、ユーザー１の１日の行動履歴を記録するようなアプリケーションプログラムを提供することも可能である。このとき、上記地磁気センサ２０８によって検知される方位角θＮのデータも利用すれば、ユーザー１が移動した方角も把握することができ、より詳細な行動履歴を記録することが可能となる。この行動履歴の保存先は、携帯電話機２０内に限らず、データ通信部２１２から通信ネットワーク上の所定のサーバに保存するようにしてもよい。
また、他のアプリケーションプログラムとしては、例えば、携帯電話機２０に衝撃を与えることでアラームを止めることができるような目覚まし時計として、携帯電話機２０を動作させるものも挙げられる。この場合、そのアプリケーションプログラムは、例えば、アラームが鳴っている間に一定以上の加速度が発生したら、アラームを止めるような内容とする。これによれば、ユーザーは、アラームを止める時に、従来のようにボタン操作を行う必要がなくなるので、ユーザーの利便性向上を図ることができる。
【００４０】
〔動作例２〕
次に、上記ピッチ角θｘ、ロール角θＹ及びヨー角θＺを用いたアプリケーションプログラムを実行するための処理動作（以下、「動作例２」という。）について説明する。本動作例２のアプリケーションプログラムは、ゲームであるフライトシミュレータである。
【００４１】
図９は、本動作例２におけるアプリケーションプログラムを実行するための処理の流れを示すフローチャートである。
ユーザー１は、上記動作例１と同様にして、フライトシミュレータ用プログラム（アプリケーションプログラム）を上記ダウンロードサーバ１１からダウンロードして取得し、これを起動する（Ｓ１１〜Ｓ１４）。このプログラムが起動すると、出力部２１６が、飛行機の操縦席からの視界を擬似的に表したゲーム画面をＬＣＤ２７に表示する。また、このプログラムは、センサ検知部２１７によって検知されるピッチ角θｘ、ロール角θＹ及びヨー角θＺのデータをほぼリアルタイムで取得する。そして、そのプログラムは、取得したデータに応じてＬＣＤ２７に表示されるゲーム画面の内容を更新する。例えば、ユーザー１が携帯電話機２０のアンテナ側を鉛直方向下方に傾けると、これによりピッチ角θｘが変化し、ゲーム上の飛行機の機首が鉛直方向下方に向いたゲーム画面に更新される。また、例えば、ユーザー１が携帯電話機２０を左側に傾けると、これによりロール角θＹが変化し、ゲーム上の飛行機が左側に傾いたゲーム画面に更新される。
【００４２】
具体的に説明すると、図１０に示すように、アプリケーション実行環境において、起動したアプリケーションプログラムは、アプリケーションプログラム実行管理部２１４に対して、角度データの取得要求を送る。本動作例２では、ピッチ角θｘ、ロール角θＹ、ヨー角θＺのデータを取得するメソッドとしてgetPitch()、getRoll()、getCompassBearing()等の命令セットが定義されているので、これらの命令セットを利用する要求を送る。これを受けたアプリケーションプログラム実行管理部２１４は、電話機プラットフォームの主制御部２１５に対してデータ移行命令である角度データの取得要求を送る（Ｓ１５）。これを受けた主制御部２１５は、ＲＡＭ２０２内のプラットフォーム用記憶領域に記憶したピッチ角θｘ、ロール角θＹ及びヨー角θＺのデータを、アプリケーションプログラム実行管理部２１４に送り、これらのデータはアプリケーションプログラムに渡される（Ｓ１６）。そして、ピッチ角θｘ、ロール角θＹ及びヨー角θＺのデータを取得したアプリケーションプログラムは、そのデータを、ＲＡＭ２０２内のアプリケーション用記憶領域に記憶する。そして、ピッチ角θｘ、ロール角θＹ及びヨー角θＺに基づいてゲーム画面を更新し、その更新後のゲーム画面を携帯電話機２０のＬＣＤ２７に表示する処理を実行する（Ｓ１７）。なお、本動作例２においても、上記動作例１と同様に、主制御部２１５は、アプリケーションプログラム実行管理部２１４から角度データの取得要求を受け取った後は、プラットフォーム記憶領域内の角度θｘ，θＹ，θＺのデータが更新されるたびに、更新後のデータをアプリケーションプログラム実行管理部２１４に送る。よって、ユーザー１は、携帯電話機２０のＬＣＤ２７を見ながら携帯電話機２０の本体を傾けることで、ゲーム上の飛行機を操縦するというゲームを楽しむことができる。
【００４３】
以上、本動作例２によれば、電話機プラットフォームに依存しない利用者が登録して利用することが可能なアプリケーションプログラムにより、電話機プラットフォームが制御するセンサ検知部２１７によって得られる角度θｘ，θＹ，θＺのデータを用いた処理を行うことができる。具体的には、携帯電話機２０の本体を傾ける操作を行うことで、フライトシミュレータ上の飛行機を操縦するというゲームを提供することができる。フライトシミュレータ上の飛行機の操縦は、携帯電話機２０の操作部２１３を操作することでも可能ではあるが、本動作例２の方が操縦の臨場感を高めることができる。
【００４４】
なお、本動作例２では、ピッチ角θｘ、ロール角θＹ及びヨー角θＺのデータを用いたアプリケーションプログラムとして、フライトシミュレータ用のプログラムを例に挙げて説明したが、これに限られるものではない。
他のアプリケーションプログラムとしては、例えば、ＬＣＤ２７に表示されるゲーム画面上においてボールを穴に落とすというゲームが挙げられる。この場合、そのアプリケーションプログラムは、例えば、携帯電話機２０を傾けることで、ゲーム画面上のボールがその傾きの方向に移動するような内容とする。
【００４５】
〔動作例３〕
次に、上記動作例１と同様に、上記加速度αｘ，αＹを用いたマウス用のアプリケーションプログラムを実行するための処理動作（以下、「動作例３」という。）について説明する。
本動作例３で実行されるアプリケーションプログラムは、電話機プラットフォームに依存するものである点で、上記動作例１のようにアプリケーション実行環境上で実行される電話機プラットフォームに依存しないアプリケーションプログラムとは異なるものである。なお、電話機プラットフォームに依存するアプリケーションプログラムとは、電話機プラットフォーム上で直接動作するもの、すなわち、アプリケーションプログラム実行手段として機能する主制御部２１５により実行されるものである。本動作例３における基本的な動作は、上記動作例１と同様であるので、以下、主に異なる点について説明する。
【００４６】
図１１は、本動作例３におけるアプリケーションプログラムを実行するための処理の流れを示すフローチャートである。
本動作例３の実行対象であるマウス用のアプリケーションプログラムは、出荷段階で予めＲＯＭ２０３に記憶されている。よって、上記動作例１のように、実行前に、アプリケーションプログラムを上記ダウンロードサーバ１１からダウンロードして取得し、これを登録する処理を必要としない。アプリケーションプログラムを実行する場合、ユーザー１は、まず、上記動作例１と同様に、携帯電話機２０をノートパソコン等に接続した後、操作部２１３のキーを操作して、実行するアプリケーションプログラムを選択する。すると、図７に示した電話機プラットフォームすなわち図６に示した主制御部２１５に、アプリケーションプログラムの実行指示が入力される（Ｓ２１）。これにより、主制御部２１５は、マウス用のアプリケーションプログラムを読み出してこれを起動する（Ｓ２２）。このとき、本動作例３では、アプリケーション実行環境を起動させる必要がない。
【００４７】
マウス用のアプリケーションプログラムが起動した後、そのアプリケーションプログラムは、センサ検知部２１７によって検知される加速度αｘ，αＹのデータをほぼリアルタイムで取得する。そして、アプリケーションプログラムは、取得したデータに基づいて携帯電話機２０の移動量及び移動方向を求める。この移動量及び移動方向は、所定の短い時間間隔で、連続的に携帯電話機２０の外部端子を介してノートパソコン等に出力される。
具体的に説明すると、図１２に示すように、電話機プラットフォームにおいて、起動したアプリケーションプログラムは、主制御部２１５に対して、加速度データの取得要求を送る（Ｓ２３）。これを受けた主制御部２１５は、ＲＡＭ２０２内のプラットフォーム用記憶領域に記憶した加速度αｘ，αＹのデータを、アプリケーションプログラムに受け渡す（Ｓ２４）。そして、加速度αｘ，αＹのデータを取得したアプリケーションプログラムは、そのデータから携帯電話機２０の移動量及び移動方向を算出し、その移動量及び移動方向の情報をノートパソコン等に出力する処理を実行する（Ｓ２５）。本動作例３において、主制御部２１５は、アプリケーションプログラムから加速度データの取得要求を受け取ると、その後、プラットフォーム記憶領域内の加速度αｘ，αＹが更新されるたびに、更新後のデータをアプリケーションプログラムに送る。よって、マウス用のアプリケーションプログラムは、ほぼリアルタイムで、加速度αｘ，αＹのデータを取得し、ノートパソコン等に移動量及び移動方向の情報を出力することができる。
【００４８】
以上、本動作例３によれば、上記動作例１と同様に、携帯電話機２０を、携帯型パーソナルコンピュータ等のポインティングデバイスとして利用することができる。
なお、本動作例３において実行されるアプリケーションプログラムは、主制御部２１５により実行される電話機プラットフォームに依存するものである。したがって、本動作例３は、アプリケーションプログラム実行管理部２１４を有しない携帯電話機に対しても適用することができる。
【００４９】
その他、加速度αｘ，αＹ、角度θｘ，θＹ，θＺ、方位角θＮを用いたアプリケーションプログラムとしては、例えば、携帯電話機２０の位置、向き、姿勢、動きなどによって、マナーモード設定等の各種設定の変更を行うための入力手段として、携帯電話機２０を動作させるものが挙げられる。この場合、そのアプリケーションプログラムは、例えば、携帯電話機２０が起立した状態にあるときはマナーモードに設定されたり、携帯電話機２０が静止状態にあるときは省電力モードに設定されたりするような内容とする。
【００５０】
なお、本実施形態においては、主制御部２１５は、アプリケーションプログラム実行管理部２１４を介して又はアプリケーションプログラムから直接に、取得要求を受けた後、プラットフォーム記憶領域内のデータ更新のたびに、更新後のデータを送るように動作するが、アプリケーションプログラムの内容に応じて適宜変更できる。例えば、取得要求を受けたら、プラットフォーム記憶領域内のデータを、１回だけ送るように動作させてもよい。また、上記動作例１及び動作例２においては、アプリケーションプログラムからの指示を待たずに、アプリケーションプログラム実行管理部２１４が取得要求を出力するようにしてもよい。
また、本発明は、携帯電話機のほか、ＰＨＳ、自動車電話機等の電話機、携帯型のＰＤＡの場合についても適用でき、同様な効果が得られるものである。
【図面の簡単な説明】
【００５１】
【図１】実施形態の動作例１における携帯電話機でアプリケーションプログラムを実行するための処理の流れを示すフローチャート。
【図２】同携帯電話機が利用可能な移動体通信システムの全体構成を説明するための説明図。
【図３】同移動体通信システムを構成するダウンロードサーバのハードウェア構成を示す概略構成図。
【図４】同携帯電話機の外観を示す正面図。
【図５】同携帯電話機のハードウェア構成を示す概略構成図。
【図６】同携帯電話機の主要部を抽出して示したブロック図。
【図７】同携帯電話機におけるソフトウェア構造の説明図。
【図８】同携帯電話機でアプリケーションプログラムを実行する際のシーケンスフロー図。
【図９】動作例２における携帯電話機でアプリケーションプログラムを実行するための処理の流れを示すフローチャート。
【図１０】同携帯電話機でアプリケーションプログラムを実行する際のシーケンスフロー図。
【図１１】動作例３における携帯電話機でアプリケーションプログラムを実行するための処理の流れを示すフローチャート。
【図１２】同携帯電話機でアプリケーションプログラムを実行する際のシーケンスフロー図。
【符号の説明】
【００５２】
１０    携帯電話通信網
１１    ダウンロードサーバ
２０    携帯電話機
２０７  加速度センサ
２０８  地磁気センサ
２１２  データ通信部
２１３  操作部
２１４  アプリケーションプログラム実行管理部
２１５  主制御部
２１６  出力部
２１７  センサ検知部
【図１】
2008167453.tif 000003
【図２】
2008167453.tif 000004
【図３】
2008167453.tif 000005
【図４】
2008167453.tif 000006
【図５】
2008167453.tif 000007
【図６】
2008167453.tif 000008
【図７】
2008167453.tif 000009
【図８】
2008167453.tif 000010
【図９】
2008167453.tif 000011
【図１０】
2008167453.tif 000012
【図１１】
2008167453.tif 000013
【図１２】
2008167453.tif 000014
【手続補正書】
【提出日】平成20年2月1日(2008.2.1)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
プラットフォームに設けられた制御手段と、
該プラットフォーム上に構築されるアプリケーション実行環境上で動作するアプリケーションプログラムを実行するアプリケーションプログラム実行手段とを備えた移動体通信端末において、
当該移動体通信端末の位置、向き、姿勢及び動きのうちの少なくとも１つを検知するための検知手段と、
該検知手段による検知結果に基づいて得られる検知結果データを記憶する記憶手段とを有し、
上記アプリケーションプログラム実行手段は、該記憶手段に記憶されている検知結果データを取得するための命令を含み複数種類のアプリケーションプログラムで共通に利用可能な命令セットを実装し、実行中のアプリケーションプログラムで要求された該命令セットに含まれる命令の利用要求に従って該検知結果データを該記憶手段から取得し、取得した検知結果データを用いた処理を、該実行中のアプリケーションプログラムに従って実行することを特徴とする移動体通信端末。
【請求項２】
請求項１の移動体通信端末において、
上記検知手段は、所定方向に延びる仮想軸のまわりの基準角に対する角度を検知するための角度検知手段を含むことを特徴とする移動体通信端末。
【請求項３】
請求項１又は２の移動体通信端末において、
上記検知手段は、当該移動体通信端末に働く所定方向の加速度を検知するための加速度検知手段を含むことを特徴とする移動体通信端末。
【請求項４】
請求項１の移動体通信端末において、
上記検知手段として、３軸の磁気センサ及び２軸の加速度センサを用いることを特徴とする移動体通信端末。
【請求項５】
請求項１乃至４のいずれか１項に記載の移動体通信端末が有するアプリケーションプログラム実行手段により実行されることにより、上記記憶手段に記憶されている検知結果データを取得するための命令を利用して、該アプリケーションプログラム実行手段に、該移動体通信端末が有する検知手段による検知結果データを取得させ、かつ、取得した検知結果データを用いた処理を実行させるように、該移動体通信端末のコンピュータを機能させることを特徴とするアプリケーションプログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】変更
【補正の内容】
【０００９】
上記目的を達成するために、請求項１の発明は、プラットフォームに設けられた制御手段と、該プラットフォーム上に構築されるアプリケーション実行環境上で動作するアプリケーションプログラムを実行するアプリケーションプログラム実行手段とを備えた移動体通信端末において、当該移動体通信端末の位置、向き、姿勢及び動きのうちの少なくとも１つを検知するための検知手段と、該検知手段による検知結果に基づいて得られる検知結果データを記憶する記憶手段とを有し、上記アプリケーションプログラム実行手段は、該記憶手段に記憶されている検知結果データを取得するための命令を含み複数種類のアプリケーションプログラムで共通に利用可能な命令セットを実装し、実行中のアプリケーションプログラムで要求された該命令セットに含まれる命令の利用要求に従って該検知結果データを該記憶手段から取得し、取得した検知結果データを用いた処理を、該実行中のアプリケーションプログラムに従って実行することを特徴とするものである。
この移動体通信端末においては、アプリケーションプログラム実行手段は、プラットフォームに依存しないアプリケーションプログラムを実行することが可能である。このようなアプリケーションプログラムは、プラットフォームに依存するアプリケーションプログラムとは異なり、利用者が登録して利用することが可能である。そして、アプリケーションプログラム実行手段は、記憶手段に記憶されている検知結果データを取得するための命令を含んだ命令セットを実装しているので、アプリケーションプログラム中にその命令を用いる旨の利用要求を記述しておくだけで、そのアプリケーションプログラムを実行するアプリケーションプログラム実行手段に、検知結果データを用いた処理を実行させることが可能となる。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１２
【補正方法】変更
【補正の内容】
【００１２】
また、請求項４の発明は、請求項１の移動体通信端末において、上記検知手段として、３軸の磁気センサ及び２軸の加速度センサを用いることを特徴とするものである。
この移動体通信端末において、アプリケーションプログラムが利用する検知結果データは、３軸の磁気センサ及び２軸の加速度センサの検知結果に基づいて得られるものである。３軸の磁気センサを用いれば、これにより地磁気を検知することで、簡単な構成で、各軸まわりの基準角に対する角度を特定することができ、当該移動体通信端末の姿勢を特定することができる。また、３軸の磁気センサを用いて地磁気を検知すれば、当該移動体通信端末の向き、すなわち、当該移動体通信端末上の特定方向が向いている方位を特定することができる。更に、本移動体通信端末は、２軸の加速度センサによって加速度も検知できるので、当該移動体通信端末の位置や動きも特定することが可能となる。例えば、２軸の加速度センサによって得られる加速度を時間で積分すれば、当該移動体通信端末の速度（動き）を特定することができる。また、例えば、上記３軸の磁気センサの検知結果と組み合わせることで、２軸の加速度センサによって得られる加速度から、検知開始地点に対する現在位置を特定することが可能となる。このように、本移動体通信端末によれば、簡単な構成で、当該移動体通信端末の位置、向き、姿勢及び動きのすべてを特定することが可能となる。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１３
【補正方法】変更
【補正の内容】
【００１３】
また、請求項５の発明に係るアプリケーションプログラムは、請求項１乃至４のいずれか１項に記載の移動体通信端末が有するアプリケーションプログラム実行手段により実行されることにより、上記記憶手段に記憶されている検知結果データを取得するための命令を利用して、該アプリケーションプログラム実行手段に、該移動体通信端末が有する検知手段による検知結果データを取得させ、かつ、取得した検知結果データを用いた処理を実行させるように、該移動体通信端末のコンピュータを機能させることを特徴とするものである。
このアプリケーションプログラムは、アプリケーションプログラム実行手段に予め実装されている命令セットを利用して、検知手段によって得られる検知結果データを利用した処理を行うことができる。なお、本アプリケーションプログラムの受け渡しは、デジタル情報としてプログラムを記録したＦＤ、ＣＤ−ＲＯＭ等の記録媒体を用いて行なってもいいし、移動体通信ネットワーク等の通信回線を用いて行ってもよい。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１４
【補正方法】削除
【補正の内容】
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００１５
【補正方法】変更
【補正の内容】
【００１５】
なお、上記「移動体通信端末」としては、ＰＤＣ（Personal Digital Cellular）方式、ＧＳＭ（Global System for Mobile Communication）方式、ＴＩＡ（Telecommunications Industry Association）方式等の携帯電話機、ＩＭＴ（International Mobile Telecommunications）−２０００で標準化された携帯電話機、ＰＨＳ（Personal Handyphone System）、自動車電話機等の電話機のうち、プラットフォームに依存しないアプリケーションプログラムを実行可能なものが挙げられる。また、この「移動体通信端末」としては、上記電話機のほか、電話機能を有しないＰＤＡ（Personal Digital Assistance）等の移動型の移動体通信端末も挙げられる。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００１６
【補正方法】変更
【補正の内容】
【００１６】
本発明によれば、位置、姿勢、動きを検知するための検知手段によって得られる検知結果データを、利用者が登録して利用することが可能なプラットフォームに依存しないアプリケーションプログラムで簡易に利用することが可能となるという優れた効果がある。
特に、請求項２の発明によれば、当該移動体通信端末の姿勢を利用した様々なアプリケーションプログラムを実行することが可能となるという優れた効果がある。
また、請求項３の発明によれば、当該移動体通信端末の位置や動きを利用した様々なアプリケーションプログラムを実行することが可能となるという優れた効果がある。