(57)【要約】【課題】外部装置を実際に使用する際にのみ、外部装置が異常状態にあることを判断することが可能となる。【解決手段】ＵＳＢインターフェース１１ａと、ＵＳＢインターフェース１１ａから多機能周辺装置１にデータを入力するＵＳＢデバイス９と、を備え、多機能周辺装置１の使用状況を検知する人感センサ３と、ＵＳＢデバイス９が異常状態にあるか否かを判断するマイコン５と、を備え、マイコン５は、人感センサ３により多機能周辺装置１が使用状況にあると検知している間に、ＵＳＢインターフェース１１ａから入力されるデータのデータ形式が所定のフォーマットに則していないと判断した場合に、ＵＳＢデバイス９が異常状態にあると判断する。【選択図】図１
2015146555.tif 000002
【特許請求の範囲】
【請求項１】
入力手段を備えた装置本体と、前記入力手段から前記装置本体にデータを入力する外部装置と、を備えた情報処理装置における異常検出装置であって、
前記装置本体の使用状況を検知する検知手段と、
前記外部装置が異常状態にあるか否かを判断する判断手段と、を備え、
前記判断手段は、
前記検知手段により前記装置本体が使用状況にあると検知している間に、前記入力手段から入力される前記データのデータ形式が所定のフォーマットに則していないと判断した場合に、前記外部装置が異常状態にあると判断することを特徴とする異常検出装置。
【請求項２】
前記検知手段は、
所定エリア内の人体の有無を検知することにより前記装置本体の使用状況を検知する人感センサ、
或いは所定エリア内に赤外線を照射して人体からの反射状態を検出することにより前記装置本体の使用状況を検知する赤外線センサ、
或いは音波を検出することにより前記装置本体の使用状況を検知する音波検出センサ、
或いは開口部から入射される光の照度を検出することにより前記装置本体の使用状況を検知する照度センサ、のうち何れか一つを備えることを特徴とする請求項１に記載の異常検出装置。
【請求項３】
入力手段を備えた装置本体と、前記入力手段から前記装置本体にデータを入力する外部装置と、を備えた情報処理装置における異常検出装置であって、
前記入力手段からデータが入力されていない時間を計時し、前記時間が所定の基準時間を経過した場合にタイムアウト通知を出力するタイマ手段と、
前記外部装置が異常状態にあるか否かを判断する判断手段と、を備え、
前記判断手段は、
前記タイマ手段により前記タイムアウト通知を受信した場合に、前記外部装置が異常状態にあると判断することを特徴とする異常検出装置。
【請求項４】
前記タイマ手段に設定されている前記基準時間を変更可能に入力する可変入力手段を備えることを特徴とする請求項３に記載の異常検出装置。
【請求項５】
前記タイマ手段は、前記計時動作の許可又は停止について切り替えるスイッチ手段を備えることを特徴とする請求項３又は４に記載の異常検出装置。
【請求項６】
前記外部装置の種類毎に前記基準時間を記憶する記憶手段を備え、
前記タイマ手段は、
前記入力手段に接続されている前記外部装置の種類に応じて前記記憶手段から基準時間を取得し、計時中の時間が前記基準時間を経過した場合にタイムアウト通知を出力することを特徴とする請求項３に記載の異常検出装置。
【請求項７】
請求項１又は２に記載の異常検出装置を用いた異常検出方法であって、
前記装置本体の使用状況を前記検知手段に検知させる検知ステップと、
前記外部装置が異常状態にあるか否かを判断する判断ステップと、を備え、
前記判断ステップは、
前記検知ステップにより前記装置本体が使用状況にあると検知している間に、前記入力ステップにより入力される前記データのデータ形式が所定のフォーマットに則していないと判断した場合に、前記外部装置が異常状態にあると判断することを特徴とする異常検出方法。
【請求項８】
請求項３乃至６の何れか一項に記載の異常検出装置を用いた異常検出方法であって、
前記入力手段からデータが入力されていない時間を計時し、前記時間が所定の基準時間を経過した場合に前記タイマ手段にタイムアウト通知を出力させるタイマステップと、
前記外部装置が異常状態にあるか否かを判断する判断ステップと、を備え、
前記判断ステップは、
前記タイマステップにより前記タイムアウト通知を受信した場合に、前記外部装置が異常状態にあると判断することを特徴とする異常検出方法。
【請求項９】
請求項１乃至６の何れか一項に記載の異常検出装置を備えたことを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＵＳＢデバイスが異常状態か否かを判断するのに好適な異常検出装置、異常検出方法、及び情報処理装置に関する。
【背景技術】
【０００２】
従来、ＵＳＢデバイスが異常状態か否かを判断する方法として、ＵＳＢデバイスからのポーリングによる応答結果に基づいて判断する方法や、バスリセットの継続時間から判断する方法が既に知られている。
しかし、ＵＳＢデバイスからのポーリングの応答結果から判断する場合、常にＵＳＢデバイスからポーリングし続ける必要があり、ＣＰＵリソースや消費電力の面で本来の処理に加えて、余分にかかる負荷であるオーバーヘッドが発生するといった問題があった。
ＵＳＢデバイスが異常状態であるか否かをバスリセットの継続時間から判断する場合、バスリセットが発生するのはホストコントローラが異常を検知し論理的な接続状態を形成する際のみ（ａｔｔａｃｈ時のみ）である。このため、ホストコントローラが異常を検出できたときしか判断できないという問題があった。
特許文献１には、ＵＳＢ通信における物理的な接続が破断した場合、それが何れの箇所で発生しても異常検出を行うことができるとともに、論理的な通信切断による異常も検出することが可能な異常検出方法が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
特許文献１にあっては、ＵＳＢ通信における物理的な接続が破断、及び論理的な通信切断においては、ホストコントローラが異常検出を検出できたときがトリガとなるため、ホストコントローラが異常検出できたときしか判断できないといった問題があった。
そこで、ＣＰＵリソースや消費電力の面で余分にかかる負荷であるオーバーヘッドを抑え、ホストコントローラの異常検出機能に依存しない異常検出方法の提供が切望されている。
本発明は、上記に鑑みてなされたもので、その目的としては、外部装置を実際に使用する際にのみ、外部装置が異常状態にあることを判断することが可能な異常検出装置、異常検出方法、及び情報処理装置を提供することにある。
【課題を解決するための手段】
【０００４】
上記課題を解決するたに、請求項１記載の発明は、入力手段を備えた装置本体と、前記入力手段から前記装置本体にデータを入力する外部装置と、を備えた情報処理装置における異常検出装置であって、前記装置本体の使用状況を検知する検知手段と、前記外部装置が異常状態にあるか否かを判断する判断手段と、を備え、前記判断手段は、前記検知手段により前記装置本体が使用状況にあると検知している間に、前記入力手段から入力される前記データのデータ形式が所定のフォーマットに則していないと判断した場合に、前記外部装置が異常状態にあると判断することを特徴とする。
【発明の効果】
【０００５】
本発明によれば、装置本体が使用状況にあると検知している間に、入力されるデータのデータ形式が所定のフォーマットに則していないと判断した場合に、外部装置が異常状態にあると判断することで、外部装置を実際に使用する際にのみ、外部装置が異常状態にあることを判断することができる。
【図面の簡単な説明】
【０００６】
【図１】本発明の第１実施形態に係る異常検出装置に適用可能な多機能周辺装置の構成を示す図である。
【図２】図１に示すＵＳＢデバイスから出力されるデータ形式のフォーマットを示す説明図である。
【図３】本発明の第２実施形態に係る異常検出装置に適用可能な多機能周辺装置の動作を説明するためのフローチャートである。
【図４】本発明の第３実施形態に係る異常検出装置に適用可能な多機能周辺装置２構成を示す図である。
【発明を実施するための形態】
【０００７】
本発明の実施の形態を説明する。具体的には、ＵＳＢデバイスの異常検出方法に際して、人感センサが機器付近の人体を検知した場合にのみ異常か否かを判断する。これによりユーザが実際に使用する際以外に無駄なＣＰＵリソースや消費電力を割かないことが特徴になっている。
また、人感センサが検知していることから、ユーザからのデータ入力およびそのデータフォーマットを推測し、実際に入力されたデータのデータ形式がフォーマットに合っているか否かに基づいて、異常か否かを判断する。このためホストコントローラの異常検出機能に依存しない異常検出方法を提供することが特徴になっている。
【０００８】
本発明の実施形態について、図面を参照して説明する。
＜第１実施形態＞
図１に示すブロック図を参照して、本発明の第１実施形態に係る異常検出装置に適用可能な多機能周辺装置（ＭＦＰ：Multifunction Peripheral）の構成について説明する。なお、多機能周辺装置は複数の機能を搭載した複合的な周辺機器であり、例えば、多機能プリンタ（Multifunction Printer）であってもよい。
人感センサ３は、検知エリアに存在する人体２から放出される赤外線を検知することによりエリア内の人体の有無を検知するセンサである。
マイコン５は、内部にＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）、ＣＰＵ（Central Processing Unit）を有している。ＣＰＵは、ＲＯＭからオペレーティングシステムＯＳを読み出してＲＡＭ上に展開してＯＳを起動し、ＯＳ管理下において、ＲＯＭからプログラム（処理モジュール）を読み出し、各種処理を実行する。
【０００９】
タイマ７は、ＵＳＢデバイス９からデータが入力されていない時間を計時し、該時間が基準時間を経過した場合にタイムアウト通知を出力する。
ＵＳＢデバイス（外部装置）９は、ＵＳＢ接続が可能なＵＳＢキーボード、ＵＳＢ接続が可能なカードリーダ、ＵＳＢ接続が可能なＨＤＤ、テンキーを有するテンキーキーボード、ＵＳＢメモリを想定している。
ＵＳＢデバイス（外部装置）９は、ＵＳＢコントローラ９ａを有し、ＵＳＢコントローラ９ａにより上位装置であるホストコントローラ１１とのＵＳＢ通信を制御し、ＦＩＦＯバッファを介して論理的な接続状態を設定する。
【００１０】
ホストコントローラ１１は、内部にＲＯＭ、ＲＡＭ、ＣＰＵ、ＨＤＤ（Hard Disk Drive）を有し、ＨＤＤからオペレーティングシステムＯＳを読み出してＲＡＭ上に展開してＯＳを起動する。さらに、ホストコントローラ１１は、ＯＳ管理下において、ＨＤＤからプログラム（処理モジュール）を読み出し、各種処理を実行する。ホストコントローラ１１は複数のＵＳＢコネクタ（図示しない）、ＵＳＢインターフェース１１ａ（入力手段）を有し、外部装置であるＵＳＢデバイス９がＵＳＢコネクタに装着された場合に、ＵＳＢデバイス９との間でデータ通信を行う。ＵＳＢインターフェース１１ａは、ＦＩＦＯバッファを介して論理的な接続状態を設定する。
ドライバ１３は、多機能周辺装置１の外部に接続したＵＳＢデバイスを制御するための専用のソフトウェアであり、ホストコントローラ１１に設けられた内部ＲＡＭ上にインストールされているデバイスドライバである。
【００１１】
次に、図１に示す多機能周辺装置のブロック図を参照して、ユーザが使用を開始してから異常検出を行うまで手順を説明する。
まず、シーケンスＳｅ１では、人感センサ３がユーザを検知するまで多機能周辺装置は通常動作を継続することとする。そのため従来技術のように、ＵＳＢデバイス９から常にポーリングし続けてその応答結果から異常を検出する方法とは異なり、余計な処理時間や余計にしなければならない処理フローなどを表すオーバーヘッド分のＣＰＵリソースや消費電力を抑えることができる。
シーケンスＳｅ１では、人感センサ３がユーザを検知した場合、シーケンスＳｅ２でマイコン５などがタイマ７を起動してタイマ７での時間の計測を開始させる。
シーケンスＳｅ３では、ドライバ１３へユーザ検知の通知を行う。この通知を受けたドライバ１３は、ＵＳＢデバイス９からデータを受信すると、受信したデータがフォーマット通りのデータか否かを確認するための確認モードへ遷移する。
【００１２】
図１に示すように、例えばＵＳＢデバイス９としてＵＳＢキーボード９−１がホストコントローラに接続されていた場合、正常時では、ＵＳＢキーボードはＵＳＢに関するＨＩＤ（Human Interface Device）規格で定められている図２に示すフォーマットに従ったデータをホストコントローラ１１へ送信する。
なお、図２に示すように、ＨＩＤ規格では０ｂｙｔｅ目に修飾キー（Ｍｉｄｉｆｉｅｒ  ｋｅｙｓ）、１ｂｙｔｅ目に予約（Ｒｅｓｅｒｖｅｄ）、２〜７ｂｙｔｅ目にスキャンコード（Ｓｃａｎｃｏｄｅ）１〜６が格納されている。修飾キーは、コンピュータのキーボードにおいて、他のキーの入力文字や機能を変えるために併用するキーである。修飾キーは、例えば、シフトキー（Ｓｈｉｆｔ）、コントロールキー（Ｃｏｎｔｒｏｌ，Ｃｎｔｒｌ，Ｃｔｒｌ，Ｃｔｌ）、メタキー（Ｍｅｔａ）、オルタネートキー（ＡＬＴ，Ａｌｔ，ＡＬＴｅｒｎａｔｅ）、オルタネートグラフィックキー（ＡｌｔＧｒ）、Ｗｉｎｄｏｗｓ（登録商標）キー等が一般的に使用されている。スキャンコードは、１６進数の２桁で表すコードである。
ドライバ１３では、確認モードにおいて、図２に示すフォーマットに則していない（反した）データを受信した場合にはＵＳＢキーボードが異常であると判断する。
【００１３】
ここで、ＵＳＢデバイス９が異常状態にあるという判断結果の活用方法について説明する。
例えば、ＵＳＢデバイス９の電源管理マイコンの場合、異常判断結果を受け取ったら電源ＯＦＦ／ＯＮを実行してＵＳＢデバイスの復旧処理を試みる。また、画面描画アプリケーションの場合、異常判断結果を受け取ったら表示画面にその旨のエラーメッセージを表示し、ユーザに異常解決方法を提示する。
例えばＵＳＢキーボードの場合、データ形式が図２に示すフォーマットに従っているからといって異常である可能性は０ではない。例えば、多機能なＵＳＢキーボードの場合、Ｗｅｂブラウザやメディアプレイヤといったアプリケーションソフトウエアを起動することのできるキー（以下、アプリキーという）がキーボード上に存在しているものがある。アプリキーが存在していないＵＳＢキーボードでフォーマット内のデータにアプリキーのデータが格納されていた場合には異常だと判断することができる。ただし接続しているＵＳＢキーボードにアプリキーが存在している場合には異常と判断すべきではない。
【００１４】
また、ＵＳＢキーボードのアプリキー以外にも、ＵＳＢデバイス９としてＩＣカードリーダからＩＤデータが入力されるような場合に特定のＩＤデータの入力は想定しないといった例も考えられる。
こういったユーザ毎に異なる情報を例えばＳＤカードやＨＤＤといった記憶デバイスに記録しておくことで、ユーザ毎に異常状態と判断する／しないをカスタマイズすることが可能になる。ただし記憶デバイスに記録している場合、記憶デバイスからデータを読み込むには時間がかかる。そのため人感センサが検知した時点（シーケンスＳｅ１）において先行的にデータ読み込みを行う。このように構成することで、ユーザからの入力データを受信してから読み込み処理を始め、さらに異常判断を行うのに要する時間が経過することを防止することができる。
【００１５】
例えば、ＵＳＢデバイス９としてＵＳＢキーボードから入力される可能性があるキーコードを記憶デバイスに記録する。ドライバではこのキーコード情報を読み出し、異常か否かを判断する。例えば、ユーザがＵＳＢキーボードを別のキーボードに取り替えた際に、情報を更新することも可能である。また、直ちに異常状態にあると判断するのではなく、誤認識を防ぐために記録されていないキーコードは読み捨てるといったことも可能になる。
あるユーザＡについてのユーザＡ情報としては、キーボード上にアプリキーが存在していないキーボードを使用しているため、キーボード上に存在しているキーのキーコードのみ登録する。
他のユーザＢについてのユーザＢ情報としては、ＵＳＢデバイス９としてテンキーキーボードによる数字入力にしか使用しないので、テンキーに存在するキーのキーコードのみ登録する。例えば”ａ”のキーコードは登録されないキーコードの１つである。
また、図１に示すように、例えばＵＳＢデバイス９としてＩＣカードリーダ９−２がホストコントローラに接続されていた場合であっても、ＩＣカード９−２ａに記録されているユーザ情報のフォーマットは規格で決まっている。このため、ＵＳＢキーボードの場合と同様に異常判断を行うことができる。
【００１６】
シーケンスＳｅ５では、ユーザがＵＳＢデバイス９に対して情報を入力すると、シーケンスＳｅ６では、ＵＳＢデバイス９は入力され情報をホストコントローラ１１を介してドライバ１３へ送信する。
詳しくは、シーケンスＳｅ６では、ＵＳＢデバイス９に設けられたＵＳＢコントローラ９ａによりホストコントローラ１１に設けられたＵＳＢインターフェース１１ａとの間でＵＳＢ通信を制御し、ＦＩＦＯバッファを介して論理的な接続状態を設定する。
シーケンスＳｅ４では、ドライバ１３は受信データを解析するモードへと遷移しているため、フォーマットに反したデータ形式でないかを確認する。ここでフォーマットに反したデータを受信した場合、ドライバ１３は異常と判断して異常を検出することとなる。
【００１７】
またシーケンスＳｅ２では、タイマ７が計測を開始しているが、所定の時間までカウントが進んだ場合に、シーケンスＳｅ７ではタイマ７がマイコン５にタイムアウト通知を送信する。マイコンはさらにこれをドライバ１３へと通知し、ドライバ１３ではこのタイムアウト通知を受信した場合にも異常と判断する。
また、タイマ７を起動するシーケンスＳｅ２のタイミングをＵＳＢデバイス９毎に変更することが好ましい。
ユーザが必ず使用するＵＳＢデバイス９（本文中のＩＣカードリーダやＵＳＢトークンなど）は人感センサ３が検知してから直ちにタイマ７を起動する必要がある。それは人感センサ３が検知したタイミングと、ユーザがＵＳＢデバイス９を使用するタイミングとがほぼ同時だからである。もしタイマ７の起動が遅かった場合、既にユーザがＵＳＢデバイス９を使用済である可能性が高く、ユーザが使用するタイミングで異常状態を検出することができないためである。
特定の用途でしか使用しないＵＳＢデバイス９（本文中のＵＳＢキーボードやＵＳＢメモリなど）は、そのデバイスを使用する時点になってからタイマを起動する必要がある。人感センサ３が検知して直ちにタイマを起動すると、ユーザが実際に使用しようとしたタイミングでＵＳＢデバイス９の異常検出と判断されてしまい、使用できない可能性があるためである。
【００１８】
しかし、ＵＳＢデバイス９としてＵＳＢキーボードを用いた場合や、毎回使用するわけではないＵＳＢデバイス９を使用する場合は、シーケンスＳｅ２のタイミングを変更する必要がある。ＵＳＢキーボードの場合、例えばＵＳＢキーボードを使用してメールアドレスを入力する画面に遷移したときに初めてタイマを起動すべきである。このような事情のためタイマのタイムアウト値もＵＳＢデバイス９ごとに設定すべきである。
例えば、ログイン時に使用するＩＣカードリーダとＵＳＢキーボードを利用してメールアドレスを入力する場合を例にあげる。
ユーザがＩＣカードリーダを利用してログインに要する時間を例えば１０秒、タイムアウト値（基準時間）を例えば６０秒と仮定する。このときＩＣカードリーダに異常が発生していても、ユーザがログインを５回試みて諦めてしまった場合には、異常を検知することができない。よってログインを２〜３回試している間に異常を検知できるように、タイムアウト値は２０〜３０秒に設定するほうが６０秒に設定するよりも適している。
【００１９】
ユーザがキーボードを利用して１文字打つのに要する時間を例えば１秒と仮定する。ＩＣカードリーダのタイムアウト値で２０〜３０秒が適していると確認できたため、同じタイムアウトで設定するとキーボードが異常状態になり入力を受け付けなくなったと判断できるようになるためには２０〜３０秒の時間が必要となる。しかし、ユーザがキー操作を行っているのに、実際にキーが入力されていないため、例えば５秒経過した時点で直ちに異常だと判断することが推測される。従って、キーボードの場合はＩＣカードリーダよりは短い５秒などのタイムアウト値に設定したほうがユーザにとっては使い勝手が良いこととなる。
表１は、ＵＳＢデバイス９の種類に対応したタイムアウト値（秒）を示すテーブルであり、このテーブルはマイコンに記憶されている。
【００２０】
【表１】
2015146555.tif 000003
なお、ＵＳＢデバイス９の種類毎に基準時間を記憶するテーブルをマイコン５内の不揮発性記憶部（図示しない）に記憶させておく。
【００２１】
ここで、ＵＳＢデバイス９がＵＳＢホストコントローラ１１に対して接続された際の、通信までの手順について説明する。
まず、例えばＵＳＢデバイス９がホストコントローラ１１のＵＳＢデバイス接続ポートに接続されると、ホストコントローラ１１にＵＳＢデバイス９が認識されその旨が通知される。また、ホストコントローラ１１は、接続されたＵＳＢデバイス９に対してアドレスを割り当てる。
ホストコントローラ１１は、接続されたＵＳＢデバイス９に対するアドレスの割り当てが行われると、当該ＵＳＢデバイス９のディスクリプタの取得を開始する。ＵＳＢ通信では、ホストコントローラ１１とＵＳＢデバイス９との通信シーケンスにおいて、ホストコントローラ１１は、ターゲットであるＵＳＢデバイス９からコントロール転送によってディスクリプタを取得する。ディスクリプタは、ターゲットの特性、属性などの情報を含み、デバイスディスクリプタ、コンフィグレーションディスクリプタ、インターフェイスディスクリプタおよびエンドポイントディスクリプタの４種類がある。デバイスディスクリプタには、ＵＳＢデバイス９を特定する識別情報として、ＵＳＢデバイス９のベンダ名「ＶｅｎｄｏｒＩＤ」および機種名「ＰｒｏｄｕｃｔＩＤ」が用いられている。
そこで、マイコン５は、ＵＳＢデバイス９から読み出したＵＳＢデバイスの機種名を種類に対応させ、種類に応じてテーブルから基準時間を取得する。次いで、マイコン５は、当該基準時間をタイマ７に設定し、タイマ７は、ＵＳＢデバイス９の種類に応じて設定された基準時間に基づいて、計時中の時間が基準時間を経過した場合にタイムアウト通知を出力するように構成してもよい。
【００２２】
このように、タイマ７によりタイムアウト通知を受信した場合に、ＵＳＢデバイス９が異常状態にあると判断することで、ＵＳＢデバイス９を実際に使用する際にのみ、ＵＳＢデバイス９が異常状態にあることを判断することができる。
また、ＵＳＢデバイス９の種類に合わせて基準時間を取得し、計時中に基準時間を経過した場合にタイムアウト通知を出力することができる。
【００２３】
＜第２実施形態＞
次に、図３に示すフローチャートを参照して、本発明の第２実施形態に係る異常検出装置に適用可能な多機能周辺装置の動作を説明する。
ステップＳ５では、マイコン５は、人感センサ３が所定エリア内の人体の有無を検知しているか否かを判断する。人感センサ３が人体を検知している場合（有）、ステップＳ２０に進む。
人感センサ３が人体を検知していない場合（無）、ステップＳ１０では、マイコン５は、タイマ７から計時データを読み込み、タイマ７が計測を開始しているか否かを判断する。タイマ７が計測を開始している場合はステップＳ１５に進み、マイコン５は、タイマ計測を終了するためのタイマ計測終了信号をタイマ７に出力し、ステップＳ５に戻る。この結果、タイマ７は計測を終了する。
一方、人感センサ３が人体を検知している場合、ステップＳ２０では、マイコン５は、タイマ７から計時データを読み込み、タイマ７が計測を開始しているか否かを判断する。タイマ７が計測を開始していない場合はステップＳ２５に進み、マイコン５は、タイマ７を初期化し、タイマ７を起動してタイマ計測を開始させ、ステップＳ３０に進む。
タイマ７が計測を開始している場合はステップＳ３０に進む。
【００２４】
次いで、ステップＳ３０では、マイコン５は、ユーザの操作によりＵＳＢデバイス９である例えばＵＳＢキーボードからデータが入力されたか否かを判断する。
ＵＳＢキーボードからデータが入力されていない場合、ステップＳ３５に進み、マイコン５は、タイマ７のカウントが所定の基準時間を超えているか否かを判断する。この判断の結果、タイマ７のカウントが所定の基準時間を超えている（タイムアウト）場合にはステップＳ４５に進み、タイマ７のカウントが所定の基準時間を超えていない場合にはステップＳ５に進む。
なお、表２は、ＵＳＢデバイスの種類に対応した基準時間（秒）を示すテーブルであり、このテーブルはマイコン５に記憶されている。
【００２５】
【表２】
2015146555.tif 000004
なお、ＵＳＢデバイス９の種類毎に基準時間を記憶するテーブルをマイコン５内の不揮発性記憶部（図示しない）に記憶させ、マイコン５は、ＵＳＢデバイス９から読み出したデバイスの種類に応じてテーブルから基準時間を取得する。次いで、マイコン５は、タイマ７により計時中の時間が基準時間を経過した場合に異常状態にあると判断するように構成してもよい。
【００２６】
ステップＳ３０において、ＵＳＢキーボードからデータが入力された場合、ステップＳ４０に進み、マイコン５は、ユーザからの入力データは想定しているフォーマットに則（準拠）しているか否かを判断する。この判断の結果、入力データがフォーマットに則している場合にはステップＳ３５に進む。一方、入力データがフォーマットに則していない（フォーマット違反）場合にはステップＳ４５に進む。
次いで、ステップＳ４５では、マイコン５は、タイマ計測を終了するためのタイマ計測終了信号をタイマ７に出力する。この結果、タイマ７は計測を終了する。
次いで、ステップＳ５０では、フォーマット違反状態又はタイムアウト状態であるので、マイコン５は、デバイス異常検出フラグ又はデバイス異常検出メッセージをドライバに出力する。
【００２７】
このように、多機能周辺装置１が使用状況にあると検知している間に、入力されるデータのデータ形式が所定のフォーマットに則していないと判断した場合に、ＵＳＢデバイス９が異常状態にあると判断することで、ＵＳＢデバイス９を実際に使用する際にのみ、ＵＳＢデバイス９が異常状態にあることを判断することができる。
また、タイマ７によりタイムアウト通知を受信した場合に、ＵＳＢデバイス９が異常状態にあると判断することで、ＵＳＢデバイス９を実際に使用する際にのみ、ＵＳＢデバイス９が異常状態にあることを判断することができる。
さらに、ＵＳＢデバイス９の種類に合わせて基準時間を取得し、計時中に基準時間を経過した場合にタイムアウト通知を出力することができる。
【００２８】
＜第３実施形態＞
図４に示すブロック図を参照して、本発明の第３実施形態に係る異常検出装置に適用可能な多機能周辺装置２１の構成について説明する。
第３実施形態は、第１実施形態の構成に加えて、可変入力部２３、スイッチ２５を有することを特徴とする。
可変入力部２３は、タイマ７に設定されている基準時間を変更可能に入力するデジタルスイッチであり、デジタルスイッチの前面に設けられた操作ツマミ２３ａを操作により回転することで、所望のデジタル値（例えば、０〜Ｆ）をタイマ７に出力する。タイマ７は、可変入力部２３からのデジタル値を基準時間として読み込んで設定する。なお、デジタル値０〜Ｆに対して基準時間０〜３２秒をタイマ７に設定することができる。
なお、可変入力部２３からのデジタル値を基準時間としてマイコン５に出力することで、図３に示すフローチャートのステップＳ３５に用いる基準時間を変更可能に設定することもできる。
これにより、ユーザがタイムアウト値に遅すぎる／早すぎると不満を感じた場合に、タイムアウト値を動的に設定することができる。
【００２９】
スイッチ２５は、タイマ７の計時動作の許可又は停止について切り替えるためのスイッチであり、スイッチ２５の前面に設けられた操作レバー２５ａを操作により上下移動することで、ＯＮ／ＯＦＦ状態を切り替えることが可能である。この場合、タイマ７がスイッチ２５の状態に応じて計時動作の許可（ＯＮ）又は停止（ＯＦＦ）を切り替えることができる。
これにより、タイマ７の計時機能を使用しないで人感センサ３からの入力と、ＵＳＢデバイス９から入力されるデータがフォーマットに則しているか否かの判定処理とで異常検出することもできる。
このように、ＵＳＢデバイス９の使用状況に合わせてタイマ７に設定されている基準時間を変更することができる。
また、ＵＳＢデバイス９の使用状況に合わせて計時動作の許可又は停止を行うことができる。
【００３０】
＜第４実施形態＞
図１に示すブロック図を参照して、本発明の第４実施形態に係る異常検出装置に適用可能な多機能周辺装置１の変形例について説明する。
第１実施形態において用いられた人感センサ３の場合、どんなＵＳＢデバイスにも対応できるというメリットがあるが、ＵＳＢデバイスごとにタイマ７を起動するタイミングを考慮する必要がある。
そこで、人感センサ３に代わって、ＵＳＢデバイス９にユーザの手やＩＣカードが接近する付近に赤外線センサ、音検出センサ、照度センサなどのセンサを設置することで、上記説明のようにタイマ７を起動するタイミングＳｅ２を考慮せずに構成することができる。
【００３１】
第４実施形態は、第１実施形態の人感センサ３に代わって、赤外線センサ３ａ、音波検出センサ３ｂ、照度センサ３ｃのうち何れか一つを有することを特徴とする。
赤外線センサ３ａは、所定エリア内に赤外線を照射し、ユーザの接近により人体からの反射状態を検出することにより、ユーザの使用状況を検知する。
音波検出センサ３ｂは、ユーザが当該装置を操作したときに発生する音波を検出することによりユーザの使用状況を検知する。
照度センサ３ｃは、ユーザの接近により当該センサの開口部に日陰が形成され、開口部から入射される光の照度が変化することを検出することにより、ユーザの使用状況を検知する。
例に挙げた前述の各種センサの場合はユーザが実際にＵＳＢデバイス９を使用するタイミングでタイマ７を起動することができるのでその必要はない。しかしＵＳＢデバイス９ごとにセンサの向き不向きがあるため、適切なセンサを採用することが好ましい。
【００３２】
本実施形態によれば、ホストコントローラ１１が異常検出できなかった場合でもＣＰＵリソースや消費電力のオーバーヘッドを抑えてＵＳＢデバイス９の異常状態を検出することができる。
また、人感センサ３が検知した際にのみ異常状態か否かの判定を行うためＣＰＵリソースや消費電力のオーバーヘッドを防ぐことができる。
また人感センサ３が検知していることからユーザが機器の前にいることが明らかである。よって、ＵＳＢデバイス９からホストコントローラ１１へ送信されてくるデータのフォーマットを予想することができ、フォーマット外のデータ形式であれば異常と判断するので、ホストコントローラ１１の異常検出に依存しない検出方法を提供することができる。
このように、人感センサ３、赤外線センサ、音波検出センサ、照度センサ、のうち何れか一つを備えることで、多機能周辺装置１の使用状況を検知することができる。
【００３３】
第１乃至第４実施形態によれば、ホストコントローラ１１がＵＳＢデバイス９の異常検出をできなかった場合でも、ホストコントローラ１１のＣＰＵリソースや消費電力のオーバーヘッド（本来の処理に加えて、余分にかかる負荷）を抑えてＵＳＢデバイスの異常を検出することができる。
また、第１及び第２実施形態では、人感センサ３が検知した際にのみＵＳＢデバイス９が異常状態か否かを判定するため、ホストコントローラ１１のＣＰＵリソースや消費電力のオーバーヘッドを防ぐことができる。さらに、人感センサ３が人体を検知していることからユーザが機器の前にいることが明らかである。よってＵＳＢデバイス９からホストコントローラ１１へ送信されてくるデータのフォーマットを予想することができ、フォーマット外であれば異常状態と判断するので、ホストコントローラ１１の異常検出機能に依存しない検出手法を提供することができる。
【００３４】
＜本発明の実施態様例と効果＞
＜第１態様＞
本態様の多機能周辺装置１は、ＵＳＢインターフェース１１ａと、ＵＳＢインターフェース１１ａから多機能周辺装置１にデータを入力するＵＳＢデバイス９と、を備え、多機能周辺装置１の使用状況を検知する人感センサ３と、ＵＳＢデバイス９が異常状態にあるか否かを判断するマイコン５と、を備え、マイコン５は、人感センサ３により多機能周辺装置１が使用状況にあると検知している間に、ＵＳＢインターフェース１１ａから入力されるデータのデータ形式が所定のフォーマットに則していないと判断した場合に、ＵＳＢデバイス９が異常状態にあると判断することを特徴とする。
本態様によれば、多機能周辺装置１が使用状況にあると検知している間に、入力されるデータのデータ形式が所定のフォーマットに則していないと判断した場合に、ＵＳＢデバイス９が異常状態にあると判断することで、ＵＳＢデバイス９を実際に使用する際にのみ、ＵＳＢデバイス９が異常状態にあることを判断することができる。
【００３５】
＜第２態様＞
本態様の検知手段は、所定エリア内の人体の有無を検知することにより多機能周辺装置１の使用状況を検知する人感センサ３、或いは所定エリア内に赤外線を照射して人体からの反射状態を検出することにより多機能周辺装置１の使用状況を検知する赤外線センサ、或いは音波を検出することにより多機能周辺装置１の使用状況を検知する音波検出センサ、或いは開口部から入射される光の照度を検出することにより多機能周辺装置１の使用状況を検知する照度センサ、のうち何れか一つを備えることを特徴とする。
本態様によれば、人感センサ３、赤外線センサ、音波検出センサ、照度センサ、のうち何れか一つを備えることで、多機能周辺装置１の使用状況を検知することができる。
【００３６】
＜第３態様＞
本態様の異常検出装置１は、ＵＳＢインターフェース１１ａと、ＵＳＢインターフェース１１ａから多機能周辺装置１にデータを入力するＵＳＢデバイス９と、を備え、ＵＳＢインターフェース１１ａからデータが入力されていない時間を計時し、時間が所定の基準時間を経過した場合にタイムアウト通知を出力するタイマ７と、ＵＳＢデバイス９が異常状態にあるか否かを判断するマイコン５と、を備え、マイコン５は、タイマ７によりタイムアウト通知を受信した場合に、ＵＳＢデバイス９が異常状態にあると判断することを特徴とする。
本態様によれば、タイマ７によりタイムアウト通知を受信した場合に、ＵＳＢデバイス９が異常状態にあると判断することで、ＵＳＢデバイス９を実際に使用する際にのみ、ＵＳＢデバイス９が異常状態にあることを判断することができる。
【００３７】
＜第４態様＞
本態様の異常検出装置は、タイマ７に設定されている基準時間を変更可能に入力する可変入力部２３を備えることを特徴とする。
本態様によれば、ＵＳＢデバイス９の使用状況に合わせてタイマ７に設定されている基準時間を変更することができる。
＜第５態様＞
本態様のタイマ５は、計時動作の許可又は停止について切り替えるスイッチ２５を備えることを特徴とする。
本態様によれば、ＵＳＢデバイス９の使用状況に合わせて計時動作の許可又は停止を行うことができる。
＜第６態様＞
本態様の異常検出装置は、ＵＳＢデバイス９の種類毎に基準時間を記憶するマイコン５内の不揮発性記憶部を備え、タイマ７は、ＵＳＢインターフェース１１ａに接続されているＵＳＢデバイス９の種類に応じてマイコン５内の不揮発性記憶部から基準時間を取得し、計時中の時間が基準時間を経過した場合にタイムアウト通知を出力することを特徴とする。
本態様によれば、ＵＳＢデバイス９の種類に合わせて基準時間を取得し、計時中に基準時間を経過した場合にタイムアウト通知を出力することができる。
【００３８】
＜第７態様＞
本態様の異常検出方法は、多機能周辺装置１の使用状況を人感センサ３に検知させる検知ステップと、ＵＳＢデバイス９が異常状態にあるか否かを判断する判断ステップと、を備え、判断ステップは、検知ステップにより多機能周辺装置１が使用状況にあると検知している間に、入力ステップにより入力されるデータのデータ形式が所定のフォーマットに則していないと判断した場合に、ＵＳＢデバイス９が異常状態にあると判断することを特徴とする。
本態様によれば、多機能周辺装置１が使用状況にあると検知している間に、入力されるデータのデータ形式が所定のフォーマットに則していないと判断した場合に、ＵＳＢデバイス９が異常状態にあると判断することで、ＵＳＢデバイス９を実際に使用する際にのみ、ＵＳＢデバイス９が異常状態にあることを判断することができる。
【００３９】
＜第８態様＞
本態様の異常検出方法は、ＵＳＢインターフェース１１ａからデータが入力されていない時間を計時し、時間が所定の基準時間を経過した場合にタイマ手段にタイムアウト通知を出力させるタイマステップと、ＵＳＢデバイス９が異常状態にあるか否かを判断する判断ステップと、を備え、判断ステップは、タイマステップによりタイムアウト通知を受信した場合に、ＵＳＢデバイス９が異常状態にあると判断することを特徴とする。
本態様によれば、タイマ７によりタイムアウト通知を受信した場合に、ＵＳＢデバイス９が異常状態にあると判断することで、ＵＳＢデバイス９を実際に使用する際にのみ、ＵＳＢデバイス９が異常状態にあることを判断することができる。
＜第９態様＞
本態様の情報処理装置は、第１乃至第６態様の何れか一つの多機能周辺装置１を備えたことを特徴とする。
本態様によれば、多機能周辺装置１に備えた構成を情報処理装置に利用することができる。
【符号の説明】
【００４０】
１…多機能周辺装置、２…ユーザ、３…人感センサ、５…マイコン、７…タイマ、９…ＵＳＢデバイス、９ａ…ＵＳＢコントローラ、１１…ホストコントローラ、１１ａ…ＵＳＢインターフェース、１３…ドライバ、２３…可変入力部、２５…スイッチ
【先行技術文献】
【特許文献】
【００４１】
【特許文献１】特開２００８−０５９４０９公報
【図１】
2015146555.tif 000005
【図２】
2015146555.tif 000006
【図３】
2015146555.tif 000007
【図４】
2015146555.tif 000008