(57)【特許請求の範囲】
【請求項１】
情報処理装置及び操作部と、ＵＳＢインターフェースによって通信可能な画像形成装置であって
ＵＳＢデバイスとしての前記操作部にＵＳＢホストとしての前記画像形成装置が接続された接続状態と、ＵＳＢデバイスとしての前記操作部にＵＳＢホストとしての前記情報処理装置が接続された接続状態とを切り替える切り替え手段と、
前記情報処理装置とＵＳＢインターフェースによって通信可能か否かを判断する第１の判断手段と、
前記情報処理装置が前記操作部を制御可能であるか否かを判断する第２の判断手段と、
を有し、
前記切り替え手段は、前記第１の判断手段によって前記情報処理装置とＵＳＢインターフェースによって通信可能であると判断され、且つ前記第２の判断手段によって前記情報処理装置が前記操作部を制御可能であると判断された場合、ＵＳＢデバイスとしての前記操作部にＵＳＢホストとしての前記画像形成装置が接続された第１の接続状態から、ＵＳＢデバイスとしての前記操作部にＵＳＢホストとしての前記情報処理装置が接続された第２の接続状態に切り替えることを特徴とする画像形成装置。
【請求項２】
前記第１の接続状態は、ＵＳＢデバイスとしての前記操作部にＵＳＢホストとしての前記画像形成装置が接続され、且つＵＳＢデバイスとしての前記画像形成装置にＵＳＢホストとしての前記情報処理装置が接続された状態であり、
前記第２の接続状態は、ＵＳＢデバイスとしての前記操作部にＵＳＢホストとしての前記情報処理装置が接続され、且つＵＳＢデバイスとしての前記画像形成装置にＵＳＢホストとしての前記情報処理装置が接続された状態であることを特徴とする請求項１記載の画像形成装置。
【請求項３】
前記情報処理装置から、前記操作部を制御可能であることを示す情報をＵＳＢインターフェースによって受信する受信手段を更に備え、
前記第２の判断手段は、前記受信手段によって前記情報が受信された場合、前記情報処理装置が前記操作部を制御可能であると判断することを特徴とする請求項１又は２に記載の画像形成装置。
【請求項４】
前記切り替え手段は、前記第１の判断手段によって前記情報処理装置とＵＳＢインターフェースによって通信可能であると判断された場合であっても、前記第２の判断手段によって前記情報処理装置が前記操作部を制御可能であると判断されなかった場合には、前記第１の接続状態から前記第２の接続状態に切り替えないことを特徴とする請求項１乃至３の何れか一項に記載の画像形成装置。
【請求項５】
前記操作部は、前記画像形成装置に内蔵され、前記画像形成装置の状態を表示する表示部を備えることを特徴とする請求項１乃至４の何れか一項に記載の画像形成装置。
【請求項６】
情報処理装置及び操作部と、ＵＳＢインターフェースによって通信可能な画像形成装置の制御方法であって
ＵＳＢデバイスとしての前記操作部にＵＳＢホストとしての前記画像形成装置が接続された接続状態と、ＵＳＢデバイスとしての前記操作部にＵＳＢホストとしての前記情報処理装置が接続された接続状態とを切り替える切り替えステップと、
前記情報処理装置とＵＳＢインターフェースによって通信可能か否かを判断する第１の判断ステップと、
前記情報処理装置が前記操作部を制御可能であるか否かを判断する第２の判断ステップと、
を有し、
前記切り替えステップは、前記第１の判断ステップによって前記情報処理装置とＵＳＢインターフェースによって通信可能であると判断され、且つ前記第２の判断ステップによって前記情報処理装置が前記操作部を制御可能であると判断された場合、ＵＳＢデバイスとしての前記操作部にＵＳＢホストとしての前記画像形成装置が接続された第１の接続状態から、ＵＳＢデバイスとしての前記操作部にＵＳＢホストとしての前記情報処理装置が接続された第２の接続状態に切り替えることを特徴とする制御方法。
【請求項７】
請求項６に記載の制御方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＵＳＢインターフェースによって情報処理装置及び、操作部と通信可能な画像形成装置に関する。
【背景技術】
【０００２】
従来、プリンタで実行する処理の負荷を軽減するための技術として、印刷データの画像形成処理をプリンタ本体と接続したホストコンピュータで実行する技術が一般に知られている。このような処理系ではホストコンピュータの処理能力を活かして印刷データの画像形成処理をホストコンピュータ本体で行い、プリンタ側では画像形成処理済みのデータのみを扱う構成とする。この技術により、プリンタ本体側の処理性能を低く抑えた構成であっても高度な印刷出力を行うことが可能になる。
【０００３】
また、パーソナルコンピュータ環境では、マウスやプリンタなどの周辺機器の接続にＵＳＢインターフェースを用いる構成が一般的である。ＵＳＢインターフェースは規格において、ＵＳＢインターフェースを介して相手を制御するＵＳＢホストと、相手によって制御されるＵＳＢデバイスとに分類される。全体の制御を司るのは一つのＵＳＢホストと決められており、マウスやプリンタはＵＳＢホストに従うＵＳＢデバイスとして機能している。
【０００４】
またＵＳＢインターフェースは、パーソナルコンピュータとその周辺機器との接続のみならず、プリンタなどの機器内部の通信手段として用いられることもある。例えばプリンタ内部でメインコントローラと操作ユニット間の通信をＵＳＢインターフェースで実現するような例である。そのような構成の場合、プリンタのメインコントローラにＵＳＢホストコントローラを装備し、操作ユニットにはＵＳＢデバイスコントローラを装備することにより、ＵＳＢホストとしてのプリンタが、ＵＳＢデバイスとしての操作ユニットを制御する。
【０００５】
尚、特許文献１には、画像処理装置とホスト装置それぞれの処理能力や転送能力に応じて、画像データ処理を分散して実行する技術について記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−０７１３４６
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記従来の技術で説明した分散処理を行うにあたって、プリンタで実行する処理のうち画像形成処理以外の処理もＵＳＢインターフェースで接続されたホストコンピュータに代行させる構成が考えられる。例えば、プリンタが備える操作ユニットの表示制御である。具体的には、プリンタの操作を説明するための動画を表示させるための動画形成処理は、負荷が高い処理のためホストコンピュータで代行させるのに適したものである。
【０００８】
ここで、プリンタがＵＳＢデバイスとしてＵＳＢホストであるホストコンピュータに接続され、更にＵＳＢホストとしてＵＳＢデバイスである操作ユニットに接続されている構成を考える。このとき、ホストコンピュータに操作ユニットの制御を行わせる場合、必ずプリンタのメモリやＣＰＵといったハードウェアリソースを中継することになる。そのボトルネックにより、期待した高速処理が達成できないおそれがある。即ち、プリンタのＣＰＵの負荷が、表示処理以外の印刷処理などによって高い場合、表示処理を高速に処理できないことになる。
【０００９】
本発明はこのような問題に対してなされたものであり、プリンタ等の画像形成装置にＵＳＢインターフェースで接続された情報処理装置がプリンタの操作部を制御する際に問題となるボトルネックの発生を抑制することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、本発明の画像形成装置は、情報処理装置及び操作部と、ＵＳＢインターフェースによって通信可能な画像形成装置であって、ＵＳＢデバイスとしての前記操作部にＵＳＢホストとしての前記画像形成装置が接続された接続状態とＵＳＢデバイスとしての前記操作部にＵＳＢホストとしての前記情報処理装置が接続された接続状態とを切り替える切り替え手段と、前記情報処理装置とＵＳＢインターフェースによって通信可能か否かを判断する第１の判断手段と、前記情報処理装置が前記操作部を制御可能であるか否かを判断する第２の判断手段とを有し、前記切り替え手段は、前記第１の判断手段によって前記情報処理装置とＵＳＢインターフェースによって通信可能であると判断され、且つ前記第２の判断手段によって前記情報処理装置が前記操作部を制御可能であると判断された場合、ＵＳＢデバイスとしての前記操作部にＵＳＢホストとしての前記画像形成装置が接続された第１の接続状態から、ＵＳＢデバイスとしての前記操作部にＵＳＢホストとしての前記情報処理装置が接続された第２の接続状態に切り替えることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、画像形成装置にＵＳＢインターフェースで接続された情報処理装置がプリンタの操作部を制御する際に問題となるボトルネックの発生を抑制するし、プリンタの負荷の状態と無関係に操作部を制御できるようになる。
【図面の簡単な説明】
【００１２】
【図１】本実施例のシステム構成及びプリンタの内部ハードウェア構成を示す図
【図２】本実施例のホストＰＣのハードウェア構成を示す図
【図３】本実施例のホストＰＣのソフトウェア構成を示す図
【図４】プリンタ本体が操作ユニットを制御する場合のＵＳＢ接続状態を示す図
【図５】ホストＰＣが操作ユニットを制御する場合のＵＳＢ接続状態を示す図
【図６】ホストＰＣとプリンタ間のシーケンスを説明する図
【図７】本実施例のプリンタで実行される処理フローを示すフローチャート
【図８】本実施例のホストＰＣで実行される処理フローを示すフローチャート
【発明を実施するための形態】
【００１３】
以下、本発明を実施するための形態について図面を用いて説明する。
【００１４】
＜システムとプリンタ内部ハード構成＞
図１は、本実施例のシステム構成及びプリンタの内部ハードウェア構成を示す図である。
【００１５】
本実施例において、画像形成装置としてのプリンタ１０と、情報処理装置としてのホストＰＣ５０は、ＵＳＢインターフェースケーブル３０で接続される。プリンタ１０の内部はコントローラ１００と操作ユニット（操作部）２００、そしてプリントエンジン３００で構成される。プリンタ１０は、ホストＰＣ５０から送信された印刷データを受信し、コントローラで処理し、プリントエンジン３００で用紙に印刷出力として出力する。また操作ユニット２００はプリンタ１０の各種設定を行ったり、プリンタ１０の状態の表示を行うものである。コントローラ１００と操作ユニット２００はＵＳＢインターフェース４０で接続される。
【００１６】
コントローラ１００の内部構成を以下に説明する。ＣＰＵ１１００はシステム全体を制御するコントローラである。ＲＡＭ１１１０はＣＰＵ１１００が動作するためのシステムワークメモリであり、画像データを一時記憶するための画像メモリでもある。ＲＯＭ１１２０はプログラム格納ＲＯＭであり、システムのブートプログラム及びシステムアプリケーションが格納されている。プリントエンジンＩ／Ｆ１２００は、プリントエンジン３００と接続し、プリントエンジン３００のＣＰＵとそれぞれ通信を行う。また、画像データの同期系／非同期系の変換を行う。
【００１７】
＜プリンタ内部のＵＳＢインターフェース＞
図１にて本実施例のプリンタ内部のＵＳＢインターフェース構成を説明する。ＵＳＢデバイスＩＦ１３００はホストＰＣ５０とのＵＳＢインターフェースによる通信を行うためのインターフェースである。このインターフェースを介して、ホストＰＣ５０で生成された印刷データを受信する。ＵＳＢホストＩＦ１３１０は、操作ユニット２００との通信を行うものである。コントローラ１００が操作ユニット２００を制御する場合に本インターフェースを通じてＣＰＵ１１００で操作ユニット２００の制御を行うものである。ＩＦ切替指示部１５００は、後述するＵＳＢホスト切替部１４００の接続状態を切り替えるためのユニットである。操作ユニット制御分散フラグ１５１０は操作ユニット２００の制御をホストコンピュータに行わせるか否かを示す情報（フラグの値）を保持するユニットである。操作ユニット制御分散フラグの保持値が「ｆａｌｓｅ」の場合はプリンタ１０のコントローラ１００が操作ユニット２００の制御を行うことを示す。一方操作ユニット制御分散フラグの保持値が「ｔｒｕｅ」の場合はホストＰＣ５０が操作ユニット２００の制御を行うことを示す。
【００１８】
ＵＳＢホスト切替部１４００はＵＳＢインターフェースのホスト／デバイスの接続状態の切替制御を行うものである。具体的には同図に図示したＨ１，Ｈ２に２つのホスト機器を接続し、Ｄ１，Ｄ２にデバイス機器を接続する構成である（Ｈはホストを示し、Ｄはデバイスを示す）。ホスト機器とデバイス機器の接続は同図に示したＳＥＬにて切り替えることが可能となっている。本実施例ではＩＦ切替指示部１５００が切り替えを指示する。具体的にはＳＥＬに指示することで接続状態を切り替える。切り替えの方法はフローチャート、接続状態は接続状態図を用いて後述する。
【００１９】
＜操作ユニットの内部ハード構成＞
図１にて本実施例の操作ユニットの内部ハードウェア構成を説明する。操作ユニット２００は入力キー２１２０と表示部２１１０を備え、プリンタのオペレータに機器の状態表示と、機器の設定を操作することを可能としている。操作ユニット制御部２１００は操作ユニット全体の制御を行うものであり、ＵＳＢデバイスＩＦ２１３０を通信手段として備える。表示部に表示する画像データや、機器の状態はＵＳＢデバイスＩＦ２１３０を通じて取得する。本実施例においてはＵＳＢホスト切替部１４００の状態に応じて、ＵＳＢの通信相手はコントローラ１００に装備するＵＳＢホストＩＦ１３１０の場合と、ホストＰＣ５０の場合が存在する。接続状態は接続状態図を用いて後述する。
【００２０】
＜ホスト構成＞
図２は、本実施例のホストＰＣ５０のハードウェア構成を示す図である。ホストコントローラ５００は、ディスプレイ６００や図示しないキーボード、マウスなどと接続し、一方ではＵＳＢインターフェースケーブル３０を介してプリンタ１０と通信するものである。ＣＰＵ５０１はシステム全体を制御するコントローラであり、コントローラ内部で行われる各種処理について統括的に制御する。ＲＯＭ５０２はブートＲＯＭであり、システムのブートプログラムが格納されている。ＲＡＭ５０３は、ＣＰＵ５０１が動作するためのシステムワークメモリであり、また、印刷データ等の画像データ、そして本発明においては操作ユニットに表示する動画データを一時記憶するための画像メモリとしても使用する。ＨＤＤ５０４は、ハードディスクドライブであり、システムソフトウェアや画像データを格納することを可能とする。本発明においては特にプリンタ１０の操作ユニット２００に表示するための機器操作方法などの動画データを格納するものである。機器操作方法を示す動画データの一例として、プリンタに紙詰まりが発生した場合に、紙詰まりを取り除くための操作を示したガイダンスとしての動画データが考えられる。表示制御部５０５は、ディスプレイ６００に表示する画像データをディスプレイ６００に対して出力する。ＵＳＢホストＩＦ５１０は、図示しないキーボードやマウス、そしてプリンタ１０との入出力Ｉ／Ｆの制御部である。
【００２１】
＜ホストＰＣソフト構成＞
図３は本実施例のホストＰＣ５０のソフトウェア構成を示す図である。ホストＯＳ７００は、機器全体の制御を行うものである。本発明の特徴的な部分はファイルシステム管理部７５０と、ＵＳＢホストＩＦ５１０を介してプリンタを制御するためのプリンタドライバ８００と、操作ユニットを制御するための操作ユニットドライバ９００である。これらのソフトウェアは、ホストＰＣのＲＯＭ５０２やＨＤＤ５０４などの記憶部に記憶されており、ＣＰＵ５０１によって実行される。
【００２２】
ファイルシステム管理部７５０は、ホストＰＣ５０のファイルシステムを管理するものであり、機器内部のＨＤＤをファイルシステムとして管理するものである。本実施例においては、ファイルシステム管理部７５０は、操作ユニットドライバが操作ユニットに表示するための動画データを管理する。
【００２３】
＜ホストＰＣのプリンタドライバ＞
プリンタドライバ８００は以下のもので構成する。プリントコマンドを解析するためのコマンド解析部８１０。解析されたプリントコマンドを元に画像形成をするための画像描画処理を行う画像描画部８２０。ＵＳＢホストＩＦ５１０のハード制御を行うための通信ハード入出力部８３０。上記構成において印刷コマンドの解析から画像形成までを行った上で印刷するためのデータを、ＵＳＢホストＩＦを通じてプリンタ１０に送付するものである。
【００２４】
＜ホストＰＣの操作ユニットドライバ＞
操作ユニットドライバ９００は以下のもので構成する。プリンタ１０の操作ユニット２００をホストＰＣ５０が制御可能であることをプリンタに指示するための操作ユニット制御可能指示発行部９１０。操作ユニットの入力制御や表示制御を行うための操作ユニット制御部９２０。ファイルシステム管理部７５０から取得した動画データを表示データとして描画処理するための描画表示部９３０。ＵＳＢホストＩＦ５１０のハード制御を行うための通信ハード入出力部８３０。上記構成においてプリンタ１０の操作ユニット２００の制御が可能であることの指示と、操作ユニットの制御処理全体を行うことを可能とする。特に動画データの表示データへの描画処理を行い、ＵＳＢホストＩＦを介してプリンタ１０と通信することが特徴である。
【００２５】
＜プリンタ本体−操作ユニット制御モード＞
図４は本実施例において、プリンタ本体が操作ユニット２００を制御する場合のＵＳＢ接続状態（第１の接続状態）を示す図である。プリンタ１０の電源起動直後等、ホストＰＣ５０が操作ユニット２００を制御しない場合の接続状態を示している。具体的には、ＵＳＢホスト切替部の接続状態において、Ｈ１とＤ１を直結し、Ｈ２とＤ２を直結する。つまり、ＵＳＢホストとしてのホストＰＣ５０に、ＵＳＢデバイスとしてのプリンタ１０（コントローラ１００）を接続し、一方、ＵＳＢホストとしてのプリンタ１０（コントローラ１００）に、ＵＳＢデバイスとしての操作ユニット２００を接続する状態である。この接続状態によりプリンタ１０内部ではコントローラ１００と操作ユニット２００がＵＳＢインターフェース４０で接続され、コントローラ１００が直接操作ユニット２００を制御する。一方ホストＰＣ５０とプリンタ１０もＵＳＢインターフェースケーブル３０で接続される。これにより印刷データの受信や、後述するホストＰＣ５０が操作ユニット２００を制御可能であるという指示を、ホストＰＣ５０からプリンタ１０がＵＳＢインターフェースケーブル３０を介して受信することを可能としている。
【００２６】
＜ホストＰＣ−操作ユニット制御モード＞
図５は本実施例において、ホストＰＣ５０が操作ユニット２００を制御する場合のＵＳＢ接続状態（第２の接続状態）を示す図である。この接続状態は、ホストＰＣ５０と操作ユニット２００とを、プリンタ本体が中継（プリンタ１０のコントローラ１００の中継）することなくＵＳＢインターフェースで直結する構成である。これによりホストＰＣ５０は動画データ等の操作ユニット２００に送るべきデータを、操作ユニット２００に直接転送することが可能となり、プリンタ本体を中継することによるボトルネックの問題を解消することができる。具体的には、ＵＳＢホスト切替部の接続状態において、Ｈ１とＤ１及びＤ２を直結する。つまり、ＵＳＢホストとしてのホストＰＣ５０に、ＵＳＢデバイスとしてのプリンタ１０（コントローラ１００）を接続し、更に、ＵＳＢホストとしてのホストＰＣ５０に、ＵＳＢデバイスとしての操作ユニット２００を接続する状態である。この接続状態によりホストＰＣ５０とプリンタ１０内部のコントローラ１００及び操作ユニット２００がＵＳＢインターフェースで接続される。本状態の場合、コントローラ１００のＵＳＢホストＩＦ１３１０と操作ユニット２００は接続する必要が無いため、Ｈ２とＤ２は接続しない。
【００２７】
＜操作ユニットのホストＰＣ制御切替シーケンス＞
図６はホストＰＣ５０が操作ユニット２００を制御するまでの、ホストＰＣ５０とプリンタ１０とのやりとりを示すシーケンス図である。ホストＰＣ５０とプリンタ本体のコントローラ１００、そしてプリンタ本体の操作ユニット２００の処理内容を説明する。
【００２８】
本シーケンスはホストＰＣ５０とプリンタ１０間のＵＳＢインターフェースの状態が変化した場合に実行されるシーケンスである。具体的にはＵＳＢインターフェースケーブルが新たに接続された場合や、プリンタ１０又はホストＰＣ５０の電源が起動された場合に実行されるものである。
【００２９】
ホストＰＣ５０とプリンタ１０との間で、物理的なケーブル接続や機器の電源起動が行われると、ステップｓｔ３０００にて、プリンタ１０とホストＰＣ５０間のＵＳＢインターフェースによる接続状態が確立される。このとき、ホストＰＣ５０はＵＳＢホストとして動作し、プリンタ１０はＵＳＢデバイスとして動作する。従って、プリンタ１０のＵＳＢホスト切替部１４００の接続状態は、図４に示す第１の接続状態（プリンタ本体−操作ユニット制御モード）である。次にステップｓｔ３００１にてホストＰＣ５０がプリンタ１０に対して操作ユニット制御可能指示コマンドを、ＵＳＢインターフェースを介して送信する。即ち、ホストＰＣ５０がプリンタ１０に対して、プリンタ１０が装備する操作ユニット２００の制御が可能であることを通知する。次にステップｓｔ３００２にて、プリンタ１０は、ＵＳＢホスト切替部１４００の接続状態を図５で示した第２の接続状態（ホストＰＣ−操作ユニット制御モード）に切り替える。この状態により操作ユニット２００がホストＰＣ５０とＵＳＢインターフェースによって直結される。以降、ホストＰＣ５０がプリンタ１０の操作ユニット２００を制御する。本シーケンス内のホストＰＣ５０とプリンタ１０それぞれの内部処理はフローチャートを用いて後述する。
【００３０】
＜操作ユニット制御モードの切替フローチャート＞
図７は操作ユニット制御モードを切り替える処理フローを示すフローチャートである。図７は図６のシーケンスにおいて、プリンタ内部での処理内容を示すものである。図７の処理フローを示すプログラムはプリンタ１０のＲＯＭ１１１０に格納され、図７の各ステップはプリンタ１０のコントローラ１００のＣＰＵ１１００で実行される。
【００３１】
Ｓ１０００において、ＣＰＵ１１００は、操作ユニット制御分散フラグ１５１０をｆａｌｓｅにクリアする。プリンタ１０の初期状態では操作ユニット２００はプリンタ本体が制御するため、初期状態では常にプリンタ本体−操作ユニット制御モード（第１の接続状態）が選択されているようにするためである。Ｓ１００１において、ＵＳＢホスト切替指示部１５００は、ＵＳＢホスト切替部１４００の接続状態をプリンタ本体−操作ユニット制御モード（第１の接続状態）に切り替える。つまり、図４で説明した接続状態とし、プリンタ１０（コントローラ１００）が操作ユニット２００を制御するＵＳＢ接続状態とする。本ステップは図６で示すシーケンスにおけるｓｔ３０００に対応するプリンタ側の処理である。
【００３２】
Ｓ１００２において、ＣＰＵ１１００は、ホストＰＣ５０が接続されたか判断し、接続されたホストＰＣ５０とＵＳＢインターフェースによって通信可能かどうかを判断する。ホストＰＣ５０とＵＳＢインターフェースによって通信可能であると判断された場合にはＳ１００３へ進み、一方、ホストＰＣ５０とＵＳＢインターフェースによって通信可能であると判断されなかった場合にはＳ１００６へと進む。ホストＰＣ５０と通信可能でない場合とは、そもそもホストＰＣ５０とプリンタ１０がＵＳＢインターフェースによって接続されていない場合や、ホストＰＣ５０の電源が起動されていない場合などである。尚、Ｓ１００２の処理は、第１の判断手段の一例となる処理である。
【００３３】
Ｓ１００３においてＣＰＵ１１００は、ホストＰＣ５０から、ＵＳＢインターフェースケーブル３０を介して、操作ユニット制御可能指示コマンドを受信したか否かを判断する。即ち、ホストＰＣ５０が操作ユニット２００を制御可能であるかどうかを判断する。操作ユニット制御可能指示コマンドを受信したと判断された場合には、ホストＰＣ５０が操作ユニット２００を制御可能であり、Ｓ１００４へ進む。一方、操作ユニット制御可能指示コマンドを受信なかった場合には、ホストＰＣ５０が操作ユニット２００を制御不可能であり、Ｓ１００６へ進む。Ｓ１００２においてＹｅｓであったにも関わらずＳ１００３でＮｏである場合とは、プリンタ１０に接続されたホストＰＣ５０が、操作ユニット２００を制御するための操作ユニットドライバ９００を備えていない場合である。本ステップは図６で示すシーケンスにおけるｓｔ３００１に対応するプリンタ側の処理である。尚、Ｓ１００３の処理は、第２の判断手段の一例となる処理である。
【００３４】
Ｓ１００４において、ＣＰＵ１１００は、操作ユニット制御分散フラグ１５１０をｔｒｕｅにセットする。これはホストＰＣ５０が操作ユニット２００を制御可能であるため、ホストＰＣ−操作ユニット制御モード（第２の接続状態）を選択するようにするためである。Ｓ１００５において、ＵＳＢホスト切替指示部１５００は、ＵＳＢホスト切替部１４００の接続状態をホストＰＣ−操作ユニット制御モード（第２の接続状態）に切り替える。つまり図５で説明した接続状態とし、ホストＰＣ５０が操作ユニット２００を制御するＵＳＢ接続構成とする。本ステップは図６で示すシーケンスにおけるｓｔ３００２に対応するプリンタ側の処理である。
【００３５】
Ｓ１００７では、ＵＳＢホスト切替部１４００の接続状態はプリンタ本体−操作ユニット制御モード（第１の接続状態）のままであるため、それ以降、プリンタ１０（コントローラ１００）が操作ユニット２００の制御を行う状態で動作する。
【００３６】
＜ホストＰＣの操作ユニット制御可能指示コマンド発行フローチャート＞
図８は本実施例のホストＰＣの動作を示すフローチャートである。同図は図６のシーケンスにおける、ホストＰＣ５０側の処理内容を示すものである。図８の処理フローを示すプログラムはホストＰＣ５０のＲＯＭ５０２又はＨＤＤ５０４に格納され、図８の各ステップはホストＰＣ５０のコントローラ５００のＣＰＵ５０１で実行される。
【００３７】
Ｓ２０００において、プリンタドライバ８００が操作ユニットを制御可能なプリンタの接続を検知すると、プリンタドライバ８００から操作ユニットドライバ９００に操作ユニットの制御対象プリンタが接続されたことを通知する。ＵＳＢにおいては機器個別に製品情報を備え、機器の特定が可能である。機器情報はプリンタ１０のＲＯＭ  １１１０に格納されており、ＵＳＢインターフェースによる通信の開始に伴いホストＰＣ５０に通知される。本ステップは図６で示すシーケンスにおけるｓｔ３０００に対応するホストＰＣ側の処理である。
【００３８】
Ｓ２００１において、操作ユニットドライバ９００の操作ユニット制御可能指示発行部９１０が、操作ユニット制御可能指示コマンドをプリンタ１０に送信する。本ステップは図６で示すシーケンスにおけるｓｔ３００１に対応するホストＰＣ側の処理である。
【００３９】
Ｓ２００２において、ＣＰＵ５０１は、ホストＰＣ５０に操作ユニット２００がＵＳＢインターフェースで接続されたかどうかを判断する。即ち、プリンタ１０が備えるＵＳＢホスト切替部１４００の接続状態が、第２の接続状態に切り替えられたかどうかを判断する。一方ホストＰＣ５０に操作ユニット２００がＵＳＢインターフェースで接続されなければ待機する。
【００４０】
ホストＰＣ５０に操作ユニット２００がＵＳＢインターフェースで接続されたと判断された場合にはＳ２００３に進み、それ以降、ホストＰＣ５０の操作ユニットドライバ９００が操作ユニット２００の制御を行う状態となる。本ステップは図６で示すシーケンスにおけるｓｔ３００２以降に対応するホストＰＣ側の処理である。
【００４１】
以上説明したように、本実施例によれば、ホストＰＣ５０が操作ユニットドライバ９００を備えている場合、プリンタ１０（プリンタ１０のコントローラ１００）を介さずに、ホストＰＣ５０と操作ユニット２００がＵＳＢインターフェースによって直結される。これにより、ホストＰＣが、プリンタの操作ユニットを直接制御することができ、その際に、プリンタ（プリンタのコントローラ）を経由することによって起こるボトルネックの問題を解消することができる。
【００４２】
尚、本実施例では、ホストＰＣとＵＳＢインターフェースによって接続される画像形成装置の例としてプリンタとしたが、複写機や複合機、スキャナ等のその他の画像形成装置にも適用可能である。また、画像形成装置の操作ユニットを制御する外部機器としては、ホストＰＣを例に説明したが、ホストＰＣを含むあらゆる情報処理装置に適用可能である。
【００４３】
また、本実施例では、プリンタ１０の操作ユニット２００は、プリンタ１０に内蔵されたハードウェアユニットとして説明したが、ＵＳＢインターフェースによってプリンタ１０の外部に接続される構成であってもよい。
【００４４】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００４５】
１００  コントローラ
２００  操作ユニット
１３００  ＵＳＢデバイスＩＦ
１３１０  ＵＳＢホストＩＦ
１４００  ＵＳＢホスト切替部
【図１】
0005448792.tif 000002
【図２】
0005448792.tif 000003
【図３】
0005448792.tif 000004
【図４】
0005448792.tif 000005
【図５】
0005448792.tif 000006
【図６】
0005448792.tif 000007
【図７】
0005448792.tif 000008
【図８】
0005448792.tif 000009