(57)【要約】【課題】  チャタリングが発生する頻度が異なる複数の操作部から受信するデータの処理を効率よく行う。【解決手段】  第１の入力手段と、第２の入力手段と、第１入力手段、第２の入力手段のそれぞれにより生成されるデータ信号と、第１の入力手段と第２の入力手段を識別する識別信号に基づいて、制御するコントローラと、を備える。コントローラは、チャタリングに関するフィルタ処理を行うフィルタ手段と、識別信号に基づいて、データ信号に対してフィルタ処理を行うか否かを選択する選択手段と、を有する。【選択図】  図１
2014119818.tif 000002
【特許請求の範囲】
【請求項１】
第１の入力手段と、
第２の入力手段と、
前記第１の入力手段、前記第２の入力手段のそれぞれにより生成されるデータ信号と、前記第１の入力手段と前記第２の入力手段を識別する識別信号に基づいて、制御するコントローラとを備え、
前記コントローラは、
チャタリングに関するフィルタ処理を行うフィルタ手段と、
前記識別信号に基づいて、前記データ信号に対して前記フィルタ処理を行うか否かを選択する選択手段と、を有することを特徴とする電子機器。
【請求項２】
前記第１の入力手段は前記第２の入力手段に比べて前記チャタリングの発生頻度が高く、
前記選択手段は、前記第１の入力手段からの前記データ信号は前記フィルタ処理を行い、前記第２の入力手段からの前記データ信号は前記フィルタ処理を行わないように選択することを特徴とする請求項１に記載の電子機器。
【請求項３】
前記第１の入力手段に対応した第１の通信手段と、
前記第１の入力手段に対応した第２の通信手段と、
前記第１の通信手段、前記第２の通信手段それぞれを介する前記データ信号を前記識別信号とともに順に送るために調停する調停手段と、をさらに備えることを特徴とする請求項１または２に記載の電子機器。
【請求項４】
前記コントローラは、前記調停手段を介して送られた前記データ信号を記憶するメモリ手段を有し、前記メモリ手段の記憶内容に基づいて前記電子機器を制御することを特徴とする請求項１乃至３のいずれか１項に記載の電子機器。
【請求項５】
前記電子機器は、操作パネルを有するプリント装置であり、前記第１の入力手段および前記第２の入力手段は前記操作パネルに設けられた異なる種類の入力デバイスであることを特徴とする請求項１乃至４のいずれか１項に記載の電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、操作パネルを備えた電子機器に関する発明である。
【背景技術】
【０００２】
電子機器は、ユーザが操作する操作パネル（操作部）と操作パネルから入力される指示に応じて機器を制御する制御部（ＣＰＵ）を有する。操作パネルは、その構造によりチャタリングの発生頻度が異なる。やすいものがある。チャタリングが発生したときの信号を受信する場合、制御部は適切な制御を行うことができない。特許文献１に開示されているキー入力装置では、受信したデータを内部バッファにて保持し、これを新たに受信したデータと比較することで、チャタリングの影響を抑制している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１１−３５３０９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、電子機器が、異なる種類の操作部を備える場合、操作部毎にチャタリングが発生する頻度が異なる。複数種類の操作部のうち、チャタリングが発生しやすい操作部とチャタリングが発生しにくい操作部が含まれる。このような電子機器において、制御部は、すべての操作部から送られる信号（データ）に対して特許文献１に開示された処理を行うと、その処理負荷のために制御部が行う処理速度が低くなるという課題があった。複数の操作部に対して操作部毎に制御回路を備える構成にした場合、制御回路の数が増加するだけでなく、操作部と制御部を接続する信号線や端子の数が増加する。このため、電子機器の回路規模が増大するという課題が生じる。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明の電子機器は、第１の入力手段と、第２の入力手段と、前記第１入力手段、前記第２の入力手段のそれぞれにより生成されるデータ信号と、前記第１の入力手段と前記第２の入力手段を識別する識別信号に基づいて、制御するコントローラとを備え、前記コントローラは、チャタリングに関するフィルタ処理を行うフィルタ手段と、前記識別信号に基づいて、前記データ信号に対して前記フィルタ処理を行うか否かを選択する選択手段と、を有することを特徴とする。
【発明の効果】
【０００６】
本発明の構成によれば、チャタリングが発生する頻度が異なる複数の操作部（入力部）を備える構成においても、回路規模の増大を抑制しつつ、複数の操作部から送られる信号（データ）の処理を効率よく行うことができる。
【図面の簡単な説明】
【０００７】
【図１】本発明の電子機器の全体構成を説明するブロック図である。
【図２】図１の入力制御回路の構成を説明するブロック図である。
【図３】図２の入力制御回路が行う処理のタイミングを説明する図である。
【図４】図１のデータ受信部の構成を説明するブロック図である。
【図５】図１のデータ受信部が受信するデータを説明する図である。
【図６】図１のデータ受信部が処理フローを説明する図である。
【図７】本発明を適用可能な印刷装置の全体構成を説明する装置外観図である。
【発明を実施するための形態】
【０００８】
（第１の実施形態）
＜電子機器の構成＞
図１（ａ）は、本発明の実施形態である電子機器のブロック図である。ここで、印刷装置を電子機器の例として説明する。
【０００９】
印刷装置は、コントローラ（第１のコントローラ）１００１、通信コントローラ（第２のコントローラ）２００１、操作パネル３００１、印字機構部４００１から構成される。コントローラ１００１と通信コントローラ２００１はケーブル５００１で接続されており、コマンドやデータ等の信号が転送される。操作パネル３００１と通信コントローラ２００１はケーブル５００２で接続されており、コマンドやデータ等の信号が転送される。コントローラ１００１と印刷機構部４００１はケーブル５００３で接続されており、コマンドやデータ等の信号が転送される。
【００１０】
操作パネル３００１には入力デバイスとして、キーマトリックス部３００２、ＪＯＧダイアル部３００３、タッチパネル部３００４を備えている。これらは、異なる種類の入力デバイスである。これらの入力デバイスを別に表現すると、第１の入力手段、第２の入力手段、第３の入力手段である。キーマトリックス部３００２から送信されるデータは、ユーザのスイッチ操作で金属の接点が接触することによって生成されるものである。よって、そのデータにはチャタリングが発生しやすく、データとして使用する際には、フィルタ処理が必要となる。つまり、キーマトリックス部３００２は、チャタリングの発生頻度が相対的に高い操作手段である。
【００１１】
一方、ＪＯＧダイアル部３００３は、回転キーの動作によって光学センサの検知情報が変化することでデータ信号が生成されるものである。よって、ＪＯＧダイアル部３００３においては、チャタリングが発生することはなく、データを使用する際のフィルタ処理は不要である。また、タッチパネル部３００４では、ユーザの操作を基にタッチパネル部３００４に設けられたＣＰＵ（不図示）によってデータ信号が生成される。よって、タッチパネル部３００４においても、チャタリングが発生することはなく、データを使用する際のフィルタ処理は不要である。つまり、ＪＯＧダイアル部３００３、タッチパネル部３００４は、チャタリングの発生頻度が相対的に低い操作手段である。
【００１２】
操作パネル３００１にて生成された各種入力信号は、ケーブル５００２に割り当てられたデータバスによって、通信コントローラ２００１に送信される。操作パネル３００１と通信コントローラ２００１は、電子機器の機能上、近接して設けられる。
【００１３】
通信コントローラ２００１には、コマンド生成部２００２とセレクタ２００３が備えられている。コマンド生成部２００２では、各データバスからデータが入力されたことを検知し、入力デバイスに該当するコマンドを生成し、コントローラ１００１へ送信する。また、操作パネル３００１から送信される各種入力信号は、非同期に生成される。そのため、複数の信号が同時に入力された場合に対応できるように、セレクタ２００３は、通信状況や優先度を基に調停を行う調停手段を備えている。セレクタ２００３は、図１（ｂ）に示すように、操作情報（第１のデータ）とともにコマンド（第２のデータ）をコントローラ１００１へ送信する。このコマンドは、コマンド生成部２００２で生成される。
【００１４】
また、通信コントローラ２００１と操作パネル３００１との間の通信速度は、メインコントローラ１００１と通信コントローラ２００１との間の通信速度より相対的に速い。このような場合には、セレクタ２００３は、通信状況に対応して操作パネル３００１へアック信号を出力する。
【００１５】
ＣＰＵ１００９は、Ｉ／Ｏ（インターフェース）部１０１４を介して、外部ネットワークに接続されているホストコンピュータ（ホストＰＣ）等の外部装置と通信できる。Ｉ／Ｏ（インターフェース）部１０１４は、ホストＰＣから圧縮された画像データの受信を行う。データ伸張部１０１３は、圧縮された画像データを伸張処理する。更に、画像処理部１０１０は、多値の画像データを二値化する。コントローラ１００１は、データ転送部１０１１を介して印字機構部４００１へ転送し、印刷機構部４００１は印刷動作を行う。
【００１６】
なお、印刷機構部４００１には、キャリッジ駆動用のキャリッジモータ、給紙ローラ駆動用の給紙モータ、紙搬送駆動用の紙搬送モータなどを駆動するためのモータドライバを含む。また、プリントヘッドを駆動するためのプリントヘッド駆動用のドライバなどを含んでいる。
【００１７】
図２は、通信コントローラ２００１に設けられたセレクタ２００３の構成を説明する図である。通信コントローラ２００１は、３つの送信元（キーマトリックス部３００２、ＪＯＧダイアル部３００３、タッチパネル部３００４）からデータを受信し、１つの送信先であるメインコントローラ１００１へ受信したデータを送信する。
【００１８】
セレクタ２００３は、データ線Ｒｘ１を介してキーマトリックス部３００２から信号を受信する。セレクタ２００３は、同様に、データ線Ｒｘ２を介してＪＯＧダイアル部３００３から信号を受信し、データ線Ｒｘ３を介してタッチパネル部３００４から信号を受信する。このように、セレクタ２００３は、第１の通信手段、第２の通信手段、第３の通信手段によって信号を受信する。
【００１９】
調停部２００３４は、ＫＥＹ  Ｉ／Ｆ２００３１、ＪＯＧ  Ｉ／Ｆ２００３２、タッチパネルＩ／Ｆ２００３３からリクエスト信号（Ｒｅｑ１、Ｒｅｑ２，Ｒｅｑ３）を受信すると、アック信号（Ａｃｋ１、Ａｃｋ２、Ａｃｋ３）を送信する。これにより、調停部２００３４は、３つの操作部からコントローラ１００１へのデータ転送の調停を行う。
【００２０】
図３は、セレクタ２００３の制御を説明するタイミング図である。ここでは、キーマトリックス部３００２とＪＯＧダイアル部３００３からの操作情報の受信について説明する（タッチパネル部３００４からの操作情報については、説明を省く）。
【００２１】
ＫＥＹ  Ｉ／Ｆ２００３１は、操作情報としてキーデータを、データ線Ｒｘ１を介して受信すると、リクエスト信号（Ｒｅｑ１）をハイレベルにする。ＪＯＧ  Ｉ／Ｆ２００３２は、操作情報としてジョグデータを、データ線Ｒｘ２から受信すると、リクエスト信号（Ｒｅｑ２）をハイレベルにする。調停部２００３４は、２つのリクエスト信号の優先順位を判定する。この例では、リクエスト信号（Ｒｅｑ１）が優先される。従って、調停部２００３４は、アック信号（Ａｃｋ１）にパルスＴ１を出力し、キーデータを含む内部データ１を受信する。キーデータを受信すると、調停部２００３４はリクエスト信号（Ｒｅｑ１）のレベルをロウレベルにする。調停部２００３４は、データ線Ｔｘを介して、コマンドとともにキーデータを出力する。次に、調停部２００３４は、アック信号（Ａｃｋ２）にパルスＴ２を出力し、ジョグデータを含む内部データ２を受信する。ジョグデータが入力されると、調停部２００３４はリクエスト信号（Ｒｅｑ２）のレベルをロウレベルにする。調停部２００３４は、データ線Ｔｘを介して、コマンドとともにジョグデータを出力する。
【００２２】
＜データ受信部の構成＞
図４は、操作データ処理部１００８の構成を説明図である。制御部１０５は、ＣＰＵ１００９と通信を行い操作データ処理部１００８の制御を行う。
【００２３】
デコーダ（判定部）１０２は、通信コントローラ２００１から受信したデータを受信する。デコーダ１０２は、受信したデータの識別コード（識別信号）を識別し、その識別結果を制御部１０５へ通知する。別の表現をすると、デコーダ（判定部）１０２は、識別コードを判定し、その判定結果を制御部１０５へ通知する。
【００２４】
制御部１０５は、フィルタ実行設定部１０９、フィルタ対象ビット設定部１１０、デコード実行設定部１１１、コマンド格納部１１２を有している。
【００２５】
デコード実行設定部１１１は、デコード実行設定部１１１にて保持されているコマンド設定値をデコーダ１０２に通知する。デコーダ１０２は、このコマンド設定値に基づいてデコードを行う。コマンド格納部１１２は、デコーダ１０２で検出されたコマンドを保存する。
【００２６】
制御部１０５は、フィルタ実行設定部１０９とフィルタ対象ビット設定部１１０を有している。フィルタ実行設定部１０９は、図５（ａ）に示すように、キーデータに関連付けられたコマンド「００」について、フィルタ動作は有効であることを保持する。フィルタ実行設定部１０９は、図５（ｂ）に示すように、ジョグデータに関連付けられたコマンド「１０」について、フィルタ動作は無効であることが保持されている。フィルタ実行設定部１０９は、図５（ｃ）に示すように、タッチパネルデータに関連付けられたコマンド「１１」について、フィルタ動作は無効であることが保持されている。
【００２７】
フィルタ対象ビット設定部１１０は、フィルタ処理の対象ビットの情報を保持している。フィルタ実行設定部１０９は、図５（ａ）に示すように、コマンド「００」について、ビット０からビット５まで、フィルタ処理の対象であることが保持されている。
【００２８】
フィルタ実行設定部１０９は、データ比較部１１３に対して、データに対するフィルタ処理実行可否を設定する。フィルタ対象ビット設定部１１０は、データ比較部１１３に対して、データのフィルタ対象ビットを設定する。データ比較部１１３は、上述した設定に基づいて比較を行う。
【００２９】
デコーダ１０２は、フィルタ処理実行可とされているコマンドを検出した場合には、データをフィルタ１０３へ格納する。一方、フィルタ処理実行否とされているコマンドを検出した場合には、操作データライン１を介してデータをデータバッファ（メモリ）１０４へ転送する。転送されたデータは、データバッファ１０４に記憶される。なお、コマンドが検出されなかった場合、デコーダ１０２は、受信したデータを破棄する。つまり、デコーダ１０２は、コマンドがフィルタ処理実行可であるかフィルタ処理実行否であるかを判定する。
【００３０】
フィルタ部１０３は、フィルタ処理対象のデータを保持するための２つのバッファ（第１保持バッファ１０６と第２保持バッファ１０７）と、フィルタ処理対象のデータを比較するデータ比較部１１３を有している。
【００３１】
次に、フィルタ部１０３の処理の一例を説明する。フィルタ部１０３は、デコーダ１０２からデータ線ＰＤ２を介して第１保持バッファ１０６に格納する。デコーダ１０２から次の入力データが入力されると、第１保持バッファ１０６に格納されたデータは、第２保持バッファ１０７に格納され、次の入力データが第１保持バッファ１０６に格納される。データ比較部１１３は、フィルタ対象ビットについて、第１保持バッファ１０６に格納されたデータと第２保持バッファ１０７に格納されたデータとの比較を行う。
【００３２】
フィルタ部１０３は、データ比較部１１３の比較処理の結果データが一致していなかった場合、カウンタを初期値にセットする。フィルタ部１０３は、比較処理の結果データが一致していた場合、カウンタを更新する。いずれの場合も、第２保持バッファ１０７に保持しているデータを破棄し、第１保持バッファ１０６に保持しているデータを第２保持バッファ１０７に格納する。そして、次に第１保持バッファ１０６に格納されたデータと第２保持バッファ１０７に格納されているデータとの比較処理を行う。そして、カウンタの値が所定の値になった（つまり同じ値が所定の回数続いた）場合、データ比較部１１３は、第１のデータがチャタリングの影響を受けていないと判定する。この場合、フィルタ部１０３は、第２保持バッファ１０７に格納されているデータを、データ線ＰＤ２を介してデータバッファ１０４に格納する。そして、フィルタ部１０３は、カウンタの値を初期値に設定する。フィルタ部１０３は、データバッファ１０４にデータを格納した後、フィルタ処理の完了を通知する割り込み信号をＣＰＵ１００９に対して出力する。
【００３３】
以上のように、フィルタ手段を介して第１のデータをメモリ手段に格納する第１の格納手段と、フィルタ手段を介さずに第１のデータをメモリ手段に格納する第２の格納手段とを備えている。デコーダ１０２の判定結果に基づいて、第１の格納手段による格納を行うか第２の格納手段による格納を行うか選択される。このような構成により、回路規模の増大を抑制し、チャタリングの影響を取り除き、複数の操作部から送られる信号（データ）の処理を効率よく行うことができる。
【００３４】
データバッファ１０４は、複数のレジスタで構成されている。ＣＰＵ１００９は、内部バスＩＦ１０８および内部バスを介して、データバッファ１０４に保存（記憶）されているデータを読み出す。この複数のレジスタは、操作パネル３００１の入力デバイス毎に割り当てられている。つまり、キーマトリックス部３００２、ＪＯＧダイアル部３００３、タッチパネル部３００４に対応して、レジスタが割り当てられている。この構成により、デコーダ１０２からデータバッファ１０４への格納とフィルタ部１０３からデータバッファ１０４への格納とが競合し、データバッファ１０４に格納されたデータのうち、一方のデータが上書きされることもない。また、ＣＰＵ１００９は、データ線ＰＤ２、内部バスＩ／Ｆ１０８を介して目的の入力デバイスのレジスタに保持されているデータを読み出すことができる。以上のように、ＣＰＵ１００９（メインコントローラ１００１）は、データバッファ１０４の記憶内容に基づいて電子機器の制御を行う。
【００３５】
＜データ受信部の処理フロー＞
図６は、操作データ処理部１００８の処理のフローチャートである。Ｓ５０１で、データのコマンドを解析する。Ｓ５０２でコマンドを検出したら（ＹＥＳ）、ステップＳ５０３へ進む。Ｓ５０２でコマンドを検出しなければ（ＮＯ）、Ｓ５０１へ戻る。Ｓ５０３で、コマンドの内容についてフィルタ動作が有効であるか否かを判定する。フィルタ動作が有効であれば（ＹＥＳ）、Ｓ５０４へ進む。フィルタ動作が無効あれば（ＮＯ）、Ｓ５０８へ進む。Ｓ５０４で、フィルタ対象ビットを参照する。Ｓ５０５で、１回前に受信したフィルタ対象ビットの値と、Ｓ５０４で参照したビットの値が等しいか否かを調べる。Ｓ５０５で等しければ（ＹＥＳ）、Ｓ５０６へ進む。Ｓ５０５で等しくなければ（ＮＯ）、Ｓ５０１へ戻る。Ｓ５０６で、カウンタを更新する。Ｓ５０７でカウンタの値が所定値になったか判定する。カウンタの値が所定値であれば（ＹＥＳ）、Ｓ５０８へ進み。バッファにデータを格納する。カウンタの値が所定値でなければ（ＮＯ）、Ｓ５０１へ戻る。
【００３６】
補足すると、キーマトリクス部３００２からデータを受信する場合、例えばデータを１０ミリ秒間隔で１０回連続して受信することを前提としており、この前提に対応してＳ５０７の判定で使用される所定値を５と定めている。
【００３７】
＜印刷装置の構成＞
図７は、電子機器の例として印刷装置６００１の全体構成を説明する装置外観図である。本実施形態では、大判インクジェットプリンタを適用対象として説明を行う。大判インクジェットプリンタ６００１は、様々なタイプ（幅・材質）の記録用紙に印刷出力することが可能であり、本体の横幅は、大きなもので２メートルを超える。印刷装置本体６００１の前面には手差し挿入口６００４が設けられ、その下部に前面へ開閉可能なロール紙カセット６００５が設けられている。記録紙は、手差し挿入口６００４またはロール紙カセット６００５から印刷装置本体６００１の内部へ供給される。印刷装置は、２個の脚部（６００２）に支持されており、排紙された記録用紙を積載するスタッカ６００６を備えている。
【００３８】
また、印刷装置本体６００１の右側には、パネル操作部３００１、インク供給ユニット６００３が備えられている。パネル操作部３００１の裏側には、通信コントローラ２００１が備えられている。パネル操作部３００１と通信コントローラ２００１は近接した位置に設けられており、通信コントローラ２００１は、パネル操作部３００１から入力されるデータをコントローラ１００１へ転送する制御を行う。本体６００１の内部には、図示していない印字機構部４００１が含まれており、パネル操作部３００１の指示に応じて、コントローラ１００１の制御により記録用紙への印刷を行う。
【００３９】
（その他の実施形態）
以上、印刷装置を電子機器の例として説明したが、印刷装置に限定することなく画像読取装置等の機器でも構わない。また、上述の電子機器は、３つの操作部を備える構成であったが、操作部の数は３つに限定するものではなく他の数（２、４以上）でも構わない。
【図１】
2014119818.tif 000003
【図２】
2014119818.tif 000004
【図３】
2014119818.tif 000005
【図４】
2014119818.tif 000006
【図５】
2014119818.tif 000007
【図６】
2014119818.tif 000008
【図７】
2014119818.tif 000009