(57)【要約】【課題】ハードウェアに依存しない制御を行う第１制御手段とハードウェアに依存する制御を行う第２制御手段とを含む情報処理装置において、当該情報処理装置に固有の識別情報を用いて第１制御手段用の制御プログラム及び第２制御手段用の制御プログラムを取得する場合と比べて、その取得に対する制限を緩和する。【解決手段】ハードウェアに依存しない制御を行う第１制御手段は、第１制御手段の属性が反映された第１属性情報と、ハードウェアに依存する制御を行う第２制御手段の属性が反映された第２属性情報との組み合わせに対応付けられている第１制御手段用の第１制御プログラムを取得する。第２制御手段は、第１属性情報と第２属性情報との組み合わせに対応付けられている第２制御手段用の第２制御プログラムを取得する。【選択図】図１
2020047178.tif 000002
【特許請求の範囲】
【請求項１】
ハードウェアに依存しない制御を行う第１制御手段と、
通信路を介して前記第１制御手段に接続され、前記ハードウェアに依存する制御を行う第２制御手段と、
前記第１制御手段の第１属性が反映された第１属性情報と前記第２制御手段の第２属性が反映された第２属性情報とを記憶する記憶手段と、
を有し、
前記第１制御手段は、前記第１属性情報と前記第２属性情報との組み合わせに対応付けられている前記第１制御手段用の第１制御プログラムを取得し、前記第１制御プログラムによって制御を行い、
前記第２制御手段は、前記第１属性情報と前記第２属性情報との組み合わせに対応付けられている前記第２制御手段用の第２制御プログラムを取得し、前記第２制御プログラムによって制御を行う、
ことを特徴とする情報処理装置。
【請求項２】
前記第１属性情報は、前記第１属性に応じて変更され、
前記第２属性情報は、前記第２属性に応じて変更される、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第１制御手段は、前記第１属性情報に基づいて前記第１属性を特定し、
前記第２制御手段は、前記第２属性情報に基づいて前記第２属性を特定し、
前記第１制御手段は、前記第１属性と前記第２属性との組み合わせに対応付けられている前記第１制御プログラムを取得し、
前記第２制御手段は、前記第１属性と前記第２属性との組み合わせに対応付けられている前記第２制御プログラムを取得する、
ことを特徴とする請求項１又は請求項２に記載の情報処理装置。
【請求項４】
前記第１制御手段及び前記第２制御手段はそれぞれ、前記第１属性情報及び前記第２属性情報の組み合わせと、前記第１制御プログラム及び前記第２制御プログラムの組み合わせとが互いに対応付けられた管理情報を参照することで、前記第１制御プログラム及び前記第２制御プログラムを取得し、
前記第１制御手段の新たな第１属性に対応する第１制御プログラム、及び、前記第２制御手段の新たな第２属性に対応する第２制御プログラムが、前記管理情報に登録されることで、前記管理情報が更新される、
ことを特徴とする請求項１又は請求項２に記載の情報処理装置。
【請求項５】
前記第１属性と前記第２属性とが異なる場合、前記第１制御手段又は前記第２制御手段は、機能が制限された制御プログラムを自身用の制御プログラムとして取得する、
ことを特徴とする請求項１から請求項４のいずれか一項に記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置に関する。
【背景技術】
【０００２】
画像形成装置等の情報処理装置においては、当該情報処理装置に含まれるハードウェアに依存しない汎用性の高い第１制御手段と、当該情報処理装置に含まれるハードウェアに依存する専用性の高い第２制御手段とを設けて、制御手段の役割を第１制御手段と第２制御手段とに分ける場合がある。
【０００３】
特許文献１には、外部からファームウェアを受信するに際して、当該ファームウェアが自装置に適合するか否かを機種名等の装置固有情報に基づいて判断し、自装置に適合する場合に、当該外部から当該ファームウェアをダウンロードする装置が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−２０２１１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、第１制御手段が、当該第１制御手段が搭載されている情報処理装置に後から変更することができない固有の識別情報を用いて当該第１制御手段用の制御プログラムを取得し、当該第１制御手段用の制御プログラムによって制御を行うことが考えられる。しかし、固有の識別情報は、制御プログラムの更新や変更等に対応しきれない事態が生じ得る。例えば、新たな制御プログラムが作成された場合において、当該新たな制御プログラムの作成に伴って、当該新たな制御プログラムに情報処理装置に固有の識別情報とは異なる識別情報が紐付けられた場合、当該固有の識別情報を用いて当該新たな制御プログラムを取得することができないという事態が生じる。
【０００６】
本発明の目的は、ハードウェアに依存しない制御を行う第１制御手段とハードウェアに依存する制御を行う第２制御手段とを含む情報処理装置において、当該情報処理装置に固有の識別情報を用いて第１制御手段用の制御プログラム及び第２制御手段用の制御プログラムを取得する場合と比べて、その取得に対する制限を緩和することにある。
【課題を解決するための手段】
【０００７】
請求項１に記載の発明は、ハードウェアに依存しない制御を行う第１制御手段と、通信路を介して前記第１制御手段に接続され、前記ハードウェアに依存する制御を行う第２制御手段と、前記第１制御手段の第１属性が反映された第１属性情報と前記第２制御手段の第２属性が反映された第２属性情報とを記憶する記憶手段と、を有し、前記第１制御手段は、前記第１属性情報と前記第２属性情報との組み合わせに対応付けられている前記第１制御手段用の第１制御プログラムを取得し、前記第１制御プログラムによって制御を行い、前記第２制御手段は、前記第１属性情報と前記第２属性情報との組み合わせに対応付けられている前記第２制御手段用の第２制御プログラムを取得し、前記第２制御プログラムによって制御を行う、ことを特徴とする情報処理装置である。
【０００８】
請求項２に記載の発明は、前記第１属性情報は、前記第１属性に応じて変更され、前記第２属性情報は、前記第２属性に応じて変更される、ことを特徴とする請求項１に記載の情報処理装置である。
【０００９】
請求項３に記載の発明は、前記第１制御手段は、前記第１属性情報に基づいて前記第１属性を特定し、前記第２制御手段は、前記第２属性情報に基づいて前記第２属性を特定し、前記第１制御手段は、前記第１属性と前記第２属性との組み合わせに対応付けられている前記第１制御プログラムを取得し、前記第２制御手段は、前記第１属性と前記第２属性との組み合わせに対応付けられている前記第２制御プログラムを取得する、ことを特徴とする請求項１又は請求項２に記載の情報処理装置である。
【００１０】
請求項４に記載の発明は、前記第１制御手段及び前記第２制御手段はそれぞれ、前記第１属性情報及び前記第２属性情報の組み合わせと、前記第１制御プログラム及び前記第２制御プログラムの組み合わせとが互いに対応付けられた管理情報を参照することで、前記第１制御プログラム及び前記第２制御プログラムを取得し、前記第１制御手段の新たな第１属性に対応する第１制御プログラム、及び、前記第２制御手段の新たな第２属性に対応する第２制御プログラムが、前記管理情報に登録されることで、前記管理情報が更新される、ことを特徴とする請求項１又は請求項２に記載の情報処理装置である。
【００１１】
請求項５に記載の発明は、前記第１属性と前記第２属性とが異なる場合、前記第１制御手段又は前記第２制御手段は、機能が制限された制御プログラムを自身用の制御プログラムとして取得する、ことを特徴とする請求項１から請求項４のいずれか一項に記載の情報処理装置である。
【発明の効果】
【００１２】
請求項１に記載の発明によれば、ハードウェアに依存しない制御を行う第１制御手段とハードウェアに依存する制御を行う第２制御手段とを含む情報処理装置において、当該情報処理装置に固有の識別情報を用いて第１制御手段用の制御プログラム及び第２制御手段用の制御プログラムを取得する場合と比べて、その取得に対する制限が緩和される。
【００１３】
請求項２に記載の発明によれば、変更された属性に対応する制御プログラムを取得することができる。
【００１４】
請求項３に記載の発明によれば、属性の組み合わせに対応する制御プログラムを取得することができる。
【００１５】
請求項４に記載の発明によれば、新たな属性に対応する制御プログラムを取得することができる。
【００１６】
請求項５に記載の発明によれば、第１属性と第２属性とが異なる場合に対応した制御プログラムを取得することができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施形態に係る情報処理システムを示すブロック図である。
【図２】システム制御部及びデバイス制御部のそれぞれのＩＤを示す図である。
【図３】ＦＷテーブル（ファームウェアテーブル）を示す図である。
【図４】本実施形態に係る情報処理システムを示すブロック図である。
【発明を実施するための形態】
【００１８】
図１を参照して、本実施形態に係る情報処理システムについて説明する。図１は、本実施形態に係る情報処理システムの一例を示す。本実施形態に係る情報処理システムは、情報処理装置の一例としての画像形成装置１０とサーバ１２とを含む。画像形成装置１０とサーバ１２は、インターネット又は他のネットワーク等の通信経路Ｎを介して互いに通信する。複数の画像形成装置１０や複数のサーバ１２が情報処理システムに含まれてもよい。なお、本実施形態に係る情報処理装置は画像形成装置１０に限定されるものではなく、例えば、情報機器、映像機器、音響機器及びその他の機器等のように機器全般が、情報処理装置として用いられてもよい。以下では、情報処理装置の一例として画像形成装置１０を例に挙げて説明する。
【００１９】
画像形成装置１０は画像形成機能を有する装置である。具体的には、画像形成装置１０は、画像読取機能、印刷機能、複写機能及びファクシミリ機能の中の少なくとも１つの機能を有する装置である。
【００２０】
サーバ１２は、画像形成装置１０を制御するための制御プログラムの一例としてのファームウェアを格納し、画像形成装置１０に供給する装置である。例えば、ファームウェアを管理するためのファームウェアテーブル（以下、「ＦＷテーブル」とする）がサーバ１２に格納されている。ＦＷテーブルは管理情報の一例に相当する。画像形成装置１０が当該ファームウェアをサーバ１２から取得することで、画像形成装置１０として機能する構成（実行環境）が動的に構築される。ＦＷテーブルについては後で詳しく説明する。なお、サーバ１２は、通信インターフェースとして機能する通信部、ハードディスクドライブやメモリ等によって構成された記憶部、プロセッサ等によって構成された制御部等を含む。
【００２１】
以下、画像形成装置１０の構成について詳しく説明する。
【００２２】
画像形成装置１０は、機能を有する１又は複数のハードウェアと、システム制御部１４と、デバイス制御部１６とを含む。システム制御部１４は第１制御手段の一例に相当し、デバイス制御部１６は第２制御手段の一例に相当する。
【００２３】
システム制御部１４とデバイス制御部１６は、例えばバス（例えばＰＣＩ  Ｅｘｐｒｅｓｓ等の高速バス）等の通信路によって互いに接続されており、各種の情報を互いに送受信する。例えば、処理の実行命令を示すコマンド情報、互いのステータスを示すステータス情報、センサ等の検知結果を示す情報等が、システム制御部１４とデバイス制御部１６との間で送受信されてもよい。なお、互いに送受信される情報のフォーマットは、予め定められた複数のフォーマットから選択されたフォーマットであってもよい。また、システム制御部１４とデバイス制御部１６は専用線で接続されて、互いに同期するための情報等を送受信してもよい。
【００２４】
画像形成装置１０は、ハードウェアの一例として、ＵＩ部１８、通信部２０、画像読取装置２２及び印刷装置２４等を含む。
【００２５】
ＵＩ部１８はユーザインターフェースであり、表示部と操作部とを含む。表示部は、例えば液晶ディスプレイやＥＬディスプレイ等の表示装置である。操作部は、例えばキーボード等の入力装置である。ＵＩ部１８は、表示部と操作部とを兼ね備えたユーザインターフェース（例えばタッチパネルや操作パネル等）であってもよい。
【００２６】
通信部２０は通信インターフェースであり、通信経路Ｎを介して、他の装置に情報を送信する機能、及び、他の装置から送信された情報を受信する機能を有する。通信は、無線通信であってもよいし、有線通信であってもよい。
【００２７】
画像読取装置２２は例えばスキャナであり、原稿を読み取ることで、当該原稿が表された画像データを生成する装置である。
【００２８】
印刷装置２４は例えばプリンタであり、画像データや文書データ等を受けて、画像や文書等を用紙等の記録媒体上に形成する装置である。
【００２９】
その他、画像形成装置１０には、画像形成装置１０内を冷却するためのファン、ハードディスクやメモリ等の記憶装置、等が含まれてもよい。記憶装置には、例えば、各種のデータ（スキャンによって生成された画像データや、印刷される画像データ等）や各種のプログラム等が記憶される。もちろん、これら以外のハードウェアが画像形成装置１０に含まれてもよい。
【００３０】
システム制御部１４は、プロセッサの一例としてのＣＰＵ（Central Processing Unit）２６と、記憶装置の一例としてのメモリ２８（例えばＲＯＭ）とを含む。後述するように、システム制御部１４を構築するためのファームウェア（例えばＲＯＭイメージ）がサーバ１２からシステム制御部１４にダウンロードされ、当該ファームウェアがメモリ２８に格納される。ＣＰＵ２６によって当該ファームウェアが実行されることで、システム制御部１４の機能が実現される。すなわち、当該ファームウェアがダウンロードされる前においては、システム制御部１４は、当該システム制御部１４の機能を実現するための完成体として構築されておらず、未完成体として画像形成装置１０に搭載されており、当該ファームウェアがメモリ２８にダウンロードされることで、当該システム制御部１４として機能する完成体が構築される。以下、ファームウェアがダウンロードされ、システム制御部が機能する状態である場合は、「完成体としてのシステム制御部」とする。なお、システム制御部１４を完成体として構築するためのファームウェアが、第１制御プログラムの一例に相当する。
【００３１】
完成体としてのシステム制御部１４は、画像形成装置１０に含まれる各ハードウェアに依存しない処理を行う機能、つまり、各ハードウェアの種別、各ハードウェアの固体差、製品間の差等に依存しない共通部分の制御を行う機能を有する。例えば、完成体としてのシステム制御部１４は、ハードウェアとしてのＵＩ部１８における表示や入力、通信部２０による通信（例えば通信経路Ｎを介した外部装置との通信）、画像データや機器情報の処理、画像処理、ユーザ認証処理、メモリの管理（例えばＳＤカードの読み取り等）、等を行う。
【００３２】
また、システム制御部１４には、システム制御部１４を識別するためのＩＤ（０）３０が格納されている。例えば、ＩＤ（０）３０は、メモリ２８等に格納されている。ＩＤ（０）３０は、第１属性情報の一例に相当する情報であり、システム制御部１４の属性（第１属性の一例に相当する）が反映された情報である。ＩＤ（０）３０は、システム制御部１４の属性に応じて変更される情報である。システム制御部１４毎にＩＤ（０）３０が定められて、システム制御部１４に紐付けられている。ＩＤ（０）３０に基づいて、システム制御部１４の属性が特定される。ＩＤ（０）３０は、サーバ１２からファームウェアをダウンロードするときに用いられる。例えば、システム制御部１４は、ＩＤ（０）３０に基づいて当該システム制御部１４の属性を特定し、その属性に対応するファームウェアがサーバ１２から取得する。
【００３３】
例えば、完成体としてのシステム制御部１４のＣＰＵ２６は、処理の実行命令を示すコマンド情報（例えば、プリントジョブやコピージョブ等のジョブ）をデバイス制御部１６に送る。その実行命令は、ハードウェアに依存しない形式を有する実行命令であり、例えば、ユーザが理解可能な言語で記述された命令である。そのコマンド情報は、デバイス制御部１６内に格納される。
【００３４】
デバイス制御部１６は、プロセッサの一例としてのＣＰＵ３２と、記憶装置の一例としてのメモリ３４（例えばＲＯＭ）とを含む。後述するように、デバイス制御部１６を構築するためのファームウェア（例えばＲＯＭイメージ）がサーバ１２からデバイス制御部１６にダウンロードされ、当該ファームウェアがメモリ３４に格納される。ＣＰＵ３２によって当該ファームウェアが実行されることで、デバイス制御部１６の機能が実現される。すなわち、当該ファームウェアがダウンロードされる前においては、デバイス制御部１６は、当該デバイス制御部１６の機能を実現するための完成体として構築されておらず、未完成体として画像形成装置１０に搭載されており、当該ファームウェアがメモリ３４にダウンロードされることで、当該デバイス制御部１６として機能する完成体が構築される。以下、ファームウェアがダウンロードされ、デバイス制御部が機能する状態である場合は、「完成体としてのデバイス制御部」とする。なお、デバイス制御部１６を完成体として構築するためのファームウェアが、第２制御プログラムの一例に相当する。
【００３５】
完成体としてのデバイス制御部１６は、画像形成装置１０に含まれる各ハードウェアに依存する処理を行う機能、つまり、各ハードウェアに固有の部分を制御する機能を有する。例えば、完成体としてのデバイス制御部１６は、画像読取装置２２の制御、印刷装置２４の制御、ファンの制御、ステープラ等の後処理装置の制御、その他、各種センサ等によって得られる情報に基づくモータ、ヒータ、ランプ等の制御、等を行う。
【００３６】
また、デバイス制御部１６には、デバイス制御部１６を識別するためのＩＤ（１）３６が格納されている。例えば、ＩＤ（１）３６は、メモリ３４等に格納されている。ＩＤ（１）３６は、第２属性情報の一例に相当する情報であり、デバイス制御部１６の属性（第２属性の一例に相当する）が反映された情報である。つまり、ＩＤ（１）３６は、デバイス制御部１６の属性に応じて変更される情報である。デバイス制御部１６毎にＩＤ（０）３０が定められて、デバイス制御部１６に紐付けられている。ＩＤ（１）３６に基づいて、デバイス制御部１６の属性が特定される。ＩＤ（１）３６は、サーバ１２からファームウェアをダウンロードするときに用いられる。例えば、デバイス制御部１６は、ＩＤ（１）３６に基づいて当該デバイス制御部１６の属性を特定し、その属性に対応するファームウェアをサーバ１２から取得する。
【００３７】
例えば、完成体としてのデバイス制御部１６のＣＰＵ３２は、システム制御部１４から送られてきたコマンド情報が示す実行命令によって指定された処理を実行する。例えば、当該実行命令によってコピーの実行が指定されている場合、ＣＰＵ３２は、コマンド情報によって指示されたコピーの条件（例えば、解像度、用紙サイズ、部数等）に従って画像読取装置２２及び印刷装置２４を制御することで、画像読取装置２２及び印刷装置２４にコピーを実行させる。
【００３８】
上述したように、システム制御部１４及びデバイス制御部１６は、画像形成装置１０を制御するために必要なファームウェアのすべてを実装していない。例えば、システム制御部１４及びデバイス制御部１６を完成体として構築し、システム制御部１４及びデバイス制御部１６に画像形成装置１０を制御させるためのファームウェアがサーバ１２に格納されている。当該ファームウェアをサーバ１２から画像形成装置１０にダウンロードするための制御プログラム（以下、ダウンロード用プログラムとする）が、システム制御部１４に予め格納されている。画像形成装置１０の電源が最初にオンされた場合、システム制御部１４は、ダウンロード用プログラムを実行することで、システム制御部１４用のファームウェアをサーバ１２からシステム制御部１４にダウンロードし、更に、デバイス制御部１６用のファームウェアをサーバ１２からデバイス制御部１６にダウンロードする。これにより、システム制御部１４及びデバイス制御部１６が完成体として構築される。なお、システム制御部１４がシステム制御部１４用のファームウェアをダウンロードし、デバイス制御部１６がデバイス制御部１６用のファームウェアをダウンロードしてもよい。
【００３９】
ファームウェアのダウンロードのために、ＩＤ（０）３０及びＩＤ（１）３６が用いられる。例えば、サーバ１２に格納されているＦＷテーブルにおいては、ＩＤ（０）３０とＩＤ（１）３６との組み合わせと、ファームウェアとが対応付けられている。ＩＤ（０）３０はシステム制御部１４の属性が反映されており、ＩＤ（１）３６はデバイス制御部１６の属性が反映されている。ＦＷテーブルにおいては、システム制御部１４の属性とデバイス制御部１６の属性との組み合わせを実現するためのファームウェアが登録されている。以下、ＩＤ（０）３０とＩＤ（１）３６との組み合わせを「自己ＩＤ」と称することとする。
【００４０】
なお、システム制御部１４の役割とデバイス制御部１６の役割とが互いに異なることから、システム制御部１４とデバイス制御部１６との間に開発サイクルの差が生じることがある。その差に対応するために、制御装置をシステム制御部１４とデバイス制御部１６とに分けて、それぞれの制御部に役割を割り当てることが考えられる。
【００４１】
以下、本実施形態に係る情報処理システムについて更に詳しく説明する。
【００４２】
図２を参照して、システム制御部１４のＩＤ（０）３０、及び、デバイス制御部１６のＩＤ（１）３６について詳しく説明する。図２は、ＩＤの一例を示す。
【００４３】
図２に示されているテーブル中の設定値は１６進数によって表現されている。ＩＤ（０）３０は、システム制御部１４の属性によって定められている。ＩＤ（１）３６は、デバイス制御部１６の属性によって定められている。
【００４４】
システム制御部１４の属性は、例えば、当該システム制御部１４の種別、システムＩＤ、当該システム制御部１４が搭載される画像形成装置１０の仕向け先（一例としては、画像形成装置１０が使用される国や地域等）、当該システム制御部１４の開発世代、当該システム制御部１４が有する機能（当該システム制御部１４に持たせる機能）等であり、ＩＤ（０）３０には、これらの属性が反映されている。つまり、ＩＤ（０）３０は、これらの属性に基づいて作成されている。
【００４５】
デバイス制御部１６の属性は、例えば、当該デバイス制御部１６の種別、デバイスＩＤ、当該デバイス制御部１６が搭載される画像形成装置１０の仕向け先、当該デバイス制御部１６の開発世代、当該デバイス制御部１６が有する機能、当該デバイス制御部１６が搭載される画像形成装置１０の性能等であり、ＩＤ（１）３６には、これらの属性が反映されている。つまり、ＩＤ（１）３６は、これらの属性に基づいて作成されている。
【００４６】
システム制御部１４及びデバイス制御部１６の種別は、画像形成機能の種別に対応している。種別として、例えば、ＭＦＰ（Multi Function Printer）やＳＦＰ（Single Function Printer）等が定められている。ＭＦＰは、例えば、印刷機能の他に、画像形成機能として、複写機能、画像読取機能及びファクシミリ機能等を有する画像形成装置（いわゆる複合機）である。ＳＦＰは、例えば、画像形成機能として印刷機能のみを有する装置である。ＭＦＰが対応付けられているＩＤ（０）３０を有するシステム制御部１４は、ＭＦＰに用いられる制御部であり、ＭＦＰを実現するためのファームウェアがダウンロードされることが想定されている制御部である。ＳＦＰが対応付けられているＩＤ（０）３０を有するシステム制御部１４は、ＳＦＰに用いられる制御部であり、ＳＦＰを実現するためのファームウェアがダウンロードされることが想定されている制御部である。デバイス制御部１６についても同様である。
【００４７】
システムＩＤは、システム制御部１４に紐付けられるＩＤである。デバイスＩＤは、デバイス制御部１６に紐付けられるＩＤである。
【００４８】
仕向け先として、例えば、日本国内、北米、アジア等の国や地域等が定められている。画像形成装置１０は、仕向け先に出荷される。例えば、仕向け先が「国内」である制御部が搭載された画像形成装置１０は、日本国内に出荷される。
【００４９】
デバイス制御部１６の属性として定められている「速度」は、例えば、画像形成機能（例えば印刷機能等）の速度である。速度の一例として、例えば、低速、中速及び高速等が定められている。
【００５０】
図２に示されている属性は一例に過ぎず、他の属性が定められてもよい。また、将来的に属性が変更されたり、属性の数が増減されたりしてもよい。
【００５１】
ＩＤ（０）３０及びＩＤ（１）３６は、以下のようにして、属性に基づいて定義付けされる。
ＩＤ（０）＝｛システム種別（３：０），システムＩＤ（７：０），仕向け先（１：０），開発世代（１：０）｝
ＩＤ（１）＝｛デバイス種別（３：０），デバイスＩＤ（７：０），仕向け先（１：０），開発世代（１：０），速度（１：０），Ｒｓｖ（１：０）｝
なお、Ｒｓｖ（１：０）は予備の属性であり、将来、新たな属性が増えたときに、Ｒｓｖ（１：０）が使用される。
【００５２】
各属性の数値は、以下のようにして定められる。
種別＝ＭＦＰ：０ｘ０、ＳＦＰ：０ｘ１、・・・
仕向け先＝国内：００（２）、北米：０１（２）、アジア：１０（２）、その他：１１（２）
開発世代＝第１世代：００（２）、第２世代：０１（２）、第３世代：１０（２）、第４世代：１１（２）
速度＝低速：００（２）、中速：０１（２）、高速：１０（２）、その他：１１（２）
【００５３】
例えば、未完成体としてのシステム制御部１４が画像形成装置１０に組み込まれる前に、上記の定義付けに従って、システム制御部１４の属性に基づいてＩＤ（０）３０が作成され、当該ＩＤ（０）３０がシステム制御部１４に格納される。
【００５４】
同様に、例えば、未完成体としてのデバイス制御部１６が画像形成装置１０に組み込まれる前に、上記の定義付けに従って、デバイス制御部１６の属性に基づいてＩＤ（１）３６が作成され、当該ＩＤ（１）３６がデバイス制御部１６に格納される。
【００５５】
以下、図３を参照して、サーバ１２に格納されているＦＷテーブルについて詳しく説明する。図３は、ＦＷテーブルの一例を示す。
【００５６】
ＦＷテーブルにおいては、自己ＩＤと、システム制御部１４用のファームウェアの存在の有無を示す情報と、システム制御部１４用のファームウェアのバージョンを示す情報と、デバイス制御部１６用のファームウェアの存在の有無を示す情報と、デバイス制御部１６用のファームウェアのバージョンを示す情報とが互いに対応付けられている。
【００５７】
ＩＤ（０）３０及びＩＤ（１）３６は、上記の定義付けに従って属性に基づいて定められた値である。
【００５８】
自己ＩＤに対応するシステム制御部１４用のファームウェアが、サーバ１２に格納されている場合、システム制御部１４用のファームウェアの存在の有無を示す情報（値）は、「１」に設定される。当該ファームウェアがサーバ１２に格納されていない場合、値は「０」に設定される。
【００５９】
同様に、自己ＩＤに対応するデバイス制御部１６用のファームウェアが、サーバ１２に格納されている場合、デバイス制御部１６用のファームウェアの存在の有無を示す情報（値）は、「１」に設定される。当該ファームウェアがサーバ１２に格納されていない場合、値は「０」に設定される。
【００６０】
なお、ファームウェアは、サーバ１２以外の記憶装置に格納されて、当該記憶装置から画像形成装置１０にダウンロードされてもよい。この場合、当該記憶装置にファームウェアが格納されている場合、値は「１」に設定され、当該記憶装置にファームウェアが格納されていない場合、値は「０」に設定される。
【００６１】
例えば、ＩＤの組み合わせに対応するファームウェアが開発済みの場合、当該ファームウェアが存在し、値は「１」に設定される。当該ファームウェアが開発されていない場合、当該ファームウェアが存在せず、値は「０」に設定される。
【００６２】
新たなファームウェアが開発された場合や、新たなファームウェアが開発される予定の場合等に、ＦＷテーブルが更新される。
【００６３】
例えば、符号３６で示すように、ＩＤ（０）３０が「００００」であり、ＩＤ（１）３６が「０００００」、「００００１」又は「００００２」である場合、システム制御部１４用のファームウェアは１種類のみ存在する。また、符号３８で示すように、デバイス制御部１６用のファームウェアは、３種類の速度毎に存在する。
【００６４】
また、符号４０で示すように、ＩＤ（０）３０が「０００１」であり、ＩＤ（１）３６が「０００００」、「００００１」又は「００００２」である場合、システム制御部１４用のファームウェアは１種類のみ存在する。また、符号４２で示すように、デバイス制御部１６用のファームウェアは、３種類の速度毎に存在する。システム制御部１４の世代が第２世代に変更された場合であっても、デバイス制御部１６用のファームウェアは変更されていない。
【００６５】
また、符号４４で示すように、ＩＤ（０）３０が「０００２」であり、ＩＤ（１）３６が「０００００」、「００００１」又は「００００２」である場合、システム制御部１４用のファームウェアは存在しない。また、符号４６で示すように、デバイス制御部１６用のファームウェアは存在しない。
【００６６】
ＦＷテーブルは、例えば、新たな属性を有するシステム制御部１４やデバイス制御部１６が作成される度に更新されてもよい。例えば、新たな属性を有するシステム制御部１４が作成され、当該新たな属性に対応するファームウェアが作成されると、当該新たな属性を示すＩＤと当該ファームウェアとの組み合わせがＦＷテーブルに登録される。デバイス制御部１６についても同様である。新たなＩＤとファームウェアの登録は、例えばシステム管理者や開発者等によって行われる。このように、ＦＷテーブルには、新たな属性に対応するファームウェアが登録される。例えば、画像形成装置１０の使用時には、最新の属性に対応するファームウェアがＦＷテーブルに登録されており、その最新のＦＷテーブルからファームウェアが画像形成装置１０にダウンロードされることもあり得る。
【００６７】
また、既存のシステム制御部１４用やデバイス制御部１６用の新たなファームウェアが作成されてもよい。この場合、既存の属性を示すＩＤに当該新たなファームウェアが対応付けられてＦＷテーブルに登録される。システム制御部１４及びデバイス制御部１６が、当該新たなファームウェアを取得することで、当該システム制御部１４及び当該デバイス制御部１６の機能が更新される。例えば、自己ＩＤが同じであっても、ファームウェアが更新される場合が考えられる。画像形成装置１０は、定期的、修理時、又は、任意のタイミング等に、新たなファームウェアをサーバ１２からダウンロードしてもよい。
【００６８】
システム制御部１４用のファームウェアとデバイス制御部１６用のファームウェアとは互いに相関関係を有しているため、自己ＩＤに、システム制御部１４用のファームウェアとデバイス制御部１６用のファームウェアとが対応付けられている。つまり、システム制御部１４に割り当てられる機能（システム制御部１４用のファームウェアの内容）によって、デバイス制御部１６に割り当てられる機能（デバイス制御部１６用のファームウェアの内容）が変わる場合があり、また、その逆もあり得るため、自己ＩＤに、システム制御部１４用及びデバイス制御部１６用のそれぞれのファームウェアが対応付けられている。
【００６９】
なお、属性に対応するファームウェアが存在しない場合や、システム制御部１４が有する属性とデバイス制御部１６が有する属性とを組み合わせて使用することが禁止されている場合、ＦＷテーブルにおいては、ファームウェアが存在しないことを示すフラグが設定される。
【００７０】
以下、図４を参照して、本実施形態に係る画像形成装置１０の動作について説明する。図４は、本実施形態に係る情報処理システムの構成を示す。
【００７１】
画像形成装置１０の電源が最初にオンされた場合（例えば、工場から出荷された後、初めて電源がオンされた場合）、システム制御部１４のＣＰＵ２６は、ファームウェアをダウンロードするためのプログラムを実行する。これにより、システム制御部１４は、システム制御部１４に格納されているＩＤ（０）３０と、デバイス制御部１６に格納されているＩＤ（１）３６とを組み合わせることで自己ＩＤを生成する。
【００７２】
次に、システム制御部１４は、サーバ１２に格納されているＦＷテーブルにおいて、自己ＩＤに対応付けられているシステム制御部１４用のファームウェアを特定し、当該ファームウェア（ＲＯＭイメージ）をサーバ１２からシステム制御部１４にダウンロードし、当該ファームウェア（ＲＯＭイメージ）をメモリ２８（ＲＯＭ）に格納する（１）。
【００７３】
次に、システム制御部１４は、サーバ１２に格納されているＦＷテーブルにおいて、自己ＩＤに対応付けられているデバイス制御部１６用のファームウェアを特定し、当該ファームウェア（ＲＯＭイメージ）をサーバ１２からデバイス制御部１６にダウンロードし、当該ファームウェア（ＲＯＭイメージ）をメモリ３４（ＲＯＭ）に格納する（２）。なお、デバイス制御部１６用のファームウェアは、デバイス制御部１６によってダウンロードされてもよい。この場合、デバイス制御部１６には、ファームウェアをダウンロードするためのプログラムが格納されており、ＣＰＵ３２によって当該プログラムが実行されることで、当該ファームウェアがメモリ３４にダウンロードされる。
【００７４】
ファームウェアのダウンロードが完了すると、システム制御部１４及びデバイス制御部１６は再起動する。再起動後は、システム制御部１４は、メモリ２８に格納されているファームウェアによって動作し、デバイス制御部１６は、メモリ３４に格納されているファームウェアによって動作する。これにより、完成体としてのシステム制御部１４及びデバイス制御部１６が構築される。
【００７５】
本実施形態においては、自己ＩＤを用いて、システム制御部１４及びデバイス制御部１６のそれぞれのファームウェアが取得される。
【００７６】
本実施形態に係る自己ＩＤは、システム制御部１４及びデバイス制御部１６のそれぞれの属性が反映された情報であり、これらの属性によって変更し得る情報である。取得対象のファームウェアに、当該ファームウェアが用いられるシステム制御部１４及びデバイス制御部１６のそれぞれの属性を対応付けておくことで、画像形成装置１０においてシステム制御部１４やデバイス制御部１６が変更されたり、新たなファームウェアが作成されたりした場合であっても、画像形成装置１０に搭載されているシステム制御部１４用及びデバイス制御部１６用のそれぞれのファームウェアが取得される。
【００７７】
また、ファームウェアが画像形成装置１０にダウンロードされることで、完成体としてのシステム制御部１４及びデバイス制御部１６が構築される。
【００７８】
なお、属性に応じて、ファームウェアの一部の機能が制限されてもよい。例えば、日本国内及び北米では、Ｗｉ−Ｆｉ（登録商標）の使用が許可されるが、アジアでは許可されない場合、アジア向けのファームウェアについては、Ｗｉ−Ｆｉ機能が制限されたファームウェアが用意される。更に、アジアの特定の国のみでＷｉ−Ｆｉの使用が許可されない場合、ＩＤに国番号を追加し、そのＩＤに対応付けられたファームウェアについては、Ｗｉ−Ｆｉ機能を制限してもよい。
【００７９】
本実施形態では、画像形成装置１０に搭載されているシステム制御部１４の属性とデバイス制御部１６の属性とが互いに同じであってもよいし、それらの属性が互いに異なってもよい。つまり、システム制御部１４の属性とデバイス制御部１６の属性との間に差があってもよいし、両属性の間に差がなくてもよい。
【００８０】
例えば、画像形成装置１０に搭載されているシステム制御部１４がＭＦＰに対応しており、当該画像形成装置１０に搭載されているデバイス制御部１６がＭＦＰに対応している場合、種別に関して、両者の属性は互いに同じである。この場合、システム制御部１４及びデバイス制御部１６のそれぞれには、ＭＦＰに対応したファームウェアがダウンロードされる。そして、画像形成装置１０はＭＦＰとして動作する。このようなダウンロードが実現されるように、ＦＷテーブルが作成される。例えば、システム制御部１４の種別がＭＦＰであり、デバイス制御部１６の種別がＭＦＰである属性の組み合わせには、ＭＦＰ用のファームウェアが対応付けられており、当該ファームウェアがダウンロードされる。
【００８１】
一方、システム制御部１４がＭＦＰに対応しておらずＳＦＰに対応しており、デバイス制御部１６がＭＦＰに対応している場合、種別に関して、両者の属性は互いに異なっている。この場合、低い機能に合わせたファームウェアがダウンロードされる。具体的には、システム制御部１４には、ＳＦＰに対応したファームウェアがダウンロードされ、デバイス制御部１６には、ＭＦＰに対応したファームウェアがダウンロードされずに、ＳＦＰに対応したファームウェアがダウンロードされる。そして、画像形成装置１０はＳＦＰとして動作する。つまり、両属性の差に応じて機能が制限されたファームウェアであるＳＦＰ用のファームウェアがダウンロードされる。このようなダウンロードが実現されるように、ＦＷテーブルが作成される。例えば、システム制御部１４の種別がＳＦＰであり、デバイス制御部１６の種別がＭＦＰである属性の組み合わせには、ＳＦＰ用のファームウェアが対応付けられており、当該ファームウェアがダウンロードされる。つまり、ＦＷテーブルにおいては、デバイス制御部１６にＭＦＰ用のファームウェアが対応付けられておらず、システム制御部１４の種別であるＳＦＰまで機能が制限されたファームウェアが対応付けられている。
【００８２】
ＭＦＰ用のデバイス制御部１６であっても、システム制御部１４がＭＦＰに対応しておらずＳＦＰ用の制御部である場合には、ＭＦＰに対応したファームウェアがデバイス制御部１６にダウンロードされたとしても、システム制御部１４はＭＦＰを実現するための制御する機能を有していないため、画像形成装置１０はＭＦＰとして動作しない。つまり、システム制御部１４は、ＳＦＰが有しておらずＭＦＰが有している機能に関する制御信号をデバイス制御部１６に与える機能を有していないため、画像形成装置１０はＭＦＰとして動作しない。ＭＦＰ用のファームウェアをデバイス制御部１６にダウンロードしても当該ファームウェアは役に立たないため、ＳＦＰ用のファームウェアがデバイス制御部１６にダウンロードされる。このように、システム制御部１４の属性とデバイス制御部１６の属性とは互いに相関関係を有しているため、その関係を考慮して、自己ＩＤに、システム制御部１４及びデバイス制御部１６のそれぞれの属性を実現するためのファームウェアが対応付けられている。こうすることで、ＳＦＰ用のシステム制御部１４とＭＦＰ用のデバイス制御部１６とが同一の画像形成装置１０に搭載された場合、ＳＦＰ用のファームウェアが当該画像形成装置１０にダウンロードされる。
【００８３】
例えば、スキャン機能が制限されたＳＦＰ用のファームウェアが自己ＩＤに対応付けられて、そのファームウェアがダウンロードされる。
【００８４】
上記の例とは逆に、システム制御部１４がＭＦＰに対応しており、デバイス制御部１６がＭＦＰに対応しておらずＳＦＰに対応している場合も同様に、自己ＩＤにＳＦＰ用のファームウェアが対応付けられて、そのファームウェアがダウンロードされる。
【００８５】
また、画像形成装置１０に搭載されているシステム制御部１４とデバイス制御部１６の間で開発世代が異なる場合も、種別が異なる場合と同様に、機能が制限されたファームウェアがダウンロードされる。例えば、古い世代のシステム制御部１４と新しい世代のデバイス制御部１６が画像形成装置１０に搭載されている場合、古い世代のみに対応する機能を実現するためのファームウェアが、システム制御部１４とデバイス制御部１６にダウンロードされる。このようなダウンロードが実現されるように、ＦＷテーブルにおいて、古い世代と新しい世代との組み合わせに、古い世代のみに対応する機能を実現するためのファームウェアが対応付けられている。
【００８６】
例えば、システム制御部１４が第１世代の制御部であり、デバイス制御部１６が第２世代の制御部である場合、ＦＷテーブルにおいては、第２世代が有する新たな機能を実現するためのファームウェアが、これらの属性の組み合わせに対応付けられておらず、第１世代が有する機能のみを実現するためのファームウェアが、これらの属性の組み合わせに対応付けられている。こうすることで、第１世代のシステム制御部１４と第２世代のデバイス制御部１６とが同一の画像形成装置１０に搭載された場合、第１世代用のファームウェアが当該画像形成装置１０にダウンロードされる。
【００８７】
上記の例では、システム制御部１４の属性とデバイス制御部１６の属性とが互いに異なる場合に、一方の制御部の機能を制限するファームウェアがダウンロードされるが、もちろん、他方の制御部の機能をアップデートするためのファームウェアがダウンロードされてもよい。
【００８８】
以下、変形例について説明する。
【００８９】
例えば、完成体としてのシステム制御部１４とデバイス制御部１６が構築された後に、システム制御部１４が、当該システム制御部１４の属性とは異なる属性を有する完成体としてのシステム制御部１４に交換されたり、デバイス制御部１６が、当該デバイス制御部１６の属性とは異なる属性を有する完成体としてのデバイス制御部１６に交換されたりすることで、システム制御部１４の属性とデバイス制御部１６の属性が互いに異なる事態が発生する場合がある。また、制御部同士の間で他方の制御部を制御できない事態や、制御部の間で制御信号のやり取りができない事態等が発生する場合があり得る。
【００９０】
システム制御部１４とデバイス制御部１６は、例えば、ファームウェアの起動後に、上記の事態が発生しているか否かを確認してもよい。例えば、システム制御部１４のＣＰＵ２６は、メモリ２８に格納されているシステム制御部１４用のファームウェアを起動させる。同様に、デバイス制御部１６のＣＰＵ３２は、メモリ３４に格納されているデバイス制御部１６用のファームウェアを起動させる。ＣＰＵ２６とＣＰＵ３２は、互いのファームウェアの属性等を示す情報をやり取りし、相手から受け取った情報に基づいて、互いの属性が同一か否かといった判断や、相手のファームウェアが、自身のファームウェアによって制御可能であるか否かといった判断や、自身のファームウェアとの間で制御信号のやり取りが可能であるか否かといった判断等を行う。例えば、両ファームウェアの属性が互いに同じである場合には、互いに制御可能であると判断されたり、互いに制御信号のやり取りが可能であると判断されたりする。両ファームウェアの属性が互いに異なる場合、互いに制御可能ではないと判断されたり、互いに制御信号のやり取りが可能ではないと判断されたりする。
【００９１】
交換後のシステム制御部１４とデバイス制御部１６との間で上記の事態が発生している場合、システム制御部１４は、ＦＷテーブルにおいて、自己ＩＤに対応付けられているファームウェアをダウンロードする。例えば、システム制御部１４とデバイス制御部１６との間で開発世代が異なる場合、一方の制御部の機能が制限されたファームウェアがダウンロードされる。ダウンロード後は、上述した実施形態と同様に、再起動が行われて、完成体としてのシステム制御部１４とデバイス制御部１６が構築される。
【００９２】
交換後のシステム制御部１４とデバイス制御部１６との間で上記の事態が発生していない場合、ファームウェアのダウンロードは行われず、システム制御部１４及びデバイス制御部１６のそれぞれに既に格納されているファームウェアによって、画像形成装置１０が制御される。
【００９３】
例えば、互いに同じ世代のシステム制御部１４とデバイス制御部１６が画像形成装置１０に搭載されていたが、システム制御部１４が、次世代のシステム制御部１４に交換された場合、交換後のシステム制御部１４とデバイス制御部１６との間で上記の事態が生じる。この場合、システム制御部１４は、変更後のＩＤ（０）３０とデバイス制御部１６のＩＤ（１）３６との組み合わせである自己ＩＤを生成し、ＦＷテーブルにおいて、当該自己ＩＤに対応付けられているファームウェアを検索する。例えば、当該自己ＩＤに対応するシステム制御部１４用のファームウェアとデバイス制御部１６用のファームウェアとにおいて、システム制御部１４用のファームウェアのみが新しいファームウェアに更新されている場合、システム制御部１４は、システム制御部１４用のファームウェアのみをサーバ１２からダウンロードする。
【符号の説明】
【００９４】
１０  画像形成装置、１２  サーバ、１４  システム制御部、１６  デバイス制御部。
【図１】
2020047178.tif 000003
【図２】
2020047178.tif 000004
【図３】
2020047178.tif 000005
【図４】
2020047178.tif 000006