(57)【特許請求の範囲】
【請求項１】
所定の方向に加わった加速度に応じた検出信号から加速度を検出する加速度検出回路において、
前記検出信号の波形を検出する波形検出手段と、
前記波形検出手段で検出された波形に基づいて前記加速度を有効にするか無効にするかを判定する加速度判定手段とを有し、
前記検出信号の波形は、第１波と、該第１波の後に該第１波とは中心レベルを中心に対称に発生する第２波とを有し、
前記加速度判定手段は、前記第１波がきてから所定時間たっても前記第２波がこない場合には、前記第１波を前記第２波として扱い、前記検出信号の極性を反転させ、ロー又はハイレベルとし、前記第１波はミディアムレベルとし、加速度を判定することを特徴とする加速度検出回路。
【請求項２】
前記加速度判定手段は、前記波形のレベルに応じて前記第１波及び前記第２波を観測し、前記加速度を有効にするか、無効にするかを判定することを特徴とする請求項１記載の加速度検出回路。
【請求項３】
前記加速度判定手段は、前記波形が所定レベル以上となる期間に応じて前記第１波及び前記第２波を観測し、前記加速度を有効にするか、無効にするかを判定することを特徴とする請求項１又は２記載の加速度検出回路。
【請求項４】
所定の方向に加わった加速度に応じた検出信号の波形から第１波と、該第１波の後の第２波であって、該第１波とは中心レベルを中心に対称な該第２波とから、該加速度の検出を行う加速度検出方法において、
前記検出信号の波形を検出し、
検出された波形から前記第１波を検出し、前記第１波がきてから所定時間たっても、前記第２波がこない場合には、前記第１波を前記第２波として扱い、前記検出信号の極性を反転させ、ロー又はハイレベルとし、前記第１波はミディアムレベルとして、前記加速度を判定することを特徴とする加速度検出方法。
【請求項５】
前記波形のレベルに応じて前記第１波及び前記第２波を観測し、加速度を有効にするか、無効にするかを判定することを特徴とする請求項４記載の加速度検出方法。
【請求項６】
前記波形が所定レベル以上となる期間に応じて前記第１波及び前記第２波を観測し、前記加速度を有効にするか、無効にするかを判定することを特徴とする請求項４又は５記載の加速度検出方法。
【請求項７】
加速度に応じた検出信号を出力する加速度検出機構と、前記加速度検出機構からの検出信号の波形を検出する波形検出手段と、前記波形検出手段で検出された波形に基づいて前記加速度を有効にするか、無効にするかを判定する加速度判定手段とを有し、
前記検出信号の波形は、第１波と、該第１波の後に該第１波とは中心レベルを中心に対称に発生する第２波とを有し、
前記加速度判定手段は、前記第１波がきてから所定時間たっても前記第２波がこない場合には、前記第１波を前記第２波として扱い、前記検出信号の極性を反転させ、ロー又はハイレベルとし、前記第１波はミディアムレベルとし、前記加速度を判定することを特徴とする入力装置。
【請求項８】
前記加速度判定手段は、前記波形のレベルに応じて前記加速度を有効にするか、無効にするかを特徴とする請求項７記載の入力装置。
【請求項９】
前記加速度判定手段は、前記波形が所定レベル以上となる期間に応じて前記第１波及び前記第２波を観測し、前記加速度を有効にするか、無効にするかを判定することを特徴とする請求項７又は８記載の入力装置。
【請求項１０】
コンピュータに、
検出信号の波形を検出させる手順と、
検出された波形に基づいて第１波と、該第１波の後に該第１波とは中心レベルを中心に対称に発生する第２波を観測させる手順と、
前記第１波がきてから所定時間たっても前記第２波がこない場合には、前記第１波を前記第２波として扱い、前記検出信号の極性を反転させ、ロー又はハイレベルとし、前記第１波はミディアムレベルとする手順とを実行させるプログラムが記録されたコンピュータ読み取り可能な記録媒体。
【請求項１１】
前記波形のレベルに応じて前記第１波及び前記第２波を観測し、前記加速度を有効にするか、無効にするかを判定することを特徴とする請求項１０記載の記録媒体。
【請求項１２】
前記波形が所定レベル以上となる期間に応じて前記第１波及び前記第２波を観測し、前記加速度を有効にするか、無効にするかを判定することを特徴とする請求項１０又は１１記載の記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は加速度検出回路、加速度検出方法及び入力装置並びに記録媒体に係り、特に、センサからの入力信号に応じて加速度検出する加速度検出回路、加速度検出方法及び入力装置並びに記録媒体に関する。
【０００２】
近年、ゲーム装置の分野では、様々なアイデアが提案されており、それに伴い様々な入力方法が要求されている。このような、入力方法のひとつとして手足の動作を検出するための入力デバイスが要求されている。手足の動作を検出する方法としては、加速度を検出する方法が考えられる。加速度を検出するセンサとしては、錘とばねとを用いたものがあり、このようなセンサでは、バネの弾性により振動しが生じるため、不要な成分の信号が発生しやすい。
【０００３】
【従来の技術】
図１はゲーム装置における入力方法の一例を説明するための図を示す。
【０００４】
図１に示すゲームは、入力装置１、ゲーム機２、ディスプレイ３から構成される。入力装置１はプレーヤ４の手、足５に装着され、加速度を検出する。入力装置１で検出された加速度は、ゲーム機２に赤外線などを用いて送信される。
【０００５】
プレーヤ１が手、足５を動かすと、手足５の動きに応じて加速度が発生する。入力装置１は、この加速度を検出しゲーム機２に送信する。ゲーム機２は、入力装置１からの加速度により手足５に働いた力を検出し、ディスプレイ３に表示された仮想人物６にアクションを行なわせる。
【０００６】
図２は従来の入力装置の一例の構成図を示す。
【０００７】
入力装置１は、装置本体１１及び装着用バンド１２から構成される。
【０００８】
装置本体１１は、装着用バンド１２により手足５に装着され、手足５の動きに応じた加速度を検出し、ゲーム機２に送信する。装置本体１１は、ケース２１、カバー２２、プリント基板２３、スイッチボタン２４から構成される。
【０００９】
プリント基板２３は、ケース２１及びカバー２２により形成される収容スペースに収容される。プリント基板２３には、加速度センサ２５、電子部品２６、電池２７が搭載される。
【００１０】
図３は従来の加速度センサの一例の分解斜視図を示す。
【００１１】
加速度センサ２５は、プリント基板２３上に配置されたホール素子３１、及び、加速度検出機構３２から構成される。
【００１２】
加速度検出機構３２は、ベース４１、ハウジング４２、レバー４３、圧縮コイルスプリング４４、スライダ４５、カバー４６から構成される。レバー４３は、ベース４１の支持部４７で支持される。スライダ４５は、レバー４３にスライド自在に保持される。圧縮コイルスプリング４４は、スライダ４５とハウジング４２との間に圧縮された状態で保持される。ハウジング４２は、レバー４３の先端を矢印Ａ方向に貫通し、スライダ４５及び圧縮コイルスプリング４４がベース４１との間に収容されるようにベース４１に固定される。
【００１３】
レバー４３は、レバー本体５１、錘５２、永久磁石５３、キャップ５４から構成される。錘５２は、ハウジング４２から外部に延出されるレバー本体５１先端に固定される。永久磁石５３は、レバー本体５１の基底部に固定される。キャップ５４は、レバー本体５１の基底部に装着され、永久磁石５３をカバーする。
【００１４】
カバー４６は、レバー本体５１の先端に固定され、レバー本体５１の移動を規制する。加速度検出機構３２は、プリント基板２３のホール素子３１の上に固定される。
【００１５】
図４に従来の加速度センサの一例の動作説明図を示す。図４（Ａ）は加速度が働いていないときの状態、図４（Ｂ）は加速度が働いたときの状態を示す。
【００１６】
加速度が働いていない状態では、圧縮コイルスプリング４４の弾性によりスライダ４５がベース４２方向に押圧され、図４（Ａ）に示すようにレバー４３は、正立状態とされる。
【００１７】
錘５２に加速度が生じると、図４（Ｂ）に示すように圧縮コイルスプリング４４の弾性に抗しつつ、レバー４３がベース４１の支持部４７を中心にして回動する。レバー４３と、永久磁石５３がホール素子３３に対して変移する。永久磁石５３が変移することにより、ホール素子３３に印加される磁界の大きさが変化する。ホール素子３３は、印加される磁界の大きさに応じて出力を変化させる。ホール素子３３の出力に応じてレバー４３の傾斜を検出でき、錘５２に働いた加速度を検出できる。なお、ホール素子３３は、Ｘ、Ｙ方向に配置されており、Ｘ方向及びＹ方向の加速度を検出する。
【００１８】
なお、これらの機構の詳細については、本出願人が先に出願した特願平１０−９９５１７号に記載がある。
【００１９】
入力装置１は、上記のようにして検出されたＸ方向及びＹ方向の加速度から加速度の大きさ、加速度の方向を検出し、ゲーム機２に送信する。
【００２０】
【発明が解決しようとする課題】
しかるに、従来の加速度検出装置は加速度センサからの信号を単純に加速度として検出していたため、不要な動きの成分がノイズとして検出されるなどの問題点があった。
【００２１】
本発明は上記の点に鑑みてなされたもので、必要とする加速度成分を正確に抽出できる加速度検出回路、加速度検出方法及び入力装置並びに記録媒体を提供することを目的とする。
【００２２】
【課題を解決するための手段】
本発明は、所定の方向に加わった加速度に応じた検出信号から加速度を検出する加速度検出回路において、検出信号の波形を検出する波形検出手段と、波形検出手段で検出された波形に基づいて加速度を有効にするか無効にするかを判定する加速度判定手段とを有し、検出信号の波形は、第１波と、該第１波の後に該第１波とは中心レベルを中心に対称に発生する第２波とを有し、加速度判定手段は、第１波がきてから所定時間たっても第２波がこない場合には、第１波を第２波として扱い、検出信号の極性を反転させ、ロー又はハイレベルとし、第１波はミディアムレベルとし、加速度を判定する。
【００２９】
本発明によれば、正規の波形でない場合にも加速度を有効にできる。
【００３０】
【発明の実施の形態】
図５は本発明の一実施例のブロック構成図を示す。
【００３１】
本実施例の加速度検出装置１００は、検出部１０１、アナログ／ディジタル変換器１０２、制御部１０３、処理部１０４、タイマ部１０５から構成される。
【００３２】
検出部１０１は、レバーのＸ方向の変移を検出する第１のホール素子及びレバーのＹ方向の変移を検出する第２のホール素子に接続され、第１及び第２のホール素子からの第１及び第２のアナログ検出信号を受信する。検出部１０１は、Ｘ方向の変移に応じた第１のアナログ信号及びＹ方向の変移に応じた第２のアナログ信号をＡ／Ｄ変換器１０２に供給する。
【００３３】
Ａ／Ｄ変換器１０２は、第１及び第２のアナログ信号をそれぞれ、第１及び第２のディジタルデータに変換する。Ａ／Ｄ変換器１０２は、制御部１０３からのクロックに応じて変換タイミングが制御される。
【００３４】
制御部１０３は、タイマ部１０５からのクロックに応じてＡ／Ｄ変換器１０２の変換タイミングを制御する。処理部１０４は、タイマ部１０５からのクロックに応じて後述するようにＡ／Ｄ変換器１０２からの第１及び第２のディジタルデータから加速方向を検出する。
【００３５】
処理部１０４には、メモリが内蔵されている。メモリは、ＲＯＭ、ＲＡＭから構成される。ＲＯＭには、Ａ／Ｄ変換器１０２からのデータに基づいて加速度を検出するためのプログラムが記憶される。また、ＲＡＭは、プログラムを実行するときの作業用記憶領域として用いられる。
【００３６】
タイマ部１０５は、所定のクロックを制御部１０３及び処理部１０４に供給する。
【００３７】
次に、処理部１０４の波形認識処理について詳細に説明する。
【００３８】
本実施例の処理部１０４は、Ｘ方向、Ｙ方向の検出値の波形の変化に応じて加速度の加わった方向を認識する。
【００３９】
例えば、力が加わった際に生じる検出値の波形と加わった力が停止したときに生じる検出値の波形とにより加速度を認識する。
【００４０】
図６に本発明の一実施例の加速度検出値の波形図を示す。
【００４１】
加速度検出値は、主に第１波Ｗ１、及び第２波Ｗ２から構成される。第１波Ｗ１は、加速度を加えたときに発生する波形である。第２波Ｗ２は、加速度が停止したときに発生する波形である。また、正常な状態で加速度が印加されると、第１波Ｗ１の期間Ｔ１と第２波ｗ２を含む収束期間Ｔ２とは一定の関係となる。
【００４２】
処理部１０４は、この波形の変化を複数の閾値を設けて検出し、加速度の認識を行なう。
【００４３】
ここで、処理部１０４に設定される閾値について説明する。
【００４４】
図７は本発明の一実施例の閾値を示す図を示す。
【００４５】
処理部１０４には、第１、第２の閾値ＳＬ１、ＳＬ２が設定されている。第１の閾値ＳＬ１と第２の閾値ＳＬ２とは、中心値ＣＬに上下対象に設定されている。なお、中心値ＣＬは、電源などが投入されたときバイアスレベルである。第１の閾値ＳＬ１は、ハイレベルを検出する閾値である。第２の閾値ＳＬ２は、ローレベルを検出する閾値である。
【００４６】
処理部１０４は、検出値が第１の閾値ＳＬ１より大きいと、ハイレベルであると判定し、第１の閾値ＳＬ１と第２の閾値ＳＬ２との間にあるとミディアムレベルであると判定し、第２の閾値ＳＬ２より小さいと、ローレベルであると判定し、その判定結果に基づいて加速度を認識する。
【００４７】
処理部１０４の処理は、主に入力パターン一致処理、入力パターン修正処理、加速度測定処理から構成される。
【００４８】
入力パターン一致処理は、入力パターンが加速度のパターンと一致するか否かを判定するための処理である。
【００４９】
処理部１０４は、検出値を監視していて、Ｘ方向又はＹ方向の検出値のいずれかが第１又は第２の閾値ＳＬ１、ＳＬ２を超えたると入力パターン一致処理を開始する。このとき、Ｘ方向の検出値とＹ方向の検出値とが同タイミングで、検出されるとは限らないので、初期検出値がミディアムレベルの場合、一定時間内に波形に変化があれば、初期検出値をそのときのレベルに設定する。
【００５０】
検出値が両方とも再び閾値ミディアムレベルとなることで、第１波Ｗ１が終了したと判定する。
【００５１】
入力パターン修正処理は、ショート処理、キャンセル処理、ノイズ処理、反転処理から構成される。
【００５２】
まず、ショート処理について詳細に説明する。
【００５３】
ショート処理は、第１波Ｗ１の継続期間Ｔ１に応じて採用する方向を決定する処理である。
【００５４】
図８は本発明の一実施例の処理部の動作説明図を示す。
【００５５】
図８（Ａ）に示すようにＸ方向の第１波Ｗ１の期間Ｔ１がＴ１１、Ｙ方向の第１波Ｗ１の期間Ｔ１がＴ１２である場合には、Ｔ１１とＴ１２との比に応じて採用するか否かを決定する。例えば、Ｔ１２がＴ１１の５０％以下の場合には、Ｙ方向の検出値は採用しないようにする。
【００５６】
また、図８（Ｂ）に示すようにＹ方向の第１波Ｗ１が一度ハイレベルとなった後、ミディアムレベルとされ、再びハイレベルとされている場合には、２つのハイレベル期間を足した期間をハイレベル期間とし、波形の判定を行なう。
【００５７】
さらに、図８（Ｃ）に示すようにＹ方向の第１波Ｗ１が一度ハイレベルとなった後、ローレベルとされ、再びハイレベルとされている場合には、２つのハイレベルの期間を連続した第１波とは認識しないようにする。
【００５８】
次にキャンセル処理について説明する。
【００５９】
キャンセル処理は、Ｘ方向のピーク値とＹ方向のピーク値との比に応じて検出値をキャンセルする処理である。
【００６０】
図９に本発明の一実施例のキャンセル処理の動作説明図を示す。
【００６１】
例えば、図９（Ａ）に示すようにＹ方向の検出値ＶｘがＸ方向の検出値Ｖｙに比べて小さく場合には、Ｙ方向の検出値をミディアムレベルとする。
【００６２】
しかし、図９（Ｂ）に示すようにＹ方向の検出値ＶｘがＸ方向の検出値Ｖｙに比べて小さく場合でも、ショート処理の対象である場合には、Ｘ方向の検出値をミディアムレベルとする。
【００６３】
次に、ノイズ処理につてい説明する。
ノイズ処理は、検出値をノイズとして検出する処理である。
【００６４】
図１０に本発明の一実施例のノイズ処理の動作説明図を示す。
【００６５】
図１０（Ａ）に示すようにＹ方向の検出値において第１波Ｗ１が検出されてから一定時間、例えば、１００ｍｓ経過しても第２波Ｗ２が発生しない場合には、Ｙ方向の検出値の第１波Ｗ１をキャンセルし、ミディアムレベルとする。
【００６６】
しかし、図１０（Ｂ）に示すようにＸ方向の検出値がショート処理の対象となっている場合には、ショート処理を優先させ、Ｙ方向の検出値を採用する。
【００６７】
また、図１０（Ｃ）に示すようにＸ方向の検出値が検出されな場合には、キャンセル処理は行なわないようにする。
【００６８】
次に反転処理について説明する。
【００６９】
反転処理は、第１波Ｗ１と第２波ｗ２とを反転させて考える処理である。
【００７０】
図１１、図１２は本発明の一実施例の反転処理の動作説明図を示す。
【００７１】
図１１（Ａ）に示すようにＹ方向の検出値において第１波Ｗ１が来てから所定時間たっても第２波Ｗ２がこない場合に、Ｙ方向の検出値の第１波ｗ１を第２波Ｗ２として扱い、検出値の極性を反転させ、ローレベルとし、第１波Ｗ１はミディアムレベルとする。
【００７２】
図１１（Ｂ）に示すようにＸ方向の検出値も第１波Ｗ１がきてから所定時間たっても第２波Ｗ２がこない場合には、Ｘ方向の検出値も第１波Ｗ１を第２波Ｗ２として扱い、検出値の極性を反転させ、ハイレベルとし、第１波Ｗ１はミディアムレベルとする。
【００７３】
図１１（Ｃ）に示すようにＸ方向の検出値の波形が条件を満たしている場合には、Ｙ方向の検出値に対して反転処理は行なわない。
【００７４】
図１２（Ａ）に示すようにＸ方向の検出値がキャンセル処理の対象となっている場合には、Ｙ方向の検出値を採用する。しかし、このとき、Ｘ方向の検出値から第１波Ｗ１を認識できるので、Ｙ方向の検出値に対しては反転処理は行なわない。
【００７５】
図１２（Ｂ）に示すようにＸ方向の検出値がショート処理の対象となっている場合には、Ｙ方向の検出値を採用する。しかし、Ｘ方向の検出値から第１波Ｗ１を認識できるので、Ｙ方向の検出値に対しては反転処理は行なわない。
【００７６】
次に、加速度測定処理について説明する。
【００７７】
加速度測定処理は、加速度を測定するための処理である。
【００７８】
加速度は、まず、第１波ｗ１のピーク検出値Ｄpeekとパターン一致処理開始時からピーク検出値Ｄpeekに達するまでの時間Ｔpeekを測定し、例えば、（Ｄpeek／Ｔpeek）を加速度とする。なお、加速度は、ピーク検出値Ｄpeekと時間Ｔpeekとの関数から求めるようにしてもよい。
【００７９】
次に、処理部１２の処理の詳細について説明する。
【００８０】
図１３は本発明の一実施例の波形認識処理の処理フローチャートを示す。
【００８１】
波形認識処理は、ステップＳ１−１〜Ｓ１−１２の処理から構成される。
【００８２】
ステップＳ１−１は、第１波形を確定済みか否かを判定するステップである。処理部１０４は、ステップＳ１−１で第１波形が確定済みでないと判定した場合には、次にステップＳ１−２を実行する。
【００８３】
ステップＳ１−２は、第１波形の判定中か否かを判定するステップである。処理部１０４は、ステップＳ１−２で第１波形の判定中でないと判断した場合には、次にステップＳ１−３を実行する。
【００８４】
ステップＳ１−３は、初期検出レベルを設定するステップである。ステップＳ１−３の処理については後で図面とともに詳細に説明する。
【００８５】
また、処理部１０４がステップＳ１−２で第１波形を判定中であるの場合には、次にステップＳ１−４を実行する。ステップＳ１−４は、第１波形を確定するステップである。ステップＳ１−４の処理については後で図面とともに詳細に説明する。
【００８６】
ステップＳ１−５は、ステップＳ１−４で第１波形が確定したか否かを判定するステップである。処理部１−４は、ステップＳ１−５で第１波形が確定したと判定した場合には、次にステップＳ１−６を実行する。ステップＳ１−６はキャンセル処理を行なうステップである。ステップＳ１−６のキャンセル処理については後で図面とともに詳細に説明する。
【００８７】
また、処理部１０４は、ステップＳ１−１で第１波形が確定済みであると判定した場合には、ステップＳ１−７を実行する。ステップＳ１−７は、第２波形が確定済みか否かを判定するステップである。
【００８８】
処理部１０４は、ステップＳ１−７で、第２波形が不確定であると判定した場合には、ステップＳ１−８を実行する。ステップＳ１−８は、第２波待機処理を行なうステップである。ステップＳ１−８の処理については後で図面とともに詳細に説明する。また、ステップＳ１−９は、パターン判定用フラグレジスタを初期化するステップである。
【００８９】
ステップＳ１−７で、第２波形が確定済みであると判定された場合には、ステップＳ１−１０が実行される。ステップＳ１−１０は、電圧安定待ち受け処理を行なうステップである。ステップＳ１−１０の処理については後で図面とともに詳細に説明する。
【００９０】
ステップＳ１−１１は、電圧が安定したか否かを判定するステップである。処理部１０４は、ステップＳ１−１１で電圧が安定したと判定すると、ステップＳ１−１２を実行する。ステップＳ１−１２は、パターン設定処理を行なうステップである。ステップＳ１−１２の処理については後で図面とともに詳細に説明する。
【００９１】
処理部１０４が上記ステップＳ１−１〜Ｓ１−１２を繰り返すことにより、加速度及びその方向が検出される。
【００９２】
次に、ステップＳ１−３の初期検出レベル設定処理について詳細に説明する。
【００９３】
図１４は本発明の一実施例の初期検出レベル設定処理の処理フローチャートを示す。
【００９４】
初期検出レベル設定処理は、ステップＳ２−１〜Ｓ２−１１のステップから構成される。ステップＳ２−１〜Ｓ２−５はＸ方向の初期検出レベルを設定する処理であり、ステップＳ２−６〜Ｓ２−１１はＹ方向の初期検出レベルを設定する処理である。
【００９５】
ステップＳ２−１は、Ｘ方向の検出値がハイレベルか否かを判定するステップである。処理部１０４は、ステップＳ２−１でＸ方向の検出値がハイレベルであると判定した場合には、ステップＳ２−２を実行する。ステップＳ２−２は、Ｘ方向の初期検出レベルをハイレベルに設定するステップである。
【００９６】
処理部１０４は、ステップＳ２−１でＸ方向の検出値がハイレベルでないと判定した場合には、次にステップＳ２−３を実行する。ステップＳ２−３はＸ方向の検出値がローレベルか否かを判定するステップである。
【００９７】
処理部１０４は、ステップＳ２−３でＸ方向の検出値がローレベルであると判定した場合には、ステップＳ２−４を実行する。ステップＳ２−４は、Ｘ方向の初期検出レベルをローレベルに設定するステップである。
【００９８】
また、処理部１０４は、ステップＳ２−３でＸ方向の検出値がローレベルではないと判定した場合には、ステップＳ２−５を実行する。ステップＳ２−５は、Ｘ方向の初期検出レベルをミディアムレベルに設定するステップである。
【００９９】
なお、処理部１０４は、Ｘ方向の検出値が第１の閾値より大きいときには、ハイレベルであると判定し、Ｘ方向の検出値が第２の閾値より小さいときには、ローレベルであると判定する。
【０１００】
ステップＳ２−６は、Ｙ方向の検出値がハイレベルか否かを判定するステップである。処理部１０４は、ステップＳ２−６でＹ方向の検出値がハイレベルであると判定した場合には、ステップＳ２−７を実行する。ステップＳ２−７は、Ｙ方向の初期検出レベルをハイレベルに設定するステップである。
【０１０１】
処理部１０４は、ステップＳ２−６でＹ方向の検出値がハイレベルでないと判定した場合には、次にステップＳ２−８を実行する。ステップＳ２−８はＹ方向の検出値がローレベルか否かを判定するステップである。
【０１０２】
処理部１０４は、ステップＳ２−８でＹ方向の検出値がローレベルであると判定した場合には、ステップＳ２−９を実行する。ステップＳ２−９は、Ｙ方向の初期検出レベルをローレベルに設定するステップである。
【０１０３】
また、処理部１０４は、ステップＳ２−８でＸ方向の検出値がローレベルではないと判定した場合には、ステップＳ２−１０を実行する。ステップＳ２−１０は、Ｘ方向の初期検出レベルをミディアムレベルに設定するステップである。
【０１０４】
なお、処理部１０４は、Ｙ方向の検出値が第１の閾値より大きいときには、ハイレベルであると判定し、Ｙ方向の検出値が第２の閾値より小さいときには、ローレベルであると判定する。
【０１０５】
以上により入力波形の初期検出レベルが判定される。
【０１０６】
次に、ステップＳ１−４の第１波形確定処理について詳細に説明する。
【０１０７】
図１５は本発明の一実施例の第１波形確定処理の処理フローチャートを示す。
【０１０８】
第１波形確定処理は、ステップＳ３−１〜Ｓ３−１１から構成される。
【０１０９】
ステップＳ３−１は、Ｘ方向の検出レベルの判定が終了したか否かを判定するステップである。処理部１０４はステップＳ３−１でＸ方向の検出レベルの判定が終了したと判定した場合には、ステップＳ３−２を実行する。ステップＳ３−２は、Ｘ判定処理を実行するステップである。ステップＳ３−２の処理については後で図面とともに詳細に説明する。
【０１１０】
処理部１０４はステップＳ３−１でＸ判定処理が終了したと判定すると、ステップＳ３−３を実行する。ステップＳ３−３は、Ｙ方向の検出レベルの判定が終了したか否かを判定するステップである。処理部１０４はステップＳ３−３でＹ方向の検出レベルの判定が終了したと判定した場合には、ステップＳ３−４を実行する。ステップＳ３−４は、Ｙ判定処理を実行するステップである。ステップＳ３−４の処理については後で図面とともに詳細に説明する。
【０１１１】
ステップＳ３−５は、ステップＳ３−２、Ｓ３−４の判定処理結果、Ｘ、Ｙ方向の波形に変化があるか否かを判定するステップである。処理部１０４は、ステップＳ３−５でＸ，Ｙ方向の波形に変化があると判定した場合には、ステップＳ３―６を実行する。ステップＳ３−６は、Ｘ、Ｙ方向波形変化有を示す設定及びＸ、Ｙ方向波形のチェック終了を示す設定を解除するステップである。
【０１１２】
ステップＳ３−７は、Ｘ方向の波形の観測時間をＹ方向の波形観測時間と比較し、Ｘ方向波形の観測時間がＹ方向波形の観測時間のａ％以下か否かを判定するステップである。ａは、予め設定された値であり、経験的に求められる。処理部１０４は、ステップＳ３−７でＸ方向波形の観測時間がＹ方向波形の観測時間のａ％以下であると判定した場合には、ステップＳ３−８を実行する。ステップＳ３−８は、Ｘ方向の波形がＹ方向の波形に比べてショートである設定を行なうステップである。
【０１１３】
処理部１０４は、ステップＳ３−７でＸ方向波形の観測時間がＹ方向波形の観測時間のａ％以下でないと判定した場合には、ステップＳ３−９を実行する。ステップＳ３−９は、Ｙ方向の波形の観測時間をＸ方向の波形観測時間と比較し、Ｙ方向波形の観測時間がＸ方向波形の観測時間のａ％以下か否かを判定するステップである。
【０１１４】
処理部１０４は、ステップＳ３−９でＹ方向波形の観測時間がＸ方向波形の観測時間のａ％以下であると判定した場合には、ステップＳ３−１０を実行する。ステップＳ３−１０は、Ｙ方向の波形がＸ方向の波形に比べてショートである設定を行なうステップである。
【０１１５】
ステップＳ３−１１は、初期波形確定を示す設定を行なうとともに、波形判定中を示す設定を解除するステップである。
【０１１６】
以上により、第１波形が確定する。
【０１１７】
次に、ステップＳ３−２のＸ判定処理について詳細に説明する。
【０１１８】
図１６に本発明の一実施例のＸ判定処理の処理フローチャートを示す。
【０１１９】
Ｘ判定処理は、ステップＳ４−１〜Ｓ４−１９から構成される。
【０１２０】
ステップＳ４−１は、Ｘ方向の初期検出値がハイレベルか否かを判定するステップである。処理部１０４は、ステップＳ４−１で初期検出値がハイレベルであると判定すると、ステップＳ４−２を実行する。ステップＳ４−２は、Ｘ方向の検出値がローレベルが否かを判定するステップである。
【０１２１】
処理部１０４は、ステップＳ４−２で検出値がローレベルであると判定した場合には、ステップＳ４−３、Ｓ４−４を実行する。ステップＳ４−３は、Ｘ方向の検出値のチェックが終了した旨の設定を行なうステップである。ステップＳ４−４は、Ｘ方向の検出値に変化がある旨の設定を行なうステップである。
【０１２２】
処理部１０４は、ステップＳ４−２で検出値がハイレベルであると判定した場合には、ステップＳ４−５を実行する。ステップＳ４−５は、Ｘ方向の検出値がミディアムレベルであるか否かを判定するステップである。
【０１２３】
処理部１０４は、ステップＳ４−５でＸ方向の検出値がミディアムレベルであると判定した場合には、ステップＳ４−４を実行する。また、処理部１０４は、ステップＳ４−５でＸ方向の検出値がミディアムレベルでないと判定した場合には、ステップＳ４−６を実行する。ステップＳ４−６は、その検出値をＸ方向のピーク値に更新するステップである。
【０１２４】
処理部１０４は、ステップＳ４−１で初期検出値がハイレベルではないと判定すると、ステップＳ４−７を実行する。ステップＳ４−７は、Ｘ方向の初期検出値がローレベルか否かを判定するステップである。
【０１２５】
処理部１０４は、ステップＳ４−７で初期検出値がローレベルであると判定すると、ステップＳ４−８を実行する。ステップＳ４−８は、Ｘ方向の検出値がハイレベルか否かを判定するステップである。
【０１２６】
処理部１０４は、ステップＳ４−８で検出値がハイレベルであると判定すると、ステップＳ４−９、Ｓ４−１０を実行する。ステップＳ４−９は、Ｘ方向の検出値のチェックが終了した旨の設定を行なうステップである。ステップＳ４−９は、Ｘ方向の検出値に変化が有る旨の設定を行なうステップである。
【０１２７】
処理部１０４は、ステップＳ４−８で検出値がハイレベルではないと判定すると、ステップＳ４−１１を実行する。ステップＳ４−１１は、Ｘ方向の検出値がミディアムレベルか否かを判定する。
【０１２８】
処理部１０４は、ステップＳ４−１１で検出値がミディアムレベルであると判定した場合には、ステップＳ４−１０を実行する。また、処理部１０４は、ステップＳ４−１１で検出値がミディアムレベルでないと判定したときには、ステップＳ４−１２を実行する。ステップＳ４−１２は、検出値をＸ方向のピーク値として更新するステップである。
【０１２９】
処理部１０４は、ステップＳ４−７で初期検出値がローレベルではないと判定した場合には、ステップＳ４−１３を実行する。ステップＳ４−１３は、検出値がハイレベルか否かを判定するステップである。
【０１３０】
処理部１０４は、ステップＳ４−１３で検出値がハイレベルであると判定した場合には、ステップＳ４−１４、Ｓ４−１５を実行する。ステップＳ４−１４は、Ｘ方向の初期検出値をハイレベルに設定するステップである。ステップＳ４−１５は、検出値の測定時間を初期化するステップである。
【０１３１】
処理部１０４は、ステップＳ４−１３で検出値がハイレベルではないと判定した場合には、ステップＳ４−１６を実行する。ステップＳ４−１６は、Ｘ方向の検出値がローレベルか否かを判定するステップである。
【０１３２】
処理部１０４は、ステップＳ４−１６で検出値がローレベルであると判定すると、ステップＳ４−１７、Ｓ４−１５を実行する。ステップＳ４−１７は、Ｘ方向の初期検出値をローレベルに設定するステップである。
【０１３３】
また、処理部１０４は、ステップＳ４−１６で検出値がローレベルではないと判定した場合には、ステップＳ４−１８を実行する。ステップＳ４−１８は、Ｘ方向の検出値がミディアムレベルである状態がｂ時間以上か否かを判定するステップである。ｂは、予め設定された時間であり、入力機構の特性などに基づいて経験的に求められる。
【０１３４】
処理部１０４は、ステップＳ４−１８でミディアムレベル状態がｂ時間以上継続したと判定した場合には、ステップＳ４−１９が実行される。ステップＳ４−１９は、Ｘ方向の検出値に波形変化がある旨の設定を行なうステップである。また、処理部１０４は、ステップＳ４−１８でミディアムレベル状態がｂ時間以上継続していないと判定した場合には、そのまま処理を停止する。
【０１３５】
以上により、Ｘ方向の検出値の状態が判定される。
【０１３６】
次にステップＳ３−４のＹ判定処理について詳細に説明する。
【０１３７】
図１７に本発明の一実施例のＹ判定処理の処理フローチャートを示す。
【０１３８】
Ｙ判定処理は、ステップＳ５−１〜Ｓ５−１９から構成される。
【０１３９】
ステップＳ５−１は、Ｙ方向の初期検出値がハイレベルか否かを判定するステップである。処理部１０４は、ステップＳ５−１で初期検出値がハイレベルであると判定すると、ステップＳ５−２を実行する。ステップＳ５−２は、Ｙ方向の検出値がローレベルが否かを判定するステップである。
【０１４０】
処理部１０４は、ステップＳ５−２で検出値がローレベルであると判定した場合には、ステップＳ５−３、Ｓ５−４を実行する。ステップＳ５−３は、Ｙ方向の検出値のチェックが終了した旨の設定を行なうステップである。ステップＳ５−４は、Ｙ方向の検出値に変化がある旨の設定を行なうステップである。
【０１４１】
処理部１０４は、ステップＳ５−２で検出値がハイレベルであると判定した場合には、ステップＳ５−５を実行する。ステップＳ５−５は、Ｙ方向の検出値がミディアムレベルであるか否かを判定するステップである。
【０１４２】
処理部１０４は、ステップＳ５−５でＹ方向の検出値がミディアムレベルであると判定した場合には、ステップＳ５−４を実行する。また、処理部１０４は、ステップＳ５−５でＹ方向の検出値がミディアムレベルでないと判定した場合には、ステップＳ５−６を実行する。ステップＳ５−６は、その検出値をＹ方向のピーク値に更新するステップである。
【０１４３】
処理部１０４は、ステップＳ５−１で初期検出値がハイレベルではないと判定すると、ステップＳ５−７を実行する。ステップＳ５−７は、Ｙ方向の初期検出値がローレベルか否かを判定するステップである。
【０１４４】
処理部１０４は、ステップＳ５−７で初期検出値がローレベルであると判定すると、ステップＳ５−８を実行する。ステップＳ５−８は、Ｙ方向の検出値がハイレベルか否かを判定するステップである。
【０１４５】
処理部１０４は、ステップＳ５−８で検出値がハイレベルであると判定すると、ステップＳ５−９、Ｓ５−１０を実行する。ステップＳ５−９は、Ｙ方向の検出値のチェックが終了した旨の設定を行なうステップである。ステップＳ５−９は、Ｙ方向の検出値に変化が有る旨の設定を行なうステップである。
【０１４６】
処理部１０４は、ステップＳ５−８で検出値がハイレベルではないと判定すると、ステップＳ５−１１を実行する。ステップＳ５−１１は、Ｙ方向の検出値がミディアムレベルか否かを判定する。
【０１４７】
処理部１０４は、ステップＳ５−１１で検出値がミディアムレベルであると判定した場合には、ステップＳ５−１０を実行する。また、処理部１０４は、ステップＳ５−１１で検出値がミディアムレベルでないと判定したときには、ステップＳ５−１２を実行する。ステップＳ５−１２は、検出値をＹ方向のピーク値として更新するステップである。
【０１４８】
処理部１０４は、ステップＳ５−７で初期検出値がローレベルではないと判定した場合には、ステップＳ５−１３を実行する。ステップＳ５−１３は、検出値がハイレベルか否かを判定するステップである。
【０１４９】
処理部１０４は、ステップＳ５−１３で検出値がハイレベルであると判定した場合には、ステップＳ５−１４、Ｓ５−１５を実行する。ステップＳ５−１４は、Ｙ方向の初期検出値をハイレベルに設定するステップである。ステップＳ５−１５は、検出値の測定時間を初期化するステップである。
【０１５０】
処理部１０４は、ステップＳ５−１３で検出値がハイレベルではないと判定した場合には、ステップＳ５−１６を実行する。ステップＳ５−１６は、Ｙ方向の検出値がローレベルか否かを判定するステップである。
【０１５１】
処理部１０４は、ステップＳ５−１６で検出値がローレベルであると判定すると、ステップＳ５−１７、Ｓ５−１５を実行する。ステップＳ５−１７は、Ｙ方向の初期検出値をローレベルに設定するステップである。
【０１５２】
また、処理部１０４は、ステップＳ５−１６で検出値がローレベルではないと判定した場合には、ステップＳ５−１８を実行する。ステップＳ５−１８は、Ｙ方向の検出値がミディアムレベルである状態がｂ時間以上か否かを判定するステップである。ｂは、予め設定された時間であり、入力機構の特性などに基づいて経験的に求められる。
【０１５３】
処理部１０４は、ステップＳ５−１８でミディアムレベル状態がｂ時間以上継続したと判定した場合には、ステップＳ５−１９が実行される。ステップＳ５−１９は、Ｙ方向の検出値に波形変化がある旨の設定を行なうステップである。また、処理部１０４は、ステップＳ５−１８でミディアムレベル状態がｂ時間以上継続していないと判定した場合には、そのまま処理を停止する。
【０１５４】
以上により、Ｙ方向の検出値の状態が判定される。
【０１５５】
次に、ステップＳ１−６のキャンセル処理について詳細に説明する。
【０１５６】
図１８に本発明の一実施例のキャンセル処理の処理フローチャートを示す。
【０１５７】
キャンセル処理は、ステップＳ６−１〜Ｓ６−９から構成される。
【０１５８】
ステップＳ６−１は、Ｘ方向、Ｙ方向のピーク値を導入するステップである。なお、ピーク値は、中心値からの大きさで表される。ステップＳ６−２は、Ｘ方向のピーク値とＹ方向のピーク値とを比較し、Ｘ方向のピーク値がＹ方向のピーク値のｃ％以下か否かを判定するステップである。ｃは、処理部１０４に予め設定された値であり、経験的に求められる。
【０１５９】
処理部１０４は、ステップＳ６−２でＸ方向のピーク値がＹ方向のピーク値のｃ％以下であると判定した場合には、次にステップＳ６−３を実行する。ステップＳ６−３は、Ｙ方向の初期検出値がミディアムレベルか否かを判定するステップである。
【０１６０】
処理部１０４は、ステップＳ６−３でＹ方向の初期検出値がミディアムレベルであると判定した場合には、そのまま処理を終了する。また、処理部１０４は、ステップＳ６−３でＹ方向の初期検出値がミディアムレベルではないと判定した場合には、ステップＳ６−４を実行する。ステップＳ６−４は、Ｙ方向検出値がショートである旨を示す設定があるか否かを判定するステップである。なお、Ｙ方向検出値がショートである旨の設定は、ステップＳ３−１０で行なわれる。
【０１６１】
処理部１０４は、ステップＳ６−４でＹショートが設定されているときには、そのまま処理を終了する。また、処理部１０４は、ステップＳ６−４でＹショートが設定されているときには、ステップＳ６−５を実行する。ステップＳ６−５は、Ｘ方向検出をキャンセルするＸＣＡＮＳＬをセットするステップである。
【０１６２】
処理部１０４は、ステップＳ６−２で、Ｘ方向のピーク値がＹ方向のピーク値のｃ％以下ではないと判定した場合には、次にステップＳ６−６を実行する。ステップＳ６−６は、Ｘ方向のピーク値とＹ方向のピーク値とを比較し、Ｙ方向のピーク値がＸ方向のピーク値のｃ％以下か否かを判定するステップである。
【０１６３】
処理部１０４は、ステップＳ６−６でＹ方向のピーク値がＸ方向のピーク値のｃ％以下であると判定した場合には、そのまま処理を終了する。また、処理部１０４は、ステップＳ６−６でＹ方向のピーク値がＸ方向のピーク値のｃ％以下でないと判定した場合には、ステップＳ６−７を実行する。ステップＳ６−７は、Ｘ方向の初期検出値がミディアムレベルか否かを判定するステップである。
【０１６４】
処理部１０４は、ステップＳ６−７でＸ方向の初期検出値がミディアムレベルであると判定した場合には、そのまま処理を終了する。また、処理部１０４は、ステップＳ６−７でＸ方向の初期検出値がミディアムレベルではないと判定した場合には、ステップＳ６−８を実行する。ステップＳ６−８は、Ｘ方向検出値がショートである旨を示す設定があるか否かを判定するステップである。なお、Ｘ方向検出値がショートである旨の設定は、ステップＳ３−８で行なわれる。
【０１６５】
処理部１０４は、ステップＳ６−８でＸショートが設定されていると判定したときには、そのまま処理を終了する。また、処理部１０４は、ステップＳ６−８でＸショートが設定されているときには、ステップＳ６−９を実行する。ステップＳ６−９は、Ｙ方向検出をキャンセルするＹＣＡＮＳＬをセットするステップである。
【０１６６】
以上により、Ｘ又はＹ方向検出をキャンセルすることを示すＸＣＡＮＳＬ、ＹＣＡＮＳＬがセットされる。
【０１６７】
次にステップＳ１−８の第２波待ち処理について詳細に説明する。
【０１６８】
図１９に本発明の一実施例の第２波待ち処理の処理フローチャートを示す。
【０１６９】
第２波待ち処理は、ステップＳ７−１〜Ｓ７−７から構成される。
【０１７０】
ステップＳ７−１は、Ｘ方向の検出値に第２変化があるか否かを判定するステップである。処理部１０４は、ステップＳ７−１でＸ方向の検出値に第２変化があると判定した場合、そのままステップＳ７−３を実行する。また、処理部１０４は、ステップＳ７−１でＸ方向の検出値に第２変化がないと判定した場合には、ステップＳ７−２を実行した後、ステップＳ７−３を実行する。
【０１７１】
ステップＳ７−２は、Ｘ方向の検出値から第２波形を判定するＸ第２波形判定処理を行なうステップである。ステップＳ７−２のＸ第２波形判定処理については後で図面とともに詳細に説明する。
【０１７２】
ステップＳ７−３は、Ｙ方向の検出値に第２変化があるか否かを判定するステップである。処理部１０４は、ステップＳ７−３でＹ方向の検出値に第２変化があると判定した場合、そのままステップＳ７−５を実行する。また、処理部１０４は、ステップＳ７−３でＸ方向の検出値に第２変化がないと判定した場合には、ステップＳ７−４を実行した後、ステップＳ７−５を実行する。ステップＳ７−４は、Ｙ方向の検出値から第２波形を判定するＹ第２波形判定処理を行なうステップである。ステップＳ７−４のＹ第２波形判定処理については後で図面とともに詳細に説明する。
【０１７３】
ステップＳ７−５は、Ｘ、Ｙ方向検出値の波形の変化を示す設定がされているか否かを判定するステップである。なお、Ｘ方向検出値の波形の変化を示す設定は、ステップＳ４−４、Ｓ４−１０、Ｓ４−１９で行なわれ、Ｙ方向検出値の波形変化を示す設定は、ステップＳ５−４、Ｓ５−１０、Ｓ５−１９で行なわれる。
【０１７４】
処理部１０４は、ステップＳ７−５でＸ，Ｙ方向検出値の波形の変化を示す設定がされていないと判断した場合には、そのまま処理を終了する。また、処理部１０４は、ステップＳ７−５でＸ，Ｙ方向検出値の波形の変化を示す設定がされていると判断した場合には、ステップＳ７−６、Ｓ７−７順次に実行する。ステップＳ７−６は、第２波形であると確定された旨を設定するステップである。また、ステップＳ７−７は、波形変化がある旨の設定を解除するステップである。
【０１７５】
ステップＳ７−８は、Ｘ方向の検出値がノイズである旨の設定が行なわれているか否かを判定するステップである。処理部１０４は、ステップＳ７−８でＸ方向の検出値がノイズである旨の設定が行なわれていない場合には、そのまま処理を実行し、Ｘ方向の検出値がノイズである旨の設定が行なわれていると判定された場合には、ステップＳ７−９を実行する。
【０１７６】
ステップＳ７−９は、Ｙ方向の検出値がノイズである旨の設定が行なわれているか否かを判定するステップである。処理部１０４は、ステップＳ７−９でＸ方向の検出値がノイズである旨の設定が行なわれていない場合には、そのまま処理を実行し、Ｙ方向の検出値がノイズである旨の設定が行なわれていると判定された場合には、ステップＳ７−１０、ステップＳ７−１１を実行する。
【０１７７】
ステップＳ７−１０は、ノイズである旨の設定を解除するステップである。また、ステップＳ７−１１は、Ｘ方向、Ｙ方向の検出値が反転するのを待機する設定を行なうステップである。
【０１７８】
次に、ステップＳ７−２のＸ第２波形判定処理について詳細に説明する。
【０１７９】
図２０は本発明の一実施例のＸ第２波形判定処理の処理フローチャートを示す。
【０１８０】
Ｘ第２波形判定処理は、ステップＳ８−１〜Ｓ８−１４から構成されている。
【０１８１】
ステップＳ８−１は、ＸＣＡＮＳＬが設定されているか否かを判定するステップである。処理部１０４は、ステップＳ８−１でＸＣＡＮＳＬが設定されていると判定した場合には、ステップＳ８−２を実行して、Ｘ第２波形判定処理を終了する。ステップＳ８−２は、Ｘ方向の検出値に第２波形の変化がある旨の設定を行なうステップである。
【０１８２】
処理部１０４は、ステップＳ８−１でＸＣＡＮＳＬが設定されていないと判定した場合には、ステップＳ８−３を実行する。ステップＳ８−３は、ＸＳＨＯＲＴの設定があるか否かを判定するステップである。
【０１８３】
処理部１０４は、ステップＳ８−３でＸＳＨＯＲＴが設定されていると判定した場合には、ステップＳ８−２を実行して処理を終了する。また、処理部１０４は、ステップＳ８−３でＸＳＨＯＲＴが設定されていないと判定した場合には、ステップＳ８−４を実行する。ステップＳ８−４は、Ｘ方向の初期検出値がハイレベルであるか否かを判定するステップである。
【０１８４】
処理部１０４は、ステップＳ８−４でＸ方向の初期検出値がハイレベルであると判定した場合には、ステップＳ８−５が実行される。ステップＳ８−５は、検出値がローレベルか否かを判定するステップである。
【０１８５】
処理部１０４は、ステップＳ８−５で検出値がローレベルであると判定した場合には、ステップＳ８−２を実行して処理を終了する。また、処理部１０４は、ステップＳ８−５で検出値がローレベルではないと判定した場合には、ステップＳ８−６が実行する。ステップＳ８−６は、第１波の検出を終了してからｄ時間経過したか否かを判定するステップである。ここで、ｄは処理部１０４に予め設定された所定の値であり、経験的に求められる。
【０１８６】
処理部１０４は、ステップＳ８−６で第１波の検出が終了してからｄ時間経過していないと判定した場合には、そのまま処理を終了し、ステップＳ８−６で第１波の検出が終了してからｄ時間経過したと判定した場合には、ステップＳ８−７を実行する。ステップＳ８−７は、Ｙ方向の初期検出値がミディアムレベルであるか否かを判定するステップである。
【０１８７】
処理部１０４は、ステップＳ８−７でＹ方向の初期検出値がミディアムレベルであると判定した場合には、ステップＳ８−８、Ｓ８−２を実行して処理を終了する。ステップＳ８−８は、Ｘ方向の検出値が判定する状態を設定するステップである。また、処理部１０４は、ステップＳ８−７でＹ方向の初期検出値がミディアムレベルではないと判定した場合には、ステップＳ８−９を実行する。ステップＳ８−９は、ＹＳＨＯＲＴが設定されているか否かを判定するステップである。
【０１８８】
処理部１０４は、ステップＳ８−９でＹＳＨＯＲＴが設定されていると判定した場合には、ステップＳ８−２を実行して処理を終了する。また、処理部１０４は、ステップＳ８−９でＹＳＨＯＲＴが設定されていないと判定した場合には、ステップＳ８−１０を実行する。ステップＳ８−１０は、ＹＣＡＮＳＬが設定されているか否かを判定するステップである。
【０１８９】
処理部１０４は、ステップＳ８−１０でＹＣＡＮＳＬが設定されていると判定した場合には、ステップＳ８−２を実行して処理を終了する。また、処理部１０４は、ステップＳ８−１０でＹＣＡＮＳＬが設定されていないと判定した場合には、ステップＳ８−１１、Ｓ８−２を実行して処理を終了する。ステップＳ８−１は、Ｘ方向の検出値がノイズである旨の設定するステップである。
【０１９０】
また、処理部１０４は、ステップＳ８−４でＸ方向の初期検出値がハイレベルではないと判定した場合には、ステップＳ８−１２を実行する。ステップＳ８−１２は、Ｘ方向の初期検出値がローレベルであるか否かを判定するステップである。
【０１９１】
処理部１０４は、ステップＳ８−１２でＸ方向の初期検出値がローレベルであると判定した場合には、ステップＳ８−１３を実行する。ステップＳ８−１３は、Ｘ方向の検出値がハイレベルか否かを判定するステップである。
【０１９２】
処理部１０４は、ステップＳ８−１３で検出値がハイレベルであると判定した場合には、ステップＳ８−２を実行して処理を終了する。また、処理部１０４は、ステップＳ８−１３で検出値がハイレベルではないと判定した場合には、ステップＳ８−６を実行する。
【０１９３】
また、処理部１０４は、ステップＳ８−１２でＸ方向の初期検出値がローレベルではないと判定した場合には、ステップＳ８−１４を実行する。ステップＳ８−１４は、Ｘ方向の初期検出値がミディアムレベルであるか否かを判定するステップである。
【０１９４】
処理部１０４は、ステップＳ８−１４でＸ方向の初期検出値がミディアムレベルであると判定した場合には、そのまま処理を終了する。また、処理部１０４は、ステップＳ８−１４でＸ方向の初期検出値がミディアムレベルではないと判定した場合には、ステップＳ８−２を実行して処理を終了する。
【０１９５】
以上がＸ第２波形判定処理である。
【０１９６】
次にステップＳ７−４のＹ第２波形判定処理について図面とともに詳細に説明する。
【０１９７】
図２１は本発明の一実施例のＹ第２波形判定処理の処理フローチャートを示す。
【０１９８】
Ｙ第２波形判定処理は、ステップＳ９−１〜Ｓ９−１４から構成されている。
【０１９９】
ステップＳ９−１は、ＹＣＡＮＳＬが設定されているか否かを判定するステップである。処理部１０４は、ステップＳ９−１でＹＣＡＮＳＬが設定されていると判定した場合には、ステップＳ９−２を実行して、Ｙ第２波形判定処理を終了する。ステップＳ９−２は、Ｙ方向の検出値に第２波形の変化がある旨の設定を行なうステップである。
【０２００】
処理部１０４は、ステップＳ９−１でＹＣＡＮＳＬが設定されていないと判定した場合には、ステップＳ９−３を実行する。ステップＳ９−３は、ＹＳＨＯＲＴの設定があるか否かを判定するステップである。
【０２０１】
処理部１０４は、ステップＳ９−３でＹＳＨＯＲＴが設定されていると判定した場合には、ステップＳ９−２を実行して処理を終了する。また、処理部１０４は、ステップＳ９−３でＹＳＨＯＲＴが設定されていないと判定した場合には、ステップＳ９−４を実行する。ステップＳ９−４は、Ｙ方向の初期検出値がハイレベルであるか否かを判定するステップである。
【０２０２】
処理部１０４は、ステップＳ９−４でＹ方向の初期検出値がハイレベルであると判定した場合には、ステップＳ９−５が実行される。ステップＳ９−５は、検出値がローレベルか否かを判定するステップである。
【０２０３】
処理部１０４は、ステップＳ９−５で検出値がローレベルであると判定した場合には、ステップＳ９−２を実行して処理を終了する。また、処理部１０４は、ステップＳ９−５で検出値がローレベルではないと判定した場合には、ステップＳ９−６が実行する。ステップＳ９−６は、第１波の検出を終了してからｄ時間経過したか否かを判定するステップである。ここで、ｄは処理部１０４に予め設定された所定の値であり、経験的に求められる。
【０２０４】
処理部１０４は、ステップＳ９−６で第１波の検出が終了してからｄ時間経過していないと判定した場合には、そのまま処理を終了し、ステップＳ９−６で第１波の検出が終了してからｄ時間経過したと判定した場合には、ステップＳ９−７を実行する。ステップＳ９−７は、Ｙ方向の初期検出値がミディアムレベルであるか否かを判定するステップである。
【０２０５】
処理部１０４は、ステップＳ９−７でＹ方向の初期検出値がミディアムレベルであると判定した場合には、ステップＳ９−８、Ｓ９−２を実行して処理を終了する。ステップＳ９−８は、Ｙ方向の検出値が反転する状態を設定するステップである。また、処理部１０４は、ステップＳ９−７でＸ方向の初期検出値がミディアムレベルではないと判定した場合には、ステップＳ９−９を実行する。ステップＳ９−９は、ＸＳＨＯＲＴが設定されているか否かを判定するステップである。
【０２０６】
処理部１０４は、ステップＳ９−９でＸＳＨＯＲＴが設定されていると判定した場合には、ステップＳ９−２を実行して処理を終了する。また、処理部１０４は、ステップＳ９−９でＸＳＨＯＲＴが設定されていないと判定した場合には、ステップＳ９−１０を実行する。ステップＳ９−１０は、ＸＣＡＮＳＬが設定されているか否かを判定するステップである。
【０２０７】
処理部１０４は、ステップＳ９−１０でＸＣＡＮＳＬが設定されていると判定した場合には、ステップＳ９−２を実行して処理を終了する。また、処理部１０４は、ステップＳ９−１０でＸＣＡＮＳＬが設定されていないと判定した場合には、ステップＳ９−１１、Ｓ９−２を実行して処理を終了する。ステップＳ９−１１は、Ｙ方向の検出値がノイズである旨の設定するステップである。
【０２０８】
また、処理部１０４は、ステップＳ９−４でＹ方向の初期検出値がハイレベルではないと判定した場合には、ステップＳ９−１２を実行する。ステップＳ９−１２は、Ｙ方向の初期検出値がローレベルであるか否かを判定するステップである。
【０２０９】
処理部１０４は、ステップＳ９−１２でＹ方向の初期検出値がローレベルであると判定した場合には、ステップＳ９−１３を実行する。ステップＳ９−１３は、Ｙ方向の検出値がハイレベルか否かを判定するステップである。
【０２１０】
処理部１０４は、ステップＳ９−１３で検出値がハイレベルであると判定した場合には、ステップＳ９−２を実行して処理を終了する。また、処理部１０４は、ステップＳ９−１３で検出値がハイレベルではないと判定した場合には、ステップＳ９−６を実行する。
【０２１１】
また、処理部１０４は、ステップＳ９−１２でＹ方向の初期検出値がローレベルではないと判定した場合には、ステップＳ９−１４を実行する。ステップＳ９−１４は、Ｙ方向の初期検出値がミディアムレベルであるか否かを判定するステップである。
【０２１２】
処理部１０４は、ステップＳ９−１４でＹ方向の初期検出値がミディアムレベルであると判定した場合には、そのまま処理を終了する。また、処理部１０４は、ステップＳ９−１４でＹ方向の初期検出値がミディアムレベルではないと判定した場合には、ステップＳ９−２を実行して処理を終了する。
【０２１３】
以上がＹ第２波形判定処理である。
【０２１４】
以上本実施例によれば、使用者が意図する加速度を正確に検出することができる。
【０２１５】
なお、本実施例では、入力装置で上記プログラムを実行したが、ゲーム機で上記プログラムを実行するようにしてもよい。このとき、ゲームソフトを提供するためのＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭなどの記録媒体からゲーム機内のメモリにインストールして実行したり、記録媒体から実行するようにしてもよい。また、ネットワークを介してゲーム機のメモリにダウンロードして用いるようにしてもよい。
【０２１６】
また、本発明は、上記実施例に限定されるものではなく、本発明の範囲から逸脱することなく種々の変形例がなされるものである。
【０２１７】
【発明の効果】
上述の如く、本発明によれば、加速度を検出する機構の特性に合った波形の信号だけを加速度と判定して、加速度を検出するので、不要な加速度成分を検出することがない等の特長を有する。
【０２１８】
本発明によれば、レベルが一定値以上の波形の信号が得られる加速度を有効にするので、振動などによる微小な加速度を検出することがない等の特長を有する。
【０２１９】
本発明によれば、波形が所定レベル以上となる期間となる波形を加速度と判定するので、微小な振動を加速度として検出することがなく、よって、不要な加速度成分を検出することがない等の特長を有する。
【０２２０】
本発明によれば、第１波がきてから所定時間たっても第２波がこない場合には、第１波を第２波として扱い、検出信号の極性を反転させ、ロー又はハイレベルとし、第１波はミディアムレベルとし、加速度を判定することにより、正規の波形でない場合にも加速度を検出できる等の特長を有する。
【図面の簡単な説明】
【図１】ゲーム装置における入力方法の一例を説明するための図である。
【図２】従来の入力装置の一例の構成図である。
【図３】従来の加速度センサの一例の分解斜視図である。
【図４】従来の加速度センサの一例の動作説明図である。
【図５】本発明の一実施例のブロック構成図である。
【図６】本発明の一実施例の加速度検出値の波形図である。
【図７】本発明の一実施例の閾値を示す図である。
【図８】本発明の一実施例の処理部の動作説明図である。
【図９】本発明の一実施例のキャンセル処理の動作説明図である。
【図１０】本発明の一実施例のノイズ処理の動作説明図である。
【図１１】本発明の一実施例の反転処理の動作説明図である。
【図１２】本発明の一実施例の反転処理の動作説明図である。
【図１３】本発明の一実施例の波形認識処理の処理フローチャートである。
【図１４】本発明の一実施例の初期検出レベル設定処理の処理フローチャートである。
【図１５】本発明の一実施例の第１波形確定処理の処理フローチャートである。
【図１６】本発明の一実施例のＸ判定処理の処理フローチャートである。
【図１７】本発明の一実施例のＹ判定処理の処理フローチャートである。
【図１８】本発明の一実施例のキャンセル処理の処理フローチャートである。
【図１９】本発明の一実施例の第２波待ち処理の処理フローチャートである。
【図２０】本発明の一実施例のＸ第２波形判定処理の処理フローチャートである。
【図２１】本発明の一実施例のＹ第２波形判定処理の処理フローチャートである。
【符号の説明】
１００  加速度検出装置
１０１  検出部
１０２  Ａ／Ｄ変換器
１０３  制御部
１０４  処理部
１０５  タイマ部
【図１】
0004519257.tif 000002
【図２】
0004519257.tif 000003
【図３】
0004519257.tif 000004
【図４】
0004519257.tif 000005
【図５】
0004519257.tif 000006
【図６】
0004519257.tif 000007
【図７】
0004519257.tif 000008
【図８】
0004519257.tif 000009
【図９】
0004519257.tif 000010
【図１０】
0004519257.tif 000011
【図１１】
0004519257.tif 000012
【図１２】
0004519257.tif 000013
【図１３】
0004519257.tif 000014
【図１４】
0004519257.tif 000015
【図１５】
0004519257.tif 000016
【図１６】
0004519257.tif 000017
【図１７】
0004519257.tif 000018
【図１８】
0004519257.tif 000019
【図１９】
0004519257.tif 000020
【図２０】
0004519257.tif 000021
【図２１】
0004519257.tif 000022