(57)【要約】【課題】簡易な印刷システムで、複数部数の印刷ジョブの分散先となるプリンタの物理的な位置を設定可能とする。【解決手段】ネットワークにクライアントおよび複数のプリンタを接続して印刷システムを構築する。プリンタＰＲＴ１は、クライアントから複数部数が指定された印刷ジョブＪＯＢ０を受信すると、自身と同一機種のプリンタを検索し、検索された全プリンタをオフラインに設定する。ユーザは、分散先として所望するプリンタを、直接操作し、オンラインに設定する。プリンタＰＲＴ１は、動作状態がオンラインに変化したプリンタを代替プリンタとして特定し、印刷ジョブ０の印刷部数を、代替プリンタの台数で除算した結果で修正した修正印刷ジョブＪＯＢ１を代替プリンタＰＲＴ２およびＰＲＴ３に送出する。こうすれば、簡易な構成で、ユーザの意図を反映した分散印刷を実現することができる。【選択図】  図１
2004258830.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続された出力装置を制御する出力制御装置であって、
前記ネットワークに接続された機器から、出力すべきデータを受信するデータ受信部と、
前記ネットワークに接続された出力装置を検索する検索部と、
各出力装置に対するユーザの操作に基づく動作状態の変化を前記ネットワーク経由で検出する動作状態検出部と、
前記変化が検出された出力装置に基づき、前記データを送信可能な出力装置を特定する出力装置特定部とを備える出力制御装置。
【請求項２】
請求項１記載の出力制御装置であって、
前記動作状態の変化の検出に先立ち、前記ネットワークを介して、前記検索された出力装置の動作状態を統一させる動作状態統一部を備える出力制御装置。
【請求項３】
請求項１記載の出力制御装置であって、
前記検索部は、自身のアドレスと所定の関係にあるアドレスの範囲で前記他の出力装置検索する出力制御装置。
【請求項４】
ネットワークに接続された印刷装置であって、
前記ネットワークに接続された機器から、印刷部数の指定を含む印刷ジョブを受信するデータ受信部と、
前記ネットワークに接続された他の印刷装置を検索する検索部と、
各印刷装置に対するユーザの操作に基づく動作状態の変化を前記ネットワーク経由で検出する動作状態検出部と、
前記変化が検出された印刷装置に基づき、印刷ジョブが移転可能な代替印刷装置を特定する印刷装置特定部と、
印刷部数が複数である場合に、前記印刷ジョブのうち該印刷部数を指定された部数以下の部数に変更した修正印刷ジョブの印刷を、前記代替印刷装置の少なくとも一部に移転するジョブ移転部とを備える印刷装置。
【請求項５】
請求項４記載の印刷装置であって、
前記動作状態の変化の検出に先立ち、前記ネットワークを介して、前記検索された印刷装置の動作状態を統一させる動作状態統一部を備える印刷装置。
【請求項６】
請求項４記載の印刷装置であって、
前記検索部は、自身のアドレスと所定の関係にあるアドレスの範囲で前記他の印刷装置を検索する印刷装置。
【請求項７】
請求項４記載の印刷装置であって、
前記印刷装置特定部は、前記他の印刷装置のうち、オフラインの状態から、ユーザの操作によってオンラインへ変化した印刷装置を、前記代替印刷装置と特定する印刷装置。
【請求項８】
請求項４記載の印刷装置であって、
前記印刷装置特定部は、該印刷装置が受信した前記印刷ジョブに基づく印刷を、そのまま実行可能な印刷装置を前記ネットワーク上で探索し、特定する印刷装置。
【請求項９】
請求項４記載の印刷装置であって、
前記修正印刷ジョブの部数は、前記指定された印刷部数を前記代替印刷装置の台数で除算した部数である印刷装置。
【請求項１０】
請求項４記載の印刷装置であって、
前記ジョブ移転部は、前記代替印刷装置から更に他の印刷装置への移転を禁止するための制御情報を付して前記修正印刷ジョブの移転を行う印刷装置。
【請求項１１】
請求項４記載の印刷装置であって、
更に、前記代替印刷装置によって印刷される部数も含めて、前記指定された印刷部数を実現するよう、部数管理を行う部数管理部を備える印刷装置。
【請求項１２】
請求項１１記載の印刷装置であって、
前記部数管理部は、前記印刷ジョブを送信した機器に対して、前記代替印刷装置によって印刷される部数も含めて、印刷済みの部数を通知する印刷装置。
【請求項１３】
請求項４記載の印刷装置であって、
更に、印刷処理に関する情報を表示する表示部を備えており、
前記ジョブ移転部は、前記修正ジョブを移転した前記代替印刷装置を特定する情報を前記表示部に表示する印刷装置。
【請求項１４】
ネットワークに接続された出力装置を制御する制御方法であって、
前記ネットワークに接続された機器から、出力すべきデータを受信する工程と、
前記ネットワークに接続された出力装置を検索する工程と、
各出力装置に対するユーザの操作に基づく動作状態の変化を前記ネットワーク経由で検出する工程と、
前記変化が検出された出力装置に基づき、前記データを送信可能な出力装置を特定する工程とを備える制御方法。
【請求項１５】
ネットワークに接続された印刷装置によって印刷を行う印刷方法であって、
前記ネットワークに接続された機器から、印刷部数の指定を含む印刷ジョブを受信する工程と、
前記ネットワークに接続された他の印刷装置を検索する工程と、
各印刷装置に対するユーザの操作に基づく動作状態の変化を前記ネットワーク経由で検出する工程と、
前記変化が検出された印刷装置に基づき、印刷ジョブが移転可能な代替印刷装置を特定する工程と、
印刷部数が複数である場合に、前記印刷ジョブのうち該印刷部数を指定された部数以下の部数に変更した修正印刷ジョブの印刷を、前記代替印刷装置の少なくとも一部に移転する工程とを備える印刷方法。
【請求項１６】
ネットワークに接続された出力装置を制御するためのコンピュータプログラムであって、
前記ネットワークに接続された機器から、出力すべきデータを受信する機能と、
前記ネットワークに接続された出力装置を検索する機能と、
各出力装置に対するユーザの操作に基づく動作状態の変化を前記ネットワーク経由で検出する機能と、
前記変化が検出された出力装置に基づき、前記データが送信可能な出力装置を特定する機能とをコンピュータに実現させるためのコンピュータプログラム。
【請求項１７】
ネットワークに接続された印刷装置を制御するためのコンピュータプログラムであって、
前記ネットワークに接続された機器から、印刷部数の指定を含む印刷ジョブを受信する機能と、
前記ネットワークに接続された他の印刷装置を検索する機能と、
各印刷装置に対するユーザの操作に基づく動作状態の変化を前記ネットワーク経由で検出する機能と、
前記変化が検出された印刷装置に基づき、印刷ジョブが移転可能な代替印刷装置を特定する機能と、
印刷部数が複数である場合に、前記印刷ジョブのうち該印刷部数を指定された部数以下の部数に変更した修正印刷ジョブの印刷を、前記代替印刷装置の少なくとも一部に移転する機能とをコンピュータに実現させるためのコンピュータプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ネットワークに複数の印刷装置が接続された印刷環境下で、印刷装置間で印刷ジョブを分配して、分散印刷を行う技術に関する。
【０００２】
【従来の技術】
近年、複数のプリンタを同一ネットワークに接続し、ユーザが複数のプリンタを使い分けることができる印刷システムが普及しつつある。複数部の印刷を行う場合、印刷ジョブを各プリンタに分配し、並行処理することにより、短時間で印刷を完了する技術、いわゆる分散印刷も提案されている。（例えば、特許文献１参照）。分散印刷は、ネットワーク上に設けられた分散印刷用のプリントサーバが、印刷ジョブの分散先および印刷部数を制御するのが通常である。
【０００３】
【特許文献１】
特開２００２―２１５３６９号公報
【０００４】
【発明が解決しようとする課題】
しかし従来技術では、分散印刷を実現するためにサーバを含めた大がかりなシステムが必要となっていた。またネットワークアドレスが近いプリンタが、必ずしも物理的に近くに設置されているとは限らないため、印刷ジョブが、設置位置の離れているプリンタに分散され、印刷完了した印刷物を回収するのが煩雑であるという問題点があった。本発明は、かかる課題を解決するためになされたものであり、簡易なシステムで、分散先となるプリンタを容易に特定可能な分散印刷を実現することを目的とする。
【０００５】
【課題を解決するための手段およびその作用・効果】
上記課題の少なくとも一部を解決するために、本発明は以下の構成をとることとする。すなわち、本発明の第１の構成として、ネットワークに接続された出力装置を制御する出力制御装置であって、
前記ネットワークに接続された機器から、出力すべきデータを受信するデータ受信部と、
前記ネットワークに接続された出力装置を検索する検索部と、
各出力装置に対するユーザの操作に基づく動作状態の変化を前記ネットワーク経由で検出する動作状態検出部と、
前記変化が検出された出力装置に基づき、前記データを送信可能な出力装置を特定する出力装置特定部とを備えることを要旨とする。
【０００６】
出力装置とは、例えば、プロジェクタやディスプレイ、印刷装置、ファクシミリ、音響装置など種々の装置を想定することが可能である。
【０００７】
本発明の出力制御装置によれば、ユーザの直接的な操作により動作状態に変化の発生した出力装置を、送信先出力装置と特定してデータの送信を行うため、ユーザの意図する出力装置へのデータ送信を行うことが可能となる。ユーザの操作により変化の発生した出力装置を、非送信先出力装置とすることとしてもよい。本発明の出力制御装置は、例えば、サーバに構築されており、同一ネットワークに存在する複数の出力装置を一元的に管理することとしてもよいし、複数の出力装置のいずれかに本発明の出力制御装置が構築されていることとしてもよい。全ての出力装置に、本発明の出力制御装置が構築されていることとすれば、ユーザはいずれの機器にデータを送出しても、本発明を実現することが可能となる。本発明の出力制御装置が、出力装置に構築されている場合には、受信したデータを自身でデータの処理を行いつつ、同一データを複製して他の出力装置へ送信することとしてもよいし、自身では処理せず、他の出力装置へ送信することとしてもよい。
【０００８】
例えば、出力制御装置と、ネットワーク上の出力装置とが無線通信を行っている場合には、ＷＥＰキーやＥＳＳ―ＩＤなどを所定時間無効とし、その間にユーザによる送信先出力装置の指定を行い、新たなＷＥＰキーやＥＳＳ−ＩＤを割り振ることとすれば、セキュリティの観点からも好ましい。ユーザによる送信先出力装置の指定を行い、その後ＷＥＰキーやＥＳＳ―ＩＤなどを所定時間無効とすることとしてもよい。こうすれば、数多く存在する無線装置の、特定の装置間のみでＩＤやキーを共有することができ、好適である。無線に限らず、ＳＳＬなどのプロトコルを使用して暗号化通信を行う場合にも好適である。
【０００９】
本発明の第２の構成として、ネットワークに接続された印刷装置において、
前記ネットワークに接続された機器から、印刷部数の指定を含む印刷ジョブを受信するデータ受信部と、
前記ネットワークに接続された他の印刷装置を検索する検索部と、
各印刷装置に対するユーザの操作に基づく動作状態の変化を前記ネットワーク経由で検出する動作状態検出部と、
前記変化が検出された印刷装置に基づき、印刷ジョブが移転可能な代替印刷装置を特定する印刷装置特定部と、
印刷部数が複数である場合に、前記印刷ジョブのうち該印刷部数を指定された部数よりも少ない部数に変更した修正印刷ジョブの印刷を、前記代替印刷装置の少なくとも一部に移転するジョブ移転部とを備えることを要旨とする。
【００１０】
動作状態は、例えば、ＳＮＭＰを利用して検出することができる。分散を行う印刷装置が、他の印刷装置を監視してもよいし、他の印刷装置から動作状態の変化が通知されるものとしてもよい。動作状態の検出は、予め設定された時間制限内で行うことが好ましい。
【００１１】
本発明の印刷装置によれば、印刷装置自体が、ユーザの操作により動作状態に変化の発生した印刷装置を、分散印刷先と特定して印刷ジョブの移転を行うため、システムの規模の拡大を抑制しつつ、ユーザの意図する印刷装置への分散印刷を実現することができる。また、ユーザが、所定の操作を印刷装置に直接施すため、分散先となる印刷装置の物理的な位置を容易に設定できる。
【００１２】
本発明の出力制御装置または印刷装置において、動作状態の変化の検出に先立ち、ネットワークを介して、検索された出力装置または印刷装置の動作状態を統一させる動作状態統一部を備えることとしてもよい。こうすれば、動作状態検出部は、ユーザの操作前後における動作状態の変化の検出を容易に行えるため好適である。また、送信先を設定するための操作も統一されるため、ユーザの混乱を回避できる利点もある。
【００１３】
動作状態検出部は、データもしくは印刷ジョブを受け取るたびに行わず、例えば、初期設定時に一度のみ行い、送信可能な出力装置、代替印刷装置を予め設定することとしてもよい。また、探索範囲の設定に変更があった場合、前回設定時に探索された出力装置または印刷装置とは異なる出力装置もしくは印刷装置が新たに検出された場合、手動でもしくはネットワークからの制御により設定値がクリアされ再設定を必要とする場合など、種々のタイミングで行うこととしてもよい。
【００１４】
また、こうすれば、ユーザがジョブを送出する前に各印刷装置の動作状態を確認するため、例えば、印刷ジョブを受け付ける印刷装置が用紙切れなどのエラー状態であっても、他の印刷装置に印刷ジョブを全部数分移転することが可能となり、利便性が向上する。
【００１５】
本発明の印刷装置において、動作状態は、例えば、カセットの切り換え、カバーのオープンなど、種々の動作を対象とできるが、オンライン／オフラインの切り換えを用いることが好ましい。例えば、印刷装置特定部は、他の印刷装置のうち、オフラインの状態から、ユーザの操作によってオンラインへ変化した印刷装置を、代替印刷装置と特定することとしてもよい。直感に合う操作であるし、オンラインからオフラインへの変化は、エラー時にユーザの操作と無関係に生じ得ることに対し、オフラインからオンラインへの変化は通常生じないため、分散先を安定して特定できる。例えば、他の印刷装置をオフラインに設定するコマンドを、ＳＮＭＰパケットに付してブロードキャストすれば、ネットワークに負荷をかけることなく各印刷装置を容易にオフラインに設定することができる。こうすれば、簡易に分散印刷を実現することができ好適である。また、例えば、代替印刷装置を特定後に、全ての印刷装置をオンラインに設定するコマンドをＳＮＭＰに付してブロードキャストすれば、オフラインに設定された他の印刷装置をオンラインに設定し直すことができ好適である。印刷装置を特定した後に、強制的にオフラインに設定され、オンラインへ設定し直されなかった印刷装置に対して、個別に、オンラインに設定するコマンドをＳＮＭＰに付してユニキャストしオンラインに設定し直すこととしてもよい。
【００１６】
オフラインからオンラインに変化した場合のみに限らず、例えば、エラーが発生していない状況下でオンラインからオフラインに変化した印刷装置を代替印刷装置と特定することとしてもよいし、オンラインからオフラインに変化し、更にオンラインへ変化した印刷装置を代替印刷装置と特定することとしてもよい。オンライン／オフラインの切換に限らず、印刷装置に設置された所定のキーを選択することにより代替印刷装置を特定することとしてもよい。ユーザが印刷装置へ行った直接的な操作を、ネットワークを介して検出することが可能な方法であればよい。
【００１７】
本発明の出力制御装置または印刷装置において、検索部は、自身のアドレスと所定の関係にあるアドレスの範囲で出力装置または他の印刷装置を検索することとしてもよい。所定の関係とは、例えば、サブネットが同一であるなどとすることができる。こうすることにより、予め設定された所定の範囲内から送信先を特定することができるため利便性が向上する。また、検索部はアドレスに限らず、例えば、任意にグループ化されたグループ、セグメント、またはそれらを組み合わせた範囲内など、柔軟な条件で検索するよう設定できることとしても良い。
【００１８】
本発明の印刷装置において、印刷装置特定部は、印刷装置が受信した印刷ジョブに基づく印刷を、そのまま実行可能な印刷装置をネットワーク上で検索し、特定することが好ましい。例えば、自己と同機種の印刷装置を検索するようにしてもよい。用紙サイズ、カラー／モノクロの種別、両面印刷の可否、使用するフォント、解像度の種類などについて、印刷ジョブで指定された仕様を満足する印刷装置を探索するようにしてもよい。こうすることにより、印刷ジョブのデータ変換などをするまでなく、適正な印刷を行うことができる。また、各印刷装置での印刷物の品質、例えば、解像度やフォントなどを統一することができる。
【００１９】
本発明の印刷装置において、修正印刷ジョブの部数は、指定された印刷部数を代替印刷装置の台数で除算した部数とすれば、印刷ジョブを、代替印刷装置に均一に分配することができ、印刷処理時間の短縮を図ることができる。
【００２０】
本発明のように、印刷ジョブを他の印刷装置に移転する機能を有する印刷装置がネットワークに多数接続された印刷システムでは、いずれかの印刷装置（「親装置」と呼ぶ）から印刷ジョブを受信した印刷装置（「子装置」と呼ぶ）が本発明の機能により、親装置に印刷ジョブを逆移転する可能性がある。そのため、例えば、ジョブ移転部は、代替印刷装置から更に他の印刷装置への移転を禁止するための制御情報を付して修正印刷ジョブの移転を行うこととしてもよい。各代替印刷装置は、この制御情報が付されたジョブは、他の印刷装置への移転を行わないため、上述の逆移転を回避することができる。このような制御情報の付加に変えて、印刷部数の指定を「１部」にして修正印刷ジョブの移転を行うものとしてもよい。本発明の印刷装置は、複数部数の指定がされている場合に、印刷ジョブの移転を行うよう制御されるから、「１部」という指定により、子装置からの移転を抑止することができる。
【００２１】
本発明の印刷装置において、更に、代替印刷装置によって印刷される部数も含めて、指定された印刷部数を実現するよう、部数管理を行う部数管理部を備えることとすることが好ましい。部数管理は、種々のタイミングで行うことができる。例えば、代替印刷装置からの印刷完了通知を受けた時点で、印刷完了分とみなしてもよい。
【００２２】
本発明の印刷装置において、部数管理部は、印刷ジョブを送信した機器に対して、代替印刷装置によって印刷される部数も含めて、印刷済みの部数を通知することとしてもよい。こうすることにより、印刷済みの部数を、ネットワークを介して遠隔的に把握することができ、利便性が向上する。
【００２３】
本発明の印刷装置において、更に、印刷処理に関する情報を表示する表示部を備えており、ジョブ移転部は、修正ジョブを移転した代替印刷装置を特定する情報を表示部に表示することとしてもよい。印刷処理に関する情報とは、例えば、代替印刷装置、残部数などが挙げられる。こうすることにより、印刷処理の進捗状況を把握することができ、利便性が向上する。
【００２４】
本発明は、上述の出力制御装置、または印刷装置としての構成の他、ネットワークに接続された出力制御装置によってデータの送信を制御する出力制御方法、印刷装置によって印刷を行う印刷方法の発明として構成することもできる。また、上述の分散印刷を実現するコンピュータプログラム、およびそのプログラムを記録した記録媒体、そのプログラムを含み搬送波内に具現化されたデータ信号など種々の態様で実現することが可能である。各態様において先に示した種々の付加的要素を適用することが可能である。
【００２５】
本発明をコンピュータプログラムまたはそのプログラムを記録した記録媒体等として構成する場合には、出力装置を制御するプログラム、または印刷装置を制御するプログラム全体として構成するものとしても良いし、本発明の機能を果たす部分のみを構成するものとしても良い。また、記録媒体としては、フレキシブルディスクやＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、光磁気ディスク、ＩＣカード、ＲＯＭカートリッジ、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置（ＲＡＭやＲＯＭなどのメモリ）および外部記憶装置などコンピュータが読み取り可能な種々の媒体を利用できる。
【００２６】
【発明の実施の形態】
以下、本発明の実施の形態について、以下の項目に分けて説明する。
Ａ．第１実施例：
Ａ１．システム概要：
Ａ２．プリンタの機能ブロック：
Ａ３．分散印刷処理：
Ａ４．部数管理：
Ｂ．第２実施例：
Ｂ１．システム概要：
Ｃ．変形例：
【００２７】
Ａ．第１実施例：
Ａ１．システム概要：
図１は第１実施例としての印刷システムの構成を示す説明図である。本実施例では、図示するように、クライアントＣＬ、複数のプリンタＰＲＴ１〜ＰＲＴ４がＬＡＮに接続されている。各機器のＩＰアドレスは、ＬＡＮ上に設置されたＤＨＣＰサーバＤＳによって割り振られる。説明の便宜上、クライアントＣＬには「ＩＰｃ」、プリンタＰＲＴ１〜ＰＲＴ４には、それぞれ「ＩＰ１」〜「ＩＰ４」なるアドレスが設定されているものとする。
【００２８】
各プリンタには、以下に例示する通り、受信した印刷ジョブを、他のプリンタに分配して、分散印刷する機能が備えられている。一例として図中には、クライアントＣＬからプリンタＰＲＴ１に、印刷ジョブＪＯＢ０が送信された場合を例示した。印刷ジョブＪＯＢ０のデータには、発信元のＩＰアドレス「ＩＰｃ」、送信先のＩＰアドレス「ＩＰ１」、分配制御フラグＦｄ「１」および印刷部数「６０部」などの情報が含まれている。分配制御フラグＦｄとは、他のプリンタへの分配が許可されている場合に「１」、禁止されている場合に「０」に設定されるフラグである。
【００２９】
プリンタＰＲＴ１は、受信したジョブＪＯＢ０の分配制御フラグＦｄが「１」であるため、他の代替プリンタＰＲＴ２およびＰＲＴ３への分配を行う。この際、プリンタＰＲＴ１、ＰＲＴ２、ＰＲＴ３の３台で、印刷ジョブＪＯＢ０の印刷部数「６０部」を均等に分配して印刷するため、印刷部数を「２０部」に変更した修正印刷ジョブＪＯＢ１を生成する。この修正印刷ジョブＪＯＢ１については、分配制御フラグＦｄを「０」に設定し、再分配を禁止する。プリンタＰＲＴ１は、こうして生成された修正印刷ジョブＪＯＢ１を、プリンタＰＲＴ２およびプリンタＰＲＴ３に送出する。分配は禁止されているため、印刷部数が複数であっても他のプリンタへの分配は行われない。プリンタＰＲＴ２への送信時には、発信元はプリンタＰＲＴ１のＩＰアドレス「ＩＰ１」、送信先はプリンタＰＲＴ２のＩＰアドレス「ＩＰ２」が指定される。プリンタＰＲＴ３への送信時も同様に、発信元はプリンタＰＲＴ１のＩＰアドレス「ＩＰ１」、送信先はプリンタＰＲＴ３のＩＰアドレス「ＩＰ３」が指定される。
【００３０】
この分配過程では、プリンタＰＲＴ１自身も印刷を行う。プリンタＰＲＴ１は、他のプリンタＰＲＴ２〜ＰＲＴ３に分配された部数および自己が印刷した部数を併せて、総印刷部数を管理し、指定された部数「６０部」の印刷を実行する。また、進捗状況を操作パネルＯＰに、適宜、表示する。
【００３１】
図２は、操作パネルの構成例を示す説明図である。操作パネルＯＰには、ディスプレイＤＩＳＰおよび種々のボタンが用意されている。ディスプレイＤＩＳＰは、ＬＣＤパネルであり、エラー、分散印刷の状況などの情報を表示する。分散印刷時には、分散先、残部数を表示するものとした。
【００３２】
Ａ２．プリンタの機能ブロック：
図３は、プリンタの機能ブロックを示す説明図である。プリンタには、内部にＣＰＵ、メモリを有する制御ユニットが備えられており、図示する各機能ブロックは、この制御ユニットが実施するソフトウェアのモジュールとして構成されている。各機能ブロックをハードウェア的に構築しても構わない。
【００３３】
図では、プリンタが元来有している機能と、先に説明した分散印刷を実現するための追加機能とを分けて示した。元来有している機能としては、次の各ブロックが挙げられる。ＴＣＰ／ＩＰ２１は、ＴＣＰ／ＩＰを解釈して、ネットワークを介して外部との通信を行う。ＬＰＲｄ２３は、印刷用のプロトコルであるＬＰＲを解釈する。解釈部２２は、同じく印刷用のプロトコルであるＰｏｒｔ９１００を解釈する。プリントエンジン２４は、プリンタの各ハードウェアを制御して、印刷ジョブを実行する。パネル制御部２５は、ディスプレイを制御して、プリンタの動作状況の表示、ユーザによる設定内容の受け付けを行う。
【００３４】
プリンタに元来の機能のみが備えられている場合、印刷ジョブは、図中に破線で示す経路で、プリンタに受け渡され、実行される。ユーザが印刷命令を出すと、クライアントＣＬに備えられたアプリケーション１３は、ＬＰＲ１２およびＴＣＰ／ＩＰ１１を通じて、印刷用のプロトコルＬＰＲに従って生成された印刷ジョブをプリンタに送信する。プリンタでは、ＴＣＰ／ＩＰ２１およびＬＰＲｄ２３がこの印刷ジョブを受け取り、プロトコルを解釈した上で、印刷用のデータをプリントエンジン２４に受け渡す。
【００３５】
このようなプリンタの拡張スロットに、追加機能を実現するためのプログラムを記録したＲＯＭ３０を差し込むことにより、分散印刷用の各追加機能は実現される。以下に示す追加機能用の各機能ブロックは、分散印刷を制御するための分散処理部３４の制御下で動作する。
【００３６】
代替プリンタ管理部３７は、分散印刷を行う際に、分配先の候補となるプリンタの検索、ユーザの操作に基づく分配先となるべきプリンタの特定などを行う。部数管理部３６は、指定された部数、印刷済みの部数を管理する。印刷済みの部数には、自身がした部数の他、分散印刷により他のプリンタで印刷された部数も含まれる。発信元管理部３５は、分散印刷すべき印刷ジョブの発信元を管理する。発信元は、クライアント、プリンタなど種々の機器が考えられる。発信元管理部３５は、例えば、発信元のＩＰアドレス、ＭＡＣアドレス、クライアントかプリンタかの種別などを印刷ジョブ完了まで保持する。
【００３７】
ＬＰＲｄ３１は、ＬＰＲを解釈するとともに、元来備えられていたＬＰＲｄ２３の機能を停止する。この結果、図中に実線で示すように、クライアントＣＬからの印刷ジョブは、追加機能としてのＬＰＲｄ３１が受け取る。ＬＰＲｄ３１の機能により、クライアントＣＬは、プリンタに追加機能が用意されているか否かを意識することなく、印刷ジョブを送信するだけで実施例の分散印刷機能が利用可能となる。
【００３８】
ＬＰＲ３２は、ＬＰＲプロトコルに従って、他のプリンタに印刷ジョブを分配する機能を奏する。クライアントＣＬに備えられているＬＰＲ１２と同様の機能である。Ｐｏｒｔ９１００の送信部３３は、Ｐｏｒｔ９１００のプロトコルに従って、印刷ジョブを送信する機能を奏する。本実施例では、送信先は、プリンタが元来備えているＰｏｒｔ９１００の解釈部２２である。こうすることで、元来備えているＬＰＲｄ２３が機能を停止させられた状況下でも、自分自身での印刷を実行することができる。
【００３９】
自身での印刷は、分散処理部３４から直接、プリントエンジン２４に印刷データを受け渡すことによって実現してもよい。但し、Ｐｏｒｔ９１００を介してネットワーク上のプロトコルを利用して、受け渡す場合には、ＲＯＭ３０によって追加される機能を、プリンタとは別体のプリントサーバやホームゲートウェイなどの装置に容易に構築可能となる利点がある。
【００４０】
実施例では、各プリンタに、上述のＲＯＭ３０が備えられているものとして説明するが、分散印刷実現のためには、上述の追加機能が、ネットワーク上のいずれか一台のプリンタで実現されていれば足りる。但し、各プリンタにＲＯＭ３０が備えられていれば、ユーザは、いずれのプリンタに印刷ジョブを出力しても、分散印刷機能を利用可能となるため、システムの利便性が向上するという利点がある。
【００４１】
Ａ３．分散印刷処理：
図４及び図５は分散印刷処理のフローチャートである。プリンタの制御ユニットが実行する処理である。プリンタＰＲＴ１が印刷ジョブを受信し、プリンタＰＲＴ２に分散する場合を例にとって、説明する。
【００４２】
プリンタＰＲＴ１は、印刷ジョブを受信すると（ステップＳ１０）、部数カウンタを、設定された印刷部数にセットする（ステップＳ１１）。また、後述する完了通知のため、ＩＰアドレスなど印刷ジョブの発信元の情報を保存する。
【００４３】
プリンタＰＲＴ１は、分散制御フラグＦｄが「１」であり、かつ、設定された印刷部数が２部以上の場合には、以下に示す分散処理を行う（ステップＳ１２）。即ち、プリンタＰＲＴ１は、後述する方法で、分散先となる代替プリンタを特定し（ステップＳ１３）、送信用およびプリンタＰＲＴ１自身が印刷するために、印刷部数を変更した修正印刷ジョブを生成する（ステップＳ１４）。本実施例では、印刷部数を分散印刷装置台数で除算した結果を修正印刷ジョブの印刷部数として設定する。次に、代替プリンタへ修正印刷ジョブを送信する（ステップＳ１５）。代替プリンタは、１台である必要はなく、複数台であってもよい。
【００４４】
プリンタＰＲＴ１は、これらの分散処理と合わせて、自身でも印刷を実行する（ステップＳ１６）。分配制御フラグＦｄが「０」の場合または指定された印刷部数が１部の場合（ステップＳ１２）、上述の分散処理をスキップし、印刷を実行する（ステップＳ１６）。
【００４５】
本実施例では、各プリンタは、複数部数の印刷ジョブを受け取ると、１部印刷を完了するたびに印刷完了通知を送出する。プリンタＰＲＴ１は、自身の印刷が１部完了するごとに、部数カウンタを更新する（ステップＳ１７）。即ち、自身の印刷完了通知を受け、部数カウンタから「１部」引くことになる。分散先のプリンタから印刷完了通知を受けた場合にも同様に、部数カウンタから「１部」引くことになる。
【００４６】
プリンタＰＲＴ１は、自身の印刷ジョブが終了したか否かを判断し、以下の処理を行う（ステップＳ１８）。印刷ジョブが終了していない場合には、ステップＳ１６に戻り印刷を続行する。印刷ジョブが終了している場合には、部数カウンタを参照し、総印刷部数の残部数、即ち、代替印刷装置における未印刷部数を確認する（ステップＳ１９）。残部数があるか否かを判断し（ステップＳ２０）、残部数がある場合には、ステップＳ１９に戻り全ての印刷が完了し残部数が無くなるまで、所定の間隔でカウンタの確認を繰り返す。印刷が完了すると、印刷ジョブの発信元に完了通知を行う（ステップＳ２１）。
【００４７】
図示する通り、代替プリンタとして印刷ジョブが分散されたプリンタＰＲＴ２では以下の処理が行われる。本実施例では、プリンタＰＲＴ２が受け取る印刷ジョブには、２０部の印刷部数の指定が含まれる。プリンタＰＲＴ２は、印刷ジョブを受信すると（ステップＳ３０）、他のプリンタへの分散を行わずに印刷を実行し（ステップＳ３１）、印刷が一部完了するごとに、完了通知を、印刷ジョブの発信元であるプリンタＰＲＴ１に送信する（ステップＳ３２）。次に、印刷ジョブが完了したか否かを判断し（ステップＳ３３）、完了していなければ、ステップＳ３１に戻り印刷を続行する。印刷ジョブが完了した場合には、処理を終える。
【００４８】
図６は代替プリンタ特定処理のフローチャートである。先に説明した代替プリンタ特定処理（図４のステップＳ１３）の詳細内容に相当する。以下、プリンタＰＲＴ１の制御ユニットが実施するものとして処理内容を説明する。
【００４９】
プリンタＰＲＴ１は、まず同一機種のプリンタをネットワークから検索する（ステップＳ４１）。例えば、ネットワーク上のプリンタに対して、ＳＮＭＰを利用して、ブロードキャストによって機種を問い合わせることにより、検索することができる。
【００５０】
次に、プリンタＰＲＴ１は、検索された中から、印刷ジョブで指定されている印刷仕様を満たすプリンタを抽出する（ステップＳ４２）。図中に印刷仕様の例を示した。例えば、印刷用紙のサイズ、カラー／モノクロの別、両面印刷の要否などが印刷仕様として挙げられる。各印刷装置の仕様も、ＳＮＭＰを利用して問い合わせることができる。本実施例では、印刷用紙およびインクなどの消耗品については、残量も合わせて問い合わせることとした。
【００５１】
図示する通り、印刷仕様では、Ａ４サイズの用紙、カラー印刷、および両面印刷が指定されているものとする。これらの各項目について、検索されたプリンタＡ，Ｂ，Ｃの問い合わせ結果は、図示するとおりである。プリンタＡは、Ａ３サイズおよびＡ４サイズの用紙への印刷、カラー印刷、両面印刷が可能であり、用紙及びインクの残量も「多」であるため、全ての仕様を満足し、「Ａｖａｉｌａｂｌｅ」、即ち、分散先候補プリンタと判断される。
【００５２】
プリンタＢは、Ｂ４サイズの用紙のみが取り扱い可能であるため、印刷仕様を満足しない。また、プリンタＣは、インクの残量が少ないため、印刷仕様を満足しない。従って、これらのプリンタは、Ｎ．Ａ．（Ｎｏｔ  Ａｖａｉｌａｂｌｅ）、即ち、分散先候補プリンタではない、と判定される。
【００５３】
消耗品の残量についての判断は、予め設定された所定の基準値との比較で行うものとしてもよいし、印刷ジョブでの指定内容を考慮してもよい。例えば、１００部の印刷が指定されている場合には、１００枚を基準として用紙の残量を評価することができる。残量については、例えば、印刷データのデータ量を基準として、予想されるインク残量を算出し、評価することができる。消耗品の残量を考慮せず、プリンタの抽出を行っても構わないが、残量を考慮することにより、印刷途中での消耗品不足によるエラーを回避することができる利点がある。特に多くの部数を印刷する場合には、エラーに起因する部数把握の混乱を抑制することができる。
【００５４】
こうして抽出された全プリンタの動作状態をオフラインに統一する（ステップＳ４３）。統一する方法としては、例えば、ＳＮＭＰパケットにオフライン設定情報を付してブロードキャストすることにより設定できる。各プリンタに個別にＳＮＭＰパケットをユニキャストすることとしてもよい。クライアントＣＬから印刷ジョブを送出したユーザは、図に破線で示すように、分散先として所望するプリンタまで行き、手動でオンラインに設定する。かかる設定は、印刷ジョブを受けと取るたびに行うこととしてもよいし、例えば、初期設定時に予め設定しておくこととしてもよい。
【００５５】
プリンタＰＲＴ１は、ステップＳ４２において「Ａｖａｉｌａｂｌｅ」と判定された分散先候補プリンタであり、動作状態がオフラインからオンラインに変化したプリンタを代替プリンタとして特定する（ステップＳ４４）。この変化は、オフラインに設定した後、３０秒以内に行うものとした。最後にオンラインへの変化が検出されてから１０秒経過した時点で検出を終えるものとしてもよい。図中にプリンタの動作状態を例示した。この例では、ステップＳ４２において、候補プリンタと判定されたＡ，Ｄ，Ｅ，Ｆの４台が挙げられている。プリンタＡおよびＦは、ユーザによりオンラインに設定されたことが反映され、動作状態が「ＯＮ」の状態であるため、「Ａｖａｉｌａｂｌｅ」、即ち、代替プリンタとして適用可能と判定される。プリンタＥおよびＦについては、オフラインのままであるため、「Ｎ．Ａ」、即ち、代替プリンタとして適用不可と判定される。代替プリンタ特定後に、オフラインにされた全てのプリンタを、オンラインに設定することとすれば、代替プリンタ以外のプリンタは、通常通り使用できるようになるので好適である。かかる場合には、例えば、オフラインに設定した場合と同様に、ＳＮＭＰパケットにオンライン設定情報を付してブロードキャストすることで容易に設定可能である。各プリンタに個別にＳＮＭＰパケットをユニキャストすることとしてもよい。
【００５６】
以上の処理によって、代替プリンタが特定される。代替プリンタの特定では、本実施例で考慮した種々の条件の一部を省略しても差し支えない。例えば、ステップＳ４１の処理を省略し、異機種のプリンタも候補に含めてもよい。だたし、同一機種とすれば、印刷ジョブに含まれる印刷データをそのまま利用可能であるという利点、機種間でのフォントの差異などが回避できるため印刷結果の均一化を図ることができる利点がある。
【００５７】
Ａ４．部数管理：
図７は分散印刷の実行例を示す説明図である。プリンタＰＲＴ１が６０部の印刷を受け、プリンタＰＲＴ２、ＰＲＴ３に分散し、印刷を行う場合のシーケンスを例示した。
【００５８】
図示するとおり、プリンタＰＲＴ１が印刷ジョブを受け付けた時点では、部数カウンタは６０部にセットされる。その後、プリンタＰＲＴ１は、自身が印刷ジョブのデータ読み込み及び印刷を行うとともに、これと同期してプリンタＰＲＴ２およびＰＲＴ３に印刷部数を修正した修正印刷ジョブを分配する。６０部を３台の印刷装置で均等に分散し印刷するため、修正印刷ジョブに設定される印刷部数は、２０部となる。
【００５９】
プリンタＰＲＴ１は、自身での印刷が１部完了した時点で部数カウンタを更新するため、この時点で、部数カウンタは５９部となる。プリンタＰＲＴ３では、受信した修正印刷ジョブを読み込み、印刷を開始する。１部印刷を完了するごとに、印刷ジョブ送信元であるプリンタＰＲＴ１へ印刷完了通知を送信する。プリンタＰＲＴ１は、この印刷完了通知を受信した時点で、部数カウンタを更新するため、この時点で部数カウンタは５８部となる。
【００６０】
プリンタＰＲＴ１、ＰＲＴ３で印刷が行われている間に、プリンタＰＲＴ２では、他の印刷ジョブの印刷が完了し、プリンタＰＲＴ１から送信された修正印刷ジョブを読み込み、印刷を開始する。プリンタＰＲＴ２から最初の印刷完了通知を受け取るまでの間に、プリンタＰＲＴ１、ＰＲＴ３では２部、３部・・・と印刷が行われており、部数カウンタは、逐次、更新されている。プリンタＰＲＴ２から、最初の印刷完了通知を受信した時点で部数カウンタは４８部となる。
【００６１】
以上説明した第１実施例の印刷装置によれば、小規模なシステムで、ユーザが所望する分散範囲を反映した分散印刷を実現することができる。また、同一機種を代替プリンタの候補として予め検索するため、印刷結果の均一化を図ることができる。また、部数管理を行い、適宜、操作パネルに表示することにより、印刷の進捗状況を管理できるため、利便性が向上する。
【００６２】
Ｂ．第２実施例：
Ｂ１．システム概要：
第１実施例では、ネットワークに接続されたプリンタから、同一機種のプリンタを検索し分散先の候補プリンタとして処理を行うこととした。第２実施例では、分散元のプリンタと同一サブネットの範囲内に接続されたプリンタを、候補プリンタとして検索することとした。第１実施例におけるステップＳ４１における「同一機種のプリンタ検索」に代えて、「同一サブネットのプリンタ検索」とすることで実現可能である。「同一機種のプリンタ、かつ、同一サブネットのプリンタ検索」等、検索条件を組み合わせてもよい。ネットワークアドレスの取得方法は種々存在するが、例えば、ＩＰパケットに機種情報を含む応答を行うよう応答命令を付してブロードキャストし、応答パケットからプリンタを検索することとしてもよい。
【００６３】
図示するようにＬＡＮ１には、クライアントＣＬ１０と、本発明のジョブ移転機能を備えた印刷装置ＰＲＴ１０〜ＰＲＴ１３が接続されている。ＬＡＮ２には、クライアントＣＬ２０と、同じく本発明のジョブ移転機能を備えた印刷装置ＰＲＴ１５〜ＰＲＴ１８が接続されている。ＬＡＮ１とＬＡＮ２は、ルータＲＴにより接続されている。
【００６４】
クライアントＣＬ１０からプリンタＰＲＴ１０へ、印刷部数が２０部である情報を含む印刷ジョブを送出すると、プリンタＰＲＴ１０は、印刷ジョブを解析し、同一サブネットを持つプリンタＰＲＴ１１〜ＰＲＴ１３を検出する。このとき、ユーザは、例えば、物理的な設置位置が近いという理由でプリンタＰＲＴ１１とプリンタＰＲＴ１５に対して分散先と設定する操作を行った場合、プリンタＰＲＴ１５は、別のサブネットを持つため、代替プリンタとはならず、プリンタＰＲＴ１１のみが代替プリンタとして特定される。プリンタＰＲＴ１０は、２台で印刷処理を行うため、印刷部数を１０部とした修正印刷ジョブを作成し、プリンタＰＲＴ１１へ送信する。
【００６５】
以上説明した第２実施例の印刷装置によれば、予め設定された条件の範囲内で検索されたプリンタから、ユーザの操作に基づいて代替プリンタを特定することができるため、柔軟に検索条件を設定することができ、利便性が向上する。このようなシステムは、例えば、使用する機器をネットワークごとに別々に管理しているような場合に、特に有用である。
【００６６】
Ｃ．変形例：
Ｃ１．変形例１：
本発明の第１実施例では、分散先候補となる全プリンタをオフラインに統一し、ユーザの操作によってオンラインに変化したプリンタを代替プリンタとすることとしたが、これに限られない。例えば、全候補プリンタのフロントパネルを閉じておき、ユーザにより開けられたプリンタを代替プリンタと特定することとしてもよいし、プリンタの用紙カセットを監視し、差し替えられたプリンタを代替プリンタと特定することとしてもよい。ユーザがプリンタに対して行った直接的な操作を検出し、かかる操作基づき代替プリンタを特定することとすればよい。
【００６７】
Ｃ２．変形例２：
本発明の第２実施例では、同一サブネットを持つプリンタを検索することとしたが、例えば、プリンタＰＲＴ１１にＩＰアドレスが近い範囲のプリンタのみを抽出するなど、検索範囲に種々の制限を課してもよい。また、例えば、任意にグループ化されたグループなど種々の制限を適宜組み合わせて検索することとしてもよい。
【００６８】
Ｃ３．変形例３：
本発明の第１実施例では、プリンタの操作パネルに分散印刷の進捗状況を表示することとしたが、例えば、ジョブ発信元のクライアントＣＬのディスプレイにかかる進捗状況を表示することとしてもよい。また、分散先の候補となるプリンタをクライアントＣＬのディスプレイに表示し、ユーザによる代替プリンタ選択時に、プリンタへの直接操作に代えて、クライアントからの選択入力により代替プリンタを特定することとしてもよい。
【００６９】
Ｃ４．変形例４：
本発明の第１実施例では、「同一機種のプリンタ検索」とし、第２実施例では「同一サブネットのプリンタ検索」として分散先候補プリンタを検索したが、例えば、通信速度を考慮して候補プリンタを検索してもよい。各プリンタとの通信速度は、例えば、ＳＮＭＰにおける応答や「Ｐｉｎｇ」コマンドへの応答所要時間などから評価することが可能である。所定以上の通信速度で通信可能なプリンタのみを候補プリンタとして検索することとすれば、印刷ジョブの速やかな移転、所要時間の短縮を図ることができる。
【００７０】
Ｃ５．変形例５：
本発明の第１実施例および第２実施例では分配制御フラグＦｄを使用して分散の可否を設定することとしたが、例えば、印刷ジョブを受信するＴＣＰ／ＩＰ上のポート番号別に分配の可否を設定することとしてもよい。例えば、本発明の代替印刷機能を備える印刷装置に、「９１００」というポートと「１９１００」というポートが設定されている場合、「９１００」で受信した印刷ジョブは分散せず、「１９１００」で受信した印刷ジョブは、同一ネットワーク上に存在する本発明の代替印刷機能を備える別の印刷装置の「９１００」ポートに修正印刷ジョブを送出するという設定により可能となる。こうすれば、分散フラグＦｄは不要となり、簡易な構成で分散制御を実現することができる。
【００７１】
Ｃ６．変形例６：
本発明の第１実施例および第２実施例では、ユーザが直接操作を行った印刷装置を分散先印刷装置と特定することとしたが、ユーザが直接操作を行った印刷装置を、非分散先印刷装置として特定することとしてもよい。こうすれば、複数設置された印刷装置のうち、例えば、１台だけ機種が古い印刷装置が存在し、分散先としたくない、といった場合に、ユーザは、かかる印刷装置に対してのみ操作を行えば、非分散先として指定されるため、ユーザの負担を削減することができ、好適である。
【００７２】
以上、本発明の種々の実施例について説明したが、本発明はこれらの実施例に限定されずその趣旨を逸脱しない範囲で種々の構成を取ることができることはいうまでもない。例えば、印刷装置に限らず、プロジェクタ、ディスプレイ、音響機器などその他の種々の出力装置に適用可能である。
【図面の簡単な説明】
【図１】第１実施例における印刷システムの構成を示す説明図である。
【図２】第１実施例における操作パネルの構成例を示す説明図である。
【図３】第１実施例におけるプリンタの機能ブロックを示す説明図である。
【図４】第１実施例における分散印刷処理のフローチャートである。
【図５】第１実施例における分散印刷処理のフローチャートである。
【図６】第１実施例における代替プリンタ特定処理のフローチャートである。
【図７】第１実施例における分散印刷の実行例を示す説明図である。
【図８】第２実施例におけるシステムの構成を示す説明図である。
【符号の説明】
１１…ＴＣＰ／ＩＰ    １２…ＬＰＲ
１３…アプリケーション
２１…ＴＣＰ／ＩＰ
２２…解釈部
２３…ＬＰＲｄ
２４…プリントエンジン
２５…パネル制御部
３１…ＬＰＲｄ
３２…ＬＰＲ
３３…送信部
３４…分散処理部
３５…発信元管理部
３６…部数管理部
３７…代替プリンタ管理部
【図１】
2004258830.tif 000003
【図２】
2004258830.tif 000004
【図３】
2004258830.tif 000005
【図４】
2004258830.tif 000006
【図５】
2004258830.tif 000007
【図６】
2004258830.tif 000008
【図７】
2004258830.tif 000009
【図８】
2004258830.tif 000010