(57)【要約】【課題】コンピュータの移動を検知した場合にのみコンピュータの稼動状態の切り替えを行う。【解決手段】情報処理装置は、一つの方向の加速度が所定時間継続したことを持ち上げ動作として検出する検出部と、前記検出部によって検出された前記持ち上げ動作に応じて予め決められた制御を実行する制御部とを備える。持ち上げ動作検出方法は、一つの方向の加速度が所定時間継続したことを持ち上げ動作として検出する検出ステップと、前記検出ステップによって検出された前記持ち上げ動作に応じて予め決められた制御を実行する制御ステップとを備える。【選択図】図２
2007233753.tif 000002
【特許請求の範囲】
【請求項１】
一つの方向の加速度が所定時間継続したことを持ち上げ動作として検出する検出部と、
前記検出部によって検出された前記持ち上げ動作に応じて予め決められた制御を実行する制御部とを備える情報処理装置。
【請求項２】
前記制御は、前記情報処理装置の少なくとも一部の構成部品の動作を停止することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記加速度が所定範囲以内に収まる場合に持ち上げ動作として検出する前記検出部であることを特徴とする請求項１記載の情報処理装置。
【請求項４】
一つの方向の加速度が所定時間継続したことを持ち上げ動作として検出する検出ステップと、
前記検出ステップによって検出された前記持ち上げ動作に応じて予め決められた制御を実行する制御ステップとを備える持ち上げ動作検出方法。
【請求項５】
コンピュータに
一つの方向の加速度が所定時間継続したことを持ち上げ動作として検出する検出ステップと、
前記検出ステップによって検出された前記持ち上げ動作をアプリケーションプログラムに通知する通知ステップとを実行させるためのプログラム。
【請求項６】
少なくとも１つの軸の加速度を検出できる加速度センサと接続する情報処理装置において、
使用者からの補正指示が入力される補正指示入力部と、
前記補正指示に応じて、前記加速度センサを用いて、複数回前記情報処理装置にかかる少なくとも１軸の加速度に関する測定値を複数回測定する加速度測定部と、
前記加速度測定部の測定によって、得られた複数の前記測定値が特定の幅に収まることを判定する測定値判断部と、
前記測定値判断部によって、複数の前記測定値が特定の幅に収まることを判断した場合、複数の前記測定値を基に前記加速度センサの補正値を生成する補正値生成部とを有することを特徴とする情報処理装置。
【請求項７】
複数の前記測定値が、第１の値以下であることを判定する最大値判定部をさらに備えることを特徴とする請求項６記載の情報処理装置。
【請求項８】
複数の前記測定値が、第２の値以上であることを判定する最小値判定部をさらに備えることを特徴とする請求項６または７記載の情報処理装置。
【請求項９】
前記加速度センサと前記情報処理装置の接続線に電圧をかける自己診断ドライバをさらに備えることを特徴とする請求項６乃至８いずれか一項に記載の情報処理装置。
【請求項１０】
少なくとも１つの軸の加速度を検出できる加速度センサと接続する情報処理装置の補正方法において、
使用者からの補正指示が入力される補正指示入力ステップと、
前記補正指示に応じて、前記加速度センサを用いて、複数回前記情報処理装置にかかる少なくとも１軸の加速度に関する測定値を複数回測定する加速度測定ステップと、
前記加速度測定ステップの測定によって、得られた複数の前記測定値が特定の幅に収まることを判定する測定値判断ステップと、
前記測定値判断ステップによって、複数の前記測定値が特定の幅に収まることを判断した場合、複数の前記測定値を基に前記加速度センサの補正値を生成する補正値生成ステップとを有することを特徴とする補正方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、加速度センサを備えた情報処理装置に関する。
【背景技術】
【０００２】
コンピュータの電源を切る直前の状態を記録し、再び電源を入れたとき電源を切る直前の状態に戻す方法がある。この方法は、スタンバイ状態（サスペンド）や休止状態（ハイバーネーション）と呼ばれるものである。コンピュータの稼動状態を切り替えることにより、コンピュータの消費電力を低減させる。また、コンピュータに加速度センサを備え、加速度センサによりコンピュータの移動を検知する。そして、コンピュータの移動を検知し、コンピュータの稼動状態の切り替えを行う。さらに、コンピュータに対する物理的衝撃を検知し、コンピュータの稼動状態の切り替えを行う。また、コンピュータの稼動状態を切り替え、コンピュータに対する物理的衝撃からコンピュータを保護する。
【特許文献１】特開平７−２８５７３号公報
【特許文献２】特開平９−１２０３２３号公報
【特許文献３】特開２００３−３４５４７６号公報
【特許文献４】特開２００５−４５４４号公報
【特許文献５】特開平８−３０４４８号公報
【特許文献６】特開平８−６２２４９号公報
【特許文献７】特開平９−６４７３号公報
【特許文献８】特開２００４−１１９６２４号公報
【特許文献９】特開２００５−３１５８２６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来の技術では、コンピュータの移動を検知した場合だけでなく、コンピュータに対する物理的衝撃を検知した場合も、コンピュータの稼動状態の切り替えを行っている。そのため、コンピュータの移動を検知した場合にのみコンピュータの稼動状態を切り替えることができない。本発明では、コンピュータの移動とコンピュータに対する物理的衝撃とを区別して検知する。そして、コンピュータの移動を検知した場合にのみコンピュータの稼動状態の切り替えを行うことを目的とする。
【課題を解決するための手段】
【０００４】
本発明は、上記課題を解決するために、以下の手段を採用した。
【０００５】
すなわち、本発明による情報処理装置（本情報処理装置）は、一つの方向の加速度が所定時間継続したことを持ち上げ動作として検出する検出部と、前記検出部によって検出された前記持ち上げ動作に応じて予め決められた制御を実行する制御部とを備える。この構成により、情報処理装置に加えられた加速度が情報処理装置の持ち上げ動作に相当する加速度であるかを検出することができる。その結果、情報処理装置の持ち上げ動作を検出した場合にのみ情報処理装置の持ち上げ動作に応じた制御を実行することが可能となる。
【０００６】
また、本情報処理装置は、前記制御が、前記情報処理装置の少なくとも一部の構成部品の動作を停止するものであってもよい。この構成により、情報処理装置の稼動状態を切り替えることが可能となる。
【０００７】
また、本情報処理装置は、前記加速度が所定範囲以内に収まる場合に持ち上げ動作として検出する前記検出部であってもよい。この構成により、情報処理装置の持ち上げ動作に
相当する加速度と情報処理装置の持ち上げ動作に相当しない加速度とを区別することが可能となる。
【０００８】
また、本発明による持ち上げ動作検出方法は、一つの方向の加速度が所定時間継続したことを持ち上げ動作として検出する検出ステップと、前記検出ステップによって検出された前記持ち上げ動作に応じて予め決められた制御を実行する制御ステップとを備える。この構成により、加えられた加速度が持ち上げ動作に相当する加速度であるかを検出することができる。その結果、持ち上げ動作を検出した場合にのみ持ち上げ動作に応じた制御を実行することが可能となる。
【０００９】
また、本発明によるプログラムは、コンピュータに、一つの方向の加速度が所定時間継続したことを持ち上げ動作として検出する検出ステップと、前記検出ステップによって検出された前記持ち上げ動作をアプリケーションプログラムに通知する通知ステップとを実行させる。この構成により、加えられた加速度が持ち上げ動作に相当する加速度であるかを検出することができる。
【００１０】
また、本情報処理装置は、少なくとも１つの軸の加速度を検出できる加速度センサと接続し、使用者からの補正指示が入力される補正指示入力部と、前記補正指示に応じて、前記加速度センサを用いて、複数回前記情報装置にかかる少なくとも１軸の加速度に関する測定値を複数回測定する加速度測定部と、前記加速度測定部の測定によって、得られた複数の前記測定値が特定の幅に収まることを判定する測定値判断部と、前記測定値判断部によって、複数の前記測定値が特定の幅に収まることを判断した場合、複数の前記測定値を基に前記加速度センサの補正値を生成する補正値生成部とを有する。この構成により、情報処理装置にかかる加速度に関する測定値をより正確に検知するための補正を使用者からの補正指示があった場合に実行することが可能となる。また、情報処理装置にかかる加速度に関する測定値が特定の幅に収まる場合に、情報処理装置にかかる加速度に関する測定値をより正確に検知するための補正を実行することが可能となる。
【００１１】
また、本情報処理装置は、複数の前記測定値が、第１の値以下であることを判定する最大値判定部をさらに備えるようにしてもよい。また、本情報処理装置は、複数の前記測定値が、第２の値以上であることを判定する最小値判定部をさらに備えるようにしてもよい。また、本情報処理装置は、前記加速度センサと前記情報処理装置の接続線に電圧をかける自己診断ドライバをさらに備えるようにしてもよい。
【００１２】
また、本発明による補正方法は、少なくとも１つの軸の加速度を検出できる加速度センサと接続する情報処理装置の補正方法であり、使用者からの補正指示が入力される補正指示入力ステップと、前記補正指示に応じて、前記加速度センサを用いて、複数回前記情報処理装置にかかる少なくとも１軸の加速度に関する測定値を複数回測定する加速度測定ステップと、前記加速度測定ステップの測定によって、得られた複数の前記測定値が特定の幅に収まることを判定する測定値判断ステップと、前記測定値判断ステップによって、複数の前記測定値が特定の幅に収まることを判断した場合、複数の前記測定値を基に前記加速度センサの補正値を生成する補正値生成ステップとを有する。この構成により、情報処理装置にかかる加速度に関する測定値をより正確に検知するための補正を使用者からの補正指示があった場合に実行することが可能となる。また、情報処理装置にかかる加速度に関する測定値が特定の幅に収まる場合に、情報処理装置にかかる加速度に関する測定値をより正確に検知するための補正を実行することが可能となる。
【００１３】
また、本発明は、コンピュータその他の装置、機械等が上記いずれかの処理を実行する方法であってもよい。また、本発明は、コンピュータその他の装置、機械等に、以上のいずれかの機能を実現させるプログラムであってもよい。また、本発明は、そのようなプロ
グラムをコンピュータ等が読み取り可能な記録媒体に記録したものでもよい。
【発明の効果】
【００１４】
本発明によれば、コンピュータの移動を検知した場合のみコンピュータの稼動状態の切り替えを行うことができる。
【発明を実施するための最良の形態】
【００１５】
以下、図面を参照して本発明を実施するための最良の形態（以下、実施形態という）に係る設計装置について説明する。以下の実施形態の構成は例示であり、本発明は実施形態の構成に限定されない。
【００１６】
〈発明の骨子〉
加速度を検知するセンサに圧電式ジャイロセンサがある。圧電式ジャイロセンサは、Ｘ軸、Ｙ軸、Ｚ軸に対する加速度と、経過時間における加速度の変化によって姿勢の変化を検出する。そのため、圧電式ジャイロセンサの場合、初期状態において圧電式ジャイロセンサ自身の絶対姿勢がどの角度であるかを別のセンサによって決定する必要がある。そして、その決定した値からの変化量を求めることで姿勢情報を得る必要がある。
【００１７】
また、ノート型ＰＣやＰＤＡなどの情報処理装置にジャイロセンサを搭載した場合、電源ＯＦＦ時やサスペンド期間中の継続動作は消費電力が多い。さらに、圧電式ジャイロセンサで姿勢情報を得るには、電源投入毎にユーザが絶対姿勢を情報処理装置に知らせるか、別のセンサで初期状態を確定させる必要がある。
【００１８】
また、ナビゲーションシステムの圧電式ジャイロセンサの場合は、ＧＰＳ情報、地磁気センサ等によるディフォルト値をナビゲーションシステムの起動時等において取得する。そして、取得した値を基準にして、変化量の積算を行う。その結果、詳細な姿勢変化を正確に取得できる。しかし、圧電式ジャイロセンサによる姿勢検出手段の場合、絶対位置検出手段（ＧＰＳ、地磁気センサ）を持つ必要がある。そのため、コスト負担が必然的に高くなる。
【００１９】
ピエゾ抵抗型の加速度センサは、ピエゾ抵抗型素子と釣鐘状の錘とからなる。この釣鐘状の錘に加わる、すなわち、加速度センサの姿勢による力を変位センサであるピエゾ抵抗型素子で検出する。この方式では、加速度センサの姿勢が釣鐘を経由して、ピエゾ抵抗型素子に継続して加わる。そのため、加速度センサは重力を検出することができる。その結果、加速度センサの絶対姿勢を取得することができる。絶対姿勢とは、重力方向に対する加速度センサの姿勢をいう。
【００２０】
ところで、ピエゾ抵抗型の加速度センサは、ピエゾ抵抗膜が破断することによる故障がある。故障の結果、信号出力は最大電圧又は最小電圧のいずれかの異常値を示す。また、静電容量板（串刃電極）の重力による物理的な移動量を測定し絶対姿勢を得る方法がある。静電容量板は半導体加工技術における微細加工による立体構造方式である。静電容量板型の加速度センサは、電極が引っかかる問題や、変形がある。そのため、静電容量板型の加速度センサは、単純に姿勢角度に対する出力非直線性や姿勢ドリフト発生等の故障であるか、姿勢変化であるかを判断できない。その結果、ピエゾ抵抗型の加速度センサに比較して、静電容量板型の加速度センサは故障の検出が容易ではない。
【００２１】
さらに、ピエゾ抵抗型の加速度センサ１を使用することで、低コストで加速度センサ１の絶対姿勢を取得することができる。そのため、圧電式ジャイロと絶対位置検出手段（ＧＰＳ、地磁気センサ等）の２つセンサで行う測定方式と比べて低コストの測定が可能となる。
【００２２】
図１は、本実施形態の情報処理装置のハードウェアブロック図である。図１に示すように、情報処理装置は、加速度センサ１、ＭＣＵ（Micro Controller Unit）２、制御部３
、ＲＡＭ（Random Access Memory）４、ＲＯＭ（Read Only Memory）５、出力部６、入力部７、記録部８及び表示部９で構成されている。加速度センサ１とＭＣＵ２は信号線１０を介して接続されている。ＭＣＵ２、制御部３、ＲＡＭ４、ＲＯＭ５、出力部６、入力部７、記録部８及び表示部９は、相互にバス１１を介して接続されている。
【００２３】
制御部３はＣＰＵ（Central  Processing  Unit）等であり、ＲＯＭ５に記録されてい
るプログラムに従って各種の処理を実行する。ＲＯＭ５は、本情報処理装置が機能する上で必要なプログラムやパラメータなどが記録されている。ＲＡＭ４は、制御部３に実行させるオペレーティングシステム（Operating  System）のプログラムやアプリケーション
プログラムの一部が一時的に格納される。記録部８は、ＲＡＭ４の外部記憶として用いられる。入力部７は、例えば、キーボードやマウスなどであり、所定のコマンドや必要なデータを入力するときなどに操作される。出力部６は、例えば、ＣＲＴ（Cathode  Ray  Tube）や液晶ディスプレイ、プラズマディスプレイなどによる表示装置や、スピーカなどの音声出力装置、プリンタ装置などの出力装置を備えている。
【００２４】
また、本実施形態の情報処理装置は、例えば、パーソナルコンピュータやノートブック型のパーソナルコンピュータ、ＰＤＡ（Personal  Digital  Assistance）及びＣＥ（Consumer  Electronics）機器などの携帯可能なコンピュータとして実現できる。
【００２５】
図２は、本実施形態の加速度センサ１及びＭＣＵ２の構成を示した図である。加速度センサ１は、加速度センサ素子２０１、センスアンプ２０２、出力抵抗２０３を備えている。ＭＣＵ２は、レジスタ２０９、マルチプレクサ２０７、Ａ／Ｄコンバータ２０８、処理部２０４、ＮＶ−ＲＯＭ２０５、ＲＡＭ２０６、自己診断ドライバ２１０及び自己診断制御レジスタ２１１を備えている。
【００２６】
加速度センサ１は、加速度センサ素子２０１にかかる電圧（電圧の変化）を検出する。また、加速度センサ１は、加速度センサ素子２０１にかかる電圧をＭＣＵ２に電圧の値（電圧値）として出力する。また、加速度センサ１から出力される電圧値はセンスアンプ２０２により増幅されている。加速度センサ１から出力された電圧値は、信号線１０Ａ、信号線１０Ｂ及び信号線１０Ｃ（以下、信号線１０と表記する場合、信号線１０Ａ、信号線１０Ｂ、信号線１０Ｃのすべてを含むものとする。）を介してマルチプレクサ２０７に入力される。マルチプレクサ２０７に入力された電圧値は順番に読み出され、Ａ／Ｄコンバータ２０８によりデジタル値に変換される。そして、デジタル値に変換された電圧値は、処理部２０４に入力される。また、信号線１０と接地との間には、コンデンサ２１２が設けられている。さらに、信号線１０と接地との間には、自己診断検出抵抗２１３が設けられている。自己診断検出抵抗２１３を設けることにより、加速度センサ１から自己診断検出抵抗２１３に至る信号線１０の経路断線が発生した場合、処理部２０４に入力される電圧値は最小となる。
【００２７】
本実施形態の加速度センサ１は、軸方向に加えられた加速度を数値として出力することができる。すなわち、加速度センター本体を基準としてある方向にどのくらいの加速度がかかっているかを数値として得ることができる。
【００２８】
図３は、Ｘ軸、Ｙ軸、Ｚ軸に加えられた加速度を検知する加速度センサ１の説明図である。図３に示すように、Ｚ軸は重力方向と平行している。そして、Ｘ軸及びＹ軸は、Ｚ軸と直行している。また、Ｘ軸とＹ軸とは互いに直行している。加速度センサ１は、図３のＸ軸、Ｙ軸、Ｚ軸方向にそれぞれ加速度センサ素子２０１が設けられている。ピエゾ抵抗
型（拡散抵抗型）の加速度センサ１の場合、加速度センサ素子２０１に加速度が加わると加速度センサ素子２０１の抵抗値が変化する。そのため、加速度センサ素子２０１にかかる電圧に変化が生じる。矢印方向に重力（加速度９．８ｍ／ｓ２に相当）が加えられた場合、加速度センサ１は、加速度センサ素子２０１に加えられた加速度に応じた電圧の変化を検出する。
【００２９】
処理部２０４は、加速度センサ素子２０１にかかる電圧の変化からＸ軸、Ｙ軸、Ｚ軸に加えられた加速度をそれぞれ算出する。Ｘ軸、Ｙ軸、Ｚ軸の実線の矢印方向に加速度が加えられた場合、処理部２０４はプラスの値を加速度として算出する。そして、処理部２０４は、算出した加速度をレジスタ２０９に記録する。一方、Ｚ軸の破線の矢印方向（すなわち、重力方向）に加速度が加えられた場合、処理部２０４はマイナスの値を加速度として算出する。そして、処理部２０４は、算出した加速度をレジスタ２０９に記録する。
【００３０】
図３のＺ軸の実線の矢印方向（すなわち、重力の反対方向）に加速度が加えられた場合、処理部２０４はプラスの値を加速度として算出する。このため、処理部２０４は、Ｚ軸の実線の矢印方向（重力の反対方向に加速度が加えられた場合とそれ以外の加速度が加えられた場合とを区別することができる。
【００３１】
図４は、本実施形態の加速度センサ１の外観図である。図４Ａは、加速度センサ１の正面図である。図４Ｂは、加速度センサ１の上面図である。図４Ｃは、加速度センサ１の側面図である。図４Ｄは、加速度センサ１の底面図である。ただし、図４の加速度センサ１は、例示であり、本発明の加速度センサ１はこれに限定されない。
【００３２】
〈機能概要〉
図５は、本情報処理装置が備えるセンサ監視機能の機能ブロックを示した図である。センサ監視アプリケーション５０１は、記録部８からＲＡＭ４にロードされ、制御部１によって実行制御されるプログラムである。センサ監視アプリケーション５０１は、オペレーティングシステムインターフェース５０２を通じてセンサ監視ドライバ５０３からのイベントを受信する。また、センサ監視アプリケーション５０１は、センサ監視ドライバ５０３からイベントを受信した場合、オペレーティングシステムインターフェース５０２を通じてコンピュータの稼動状態を切り替える。
【００３３】
オペレーティングシステムインターフェース５０２は、オペレーティングシステムのアプリケーションインターフェースである。オペレーティングシステムインターフェース５０２は、アプリケーションとドライバ間の通信、オペレーティングシステムの電源制御など、オペレーティングシステム全般のインターフェースをアプリケーションに対して提供する。
【００３４】
センサ監視ドライバ５０３は、記録部８からＲＡＭ４にロードされ、制御部１によって実行制御されるドライバ（プログラム）である。センサ監視ドライバ５０３は、加速度センサ１から出力される所定の電圧値をイベントとして受信する。また、センサ監視ドライバ５０３は、加速度センサ１から出力される所定の電圧値をイベントとして受信した場合、センサ監視アプリケーション５０１にオペレーティングシステムインターフェース５０２を通じてイベントを通知（送信）する。
【００３５】
図６において、本実施形態の加速度センサ１の持ち上げの検出をセンサ監視ドライバ５０３に通知する処理を説明する。まず、制御部３は、カウンタ（図示せず）を初期化する（Ｓ６０１）。すなわち、制御部３は、カウンタの値を０に設定する。
【００３６】
次に、制御部３は、ウェイトを行う（Ｓ６０２）。ここで、ウェイトとは、制御部３が
ＭＣＵ２からの読み込み処理を一定時間停止することをいう。制御部３は、ウェイトを行うことにより、ＭＣＵ２からの読み込み処理を一定間隔で行うことができる。例えば、ウェイトを１０ｍｓと設定した場合、制御部３はＭＣＵ２からの読み込み処理を１０ｍｓ間隔で行う。そして、制御部３は、ＭＣＵ２から読み込みを行う（Ｓ６０３）。具体的には、制御部３は、レジスタ２０９に記録されているＺ軸に加えられた加速度を読み込む。
【００３７】
さらに、制御部３は、ＭＣＵ２から読み込んだ加速度の値が所定の閾値Ａ以上であるかを判定する（Ｓ６０４）。例えば、加速度の単位をＧ（１Ｇ＝９．８ｍ／ｓ２）とした場合、所定の閾値Ａを１．２５Ｇ（１．２５×９．８ｍ／ｓ２）とする。その場合、制御部３は、ＭＣＵ２から読み込んだ加速度の値が１．２５Ｇ（１．２５×９．８ｍ／ｓ２）以上であるかを判定する。上記の値は例示であり、所定の閾値Ａは上記の値に限定されず、任意の値を設定できる。また、所定の閾値Ａは、加速度センサ１の持ち上げを判定する基準となる値である。すなわち、ＭＣＵ２から読み込んだ加速度の値が所定の閾値Ａ以上である場合、加速度センサ１の持ち上げに相当する加速度が加速度センサ１に加えられたと判定する。この加速度センサ１の持ち上げを判定する基準となる値は、実験又はシミュレーションで求めておけばよい。
【００３８】
ＭＣＵ２から読み込んだ加速度の値が所定の閾値Ａ以上である場合、制御部３はカウンタの値をインクリメントする（Ｓ６０５）。すなわち、制御部３はカウンタの値を１つ増加させる。一方、ＭＣＵ２から読み込んだ加速度の値が所定の閾値Ａ以上でない場合、制御部３はＳ６０１の処理を行う。
【００３９】
次に、制御部３は、カウンタの値が所定の閾値Ｂ以上であるかを判定する（Ｓ６０６）。カウンタの値が所定の閾値Ｂ以上である場合、制御部３はセンサ監視ドライバ５０３に対してカウンタの値が所定の閾値Ｂ以上であることを知らせる。すなわち、制御部３はセンサ監視ドライバ５０３に対してカウンタの値が所定の閾値Ｂ以上であることをイベントとして通知する（Ｓ６０７）。そして、センサ監視ドライバ５０３にイベントを通知した場合、制御部３はＳ６０１の処理を行う。Ｓ６０２からＳ６０６の処理を繰り返し行い、カウンタの値が所定の閾値Ｂ以上となる場合、一定時間継続して加速度センサ１の持ち上げに相当する加速度が加速度センサ１に加えられている。
【００４０】
例えば、ウェイトを１０ｍｓと設定し、所定の閾値Ｂを３と設定する。この場合、加速度センサ１の持ち上げに相当する加速度が加速度センサ１に３０ｍｓ加えられている。すなわち、制御部３は、Ｓ６０１の処理でカウンタの値を０に設定し、Ｓ６０２の処理でＭＣＵ２からの読み込みを１０ｍｓ停止する。そして、制御部３は、Ｓ６０４の処理でカウンタの値を１とする。この場合、カウントの値は、所定の閾値Ｂとして設定した３以上ではないので、制御部３は、Ｓ６０２の処理を再び行う。このＳ６０２からＳ６０６の処理を繰り返し、カウンタの値が３となった場合、ウェイトの合計時間は３０ｍｓとなる。所定の閾値Ａを１．２５Ｇ（１．２５×９．８ｍ／ｓ２）とした場合、加速度センサ１には、１．２５Ｇ（１．２５×９．８ｍ／ｓ２）以上の加速度が３０ｍｓ加えられている。
【００４１】
本実施形態では、カウンタの値が所定の閾値Ｂ以上となる場合、加速度センサ１の持ち上げに相当する加速度が加速度センサ１に一定時間継続して加えられたとしている。そして、加速度センサ１の持ち上げ検出がセンサ監視ドライバ５０３にイベントとして通知される。
【００４２】
一方、ＭＣＵ２から読み込んだ加速度の値が所定の閾値Ａ以上でない場合や、カウントの値が所定の閾値Ｂ以上でない場合、加速度センサ１の持ち上げはないとする。この場合、加速度センサ１の持ち上げ検出はセンサ監視ドライバ５０３に通知されない。そして、制御部３は、カウンタの値を初期化し、加速度センサ１の持ち上げに相当する加速度が加
速度センサ１に一定時間継続して加えられているかを検出する。
【００４３】
本実施形態によれば、加速度センサ１の持ち上げに相当する加速度と加速度センサ１の持ち上げとは無関係な加速度とを区別して検知することができる。したがって、本実施形態によれば、情報処理装置の移動と情報処理装置に対する物理的衝撃とを区別して検知することができる。そして、情報処理装置の移動を検知した場合にのみ情報処理装置の稼動状態の切り替えを行うことが可能となる。
【００４４】
また、所定の閾値Ａを所定の範囲Ｃと変更することも可能である。これにより、ＭＣＵ２から読み込んだ加速度の値が所定の範囲Ｃに収まっている場合、加速度センサ１の持ち上げに相当する加速度が加速度センサ１に加えられたとすることができる。すなわち、Ｓ６０４の処理で、制御部３は、ＭＣＵ２から読み込んだ加速度の値が所定の範囲Ｃに収まっているかを判定する。ＭＣＵ２から読み込んだ加速度の値が所定の範囲Ｃに収まっているかを判定することにより、加速度センサ１の持ち上げに相当する加速度が加速度センサ１に加えられているかをより詳細に判定することができる。
【００４５】
図７において、センサ監視ドライバ５０３の動作を説明する。一般的にアプリケーション（アプリケーションソフトウェア）などの応用ソフトウェアは、ハードウェアに直接アクセスすることができない。そこで、本実施形態では、センサ監視アプリケーション５０１はセンサ監視ドライバ５０３を介して、ハードウェアである加速度センサ１とのアクセスを行う。センサ監視ドライバ５０３と加速度センサ１とのアクセスは、センサ監視ドライバ５０３が記録部８からＲＡＭ４にロードされ、制御部３が実行することによって行われる。
【００４６】
通常、センサ監視ドライバ５０３は、待機状態となる（Ｓ７０１）。すなわち、センサ監視ドライバ５０３は加速度センサ１からのイベント待ちの状態となる。待機状態において加速度センサ１からのイベントの通知を受けた場合、センサ監視ドライバ５０３は待機状態から実行状態に遷移する（Ｓ７０２）。一方、待機状態において加速度センサ１からのイベントの通知がない場合、センサ監視ドライバ５０３は待機状態を続行する。
【００４７】
次に、実行状態に遷移したセンサ監視ドライバ５０３１９は、センサ監視アプリケーション５０１にイベントを通知する（Ｓ７０３）。この場合、加速度センサ１の持ち上げを検出したことをセンサ監視アプリケーション５０１にイベントとして通知する。そして、センサ監視アプリケーション５０１にイベントを通知したセンサ監視ドライバ５０３は、再び待機状態に遷移する。
【００４８】
図８において、センサ監視アプリケーション５０１の動作を説明する。センサ監視アプリケーション５０１の動作は、センサ監視アプリケーション５０１が記録部８からＲＡＭ４にロードされ、制御部３が実行することによって行われる。
【００４９】
通常、センサ監視アプリケーション５０１は、待機状態となる（Ｓ８０１）。すなわち、センサ監視アプリケーション５０１はセンサ監視ドライバ５０３からのイベント待ちの状態となる。待機状態においてセンサ監視ドライバ５０３からのイベントの通知を受けた場合、センサ監視アプリケーション５０１は待機状態から実行状態に遷移する（Ｓ８０２）。一方、待機状態においてセンサ監視ドライバ５０３からのイベントの通知がない場合、センサ監視アプリケーション５０１は待機状態を続行する。
【００５０】
次に、実行状態に遷移したセンサ監視アプリケーション５０１は、情報処理装置の稼動状態を切り替える（Ｓ８０３）。情報処理装置の稼動状態の切り替えは、例えばオペレーティングシステムなどの基本ソフトウェアのＡＰＩ（Application Program Interface）
を用いて行う。情報処理装置の稼動状態を切り替えたセンサ監視アプリケーション５０１は、再び待機状態に遷移する。
【００５１】
本実施形態は、Ｚ軸方向に生じた加速度を情報処理装置の持ち上げとして検出したが、複数の軸を組み合わせることで任意方向の持ち上げを検出することも考えられる。
【００５２】
〈キャリブレーション処理〉
加速度センサ１を搭載した情報処理装置の残留応力や残留応力の経時変化により、加速度センサ１には応力が加わる。そのため、加速度センサ１が出力する電圧値が、出荷時に示していた値と異なる値を示す場合がある。このような出荷時に示していた電圧値と異なる、すなわち正常ではない電圧値を加速度センサ１が出力していた場合、加速度センサ１の姿勢の正確な検知ができない。また、加速度センサ１が出力する電圧値を補正した後であっても、上記応力により電圧値は再び変動する。その場合、再度、加速度センサ１が出力する電圧値を補正する必要が生じる。加速度センサ１が出力する電圧値を補正する処理をキャリブレーション処理という。
【００５３】
図９は、キャリブレーション処理を説明するフローである。キャリブレーション処理は、キャリブレーションコマンドをＭＣＵ２が受け取ることにより行われる。具体的には、オペレーティングシステムインターフェース５０２が提供するキャリブレーションボタンがユーザによって押下されることにより、キャリブレーション処理は実行される。キャリブレーション処理が行われるときは、加速度センサ１のＺ軸が重力方向に対して平行になるようにユーザによって情報処理装置が配置されているものとする。キャリブレーションボタンが押下された場合、制御部３はバス１１を経由してＭＣＵ２にキャリブレーションボタンが押下されたことを通知する。例えば、図１４に示すキャリブレーション設定画面において、ボタン１４０１が押下されることにより、キャリブレーション処理は実行される。
【００５４】
まず、キャリブレーションボタンが押下されたことの通知を受けたＭＣＵ２内の処理部２０４は、レジスタ２０９のキャリブレーションステータスフラグをクリアする（Ｓ９０１）。次に、処理部２０４は、加速度センサ素子２０１が出力した電圧からＸ軸、Ｙ軸、Ｚ軸の電圧値を取得し、取得した値をＲＡＭ２０６に記録する（Ｓ９０２）。この場合、処理部２０４は、Ｘ軸、Ｙ軸、Ｚ軸の電圧値をそれぞれ数１０ｍ秒間隔で４回取得する。
【００５５】
そして、処理部２０４は、ＲＡＭ２０６に記録したＸ軸、Ｙ軸、Ｚ軸の電圧値が指定Ｍｉｎ値以下であるかの判定を行う（Ｓ９０３）。具体的には、ＲＡＭ２０６に記録されたＸ軸、Ｙ軸、Ｚ軸の各軸それぞれ４つの電圧値の各値と指定Ｍｉｎ値とを比較する。そして、ＲＡＭ２０６に記録されたＸ軸、Ｙ軸、Ｚ軸の各軸４つの電圧値のうち指定Ｍｉｎ値以下の値があるかを判定する。指定Ｍｉｎ値は、ＲＡＭ２０６に記録されたＸ軸、Ｙ軸、Ｚ軸の電圧値が正常であるかどうかを判定する基準となる値である。
【００５６】
図２に示すように、自己診断検出抵抗２１３を信号線１０と接地との間に設けることにより、信号線１０の断線が発生した場合でも、Ａ／Ｄコンバータ２０８はフローティングの状態とならない。すなわち、Ａ／Ｄコンバータ２０８に入る電圧値を基準電位と同レベル（すなわち、電圧値は最小になる）にすることができる。その結果、信号線１０の断線が発生した場合、Ａ／Ｄコンバータ２０８に入る電圧値は最小になる。また、加速度センサ１に故障が発生した場合、加速度センサ１が出力する電圧値は最小又は最大となる。その結果、加速度センサ１の故障又は信号線１０の断線等が発生した場合、処理部２０４が取得する電圧値は加速度センサ１が出力できる電圧値の最大又は最小となる。したがって、加速度センサ１が正常であり、かつ信号線１０に断線等が発生していない場合、Ａ／Ｄコンバータ２０８に入る電圧値は指定Ｍｉｎ値より大きい値となる。そのため、ＲＡＭ２
０６に記録されたＸ軸、Ｙ軸、Ｚ軸の電圧値が指定Ｍｉｎ値以下の値を示す場合、加速度センサ１の故障又は信号線１０の断線等が発生している。この指定Ｍｉｎ値は予めＮＶ−ＲＯＭ２０５に記録されている。また、指定Ｍｉｎ値は、実験又はシミュレーションによって求めておけばよい。
【００５７】
ＲＡＭ２０６に記録されたＸ軸、Ｙ軸、Ｚ軸の電圧値のうち指定Ｍｉｎ値以下の値がある場合、処理部２０４は、レジスタ２０９にデバイスエラーフラグをセットする（Ｓ９０４）。そして、処理部２０４は、キャリブレーション処理を終了する。
【００５８】
一方、ＲＡＭ２０６に記録されたＸ軸、Ｙ軸、Ｚ軸の電圧値のうち指定Ｍｉｎ値以下の値がない場合、処理部２０４は、ＲＡＭ２０６に記録されたＸ軸、Ｙ軸、Ｚ軸の電圧値が指定Ｍａｘ値以上であるかの判定を行う（Ｓ９０５）。具体的には、ＲＡＭ２０６に記録されたＸ軸、Ｙ軸、Ｚ軸の各軸それぞれ４つの電圧値の各値と指定Ｍａｘ値とを比較する。そして、ＲＡＭ２０６に記録されたＸ軸、Ｙ軸、Ｚ軸の各軸４つの電圧値のうち指定Ｍａｘ値以上の値があるかを判定する。指定Ｍａｘ値は、ＲＡＭ２０６に記録されたＸ軸、Ｙ軸、Ｚ軸の電圧値が正常であるかどうかを判定する基準となる値である。
【００５９】
加速度センサ１に故障が発生した場合、加速度センサ１が出力する電圧値は最小又は最大となる。その結果、加速度センサ１の故障が発生した場合、処理部２０４が取得する電圧値は加速度センサ１が出力できる電圧値の最大又は最小となる。したがって、加速度センサ１が正常である場合、Ａ／Ｄコンバータ２０８に入る電圧値は指定Ｍａｘ値より小さい値となる。そのため、ＲＡＭ２０６に記録されたＸ軸、Ｙ軸、Ｚ軸の電圧値が指定Ｍａｘ値以上の値を示す場合、加速度センサ１の故障が発生している。この指定Ｍａｘ値は予めＮＶ−ＲＯＭ２０５に記録されている。また、指定Ｍａｘ値は、実験又はシミュレーションによって求めておけばよい。
【００６０】
ＲＡＭ２０６に記録されたＸ軸、Ｙ軸、Ｚ軸の電圧値のうち指定Ｍａｘ値以上の値がある場合、処理部２０４は、Ｓ９０４の処理を行う。すなわち、レジスタ２０９にデバイスエラーフラグをセットする。そして、処理部２０４はキャリブレーション処理を終了する。
【００６１】
一方、ＲＡＭ２０６に記録されたＸ軸、Ｙ軸、Ｚ軸の電圧値のうち指定Ｍａｘ値以上の値がない場合、処理部２０４は、ＲＡＭ２０６に記録されたＸ軸、Ｙ軸、Ｚ軸の４回の取得結果である電圧値の最大値と最小値の差が所定の閾値Ｄ以下であるかの判定を各軸について行う（Ｓ９０６）。すなわち、処理部２０４は、ＲＡＭ２０６に記録されたＸ軸の４回の取得結果である電圧値のうち一番大きい値を示す電圧値と一番小さい値を示す電圧値の差が所定の閾値Ｄ以下であるかの判定を行う。また、処理部２０４は、ＲＡＭ２０６に記録されたＹ軸の４回の取得結果である電圧値のうち一番大きい値を示す電圧値と一番小さい値を示す電圧値の差が所定の閾値Ｄ以下であるかの判定を行う。さらに、処理部２０４は、ＲＡＭ２０６に記録されたＺ軸の４回の取得結果である電圧値のうち一番大きい値を示す電圧値と一番小さい値を示す電圧値の差が所定の閾値Ｄ以下であるかの判定を行う。
【００６２】
また、処理部２０４は、ＲＡＭ２０６に記録されたＸ軸、Ｙ軸、Ｚ軸の４回の取得結果である電圧値の最大値と最小値の差が所定の閾値Ｄ以下であるかの判定を所定回数行う。この場合、処理部２０４は、図示しないカウンタにより所定回数をカウントする。この所定回数は任意に設定できる。さらに、処理部２０４は、ＲＡＭ２０６に記録されたＸ軸、Ｙ軸、Ｚ軸の４回の取得結果である電圧値の最大値と最小値の差が所定の閾値Ｄ以下であるかの判定を所定回数行うことに代えて、この判定を所定時間行ってもよい。この場合、処理部２０４は、図示しないタイマにより所定時間を計測する。この所定時間は任意に設
定できる。
【００６３】
ＲＡＭ２０６に記録されたＸ軸、Ｙ軸、Ｚ軸の電圧値の最大値と最小値の差が所定の閾値Ｄ以下である場合、処理部２０４は、ＲＡＭ２０６に記録されたＸ軸、Ｙ軸、Ｚ軸の電圧値の最大値と最小値を削除する（Ｓ９０７）。すなわち、処理部２０４は、ＲＡＭ２０６に記録されたＸ軸の４回の取得結果である電圧値のうち一番大きい値を示す電圧値と一番小さい値を示す電圧値を削除する。また、処理部２０４は、ＲＡＭ２０６に記録されたＹ軸の４回の取得結果である電圧値のうち一番大きい値を示す電圧値と一番小さい値を示す電圧値を削除する。さらに、処理部２０４は、ＲＡＭ２０６に記録されたＺ軸の４回の取得結果である電圧値のうち一番大きい値を示す電圧値と一番小さい値を示す電圧値を削除する。
【００６４】
一方、ＲＡＭ２０６に記録されたＸ軸、Ｙ軸、Ｚ軸の電圧値の最大値と最小値の差が所定の閾値以下でない場合、振動などのために正常にキャリブレーションできないと判断し、ＭＣＵ２は、レジスタ２０９にキャリブレーションエラーフラグをセットする（Ｓ９０８）。ユーザに振動の生じない場所でキャリブレーション操作を再度実行するように促す。そして、キャリブレーション処理を終了する。
【００６５】
次に、処理部２０４は、ＲＡＭ２０６に残っているＸ軸、Ｙ軸、Ｚ軸の電圧値を平均し、平均化した値をＲＡＭ２０６に記録する（Ｓ９０９）。すなわち、ＲＡＭ２０６には、各軸の電圧値がそれぞれ２つ存在しており、処理部２０４はその２つの値を平均化してＲＡＭ２０６に新たに記録する。この場合、処理部２０４は平均化する以前のＸ軸、Ｙ軸、Ｚ軸の電圧値はＲＡＭ２０６から削除する。
【００６６】
そして、処理部２０４は、ＲＡＭ２０６に記録されたＺ軸の電圧値から１Ｇ（９．８ｍ／ｓ２）に相当する電圧値を引く（Ｓ９１０）。Ｚ軸には、常に１Ｇ（９．８ｍ／ｓ２）の加速度が加えられている。そのため、ＲＡＭ２０６に記録されたＺ軸の電圧値から１Ｇ（９．８ｍ／ｓ２）に相当する電圧値を引いている。
【００６７】
さらに、処理部２０４は、ＮＶ−ＲＯＭ２０５にキャリブレーション値を記録する（Ｓ９１１）。具体的には、ＲＡＭ２０６に記録されているＸ軸、Ｙ軸、Ｚ軸の電圧値からＸ軸、Ｙ軸、Ｚ軸の初期値を引いた値をそれぞれＮＶ−ＲＯＭ２０５に記録する。Ｘ軸、Ｙ軸、Ｚ軸の初期値は、加速度センサ１に応力が加わっていない場合のＸ軸、Ｙ軸、Ｚ軸の電圧値である。ＲＡＭ２０６に記録されているＸ軸、Ｙ軸、Ｚ軸の電圧値からＸ軸、Ｙ軸、Ｚ軸の初期値を引いた値がキャリブレーション値である。
【００６８】
例えば、ＲＡＭ２０６に記録されているＸ軸の電圧値が１．５ボルト（Ｖ）であり、Ｘ軸の初期値が１．６ボルト（Ｖ）であるとする。この場合、加速度センサ１のＸ軸の初期値である１．６ボルト（Ｖ）からＲＡＭ２０６に記録されているＸ軸の電圧値である１．５ボルト（Ｖ）を引いた値である０．１ボルト（Ｖ）をキャリブレーション値とする。また、例えば、ＲＡＭ２０６に記録されているＸ軸の電圧値が１．７ボルト（Ｖ）であり、Ｘ軸の初期値が１．６ボルト（Ｖ）であるとする。この場合、Ｘ軸の初期値である１．６ボルト（Ｖ）からＲＡＭ２０６に記録されているＸ軸の電圧値である１．７ボルト（Ｖ）を引いた値である−０．１ボルト（Ｖ）をキャリブレーション値とする。また、Ｘ軸、Ｙ軸、Ｚ軸の初期値は、予め計測されており、ＮＶ−ＲＯＭ２０５に記録されている。
【００６９】
次に、処理部２０４は、レジスタ２０９にキャリブレーションステータスフラグをセットする（Ｓ９１２）。そして、処理部２０４はキャリブレーション処理を終了する。キャリブレーションステータスフラグがレジスタ２０９にセットされた場合、キャリブレーション処理は完了したことになる。
【００７０】
キャリブレーション処理が完了することにより、加速度センサ１が出力する電圧値を補正することができる。その結果、加速度センサ１に加えられた加速度の正確な検出が可能となる。また、加速度センサ１の姿勢の正確な検知が可能となる。
【００７１】
〈角度計算処理、傾き検出処理〉
本実施形態の角度計算処理及び傾き検出処理について説明する。図１０は、角度計算処理及び傾き検出処理を説明するフローである。角度計算処理及び傾き検出処理は、所定間隔により継続して行われる処理である。
【００７２】
まず、処理部２０４は、加速度センサ１の動作が正常であるかを判定する（Ｓ１００１）。具体的には、処理部２０４は、レジスタ２０９にセンサーエラーフラグがセットされているかを判定する。レジスタ２０９にセンサーエラーフラグがセットされている場合は、加速度センサ１の動作が正常でないことを示している。
【００７３】
加速度センサ１の動作が正常でない場合、すなわち、レジスタ２０９にセンサーエラーフラグがセットされている場合、処理部２０４は、再びＳ１００１の処理を行う。この場合、処理部２０４は所定時間経過後にＳ１００１の処理を行う。
【００７４】
一方、加速度センサ１の動作が正常である場合、すなわち、レジスタ２０９にセンサーエラーフラグがセットされていない場合、処理部２０４は、キャリブレーション処理が完了しているかを判定する（Ｓ１００２）。具体的には、処理部２０４は、レジスタ２０９にキャリブレーションステータスフラグがセットされているかを判定する。レジスタ２０９にキャリブレーションステータスフラグがセットされている場合は、キャリブレーション処理が完了していることを示している。
【００７５】
キャリブレーション処理が完了している場合、すなわち、レジスタ２０９にキャリブレーションステータスフラグがセットされている場合、処理部２０４は、角度計算処理を行う（Ｓ１００３）。一方、キャリブレーション処理が完了していない場合、すなわち、レジスタ２０９にキャリブレーションステータスフラグがセットされていない場合、処理部２０４は、再びＳ１００１の処理を行う。この場合、処理部２０４は所定時間経過後にＳ１００１の処理を行う。
【００７６】
そして、処理部２０４は、傾き検出処理を行う（Ｓ１００４）。傾き検出処理を行った後、処理部２０４は、再びＳ１００１の処理を行う。この場合、処理部２０４は所定時間経過後にＳ１００１の処理を行う。
【００７７】
図１１において、角度計算処理（図１０のＳ１００３の処理）について説明する。角度計算処理は、加速度センサ１の現在の姿勢を算出する処理である。すなわち、重力方向に対する加速度センサ１の現在の角度を計算する処理である。
【００７８】
まず、処理部２０４は、加速度センサ１が出力するＸ軸、Ｙ軸、Ｚ軸の現在の電圧値を読み込む（Ｓ１１０１）。次に、処理部２０４は、ＮＶ−ＲＯＭ２０５に記録されているキャリブレーション値を使用して、読み込んだＸ軸、Ｙ軸、Ｚ軸の電圧値を補正する（Ｓ１１０２）。具体的には、処理部２０４は読み込んだＸ軸、Ｙ軸、Ｚ軸の各電圧値にＸ軸、Ｙ軸、Ｚ軸のキャリブレーション値をそれぞれ加える。
【００７９】
そして、処理部２０４は、Ｘ軸のキャリブレーション値で補正した後のＸ軸の電圧値、Ｙ軸のキャリブレーション値で補正した後のＹ軸の電圧値、Ｚ軸のキャリブレーション値で補正した後のＺ軸の電圧値をそれぞれ角度に変換する（Ｓ１１０３）。この場合、処理
部２０４は電圧値を重力方向に対する角度として変換する。
【００８０】
次に、処理部２０４は、変換後の角度をＸ軸、Ｙ軸、Ｚ軸ごとにレジスタ２０９に記録する（Ｓ１１０４）。この場合、Ｘ軸の角度はレジスタ２０９のＧＰ−Ｘに記録する。Ｙ軸の角度はレジスタ２０９のＧＰ−Ｙに記録する。Ｚ軸の角度はレジスタ２０９のＧＰ−Ｚに記録する。そして、処理部２０４は、角度計算処理を終了する。
【００８１】
加速度センサ１に加わる加速度が同じであっても加速度センサ１の機種によって、加速度センサ１が出力する電圧値が異なる。そこで、加速度センサ１の機種によって異なる電圧値の差を修正するためＧＡＩＮ処理を行う。図１２において、ＧＡＩＮ処理を伴う角度計算処理（図１０のＳ１００３の処理）を説明する。
【００８２】
まず、処理部２０４は、加速度センサ１が出力するＸ軸、Ｙ軸、Ｚ軸の現在の電圧値を読み込む（Ｓ１２０１）。次に、処理部２０４は、ＮＶ−ＲＯＭ２０５に記録されているキャリブレーション値を使用して、読み込んだＸ軸、Ｙ軸、Ｚ軸の電圧値を補正する（Ｓ１２０２）。具体的には、処理部２０４は読み込んだＸ軸、Ｙ軸、Ｚ軸の各電圧値にＸ軸、Ｙ軸、Ｚ軸のキャリブレーション値をそれぞれ加える。
【００８３】
そして、処理部２０４は、キャリブレーション値で補正した後の電圧値をレジスタ２０９に記録されているＧＡＩＮ値を使用して修正する（Ｓ１２０３）。具体的には、処理部２０４は、Ｘ軸のキャリブレーション値で補正した後のＸ軸の電圧値にＧＡＩＮ値を乗算する。また、処理部２０４は、Ｙ軸のキャリブレーション値で補正した後のＹ軸の電圧値にＧＡＩＮ値を乗算する。さらに、処理部２０４は、Ｚ軸のキャリブレーション値で補正した後のＺ軸の電圧値にＧＡＩＮ値を乗算する。この場合、ＧＡＩＮ値は加速度センサ１に対応した値を用いる。すなわち、処理部２０４は、本情報処理装置に搭載されている加速度センサ１の機種に対応するＧＡＩＮ値を用いる。例えば、ＧＡＩＮ値として、加速度センサ１Ａについては０．９、加速度センサ１Ｂについては１．１などの数値を用いる。このＧＡＩＮ値は、加速度センサ１の機種ごとに求めておけばよい。
【００８４】
次に、処理部２０４は、ＧＡＩＮ値で修正した後のＸ軸の電圧値、Ｙ軸の電圧値、Ｚ軸の電圧値をそれぞれ角度に変換する（Ｓ１２０４）。この場合、処理部２０４は電圧値を重力方向に対する角度として変換する。
【００８５】
さらに、処理部２０４は、変換後の角度をＸ軸、Ｙ軸、Ｚ軸ごとにレジスタ２０９に記録する（Ｓ１２０５）。この場合、Ｘ軸の角度はレジスタ２０９のＧＰ−Ｘに記録する。Ｙ軸の角度はレジスタ２０９のＧＰ−Ｙに記録する。Ｚ軸の角度はレジスタ２０９のＧＰ−Ｚに記録する。そして、処理部２０４は、ＧＡＩＮ処理を伴う角度計算処理を終了する。
【００８６】
図１３において、傾き検出処理（図１０のＳ１００４の処理）について説明する。まず、処理部２０４は、レジスタ２０９のＧＰ−Ｘ、ＧＰ−Ｙに記録されている角度を取得する（Ｓ１３０１）。次に、処理部２０４は、レジスタ２０９のＧＰ−Ｘに記録されている角度がレジスタ２０９のＧＴＨＸに記録されている角度以下であるかを判定する（Ｓ１３０２）。
【００８７】
レジスタ２０９のＧＰ−Ｘに記録されている角度がレジスタ２０９のＧＴＨＸに記録されている角度以下である場合、処理部２０４は、レジスタ２０９のＧＰ−Ｙに記録されている角度がレジスタ２０９のＧＴＨＹに記録されている角度以下であるかを判定する（Ｓ１３０３）。
【００８８】
レジスタ２０９のＧＰ−Ｙに記録されている角度がレジスタ２０９のＧＴＨＹに記録されている角度以下である場合、処理部２０４は、傾き検出処理を終了する。
【００８９】
一方、レジスタ２０９のＧＰ−Ｘに記録されている角度がレジスタ２０９のＧＴＨＸに記録されている角度以下でない場合、（Ｓ１３０２の処理で否定と判定した場合）、処理部２０４は、レジスタ２０９にイベントフラグをセットする（Ｓ１３０４）。
【００９０】
そして、処理部２０４は、制御部３にイベントを通知する（Ｓ１３０５）。また、レジスタ２０９のＧＰ−Ｙに記録されている角度がレジスタ２０９のＧＴＨＹに記録されている角度以下でない場合（Ｓ１３０３の処理で否定と判定した場合）、処理部２０４は、Ｓ１３０４の処理を行う。
【００９１】
レジスタ２０９のＧＴＨＸ及びＧＴＨＹには、情報処理装置の稼動状態を変更するための基準となる角度を設定する。加速度センサ１が所定値以上傾いている場合、処理部２０４は、制御部３にイベントを通知する。そのため、制御部３は、イベントの通知を受けた場合に情報処理装置の稼動状態を変更することができる。
【００９２】
〈自己診断処理〉
自己診断処理は、ＮＶ−ＲＯＭ２０５に記録されている自己診断処理プログラムが処理部２０４に読み込まれることにより実行される。自己診断ドライバ２１０Ａは、信号線１０Ａを介してＡ／Ｄコンバータ２０８に入る電圧値を強制的に高電圧値又は低電圧値にする出力装置である。自己診断ドライバ２１０Ｂは、信号線１０Ｂを介してＡ／Ｄコンバータ２０８に入る電圧値を強制的に高電圧値又は低電圧値にする出力装置である。自己診断ドライバ２１０Ｃは、信号線１０Ｃを介してＡ／Ｄコンバータ２０８に入る電圧値を強制的に高電圧値又は低電圧値にする出力装置である。ここで、自己診断ドライバ２１０と表記する場合、自己診断ドライバ２１０Ａ、自己診断ドライバ２１０Ｂ、自己診断ドライバ２１０Ｃのすべてを含むものとする。
【００９３】
自己診断ドライバ２１０がＡ／Ｄコンバータ２０８に入る電圧値を強制的に上げた場合の電圧値を出力レベル高の電圧値という。自己診断ドライバ２１０がＡ／Ｄコンバータ２０８に入る電圧値を強制的に下げた場合の電圧値を出力レベル低の電圧値という。この場合、出力レベル高の電圧値又は出力レベル低の電圧値は、加速度センサ１が出力する電圧値と区別できる電圧値とする。すなわち、出力レベル高の電圧値又は出力レベル低の電圧値は、加速度センサ１が出力できない範囲の電圧値とする。
【００９４】
処理部２０４は、Ａ／Ｄコンバータ２０８に入る電圧値が出力レベル高の電圧値又は出力レベル低の電圧値となるように自己診断ドライバ２１０の駆動を制御することができる。処理部２０４は、Ａ／Ｄコンバータ２０８に入る電圧値が出力レベル高の電圧値となるように自己診断ドライバ２１０の駆動を制御した場合、自己診断制御レジスタ２１１のＤＩＡＧＢＩＴ１をセットする。処理部２０４は、Ａ／Ｄコンバータ２０８に入る電圧値が出力レベル高の電圧値となるように自己診断ドライバ２１０の駆動を制御した場合、自己診断制御レジスタ２１１のＤＩＡＧＢＩＴ１をリセットする。また、自己診断制御レジスタ２１１は、自己診断ドライバ２１０Ａ、自己診断ドライバ２１０Ｂ及び自己診断ドライバ２１０ＣごとにＤＩＡＧＢＩＴ１を有している。
【００９５】
また、処理部２０４は、自己診断ドライバ２１０の電圧値の出力を制御することができる。すなわち、処理部２０４は、自己診断ドライバ２１０の高インピーダンス状態を解除することにより、自己診断ドライバ２１０を出力状態にする。自己診断ドライバ２１０を出力状態にする場合、処理部２０４は、自己診断制御レジスタ２１１のＤＩＡＧＢＩＴ２をセットする。処理部２０４は、自己診断ドライバ２１０を高インピーダンス状態にする
ことにより、自己診断ドライバ２１０を出力停止状態にする。自己診断ドライバ２１０を出力停止状態にする場合、処理部２０４は、自己診断制御レジスタ２１１のＤＩＡＧＢＩＴ２をリセットする。通常、処理部２０４は、自己診断ドライバ２１０を出力停止状態にしておく。また、自己診断制御レジスタ２１１は、自己診断ドライバ２１０Ａ、自己診断ドライバ２１０Ｂ及び自己診断ドライバ２１０ＣごとにＤＩＡＧＢＩＴ２を有している。
【００９６】
図１５は、自己診断処理を説明するフローである。そして、処理部２０４は、自己診断ドライバ２１０の駆動を制御し、自己診断ドライバ２１０を出力状態にする（Ｓ１５０１）。この場合、処理部２０４は、Ａ／Ｄコンバータ２０８に入る電圧値が出力レベル高の電圧値又は出力レベル低の電圧値となるように、自己診断ドライバ２１０の駆動を制御する。
【００９７】
次に、処理部２０４は、Ａ／Ｄコンバータ２０８に入る電圧値が出力レベル高の電圧値又は出力レベル低の電圧値の規定範囲内であるかを判定する（Ｓ１５０２）。信号線１０が正常の状態であれば、Ａ／Ｄコンバータ２０８に入る電圧値は、出力レベル高の電圧値又は出力レベル低の電圧値の規定範囲内となる。すなわち、信号線１０に断線又は短絡等が発生した場合、Ａ／Ｄコンバータ２０８に入る電圧値は、出力レベル高の電圧値又は出力レベル低の電圧値の規定範囲内とならない。出力レベル高の電圧値又は出力レベル低の電圧値の規定範囲は、実験又はシミュレーションで求めておけばよい。
【００９８】
Ａ／Ｄコンバータ２０８に入る電圧値が出力レベル高の電圧値又は出力レベル低の電圧値の規定範囲内である場合、処理部２０４は、自己診断ドライバ２１０の駆動を制御し、自己診断ドライバ２１０を出力状態から出力停止状態にする（Ｓ１５０３）
一方、Ａ／Ｄコンバータ２０８に入る電圧値が出力レベル高の電圧値又は出力レベル低の電圧値の規定範囲内でない場合、処理部２０４は、レジスタ２０９にデバイスエラーフラグをセットする（Ｓ１５０４）。そして、処理部２０４は、自己診断処理を終了する。この場合、処理部２０４は、自己診断ドライバ２１０を出力状態から出力停止状態に制御してもよい。
【００９９】
次に、処理部２０４は、Ａ／Ｄコンバータ２０８に入る電圧値が加速度センサ１の出力電圧値の規定範囲内であるかを判定する（Ｓ１５０５）。加速度センサ１の出力電圧値とは、加速度センサ１が通常の動作時に出力する電圧値をいう。この場合、処理部２０４は、所定時間内において判定を行う。処理部２０４は、図示しないタイマにより、自己診断ドライバ２１０を出力状態から出力停止状態に制御してからの経過時間を計測する。この所定時間は任意に設定できる。
【０１００】
加速度センサが正常の状態であれば、Ａ／Ｄコンバータ２０８に入る電圧値は、加速度センサの出力電圧値の規定範囲内となる。すなわち、加速度センサの故障が発生した場合、Ａ／Ｄコンバータ２０８に入る電圧値は、加速度センサの出力電圧値の規定範囲内とならない。加速度センサの出力電圧値の規定範囲は、実験又はシミュレーションで求めておけばよい。
【０１０１】
Ａ／Ｄコンバータ２０８に入る電圧値が加速度センサの出力電圧値の規定範囲内である場合、処理部２０４は、自己診断処理を終了する。
【０１０２】
一方、Ａ／Ｄコンバータ２０８に入る電圧値が加速度センサの出力電圧値の規定範囲内でない場合、処理部２０４は、レジスタ２０９にデバイスエラーフラグをセットする（Ｓ１５０６）。そして、処理部２０４は、自己診断処理を終了する。
【０１０３】
このように、自己診断処理を行うことにより、加速度センサ１及び信号線１０が正常な
状態であるかを確認できる。すなわち、加速度センサ１とＭＣＵとが正しく接続されているかを確認できる。また、加速度センサ１が正しく動作しているかを確認できる。さらに信号線１０が正しく接続されているかを確認できる。また、信号線１０に断線や短絡等が発生しているかを確認できる。その結果、Ａ／Ｄコンバータ２０８が正常な状態であるかを確認できる。すなわち、Ａ／Ｄコンバータ２０８が正しく接続されているかを確認できる。また、Ａ／Ｄコンバータ２０８が正しく動作しているかを確認できる。
【０１０４】
次に、図１６を用いて、信号線１０Ａ、信号線１０Ｂ及び信号線１０Ｃごとに自己診断処理を行う場合について説明する。この処理は、処理部２０４が自己診断ドライバ２１０Ａ、自己診断ドライバ２１０Ｂ、自己診断ドライバ２１０Ｃの駆動を個別に制御する。そこで図１６では、代表として自己診断ドライバ２１０Ａを出力状態にした場合の処理について説明する。
【０１０５】
処理部２０４は、自己診断ドライバ２１０Ａの駆動を制御し、自己診断ドライバ２１０Ａを出力状態にする（Ｓ１６０１）。この場合、処理部２０４は、Ａ／Ｄコンバータ２０８に入る電圧値が出力レベル高の電圧値又は出力レベル低の電圧値となるように、自己診断ドライバ２１０Ａの駆動を制御する。
【０１０６】
次に、処理部２０４は、信号線１０Ａを介してＡ／Ｄコンバータ２０８に入る電圧値が出力レベル高の電圧値又は出力レベル低の電圧値の規定範囲内であるかを判定する（Ｓ１６０２）。
【０１０７】
信号線１０Ａを介してＡ／Ｄコンバータ２０８に入る電圧値が出力レベル高の電圧値又は出力レベル低の電圧値の規定範囲内である場合、処理部２０４は、信号線１０Ｂを介してＡ／Ｄコンバータ２０８に入る電圧値が加速度センサ１の出力電圧値の規定範囲内であるかを判定する（Ｓ１６０３）。
【０１０８】
信号線１０Ａが正常の状態の場合、Ａ／Ｄコンバータ２０８に入る電圧値は、出力レベル高の電圧値又は出力レベル低の電圧値の規定範囲内となる。すなわち、信号線１０Ａに断線又は短絡等が発生した場合、Ａ／Ｄコンバータ２０８に入る電圧値は、出力レベル高の電圧値又は出力レベル低の電圧値の規定範囲内とならない。信号線１０Ａを介してＡ／Ｄコンバータ２０８に入る出力レベル高の電圧値又は出力レベル低の電圧値の規定範囲は、実験又はシミュレーションで求めておけばよい。
【０１０９】
信号線１０Ｂを介してＡ／Ｄコンバータ２０８に入る電圧値が加速度センサ１の出力電圧値の規定範囲内である場合、処理部２０４は、信号線１０Ｃを介してＡ／Ｄコンバータ２０８に入る電圧値が加速度センサ１の出力電圧値の規定範囲内であるかを判定する（Ｓ１６０４）。
【０１１０】
信号線１０Ｂを介してＡ／Ｄコンバータ２０８に入る電圧値が加速度センサ１の出力電圧値の規定範囲内である場合、信号線１０Ａと信号線１０Ｂとの間は短絡が発生していない。すなわち、信号線１０Ａと信号線１０Ｂとの間に短絡が発生した場合、信号線１０Ｂを介してＡ／Ｄコンバータ２０８に入る電圧値は、出力レベル高の電圧値又は出力レベル低の電圧値の規定範囲内となる。その結果、処理部２０４は、信号線１０Ａと信号線１０Ｂとの間に短絡が発生しているかを検出できる。
【０１１１】
信号線１０Ｃを介してＡ／Ｄコンバータ２０８に入る電圧値が加速度センサ１の出力電圧値の規定範囲内である場合、処理部２０４は、自己診断ドライバ２１０Ａの駆動を制御し、自己診断ドライバ２１０Ａを出力状態から出力停止状態にする（Ｓ１６０５）。そして、処理部２０４は、自己診断ドライバ２１０Ａを出力状態にした場合の処理を終了する
。
【０１１２】
信号線１０Ｃを介してＡ／Ｄコンバータ２０８に入る電圧値が加速度センサ１の出力電圧値の規定範囲内であれば、信号線１０Ａと信号線１０Ｃとの間は短絡が発生していない。すなわち、信号線１０Ａと信号線１０Ｃとの間に短絡が発生していれば、信号線１０Ｃを介してＡ／Ｄコンバータ２０８に入る電圧値は、出力レベル高の電圧値又は出力レベル低の電圧値の規定範囲内となる。その結果、処理部２０４は、信号線１０Ａと信号線１０Ｃとの間に短絡が発生しているかを検出できる。
【０１１３】
一方、信号線１０Ａを介してＡ／Ｄコンバータ２０８に入る電圧値が出力レベル高の電圧値又は出力レベル低の電圧値の規定範囲内でない場合（Ｓ１６０２の処理で否定と判定した場合）、処理部２０４は、レジスタ２０９にデバイスエラーフラグをセットする（Ｓ１６０６）。そして、処理部２０４は、自己診断処理を終了する。この場合、処理部２０４は、自己診断ドライバ２１０Ａを出力状態から出力停止状態に制御してもよい。
【０１１４】
また、信号線１０Ｂを介してＡ／Ｄコンバータ２０８に入る電圧値が加速度センサ１の出力電圧値の規定範囲内でない場合（Ｓ１６０３の処理で否定と判定した場合）、処理部２０４は、レジスタ２０９にデバイスエラーフラグをセットする（Ｓ１６０７）。そして、処理部２０４は、自己診断処理を終了する。この場合、処理部２０４は、自己診断ドライバ２１０Ａを出力状態から出力停止状態に制御してもよい。
【０１１５】
また、信号線１０Ｃを介してＡ／Ｄコンバータ２０８に入る電圧値が加速度センサ１の出力電圧値の規定範囲内でない場合（Ｓ１６０４の処理で否定と判定した場合）、処理部２０４は、レジスタ２０９にデバイスエラーフラグをセットする（Ｓ１６０８）。そして、処理部２０４は、自己診断処理を終了する。この場合、処理部２０４は、自己診断ドライバ２１０Ａを出力状態から出力停止状態に制御してもよい。
【０１１６】
このように、処理部２０４は、信号線１０Ａと信号線１０Ｂとの間に短絡が発生しているかを検出できる。また、処理部２０４は、信号線１０Ａと信号線１０Ｃとの間に短絡が発生しているかを検出できる。
【０１１７】
しかし、信号線１０Ｂと信号線１０Ｃとの間の短絡によって、信号線１０Ｂを介してＡ／Ｄコンバータ２０８に入る電圧値と信号線１０Ｃを介してＡ／Ｄコンバータ２０８に入る電圧値が同じ値になる場合がある。例えば、信号線１０Ｂに断線が発生し、信号線１０Ｂと信号線１０Ｃとの間に短絡が発生する。信号線１０Ｂ及び信号線１０Ｃとの間の短絡箇所が信号線Ｂの断線箇所よりもＡ／Ｄコンバータ２０８に近い場合、信号線１０Ｂを介してＡ／Ｄコンバータ２０８に入る電圧値は、信号線１０Ｃを介してＡ／Ｄコンバータ２０８に入る電圧値と同じ値になる。すなわち、信号線１０Ｂに断線が発生しても、処理部２０４は、信号線１０Ｂの断線が発生したかを検出できない。
【０１１８】
そこで、処理部２０４は、自己診断ドライバ２１０Ｂの駆動を制御し、自己診断ドライバ２１０Ｂを出力状態にする。そして、処理部２０４は、図１６に示した処理と同様に自己診断ドライバ２１０Ｂを出力状態にした場合の処理を行う。すなわち、図１６の処理については、自己診断ドライバ２１０Ａを自己診断ドライバ２１０Ｂと読み替えて行う。そして、自己診断ドライバ２１０Ｂを自己診断ドライバ２１０Ａと読み替えて行う。さらに、信号線１０Ａを信号線１０Ｂと読み替えて行う。さらに、信号線１０Ｂを信号線１０Ａと読み替えて行う。
【０１１９】
また、処理部２０４は、自己診断ドライバ２１０Ｃの駆動を制御し、自己診断ドライバ２１０Ｃを出力状態にする。そして、処理部２０４は、図１６に示した処理と同様に自己
診断ドライバ２１０Ｃを出力状態にした場合の処理を行う。すなわち、図１６の処理については、自己診断ドライバ２１０Ａを自己診断ドライバ２１０Ｃと読み替えて行う。そして、自己診断ドライバ２１０Ｃを自己診断ドライバ２１０Ａと読み替えて行う。さらに、信号線１０Ａを信号線１０Ｃと読み替えて行う。さらに、信号線１０Ｃを信号線１０Ａと読み替えて行う。
【０１２０】
このように、処理部２０４は、自己診断ドライバ２１０Ａ、自己診断ドライバ２１０Ｂ及び自己診断ドライバ２１０Ｃをそれぞれ出力状態にする処理を行う。その結果、処理部２０４は、信号線１０Ａ、信号線１０Ｂ及び信号線１０Ｃのいずれにおいて断線が発生しているかを検出することができる。また、処理部２０４は、信号線１０Ａと信号線１０Ｂとの間で短絡が発生しているかを検出することができる。また、処理部２０４は、信号線１０Ａと信号線１０Ｃとの間で短絡が発生しているかを検出することができる。さらに、処理部２０４は、信号線１０Ｂと信号線１０Ｃとの間で短絡が発生しているかを検出することができる。
【０１２１】
自己診断処理はキャリブレーション処理の実行とともに行うことができる。具体的には、オペレーティングシステムインターフェース５０２が提供するキャリブレーションボタンが押下されることにより、キャリブレーション処理及び自己診断処理は実行される。また、自己診断処理がキャリブレーション処理の実行とともに行われている場合、処理部２０４は自己診断処理が終了する前にキャリブレーション処理を終了しないようにしてもよい。さらに、自己診断処理において、処理部２０４がレジスタ２０９にデバイスエラーフラグをセットした場合、処理部２０４はキャリブレーション処理を終了するようにしてもよい。
【０１２２】
また、自己診断処理を行う場合、図２で示す自己診断検出抵抗６を設けない構成にしてもよい。この場合、図９のＳ９０３からＳ９０５の処理に代えて、処理部２０４は自己診断処理を行うようにしてもよい。すなわち、図９のＳ９０２の処理の後、処理部２０４は自己診断処理を行う。そして、処理部２０４は、自己診断処理の終了後にＳ９０６の処理を行うようにしてもよい。図２で示す自己診断検出抵抗６を設けない構成にすることにより、図２で示す出力抵抗４のインピーダンスと自己診断検出抵抗６との抵抗値とのバラツキ（製造バラツキ）による誤差を抑制することができる。その結果、更に高精度の測定を行うことが可能となる。
【０１２３】
〈変形例〉
上記実施形態において、加速度センサに加えられた加速度を求める手段や加速度センサの角度を求める手段について説明した。ここでは、加速度センサに加えられた加速度をさらに精密に求める手段や加速度センサの角度をさらに精密に求める手段について説明する。
【０１２４】
図１７は、本実施形態の加速度センサ１を備えた基板１７０１を示す図である。図１７に示すように、基板１７０１は、一対の略Ｌ字形のスリット１７０２を、各スリット１７０２で略矩形を形成するように設けている。そして、各スリット１７０２の内側に加速度センサ１が備え付けられている。一対のスリット１７０２は、各辺が重なり合わないように基板１７０１に設けられている。また、一対のスリット１７０２は、各スリット１７０２が対象となるように基板１７０２に設けられている。さらに、一対のスリット１７０２は、各辺が所定の間隔を有するように基板１７０２に設けられている。スリット１７０２は、基板１７０１に略Ｌ字形に切り欠かれた切り欠きである。基板１７０１に一対のスリット１７０２を設けることにより、加速度センサ１に加わる応力が各スリット１７０２に吸収される。その結果、加速度センサ１を搭載した情報処理装置の残留応力によって生じた加速度センサ１に加わる応力が軽減される。
【０１２５】
〈コンピュータ読み取り可能な記録媒体〉
コンピュータに上記いずれかの機能を実現させるプログラムをコンピュータが読み取り可能な記録媒体に記録することができる。そして、コンピュータに、この記録媒体のプログラムを読み込ませて実行させることにより、その機能を提供させることができる。ここで、コンピュータ読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータから読み取ることができる記録媒体をいう。このような記録媒体のうちコンピュータから取り外し可能なものとしては、例えばフレキシブルディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ／Ｗ、ＤＶＤ、ＤＡＴ、８ｍｍテープ、メモリカード等がある。また、コンピュータに固定された記録媒体としてハードディスクやＲＯＭ（リードオンリーメモリー）等がある。
【０１２６】
（付記１）
一つの方向の加速度が所定時間継続したことを持ち上げ動作として検出する検出部と、
前記検出部によって検出された前記持ち上げ動作に応じて予め決められた制御を実行する制御部とを備える情報処理装置。
【０１２７】
（付記２）
前記制御は、前記情報処理装置の少なくとも一部の構成部品の動作を停止することを特徴とする付記１記載の情報処理装置。
【０１２８】
（付記３）
前記加速度が所定範囲以内に収まる場合に持ち上げ動作として検出する前記検出部であることを特徴とする付記１記載の情報処理装置。
【０１２９】
（付記４）
一つの方向の加速度が所定時間継続したことを持ち上げ動作として検出する検出ステップと、
前記検出ステップによって検出された前記持ち上げ動作に応じて予め決められた制御を実行する制御ステップとを備える持ち上げ動作検出方法。
【０１３０】
（付記５）
前記制御ステップは、情報処理装置の少なくとも一部の構成部品の動作を停止することを特徴とする付記４記載の持ち上げ動作検出方法。
【０１３１】
（付記６）
前記加速度が所定範囲以内に収まる場合に持ち上げ動作として検出する前記検出ステップであることを特徴とする付記４記載の持ち上げ動作検出方法。
【０１３２】
（付記７）
コンピュータに
一つの方向の加速度が所定時間継続したことを持ち上げ動作として検出する検出ステップと、
前記検出ステップによって検出された前記持ち上げ動作をアプリケーションプログラムに通知する通知ステップとを実行させるためのプログラム。
【０１３３】
（付記８）
前記アプリケーションプログラムは、情報処理装置の少なくとも一部の構成部品の動作を停止することを特徴とする付記７記載のプログラム。
【０１３４】
（付記９）
前記加速度が所定範囲以内に収まる場合に持ち上げ動作として検出する前記検出ステップであることを特徴とする付記７記載のプログラム。
【０１３５】
（付記１０）
少なくとも１つの軸の加速度を検出できる加速度センサと接続する情報処理装置において、
使用者からの補正指示が入力される補正指示入力部と、
前記補正指示に応じて、前記加速度センサを用いて、複数回前記情報処理装置にかかる少なくとも１軸の加速度に関する測定値を複数回測定する加速度測定部と、
前記加速度測定部の測定によって、得られた複数の前記測定値が特定の幅に収まることを判定する測定値判断部と、
前記測定値判断部によって、複数の前記測定値が特定の幅に収まることを判断した場合、複数の前記測定値を基に前記加速度センサの補正値を生成する補正値生成部とを有することを特徴とする情報処理装置。
【０１３６】
（付記１１）
複数の前記測定値が、第１の値以下であることを判定する最大値判定部をさらに備えることを特徴とする付記１０記載の情報処理装置。
【０１３７】
（付記１２）
複数の前記測定値が、第２の値以上であることを判定する最小値判定部をさらに備えることを特徴とする付記１０または１１記載の情報処理装置。
【０１３８】
（付記１３）
前記加速度センサと前記情報処理装置の接続線に電圧をかける自己診断ドライバをさらに備えることを特徴とする付記１０乃至１２いずれか一に記載の情報処理装置。
【０１３９】
（付記１４）
少なくとも１つの軸の加速度を検出できる加速度センサと接続する情報処理装置の補正方法において、
使用者からの補正指示が入力される補正指示入力ステップと、
前記補正指示に応じて、前記加速度センサを用いて、複数回前記情報処理装置にかかる少なくとも１軸の加速度に関する測定値を複数回測定する加速度測定ステップと、
前記加速度測定ステップの測定によって、得られた複数の前記測定値が特定の幅に収まることを判定する測定値判断ステップと、
前記測定値判断ステップによって、複数の前記測定値が特定の幅に収まることを判断した場合、複数の前記測定値を基に前記加速度センサの補正値を生成する補正値生成ステップとを有することを特徴とする補正方法。
【０１４０】
（付記１５）
複数の前記測定値が、第１の値以下であることを判定する最大値判定ステップをさらに備えることを特徴とする付記１４記載の補正方法。
【０１４１】
（付記１６）
複数の前記測定値が、第２の値以上であることを判定する最小値判定ステップをさらに備えることを特徴とする付記１４または１５記載の補正方法。
【０１４２】
（付記１７）
前記加速度センサと前記情報処理装置の接続線に電圧をかける自己診断ドライバを使って、自己診断を行う自己診断ステップをさらに備えることを特徴とする付記１４乃至１６いずれか一に記載の補正方法。
【０１４３】
（付記１８）
少なくとも１つの軸の加速度を検出できる加速度センサと接続するコンピュータに、
使用者からの補正指示が入力される補正指示入力ステップと、
前記補正指示に応じて、前記加速度センサを用いて、複数回前記情報処理装置にかかる少なくとも１軸の加速度に関する測定値を複数回測定する加速度測定ステップと、
前記加速度測定ステップの測定によって、得られた複数の前記測定値が特定の幅に収まることを判定する測定値判断ステップと、
前記測定値判断ステップによって、複数の前記測定値が特定の幅に収まることを判断した場合、複数の前記測定値を基に前記加速度センサの補正値を生成する補正値生成ステップとを実行させることを特徴とする補正プログラム。
【０１４４】
（付記１９）
複数の前記測定値が、第１の値以下であることを判定する最大値判定ステップをさらに備えることを特徴とする付記１８記載の補正プログラム。
【０１４５】
（付記２０）
複数の前記測定値が、第２の値以上であることを判定する最小値判定ステップをさらに備えることを特徴とする付記１８または１９記載の補正プログラム。
【０１４６】
（付記２１）
前記加速度センサと前記コンピューの接続線に電圧をかける自己診断ドライバを使って、自己診断を行う自己診断ステップをさらに備えることを特徴とする付記１８乃至２０いずれか一に記載の補正プログラム。
【図面の簡単な説明】
【０１４７】
【図１】本実施形態の情報処理装置のハードウェアブロック図である。
【図２】本実施形態の加速度センサ１及びＭＣＵ２の構成を示す図である。
【図３】Ｘ軸、Ｙ軸、Ｚ軸に加えられた加速度を検知する加速度センサ１の説明図である。
【図４】本実施形態の加速度センサ１の外観図である。
【図５】本実施形態の情報処理装置が備えるセンサ監視機能の機能ブロックを示す図である。
【図６】本実施形態の加速度センサ１の持ち上げの検出をセンサ監視ドライバ５０３に通知する処理のフローである。
【図７】センサ監視ドライバ５０３の動作を説明するフローである。
【図８】センサ監視アプリケーション５０１の動作を説明するフローである。
【図９】キャリブレーション処理を説明するフローである。
【図１０】角度計算処理及び傾き検出処理を説明するフローである。
【図１１】角度計算処理を説明するフローである。
【図１２】ＧＡＩＮ処理を伴う角度計算処理を説明するフローである。
【図１３】傾き検出処理を説明するフローである。
【図１４】キャリブレーション設定画面の例を示す図である。
【図１５】自己診断処理を説明するフローである。
【図１６】信号線１０Ａ、信号線１０Ｂ及び信号線１０Ｃごとに自己診断処理を行う場合について説明するフローである。
【図１７】本実施形態の加速度センサ１を備えた基板１７０１を示す図である。
【符号の説明】
【０１４８】
１    加速度センサ
２    ＭＣＵ
３    制御部
４    ＲＡＭ
５    ＲＯＭ
６    出力部
７    入力部
８    記録部
９    表示部
１０  信号線
１１  バス
２０１    加速度センサ素子
２０２    センスアンプ
２０３    出力抵抗
２０４    処理部
２０５    ＮＶ−ＲＯＭ
２０６    ＲＡＭ
２０７    マルチプレクサ
２０８    Ａ／Ｄコンバータ
２０９    レジスタ
２１０    自己診断ドライバ
２１１    自己診断制御レジスタ
２１２    コンデンサ
２１３    自己診断検出抵抗
５０１    センサ監視アプリケーション
５０２    オペレーティングシステムインターフェース
５０３    センサ監視ドライバ
１４０１  ボタン
１７０１  基板
１７０２  スリット
【図１】
2007233753.tif 000003
【図２】
2007233753.tif 000004
【図３】
2007233753.tif 000005
【図４】
2007233753.tif 000006
【図５】
2007233753.tif 000007
【図６】
2007233753.tif 000008
【図７】
2007233753.tif 000009
【図８】
2007233753.tif 000010
【図９】
2007233753.tif 000011
【図１０】
2007233753.tif 000012
【図１１】
2007233753.tif 000013
【図１２】
2007233753.tif 000014
【図１３】
2007233753.tif 000015
【図１４】
2007233753.tif 000016
【図１５】
2007233753.tif 000017
【図１６】
2007233753.tif 000018
【図１７】
2007233753.tif 000019