(57)【要約】【課題】実装されているファームウェアのバージョンにかかわらず、他のバージョンのファームウェアが実装されている場合と同様に使用可能な画像形成装置を提供する。【解決手段】実装されているファームウェア１１５を、それとはバージョンが異なる代用ファームウェア２００と入れ替えるＦＷ入替え部２０５と、要求された各種のデータ７０の生成を外部の仮想画像形成装置２に代行させる代行中継部２０６と、複数のユーザに対応づけられたバージョンを示す第１の情報Ｔ１およびバージョン別の実行可能な処理を示す第２の情報Ｔ２に基づいて、識別されたユーザによって指定された実行するべき処理である対象処理を実装されているファームウェア１１５により実行が可能か否かを判定する判定部２０３と、対象処理を実行することが可能ではないと判定された場合に、ファームウェアの入替えか仮想画像形成装置２の利用かを選択する選択部２０５とを有する。【選択図】図５
2019109738.tif 000002
【特許請求の範囲】
【請求項１】
動作を制御するためのファームウェアを備える画像形成装置であって、
実装されている前記ファームウェアを、それとはバージョンが異なる代用ファームウェアと入れ替えるＦＷ入替え部と、
要求された各種のデータの生成を外部の仮想画像形成装置に代行させて前記データを取得する代行中継部と、
ユーザを識別する識別部と、
複数のユーザのそれぞれに対応づけられたバージョンを示す第１の情報およびバージョン別の実行可能な処理を示す第２の情報に基づいて、識別された前記ユーザによって指定された実行するべき処理である対象処理を実装されている前記ファームウェアにより実行することが可能か否かを判定する判定部と、
前記対象処理を実行することが可能ではないと判定された場合に、前記ファームウェアの入替えか前記仮想画像形成装置の利用かを選択する選択部と、を有し、
前記ＦＷ入替え部は、前記ファームウェアの入替えが選択された場合に、前記対象処理の実行が可能なバージョンの前記代用ファームウェアを取得して前記ファームウェアと入れ替え、
前記代行中継部は、前記仮想画像形成装置の利用が選択された場合に、前記対象処理により要求されるデータを前記仮想画像形成装置から取得する、
ことを特徴とする画像形成装置。
【請求項２】
制御対象が異なる複数のコントローラを備え、
前記複数のコントローラのそれぞれに前記ファームウェアが実装され、
前記ＦＷ入替え部は、前記ファームウェアの入替えとして、前記複数のコントローラののうちの前記対象処理の実行に関わるコントローラに対応する前記ファームウェアを前記代用ファームウェアと入れ替える、
請求項１記載の画像形成装置。
【請求項３】
前記選択部は、前記対象処理がそれの実行を開始するべきタイミングが到来する以前に前記ファームウェアの入替えを終えることが可能な処理である場合には、前記ファームウェアの入替えを選択し、他の場合には、前記仮想画像形成装置の利用を選択する、
請求項１または２記載の画像形成装置。
【請求項４】
前記選択部は、前記対象処理になり得る複数の処理のそれぞれについて選択結果を定めたテーブルに基づいて、前記ファームウェアの入替えか前記仮想画像形成装置の利用を選択する、
請求項１ないし３のいずれかに記載の画像形成装置。
【請求項５】
印刷ジョブを含む複数の種類のジョブの実行が可能に構成されており、
前記選択部は、前記対象処理が入力頻度が高いジョブの処理である場合には、前記仮想画像形成装置の利用を選択する、
請求項１または２記載の画像形成装置。
【請求項６】
前記複数の種類のジョブのそれぞれについて実行待ちの発生回数を計数する計数部を有し、
前記選択部において、前記発生回数がしきい値以上であるジョブの処理が、前記入力頻度が高いジョブの処理とされる、
請求項５記載の画像形成装置。
【請求項７】
前記選択部は、前記ファームウェアを入れ替える場合の前記対象処理の完了までの推定所要時間である第１の推定所要時間が、前記仮想画像形成装置を利用する場合の前記対象処理の完了までの推定所要時間である第２の推定所要時間よりも短い場合には、前記ファームウェアの入替えを選択し、前記第１の推定所要時間が前記第２の推定所要時間よりも長い場合には、前記仮想画像形成装置の利用を選択する、
請求項１または２記載の画像形成装置。
【請求項８】
前記対象処理になり得る複数の処理のそれぞれについて、ファームウェアを入れ替えて実行するテスト動作、および前記仮想画像形成装置を利用して実行するテスト動作を当該画像形成装置に定期的に行わせ、前記複数の処理のそれぞれの完了までの所要時間を測定して前記第１の推定所要時間および前記第２の推定所要時間を更新する所要時間更新部、を有する、
請求項７記載の画像形成装置。
【請求項９】
前記選択部は、前記ファームウェアが使用中である場合には、前記仮想画像形成装置の利用を選択する、
請求項１ないし８のいずれかに記載の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置に関する。
【背景技術】
【０００２】
コピー機、ファクシミリ機、およびこれらの機能を集約したＭＦＰ（Multi-functional Peripheral ：多機能機または複合機）などの画像形成装置は、その動作を制御するためのファームウェア（ＦＷ）を備えている。
【０００３】
画像形成装置において、ファームウェアをバージョンアップすることによって、ハードウェアを変更することなく機能を追加しまたは拡張することができる。例えば、応用印刷の選択肢を増やしたり、操作画面のデザインを変更したり、ネットワーク通信のセキュリティを高めたりすることができる。
【０００４】
他方、画像形成の生産性を高めるための先行技術として、特許文献１に記載された技術がある。特許文献１には、印刷ジョブの実行を要求された画像処理装置が、紙なしまたはジャムなどのために要求を処理することができない場合に、ネットワークを介して接続された他の画像処理装置に処理を代行させる画像処理システムが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−３３４５５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
画像形成装置を複数のユーザが共用する環境において、ファームウェアのバージョンアップを望むユーザと望まないユーザとが共存する場合があり得る。例えば、企業内の複数の部署により画像形成装置が共有される場合に、バージョンアップによる機能の追加を歓迎する部署がある一方で、使用する機能を制限したいまたは使い慣れた操作画面を用いたいなどの理由でバージョンアップを望まない部署がある、という状況が考えられる。複数の小規模の事業者が画像形成装置を共有する場合も同様である。
【０００７】
一般に、複数のユーザの間でバージョンアップについて合意がなされなければ、バージョンアップは行われない。この場合に、バージョンアップを望むユーザの要望は満たされない。
【０００８】
また、あるユーザが例えば出張先で画像形成装置を使用するときに、その画像形成装置のファームウェアのバージョンが日常的に使用している画像形成装置のファームウェアのバージョンと異なるために、普段通りに使用することができない、という状況が考えられる。
【０００９】
本発明は、このような問題に鑑みてなされたもので、実装されているファームウェアのバージョンにかかわらず、他のバージョンのファームウェアが実装されている場合と同様に使用可能な画像形成装置を提供することを目的としている。
【課題を解決するための手段】
【００１０】
本発明の実施形態に係る画像処理装置は、動作を制御するためのファームウェアを備える画像形成装置であって、実装されている前記ファームウェアを、それとはバージョンが異なる代用ファームウェアと入れ替えるＦＷ入替え部と、要求された各種のデータの生成を外部の仮想画像形成装置に代行させて前記データを提供する代行中継部と、ユーザを識別する識別部と、複数のユーザのそれぞれに対応づけられたバージョンを示す第１の情報およびバージョン別の実行可能な処理を示す第２の情報に基づいて、識別された前記ユーザによって指定された実行するべき処理である対象処理を実装されている前記ファームウェアにより実行することが可能か否かを判定する判定部と、前記対象処理を実行することが可能ではないと判定された場合に、前記ファームウェアの入替えか前記仮想画像形成装置の利用かを選択する選択部と、を有し、前記ＦＷ入替え部は、前記ファームウェアの入替えが選択された場合に、前記対象処理の実行が可能なバージョンの前記代用ファームウェアを取得して前記ファームウェアと入れ替え、前記代行中継部は、前記仮想画像形成装置の利用が選択された場合に、前記対象処理により要求されるデータを前記仮想画像形成装置から取得する。
【発明の効果】
【００１１】
本発明によると、実装されているファームウェアのバージョンにかかわらず、他のバージョンのファームウェアが実装されている場合と同様に使用可能な画像形成装置を提供することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態に係る画像形成装置を含むネットワークシステムの構成を示す図である。
【図２】画像形成装置の外観の例を示す図である。
【図３】画像形成装置のハードウェア構成を示す図である。
【図４】画像形成装置に実装されるファームウェアの例を示す図である。
【図５】画像形成装置の要部の機能的構成を示す図である。
【図６】ユーザ登録テーブルの例を示す図である。
【図７】バージョンテーブルの例を示す図である。
【図８】判定テーブルの例を示す図である。
【図９】第１の選択テーブルの例を示す図である。
【図１０】第２の選択テーブルおよび発生回数テーブルの例を示す図である。
【図１１】第３の選択テーブルおよび所要時間テーブルの例を示す図である。
【図１２】画像形成装置における処理の流れを示す図である。
【発明を実施するための形態】
【００１３】
図１には本発明の実施形態に係る画像形成装置１を含むネットワークシステム７の構成が、図２には画像形成装置１の外観の例が、図３には画像形成装置１のハードウェア構成が、それぞれ示されている。
【００１４】
図１に示すネットワークシステム７において、画像形成装置１は、仮想ＭＦＰ（仮想画像形成装置）２、サーバ３、およびパーソナルコンピュータなどの１台または複数台のホスト４のそれぞれとネットワーク５を介して通信可能に接続される。ネットワーク５は、ＬＡＮ(Local Area Network)であってもよいし、インターネットを含む広域ネットワークであってもよい。
【００１５】
画像形成装置１は、コピー機、イメージリーダ、ファクシミリ機などの機能を集約したＭＦＰ（Multi-functional Peripheral ：多機能機または複合機）であり、コピー、スキャン、およびファクスといった種類の異なる複数のジョブの実行が可能である。
【００１６】
仮想ＭＦＰ２は、画像形成装置１に組み込み可能なソフトウェアにより実現される各種のデータ処理の実行が可能に構成された情報処理装置である。仮想ＭＦＰ２は、画像形成装置１からの要求に応じてデータ処理を代行する機能を有している。
【００１７】
サーバ３は、画像形成装置１のハードウェアに適合するファームウェアを提供するサーバである。複数のバージョンのファームウェアが存在する場合は、それら複数のバージョンのファームウェアを格納し管理する。サーバ３は、画像形成装置１からの要求に応じて、要求されたバージョンのファームウェアを画像形成装置１に転送する。
【００１８】
ホスト４は、プリントジョブ、ファクシミリ送信ジョブなどを、ネットワーク通信によって画像形成装置１に送信し入力する。
【００１９】
図２に示すように、画像形成装置１は、操作パネル１１、自動原稿送り装置（ＡＤＦ：Auto Document Feeder）１２、フラットベッド型のスキャナ１３、プリンタ部１４、給紙部１５、および識別情報読取り部２０を備えている。さらに、図３に示すように、ファクシミリインタフェース１６、ネットワークインタフェース１７、補助記憶装置１８、画像処理部１９、およびメインコントローラ１００などを備えている。
【００２０】
操作パネル１１は、ユーザによる操作のための画面を表示するタッチパネルディスプレイ１１Ａと、スタートキーおよびストップキーなどのハードキーが配置されたキー入力部１１Ｂとを有し、入力操作に応じた信号を出力する。この信号に応じて、メインコントローラ１００により、画像形成装置１の動作が制御される。
【００２１】
自動原稿送り装置１２は、原稿トレイにセットされたシート状の原稿をスキャナ１３の流し読取り位置へ搬送する。さらに搬送を続けて原稿トレイの下方の排紙トレイへ原稿を排出する。自動原稿送り装置１２は、スキャナ１３のプラテンガラスを覆うカバーとして開閉可能に設けられている。
【００２２】
スキャナ１３は、自動原稿送り装置１２から搬送されてきた原稿またはプラテンガラスの上にユーザによりセットされた原稿の画像を読み取って画像データを生成する。モノクロ（グレースケール）およびフルカラーの読取りが可能である。
【００２３】
プリンタ部１４は、コピー、ネットワークプリンティング（ＰＣプリント）、ファクシミリ受信、およびボックスプリントなどの印刷ジョブにおいて、給紙部１５から供給されたシート（記録用紙）の片面または両面にモノクロまたはカラーの画像を形成する。画像形成の方式は電子写真式である。ただし、インクジェット式または他の方式でもよい。
【００２４】
給紙部１５は、多数枚のシートの収納が可能な複数の給紙トレイを備え、選択された給紙トレイからシートを取り出してプリンタ部１４に供給する。
【００２５】
識別情報読取り部２０は、ユーザが携帯する記憶媒体からユーザを特定する識別情報（ユーザＩＤ）を読み取る。例えば、識別情報を記憶する媒体がＩＣカードとされる場合は、識別情報読取り部２０としてカードリーダが操作パネル１１の近傍に設けられる。識別情報読取り部２０としては、スマートフォンまたはウェラブル機器などから近距離通信の技術により識別情報を読み取るものであってもよい。
【００２６】
ファクシミリインタフェース１６は、外部のファクシミリ端末との間でＧ３などのプロトコルを用いて画像データをやりとりするためのインタフェースである。通信回線として電話回線、およびインターネットなどが用いられる。
【００２７】
ネットワークインターフェース１７は、外部の情報処理装置との間で通信回線を介して通信するためのインタフェースである。通信回線として、ローカルエリアネットワーク回線（ＬＡＮ回線）、およびインターネットなどが用いられる。
【００２８】
補助記憶装置１８は、メインコントローラ１００から送られてくる画像データ、および外部の装置から転送されてきたドキュメントのデータなどを記憶する。補助記憶装置１８として、ＨＤＤ（Hard Disk Drive ）またはＳＳＤ（Solid State Drive ）などが用いられる。
【００２９】
画像処理部１９は、スキャナ１３から送られてきた画像データにシェーディング補正や色収差補正といった読取り光学系の特性に関わる処理を施す。さらに、データの形式の変換、スキャン画像データの光学文字読取り（ＯＣＲ処理）、テキストの翻訳、およびメインコントローラ１００と補助記憶装置１８との間で画像データをやりとりする際の画像データの圧縮／伸張などを行う。
【００３０】
メインコントローラ１００は、画像形成装置１の全体的な制御を受け持つ。メインコントローラ１００は、ＣＰＵ１０１、ＲＡＭ１０２、ＲＯＭ１０３、および書換え可能な不揮発性メモリ１０４を備える。
【００３１】
不揮発性メモリ１０４には、画像形成装置１の全体的な制御を行うためのファームウェア（図４に示すメイン制御ＦＷ１０５）が実装されている。「実装されている」とは、プロセッサ（メインコントローラ１００ではＣＰＵ１０１）による実行の対象として不揮発に記憶されていることを意味する。
【００３２】
また、ＲＯＭ１０３または不揮発性メモリ１０４には、ユーザにより指定された処理が画像形成装置１に実装されているファームウェアでは実行できない場合に、後に述べるユーザ支援動作を行うためのユーザ支援制御プログラムが記憶されている。ユーザ支援制御プログラムは、ファームウェアの一部であってもよい。
【００３３】
これらのプログラムは、必要に応じてＲＡＭ１０２にロードされ、ＣＰＵ１０１によって実行される。
【００３４】
図４には画像形成装置１に実装されるファームウェアの例が示されている。
【００３５】
図４の通り、画像形成装置１は、メインコントローラ１００の他に、パネルコントローラ１１０、スキャナコントローラ１３０、プリンタコントローラ１４０、および画像処理コントローラ１９０などの複数のコントローラを有している。これらのコントローラ１１０，１３０，１４０，１９０は、ファームウェア（ＦＷ）を記憶する不揮発性メモリ、そのファームウェアを実行するプロセッサ、ファームウェアの実行のワークエリアとなるＲＡＭなどを備えている。
【００３６】
パネルコントローラ１１０は、パネル制御ＦＷ１１５に従って操作パネル１１による入出力動作を制御する。出力動作には、タッチパネルディスプレイ１１Ａに操作画面を表示させる画面表示処理の実行が含まれる。
【００３７】
スキャナコントローラ１３０は、スキャナ制御ＦＷ１３５に従って、スキャナ１２による原稿画像の読取り動作および自動原稿送り装置１３による原稿搬送動作を制御する。
【００３８】
プリンタコントローラ１４０は、プリンタ制御ＦＷ１４５に従って、プリンタ部１４による印刷動作および給紙部１５による給紙動作を制御する。
【００３９】
画像処理コントローラ１９０は、画像処理制御ＦＷ１９５に従って、画像処理部１９による各種の画像処理動作を制御する。
【００４０】
以下、画像形成装置１において記憶される複数のファームウェア、すなわちメイン制御ＦＷ１０５、パネル制御ＦＷ１１５、スキャナ制御ＦＷ１３５、プリンタ制御ＦＷ、および画像処理制御ＦＷ１４５を総称して「ファームウェアグループ」と記すことがある。
【００４１】
さて、画像形成装置１においては、ユーザが画像形成装置１に実行させたい処理が、実装されているファームウェアとはバージョンが異なるファームウェアを用いなければ実行できない、という状況の発生が想定されている。例えば、最新バージョンでしか実行できない処理を実行させたいのに、旧バージョンのファームウェアが実装されている、という状況があり得る。
【００４２】
画像形成装置１は、このような状況が発生したときに、ユーザが望む処理結果を出力するユーザ支援機能を有している。以下、このユーザ支援機能を中心に画像形成装置１の構成および動作を説明する。
【００４３】
図５には画像形成装置１の要部の機能的構成が、図６にはユーザ登録テーブルＴ１の例が、図７にはバージョンテーブルＴ１０の例が、図８には判定テーブルＴ２の例が、それぞれ示されている。
【００４４】
画像形成装置１は、ジョブ管理部２０１、識別部２０２、判定部２０３、選択部２０４、ＦＷ入替え部２０５、代行中継部２０６、計数部２０７、および所要時間更新部２０８などを有している。これらの機能は、例えばメインコントローラ１００のハードウェア構成により、およびユーザ支援制御プログラムがＣＰＵ１０１によって実行されることにより実現される。
【００４５】
ジョブ管理部２０１は、操作パネル１１またはホスト４を用いてユーザにより入力されるジョブを管理する。すなわち、ジョブの入力を受け付け、ジョブの実行順序を決定し、実行するジョブに応じて、他のコントローラ１１０，１３０，１４０，１９０に所定の指令を与える。
【００４６】
本実施形態において、ジョブ管理部２０１は、ジョブにおいて実行するべき複数の処理のそれぞれを特定する識別子（処理ＩＤ）４１を、例えばその処理を実行することが決まったときに判定部２０３に与える。また、識別部２０２からユーザのログインが通知されたときには、ユーザがジョブを入力する操作のための初期画面を表示する画面表示処理を特定する処理ＩＤ４１を判定部２０３に与える。
【００４７】
識別部２０２は、識別情報読取り部２０により読み取られ、またはネットワーク通信によるアクセスに際して入力されるユーザ識別子（ユーザＩＤ）３１により、ログインしたユーザを識別する。そして、ユーザのログインをジョブ管理部２０１に通知するとともに、識別したユーザのユーザＩＤ３１を判定部２０３に与える。
【００４８】
判定部２０３は、ユーザ登録テーブルＴ１（第１の情報）および判定テーブルＴ２（第２の情報）に基づいて、識別されたユーザによって指定された実行するべき処理である対象処理を実装されているファームウェアにより実行することが可能か否かを判定する。判定部２０３は、実装されているファームウェアのバージョンを予め記憶している。
【００４９】
ユーザ登録テーブルＴ１は、予め登録された複数のユーザのそれぞれに対応づけられたファームウェアグループのバージョンを示す。図６に示すように、ユーザ登録テーブルＴ１においては、ユーザＩＤ３１に、少なくとも適合ＦＷグループバージョン３２と使用言語３３とが対応づけられている。
【００５０】
適合ＦＷグループバージョン３２は、各ユーザに適合するファームウェアグループのバージョンである。図６の例では、ファームウェアグループには、「ｖｅｒ．１」〜「ｖｅｒ．３」の３つのバージョンがある。そして、ユーザＡには「ｖｅｒ．１」が、ユーザＢＡには「ｖｅｒ．１」と「ｖｅｒ．２」とが、ユーザＣには「ｖｅｒ．３」が、それぞれ対応づけられている。
【００５１】
適合ＦＷグループバージョン３２は、例えばユーザＡ〜Ｃが所属する組織（会社、部署その他）により使用が許可されたバージョンであったり、各ユーザＡ〜Ｃ自身が使用を希望するバージョンであったりする。つまり、適合ＦＷグループバージョン３２は、画像形成装置１の使用形態に応じて適宜定めることができる。
【００５２】
図７に示すように、バージョンが互いに異なるファームウェアグループの間では、グループを構成する複数のファームウェアのバージョンの組み合わせが異なる。つまり、バージョンが互いに異なるファームウェアグループの間で、複数のファームウェアの全てのバージョンが異なる場合もあるし、図７の例のように複数のファームウェアの一部のバージョンが異なる場合もある。
【００５３】
図７の例では、例えばメイン制御ＦＷ１０５のバージョンは、ファームウェアグループのバージョンごとに異なる。詳しくは、「ｖｅｒ．１」では「ｖｅｒ．１０５−１」であり、「ｖｅｒ．２」では「ｖｅｒ．１０５−２」であり、「ｖｅｒ．３」では「ｖｅｒ．１０５−３」である。これとは違って、パネル制御ＦＷ１１５のバージョンは、「ｖｅｒ．１」と「ｖｅｒ．２」とでは共通の「ｖｅｒ．１１５−１」であり、「ｖｅｒ．３」では最新の「ｖｅｒ．１１５−２」である。
【００５４】
図６に戻って、使用言語３３は、各ユーザＡ〜Ｃが操作画面の表示に使用してほしいと望む言語である。例えば、日本語を理解できないユーザが出張で訪れた日本国で画像形成装置１を使用する場合に、予めユーザ登録を行う際に使用言語３３として母国語を登録しておく。これにより、操作画面を母国語で表示させることができる。
【００５５】
図５に戻って、判定部２０３が参照する判定テーブルＴ２は、ファームウェアグループのバージョン別の実行可能な処理を示す。図８に示すように、判定テーブルＴ２においては、処理ＩＤ４１に、実行可否情報４２と対象ＦＷ情報４３とが対応づけられている。
【００５６】
処理ＩＤ４１は、処理を大まかに区別する処理名と細かく区別する処理条件とを少なくとも表わす。実行可否情報４２は、処理ＩＤ４１により区別される処理ごとに、ファームウェアグループの各バージョンによる実行の可否を示す。図中の「○」は、実行可能であることを表わし、「−」は実行不可であることを表わしている。対象ＦＷ情報４３は、処理ＩＤ４１により区別される処理の実行に関わるファームウェアを表わす。
【００５７】
図８の例では、多種多様の処理のうち、代表として、処理名が「画面表示」、「モノクロ印刷」、「集約印刷」、または「翻訳出力」である複数の処理について、実行可否情報４２の内容が示されている。
【００５８】
「画面表示」には、処理条件の項目として表示に用いる言語があり、言語の選択肢として日本語、英語、およびタイ語を含む多数が設けられている。日本語または英語による画面表示は、ｖｅｒ．１〜３のいずれであっても実行可能である。タイ語による画面表示は、ｖｅｒ．１〜３のうちのｖｅｒ．３のみが実行可能である。
【００５９】
「モノクロ印刷」の処理条件は印刷色であり、印刷色の選択肢としてブラック（Ｋ）、イエロー（Ｙ）、マゼンタ（Ｍ）、およびシアン（Ｃ）がある。ブラックでの印刷は、ｖｅｒ．１〜３のいずれであっても実行可能である。Ｙ、Ｍ、またはＣでの印刷は、ｖｅｒ．２とｖｅｒ．３とが実行可能である。
【００６０】
モノクロ印刷の動作においては、Ｙ、Ｍ、Ｃ、Ｋの各色のトナー像を形成するイメージングユニットのうち、使用するイメージングユニットとしていずれかを選択することにより、印刷色を切り替えることができる。すなわち、モノクロ印刷に際しては、必ずしも印刷色に応じた特別の画像データを生成する必要はないが、画像データを与えるイメージングユニットを駆動する制御を行う必要がある。つまり、「モノクロ印刷」という処理は、仮想画像形成装置１による代行が不可能な駆動機構の制御を伴う。
【００６１】
「集約印刷」の処理条件は１ページに集約するページ数であり、ページ数の選択肢として２、４、６…などがある。２ページを集約する２ｉｎ１および４ページを集約する４ｉｎ１は、ｖｅｒ．１〜３のいずれであっても実行可能である。６ページを集約する６ｉｎ１は、ｖｅｒ．３のみが実行可能である。
【００６２】
集約印刷では、元の複数のページの画像を１ページ分の画像に編集する画像処理を行う必要がある。ただし、編集された画像は１ページの画像として扱うことができるので、イメージングユニットなどの駆動機構の制御は、集約を行わない通常の印刷における制御と同様でよい。つまり、印刷のための一連の処理のうち、集約した画像データを生成する画像処理が、通常の印刷と異なる。
【００６３】
「翻訳出力」には、処理条件の選択肢として、日本語から英語への翻訳、および日本語からタイ語への翻訳などがある。日本語から英語への翻訳は、ｖｅｒ．２とｖｅｒ．３とが実行可能である。日本語からタイ語への翻訳は、ｖｅｒ．３のみが実行可能である。
【００６４】
再び図５に戻って、判定部２０３は、識別部２０２からのユーザＩＤ３１に対応づけられているファームウェアグループのバージョンをユーザ登録テーブルＴ１から取得する。続いて、判定テーブルＴ２を参照し、実行可否情報４２のうち、ジョブ管理部２０１からの処理ＩＤと先に取得したバージョンとに対応する内容（実行の可否）を読み出す。この読出しが、対象処理を実行することが可能か否かを判定することに相当する。
【００６５】
そして、判定部２０３は、読み出した実行の可否を判定結果４４として選択部２０４およびジョブ管理部２０１に通知する。このとき、実行することが可能ではないとの判定結果４４には、処理ＩＤ４１、対象処理の実行が可能なファームウェアグループのバージョン、および対象処理の実行に関わるファームウェアの識別子（対象ＦＷ情報４３）を含める。
【００６６】
ここで、１つの状況を想定する。例えば、実装されているファームウェアグループのバージョンがｖｅｒ．１である状態において、ユーザＣがログインしたとする。ユーザＩＤ３１を記録したカードを提示するなどのログインのための操作は、初期画面の表示を指定することに相当する。
【００６７】
ユーザ登録テーブルＴ１において、ユーザＣに対応づけられている使用言語４３はタイ語である。つまり、この場合の対象処理は、タイ語での画面表示である。そこで、判定テーブルＴ２を参照すると、この対象処理の実行が可能なバージョンは、ｖｅｒ．３のみである。したがって、判定部２０３は、対象処理を実行することが可能ではないとの判定する。そして、判定結果４４には、対象処理の実行が可能なファームウェアグループのバージョンとしてｖｅｒ．３を含め、対象処理の実行に関わるパネル制御ＦＷ１０５の識別子を含める。
【００６８】
なお、ジョブ管理部２０１は、実行することが可能であるとの判定結果４４が通知された場合には、通常通り対象処理を実行させる指令をコントローラ１１０，１３０，１４０，１９０に与える。実行することが可能ではないとの判定結果４４が通知された場合には、選択部２０４からの選択結果５１の通知を待って、選択結果５１に応じた指令をコントローラ１１０，１３０，１４０，１９０に与える。
【００６９】
選択部２０４は、対象処理を実行することが可能ではないとの判定結果４４が通知された場合に、第１〜第３の選択テーブルＴ３ａ，Ｔ３ｂ，Ｔ３ｃの内容に従って、ファームウェアの入替えか仮想ＭＦＰ２の利用かを選択する。第１〜第３の選択テーブルＴ３ａ，Ｔ３ｂ，Ｔ３ｃのうちのいずれの内容に従うかは、選択モードの設定により決まる。選択モードの設定は、例えば画像形成装置１の管理者によって行われる。第１〜第３の選択テーブルＴ３ａ，Ｔ３ｂ，Ｔ３ｃの内容の例を後に述べる。
【００７０】
選択部２０４は、選択結果５１をＦＷ入替え部２０６およびジョブ管理部２０１に通知する。このとき、ファームウェアの入替えを選択したとの選択結果５１には、判定結果４４から抽出した対象処理の実行が可能なファームウェアグループのバージョン、および対象処理の実行に関わるファームウェアの識別子を含める。
【００７１】
ＦＷ入替え部２０５は、ファームウェアの入替えを選択したとの選択結果５１が選択部２０４から通知された場合に、対象処理の実行が可能なバージョンのファームウェアである代用ファームウェア２００をサーバ３から取得する。その際に、バージョンテーブルＴ１０を参照して代用ファームウェア２００のバージョンを特定する。
【００７２】
例えば、選択結果５１に含まれるファームウェアグループのバージョンがｖｅｒ．３であり、ファームウェアの識別子がパネル制御ＦＷ１０５の識別子である場合は、バージョンがｖｅｒ．１１５−２であるパネル制御ＦＷ１０５を代用ファームウェア２００として取得する。ｖｅｒ．１１５−２は、パネル制御ＦＷ１０５の２つのバージョンのうちのファームウェアグループのバージョン（ｖｅｒ．３）に対応するバージョンである。
【００７３】
そして、実装されているファームウェアを取得した代用ファームウェア２００と入れ替える。すなわち、ファームウェアを記憶する不揮発性メモリにおいて、公知のメモリ制御技術を用いて代用ファームウェア２００を上書きする。ただし、上書きに限らず、既存のファームウェアを残すように代用ファームウェア２００を格納し、既存のファームウェアに代わって代用ファームウェア２００がＲＡＭにロードされるようにロードの読出しアドレスを変更してもよい。
【００７４】
図５の例において、対象処理の実行に関わるファームウェアは、パネルコントローラ１１０の不揮発性メモリ１１４に記憶されるパネル制御ＦＷ１１５である。代用ファームウェア２００との入替えにより、パネル制御ＦＷ１１５のバージョンが、例えばｖｅｒ．１１５−１からｖｅｒ．１１５−２に変わる。
【００７５】
代行中継部２０６は、画像形成装置１では生成できない各種のデータ７０の生成を仮想ＭＦＰ２に代行させて取得する。詳しくは、選択部２０４において仮想ＭＦＰ２の利用が選択された場合に、対象処理を実行する処理実行部１１９により要求されるデータ７０の生成を仮想ＭＦＰ２に依頼し、仮想ＭＦＰ２から生成されたデータ７０を受信して処理実行部１１９に引き渡す。
【００７６】
図５の例において、処理実行部１１９は、パネルコントローラ１１０の機能的構成要素であり、パネル制御ＦＷ１１５が実行されることにより実現される。仮想ＭＦＰ２の利用を選択したとの選択結果５１がジョブ管理部２０１に通知された場合に、ジョブ管理部２０１は、処理実行部１１９に対して、対象処理を実行する際にデータ７０を代行中継部２０６に要求するよう指令を与える。なお、対象処理が他のコントローラ１３０，１４０，１９０に関わる場合には、対象処理に関わる他のコントローラに対して指令を与える。
【００７７】
計数部２０７は、画像形成装置１に入力される複数の種類のジョブのそれぞれについて実行待ちの発生回数５３を計数する。そして、第２の選択テーブルＴ３ｂに付随する発生回数テーブルＴ３０に発生回数５３の計数値を格納する。すなわち、実行待ちが発生するごとに、発生回数テーブルＴ３０により記憶される発生回数５３を更新する。
【００７８】
所要時間更新部２０８は、ファームウェアを入れ替えるのと仮想ＭＦＰ２を利用するのといずれが対象処理を早く完了させる上で有利かを定量的に判断するために設けられている。これにより、ファームウェアの上書きの所要時間がメモリの空き容量などの要因で変化したり、仮想ＭＦＰ２を利用する場合の通信の所要時間が回線のトラフィックなどの要因で変化したりすることがあっても、いずれが有利かをより正確に判断することができる。
【００７９】
所要時間更新部２０８は、対象処理になり得る複数の処理のそれぞれについて、ファームウェアを入れ替えて実行する第１のテスト動作、および仮想ＭＦＰ２を利用して実行する第２のテスト動作を、画像形成装置１に定期的に行わせる。第１のテスト動作および第２のテスト動作に際して、処理の完了までの所要時間を測定する。そして、第３の選択テーブルＴ３ｃに付随する所要時間テーブルＴ３２に、第１の推定所要時間６１として第１のテスト動作における所要時間を格納し、第２の推定所要時間６２として第２のテスト動作における所要時間を格納する。
【００８０】
つまり、所要時間更新部２０８は、第３の選択テーブルＴ３ｃに従う選択に用いる第１の推定所要時間６１および第２の推定所要時間６２を、定期的にテスト動作の結果に基づいて更新する。
【００８１】
以下、選択部２０４による選択についてさらに詳しく述べる。
【００８２】
図９には第１の選択テーブルＴ３ａの例が、図１０には第２の選択テーブルＴ３ｂの例および発生回数テーブルＴ３０の例が、図１１には第３の選択テーブルＴ３ｃの例および所要時間テーブルＴ３２の例が、それぞれ示されている。
【００８３】
本実施形態においては、ファームウェアの入替えと仮想ＭＦＰ２の利用とに次のように利点および欠点があるものとして、第１〜第３の選択テーブルＴ３ａ，Ｔ３ｂ，Ｔ３ｃが設けられている。
【００８４】
ファームウェアを入れ替える場合には、入替えが終わった後の対象処理の実行の開始から完了までの時間は短い。しかし、代用ファームウェア２００をダウンロードして記憶させる入替えが終わるまでの時間、すなわち対象処理が実行可能になるまでの待ち時間が長い。これに対して、仮想ＭＦＰ２を利用する場合には、対象処理が実行可能になるまでの待ち時間は短い。しかし、ネットワーク５を介してデータ７０を転送することから、対象処理の実行の開始から終了までの時間は比較的に長い。
【００８５】
また、ファームウェアを入れ替える場合には、対象処理の種類に制約はない。ただし、入れ替え対象のファームウェアの使用しているときは、ファームウェアを入れ替えることができない。これに対して、仮想ＭＦＰ２を利用する場合は、対象処理が外部の仮想ＭＦＰ２による代行が可能な処理に限られる。
【００８６】
図９に示す第１の選択テーブルＴ３ａは、対象処理の実行を開始するべきタイミングに応じてファームウェアの入替えか仮想ＭＦＰ２の利用かを選択する、という考えに基づいて作成されている。詳しくは、対象処理の実行を開始するべきタイミングまでに時間の余裕があると考えられる場合に、ファームウェアの入替えを選択し、時間の余裕がないと考えられる場合に、仮想ＭＦＰ２の利用を選択するよう、処理ＩＤ４１と選択結果５１とを対応づけておく。
【００８７】
図９の例において、画面表示の選択結果５１は、ユーザがログインしたときに直ちに初期画面を表示する必要があるので、「仮想ＭＦＰの利用」とされている。
【００８８】
印刷のうち、コピージョブの印刷は、ジョブの前半の処理とされる原稿の読取りに続いて、後半の処理として行われる。原稿枚数が所定以上である場合は、原稿の読取りに相応の時間がかかるので、印刷の開始までに時間の余裕がある。したがって、所定枚数以上の読取りを伴う印刷の選択結果５１は、「ＦＷの入替え」とされている。原稿枚数は、例えば自動原稿送り装置１２の原稿トレイにおいて、原稿束の厚さまたは重量を測定することにより推定することができる。
【００８９】
印刷のうち、原稿の読取りを行わないジョブの印刷については、選択結果５１は、「仮想ＭＦＰの利用」とされている。
【００９０】
翻訳出力については、原稿から文字を読み取って翻訳する場合には、文字のＯＣＲ処理が終わってから翻訳を開始すればよい。したがって、この場合の選択結果５１は、「ＦＷの入替え」とされている。原稿の読取りを行わない場合、すなわち既存のテキストデータを翻訳する場合の選択結果５１は、「仮想ＭＦＰの利用」とされている。
【００９１】
選択部２０４は、第１の選択テーブルＴ３ａに従って、対象処理がそれの実行を開始するべきタイミングが到来する以前にファームウェアの入替えを終えることが可能な処理である場合には、ファームウェアの入替えを選択し、他の場合には、仮想ＭＦＰ２の利用を選択する。
【００９２】
図１０（Ａ）に示す第２の選択テーブルＴ３ｂは、他のユーザにより入力されるジョブに対する影響を抑える、という考えに基づいて作成されている。詳しくは、次の通りである。
【００９３】
ファームウェアを入れ替えている間に、そのファームウェアを使用するジョブを他のユーザが入力した場合には、このジョブは実行待ちとなる。つまり、他のユーザに対するサービスの提供が遅れるという影響が生じる。
【００９４】
そこで、対象処理が、入力頻度が高くて実行待ちになりやすいジョブの処理である場合に、仮想ＭＦＰ２の利用を選択し、入力頻度が高くないジョブの処理である場合に、ファームウェアの入替えを選択するよう、第２の選択テーブルＴ３ｂの内容が定められている。
【００９５】
すなわち、第２の選択テーブルＴ３ｂにおいては、処理ＩＤ４１に、選択条件５２と選択結果５１とが対応づけられている。選択条件５２は、入力頻度の指標として用いる発生回数５３と処理ごとに定められるしきい値ｔｈ５３との大小関係とされている。発生回数５３は、各処理に対応するジョブの実行待ちの発生回数の計数値であり、図１０（Ｂ）の発生回数テーブルＴ３０により示され、上に述べたように計数部２０７により更新される。
【００９６】
図１０（Ａ）の例において、画面表示については、選択条件５２は定められておらず、選択結果５１は、「仮想ＭＦＰの利用」とされている。つまり、発生回数５３を考慮することなく、仮想ＭＦＰ２の利用を選択するものとされている。
【００９７】
印刷および翻訳出力については、それぞれの発生回数５３がしきい値ｔｈ５３未満である場合の選択結果５１は、「ＦＷの入替え」とされ、発生回数５３がしきい値ｔｈ５３以上である場合の選択結果５１は、「仮想ＭＦＰの利用」とされている。
【００９８】
図１０（Ｂ）の例において、印刷に対応する発生回数５３は、しきい値ｔｈ５３よりも大きい。翻訳出力に対応する発生回数５３は、しきい値ｔｈ５３よりも小さい。したがって、第２の選択テーブルＴ３ｂに従う場合において、選択部２０４は、印刷については、仮想ＭＦＰ２の利用を選択し、翻訳出力については、ファームウェアの入替えを選択する。
【００９９】
図１１（Ａ）に示す第３の選択テーブルＴ３ｃは、対象処理が完了するまでの推定所要時間に応じてファームウェアの入替えか仮想ＭＦＰ２の利用かを選択する、という考えに基づいて作成されている。
【０１００】
第３の選択テーブルＴ３ｃにおいては、処理ＩＤ４１に、選択条件６０と選択結果５１とが対応づけられている。選択条件６０は、第１の推定所要時間６１と第２の推定所要時間６２との大小関係とされている。第１の推定所要時間６１および第２の推定所要時間６２は、上に述べたテスト動作による所要時間の測定値であり、図１１（Ｂ）の所要時間テーブルＴ３２により示され、所要時間更新部２０８により定期的に更新される。
【０１０１】
図１１（Ａ）の例において、画面表示、印刷、および翻訳出力については、第１の推定所要時間６１が第２の推定所要時間６２よりも短い場合の選択結果５１は、「ＦＷの入替え」とされている。また、第１の推定所要時間６１が第２の推定所要時間６２よりも長い場合の選択結果５１は、「仮想ＭＦＰの利用」とされている。つまり、対象処理がより早く完了すると推定される選択肢を選択するものとされている。
【０１０２】
図１１（Ｂ）の例において、画面表示に対応する第１の推定所要時間６１は、第２の推定所要時間６２よりも長い。印刷および翻訳出力にそれぞれに対応する第１の推定所要時間６１は、第２の推定所要時間６２よりも短い。
【０１０３】
したがって、第３の選択テーブルＴ３ｃに従う場合において、選択部２０４は、画面表示については、仮想ＭＦＰ２の利用を選択し、印刷および翻訳出力にについては、ファームウェアの入替えを選択する。
【０１０４】
図１２には画像形成装置１における処理の流れが示されている。
【０１０５】
ユーザ認証を行ってユーザＩＤ３１を取得する（＃３０１）。ユーザ登録テーブルＴ１から、ユーザＩＤ３１に対応づけられているＦＷグループバージョン３２を取得し（＃３０２）、実装されているファームウェアグループのバージョンと照合する（＃３０３）。
【０１０６】
照合の結果が「一致」である場合は（＃３０４）、ユーザにより何らかの操作が行われて実行するべき対象処理が指定されるのを待つ（＃３０５）。ジョブの入力は、対象処理の指定の一例である。
【０１０７】
対象処理が指定されると（＃３０５でＹＥＳ) 、指定された対象処理を実行する（＃３０６）。ユーザがログアウトするまでの間は（＃３０７でＮＯ) 、ステップ＃３０５〜＃３０７の処理を繰り返す。
【０１０８】
他方、ステップ＃３０４において照合の結果が「不一致」である場合は、ユーザにより対象処理が指定されたときに（＃３０８でＹＥＳ) 、実装されているファームウェアによる対象処理の実行が可能か不可かを判定する（＃３０９）。このとき、
判定の結果が「実行可能」である場合は（＃３１０）、対象処理を実行する（＃３１１）。ユーザがログアウトするまでの間は（＃３１２でＮＯ) 、ステップ＃３０８〜＃３１２の処理を繰り返す。
【０１０９】
ステップ＃３１０において判定の結果が「実行不可」である場合は、対象処理の処理結果を得るための手法として、ファームウェアの入替えか仮想ＭＦＰ２の利用かを選択する（＃３１３）。このとき、入替えの対象であるファームウェアが使用中であるなどの理由で入替えを行うことができない場合は、仮想ＭＦＰ２の利用を選択する。
【０１１０】
ファームウェアの入替えを選択した場合は（＃３１４）、ファームウェアを対象処理の実行が可能な他のバージョンの代用ファームウェア２００と入れ替えて、対象処理を実行する（＃３１５）。その後、ログアウトの有無をチェックするためのステップ＃３１２へ進む。
【０１１１】
仮想ＭＦＰ２の利用を選択した場合は（＃３１４）、必要なデータ７０の生成を仮想ＭＦＰ２に代行させて対象処理を完了させる（＃３１６）。その後、ステップ＃３１２へ進む。
【０１１２】
以上の実施形態によると、実装されているファームウェアのバージョンにかかわらず、ユーザは、他のバージョンのファームウェアが実装されている場合と同様に画像形成装置１を使用することができる。
【０１１３】
対象処理を実行することができない場合の対策として、ファームウェアを入れ替える機能と仮想ＭＦＰ２を利用する機能とを設けたので、いずれか１つの機能を設ける場合と比べて、ユーザにとっての利便性が高まる。すなわち、ファームウェアの入れ替えができない状態であっても、対象処理が外部の装置では実行できない処理であっても、対象処理により得られる処理結果をユーザに提供することができる。ファームウェアを入れ替える機能を設けたので、対象処理が外部の装置において実行可能な処理に限定されない。仮想ＭＦＰ２を利用する機能を設けたので、ファームウェアを入れ替えることなく、対象処理により得られる処理結果をユーザに提供することができる。
【０１１４】
また、２つの機能を設けたので、状況に応じてパフォーマンス（処理性能）を高める観点で有利な方の機能を選択することができる。
【０１１５】
上に述べた実施形態によると、ユーザに適合するバージョンと異なるバージョンのファームウェアが実装されている場合に、適合するバージョンのファームウェアに入れ替えるかまたは適合するバージョンで実行可能な処理のみが仮想ＭＦＰ２により代行される。つまり、ユーザに適合するバージョンのファームウェアにより表示可能な操作画面が操作パネル１１またはホスト５において表示される。したがって、一部のユーザに対して利用可能な機能（処理）を制限したい場合には、当該ユーザに適合するバージョンとして、利用を許可する機能のみの実現が可能なバージョンを登録しておくことで、利用可能な機能を制限することができる。
【０１１６】
上に述べた実施形態においては、ファームウェア１０５，１１５，１３５，１４５，１９５のそれぞれを全体的に入れ替える態様を示したが、この態様に限らない。各ファームウェアを個別に入れ替え可能な複数のモジュールで構成し、各ファームウェアをモジュール単位で部分的に入れ替えることができる。ファームウェア１０５，１１５，１３５，１４５，１９５を補助記憶装置１８に記憶させ、実行する際に各コントローラ１００，１１０，１３０，１４０，１９０のＲＡＭにロードする構成を採用してもよい。
【０１１７】
ファームウェアの入替えは、バージョンアップに限らない。例えば、最新バージョンが実装されている状態において、旧バージョンを希望するユーザがログインしたときに、最新バージョンを旧バージョンと入れ替えることがある。
【０１１８】
ファームウェアを入れ替えた場合に、当該ユーザがログアウトした後に元のバージョンのファームウェアに入れ替え直してもよいし、以後に入れ替えが必要になるまで実装したままにしてもよい。入れ替え後のファームウェアのバージョンが多くのユーザに適合する使用頻度が高いバージョンであるときには元に戻さず、使用頻度が低いバージョンであるときには元に戻すというように、入れ替えたファームウェアに応じて、入れ替え直すか否かを選択するように構成してもよい。
【０１１９】
ユーザ登録テーブルＴ１において、ユーザＩＤ３１とユーザに適合するファームウェアグルーブのバージョンとを紐付ける例を示したが、これに限らない。複数のファームウェアのそれぞれについて、ユーザに適合するバージョンをユーザＩＤ３１と紐付けてもよい。
【０１２０】
その他、ネットワークシステム７および画像形成装置１のそれぞれの全体または各部の構成、ファームウェアの数および配置、判定または選択に関わるテーブルの内容、処理の内容、順序、またはタイミングなどは、本発明の趣旨に沿って適宜変更することができる。
【符号の説明】
【０１２１】
１  画像形成装置
２  仮想ＭＦＰ（仮想画像形成装置）
５３  発生回数
６１  第１の推定所要時間
６２  第２の推定所要時間
７０  データ
１００  メインコントローラ（コントローラ）
１０５  メイン制御ＦＷ（ファームウェア）
１１０  パネルコントローラ（コントローラ）
１１５  パネル制御ＦＷ（ファームウェア）
１３０  スキャナコントローラ（コントローラ）
１３５  スキャナ制御ＦＷ（ファームウェア）
１４０  プリンタコントローラ（コントローラ）
１４５  プリンタ制御ＦＷ（ファームウェア）
１９０  画像処理コントローラ（コントローラ）
１９５  画像処理制御ＦＷ（ファームウェア）
２００  代用ファームウェア
２０２  識別部
２０３  判定部
２０４  選択部
２０５  ＦＷ入替え部
２０６  代行中継部
２０７  計数部
２０８  所要時間更新部
ｔｈ５３  しきい値
Ｔ１  ユーザ登録テーブル（第１の情報）
Ｔ２  判定テーブル（第２の情報）
Ｔ３ａ  第１の選択テーブル（テーブル）
Ｔ３ｂ  第２の選択テーブル（テーブル）
Ｔ３ｃ  第３の選択テーブル（テーブル）
【図１】
2019109738.tif 000003
【図２】
2019109738.tif 000004
【図３】
2019109738.tif 000005
【図４】
2019109738.tif 000006
【図５】
2019109738.tif 000007
【図６】
2019109738.tif 000008
【図７】
2019109738.tif 000009
【図８】
2019109738.tif 000010
【図９】
2019109738.tif 000011
【図１０】
2019109738.tif 000012
【図１１】
2019109738.tif 000013
【図１２】
2019109738.tif 000014