(57)【要約】【課題】所定の印刷指令出力手段以外から印刷指令を受けてプリンタで印刷したことを精度よく推定できる。【解決手段】プリントサーバ２０は、所定時間内にプリンタ４０へ出力された印刷指令に含まれる印刷枚数の総数と同時間内にプリンタ４０が行った印刷動作回数との比較結果から、プリントサーバ２０の印刷指令以外に印刷動作を行っている可能性があるか否かを把握し、プリンタ４０へ出力された各印刷指令に含まれる印刷枚数と各印刷指令に対応して計数された印刷動作回数との比較結果から、印刷指令通りにプリンタ４０が印刷動作しているか否かつまり異常が発生しているか否かを推定する。ここで、プリントサーバ２０の印刷指令以外に印刷動作を行っている可能性があるときには、プリンタ４０に異常が発生している可能性もあるが、後者の比較結果を利用することにより両者を区別できる。【選択図】        図１
2004310212.tif 000002
【特許請求の範囲】
【請求項１】
印刷動作回数を計数可能なプリンタの稼働状態を推定するシステムであって、
前記プリンタへの印刷指令の出力を専属的に行う印刷指令出力手段と、
前記プリンタにより計数された印刷動作回数を前記プリンタから入力する動作回数入力手段と、
所定時間内に前記印刷指令出力手段によって前記プリンタへ出力された印刷指令に含まれる印刷枚数の総数と前記所定時間内に前記動作回数入力手段によって入力された印刷動作回数との比較結果、及び前記印刷指令出力手段によって前記プリンタへ出力された各印刷指令に含まれる印刷枚数と前記動作回数入力手段によって入力され各印刷指令に対応して計数された印刷動作回数との比較結果に基づいて、前記プリンタの稼働状態を推定する稼働状態推定手段と
を備えたプリンタ稼働状態推定システム。
【請求項２】
前記推定手段は、前記所定時間内に前記プリンタへ出力された印刷指令に含まれる印刷枚数の総数に対して前記所定時間内に入力された印刷動作回数が許容範囲を超えて大きく、かつ、各印刷指令に含まれる印刷枚数に対して各印刷指令に対応する印刷動作回数が許容範囲内に収まるとき、前記プリンタが前記印刷指令出力手段以外から印刷指令を受けて印刷していたと推定する
請求項１に記載のプリンタ稼働状態推定システム。
【請求項３】
前記推定手段は、前記所定時間内に前記プリンタへ出力された印刷指令に含まれる印刷枚数の総数に対して前記所定時間内に入力された印刷動作回数が許容範囲を超えて大きく、かつ、各印刷指令に含まれる印刷枚数に対して各印刷指令に対応する印刷動作回数が許容範囲を超えて大きいとき、前記プリンタに異常が発生していると推定する
請求項２に記載のプリンタ稼働状態推定システム。
【請求項４】
所定の印刷指令出力手段からの印刷指令を受けて印刷を行い印刷動作回数をシリアルに累算可能なプリンタの稼働状態を推定するシステムであって、
前記プリンタへの印刷指令の出力を専属的に行う印刷指令出力手段と、
前記プリンタが前記印刷指令の処理を開始した時の印刷動作回数の累算値と前記印刷指令の処理を終了したときの印刷動作回数の累算値とを前記プリンタから入力する累算値入力手段と、
前記累算値入力手段によって入力された前記両累算値から各印刷指令に対応する印刷動作回数を算出する印刷動作回数算出手段と、
前記印刷指令出力手段によって時系列的に連続して出力された印刷指令につき前記累算値入力手段によって入力された先の印刷指令の処理を終了したときの累算値と後の印刷指令の処理を開始したときの累算値との比較結果、及び前記印刷指令出力手段によって前記プリンタへ出力された各印刷指令に含まれる印刷枚数と各印刷指令に対応して前記印刷動作回数算出手段によって算出された印刷動作回数との比較結果に基づいて、前記プリンタの稼働状態を推定する推定手段と
を備えたプリンタ稼働状態推定システム。
【請求項５】
前記推定手段は、前記時系列的に連続する印刷指令につき先の印刷指令の処理を終了したときの累算値と後の印刷指令の処理を開始したときの累算値との差が許容範囲を超えて大きく、かつ、各印刷指令に含まれる印刷枚数に対して各印刷指令に対応する印刷動作回数が許容範囲内に収まるとき、前記プリンタが前記印刷指令出力手段以外から印刷指令を受けて印刷していたと推定する
請求項４に記載のプリンタ稼働状態推定システム。
【請求項６】
前記推定手段は、前記時系列的に連続する印刷指令につき先の印刷指令の処理を終了したときの累算値と後の印刷指令の処理を開始したときの累算値との差が許容範囲を超えて大きく、かつ、各印刷指令に含まれる印刷枚数に対して各印刷指令に対応する印刷動作回数が許容範囲を超えて大きいとき、前記プリンタに異常が発生していると推定する
請求項５に記載のプリンタ稼働状態推定システム。
【請求項７】
前記プリンタ稼働状態推定システムは、前記プリンタの使用状況を管理する管理サーバへ該プリンタの使用状況を電気通信回線を通じて送信するプリントサーバにより構成される
請求項１〜６のいずれかに記載のプリンタ稼働状態推定システム。
【請求項８】
前記プリンタ稼働状態推定システムは、前記プリンタの使用状況を管理する管理サーバと、該管理サーバへ該プリンタの使用状況を電気通信回線を通じて送信するプリントサーバとにより構成され、前記管理サーバは少なくとも前記推定手段を備え、前記プリントサーバは少なくとも前記印刷指令出力手段を備える
請求項１〜６のいずれかに記載のプリンタ稼働状態推定システム。
【請求項９】
所定の印刷指令出力手段から専属的に印刷指令を受け印刷を行い印刷動作回数を計数可能なプリンタの稼働状態を推定する方法であって、
（ａ）前記プリンタへ印刷指令を出力するステップと、
（ｂ）前記プリンタにより計数された印刷動作回数を前記プリンタから入力するステップと、
（ｃ）所定時間内に前記ステップ（ａ）で前記プリンタへ出力された印刷指令に含まれる印刷枚数の総数と前記所定時間内に前記ステップ（ｂ）で入力された印刷動作回数との比較結果、及び前記ステップ（ａ）で前記プリンタへ出力された各印刷指令に含まれる印刷枚数と前記ステップ（ｂ）で入力され各印刷指令に対応して計数された印刷動作回数との比較結果に基づいて、前記プリンタの稼働状態を推定するステップと
を含むプリンタ稼働状態推定方法。
【請求項１０】
所定の印刷指令出力手段から専属的に印刷指令を受け印刷を行い印刷動作回数を計数可能なプリンタの稼働状態を推定する方法であって、
（ａ）前記プリンタへ印刷指令を出力するステップと、
（ｂ）前記プリンタが前記印刷指令の処理を開始した時の印刷動作回数の累算値と前記印刷指令の処理を終了したときの印刷動作回数の累算値とを前記プリンタから入力するステップと、
（ｃ）前記ステップ（ｂ）で入力された前記両累算値から各印刷指令に対応する印刷動作回数を算出するステップと、
（ｄ）前記ステップ（ａ）で時系列的に連続して出力された印刷指令につき前記ステップ（ｂ）で入力された先の印刷指令の処理を終了したときの累算値と後の印刷指令の処理を開始したときの累算値との比較結果、及び前記ステップ（ａ）で前記プリンタへ出力された各印刷指令に含まれる印刷枚数と各印刷指令に対応して前記ステップ（ｃ）で算出手段によって算出された印刷動作回数との比較結果に基づいて、前記プリンタの稼働状態を推定するステップと
を含むプリンタ稼働状態推定方法。
【請求項１１】
請求項９又は１０のいずれかに記載のプリンタ稼働状態推定方法の各ステップを１又は複数のコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、プリンタ稼働状態推定システム、その方法及びそのプログラムに関する。
【０００２】
【従来の技術】
従来、プリントシステムとしては、プリンタの使用状況を管理する管理サーバへプリンタの使用状況をネットワークを通じて送信すると共にクライアントコンピュータから印刷ジョブを受信するプリントサーバと、このプリントサーバに接続され該プリントサーバによって印刷ジョブの処理が割り当てられる２台のプリンタとを備えたものが知られている（例えば、特許文献１参照）。このプリントシステムは、複数のフォトスタジオに設置されるものであり、管理サーバは、各フォトスタジオに対してそのフォトスタジオに設置されたプリントシステムのプリントサーバからプリンタの使用状況を受信しその使用状況に応じて課金額を設定し請求する。
【０００３】
【特許文献１】
特開２００３−４４２５５号公報（図２）
【０００４】
【発明が解決しようとする課題】
こうしたプリントシステムでは、プリントサーバが管理サーバへプリンタの使用状況の一つとして印刷ジョブを送信する。すると、管理サーバは、その印刷ジョブに含まれる印刷枚数に基づいて課金額を設定する。ところで、ユーザがそのプリントサーバ以外のコンピュータをプリンタに接続して印刷を行うと、プリントサーバではその印刷ジョブを把握することができないため、管理サーバは実際に使用された枚数分の課金ができず、不利益を被ることになる。このため、ユーザがそのプリントサーバ以外のコンピュータをプリンタに接続して印刷を行うことを検証できるようにすることが望まれている。一方、ユーザがそのプリントサーバ以外のコンピュータをプリンタに接続してそのプリンタに印刷させているか否かを検証するにあたっては、見かけ上そのように見えるだけで、実際にはプリンタの故障が原因であることもあるため、両者を区別する必要がある。
【０００５】
本発明のプリンタ稼働状態推定システム、その方法及びそのプログラムは、このような課題に鑑みなされたものであり、所定の印刷指令出力手段以外から印刷指令を受けてプリンタで印刷したことを精度よく推定できるプリンタ稼働状態推定システム、その方法及びそのプログラムを提供することを目的の一つとする。また、プリンタの故障が原因であるのに所定の印刷指令出力手段以外から印刷指令を受けてプリンタで印刷したと誤認することのないプリンタ稼働状態推定システム、その方法及びそのプログラムを提供することを目的の一つとする。
【０００６】
【課題を解決するための手段およびその作用・効果】
本発明のプリンタ稼働状態推定システム、その方法及びそのプログラムは、上述の目的の少なくとも一つを達成するために以下の手段を採った。
【０００７】
本発明は、印刷動作回数を計数可能なプリンタの稼働状態を推定するシステムであって、
前記プリンタへの印刷指令の出力を専属的に行う印刷指令出力手段と、
前記プリンタにより計数された印刷動作回数を前記プリンタから入力する動作回数入力手段と、
所定時間内に前記印刷指令出力手段によって前記プリンタへ出力された印刷指令に含まれる印刷枚数の総数と前記所定時間内に前記動作回数入力手段によって入力された印刷動作回数との比較結果、及び前記印刷指令出力手段によって前記プリンタへ出力された各印刷指令に含まれる印刷枚数と前記動作回数入力手段によって入力され各印刷指令に対応して計数された印刷動作回数との比較結果に基づいて、前記プリンタの稼働状態を推定する稼働状態推定手段と
を備えたものである。
【０００８】
このプリンタ稼働状態推定システムでは、所定時間内にプリンタへ出力された印刷指令に含まれる印刷枚数の総数と所定時間内にプリンタが行った印刷動作回数との比較結果、及びプリンタへ出力された各印刷指令に含まれる印刷枚数と各印刷指令に対応して計数された印刷動作回数との比較結果に基づいて、プリンタの稼働状態を推定する。前者の比較結果から、印刷指令出力手段の印刷指令以外に印刷動作を行っている可能性があるか否かを把握できる。また、後者の比較結果から、印刷指令通りにプリンタが印刷動作しているか否かつまりプリンタに異常が発生しているか否かを推定できる。つまり、印刷指令出力手段の印刷指令以外に印刷動作を行っている可能性があるときには、プリンタに異常が発生している可能性もあるため、後者の比較結果を利用することにより両者を区別する。この結果、所定の印刷指令出力手段以外から印刷指令を受けてプリンタで印刷したことを精度よく推定できる。
【０００９】
この態様を採用した本発明のプリンタ稼働状態推定システムにおいて、前記推定手段は、前記所定時間内に前記プリンタへ出力された印刷指令に含まれる印刷枚数の総数に対して前記所定時間内に入力された印刷動作回数が許容範囲を超えて大きく、かつ、各印刷指令に含まれる印刷枚数に対して各印刷指令に対応する印刷動作回数が許容範囲内に収まるとき、前記プリンタが前記印刷指令出力手段以外から印刷指令を受けて印刷していたと推定してもよい。こうすれば、所定の印刷指令出力手段以外から印刷指令を受けてプリンタで印刷したことをより精度よく推定できる。ここで、「許容範囲」は、実際にプリンタで印刷するにあたっては印刷ミスや紙詰まりやテスト印刷等により無駄に印刷動作回数が増えることがあるためそれを考慮して経験的に定められた範囲をいう（以下同じ）。また、前記推定手段は、前記所定時間内に前記プリンタへ出力された印刷指令に含まれる印刷枚数の総数に対して前記所定時間内に入力された印刷動作回数が許容範囲を超えて大きく、かつ、各印刷指令に含まれる印刷枚数に対して各印刷指令に対応する印刷動作回数が許容範囲を超えて大きいとき、前記プリンタに異常が発生していると推定してもよい。こうすれば、所定の印刷指令出力手段以外から印刷指令を受けてプリンタで印刷したこととプリンタに異常が発生していることとを区別して推定できる。
【００１０】
本発明は、所定の印刷指令出力手段からの印刷指令を受けて印刷を行い印刷動作回数をシリアルに累算可能なプリンタの稼働状態を推定するシステムであって、
前記プリンタへの印刷指令の出力を専属的に行う印刷指令出力手段と、
前記プリンタが前記印刷指令の処理を開始した時の印刷動作回数の累算値と前記印刷指令の処理を終了したときの印刷動作回数の累算値とを前記プリンタから入力する累算値入力手段と、
前記累算値入力手段によって入力された前記両累算値から各印刷指令に対応する印刷動作回数を算出する印刷動作回数算出手段と、
前記印刷指令出力手段によって時系列的に連続して出力された印刷指令につき前記累算値入力手段によって入力された先の印刷指令の処理を終了したときの累算値と後の印刷指令の処理を開始したときの累算値との比較結果、及び前記印刷指令出力手段によって前記プリンタへ出力された各印刷指令に含まれる印刷枚数と各印刷指令に対応して前記印刷動作回数算出手段によって算出された印刷動作回数との比較結果に基づいて、前記プリンタの稼働状態を推定する推定手段と
を備えたものとしてもよい。
【００１１】
このプリンタ稼働状態推定システムでは、時系列的に連続する印刷指令につき先の印刷指令の処理を終了したときの累算値と後の印刷指令の処理を開始したときの累算値との比較結果、及び各印刷指令に含まれる印刷枚数と各印刷指令に対応する印刷動作回数との比較結果に基づいて、プリンタの稼働状態を推定する。前者の比較結果から、印刷指令出力手段の印刷指令以外に印刷動作を行っている可能性があるか否かを把握できる。また、後者の比較結果から、印刷指令通りにプリンタが印刷動作しているか否かつまりプリンタに異常が発生しているか否かを推定できる。つまり、印刷指令出力手段の印刷指令以外に印刷動作を行っている可能性があるときには、プリンタに異常が発生している可能性もあるため、後者の比較結果を利用することにより両者を区別する。この結果、所定の印刷指令出力手段以外から印刷指令を受けてプリンタで印刷したことを精度よく推定できる。
【００１２】
この態様を採用した本発明のプリンタ稼働状態推定システムにおいて、前記推定手段は、前記時系列的に連続する印刷指令につき先の印刷指令の処理を終了したときの累算値と後の印刷指令の処理を開始したときの累算値との差が許容範囲を超えて大きく、かつ、各印刷指令に含まれる印刷枚数に対して各印刷指令に対応する印刷動作回数が許容範囲内に収まるとき、前記プリンタが前記印刷指令出力手段以外から印刷指令を受けて印刷していたと推定してもよい。こうすれば、所定の印刷指令出力手段以外から印刷指令を受けてプリンタで印刷したことをより精度よく推定できる。また、前記推定手段は、前記時系列的に連続する印刷指令につき先の印刷指令の処理を終了したときの累算値と後の印刷指令の処理を開始したときの累算値との差が許容範囲を超えて大きく、かつ、各印刷指令に含まれる印刷枚数に対して各印刷指令に対応する印刷動作回数が許容範囲を超えて大きいとき、前記プリンタに異常が発生していると推定してもよい。こうすれば、所定の印刷指令出力手段以外から印刷指令を受けてプリンタで印刷したこととプリンタに異常が発生していることとを区別して推定できる。
【００１３】
本発明のプリンタ稼働状態推定システムは、前記プリンタの使用状況を管理する管理サーバへ該プリンタの使用状況を電気通信回線を通じて送信するプリントサーバにより構成されていてもよい。こうすれば、プリンタの稼働状態をプリンタの使用状況に含めてプリントサーバから管理サーバへ送信することができる。また、プリントサーバは管理サーバへプリンタの使用状況を送信する前にプリンタの稼働状態を検証することも可能となり、ひいては正確なプリンタの使用状況を管理サーバへ送信するのに役立つ。
【００１４】
本発明のプリンタ稼働状態推定システムは、前記プリンタの使用状況を管理する管理サーバと、該管理サーバへ該プリンタの使用状況を電気通信回線を通じて送信するプリントサーバとにより構成され、前記管理サーバは少なくとも前記推定手段を備え、前記プリントサーバは少なくとも前記印刷指令出力手段を備えていてもよい。こうすれば、管理サーバの運営者はプリンタの稼働状態を知ることができ、ひいてはプリンタの使用状況を正確に把握することが可能となる。
【００１５】
本発明は、所定の印刷指令出力手段から専属的に印刷指令を受け印刷を行い印刷動作回数を計数可能なプリンタの稼働状態を推定する方法であって、
（ａ）前記プリンタへ印刷指令を出力するステップと、
（ｂ）前記プリンタにより計数された印刷動作回数を前記プリンタから入力するステップと、
（ｃ）所定時間内に前記ステップ（ａ）で前記プリンタへ出力された印刷指令に含まれる印刷枚数の総数と前記所定時間内に前記ステップ（ｂ）で入力された印刷動作回数との比較結果、及び前記ステップ（ａ）で前記プリンタへ出力された各印刷指令に含まれる印刷枚数と前記ステップ（ｂ）で入力され各印刷指令に対応して計数された印刷動作回数との比較結果に基づいて、前記プリンタの稼働状態を推定するステップと
を含むものである。
【００１６】
このプリンタ稼働状態推定方法では、印刷指令に含まれる印刷枚数の総数と印刷動作回数との比較結果から、所定の印刷指令出力手段の印刷指令以外に印刷動作を行っている可能性があるか否かを判定する。また、所定の印刷指令出力手段の印刷指令以外に印刷動作を行っている可能性があるときには、プリンタに異常が発生している可能性もあるため、印刷指令に含まれる印刷枚数とその印刷指令に対応する印刷動作回数との比較結果を利用することにより両者を区別する。この結果、所定の印刷指令出力手段以外から印刷指令を受けてプリンタで印刷したことを精度よく推定できる。
【００１７】
本発明は、所定の印刷指令出力手段から専属的に印刷指令を受け印刷を行い印刷動作回数を計数可能なプリンタの稼働状態を推定する方法であって、
（ａ）前記プリンタへ印刷指令を出力するステップと、
（ｂ）前記プリンタが前記印刷指令の処理を開始した時の印刷動作回数の累算値と前記印刷指令の処理を終了したときの印刷動作回数の累算値とを前記プリンタから入力するステップと、
（ｃ）前記ステップ（ｂ）で入力された前記両累算値から各印刷指令に対応する印刷動作回数を算出するステップと、
（ｄ）前記ステップ（ａ）で時系列的に連続して出力された印刷指令につき前記ステップ（ｂ）で入力された先の印刷指令の処理を終了したときの累算値と後の印刷指令の処理を開始したときの累算値との比較結果、及び前記ステップ（ａ）で前記プリンタへ出力された各印刷指令に含まれる印刷枚数と各印刷指令に対応して前記ステップ（ｃ）で算出手段によって算出された印刷動作回数との比較結果に基づいて、前記プリンタの稼働状態を推定するステップと
を含むものである。
【００１８】
このプリンタ稼働状態推定方法では、時系列的に連続して出力された印刷指令につき先の印刷指令の処理を終了したときの累算値と後の印刷指令の処理を開始したときの累算値との比較結果から、所定の印刷指令出力手段の印刷指令以外に印刷動作を行っている可能性があるか否かを判定する。また、所定の印刷指令出力手段の印刷指令以外に印刷動作を行っている可能性があるときには、プリンタに異常が発生している可能性もあるため、印刷指令に含まれる印刷枚数とその印刷指令に対応する印刷動作回数との比較結果を利用することにより両者を区別する。この結果、所定の印刷指令出力手段以外から印刷指令を受けてプリンタで印刷したことを精度よく推定できる。
【００１９】
また、本発明は、上述したプリンタ稼働状態推定方法の各ステップを１又は複数のコンピュータに実現させるためのプログラムであってもよい。このプログラムは、コンピュータが読み取り可能な記録媒体（例えばハードディスク、ＲＯＭ、ＦＤ、ＣＤ、ＤＶＤなど）に記録されていてもよいし、伝送媒体（インターネットやＬＡＮなどの通信網）を介してあるコンピュータから別のコンピュータへ配信されてもよいし、その他どのような形で授受されてもよい。このプログラムを一つのコンピュータに実行させるか又は複数のコンピュータに各ステップを分担して実行させれば、上述したプリンタ稼働状態推定方法と同様の効果が得られる。
【００２０】
【発明の実施の形態】
次に、本発明の実施の形態を図面に基づいて説明する。図１は、本発明の一実施形態であるフォトスタジオシステム１０の構成の概略を示す構成図である。本実施形態のフォトスタジオシステム１０は、図１に示すように、電気通信回線であるインターネット８０を通じて管理サーバ７０と通信が可能なプリントサーバ２０と、このプリントサーバ２０へ印刷ジョブを出力するクライアントＰＣ６０と、プリントサーバ２０によって印刷ジョブの処理が割り当てられる２台のプリンタ４０，５０とを備えている。ここで、２台のプリンタ４０，５０は、プリントサーバ２０と同じ筐体の中に収納されており、プリンタ４０が上段に設置され、プリンタ５０が下段に設置されている。このため、以下にはアッパプリンタ４０，ロアプリンタ５０と称することもある。なお、「ＰＣ」はパーソナルコンピュータの略である。
【００２１】
プリントサーバ２０は、各種の演算処理を実行するＣＰＵ２１と、ハードウェアの設定等を行うプログラム群が記録されたＲＯＭ２２と、ＣＰＵ２１が各種の演算処理を実行する際に一時的にデータを記録するＲＡＭ２３と、動作クロックを発生するクロックジェネレータ２４と、ディスプレイ２７が接続されるディスプレイコネクタを備えたビデオボード２５と、ＬＡＮを構築するためのＬＡＮケーブル１６が接続されるＬＡＮボード２６と、各種機器との接続・制御を行うための入出力コントローラ３１とがバス２９を介して接続されている。このプリントサーバ２０は、入出力コントローラ３１を介して、ハードディスク２８が接続されると共に２台のプリンタ４０，５０がそれぞれＵＳＢ端子を介して接続されている。また、プリントサーバ２０は、ＬＡＮボード２６に接続されたＬＡＮケーブル１６を介してクライアントＰＣ６０及びルータ１４に接続されており、ルータ１４からインターネット８０を通じて管理サーバ７０に接続される。
【００２２】
プリントサーバ２０のハードディスク２８は、クライアントＰＣ６０からの印刷指令に含まれる各種データを印刷ジョブとして格納するジョブフォルダ２８ａと、プリンタ４０，５０のステータスの履歴や印刷ジョブの履歴をプリンタ使用状況としてデータベース化して格納するプリンタ使用状況データベース２８ｂと、各種プログラムを格納するプログラムフォルダ２８ｃと、アッパプリンタ４０に関し印刷実行中の印刷ジョブと次回印刷予定の印刷ジョブの２つをスプールとして保持するアッパスプーラ２８ｄと、ロアプリンタ５０に関し印刷実行中の印刷ジョブと次回印刷予定の印刷ジョブの２つをスプールとして保持するロアスプーラ２８ｅとを備えている。このうち、ジョブフォルダ２８ａには、印刷指令に含まれる各種データ、即ちプリンタ指定や用紙種類等を含むジョブスクリプトや、印刷レイアウトを決めるのに必要な事項を含むレイアウトスクリプトや、レイアウトの写真枠にはめ込まれた画像データや、画像データに添付されたＩＣＣプロファイルなどが印刷ジョブとして格納されている。また、プリンタ使用状況データベース２８ｂには、インクジェットヘッド４５ｃの往復回数等の稼働状態や紙詰まり発生等のエラー発生状態やインクカートリッジ４５ｂのインク残量等の消耗品状態やクレジットカウンタ４４の値などのアッパプリンタ４０に関するステータス（使用状況）の履歴と、ロアプリンタ５０に関する同様のステータスの履歴と、ジョブフォルダ２８ａに格納される印刷ジョブの履歴とがデータベース化して記憶されている。更に、プログラムフォルダ２８ｃには、アッパプリンタ４０を制御するプリンタドライバや、ロアプリンタ５０を制御するプリンタドライバや、使用するプリンタのＩＣＣプロファイルと画像データに添付されてきたＩＣＣプロファイルとから色補正テーブルを生成して画像データの色補正を行うカラーコンバータや、印刷指令の実行を制御する印刷制御実行プログラムや、管理サーバ７０へログをアップロードするログアップロードプログラムや、各種情報を閲覧するウェブブラウザなどが含まれている。
【００２３】
アッパプリンタ４０とロアプリンタ５０は、いずれもプリントサーバ２０から専属的に印刷指令を受けるように契約された、顔料系インクを用いる同機種のインクジェット式プリンタであり、高画質で耐光性の非常に高い印刷物を出力する性能を有している。また、アッパプリンタ４０とロアプリンタ５０とは、いずれも同じ構成であるため、以下にはアッパプリンタ４０の構成について説明し、ロアプリンタ５０の説明は省略する。アッパプリンタ４０は、各種の演算処理を実行するＣＰＵ４１と、ハードウェアの設定等を行うプログラム群が記録されたＲＯＭ４２と、ＣＰＵ４１が各種の演算処理を実行する際に一時的にデータを記録するＲＡＭ４３と、工場出荷時に初期値に設定され印刷動作を１回行うごとに１ダウンカウントされるクレジットカウンタ４４と、カラー印刷を実行するプリンタエンジン４５とがバス４６を介して接続されている。このうち、プリンタエンジン４５は、水平方向に移動するキャリッジ４５ａに搭載されたインクカートリッジ４５ｂ、このインクカートリッジ４５ｂの下方に設けられ用紙Ｍにインクを吐出するインクジェットヘッド４５ｃ、回転することにより用紙Ｍをインクジェットヘッド４５ｃの印字位置に送り込むローラ４５ｄなどを備えている。本実施形態のインクカートリッジ４５ｂは、シアン（Ｃ）、マゼンダ（Ｍ）、イエロー（Ｙ）、ブラック（Ｋ）の顔料インクを各色ごとに収納したカラー印刷用のカートリッジである。なお、図１には便宜上、ロアプリンタ５０のブロックにはクレジットカウンタ５４のみ示したが、勿論ＣＰＵ等も備えている。
【００２４】
クライアントＰＣ６０は、ＬＡＮケーブル１６を介してプリントサーバ２０及びルータ１４に接続されており、ルータ１４からインターネット８０を通じて管理サーバ７０に接続される。このクライアントＰＣ６０は、ＵＳＢ端子を介してデジタルスチルカメラ（ＤＳＣ）６２と接続可能であり、ＤＳＣ６２で撮影された画像データやレタッチ等が施された画像データを印刷するための印刷ジョブをＬＡＮケーブル１６を通じてプリントサーバ２０へ送信する。また、クライアントＰＣ６０は、ウェブブラウザを介して管理サーバ７０へログインしてこのフォトスタジオシステム１０における各種情報をそのウェブブラウザに提供してもらう機能を有している。
【００２５】
管理サーバ７０は、多数のフォトスタジオに設置されているフォトスタジオシステム１０の稼働状態を集中的に管理する役割を果たすものであり、フォトスタジオとは異なる場所に設置されている。この管理サーバ７０は、各フォトスタジオシステム１０のプリントサーバ２０及びクライアントＰＣ６０とインターネット８０を介して通信可能に接続され、内部構成としては各種の演算処理を実行するＣＰＵ、ハードウェアの設定等を行うプログラム群が記録されたＲＯＭ、ＣＰＵが各種の演算処理を実行する際に一時的にデータを記録するＲＡＭ、各種データベースが記憶されたハードディスクなどを備えている。また、管理サーバ７０は、各フォトスタジオシステム１０のプリントサーバ２０から各種情報を収集し、それを管理サーバ７０のデータベースに保存し管理する機能を有している。具体的には、管理サーバ７０は、各フォトスタジオの各種情報に基づいて、そのフォトスタジオでの用紙やインク等の消耗品の消費量を計算して、各フォトスタジオへの消耗品の配給手配や料金請求などを行う機能も有している。更に、管理サーバ７０は、各フォトスタジオのクライアントＰＣ６０からウェブブラウザを通じてログインされたとき、管理サーバ７０のデータベースに保管してあるそのフォトスタジオの各種情報をそのウェブブラウザに提供する機能を有している。
【００２６】
次に、こうして構成された本実施形態のフォトスタジオシステム１０において画像データを印刷する一例について説明する。カメラマンは、ＤＳＣ６２を使用して所望の撮影対象を撮影した後、ＤＳＣ６２をクライアントＰＣ６０にＵＳＢ接続し、そのＤＳＣ６２に内蔵された画像記録媒体から所望の画像データをクライアントＰＣ６０のハードディスクに移動又はコピーする。この結果、クライアントＰＣ６０のハードディスクには、各種画像データが格納される。また、カメラマンは、クライアントＰＣ６０においてフォトレタッチソフトの機能を利用して画像データのレタッチを行ったりレイアウト編集機能を利用して画像データの用紙へのレイアウトを決定したりしたあと印刷ボタンをオンする。すると、クライアントＰＣ６０からプリントサーバ２０へ印刷指令が出力される。プリントサーバ２０は、クライアントＰＣ６０から出力される印刷指令に含まれる各データを印刷待ち状態の印刷ジョブとしてジョブフォルダ２８ａに格納する。印刷ジョブには、図２に示すようにそれぞれ固有のジョブＩＤが付与され、各ジョブＩＤにはページ番号とコピー部数とが対応付けられている。例えば、図２でジョブＩＤ「００１００」では第１ページ及び第２ページが２部ずつつまり合計４枚印刷され、ジョブＩＤ「００１０１」では第１ページ及び第２ページが１部ずつつまり合計２枚印刷され、ジョブＩＤ「００１０２」では第１ページが３部つまり３枚印刷される。また、プリントサーバ２０のＣＰＵ２１は、プログラムフォルダ２８ｃから図３に示す印刷指令出力処理ルーチンを読み出してこれを実行する。このルーチンが開始されると、ＣＰＵ２１は、まずアッパスプーラ２８ｄとロアスプーラ２８ｅの空き状況に応じてジョブフォルダ２８ａに格納されている印刷待ち状態の印刷ジョブを読み込み、アッパスプーラ２８ｄかロアスプーラ２８ｅのいずれに割り当てるかを決定する（ステップＳ１００）。この割り当て後、その印刷ジョブに含まれる画像データをカラーコンバータにより色補正し（ステップＳ１１０）、色補正後の画像データにつき、今回使用するプリンタのプリンタドライバによりＣＭＹＫ色データへの変換やハーフトーン処理等を行い、プリンタが解釈可能なＲＡＷデータを作成し（ステップＳ１２０）、作成したＲＡＷデータを今回使用するプリンタのスプーラにスプールとして格納し（ステップＳ１３０）、そのＲＡＷデータを今回使用するプリンタへ出力し（ステップＳ１４０）、このルーチンを終了する。この結果、プリンタ４０，５０において印刷ジョブに基づいて所定の用紙に所定の画像データが所定のレイアウトで印刷される。なお、後述するようにプリンタ４０，５０は印刷ジョブの処理を終えるごとにプリントサーバ２０へステータスを送信してくるため（図４のステップＳ２５０参照）、プリントサーバ２０はこのステータスの受信タイミングに応じて印刷指令実行処理ルーチンを実行する。
【００２７】
次に、本実施形態のフォトスタジオシステム１０におけるアッパプリンタ４０の動作、特にアッパプリンタ４０の印刷動作監視処理とクレジットリセット処理について説明する。なお、ロアプリンタ５０の動作については説明を省略するが、アッパプリンタ４０と同様の動作をする。
【００２８】
図４は、アッパプリンタ４０のＣＰＵ４１により実行される印刷動作監視ルーチンのフローチャートである。このルーチンは、ＲＯＭ４２に記憶され、ＣＰＵ４１により所定時間ごと（例えば数ｍｓｅｃごと）に読み出され繰り返し実行される。この印刷動作監視ルーチンが実行されると、アッパプリンタ４０のＣＰＵ４１は、まずＲＡＭ４３の所定領域に設けられた印刷動作フラグのオンオフを判定する（ステップＳ２００）。この印刷動作フラグは、アッパプリンタ４０が印刷動作中のときにオンにセットされ、アッパプリンタ４０が印刷動作中でないときにオフにセットされるフラグである。ここで、印刷動作とは、１枚の用紙の紙送りを開始してから排出が完了するまでの動作をいい、実際に印刷を実行しているか否かは問わない。
【００２９】
さて、ステップＳ２００で印刷動作フラグがオンのときには、実行中の印刷動作が完了したか否かを判定し（ステップＳ２１０）、印刷動作が完了していないときには、そのままこのルーチンを終了する。一方、ステップＳ２１０で印刷動作が完了したときには、印刷動作フラグをオフにセットすると共に（ステップＳ２２０）、クレジットカウンタ４４の値を１ディクリメントし（ステップＳ２３０）、今回の印刷ジョブの処理が終了したか否かを判定し（ステップＳ２４０）、今回の印刷ジョブの処理が終了していないときにはそのままステップＳ２５２へ進み、今回の印刷ジョブの処理が終了したときにはアッパプリンタ４０のステータスをプリントサーバ２０へ送信し（ステップＳ２５０）、その後ステップＳ２５２へ進む。このステータスには、クレジットカウンタ４４につき印刷ジョブの処理開始時の値と同印刷ジョブの処理終了時の値とが含まれる。そして、ステップＳ２５２では、クレジットカウンタ４４の値がゼロになったか否かを判定する。ここで、クレジットカウンタ４４は、工場出荷時には初期値にセットされ、印刷動作が行われるごとに１ディクリメントされるカウンタである。このクレジットカウンタ４４はダウンカウンタのため、初期値から現在の値を引いた値が印刷動作回数の計数値つまり印刷動作回数の実測値に相当する。さて、ステップＳ２５２でクレジットカウンタ４４の値がゼロでないときには、そのままこのルーチンを終了し、クレジットカウンタ４４の値がゼロのときには、クレジット切れフラグをオンにセットし（ステップＳ２５４）、このルーチンを終了する。ここで、クレジット切れフラグは、クレジットカウンタ４４の値がゼロのときにオンにセットされ、それ以外のときにはオフにセットされるフラグである。
【００３０】
一方、ステップＳ２００で印刷動作フラグがオフのときつまり印刷動作中でないときには、新たな印刷動作の開始時期か否かを判定し（ステップＳ２６０）、新たな印刷動作の開始時期のときにはクレジット切れフラグがオンか否かを判定する（ステップＳ２７０）。このステップＳ２７０でクレジット切れフラグがオフのときには、クレジットカウンタ４４の値が１以上のため、新たな印刷動作を開始することを許可して印刷動作フラグをオンにセットし（ステップＳ２８０）、このルーチンを終了する。一方、ステップＳ２７０でクレジット切れフラグがオンのときには、クレジットカウンタ４４の値がゼロのため、新たな印刷動作を開始することを禁止して印刷エラーをプリントサーバ２０やクライアントＰＣ６０へ出力し（ステップＳ２９０）、このルーチンを終了する。この印刷エラーを入力したプリントサーバ２０やクライアントＰＣ６０は、印刷エラーのメッセージと共にプリントサーバ２０を管理サーバ７０と接続するように促す旨のメッセージを表示出力するか音声出力する。これを機にユーザは、プリントサーバ２０がインターネット８０を通じて管理サーバ７０と接続するように入力操作することが多い。
【００３１】
図５は、アッパプリンタ４０のＣＰＵ４１により実行されるクレジットリセット処理ルーチンのフローチャートである。このルーチンは、ＲＯＭ４２に記憶され、ＣＰＵ４１により所定時間ごとに（例えば数ｍｓｅｃごと）に読み出され繰り返し実行される。このクレジットリセット処理ルーチンが実行されると、アッパプリンタ４０のＣＰＵ４１は、まずプリントサーバ２０からクレジットリセット指令を受信したか否かを判定する（ステップＳ３００）。このクレジットリセット指令は、プリントサーバ２０が管理サーバ７０との接続に成功したときにプリントサーバ２０から送信されてくる指令である（後述する図６のステップＳ４３０参照）。ステップＳ３００でクレジットリセット指令を受信したときにはクレジットカウンタ４４の値を初期値に戻すと共に（ステップＳ３１０）、ＲＡＭ４３の所定領域に設けられたクレジット切れフラグをオフにする（ステップＳ３２０）。そして、ステップＳ３００でクレジットリセット指令を受信していないとき又はステップＳ３２０でクレジット切れフラグをオフにしたあと、このルーチンを終了する。
【００３２】
ここで、クレジットカウンタ４４の初期値は、プリントサーバ２０のログアップロードタイミングに基づいて設定されている。具体的には、プリントサーバ２０が管理サーバ７０へログ情報をアップロードしてから次にログ情報をアップロードするまでの時間間隔は所定のインターバル時間（本実施形態では１２時間）であり、この時間間隔でアッパプリンタ４０が物理的に印刷可能な最大枚数を求める。例えば、Ａ４サイズで標準的な画像データを印刷するのに要する時間を算出し、その時間で所定のインターバル時間を割ることにより最大枚数を求める。そして、実際にはＡ４サイズより小さなサイズに印刷したり標準的な画像データより少ない画像データを印刷したりするため、これらを考慮した余裕枚数を最大枚数に加算することにより初期値が設定されている。したがって、アッパプリンタ４０ではクレジットカウンタ４４に初期値が設定されると、その後その初期値の回数だけ印刷動作が実行可能となる。
【００３３】
次に、本実施形態のフォトスタジオシステム１０におけるプリントサーバ２０の動作、特にプリンタ４０，５０の使用状況を表すログを管理サーバ７０へアップロードする動作について説明する。図６は、プリントサーバ２０のＣＰＵ２１により実行されるログ送信処理ルーチンのフローチャートである。このルーチンは、プログラムフォルダ２８ｃに記憶され、ＣＰＵ２１により所定時間ごと（例えば数ｍｓｅｃごと）に読み出されて繰り返し実行される。このログ送信処理ルーチンが実行されると、プリントサーバ２０のＣＰＵ２１は、まず現在時刻がログ送信タイミングか否かを判定する（ステップＳ４００）。ここで、ログ送信タイミングとは、プリントサーバ２０の起動時かその起動後所定のインターバル時間が経過した時である。本実施形態では上述したようにインターバル時間は１２時間に設定されている。
【００３４】
ステップＳ４００で現在時刻がログ送信タイミングのときには、プリンタ検証ルーチンを実行した後（ステップＳ４０５）、インターネット８０を通じて管理サーバ７０との接続を試みる（ステップＳ４１０）。続いて、管理サーバ７０との接続に成功したか否かを判定し（ステップＳ４２０）、管理サーバ７０との接続に成功したときには、クレジットカウンタ４４，５４の値を初期値に戻すためのクレジットリセット指令をプリンタ４０，５０へ送信する（ステップＳ４３０）。この結果、プリンタ４０は前述したクレジットリセット処理ルーチンのステップ３１０においてクレジットカウンタ４４の値を初期値に戻す。プリンタ５０も同様である。続いて、プリントサーバ２０のＣＰＵ２１は、プリンタ使用状況データベース２８ｂに格納されているプリンタ４０，５０のステータスの履歴や印刷ジョブの履歴をログ情報として管理サーバ７０へ送信し（ステップＳ４４０）、送信終了後に管理サーバ７０との接続を切断する（ステップＳ４５０）。但し、ステップＳ４４０では管理サーバ７０へ未送信の内容のみログ情報として送信する。このログ情報を受信した管理サーバ７０は、ログ情報に基づいてそのフォトスタジオでの用紙やインク等の消耗品の消費量を計算して、そのフォトスタジオへの消耗品の配給手配や料金請求などを行う。一方、ステップＳ４２０で管理サーバ７０との接続に成功しなかったときには、予め定められた回数（ｍ回）だけ連続して接続に成功しなかったか否かを判定し（ステップＳ４６０）、連続して接続に成功しなかった回数がｍ回未満のときには再びステップＳ４１０へ戻って管理サーバ７０との接続を試み、一方、連続して接続に成功しなかった回数がｍ回に達したときにはＬＡＮケーブル１６の断線やルータ１４の停止等の不具合が考えられることから、管理サーバ７０と接続できない旨をディスプレイ２７に表示させる（ステップＳ４７０）。そして、ステップＳ４００で現在時刻がログ送信タイミングでなかったときや、ステップＳ４５０で管理サーバ７０との接続を切断したあとや、ステップＳ４７０でディスプレイ２７に表示させたあと、このルーチンを終了する。なお、プリントサーバ２０は、プリンタ４０，５０が印刷ジョブの処理を終了するごとにそのプリンタからステータスを取得し（図４のステップＳ２５０参照）、そのステータスをプリンタ使用状況データベース２８ｂに格納する。また、ユーザは、任意のタイミングでプリントサーバ２０を管理サーバ７０と接続するよう試行することができる。
【００３５】
以上の図４〜図６の３つのフローチャートが実行されることにより、フォトスタジオシステム１０では、次のようにして画像データの印刷が行われる。即ち、プリンタ４０のクレジットカウンタ４４は、工場出荷時に初期値に設定されている。プリンタ４０が画像データの印刷に伴い印刷動作監視処理ルーチンを実行すると、クレジットカウンタ４４の値は印刷動作が完了するごとに１ディクリメントされていくため印刷済みの用紙が増えるにしたがいゼロに近づいていく。一方、プリントサーバ２０は、ログ送信処理ルーチンを実行し、ログ送信タイミングになり管理サーバ７０との接続に成功すると、クレジットリセット指令をプリンタ４０へ出力する。すると、プリンタ４０は、クレジットリセット処理を実行し、クレジットカウンタ４４の値を初期値に戻す。このように、プリンタ４０は、プリントサーバ２０がログ送信タイミングで管理サーバ７０との接続に成功する限りクレジットカウンタ４４の値が初期値に戻されるため、印刷動作監視ルーチンを何度実行したとしてもクレジットカウンタ４４の値がゼロになることはなく、印刷動作を実行し続けることができる。これに対して、プリンタ４０は、プリントサーバ２０がログ送信タイミングで管理サーバ７０との接続に失敗するとクレジットカウンタ４４の値を初期値に戻すことはないため、印刷動作監視ルーチンを実行していくうちにクレジットカウンタ４４の値がゼロになり、クレジット切れフラグがオンされる。この結果、次回印刷動作監視ルーチンを実行する際にプリンタ４０は印刷動作を開始しなくなる。但し、クレジット切れフラグがオンになったあとでも、プリントサーバ２０が管理サーバ７０との接続に成功すると、クレジットリセット指令がプリンタ４０に出力され、クレジットカウンタ４４の値が初期値に戻ると共にクレジット切れフラグがオフになるので、プリンタ４０は印刷動作を再開する。なお、プリンタ５０もこれと同様に動作する。
【００３６】
次に、前出のステップＳ４０５のプリンタ検証ルーチンについて図７のフローチャートに基づいて説明する。このルーチンが開始されると、プリントサーバ２０のＣＰＵ２１は、前回から今回までの間に行われた印刷動作回数を求める（ステップＳ５１０）。具体的には、クレジットカウンタ４４の値は、前回プリントサーバ２０が管理サーバ７０との接続に成功したときに初期値に設定され、その後印刷動作が行われるごとに１ディクリメントされた値となるため、初期値から現在のクレジットカウンタ４４の値を引いた値が、所定のインターバル時間内でのプリンタ４０の印刷動作回数の実測値となる。続いて、前回プリントサーバ２０が管理サーバ７０へログを送信してから現在までの間にプリンタ使用状況データベース２８ｂに保存された各印刷ジョブからコピー部数を読み出し、それらを合算してプリンタ４０の印刷枚数の総数とする（ステップＳ５２０）。そして、プリンタ４０の印刷動作回数と印刷枚数の総数とを比較するために両者の比率を求め（ステップＳ５３０）、その比率が許容範囲内か否かを判定する（ステップＳ５４０）。ここで、許容範囲は、実際に印刷する場合には印刷ミスや紙詰まりなどのように正しく印刷できないことがあるから、印刷動作回数の実測値の方が印刷枚数の総数よりもある程度大きくなることを見込んで設定されている。そして、ステップＳ５４０で、両者の比率が許容範囲内のときにはプリンタ４０の稼働状態は正常だと推定し（ステップＳ５５０）、この推定結果をログ情報に加え（ステップＳ６２０）、このルーチンを終了する。
【００３７】
一方、両者の比率が許容範囲を超えているときには、各印刷ジョブに含まれる印刷枚数と各印刷ジョブに対応する印刷動作回数とを比較する。まず、前回から今回までの間にプリンタ４０へ出力した各印刷ジョブに含まれるコピー部数つまり印刷枚数を読み出す（ステップＳ５６０）。それと共に各印刷ジョブに対応する印刷動作回数を求める（ステップＳ５７０）。具体的には、印刷ジョブごとにクレジットカウンタ４４の開始時の値と終了時の値を読み出し両者の差をその印刷ジョブに対応する印刷動作回数とする。そして、それぞれにつき印刷ジョブに含まれる印刷枚数とその印刷ジョブに対応する印刷動作回数との比率を求め（ステップＳ５８０）、すべての印刷ジョブにつき比率が許容範囲内か否かを判定する（ステップＳ５９０）。ここで、許容範囲は、実際に印刷する場合には印刷ミスや紙詰まりなどのように正しく印刷できないことがあるから、印刷動作回数の方が印刷ジョブの印刷枚数よりもある程度大きくなることを見込んで設定されている。そして、ステップＳ５９０ですべての印刷ジョブの比率が許容範囲内のときには、プリンタ４０は印刷指令に対して正常に稼働しているにもかかわらずコピー部数総数と印刷動作回数との比較結果は許容範囲を超えていることになるため、プリンタ４０につきプリントサーバ２０以外から印刷指令を受けて印刷していた（不正使用状態）と推定し（ステップＳ６００）、一方、いずれかの印刷ジョブの比率が許容範囲を超えているときには、プリンタ４０に異常が発生したことが原因でコピー部数総数と印刷動作回数との比較結果が許容範囲を超えたおそれがあるため、プリンタ４０につき異常発生状態にあると推定し（ステップＳ６１０）、ステップＳ６００及びＳ６１０のあとこのプリンタ４０の検証結果つまり適正か不適正かをログ情報に加え（ステップＳ７８０）、このルーチンを終了する。この結果、ログ送信処理ルーチンのステップＳ４４０でプリンタ稼働状態もログ情報に加えられて管理サーバ７０へ送信される。なお、以上はプリンタ４０について説明したが、プリンタ５０についてもこれと同様である。
【００３８】
図８は、プリンタ４０の稼働状態が正常なときの一例を表す説明図、図９はプリンタ４０が不正使用状態のときの一例を表す説明図、図１０はプリンタが異常発生状態のときの一例を表す説明図である。いずれも、所定インターバル時間内でジョブＩＤ「００１００」、「００１０１」、「００１０２」の３つの印刷ジョブを処理したものとし、各ジョブＩＤのコピー部数は４部、２部、３部（総数９部）とする。また、コピー部数総数に対する印刷動作回数の比率の許容範囲は、１００％から１５０％までとする。各印刷ジョブの印刷枚数に対する各印刷ジョブの印刷動作回数の比率の許容範囲も、１００％から１５０％までとする。図８では、プリンタ検証ルーチンの実行時におけるクレジットカウンタ４４の値は「２４０」、初期値は「２５０」のため、所定インターバル時間内の印刷動作回数は２５０−２４０＝１０（回）となり、コピー部数総数（９部）に対する印刷動作回数の比率は約１１０％であり許容範囲内であるため、プリンタ４０は正常であると推定する。また、図９では、プリンタ検証ルーチンの実行時におけるクレジットカウンタ４４の値は「１８７」、初期値は「２５０」のため、所定インターバル時間内の印刷動作回数は２５０−１８７＝６３（回）となり、コピー部数総数（９部）に対する印刷動作回数の比率は７００％となって許容範囲を超える。そこで、各印刷ジョブに含まれる印刷枚数に対する各印刷ジョブの印刷動作回数の比率をみると、各印刷ジョブの印刷動作回数はそれぞれ４回、２回、３回のためすべて１００％となり、すべて許容範囲内に収まる。このため、プリンタ４０は印刷指令に対して正常に稼働しているにもかかわらずコピー部数総数と印刷動作回数との比較結果は許容範囲を超えたと考えられる。よって、プリンタ４０は不正使用状態であると推定する。更に、図１０では、プリンタ検証ルーチンの実行時におけるクレジットカウンタ４４の値は「１８７」、初期値は「２５０」のため、所定インターバル時間内の印刷動作回数は２５０−１８７＝６３（回）となり、コピー部数総数（９部）に対する印刷動作回数の比率は７００％となって許容範囲を超える。そこで、各印刷ジョブに含まれる印刷枚数に対する各印刷ジョブの印刷動作回数の比率をみると、各印刷ジョブの印刷動作回数はそれぞれ９回、１３回、４１回となり、それぞれ２２５％，６５０％，１０２５％ですべて許容範囲を超える。このため、プリンタ４０に異常が発生したことが原因でコピー部数総数と印刷動作回数との比較結果は許容範囲を超えたと考えられる。よって、プリンタ４０は異常発生状態であると推定する。
【００３９】
ここで、本実施形態の構成要素と本発明の構成要素との対応関係を明らかにする。本実施形態のプリントサーバ２０のＣＰＵ２１が、本発明の印刷指令出力手段（ステップＳ１４０参照）、動作回数入力手段（ステップＳ２５０参照）及び稼働状態推定手段（プリント検証ルーチン参照）に相当する。なお、本実施形態では、フォトスタジオシステム１０の動作を説明することにより本発明のプリンタ稼働状態推定方法の一例も明らかにしている。
【００４０】
以上詳述した本実施形態のフォトスタジオシステム１０によれば、所定のインターバル時間内にプリンタ４０，５０に出力された印刷指令に含まれる印刷枚数の総数と同時間内にプリンタ４０，５０が印刷動作した印刷動作回数との比較結果だけでなく、各印刷ジョブに含まれる印刷枚数と各印刷ジョブに対応する印刷動作回数との比較結果の両方に基づいてプリンタ４０，５０の稼働状態を推定するようにしたため、プリントサーバ２０以外から印刷指令を受けてプリンタ４０，５０で印刷したこととプリンタ４０，５０に異常が発生していることとを区別して精度よく推定できる。
【００４１】
なお、本発明は上述した実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の態様で実施し得ることはいうまでもない。
【００４２】
例えば、上述した実施形態では、印刷動作とは、１枚の用紙の紙送りを開始してから排出が完了するまでの動作をいい実際に印刷を実行しているか否かは問わないと定義したが、１枚の用紙の紙送りを開始してから排出が完了するまでの動作であって実際に印刷を実行したときの動作と定義してもよい。
【００４３】
また、上述した実施形態のプリンタ検証ルーチンに代えて、図１１のプリンタ検証ルーチンを実行してもよい。ここで、アッパプリンタ４０は印刷動作ごとに１ディクリメントしていくカウンタであるから、印刷動作回数をシリアルに累算するカウンタといえる。さて、図１１のプリンタ検証ルーチンが開始されると、プリントサーバ２０のＣＰＵ２１は、まず、前回から今回までの間に出力された各印刷ジョブの処理開始時のクレジットカウンタ４４の値と処理終了時のクレジットカウンタ４４の値を読み出す（ステップＳ７１０）。続いて、読み出した値を利用して各印刷ジョブにつき処理開始時の値とその１つ前の印刷ジョブの処理終了時の値との差を求め（ステップＳ７２０）、その差がすべて許容範囲内に収まるか否かを判定する（ステップＳ７３０）。ここで、許容範囲は、実際に印刷する場合にはテスト印刷などを行うことがあるから、それを見込んで設定されている。そして、ステップＳ７３０で、両者の差がすべて許容範囲内に収まるときにはプリンタ４０の稼働状態は正常だと推定し（ステップＳ７５０）、この推定結果をログ情報に加え（ステップＳ８２０）、このルーチンを終了する。一方、いずれかの印刷ジョブについての両者の差が許容範囲を超えているときには、各印刷ジョブに含まれる印刷枚数と各印刷ジョブに対応する印刷動作回数とを比較すべくステップＳ７６０〜Ｓ８２０を行うが、これらは上述したステップＳ５６０〜Ｓ６２０と同様の処理のため、ここではその説明を省略する。この結果、ログ送信処理ルーチンのステップＳ４４０でプリンタ稼働状態もログ情報に加えられて管理サーバ７０へ送信される。なお、以上はプリンタ４０について説明したが、プリンタ５０についてもこれと同様である。
【００４４】
図１２は、プリンタ４０の稼働状態が正常なときの一例を表す説明図、図１３はプリンタ４０が不正使用状態のときの一例を表す説明図、図１４はプリンタが異常発生状態のときの一例を表す説明図である。いずれも、所定インターバル時間内でジョブＩＤ「００１００」、「００１０１」、「００１０２」の３つの印刷ジョブを処理したものとし、各ジョブＩＤのコピー部数は４部、２部、３部とする。また、クレジットカウンタ４４につきある印刷ジョブの開始時の値とその一つ前の印刷ジョブの終了時の値との差の許容範囲は０以上３以下とし、各印刷ジョブの印刷枚数に対する各印刷ジョブの印刷動作回数の比率の許容範囲は１００％から１５０％までとする。図１２では、ジョブＩＤ「００１０２」の印刷ジョブの開始時の値とその一つ前の印刷ジョブの終了時の値は「２４３」と「２４３」、ジョブＩＤ「００１０１」の開始時の値とその一つ前の印刷ジョブの終了時の値は「２４６」と「２４６」であり、それぞれの差は共にゼロとなり許容範囲内に収まるため、プリンタ４０は正常であると推定する。また、図１３では、ジョブＩＤ「００１０２」の印刷ジョブの開始時の値とその一つ前の印刷ジョブの終了時の値は「１９０」と「２２８」、ジョブＩＤ「００１０１」の開始時の値とその一つ前の印刷ジョブの終了時の値は「２２０」と「２４６」であり、それぞれの差は３８と２６で許容範囲を超える。そこで、各印刷ジョブに含まれる印刷枚数に対する各印刷ジョブの印刷動作回数の比率をみると、各印刷ジョブの印刷動作回数はそれぞれ４回、３回、３回のためそれぞれ１００％，１５０％，１００％となり、すべて許容範囲内に収まる。このため、プリンタ４０は印刷指令に対して正常に稼働しているにもかかわらず、ある印刷ジョブの開始時のクレジットカウンタ４４の値とその一つ前の印刷ジョブの終了時のクレジットカウンタ４４の値との差が許容範囲を超えたと考えられる。よって、プリンタ４０は不正使用状態であると推定する。更に、図１４では、ジョブＩＤ「００１０２」の印刷ジョブの開始時の値とその一つ前の印刷ジョブの終了時の値は「２０２」と「２１２」、ジョブＩＤ「００１０１」の開始時の値とその一つ前の印刷ジョブの終了時の値は「２３０」と「２４１」であり、それぞれの差は１０と１１で許容範囲を超える。そこで、各印刷ジョブに含まれる印刷枚数に対する各印刷ジョブの印刷動作回数の比率をみると、各印刷ジョブの印刷動作回数はそれぞれ９回、１８回、１５回のためそれぞれ２２５％，９００％，５００％となり、すべて許容範囲を超える。このため、プリンタ４０に異常が発生したことが原因で、ある印刷ジョブの開始時のクレジットカウンタ４４の値とその一つ前の印刷ジョブの終了時のクレジットカウンタ４４の値との差が許容範囲を超えたと考えられる。よって、プリンタ４０は異常発生状態であると推定する。
【００４５】
更に、上述した実施形態では、クレジットカウンタ４４，５４としてダウンカウンタを採用したが、印刷動作回数を計数するごとに１インクリメントされるアップカウンタを採用してもよい。この場合、クレジットリセット処理ルーチンのステップＳ３１０でアップカウンタの値をゼロに設定し、印刷動作監視ルーチンのステップＳ２５２でアップカウンタの値が所定値（上述した実施形態における初期値）に達したときにクレジット切れフラグをオンにしてもよい。なお、ダウンカウンタでは初期値（所定値）からカウンタの値を引いた値が印刷動作回数の計数値となるが、アップカウンタではカウンタの値がそのまま印刷動作回数の計数値となる。
【００４６】
更にまた、上述した実施形態では、プリントサーバ２０がプリンタ検証ルーチンを行ったが、管理サーバ７０がプリンタ検証ルーチンを行ってもよい。管理サーバ７０には、プリントサーバ２０からログ情報が送信されるが、このログ情報には印刷ジョブの履歴のほかステータスの履歴としてクレジットカウンタ４４，５４に関する情報が含まれるため、プリントサーバ２０と同様にしてプリンタ検証ルーチンを行うことができる。こうすれば、管理サーバ７０の運営者はプリンタ４０，５０の稼働状態を検証することができ、ひいてはプリンタ４０，５０の使用状況を正確に把握することが可能となる。
【図面の簡単な説明】
【図１】フォトスタジオシステム１０の構成の概略を示す構成図。
【図２】印刷ジョブの内容の一部を表す説明図。
【図３】印刷指令出力処理ルーチンのフローチャート。
【図４】印刷動作監視ルーチンのフローチャート。
【図５】クレジットリセット処理ルーチンのフローチャート。
【図６】ログ送信処理ルーチンのフローチャート。
【図７】プリンタ検証ルーチンのフローチャート。
【図８】プリンタ４０の稼働状態が正常なときの一例を表す説明図。
【図９】プリンタ４０が不正使用状態のときの一例を表す説明図。
【図１０】プリンタが異常発生状態のときの一例を表す説明図。
【図１１】プリンタ検証ルーチンのフローチャート。
【図１２】プリンタ４０の稼働状態が正常なときの一例を表す説明図。
【図１３】プリンタ４０が不正使用状態のときの一例を表す説明図。
【図１４】プリンタが異常発生状態のときの一例を表す説明図。
【符号の説明】
１０  フォトスタジオシステム、１４  ルータ、１６  ＬＡＮケーブル、１８  インターネット、２０  プリントサーバ、２１  ＣＰＵ、２２  ＲＯＭ、２３  ＲＡＭ、２４  クロックジェネレータ、２５  ビデオボード、２６  ＬＡＮボード、２７  ディスプレイ、２８  ハードディスク、２８ａ  ジョブフォルダ、２８ｂ  プリンタ使用状況データベース、２９  バス、３１  入出力コントローラ、４０  アッパプリンタ、４１  ＣＰＵ、４２  ＲＯＭ、４３  ＲＡＭ、４４  クレジットカウンタ、４５  プリンタエンジン、４６  バス、５０  ロアプリンタ、５４  クレジットカウンタ、６０  クライアントＰＣ、７０  管理サーバ。
【図１】
2004310212.tif 000003
【図２】
2004310212.tif 000004
【図３】
2004310212.tif 000005
【図４】
2004310212.tif 000006
【図５】
2004310212.tif 000007
【図６】
2004310212.tif 000008
【図７】
2004310212.tif 000009
【図８】
2004310212.tif 000010
【図９】
2004310212.tif 000011
【図１０】
2004310212.tif 000012
【図１１】
2004310212.tif 000013
【図１２】
2004310212.tif 000014
【図１３】
2004310212.tif 000015
【図１４】
2004310212.tif 000016