(57)【要約】      （修正有）【課題】印画用メディアの不足に起因するリカバリー処理を低減する。【解決手段】複数のプリンタを備えるプリントシステム１において、各プリンタは２個の受信バッファを備え、印画用メディアの残量が十分にあり、印画用メディア不足が生じない場合にはこれら２個の受信バッファを用いて印刷処理を行い、一方、印画用メディア不足が生じるおそれがある場合には１個の受信バッファのみを用いて印刷処理を行う。各プリンタは、受信した印画データを格納し読み出す２つの受信バッファと、印画データを印画する印画用メディアの残量を検知する残量検知手段８と、印画処理制御手段９とを備え、印画処理制御手段は、印画用メディアの残量が設定量よりも多い場合には、２つの受信バッファに対して受信した印画データを格納し、印画用メディアの残量が設定量よりも少ない場合には、一つの受信バッファに対してのみ受信した印画データを格納する。【選択図】図１
2008307796.tif 000002
【特許請求の範囲】
【請求項１】
印画用メディアを単位として印刷処理を行う複数台のプリンタユニットを備え、当該複数台のプリンタユニットによって印画した印画物を設定された順序に従って排出するプリントシステムにおいて、
前記各プリンタユニットは、
受信した印画データを格納し読み出す少なくとも２つの受信バッファと、
印画データを印画する印画用メディアの残量を検知する残量検知手段と、
印画処理制御手段とを備え、
前記印画処理制御手段は、
印画用メディアの残量が設定量よりも多い場合には、前記少なくとも２つの受信バッファに対して受信した印画データを格納し、
印画用メディアの残量が設定量よりも少ない場合には、前記少なくとも２つの受信バッファの何れか一の受信バッファに対してのみ受信した印画データを格納することを特徴とする、プリントシステム。
【請求項２】
前記印画処理制御手段は、
印画用メディアの残量が設定量よりも少ない場合には、前記少なくとも２つの受信バッファの何れか一の受信バッファに対して受信した印画データを格納し、受信した印画データの残余の印画データを他のプリンタユニットに送信することを特徴とする、請求項１に記載のプリントシステム。
【請求項３】
各プリンタユニットはインクリボンの残り枚数を記録する残り枚数記録手段を備え、
前記残量検知手段は、前記残り枚数記録手段に記憶するインクリボンの残り枚数を取得し、当該リボンの残り枚数から印画用メディアの残量を推測することを特徴とする、請求項１に記載のプリントシステム。
【請求項４】
前記印画処理制御手段は、
受信バッファの空きバッファ数を空きバッファ判定値と比較し、
空きバッファ数が空きバッファ判定値よりも大きい場合には印画処理を行い、
空きバッファ数が空きバッファ判定値よりも小さい場合には他のプリンタユニットに切り替えることを特徴とする、請求項１に記載のプリントシステム。
【請求項５】
前記印画処理制御手段は、
送信済み印画データの個数を計数する第１のカウンタと、印画済みの印画データの個数を計数する第２のカウンタとを備え、
前記第１のカウンタのカウンタ値から第２のカウンタのカウンタ値を減算した差分値に基づいて受信バッファの空きバッファ数を算出し、
印画用メディアの残量が許容数以下の場合に“０”を前記空きバッファ判定値に設定し、
印画用メディアの残量が許容数を超える場合に“１”を前記空きバッファ判定値に設定し、
前記差分値が空きバッファ判定値以下の場合には印画処理を行い、
前記差分値が空きバッファ判定値を超える場合には他のプリンタユニットに切り替えることを特徴とする、請求項４に記載のプリントシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数台のプリンタを備え、この複数台のプリンタから定められた排出順で印画物を排出するプリントシステムに関する。
【背景技術】
【０００２】
複数台のプリンタを備えたプリンタ機構は種々提案されている。例えば、複数のプリンタと共通するソータを備え、各プリンタに画像信号を振り分けて、各プリンタによって交互にページ順に応じてプリントを出力して、ソータにページ順に揃えて排出する構成が提案されている（特許文献１参照）。
【０００３】
また、複数台のプリンタをグループ化し、エラー発生時には同じグループ内のプリンタにリカバリー処理を行わせることによってリカバリーのための待機を不要とし、また、プリントエラーによる印刷のスループットの低下を防止する構成が提案されている（特許文献２参照）。
【０００４】
また、複数台のプリンタによる印刷において、決められたプリンタ順にプリントを割り振った場合に、各プリンタの稼働率やプリント材料の残量にばらつきが生じるといった問題を解決するために、振分手段によって印刷出力済画像データ数が少ない順に優先的に画像データを振り分けたり、同一の画像データを同一の画像出力装置に画像データを振り分ける等の処理を行うことが提案されている（特許文献３参照）。
【０００５】
一方、受信バッファを持たない一台のプリンタによる印刷において、複数個のイメージバッファを備え、所定行分のパターンデータをこれらの複数個のイメージバッファに交互に格納して印字を行う構成が提案されている（特許文献４参照）。
【０００６】
複数個のバッファを備え構成としては、上記特許文献４の他に、特許文献５〜７が提案されている。特許文献５、６には、複数のコネクタに対してそれぞれバッファを接続し、これら複数のバッファに格納されるデータをバッファ選択回路で選択してイメージデータを形成する構成が示され、特許文献７には、１ページ文のドットデータを複数に分割して格納する複数個のバンドバッファの構成が示されている。
【０００７】
【特許文献１】特開平８−３０５２２１号公報
【特許文献２】特開平１０−１０５３５０号公報（段落００６６）
【特許文献３】特開２００５−１３８５５１号公報（００１４，００１５）
【特許文献４】特開昭６４−８０７９号公報
【特許文献５】特開平５−４２７２６号公報
【特許文献６】特開平７−３２６７１号公報
【特許文献７】特開平７−１７０７４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上記したように、複数台のプリンタを用いた構成によって、多量のプリントを所定順に効率よく排出する構成が知られている。また、上記したように、複数のバッファを用意し、一ページ分のデータの一行分あるいは複数行分をこれらの各バッファに格納する構成も知られている。
【０００９】
一方、１行あるいは複数行を単位として行う印刷処理の他に、ページプリンタのように一枚の印画用メディアを単位として印刷処理を行う場合がある。例えば、インクリボンを印画用メディアに転写することで印刷処理を行う。この印刷処理では、例えば、インクリボンカセットに保持されたインクリボンを印画用メディアの記録用紙の記録面に当接させながら、ヘッドによって所定位置にインクを記録する。この印刷において、カラー印刷などの多色印刷を行う場合には、インクリボンに印刷を行う色に対応したイエロー、マゼンタ、シアン等の複数のインク部分を、インクリボンの巻き取る方向に沿って順に用意しておき、インクリボンを巻き取りながらインク部分をヘッドに対して通過させる動作を色毎に繰り返す。この際、記録用紙の同一印刷領域に各色の印刷を重ねて行わせるために、記録用紙を往復動させる。この印刷処理では、印画用メディアとインクリボンとが一対一で対応しており、印画用メディアを単位として印刷処理が行われる。
【００１０】
前記したような複数台のプリンタを用いる構成において、各プリンタに複数個のバッファを設け各バッファに一印画用メディア分のデータを格納して印刷処理を行う構成を組み合わせることによって、多量のプリントを所定順に効率よく、より高速に排出するという効果が期待される。
【００１１】
一方、一般に印刷中にエラーが発生した場合、エラーが発生した時点で印刷中の印画データは印刷が中断されるため、リカバリー処理によって印刷されない印画データが生じないようにしている。このリカバリー処理では、エラーが解消した後に同じ印画データをプリンタに再度送信し、再度印刷処理を繰り返すことで行う。
【００１２】
複数台のプリンタを用いる構成と、各プリンタに複数個のバッファを設け各バッファに一印画用メディア分のデータを格納して印刷処理を行う構成とを組み合わせた場合には、印刷中に発生するエラーの他に、印画用メディアを単位として印刷処理を行うことに起因するエラーが発生する。そのため、印刷エラーに対してリカバリー処理を行う他に、印画用メディアを単位とすることで生じるエラーに対してリカバリー処理を行う必要がある。
【００１３】
図２１は、印画用メディアを単位として行う印刷処理であることに起因するエラーと、このエラーに対するリカバリー処理を説明するための図である。図２１では、２つのバッファを備え、このバッファに一印画用メディアに対応する印画データを格納する構成例を示している。また、ここでは、印画用メディアの残量が３の状態から印刷処理を行う場合を示している。
【００１４】
図２１（ａ）では、一方の印画バッファに印画データＡを格納し、他方の印画バッファに印画データＢを格納し、印画用メディアａに印画データＡを印刷する。図２１（ｂ）では、印画データＡの印刷が終了した後、印画用メディアｂに印画データＢを印刷する。このとき、印画データＡが格納されていた印画バッファには次の印画データＣを格納する。図２１（ｃ）では、印画データＢの印刷が終了した後、印画用メディアｃに印画データＣを印刷する。このとき、印画データＢが格納されていた印画バッファには次の印画データＤを格納する。この段階では、印画用メディアの残りは無くなる。
【００１５】
次に、図２１（ｄ）において、印画用メディアに残余が不足したため、印画データＤを印刷することができないというエラーが発生する。そのため、印画バッファに格納された印画データＤを印刷処理することができないため、印画データＤを廃棄し、不足した印画用メディアを補充した後、印画データを再送して印画バッファに格納するというリカバリー処理を行う必要がある。
【００１６】
一般に、印画用メディアの不足に起因するリカバリー処理は、印画用メディアが不足すれば必ず発生するため、印刷エラーに起因するリカバリー処理よりも発生頻度が高く、印刷枚数の増加に比例して増加する。そのため、印画用メディアを単位として印刷処理を行う場合には、この印画用メディアの不足に起因するリカバリー処理が低減されることが望まれる。
【００１７】
また、複数台のプリンタを用いる構成において、各プリンタに複数のバッファを設けた構成では、各プリンタのそれぞれにおいて印画用メディアの不足に起因するリカバリー処理が発生することになるため、リカバリー処理を低減するという要請はより大きなものとなる。
【００１８】
そこで、本発明は上記の課題を解決して、印画用メディアの不足に起因するリカバリー処理を低減することを目的とする。
【課題を解決するための手段】
【００１９】
本発明は、複数のプリンタユニットを備えるプリントシステムにおいて、各プリンタユニットに２個の受信バッファを設けており、印画データを印刷する印画用メディアの残量が十分にあり、印画用メディア不足が生じない場合にはこれら２個の受信バッファを用いて印刷処理を行い、一方、印画用メディア不足が生じるおそれがある場合にはこれら２個の受信バッファの１個の受信バッファのみを用いて印刷処理を行う。これによって、印画用メディアの不足に起因するリカバリー処理を低減するという目的を達成する。
【００２０】
印画用メディアの残量が十分である場合には、各プリンタが備える２個の受信バッファの内で、一方の受信バッファに格納している印画データを印刷処理する間に、他方の受信バッファに印画データを格納する処理を行う。これによって、受信バッファには常に次の印画データが用意されているため、途切れることなく印刷処理を行うことができ、印画物のスループットを高めることができる。
【００２１】
一方、印刷処理の間に、印画用メディアの残量が足りなくなった場合には、２個の受信バッファの内の１個の受信バッファにのみ印画データを格納するように制御し、他方の受信バッファには印画データが格納されないようにする。このように印画データを格納する受信バッファを１個とすることによって、受信バッファに格納される印画データは必ず印刷処理されことになり、受信バッファに格納されただけで印刷されずに破棄されることになる印画データの発生を抑制することができる。
【００２２】
この受信バッファの個数を１個とすることによって、そのプリンタユニットの印刷のスループットは低下するが、受信バッファに格納する印画データの破棄、およびエラー解消後のリカバリー処理による印画データの再送信を不要とすることができる。
【００２３】
また、複数台のプリンタユニットを備える構成とすることによって、別のプリンタユニットが備える受信バッファ中の空きバッファに次の印画データを格納することができ、別のプリンタで印刷処理を行うことができる。プリントシステム全体から見た場合には、印画用メディアが不足したプリンタユニットが発生したときであっても、別のプリンタユニットによって印刷処理が行われるため、印刷処理は途切れることなく行われるものと認識され、プリントシステム全体の印刷のスループットの低下を防ぐことができる。
【００２４】
本発明のプリントシステムは、印画用メディアを単位として印刷処理を行う複数台のプリンタを備え、これら複数台のプリンタユニットによって印画した印画物を設定された順序に従って排出する。各プリンタユニットは、受信した印画データを格納し読み出す２つの受信バッファと、印画処理制御手段とを備える。
【００２５】
受信バッファは、アプリケーション等から送信された印画データを格納しておき、逐次読み出して印画データを展開することによってページデータを形成する。この受信バッファには、一つの印画用メディアに印刷するに要する印画データが格納され、ページデータが形成されるまで印画データを保持する。本発明はこの受信バッファを２個備え、各受信バッファには、一つの印画用メディアに印刷するに要する印画データが格納され、一受信バッファに格納される印画データによって一つの印画用メディアの印刷が行われる。
【００２６】
２個の受信バッファにそれぞれ印画データが格納されている場合には、各受信バッファに格納される印画データを順次読み出して印刷処理を行うことによって、それぞれ一つの印画用メディアに印刷を行う。また、１個の受信バッファに印画データが格納されている場合には、この受信バッファに格納される印画データを読み出して印刷処理を行うことによって、一つの印画用メディアに印刷を行う。
【００２７】
印画用メディアは、印画データに基づいて印刷を行う媒体であり、単票用紙やロール紙等の連続用紙などを適用することができる。
【００２８】
残量検知手段は、印画データを印画する印画用メディアの残量を検知する。残量検知手段は、印画用メディアの初期枚数から使用枚数を減算して計数する他、インクリボンを用いて印刷を行う場合には、インクリボンと印画用メディアとは一体一の対応で使用される関係に基づいて、インクリボンの残量から印画用メディアの残量を推測することができる。
【００２９】
インクリボンの残量から印画用メディアの残量を推測する場合には、各プリンタユニットにインクリボンの残り枚数を記録する残り枚数記録手段を設ける。残量検知手段は、この残り枚数記録手段に記憶するインクリボンの残り枚数を取得し、取得したリボンの残り枚数から印画用メディアの残量を推測する。
【００３０】
印画処理制御手段は、残量検知手段が検知する印画用メディアの残量に基づいて、受信データの受信バッファへの格納を制御する。印画処理制御手段は、印画用メディアの残量が設定量よりも多い場合には、２つの受信バッファに対して受信した印画データを格納し、印画用メディアの残量が設定量よりも少ない場合には、２つの受信バッファの何れか一方の受信バッファに対してのみ受信した印画データを格納する。
【００３１】
この制御によって、次回の印刷用として受信バッファに格納する印画データが、印画用メディアの残量が少ないために使用できなくなる場合には、１つの受信バッファのみに受信した印画データを格納することで、廃棄せざるを得ない印画データが受信バッファに格納されないようにする。
【００３２】
さらに、本発明のプリントシステムは複数台のプリンタユニットを備える構成であるため、印画用メディアの残量が不足したプリンタを除く他のプリンタにおいて、空きバッファが存在するプリンタの受信バッファに、印画用メディアの残量が不足したプリンタユニットで印刷予定であった印画データを送信することで、印刷処理を続行することができる。
【００３３】
さらに、印画処理制御手段は、受信バッファの空きバッファ数を空きバッファ判定値と比較し、空きバッファ数が空きバッファ判定値よりも大きい場合には印画処理を行い、空きバッファ数が空きバッファ判定値よりも小さい場合には他のプリンタユニットに切り替える。空きバッファ判定値は、印画用メディアの有効残量の有無を現す値であり、受信バッファの空きバッファ数とこの空きバッファ判定値とを比較することによって、印画用メディアの最少残量を印刷するに必要な空きバッファの有無を判定することができる。空きバッファ判定値は、例えば、印画用メディアの残り枚数が設定値以下の場合には“０”とし、印画用メディアの残り枚数が設定値よりも大きい場合には“１”とする。
【００３４】
空きバッファ判定値“０”は、印画用メディアとして利用可能な有効残量が少ないことを表し、空きバッファ判定値“１”は、印画用メディアとして利用可能な有効残量が有ることを表している。
【００３５】
また、空きバッファ数は、受信バッファにおいて未処理の印画データの個数と相補の関係にある。したがって、空きバッファ数が空きバッファ判定値よりも大きい場合は、未処理の印画データの個数が印画用メディアの最少残量よりも小さい場合に対応する。この場合には未処理の印画データを残余の印画用メディアで印刷することができるため、印画処理を行う。
【００３６】
一方、空きバッファ数が空きバッファ判定値よりも小さい場合は、未処理の印画データの個数が印画用メディアの最少残量よりも大きい場合に対応する。この場合には未処理の印画データを残余の印画用メディアで印刷することができないため、他のプリンタユニットに切り替える。
【００３７】
例えば、空きバッファ判定値が“１” の場合において、空きバッファ数が２又は１のときには未処理の印画データの個数が０又は１であるため、印画処理を行うことができる。一方、空きバッファ判定値が“１” の場合において、空きバッファ数が０のときには未処理の印画データの個数が２であるため、印画処理を行うことができず、他のプリンタに切り替える。
【００３８】
また、空きバッファ判定値が“０” の場合において、空きバッファ数が２のときには未処理の印画データの個数が０であるため、印画処理を行うことができる。一方、空きバッファ判定値が“０” の場合において、空きバッファ数が１又は０のときには未処理の印画データの個数が１又は２であるため、印画処理を行うことができず、他のプリンタユニットに切り替える。
【００３９】
未処理の印画データの個数は、送信済み印画データの個数と印画済みの印画データの個数との差によって求めることができる。また、空きバッファ数は、受信バッファの個数から未処理の印画データの個数を差し引くことで求めることができる。
【００４０】
これらの関係から、空きバッファの確認は、印画済みの印画データの個数と送信済み印画データの個数との差によって行うことができる。
【００４１】
印画処理制御手段は、送信済み印画データの個数を計数する第１のカウンタと、印画済みの印画データの個数を計数する第２のカウンタとを備え、第１のカウンタのカウンタ値から第２のカウンタのカウンタ値を減算した差分値に基づいて受信バッファの空きバッファ数を算出し、印画用メディアの残量が許容数以下の場合に“１”を空きバッファ判定値に設定し、印画用メディアの残量が許容数を超える場合に“０”を空きバッファ判定値に設定する。差分値が空きバッファ判定値以下の場合には印画処理を行い、差分値が空きバッファ判定値を超える場合には他のプリンタユニットに切り替える。
【発明の効果】
【００４２】
本発明のプリントシステムによれば、印画用メディアの不足に起因するリカバリー処理を低減することができる。
【発明を実施するための最良の形態】
【００４３】
以下、本発明のプリントシステムの態様について、図１〜図２０を用いて説明する。
【００４４】
図１は本発明のプリントシステムの概略構成を説明するための図である。なお、図１では、プリントシステム１が備える各構成要素の内で、本発明の説明に要する部分のみを示し、その他の構成要素については省略している。
【００４５】
プリントシステム１は、印画用メディア（図示していない）の印画を行って印画物を形成するプリンタ部５と、このプリンタ部５に対して印画データおよび印画処理を指示するコマンドを送るユーザアプリケーション２と、ユーザアプリケーション２からのコマンドを解析して指示データをプリンタ部４に送るドライバ４を備え、ユーザアプリケーション２からの指示に基づいてプリンタ部５で印画用メディアに印画を行い、印画物を排紙する。
【００４６】
ユーザアプリケーション２は印画処理制御部９を構成し、ステータスＡＰＩ３を利用することによって、プリンタ部５の種々の状態情報を取得し、取得した状態情報に基づいて印画制御を行う。
【００４７】
なお、ユーザアプリケーション２は、図示しないＣＰＵやメモリ等のハードウエアによって構成し、メモリに格納する制御プログラムを実行し、各種処理データを一次メモリに格納するといってソフトウエア処理によって印画処理制御部９の印画処理制御を行う。また、ステータスＡＰＩ３についても、ユーザアプリケーション２が備えるＣＰＵによるプログラムの実行で利用することができる。
【００４８】
なお、ステータスＡＰＩ３は、例えば、印刷ジョブの有無に関わる情報、エラーの有無に関わる情報、印画済みの印画データの数量に関わる情報、プリンタに送信済みの印画データの数量に関わる情報などの、プリンタユニットに関わる種々の状態情報の読み出しを行うための関数を備え、ユーザアプリケーション２のプログラムは、これら関数を利用することによってプリンタに関わる種々の状態情報を簡易に取得することができる。
【００４９】
本発明のプリンタ部５は、複数台のプリンタ（以下、プリンタユニットと呼ぶ）７Ａ〜７Ｄと、これらプリンタユニット７Ａ〜７Ｄを制御せるコントローラ６を備える。各プリンタユニット７Ａ〜７Ｄは、ドライバ４が備える複数台のドライバ（以下、ドライバユニットと呼ぶ）４Ａ〜４Ｄを通して印画データおよび各種信号を授受する。また、コントローラ６は、各プリンタ７Ａ〜７Ｄの印画動作および排紙動作を制御する。
【００５０】
本発明のプリントシステムは、プリンタ部５の複数台のプリンタユニットにそれぞれ複数の受信バッファ（ここでは２つの受信バッファ）を設け、印画用メディアの残量が十分にあるときには、これら複数の受信バッファに印画データを格納する構成（受信バッファを２つとするダブルバッファの構成）の状態で使用することによって、１つの受信バッファからの読み出しと、他の受信バッファへの書き込みを並行して行うことで印画動作の処理速度を高めて印画物のスループットを高める。一方、印画用メディアの残量が少量のときには、印画データを格納する受信バッファを一つとしてシングルバッファの構成の状態で使用することによって、印画用メディアが不足することによって、印画データが印画されずに廃棄されることを防ぎ、この印画データを別のプリンタユニットにおいて空き状態にある受信バッファの送信することによってリカバリー処理を要することなく、印画処理を続けることができる。
【００５１】
複数台のプリンタユニットを備えるプリンタから定められた順で印画物を排紙する場合には、本発明の構成とすることで、仮に何れかのプリンタユニットの印画用メディアが不足した状態となって場合であっても、その印画用メディアに印画予定であった印画データは、リカバリー処理を要することなく、定められた順で印画物を排紙することができる。
【００５２】
図２、図３は、本発明のプリンタ部７の構成例を示す概略ブロック図である。本発明のプリンタ部７は複数台のプリンタユニット７Ａ〜７Ｄを備える。図２，３では、プリンタ部７が４台のプリンタユニットを備える例を示しているが、プリンタユニットの台数は４台に限らず任意の台数とすることができる。また、これら複数台のプリンタユニットは、１つの筐体に設ける構成とする他、離れた位置に設置する構成としてもよい。
【００５３】
はじめに、図２に示す構成例について説明する。以下では、プリンタユニット７Ａ〜７Ｄの構成を、プリンタユニット７Ａを例として説明する。プリンタユニット７Ａは、２つの受信バッファＡ１，Ａ２（７ａ，７ｂ）と、印画データ形成回路Ａ（７ｃ）と、ページメモリＡ（７ｄ）と、ヘッドＡ（７ｅ）を備える。プリンタユニット７Ｂ〜７Ｄについても同様の構成とすることができる。
【００５４】
受信バッファ７ａ，７ｂは、ユーザアプリケーション２から送信された印画データをドライバ４を介して格納する。ここで、各受信バッファ７ａ，７ｂは、一枚の印画用メディアに相当する印画データを格納する。したがって、２つの受信バッファ７ａ，７ｂにそれぞれ格納されて印画データを用いて印画することによって、２種類の印画画像を形成することができる。
【００５５】
図２に示す構成例では、受信バッファ７ａ，７ｂへの印画データの格納はユーザアプリケーション２の印画処理制御部９の制御によって行われる。
【００５６】
印画データ形成回路７ｃは、受信バッファ７ａ，７ｂに格納される印画データを読み出して展開してページデータを形成し、ページメモリ７ｄに格納する。ヘッド７ｅは、ページメモリ７ｄに格納されたページデータを順次読み出して印画動作を行い、印画用メディア上に印画画像を形成する。なお、印画用メディアは、印画を行うための種々の媒体とすることができ、例えば、印画データを写真プリントして印画する場合には写真用用紙とすることができる。
【００５７】
残量記録手段７ｆは、例えば、インクリボンの残り枚数を記録する記憶装置とすることができる。プリンタユニットによる印画を、印画データに基づいてインクリボンを印画用メディアに転写することで行う場合には、インクリボンの残り枚数と印画用メディアの残量とは対応しているため、インクリボンの残り枚数を計数することによって印画用メディアの残量を推定することができる。
【００５８】
例えば、上記の記憶装置としてＲＦＩＤを用いた構成とすることができる。ＲＦＩＤをインクリボンカセットに設け、未使用時の備えているインクリボンの枚数を初期値としてカウンタに記憶させておき、プリンタからインクリボンの使用枚数の情報をＲＦ信号で取得し、使用枚数に応じてこのカウンタのカウンタ値を減算させる。これによって、ＲＦＩＤのＩＤ情報としてインクリボンの残り枚数が記録される。
【００５９】
プリンタは、このＲＦＩＤからインクリボンの残り枚数を取得する。インクリボンの残り枚数と対応関係にあるため、ＲＦＩＤから取得したインクリボンの残り枚数から印画用メディアの残量を推定することができる。なお、印画用メディアに印画する画像のサイズによってインクリボンの使用幅が異なるため、インクリボンの残り枚数を計数する際には、印画用メディアに印画する画像のサイズに応じて減算する枚数を調整する。
【００６０】
ＲＦＩＤは、非接触通信によってプリンタとの間でインクリボンの使用枚数、およびインクリボンの残り枚数に関するＩＤ情報を授受することができるため、インクリボンカセットと印画用メディアとをペアとしてプリンタ間で入れ替えることによって、印画用メディアを交換した場合であっても、インクリボンに設けたＲＦＩＤからそのインクリボンカセットのインクリボンの残り枚数、および印画用メディアの残量を求めることができる。
【００６１】
印画用メディアの残量検知は、ユーザアプリケーション２に設けた残量検知部８によって行うことができ、各プリンタユニットにおいて残量記録手段７ｆから取得したインクリボンの残り枚数のデータを入力することで行うことができる。
【００６２】
図３はプリンタ部７の他の構成例を示している。図３に示す構成例は、印画用メディアの残量検知を印画用メディアの枚数を計数することで行い、また、受信バッファのダブルバッファとシングルバッファとのバッファの使用形態の切り替えを各プリンタユニット側で行う態様である。
【００６３】
次に、図３に示す構成例について説明する。以下では、プリンタユニット７Ａ〜７Ｄの構成を、プリンタユニット７Ａを例として説明する。プリンタユニット７Ａは、２つの受信バッファＡ１，Ａ２（７ａ，７ｂ）と、印画データ形成回路Ａ（７ｃ）と、ページメモリＡ（７ｄ）と、ヘッドＡ（７ｅ）と、残量検知手段Ａ（７ｆ）を備える。プリンタユニット７Ｂ〜７Ｄについても同様の構成とすることができる。
【００６４】
図３の構成において、２つの受信バッファ７ａ，７ｂと、印画データ形成回路７ｃと、ページメモリ７ｄと、ヘッド７ｅは、図２で説明した構成と同様とすることができるためここでの説明は省略する。
【００６５】
残量検知手段７ｆは、例えば、印画用メディアの残量を計数する構成とすることができ、印画用メディアの初期値から印画用メディアの使用枚数を減算することによって残量を求める。印画用メディアがロール紙であるバッファにはロール紙の送り出し量を検出し、この送り出し量から印画用メディアの残量を求めてもよい。
【００６６】
切替回路７ｇは、ユーザアプリケーションから送信された印画データを受信バッファ７ａ，７ｂに格納する際の印画データに振り分けを行う他、例えば、のプリンタユニットへの転送を行う。この切替回路７ｇの切り替え制御は、残量検知手段７ｆからの残量信号に基づいて、印画用メディアが十分にある場合には、送信された印画データを受信バッファ７ａ、受信バッファ７ｂの空きバッファに送って印画処理を行い、印画用メディアが不足する場合には、送信された印画データをそのプリンタユニット７の受信バッファ７ａ、受信バッファ７ｂの内の１つにのみに送り、後続する印画データは別のプリンタユニットに転送する。
【００６７】
転送されたプリンタユニットは、その切替回路７ｇにおいて前記と同様の処理を行い、そのプリンタユニットの残量検知手段７ｆからの残量信号に基づいて、印画用メディアが十分にある場合には、送信された印画データを受信バッファ７ａ、受信バッファ７ｂの空きバッファに送り、印画用メディアが少ない場合には、送信された印画データをそのプリンタユニット７の受信バッファ７ａ、受信バッファ７ｂの内のいずれか一方の受信バッファに対してのみに送る。
【００６８】
当該プリンタユニットの受信バッファに空きバッファが無い場合には、印画データをさらに別のプリンタユニットに転送する。
【００６９】
転送された印画データは、プリンタ部５が備える何れかのプリンタユニットの受信バッファに空きバッファが発生するまでプリンタユニット７Ａ〜７Ｄを回り、発生した空きバッファに送り込まれ、印画処理が行われる。
【００７０】
印画データがプリンタユニット間において、空きバッファが生じるまで循環している間は、例えば、この印画データの循環状態をユーザアプリケーションに送って、ユーザアプリケーションからの次の印画データの送信を待機させる制御を行う他、ユーザアプリケーションでの印画データの送信を制御することなくプリンタ部５に送信し、プリンタ部５側の複数台のプリンタユニット間において複数の印画データを循環させてもよい。この場合には、送信した印画データに順位情報を付加し、この順位情報に基づいて切替回路７ｇにおいて空きバッファへの書き込みを制御する。
【００７１】
図４を用いて、コントローラによるプリンタユニットの順序制御を説明する。本発明のプリントシステムでは、定められた順序に従って印画物の排出する順序制御を行う。この排出順序はアプリケーション側において、複数の画像を、グループ順およびグループ内における画像シリアル順に設定し、この順序に従ってグループ番号および画像シリアル番号を対応するプリンタユニットに送る。プリンタユニットの排出順序制御と排紙のタイミングは、プリンタ５の内部のプリンタユニット７とコントローラ６との間で通信することで制御を行う。
【００７２】
プリンタユニット７は、ユーザアプリケーション２から受信した画像シリアル番号とグループ番号をコントローラ６に転送することで、排出要求を出す。排出要求を受けたコントローラ６は、転送された画像シリアル番号とグループ番号に従って、印画された印画物の順序を照合し、順序通りであればその印画物を排出する許可を出し、順序に誤りがあれば、他のプリンタユニットの排出が終わって順序通りとなるまで排出を待たせる。この順序制御によって、画像シリアル番号の順序で印画物の排出が行われる。
【００７３】
プリンタユニット７の一構成では、ロール状の記録用紙（図示していない）を印画用メディアとし、このロール状の記録用紙をロール紙ホルダ（図示していない）に保持しておき、ロール紙ホルダから巻き戻した記録用紙の記録面上に印刷を行う。
【００７４】
印刷は、例えば、インクリボンカセット（図示していない）に保持されたインクリボン（図示していない）を記録用紙（図示していない）の記録面に当接させながら、ヘッド７ｅによって所定位置にインクを記録することによって行う。この印刷において、カラー印刷などの多色印刷を行う場合には、インクリボンに印刷を行う色に対応したイエロー、マゼンタ、シアン等の複数のインク部分を、インクリボンの巻き取る方向に沿って順に用意しておき、インクリボンを巻き取りながらインク部分をヘッド７ｅに対して通過させる動作を、色毎に繰り返す。この際、記録用紙の同一印刷領域に各色の印刷を重ねて行わせるために、記録用紙を往復動させる。この記録用紙の往復動は、ロール紙ホルダの回転方向を変えてロール紙の巻きほどきと巻き戻しを繰り返すことで行うことができる。
【００７５】
これによって、記録用紙をヘッド７ｅに対して往復動させ、記録用紙の同一の印刷領域に対して複数回の印刷を繰り返して行う。
【００７６】
なお、インクリボンは、イエロー、マゼンタ、シアン等の色部分に加えてオーバーコート層を備え、全色の印刷が終了した印刷面上をこのオーバーコート層で覆うことによって印刷面を保護することができる。
【００７７】
印刷が終了した記録用紙は、ヘッド７ｅ部分を通過した後、排出経路を通過し、プリンタ１の筐体（図示していない）に設けた排出口（図示していない）からプリンタ外部に排出される。
【００７８】
次に、本発明のプリントシステムの印画動作を、図５〜図１２を用いて説明する。以下では、正常な印画動作の例を図５，６を用いて説明し、エラー時の印画動作の例を図７〜図２０を用いて説明する。また、エラー時の印画動作の例では、プリンタ動作の動作に伴うエラー時におけるリカバリーについて図７〜図１２を用いて説明し、印画用メディアが不足したこと（以下、メディアニアエンド）によるエラー時における処理について図１３〜図２０を用いて説明する。
【００７９】
はじめに、本発明のプリントシステムの通常の印画動作を、図１の構成に基づいて図５のフローチャート、および図６を用いて説明する。図１中の“Ｓ”を付した番号は、フローチャート中の“Ｓ”を付した番号と対応している。
【００８０】
ユーザアプリケーション２は、外部あるいは内部で発生した印画要求に基づいて印画処理を開始する（Ｓ１）。この印画要求がある場合、プリンタユニットにおいて印刷ジョブの有無を検索する。この印刷ジョブの有無は、例えば、ユーザアプリケーション内の印刷キューに各プリンタユニットに対する印画データが保持されているかによって判定することができる（Ｓ２）。
【００８１】
判定したプリンタユニットに対して印刷ジョブが設定されていない場合には（Ｓ２）、プリントシステム１が備える別のプリンタユニットに切り替えた後（Ｓ１２）、Ｓ１に戻って処理を行う。
【００８２】
判定したプリンタユニットに対して印刷ジョブが設定されている場合には（Ｓ２）、そのプリンタユニットのステータスを取得し、エラーが発生していないかを確認する（Ｓ３）。エラー状態のステータスは、ユーザアプリケーションがステータスＡＰＩ３の関数を実行することで取得することができる。取得したエラーステータスからエラーが有ることが確認された場合には、エラー処理を実行する（Ｓ１３）。
【００８３】
取得したエラーステータスからエラーが無いことが確認された場合には（Ｓ３）、プリンタユニットの印画済みの印画データの個数を計数する第２のカウンタ（以下、ライフカウンタと呼ぶ）のカウンタ値を取得する。ライフカウンタのカウンタ値は、ユーザアプリケーションがステータスＡＰＩ３の関数を実行することで取得することができる。また、プリンタユニットの送信済み印画データの個数を計数する第１のカウンタ（以下、アプリケーションカウンタと呼ぶ）のカウンタ値を取得する。アプリケーションカウンタのカウンタ値は、ユーザアプリケーションがステータスＡＰＩ３の関数を実行することで取得することができる（Ｓ４）。
【００８４】
再度、プリンタユニットのステータスを取得し、エラーが発生していないかを確認する（Ｓ５）。取得したエラーステータスからエラーが有ることが確認された場合には、エラー処理を実行する（Ｓ１３）。
【００８５】
Ｓ５の工程において、エラーが無いことが確認された場合には、そのプリンタユニットに空きバッファがあるかを確認する。空きバッファの確認は、ライフカウンタのカウンタ値とアプリケーションカウンタのカウンタ値の差から求めることができる。
【００８６】
例えば、プリンタユニットが２つの受信バッファを備えるダブルバッファ構成では、アプリケーションカウンタのカウンタ値からライフカウンタのカウンタ値を差し引いた差が“０”である場合には、送信済み印画データの個数と印画済みの印画データの個数とが一致しており、送信された印画データは全て印画されたことを示しているため、２つの受信バッファに共に空きバッファであり、空きバッファ数は“２“である。
【００８７】
また、アプリケーションカウンタのカウンタ値からライフカウンタのカウンタ値を差し引いた差が“１”である場合には、送信済み印画データの個数が印画済みの印画データの個数よりも１だけ多く、この送信済み印画データは２つの受信バッファの一方に格納され、他方の受信バッファは空きバッファであることを示しており、空きバッファ数は“１“である。
【００８８】
また、アプリケーションカウンタのカウンタ値からライフカウンタのカウンタ値を差し引いた差が“２”である場合には、送信済み印画データの個数が印画済みの印画データの個数よりも２だけ多く、この送信済み印画データは２つの受信バッファの両方に格納され、空きバッファは存在しないことを示しており、空きバッファ数は“０“である。
【００８９】
したがって、カウンタ値の差と“１”とを比較し、カウンタ値が１以下の場合（カウンタ値の差≦１）は「空きバッファ有り」と判定し、カウンタ値が１を超える場合（カウンタ値の差＞１）は「空きバッファ無し」と判定する（Ｓ６）。
【００９０】
「空きバッファ有り」と判定した場合には（Ｓ６）、印画処理を実行する。印画処理は、ユーザアプリケーション２がプリンタユニット７に対して、送信する印画データのグループ番号、グループ内のシリアル番号、裏面印画データ、および印画データを送信することで行われる。なお、送信する印画データがグループ内の最後のデータである場合には、最後のシリアル番号であることを記述することで、グループ内の全印画データが送信されたことを確認することができる（Ｓ７〜Ｓ１０）。
【００９１】
上記Ｓ７〜Ｓ１０の送信処理を行った後、ユーザアプリケーション内のアプリケーションカウンタをカウンタアップし、送信済み印画データの個数を“１”増加させる。アプリケーションカウンタは、空きバッファの確認と、エラー発生時にどの画像まで印画したかの判断に適用することができる。
【００９２】
「空きバッファ無し」と判定した場合には（Ｓ６）、送信した印画データを受信バッファに格納することができず、プリンタユニットでの印画が不可能であるため、プリンタ１が備える別のプリンタユニットに切り替えた後（Ｓ１２）、Ｓ１に戻って処理を行う。
【００９３】
なお、ライフカウンタおよびアプリケーションカウンタのカウントアップにおいて、カウントアップの数値は、例えば、基準となる印画用メディアのサイズの印画データを送信したときを“＋１”とし、基準となる印画用メディアのサイズよりも大きな幅の印画用メディアに印画する印画データを送信した場合には、カウントアップの数値として“＋２”を設定する。このカウントアップの数値を印画用メディアのサイズに合わせることによって、印画用メディアの残量を正しく確認することができる。また、空きバッファの確認およびエラー発生の確認を行う場合には、カウンタ値の差を１／２とすることで、基準となる印画用メディアのサイズに合わせて評価を行う。
【００９４】
また、アプリケーションカウンタの初期化は、システム起動時にプリンタユニットのライフカウンタのカウンタ値を取得し、取得した値をセットする。通常、初期状態では、２つの受信バッファは空きバッファであるため、この初期化によってプリンタユニットのライフカウンタのカウンタ値とアプリケーションカウンタのカウンタ値とを一致させておく。
【００９５】
図６は、本発明のプリントシステムの通常の印画動作における２つの受信バッファの処理を説明するための説明図である。
【００９６】
図６において、プリンタユニット７Ａ〜７Ｄはそれぞれ２つの受信バッファ７ａ，７ｂを備え、はじめの状態において各プリンタユニットの受信バッファには印画データが格納されているものとする。また、ここでは、プリントシステムは、印画物を印画データD1〜D8の順序で排出する排出制御を行うものとする。
【００９７】
図６中では、印画データをD1〜D8で示し、プリンタユニット７Ａの受信バッファ７ａ，７ｂには印画データD1，D5が格納され、プリンタユニット７Ｂの受信バッファ７ａ，７ｂには印画データD2，D6が格納され、プリンタユニット７Ｃの受信バッファ７ａ，７ｂには印画データD3，D7が格納され、プリンタユニット７Ｃの受信バッファ７ａ，７ｂには印画データD4，D8が格納されているものとする（図６（ａ））。
【００９８】
この状態において、各プリンタユニット７Ａ〜７Ｄは、受信バッファ７ａに格納される印画データD1〜D4を読み出して印画処理を行う（図６（ｂ））。排出順序は印画データD1〜D8の順序に設定されているため、排出制御によってはじめに印画データD1の印画物が排出される。この印画データD1の印画物排出によって、プリンタユニット７Ａでは、受信バッファ７ｂに格納される印画データD5の印画処理を行う（図６（ｃ））。
【００９９】
排出制御によって次に印画データD2の印画物が排出される。この印画データD2の印画物排出によって、プリンタユニット７Ｂでは、受信バッファ７ｂに格納される印画データD6の印画処理を行う（図６（ｄ））。
【０１００】
残りの印画データD3〜D8についても排出順序にしたがって印画処理および排出処理が行われる。
【０１０１】
次に、本発明のプリントシステムによる印画処理において、プリンタ動作の動作に伴うエラー時におけるリカバリーについて図７〜図１２を用いて説明する。図７はエラーリカバリー時における動作を説明するためのフローチャートである。
【０１０２】
印画処理中において、印画用メディアの不足に伴うエラーを除いて突発的にエラーが発生する場合がある。このような突発エラーが発生した場合には、エラーが発生したプリンタユニットに送信していた印画データを別のプリンタユニットの再送し、リカバリーを行う必要がある。このとき、画像シリアル番号の順序で排出するようにリカバリー処理を行う。
【０１０３】
ユーザアプリケーション２は、プリンタユニットにエラーが発生しているかを判定する。このエラー判定は、そのプリンタユニットのステータスを取得し、エラーが発生していないかを確認することで行う。エラー状態のステータスは、ユーザアプリケーションがステータスＡＰＩ３の関数を実行することで取得することができる（Ｓ２１）。取得したエラーステータスからエラーが無いことが確認された場合には、通常の印画処理を続行する（Ｓ２３）。
【０１０４】
取得したエラーステータスからエラーが有ることが確認された場合には、そのプリンタユニットのライフカウンタとアプリケーションカウンタのカウンタ値を取得する。ライフカウンタとアプリケーションカウンタのカウンタ値は、ユーザアプリケーションがステータスＡＰＩ３の関数を実行することで取得することができる（Ｓ２２）。
【０１０５】
アプリケーションカウンタのカウンタ値とライフカウンタのカウンタ値との差を算出する。カウンタ値の差は、リカバリーすべき印画データの個数を表している。このカウンタ値の差が例えば“２”の場合には、前々回に送信した印画データと前回に送信した印画データがリカバリーすべき印画データである。また、カウンタ値の差が“１”の場合には、前回に送信した印画データがリカバリーすべき印画データである。印画データのリカバリーは、リカバリーすべき印画データをリカバリーリストに追加し、このリカバリーリストに挙げられている印画データを送信することで行う。
【０１０６】
そこで、カウンタ値の差と“２”とを比較する（Ｓ２４）。カウンタ値の差が“２”である場合には、２つ前の印画データである前々回送信の印画データをリカバリーリストに追加し（Ｓ２５）、さらに、１つ前の印画データである前回送信の印画データをリカバリーリストに追加する（Ｓ２６）。カウンタ値の差が“１”である場合には（Ｓ２７）、１つ前の印画データである前回送信の印画データをリカバリーリストに追加する（Ｓ２６）。
【０１０７】
カウンタ値の差が“２”でも“１”でもない場合には（Ｓ２４，Ｓ２７）、リカバリー処理は不要である（Ｓ２７）。
【０１０８】
エラーが発生したプリンタユニットの印画用メディアと同じサイズも印画用メディアを装着している別のプリンタユニットについて、受信バッファに空バッファのものがあるかを確認する。この確認は、プリンタユニットのステータスが“IDLE”であるかによって行うことができる。“IDLE”は印画データの受信待ちの状態にあるステータ状態を示すものである。“IDLE”のステータス状態は、ユーザアプリケーションがステータスＡＰＩ３の関数を実行することで取得することができる（Ｓ２８）。プリンタユニットのステータスが“IDLE”である場合には、受信バッファは印画データを受信可能な状態にあるため、印画データを送信することができる。そこで、“IDLE”であることが確認された場合には、そのプリンタユニットにリカバリーリストに挙げられている印画データを送信する（Ｓ３６）。
【０１０９】
一方、同じサイズの印画用メディアを有し、“IDLE”状態にあるプリンタユニットが無い場合には、印画処理中にあるプリンタユニットの空きバッファに印画データを送信する（Ｓ２８）。
【０１１０】
空きバッファがあるプリンタユニットへの送信は、エラーが無いプリンタユニットであって、一番小さな画像シリアル番号を送信しているプリンタユニットに対して行う。この送信において、はじめに、印画を中止するコマンドを送信する（Ｓ２９）。
【０１１１】
中止コマンドを送信したプリンタユニットが“IDLE”状態になった後（Ｓ３０）、そのプリンタユニットのライフカウンタのカウンタ値とアプリケーションカウンタのカウンタ値を取得する。ライフカウンタとアプリケーションカウンタのカウンタ値は、ユーザアプリケーションがステータスＡＰＩ３の関数を実行することで取得することができる（Ｓ３１）。
【０１１２】
アプリケーションカウンタのカウンタ値とライフカウンタのカウンタ値との差を算出する。カウンタ値の差は、リカバリーすべき印画データの個数を表している。このカウンタ値の差が例えば“２”の場合には、前々回に送信した印画データと前回に送信した印画データがリカバリーすべき印画データである。また、カウンタ値の差が“１”の場合には、前回に送信した印画データがリカバリーすべき印画データである。印画データのリカバリーは、リカバリーすべき印画データをリカバリーリストに追加し、このリカバリーリストに挙げられている印画データを送信することで行う。
【０１１３】
そこで、カウンタ値の差と“２”とを比較する（Ｓ３２）。カウンタ値の差が“２”である場合には、２つ前の印画データである前々回送信の印画データをリカバリーリストに追加し（Ｓ３３）、さらに、１つ前の印画データである前回送信の印画データをリカバリーリストに追加する（Ｓ３４）。
【０１１４】
カウンタ値の差が“１”である場合には（Ｓ３５）、１つ前の印画データである前回送信の印画データをリカバリーリストに追加する（Ｓ３４）。
【０１１５】
カウンタ値の差が“２”でも“１”でもない場合には（Ｓ３２，３５）、リカバリーリストの印画データを、画像シリアル番号の小さい順でプリンタユニットを一台選択し印画データを再送信して再印画処理を行う（Ｓ３６）。
【０１１６】
リカバリー処理では、印画物を廃棄せずに処理する場合と印画物を廃棄して処理する場合がある。これは、エラー発生時において、リカバリー先の画像シリアル番号が、エラーが発生した画像シリアル番号より後の順番であるときには、先に順番の画像シリアル番号はエラーによって排出されないため、後の順番の画像シリアル番号の印画物を排出することができず、廃棄しなければならない場合が生じる。
【０１１７】
図８，図９は印画物を廃棄せずに処理する場合を示し、図１０〜１２は印画物を廃棄して処理する場合を示している。
【０１１８】
はじめに、印画物を廃棄せずに行うリカバリー処理について図８，９を用いて説明する。図８，９では、２つの受信バッファの処理の例を示し、プリンタユニット７Ａ〜７Ｄはそれぞれ２つの受信バッファ７ａ，７ｂを備え、はじめの状態において各プリンタユニットの受信バッファには印画データが格納されているものとする。また、ここでは、プリントシステムは、印画物を印画データD1〜D8の順序で排出する排出制御を行うものとする。
【０１１９】
図８中では、印画データをD1〜D8で示し、はじめに、プリンタユニット７Ａの受信バッファ７ａ，７ｂには印画データD1，D5が格納され、プリンタユニット７Ｂの受信バッファ７ａ，７ｂには印画データD2，D6が格納され、プリンタユニット７Ｃの受信バッファ７ａ，７ｂには印画データD3，D7が格納され、プリンタユニット７Ｃの受信バッファ７ａ，７ｂには印画データD4，D8が格納されているものとする（図８（ａ））。
【０１２０】
この状態において、各プリンタユニット７Ａ〜７Ｄは、受信バッファ７ａに格納される印画データD1〜D4を読み出して印画処理を行う。ここで、プリンタユニット７Ｃが印画データD3の印画処理においてエラーが発生した場合には、ユーザアプリケーション２は、ステータスＡＰＩ３によってプリンタユニット７Ｃのエラーを検出する。エラーを検出すると、プリンタユニット７Ｃのライフカウンタのカウンタ値を取得し、そのカウンタ値から印画がどこまで終了したかを確認し、プリンタユニット７Ｃに送信した印画データD3,D7をリカバリーリストに追加する（図８（ｂ））。
【０１２１】
次に、ユーザアプリケーション２は、エラーを検出すると、リカバリー処理が必要な場合には、現在処理中の印画データの中で一番小さな画像シリアル番号の印画データを処理しているプリンタユニットに「印画中止」コマンドを送信する。一番小さな画像シリアル番号とするには、排出順序が印画データD1〜D8の順序に設定されているためである。
【０１２２】
ここでは、印画データD1の印画物が排出されているため、印画データD2を印画処理しているプリンタユニット７Ｂに対して「印画中止」コマンドを送信する（図８（ｃ））。
【０１２３】
「印画中止」コマンドを受信したプリンタユニット７Ｂは、印画データD2の印画処理を最後まで行う。印画データD2の印画物は排出処理が可能であるため、印画物の排出を行い、残りの受信バッファに格納している印画データD6をクリアし、プリンタユニット７Ｂのステータス状態が“IDLE”になるまで待機する。プリンタユニット７Ｂのステータス状態が“IDLE”となった後、ユーザアプリケーション２はプリンタユニット７Ｂのライフカウンタのカウンタ値を取得し、どの印画データまで出力されたかを確認する。ここでは、印画データD2は出力され、印画データD6がクリアされているため、印画データD6をリカバリーリストに追加する（図８（ｄ））。
【０１２４】
次に、ユーザアプリケーション２は、「印画中止」コマンドを送信したプリンタユニット７Ｂに対して、リカバリーリストに挙げられた印画データを画像シリアル番号の小さい順番で送信する（図９（ａ））。リカバリーリストから印画データD3,D6をプリンタユニット７Ｂの受信バッファに送信することで、プリンタユニット７Ｂは印画データD3の印画処理を開始する（図９（ｂ））。
【０１２５】
プリンタユニット７Ｂにおいて、印画データD3の印画処理が終了すると、ユーザアプリケーション２の排出制御によって印画データD3の印画物を排出し、プリンタユニット７Ｂは、印画データD6の印画処理を開始する。ここで、印画データD1,D2,D3の印画物が排出され、次の排出順は印画データD4の印画物である。そのため、印画データD6の印画処理が終了した場合であっても、プリンタユニット７Ｄの印画データD4の印画処理が終了し、さらに、プリンタユニット７Ａの印画データD5の印画処理が終了して排出されるまで、印画データD6の印画物は排出されずに待機する（図９（ｃ））。
【０１２６】
図９（ｄ）は、プリンタユニット７Ｄの印画データD4の印画処理が終了して排出された状態を示している。
【０１２７】
次に、印画物を廃棄するリカバリー処理について図１０〜１２を用いて説明する。図１０〜１２では、２つの受信バッファの処理の例を示し、プリンタユニット７Ａ〜７Ｄはそれぞれ２つの受信バッファ７ａ，７ｂを備え、はじめの状態において各プリンタユニットの受信バッファには印画データが格納されているものとする。また、ここでは、プリントシステムは、印画物を印画データD1〜D8の順序で排出する排出制御を行うものとする。
【０１２８】
図１０中では、印画データをD1〜D8で示し、はじめに、プリンタユニット７Ａの受信バッファ７ａ，７ｂには印画データD1，D5が格納され、プリンタユニット７Ｂの受信バッファ７ａ，７ｂには印画データD2，D6が格納され、プリンタユニット７Ｃの受信バッファ７ａ，７ｂには印画データD3，D7が格納され、プリンタユニット７Ｃの受信バッファ７ａ，７ｂには印画データD4，D8が格納されているものとする（図１０（ａ））。
【０１２９】
この状態において、各プリンタユニット７Ａ〜７Ｄは、受信バッファ７ａに格納される印画データD1〜D4を読み出して印画処理を行う。ここで、プリンタユニット７Ａが印画データD1の印画処理においてエラーが発生した場合には、ユーザアプリケーション２は、ステータスＡＰＩ３によってプリンタユニット７Ａのエラーを検出する。エラーを検出すると、プリンタユニット７Ａのライフカウンタのカウンタ値を取得し、そのカウンタ値から印画がどこまで終了したかを確認し、プリンタユニット７Ａに送信した印画データD1,D5をリカバリーリストに追加する（図１０（ｂ））。
【０１３０】
次に、ユーザアプリケーション２は、エラーを検出すると、リカバリー処理が必要な場合には、現在処理中の印画データの中で一番小さな画像シリアル番号の印画データを処理しているプリンタユニットに「印画中止」コマンドを送信する。一番小さな画像シリアル番号とするには、排出順序が印画データD1〜D8の順序に設定されているためである。
【０１３１】
ここでは、印画データD1の次に小さな画像シリアル番号の画像データはD2であるため、この画像データD2を印画処理しているプリンタユニット７Ｂに対して「印画中止」コマンドを送信する（図１０（ｃ））。
【０１３２】
「印画中止」コマンドを受信したプリンタユニット７Ｂは、印画データD2の印画処理を最後まで行う。印画データD1の印画物はエラー発生によって排出されておらず、印画データD2の印画物は排出処理を行うことができないため、印画物を廃棄する。印画物の廃棄は例えばカットすることで行う。また、プリンタユニット７Ｂの他方の受信バッファに格納される印画データD6はクリアしてステータスを“IDLE”状態とする。
【０１３３】
ユーザアプリケーション２は、「印画中止」コマンドを送信したプリンタユニット７Ｂが“IELD”状態となるのを待ち、“IDLE”状態を確認した後、プリンタユニット７Ｂのライフカウンタのカウンタ値を取得し、どのデータまで出力したかを確認する。ここでは、印画データD2の印画物は破棄され、印画データD6はクリアされているため、印画データD2,D6をリカバリーリストに追加する（図１０（ｄ））。
【０１３４】
次に、ユーザアプリケーション２は、「印画中止」コマンドを送信したプリンタユニット７Ｂに対して、リカバリーリストに挙げられた印画データを画像シリアル番号の小さい順番で送信する（図１１（ａ））。リカバリーリストから印画データD1,D2をプリンタユニット７Ｂの受信バッファに送信することで、プリンタユニット７Ｂは印画データD1の印画処理を開始する（図１１（ｂ））。
【０１３５】
プリンタユニット７Ｂにおいて、印画データD1の印画処理が終了すると、ユーザアプリケーション２の排出制御によって印画データD1の印画物を排出し、プリンタユニット７Ｂは、印画データD2の印画処理を開始する（図１１（ｃ））。
【０１３６】
プリンタユニット７Ｂにおいて、印画データD2の印画処理が終了すると、ユーザアプリケーション２の排出制御によって印画データD2の印画物を排出し、リカバリーリストから印画データD5,D6をプリンタユニット７Ｂの受信バッファに送信することで、プリンタユニット７Ｂは印画データD5の印画処理を開始する（図１１（ｄ））。
【０１３７】
以後、印画物の排出順に従って、プリンタユニット７Ｃの印画データD3の印画物を排出し（図１２（ａ））、プリンタユニット７Ｄの印画データD4の印画物を排出し（図１２（ｂ））、プリンタユニット７Ｂの印画データD5の印画物を排出し（図１２（ｃ））、プリンタユニット７Ｂの印画データD6の印画物を排出する（図１２（ｄ））。
【０１３８】
次に、印画用メディアが不足したメディアニアエンドの状態における処理について図１３〜図２０を用いて説明する。
【０１３９】
図１３は、メディアニアエンドのエラー時における処理を説明するためのフローチャートであり、図１４は説明図である。ユーザアプリケーション２は、ステータスＡＰＩ３によってプリンタユニット７Ａ〜７Ｄのメディアニアエンドの状態を取得することでエラー検知することができる。ここで、メディアニアエンドは、印画用メディアの残量が多少の余裕を有して減少した状態を意味する。このメディアニアエンドであるか否かの判定は、印画用メディアの残量が許容値に達したことで検出することができる。この許容値は、予め任意に設定しておくことができる（Ｓ１０１）。
【０１４０】
メディアニアエンドのエラーを検出していない場合には（Ｓ１０１）、２個の受信バッファを用い（Ｓ１０３）、メディアニアエンドを検出した場合には（Ｓ１０１）、１個の受信バッファを用いる（Ｓ１０２）。この受信バッファの有効な個数状態において、各受信バッファに空きバッファが有る場合には印画処理を行い（Ｓ１０５）、各受信バッファに空きバッファが無い場合には、別のプリンタユニットに切り替え同様の処理を行う（Ｓ１０６）。
【０１４１】
図１４（ａ）は、受信バッファ７ａ，７ｂに印画データD1,D2が格納され、印画データD1が印画処理されている状態を示している。印画データD1の印画処理が終了して排出された後、受信バッファ７ｂに格納される印画データD2が印画処理され、受信バッファ７ａには次の印画データD3が格納される（図１４（ｂ））。
【０１４２】
ここで、メディアニアエンド検出によって、印画用メディアの残量が少ないことが検出されると、有効な受信バッファの個数を１個とする。受信バッファ７ａには印画データD3が格納されて印画処理が行われているため、有効な受信バッファの個数を１個とすることによって、受信バッファ７ｂへの印画データの送信は行われない。印画データD3は、印画処理が終了した後に排出される（図１４（ｃ））。
【０１４３】
印画データD3の印画物が排出された後は、受信バッファ７ａあるいは受信バッファ７ｂの何れか一つのみを有効なバッファとする（図１４（ｄ））。
【０１４４】
図１５は、メディアエンドエラーによるリカバリー動作を制御する構成例を説明するための図であり、ユーザアプリケーションが行うソフトウエア処理の機能をブロック図で示すものである。
【０１４５】
図１５において、メディアエンドエラーによる印画データの送信制御機能は、プリンタユニットへの印画データの送信を制御する送信制御部１０、各プリンタユニットにおけるカウンタ値を計数するカウンタ部１１Ａ〜１１Ｄ、およびカウンタ値に基づいてメディアニアエンドを判定する判定部１２によって構成することができる。
【０１４６】
送信制御部１０は、判定部１２のメディアニアエンドの判定に基づいて、メディアニアエンドが検出された場合に印画データの送信先であるプリンタユニットを切り替える切替部１０ａ、メディアニアエンドが検出されない場合に印画データをプリンタユニットに送信する印画データ送信部１０ｂ、および送信する印画データを記憶しておく印画データ記憶部１０ｃを備える。
【０１４７】
各カウンタ部１１Ａ〜１１Ｄは、ライフカウンタ、アプリケーションカウンタ、およびメディアカウンタの各カウンタ手段を有する。ライフカウンタは、印画済みの印画データの個数を計数するカウンタであり、プリンタ動作に基づいてカントアップする。アプリケーションカウンタは送信済み印画データの個数を計数するカウンタであり、ユーザアプリケーションのプリンタユニットへの送信動作に基づいてカントアップする。メディアカウンタはプリンタユニットが備える印画用メディアの残量を計数するカウンタであり、対応関係にあるインクリボンの残り数から算出することができる。インクリボンの残り数から算出する場合には、インクリボンカセットに設けたＲＦＩＤから取得することができる。
【０１４８】
判定部１２は、各プリンタユニットが備える前記したメディアカウンタから取得したカウンタ値からメディアニアエンドの状態を判定し、ライフカウンタとアプリケーションカウンタのカウンタ値の差とメディアニアエンドの状態とから送信制御部１０を制御する。
【０１４９】
図１６はメディアニアエンド時のリカバリー動作を説明するためのフローチャートである。ここでは、メディアニアエンドは、ＲＦＩＤに記憶されるインクリボンの残り枚数から推定する。ＲＦＩＤはカウンタを備え、プリンタユニット側から印画動作を行ったことを取得し、印画動作を行う毎に減算することによって、インクリボンの残り枚数を計数する。インクリボンを用いて印画用メディアに印画画像を転写することで印刷を行う場合には、インクリボンの残り枚数と印画用メディアの残量との間には所定に関係があり、インクリボンの残り枚数から印画用メディアの残量を推定することができる。
【０１５０】
例えば、ＲＦＩＤのカウンタで計数するインクリボンの残り枚数が少なくなり、予め定められた枚数となったことを検出した場合には、印画用メディアの残量が少なくなりメディアニアエンドの状態となったと推定する。本発明のプリントシステムは、このメディアニアエンド状態の検出に基づいて、２個の受信バッファの内から１個の受信バッファのみを使用するようにする。
【０１５１】
メディアニアエンドは、印画が終了して次の印画のための頭出しを行うときにエンド検出される。このとき受信バッファに次の印画データが残っていると、その印画データを他のプリンタユニットに再送信するリカバリーが必要となるが、本発明のプリントシステムではプリンタユニットの受信バッファを１個のみを使用するようにすることで、メディアニアエンド検出時に受信バッファには印画データが残っていないため、リカバリーを行う必要がない。
【０１５２】
ユーザアプリケーション２は、外部あるいは内部で発生した印画要求に基づいて印画処理を開始する（Ｓ４１）。この印画要求がある場合、プリンタユニットにおいて印刷ジョブの有無を検索する。この印刷ジョブの有無は、例えば、ユーザアプリケーション内の印刷キューに各プリンタユニットに対する印画データが保持されているかによって判定することができる（Ｓ４２）。
【０１５３】
判定したプリンタユニットに対して印刷ジョブが設定されていない場合には（Ｓ４２）、プリンタ１が備える別のプリンタユニットに切り替えた後（Ｓ５３）、Ｓ４１に戻って処理を行う。
【０１５４】
判定したプリンタユニットに対して印刷ジョブが設定されている場合には（Ｓ４２）、そのプリンタユニットのステータスを取得し、エラーが発生していないかを確認する（Ｓ４３）。エラー状態のステータスは、ユーザアプリケーションがステータスＡＰＩ３の関数を実行することで取得することができる。取得したエラーステータスからエラーが有ることが確認された場合には、エラー処理を実行する（Ｓ５４）。
【０１５５】
取得したエラーステータスからエラーが無いことが確認された場合には（Ｓ４３）、プリンタユニットの印画済みの印画データの個数を計数するライフカウンタのカウンタ値を取得する。ライフカウンタのカウンタ値は、ユーザアプリケーションがステータスＡＰＩ３の関数を実行することで取得することができる。また、プリンタユニットの送信済み印画データの個数を計数するアプリケーションカウンタのカウンタ値を取得する。アプリケーションカウンタのカウンタ値は、ユーザアプリケーションがステータスＡＰＩ３の関数を実行することで取得することができる（Ｓ４４）。
【０１５６】
再度、プリンタユニットのステータスを取得し、エラーが発生していないかを確認する（Ｓ４５）。取得したエラーステータスからエラーが有ることが確認された場合には、エラー処理を実行する（Ｓ５４）。
【０１５７】
Ｓ４５の工程において、エラーが無いことが確認された場合には、メディアカウンタからインクリボンの残り枚数をＲＦＩＤから取得する（Ｓ４６）。ここで、残り枚数の初期値として印刷可能枚数に＋５０枚の余裕枚数分を加えた枚数を設定している。
【０１５８】
印画メディアの印刷可能枚数および初期値は、印画メディアの種類に応じて定めることができる。表１は一例を示している。
【０１５９】
【表１】
2008307796.tif 000003
【０１６０】
表１に示す印画メディアは、写真用の印画用紙の例である。
【０１６１】
そこで、太くした残り枚数から５０を減算した（残り枚数−５０）の値を算出し、この（残り枚数−５０）の値を設定値（例えば５）と比較する。この比較処理はメディアニアエンドを検出する処理であり、（残り枚数−５０）の値が設定値以下となったことによってメディアニアエンドとする。この設定値は、ＲＤＩＦに記録される残り枚数の値が実際のインクリボンの残り枚数と一致している場合には、“０”に設定することができるが、インクリボンの使用状況によってＲＤＩＦに記録される残り枚数の値と実際のインクリボンの残り枚数とは必ずしも一致しないため、残り枚数のマージン分として例えば“５”を設定するものである。この設定値は必ずしも“５”である必要はなく、プリンタユニットの使用状況等に応じて任意に定めても良い（Ｓ４７）。
【０１６２】
ここで、残り枚数の多少を、空きバッファの有無を判定する空きバッファ判定値（Judge）に対応させる。例えば、（残り枚数−５０）の値が設定値以下の場合（（残り枚数−５０）≦５）には、空きバッファ判定値（Judge）を“０”に設定し（Ｓ４８）、（残り枚数−５０）の値が設定値よりも大きい場合（（残り枚数−５０）＞５）には、空きバッファ判定値（Judge）を“１”に設定する（Ｓ４９）。
【０１６３】
この空きバッファ判定値（Judge）は、受信バッファに残っている未印画処理の印画データの個数と比較することで、そのプリンタユニットで印画処理を行うか、あるいは別のプリンタユニットに切り替えて印画処理を行うかを判定するための指標として用いるものである。
【０１６４】
（残り枚数−５０）の値が設定値以下の場合（（残り枚数−５０）≦５）は、印画用メディアが少なくメディアエンドが発生する可能性の有る状態である。このときの空きバッファ判定値（Judge）“０”と未印画処理の印画データの個数とを比較し（Ｓ５０）、未印画処理の印画データが１個あるいは２個残っている場合には、そのプリンタユニットで印画を行うことはできないため、別のプリンタユニットに切り替える（Ｓ５３）。なお、未印画処理の印画データの個数が０であって、印画すべき印画データが残っていない場合には、別のプリンタユニットに切り替えることなく、そのプリンタユニットでの印画を続ける（Ｓ５１）。
【０１６５】
また、（残り枚数−５０）の値が設定値よりも大きい場合（（残り枚数−５０）＞５）は、印画用メディアが十分であって印画処理を行うことができる状態である。このときの空きバッファ判定値（Judge）“１”と未印画処理の印画データの個数とを比較し（Ｓ５０）、未印画処理の印画データが２個残っている場合には、そのプリンタユニットで印画を行うことはできないため、別のプリンタユニットに切り替え（Ｓ５３）、一方、未印画処理の印画データが０又は１個残っている場合には、そのプリンタユニットで印画を行う（Ｓ５１）。Ｓ５１の印画処理を行った後、アプリケーションカウンタおよびライフカウンタをカウントアップする（Ｓ５２）。
【０１６６】
以下の表２，３はこの関係を示している。
【０１６７】
【表２】
2008307796.tif 000004
【０１６８】
【表３】
2008307796.tif 000005
【０１６９】
図１７,図１８はメディアニアエンド検出時のリカバリー動作を説明するための説明図である
【０１７０】
図１７（ａ）〜（ｆ）は、空きバッファ判定値（Judge）が「１」の場合を示し、図１７（ｇ），（ｈ）空きバッファ判定値（Judge）が「０」の場合を示している。
【０１７１】
空きバッファ判定値（Judge）が「１」の場合、ライフカウンタCLが“Ｎ”のとき、初期化によってアプリケーションカウンタCAは“Ｎ”となる。カウンタ値差は“０”である。このとき２つの受信バッファはともに空きバッファである。
【０１７２】
印画データが送信されると、アプリケーションカウンタCAは“Ｎ＋１”となり、受信バッファの一方に印画データが格納され、空きバッファは“１”となる（図１７（ｃ））。さらに、印画データが送信されると、アプリケーションカウンタCAは“Ｎ＋２”となり、受信バッファの他方に印画データが格納され、空きバッファは“０”となる（図１７（ｄ））。この状態で印画データが送信されると、カウンタ差が２であるため、他のプリンタユニットに送信される。
【０１７３】
空きバッファ判定値（Judge）が「０」の場合には、２つの受信バッファの一方のみを使用する（図１７（ｇ））。印画データが送信されると、アプリケーションカウンタCAは“Ｎ＋３”となり、受信バッファの一方に印画データが格納され、空きバッファは“０”となる（図１７（ｈ））。
【０１７４】
さらに、この状態で印画データが送信されると、カウンタ差が１であるため、他のプリンタユニットに送信される。
【０１７５】
図１８はメディアニアエンド検出時のリカバリー動作を説明するための説明図である。
【０１７６】
図１８では、２つの受信バッファの処理の例を示し、プリンタユニット７Ａ〜７Ｄはそれぞれ２つの受信バッファ７ａ，７ｂを備え、はじめの状態において各プリンタユニットの受信バッファには印画データが格納されているものとする。また、プリントシステムは、印画物を印画データD1〜D8の順序で排出する排出制御を行うものとする。
【０１７７】
図１８中では、印画データをD1〜D8で示し、はじめに、プリンタユニット７Ａの受信バッファ７ａ，７ｂには印画データD1，D5が格納され、プリンタユニット７Ｂの受信バッファ７ａ，７ｂには印画データD2，D6が格納され、プリンタユニット７Ｃの受信バッファ７ａ，７ｂには印画データD3，D7が格納され、プリンタユニット７Ｃの受信バッファ７ａ，７ｂには印画データD4，D8が格納されているものとする（図１８（ａ））。
【０１７８】
この状態において、各プリンタユニット７Ａ〜７Ｄは、受信バッファ７ａに格納される印画データD1〜D4を読み出して印画処理を行う。ここで、プリンタユニット７Ａが印画データD1の印画処理において、プリンタユニット７Ａのメディアニアエンドエラーが発生した場合には、ユーザアプリケーション２は、ステータスＡＰＩ３によってプリンタユニット７Ａのメディアニアエンドエラーを検出する。メディアニアエンドエラーを検出すると、プリンタユニット７Ａの受信バッファの使用個数を“１”とする（図１８（ｂ））。
【０１７９】
印画データD1の印画処理および排出処理が終了した後、次の印画データD9はプリンタユニット７Ａに送信することができないため（図１８（ｃ））、プリンタの切り替えを行って空きバッファが存在するプリンタユニット７Ｂの受信バッファに送信する（図１８（ｄ））。
【０１８０】
図１９、図２０は本発明のプリンタユニットの切り替え動作を説明するためのタイミングチャートである。
【０１８１】
図１９は印画メディアの残量が十分にあり、空きバッファ判定値（Judge）が「１」の場合を示し、図２０は印画メディアの残量が不足し、空きバッファ判定値（Judge）が「０」の場合を示している。
【０１８２】
図１９において、はじめに、アプリケーションカウンタのカウンタ値（図１９（ｄ））をライフカウンタのカウンタ値Ｎ（図１９（ｃ））に基づいてＮに初期化する（図１９中のａ）。これによって、カウンタ値差は“０” （図１９（ｅ））、空きバッファ数は“２” （図１９（ｆ））となる。ここで、空きバッファ判定値（Judge）は“１” （図１９（ｇ））であるから、プリンタユニットの切り替えは行われない（図１９（ｈ）,（ｉ））。
【０１８３】
この状態で印画データを送信する場合には（図１９（ａ）のｂ）、空きバッファ判定値（Judge）は“１” （図１９（ｇ））であるから、プリンタユニットの切り替えを行うことなく（図１９（ｈ）,（ｉ））、送信が行われる。これによって、アプリケーションカウンタのカウンタ値は“Ｎ”から“Ｎ＋１”となり（図１９（ｄ））、カウンタ値差は“１” （図１９（ｅ））、空きバッファ数は“１” （図１９（ｆ））となる。
【０１８４】
この状態で印画データを送信する場合には（図１９（ｅ）のｃ）、空きバッファ判定値（Judge）は“１” （図１９（ｇ））であるから、プリンタユニットの切り替えを行うことなく（図１９（ｈ）,（ｉ））、送信が行われる。これによって、アプリケーションカウンタのカウンタ値は“Ｎ＋１”から“Ｎ＋２”となり（図１９（ｄ））、カウンタ値差は“２” （図１９（ｅ））、空きバッファ数は“０” （図１９（ｆ））となる。
【０１８５】
さらに、この状態で印画データを送信する場合には（図１９（ａ）のｄ）、カウンタ値差は“２” （図１９（ｅ））であり、空きバッファ判定値（Judge）は“１” （図１９（ｇ））であるから、プリンタユニットの切り替えが行われる（図１９（ｈ）,（ｉ））。
【０１８６】
プリンタ動作は、印画処理、カット処理、シュータ、裏面印刷、およびソータの処理が順に行われる。プリンタ動作が行われると（図１９（ｂ）のｅ）、ライフカウンタのカウンタ値は“Ｎ”から“Ｎ＋１”となり（図１９（ｃ））、カウンタ値差は“１” （図１９（ｅ））、空きバッファ数は“１” （図１９（ｆ））となる。さらに、プリンタ動作が行われると（図１９（ｂ）のｆ）、ライフカウンタのカウンタ値は“Ｎ＋１”から“Ｎ＋２”となり（図１９（ｃ））、カウンタ値差は“０” （図１９（ｅ））、空きバッファ数は“２” （図１９（ｆ））となる。
【０１８７】
図２０において、はじめに、アプリケーションカウンタのカウンタ値（図２０（ｄ））をライフカウンタのカウンタ値Ｎ（図２０（ｃ））に基づいてＮに初期化する（図２０中のａ）。これによって、カウンタ値差は“０” （図２０（ｅ））、空きバッファ数は“２” （図２０（ｆ））となる。ここで、空きバッファ判定値（Judge）は“０” （図２０（ｇ））であるから、プリンタユニットの切り替えは行われない（図２０（ｈ）,（ｉ））。
【０１８８】
この状態で印画データを送信する場合には（図２０（ａ）のｂ）、空きバッファ判定値（Judge）は“１” （図２０（ｇ））であるから、プリンタユニットの切り替えを行うことなく（図２０（ｈ）,（ｉ））、送信が行われる。これによって、アプリケーションカウンタのカウンタ値は“Ｎ”から“Ｎ＋１”となり（図２０（ｄ））、カウンタ値差は“１” （図２０（ｅ））、空きバッファ数は“１” （図２０（ｆ））となる。
【０１８９】
この状態で印画データを送信する場合には（図２０（ｅ）のｃ）、空きバッファ判定値（Judge）は“０” （図２０（ｇ））であるから、プリンタユニットの切り替えて別のプリンタユニットで印画を行う（図２０（ｈ）,（ｉ））。これによって、アプリケーションカウンタのカウンタ値は“Ｎ＋１”のままであり（図２０（ｄ））、カウンタ値差は“１” （図１９（ｅ））、空きバッファ数は“１” （図２０（ｆ））のままである。
【０１９０】
さらに、この状態で印画データを送信する場合には（図２０（ａ）のｄ）、空きバッファ判定値（Judge）は“０” （図２０（ｇ））であるから、プリンタユニットの切り替えて別のプリンタユニットで印画を行う（図２０（ｈ）,（ｉ））。これによって、アプリケーションカウンタのカウンタ値は“Ｎ＋１”のままであり（図２０（ｄ））、カウンタ値差は“１” （図２０（ｅ））、空きバッファ数は“１” （図２０（ｆ））のままである。
【０１９１】
ここで、プリンタ動作が行われると（図２０（ｂ）のｅ）、ライフカウンタのカウンタ値は“Ｎ”から“Ｎ＋１”となり（図２０（ｃ））、カウンタ値差は“０” （図２０（ｅ））、空きバッファ数は“２” （図２０（ｆ））となる。
【０１９２】
この状態で印画データを送信する場合には（図２０（ａ）のｆ）、空きバッファ判定値（Judge）は“１” （図２０（ｇ））であるから、プリンタユニットの切り替えを行うことなく（図２０（ｈ）,（ｉ））、送信が行われる。これによって、アプリケーションカウンタのカウンタ値は“Ｎ＋１”から“Ｎ＋２”となり（図２０（ｄ））、カウンタ値差は“１” （図２０（ｅ））、空きバッファ数は“１” （図２０（ｆ））となる。
【０１９３】
この状態で印画データを送信する場合には（図２０（ａ）のｇ）、空きバッファ判定値（Judge）は“０” （図２０（ｇ））であるから、プリンタユニットの切り替えて別のプリンタユニットで印画を行う（図２０（ｈ）,（ｉ））。これによって、アプリケーションカウンタのカウンタ値は“Ｎ＋１”のままであり（図２０（ｄ））、カウンタ値差は“１” （図２０（ｅ））、空きバッファ数は“１” （図２０（ｆ））のままである。
【０１９４】
さらに、プリンタ動作が行われると（図２０（ｂ）のｈ）、ライフカウンタのカウンタ値は“Ｎ＋１”から“Ｎ＋２”となり（図２０（ｃ））、カウンタ値差は“０” （図２０（ｅ））、空きバッファ数は“２” （図１９（ｆ））となる。
【０１９５】
なお、上記した構成例は一例であり、本発明はこれらの例に限定されるものではなく、各種変更を含むものである。また、上記した構成例では、２つの受信バッファの例について示しているが、本発明は、受信バッファの個数は２つに限られるものではなく、２つ以上の任意の個数とする構成に適用してもよい。
【図面の簡単な説明】
【０１９６】
【図１】本発明のプリントシステムの概略構成を説明するための図である。
【図２】本発明のプリンタ部の構成例を示す概略ブロック図である。
【図３】本発明のプリンタ部の構成例を示す概略ブロック図である。
【図４】本発明のコントローラによるプリンタユニットの順序制御を説明するための図である。
【図５】本発明のプリントシステムの通常の印画動作を説明するためのフローチャートである。
【図６】本発明のプリントシステムの通常の印画動作を説明するための説明図である。
【図７】本発明のエラーリカバリー時における動作を説明するためのフローチャートである。
【図８】本発明の印画物を廃棄せずに行うリカバリー処理を説明するための図である。
【図９】本発明の印画物を廃棄せずに行うリカバリー処理を説明するための図である。
【図１０】本発明の印画物を廃棄して行うリカバリー処理を説明するための図である。
【図１１】本発明の印画物を廃棄して行うリカバリー処理を説明するための図である。
【図１２】本発明の印画物を廃棄して行うリカバリー処理を説明するための図である。
【図１３】本発明のメディアニアエンドの検出時における処理を説明するためのフローチャートである。
【図１４】本発明のメディアニアエンドの検出時における処理を説明するための説明図である。
【図１５】本発明のメディアニアエンドの検出時によるリカバリー動作を制御する構成例を説明するための図である。
【図１６】本発明のメディアニアエンドの検出時のリカバリー動作を説明するためのフローチャートである。
【図１７】本発明のメディアニアエンドの検出時のリカバリー動作を説明するための説明図である。
【図１８】本発明のメディアニアエンドの検出時のリカバリー動作を説明するための説明図である。
【図１９】本発明のプリンタユニットの切り替え動作を説明するためのタイミングチャートである。
【図２０】本発明のプリンタユニットの切り替え動作を説明するためのタイミングチャートである。
【図２１】印画用メディアを単位として行う印刷処理であることに起因するエラーと、このエラーに対するリカバリー処理を説明するための図である。
【符号の説明】
【０１９７】
１  プリントシステム
２  ユーザアプリケーション
３  ステータスＡＰＩ
４  ドライバ
５  プリンタ部
６  コントローラ
７  プリンタユニット
７ａ  受信バッファ
７ｂ  受信バッファ
７ｃ  印画データ形成回路
７ｄ  ページメモリ
７ｅ  ヘッド
７ｆ  残量記録手段
７ｇ  切替回路
８  残量検知部
９  印画処理制御部
【図１】
2008307796.tif 000006
【図２】
2008307796.tif 000007
【図３】
2008307796.tif 000008
【図４】
2008307796.tif 000009
【図５】
2008307796.tif 000010
【図６】
2008307796.tif 000011
【図７】
2008307796.tif 000012
【図８】
2008307796.tif 000013
【図９】
2008307796.tif 000014
【図１０】
2008307796.tif 000015
【図１１】
2008307796.tif 000016
【図１２】
2008307796.tif 000017
【図１３】
2008307796.tif 000018
【図１４】
2008307796.tif 000019
【図１５】
2008307796.tif 000020
【図１６】
2008307796.tif 000021
【図１７】
2008307796.tif 000022
【図１８】
2008307796.tif 000023
【図１９】
2008307796.tif 000024
【図２０】
2008307796.tif 000025
【図２１】
2008307796.tif 000026