JP2004015214A - Image processing device, its control method, program, and information storage medium - Google Patents
Image processing device, its control method, program, and information storage medium Download PDFInfo
- Publication number
- JP2004015214A JP2004015214A JP2002163180A JP2002163180A JP2004015214A JP 2004015214 A JP2004015214 A JP 2004015214A JP 2002163180 A JP2002163180 A JP 2002163180A JP 2002163180 A JP2002163180 A JP 2002163180A JP 2004015214 A JP2004015214 A JP 2004015214A
- Authority
- JP
- Japan
- Prior art keywords
- data
- unit
- processing apparatus
- image processing
- state information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Facsimiles In General (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、画像処理装置及び画像処理装置の制御方法、プログラム及び記憶媒体に関し、さらに詳細には外部処理装置に接続されるファクシミリ装置としての画像処理装置等に関する。
【0002】
【従来の技術】
パーソナルコンピュータ等の外部処理装置に接続可能なファクシミリ装置として、特開平7−288625号公報等に記載されているように、セントロニクス等の双方向パラレルポート(IEEE1284準拠)インタフェース、または、ユニバーサルシリアルバス(UniversalSerialBus、USB)インタフェースで接続するファクシミリ装置が知られている。この従来のファクシミリ装置と外部処理装置とによって構成されている画像処理システムでは、ファクシミリ装置と外部処理装置との接続形態は、単一の物理インタフェース上には、単一の論理インタフェースしか設けていなかった。また、ファクシミリ装置内部の主制御部とデータ処理部は、片方向パラレル通信及び双方向シリアルインタフェースで接続されていた。
【0003】
上記の構成を持ち、かつプリンタ、スキャナ、ファクシミリ通信等の複数の機能を併せ持つ複合ファクシミリ装置を外部処理装置で制御しようとした場合、外部処理装置では本来の制御コマンドに対し、プリンタ、スキャナ、ファクシミリ通信等の機能を特定するヘッダ情報を制御コマンドの先頭に付加・編集した上でパケット化し、そのパケット化したデータを複合ファクシミリ装置に送信する必要があった。
【0004】
また、外部処理装置に接続されていない上記ファクシミリ装置において、その機能を実行させる際、装置の主制御部は、その機能の実行対象となるデータ処理部の動作状態、エラー状況など(以下、状況情報)をリアルタイムで知るために、データ処理部にその状況情報の返送を要求する命令(以下、状況情報取得要求)を発行する。同様に、主制御部が常時各データ処理部の状態をリアルタイムで把握する必要がある場合も、主制御部は周期的に状況情報取得要求をデータ処理部に発行する。発行後、主制御部はデータ処理部からの状況情報取得要求に対して返送された情報から、その使用状況、状態状況を認識し、以後の動作を決定する。
【0005】
同様に外部処理装置に接続されたファクシミリ装置においては、上記の状況情報取得要求がファクシミリ装置の主制御部と外部処理装置の主制御部の両方から各データ処理部に発行される。この際、画像処理装置の主制御部は外部処理装置から送られてくる全てのデータを一度受信し解析した後、その内容に従って各データ処理部へ適切なタイミング、順番で送信している。そのため一方の主制御部の制御下でデータ処理部が動作中のためもう一方の主制御部との間でデータの送受信ができない状態でも、画像処理装置の主制御部がそのデータをデータ処理部に送る順番や、返送されてきた情報を制御することが可能であり、もし後者のデータが上記の状況情報取得要求である場合であっても、画像処理部の主制御部が解析の結果に基づいたデータを作成し返送することで、以後の機能を実行させることができた。
【0006】
しかし、単一の物理インタフェース上には、単一の論理インタフェースしか持たないため、複合ファクシミリ装置を外部処理装置で制御しようとした場合に大きな課題がある。詳しくは、複数の機能を同時に動作させることが不可能であり、複合ファクシミリ装置のメリットを十分に生かせられない。または、無理に同時動作を行わせるためには、従来の技術に記した制御コマンドのパケット化の作業負荷が必要となる。それゆえに外部処理装置にインストールするドライバの改造作業負荷、制御の複雑さ、スループットの点で大きな問題がある。さらに外部処理装置からパケット化されたデータを受信する複合ファクシミリ装置においては、プリンタに関するデータなのか、スキャナに関するデータなのか、ファクシミリ通信に関するデータなのかを特定するために、パケット化されたデータを解析する必要があり、さらには制御コマンドの先頭に付加されているヘッダ情報を削除、編集する必要があり、制御の複雑さ、スループットの点で大きな問題があった。
【0007】
また、ファクシミリ装置内部の主制御部と記録部は、印刷データ転送専用の片方向パラレル通信で接続されていた。そのため、主制御部が記録部の印刷情報を取得するためには、片方向パラレル通信とは別の物理インタフェースを設ける必要があった。これもまた製品設計作業の増大、制御の複雑さが問題となっていた。
【0008】
この問題を解決するために、外部処理装置とファクシミリ装置の物理インタフェースにUSBを採用し、USB規格で定める複数の論理チャネルを設ける(USB複合デバイス)ことにより、機能の同時動作を簡単に実現することが可能となると考えられる。また、複数の論理チャネルを設けることにより、制御コマンドに機能を示すヘッダ情報を付加する必要がなくなり、制御の簡素化、データの解析が必要なくなることによるスループットの向上が期待できる。さらには、ファクシミリ装置内の主制御部とデータ処理部の物理インタフェースにもUSBを採用することにより、USBインタフェース以外の他の物理インタフェースを設ける必要がなくなり、設計工数の削減、容易な転用、データ透過性の向上が期待できる。
【0009】
【発明が解決しようとする課題】
しかし、外部処理装置に接続されたファクシミリ装置において、状況情報取得要求がファクシミリ装置の主制御部と外部処理装置の主制御部の両方から各データ処理部に発行された場合、物理インタフェースにUSBを採用し、ファクシミリ装置の主制御部で外部処理装置からのデータの解析をやめスループットの向上を図った構成だと、上記のように画像処理装置の主制御部が外部処理装置から送られてくる全てのデータを一度受信し解析した後、その内容に従って各データ処理部へ適切なタイミング、順番で送信するといった制御を行うことができない。そのため一方の主制御部の制御下でデータ処理部が動作中のため、もう一方の主制御部との間でデータの送受信ができない状態では、後者の主制御部は適切な返送を得ることができず、データ処理部の使用状況、状態状況も認識できない。その結果、以後の動作を決定し実行することができないといった問題が発生する。
【0010】
【課題を解決するための手段】
上記課題を解決するために、本発明は以下のような手段を提供する。具体的には、第1の論理チャネルを有し外部処理装置に接続する第1のインタフェース手段と、第2の論理チャネルを有しデータ処理部に接続する第2のインタフェース手段とを有する画像処理装置であって、前記データ処理部の状態に関する状態情報を要求する前記外部処理装置からの命令を前記第1のインタフェース手段を介して受信する状態情報要求受信手段と、前記状態情報要求受信手段で受信した前記状態情報の要求命令を周期的に前記データ処理部へ送信する状態情報要求送信手段と、前記第2のインタフェース手段を介して前記状態情報を取得する状態情報取得手段と、前記状態情報取得手段で取得した前記状態情報を外部処理装置へ転送するための状態情報転送手段と
を備える。また、前記状態情報要求送信手段によって前記状態情報の要求命令が前記データ処理部へ送信されない間、前記外部処理装置に対して無効データを送信する無効データ送信手段を更に備えていてもよい。
【0011】
さらに本発明は、前記第2のインタフェース手段を介して前記データ処理部の有する属性情報を取得する属性取得手段と、前記属性取得手段によって取得した前記属性情報に基づいて、前記外部処理装置が前記データ処理部に対して状況情報の要求命令の発行してから前記状態情報を受信するまでの待機時間を決定する待機時間決定手段と、前記待機時間より短い時間を前記状態情報要求送信手段における前記周期として設定する周期設定手段とをさらに備えてもよい。
【0012】
また、画像データを格納するための格納手段と、前記第2のインタフェース手段を介して前記格納手段に格納された前記画像データを所定量ごとに前記データ処理部へ転送するための画像データ転送手段と、前記画像データ転送手段による画像データの転送量が前記所定量に到達したか否かを判定するための転送量判定手段とを更に備え、前記状態情報要求送信手段における前記周期が、前記画像データの転送量の前記所定量への到達に基づいてもよい。ここで、前記所定量は1ページ分の画像データ量に相当する量であっても良し、前記第1のインタフェース手段及び前記第2のインタフェース手段は、ユニバーサル・シリアル・バス通信規格に対応していてもよい。
【0013】
さらに、前記外部処理装置から前記データ処理部へ送信される前記状態情報の要求命令を含む第1のデータと、前記データ処理部から前記外部処理装置へ送信される前記状態情報を含む第2のデータとが、解析又は編集されていないデータであってもよい。
【0014】
また、本発明は、前記待機時間を格納するための待機時間格納手段を更に備え、前記待機時間決定手段が、前記待機時間格納手段から前記属性取得手段によって取得した前記属性情報に基づいて決定されたものに対応する前記待機時間を選択することにより前記待機時間を決定してもよい。
【0015】
上記手段は画像処理装置を制御するための方法としても実現できるし、当該方法をコンピュータに実行させるための制御プログラムとして実現することもでき、当該プログラムを記憶媒体に格納して提供することにより上記課題を解決してもよいことはいうまでもない。
【0016】
以上によって、ファクシミリ装置の主制御部も外部処理装置の主制御部も期待する状況確認情報を得ることができ、機能を正常に実行することができる。その結果、データ処理部とファクシミリ装置の各物理インタフェースにUSBを採用した画像処理システムを実現することができる。
【0017】
【発明の実施の形態】
まず、画像処理システムを構成する画像処理装置100の概略を詳細に説明する。図1は、本発明の実施形態である画像処理システムを構成する画像処理装置100の概略構成を示すブロック図である。
【0018】
画像処理装置100において、CPU101は、システム制御部であり、画像処理装置100の全体を制御する。ROM102は、CPU101が実行する制御プログラムや組み込みオペレーティングシステム(OS)プログラム等を格納する。
【0019】
RAM103は、SRAM等で構成され、プログラム制御変数等を格納し、また、オペレータが登録した設定値や画像処理装置100の管理データ等を格納し、各種ワーク用バッファ領域が設けられている。画像メモリ104は、DRAM等で構成され、画像データを蓄積する。データ変換部105は、ページ記述言語(PDL)等の解析や、キャラクタデータのCG展開等、画像データの変換を行う。
【0020】
読取制御部106は、読取部107が、CISイメージセンサ(密着型イメージセンサ)によって原稿を光学的に読み取り、電気的な画像データに変換した画像信号を、図示しない画像処理制御部を介して、2値化処理や中間調処理等の各種画像処理を施し、高精細な画像データを出力する。
【0021】
操作表示部108は、数値入力キー、文字入力キー、ワンタッチ電話番号キー、モード設定キー、決定キー、取り消しキー等を備え、ユーザが画像送信相手先データの決定や設定データの登録動作を行うための操作部と、各種キー、LED(発光ダイオード)とLCD(液晶ディスプレイ)等によって構成され、オペレータによる各種入力操作や、画像処理装置100の動作状況、ステータス状況の表示等を行う表示部である。
【0022】
通信制御部109は、モデムやNCU(網制御装置)等によって構成されている。この通信制御部109では、アナログの通信回線(PSTN)131に接続され、T30プロトコルでの通信制御、通信回線に対する発呼と着呼等の回線制御を行っている。
【0023】
解像度変換処理部110は、画像データのミリ−インチ解像度変換等の解像度変換制御を行う。なお、解像度変換部110において、画像データの拡大縮小処理も可能である。
【0024】
符号復号化処理部111は、画像処理装置100で扱う画像データ(MH、MR、MMR、JBIG、JPEG等)を符号復号化処理したり、拡大縮小処理を行う。
【0025】
記録制御部112は、印刷される画像データに対し、図示しない画像処理制御部を介して、スムージング処理や記録濃度補正処理、色補正等の各種画像処理を施し、高精細な画像データに変換し、USBホスト制御部114(後述)に出力する。また、USBホスト制御部114を制御することにより、定期的に記録部115の状態情報データを取得する役割も果たす。
【0026】
USBファンクション制御部113は、USBインタフェースの通信制御を行うものであり、USB通信規格に従って、プロトコル制御を行い、CPU101が実行するUSB制御タスクからのデータをパケットに変換し、外部の情報処理端末に、USBパケット送信を行ったり、逆に、外部の情報処理端末からのUSBパケットをデータに変換してCPU101に対し送信を行ったりする。
【0027】
USBホスト制御部114は、USB通信規格で定められたプロトコルで通信を行う為の制御部である。USB通信規格は、双方向のデータ通信を高速に行うことが出来る規格であり、1台のホスト(マスター)に対し、複数のハブまたはファンクション(スレーブ)を接続することが出来る。USBホスト制御部114は、USB通信におけるホストの機能を有する。
【0028】
記録部115は、レーザビームプリンタやインクジェットプリンタ等からなる印刷装置であり、カラー画像データ、またはモノクロ画像データを印刷部材に印刷する。USBホスト制御部114とは、USB通信規格で定められたプロトコルで通信を行い、特に記録部115はファンクションの機能を有する。
【0029】
本実施形態においては、記録機能のUSB通信は1対1の接続形態を用いる。上記構成要素101〜106、108〜114は、CPU101が管理するCPUバス121を介して、相互に接続されている。
【0030】
本例では、USBホスト制御部114、USBインタフェースによって記録部115が接続された構成について記述したが、もちろんこの構成のみに限定されるわけではない。読取部107と読取制御部106との接続にUSBホスト制御部、USBインタフェースを接続する構成なども考えられる。また、デジタルカメラで撮影したデータの入力やファクシミリ送受信に関しても、同様の構成を実施することが可能である。
【0031】
続いて、画像処理システムを構成する外部処理装置200の概略を詳細に説明する。図2は、本発明の実施形態である画像処理システムを構成する外部処理装置200の概略構成を示すブロック図である。
【0032】
CPU201は、ROM202、RAM203、または、内部記憶装置204、外部記憶装置(205)に記憶されたプログラムから読み出されたプログラムに従って、システムバスを介して外部処理装置200全体の動作を制御するものである。ROM202は、CPU201の制御プログラム等を格納している。RAM203は、一時的にプログラムや画像データを記憶し、外部処理装置200の処理を高速に動作させるためのものである。
【0033】
内部記憶装置204は、オペレーティング・システム、各種アプリケーションプログラムや画像データ等が格納されている。内部記憶装置204には、本実施形態における文字データ処理工程を含む、画像処理装置100に対する各種制御命令やデータの送受信を行うためのアプリケーションソフト、機能ごとのUSBクラスドライバソフトおよびUSBバスドライバソフト等がインストールされているものとする。
【0034】
操作部207は、オペレータからの指示入力手段としてのキーボードやマウス(不図示)を制御するものである。画像処理装置100、外部処理装置200に対する命令、操作には、通常、操作部207のキーボードやマウスで行われる。
【0035】
表示部208は、オペレータに各種表示を行うものである。外部処理端末200で印刷の実行起動をかける場合は、確認ダイヤログ等を表示部208に表示し、オペレータに入力を促す。また印刷動作の実行中は、印刷状況を示す情報をオペレータに提供する。
【0036】
通信部209は、図示しないネットワークに接続したり、通信回線を通してインターネットプロバイダへの接続や、相手通信装置との間でのデータや画像情報等の通信を行う。ネットワークや通信回線への接続に関しては、公知の方法を使用するものとし、詳述しない。
【0037】
USBホスト制御部210は、USBインタフェースの通信制御を行うものであり、USB通信規格に従って、CPU201からのデータを、パケットに変換し、画像処理装置100に、USBパケットを送信したり、逆に、画像処理装置100からのUSBパケットをデータに変換してCPU201に送信したりする。通信制御方法に関しては、公知の方法を使用するものとして詳述しない。
【0038】
続いて、USBファンクション制御部113のUSBインタフェースにおける構成を詳細に説明する。
【0039】
図3は、ここで示す画像処理装置100のUSBファンクション制御部113のUSBインタフェースにおける構成を示す概念図である。最も大きい枠で示されるデバイス(301)は、USB通信規格において1つだけ定義することができ、装置全体の属性を示している。デバイス(301)の属性は、デバイス記述子で表現され、デバイス記述子には、装置の製造者ID、製品ID、リリース番号、コンフィギュレーション数などが含まれている。
【0040】
デバイス(301)の中には、コンフィギュレーションが1つ(コンフィギュレーション1(302))だけ定義されている。コンフィギュレーション1(302)の属性は、コンフィギュレーション記述子で表現され、コンフィギュレーション記述子には、そのコンフィギュレーションの中のインタフェース数などが含まれている。
【0041】
コンフィギュレーション1(302)の中には、インタフェースが3つ(インタフェース0〜2(304、307、311))だけ定義されている。インタフェース0〜2(304、307、311)の属性は、インタフェース記述子で表現され、インタフェース記述子には、そのインタフェースの中のエンドポイント数、クラスコードなどが含まれている。
【0042】
プリンタ用に使用するインタフェース0(304)の中には、エンドポイントが2つ(エンドポイント1、2(305、306))だけ定義されている。エンドポイント1、2(305、306)の属性は、エンドポイント記述子で表現され、エンドポイント記述子には、そのエンドポイントのエンドポイント番号、通信方向、転送タイプ、パケットサイズなどが含まれている。エンドポイント1(305)は、主に制御データ受信や印刷データ受信のために使用される。エンドポイント2(306)は、主に受信した印刷データの印刷状況を送信するために使用される。
【0043】
スキャナ用のインタフェース1(307),FAX用のインタフェース2(311)でも上記のプリンタの場合と同様に、それぞれのエンドポイント(エンドポイント3(308)、4(309)、5(310)、6(312)、7(313)、8(314))に各機能が割り振られている(図3参照)。
【0044】
続いて、記録部115のUSBインタフェースにおける構成を詳細に説明する。図4は、画像処理装置100の記録部115のUSBインタフェースにおける構成を示す概念図である。
【0045】
最も大きい枠で示されるデバイス(401)は、USB通信規格において1つだけ定義することができ、装置全体の属性を示している。デバイス(401)の属性はデバイス記述子で表現され、デバイス記述子には装置の製造者ID、製品ID、リリース番号、コンフィギュレーション数などが含まれている。
【0046】
デバイス(401)の中には、コンフィギュレーションが1つ(コンフィギュレーション1(402))だけ定義されている。コンフィギュレーション1(402)の属性は、コンフィギュレーション記述子で表現され、コンフィギュレーション記述子には、そのコンフィギュレーションの中のインタフェース数などが含まれている。
【0047】
コンフィギュレーション1(402)の中には、インタフェースが1つ(インタフェース0(404))だけ定義されている。インタフェース0(404)の属性は、インタフェース記述子で表現され、インタフェース記述子には、そのインタフェースの中のエンドポイント数、クラスコードなどが含まれている。
【0048】
印刷用に使用するインタフェース0(404)の中には、エンドポイントが2つ(エンドポイント1、2(405、406))だけ定義されている。エンドポイント1、2(405、406)の属性は、エンドポイント記述子で表現され、エンドポイント記述子には、そのエンドポイントのエンドポイント番号、通信方向、転送タイプ、パケットサイズなどが含まれている。エンドポイント1(405)は、主に制御データ受信や印刷データ受信のために使用される。エンドポイント2(406)は、主に受信した印刷データの印刷状況を送信するために使用される。
【0049】
次に、画像処理システムの画像処理装置100の初期化処理について示す。図5は、本発明の実施形態である画像処理装置100の初期化処理を示すフローチャートである。
【0050】
画像処理装置100の電源が投入されると、ステップ501において、CPUバス121に接続される周辺回路の初期化を行う。
【0051】
続いてステップ502において、CPU101と異なる別CPU(図示せず)が管理する記録部115の初期化が終了したか判断する。終了していれば、処理はステップ503へ移行し、終了してなければステップ502を繰り返す。記録部115の初期化の終了は、USBホスト制御部114のUSBインタフェースによって検出することが可能である。またCPU101と記録部115の間を直接、監視線を接続することにより検出することも可能である。
【0052】
ステップ503において、CPU101は、USBホスト制御部114が検出した記録部115の装置構成を取得し、さらには記録部115に対し、記録部115を使用可能にするための装置構成決定の命令(SetConfiguration命令)を送信する。記録部115の装置構成取得には、USBインタフェースを使用する。装置の構成データは、図4で示すエンドポイント0(403)の装置制御用に用いられる論理チャネルによって送受信される。記録部115の装置構成を示すデータには、上述のデバイス記述子、コンフィギュレーション記述子、インタフェース記述子、エンドポイント記述子(1、2)等が存在し、さらには記録部115の製造者名文字列、製品名文字列、シリアル番号文字列などがある。記録部115に対する装置構成決定送信には、USBインタフェースを使用する。
【0053】
装置構成決定の送信データは、図4で示すエンドポイント0(403)の装置制御用に用いられる論理チャネルによって送信される。本ステップを画像処理装置100の電源投入初期化時に実行することにより、画像処理装置100の初期化を確実に行うことが可能になる。さらには画像処理装置100全体の装置構成を示すデータを外部処理装置200に通知する際(後述)に、外部処理装置200からの装置構成取得命令に対し、素早く応答することが可能になる。
【0054】
ステップ504において、画像処理装置100全体の装置構成を生成する。装置の構成データは、図3で示すエンドポイント0(303)の装置制御用に用いられる論理チャネルによって送受信される。画像処理装置100全体の装置構成を示すデータには、上述のデバイス記述子、コンフィギュレーション記述子、インタフェース記述子(0〜2)、エンドポイント記述子(1〜8)等が存在する。さらには画像処理装置100全体の製造者名文字列、製品名文字列、シリアル番号文字列などもある。画像処理装置100全体の装置構成を示すデータの一部には、ステップ503で取得した記録部115の装置構成を示すデータの一部が使用される。
【0055】
例えば、画像処理装置100がUSBインタフェース経由で外部処理装置200から受信する印刷データをそのまま記録部115にUSBインタフェース経由で転送できるように、またUSBホスト制御部114がUSBインタフェース経由で記録部115から受信する印刷状況データをそのまま外部処理装置200にUSBインタフェース経由で転送できるように、図3のプリンタ用のインタフェース記述子0(304)は、ステップ503で記録部115から受信したインタフェース記述子そのままの構成で形成される。また、装置の製造シリアル番号文字列などの不揮発データについて、記録部115から受信したシリアル番号文字列データをそのまま使用しても良い。
【0056】
以上の制御を行うことにより、記録部115の機種に依存しない画像処理装置100を構成することが出来る。すなわち、たとえ記録部115が最新の記録部に変更になった場合でも、本フローチャート処理を変更する必要はない。
【0057】
ステップ505において、画像処理装置100と外部処理装置200の通信を許可するためにUSBファンクション制御部113を通信有効の状態に移行させる。ここまでのステップで画像処理装置100全体の初期化が終了し、待機状態としてイベント待ちの状態となる。
【0058】
ステップ506において、画像処理装置100が外部処理装置200に接続されたか否か判断する。接続されれば、処理はステップ507へ移行し、接続されていなければステップ506を繰り返す。外部処理装置200との接続検出は、USBファンクション制御部113のUSBインタフェースによって可能である。
【0059】
ステップ507において、画像処理装置100が接続された外部処理装置200から、装置構成の取得命令(例えば、Get Device Descriptor命令、Get Configuration Descriptor命令、Get String Descriptor命令、Get Device ID命令など)を受信したか否かを判断する。受信していれば、処理はステップ508へ移行し、受信してなければステップ507を繰り返す。
【0060】
ステップ508において、ステップ504で生成した画像処理装置100全体の装置構成を示すデータを外部処理装置200に通知する。装置の構成データは、図3で示すエンドポイント0(303)の装置制御用に用いられる論理チャネルによって送信される。
【0061】
ステップ509では、画像処理装置100が外部処理装置200から装置構成決定の命令(Set Configuration命令)を受信したか否かを判断する。もし受信していれば、処理はステップ510へ移行し、受信していなければステップ509を繰り返す。装置構成決定の命令は、図3で示すエンドポイント0(303)の装置制御用に用いられる論理チャネルによって受信される。
【0062】
この際、ステップ509で画像処理装置100から送信された装置構成を示すデータの示す機種に対応するドライバソフトウェアが外部処理装置200内に存在していなかった場合、外部処理装置200は画像処理装置100に装置構成決定の命令を送信しない。そして外部処理装置200はユーザに接続された画像処理装置100の制御ができないことを通知し、エラーのチェックや対応ドライバソフトウェアのインストールを要求する。
【0063】
ステップ510において、外部処理装置200に接続された画像処理装置100が、スタンバイ時に外部処理装置200が記録部115の動作状態、インク・トナー無し、記録紙無し、記録紙ジャムなどのエラー状況などの状態状況を周期的に確認することを許可するための時間(以下、スタンバイ時状態監視時間)と、画像処理装置100が機能実行中に外部処理装置200と記録部115が上記状態状況を確認するための時間(以下、動作時状態監視時間))を設定する。
【0064】
これらは、ステップ503より取得した記録部115の装置構成を示すデータから認識したデバイスIDを認識し、それに対応したスタンバイ時状態監視時間と動作時状態監視時間を選択する。なお、スタンバイ時状態監視時間には外部処理装置200が有効なデータを受信することができないためエラーと判断する時間(図11、ステップ1104参照)より短い時間を基準として設定し、動作時状態監視時間には外部処理装置200が記録部115の状態状況を確実に確認することができる最短の時間(図8、ステップ816〜ステップ818参照)を基準にして設定する。これらの基準は画像処理装置100のROM102、もしくはRAM103に保存されている。
【0065】
ステップ511において、画像処理装置100はその装置構成(コンフィギュレーション)を使用可能とし、印刷データの受信待ち状態へ移行する。ここでもし記録部115にインク無し、トナー無し、記録紙無し、記録紙ジャムなど、なにかしらのエラーが発生したために記録部115が印刷データを受信する準備が整っていない場合は、USBファンクション制御部113も外部処理装置200に対し、印刷データを受信する準備が整っていない状態が設定される。
【0066】
例えば、記録部115は、記録部115内部に致命的なエラーを検出した場合、記録部115は印刷データを受信することができない状態を設定する。その状態をUSBホスト制御部114経由で検出したCPU101は、USBファンクション制御部113に対し、印刷データを受信する準備が整っていない状態を設定する。この制御により、外部処理装置200からの印刷データが、画像メモリ104に蓄積されず滞留することが無くなり、外部処理装置200は記録部が印刷データを受信する準備が整っていないことを知ることをできるので動作不具合を回避することが可能になる。初期化後にエラーが発生した場合でも、同様の処理により同一効果を得ることができる。
【0067】
さらに、記録部115が印刷状況を示すデータを送信する準備が整っていない場合も同様である。すなわち、もし記録部115にエラーが発生し、記録部115が印刷状況を示すデータを送信する準備が整っていない場合は、USBファンクション制御部113も外部処理装置200に対し、印刷状況を示すデータを送信する準備が整っていない状態が設定される。
【0068】
例えば、記録部115は、ステップ502における記録部115の初期化時に、記録部115内部に致命的なエラーを検出した場合、記録部115は印刷状況を示すデータを送信することが出来ない状態を設定する。その状態をUSBホスト制御部114経由で検出したCPU101は、USBファンクション制御部113に対し、印刷状況を示すデータを送信する準備が整っていない状態を設定する。
【0069】
この制御により、外部処理装置200から印刷状況を示すデータの転送要求が来た場合でも、外部処理装置200は記録部が印刷状況を示すデータを送信する準備が整っていないことを知ることをできるので処理の動作不具合を回避することが可能になる。これは、初期化後にエラーが発生した場合も同様の処理により、同じ効果を得ることができる。
【0070】
ステップ503とステップ504は、必ずしもステップ502の直後に行う必要はない。また、ステップ507で画像処理装置100が接続された外部処理装置200から、装置構成の取得命令を受信した直後にステップ503とステップ504を行っても構わない。
【0071】
また、ステップ503において、必ずしも記録部115からの装置構成取得と、記録部115への装置構成決定送信を同時に行う必要はない。
【0072】
続いて、画像処理装置100の印刷動作開始を詳細に説明する。図7は、本発明の実施形態である画像処理装置100の印刷動作の流れを示すフローチャートである。ステップ701において、現在、画像処理装置100と外部処理装置200の間でデータ送受信が許可されているか(図6ステップ506〜511参照)、つまり接続されていてデータ送受信が可能か否かを判断する。接続されている場合はステップ702に移行し、そうでない場合にはステップ710に移行する。
【0073】
ステップ702において、記録部115がデータを受信できる状態になっているか否かを判断する。これは、図6のステップ511で述べたようにUSBファンクション制御部113が印刷データを受信できる状態になっているかどうかに基づいて判断する。データ受信できるならばステップ703に移行し、そうでないならばステップ701に戻る。この際、外部処理装置200も同様にUSBファンクション制御部113の状態によって記録部115の状態を認識することができる。
【0074】
ステップ703において、画像処理装置100が要求する印刷状況通知要求の項目を記録部115に通知する。この印刷状況通知要求の項目には現在の印刷中であることを示す情報やインク・トナー量、記録紙の状態、エラー状況などの情報が含まれる。以後、記録部115は図4で示すエンドポイント2(406)の印刷状況送信用に用いられる論理チャネルによって印刷状況の通知要求を受信した時、その項目に対応するデータを、印刷状況を示すデータとして返送する。この印刷状況の通知要求の受信とは、実際のデータを受信するわけではなく、USB通信規格のINパケットを受信することである。また、外部処理装置200に対しては、USBファンクション制御部113に常にデータが正確に受信できなかったことを示すNAK信号を返送するように設定しておく。この際、データを全く返送しない方法や、ステップ511で示したような方法でUSBファンクション制御部113を外部処理装置とのデータの送受信ができないことを表す設定に変更する方法でも問題は無い。また、画像処理装置100でスタンバイ状態が継続し、かつタイマーがスタンバイ時状態監視時間に達していない時、つまりステップ705でNOの状態が継続している場合、印刷状況通知要求の項目は同じなのでステップ703の処理を行わなくても問題は無い。
【0075】
ステップ704において、ユーザの指示などの要因によって画像処理装置100のROM102、RAM103に保存されているプログラムが起動され、画像データの印刷処理の開始が命令されたか否かを判断する。画像データの印刷開始が命令されたならばステップ708に移行し、そうでない場合にはステップ705に移行する。
【0076】
ステップ705において、タイマーがステップ510で設定したスタンバイ時状態監視時間が経過したか否かを判断する。経過した場合には上記タイマーをリセットしステップ706に移行し、再度カウントを開始する。そうでない場合には、ステップ704に戻り、上記カウントを継続する。
【0077】
ステップ706において、画像処理装置100は外部処理装置200へのNAK信号の送信を停止し、外部処理装置200から送信されてくるデータを受信できるような設定にUSBファンクション制御部を変更する。また、必要ならば同時に、画像処理装置100のCPU101に、印刷モードにおいて外部処理装置200と記録部115とのデータの交換(図8ステップ803〜809)が終了するまで、記録部115に対して印刷状況通知要求や画像データの送受信などの処理を実行しないような設定をUSBファンクション制御部113、USBホスト制御部114に行ってもよい。変更後ステップ707に移行する。
【0078】
ステップ707において、画像処理装置100は外部処理装置200から受信する印刷データを印刷する印刷モードへ移行する。印刷モードの詳細は後述する。印刷モードが終了すると、再度外部処理装置200からの印刷データ受信待ち状態へ移行する。
【0079】
ステップ708において、画像処理装置100のCPU101は画像メモリ104などに印刷データが存在しているか否か判断する。存在していればステップ709に移行し、存在していなければステップ709を繰り返す。この際、ステップ709を繰り返す時間に制限、タイムアウトの処理を入れてステップ701に戻るような制御を行っても問題は無い。
【0080】
ステップ709において、画像処理装置100は自身の持つ印刷データを印刷するモードへと移行する。印刷モードの詳細については後述する。印刷モードが終了すると、再度印刷状況通知要求の受信とプログラムの発行命令を待機する。
【0081】
ステップ710において、ステップ702と同様に、記録部115がデータを受信できる状態になっているか否かを判断する。これは、図6のステップ511で述べたようにUSBファンクション制御部113が印刷データを受信できる状態になっているかどうかに基づいて判断する。データ受信できるならばステップ711に移行し、そうでないならばステップ714に移行する。
【0082】
ステップ711において、印刷状況通知要求の項目を記録部115に通知する。この時の印刷状況通知要求の項目は、画像処理装置100のCPU101が要求する項目である。以後、記録部115は図4で示すエンドポイント2(406)の印刷状況送信用に用いられる論理チャネルによって印刷状況の通知要求を受信した時、その項目に対応するデータを、印刷状況を示すデータとして返送する。この印刷状況の通知要求の受信とは、実際のデータを受信するわけではなく、USB通信規格のINパケットを受信することである。
【0083】
ステップ712において、画像処理装置100のCPU101は画像メモリ104などに印刷データが存在しているか否か判断する。存在していればステップ713に移行し、存在していなければステップ713を繰り返す。この際、ステップ712を繰り返す時間に制限、タイムアウトの処理を入れてステップ701に戻るような制御を行っても問題は無い。
【0084】
ステップ713において、画像処理装置100は自身の持つ印刷データを印刷するモードへと移行する。印刷モードの詳細については後述する。印刷モードが終了すると、再度印刷状況通知要求の受信とプログラムの発行命令を待機する。
【0085】
ステップ714において、記録部115は何らかのエラーが発生しているために印刷処理を実行できないことをユーザに通知する。この際、ユーザへの通知は操作表示部108によって示される。また、記録部115へ転送するはずであった命令、データを画像メモリ104に保存して、外部処理装置200による印字が終了し、印刷可能な状態になったら自動的に画像メモリ104に保存された命令を実行するような制御を行っても問題は無い。ユーザに記録部115の状態を通知したら、ステップ701に戻る。
【0086】
続いて、画像処理装置100の印刷モードの動作を詳細に説明する。図8は、本発明の実施形態である画像処理装置100の印刷動作を示すフローチャートである。
【0087】
ステップ801において、印刷モードが図7のステップ714から呼び出されたか否かを判断する。ステップ713から呼び出された場合にはステップ820に移行し、そうでないとき、つまりステップ707、もしくはステップ709に呼び出された場合にはステップ802に移行する。
【0088】
ステップ802において、印刷モードが図7のステップ709から呼び出されたか否かを判断する。ステップ709から呼び出された場合にはステップ810に移行し、そうでないとき、つまりステップ707から呼び出された場合にはステップ803に移行する。
【0089】
ステップ803において、外部処理装置200によって発行された印刷状況の通知要求の項目が記録部115にセットされる。この際、画像処理装置100のCPU101は外部処理装置から送信されてくるデータの内容に対して解析、編集などの作業を行わないので、それが印刷状況の通知要求の項目を記録部115にセットするための命令であることを認識できず、ただデータを受信し転送するだけである。以後、記録部115は印刷状況の通知要求を受信したとき、上記印刷状況の通知要求の項目に対応した情報を返送する。セット後、処理はステップ804へ移行する。
【0090】
ステップ804において、画像処理装置100は外部処理装置200から印刷データを受信したか否かを判断する。受信していれば、処理はステップ805へ移行し、受信していなければステップ806へ移行する。印刷データの受信は、図3で示すエンドポイント1(305)の制御、印刷データ受信用に用いられる論理チャネルによって受信される。受信した印刷データは、一時的に画像処理装置100内の画像メモリ104へ保存される。
【0091】
ステップ805において、画像処理装置100は外部処理装置200から受信した印刷データを記録部115へ転送する処理を行う。印刷データの転送に関する詳細は、後述する。ステップ805の処理が終了すると、処理はステップ806へ移行する。
【0092】
ステップ806において、画像処理装置100は外部処理装置200から印刷状況の通知要求を受信しているか否か判断する。受信していれば処理はステップ807へ移行し、受信していなければステップ808へ移行する。外部処理装置200からの印刷状況の通知要求の受信は、図3で示すエンドポイント2(306)の印刷状況送信用に用いられる論理チャネルによって受信される。印刷状況の通知要求の受信とは、実際のデータを受信するわけではなく、USB通信規格のINパケットを受信することである。
【0093】
ステップ807において、画像処理装置100は記録部115から印刷状況を示すデータを受信する。印刷状況を示すデータの転送に関する詳細は、後述する。ステップ807の処理が終了すると、処理はステップ808へ移行する。
【0094】
ステップ808において、画像処理装置100は外部処理装置200からの印刷データの印刷、もしくは印刷状況の通知要求が終了したか否かを判断する。終了していれば、処理はステップ809へ移行し、終了していなければステップ801へ移行する。
【0095】
ステップ809において、画像処理装置100のCPU101は記録部115に自身の制御に必要とする印刷状況の通知要求の項目を通知する。以後、記録部115は印刷状況の通知要求を受信したとき、上記印刷状況の通知要求の項目に対応した情報を返送する。また、外部処理装置200に対しては、図7のステップ703と同様に、USBファンクション制御部113に常にデータが正確に受信できなかったことを示すNAK信号を返送するように設定しておく。セット後、処理はステップ824へ移行する。この処理が終了するまで画像処理装置100のCPU101は、記録部115の動作状態を認識することはできないので、この間(ステップ803〜ステップ808)の記録部115に対する処理、制御は記録部115が動作中であると判断して動作する。
【0096】
ステップ810において、画像処理装置100は画像メモリ104に存在する印刷データを記録部115へ転送する処理を行う。印刷データの転送に関する詳細は、後述する。ステップ810の処理が終了すると、処理はステップ811へ移行する。
【0097】
ステップ811において、画像処理装置100はROM102、RAM104に存在するプログラムが印刷状況の通知を要求しているか否か判断する。要求しているならば、処理はステップ812へ移行し、要求していないならばステップ813へ移行する。印刷状況の通知要求の発行は、図4で示すエンドポイント2(406)の印刷状況送信用に用いられる論理チャネルを使い、発行される。印刷状況の通知要求の発行とは、実際のデータを発行するわけではなく、USB通信規格のINパケットを発行することである。
【0098】
ステップ812において、画像処理装置100は記録部115から印刷状況を示すデータを受信する。印刷状況を示すデータの転送に関する詳細は、後述する。ステップ812の処理が終了すると、処理はステップ813へ移行する。
【0099】
ステップ813において、画像処理装置100は外部処理装置200からの印刷データ、もしくは印刷状況の通知要求が終了したか否かを判断する。終了していれば、処理はステップ824へ移行し、終了していなければステップ814へ移行する。
【0100】
ステップ814において、図7のステップ706と同様に画像処理装置100は外部処理装置200に、データを正確に受信できなかったことを示すNAK信号の送出を止め、外部処理装置200から送信されてくるデータを受信できるような設定にUSBファンクション制御部113、USBホスト制御部114を変更する。また、必要ならば同時に、画像処理装置100のCPU101は印刷モードにおいて外部処理装置200と記録部115とのデータの交換(図8ステップ815〜ステップ819)が終了するまで、記録部115に印刷状況通知要求や画像データの送受信などの作業を行わないような設定をUSBファンクション制御部113、USBホスト制御部114に行ってもよい。変更後ステップ815に移行する。
【0101】
ステップ815において、ステップ803と同様に、外部処理装置200によって発行された印刷状況の通知要求の項目が記録部115にセットされる。この際、印刷状況の通知要求の項目には記録部115における画像データの処理状況を確認する項目が含まれる。ただし、要求に対する返送データには記録部115が画像データ処理中であることを示す情報が必ず含まれる(図10、ステップ1005参照)。
【0102】
また、このとき画像処理装置100のCPU101は外部処理装置から送信されてくるデータの内容に対して解析、編集などの作業を行わないので、それが印刷状況の通知要求の項目を記録部115にセットするための命令であることを認識できず、ただデータを受信し転送するだけである。以後、記録部115は印刷状況の通知要求を受信したとき、上記印刷状況の通知要求の項目に対応した情報、つまり外部処理装置200が必要とする項目のみ返送する。セット後、処理はステップ818へ移行する。また、画像処理装置100のCPU101では、動作時状態監視時間(図6、ステップ510参照)経過を監視するためのタイマーをリセットし、カウント開始する。
【0103】
ステップ816において、画像処理装置100は外部処理装置200から印刷状況の通知要求を受信しているか否か判断する。受信しているならば、処理はステップ817へ移行し、受信していないならばステップ818へ移行する。外部処理装置200からの印刷状況の通知要求の受信は、図3で示すエンドポイント2(306)の印刷状況送信用に用いられる論理チャネルによって受信される。印刷状況の通知要求の受信とは、実際のデータを受信するわけではなく、USB通信規格のINパケットを受信することである。
【0104】
ステップ817において、画像処理装置100は記録部115から印刷状況を示すデータを受信する。印刷状況を示すデータの転送に関する詳細は後述する。ステップ817の処理が終了すると、処理はステップ818へ移行する。
【0105】
ステップ818において、ステップ815でカウントを開始したタイマーが動作時状態監視時間を経過したか否か判断する。経過した場合はステップ819に移行し、そうでない場合はステップ816へ移行する。
【0106】
ステップ819において、画像処理装置100のCPU101は記録部115に自身の制御に必要とする印刷状況の通知要求の項目を通知する。以後、記録部115は印刷状況の通知要求を受信したとき、上記印刷状況の通知要求の項目に対応した情報を返送する。また、外部処理装置200に対しては、図7のステップ703と同様に、USBファンクション制御部113に常にデータが正確に受信できなかったことを示すNAK信号を返送するように設定しておく。セット後、処理はステップ801へ移行する。この処理が終了するまで画像処理装置100のCPU101は、記録部115の動作状態を認識することはできないが、自身の依頼による画像データの印刷ジョブは終了していないので、この間(ステップ814〜ステップ819)の記録部115では印刷処理が継続中であるとして他の動作、制御を行う。
【0107】
ステップ820において、印刷データは画像メモリ104などに保存されているので、そのデータを記録部115に転送する。印刷データの転送に関する詳細は、後述する。ステップ820の処理が終了すると、処理はステップ821へ移行する。
【0108】
ステップ821において、画像処理装置100は自身のROM202、RAM203に保存されたプログラムによる印刷状況の通知要求の発行を命令されているか否か判断する。命令されているならば、処理はステップ822へ移行し、そうでないならばステップ823へ移行する。
【0109】
ステップ822において、画像処理装置100は記録部115から印刷状況を示すデータを受信する。印刷状況を示すデータの転送に関する詳細は、後述する。ステップ822の処理が終了すると、処理はステップ823へ移行する。
【0110】
ステップ823において、外部処理装置200からの印刷データが終了したか否かを判断する。終了していれば、処理はステップ824へ移行し、終了していなければステップ801へ移行する。
【0111】
ステップ824において、印刷動作の終了処理を行う。印刷動作の終了処理とは、印刷部材の機構外への排出、不図示のスピーカによる印刷動作終了音の鳴動、操作表示部108または表示部208による印刷動作終了の通知などがある。
【0112】
続いて、印刷データを転送する際の詳細な説明を行う。図9は、本発明の実施形態である画像処理装置100の印刷データを転送する際のフローチャートである。
【0113】
ステップ901において、印刷データ転送がステップ810から移行したか否かを判断する。ステップ810から移行した場合はステップ903に移行し、そうでない場合にはステップ902へ移行する。
【0114】
ステップ902において、受信した印刷データを記録部115へ転送する。外部処理装置からの印刷データの転送は、図3で示すエンドポイント1(305)の制御、印刷データ受信用に用いられる論理チャネルによって受信した印刷データを、一時的に画像処理装置100内の画像メモリ104へ保存し、図4で示すエンドポイント1(405)の制御、印刷データ受信用に用いられる論理チャネルへ送信する。
【0115】
この際、エンドポイント1(305)からエンドポイント1(405)へ転送する印刷データの内容は、編集、加工を一切行わず、そのままの印刷データを転送する。また、転送する印刷データは、ある一定の長さに区切られたパケット形式で転送する。図3で示すデバイス(301)内のインタフェース0(304)と、図4で示すデバイス(401)内のインタフェース0(404)は、互いに透過的に使用される。即ち、外部処理装置200にインストールされているプリンタドライバソフトの処理は、外部処理装置200と記録部115がUSBインタフェース経由で直接接続される場合となんら変わりなく、記録部115を他製品から流用した場合にプリンタドライバソフトもそのまま流用することが可能になる。また、画像処理装置100の制御下における印刷データの転送では、画像メモリ104などに保存されている印刷データを図4で示すエンドポイント1(405)の制御、印刷データ受信用に用いられる論理チャネルへ送信する。
【0116】
ステップ903において、画像メモリ104に保存された印刷データを1ページ分のみ記録部115へ転送する。この際、図4で示すエンドポイント1(405)が転送用の論理チャネルとして使用される。
【0117】
続いて、印刷状況データを転送する際の詳細な説明を行う。図10は、本発明の実施形態である画像処理装置100の印刷状況データを転送する際のフローチャートである。
【0118】
ステップ1001において、CPU101はUSBホスト制御部114を制御することにより、記録部115から印刷状況を示すデータを取得する。印刷状況を示すデータの取得は、図4で示すエンドポイント2(406)の印刷状況送信用に用いられる論理チャネルによって取得する。取得した印刷状況を示すデータは、一時的に画像処理装置100内の画像メモリ104へ保存される。また、取得する印刷状況を示すデータは、ある一定の長さに区切られたパケット形式で取得する。この印刷状況を示すデータの項目は図7のステップ703、ステップ707によって記録部に通知されていたものである。
【0119】
ステップ1002において、印刷状況通知がステップ807から移行されたか処理であるか否かを判断する。ステップ807から移行した処理の場合はステップ1003へ移行し、そうでない場合はステップ1004へ移行する。
【0120】
ステップ1003において、ステップ1001で取得した印刷状況を示すデータを外部処理装置200へ転送する。印刷状況を示すデータの転送は、図4で示すエンドポイント2(406)の印刷状況送信用に用いられる論理チャネルによって取得した印刷状況を示すデータを、一時的に画像処理装置100内の画像メモリ104へ保存し、図3で示すエンドポイント2(306)の印刷状況送信用に用いられる論理チャネルへ送信する。
【0121】
この際、エンドポイント2(406)からエンドポイント2(306)へ転送する印刷状況を示すデータの内容は、編集、加工は一切行わず、そのままの印刷状況を示すデータを転送する。また、転送する印刷状況を示すデータは、ある一定の長さに区切られたパケット形式で転送する。図4で示すデバイス(401)内のインタフェース0(404)と、図3で示すデバイス(301)内のインタフェース0(304)は、互いに透過的に使用される。図4で示すデバイス(401)内のインタフェース0(404)と、図3で示すデバイス(301)内のインタフェース0(304)は、互いに透過的に使用される。すなわち外部処理装置200にインストールされているプリンタドライバソフトの処理は、外部処理装置200と記録部115が、USBインタフェース経由で直接接続される場合となんら変わりなく、記録部115を他製品から流用した場合に、プリンタドライバソフトもそのまま流用することが可能になる。
【0122】
ステップ1002において、印刷状況通知がステップ817から移行されたか否かを判断する。移行した場合はステップ1005へ移行し、そうでない場合はステップ1006へ移行する。
【0123】
ステップ1005において、ステップ1003と同様に、ステップ1001で取得した印刷状況を示すデータを外部処理装置200へ転送する。ただし、ステップ1005で返送される印刷状況を示すデータには、画像処理装置100のCPU101の要請により、記録部115が画像メモリ104に存在する複数ページ分の画像データの印刷処理を現在実行中であることを示す情報が含まれる。
【0124】
ステップ1006において、画像処理装置100のCPU101はステップ1001で取得した印刷状況のデータを保持する。機能を実行するために必要な場合は、その内容を解析し、再度更新されるまでそれに基づいて以後の機能を実行する。
【0125】
続いて、外部処理装置200の画像処理装置100コントロールソフトウェア(以下、ドライバソフトウェア)の印刷状況通知要求に関する動作についての詳細を示す。
【0126】
図11は本実施形態で外部処理装置200の画像処理装置100に対するドライバソフトウェアの印刷状況通知要求時の動作について示したフローチャートである。
【0127】
ステップ1101において、外部処理装置200のCPU201は印刷状態通知要求を、USBホスト制御部を通して、画像処理装置100に対して行う。この際、印刷状態通知要求の項目は画像処理装置100を制御するためのドライバソフトウェアと共に内部記憶装置204、外部記憶装置205、外部記憶ディスク206のどれかに保存されている。
【0128】
ステップ1102において、印刷情報通知要求に対する画像処理装置100からの返送が受信できたかどうかを判断する。返送が受信できた場合にはステップ1103へ移行し、まだ受信できていない場合にはステップ1101へ移行する。
【0129】
ステップ1103において、印刷情報通知要求に対する画像処理装置100からの返送されてきた印刷状況を示すデータが無効である、つまりNAK信号を受信したか否かを判断する。受信した場合にはステップ1104に移行し、そうでない場合にはステップ1106に移行する。
【0130】
ステップ1105において、画像処理装置100から返送されてきた印刷状況を示すデータが無効である、つまり最初にNAK信号を受信してからカウントを開始して、それを受信し続けている時間がドライバソフトウェアに設定されている時間に達したか否かを判断する。設定されている時間に達した場合には、画像処理装置100との接続にエラーが発生していると判断し、ステップ1105へ移行する。そうでない場合にはステップ1101へ移行する。この際、ドライバソフトウェアに設定されている時間は、図6のステップ510のスタンバイ時状態監視時間、動作時状態監視時間より長い。
【0131】
ステップ1105において、外部処理装置200は画像処理装置100から必要な印刷状況を示すデータを取得することができなかったので、画像処理装置100との接続に何らかの問題、エラーが発生したと判断し、そのことをユーザに表示部208を用いて通知する。
【0132】
ステップ1106において、画像処理装置100から返送されてきた印刷状況を示すデータから次の制御に必要な動作に必要な項目を抜き出し、それに従って機能を実行する。ステップ1106終了後、ステップ1107へ移行する。
【0133】
ステップ1107において、外部処理装置200はユーザのオペレーション、ソフトウェア、画像処理装置100の状態に応じて、機能を実行する。
【0134】
本実施形態は、記録動作に関して記述したが、もちろん記録動作のみに限定されるわけではない。読取動作に関しても、同様に実施することにより、同様の効果が期待できる。また、デジタルカメラで撮影したデータの入力やファクシミリ送受信に関しても、同様に実施することにより、同様の効果が期待できる。
【0135】
また、本発明の上記実施形態では、外部処理装置と画像処理装置の各物理インタフェースにUSBを採用した画像処理システムにおいて、画像処理装置は外部処理装置のデータ処理部に対する状況情報の取得要求しても、その要求を前記データ処理部に転送しないことによって、確実に画像処理装置がデータ処理部の状況情報の取得できるようになる。そして、外部処理装置が前記データ処理部の状態を確認できないことを防ぐために、画像処理装置が待機状態の場合に画像処理装置の主制御部が、ある特定時間周期ごとに外部処理装置とデータ処理部の間でデータの転送を許可し、状況情報の取得要求とそれに対する返送データの転送処理を行うことで、外部処理装置はデータ処理部の状態を確認できる。
【0136】
その際、上記データ転送を許可する特定時間には、外部処理装置が状況情報取得要求を送出後、エラー終了することなく、有効な返送データの受信を待ちつづけている時間より短い時間を設定し、正常動作時に確実に外部処理装置が有効な返送データを取得できるようにする。この特定時間周期を設定するための時間を画像処理装置の記憶手段に保存しておき、データ処理部の構成情報をその情報を引き出すためのタグとすることで、効率良く選別することが可能になる。
【0137】
また、画像処理装置からの要請でデータ処理部が画像データを処理している場合、データ処理部へ1ページ分の画像データの転送が終了するたびに、わずかな時間のみ外部処理装置とデータ処理部の間でデータの転送を許可し、転送処理を行うことで、外部処理装置はデータ処理部の状態を確認できる。
【0138】
データ処理部が待機中の場合、外部処理装置から画像データを転送し、それをデータ処理部で処理することができる。この際、画像処理装置は状況情報取得用以外のデータ転送用の論理チャネルの状況を監視して、データの転送が行われている時、データ処理部が画像データ処理中であると判断する。
【0139】
上記の外部処理装置とデータ処理部の間のデータ交換において、スループットの向上のために画像処理装置の主制御部はそれに対して解析、編集などの作業は行わない。
【0140】
また、外部処理装置から何らかのデータが画像処理装置に転送される可能性がない場合、前述した制御を実行することはなく、画像処理装置の主制御部とデータ処理部の間で単純にデータの交換を実行する。これによって、制御の簡素化を図ることができる。
【0141】
画像処理装置だけでなく、外部処理装置にも画像処理装置に発行した状況情報の取得要求に対する返送情報を取得することができない、もしくは無効な情報をその返送として取得した時でも、一定時間は画像処理装置との間にエラーが発生したと判断することなく、状況情報の取得要求を発行し続ける構成、および同処理を実行するためのソフトウェアを持たせることで、上記した画像処理装置から外部処理装置は確実にデータ処理部の状況情報を取得できる。この際、連続で状況情報の取得要求を発行し続ける時間をデータ処理部で1ページ分の画像データを処理する時間よりも長くすることで前述した画像処理装置の全ての場合において、外部処理装置は確実に取得することができる。
【0142】
なお、本発明は、複数の機器(例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機、ファクシミリ装置など)に適用してもよい。
【0143】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体(または記録媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0144】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0145】
【発明の効果】
以上に説明したように、本発明によれば外部処理装置とファクシミリ装置の各物理インタフェースにUSBを採用した画像処理システムにおいて、ファクシミリ装置も外部処理装置もデータ処理部の状態を正確に認識することが可能になり、本システムを実現することができる。その結果、従来よりも制御が簡素化され、スループットが向上したシステムを持つ画像処理装置を構築することが可能となる。
【図面の簡単な説明】
【図1】本発明の実施形態に対応した画像処理装置を示すブロック図である。
【図2】本発明の実施形態に対応した外部処理装置を示すブロック図である。
【図3】本発明の実施形態に対応した画像処理装置100のUSB構成を示す概念図である。
【図4】本発明の実施形態に対応した記録部115のUSB構成を示す概念図である。
【図5】本発明の実施形態に対応した画像処理装置100の初期化処理動作のフローチャート1である。
【図6】本発明の実施形態に対応した画像処理装置100の初期化処理動作のフローチャート2である。
【図7】本発明の実施形態に対応した印刷動作開始のフローチャートである。
【図8】本発明の実施形態に対応した印刷動作のフローチャートである。
【図9】本発明の実施形態に対応した印刷データを転送するフローチャートである。
【図10】本発明の実施形態に対応した印刷状況データを転送するフローチャートである。
【図11】本発明の実施形態に対応した外部処理装置の画像処理装置に印刷状況のデータの要求、取得をコントロールするドライバソフトウェアのフローチャートである。[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an image processing apparatus, a control method of the image processing apparatus, a program, and a storage medium, and more particularly, to an image processing apparatus as a facsimile apparatus connected to an external processing apparatus.
[0002]
[Prior art]
As a facsimile device connectable to an external processing device such as a personal computer, a bidirectional parallel port (IEEE1284 compliant) interface such as Centronics or a universal serial bus (as described in Japanese Patent Application Laid-Open No. 7-288625). 2. Description of the Related Art A facsimile apparatus connected by a Universal Serial Bus (USB) interface is known. In this conventional image processing system including a facsimile apparatus and an external processing apparatus, the connection form between the facsimile apparatus and the external processing apparatus is such that only a single logical interface is provided on a single physical interface. Was. In addition, the main control unit and the data processing unit inside the facsimile apparatus are connected by one-way parallel communication and two-way serial interface.
[0003]
When an external processing apparatus attempts to control a composite facsimile apparatus having the above configuration and having a plurality of functions such as a printer, a scanner, and a facsimile communication, the external processing apparatus responds to the original control command by the printer, scanner, and facsimile. It is necessary to add and edit header information for specifying a function such as communication at the head of the control command, packetize the packet, and transmit the packetized data to the complex facsimile apparatus.
[0004]
Further, when the facsimile apparatus not connected to the external processing apparatus executes the function, the main control unit of the apparatus executes an operation state, an error state, and the like (hereinafter, referred to as a state) of the data processing unit to be executed by the function. In order to know the information in real time, an instruction (hereinafter, a status information acquisition request) for requesting the data processing unit to return the status information is issued. Similarly, when the main control unit needs to constantly grasp the state of each data processing unit in real time, the main control unit periodically issues a status information acquisition request to the data processing unit. After the issuance, the main control unit recognizes the use status and the status status from the information returned in response to the status information acquisition request from the data processing unit, and determines the subsequent operation.
[0005]
Similarly, in a facsimile device connected to an external processing device, the status information acquisition request is issued from each of the main control unit of the facsimile device and the main control unit of the external processing device to each data processing unit. At this time, the main control unit of the image processing apparatus receives all the data sent from the external processing apparatus once, analyzes the data, and transmits the data to each data processing unit at an appropriate timing and in accordance with the content thereof. Therefore, even when the data processing unit is operating under the control of one main control unit and data cannot be transmitted / received to / from the other main control unit, the main control unit of the image processing apparatus transmits the data to the data processing unit. It is possible to control the order of sending and the information returned, and even if the latter data is the above status information acquisition request, the main control unit of the image processing unit By creating and returning the data based on it, the subsequent functions could be executed.
[0006]
However, since there is only a single logical interface on a single physical interface, there is a major problem when attempting to control a complex facsimile apparatus with an external processing device. Specifically, it is impossible to operate a plurality of functions at the same time, and the merits of the composite facsimile machine cannot be fully utilized. Alternatively, in order to force simultaneous operations, a work load of packetizing control commands described in the related art is required. Therefore, there are major problems in terms of the workload for modifying the driver installed in the external processing device, the complexity of control, and the throughput. Furthermore, in a complex facsimile machine that receives packetized data from an external processing device, the packetized data is analyzed to identify whether the data is data related to a printer, data related to a scanner, or data related to facsimile communication. In addition, it is necessary to delete and edit the header information added to the head of the control command, and there is a major problem in terms of control complexity and throughput.
[0007]
Further, the main control unit and the recording unit inside the facsimile apparatus are connected by one-way parallel communication dedicated to print data transfer. Therefore, in order for the main control unit to acquire the print information of the recording unit, it is necessary to provide a physical interface different from the one-way parallel communication. This is also an issue of increasing product design work and control complexity.
[0008]
In order to solve this problem, simultaneous operation of functions is easily realized by adopting USB as a physical interface between the external processing device and the facsimile device and providing a plurality of logical channels defined by the USB standard (USB composite device). It will be possible. In addition, by providing a plurality of logical channels, it is not necessary to add header information indicating a function to a control command, thereby simplifying the control and improving the throughput by eliminating the need for data analysis. Furthermore, by adopting USB as the physical interface between the main control unit and the data processing unit in the facsimile machine, there is no need to provide a physical interface other than the USB interface. An improvement in permeability can be expected.
[0009]
[Problems to be solved by the invention]
However, in a facsimile device connected to an external processing device, when a status information acquisition request is issued to each data processing unit from both the main control unit of the facsimile device and the main control unit of the external processing device, the USB is transmitted to the physical interface. Adopted and the main control unit of the facsimile machine stops analyzing the data from the external processing device and improves the throughput, the main control unit of the image processing device is sent from the external processing device as described above After receiving and analyzing all the data once, it is impossible to perform control such that the data is transmitted to each data processing unit at an appropriate timing and in an appropriate order according to the contents. Therefore, since the data processing unit is operating under the control of one main control unit, and the data cannot be transmitted / received to / from the other main control unit, the latter main control unit may obtain an appropriate return. It is not possible to recognize the usage status and status status of the data processing unit. As a result, there arises a problem that the subsequent operation cannot be determined and executed.
[0010]
[Means for Solving the Problems]
In order to solve the above problems, the present invention provides the following means. More specifically, an image processing apparatus including a first interface unit having a first logical channel and connected to an external processing device, and a second interface unit having a second logical channel and connected to a data processing unit A state information request receiving means for receiving, via the first interface means, an instruction from the external processing device for requesting state information relating to the state of the data processing unit; and the state information request receiving means. Status information request transmission means for periodically transmitting the received status information request command to the data processing unit; status information obtaining means for obtaining the status information via the second interface means; State information transfer means for transferring the state information acquired by the acquisition means to an external processing device;
Is provided. The information processing apparatus may further include invalid data transmitting means for transmitting invalid data to the external processing device while the state information request transmitting means does not transmit the state information request command to the data processing unit.
[0011]
Further, according to the present invention, an attribute acquisition unit that acquires attribute information of the data processing unit via the second interface unit, and the external processing device is configured to execute the external processing device based on the attribute information acquired by the attribute acquisition unit. A standby time determining unit that determines a standby time from when a status information request command is issued to the data processing unit until the status information is received, and a time shorter than the standby time in the status information request transmitting unit. And a cycle setting means for setting the cycle.
[0012]
A storage unit for storing image data; and an image data transfer unit for transferring the image data stored in the storage unit to the data processing unit by a predetermined amount via the second interface unit. And a transfer amount determining unit for determining whether a transfer amount of the image data by the image data transferring unit has reached the predetermined amount, wherein the period in the state information request transmitting unit is the image data. The data transfer amount may be based on reaching the predetermined amount. Here, the predetermined amount may be an amount corresponding to the image data amount for one page, and the first interface means and the second interface means correspond to a universal serial bus communication standard. You may.
[0013]
Further, first data including a request command for the status information transmitted from the external processing device to the data processing unit, and second data including the status information transmitted from the data processing unit to the external processing device. The data may be data that has not been analyzed or edited.
[0014]
Further, the present invention further comprises a standby time storage unit for storing the standby time, wherein the standby time determination unit is determined based on the attribute information acquired by the attribute acquisition unit from the standby time storage unit. The waiting time may be determined by selecting the waiting time corresponding to the waiting time.
[0015]
The above means can be realized as a method for controlling the image processing apparatus, or can be realized as a control program for causing a computer to execute the method, and the program is stored in a storage medium and provided to provide the above method. It goes without saying that the problem may be solved.
[0016]
As described above, both the main control unit of the facsimile machine and the main control unit of the external processing device can obtain expected status confirmation information, and the function can be executed normally. As a result, it is possible to realize an image processing system that employs USB for each physical interface of the data processing unit and the facsimile machine.
[0017]
BEST MODE FOR CARRYING OUT THE INVENTION
First, the outline of the
[0018]
In the
[0019]
The
[0020]
The
[0021]
The
[0022]
The
[0023]
The resolution
[0024]
The encoding /
[0025]
The
[0026]
The USB
[0027]
The USB
[0028]
The
[0029]
In the present embodiment, the USB communication of the recording function uses a one-to-one connection mode. The
[0030]
In this example, the configuration in which the USB
[0031]
Next, the outline of the
[0032]
The
[0033]
The
[0034]
The
[0035]
The
[0036]
The
[0037]
The USB
[0038]
Next, the configuration of the USB
[0039]
FIG. 3 is a conceptual diagram showing a configuration of the USB interface of the USB
[0040]
Only one configuration (configuration 1 (302)) is defined in the device (301). The attribute of the configuration 1 (302) is expressed by a configuration descriptor, and the configuration descriptor includes the number of interfaces in the configuration.
[0041]
Only three interfaces (interfaces 0 to 2 (304, 307, 311)) are defined in the configuration 1 (302). The attributes of the interfaces 0 to 2 (304, 307, 311) are represented by interface descriptors, and the interface descriptors include the number of endpoints in the interface, class codes, and the like.
[0042]
In the interface 0 (304) used for the printer, only two endpoints (
[0043]
In the interface 1 (307) for the scanner and the interface 2 (311) for the facsimile, the respective endpoints (endpoints 3 (308), 4 (309), 5 (310), 6 (312), 7 (313), and 8 (314)) are assigned to respective functions (see FIG. 3).
[0044]
Next, the configuration of the USB interface of the
[0045]
Only one device (401) indicated by the largest frame can be defined in the USB communication standard, and indicates the attributes of the entire apparatus. The attribute of the device (401) is represented by a device descriptor, and the device descriptor includes a device manufacturer ID, a product ID, a release number, a configuration number, and the like.
[0046]
Only one configuration (configuration 1 (402)) is defined in the device (401). The attribute of the configuration 1 (402) is expressed by a configuration descriptor, and the configuration descriptor includes the number of interfaces in the configuration.
[0047]
Only one interface (interface 0 (404)) is defined in the configuration 1 (402). The attribute of the interface 0 (404) is represented by an interface descriptor, and the interface descriptor includes the number of endpoints in the interface, a class code, and the like.
[0048]
Only two endpoints (
[0049]
Next, an initialization process of the
[0050]
When the
[0051]
Subsequently, in step 502, it is determined whether the initialization of the
[0052]
In step 503, the
[0053]
The transmission data for determining the device configuration is transmitted by a logical channel used for device control of the endpoint 0 (403) shown in FIG. By executing this step at the time of power-on initialization of the
[0054]
In step 504, the apparatus configuration of the entire
[0055]
For example, the print data received by the
[0056]
By performing the above control, the
[0057]
In step 505, the USB
[0058]
In
[0059]
In
[0060]
In step 508, the data indicating the device configuration of the entire
[0061]
In step 509, it is determined whether the
[0062]
At this time, if the driver software corresponding to the model indicated by the data indicating the apparatus configuration transmitted from the
[0063]
In step 510, when the
[0064]
These recognize the recognized device ID from the data indicating the device configuration of the
[0065]
In step 511, the
[0066]
For example, when the
[0067]
Further, the same applies to a case where the
[0068]
For example, when the
[0069]
With this control, even when a request to transfer data indicating the printing status is received from the
[0070]
Steps 503 and 504 need not necessarily be performed immediately after step 502. Steps 503 and 504 may be performed immediately after receiving the device configuration acquisition command from the
[0071]
In step 503, it is not always necessary to simultaneously perform the acquisition of the device configuration from the
[0072]
Subsequently, the start of the printing operation of the
[0073]
In step 702, it is determined whether or not the
[0074]
In step 703, the print status notification request item requested by the
[0075]
In step 704, a program stored in the
[0076]
In
[0077]
In
[0078]
In
[0079]
In
[0080]
In
[0081]
In step 710, similarly to step 702, it is determined whether or not the
[0082]
In step 711, the print status notification request item is notified to the
[0083]
In
[0084]
In step 713, the
[0085]
In step 714, the
[0086]
Next, the operation of the
[0087]
In step 801, it is determined whether the print mode has been called from step 714 in FIG. If it is called from step 713, it proceeds to step 820; otherwise, it proceeds to step 802 if it is called in
[0088]
In step 802, it is determined whether the print mode has been called from
[0089]
In step 803, the item of the print status notification request issued by the
[0090]
In step 804, the
[0091]
In step 805, the
[0092]
In step 806, the
[0093]
In
[0094]
In step 808, the
[0095]
In step 809, the
[0096]
In step 810, the
[0097]
In step 811, the
[0098]
In step 812, the
[0099]
In step 813, the
[0100]
In step 814, the
[0101]
In step 815, similarly to step 803, the item of the print status notification request issued by the
[0102]
At this time, the
[0103]
In step 816, the
[0104]
In step 817, the
[0105]
In step 818, it is determined whether or not the timer that has started counting in step 815 has exceeded the operating state monitoring time. If it has elapsed, the process proceeds to step 819; otherwise, the process proceeds to step 816.
[0106]
In step 819, the
[0107]
In step 820, since the print data is stored in the
[0108]
In step 821, the
[0109]
In step 822, the
[0110]
In step 823, it is determined whether the print data from the
[0111]
In step 824, the printing operation is terminated. The terminating process of the printing operation includes discharge of the printing member out of the mechanism, sounding of a printing operation end sound by a speaker (not shown), notification of the end of the printing operation by the
[0112]
Next, a detailed description will be given when transferring the print data. FIG. 9 is a flowchart when the print data of the
[0113]
In step 901, it is determined whether the transfer of the print data has shifted from step 810. If the process proceeds from step 810, the process proceeds to step 903; otherwise, the process proceeds to step 902.
[0114]
In
[0115]
At this time, the contents of the print data to be transferred from the endpoint 1 (305) to the endpoint 1 (405) are not edited or processed at all, and the print data is transferred as it is. The print data to be transferred is transferred in a packet format divided into a certain length. The interface 0 (304) in the device (301) shown in FIG. 3 and the interface 0 (404) in the device (401) shown in FIG. 4 are used transparently to each other. That is, the processing of the printer driver software installed in the
[0116]
In step 903, only one page of the print data stored in the
[0117]
Next, a detailed description will be given when transferring the print status data. FIG. 10 is a flowchart when the print status data of the
[0118]
In step 1001, the
[0119]
In step 1002, it is determined whether the printing status notification has been transferred from
[0120]
In
[0121]
At this time, the content of the data indicating the printing status transferred from the endpoint 2 (406) to the endpoint 2 (306) is not edited or processed at all, and the data indicating the printing status is transferred as it is. Further, the data indicating the printing status to be transferred is transferred in a packet format divided into a certain length. The interface 0 (404) in the device (401) shown in FIG. 4 and the interface 0 (304) in the device (301) shown in FIG. 3 are used transparently to each other. The interface 0 (404) in the device (401) shown in FIG. 4 and the interface 0 (304) in the device (301) shown in FIG. 3 are used transparently to each other. That is, the processing of the printer driver software installed in the
[0122]
In step 1002, it is determined whether the print status notification has been transferred from step 817. If so, the process proceeds to step 1005; otherwise, the process proceeds to step 1006.
[0123]
In
[0124]
In
[0125]
Next, details of an operation related to a print status notification request of the
[0126]
FIG. 11 is a flowchart illustrating the operation of the
[0127]
In
[0128]
In step 1102, it is determined whether a return from the
[0129]
In step 1103, it is determined whether the data indicating the print status returned from the
[0130]
In
[0131]
In
[0132]
In step 1106, items necessary for the next control operation are extracted from the data indicating the printing status returned from the
[0133]
In
[0134]
Although the present embodiment has been described with respect to the recording operation, it is needless to say that the present invention is not limited to the recording operation. Similar effects can be expected by performing the reading operation in the same manner. Similar effects can be expected by inputting data captured by a digital camera and transmitting and receiving facsimile data in the same manner.
[0135]
Further, in the above embodiment of the present invention, in an image processing system employing USB for each physical interface of the external processing device and the image processing device, the image processing device requests the data processing unit of the external processing device to obtain status information. Also, by not transferring the request to the data processing unit, the image processing apparatus can surely acquire the status information of the data processing unit. Then, in order to prevent the external processing device from being unable to check the state of the data processing unit, when the image processing device is in the standby state, the main control unit of the image processing device communicates with the external processing device every certain specific time period. The external processing device can confirm the state of the data processing unit by permitting data transfer between the units and performing a status information acquisition request and a return data transfer process in response to the request.
[0136]
At this time, the specific time for permitting the data transfer is set to a time shorter than the time during which the external processing apparatus waits for reception of valid return data without terminating an error after transmitting the status information acquisition request. Thus, it is ensured that the external processing device can acquire valid return data during normal operation. The time for setting the specific time period is stored in the storage unit of the image processing apparatus, and the configuration information of the data processing unit is used as a tag for extracting the information, so that the sorting can be efficiently performed. Become.
[0137]
Further, when the data processing unit is processing image data at the request of the image processing device, each time the transfer of one page of image data to the data processing unit is completed, the data processing unit communicates with the external processing device for a short time. By permitting data transfer between the units and performing the transfer process, the external processing device can check the state of the data processing unit.
[0138]
When the data processing unit is on standby, image data can be transferred from the external processing device and processed by the data processing unit. At this time, the image processing apparatus monitors the status of the logical channel for data transfer other than the status information acquisition, and determines that the data processing unit is performing image data processing when data is being transferred.
[0139]
In the data exchange between the external processing device and the data processing unit, the main control unit of the image processing device does not perform an operation such as analysis and editing on the data processing unit in order to improve the throughput.
[0140]
When there is no possibility that any data is transferred from the external processing device to the image processing device, the above-described control is not performed, and the data is simply transmitted between the main control unit and the data processing unit of the image processing device. Perform the exchange. Thereby, control can be simplified.
[0141]
Not only the image processing device but also the external processing device cannot acquire the return information in response to the status information acquisition request issued to the image processing device, or even if the invalid information is acquired as the return, the image is kept for a certain period of time. By providing a configuration for continuously issuing a status information acquisition request without determining that an error has occurred between the image processing apparatus and the software for executing the processing, external processing from the image processing apparatus described above can be performed. The apparatus can reliably acquire the status information of the data processing unit. In this case, by making the time for continuously issuing the status information acquisition request longer than the time for processing one page of image data in the data processing unit, the external processing device can be used in all of the aforementioned image processing devices. Can be obtained reliably.
[0142]
The present invention can be applied to a system including a plurality of devices (for example, a host computer, an interface device, a reader, a printer, etc.), but can be applied to a device including one device (for example, a copier, a facsimile machine, etc.). May be applied.
[0143]
Further, an object of the present invention is to supply a storage medium (or a recording medium) in which a program code of software for realizing the functions of the above-described embodiments is recorded to a system or an apparatus, and a computer (or a CPU or a CPU) of the system or the apparatus. Needless to say, the present invention can also be achieved by an MPU) reading and executing a program code stored in a storage medium. In this case, the program code itself read from the storage medium realizes the function of the above-described embodiment, and the storage medium storing the program code constitutes the present invention. When the computer executes the readout program code, not only the functions of the above-described embodiments are realized, but also an operating system (OS) running on the computer based on the instruction of the program code. It goes without saying that a part or all of the actual processing is performed and the functions of the above-described embodiments are realized by the processing.
[0144]
Further, after the program code read from the storage medium is written into a memory provided in a function expansion card inserted into the computer or a function expansion unit connected to the computer, the function is executed based on the instruction of the program code. It goes without saying that the CPU included in the expansion card or the function expansion unit performs part or all of the actual processing, and the processing realizes the functions of the above-described embodiments.
[0145]
【The invention's effect】
As described above, according to the present invention, in an image processing system employing USB for each physical interface between an external processing device and a facsimile device, both the facsimile device and the external processing device can accurately recognize the state of the data processing unit. And the present system can be realized. As a result, it is possible to construct an image processing apparatus having a system in which control is simplified and throughput is improved as compared with the related art.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating an image processing apparatus according to an embodiment of the present invention.
FIG. 2 is a block diagram showing an external processing device according to an embodiment of the present invention.
FIG. 3 is a conceptual diagram showing a USB configuration of the
FIG. 4 is a conceptual diagram showing a USB configuration of a
FIG. 5 is a
FIG. 6 is a
FIG. 7 is a flowchart for starting a printing operation according to the embodiment of the present invention.
FIG. 8 is a flowchart of a printing operation according to the embodiment of the present invention.
FIG. 9 is a flowchart for transferring print data according to the embodiment of the present invention.
FIG. 10 is a flowchart for transferring print status data according to the embodiment of the present invention.
FIG. 11 is a flowchart of driver software that controls request and acquisition of print status data from an image processing apparatus of an external processing apparatus according to an embodiment of the present invention.
Claims (15)
前記データ処理部の状態に関する状態情報を要求する前記外部処理装置からの命令を前記第1のインタフェース手段を介して受信する状態情報要求受信手段と、
前記状態情報要求受信手段で受信した前記状態情報の要求命令を周期的に前記データ処理部へ送信する状態情報要求送信手段と、
前記第2のインタフェース手段を介して前記状態情報を取得する状態情報取得手段と、
前記状態情報取得手段で取得した前記状態情報を外部処理装置へ転送するための状態情報転送手段と
を備えることを特徴とする画像処理装置。An image processing apparatus comprising: a first interface unit having a first logical channel and connected to an external processing device; and a second interface unit having a second logical channel and connected to a data processing unit,
State information request receiving means for receiving, via the first interface means, an instruction from the external processing device for requesting state information on the state of the data processing unit;
State information request transmission means for periodically transmitting the state information request command received by the state information request reception means to the data processing unit,
State information acquisition means for acquiring the state information via the second interface means,
An image processing apparatus comprising: a state information transfer unit configured to transfer the state information acquired by the state information acquisition unit to an external processing device.
前記属性取得手段によって取得した前記属性情報に基づいて、前記外部処理装置が前記データ処理部に対して状況情報の要求命令の発行してから前記状態情報を受信するまでの待機時間を決定する待機時間決定手段と、
前記待機時間より短い時間を前記状態情報要求送信手段における前記周期として設定する周期設定手段と
をさらに備えることを特徴とする請求項1又は請求項2に記載の画像処理装置。Attribute acquisition means for acquiring attribute information of the data processing unit via the second interface means;
Standby for determining a standby time from when the external processing device issues a status information request command to the data processing unit until the status information is received, based on the attribute information acquired by the attribute acquisition unit. Time determining means;
The image processing apparatus according to claim 1, further comprising a cycle setting unit configured to set a time shorter than the standby time as the cycle in the status information request transmitting unit.
前記第2のインタフェース手段を介して前記格納手段に格納された前記画像データを所定量ごとに前記データ処理部へ転送するための画像データ転送手段と、
前記画像データ転送手段による画像データの転送量が前記所定量に到達したか否かを判定するための転送量判定手段とを更に備え、
前記状態情報要求送信手段における前記周期が、前記画像データの転送量の前記所定量への到達に基づくことを特徴とする請求項1又は請求項2に記載の画像処理装置。Storage means for storing image data;
Image data transfer means for transferring the image data stored in the storage means via the second interface means to the data processing unit for each predetermined amount;
A transfer amount determining unit for determining whether the transfer amount of the image data by the image data transfer unit has reached the predetermined amount,
3. The image processing apparatus according to claim 1, wherein the period in the state information request transmission unit is based on the transfer amount of the image data reaching the predetermined amount.
前記データ処理部の状態に関する状態情報を要求する前記外部処理装置からの命令を前記第1のインタフェースを介して受信する状態情報要求受信工程と、
前記状態情報要求受信工程において受信した前記状態情報の要求命令を周期的に前記データ処理部へ送信する状態情報要求送信工程と、
前記第2のインタフェースを介して前記状態情報を取得する状態情報取得工程と、
前記状態情報取得工程において取得した前記状態情報を外部処理装置へ転送するための状態情報転送工程と
を備えることを特徴とする画像処理装置の制御方法。A method for controlling an image processing apparatus, comprising: a first interface having a first logical channel and connected to an external processing device; and a second interface having a second logical channel and connected to a data processing unit. ,
A state information request receiving step of receiving, via the first interface, an instruction from the external processing device requesting state information on the state of the data processing unit;
A state information request transmission step of periodically transmitting the state information request command received in the state information request reception step to the data processing unit,
A state information obtaining step of obtaining the state information via the second interface;
A state information transfer step of transferring the state information acquired in the state information acquisition step to an external processing apparatus.
前記属性取得工程において取得した前記属性情報に基づいて、前記外部処理装置が前記データ処理部に対して状況情報の要求命令の発行してから前記状態情報を受信するまでの待機時間を決定する待機時間決定工程と、
前記待機時間より短い時間を前記状態情報要求送信工程における前記周期として設定する周期設定工程と
をさらに備えることを特徴とする請求項10又は請求項11に記載の画像処理装置の制御方法。An attribute obtaining step of obtaining attribute information of the data processing unit via the second interface;
Waiting for determining a standby time from when the external processing device issues a status information request command to the data processing unit until the status information is received, based on the attribute information acquired in the attribute acquiring step. A time determining step;
The method according to claim 10, further comprising: a cycle setting step of setting a time shorter than the standby time as the cycle in the state information request transmission step.
前記第2のインタフェースを介して前記格納部に格納された前記画像データを所定量ごとに前記データ処理部へ転送するための画像データ転送工程と、
前記画像データ転送工程による画像データの転送量が前記所定量に到達したか否かを判定するための転送量判定工程とを更に備え、
前記状態情報要求送信工程における前記周期が、前記画像データの転送量の前記所定量への到達に基づくことを特徴とする請求項10又は請求項11に記載の画像処理装置の制御方法。A storage step for storing the image data in the storage unit,
An image data transfer step for transferring the image data stored in the storage unit to the data processing unit for each predetermined amount via the second interface;
A transfer amount determining step for determining whether the transfer amount of the image data in the image data transferring step has reached the predetermined amount,
The method according to claim 10, wherein the period in the status information request transmission step is based on the transfer amount of the image data reaching the predetermined amount.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002163180A JP2004015214A (en) | 2002-06-04 | 2002-06-04 | Image processing device, its control method, program, and information storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002163180A JP2004015214A (en) | 2002-06-04 | 2002-06-04 | Image processing device, its control method, program, and information storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004015214A true JP2004015214A (en) | 2004-01-15 |
Family
ID=30431727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002163180A Withdrawn JP2004015214A (en) | 2002-06-04 | 2002-06-04 | Image processing device, its control method, program, and information storage medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004015214A (en) |
-
2002
- 2002-06-04 JP JP2002163180A patent/JP2004015214A/en not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7295338B2 (en) | Status information acquisition from plural functions included in image processing apparatus | |
US7177972B2 (en) | Peripherals of computer | |
JP3817494B2 (en) | Image processing apparatus and control method thereof | |
US7626714B2 (en) | Internal interface in image processing apparatus and control thereof | |
US7573592B2 (en) | Status data transmission of image processing apparatus | |
US20050231750A1 (en) | Image output apparatus and method of controlling same | |
JP2004015214A (en) | Image processing device, its control method, program, and information storage medium | |
JP2005100064A (en) | Image processor and image processing method and its program | |
JP2004032536A (en) | Printing control method in image processing apparatus, program, storage medium, and image processing apparatus | |
JP2003198779A (en) | Image processor and controlling method | |
JP2004023478A (en) | Image processing apparatus, control method for image processing apparatus, program and information storage medium | |
JP2006338232A (en) | Communication system | |
JP3880431B2 (en) | Composite device and control method thereof | |
JP2004023355A (en) | Image processing apparatus, its control method, program, and information record medium | |
JP2004032539A (en) | Control method, program, and storage medium of image processing apparatus, as well as image processing apparatus | |
JP2003304367A (en) | Record control apparatus and control method for the same | |
US20030189719A1 (en) | Recording control apparatus and control method using the same recording control apparatus | |
JP2004164310A (en) | Image processor and control method therefor | |
JP2007174022A (en) | Image forming apparatus | |
JP2004064338A (en) | Image processing apparatus and its control method | |
JP2004021493A (en) | Image processor and method for controlling image processor and its program and information storage medium | |
JP2004050726A (en) | Image processor | |
JP2004303205A (en) | Image forming apparatus with stored document information editable by external device, and document service providing method | |
JP4207985B2 (en) | Scanner control device, scanner control system, and control method | |
JP5058023B2 (en) | Image processing apparatus, image processing system, and image processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20050906 |