(57)【特許請求の範囲】
【請求項１】
風を検出する複数のセンサと、
前記各センサの検出値から、センサの配置面に対する正面奧方向、左斜奧方向、右斜奧方向、左方向、右方向の何れかである息の向きと、息の大きさとからなる方向ベクトルを、各センサ毎に演算する方向ベクトル演算手段と、
前記演算した各センサの方向ベクトルから、息による入力の向きを判定する息向判定手段と、
前記判定した息による入力の向きを入力方向として出力する出力手段と、
を具備し、
前記息向判定手段は、各センサ毎に演算した方向ベクトルのうち、前記息の向きが正面奧方向の方向ベクトル同士、左斜奧方向の方向ベクトル同士、右斜奧方向の方向ベクトル同士を合成し、合成した各同一方向の方向ベクトルの大きさが所定値を超えている場合には、息による入力の向きとして、奥行き方向を含む方向を判定する、
ことを特徴とする情報入力装置。
【請求項２】
前記息向判定手段は、
前記合成した、正面奧方向の方向ベクトル、左斜奧方向の方向ベクトル、右斜奧方向の方向ベクトルの大きさが全て所定値以下である場合、
前記配置された各センサの行又は列毎に方向ベクトルを合成し、合成した行又は列の方向ベクトル、合成した行又は列の方向ベクトルの平均値、又は、合成した行又は列の方向ベクトルを各行又は列に存在するセンサ数に応じた係数を乗じることで補正した値が最大となる行又は列を特定し、
当該特定した行又は列に含まれる各センサのうち大きさが最も大きい方向ベクトルに対応するセンサを特定し、
前記複数配置されたセンサの中央から前記特定したセンサの方向を、息による入力の向きと判定する、
ことを特徴とする請求項１に記載の情報入力装置。
【請求項３】
前記各センサは、複数のサーミスタと熱源を備え、前記各サーミスタの電圧値をセンサ値として出力し、また、前記各センサが配置される配置面に対し、前記各サーミスタの配置面が交差する方向に配置されており、
前記方向ベクトル演算手段は、前記各サーミスタの出力電圧値の変化から、各センサ毎の息の向きと大きさを検出する、
ことを特徴とする請求項１又は請求項２に記載の情報入力装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報入力装置に係り、詳細には息を使用して情報を入力する装置に関する。
【背景技術】
【０００２】
パーソナルコンピュータや、車両に搭載されるナビゲーション装置などの各種情報処理装置が広く普及している。そして、これら情報処理装置に対して各種情報を入力するための情報入力装置が必要となる。その代表的な入力装置としては、マウスやジョイスティック、キーボード、カーソル、タッチパネル等が存在するが、これらはいずれも手による操作が必要である。
しかし、手の不自由なユーザや、車両においてハンドル操作中で手を離すことが出来ないユーザ等では、手操作が必要な従来の入力装置では不十分である。
一方、操作中であるキーボード等から手を離さずに入力可能な情報入力装置があれば、入力の操作性を向上させることが可能となる。
【０００３】
そこで、使用するユーザや、その使用場面に併せてた種々の装置が提案されている。
例えば、特許文献１では、操作者がくわえたマウスピースで息の強さや噛む力を検出して二値入力信号を得る技術が開示されている。
また特許文献２では、ステアリングホイル間に配設したイメージセンサによって人の手の動きを抽出し、抽出した動作指示に基づいて車載機器を操作可能とするデバイスが開示されている。
さらに特許文献３では、マイクに入力された音声から、息の吹込み又は吸込みと判断した場合に、音声パワーを速度等の物理量に変換し、画面上の画像の表示色、移動速度、移動距離などの表示パラメータに変換し、画面上の画像を操作する技術について開示されている。
【特許文献１】特開平０６−１３９０１１
【特許文献２】特許第３９７９００２
【特許文献３】特開平１１−１４３４８４
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、特許文献１の入力装置は、コンピュータや車両に配設された情報装置の入力デバイスとして使用する場合、キーボードやハンドルから手を離さずに位置情報を情報装置に入力することができるが、入力デバイスとしてマウスピースを常時口にくわえる必要があり、車両等の移動体に適用する場合には操作性の点で問題がある。また、口にくわえる接触型の入力デバイスなので不特定多数の人間が使用する情報装置の入力デバイスとして不向きである。
【０００５】
また特許文献２の入力装置は、不特定多数の入力デバイスとしての使用は可能であるが、キーボードやハンドルから手を離すことになるので、特に車両用の入力デバイスとしては操作性に問題がある。また、手の不自由なユーザには使用することができないという問題がある。
【０００６】
特許文献３の入力装置では、キーボードやハンドルから手を離さずに入力可能であるが、マイクに入力する音声を使用するため、音声を用いているので、雑音が多い場所においては誤差が検出されやすくなり、コンピュータや情報装置を操作することが困難となる。
【０００７】
また、キーボードやハンドル等の操作をしながらの入力が可能な装置として音声認識装置が普及しているが、使用環境がユーザの音声以外の音楽、会話、雑音等が認識率に影響してしまうため、使用環境に制限がある。
【０００８】
そこで本発明は、手による操作を不要とし、不特定多数のユーザが使用可能で雑音による影響を受けにくい非接触型の入力デバイスを提供することを目的とする。
【課題を解決するための手段】
【０００９】
（１）請求項１記載の発明では、風を検出する複数のセンサと、前記各センサの検出値から、センサの配置面に対する正面奧方向、左斜奧方向、右斜奧方向、左方向、右方向の何れかである息の向きと、息の大きさとからなる方向ベクトルを、各センサ毎に演算する方向ベクトル演算手段と、前記演算した各センサの方向ベクトルから、息による入力の向きを判定する息向判定手段と、前記判定した息による入力の向きを入力方向として出力する出力手段と、を具備し、前記息向判定手段は、各センサ毎に演算した方向ベクトルのうち、前記息の向きが正面奧方向の方向ベクトル同士、左斜奧方向の方向ベクトル同士、右斜奧方向の方向ベクトル同士を合成し、合成した各同一方向の方向ベクトルの大きさが所定値を超えている場合には、息による入力の向きとして、奥行き方向を含む方向を判定する、ことを特徴とする情報入力装置を提供する。
（２）請求項２に記載の発明では、前記息向判定手段は、前記合成した、正面奧方向の方向ベクトル、左斜奧方向の方向ベクトル、右斜奧方向の方向ベクトルの大きさが全て所定値以下である場合、前記配置された各センサの行又は列毎に方向ベクトルを合成し、合成した行又は列の方向ベクトル、合成した行又は列の方向ベクトルの平均値、又は、合成した行又は列の方向ベクトルを各行又は列に存在するセンサ数に応じた係数を乗じることで補正した値が最大となる行又は列を特定し、当該特定した行又は列に含まれる各センサのうち大きさが最も大きい方向ベクトルに対応するセンサを特定し、前記複数配置されたセンサの中央から前記特定したセンサの方向を、息による入力の向きと判定する、ことを特徴とする請求項１に記載の情報入力装置を提供する。
（３）請求項３に記載の発明では、前記各センサは、複数のサーミスタと熱源を備え、前記各サーミスタの電圧値をセンサ値として出力し、また、前記各センサが配置される配置面に対し、前記各サーミスタの配置面が交差する方向に配置されており、前記方向ベクトル演算手段は、前記各サーミスタの出力電圧値の変化から、各センサ毎の息の向きと大きさを検出する、ことを特徴とする請求項１又は請求項２に記載の情報入力装置を提供する。
【発明の効果】
【００１０】
本発明によれば、風を検出する複数のセンサの検出値に基づいて、息向を入力方向として判定するので、手による操作を不要とし、不特定多数のユーザが使用可能で雑音による影響を受けにくい非接触型の入力デバイスを提供することができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の情報入力装置における好適な実施の形態について、図１から図２２を参照して詳細に説明する。
（１）実施形態の概要
本実施形態の情報入力装置では、息を検出するセンサを複数配置し、各センサの検出値から装置に対する入力方向を特定し、ユーザの入力方向として出力する。
特定する入力方向としては、センサの配置面に対する奥行き方向として、奧方向（正面方向）、左奧（左斜め）方向、右奧（右斜め）方向の３方向、及び、センサ配置面に対する上下、左右、斜め方向の８方向（平面８方向）、を特定する。
【００１２】
各センサの検出値としては、息の向きと強さを検出して、各センサ毎の息ベクトルを作成し、同一方向の方向ベクトルを合計した大きさから、奥行き方向の有無と、奥行き方向がある場合に奥行き方向を特定し、奥行き方向が無い場合に個別センサの検出値から平面８方向を特定する。
【００１３】
センサは、発熱体と、それを中心とする同心円状に配置されたサーミスタから構成され、各サーミスタの電圧値をセンサ値として出力する。
センサに息が吹きかけられると、空気の流れの強弱により温度が低下し、各サーミスタの出力電圧が変化する。各サーミスタ出力電圧の変化値から息の速度や強さ、向きを検出（決定）する。
【００１４】
また、最も強い息を検出したセンサ特定し、前回特定したセンサから今回特定したセンサの方向を息の向きとして特定するようにしてもよい。前回と今回で特定したセンサが同じである場合には、特定したセンサの奧方向が特定される。
【００１５】
また、エアコンがオンの状態や、窓やドアが開いている状態では、外乱としてセンサの検出値に影響があるため、これらの外乱状態を検出してセンサ検出値の補正を行うようにしてもよい。
【００１６】
（２）実施形態の詳細
図１は、本実施形態の情報入力装置１０の構成を表したものである。
情報入力装置１０は、情報処理部１１とセンサ部１２とを備えている。情報入力装置１０は、パーソナルコンピュータ（ＰＣ）２０やナビゲーション装置等の各種情報処理装置に接続され、当該情報処理装置に対する入力手段として機能する。
【００１７】
情報処理部１１は、ユーザの息を判定する各種演算処理を実行するＣＰＵ（中央処理装置）１３、センサ部１２からの入力信号をアナログからデジタルに変換するＡ／Ｄ１４、各種プログラムやデータが格納されたＲＯＭ１５、ワーキングメモリとして演算処理中のデータが一時保存されるＲＡＭ１６、各種情報処理装置と接続されるインターフェイス（Ｉ／Ｆ）１７を備えている。
【００１８】
ＲＯＭ１５には、ＣＰＵ１３においてユーザの息を判定する為の各種プログラムとして、メイン処理（図４）、初期化処理（図５〜図７）、息入力判定処理（図８）、息速演算ルーチン（図９）、息向き判定ルーチン（図１１）、センサ毎の入力方向演算ルーチン（図１２）、息向き演算ルーチン（図１４）、等の各種処理を行うためのプログラムやデータ等が格納されている。
また、ＲＯＭ１５には、各センサＫ１〜ＫＮから出力される電圧の変化量（電圧変化値）に対応する息速度が規定された、電圧変化値−息速変換マップ（図１０）が保存されている。
【００１９】
ワーキングメモリとして機能するＲＡＭ１６には、Ｎ個の（センサ数と一致）センサフェールフラグ、Ｎ個の仮センサフェールフラグ、咳くしゃみフラグ、息入フラグ、センサ変化値バッファ、センサ方向バッファ、センサ大小バッファ、息方向バッファ、センサ風速フェールカウンタ、センサ風向きフェールカウンタ等の各種領域が確保され、該当するフラグ、データ、カウンタ値などが保存される。
【００２０】
図２は、本実施形態で使用するセンサの構造と特性について表したものである。
図２（ａ）は、センサＫを正面からみた状態を、（ｂ）は側面（（ａ）を下から見た状態）を表している。なお、個別のセンサ指す場合には１〜Ｎを添えてセンサ１〜Ｎと表すが、任意のセンサを指す場合にはセンサＫで表すこととする。この表記については、サーミスタＴＨ、サーミスタＴＨ１〜ｍも同様である。
【００２１】
センサＫは、熱源Ｒと、熱源Ｒを中心とする同一円上に（熱源Ｒから等距離の位置に）、ｍ個のサーミスタＴＨ１〜ＴＨｍが配列されている。本実施形態では、ｍ＝４である。
熱源Ｒは抵抗で構成され、通電により発熱するようになっている。
熱源Ｒからの熱を、熱源Ｒから等距離に配設された各サーミスタＴＨ１〜４で検出し、対応する電圧値（物理量）が情報処理部１１に供給される。この結果１つのセンサＫからは、４つの電圧値が情報処理部１１に供給されることになる。
熱源Ｒの温度は印加電圧で変化し、この印加電圧は、デフォルト値として周囲の温度より高い所定温度Ｔ（例えば、４５度）が設定されているが、任意の温度に変更可能である。また電源オンの際、又は常時周囲温度を測定し、周囲温度よりも温度ｔ（例えば、ｔ＝１０度）だけ高くなるように印加されるようにしてもよい。この場合の温度ｔも任意の値に変更可能である。
【００２２】
図２（ｃ）は、サーミスタＴＨの温度−抵抗特性を表したものである。
この図２（ｃ）に示すように、サーミスタＴＨは、温度の上昇に対して抵抗が減少するサーミスタである。すなわち、ＮＴＣ（negative temperature coefficient）サーミスタが使用される。
なお、ＮＴＣサーミスタとは逆に抵抗が増大するＰＴＣ（positive temperature coefficient）を使用するようにしてもよい。この場合、情報処理部１１に供給される電圧の大小は逆になるための修正が必要になる。
【００２３】
このように構成されたセンサＫによる息の検出は次の通りである。
センサＫに息が吹きかけられていない状態の場合、熱源Ｒからの熱は等しく各サーミスタＴＨに伝達されるため、各サーミスタＴＨの検出温度は変化しない。
一方、センサＫに息が吹きかけられると、熱源Ｒと各サーミスタＴＨ間の空気が流れる。これにより熱源Ｒからの熱は伝わりにくくなり（各サーミスタＴＨは空気の流れによって冷却され）、各サーミスタＴＨで検出する温度は空気（息）の流れに応じてそれぞれ低下することになる。そして、各サーミスタＴＨからの出力電圧は、図２（ｃ）に示すように温度の低下により抵抗が下がり、結果として上がることになる。
すなわち、吹きかけられた息の強さや向きに応じて、各サーミスタＴＨの出力電圧が低下し、その電圧や電圧の変化量に基づいて息の向きや強さが決定される。
なお、本実施形態のセンサＫは複数のサーミスタＴＨと熱源から構成し温度変化値に対応する電圧変化値から各センサＫの息速度と息向きを検出するが、他の構成により息により生じる風向きと強さを検出するセンサを使用するようにしてもよい。センサＫに換えて風圧センサを配置し、後述する第３実施形態と同様にして、各最大の風圧を検出する風圧センサの変化から風向き（息入力方向）と、風速を検出するようにしてもよい。
【００２４】
図３は、各センサＫの配置について表したものである。
図３（ａ）に示した実施例では、情報入力装置１０に接続されたＰＣ２０の表示装置２１の周囲に８つのセンサＫ１〜８が配置されている。
このように、表示装置２１の周辺にセンサＫを配置することによって、入力に関連して表示されている画像を確認しながら奥行きや方向を息で入力することができるため、ユーザにとって画像と方向を一致させて認識しやすくなる。
なお、情報処理部１１の本体周辺に配置するようにしてもよい。
【００２５】
各センサＫは、各センサＫが配置される配置面に対し、各サーミスタＴＨの配置面が交差する方向に配置されている。具体的には、表示装置２１に対して各センサＫが配置される向きは、図３（ｂ）に示されるように、表示装置２１の表示画面と、センサＫの正面（図２（ａ）で表示されている面）とが直角となり、各センサＫの熱源Ｒが上向きになるように配置される。但し、各センサＫの熱源Ｒの向きは、全て画面中央を向くように配置してもよく、逆に全て画面外側を向くように配置してもよい。
このセンサＫの熱源Ｒの向きについては、センサＫが配置される領域の形状やサイズによって決定することができる。例えば、配置領域が狭い場合には熱源Ｒが外向きに、広い場合には中央向きとなるように配置してもよい。
【００２６】
次に以上のように構成された情報入力装置１０による息入力処理について説明する。
図４は、息の入力処理を行う情報入力装置のメイン処理について表したものである。
本実施形態による息入力処理では、装置の初期化を行う初期処理（ステップ１０）、ユーザの息による入力を判定し息向きを決定し、決定した息向きをユーザの入力値としてＩ／Ｆ１７で接続されてい情報処理装置に出力する息入力判定処理（ステップ４０）、終了の判定処理（ステップ９０）が行われる。
【００２７】
図５から図７は、初期化処理（ステップ１０）の内容を表したフローチャートである。
この初期化処理では、電源ＯＮ等による起動時において実行され、全センサＫに対する初期化と、正常に動作するセンサか否の判定が行われる。
初期化処理において、情報処理部１１は、センサ風速フェールカウンタＮ個の初期化（ステップ１１）、センサ風向フェールカウンタＮ個の初期化（ステップ１２）、センサフェールフラグＮ個の初期化（ステップ１３）、センサ数カウンタの初期化（ステップ１４）、仮センサフェールフラグの初期化（ステップ１５）を行う。
【００２８】
以上初期化におけるＮ個は、センサＫの数に対応したカウンタの数である。本実施形態ではセンサＫ１〜８のＮ＝８個のカウンタについて初期化する。
初期化において情報処理部１１は、各カウンタ領域、フラグ領域をＲＡＭ１６に確保するとともに確保した領域のリセット（クリアー）処理を行う。
【００２９】
カウンタ、フラグの初期化の後、情報処理部１１は、１つのセンサＫ（例えば、センサＫ１）を選択し（ステップ１６）、以後の検査処理（ステップ１７〜ステップ３７）を各センサに対して行うことで、各センサが正常か否かを検査及び判定する。
正常化否かの検査は、息による入力が行われる前の定常状態（空気の流れが無い状態）で各サーミスタＴＨに測定が正常に行われるかを判断する検査である。
各センサＫは、全く問題なく正常に動作する場合と、問題があるがサーミスタＴＨの電圧オフセットにより正常に動作する場合、オフセットしても正常に動作しない場合があるで、以下各場合の処理に分けて正常か否かの検査、判定について説明する。
【００３０】
（ａ）正常動作する場合
情報処理部１１は、選択したセンサＫに対応して、タイマを初期化（リセット）し（ステップ１７）、タイマが所定時間となるまで（ステップ１９）の間、センサＫの各サーミスタＴＨに対応して供給される４つの出力電圧を取得し、それぞれ前回の４出力電圧との差をセンサ変化値としてセンサ変化値バッファに保存する。
所定時間が経過すると（ステップ１９；Ｙ）、情報処理部１１は、保存した４つのセンサ変化値（電圧変化値）から、タイマの所定時間における平均風速と、平均風向きを演算する（ステップ２０）。
【００３１】
ここで、情報処理部１１は、センサＫで検出した風速として、各サーミスタＴＨの電圧変化値が最も大きい値を風速と判断（演算）する。なお、後述する息速変換マップ（図１０）に従い、変換した息速を使用してもよい。
【００３２】
一方、風向きは各サーミスタＴＨの電圧変化値のうち、最も変化値が大きいサーミスタＴＨ方向から最も小さいサーミスタＴＨ方向の風向きとして、最大の電圧変化値から最小の電圧変化値を減算した値を平均風向きとして演算する。
なお、各サーミスタＴＨの電圧変化値ではなく、各サーミスタＴＨの出力電圧値を比較し、出力電圧値が最小のサーミスタＴＨから最大のサーミスタＴＨ方向を風向きとして、両出力電圧値の差を平均風向きとして演算するようにしてもい。
【００３３】
情報処理部１１は、演算した平均風速が所定の閾値ｔｈ２を越えているか判断する（ステップ２１）。いま、正常なセンサＫの場合についての説明なので、このステップでは、平均風速が所定値ｔｈ２以下となり（ステップ２１；Ｎ）、情報処理部１１はステップ２２〜２４を飛ばす。
次に情報処理部１１は、演算した平均風向が所定の閾値ｔｈ３を越えているか否かを判断する（ステップ２５）。この場合も正常なセンサＫの場合なので、平均風向が所定値ｔｈ３以下となり（ステップ２５；Ｎ）、情報処理部１１はステップ２６からステップ２８を飛ばす。
【００３４】
次いで情報処理部１１は、センサ風速フェールカウンタとセンサ風向フェールカウンタのカウンタ値合計が所定値ｔｈ４（例えば、ｔｈ４＝３）未満であるか否かを判断する（ステップ２９）。
両フェールカウンタは、平均風速、平均風向の値が異常値である場合（ステップ２１；Ｙ、ステップ２５；Ｙ）にカウントされるので、最初から正常なセンサＫの場合では、両フェールカウンタがゼロで（ステップ２９；Ｙ）であるため、情報処理部１１は、仮センサフェールフラグがオンか否かを判断する（ステップ３０）。
この仮センサフェールフラグも、平均風速、平均風向の値が異常である場合にオンになるフラグなので、情報処理部１１は、正常である場合の例なので（ステップ３０；Ｎ）、ステップ３４に移行する。
【００３５】
そして情報処理部１１は、センサ番号（現在検査しているセンサＫの番号）と、センサカウンタをインクリメントし（ステップ３４）、全センサについての初期化済みか否かをセンサ数カウンタの値から判断する（ステップ３５）。
すなわち情報処理部１１は、センサカウンタ数が検査済み（初期化済み）のセンサ数を表しているので、カウンタ数がＮ（本実施形態ではＮ＝８）であれば（ステップ３５；Ｙ）、情報処理部１１は、全センサ初期化済みと判断して処理を終了してメイン処理にリターンする。
【００３６】
一方、全センサ初期化済みでない場合、すなわち、センサ数カウンタがＮ未満であれば（ステップ３５；Ｎ）、情報処理部１１は、次のセンサを選択し（ステップ３６）、更に、仮センサフェールフラグをオフにした後（ステップ３７）、ステップ１７に戻って新たに選択した次のセンサについての検査を行う。
【００３７】
（ｂ）問題があるがサーミスタＴＨの電圧オフセットにより正常に動作する場合
この場合のセンサＫについて、情報処理部１１は、（ａ）で上述した正常なセンサＫの場合と同様に、所定時間での平均風速と平均風向を演算する（ステップ１７〜ステップ２０）。
【００３８】
情報処理部１１は、ステップ２０で演算した平均風速が所定値ｔｈ２より大きいか否かを判断する（ステップ２１）。平均風速が所定値ｔｈ２よりも大きい場合（ステップ２１；Ｙ）、情報処理部１１は、空気の流れがない通常状態において電圧が変化した状態を検出していると判断し、最も低い電圧を検出したサーミスタＴＨのサーミスタ電圧をオフセットする（ステップ２２）。
そして情報処理部１１は、ステップ１１で初期化した当該センサＫに対応するセンサ風速フェールカウンタをインクリメントし（ステップ２３）、仮センサフェールフラグをオンにする（ステップ２４）。
【００３９】
次いで情報処理部１１は、ステップ２０で演算した平均風向が所定値ｔｈ３より大きいか否かを判断する（ステップ２５）。平均風向が所定値ｔｈ３よりも大きければ（ステップ２５；Ｙ）、情報処理部１１は、空気の流れがない通常状態での異常検出と判断し、最も大きい電圧変化値を検出したサーミスタＴＨのサーミスタ電圧をオフセットする（ステップ２６）。
そして情報処理部１１は、ステップ１２で初期化した当該センサＫに対応するセンサ風向フェールカウンタをインクリメントし（ステップ２７）、仮センサフェールフラグをオンにする（ステップ２８）。
【００４０】
なお、以上の説明では平均風速、平均風向のいずれも異常の場合について説明したが、いずれか一方が正常で他方が異常の場合も存在する。この場合には、センサ風速フェールカウンタ、センサ風向フェールカウンタのうち異常と判断した側のカウンタがインクリメントされる。
ただし、いずれか一方が異常の場合であっても、異常でありいずれかのサーミスタＴＨがオフセットされているので、ステップ２４又はステップ２８により、仮センサフェールフラグはオンになる。
【００４１】
次に情報処理部１１は、センサ風速フェールカウンタとセンサ風向フェールカウンタのカウンタ値の合計が所定値ｔｈ４未満であるか否かを判断する（ステップ２９）。
本実施形態では所定値ｔｈ４＝３に設定されているので、ステップ２３とステップ２７の両者でインクリメントしている場合であってもまだカウンタ値合計が２であり、所定値ｔｈ４未満なので（ステップ２９；Ｙ）、情報処理部１１は、仮センサフェールフラグがオンか否かを判断する（ステップ３０）。
【００４２】
この場合、ステップ２４又はステップ２５で仮センサフェールフラグがオンになっているので（ステップ３０；Ｙ）、情報処理部１１は、ステップ３７に移行して仮センサフェールフラグをオフに戻す。
次いで、情報処理部１１は、ステップ２２又は／及びステップ２６でサーミスタ電圧オフセット後のセンサＫに対し、２サイクル目の検査処理（ステップ１７〜）を行う。
【００４３】
この２サイクル目において、情報処理部１１は、再度所定時間での平均風速、平均風向を演算し（ステップ１７〜ステップ２０）、再度所定値ｔｈ２、ｔｈ３と比較する（ステップ２１、ステップ２５）。
現在のセンサＫはオフセットにより正常になった場合の例なので、いずれも所定値以下（ステップ２１；Ｎ、ステップ２５；Ｎ）となり、情報処理部１１は、ステップ２２〜２４、ステップ２６〜２８を飛び、センサ風速フェールカウンタとセンサ風向フェールカウンタのカウンタ値の合計が所定値ｔｈ４未満であるか否かを判断する（ステップ２９）。
【００４４】
オフセット後は正常になっているので、カウンタ合計値は前回と同じ（１又は２）であり、所定値ｔｈ４未満なので、情報処理部１１は仮センサフラグがオンか否かを判断する（ステップ３０）。
この場合、ステップ３７で設定したオフになっているので（ステップ３０；Ｎ）、情報処理部１１は、当該センサＫがオフセットにより正常になったものと判断して、当該センサＫに対する初期化を終了する。
そして情報処理部１１は、次のセンサＫのために、センサ数カウンタをインクリメントして（ステップ３４）、全センサ初期化済みか否かを判断する（ステップ３５）。
全センサ初期化済みでない場合（ステップ３５；Ｎ）、情報処理部１１は、次のセンサを選択し（ステップ３６）、更に、仮センサフェールフラグをオフにした後（ステップ３７）、ステップ１７に戻って新たに選択した次のセンサについての検査を行う。
【００４５】
（ｃ）オフセットしても正常に動作しない場合
この場合のセンサＫについて、情報処理部１１は、（ｂ）で上述した「問題があるがサーミスタＴＨの電圧オフセットにより正常に動作する場合」の前半のサイクルと同様に、所定時間での平均風速と平均風向を演算し（ステップ１７〜ステップ２０）、サーミスタＴＨ電圧のオフセットと仮センサフェールフラグ（ステップ２１〜ステップ２８）、更に、ステップ２９、ステップ３０の判断を経て仮センサフェールフラグをオフする（ステップ３７）。
【００４６】
次いで、情報処理部１１は、オフセット後のセンサＫに対して、再度所定時間での平均風速、平均風向を演算し（ステップ１７〜ステップ２０）、再度所定値ｔｈ２、ｔｈ３と比較する（ステップ２１、ステップ２５）。
現在のセンサＫはオフセットによっても正常に動作しない場合の例なので、いずれか一方又は双方の所定値ｔｈ２、ｔｈ３よりも大きくなる（ステップ２１；Ｙ、ステップ２５；Ｙ、ここでは双方とも大きい場合について説明する）。
情報処理部１１は、サーミスタＴＨ電圧のオフセット（ステップ２２、ステップ２６）とセンサ風速フェールカウンタ、センサ風向フェールカウンタをインクリメントし（ステップ２３、ステップ２７）、仮エールフラグをオンにする（ステップ２４、ステップ２８）。
【００４７】
次いで情報処理部１１は、センサ風速フェールカウンタとセンサ風向フェールカウンタのカウンタ値の合計が所定値ｔｈ４未満であるか否かを判断する（ステップ２９）。
ここでは、オフセットによっても正常に動作ぜずインクリメント（ステップ２３、ステップ２７）されて合計値が４であるものとする。すると、情報処理部１１は、所定値ｔｈ４（＝３）以上であるので、オフセットによっても異常が解消できないセンサＫであると判断して、現在検査中（初期化中）のセンサＫに対応するセンサフェールフラグをオンにする（ステップ３１）。
【００４８】
更に情報処理部１１は、検査中のセンサＫの熱源Ｒへの通電をオフにし（ステップ３２）、当該センサＫに対するフェール表示を行う（ステップ３３）。
ここで、センサＫに対するフェール表示は、センサ自体にＬＥＤを配置しておき、正常である場合に点灯し、消灯することでフェール表示とする。
ただし、Ｉ／Ｆ１７を介して接続されているＰＣ等の情報処理装置に該当するセンサＫのセンサ番号とフェール信号を供給することで、情報処理装置が表示装置２１にフェール表示するようにしてもよい。
【００４９】
なお、一サイクル目の検査処理で平均風速、平均風向の一方だけをオフセットし、２サイクル目の検査処理で他方をオフセットした場合、センサ風速フェールカウンタとセンサ風向フェールカウンタのカウンタ値合計はまだ２となる。
この場合、例えば平均風速用のオフセットによって平均風向に影響がでたために、平均風速のオフセットが行われていると考えられるので、ステップ２９；Ｙとなり、３サイクル目の検査処理が行われる。
ただし、本実施形態において所定値ｔｈ４＝３に設定してあるが、２、又は４以上の値に設定することも可能である。この場合にも、カウンタ値合計が所定値ｔｈ４未満（ステップ２９；Ｙ）、で仮フェールセンサがオン（ステップ３０；Ｎ）であれば、ステップ２７を経て、再度の検査処理が実行される。
【００５０】
以上の初期化処理が終了すると、情報処理部１１は、次に息入力判定処理を行う（ステップ４０）。
図８は、息入力判定処理の処理内容を表したフローチャートである。
先ず情報処理部１１は、咳・くしゃみフラグと息入力フラグを初期化する（ステップ４１、４２）。
次に情報処理部１１は、各センサＫからの入力に従ってセンサ電圧値の変化を監視し、検出した各センサ電圧変化値のいずれか１つ以上が所定の所定値θ１より大きいか否かを判断する（ステップ４３）。
ここでセンサ電圧変化値は、各センサＫから供給される４つのサーミスタＴＨの電圧変化値のうちの最大値が、センサ電圧変化値とされる。
【００５１】
全てのセンサ電圧変化値が所定値θ１以下であれば（ステップ４３；Ｙ）、情報処理部１１は、息による入力ではなく定常状態における自然な揺らぎの範囲である判断して処理を終了する。
一方、いずれかのセンサ電圧変化値が所定値θ１より大きければ（ステップ４３；Ｙ）情報処理部１１は、ユーザの息がセンサに吹きかけられたと判断して息速演算ルーチンにより息速を演算する（ステップ４４）。
【００５２】
図９は、息速演算ルーチンによる処理内容を表したフローチャートである。
この息速演算ルーチンにおいて情報処理部１１は、各センサＫにおける各サーミスタの電圧変化値を取得する（ステップ４４１）。本実施形態の場合、センサＫ１〜８の各々についてサーミスタＴＨ１〜４が存在するので、全部で３２の電圧変化値を取得することになる。
【００５３】
情報処理部１１は、取得した電圧変化値から、各サーミスタＴＨの電圧変化値４つから、各センサＫ毎の平均電圧変化値を演算する（ステップ４４２）。
そして、情報処理部１１は、演算した平均電圧変化値が所定値以上であるセンサＫに対応するセンサフェールフラグをオンにする（ステップ４４３）。この処理でセンサフェールフラグがオンになる場合としては、初期化処理（ステップ１０）では正常であったが、その後に異常になったセンサが対象となる。
【００５４】
次いで情報処理部１１は、センサフェールフラグがオンのセンサ、すなわち、初期化処理におけるステップ３１でオンになったセンサＫ、及び、上記ステップ４４３でオンになったセンサを、息速演算対象から除外（当該センサの平均電圧変化値を除外）する（ステップ４４４）。
情報処理部１１は、除外されていないセンサＫに対して演算された平均電圧変化値のうち、最大のセンサＫを特定する（ステップ４４５）。息が一番当たっているセンサの平均電圧変化値が最大となるためである。
【００５５】
ついで情報処理部１１は、特定した最大の平均電圧変化値を息速に変換する。
図１０は、電圧変化値を息速に変換する変換マップを表したものである。
この図１０に示すように、各サーミスタＴＨの電圧変化値は、空気の流れがない通常状態での電圧値から息を吹きかけた時の電圧値（通常状態よりも小さくなる）を引いた値なので、電圧変化値が大きいほど息速が大きくなる。
図１０のマップは、例えば、センサＫ又はサーミスタＴＨと息速度測定装置とを併置して、両者に実際に息を吹きかけたとき実際の測定値（出力電圧値と息速の計測値）に基づいて作成する。
【００５６】
情報処理部１１は、図１０の息速マップに基づいて変換した息速をＲＡＭ１６の息速バッファに保存し（ステップ４４６）、息速演算ルーチンを終了しリターンする。
【００５７】
息速の演算が終了すると情報処理部１１は、息入力判定処理（図８）に戻り、息速バッファに保存した息速が所定速度を超えているか否か判断ことで、検出した息が咳やくしゃみによるものか否かを判断する（ステップ４５）。
本実施形態では所定速度は２００ｋｍ／ｈに設定されているが、ユーザの口から各センサＫまでの距離といった使用環境によって変更するようにしてもよい。
【００５８】
情報処理部１１は、息速が所定速度（２００ｋｍ／ｈ）を越えている場合（ステップ４５；Ｙ）、咳・くしゃみフラグをオンにし（ステップ４６）、越えていない場合（ステップ４５；Ｎ）、咳・くしゃみフラグをオフにする（ステップ４７）。
続いて情報処理部１１は、息速バッファに保存した息速が、所定速度（５０ｋｍ／ｈ）＜息速＜所定速度（２００ｋｍ／ｈ）の所定範囲であるか否かを判断する（ステップ４８）。情報処理部１１は、息速が所定範囲でなければ（ステップ４８；Ｎ）、息入力フラグをオフにし、所定範囲であれば（ステップ４８；Ｙ）、測定したのは息であると判断して息入力フラグをオンにする（ステップ５０）。
【００５９】
次に情報処理部１１は、息向き判定ルーチンを実行する（ステップ５１）。
図１１は、息向き判定ルーチンの処理内容を表したフローチャートである。
情報処理部１１は、息フラグがオンか否かを判断し、オンでなければ（ステップ５１１；Ｎ）、入力操作のための息ではないと判断して処理を終了し、リターンする。
一方息フラグがオンであれば（ステップ５１１；Ｙ）、情報処理部１１は、センサＫ１〜８に対応した各センサフェールフラグがオンになっているセンサＫ番号を取得し、以後の処理対象から除外する（ステップ５１２）。
【００６０】
次に情報処理部１１は、処理対象となっている各センサＫについて、それぞれサーミスタＴＨ１〜４の電圧値を取得し（ステップ５１３）、各センサ毎の息入力方向を演算する（ステップ５１４）。
【００６１】
図１２は、各センサ毎の息入力方向演算処理の内容を表したフローチャートである。
図１２に示した息入力方向演算処理は、１つのセンサＫに対する息向きの決定について示したもので、各センサＫ毎に実行される。
情報処理部１１は、ステップ５１３（図１１）で取得した各サーミスタＴＨ１〜４の電圧値を比較することで、当該センサＫに対する息入力方向（ＴＨ方向）を決定する。
以下、図１２の説明において、サーミスタＴＨｍの電圧をＴＨｍ電圧（ｍ＝１〜４）として説明する。
【００６２】
最初に情報処理部１１は、各センサＫの配置面（表示装置２１の表示面と平行な面、以下配置面という）に対して平行に配置されている２つのサーミスタＴＨ１とサーミスタＴＨ２の電圧である、ＴＨ２電圧とＴＨ４電圧とを比較する（ステップ５４１）。
ＴＨ２電圧とＴＨ４電圧が等しければ（ステップ５４１；Ｙ）、息による斜め成分が存在しないと判断できるので、情報処理部１１は、ＴＨ方向を正面方向と判断する（ステップ５４２）。
【００６３】
図１３は、センサＫとＴＨ方向（息入力方向）を表したものである。図１３では、図面上側が表示装置２１側（表示装置２１の上側から見た状態）である。
そして、図１３に示した息入力方向５４２、５４５、５４６、５４８、５４９は、図１２でＴＨ方向を決定したステップ５４２、５４５、５４６、５４８、５４９のステップ番号と一致させてある。
すなわち、ステップ５４２で決定したＴＨ方向＝正面方向は、図１３の矢印５４２の方向である。
【００６４】
図１２に戻り、ＴＨ２電圧とＴＨ４電圧が等しくない場合（ステップ５４１；Ｎ）、情報処理部１１は、配置面と直角な面に配置されたサーミスタＴＨ１とＴＨ３についてのＴＨ１電圧とＴＨ３電圧とを比較する（ステップ５４３）。
ＴＨ１電圧＝ＴＨ３電圧である場合（ステップ５４３；Ｙ）、正面方向（奥行き方向）の息の強さが同じであるから、配置面と平行な左右のサーミスタＴＨの強弱によって方向を決定するため、ＴＨ２電圧とＴＨ４電圧を比較する（ステップ５４５）。
【００６５】
ここで、強い息に対して電圧値は低くなるので、情報処理部１１は、ＴＨ電圧が低い方からＴＨ電圧が高い方にい方に息が入力されていると判断する。
すなわち情報処理部１１は、ＴＨ２電圧≦ＴＨ４電圧であれば（ステップ５４４；Ｎ）、ＴＨ方向を右方向とする（ステップ５４５）。
一方、情報処理部１１は、ＴＨ２電圧＞ＴＨ４電圧であれば（ステップ５４４；Ｙ）、ＴＨ方向を左方向とする（ステップ５４６）。
【００６６】
ステップ５４３において、ＴＨ１電圧とＴＨ３電圧が等しくない場合（ステップ５４３）、すなわち、正面方向も左右方向も息の強さが等しくない場合なので、配置面に向かって斜め方向に息の入力があると判断できるので、情報処理部１１は、斜めの位置関係にある２つのサーミスタＴＨ電圧を比較することでＴＨ方向を決定する。
すなわち、情報処理部１１は、ＴＨ１電圧とＴＨ２電圧を比較し、ＴＨ１電圧＜ＴＨ２であればＴＨ方向を左上（左奧）方向とし（ステップ５４８）、ＴＨ１電圧≧ＴＨ２であればＴＨ方向を右上（右奧）方向とする（ステップ５４９）。
【００６７】
なお、右上と左上を決定する場合には、ＴＨ１電圧＜ＴＨ４電圧であれば右上、ＴＨ１電圧≧ＴＨ４電圧であれば左上としてもよい。同様に、ＴＨ４電圧＜ＴＨ３電圧であれば左上、ＴＨ４電圧≧ＴＨ３電圧であれば右上としてもよい。更に、ＴＨ２電圧＜ＴＨ３電圧であれば右上、ＴＨ２電圧≧ＴＨ３電圧であれば左上としてもよい。
【００６８】
図１１に戻り、センサ毎の入力方向の演算が終了すると情報処理部１１は、各センサＫに対応して決定したＮ（＝８）個のＴＨ方向を、それぞれ対応するセンサ方向バッファに保存する（ステップ５１５）。
【００６９】
次に情報処理部１１は、各センサ大小バッファに各センサＫに対応したＴＨ大きさを保存する。
ここで、センサＫのＴＨ大きさは、そのセンサＫに当った息の強さである。この息の強さについて本実施形態では、センサＫの合計電圧変化値（当該センサＫにおける各サーミスタＴＨの電圧変化値の合計値）を使用する。
ただし、息の強さとして、各サーミスタＴＨの平均電圧変化値、又は、最大平均電圧値を使用するようにしてもよい。更に、図１０に従って変換した電圧変化値（合計電圧変化値、最大電圧変化値、平均電圧変化値のいずれか）を変換した息速を使用するようにしてもよい。
【００７０】
ついで情報処理部１１は、息向き演算ルーチンを実行する。
図１４は、息向き演算ルーチンの内容を表したフローチャートである。
情報処理部１１は、センサ方向バッファに保存した各センサＫ１〜ＮのＴＨ方向と、センサ大小バッファに保存した各センサＫ１〜ＮのＴＨ大きさを読み込む（ステップ５７１、ステップ５７２）。
そして、情報処理部１１は読み込んだＴＨ方向とＴＨ大きさとから、各センサＫ１〜Ｎの方向ベクトルを作成する（ステップ５７３）。この方向ベクトルは、ＴＨ大きさを大きさとし、ＴＨ方向を方向とするベクトルである。
【００７１】
さらに、情報処理部１１は、作成した方向ベクトルについて、図１５に示される各行Ｌ１〜Ｌ３毎の各方向ベクトルを合成する（ステップ５７４）。
すなわち、Ｌ１行のセンサＫ４、５、６の方向ベクトルを合成し、Ｌ２行のセンサＫ３、７の方向ベクトルを合成し、Ｌ３行のセンサＫ２、１、８の方向ベクトルを合成する。
合成した各行Ｌ１、２、３の方向ベクトルは、奥行きのない、センサＫの配置面上の方向を決定する場合に使用する。
なお、各行Ｌ毎に方向ベクトルを合成する場合を例に説明するが、列毎に合成することで行の場合と同様にして奥行きのないセンサＫの配置面上の方向を決定するようにしてもよい。
【００７２】
次に、奥行きを含む方向（ステップ５７５〜５８０）、又は奥行きを含まない平面上の方向（ステップ５８１、５８２）を決定する。
すなわち情報処理部１１は、センサＫ１〜８の各方向ベクトルの中から、正面方向（図１３の矢印５４２方向）の方向ベクトル同士を合成して正面ベクトルを作成し、その大きさが所定値αより大きいか判断する（ステップ５７５）。
正面ベクトルの大きさが所定値αよりも大きければ（ステップ５７５；Ｙ）、情報処理部１１は、息方向を正面（奥）方向に決定し（ステップ５７６）、処理を終了して息向き判定ルーチン（図１１に）リターンする。
【００７３】
一方、正面ベクトルの大きさが所定値α以下であれば（ステップ５７５；Ｎ）、情報処理部１１は、センサＫ１〜８の各方向ベクトルの中から、左斜（左奥）方向（図１３の矢印５４８方向）の方向ベクトル同士を合成して左斜方向ベクトルを作成し、その大きさが所定値βより大きいか判断する（ステップ５７７）。
左斜方向ベクトルの大きさが所定値βよりも大きければ（ステップ５７７；Ｙ）、情報処理部１１は、息方向を左斜（奥）方向に決定し（ステップ５７８）、処理を終了して息向き判定ルーチン（図１１に）リターンする。
【００７４】
左斜方向ベクトルの大きさが所定値β以下であれば（ステップ５７７；Ｎ）、情報処理部１１は、センサＫ１〜８の各方向ベクトルの中から、右斜（右奥）方向（図１３の矢印５４９方向）の方向ベクトル同士を合成して右斜方向ベクトルを作成し、その大きさが所定値γより大きいか判断する（ステップ５７９）。
右斜方向ベクトルの大きさが所定値γよりも大きければ（ステップ５７９；Ｙ）、情報処理部１１は、息方向を右斜（奥）方向に決定し（ステップ５８０）、処理を終了して息向き判定ルーチン（図１１に）リターンする。
【００７５】
右斜方向ベクトルの大きさが所定値γ以下である場合（ステップ５８０；Ｎ）、すなわち、正面ベクトル、左斜め方向ベクトル、右方向ベクトルの全てが所定値α、β、γ以下である場合に、情報処理部１１は、奥行き方向の息入力では無いと判断し、センサＫの配置面上の方向を決定する。
【００７６】
すなわち、情報処理部１１は、各行Ｌ１〜Ｌ３毎に合成したセンサ方向ベクトルが最大の行を決め、その行の中で方向ベクトルの大きさ（ステップ５１６で保存したセンサ方向バッハの値＝ＴＨ大きさ）が最も大きい方向ベクトルに対応するセンサＫ（センサＫの番号）を決定する（ステップ５８１）。
なお、図１５に示すように、各行Ｌ１〜Ｌ３に対応して存在するセンサＫ数が異なる場合には、数に応じた係数を乗じることで補正した値を使用して最大の行を決定する。すなわち、他の行の２／３である行Ｌ２にはその逆数３／２を乗じた値を使用する。なお、センサ方向ベクトルの平均値を使用し、平均値が最も大きい行Ｌを決定するようにしてもよい。
そして、情報処理部１１は、息方向を、センサＫの配置面（表示装置２１）の中央から決定したセンサＫの方向に決定し（ステップ５８２）、処理を終了して息向き判定ルーチン（図１１）にリターンする。
【００７７】
以上の息向き演算ルーチンにより息方向を決定すると、情報処理部１１は、決定した息方向を息方向バッファに保存し（ステップ５１８；図１１）、処理を終了して息入力判定処理（図８）にリターンする。
【００７８】
そして情報処理部１１は、図８の息入力判定処理において、ステップ４４７で息速バッファに保存した息速と、ステップ５１８で息方向バッファに保存した息方向を、ユーザの入力としてＩ／Ｆ１７を介して接続されているＰＣ２０等の情報処理装置に出力する（ステップ５２）。
【００７９】
次いで情報処理部１１は、息入力が終了したか否かを判断する（ステップ５３）。ここで息入力が終了すると、低下していたサーミスタＴＨの検出温度が上昇するので、低下していたサーミスタＴＨの検出電圧が上昇し始めた場合に、息入力終了と判断する。
息入力がまだ継続していると判断した場合（ステップ５３；Ｎ）、情報処理部１１は、ステップ４４に戻って、息速と息向きの演算を繰り返す。
一方息入力の終了を検出すると（ステップ５３；Ｙ）、情報処理部１１は処理を終了し、メイン処理にリターンする。
【００８０】
以上の息入力判定処理（図８）が終了すると、メイン処理（図４）において、入力処理の終了か否かを判断する（ステップ５３）。このメイン処理の終了判断は、情報入力装置の電源オフ、または入力終了が指示された場合に終了と判断する。
情報処理部１１は、入力処理終了でなければ（ステップ５３；Ｎ）、ステップ４０に戻って息入力の判定処理を繰り返し、入力処理終了であれば（ステップ５３；Ｙ）、全処理を終了する。
【００８１】
次に第２実施形態について説明する。
この第２実施形態、及び後述する第４実施形態では、ウィンドウ（窓）やドアが開いている場合、エアコンが作動状態である場合等の外乱よる影響の程度を検出して補正するものである。
すなわち、外乱を検出したセンサの検出値を、外乱を検出しないときの各センサの検出値に近づけるように補正するものである。この補正は、外乱が検出されていないときの各センサの検出値に基づく息向きや息速と、外乱が検出されているときの各センサの検出値に基づく息向き等とに差異がないようにするためのものである。
なお、第２及び第４実施形態では、ウィンドウ、ドア、エアコンによる影響を外乱として検出しているが、息を入力する利用者とセンサとの位置関係が想定している所定位置からずれているために、各センサの検出値が所定位置における検出値と差異が生じている場合等も外乱として補正を行うようにしてもよい。この場合、利用者の位置は、画像認識処理、距離センサ、位置センサ等の測定値から検出し、また利用者に各センサに向けて順次、又は指定方向に向けて息を吹きかけて貰うことにより検出する。
第２実施形態における情報入力装置の構成及び使用するセンサＫは第１実施形態と同一である。また、息の入力に対する各処理については、第１実施形態と異なる部分を中心に説明し、同一部分については省略することとする。
【００８２】
図１６は、息入力判定処理（第１実施形態の図８に対応）の前半の一部について表したフローチャートである。
情報処理部１１は、第１実施形態と同様に咳・くしゃみフラグと息入力フラグを初期化する（ステップ４１、ステップ４２）。
そして情報処理部１１は、ウィンドウ、エアコン、ドアの各々について、作動状態を取得し（ステップ４２１）、各々が作動開始（ウィンドウの少なくとも１部が開いている状態、エアコンがオンの状態、少なくとも一部のドアが開いている状態）か否かを判断する（ステップ４４２２）。
【００８３】
ウィンドウ、エアコン、ドアのいずれかが作動開始である場合（ステップ４２２；Ｙ）、情報処理部１１は、対応する作動フラグ（ウィンドウ作動フラグ、エアコン作動フラグ、ドア作動フラグ）をオンにする（ステップ４２３）。
一方、ウィンド等のいずれも作動開始でない場合（ステップ４２２；Ｎ）、又は作動フラグをオンにした後、情報処理部１１は、ウィンドウ、エアコン、ドアについての補正ベクトル演算ルーチンを実行する（ステップ４２４）。
この補正ベクトル演算ルーチンでは、外乱に対して補正するＴＨ方向とＴＨ大きさについて演算する処理で、その詳細については後述する。
【００８４】
つぎに情報処理部１１は、作動開始していたウィンドウ、エアコン、ドアの各々について、作動が終了した（全てのウィンドウが閉じた状態、エアコンがオフの状態、全てのドガが閉じている状態）か否かを判断する（ステップ４２５）。
そして、作動開始状態から作動が終了した場合（ステップ４２５；Ｙ）、情報処理部１１は、対応する作動フラグ（ウィンドウ作動フラグ、エアコン作動フラグ、ドア作動フラグ）をオフにする（ステップ４２６）。
一方、作動が終了していない場合（ステップ４２５；Ｎ）、又は作動フラグをオフにした場合、情報処理部１１、第１実施形態に示した図８のステップ４３以降の処理を実行する。
【００８５】
図１７は、補正ベクトル演算ルーチン（ステップ４２４）の処理内容を表したフローチャートである。
情報処理部１１は、各センサＫに対して、センサＫにおける息入力方向である、ＴＨ方向（正面方向、右方向、左方向、左上方向、右上方向）を決定する（ステップ４２４１〜ステップ４２４９）。
このＴＨ方向の決定は、図１２に従って説明したセンサ毎の入力方向演算処理と同一であり、両者のステップ番号下二桁が同じステップは同一の処理である。
【００８６】
次に情報処理部１１は、決定した各ＴＨ方向を反転する（ステップ４２５０）。
図１８は、反転前後のＴＨ方向を表したものである。
この図１８に示されるように、決定したＴＨ方向が正面方向（配置面に対峙した奥方向）である場合には、ＴＨ方向を反転することで、後方（配置面から手前方向）に反転する。同様に、右方向は左方向に、左方向は右方向に反転し、左上（左奥）方向は右下（右手前）方向に、右上（右奥）方向は左下（左手前）方向に反転する。
【００８７】
ＴＨ方向を反転した後、情報処理部１１は、ウィンド補正バッファ、エアコン補正バッファ、ドアＴＨ補正バッファのうち、作動フラグがオンになっている補正バッファに反転したＴＨ方向を保存する（ステップ４２５１）。
【００８８】
また、情報処理部１１は、ウィンドウ補正用センサ大小バッファ、エアコン補正用センサ大小バッファ、ドア補正用センサ大小バッファのうち、作動フラグがオンになっている補正用センサ大小バッファにＴＨ大きさを保存する（ステップ４２５２）。
ここで使用するＴＨ大きさは、息の強さで、本実施形態では、電圧変化値を使用を使用する。この点ステップ５１６で説明したＴＨ大きさと同じである。
【００８９】
図１９は、第２実施形態における息向き演算ルーチンの処理内容を表したフローチャートである。この図１９は、第１実施形態における図１４の息向き演算ルーチンに対応しており、本実施形態における補正処理が図１９のステップ５７２とステップ５７２の間に追加されており、この補正処理は、図１６の息判定処理において演算した補正ベクトル（ステップ４２４）を使用しての補正が行われる。
【００９０】
なお、エアコンやウィンドウ等の作動状態によって発生する外乱に対する補正は、外乱によって受ける各センサＫ間のばらつきを補正ベクトルで補正するものである。
従って、エアコン等の作動状態において演算した補正ベクトルは、各センサＫを使用して息方向を決定する息向き演算ルーチンで使用する。
【００９１】
一方、息速演算ルーチン（図９）や息向き演算ルーチン（図１４）では、各センサＫ間を問題とせず、個々のセンサＫについての速度（電圧変化値による）や息向きを決定するものなので、補正ベクトルによる補正は行われてない。これは、各センサＫの、各サーミスタＴＨ間に対する外乱による影響は小さいと判断されるためであるが、より正確に判断するために、各サーミスタＴＨ間の影響を補正するＴＨ補正ベクトルを演算し、個別のセンサＫ毎の補正を行うようにしてもよい。
【００９２】
図１９において、情報処理部１１は、第１実施形態と同様に、センサ方向バッファに保存した各センサＫ１〜ＮのＴＨ方向と、センサ大小バッファに保存した各センサＫ１〜ＮのＴＨ大きさを読み込む（ステップ５７１、ステップ５７２）。
そして情報処理部１１は、ウィンドウ作動フラグ、エアコン作動フラグ、ドア作動フラグのいずれかがオンになっているか否かを判断し（ステップ５７２０）、いずれの作動フラグもオンになってない場合（ステップ５７２０；Ｎ）、ステップ５７３に移行する。
一方、いずれか１つ以上の作動フラグがオンになっている場合（ステップ５７２０；Ｙ）、情報処理部１１は、ステップ４２５１で保存された、ウィンド補正バッファ、エアコン補正バッファ、ドア補正バッファのＴＨ方向を読み込む（ステップ５７２１）。
また、情報処理部１１は、ステップ４２５２で保存された、ウィンドウ補正用センサ大小バッファ、エアコン補正用センサ大小バッファ、ドア補正用センサ大小バッファに保存された、ＴＨ大きさを読み込む（ステップ５７２２）。
【００９３】
そして、情報処理部１１は、各センサＫに対し、ステップ５７２で読み込んだＴＨ大きさ（センサ大小）からステップ５７２２で読み込んだＴＨ大きさ（補正センサ大小）を減算した値を補正後のセンサ大小としてセンサ大小バッファ保存する（ステップ５７２３）。
また、情報処理部１１は、ステップ５７１で読み込んだＴＨ方向（センサ方向）から、ステップ５７２１で読み込んだＴＨ方向（補正センサ方向）を減算した値を補正後のセンサ方向としてセンサ方向バッファに保存する（ステップ５７２４）。
以上のステップ５７２３、５７２４の両処理によって、エアコン等の外乱に対する補正処理が完了する。
【００９４】
そして情報処理部１１は、補正後のＴＨ方向と補正後のＴＨ大きさとから、第１実施形態と同様にして、各センサＫ１〜Ｎの方向ベクトルの作成と（ステップ５７３）、各行Ｌ１〜Ｌ３毎の各方向ベクトルを合成する（ステップ５７４）。
以降は、第１実施形態で説明したステップ５７５に以降の処理と同一である。
【００９５】
以上説明したようにこの第２実施形態によれば、ウィンドウ、エアコン、ドア等の作動状態による外乱に対して補正を行うのでより正確に息の入力方向を決定することができる。
【００９６】
次に第３実施形態について説明する。
この第１及び第２実施形態では、息向き判定ルーチン（ステップ５１、図１１〜図１５）において、各センサＫ毎に作成した各方向ベクトル（息の向き（ＴＨ方向）と大きさ（ＴＨ大きさ））に基づいて、息向きを判定したが、この第３実施形態では、方向ベクトルからではなく、最大の電圧変化値を検出したセンサＫの変化に基づいて判定するものである。
【００９７】
図２０は、第３実施形態における息向き判定ルーチンの処理内容を表したフローチャートである。なお、この息向き判定ルーチンは、第１、第２実施形態における図８の息向き判定ルーチン（ステップ５１）に対応しており、図８における他の処理、図４のメイン処理、図５〜図７の初期化処理については、第１実施形態、第２実施形態と同じである。
【００９８】
第３実施形態の息向き判定ルーチンにおいて情報処理部１１は、息入力フラグがオンか否かを判断し、オンでなければ（ステップ６０；Ｎ）、入力操作のための息ではないと判断して処理を終了し、リターンする。
一方息フラグがオンであれば（ステップ６０；Ｙ）、情報処理部１１は、センサＫ１〜８に対応した各センサフェールフラグがオンになっているセンサＫ番号を取得し、以後の処理対象から除外する（ステップ６１）。
【００９９】
次に情報処理部１１は、現ループにおいて、各センサＫの電圧変化値が最大のセンサ番号を取得する（ステップ６２）。
更に情報処理部１１は、前ループにおいて、各センサの電圧変化値が最大のセンサ番号を取得する（ステップ６３）。
【０１００】
そして、情報処理部１１は、現ループと前ループの電圧変化値が最大のセンサ番号が相違するか否かを判断する（ステップ６４）。
両センサ番号が相違する場合（ステップ６４；Ｙ）、前ループから現ループにかけて息入力者の顔の向き（息の向き）が動いていると判断できるので、情報処理部１１は、前ループのセンサ番号を始点とし、現ループのセンサ番号を終点とする方向を特定する（ステップ６５）。
【０１０１】
一方、両センサ番号が同一である場合（ステップ６４；Ｎ）、同一センサ方向に向けて息を入力し続けていると判断できるので、情報処理部１１は、現ループの電圧変化値が最大のセンサＫに対する入力方向を特定する（ステップ６６）。この入力方向は、センサ番号方向の奥行きを持った方向である。
例えば、現ループの電圧変化値が最大のセンサＫがセンサＫ１であった場合（図３参照）、息の入力方向として下奥方向が特定される。同様に、センサＫ２であれば左下奥方向、センサＫ３であれば上奥方向、センサＫ４であれば左上奥方向、センサＫ５であれば上奥方向、センサＫ６であれば右上奥方向、センサＫ７であれば右奥方向、センサＫ８であれば右下奥方向がそれぞれ特定される。
【０１０２】
情報処理部１１は、ステップ６５又はステップ６６で特定した方向を息方向バッファに保存し（ステップ６７）、息方向反転ルーチンを終了して図８の息入力判定処理にリターンする。
【０１０３】
このように第３実施形態によれば、電圧変化値が最大であるセンサＫの変化に基づいて息方向を特定するので、少ない処理負荷かつ高速に息向判定処理を行うことができる。
そして、判定する奥行き方向として、第１、第２実施形態の場合には正面（奥）方向、左斜（左奥）方向、右斜め（右奥）方向の３方向を特定したのに対し、第３実施形態によれば、センサ数Ｎだけ奥行き方向を特定することができるので、より詳細な奥行き方向の息入力をすることができる。
【０１０４】
なお、第３実施形態において、電圧変化値が最大のセンサ番号が現ループ、前ループの一方又は双方で複数存在する場合がある。
この場合には、それぞれのループにおける各センサＫの中央を特定するようにする。
【０１０５】
次に第４実施形態について説明する。
この第４実施形態では、エアコン等の外乱に対する補正を行うものである。
第２実施形態では、外乱による影響を補正ベクトル演算ルーチン（図１７）で測定することで各センサＫの方向ベクトルを補正するものである。
これに対して第４実施形態では、エアコン等の外乱に基づく影響を、各センサの感度を調整することで補正するものである。
すなわち、第２実施形態における補正ベクトル演算ルーチン（図１７）に変えて、第４実施形態のセンサ感度調整ルーチン（後述）を実行する。
【０１０６】
第４実施形態のセンサ感度調整ルーチンでは、初期化処理に続き息が入力する前の時点において、電圧変化を検出したセンサＫに対して、図２（ｃ）に示したサーミスタＴＨの温度−抵抗グラフから、熱源Ｒの温度を上げることでセンサ感度を下げるものである。
【０１０７】
図２１は第４実施形態におけるセンサ感度調整ルーチンの処理内容を表したものである。
情報処理部１１は、センサＫ１〜Ｎの各平均電圧変化値のうち、所定値より大きいセンサＫがあるか否か、すなわち、外乱による影響があるか否かを判断する（ステップ７０）。
全ての平均電圧変化値が所定値以下である場合（ステップ７０；Ｎ）、情報処理部１１は、外乱による影響はないと判断して、感度調整ルーチンを終了して息入力判定処理（図１６）に戻り、ステップ４２５以降の処理を行う。
【０１０８】
一方、所定値以上の平均電圧変化値が存在する場合（ステップ７０；Ｙ）、情報処理部１１は、所定値以上の電圧変化値を検出したセンサＫ（電圧変化ありのセンサＫ）と、所定値より大きくない電圧変化値のセンサＫ（電圧変化なしのセンサＫ）をそれぞれ特定する（ステップ７１、ステップ７２）。
【０１０９】
そして情報処理部１１は、特定した電圧変化なしの各センサＫの熱源Ｒに加えている付加平均電圧Ｖ１を演算する（ステップ７３）。また、特定した電圧変化ありの各センサＫの熱源Ｒに加えている付加平均電圧Ｖ２を演算する（ステップ７４）。
そして、情報処理部１１は、両付加平均電圧Ｖ１、Ｖ２の中間電圧（平均値）Ｖ３を演算する（ステップ７５）。
【０１１０】
そして、情報処理部１１は、ウィンドウ作動フラグ、エアコン作動フラグ、ドア作動フラグのうち、いずれかの作動フラグがオンか否かを判断する（ステップ７６）。
いずれかの作動フラグがオンである場合（ステップ７６；Ｙ）、情報処理部１１は、電圧変化ありのセンサＫに付加する電圧を、中間電圧Ｖ３に所定係数α（＞０）を乗じた値＝αＶ３を現在の付加電圧に加算した値とする（ステップ７７）。すなわち、電圧変化ありのセンサＫに対しては、その熱源Ｒに付加する電圧を上げて温度を上昇させることでセンサ感度を下げる。
【０１１１】
一方、電圧変化なしのセンサＫに付加する電圧を、中間電圧Ｖ３に所定係数β（＜０）を乗じた値＝βＶ３を加算した値とする（ステップ７８）。すなわち、電圧変化なしのセンサＫに対しては、その熱源Ｒに付加する電圧を下げて温度を下げることでセンサＫ感度を高める。
【０１１２】
なお、ステップ７７、及び／又はステップ７８において、作動中のウィンドウ、エアコン、ドアに対するセンサＫ位置に応じて重み付けを与えて、中間電圧Ｖ３に対して所定の重み付けを行うようにしてもよい。この場合、センサＫの感度を下げるステップ７７の場合と、センサＫの感度を上げるセンサＫ７８の場合とで重み付けを変えるようにしてもよい。
【０１１３】
一方、全ての作動フラグがオンでない場合（ステップ７６；Ｎ）、すなわち、エアコン等による外乱が存在しない場合、情報処理部１１は、電圧変化ありの全センサＫと電圧変化なしの全センサＫ（センサフェールフラグがオンでない全てのセンサＫ）の各熱源Ｒに加えている平均付加電圧を演算する（ステップ７９）。
【０１１４】
そして、電圧変化ありの各センサＫと変化なしの各センサＫの各熱源Ｒに付加する電圧を演算した平均付加電圧とする（ステップ８０）。
各センサに付加する電圧を決定した後（ステップ７９、８０）、情報処理部１１は、センサＫ感度調整ルーチンを終了して息入力判定処理（図１６）に戻り、ステップ４２５以降の処理を行う。
【０１１５】
以上説明したように、第２実施形態では、補正ベクトルの演算（ステップ４２４１〜４２５２）と、測定値に対する補正処理（ステップ５７２１〜５７２４）というように補正のための処理が必用であるのに対し、第４実施形態によれば、外乱による影響に対してセンサの感度調整だけであり処理が簡略化される。
【０１１６】
図２２は、息向きとして決定した奥行き方向の利用状態について表したものである。
この図２２（ａ）に示されるように、表示装置２１に、ウィンドウＢの上にウィンドウＡが重なって表示されているものとする。
この状態において、第１〜第４実施形態の情報入力装置から、左奥（又は左上奥）方向が息による入力として供給（出力）されると、情報入力装置に接続されているＰＣ２０やナビゲーション装置等の各種情報処理装置では、供給された左奥方向に対応してウィンドウＢが選択され、最上層のウィンドの表示を、ウィンドウＡからウィンドウＢに入れ替えて表示する。
【０１１７】
なお、本実施形態では、他の構成として次の様に構成するようにしてもよい。
（Ａ１）、風を検出する複数のセンサと、前記各センサの検出値に基づいて、息向を判定する息向判定手段と、前記判定した息向を入力方向として出力する出力手段と、を具備したことを特徴とする情報入力装置を提供する。
（Ａ２）前記複数のセンサの検出値から、息が入力されたか否かを判断する息入力判断手段とを備え、前記息向判定手段は、息の入力と判断した場合に、息向きを判定する、ことを特徴とする上記（Ａ１）に記載の情報入力装置を提供する。
（Ａ３）前記複数のセンサのうち、少なくとも２つのセンサは列方向に配置され、前記息向判定手段は、息向として、前記列方向に配置されたセンサの検出値に基づいて平面上の向きと奥行きを持った向きを判定する、ことを特徴とする上記（Ａ１）又は（Ａ２）に記載の情報入力装置を提供する。
（Ａ４）請求項４記載の発明では、前記センサは、中央に配置された熱源と、該熱源から等距離に配置された複数の温度検出手段とを備え、前記各温度検出手段で検出した温度に対応する各物理量を、センサの検出値とする、ことを特徴とする上記（Ａ１）、（Ａ２）又は（Ａ３）に記載の情報入力装置を提供する。
（Ａ５）前記センサは、各センサが配置される配置面に対し、前記温度検出手段の配置面が交差する方向に配置されている、ことを特徴とする上記（Ａ４）に記載の情報入力装置を提供する。
【０１１８】
（Ｃ１）風の強さを検出する複数のセンサと、前記各センサで検出した風の強さのうち最も強い風を検出したセンサを、所定時間間隔で特定するセンサ特定手段と、前記センサ特定手段により今回特定したセンサと、前回特定したセンサの位置関係から、息による入力の向きを判定する息向判定手段と、前記判定した息による入力の向きを入力方向として出力する出力手段と、を具備したことを特徴とする情報入力装置。
（Ｃ２）前記息向き判定手段は、前記センサ特定手段により今回特定したセンサと前回特定したセンサとが異なる場合には、前回特定したセンサから今回特定したセンサの方向を息による入力の向きと判定し、前記センサ特定手段により今回特定したセンサと前回特定したセンサとが同一である場合には、前記複数配置されたセンサの中央から特定したセンサの奥行き方向を、息による入力の向きと判定する、ことを特徴とする上記（Ｃ１）記載の情報入力装置。
【０１１９】
（Ｄ１）風を検出する複数のセンサと、外乱を検出する外乱検出手段と、外乱に対する補正値を取得する補正値取得手段と、前記各センサの検出値及び、前記取得した補正値に基づいて、息向を判定する息向判定手段と、前記判定した息向を入力方向として出力する出力手段と、を具備したことを特徴とする情報入力装置。
（Ｄ２）前記息向判定手段は、前記外乱検出手段が外乱を検出したときに、前記各センサの検出値及び前記取得した補正値に基づいて息向を演算する息向演算ルーチンを有する、
ことを特徴とする上記（Ｄ１）に記載の情報入力装置。
（Ｄ３）前記息向き演算ルーチンは、前記外乱検出手段が外乱を検出したときに、前記外乱検出手段が外乱を検出しないときに検出した前記各センサの検出値に近づけるように、前記各センサの検出値を前記取得した補正値で補正して前記息向を演算する、ことを特徴とする上記（Ｄ２）に記載の情報入力装置。
（Ｄ４）前記外乱検出手段は、前記外乱として、ウィンドウの開状態、エアコンのオン状態、ドアの開状態のうちの少なくとも１つを外乱として検出する、ことを特徴とする上記（Ｄ１）、（Ｄ２）、又は（Ｄ３）に記載の情報入力装置。
【図面の簡単な説明】
【０１２０】
【図１】本実施形態における情報入力装置の構成を表したものである。
【図２】情報入力装置で使用するセンサの構造と特性について表した説明図である。
【図３】各センサＫの配置について表した説明図である。
【図４】息の入力処理を行う情報入力装置のメイン処理について表したフローチャートである。
【図５】初期化処理の内容の一部を表したフローチャートである。
【図６】初期化処理の内容の他の一部を表したフローチャートである。
【図７】初期化処理の内容の更に他の一部を表したフローチャートである。
【図８】息入力判定処理のフローチャートである。
【図９】息速演算ルーチンによるフローチャートである。
【図１０】電圧変化値を息速に変換する変換マップを表した説明図である。
【図１１】息向き判定ルーチンのフローチャートである。
【図１２】各センサ毎の息入力方向演算処理の内容を表したフローチャートである。
【図１３】センサＫとＴＨ方向（息入力方向）を表した説明図である。
【図１４】息向き演算ルーチンの内容を表したフローチャートである。
【図１５】作成した各方向ベクトルをグループ化する各行Ｌ１〜Ｌ３を表した説明図である。
【図１６】息入力判定処理（第１実施形態の図８に対応）の前半の一部について表したフローチャートである。
【図１７】補正ベクトル演算ルーチン（ステップ４２４）のフローチャートである。
【図１８】反転前後のＴＨ方向を表した説明図である。
【図１９】第２実施形態における息向き演算ルーチンのフローチャートである。
【図２０】第３実施形態における息向き判定ルーチンのフローチャートである。
【図２１】は第４実施形態におけるセンサ感度調整ルーチンのフローチャートである。
【図２２】息向きとして決定した奥行き方向の利用状態について表した説明図である。
【符号の説明】
【０１２１】
１０  情報入力装置
１１  情報処理部
１２  センサ部
１３  ＣＰＵ（中央処理装置）
１４  Ａ／Ｄ
１５  ＲＯＭ
１６  ＲＡＭ
１７  インターフェイス（Ｉ／Ｆ）
２０  パーソナルコンピュータ（ＰＣ）
【図１】
0004936141.tif 000002
【図２】
0004936141.tif 000003
【図３】
0004936141.tif 000004
【図４】
0004936141.tif 000005
【図５】
0004936141.tif 000006
【図６】
0004936141.tif 000007
【図７】
0004936141.tif 000008
【図８】
0004936141.tif 000009
【図９】
0004936141.tif 000010
【図１０】
0004936141.tif 000011
【図１１】
0004936141.tif 000012
【図１２】
0004936141.tif 000013
【図１３】
0004936141.tif 000014
【図１４】
0004936141.tif 000015
【図１５】
0004936141.tif 000016
【図１６】
0004936141.tif 000017
【図１７】
0004936141.tif 000018
【図１８】
0004936141.tif 000019
【図１９】
0004936141.tif 000020
【図２０】
0004936141.tif 000021
【図２１】
0004936141.tif 000022
【図２２】
0004936141.tif 000023