(57)【特許請求の範囲】
【請求項１】
ネットワークを介して接続された複数の機器が各機器の機能を分担して提供する機器連携システムであって、
第一の機器は、出力対象の画像データを取得する取得手段と、
第一の機器及び一台以上の第二の機器が前記画像データを出力する際の出力条件を受け付ける出力条件受付手段と、
前記第一の機器が出力可能な出力可能量の記憶手段と、
前記出力条件と前記取得手段が取得した画像データのページ数から求められた総ページ数が、前記出力可能量以下か否かを判定する出力可否判定手段と、
前記第一の機器に割り当てる第一の出力数及び一台以上の前記第二の機器に割り当てる第二の出力数を決定する割り当て数決定手段と、
前記画像データ及び前記第二の出力数を一台以上の前記第二の機器に送信するデータ通信手段と、
前記第一の機器及び一台以上の前記第二の機器が出力した出力数に応じて前記出力可能量を更新する出力可能量更新手段と、を有することを特徴とする機器連携システム。
【請求項２】
前記第一の機器及び一台以上の前記第二の機器は、それぞれ印刷速度情報を記憶しており、
前記割り当て数決定手段は、前記第一の機器及び一台以上の前記第二の機器の印刷時間の差が最小になるように、第一の出力数及び一台以上の前記第二の機器の前記第二の出力数を決定する、ことを特徴とする請求項１記載の機器連携システム。
【請求項３】
前記第一の機器及び一台以上の前記第二の機器は、それぞれ消費電力情報を記憶しており、
前記割り当て数決定手段は、前記第一の機器と一台以上の前記第二の機器の前記消費電力情報で重み付けされた前記印刷速度情報を用いて、前記第一の機器と一台以上の前記第二の機器の印刷時間の差が最小になるように、第一の出力数及び一台以上の前記第二の機器の前記第二の出力数を決定する、ことを特徴とする請求項２記載の機器連携システム。
【請求項４】
前記第一の機器及び前記第二の機器は、それぞれカラー印刷及び白黒印刷それぞれの消費電力情報を記憶しており、
前記割り当て数決定手段は、前記出力条件に含まれるカラー印刷の出力数を、前記第一の機器と前記第二の機器のうちカラー印刷の前記消費電力情報が小さい方に割り当て、白黒印刷の出力数を、前記第一の機器と前記第二の機器のうち白黒印刷の前記消費電力情報が小さい方に割り当てる、ことを特徴とする請求項３記載の機器連携システム。
【請求項５】
前記割り当て数決定手段は、前記第一の出力数及び一台以上の前記第二の機器の前記第二の出力数が均等になるように、第一の出力数及び前記第二の出力数を決定する、
ことを特徴とする請求項１記載の機器連携システム。
【請求項６】
前記第二の機器が前記第二の出力数の出力物を出力するまでに出力を継続できないというエラーを検出した場合、
前記第一の機器は前記第二の出力数のうち出力されていない出力数の出力物を、前記第一の出力数に加えて出力する、ことを特徴とする請求項１〜５いずれか1項記載の機器連携システム。
【請求項７】
前記第一の機器が前記第一の出力数の出力物を出力するまでに出力を継続できないというエラーを検出した場合、
前記第二の機器は前記第一の出力数のうち出力されていない出力数の出力物を、前記第二の出力数に加えて出力する、ことを特徴とする請求項１〜５いずれか1項記載の機器連携システム。
【請求項８】
前記データ通信手段は、前記第二の出力数を最小の出力単位ずつ前記第二の機器に出力要求し、
前記第二の機器から出力の実行結果を取得する毎に、前記出力可否判定手段は前記出力可能量がゼロか否かを判定し、
前記出力可能量がゼロでない場合に、前記データ通信手段は、前記第二の出力数を最小の出力単位ずつ前記第二の機器に出力要求する、
ことを特徴とする請求項１記載の機器連携システム。
【請求項９】
前記出力条件受付手段は、前記出力条件を受け付けた後、前記第二の機器が前記第二の出力数の出力が完了するまで、前記第一の機器が別の出力条件を受け付けることを禁止するか、又は、
前記出力条件受付手段が、前記出力条件を受け付けた後、前記第二の機器が前記第二の出力数の出力が完了するまでに、前記第一の機器が別の出力条件を受け付けた場合、前記第一の機器は前記第二の機器が前記第二の出力数の出力を完了した後に、出力を開始する、ことを特徴とする請求項１〜７いずれか1項記載の機器連携システム。
【請求項１０】
前記出力可能量更新手段は、前記割り当て数決定手段が前記第一の出力数及び一台以上の前記第二の機器の前記第二の出力数を決定した後、前記第二の機器が出力したか否かに関係なく、前記第二の出力数を前記出力可能量から減じる、
ことを特徴とする請求項１〜７いずれか1項記載の機器連携システム。
【請求項１１】
前記出力条件受付手段は、予め記憶するリストに登録された前記第二の機器から、出力可能状態に復帰するまでの消費電力を取得し、前記第二の機器の識別情報と共に表示する、ことを特徴とする請求項１〜１０いずれか１項記載の機器連携システム。
【請求項１２】
前記出力条件受付手段が、前記第一の機器及び一台以上の前記第二の機器が前記画像データをＦＡＸ送信する際の送信条件を受け付け、
前記出力可否判定手段が、前記送信条件のあて先数が前記出力可能量以下であると判定した場合、
前記割り当て数決定手段は、ＦＡＸ送信の宛先毎に、前記第一の機器に割り当てるあて先及び一台以上の前記第二の機器に割り当てるあて先を決定する、
ことを特徴とする請求項１〜１０いずれか１項記載の機器連携システム。
【請求項１３】
前記取得手段は、原稿を撮像して前記画像データを取得するスキャナ装置、又は、端末から前記画像データを取得するデータ通信装置である、
ことを特徴とする請求項１〜１１いずれか１項記載の機器連携システム。
【請求項１４】
前記第一の機器及び一台以上の前記第二の機器は、記録媒体に画像を形成する印刷装置、又は、電話回線若しくはＩＰネットワークを介して前記画像データを送信するＦＡＸ送信装置を有する、ことを特徴とする請求項１３記載の機器連携システム。
【請求項１５】
ネットワークを介して接続された一台以上の機器と分担して機能を提供する画像形成装置であって、
出力対象の画像データを取得する取得手段と、
第一の機器及び一台以上の第二の機器が前記画像データを出力する際の出力条件を受け付ける出力条件受付手段と、
前記第一の機器が出力可能な出力可能量の記憶手段と、
前記出力条件と前記取得手段が取得した画像データのページ数から求められた総ページ数が、前記出力可能量以下か否かを判定する出力可否判定手段と、
前記第一の機器に割り当てる第一の出力数及び一台以上の前記第二の機器に割り当てる第二の出力数を決定する割り当て数決定手段と、
前記画像データ及び前記第二の出力数を一台以上の前記第二の機器に送信するデータ通信手段と、
前記第一の機器及び一台以上の前記第二の機器が出力した出力数に応じて前記出力可能量を更新する出力可能量更新手段と、を有することを特徴とする画像形成装置。
【請求項１６】
ネットワークを介して接続された複数の機器が各機器の機能を分担して提供する機能提供方法であって、
出力対象の画像データを取得する取得ステップと、
第一の機器及び一台以上の第二の機器が前記画像データを出力する際の出力条件を受け付ける出力条件受付ステップと、
前記出力条件と前記取得ステップにより取得された画像データのページ数から求められた総ページ数が、記憶手段に記憶された前記第一の機器が出力可能な出力可能量以下か否かを判定する出力可否判定ステップと、
前記第一の機器に割り当てる第一の出力数及び一台以上の前記第二の機器に割り当てる第二の出力数を決定する割り当て数決定ステップと、
前記画像データ及び前記第二の出力数を一台以上の前記第二の機器に送信するデータ通信ステップと、
前記第一の機器及び一台以上の前記第二の機器が出力した出力数に応じて前記出力可能量を更新する出力可能量更新ステップと、を有することを特徴とする機能提供方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して接続された複数の機器が各機器の機能を分担して提供する機器連携システムに関する。
【背景技術】
【０００２】
ネットワーク上で繋がっている複数の機器が、互いに連携して１つのジョブを実行する、いわゆる機器連携という処理態様が知られている。機器連携とは、入力から出力までの一連の処理から成る１つのジョブに必要な機能を、複数の機器が分担して提供することをいう。
【０００３】
図１は、機器連携によるジョブの実行例を示す図である。ネットワークを介してＭＦＰ１とＭＦＰ２が互いに接続されている。ＭＦＰ１はＦＡＸ機能を有していないが、ＭＦＰ２はＦＡＸ機能を有している。ユーザＱは画像データをＦＡＸにて送信したいが、ＭＦＰ１にはＦＡＸ機能がないため、ＭＦＰ１を使用して例えばスキャナで原稿をスキャンし、ＭＦＰ２のＦＡＸ機能を使用してＦＡＸを送信する。
【０００４】
図２は、機器連携による別のジョブの実行例を示す図である。ＭＦＰ１とＭＦＰ２はいずれも印刷機能を有している。ユーザＱは画像データを複数部数、印刷したい。ＭＦＰ１のみでも印刷できるが、ＭＦＰ２と印刷を分担することで早く印刷を終わらせることができる。そこで、ユーザＱは、ＭＦＰ１を操作して例えばスキャナで原稿をスキャンし、ＭＦＰ２に画像データや印刷条件を送信し、ＭＦＰ１とＭＦＰ２で分担して印刷する。
【０００５】
ところで、ＭＦＰはオフィス等において多数のユーザにより共用される。このため従来から、ＭＦＰには、特定の人間が無制限にコピーやプリントアウトしないように、ユーザ毎にコピー、プリント等の上限度数（上限利用量）を設定しておく機能を有するものがある（例えば、特許文献１参照。）。特許文献１には、サーバに認証情報と利用予定枚数の利用権限を要求する利用要求を送信し、サーバに要求された利用予定枚数が、ユーザが利用可能な枚数以下である場合に利用予定枚数を上限値としてユーザの指示に基づいてジョブを実行するサービス実行装置が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１では機器連携が可能な機器においてどのように利用量を制限するかについて考慮されていないという問題がある。例えば図１の例では、ユーザＱが操作するＭＦＰ１が利用量を制限するのか、ＦＡＸ機能を提供するＭＦＰ２が利用量を制限するのか、が考慮されていない。図２の例では、ＭＦＰ１，２がそれぞれ印刷するため、ユーザＱが操作するＭＦＰ１では利用量を管理できたとしても、ＭＦＰ２による利用量を管理することができない。
【０００７】
本発明は上記課題に鑑み、機器連携時に利用量の制限が可能な利用量制限装置を提供する機器連携システムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題に鑑み、本発明は、ネットワークを介して接続された複数の機器が各機器の機能を分担して提供する機器連携システムであって、第一の機器は、出力対象の画像データを取得する取得手段と、第一の機器及び一台以上の第二の機器が前記画像データを出力する際の出力条件を受け付ける出力条件受付手段と、前記第一の機器が出力可能な出力可能量の記憶手段と、前記出力条件と前記取得手段が取得した画像データのページ数から求められた総ページ数が、前記出力可能量以下か否かを判定する出力可否判定手段と、前記第一の機器に割り当てる第一の出力数及び一台以上の前記第二の機器に割り当てる第二の出力数を決定する割り当て数決定手段と、前記画像データ及び前記第二の出力数を一台以上の前記第二の機器に送信するデータ通信手段と、前記第一の機器及び一台以上の前記第二の機器が出力した出力数に応じて前記出力可能量を更新する出力可能量更新手段と、を有する、ことを特徴とする。
【発明の効果】
【０００９】
機器連携時に利用量の制限が可能な利用量制限装置を提供する機器連携システムを提供することができる。
【図面の簡単な説明】
【００１０】
【図１】機器連携によるジョブの実行例を示す図である。
【図２】機器連携による別のジョブの実行例を示す図である。
【図３】機器連携システムの概略を説明する図の一例である。
【図４】各アプリにおいて、ＭＦＰ１と２の機器連携の態様の一例を説明する図の一例である。
【図５】機器連携時の動作を説明する図の一例である。
【図６】機器連携システムの構成図の一例である。
【図７】ＭＦＰ１，２のハードウェア構成図の一例である。
【図８】ＭＦＰの機能ブロック図の一例である。
【図９】利用制限情報の一例を示す図である。
【図１０】機器管理情報の一例を示す図である。
【図１１】ＭＦＰ１とＭＦＰ２が機器連携する際のブロック間の関係を説明する図の一例である。
【図１２】通信可能機器一覧の一例を示す図である。
【図１３】表示部に表示される機器連携ジョブのメニューの一例である。
【図１４】表示部に表示される機器連携ジョブのメニューの一例である。
【図１５】ジョブ情報の一例を示す図である。
【図１６】ＭＦＰ１がＭＦＰ２に利用量を割り当てる手順を示すシーケンス図の一例である。
【図１７】ジョブ実行エラーが生じた場合に、ＭＦＰ１がＭＦＰ２に利用量を割り当てる手順を示すシーケンス図の一例である。
【図１８】ジョブ実行エラーが生じた場合に、ＭＦＰ１がＭＦＰ２に利用量を割り当てる手順を示すシーケンス図の一例である。
【図１９】ＭＦＰ１がＭＦＰ２に１枚ごと印刷を割り当てる手順を示すシーケンス図の一例である。
【図２０】ＭＦＰ１が機器連携ジョブの実行開始前にＭＦＰ２の割り当てページ数を利用制限情報から減算しておく手順を示すシーケンス図の一例である。
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態について図面を参照しながら説明する。
図３は、本実施形態の機器連携システム２００の概略を説明する図の一例である。ＭＦＰ（Multifunction Peripheral）１とＭＦＰ２（以下、区別しない場合、ＭＦＰ１００という）は連携して１つのジョブを実行することができる。このように複数の機器が互いに機能を提供するシステムを機器連携システム２００と称す。また、２台以上のＭＦＰが連携して実行するジョブを機器連携ジョブという。また、片面分の画像データを１ページ、片面印刷か両面印刷かに関係なく用紙などのシート材の最小単位を１枚という。
【００１２】
図３（ａ）はコピーアプリの機器連携ジョブをＭＦＰ１とＭＦＰ２が実行する手順を模式的に示す。ＭＦＰ１、２はそれぞれ、ユーザＱがあと何ページの印刷が可能かが登録された利用可能量を利用制限情報に記憶している。ＭＦＰ１の利用可能量は、ユーザＱがＭＦＰ１により出力可能なページ数であり、ＭＦＰ２の利用可能量は、ユーザＱがＭＦＰ２により出力可能なページ数である。
【００１３】
ユーザＱがＭＦＰ１を操作して、ＭＦＰ１及びＭＦＰ２で印刷を行う機器連携ジョブを実行する場合、ＭＦＰ１はＭＦＰ１とＭＦＰ２にページ数を割り当てる。以下、割り当てページ数という。
【００１４】
ＭＦＰ１がＭＦＰ２の割り当てページ数を決定する際、ＭＦＰ２の機器管理情報を利用して、印刷時間が最短になるように、又は、消費電力に有利なように、ＭＦＰ２の割り当てページ数を決定する。
【００１５】
ＭＦＰ１は、ＭＦＰ１とＭＦＰ２のトータルのページ数が、ＭＦＰ１の利用可能量以下であるか否かを判定し、利用可能量以下の場合、ＭＦＰ１とＭＦＰ２はそれぞれ割り当てられた割り当てページ数だけ印刷する。ＭＦＰ１は、ＭＦＰ１の利用可能量からトータルのページ数を減算する。
【００１６】
このようにＭＦＰ１がＭＦＰ１の利用可能量以内で機器連携ジョブを実行可能か否かを判定するので、機器連携システム２００においても利用制限情報の範囲内で１つのジョブを実行することができる。
【００１７】
なお、プリンタアプリの場合、不図示のＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）がＭＦＰ１に機器連携ジョブを依頼する。ＰＣは機器連携ジョブによる印刷条件と画像データをＭＦＰ１に送信するので、以降はＭＦＰ１がコピーアプリと同様に処理する。
【００１８】
図３（ｂ）はＦＡＸアプリの機器連携ジョブをＭＦＰ１とＭＦＰ２が実行する手順を模式的に示す。図ではＭＦＰ１及びＭＦＰ２がＦＡＸ機能を有している。ＦＡＸアプリの場合もコピーアプリと同様に、ＭＦＰ１によるＭＦＰ１とＭＦＰ２への利用量の割り当て、ＭＦＰ１とＭＦＰ２のトータルのＦＡＸ送信の利用量がＭＦＰ１の利用可能量以下か否かの判定、ＭＦＰ１の利用可能量からのトータルのページ数の減算、が行われる。したがって、アプリケーションが変わっても同様に適用できる。
【００１９】
なお、ＭＦＰ１がＦＡＸ機能を有していない場合も同様で、ＭＦＰ１はＭＦＰ２にのみ割り当てページ数（この場合はトータルのページ数）を割り当て、ＭＦＰ１の利用可能量からトータルのページ数を減算する。
【００２０】
〔機器連携について〕
機器連携について説明する。機器連携とは、一方のＭＦＰが他方のＭＦＰの機能を利用する全ての態様を含む。すなわち必ずしも、ジョブが実行されることやアプリケーションが動作しなくても機器連携と称す。しかし、ＭＦＰ１，２はアプリケーション毎に動作することが多いため、アプリケーションを例に説明する。説明のためユーザＱが操作する機器をＭＦＰ１とする。
【００２１】
アプリケーションは、ＭＦＰが備える複数の入力手段の１つと複数の出力手段の１つの組み合わせを特定し、その組み合わせに基づく機器の制御、機能の提供等を行う。アプリケーションを以下、単にアプリという。
【００２２】
図４は、各アプリにおいて、ＭＦＰ１と２の機器連携の態様の一例を説明する図の一例である。図４では、コピーアプリ、スキャナアプリ、送信アプリについて示すが、他のアプリにおいてもＭＦＰ１，２が互いに機能を提供することで実現される。コピーアプリでは、１つのジョブが、スキャナによる原稿読み取り、画像処理、印刷、後処理（仕上げ）の各プロセスを経る。画像処理は、例えばＯＣＲ処理、機密印刷処理などであり、後処理は例えばパンチ、ステープル等であり、これらは使用されないことも少なくない。
【００２３】
スキャナアプリでは１つのジョブが、スキャナによる原稿読み取り、画像処理、送信のプロセスを経る。画像処理は、例えばＯＣＲ処理、ＰＤＦ化、暗号化処理などであり使用されないことも少なくない。送信には、例えば、電子メールによる送信や、ユーザＱのフォルダに送信する処理がある。
【００２４】
送信アプリでは、１つのジョブが、スキャナによる原稿読み取り、画像処理、ＦＡＸ送信のプロセスを経る。画像処理は、例えばＯＣＲ処理、機密印刷処理などであり使用されないことも少なくない。ＦＡＸ送信には、例えばＦＡＸ送信（電話網、ＩＰ網）がある。
【００２５】
また、必ずしも機器連携ジョブを伴わなくても、機器連携が行われる。この場合、ユーザＱはＭＦＰ２に記憶されている画像データをＭＦＰ１から読み出し処理することができる。処理には、印刷、電子メールによる送信、ＦＡＸ送信も含まれるが、ＭＦＰ１がＭＦＰ２の画像データを削除したり、プレビュー表示することが含まれる。このようにＭＦＰ１と２が機器連携ジョブを実行しなくても、機器連携の一態様となる。
【００２６】
また、図４では２台のＭＦＰの機器連携を説明したが、３台以上のＭＦＰが機器連携することもある。３台以上の機器連携では、編集や出力を担当するＭＦＰの組み合わせが増える。
【００２７】
図５は、機器連携時の動作を説明する図の一例である。ここではコピーアプリ１１を例に説明する。
（１）ユーザQはＭＦＰ１を操作して、上述したアプリのいずれかを選択し、ユーザ情報を入力し、また、機器連携ジョブの実行条件を設定する。
（２）アプリは、ジョブ管理モジュールに実行条件から生成したジョブ情報を通知する。機器連携ジョブは、ジョブ管理モジュールによって実行が制御される。
（３）ユーザＱが原稿をセットしてスタートボタンを押下すると、ジョブ管理モジュールがエンジン管理モジュールを制御して、原稿をスキャンして画像データを生成する。
（４）画像データの生成により印刷されるページ数が分かるので、ジョブ管理モジュールは利用制限情報と比較して、印刷が制限されるか否かを判定する。この判定により、機器連携ジョブにおいても利用量を制限することができる。
（５）印刷が制限されない場合、ジョブ管理モジュールはＭＦＰ２から機器管理情報を取得する。
（６）ジョブ管理モジュール３１はＭＦＰ２が印刷するページ数である割り当てページ数を決定する。
（７）ＭＦＰ１のジョブ管理モジュールは、割り当てページ数が登録されたジョブ情報及び画像データをＭＦＰ２に送信する。
（８）ＭＦＰ１とＭＦＰ２のジョブ管理モジュールがエンジン管理モジュールを制御して、印刷する。
【００２８】
ＭＦＰ１のエンジン管理モジュールは、ＭＦＰ１が単体で（スタンドアロンに）ジョブを実行する際にも使用され、ＭＦＰ２のエンジン管理モジュールは、ＭＦＰ２が単体でジョブを実行する際にも使用される。すなわち、各ＭＦＰ１，２は自機の機能（エンジンの使用だけでなくリソースの提供や処理結果の提供を含む）を機器連携している他機に提供することで１つのジョブを実行する。
【００２９】
〔構成例〕
図６は、機器連携システム２００の構成図の一例である。ＬＡＮ１とＬＡＮ２により１つのＷＡＮが形成されている。ＬＡＮ１とＬＡＮ２は不図示のＬ３スイッチ又はルータにより接続されている。なお、ＬＡＮの数は１つでも３つ以上でも機器連携は可能である。ＭＦＰ１〜４間、サーバ１，２間及びＭＦＰ１〜４とサーバ１００（以下、区別する場合サーバ１，２という）間の通信は、有線接続か無線接続は問わない。
【００３０】
ＬＡＮ１には３つのＭＦＰ１〜３及びサーバ１が、ＬＡＮ２にはＭＦＰ４及びサーバ２がそれぞれ接続されている。ＭＦＰ１〜４は、コピー、スキャナ、ＦＡＸ及びプリントのうち少なくとも１つ以上の機能を有しており、ＭＦＰ１〜４がそれぞれ同じ機能を有している必要はない。この他、ＭＦＰ１〜４がそれぞれに特有の機能を有していることも妨げない。
【００３１】
サーバ１、２は、必ずしも必要ではないが、例えば、ユーザ認証用の情報処理装置、ＭＦＰ１〜４が有していない機能（例えば、ＯＣＲ処理、翻訳処理、ファイルのフォーマット変換等）を提供する情報処理装置である。また、本実施形態では、各ＭＦＰが利用制限情報を有するが、サーバが各ユーザの利用制限情報を記憶しておく場合にサーバ１又はサーバ２が利用される。サーバ１又は２は、各ＭＦＰの利用可能量だけでなく、ユーザＱがＭＦＰ１〜４を利用した合計の利用量を利用制限情報と比較することができる。
【００３２】
また、ＬＡＮ１ではＭＦＰ１〜３が例えばハブやＬＡＮスイッチを介してネットワークを形成しているが、ＭＦＰ２とＭＦＰ３はＩＥＥＥ１３９４インタフェースにより接続されている。このように、機器連携システム２００では一部又は全てのＭＦＰがローカルに（ピアツーピアに）接続されていてもよい。また、接続のインタフェースはＵＳＢやＬＡＮケーブルなど、相互に通信可能であればよい。ローカルに接続することで、画像データがＬＡＮ１，２を介して送信されることがなくなるので、ネットワークの負荷を低減できる。また、画像データがＬＡＮ１，２を流れないので、セキュリティ性を向上できる。
【００３３】
図示するような機器連携システム２００では、以下のような連携態様が生じうる。
・ＬＡＮ１の任意の二台以上のＭＦＰが１つの機器連携ジョブを実行する
・ＬＡＮ１の任意の一台以上のＭＦＰと、ＬＡＮ２のＭＦＰ４が１つの機器連携ョブを実行する
なお、この他、サーバ１，２を利用して機器連携することもできる。
【００３４】
図７は、ＭＦＰ１，２のハードウェア構成図の一例を示す。ＭＦＰ１００は、コントローラ１２０と、操作パネル１３０と、ＦＣＵ（ファクシミリコントロールユニット）１４０と、スキャナエンジン１５０及びプロッタエンジン１６０が有する。
【００３５】
コントローラ１２０は、ＣＰＵ１０１と、ＡＳＩＣ１１３と、ＮＢ（ノースブリッジ）１０２と、ＳＢ（サウスブリッジ）１０６と、ＭＥＭ−Ｐ（システムメモリ）１０３と、ＭＥＭ−Ｃ（ローカルメモリ）１０４と、ＨＤＤ（ハードディスクドライブ）２７と、メモリカードスロット１１１と、ＮＩＣ（ネットワークインタフェースコントローラ）１０７と、ＵＳＢデバイス１０８と、ＩＥＥＥ１３９４デバイス１０９と、セントロニクスデバイス１１０とを有する。
【００３６】
ＣＰＵ１０１は、種々の情報処理を実行するためのＩＣであり、アプリやサービスを提供するプログラムをＵＮＩＸ（登録商標）等のＯＳによりプロセス単位で並列的に実行する。ＡＳＩＣ１１３は、画像処理用のＩＣである。ＮＢ１０２は、ＣＰＵ１０１とＡＳＩＣ１１３を接続するためのブリッジである。ＳＢ１０６は、ＮＢ１０２と周辺機器等を接続するためのブリッジである。ＡＳＩＣ１１３とＮＢ１０２は、ＡＧＰ（accelerated Graphics Port）を介して接続されている。
【００３７】
ＭＥＭ−Ｐ１０３は、ＮＢ１０２に接続されたメモリである。ＭＥＭ−Ｃ１０４は、ＡＳＩＣ１１３に接続されたメモリである。ＨＤＤ１０５は、ＡＳＩＣ１１３に接続されたストレージであり、画像データ蓄積・文書データ蓄積・プログラム蓄積・フォントデータ蓄積・フォームデータ蓄積等を行うために使用される。
【００３８】
メモリカードスロット１１２は、ＳＢ１０６に接続され、メモリカード１１２をセット（挿入）するために使用される。メモリカード１１２は、ＵＳＢメモリ等のフラッシュメモリであり、プログラム１１５を配布するために使用される。また、プログラム１１５は所定のサーバからＭＦＰ１００にダウンロードして配布することもできる。
【００３９】
ＮＩＣ１０７は、ネットワーク等を介してＭＡＣアドレス等を使用したデータ通信を行うためのコントローラである。ＵＳＢデバイス１０８は、ＵＳＢ規格に準拠したシリアルポートを提供するためのデバイスである。ＩＥＥＥ１３９４デバイス１０９は、ＩＥＥＥ１３９４規格に準拠したシリアルポートを提供するためのデバイスである。セントロニクスデバイス１１０は、セントロニクス仕様に準拠したパラレルポートを提供するためのデバイスである。ＮＩＣ１０７と、ＵＳＢデバイス１０８と、ＩＥＥＥ１３９４デバイス１０９と、セントロニクスデバイス１１０と、ＰＣＩ（Peripheral Component Interconnect）バスを介してＮＢ１０２とＳＢ１０６に接続されている。
【００４０】
操作パネル１３０は、ユーザＱがＭＦＰ１００に入力を行うためのハードウェア（操作部）であると共に、ＭＦＰ１００がオペレータに可視情報を提供するためのハードウェアである表示部１７０を有する。操作パネル１３０は、ＡＳＩＣ１１３に接続されている。ＦＣＵ１４０と、スキャナエンジン１５０と、プロッタエンジン１６０は、ＰＣＩバスを介してＡＳＩＣ１１３に接続されている。
【００４１】
スキャナエンジン１５０は、コンタクトガラスに載置された原稿を光学的に走査して、その反射光をＡ／Ｄ変換して画像処理を施し、所定の解像度のデジタルデータ（以下、画像データという）を生成する。
【００４２】
プロッタエンジン１６０は、例えばタンデム型の感光ドラムを有し、上記の画像データやユーザＰＣから受信したＰＤＬデータに基づきレーザビームを変調し感光ドラムを走査して潜像を形成する。潜像にトナーを付着して現像した１ページ毎の画像を用紙に熱と圧力で転写する。このような電子写真方式のプロッタに限られず、液滴を吐出して画像を形成するインクジェット型のプロッタエンジンでもよい。
【００４３】
ＦＣＵ１４０は、ＮＩＣ１０７を介してネットワークに接続し例えばＴ.３７，Ｔ.３８の規格に対応した通信手順、又は、公衆通信網に接続し例えばＧ３、Ｇ４規格に対応した通信手順、に従い画像データの送受信を行う。また、ＭＦＰ１００の電源がＯＦＦのときに画像データを受信しても、プロッタエンジン１６０を起動して画像データを用紙に印刷することができる。
【００４４】
図８は、ＭＦＰ１００の機能ブロック図の一例を示す。ＭＦＰ１００はＵＩ部、制御部、及び、ハードウェアを有し、このうちＵＩ部とハードウェアについてはすでに説明した。メモリ２０１は、ＭＥＭ−Ｐ１０３やＭＥＭ−Ｃ１０４に相当し、エンジン２０２はＦＣＵ１４０，スキャナエンジン１５０及びプロッタエンジン１６０に相当する。
【００４５】
制御部は、コピーアプリ１１、プリンタアプリ１２、ＦＡＸアプリ１３、リソース管理モジュール１４、通信管理モジュール１５、エンジン管理モジュール１６、ジョブ管理モジュール１７、認証モジュール１８、及び、カウンタ管理モジュール１９を有する。また、例えば、ＨＤＤ１０５には利用制限情報２０及び機器管理情報２１が記憶されている。
【００４６】
コピーアプリ１１、プリンタアプリ１２、ＦＡＸアプリ１３はアプリの一例である。ユーザＱが操作パネル１３０を操作して不図示のコピーボタンを選択するとコピーアプリ１１が作動し、プリンターボタンを選択するとプリンタアプリ１２が作動し、ＦＡＸボタンを選択するとＦＡＸアプリ１３が作動する。ＯＳ２２は、ＵＮＩＸ（登録商標）などの汎用オペレーティングシステムであり、各モジュール及びアプリの各ソフトウェアをそれぞれプロセスとして並列実行する。
【００４７】
ジョブ管理モジュール１７は、各アプリからユーザＱが設定した機器連携ジョブのジョブ情報を取得して、ジョブの実行を管理する。具体的には、ジョブ情報に基づいてリソース管理モジュール１４にリソースの制御を要求し、リソース管理モジュール１４から進捗を受け取りながら、画面表示、アプリ管理、操作パネル等を制御する。ジョブ管理モジュール１７は、現在の出力枚数を検出して操作パネル１３０に表示する。
【００４８】
また、ジョブ管理モジュール１７は利用量判定部３２と割り当て数決定部３１を有するがこれらはどこに配置されていてもよい。割り当て数決定部３１は、利用制限情報２０の範囲内で、印刷時間や消費電力が有利になるように各連携機器に利用量を割り当てる。利用量は、プリンタアプリ１２やコピーアプリ１１の場合はページ数であり、ＦＡＸアプリ１３の場合は宛先数である。利用量判定部３２は、出力予定のページ数が利用可能量以下であるか否かを判定する。処理の詳細は後述する。
【００４９】
リソース管理モジュール１４は、リソースの管理を行う。ジョブ管理モジュール１７から、ＦＣＵ１３０、スキャナエンジン１４０、プロッタエンジン１５０、メモリ２０１、ＨＤＤ１０５、ＮＩＣ１０７、ＵＳＢ１０８、ＩＥＥＥ１３９４（１０９）セントロニクス１１０等のハードウェア資源の利用要求を受けると、アプリ間の調停を行いこれらを制御する。具体的には、リソース管理モジュール１４は、要求されたハードウェアリソースが利用可能であるか（他の要求により利用されていないかどうか）を判断し、利用可能であれば要求されたハードウェアリソースが利用可能である旨をジョブ管理モジュール１７に伝える。また、リソース管理モジュール１４は、ジョブ管理モジュール１７からの要求に対してハードウェアリソースの利用スケジューリングを行い、エンジン管理モジュール１６を制御する。
【００５０】
エンジン管理モジュール１６は、リソース管理モジュール１４が確保し作成した利用スケジュールに従ってエンジンの制御を行う。したがって、スキャナエンジン、プロッタエンジン（白黒ラインプリンタ、カラーラインプリンタ）、及び、ＦＣＵが実際にジョブを実行する。
【００５１】
通信管理モジュール１５は、機器連携など、ネットワークを必要とするアプリに対して共通に利用できるサービスを提供するためのモジュールである。ネットワーク側から各プロトコルによって受信したデータを各アプリに振り分けたり、アプリから受け取ったデータをネットワーク側に送信する。具体的には、ftpd、httpd、lpd、snmpd、telnetd、smtpdなどのサーバデーモンや、同プロトコルのクライアント機能などを有している。
【００５２】
認証モジュール１８は、ユーザ認証を行うモジュールである。後述する利用制限情報２０には、ユーザ毎の利用可能量だけでなく、ユーザ名、パスワード等が登録されている。認証モジュール１８は、ユーザＱが操作パネル１３０から入力したユーザ名とパスワードの組が、利用制限情報２０に記憶されているか否かに基づきユーザＱを認証する。または、不図示のＩＣカードリーダでユーザＱが携帯するＩＣカードに記憶されたユーザＩＤを読み取り、ユーザＱを認証してもよい。
【００５３】
なお、サーバ１又はサーバ２が認証サーバとして機能する場合、ＭＦＰに認証モジュール１８が搭載されなくてもよい。各ＭＦＰの個別の認証モジュール１８がユーザＱを認証することを「ローカル認証」、サーバ１又は２がユーザＱを認証することを「ネットワーク認証」という。ローカル認証の認証結果は認証したＭＦＰでのみ有効であるが、ネットワーク認証の認証結果は予め定められたネットワーク内のＭＦＰで有効である。
【００５４】
認証モジュール１８は認証が成立したか否かをアプリに通知する。アプリは、認証が成立すればジョブの実行条件の設定を受け付け、認証が成立しなければ「認証が成立しません」等のメッセージを表示部１７０に表示する。
【００５５】
カウンタ管理モジュール１９は、利用量をカウントして、利用制限情報２０の利用量を更新する。利用制限情報２０については後述する。
【００５６】
制御部のアプリ及び各モジュールは、１つ以上のメソッドを有するオブジェクトであり、それぞれがプロセスとしてＯＳ２２上で実行される。各プロセスは、１つ以上のスレッド単位で実行され、ＯＳ２２がこれらのスレッドをＣＰＵに割り当てる。ＯＳ２２は各スレッドの状態（実行状態、待機状態、実行可能状態などの状態）を管理しており、実行可能状態のスレッドの中から優先順位、ラウンドロビンなどのロジックでＣＰＵに割り当てるスレッドを制御している。このため、プロセス切り替えによる並列実行と比較して、並列実行時の処理速度の向上が図られている。各アプリと各モジュールは、メソッドの実行によるプロセス間通信によってメッセージの送受信を行う。
【００５７】
＜利用制限情報＞
図９は利用制限情報２０の一例を示す図である。上記のように、利用制限情報２０には、ユーザ情報が含まれている。ユーザ情報には、「ユーザ名」「ユーザＩＤ」「ログイン名」「パスワード」が登録されている。「ユーザ名」はユーザＱが識別しやすい氏名や通称などであり、「ユーザＩＤ」は少なくとも連携機器システム内で一意性が保証された1つ以上の数字、記号、若しくはアルファベット又はこれらの組み合わせである。「ログイン名」はＭＦＰにログインするためのコンピュータ処理が容易な半角英数の識別名である。「パスワード」は、ＭＦＰがユーザＱを認証するための１つ以上の数字、記号、若しくはアルファベット又はこれらの組み合わせである。
【００５８】
また、利用制限情報２０には、アプリ毎に「上限利用量」「利用量」「利用可能量」が登録されている。いずれも課金形態に合わせて、カラーと白黒それぞれの「上限利用量」「利用量」「利用可能量」を有する。
【００５９】
「上限利用量」は、そのユーザＱが利用可能な利用量である。「上限利用量」は、年間、半期毎、四半期毎、月毎、週毎などの期間毎にユーザ毎に定められている。「利用量」は、「上限利用量」と同じ期間内にユーザＱがすでに利用した利用量である。「利用可能量」は期間内にユーザＱが利用できる残りの利用量であり、「利用可能量」＝「上限利用量」−「利用量」の関係がある。
【００６０】
「利用可能量」はユーザＱが印刷等する毎に更新される。利用可能量がゼロになると、ジョブ管理モジュール１７は印刷等を禁止する。図では、「上限利用量」「利用量」「利用可能量」が登録されているが、「利用可能量」、又は、「上限利用量」と「利用量」があれば、利用量を管理できる。ユーザＱがＭＦＰにログインして操作パネル１３０を操作すると、利用制限情報２０を表示部１７０に表示できるので、ユーザＱは「利用可能量」等を確認できるようになっている。
【００６１】
＜機器管理情報＞
図１０は機器管理情報２１の一例を示す図である。機器管理情報２１には、自機のＭＦＰが有する機能が登録されている。例えば、「スキャン」の機能として、読み取り可能なカラー（カラー、白黒、２色又は単色）が、読み取りに対応した原稿種類（文字、写真又は文字・写真）、読み取り時に設定可能な解像度（１００〜６００dpi）が登録されている。
【００６２】
また、編集の機能として、複数ページの集約（2in1／4in1／8in１）、原稿にスタンプ状の文字や記号を印刷するスタンプ印字、不正コピーを防止するコピーガード、画像処理による縮小・拡大する変倍（２５〜２００％）、文字認識のＯＣＲ、及び、画像データのファイルフォーマットを変換するＰＤＦが登録されている。
【００６３】
また、出力の機能として「ＦＡＸ」と「印刷」が登録されている。「ＦＡＸ」にはさらに蓄積送信という機能が登録されている。「印刷」にはさらに印刷速度（６０ページ／分）、消費電力（白黒印刷、カラー印刷、立ち上がり時）、ステープル、パンチ、及び、Ｚ折りが登録されている。なお、ステープルとパンチでは、それらを形成可能な用紙上の位置も登録されている。
【００６４】
ＭＦＰ１とＭＦＰ２は機器管理情報２１を互いに交換することで、ＭＦＰ１がＭＦＰ２に要求可能な処理、ＭＦＰ２がＭＦＰ１に要求可能な処理をそれぞれ管理している。ＭＦＰ１とＭＦＰ２は、後述する通信可能機器一覧に登録されているＭＦＰの機器管理情報２１を取得してＨＤＤ１０５等に保持しておく。
【００６５】
〔連携時の機能ブロックの処理について〕
図１１は、ＭＦＰ１とＭＦＰ２が機器連携する際のブロック間の関係を説明する図の一例である。図１１において図１０と同一部には同一の符号を付しその説明は省略する。なお、オプショントレイ２４、２６は追加して装着可能な用紙トレイであり、フィニッシャ２５はステイプル、パンチ、ソート、製本等を行う装置である。
【００６６】
＜通信可能機器一覧＞
通信管理モジュール１５は、起動が確認されている他のＭＦＰやサーバの通信可能機器一覧を有している。通信可能機器一覧を取得するには例えば、以下の２つの方法がある。
【００６７】
１）管理者などが予め機器連携が可能なＭＦＰ２〜４をＭＦＰ１に登録しておき、ＭＦＰ１は登録されているＭＦＰ２〜４の中から通信が可能だったＭＦＰを通信可能機器一覧に登録する。
【００６８】
図１２（ａ）は、機器連携が可能なＭＦＰのＩＰアドレスの一例を示す図である。機器連携が可能であるためには、ＭＦＰが機器連携の機能を有していることが必要である。この他、さらに、例えば管理者が意図的に機器連携の対象から外していないこと、又は、機器連携の対象に加えていることが必要となる場合がある。以下、機器連携が可能なＭＦＰを「機器連携用ＭＦＰ」という。各ＭＦＰには自機からみた機器連携用ＭＦＰのＩＰアドレスが登録されている。
【００６９】
各ＭＦＰ１は例えば起動時に、自機に登録されている機器連携用ＭＦＰに対し起動したことをネットワーク上の機器連携用ＭＦＰに通知する。これにより、機器連携用ＭＦＰは起動していれば、応答を送信するので、ＭＦＰ１は応答のあった機器連携用ＭＦＰが通信可能であることを、通信可能機器一覧に登録する。一方、すでに起動していた機器連携用ＭＦＰは、ＭＦＰ１が起動したという通知を受けて、ＭＦＰ１を通信可能機器一覧に登録する。
【００７０】
図１２（ｂ）は通信可能機器一覧の一例を示す図である。通信管理モジュール１５は、機器連携用ＭＦＰのうち、通信が可能であることが確認されたＭＦＰ等のＩＰアドレスを通信可能機器一覧に登録していく。通信確認ができないＭＦＰ等のＩＰアドレスは、例えば「−」のように通信未確認であることを示すデータが登録された状態となる。
【００７１】
２）ＭＦＰ１が、機器連携が可能なＭＦＰ２〜４をネットワークから検出する
ＭＦＰ１は例えば、起動時に同報的に、機器連携が可能なＭＦＰにＩＰアドレスを通知するよう要求するブロードキャストパケットを送信する。送信アドレスを全て"１"とするブロードキャストパケットは、ＬＡＮ１内の全ての機器に機器連携が可能か否かを問い合わせることができる。
【００７２】
また、例えば、ディレクティッド・ブロードキャスト・アドレスを指定して（directed broadcast address）、ルータを超えて指定されたネットワークアドレスのＭＦＰに機器連携が可能か否かを問い合わせることができる。機器連携が可能なＭＦＰが属するネットワークのネットワークアドレスは、管理者によって既知なので検索する範囲は容易に特定できる。
【００７３】
より好ましくは１）と２）を組み合わせて、機器連携が可能なＭＦＰを検出する。ＭＦＰ１は、検出されたＭＦＰ２〜４のＩＰアドレスを通信可能機器一覧に登録する。
【００７４】
＜機器連携ジョブの設定について＞
ユーザＱがＭＦＰ１を操作して機器連携ジョブを実行する場合、ＭＦＰ１にログインする。このため、コピーアプリ１１は認証モジュール１８に認証要求を送出する。認証要求には、ユーザＱが入力したユーザ名とパスワードが含まれている。認証モジュール１８は認証が成立したか否かの認証結果をコピーアプリ１１と通信管理モジュール１５に送出する。
【００７５】
認証が成立した場合、コピーアプリ１１はジョブの実行条件の設定を受け付ける。
図１３（ａ）〜（ｄ）は表示部１７０に表示される機器連携ジョブのメニューの一例である。例えば、ユーザＱが機器連携ジョブによりコピーする場合、ユーザＱは操作パネル１３０のコピーボタンを押下し、また、機器連携ジョブの設定画面を呼び出す。
【００７６】
操作パネル１３０には例えば「機器検索」ボタン３０１、「機能検索」ボタン３０２が表示される。「機器検索」ボタン３０１はＭＦＰ１が通信可能機器一覧のＭＦＰを検索するためのボタンである。すなわち、通信管理モジュール１５は機器連携ジョブの直前に通信可能機器一覧のＭＦＰと通信して機器連携ジョブが可能であることを確認する。一方の「機能検索」ボタン３０２は、通信可能機器一覧のＭＦＰから、ユーザＱが設定した機能を提供可能なＭＦＰ２〜４をＭＦＰ１が検索するためのボタンである。
【００７７】
図１３（ｂ）は、ユーザＱが「機器検索」ボタンを押下した場合に表示される「機器連携ジョブ−機器一覧」画面の一例である。ＭＦＰ１は、通信可能機器一覧のＭＦＰのうち機器連携ジョブが実行可能であると応答したＭＦＰ２〜４の一覧を表示する。応答するＭＦＰは、機器名及びＩＰアドレスをＭＦＰ１に送信する。この時に、応答するＭＦＰが機器管理情報２１を送信する。ユーザＱは、所望の機能を備えた目的のＭＦＰがリストされていることを確認して、「条件設定」ボタン３１１を押下する。
【００７８】
図１３（ｄ）は、ユーザＱが「条件設定」ボタン３１１を押下した場合に表示される「連携ジョブ−読み取り設定」画面の一例である。この画面には、ＭＦＰ毎に読み取り設定のメニューが表示される。図示するようにタブに「自機（ＭＦＰ１のこと）」「イマジックス（ＭＦＰ２）」「イプックス（ＭＦＰ３）」という機器名が表示され、ユーザＱはタブにより読み取り設定するＭＦＰを選択できる。
【００７９】
ユーザＱが機器名のタブを選択すると、ＭＦＰ１は機器管理情報２１に基づき、選択された各ＭＦＰで有効な（選択可能な）メニューのみを表示する。
【００８０】
ユーザＱは、選択したＭＦＰで有効なメニューから、例えば、カラー選択、原稿種類、濃度等の読み取り条件を設定することができる。ユーザＱは、原稿を読み取るＭＦＰと読み取り条件を設定すると、「編集設定」ボタン３２２や「印刷設定」ボタン３２３を順に選択する。「編集設定」ボタン３２２を選択すれば、ＭＦＰやサーバ毎に、各機器が提供可能な編集の機能を選択するためのメニューが表示される。同様に、「印刷設定」ボタン３２３を選択すれば、ＭＦＰ毎に、各機器が提供可能な印刷の機能を選択するためのメニューが表示される。なお、読み取り設定では一台のＭＦＰについてのみユーザＱは条件を設定できるが、印刷設定と編集設定では複数のＭＦＰ又はサーバに対しユーザＱが条件を設定できる。最終的に、「実行」ボタン３２４を押下することで機器連携ジョブがスタートする。
【００８１】
また、図１３（ｃ）は、図１３（ａ）においてユーザＱが「機能検索」ボタン３０２を押下した場合に表示される「連携ジョブ−機能検索」画面の一例である。ＭＦＰ１は、過去に取得した他のＭＦＰの機器管理情報２１から「読み取り条件」「編集条件」「印刷条件」の各プロセス毎に設定可能なメニューを表示する。ユーザＱは適宜タブを選択して、検索キーとなる「読み取り条件」「編集条件」「印刷条件」を設定できる。
【００８２】
条件の設定後、ユーザＱが「検索」ボタン３３１を押下すると、ＭＦＰ１は他のＭＦＰから取得した機器管理情報２１を、「読み取り条件」「編集条件」「印刷条件」のそれぞれで検索する。こうすることで、ユーザＱが設定した「読み取り条件」で読み取り可能なＭＦＰ、「編集条件」で編集可能なＭＦＰやサーバ、「印刷条件」で印刷可能なＭＦＰを特定できる。
【００８３】
「読み取り条件」が適合する機器が複数台、「編集条件」が適合する機器が複数台、「印刷条件」が適合する機器が複数台、ヒットする場合がある。この場合、ＭＦＰ１は図１３（ｄ）のように各「読み取り条件」「編集条件」「印刷条件」毎に全ての機器を表示してもよいし、所定数以下の機器に絞って表示してもよい。所定数以下の機器に絞る場合、例えば、自機を優先する方法、リソースの負荷が低下しているＭＦＰを優先する方法、自機からの距離（物理的距離又は通信距離）が近いＭＦＰを優先する方法、などがある。
【００８４】
ＭＦＰ１は検索にヒットした一台以上のＭＦＰやサーバを、図１３（ｄ）と同様な画面に表示する。すなわち、「読み取り設定」「編集設定」「印刷設定」毎に、条件がマッチしたＭＦＰを表示する。なお、「読み取り条件」「編集条件」「印刷条件」は図１３（ｃ）で設定されているので、ユーザＱは再度、各条件を設定する必要はない。ユーザＱは、各プロセスのＭＦＰや各条件を確認後、「実行」ボタンを押下する。これにより、ＭＦＰ１は機器連携ジョブをスタートさせる。
【００８５】
図１４（ａ）は印刷設定の第一画面の一例を示す。図１４（ａ）ではユーザＱは、複数のＭＦＰに共通の印刷条件を設定するか、各ＭＦＰに個別に印刷条件を設定するかを選択できる。共通設定を選択した場合、ユーザＱは一台以上のＭＦＰを選択する。個別設定を選択した場合、ユーザＱは次の画面で各ＭＦＰ毎に印刷条件を設定する。
【００８６】
また、ユーザＱがコピーアプリやプリンタアプリを選択した場合、ＭＦＰ１は、最後の印刷からの経過時間、印刷可能温度までに復帰可能な消費電力などを、通信可能機器一覧のＭＦＰから取得して表示することが可能である。印刷時、定着器を印刷可能温度まで増大させる際に大きな電力が必要なので、ユーザＱが、最後の印刷からの経過時間が短いＭＦＰ又は印刷可能温度までに復帰可能な消費電力が小さいＭＦＰを選択すれば、消費電力を低減できる。
【００８７】
図１４（ｂ）は印刷条件の共通設定の画面の一例を示す。ユーザＱが共通設定を選択した場合、カラー／白黒、用紙サイズ、部数、変倍などの各ＭＦＰに共通の印刷条件を設定することができる。共通の印刷条件は、通信可能機器一覧のＭＦＰから受信した機器管理情報の最大公約数的な内容である。例えば、ＭＦＰ１がカラーと白黒印刷が可能、ＭＦＰ２が白黒印刷が可能、な場合、図１４（ｂ）の「カラー／白黒」のメニューにカラーが表示されない。同様に、「用紙サイズ」においてもＭＦＰ１とＭＦＰ２で共に選択可能な用紙サイズのみが表示され、変倍においてもＭＦＰ１とＭＦＰ２で共に選択可能な変倍範囲が設定可能であり、ソート及びステープルはＭＦＰ１とＭＦＰ２で共に選択可能な場合に表示される。
【００８８】
また、設定された部数（又はページ数）が、共通設定の対象となったＭＦＰに割り当てられる。部数又はページ数のどちらで割り当てるかはユーザＱが設定できる。
【００８９】
図１４（ｃ）は印刷条件の個別設定の画面の一例を示す。ユーザＱが個別設定を選択した場合、ＭＦＰ毎に、用紙サイズ、部数、変倍などの一般的な印刷条件を設定することができる。各ＭＦＰは設定された部数だけ印刷する。
【００９０】
＜利用量のカウント＞
カウンタ管理モジュール１９は、予め定められた方法で利用量をカウントする。以下のカウント方法は一例に過ぎず、カウント方法は機器によって異なる場合がある。
（１）  コピーアプリ、プリンタアプリ
(i)  カラー印刷と白黒印刷とを別々にカウントする
(ii) 片面への印刷を１ページとカウントする。
【００９１】
(iii)  所定サイズ（例えばA3）以上のシート材への印刷は２ページとカウントする。
（２）  ＦＡＸアプリ（管理者により設定された以下のいずれかを採用する）
(i)   送信時のページ数をカウントする。（ＦＡＸではカラー印刷は少なく、また、Ａ３以上のサイズのＦＡＸもまれなため）
(ii)   送信ページ数に関係なく１つの宛先を１つとカウントする。
【００９２】
(iii)  延べ送信ページ数（送信時のページ数×宛先数）をカウントする。
【００９３】
コピーアプリ又はプリントアプリの場合、エンジン管理モジュール１６又はリソース管理モジュール１４は、１ページごと印刷数をカウントしている。ジョブ管理モジュール１７は、１ページが印刷される毎又はジョブの完了時に、印刷数を取得して、上記のカウント方法に従い印刷数をカウントして、利用制限情報２０の利用量と利用可能量を更新する。同様に、ＦＡＸアプリ１３では、エンジン管理モジュール１６又はリソース管理モジュール１４は、スキャンした原稿数又は画像データのページ数をカウントしている。ジョブ管理モジュール１７は、ジョブの完了時にページ数を取得して、利用制限情報２０の利用量と利用可能量を更新する。
【００９４】
＜ジョブ情報＞
図１０のコピーアプリ１１はジョブの実行条件の設定を受け付けると、ジョブ実行要求をジョブ管理モジュール１７に送出する。ジョブ管理モジュールは実行条件からジョブ情報を生成する。
【００９５】
図１５はジョブ情報の一例を示す図である。機器連携ジョブは「１．入力→２．編集→３．出力」の順番に実行される。各プロセス毎に「担当機器」が登録されており、また、入力条件・編集条件・出力条件が登録されている。
【００９６】
・コピーアプリ
図１５（ａ）は、比較のために示したＭＦＰ１のみが印刷するコピーアプリ１１のジョブの一例である。コピーアプリの入力の担当機器はＭＦＰ１、編集の担当機器はＭＦＰ２であり、出力（印刷）の担当機器はＭＦＰ１である。
【００９７】
図１５（ｂ）は、ＭＦＰ１及びＭＦＰ２が印刷するコピーアプリ１１の機器連携ジョブの一例である。コピーアプリの入力の担当機器はＭＦＰ１、編集の担当機器はＭＦＰ２であり、出力（印刷）の担当機器はＭＦＰ１とＭＦＰ２である。このようにＭＦＰ１とＭＦＰ２に印刷を振り分けるには、「印刷設定」において「共通設定」を選択する。
【００９８】
そして、割り当て数決定部３１は、担当機器にそれぞれ部数（印刷数）を割り当てる。割り当てページ数の決定方法については後述する。図１５（ｃ）はＭＦＰ１とＭＦＰ２に印刷数が割り当てられた機器連携ジョブの一例である。図１５（ｂ）と比べて、出力のプロセスが２つ作成され、それぞれの担当機器にＭＦＰ１とＭＦＰ２が設定されている。ジョブ管理モジュール１７は出力の担当機器がＭＦＰ２の印刷要求と共にジョブ情報をＭＦＰ２に送信する（ジョブ情報の全体を送信してもよい）。なお、「印刷設定」においてユーザが「個別設定」を選択すると、図１５（ｃ）のジョブ情報が直接生成される。
【００９９】
図１５（ｃ）の場合のコピーアプリ１１の手順の概略は以下のようになる。
１．まず、ジョブ管理モジュール１７は、自機のスキャナエンジンの利用要求をリソース管理モジュール１４に送出する。リソース管理モジュール１４はスキャナエンジンの例えば使用フラグが使用中でないことを確認して、スキャナエンジンを確保する。次に、リソース管理モジュール１４はジョブ管理モジュール１７から読み取り条件（両面読み取り、原稿種類（文字）、３００dpi、白黒）を取得してスキャナエンジンに設定し原稿を読み取る。リソース管理モジュール１４はＡＤＦから原稿がなくなったことセンサなどで検出して読み取りの完了をジョブ管理モジュール１７に通知する。生成された原稿の画像データは、ＨＤＤ１０５に記憶される。
【０１００】
なお、ジョブ管理モジュール１７は、少なくとも全てのページを印刷する前に、印刷される編集後のページ数が利用制限情報２０の利用可能量以下であることを確認する。具体的にはカウンタ管理モジュール１９が印刷されるページ数をカウントし、利用可能量と比較する。ページ数が利用可能量より大きい場合、以下の制御がなされる。どちらの制御がされるかは、ＭＦＰ１の設定により定められている。
・利用可能量を上限に印刷する（利用可能量の範囲で印刷ページ数を振り分ける）
・１ページも印刷することなく機器連携ジョブを中止する。
【０１０１】
２．ジョブ管理モジュール１７は、編集の担当機器はＭＦＰ２であるので、画像データと編集条件を、通信管理モジュール１５を介してＭＦＰ２に送信する。ＭＦＰ２は、画像データを４ｉｎ１（４ページ分を1枚に集約する）処理を施してＭＦＰ１に送信する。通信管理モジュール１５はＭＦＰ２から画像データを受信したことをジョブ管理モジュール１７に通知する。
【０１０２】
ジョブ管理モジュール１７は、担当機器がＭＦＰ２のジョブ情報と画像データをＭＦＰ２に送信する。
【０１０３】
３．ＭＦＰ１とＭＦＰ２のジョブ管理モジュール１７は、自機のプロッタエンジンの利用要求をリソース管理モジュール１４に送出する。リソース管理モジュール１４は、プロッタエンジンの例えば使用フラグが使用中でないことを確認して、プロッタエンジンを確保する。次に、リソース管理モジュール１４はジョブ管理モジュール１７から印刷条件（白黒、３部（ＭＦＰ１）又は２部（ＭＦＰ２）、A4、パンチ）を取得してプロッタエンジンに設定し印刷する。リソース管理モジュール１４は全てのページの印刷が完了したことをジョブ管理モジュール１７に通知する。
【０１０４】
・ＦＡＸアプリ
図１５（ｄ）はＦＡＸアプリの機器連携ジョブのジョブ情報の一例を示す。図１５（ｄ）では、入力の担当機器はＭＦＰ１、編集の担当機器はＭＦＰ１であり、出力（ＦＡＸ送信）の担当機器はＭＦＰ１とＭＦＰ２である。このようにＭＦＰ１とＭＦＰ２にＦＡＸ送信を振り分けるには、スキャナアプリの不図示の「送信設定」においてユーザＱが、コピーアプリの部数に相当する宛先（ＦＡＸ番号）を複数個、設定する。
【０１０５】
複数の宛先がある場合（同報送信の場合）、割り当て数決定部３１は宛先単位で担当機器毎に宛先を決定する。例えば、宛先が２箇所であり、ＦＡＸ送信を担当するＭＦＰが２つの場合、一台のＭＦＰが１つの宛先を担当する。宛先がＮ箇所であり、ＦＡＸ送信を担当するＭＦＰがＭ台の場合、一台のＭＦＰがＮ／Ｍ個の宛先を担当する。
【０１０６】
また、宛先に近いＭＦＰに割り当てることも有効である。例えば、ＭＦＰ１が都内、ＭＦＰ２が大阪にあり、宛先の市外局番が０３と０６であれば、０３を市外局番とする宛先にＭＦＰ１を割り当て、０６を市外局番とする宛先にＭＦＰ２を割り当てる。こうすることで通信コストを低減することができる。なお、この場合、各ＭＦＰ毎に担当する宛先の市外局番を登録したテーブルを用意しておく。
【０１０７】
図１５（ｅ）はＭＦＰ１とＭＦＰ２に宛先が割り当てられた機器連携ジョブの一例である。図１５（ｄ）と比べて、出力のプロセスが２つ作成され、それぞれの担当機器がＭＦＰ１とＭＦＰ２に設定されている。ジョブ管理モジュール１７は出力の担当機器がＭＦＰ２のジョブ情報をＭＦＰ２に送信する（ジョブ場情報の全体を送信してもよい）。
【０１０８】
図１５（ｅ）の場合のＦＡＸアプリの手順の概略は以下のようになる。
【０１０９】
１．入力のプロセスはコピーアプリ１１の場合と同様である。スキャンにより生成された原稿の画像データは、ＨＤＤ１０５に記憶される。
【０１１０】
ジョブ管理モジュール１７は、ＦＡＸ送信を開始する前にページ数が利用制限情報２０の利用可能量以下であることを確認する。ページ数が利用可能量より大きい場合、以下の制御がなされる。どちらの制御がされるかは、ＭＦＰ１の設定により定められている。
・利用可能量を上限にＦＡＸ送信する
・ＦＡＸ送信することなく機器連携ジョブを中止する。
【０１１１】
２．ジョブ管理モジュール１７は、編集の担当機器はＭＦＰ１であるので、画像データを１２０％に拡大処理する。
【０１１２】
ジョブ管理モジュール１７は、担当機器がＭＦＰ２のジョブ情報と画像データをＭＦＰ２に送信する。
【０１１３】
３．ＭＦＰ１及びＭＦＰ２のジョブ管理モジュール１７は、自機のＦＣＵ１４０の利用要求をリソース管理モジュール１４に送出する。リソース管理モジュール１４は、ＦＣＵ１４０の例えば使用フラグが使用中でないことを確認して、ＦＣＵ１４０を確保する。次に、リソース管理モジュール１４はジョブ管理モジュール１７からＦＡＸ送信条件（宛先のＦＡＸ番号）を取得してＦＣＵ１４０に設定し印刷する。リソース管理モジュール１４は全てのページのＦＡＸ送信が完了したことをジョブ管理モジュール１７に通知する。
【０１１４】
〔利用量を割り当てる際の動作手順〕
図１６は、ＭＦＰ１がＭＦＰ２に利用量を割り当てる手順を示すシーケンス図の一例である。ここではコピーアプリ１１を例に説明する。
【０１１５】
コピーアプリは、認証モジュール１８にユーザＱの認証を要求する（Ｓ１０）。ユーザＱはジョブの実行条件を設定する。
【０１１６】
認証が成立した場合、ユーザＱはジョブの実行条件を設定する。コピーアプリは機器連携ジョブのジョブ実行要求をジョブ管理モジュール１７に送出する（Ｓ２０）。
【０１１７】
ジョブ管理モジュール１７は、リソース管理モジュール１４やエンジン管理モジュール１６と協働して入力のプロセスを実行する（Ｓ３０）。原稿を読み取り画像データを生成することで、画像データのページ数が明らかになる。具体的には、原稿が５０枚、両面読み取り、４in１の集約、片面印刷、印刷部数が５部、の場合、１部当たりの印刷ページ数は以下のようになる。
５０×２（両面）÷４＝２５ページ
よって、５部の場合は、
２５ページ×５部＝１２５ページ  となる。
【０１１８】
次に、ジョブ管理モジュール１７はカウンタ管理モジュール１９に利用制限情報２０の取得を要求する（Ｓ４０）。
【０１１９】
カウンタ管理モジュール１９は利用制限情報２０から利用可能量を読み出しジョブ管理モジュール１７に送出する（Ｓ５０）。ここで、利用量判定部３２は、ＭＦＰ１とＭＦＰ２のトータルのページ数が、利用可能量以下であるか否かを判定する。
【０１２０】
利用可能量以下の場合、ジョブ管理モジュール１７は、通信管理モジュール１５にＭＦＰ２から機器管理情報２１を取得するよう要求する（Ｓ６０）。
【０１２１】
通信管理モジュール１５は、ＭＦＰ２の通信管理モジュール１５と通信する（Ｓ７０）。ＭＦＰ２の通信管理モジュール１５はリソース管理モジュール１４に機器管理情報２１を要求する（Ｓ８０）。なお、リソース管理モジュールは図示を省略した。リソース管理モジュール１４は機器管理情報２１を読み出し通信管理モジュール１５に送出する（Ｓ９０）。ＭＦＰ２の通信管理モジュール１５はＭＦＰ１の通信管理モジュール１５に機器管理情報２１を送信する（Ｓ１００）。ＭＦＰ１の通信管理モジュール１５は、ジョブ管理モジュール１７にＭＦＰ２の機器管理情報２１を送出する（Ｓ１１０）。
【０１２２】
ジョブ管理モジュール１７の割り当て数決定部３１は、ＭＦＰ１とＭＦＰ２の機器管理情報２１から、ＭＦＰ２への割り当てページ数を決定する（Ｓ１２０）。ＭＦＰ２の割り当てページ数が決まればＭＦＰ１の割り当てページ数も定まる。
ａ）印刷速度に基づく割り当てページ数の決定
割り当て数決定部３１は、印刷完了までの時間が最も早くなるようにＭＦＰ２に割り当てるページ数を決定する。印刷完了までの時間が最も早くなるのは、ＭＦＰ１と２がほぼ同時に印刷を完了させる場合であるので、次式からＭＦＰ２の割り当てページ数を決定することができる。ＭＦＰ１の印刷速度をｎ１〔枚／分〕、ＭＦＰ２の印刷速度をｎ２〔枚／分〕、トータルのページ数をＮとする。また、端数は切り上げる。
ＭＦＰ２の割り当てページ数  ＝  Ｎ×｛ｎ２／（ｎ１＋ｎ２）｝
なお、一部の印刷ではＮ＝ページ数（上記の２５ページ）とすればよい。複数部数の場合は、Ｎ＝部数（上記の５部）として、連携するＭＦＰの数で割り、端数は印刷速度の高い方が切り上げとすれば、部数単位で割り当てることができる。すなわち、５÷２＝２．５なので、ＭＦＰ１に二部、ＭＦＰ２に三部を割り当てる（ＭＦＰ２の方が印刷速度が速い場合）。
【０１２３】
また、複数部数で、Ｎ＝ページ数（上記の１２５ページ）として、ＭＦＰ２の割り当てページ数が２５ページの整数倍にならない場合、１部に相当する２５ページを、ＭＦＰ１とＭＦＰ２に割り当てる。すなわち、
ＭＦＰ２の割り当てページ数÷２５ページ  の商と余り
ＭＦＰ１の割り当てページ数÷２５ページ  の商と余り
をそれぞれ算出し、ＭＦＰ２は商の部数と、余りのページ数（例えば、ページ番号の若い方）を印刷し、ＭＦＰ１は商の部数と余りのページ数（例えば、ページ番号の古い方）を印刷する。
【０１２４】
このように、印刷速度に応じて割り当てページ数を決定することで、１つのジョブを最短時間で実行完了させることができる。
【０１２５】
印刷する機器が３台以上の場合は以下のようになる。
ＭＦＰ１の割り当てページ数  ＝  Ｎ×｛ｎ１／（ｎ１＋ｎ２＋ｎ３）｝
ＭＦＰ２の割り当てページ数  ＝  Ｎ×｛ｎ２／（ｎ１＋ｎ２＋ｎ３）｝
ＭＦＰ３の割り当てページ数  ＝  Ｎ×｛ｎ３／（ｎ１＋ｎ２＋ｎ３）｝
ｂ）消費電力に基づく割り当てページ数の決定
ＭＦＰ１とＭＦＰ２で印刷時の消費電力が異なる場合、全てのページの印刷を消費電力の少ない方のＭＦＰで行うことで最も少ない消費電力でジョブを実行できる。この場合、印刷を振り分けることができないので印刷時間が長くなってしまう。しかし、例えば、部数単位でカラーと白黒を切り換える場合、カラーが指定された部数の印刷はカラーの消費電力が安いＭＦＰで、白黒が指定された部数は印刷は白黒の消費電力が安いＭＦＰで、それぞれ印刷することで消費電力を最小化できる。例えば、ＭＦＰ１のカラーの消費電力が４０Ｗ・ｈ、白黒の消費電力が１０Ｗ・ｈ、ＭＦＰ２のカラーの消費電力が３０Ｗ・ｈ、白黒の消費電力が１３Ｗ・ｈの場合、割り当て数決定部３１はカラーが指定された部数はＭＦＰ２に割り当て、白黒が指定された部数はＭＦＰ１に割り当てる。
【０１２６】
また、カラー又は白黒の単一色の印刷では、消費電力で印刷速度を重み付けして、ＭＦＰ２の割り当てページ数を決定してもよい。例えば、ＭＦＰ１のカラー又は白黒の消費電力をｗ１〔Ｗ・ｈ〕、ＭＦＰ２のカラー又は白黒の消費電力をｗ２〔Ｗ・ｈ〕とすると、重み付けされた印刷速度は次のようになる。つまり、消費電力が大きいほど、印刷速度を小さくするように重み付けすることで、消費電力の大きいＭＦＰへの割り当てページ数を少なくすることができる。
ＭＦＰ１の印刷速度  ＝  ｎ１｛ｗ１／（ｗ１＋ｗ２）｝
ＭＦＰ２の印刷速度  ＝  ｎ２｛ｗ２／（ｗ１＋ｗ２）｝
ｃ）均等割り当てよる割り当てページ数の決定
均等に割り当てる場合、ＭＦＰ１がＭＦＰ２の機器情報を取得する必要がなく、トータルのページ数をＭＦＰの数で割ればよい。
【０１２７】
ジョブ管理モジュール１７は、通信管理モジュール１５に画像データの送信を要求する（Ｓ１３０）。通信管理モジュール１５は、ＭＦＰ２の通信管理モジュール１５に画像データを送信する（Ｓ１４０）。ＭＦＰ２の通信管理モジュール１５はジョブ管理モジュール１７に画像データを送出する（Ｓ１５０）。
【０１２８】
ＭＦＰ１のジョブ管理モジュール１７は、通信管理モジュール１５に、ジョブ情報のうち出力のプロセスのジョブ情報に割り当てページ数を含めて、送信するよう要求する（Ｓ１６０）。通信管理モジュール１５は、ＭＦＰ２の通信管理モジュール１５にジョブ情報を送信する（Ｓ１７０）。ＭＦＰ２の通信管理モジュール１５はジョブ管理モジュール１７にジョブ情報を送出する（Ｓ１８０）。
【０１２９】
ＭＦＰ２のジョブ管理モジュール１７は、リソース管理モジュール１４及びエンジン管理モジュール１６と協働して割り当てられた割り当てページ数の印刷を行う（Ｓ１９０）。
【０１３０】
なお、ＭＦＰ１のジョブ管理モジュール１７も、リソース管理モジュール１４及びエンジン管理モジュール１６と協働して割り当てられた割り当てページ数の印刷を行う（Ｓ２００）。ジョブ管理モジュール１７は出力単位毎に印刷結果をカウンタ管理モジュールに通知する（Ｓ２０１）。カウンタ管理モジュール１９はＭＦＰ１の利用量を出力単位毎に更新する（Ｓ２０２）。
【０１３１】
ＭＦＰ２のジョブ管理モジュール１７は、印刷の実行結果を通信管理モジュール１５に送出する（Ｓ２１０）。通信管理モジュール１５は、印刷の実行結果をＭＦＰ１の通信管理モジュール１５に送信する（Ｓ２２０）。ＭＦＰ１の通信管理モジュール１５は、印刷の実行結果をジョブ管理モジュール１７に送出する（Ｓ２３０）。
【０１３２】
ジョブ管理モジュール１７は、カウンタ管理モジュール１９にＭＦＰ２の実行結果を通知し（Ｓ２４０）、カウンタ管理モジュール１９はＭＦＰ２の利用量（利用可能量でもよい）をまとめて更新する（Ｓ２５０）。
【０１３３】
ジョブ管理モジュール１７は、自機の印刷の終了を待って、コピーアプリにジョブの実行結果を送出する（Ｓ２６０）。
【０１３４】
以上のように、本実施形態の機器連携システム２００は、機器連携ジョブにおいてもユーザＱの利用量を適切に制限することができる。
【０１３５】
なお、図１６ではコピーアプリを例に説明したが、ＦＡＸアプリの場合も割り当てページ数の決定方法が異なる以外は同様の手順となる。
【０１３６】
＜ＭＦＰ２がジョブ実行エラーを生じた場合＞
ＭＦＰ１がＭＦＰ２に印刷を要求した後、ＭＦＰ２が割り当てページ数の印刷を完了させる前にエラーを生じる場合がある。例えば、ＭＦＰ２が印刷中に、用紙切れ、トナー切れ、が生じた場合、用紙ジャムが生じた場合、等である。また、電圧降下やノイズ等によりシステムエラーが生じる場合もある。このような場合、ＭＦＰ２が復旧してから印刷を再開するよりも、ＭＦＰ１が印刷を引き継いだ方がジョブの実行時間が短くなる。
【０１３７】
図１７は、ＭＦＰ１がＭＦＰ２に利用量を割り当てる手順を示すシーケンス図の一例である。図１７は、ジョブの実行までの手順は図１５と同様である。
【０１３８】
ステップＳ１９０にてＭＦＰ２が印刷を開始した後、印刷を継続できない何らかのエラーが生じた（Ｓ１９２）。
【０１３９】
ジョブ管理モジュール１７は、印刷したページ数をカウントしているので、未完了の通知に残りのページ数を含めて通信管理モジュール１５に送出する（Ｓ１９４）。具体的には割り当てページ数から印刷が完了したページ数を減じればよい。
【０１４０】
ＭＦＰ２の通信管理モジュール１５は、残りのページ数が含まれる未完了の通知をＭＦＰ１の通信管理モジュール１５に送信する（Ｓ１９６）。ＭＦＰ１の通信管理モジュール１５は、残りのページ数が含まれる未完了の通知をジョブ管理モジュール１７に送出する（Ｓ１９８）。ジョブ管理モジュール１７は、自機の印刷に続けて、未完了の分の印刷を行う（Ｓ２０４）。
【０１４１】
ジョブ管理モジュール１７は、カウンタ管理モジュール１９にＭＦＰ２の実行結果を通知し（Ｓ２４０）、カウンタ管理モジュール１９はＭＦＰ２の利用量をまとめて更新する（Ｓ２５０）。ＭＦＰ２の利用量にはＭＦＰ２が印刷したページ数及びＭＦＰ１がＭＦＰ２に割り当てたがＭＦＰ１が印刷したページ数が含まれる。
【０１４２】
ジョブ管理モジュール１７は、未完了の印刷が完了すると、コピーアプリに機器連携ジョブの実行結果を送出する（Ｓ２６０）。
【０１４３】
このように、機器連携を利用すれば、連携先でエラーが発生した場合でもジョブを完了させることができる。なお、図１７ではコピーアプリを例に説明したが、ＦＡＸアプリの場合も同様に処理できる。すなわち、１枚も送信していない宛先があればＭＦＰ１が該宛先に全ページを送信し、１つの宛先に一部のページが送信されていない場合、該宛先に残りのページを送信する。
＜ＭＦＰ１がジョブ実行エラーを生じた場合＞
ＭＦＰ１においてエラーを生じる場合もある。例えば、ＭＦＰ１が印刷中に、用紙切れ、トナー切れ、が生じた場合、用紙ジャムが生じた場合、等である。また、電圧降下やノイズ等によりシステムエラーが生じる場合もある。このような場合、ＭＦＰ１が復旧してから印刷を再開するよりも、ＭＦＰ２が印刷を引き継いだ方がジョブの実行時間が短くなる。
【０１４４】
図１８は、ＭＦＰ１がＭＦＰ２に利用量を割り当てる手順を示すシーケンス図の一例である。図１８は、ジョブの実行までの手順は図１５と同様である。
【０１４５】
ステップＳ２００にてＭＦＰ２が印刷を開始した後、印刷を継続できない何らかのエラーが生じた（Ｓ２００-２）。
【０１４６】
ジョブ管理モジュール１７は、印刷したページ数をカウントしているので、未完了の通知に残りのページ数を含めて通信管理モジュール１５に送出する（Ｓ１９４）。具体的には割り当てページ数から印刷が完了したページ数を減じればよい。
【０１４７】
ＭＦＰ１の通信管理モジュール１５は、残りのページ数が含まれる再割り当て通知をＭＦＰ２の通信管理モジュール１５に送信する（Ｓ１９６）。ＭＦＰ２の通信管理モジュール１５は、残りのページ数が含まれる再割り当て通知をジョブ管理モジュール１７に送出する（Ｓ１９８）。
【０１４８】
ＭＦＰ２のジョブ管理モジュール１７は、自機の印刷に続けて、ＭＦＰ１から再割り当てされた分の印刷を行う（Ｓ２０４）。
【０１４９】
ＭＦＰ２のジョブ管理モジュール１７は、再割り当てされた印刷分を含め、実行結果を通信管理モジュール１５に送出する（Ｓ２１０）。通信管理モジュール１５は、機器連携ジョブの実行結果をＭＦＰ１の通信管理モジュール１５に送信する（Ｓ２２０）。ＭＦＰ１の通信管理モジュール１５は、ジョブの実行結果をジョブ管理モジュール１７に送出する（Ｓ２３０）。
【０１５０】
ジョブ管理モジュール１７は、カウンタ管理モジュール１９にＭＦＰ２の実行結果を通知し（Ｓ２４０）、カウンタ管理モジュール１９はＭＦＰ２の利用量をまとめて更新する（Ｓ２５０）。ＭＦＰ２の利用量にはＭＦＰ２が割り当てられ印刷したページ数及びＭＦＰ１がＭＦＰ２に再割り当てしてＭＦＰ２が印刷したページ数が含まれる。
【０１５１】
ジョブ管理モジュール１７は、コピーアプリに機器連携ジョブの実行結果を送出する（Ｓ２６０）。
【０１５２】
したがって、ＭＦＰ１とＭＦＰ２のどちらにエラーが生じても、エラーが生じていないＭＦＰが印刷を引き継ぐのでエラーによる印刷時間の増大を最小限に抑制できる。
【０１５３】
＜出力単位ずつの割り当て＞
ＭＦＰ１，２が大量の用紙を出力するようなジョブの実行中に、同じユーザＱが別のＭＦＰ１と機器連携したＭＦＰ（例えばＭＦＰ３、４）を操作してプリントを行うなどして利用可能量が減少する場合があり得る。利用可能量の減少により、ＭＦＰ１，２が上限利用量を超えて用紙を出力してしまう。このような不都合を防止するには、ＭＦＰ１が１枚毎に利用可能量がゼロでないことを確認して、ＭＦＰ２に印刷を依頼することが有効になる。
【０１５４】
図１９は、ＭＦＰ１がＭＦＰ２に１枚ごとに印刷を割り当てる手順を示すシーケンス図の一例である。図１９の処理はステップＳ１５０まで図１６と同様である。すなわち、ジョブ管理モジュール１７は、通信管理モジュール１５に、まず画像データのみ送信を要求する（Ｓ１３０〜Ｓ１５０）。
【０１５５】
次に、ＭＦＰ１のジョブ管理モジュール１７は、出力の１枚分のジョブ情報を通信管理モジュール１５に送信するよう要求する（Ｓ３１０）。
【０１５６】
通信管理モジュール１５は、ＭＦＰ２の通信管理モジュール１５と通信する（Ｓ３２０）。ＭＦＰ２の通信管理モジュール１５はジョブ管理モジュール１７にジョブ情報を送出する（Ｓ３３０）。
【０１５７】
ＭＦＰ２のジョブ管理モジュール１７は、リソース管理モジュール１４及びエンジン管理モジュール１６と協働して１枚分の印刷を行う（Ｓ３４０）。
【０１５８】
なお、ＭＦＰ１はＭＦＰ２とは非同期に印刷を実行し随時、利用量を更新していく（Ｓ２００〜Ｓ２０２）。こうすることでジョブの実行時間を短縮できる。
【０１５９】
ＭＦＰ２のジョブ管理モジュール１７は、１枚分の印刷の実行結果を通信管理モジュール１５に送出する（Ｓ３５０）。ＭＦＰ２の通信管理モジュール１５は、１枚分の印刷の実行結果をＭＦＰ１の通信管理モジュールに送信する（Ｓ３６０）。ＭＦＰ１の通信管理モジュール１５は、１枚分の印刷の実行結果をジョブ管理モジュール１７に送出する（Ｓ３７０）。
【０１６０】
ジョブ管理モジュール１７は、ＭＦＰ２の実行結果をカウンタ管理モジュールに通知し（Ｓ３８０）、ＭＦＰ２の利用量を、利用可能量から減じる（Ｓ３９０）。
【０１６１】
次に、ジョブ管理モジュール１７は、１つのジョブが終了したか否かを判定する（Ｓ４００）。
【０１６２】
ジョブが終了していない場合、利用可能量がゼロか否かを判定する（Ｓ４１０）。利用可能量は、ＭＦＰ１がＭＦＰ２以外のＭＦＰと機器連携することで、減少するおそれがあるためである。利用可能量がゼロの場合、ジョブ管理モジュール１７はジョブを終了させる。
【０１６３】
利用可能量がゼロでない場合、ジョブ管理モジュール１７は、ＭＦＰ２の割り当て分が終了したか否かを判定する（Ｓ４２０）。
【０１６４】
ＭＦＰ２の割り当て分が終了していない場合、ＭＦＰ１とＭＦＰ２は、ステップＳ３１０からの処理を繰り返す。ＭＦＰ１が非同期に印刷を実行しているので、ＭＦＰ１がＭＦＰ２の割り当て分も実行する可能性が高い。しかし、ＭＦＰ１にエラーが生じた場合には、ＭＦＰ２の割り当て分が終了するまで繰り返すので、ＭＦＰ２の割り当てページ数は確実に終わらせることができる。また、この後、ＭＦＰ２がＭＦＰ１の割り当て分を実行すればジョブを確実に終了させることができる。
【０１６５】
このように、１枚の出力毎に利用可能量がゼロでないことを判定し、ゼロでない場合にだけＭＦＰ２に印刷を割り当てることで、ユーザＱの上限利用量を超えてしまうことを防止できる。
【０１６６】
なお、図１９では、ＭＦＰ１がＭＦＰ２と機器連携ジョブを実行中に、ＭＦＰ１がＭＦＰ３等と機器連携することを許容することが前提であった。しかし、利用量の制限の厳格化をより簡易的に行うため、ＭＦＰ１がＭＦＰ２と機器連携ジョブを実行中、ＭＦＰ１がＭＦＰ３等と機器連携することを禁止することも有効である。ＭＦＰ１は例えば、以下のようにして、複数の機器連携ジョブが平行して実行されることを禁止する。
・同一ユーザのログイン中は、複数の機器連携ジョブを受け付けない。
・スタートボタンが押下された時、ジョブ管理モジュール１７は機器連携ジョブを１つずつ順番に実行する。
【０１６７】
こうすることで、図１９のように出力の１枚毎に利用可能量がゼロでないことを判断する必要がなく、ジョブの実行完了までの時間を短くできる。
【０１６８】
ＦＡＸアプリの場合、ＭＦＰ１のジョブ管理ツールはページ単位でＦＡＸ送信を割り当ててもよいし、宛先単位でＭＦＰにＦＡＸ送信を割り当ててもよい。
【０１６９】
＜割り当てページ数の予約＞
図１６では、ＭＦＰ２の実行結果に基づく、利用量の更新をＭＦＰ１がジョブの実行終了時に行っている。この方法では、ＭＦＰ２が出力した利用量の更新が遅れ、上記のジョブの並行的な実行が困難になる場合がある。そこで、ＭＦＰ２の割り当てページ数をＭＦＰの印刷開始前に利用可能量から減じておくことが有効になる。
【０１７０】
図２０は、ＭＦＰ１がジョブの実行開始前にＭＦＰ２の割り当てページ数を利用制限情報２０から減算しておく手順を示すシーケンス図の一例である。図２０ではステップＳ１２０までは図１６と同様である。
【０１７１】
割り当て数決定部３１がＭＦＰ２の割り当てページ数を決定した後、カウンタ管理モジュール１９に通知する（Ｓ１２１）。カウンタ管理モジュール１９はＭＦＰ２の利用量をこの時点で更新する（Ｓ１２２）。すなわち、ＭＦＰ２は割り当てられた利用量を予約分として印刷しても、利用制限を超えることがないことが保証される。ＭＦＰ１が印刷する分は図１６と同様に印刷毎に更新すればよい。以降の手順は図１６と同様なので省略する。
【０１７２】
図２０の手順によれば、ＭＦＰ２の利用量が印刷の開始前に予約されるので、ＭＦＰ１は、残りの利用可能量の範囲で他のＭＦＰ３等と機器連携によるジョブを実行することができる。なお、ＭＦＰ１が印刷する分もＭＦＰ２と同様に、印刷の開始前に更新してもよい。また、図２０ではコピーアプリを例に説明したが、ＦＡＸアプリの場合も同様に処理できる。
【符号の説明】
【０１７３】
１１        コピーアプリ
１２        プリンタアプリ
１３        ＦＡＸアプリ
１４        リソース管理モジュール
１５        通信管理モジュール
１６        エンジン管理モジュール
１７        ジョブ管理モジュール
１８        認証モジュール
１９        カウンタ管理モジュール
２０        利用制限情報
２１        機器管理情報
２３        通信可能機器一覧
３１        割り当て数決定部
３２        利用量判定部
１００      ＭＦＰ
２００      機器連携システム
３００      サーバ
【先行技術文献】
【特許文献】
【０１７４】
【特許文献１】特開２０１０−０７４４３１号公報
【図１】
0005824987.tif 000002
【図２】
0005824987.tif 000003
【図３】
0005824987.tif 000004
【図４】
0005824987.tif 000005
【図５】
0005824987.tif 000006
【図６】
0005824987.tif 000007
【図７】
0005824987.tif 000008
【図８】
0005824987.tif 000009
【図９】
0005824987.tif 000010
【図１０】
0005824987.tif 000011
【図１１】
0005824987.tif 000012
【図１２】
0005824987.tif 000013
【図１３】
0005824987.tif 000014
【図１４】
0005824987.tif 000015
【図１５】
0005824987.tif 000016
【図１６】
0005824987.tif 000017
【図１７】
0005824987.tif 000018
【図１８】
0005824987.tif 000019
【図１９】
0005824987.tif 000020
【図２０】
0005824987.tif 000021