JP4220943B2 - 電子機器 - Google Patents

電子機器 Download PDF

Info

Publication number
JP4220943B2
JP4220943B2 JP2004208065A JP2004208065A JP4220943B2 JP 4220943 B2 JP4220943 B2 JP 4220943B2 JP 2004208065 A JP2004208065 A JP 2004208065A JP 2004208065 A JP2004208065 A JP 2004208065A JP 4220943 B2 JP4220943 B2 JP 4220943B2
Authority
JP
Japan
Prior art keywords
data
electronic device
application program
mobile phone
acceleration
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.)
Expired - Fee Related
Application number
JP2004208065A
Other languages
English (en)
Other versions
JP2006031307A (ja
Inventor
洋久 楠田
康弘 西出
大輔 辻野
純 山崎
多加志 片山
美年子 諸戸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SoftBank Corp
Original Assignee
SoftBank Mobile Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by SoftBank Mobile Corp filed Critical SoftBank Mobile Corp
Priority to JP2004208065A priority Critical patent/JP4220943B2/ja
Priority to EP05765174.7A priority patent/EP1783591B1/en
Priority to US11/632,505 priority patent/US8624838B2/en
Priority to ES05765174.7T priority patent/ES2527440T3/es
Priority to PCT/JP2005/012315 priority patent/WO2006008946A1/ja
Publication of JP2006031307A publication Critical patent/JP2006031307A/ja
Application granted granted Critical
Publication of JP4220943B2 publication Critical patent/JP4220943B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1615Constructional details or arrangements for portable computers with several enclosures having relative motions, each enclosure supporting at least one I/O or computing function
    • G06F1/1616Constructional details or arrangements for portable computers with several enclosures having relative motions, each enclosure supporting at least one I/O or computing function with folding flat displays, e.g. laptop computers or notebooks having a clamshell configuration, with body parts pivoting to an open position around an axis parallel to the plane they define in closed position
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1684Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/105Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals using inertial sensors, e.g. accelerometers, gyroscopes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2200/00Indexing scheme relating to G06F1/04 - G06F1/32
    • G06F2200/16Indexing scheme relating to G06F1/16 - G06F1/18
    • G06F2200/163Indexing scheme relating to constructional details of the computer
    • G06F2200/1637Sensing arrangement for detection of housing movement or orientation, e.g. for controlling scrolling or cursor movement on the display of an handheld computer

Description

本発明は、利用者により操作されるキーを備えたキー操作手段と、当該電子機器の動きや姿勢を検知するための検知手段とを備えた電子機器に関するものである。
この種の電子機器としては、例えば特許文献1に記載されているように、姿勢検知を行う姿勢検知手段を備えた小型情報処理装置が知られている。この小型情報処理装置は、キー操作手段としてのスクロール開始スイッチが押下されると、検知手段としての傾きセンサによりこの時点での表示部の傾き角度(重力方向に対する傾き角度)を検出する。この検出後、再び傾きセンサにより表示部の傾き角度を検出し、このときに検出した傾き角度から上記押下時の傾き角度(基本姿勢データ)を減算して上記押下時からの相対的な傾き角度を算出する。そして、この相対的な傾き角度に基づいて表示部の画面スクロールを行う。具体的には、この相対的な傾き角度から、押下時からの相対的な表示部の傾き方向を把握し、その傾き方向に対応する方向へ画面をスクロールさせる処理を行う。また、この相対的な傾き角度が、予め決められた角度(動き特定データ)未満であるときには画面のスクロールスピードを遅くし、予め決められた角度以上であるときには画面のスクロールスピードを速くする処理も行う。
また、特許文献2に記載されているように、加速度の検知を行う加速度検知手段を備えた携帯端末も知られている。この携帯端末は、これを利用者が振ったときに発生する加速度が予め決められた閾値(動き特定データ)以上であるか否かを判断する手段を備えている。この特許文献2には、加速度が予め決められた閾値以上であるときの回数をカウントし、そのカウント値に対応する電話番号を発呼する処理を行うという具体例が記載されている。上記閾値は、利用者が振ったことにより発生した加速度と、利用者が振っていないとき、例えば交通機関を利用しているときに加わった振動等とを区別するために設定される値である。上記特許文献2には、この閾値の設定方法として、キー操作手段としての「FCN」キー及び「5」キーが押されたら閾値を検出するモードへ移行し、24時間の間に加速度検知手段で検知された加速度の最大値にその数パーセントから50パーセントの値を加えた数値を上記閾値として用いることが記載されている。この24時間の間に検知された加速度の最大値は、利用者が振っていないときに発生する加速度の最大値である。したがって、この最大値より数パーセントから50パーセントの値を加えた数値を上記閾値として用いれば、利用者が振ったことにより発生した加速度を、利用者が振っていないときに発生する加速度と区別して認識することが可能となる。
特開平7−64754号公報 特開2002−330210号公報
上記特許文献1の小型情報処理装置において、表示部を傾かせるように装置全体の姿勢を変化させる際の取り扱い方法は、利用者ごとに様々である。そのため、画面のスクロールスピードの緩急を決定する閾値となる上記予め決められた角度は、利用者ごとにそれぞれ最適な角度が存在する。しかし、この小型情報処理装置においては、上記予め決められた角度が、利用者の別を問わず予め固定されたものであった。そのため、その固定された角度が自分に適した角度でない利用者にとっては、操作性が悪いという問題があった。
加えて、この小型情報処理装置においては、スクロール開始スイッチが押下されると、この時点での表示部の傾き角度を検出して基本姿勢データを取得すると同時に、表示部の画面をスクロールさせる処理を開始する。このように、基本姿勢データの取得タイミングと、この基本姿勢データを用いた処理の開始タイミングとが同時であると、基本姿勢データを取得した後、別のタイミングで基本姿勢データを用いた処理を開始させるという動作ができない。そのため、例えば、その処理の開始時における表示部の姿勢を基本姿勢としたくない利用者にとっては、その処理の基本姿勢が自分の希望する基本姿勢と一致しないこととなる。その結果、その処理に対する操作性が悪くなるという問題が生じる。
また、上記特許文献2の携帯端末において、携帯端末を振るときに発生する加速度の大きさは、その振り方や力加減で変わってくる。そして、その振り方や力加減は、利用者ごとに様々である。そのため、利用者が携帯端末を振ったときに発生する加速度を、振っていないときに発生する加速度と区別するための上記閾値の最適値は、利用者ごとに互いに相違する。したがって、上記特許文献2に記載された閾値の設定方法を用いるなどして、利用者が携帯端末を振ったときに発生する加速度と振っていないときに発生する加速度とを区別できるように設定された上記閾値が自分に適したものでない場合、その利用者にとって操作性が悪いという問題があった。
なお、以上の説明は、姿勢が変化したり加速度が発生したりするように動かすと、画面のスクロールスピードを変える処理や電話番号を発呼する処理が行われる例であるが、上記問題はこのような処理に限られるものではない。
本発明は、上記問題に鑑みなされたものであり、その目的とするところは、どのような利用者に対しても、利用者が振ったり傾けたりして当該電子機器を動かすことにより特定処理を実行させる際の操作性を向上させることができる電子機器を提供することである。
上記目的を達成するために、請求項1の発明は、利用者により操作されるキーを備えたキー操作手段と、当該電子機器の動きを検知するための検知手段と、該検知手段により当該電子機器の動きの検知を行って得た検知データ又はこれを演算したデータに基づいて画面情報更新処理を実行する制御手段とを備えた電子機器において、上記画面情報更新処理を実行させるときの予め決められた所定方向への当該電子機器の動き幅の最大値に対応する最大基準データを記憶する記憶手段と、上記キー操作手段に対する所定のキー操作を行い、該所定方向への当該電子機器の動き幅の最大値を生じさせるべく当該電子機器を動かすように、当該電子機器の操作を促す案内情報を出力する案内情報出力手段と、該案内情報出力手段により該案内情報を出力した後に該所定のキー操作が行われて当該電子機器が動かされたときの上記検知手段による検知データ又はこれを演算したデータを、上記最大基準データとして該記憶手段に保存する保存手段とを有し、上記制御手段は、該最大基準データを保存した後に該検知手段が該所定方向への当該電子機器の動きを検知したとき、その検知データ又はこれを演算したデータの値を該記憶手段に記憶されている該最大基準データの値で割った値に応じて、上記画面情報更新処理を実行することを特徴とするものである。
この電子機器においては、まず、案内情報を出力して、利用者に対し、所定のキー操作を行わせ、かつ、画面情報更新処理に対応する所定方向への動き幅の最大値を生じさせるように電子機器を動かす操作をそのキー操作後に行わせる。この動きが検知手段に検知されると、その検知データ又はこれを演算したデータ(以下、適宜「検知データ等」という。)が、最大基準データとして記憶手段に保存される。この最大基準データは、上記画面情報更新処理を実行させるための当該電子機器の動き幅の最大値を特定するためのものとなる。この最大基準データは、上記検知データ等そのものであっても、上記検知データ等に基づいて得られる電子機器の動きの範囲を特定するものであってもよい。そして、この保存後の任意のタイミングで利用者が当該電子機器を動かし、その動きが検知手段に検知されると、この検知で得た検知データ等の値を記憶手段に記憶されている最大基準データの値で割り、これにより得られる値に応じて上記画面情報更新処理が実行される。
以上より、本電子機器によれば、画面情報更新処理を実行させるための動きをその利用者に適したものに設定することができる。
また、請求項2の発明は、請求項1の電子機器において、上記検知手段として、当該電子機器に発生する加速度を検知する加速度検知手段を用いたことを特徴とするものである。
この電子機器においては、利用者が当該電子機器を振ったり移動させたりする当該電子機器に加速度を発生させる動作を行うことにより、画面情報更新処理を実行させることができる。
また、請求項の発明は、請求項の電子機器において、上記加速度検知手段は、上記加速度の大きさ及び向きを検知するものであることを特徴とするものである。
この電子機器においては、利用者が当該電子機器を振る強さや振る方向あるいは当該電子機器を移動させる速さや移動させる方向により、当該電子機器の動きをより詳細に検知することができる。
また、請求項4の発明は、請求項1の電子機器において、上記検知手段として、当該電子機器の姿勢変化を検知する姿勢変化検知手段を用いたことを特徴とするものである。
この電子機器においては、利用者が当該電子機器を傾けたり回転させたりして当該電子機器の姿勢を変化させる動作を行うことにより、画面情報更新処理を実行させることができる。
また、請求項の発明は、請求項の電子機器において、上記姿勢変化検知手段として、当該電子機器に発生する回転角変位又は回転角速度並びに回転方向を検知する回転検知手段を用いたことを特徴とするものである。
この電子機器においては、利用者が当該電子機器を傾けたり回転させたりしたときの回転角変位又は回転角速度並びにその回転方向により、当該電子機器の姿勢変化をより詳細に検知することができる。
なお、上記「電子機器」には、移動体通信端末のほか、携帯型情報端末(PDA:Personal Digital Assistance)やゲーム機等も含まれる。また、上記「移動体通信端末」には、PDC(Personal Digital Cellular)方式、GSM(Global System for Mobile Communication)方式、TIA(Telecommunications Industry Association)方式等の携帯電話機、IMT(International Mobile Telecommunications)−2000で標準化された携帯電話機、TD−SCDMA(Time Division Synchronous Code Division Multiple Access)方式の一つであるTD−SCDMA(MC:Multi Carrier)方式の携帯電話機、PHS(Personal Handyphone System)などが挙げられる。また、「移動体通信端末」には、PHS(Personal Handyphone Service)、自動車電話等の電話機のほか、携帯電話モジュールを付加した移動体通信端末も含まれる。また、上記「電子機器」には、通信機能を有しない電子機器も含まれる。
また、上記電子機器における制御は、これに設けられたコンピュータで所定のプログラムを実行することによって実現することもできる。このコンピュータで用いるプログラムの受け渡しは、デジタル情報としてプログラムを記録したFDCD−ROM等の記録媒体を用いて行ってもいいし、コンピュータネットワーク等の通信ネットワークを用いて行ってもよい。
請求項1乃至5の発明によれば、画面情報更新処理を実行させるために必要な電子機器の動きを、その利用者に適したものに設定することができるので、どのような利用者に対しても、その画面情報更新処理を実行させる際の操作性を向上させることができるという優れた効果が奏される。
また、請求項2及び3の発明によれば、利用者が電子機器を振ったり移動させたりして画面情報更新処理を実行させることができるようになるという優れた効果が奏される。
特に、請求項3の発明によれば、電子機器の動きをより詳細に検知できるので、利用者が意図しないときに誤って特定処理が実行される事態の発生を抑制することが可能となるという優れた効果が奏される。なお、その結果、画面情報更新処理を実行させるには利用者に対してより正確に電子機器を動かすことが要求されるようになるが、その動きは利用者ごとに最適化されているので操作性が悪化することはない。
また、請求項4及び5の発明によれば、利用者が当該電子機器を傾けたり回転させたりして当該電子機器の姿勢を変化させることにより画面情報更新処理を実行させることができるようになるという優れた効果が奏される。
特に、請求項5の発明によれば、電子機器の動きをより詳細に検知できるので、利用者が意図しないときに誤って画面情報更新処理が実行される事態の発生を抑制することが可能となるという優れた効果が奏される。なお、その結果、画面情報更新処理を実行させるには利用者に対してより正確に電子機器を動かすことが要求されるようになるが、その動きは利用者ごとに最適化されているので操作性が悪化することはない。
以下、本発明を電子機器としての移動体通信端末である携帯電話機に適用した一実施形態について、図面を参照しながら説明する。
図2は、本実施形態に係る携帯電話機が利用可能な移動体通信システムの全体構成を説明するための説明図である。
この移動体通信システムにおいて、ユーザー1が使用する携帯電話機20は、ユーザー1によって登録されたアプリケーションプログラムを実行可能な構成を有している。本実施形態において、このアプリケーションプログラムは、プラットフォームに依存しないオブジェクト指向プログラミングによって開発されたものである。このようなアプリケーションプログラムとしては、JAVA(登録商標。以下同様。)で記述されたアプリケーションプログラム、BREW(登録商標。以下同様。)のアプリケーション実行環境上で動作するアプリケーションプログラムなどが挙げられる。この携帯電話機20は、通信ネットワークとしての携帯電話通信網10に接続可能である。また、この携帯電話通信網10には、プログラム提供用サーバとしてのアプリケーションプログラムダウンロードサーバ(以下、「ダウンロードサーバ」という。)11が接続されている。このダウンロードサーバ11は、携帯電話機20からのダウンロード要求を受け付けると、その要求に係るアプリケーションプログラムを携帯電話機20に対して送信する。
ダウンロードサーバ11から提供されるアプリケーションプログラムは、アプリケーションプログラムの開発元2から提供される。具体的には、例えば、アプリケーションプログラム開発元2側のパーソナルコンピュータ等から、専用回線や公衆回線を介してダウンロードサーバ11にアップロードして提供する。なお、開発したアプリケーションプログラムを記録した光ディスクや磁気ディスク等の記録媒体を、アプリケーションプログラム開発元2からダウンロードサーバ11を管理・運営する通信事業者に送り、その記録媒体内のアプリケーションプログラムをダウンロードサーバ11で読み取るようにして、提供してもよい。このようにして提供されたアプリケーションプログラムは、携帯電話機20から携帯電話通信網10を介してダウンロード可能な状態でダウンロードサーバ11に登録される。
図3は、上記ダウンロードサーバ11のハードウェア構成を示す概略構成図である。
このダウンロードサーバ11は、システムバス100、CPU101、内部記憶装置、外部記憶装置104、入力装置105及び出力装置106を備えている。上記内部記憶装置は、RAM102やROM103等で構成されている。上記外部記憶装置は、ハードディスクドライブ(HDD)や光ディスクドライブ等で構成されている。上記入力装置105は、外部記憶装置104、マウスやキーボード等で構成されている。上記出力装置106は、ディスプレイやプリンタ等で構成されている。更に、このダウンロードサーバ11は、携帯電話通信網10を介して各ユーザー1の携帯電話機20と通信するための携帯電話用通信装置107を備えている。
上記CPU101やRAM102等の構成要素は、システムバス100を介して、互いにデータやプログラムの命令等のやり取りを行っている。このダウンロードサーバ11を所定の手順に従って動作させるためのプログラムは、ROM103や外部記憶装置104に記憶されており、必要に応じてCPU101やRAM102上の作業エリアに呼び出されて実行される。また、このダウンロードサーバ11には、携帯電話機20に提供するアプリケーションプログラムが外部記憶装置104に記憶されている。ダウンロードサーバ11は、携帯電話機20からのダウンロード要求に応じ、CPU101、RAM102、携帯電話通信網用通信装置107等が協働して、外部記憶装置104に記憶されているアプリケーションプログラムを、携帯電話通信網10を介して携帯電話機20に送信する機能を有している。なお、このダウンロードサーバ11は、専用の制御装置として構成してもいいし、汎用のコンピュータシステムを用いて構成してもよい。また、1台のコンピュータで構成してもいいし、複数の機能をそれぞれ受け持つ複数台のコンピュータをネットワークで結んで構成してもよい。
図4は、上記携帯電話機20の外観を示す正面図であり、図5は、その携帯電話機20のハードウェア構成を示す概略構成図である。
この携帯電話機20は、クラムシェル(折り畳み)タイプの携帯電話機であり、システムバス200、CPU201、RAM202やROM203等からなる内部制御装置、入力装置204、出力装置205、携帯電話用通信装置206、加速度センサ207、地磁気センサ208を備えている。CPU201やRAM202等の構成要素は、システムバス200を介して、互いに各種データや後述のプログラムの命令等のやり取りを行っている。上記入力装置204は、データ入力キー(テンキー、*キー、#キー)21、通話開始キー22、終話キー23、スクロールキー24、多機能キー25、マイク26などから構成されている。上記出力装置205は、案内情報出力手段である表示手段としての液晶ディスプレイ(LCD)27、スピーカ28等から構成されている。上記携帯電話用通信装置206は、携帯電話通信網10を介して他の携帯電話機や上記ダウンロードサーバ11と通信するためのものである。また、RAM202内には、後述する電話機プラットフォームが管理する第1の記憶手段としてのプラットフォーム用記憶領域と、後述するアプリケーション実行環境上で管理される第2の記憶手段としてのアプリケーション用記憶領域とが存在する。
上記加速度センサ207は、データ入力キーが設けられた操作面に対して平行な面内で互いに直交する2方向(図4中、X軸方向及びY軸方向)に向かう加速度αX,αYと、その面の法線方向(図4中、Z軸方向)に向かう加速度αZとを検出する3軸の加速度センサである。この加速度センサ207は、携帯電話機20の内部に設けられた図示しない回路基板上に実装されており、上記加速度αX,αY,αZを検出できる公知のものを用いることができる。
また、上記地磁気センサ208は、上記X軸、Y軸、Z軸からなる3次元座標上における地磁気の磁界強度成分(磁束密度成分)を検知する3軸のセンサである。そして、本実施形態では、この地磁気センサ208の検知結果を利用して、X軸、Y軸及びZ軸のまわりの角度θX,θY,θZを検出する。具体的には、地磁気の方向が、基準となる地磁気の方向(基準方向)に対して変化したときの変化量を、X軸、Y軸及びZ軸のまわりの角度θX,θY,θZを用いて検出する。これにより、地磁気の方向が基準方向にあるときの姿勢から携帯電話機がその姿勢を変化させたとき、その変化後の姿勢を各角度θX,θY,θZによって特定することができる。なお、以下の説明では、X軸まわりの角度θXをピッチ角といい、Y軸まわりの角度θYをロール角といい、Z軸まわりの角度θZをヨー角という。また、ここでいうヨー角θZは、上記Y軸を水平面上に投影した水平投影Y軸と北方位との角度を示すものである。よって、このヨー角θZにより、携帯電話機20の水平投影Y軸が向いている方位を把握することができる。この地磁気センサ208も、携帯電話機20の内部に設けられた図示しない回路基板上に実装されている。
なお、上記加速度センサ207及び上記地磁気センサ208は、携帯電話機20の本体とは別体の装置として構成してもよい。この場合、上記加速度センサ207及び上記地磁気センサ208については、これらのセンサ207,208を備えた外部装置を、携帯電話機20の本体と一体になるように、詳しくは携帯電話機20の液晶ディスプレイ27と一体になるように接続する。
図6は、上記携帯電話機20の主要部を抽出して示したブロック図であり、図7は、その携帯電話機20におけるソフトウェア構造の説明図である。
この携帯電話機20は、無線通信手段としての電話通信部211及びデータ通信部212、キー操作手段としての操作部213、アプリケーションプログラム実行手段としてのアプリケーションプログラム実行管理部214、主制御部215、出力部216、検知手段としてのセンサ検知部217等を備えている。
上記電話通信部211は、他の携帯電話機や固定電話機と電話通信を行うために、携帯電話通信網10の基地局と無線通信を行うものであり、上述のハードウェア構成上の携帯電話用通信装置206等に対応する。
上記データ通信部212は、上記電話通信部211と同様に、上述のハードウェア構成上の携帯電話用通信装置206等に対応する。このデータ通信部212は、携帯電話通信網10を介して他の携帯電話機とメールのやり取りを行ったり、携帯電話通信網10からゲートウェイサーバを介して、インターネット等の外部の通信ネットワークに接続し、インターネット上での電子メールのやり取りやWebページの閲覧等を行ったりするためのものである。また、このデータ通信部212は、携帯電話通信網10を介して、ダウンロードサーバ11が提供するアプリケーションプログラムをダウンロードするためにも用いられる。
上記操作部213は、ユーザー1により操作される上述のテンキー21、通話開始キー22、終話キー23等で構成されている。この操作部213の各種キーを操作することにより、ユーザーは、携帯電話機20に対してURL等のデータを入力したり、電話着信の際に通話の開始及び終了を行ったり、アプリケーションプログラムの選択、起動及び停止を行ったりすることができる。また、ユーザーは操作部213の各種キーを操作することにより、上記ダウンロードサーバ11からアプリケーションプログラムをダウンロードすることもできる。
上記アプリケーションプログラム実行管理部214は、上述のシステムバス200、CPU201やRAM202の一部等で構成されている。このアプリケーションプログラム実行管理部214は、図7のソフトウェア構造上において中央の「アプリケーション実行環境」に対応しており、オブジェクト指向プログラミングで開発されたアプリケーションプログラムに利用されるクラスライブラリ、実行環境管理ライブラリ、アプリケーション管理等のソフトウェアを提供し、アプリケーションプログラムの実行環境を管理する。このアプリケーション実行環境は、実行するアプリケーションプログラムに応じて適宜選定される。例えば、実行するアプリケーションプログラムがJAVAで記述されたものである場合には、JAVAのアプリケーション実行環境を選定する。また、実行するアプリケーションプログラムがBREWの実行環境上で動作するC言語で記述されたものである場合には、BREWのアプリケーション実行環境を選定する。なお、実行するアプリケーションプログラムがJAVAで記述されたものである場合には、BREWのアプリケーション実行環境上に更にJAVAのアプリケーション実行環境を構築することで、これを実行することができる。
ここで、アプリケーションプログラムは、クラスライブラリAPI(アプリケーションインターフェース)を介して上記アプリケーション実行環境内にある関数等のfクラスライブラリを呼び出して使用できるようになっている。この関数等のクラスライブラリの呼び出しの履歴は、アプリケーションプログラムの仮想的な実行環境(仮想マシン:VM)が終了するまで、RAM202内におけるアプリケーション用記憶領域に記憶される。また、アプリケーション実行環境は、アプリケーションプログラムの実行に際して用いる各種データも、そのアプリケーション用記憶領域に保存する。そして、この各種データを用いるときには、このアプリケーション用記憶領域から読み出したり、書き込んだりする。また、アプリケーション実行環境内の実行環境管理ライブラリは、電話機プラットフォームAPIを介して後述の電話機プラットフォーム内の電話機プラットフォームライブラリを呼び出して使用できるようになっている。
本実施形態において、加速度センサ207及び地磁気センサ208等で構成される後述のセンサ検知部217で検知した検知データ(加速度αX,αY,αZ及びピッチ角θX、ロール角θY、ヨー角θZ)は、アプリケーションプログラムで利用される。従来のアプリケーション実行環境においては、アプリケーションプログラムが上記検知データを利用する手段がなかったため、本実施形態では、クラスライブラリに新しいクラス(Orientationクラス)を追加している。このOrientationクラスには、加速度αX,αY,αZのデータを取得するためのgetXGravity()、getYGravity()及びgetZGravity()や、ピッチ角θX、ロール角θY、ヨー角θZの各データを取得するためのgetPitch()、getRoll()、getCompassBearing()等の命令セットであるメソッドが用意されている。よって、本実施形態によれば、アプリケーションプログラムは、これらのメソッドを使用して上記検知データを取得し、これを利用することができる。
上記主制御部215は、上記電話通信部211、データ通信部212、出力部216、センサ検知部217を制御するものであり、上述のシステムバス200、CPU201やRAM202等で構成されている。この主制御部215は、アプリケーションプログラム実行管理部214との間で制御命令や各種データのやりとりを行い、これと協働して制御を行う。主制御部215は、図7のソフトウェア構造上において最下部の「電話機プラットフォーム」に対応しており、上記電話通信部211等を制御するための制御用プログラムやユーザインターフェースを実行したり、電話機プラットフォームライブラリを提供したりする。この電話機プラットフォームは、上記アプリケーション実行環境内の実行環境管理ライブラリに対してイベントを送ることにより、アプリケーションプログラムにおいて各種処理を実行したり、アプリケーション管理APIを介して上記アプリケーション実行環境内のアプリケーション管理のソフトウェアを呼び出して使用したりできるようになっている。また、アプリケーション実行環境が電話機プラットフォームAPIを介して電話機プラットフォームライブラリを呼び出して使用したとき、電話機プラットフォームは、その電話機プラットフォームライブラリに応じた処理を実行する。例えば、電話機プラットフォームは、電話機プラットフォームライブラリを利用したアプリケーション実行環境からの指示に基づき、RAM202内における電話機プラットフォームが管理するプラットフォーム用記憶領域に記憶されたデータを読み出して、これをアプリケーション用記憶領域に移行することができる。
上記出力部216は、上述の液晶ディスプレイ27、スピーカ28等からなる出力装置205等で構成されている。この出力部216は、上記データ通信部212で受信したWebページ画面を液晶ディスプレイ27に表示する。また、この出力部216の液晶ディスプレイ27は、上記電話通信部211やデータ通信部212で情報を着信した旨をユーザーに報知するときに用いられる。具体的には、その情報を着信すると、主制御部215により、出力部216の液晶ディスプレイ27に着信報知画像を表示したり、スピーカ28から着信音を出力させたりする。更に、この出力部216は、アプリケーション実行環境で実行されるアプリケーションプログラムの実行中に、そのプログラム実行に関連したメニュー画面等の表示、操作方法を説明するための案内情報の案内画面の表示、音楽の出力にも用いられる。
上記センサ検知部217は、上述の加速度センサ207や地磁気センサ208等で構成されている。このセンサ検知部217は、上記主制御部215の制御の下で動作し、その検知データは主制御部215が取得する。検知データである加速度αX,αY,αZのデータ、ピッチ角θX、ロール角θY及びヨー角θZのデータは、上述したようにRAM202のプラットフォーム用記憶領域に記憶される。例えば利用者が携帯電話機20を振ったり動かしたりして携帯電話機20に加速度が発生すると、その加速度のX軸方向、Y軸方向及びZ軸方向の各成分が、センサ検知部217を構成する加速度センサ207によって検知される。検知データが主制御部215に入力されると、主制御部215は、その検知データからX軸方向、Y軸方向及びZ軸方向の各加速度を把握することができる。加速度αX,αY,αZのデータは、主制御部215によって、RAM202内のプラットフォーム用記憶領域に一時保存される。
また、携帯電話機20の姿勢が変わると、その姿勢の変化後における磁界強度成分(磁束密度成分)がセンサ検知部217を構成する地磁気センサ208によって検知される。センサ検知部217は、地磁気センサ208で検知された検出信号から姿勢変化後のそれぞれの角度θx,θY,θZを算出する。算出した各角度θx,θY,θZのデータは、加速度αx,αY,αZの場合と同様に、主制御部215へ出力され、主制御部215によってRAM202内のプラットフォーム用記憶領域に一時保存される。
また、携帯電話機20の向きが変わると、その向きの変化後における磁界強度成分(磁束密度成分)がセンサ検知部217を構成する地磁気センサ208によって検知される。センサ検知部217は、地磁気センサ208で検知された検出信号から向きの変化後におけるヨー角θZを算出する。算出したヨー角θZのデータも、同様に、主制御部215へ出力され、主制御部215によってRAM202内のプラットフォーム用記憶領域に一時保存される。
なお、プラットフォーム記憶領域へ保存する加速度αx,αY,αZや各角度θx,θY,θZのデータを、主制御部215がセンサ検知部217から取得する方法としては、次のようなものが挙げられる。例えば、主制御部215からセンサ検知部217へリクエストを送り、これに応じてセンサ検知部217が出力したデータを主制御部215が受信する取得方法である。また、例えば、リクエストがなくてもセンサ検知部217が連続的に出力するデータを、主制御部215が適宜受信する取得方法を採用してもよい。また、アプリケーションプログラムがアプリケーションプログラム実行管理部214を介して出力したリクエストに応じて主制御部215がセンサ検知部217へリクエストを送り、これに応じてセンサ検知部217が出力したデータを主制御部215が受信する取得方法を採用することもできる。
携帯電話機20を所定の手順に従って動作させる電話機プラットフォームを構築するための制御用プログラムは、RAM202やROM203に記憶されている。また、基本OS(オペレーティングシステム)のプログラムや、上記アプリケーション実行環境を構築するためのプログラム及びアプリケーションプログラムも、RAM202やROM203に記憶されている。そして、これらのプログラムは、必要に応じてCPU201やRAM202中の作業エリアに呼び出されて実行される。
次に、上記加速度αx,αY,αZや各角度θx,θY,θZのデータを用いたアプリケーションプログラムを実行するための処理動作について説明する。本実施形態では、このアプリケーションプログラムは、ゲームであるフライトシミュレータである。
図8は、フライトシミュレータ用アプリケーションプログラムを実行するための処理の流れを示すフローチャートである。
まず、ユーザー1は、フライトシミュレータ用アプリケーションプログラムを上記ダウンロードサーバ11からダウンロードして取得し、これを登録する(S1)。具体的には、ユーザー1は、操作部213のキーを操作して、ダウンロードサーバ11にアクセスする。これにより、ダウンロード可能なアプリケーションプログラムを選択するためのダウンロード選択画面が液晶ディスプレイ27上に表示される。そして、そのダウンロード選択画面において、実行対象となるアプリケーションプログラムをスクロールキー24を用いて選択し、多機能キー25を押下すると、主制御部215がデータ通信部212を制御して、そのアプリケーションプログラムをダウンロードサーバ11からダウンロードする。このようにしてダウンロードされたアプリケーションプログラムは、主制御部215により、RAM102に記憶される。
ダウンロードしたアプリケーションプログラムを実行する場合、ユーザー1は、操作部213のキーを操作して、実行するアプリケーションプログラムを選択するためのアプリケーション選択画面を液晶ディスプレイ27上に表示させる。そして、そのアプリケーション選択画面において、実行対象であるフライトシミュレータ用アプリケーションプログラムをスクロールキー24を用いて選択し、多機能キー25を押下する。すると、図7に示した電話機プラットフォームすなわち図6に示した主制御部215に、アプリケーションプログラムの実行指示が入力される(S2)。これにより、主制御部215は、フライトシミュレータ用アプリケーションプログラムを読み出してこれを起動する(S3)。アプリケーションプログラムが起動すると、図7に示したアプリケーション実行環境すなわち図6に示したアプリケーションプログラム実行管理部214上で、そのアプリケーションプログラムが動作する。
このプログラムが起動すると、まず、液晶ディスプレイ27にメニュー画面が表示される(S4)。このメニュー画面は、ゲームモードと、後述する設定モードとのいずれかを選択するための画面である。ユーザー1は、操作部213のスクロールキー24を操作するか又は後述する参考例2の設定モードの実行により設定された動きをさせるかして、後述する設定モードを選択すると(S5)、初期設定処理が行われる(S20)。この初期設定処理についての詳細は後述する。
一方、ユーザー1は、ゲームを開始する場合、操作部213のスクロールキー24を操作するか又は後述する設定モードの実行により設定した動きをさせるかして、ゲームモードを選択する(S5)。これにより、出力部216の液晶ディスプレイ27に、基本姿勢の設定についての案内情報が表示される(S6)。この案内情報は、例えば、「ゲームを行うときの携帯電話機の持ち方を決めて多機能キーを押下してください。」というようなメッセージとして表示する。なお、この案内情報の出力に関しては、液晶ディスプレイ27の表示とともに又はこれに代えて、出力部216の外部スピーカ等を用いて音声で案内するようにしてもよい。また、このような案内情報の内容は、取扱説明書等で説明し、案内情報の出力を省略してもよい。この案内情報により案内を受けたユーザー1は、自分がゲームを行いやすい持ち方、例えば携帯電話機が図10(a)に示すような姿勢となるように、携帯電話機を把持した後、特定キーである多機能キー25を押下する(S7)。すると、アプリケーションプログラム実行管理部214は、保存手段として機能し、その押下時にアプリケーションプログラムが取得した角度データθX,θY,θZを、基本姿勢データθX0,θY0,θZ0として、RAM202内のアプリケーション用記憶領域(基本姿勢データ記憶手段)に保存する(S8,S9)。この基本姿勢データに基づき、多機能キーの押下時における携帯電話機20の姿勢(基本姿勢)を把握することができる。
その後、ユーザー1がゲームを開始するためのキー操作を行うと(S10)、ゲームが開始される。これにより、出力部216の液晶ディスプレイ27に、飛行機の操縦席からの視界を擬似的に表したゲーム画面が表示される。そして、アプリケーションプログラムは、センサ検知部217によって検知されるピッチ角θX、ロール角θY及びヨー角θZのデータをほぼリアルタイムで取得するための角度データ取得処理を開始する。そして、そのプログラムは、取得したデータに応じて液晶ディスプレイ27に表示されるゲーム画面の内容を更新する。例えば、ユーザー1が携帯電話機20のアンテナ側を鉛直方向下方に傾けると、これによりピッチ角θXが変化し、ゲーム上の飛行機の機首が鉛直方向下方に向いたゲーム画面に更新される。また、例えば、ユーザー1が携帯電話機20の液晶ディスプレイ27の表示面を左側に傾けると、これによりロール角θYが変化し、ゲーム上の飛行機が左側に傾いたゲーム画面に更新される。
具体的に説明すると、例えば、ユーザー1がゲーム上の飛行機の機首を鉛直方向下方に向けるべく、携帯電話機20を図10(a)中矢印Aに示す方向に傾けると、携帯電話機20は図10(b)に示す姿勢をとる。この姿勢変化後の姿勢がセンサ検知部217の地磁気センサ208によって検知され、その角度θX,θY,θZのデータがアプリケーションプログラムに受け渡される(S11)。これにより、アプリケーションプログラム実行管理部214は、アプリケーションプログラムの内容に従い、液晶ディスプレイ27にゲーム画面を表示させるためのゲーム画面情報を更新する(S12)。例えば携帯電話機20を図10(a)の基本姿勢から図10(b)に示す姿勢へ変化させた場合、飛行機の操縦席からの視界を擬似的に表したゲーム画面が画面上方向へスクロールし、あたかもゲーム上の飛行機の機首が鉛直方向下方に向いたようなゲーム画面情報に更新する。その後、更新後のゲーム画面を液晶ディスプレイ27の表示面に描画するための処理を実行する(S13)。このように基本姿勢からの姿勢変化に基づいてゲーム画面情報の更新処理を行うことで、ユーザー1がゲームを行う際の携帯電話機の姿勢がどのような姿勢であっても、適切な更新処理を行うことができる。
なお、角度データの取得処理においては、図9に示すように、アプリケーション実行環境において、起動したアプリケーションプログラムが、アプリケーションプログラム実行管理部214に対して、角度データの取得要求を送る。これを受けたアプリケーションプログラム実行管理部214は、電話機プラットフォームの主制御部215に対してデータ移行命令である角度データの取得要求を送る。これを受けた主制御部215は、RAM202内のプラットフォーム用記憶領域に記憶したピッチ角θX、ロール角θY及びヨー角θZのデータを、アプリケーションプログラム実行管理部214に送り、これらのデータはアプリケーションプログラムに渡される。そして、ピッチ角θX、ロール角θY及びヨー角θZのデータを取得したアプリケーションプログラムは、そのデータを、RAM202内のアプリケーション用記憶領域に記憶する。そして、ピッチ角θX、ロール角θY及びヨー角θZに基づいて、出力部216へ出力するゲーム画面情報を更新する。
上記ゲーム画面情報の更新処理の具体的な内容は、次のとおりである。
アプリケーションプログラムを実行するアプリケーションプログラム実行管理部214は、上記S9で取得した各角度θX,θY,θZのデータと、アプリケーション用記憶領域に記憶された基本姿勢データθX0,θY0,θZ0との差分をそれぞれ算出する。ここで、例えば、携帯電話機20を図10(a)の基本姿勢から図10(b)に示す姿勢へ変化させたとする。この場合、ピッチ角θXだけが基本姿勢から変化する。このときのピッチ角θXのデータと基本姿勢データθX0との差分を算出することにより、携帯電話機20のY軸が図10(a)に示した基本姿勢からX軸のまわりをマイナス方向(回転方向)へどのくらいの角度(回転角変位)で回転したかを把握することができる。そして、アプリケーションプログラム実行管理部214は、把握した回転方向及び回転角変位に応じて、飛行機の操縦席からの視界を擬似的に表したゲーム画面が画面上方向へスクロールし、あたかもゲーム上の飛行機の機首が鉛直方向下方に向いたようなゲーム画面情報に更新する。
〔動作例1〕
次に、本発明の特徴部分である初期設定処理について説明する。
図1は、メニュー画面においてユーザー1が設定モードを選択したときに行われる初期設定処理のうち、最大ピッチ角と最大ロール角を設定する処理の流れを示すフローチャートである。ここで、最大ピッチ角の設定とは、ゲーム上の飛行機において操縦可能な最大のピッチ角に対応するピッチ角θXを設定することを意味する。また、最大ロール角の設定とは、ゲーム上の飛行機において操縦可能な最大のロール角に対応するロール角θYを設定することを意味する。なお、本実施形態では、ゲーム上の飛行機を操縦するにあたりヨー角データは用いないので、最大ヨー角の設定については行わない。
ユーザー1がメニュー画面において設定モードを選択して表示された設定モード選択画面において、ユーザー1が最大ピッチ角と最大ロール角の設定モードを選択すると、出力部216の液晶ディスプレイ27に、最大ピッチ角の設定についての案内情報が表示される(S21)。この案内情報は、例えば、「多機能キーを押下した後、ゲーム上の飛行機において操縦可能な最大のピッチ角とする角度まで、アンテナが奥側へ移動するように携帯電話機を傾けた後、もう一度多機能キーを押下してください。」というようなメッセージとして表示する。なお、この案内情報の出力に関しては、液晶ディスプレイ27の表示とともに又はこれに代えて、出力部216の外部スピーカ等を用いて音声で案内するようにしてもよい。後述する案内情報についても同様である。この案内情報により案内を受けたユーザー1が多機能キーを押下すると(S22)、アプリケーションプログラムは、センサ検知部217によって検知されるピッチ角θXのデータをほぼリアルタイムで取得するための角度データ取得処理を開始する(S23)。そして、ユーザー1は、携帯電話機20を傾けていき、そのピッチ角θXがゲーム上の飛行機において操縦可能な最大のピッチ角になる自分の好みの角度になったところで多機能キーを押下する。これにより、アプリケーションプログラム実行管理部214は、保存手段として機能し、その押下時点におけるピッチ角θXのデータを、動き特定データである最大ピッチ角基準データθXmaxとして、RAM202内のアプリケーション用記憶領域における基準データ記憶領域(記憶手段)に保存する(S24)。
このようにして最大ピッチ角の設定処理が終わったら、続いて最大ロール角の設定処理を行う。具体的には、上記S24の保存処理が終了したら、出力部216の液晶ディスプレイ27に、最大ロール角の設定についての案内情報を表示する(S25)。この案内情報では、例えば、「多機能キーを押下した後、ゲーム上の飛行機において操縦可能な最大のロール角とする角度まで、キー操作面上の縦軸(Y軸)が回転軸となるように携帯電話機を傾けた後、もう一度多機能キーを押下してください。」というようなメッセージとして表示する。この案内情報により案内を受けたユーザー1が多機能キーを押下すると(S26)、アプリケーションプログラムは、センサ検知部217によって検知されるロール角θYのデータをほぼリアルタイムで取得するための角度データ取得処理を開始する(S27)。そして、ユーザー1は、携帯電話機20を傾けていき、そのピッチ角θYがゲーム上の飛行機において操縦可能な最大のロール角になる自分の好みの角度になったところで多機能キーを押下する。これにより、アプリケーションプログラム実行管理部214は、保存手段として機能し、その押下時点におけるロール角θYのデータを、動き特定データである最大ロール角基準データθYmaxとして、RAM202内のアプリケーション用記憶領域における基準データ記憶領域に保存する(S28)。
以上のようにして、最大ピッチ角と最大ロール角についての初期設定処理を終えた後、ユーザー1はゲームを開始する。このゲーム中におけるゲーム画面情報の更新処理において、アプリケーションプログラム実行管理部214は、まず、上記S9で取得した各角度θX,θY,θZのデータと、基準データ記憶領域に記憶された基本姿勢データθX0,θY0,θZ0との差分をそれぞれ算出する。ここで、例えば、携帯電話機20を図10(a)の基本姿勢から図10(b)に示す姿勢へ変化させたとき、このときのピッチ角θXのデータと基本姿勢データθX0との差分データが算出される。これにより、携帯電話機20のY軸が図10(a)に示した基本姿勢からX軸のまわりをマイナス方向(回転方向)へどのくらいの角度(回転角変位)で回転したかを把握することができる。そして、アプリケーションプログラム実行管理部214は、制御手段として機能し、算出した差分データの絶対値を、上記基準データ記憶領域に記憶されている最大ピッチ角基準データθXmaxで割った値を算出する。この算出値は、携帯電話機20のY軸が図10(a)に示した基本姿勢からX軸のまわりを最大ピッチ角の何パーセント回転したかを示すものとなる。その後、アプリケーションプログラム実行管理部214は、この算出値と把握した回転方向とに応じてゲーム画面情報に更新する処理(特定処理)を行う。
この算出値が大きいほど、ゲーム上の飛行機のピッチ角の変化が大きく、この算出値が小さいほど、ゲーム上の飛行機のピッチ角の変化が小さい。よって、ゲーム上において飛行機を繊細に操縦したいユーザーは、最大ピッチ角の初期設定処理時に、最大ピッチ角基準データθXmaxが大きな値をとるように設定すればよい。この場合、携帯電話機20の姿勢を変えたときのピッチ角θXが同じとき、最大ピッチ角基準データθXmaxが小さい場合に比べて、上記算出値が小さくなり、ゲーム上の飛行機のピッチ角の変化が小さくなる。したがって、ゲーム上の飛行機のピッチ角をより細かく変化させることが可能となり、繊細な操縦が可能になる。
なお、回転角変位だけでなく、回転角速度をゲーム上の飛行機の操縦に反映させてもよい。例えば、携帯電話機20の姿勢変化が急激に行われると、ピッチ角θXについての回転角速度が大きくなる。この場合、ゲーム上の飛行機のピッチ角も急激に変化したとして、ゲーム内容に反映させることができる。回転角速度は、例えばピッチ角θXについては、取得したピッチ角θXをその取得タイミングの周期で割った値を用いることができる。
以上の説明では、ピッチ角θXについて説明したが、ロール角θYについても同様の効果を得ることができる。
参考例2〕
次に、メニュー画面においてユーザー1が設定モードを選択したときに行われる初期設定処理のうち、モード選択の操作方法を設定する処理について説明する。本処理は、メニュー画面においてゲームモードと設定モードとのいずれかを選択するための操作方法を、ユーザー1の好みに応じて設定するものである。
図11は、モード選択の操作方法を設定する処理の流れを示すフローチャートである。ユーザー1がメニュー画面において設定モードを選択して表示された設定モード選択画面において、ユーザー1がモード選択の操作方法の設定モードを選択すると、出力部216の液晶ディスプレイ27に、カーソル移動操作の設定についての案内情報が表示される(S31)。この案内情報は、例えば、「多機能キーを押下した後、メニュー画面上のカーソルを進ませるための動作を行ってください。」というようなメッセージとして表示する。この案内情報により案内を受けたユーザー1が多機能キーを押下すると(S32)、アプリケーションプログラムは、センサ検知部217によって検知される加速度αX,αY,αZのデータをほぼリアルタイムで取得するための加速度データ取得処理を開始する(S33)。そして、ユーザー1は、自分の好みの方向及び強さで、携帯電話機20を移動させる。これにより、アプリケーションプログラム実行管理部214は、携帯電話機に加速度が発生してからその加速度がなくなるまでの間の各加速度αX,αY,αZのデータの絶対値の最大値を取得する。そして、アプリケーションプログラム実行管理部214は、保存手段として機能し、取得した各加速度について、その最大値を中心とした所定の大きさ範囲及びその方向を中心とした所定の角度範囲(以下、これらの範囲を「加速度範囲」という。)をそれぞれ特定するためのデータを、動き特定データであるカーソル移動基準データとして、RAM202内のアプリケーション用記憶領域における基準データ記憶領域(記憶手段)に保存する(S34)。
このようにしてカーソル移動操作の設定処理が終わったら、続いて選択決定操作の設定処理を行う。具体的には、上記S34の保存処理が終了したら、出力部216の液晶ディスプレイ27に、選択決定操作の設定についての案内情報を表示する(S35)。この案内情報は、例えば、「多機能キーを押下した後、メニュー画面上のカーソルの選択を確定させるための動作を行ってください。ただし、メニュー画面上のカーソルを進ませるための動作とは異なる動作を行ってください。」というようなメッセージとして表示する。この案内情報により案内を受けたユーザー1が多機能キーを押下すると(S36)、アプリケーションプログラムは、センサ検知部217によって検知される加速度αX,αY,αZのデータをほぼリアルタイムで取得するための加速度データ取得処理を開始する(S37)。そして、ユーザー1は、自分の好みに応じて、カーソル移動操作について設定した動きとは異なる方向及び強さで、携帯電話機20を移動させる。これにより、アプリケーションプログラム実行管理部214は、携帯電話機に加速度が発生してからその加速度がなくなるまでの間の各加速度αX,αY,αZのデータの絶対値の最大値を取得する。そして、アプリケーションプログラム実行管理部214は、保存手段として機能し、取得した各加速度について、その加速度範囲をそれぞれ特定するためのデータを、動き特定データである選択決定移動基準データとして、上記基準データ記憶領域(記憶手段)に保存する(S38)。
図12は、メニュー画面においてモード選択を行うときの処理の流れを示すフローチャートである。
モード選択の操作方法についての初期設定処理を終えた後、液晶ディスプレイ27に表示されたメニュー画面においてモード選択を行う。この場合、ユーザー1は、上記モード選択操作方法の設定処理で設定した動きを行うことで、メニュー画面上のカーソルを移動させたり、カーソルで選択されたモードを決定したりすることができる。具体的には、メニュー画面が液晶ディスプレイ27に表示されているときに(S41)、ユーザー1が携帯電話機20を移動させると、センサ検知部217の加速度センサ207によって加速度が検知され、その加速度αX,αY,αZのデータがアプリケーションプログラムに受け渡される(S42)。アプリケーションプログラム実行管理部214は、制御手段として機能し、この取得した各角度θX,θY,θZのデータが、上記基準データ記憶領域に記憶されたカーソル移動基準データにより特定される加速度範囲内に含まれるか否かを判断する(S43)。このS43の判断において含まれると判断されたら、アプリケーションプログラム実行管理部214は、カーソル移動処理(特定処理)を行う(S44)。具体的には、メニュー画面上に表示されているカーソル画像の位置を、次のモードの位置へ移動させる処理を行う。一方、上記S43の判断において含まれないと判断されたら、アプリケーションプログラム実行管理部214は、この取得した各角度θX,θY,θZのデータが、上記基準データ記憶領域に記憶された選択決定基準データにより特定される加速度範囲内に含まれるか否かを判断する(S45)。このS45の判断において含まれると判断されたら、アプリケーションプログラム実行管理部214は、メニュー画面上においてカーソルで選択されているモードへ移行する処理(特定処理)を行う(S46)。具体的には、カーソルがゲームモードを選択している場合には上述したゲームが開始され、カーソルが設定モードを選択している場合には上述した設定モードが開始される。
なお、以上の説明では、加速度αx,αY,αZのデータを用いてカーソルの移動及び選択決定を行う場合について説明したが、各角度θx,θY,θZのデータを用いても同様に行うことができる。
なお、本実施形態では、センサ検知部217から送信されてくる加速度αx,αY,αZや各角度θx,θY,θZのデータを、電話機プラットフォーム上に構築されるアプリケーション実行環境上で動作するプラットフォームに依存しないアプリケーションプログラムで利用する場合について説明したが、プラットフォームに依存するアプリケーションプログラムすなわち電話機プラットフォーム上で直接動作するものであっても同様である。
また、本発明は、上述したフライトシミュレータのようなゲームのほか、例えば、液晶ディスプレイ27に表示されるゲーム画面上においてゲーム内の仮想のボールを穴に落とすというゲームに適用しても有用である。この場合、そのアプリケーションプログラムは、例えば、携帯電話機20を傾けることで、仮想のボールがその傾きの方向に移動するような内容とする。
また、本実施形態では、ゲーム上の飛行機を操縦するための処理、メニュー画面のモードを選択する処理を例に挙げて説明したが、本発明は、他の処理にも広く適用することができる。例えば、メール閲覧画面や、登録された知人の電話番号等を閲覧する登録データ閲覧画面などの画面スクロールにも同様に適用することができる。
また、本発明は、上述した携帯電話機20に限らず、広く電子機器全般について適用することができる。
実施形態における携帯電話機で実行されるアプリケーションプログラム中に用いる最大ピッチ角と最大ロール角を設定する初期設定処理の流れを示すフローチャート。 同携帯電話機が利用可能な移動体通信システムの全体構成を説明するための説明図。 同移動体通信システムを構成するダウンロードサーバのハードウェア構成を示す概略構成図。 同携帯電話機の外観を示す正面図。 同携帯電話機のハードウェア構成を示す概略構成図。 同携帯電話機の主要部を抽出して示したブロック図。 同携帯電話機におけるソフトウェア構造の説明図。 同携帯電話機でアプリケーションプログラムを実行するための処理の流れを示すフローチャート。 同携帯電話機でアプリケーションプログラムを実行する際のシーケンスフロー図。 及び(b)は、同携帯電話機をX軸まわりに回転させて姿勢を変えたときの説明図。 携帯電話機でアプリケーションプログラムを実行する際のメニュー画面において行うモード選択の操作方法を設定する処理の流れを示すフローチャート。 同メニュー画面においてモード選択を行うときの処理の流れを示すフローチャート。
符号の説明
10 携帯電話通信網
11 ダウンロードサーバ
20 携帯電話機
27 液晶ディスプレイ
207 加速度センサ
208 地磁気センサ
214 アプリケーションプログラム実行管理部
215 主制御部
216 出力部
217 センサ検知部

Claims (5)

  1. 利用者により操作されるキーを備えたキー操作手段と、当該電子機器の動きを検知するための検知手段と、該検知手段により当該電子機器の動きの検知を行って得た検知データ又はこれを演算したデータに基づいて画面情報更新処理を実行する制御手段とを備えた電子機器において、
    上記画面情報更新処理を実行させるときの予め決められた所定方向への当該電子機器の動き幅の最大値に対応する最大基準データを記憶する記憶手段と、
    上記キー操作手段に対する所定のキー操作を行い、該所定方向への当該電子機器の動き幅の最大値を生じさせるべく当該電子機器を動かすように、当該電子機器の操作を促す案内情報を出力する案内情報出力手段と、
    該案内情報出力手段により該案内情報を出力した後に該所定のキー操作が行われて当該電子機器が動かされたときの上記検知手段による検知データ又はこれを演算したデータを、上記最大基準データとして該記憶手段に保存する保存手段とを有し、
    上記制御手段は、該最大基準データを保存した後に該検知手段が該所定方向への当該電子機器の動きを検知したとき、その検知データ又はこれを演算したデータの値を該記憶手段に記憶されている該最大基準データの値で割った値に応じて、上記画面情報更新処理を実行することを特徴とする電子機器。
  2. 請求項1の電子機器において、
    上記検知手段として、当該電子機器に発生する加速度を検知する加速度検知手段を用いたことを特徴とする電子機器。
  3. 請求項2の電子機器において、
    上記加速度検知手段は、上記加速度の大きさ及び向きを検知するものであることを特徴とする電子機器。
  4. 請求項1の電子機器において、
    上記検知手段として、当該電子機器の姿勢変化を検知する姿勢変化検知手段を用いたことを特徴とする電子機器。
  5. 請求項4の電子機器において、
    上記姿勢変化検知手段として、当該電子機器に発生する回転角変位又は回転角速度並びに回転方向を検知する回転検知手段を用いたことを特徴とする電子機器。
JP2004208065A 2004-07-15 2004-07-15 電子機器 Expired - Fee Related JP4220943B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2004208065A JP4220943B2 (ja) 2004-07-15 2004-07-15 電子機器
EP05765174.7A EP1783591B1 (en) 2004-07-15 2005-07-04 Electronic device
US11/632,505 US8624838B2 (en) 2004-07-15 2005-07-04 Electronic apparatus
ES05765174.7T ES2527440T3 (es) 2004-07-15 2005-07-04 Aparato electrónico
PCT/JP2005/012315 WO2006008946A1 (ja) 2004-07-15 2005-07-04 電子機器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004208065A JP4220943B2 (ja) 2004-07-15 2004-07-15 電子機器

Publications (2)

Publication Number Publication Date
JP2006031307A JP2006031307A (ja) 2006-02-02
JP4220943B2 true JP4220943B2 (ja) 2009-02-04

Family

ID=35785066

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004208065A Expired - Fee Related JP4220943B2 (ja) 2004-07-15 2004-07-15 電子機器

Country Status (5)

Country Link
US (1) US8624838B2 (ja)
EP (1) EP1783591B1 (ja)
JP (1) JP4220943B2 (ja)
ES (1) ES2527440T3 (ja)
WO (1) WO2006008946A1 (ja)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101403172B1 (ko) * 2005-05-17 2014-06-03 퀄컴 인코포레이티드 방위-감응 신호 출력
JP5173174B2 (ja) * 2006-09-13 2013-03-27 任天堂株式会社 ゲーム装置、ゲームプログラム、ゲームシステム、およびゲーム処理方法
US20080082928A1 (en) * 2006-09-29 2008-04-03 Sbc Knowledge Ventures, L.P. Method for viewing information in a communication device
US8972268B2 (en) * 2008-04-15 2015-03-03 Facebook, Inc. Enhanced speech-to-speech translation system and methods for adding a new word
US9070363B2 (en) * 2007-10-26 2015-06-30 Facebook, Inc. Speech translation with back-channeling cues
JP4983210B2 (ja) * 2006-11-10 2012-07-25 セイコーエプソン株式会社 表示項目選択システム、操作デバイス、及び、表示項目選択方法
US20090265671A1 (en) * 2008-04-21 2009-10-22 Invensense Mobile devices with motion gesture recognition
JP4129036B1 (ja) 2007-03-02 2008-07-30 株式会社コナミデジタルエンタテインメント 入力装置、入力制御方法、ならびに、プログラム
TWI362605B (en) * 2007-08-30 2012-04-21 Ind Tech Res Inst Method for adjusting sensing range and sensitivity and inertia interactive apparatus and system using thereof
JP5005627B2 (ja) * 2008-07-10 2012-08-22 任天堂株式会社 情報処理プログラムおよび情報処理装置
US8456420B2 (en) * 2008-12-31 2013-06-04 Intel Corporation Audible list traversal
US9542010B2 (en) * 2009-09-15 2017-01-10 Palo Alto Research Center Incorporated System for interacting with objects in a virtual environment
JP2011233064A (ja) * 2010-04-30 2011-11-17 Sony Corp 情報処理装置及び表示画面操作方法
JP5700511B2 (ja) * 2010-10-07 2015-04-15 埼玉日本電気株式会社 携帯端末、認証方法、及びプログラム
US8605048B2 (en) 2010-11-05 2013-12-10 Bluespace Corporation Method and apparatus for controlling multimedia contents in realtime fashion
EP2497546A3 (en) 2011-03-08 2012-10-03 Nintendo Co., Ltd. Information processing program, information processing system, and information processing method
JP6041466B2 (ja) * 2011-06-01 2016-12-07 任天堂株式会社 情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法
EP2497545B1 (en) 2011-03-08 2019-08-07 Nintendo Co., Ltd. Information processing program, information processing system, and information processing method
EP2497547B1 (en) 2011-03-08 2018-06-27 Nintendo Co., Ltd. Information processing program, information processing apparatus, information processing system, and information processing method
JP6041467B2 (ja) * 2011-06-01 2016-12-07 任天堂株式会社 情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法
JP5792971B2 (ja) 2011-03-08 2015-10-14 任天堂株式会社 情報処理システム、情報処理プログラム、および情報処理方法
US9561443B2 (en) 2011-03-08 2017-02-07 Nintendo Co., Ltd. Computer-readable storage medium, information processing system, and information processing method
EP2497543A3 (en) 2011-03-08 2012-10-03 Nintendo Co., Ltd. Information processing program, information processing system, and information processing method
US11599907B2 (en) 2012-05-14 2023-03-07 Iqzone, Inc. Displaying media content on portable devices based upon user interface state transitions
US11663628B2 (en) 2012-05-14 2023-05-30 Iqzone, Inc. Systems and methods for unobtrusively displaying media content on portable devices
US8924252B2 (en) * 2012-05-14 2014-12-30 Iqzone, Inc. Systems and methods for providing timely advertising to portable devices
FR2982722B3 (fr) * 2012-06-20 2014-03-14 Samsung Electronics Co Ltd Dispositif d'affichage, dispositif de commande a distance et fonction de commande connexe
CN104216505B (zh) * 2013-05-29 2019-01-08 腾讯科技(深圳)有限公司 便携智能终端的控制方法和装置
CN104268511A (zh) * 2014-09-17 2015-01-07 河海大学常州校区 一种基于三轴加速度传感器的网球运动模式识别系统及其方法
CN107783707B (zh) * 2016-08-29 2021-06-15 斑马智行网络(香港)有限公司 内容显示方法、内容显示装置及智能穿戴设备
US11736776B2 (en) 2019-10-25 2023-08-22 Iqzone, Inc. Monitoring operating system methods to facilitate unobtrusive display of media content on portable devices

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6069594A (en) * 1991-07-29 2000-05-30 Logitech, Inc. Computer input device with multiple switches using single line
JPH0764754A (ja) 1993-08-24 1995-03-10 Hitachi Ltd 小型情報処理装置
JPH0944297A (ja) 1995-07-25 1997-02-14 Canon Inc データ入力方法及びその装置
IL121843A (en) * 1997-09-28 2000-06-29 Dspc Israel Ltd Detection in the presence of co-channel interference
GB2347593B (en) 1999-01-06 2001-05-23 Motorola Inc Apparatus and method for using motion to input information to a wireless communication device
US7145551B1 (en) * 1999-02-17 2006-12-05 Microsoft Corporation Two-handed computer input device with orientation sensor
WO2001086920A2 (en) * 2000-05-12 2001-11-15 Zvi Lapidot Apparatus and method for the kinematic control of hand-held devices
WO2002041178A1 (en) 2000-11-20 2002-05-23 British Telecommunications Public Limited Company Information provider
JP3776808B2 (ja) 2001-02-27 2006-05-17 埼玉日本電気株式会社 携帯端末
US6798429B2 (en) * 2001-03-29 2004-09-28 Intel Corporation Intuitive mobile device interface to virtual spaces
JP3902508B2 (ja) * 2002-05-20 2007-04-11 任天堂株式会社 ゲームシステムおよびゲームプログラム
US7180500B2 (en) * 2004-03-23 2007-02-20 Fujitsu Limited User definable gestures for motion controlled handheld devices
US7176888B2 (en) * 2004-03-23 2007-02-13 Fujitsu Limited Selective engagement of motion detection
US20050212760A1 (en) * 2004-03-23 2005-09-29 Marvit David L Gesture based user interface supporting preexisting symbols
US7173604B2 (en) * 2004-03-23 2007-02-06 Fujitsu Limited Gesture identification of controlled devices
US7301529B2 (en) * 2004-03-23 2007-11-27 Fujitsu Limited Context dependent gesture response
US7365735B2 (en) * 2004-03-23 2008-04-29 Fujitsu Limited Translation controlled cursor
US7365737B2 (en) * 2004-03-23 2008-04-29 Fujitsu Limited Non-uniform gesture precision
US7176887B2 (en) * 2004-03-23 2007-02-13 Fujitsu Limited Environmental modeling for motion controlled handheld devices
JP2006031515A (ja) * 2004-07-20 2006-02-02 Vodafone Kk 移動体通信端末、アプリケーションプログラム、画像表示制御装置及び画像表示制御方法
US7577665B2 (en) * 2005-09-14 2009-08-18 Jumptap, Inc. User characteristic influenced search results
US20070118533A1 (en) * 2005-09-14 2007-05-24 Jorey Ramer On-off handset search box
GB0600678D0 (en) 2006-01-13 2006-02-22 Vodafone Plc Search platform
KR100792290B1 (ko) * 2006-06-08 2008-01-07 삼성전자주식회사 지자기센서 및 가속도센서를 구비한 입력 장치, 입력장치의 모션에 따라 커서를 표시하는 디스플레이 장치,이를 이용한 커서 표시 방법
KR101185589B1 (ko) * 2008-11-14 2012-09-24 (주)마이크로인피니티 움직임 감지를 통한 사용자 명령 입력 방법 및 디바이스

Also Published As

Publication number Publication date
WO2006008946A1 (ja) 2006-01-26
US20080254821A1 (en) 2008-10-16
ES2527440T3 (es) 2015-01-23
JP2006031307A (ja) 2006-02-02
EP1783591A4 (en) 2009-01-07
EP1783591A1 (en) 2007-05-09
EP1783591B1 (en) 2014-12-10
US8624838B2 (en) 2014-01-07

Similar Documents

Publication Publication Date Title
JP4220943B2 (ja) 電子機器
EP1783592B1 (en) Mobile communication terminal, application program, image display control apparatus, electronic device, and image display control method
JP4179614B2 (ja) 移動体通信端末用外部装置、移動体通信端末及び移動体通信端末用外部表示システム
EP1785854B1 (en) Electronic appliance
WO2006004063A1 (ja) 電子機器
WO2005039154A1 (ja) 移動体通信端末及びアプリケーションプログラム
JP4332525B2 (ja) 移動体通信端末
JP3959393B2 (ja) 移動体通信端末
JP2003256129A (ja) 携帯端末装置及びその制御方法
JP4149893B2 (ja) 移動体通信端末及びアプリケーションプログラム
JP2008070884A (ja) 移動体通信端末
JP5033616B2 (ja) 電子機器
JP4394742B2 (ja) 移動体通信端末及びアプリケーションプログラム
JP4331239B2 (ja) 移動体通信端末及びアプリケーションプログラム
JP2005227899A (ja) 情報通信端末
JP2006011106A (ja) 表示装置及びこれを備えた移動体通信端末
JP2005242283A (ja) 移動体通信端末

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080407

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080523

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080717

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20080729

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20081017

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081114

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111121

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131121

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees