(57)【要約】【課題】  外部機器からダウンロードされる機器制御プログラムの適応性を判断して、機器制御プログラムの登録または更新を利便性よく行えることである。【解決手段】  コントローラ部１１０は、ＬＡＮ４００を介して各機器を制御する機器制御プログラムおよび機器制御プログラムに関連する複数の関連ファイルをＦＣサーバ１０４からダウンロードする。そして、コントローラ部１１０は、ダウンロードタスクを起動して、ダウンロードされた関連ファイルに基づいて、前記機器制御プログラムの整合性を確認する。そして、その整合性の確認結果に基づいて、ダウンロードされた機器制御プログラムの管理情報を動作可能状態または、ダウンロード前の旧機器制御プログラムが動作可能状態に復旧させること特徴とする。【選択図】  図１
2007213404.tif 000002
【特許請求の範囲】
【請求項１】
接続される複数の機器の機器制御プログラム部品を組み合わせて処理を行う組込機器であって、
各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器からダウンロードするダウンロード手段と、
前記ダウンロード手段によりダウンロードされた関連ファイルに基づいて、前記機器制御プログラムの整合性を確認する確認手段と、
前記確認手段による整合性の確認結果に基づいて、ダウンロードされた前記機器制御プログラムの管理情報を動作可能状態または、ダウンロード前の旧機器制御プログラムが動作可能状態に復旧させるダウンロード制御手段と、
を有することを特徴とする組込機器。
【請求項２】
複数の関連ファイルは、前記機器制御プログラムの整合性をテストするテストプログラムと、前記テストプログラムのテスト結果を判断するための判断基準情報、前記機器制御プログラムに対応する機器が使用中かどうかを問い合わせる問い合わせプログラムと、前記機器制御プログラムのＩＤと、前記機器制御プログラムのバージョンとを含むことを特徴とする請求項１記載の組込機器。
【請求項３】
複数の関連ファイルは、前記機器制御プログラムの整合性をテストするテストプログラムと、前記テストプログラムのテスト結果を判断するための判断基準情報、前記機器制御プログラムに対応する機器が使用中かどうかを問い合わせる問い合わせプログラムと、前記機器制御プログラムのＩＤと、前記機器制御プログラムのバージョンと、他の組込機器からの機器構成に対する問い合わせに応答して機器情報を応答する応答プログラムと、他の組込機器からの要求に応答して機器構成が共通する機器制御プログラムを要求元の他の組込機器に転送する転送プログラムとを含むことを特徴とする請求項１記載の組込機器。
【請求項４】
前記転送プログラムは、他の組込機器から応答される機器構成から機器構成が共通する組込機器が存在するか否かを判断可能とすることを特徴とする請求項３記載の組込機器。
【請求項５】
前記ダウンロード手段によりダウンロードされた前記機器制御プログラムを前記管理情報とともに記憶する記憶手段を備えることを特徴とする請求項１記載の組込機器。
【請求項６】
前記記憶手段は、いずれかの機器制御プログラムに対して異なるバージョンの機器制御プログラムを識別可能に記憶することを特徴とする請求項１〜４のいずれかに記載の組込機器。
【請求項７】
前記ダウンロード手段を実行させる複数のダウンロードモードからいずれかのダウンロードモードを選択する選択手段を備え、
前記ダウンロード制御手段は、前記選択手段により選択されるダウンロードモードに基づいて、前記各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器から自動ダウンロードするタイミングを決定することを特徴とする請求項１〜６のいずれかに記載の組込機器。
【請求項８】
前記タイミングは、対象とする機器が休止中となる第１のタイミング、対象となる機器の起動する第２のタイミング、対象となる機器の動作を終了するタイミング、操作部からのダウンロードを受け付けたタイミングのいずれかであることを特徴とする請求項７記載の組込機器。
【請求項９】
前記組込機器は、プリンタ部、スキャナ部を備える画像処理装置であることを特徴とする請求項１〜７のいずれかに記載の組込機器。
【請求項１０】
前記外部機器は、通信回線を介して通信可能なサーバ装置または他の画像処理装置であることを特徴とする請求項１〜７のいずれかに記載の組込機器。
【請求項１１】
接続される複数の機器の機器制御プログラム部品を組み合わせて処理を行う組込機器におけるダウンロード方法であって、
各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器からダウンロードするダウンロードステップと、
前記ダウンロードステップによりダウンロードされた関連ファイルに基づいて、前記機器制御プログラムの整合性を確認する確認ステップと、
前記確認ステップによる整合性の確認結果に基づいて、ダウンロードされた前記機器制御プログラムの管理情報を動作可能状態または、ダウンロード前の旧機器制御プログラムが動作可能状態に復旧させるダウンロード制御ステップと、
を有することを特徴とするダウンロード方法。
【請求項１２】
複数の関連ファイルは、前記機器制御プログラムの整合性をテストするテストプログラムと、前記テストプログラムのテスト結果を判断するための判断基準情報、前記機器制御プログラムに対応する機器が使用中かどうかを問い合わせる問い合わせプログラムと、前記機器制御プログラムのＩＤと、前記機器制御プログラムのバージョンとを含むことを特徴とする請求項１１記載のダウンロード方法。
【請求項１３】
複数の関連ファイルは、前記機器制御プログラムの整合性をテストするテストプログラムと、前記テストプログラムのテスト結果を判断するための判断基準情報、前記機器制御プログラムに対応する機器が使用中かどうかを問い合わせる問い合わせプログラムと、前記機器制御プログラムのＩＤと、前記機器制御プログラムのバージョンと、他の組込機器からの機器構成に対する問い合わせに応答して機器情報を応答する応答プログラムと、他の組込機器からの要求に応答して機器構成が共通する機器制御プログラムを要求元の他の組込機器に転送する転送プログラムとを含むことを特徴とする請求項１１記載のダウンロード方法。
【請求項１４】
前記転送プログラムは、他の組込機器から応答される機器構成から機器構成が共通する組込機器が存在するか否かを判断可能とすることを特徴とする請求項１３記載のダウンロード方法。
【請求項１５】
前記ダウンロードステップによりダウンロードされた前記機器制御プログラムを前記管理情報とともに記憶手段に登録して管理する管理ステップを備えることを特徴とする請求項１１記載のダウンロード方法。
【請求項１６】
前記記憶手段は、いずれかの機器制御プログラムに対して異なるバージョンの機器制御プログラムを識別可能に記憶することを特徴とする請求項１１〜４のいずれかに記載のダウンロード方法。
【請求項１７】
前記ダウンロードステップを実行させる複数のダウンロードモードからいずれかのダウンロードモードを選択する選択ステップを備え、
前記ダウンロード制御ステップは、前記選択手段により選択されるダウンロードモードに基づいて、前記各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器から自動ダウンロードするタイミングを決定することを特徴とする請求項１１〜１６のいずれかに記載のダウンロード方法。
【請求項１８】
前記タイミングは、対象となる機器が休止中となる第１のタイミング、対象となる機器の起動する第２のタイミング、対象となる機器の動作を終了するタイミング、操作部からのダウンロードを受け付けたタイミングのいずれかであることを特徴とする請求項１７記載のダウンロード方法。
【請求項１９】
前記組込機器は、プリンタ部、スキャナ部を備える画像処理装置であることを特徴とする請求項１１〜１７のいずれかに記載のダウンロード方法。
【請求項２０】
前記外部機器は、通信回線を介して通信可能なサーバ装置または他の画像処理装置であることを特徴とする請求項１１〜１７のいずれかに記載のダウンロード方法。
【請求項２１】
請求項１１〜２０のいずれかに記載のダウンロード方法をコンピュータに実行させるためのプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【請求項２２】
請求項１１〜２０のいずれかに記載のダウンロード方法をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、接続される複数の機器の機器制御プログラム部品を組み合わせて処理を行う組合せ機器の機器制御プログラムのダウンロード処理に関するものである。
【背景技術】
【０００２】
近年、電子機器において、種々の機能を拡張するために本体に対してハードウエア資源やソフトウエア資源を組み込み可能な電子機器、例えば画像処理装置が実用化されている。
【０００３】
このような電子機器において、ハードウエアの高速化、高機能化またはユーザニーズの複雑化に伴い、組み込み機器は非常に柔軟な機器構成を持つことが必須となってきた。
【０００４】
一方、これまで組み込み機器用ファームウエアはＣＰＵ毎に１つであることを前提とした設計が一般的だった。
【０００５】
このため、接続機器構成のバリエーションの数だけファームウエアを作成しなければならない場合があった。
【０００６】
あるいは１つのファームウエアだけしか作成しない代わりに全てのバリエーションに対応するよう機器構成よってはオーバースペックなファームウエアを動作させなければならないという問題があった。
【０００７】
そこで、近年ファームウエアを機能毎に「コンポーネント」として作成しハードウエアの構成に合わせて必要なものだけロードして使用するということが考案されてきた。
【０００８】
しかしながら、ダウンロードできる対象が増えるにつれてＦＣ間の整合性を保証するのが困難になってきた。
【０００９】
これに対して従来の整合性保証の例として、下記特許文献１記載の「ローディング方法」がある。
【００１０】
この方法によれば、制御装置上で元々実行されているプログラムはそのままに新プログラムをダウンロード、シミュレーションし、その結果をデータベースに送信しデータベース側で適用の可否を判断する。そして、そのデータベース側での判断を終えた後、その結果を制御装置に通知するという方法でプログラムの動作保障を行う提案がなされている。
【００１１】
また、従来の整合性保証処理の例として、下記特許文献２記載の「情報記録再生装置およびその動作テスト方法」がある。この方法によれば、機器の制御プログラムの動作を確認するためのテストプログラムを外部から受信して実行することにより動作保障を行うという提案がなされている。
【特許文献１】特開平７−２１０３０号公報
【特許文献２】特開平１１−３５３７６２号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
しかしながら、上記特許文献１に示す「ローディング方法」によれば、同じハードウエアの機器が複数台接続されているような環境下でも１台ずつシミュレーションが必要でありプログラムの更新作業に時間と手間がかかってしまう。
【００１３】
また、制御装置の他に適用の可否を判断するためのデータベースが必要となる。
【００１４】
そもそもスタンドアローンな電子機器上のファームウエアコンポーネント（以下、ＦＣと呼ぶ）の場合であっても、以下の組み合わせがある。
【００１５】
ハードウエア機器構成のバリエーションが複雑になっていく環境下では、接続できる機器の数、機器毎の機能バリエーション、各ＦＣのバージョンの組み合わせが発生し、全ての組み合わせでテストすることが困難となってくる。
【００１６】
ここで、機能バリエーションとは、同一機器を使用しても機能制限や、別の機器に依存してＦＣを別々に用意する可能性もある。
【００１７】
さらに、カスタマイズの仕組みとして、サードパーティ製のＦＣも動作できる環境下では、より一層全組み合わせでテストすることが困難となってくる。
【００１８】
しかしながら、特許文献２に示す「情報記録再生装置およびその動作テスト方法」によれば、ＦＣのプログラムと共にテストプログラムを受信して、テストを行うことはできるが特にＦＣとの対応はなされていない。
【００１９】
このため、ＦＣの制御内容に必ずしもフィットしたテストができるかどうかが保障されないという問題点と、ダウンロードしたＦＣの動作確認に必要のないテストまで行い、時間や手間がかかってしまうという問題があった。
【００２０】
上記不整合による最悪のケースとして、ＦＣの組み合わせによってはユーザが使用する機器が正常に動作しないということも想定される。
【００２１】
特に組み込み機器の場合、機器の種類によっては誤動作により大きな損害や人体への危険をも引き起こしてしまう可能性がある。
【００２２】
このため、複雑化するハードウエア構成に対応したファームウエアの協調動作を確実に保障しつつ、迅速に作業が完了する方法が望まれてきた。
【００２３】
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、外部機器からダウンロードされる機器制御プログラムの適応性を判断して、機器制御プログラムの登録または更新を利便性よく行える仕組みを提供することである。
【課題を解決するための手段】
【００２４】
上記目的を達成する本発明の組込機器は以下に示す構成を備える。
【００２５】
接続される複数の機器の機器制御プログラム部品を組み合わせて処理を行う組込機器であって、各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器からダウンロードするダウンロード手段と、前記ダウンロード手段によりダウンロードされた関連ファイルに基づいて、前記機器制御プログラムの整合性を確認する確認手段と、前記確認手段による整合性の確認結果に基づいて、ダウンロードされた前記機器制御プログラムの管理情報を動作可能状態または、ダウンロード前の旧機器制御プログラムが動作可能状態に復旧させるダウンロード制御手段とを有することを特徴とする。
【００２６】
上記目的を達成する本発明のダウンロード方法は以下に示す構成を備える。
【００２７】
接続される複数の機器の機器制御プログラム部品を組み合わせて処理を行う組込機器におけるダウンロード方法であって、各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器からダウンロードするダウンロードステップと、前記ダウンロードステップによりダウンロードされた関連ファイルに基づいて、前記機器制御プログラムの整合性を確認する確認ステップと、前記確認ステップによる整合性の確認結果に基づいて、ダウンロードされた前記機器制御プログラムの管理情報を動作可能状態または、ダウンロード前の旧機器制御プログラムが動作可能状態に復旧させるダウンロード制御ステップと、
を有することを特徴とする。
【発明の効果】
【００２８】
本発明によれば、外部機器からダウンロードされる機器制御プログラムの適応性を判断して、機器制御プログラムの登録または更新を利便性よく行える。
【００２９】
また、適応性の判断するファイルを機器制御プログラムと同時にダウンロードできるため、機器制御プログラムの適応性を機器制御プログラムの登録あるいは更新する前にシミュレーションすることができる。
【００３０】
さらに、機器制御プログラムの適応性を判定した上で、機器制御プログラムの登録あるいは更新するの可否が決定されるため、不整合な機器制御プログラムが登録または更新されてしまう事態を回避できる。
【００３１】
また、不整合な機器制御プログラムをダウンロードしている場合には、同一の機器としてすでに登録されている旧機器制御プログラムを実行させる環境に自動復旧させることができ、ダウンロード処理実行に伴う不具合を未然に防止できる。
【００３２】
さらに、機器制御プログラムを適正なタイミングで自動的にダウンロードしたり、ユーザの指定タイミングでダウンロードしたりでき、ダウンロード処理タイミングを調整できるため利便性が向上する。
【発明を実施するための最良の形態】
【００３３】
次に本発明を実施するための最良の形態について図面を参照して説明する。
【００３４】
＜システム構成の説明＞
〔第１実施形態〕
＜画像入出力装置の全体構成＞
図１は、本発明の第１実施形態を示す組込機器を適用可能な画像処理システムの一例を示す図である。なお、本実施形態では、組込機器例として、リーダ部と、プリンタ部とが通信可能な画像処理装置を例としている。また、本実施形態では、複数の機器が組み合わせて、画像処理装置が構成されている例である。
【００３５】
図１に示す画像処理装置１００において、リーダ部（画像入力装置）２００は、原稿画像を光学的に読み取り、画像データに変換する。リーダ部２００は、原稿を読取るための機能を持つスキャナユニット２１０と、原稿用紙を搬送するための機能を持つ原稿給紙ユニット２５０とが組み合わされて構成される。１５０は操作部で、個別の機器種ＩＤ１５０−１を備える。また、１７０はカードリーダ部で、個別の機器種ＩＤ１７０−１を備える。
【００３６】
なお、画像処理装置１０５も同等のハードウエア資源と、ソフトウエア資源を備える。
【００３７】
これらのユニットは、通常オプションとして着脱、交換が可能であるため、ユニットの種別を識別するための機器種ＩＤ２５０−１、２１０−１を個別に備えている。
【００３８】
プリンタ部（画像出力装置）３００は、記録紙を搬送し、その上に画像データを可視画像として印字して装置外に排紙する。
【００３９】
プリンタ部３００は、複数種類の記録紙カセットを持つ給紙ユニット３６０を備える。また、プリンタ部３００は、画像データを記録紙に転写、定着させる機能を持つマーキングユニット３１０と、印字された記録紙をソート、ステイプルして機外へ出力する機能を持つ排紙ユニット３７０とで構成される。
【００４０】
組込機器として機能する排紙ユニット３７０と給紙ユニット３６０は、その機能処理能力に応じてさまざまな種類のものに交換または着脱が可能であるため、ユニットの種別を識別するための機器種ＩＤ３６０−１、３７０−１を備えている。
【００４１】
制御装置１１０は、リーダ部２００、プリンタ部３００と所定のインタフェースを介して電気的に接続され、さらにＬＡＮ  ４００を介して、ＰＣ１０２，１０３と所定のプロトコルで通信可能に接続されている。
【００４２】
制御装置１１０は、リーダ部２００を制御して、原稿の画像データを読込み、プリンタ部３００を制御して画像データを記録用紙に出力してコピー機能を提供する。
【００４３】
また、制御装置１１０は、リーダ部２００から読取った画像データを、コードデータに変換し、ネットワーク４００を介してホストコンピュータへ送信するスキャナ機能を提供する。
【００４４】
さらに、制御装置１１０は、ホストコンピュータからネットワーク４００を介して受信したコードデータを画像データに変換し、プリンタ部３００に出力するプリンタ機能を提供する。
【００４５】
さらに、ネットワーク４００上には制御装置１１０を制御するためのＦＣを提供するためのＦＣサーバ１０４や他の画像処理装置１０５が接続される。
【００４６】
また、カードリーダ１７０と通信してカード有無や部門番号を取得し、部門毎のスキャンやプリントの枚数をカウントする。操作部１５０は、制御装置１１０に接続され、液晶タッチパネルで構成され、画像入出力システムを操作するためのユーザＩ／Ｆを提供する。
【００４７】
操作部１５０やカードリーダ１７０もまた着脱、交換が可能であることが想定されているため、ユニットの種別を識別するための機器種ＩＤを備える。拡張Ｉ／Ｆはオプションボードを接続することが可能なコネクタである。
【００４８】
制御装置１１０は各ユニットの有無や種類に応じて制御を適宜変更する必要がある。
【００４９】
従って、組み合わされたユニットの構成に合わせて適切な制御ソフト（ファームウエア）をＦＣサーバ１０４から所定のタイミングでダウンロードしてテストして切り替える必要がある。
【００５０】
なお、ファームウエアは、ＦＣサーバ１０４より、後述するタイミングでダウンロードする。１０２，１０３はＰＣで、いわゆるＣＰＵ、ＲＯＭ、ＲＡＭ等を備えるコントローラ部と、入出力デバイスを備える。また、このＰＣ１０２、１０３は、外部記憶装置、例えばハードディスクに所定のＯＳがインストールされている。そして、ＰＣ１０２、１０３は、そのＯＳを介して、アプリケーションプログラムを実行することで種々のデータ処理を行う。
【００５１】
また、ＰＣ１０２、１０３は、外部記憶装置にインストールされているプリンタドライバを介して、印刷情報を画像処理装置１００や、図示しないネットワークプリンタ、あるいはローカル接続されるプリンタに出力可能に構成されている。
【００５２】
図２は、図１に示したリーダ部２００と、プリンタ部３００の断面構成を説明する断面図である。なお、本実施形態では、感光ドラムが４つ併設される４連タンデム型のレーザプリンタエンジンを備える例を示しているが、他の画像形成方式であってもよい。この図により画像入出力装置の仕組みを説明する。
【００５３】
図２において、リーダ部２００の原稿給紙ユニット２５０は原稿を先頭順に１枚ずつプラテンガラス２１１上へ給送し、原稿の読み取り動作終了後、プラテンガラス２１１上の原稿を排出するものである。
【００５４】
原稿がプラテンガラス２１１上に搬送されると、ランプ２１２を点灯させ、光学ユニット２１３の移動を開始させて、原稿を露光走査する。この時の原稿からの反射光は、ミラー２１４、２１５、２１６及びレンズ２１７によってＣＣＤイメージセンサ（以下ＣＣＤという）２１８へ導かれる。このように、走査された原稿の画像はＣＣＤ２１８によって読み取られる。
【００５５】
２２２はリーダ画像処理回路部であり、ＣＣＤ２１８から出力される画像データに所定の画像処理を施し、スキャナＩ／Ｆ１４０を介して制御装置１１０へと出力するところである。
【００５６】
３５２はプリンタ画像処理回路部であり、プリンタＩ／Ｆ１４５を介して制御装置１１０から送られる画像信号をレーザドライバへと出力するところである。
【００５７】
プリンタ部３００のレーザドライバ３１７はレーザ発光部３１３、３１４、３１５、３１６を駆動するものであり、プリンタ画像処理部３５２から出力された画像データに応じたレーザ光をレーザ発光部３１３、３１４、３１５、３１６を発光させる。
【００５８】
このレーザ光はミラー３４０〜３５１によって感光ドラム３２５〜３２８に照射され、感光ドラム３２５〜３２８にはレーザ光に応じた潜像が形成される。３２１〜３２４は、それぞれブラック（Ｂｋ）、イエロー（Ｙ）、シアン（Ｃ）、マゼンダ（Ｍ）のトナーによって、潜像を現像するための現像器であり、現像された各色のトナーは、用紙に転写されフルカラーのプリントアウトがなされる。
【００５９】
給紙カセット３６０、３６１及び手差しトレイ３６２のいずれかより、レーザ光の照射開始と同期したタイミングで給紙された用紙は、レジストローラ３３３を経て、転写ベルト３３４上に吸着され、搬送される。
【００６０】
そして、感光ドラム３２５、３２６、３２７、３２８に付着された現像剤を記録紙に転写する。現像剤の乗った記録紙は定着部３３５に搬送され、定着部３３５の熱と圧力により現像剤は記像紙に定着される。
【００６１】
次に、定着部３３５を通過した記録紙は排出ローラ３３６によって排出され、排紙ユニット３７０は排出された記録紙を束ねて記録紙の仕分けをしたり、仕分けされた記録紙のステイプルしたりする。
【００６２】
また、両面記録が設定されている場合は、排出ローラ３３６のところまで記録紙を搬送した後、排出ローラ３３６の回転方向を逆転させ、フラッパ３３７によって再給紙搬送路３３８へ導く。再給紙搬送路３３８へ導かれた記録紙は上述したタイミングで転写ベルト３３４へ給紙される。
【００６３】
＜制御装置の説明＞
図３は、図１に示した制御装置１１０の構成を説明ブロック図である。
【００６４】
図３において、メインコントローラ１１１は、主にＣＰＵ１１２と、バスコントローラ１１３、各種Ｉ／Ｆコントローラ回路とから構成される。
【００６５】
ＣＰＵ１１２とバスコントローラ１１３は制御装置１１０全体の動作を制御するものであり、ＣＰＵ１１２はＲＯＭ１１４やＨＤＤ１６２から読込んだプログラムに基づいて動作する。
【００６６】
また、ホストコンピュータ等のＰＣ１０２、１０３から受信したＰＤＬ（ページ記述言語）コードデータを解釈し、ラスタイメージデータに展開する動作も、このプログラムに記述されており、ソフトウエアによって処理される。
【００６７】
バスコントローラ１１３は、各Ｉ／Ｆから入出力されるデータ転送を制御するものであり、バス競合時の調停やＤＭＡデータ転送の制御を行う。
【００６８】
ＤＲＡＭ１１６はＤＲＡＭ  Ｉ／Ｆ１１７によってメインコントローラ１１１と接続されており、ＣＰＵ１１２が動作するためのワークエリアや、画像データを蓄積するためのエリアとして使用される。
【００６９】
ＳＲＡＭ１８０もメインコントローラ１１１と接続されているが、ＣＰＵ１１２が動作するために必要なデータを長期間保持するエリアとして使用される。ＳＲＡＭ１８０は不揮発メモリであるため電源のＯＦＦ／ＯＮに関わらずデータは保持される。
【００７０】
Ｃｏｄｅｃ１１８は、ＤＲＡＭ１１６に蓄積されたラスタイメージデータをＭＨ／ＭＲ／ＭＭＲ／ＪＢＩＧ／ＪＰＥＧ等の方式で圧縮し、また逆に圧縮され蓄積されたコードデータをラスタイメージデータに伸長する。
【００７１】
ＳＲＡＭ１１９はＣｏｄｅｃ１１８の一時的なワーク領域として使用される。Ｃｏｄｅｃ１１８はＩ／Ｆ１２０を介してメインコントローラ１１１と接続され、ＤＲＡＭ１１６との間のデータの転送は、バスコントローラ１１３によって制御されＤＭＡ転送される。
【００７２】
Ｇｒａｐｈｉｃ  Ｐｒｏｃｅｓｓｏｒ１３５は、ＤＲＡＭ１１６に蓄積されたラスタイメージデータに対して、画像回転、画像変倍、色空間変換、二値化の処理をそれぞれ行う。
【００７３】
ＳＲＡＭ１３６はＧｒａｐｈｉｃ  Ｐｒｏｃｅｓｓｏｒ１３５の一時的なワーク領域として使用される。Ｇｒａｐｈｉｃ  Ｐｒｏｃｅｓｓｏｒ１３５はＩ／Ｆ１３７を介してメインコントローラ１１１と接続され、ＤＲＡＭ１１６との間のデータの転送は、バスコントローラ１１３によって制御されＤＭＡ転送される。
【００７４】
Ｎｅｔｗｏｒｋ  Ｃｏｎｔｏｒｌｌｅｒ１２１はＩ／Ｆ１２２によってメインコントローラ１１１と接続され、コネクタ１２２によって外部ネットワークと接続される。ネットワークとしては一般的にイーサネット（登録商標）があげられる。
【００７５】
汎用高速バス１２５には、拡張ボードを接続するための拡張コネクタ１２４とＩ／Ｏ制御部１２６とが接続される。汎用高速バスとしては、一般的にＰＣＩバスがあげられる。
【００７６】
Ｉ／Ｏ制御部１２６には、リーダ部２００、プリンタ部３００の各ＣＰＵと制御コマンドを送受信するための調歩同期シリアル通信コントローラ１２７が２チャンネル装備されており、Ｉ／Ｏバス１２８によって外部Ｉ／Ｆ回路１４０，１４５に接続されている。
【００７７】
パネルＩ／Ｆ１３２は、ＬＣＤコントローラ１３１に接続され、操作部１５０上の液晶画面に表示を行うためのＩ／Ｆと、ハードキーやタッチパネルキーの入力を行うためのキー入力Ｉ／Ｆ１３０とから構成される。
【００７８】
操作部１５０は液晶表示部と液晶表示部上に張り付けられたタッチパネル入力装置と、複数個のハードキーを有する。そして、タッチパネルまたはハードキーにより入力された信号は前述したパネルＩ／Ｆ１３２を介してＣＰＵ１１２に伝えられ、液晶表示部はパネルＩ／Ｆ５２０から送られてきた画像データを表示するものである。
【００７９】
液晶表示部には、本画像形成装置の操作における機能表示や画像データ等を表示する。
【００８０】
リアルタイムクロックモジュール１３３は、機器内で管理する日付と時刻を更新／保存するためのもので、バックアップ電池１３４によってバックアップされている。
【００８１】
Ｅ−ＩＤＥインタフェース１６１は、外部記憶装置を接続するためのものである。本実施形態においては、このＩ／Ｆを介してハードディスクドライブ１６０を接続し、ハードディスク１６２へ画像データを記憶させたり、ハードディスク１６２から画像データを読み込む動作をしたりする。
【００８２】
画像処理装置１００と部門毎のスキャン枚数、プリント枚数を管理する管理装置１７１を接続するための機能ユニットである。そして、管理装置インタフェース１７０は、管理装置１７１へ画像形成装置から制御コマンドを送ったり、管理装置１７１から画像形成装置へカウンタ情報やイネーブル信号を返信したりするのに使用される。管理装置１７１はカードリーダ１７２と接続され、カード毎に固有の部門情報を取得できる。
【００８３】
コネクタ１４２と１４７は、それぞれリーダ部２００とプリンタ部３００とに接続され、同調歩同期シリアルＩ／Ｆ（１４３，１４８）とビデオＩ／Ｆ（１４４，１４９）とから構成される。
【００８４】
スキャナＩ／Ｆ１４０は、コネクタ１４２を介してリーダ部２００と接続され、また、スキャナバス１４１によってメインコントローラ１１１と接続されている。
【００８５】
そして、スキャナＩ／Ｆ１４０は、リーダ部２００から受け取った画像に対して所定の処理を施す機能を有し、さらに、リーダ部２００から送られたビデオ制御信号をもとに生成した制御信号を、スキャナバス１４１に出力する機能も有する。
【００８６】
スキャナバス１４１からＤＲＡＭ１１６へのデータ転送は、バスコントローラ１１３によって制御される。
【００８７】
プリンタＩ／Ｆ１４５は、コネクタ１４７を介してプリンタ部３００と接続され、また、プリンタバス１４６によってメインコントローラ１１１と接続されている。そして、プリンタＩ／Ｆ１４５は、メインコントローラ１１１から出力された画像データに所定の処理を施して、プリンタ部３００へ出力する機能を有する。さらに、プリンタＩ／Ｆ１４５は、プリンタ部３００から送られたビデオ制御信号をもとに生成した制御信号を、プリンタバス１４６に出力する機能も有する。
【００８８】
ＤＲＡＭ１１６上に展開されたラスタイメージデータのプリンタ部への転送は、バスコントローラ１１３によって制御され、プリンタバス１４６、ビデオＩ／Ｆ１４９を経由して、プリンタ部３００へＤＭＡ転送される。
【００８９】
＜操作部１５０の説明＞
図４は、図１に示した操作部１５０の構成を説明する平面図である。この操作部１５０も組込機器の一例であって、各画像処理装置の能力や機能に応じて、いろいろなタイプのものが用意されている。
【００９０】
図４において、ＬＣＤ表示部４０２は、ＬＣＤ上にタッチパネルシートが貼られており、システムの操作画面を表示するとともに、表示してあるキーが押されるとその位置情報をコントローラ部１１０のＣＰＵ１１２に伝える。
【００９１】
スタートキー４０６は原稿画像の読み取り動作を開始する時などに用いる。スタートキー４０６の中央部には、緑と赤の２色ＬＥＤがあり、その色によってスタートキー４０６が使える状態にあるかどうかを視覚的に識別表示する。
【００９２】
ストップキー４０７は稼動中の動作を止める働きをする。ＩＤキー４０５は使用者のユーザＩＤを入力するときに用いる。リセットキー４０８は操作部１５０からの設定を初期化するときに用いる。
【００９３】
ガイドキー４０９はタッチパネル上に表示されているキーやハードキーの働きを説明するために用いる。
【００９４】
ユーザモードキー４０３は、本体固有のモード設定を行うときに用いる。テンキー４０４は置数や倍率を直接入力する際に使用する。クリアキー４１０はテンキー入力した数値をクリアするときに用いる。操作部電源スイッチ４１２は、操作部のＯＮ／ＯＦＦを行うときに用いる。節電キー４１１は、節電モードに入るときに使用する。
【００９５】
＜ソフトウエア構成＞
図５は、図３に示したＲＯＭ１１４、ＨＤ１６２に記憶されたファームウエア（モジュール）の物理的配置を示す図である。
【００９６】
なお、図５の（Ａ）は、ＲＯＭ１１４（図３）上のプログラム配置を示す。ＲＯＭ１１４上にはダウンロード、テスト、バージョンアップ制御プログラムを含むダウンロード関連プログラム５０１、接続機器管理プログラム５０２が配置されている。
【００９７】
また、ＲＯＭ１１４上には、ダウンロード専用モードプログラム５０３、ダウンロードモード設定処理プログラム５０４、構成管理プログラム５０５が配置されている。
【００９８】
これらのプログラムはＲＯＭ１１４上に配置されているため基本的に消去されることはない。また、機器構成によってはこれらのプログラムのいずれかをＨＤＤ１６２に配置することも可能である。
【００９９】
図５の（Ｂ）は、ＨＤＤ１６２（図３）上のプログラム配置を示す。
【０１００】
ＨＤＤ１６２上にはＦＣ５０６とＤＷＦＣ５０７、５０８と構成管理情報５０９を格納する。
【０１０１】
本実施形態ではＦＣ５０６は予め機器内に格納された状態で出荷されているものとし、ＤＷＦＣ５０７、５０８は後からＦＣサーバ１０４または画像処理装置１０５等よりダウンロードされたものとする。
【０１０２】
なお、ＨＤＤ１６２（図３）上のデータは、ＣＰＵ１１２が読み込み、書き込みが自由に行えるように構成されている。
【０１０３】
図６は、図５に示したＦＣのモジュール構成を説明する図である。
【０１０４】
図６の（Ａ）はＤＷＦＣ５０７、５０８を例とするダウンロード可能なＦＣの構成を示す。
【０１０５】
図６の（Ａ）において、ダウンロード可能なＤＷＦＣ５０７、５０８等は、機器制御プログラム（ファームウエア本体）６０１、整合性テストプログラム６０２を備える。また、使用問い合わせプログラム６０３、ＦＣ種別情報６０４、ＦＣバージョン情報６０５、整合性テスト判断基準６０９を備える。
【０１０６】
ここで、使用問い合わせプログラム６０３とは、このＤＷＦＣが現在機器制御に使用されているかどうかを確認するプログラムである。
【０１０７】
整合性テストプログラム６０２とは、機器にダウンロードされた時に整合性を確認するためのテストプログラムである。整合性テスト判断基準６０９とは、整合性テストケースの実行結果が正しいかどうかの判断基準である。
【０１０８】
整合性テスト判断段基準６０９は基本的に、整合性テスト開始時のＦＣのパラメタを定義する事前条件と、整合性テスト後のＦＣが使用するパラメタの正解値とのセットで構成され、このセットが１また複数含まれている。例えば、あるＦＣがＡ〜Ｅのパラメタを持っていたと仮定する。そしてこのＦＣはパラメタの値をＡ、Ｂを入力とし、ある処理を実行した出力結果がパラメタの値のＣ、Ｄ、Ｅとして反映され、返却値として返却されると仮定すると、整合性テスト判断基準６０９はＡ、Ｂの値と正しいテストの結果として期待されるＣ、Ｄ、Ｅの値を含む。他の種類のテストも行う場合には、上記Ａ〜Ｅのと同様な別のパラメタセットを複数含む。
【０１０９】
なお、本実施形態では、ＦＣサーバ１０４または画像処理装置１０５等からダウンロード可能なＤＷＦＣ自身が、整合性テストプログラム６０２や整合性テスト判断基準６０９をＤＷＦＣ内に直接含んでいる。
【０１１０】
しかし、ＤＷＦＣがどのテストプログラムや判断基準を使用するかというポインタのみを持ち、後からテストプログラムや判断基準を入手することも可能に構成されている。
【０１１１】
図６の（Ｂ）はＦＣ５０６を例とするダウンロード対象外のＦＣの構成を示す。
【０１１２】
次に、ＦＣ５０６を例とするダウンロードを行わないＦＣの構成を説明する。
【０１１３】
ダウンロードが行わないＦＣは、機器制御プログラム（ファームウエア本体）６０６、ＦＣ種別情報６０７、ＦＣバージョン情報６０８のみを備える。
【０１１４】
ダウンロードが行われない場合は、ダウンロード直後の使用問い合わせ処理や整合性テスト（後述）を行わないためこれらのプログラムがＦＣに含まれている必要がないためである。
【０１１５】
もちろん、ＦＣとしてそれらのプログラムを含んでいても動作に実害はないが余分なプログラムを含むことによりメモリを多く消費することになる。
【０１１６】
図７は、図５に示した構成管理情報５０９のテーブル構成を説明する図である。
【０１１７】
図７において、構成管理情報５０９は現在使用中の構成かどうかを示すフラグ７０７と日時情報７０２と、機器の持つＦＣ種別情報６０４，６０７とＦＣバージョン６０５，６０８とＦＣが制御する機器が持つ機器種ＩＤを記録する。
【０１１８】
ただし、特定の機器を制御するＦＣではない場合機器種ＩＤは記録されない。この例では機器出荷時７０４には機器内で以下のＦＣを使用していたことを示す。
【０１１９】
ＦＣ種別７０８は種別の内容が「Ｃ１」で、バージョン情報７０９はバージョンの内容が「１．８」であることを示す。
【０１２０】
ＦＣ種別７１０は種別の内容が「Ｃ２」で、バージョン情報７１１はバージョンの内容が「２．１」で、使用機器種ＩＤ７１２は、ＩＤが「ＳＣＮ１」であることを示す。
【０１２１】
ＦＣ種別７１３は種別の内容が「Ｃ３」で、バージョン情報７１４はバージョンの内容が「１．３」で、使用機器種ＩＤ７１５は、ＩＤが「ＰＲＮ１」であることを示す。
【０１２２】
そして、次のバージョンアップ時７０５では以下のように全てのＦＣが以下のようにバージョンアップされている。
【０１２３】
ＦＣ種別７１６は種別の内容が「Ｃ１」で、バージョン情報７１７はバージョンの内容が「１．９」であることを示す。
【０１２４】
ＦＣ種別７１８は種別の内容が「Ｃ２」で、バージョン情報７１９はバージョンの内容が「２．２」で、使用機器種ＩＤ７２０は、ＩＤが「ＳＣＮ１」であることを示す。
【０１２５】
ＦＣ種別７２１は種別の内容が「Ｃ３」で、バージョン情報７２２はバージョンの内容が「１．４」で、使用機器種ＩＤ７２３は、ＩＤが「ＰＲＮ１」であることを示す。
【０１２６】
さらに、その次のバージョンアップ時７０６では新規に、ＦＣ種別７３２は種別の内容が「Ｃ４」で、バージョン情報７３３はバージョンの内容が「１．０」で、使用機器種ＩＤ７３４は、ＩＤが「ＤＦ１」が追加されていることを示す。
【０１２７】
その他は、ＦＣが以下のようにバージョンアップ、または維持されている。
【０１２８】
ＦＣ種別７２４は種別の内容が「Ｃ１」で、バージョン情報７１７はバージョンの内容が「２．０」であることを示す。
【０１２９】
ＦＣ種別７２６は種別の内容が「Ｃ２」で、バージョン情報７２７はバージョンの内容が「２．２」で、使用機器種ＩＤ７２８は、ＩＤが「ＳＣＮ１」であることを示す。
【０１３０】
ＦＣ種別７３２は種別の内容が「Ｃ３」で、バージョン情報７３０はバージョンの内容が「１．５」で、使用機器種ＩＤ７３１は、ＩＤが「ＰＲＮ１」であることを示す。
【０１３１】
次のバージョンアップ時７０６では、ＦＣ種別７２４、７２５はバージョンアップされているが、ＦＣ種別７２６については、前回のバージョンアップ時７０５と変わっていないことを示す。
【０１３２】
このように、機器で使用されているＦＣのバージョンが変わるたびに構成管理情報がＨＤＤ１６２（図３）上に登録される。
【０１３３】
また、最終的に使用することに決定されたＦＣ群について、種別情報／バージョン情報／使用機器種ＩＤ７０３、日時情報７０２と共に、現在使用中の構成かどうかを示すフラグ７０１をセットする。ここで、現在の構成７０１を使用するかどうかは構成管理の方法に依存する。
【０１３４】
＜実行時のタスク構成＞
図８は、図１に示した画像処理装置１００のタスク構成を説明する図である。以下、画像処理装置１００、１０５が備えるコントローラ部１１０のタスク構成を説明する。
【０１３５】
図８において、接続機器管理タスク８０３は図１に示した原稿給紙ユニット２５０、スキャナユニット２１０、操作部１５０、カードリーダ１７０、排紙ユニット３７０、給紙ユニット３６０に代表される接続可能な機器の管理を行う。
【０１３６】
必要に応じてＦＣサーバ１０４（図１）に対しＦＣダウンロード要求を出す。ダウンロードタスク８０１は、ＦＣサーバ１０４（図１）や他の組み込み機器からＦＣをダウンロード行うためのタスクであり、条件に従って構成管理処理８０７も行う。
【０１３７】
メイン処理タスク８０８では、専用のダウンロード画面等の制御を含む各種処理８０５を行ったり、各種ダウンロードに関するダウンロードモード設定処理８０６を行ったりする。
【０１３８】
以下、本実施形態における組込機器の特徴的構成について、図５、図１等を参照して説明する。
【０１３９】
接続される複数の機器、本実施形態では、図１に示すようにリーダ部２００とプリンタ部とを備える画像処理装置１００を組込機器の一例とする。ここで、複数の機器とは、原稿給紙ユニット２５０、スキャナユニット２１０と、操作部１５０と、カードリーダ１７０、排紙ユニット３７０、給紙ユニット３６０を備える。
【０１４０】
そして、画像処理装置１００は、上記各機器の機器制御プログラム部品を組み合わせて、例えばコピー処理、プリント処理、ファクシミリ処理、スキャナ処理等、あるいはこれらの複合処理を行う。
【０１４１】
画像処理装置１００は、図８に示すメイン処理タスク８０８が各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器からダウンロードするダウンロード機能を備える。このダウンロード機能により、所定のプロトコルで機器制御プログラムをＦＣサーバ１０４からダウンロードする。
【０１４２】
そして、ダウンロード機能によりＦＣサーバ１０４からダウンロードされた関連ファイルに基づいて、前記機器制御プログラムの整合性を確認する確認機能を実行するダウンロードタスク８０１を備える。
【０１４３】
この確認機能は、図１３に示すダウンロードタスク処理を実行する。
【０１４４】
そして、確認機能による整合性の確認結果に基づいて、ダウンロードされた前記機器制御プログラム（ＦＣ）の管理情報を動作可能状態または、ダウンロード前の旧機器制御プログラムが動作可能状態に復旧させる。
【０１４５】
なお、本実施形態において、ダウンロードされる複数の関連ファイルには、機器制御プログラムの整合性をテストするテストプログラム（図６に示す整合性テストプログラム６０２）を備える。
【０１４６】
また、複数の関連ファイルには、前記テストプログラムのテスト結果を判断するための判断基準情報（図６に示す整合性テスト判断基準６０９）を備える。
【０１４７】
さらに、複数の関連ファイルには、前記機器制御プログラムに対応する機器が使用中かどうかを問い合わせる問い合わせプログラム（図６に示す使用中問合わせプログラム６０３）を備える。
【０１４８】
また、複数の関連ファイルには、前記機器制御プログラムのＩＤ（図６に示すと、前記機器制御プログラムのバージョン（図６に示すＦＣバージョン６０５）を備える。
【０１４９】
含むことを特徴とする請求項１記載の組込機器。
【０１５０】
さらに、転送プログラムは、他の組込機器から応答される機器構成から機器構成が共通する組込機器が存在するか否かを判断可能（後述する図１０に示すステップ（１００７）とする。
【０１５１】
また、ダウンロード機能によりダウンロードされた前記機器制御プログラムを前記管理情報（図７に示すデータ構造のテーブルとして管理される情報）とともに記憶する記憶手段（図３に示したＨＤ１６２）を備える。なお、ＨＤ１６２以外の不揮発性メモリ媒体であってもよい。
【０１５２】
さらに、ＨＤ１６２は、図７に示すようにいずれかの機器制御プログラムに対して異なるバージョンの機器制御プログラムを識別可能に記憶する。
【０１５３】
さらに、ダウンロード機能を実行させる複数のダウンロードモードからいずれかのダウンロードモードを選択する選択機能を備える。そして、ダウンロードタスク８０１は、図１６に示すような処理を実行する。この際、選択機能により選択されるダウンロードモードに基づいて、前記各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器から自動ダウンロードするタイミング（図１８に示すステップ（１３０７）で判断される）を決定する。
【０１５４】
また、タイミングは、対象となる機器が休止中となる第１のタイミング、対象となる機器の起動する第２のタイミング、対象となる機器の動作を終了するタイミング、操作部からのダウンロードを受け付けたタイミングのいずれかである。
【０１５５】
＜組込機器に新規に周辺機器が接続された場合のＦＣのダウンロード要求処理＞
以下、図９、図１０を参照して、組込機器である画像処理装置１０１に新規に周辺機器（新たな組込機器）が接続された場合の処理を説明する。
【０１５６】
図９は、本実施形態に示す画像処理装置における第１のデータ処理手順の一例を示すフローチャートである。なお、（９０１）〜（９０５）は各ステップを示す。なお、各ステップは、画像処理装置１００に新規接続される機器側の制御部の処理手順に対応する。本処理例は、画像処理装置１００に組込機器が新規接続されたタイミングでＦＣサーバ１０４からＦＣをダウンロードする要求する処理に対応する。
【０１５７】
図１に示した原稿給紙ユニット２５０、スキャナユニット２１０、操作部１５０、カードリーダ１７０、排紙ユニット３７０、給紙ユニット３６０に代表される周辺機器（接続機器）は組込接続が行われる（９０１）。この場合、組込機器である新機器の起動が行われる（９０２）。
【０１５８】
そして、接続機器は起動直後に機器種ＩＤを組込機器である画像処理装置１００のコントローラ部１１０に送信する。
【０１５９】
ここで、もしコントローラ部１１０が機器種ＩＤを送信した接続機器を制御できる状態（制御するためのＦＣをすでに格納しており、当該ＦＣを実行できる状態）であれば起動できることを新機器に対して通知する。
【０１６０】
そこで、ステップ（９０４）で、接続された機器は、コントローラ部１１０からの通知状態を監視して、起動ＯＫであることが通知されているかどうかを判断する。
【０１６１】
そして、起動ＯＫでない場合は、新機器の図示しない制御部は、コントローラ部１１０が起動ＯＫ状態を通知するまで待ち、起動が許可されれば、必要な他タスクの起動や変数の初期化といった起動に必要な処理を行い（９０５）、本処理を終了する。
【０１６２】
図１０は、本実施形態に示す画像処理装置における第２のデータ処理手順の一例を示すフローチャートである。なお、（１００１）〜（１０１１）は各ステップを示す。なお、各ステップは、画像処理装置１００に新規接続される機器側の処理に対応する。また、各ステップは、コントローラ部１１０のＣＰＵ１１２が接続機器管理タスク８０３を実行することで実現される。
【０１６３】
まず、コントローラ部１１０は、図８に示した接続機器管理タスク８０３でその管理を行い、本タスクが起動して、初期化処理を行う（１００１）。
【０１６４】
ここで、図１１に示す接続機器テーブルの初期化も行う。
【０１６５】
図１１は、図１に示したコントローラ部１１０がＤＲＡＭ１１６上で管理する接続機器情報テーブルの一例を示す図である。
【０１６６】
図１１に示す例は、現在接続されている周辺機器のＩＤ１１０１を格納するためのテーブルであり、図１１の例では機器ＩＤ１１０３、１１０４、１１０５を記録している。機器ＩＤ１１０３はＳＣＮ１であり、機器ＩＤ１１０４はＰＲＮ１であり、機器ＩＤ１１０５はＤＦ１である。
【０１６７】
また、初めて接続された機器でその機器を制御するためのＦＣをコントローラ部１１０側がダウンロード中の場合は、ダウンロード中１１０２を表すフラグ１１０７をセットする。
【０１６８】
本例では機器種ＩＤが「ＤＦ１」の機器に関するＦＣを、例えば図１に示したＦＣサーバ１０４からダウンロードして、フラグ１１０７がセットされた状態を示す。
【０１６９】
次に、各周辺機器（接続機器）から送信される機器種ＩＤを受信するのを待つ（１００２）。そして、機器種ＩＤをコントローラ部１１０が受信したら、図１１に示した情報機器テーブルを検索し（１００３）、すでに登録されている機器であるかどうかを確認する（１００４）。
【０１７０】
ここで、もしすでに情報機器テーブルに登録されていると判断した場合は、何も行わず、ステップ（１００２）へ戻る。
【０１７１】
一方、ステップ（１００２）で、情報機器テーブルに登録されていないと判断した場合は、情報機器テーブルに機器種ＩＤ、例えば「ＤＦ１」等を登録する（１００５）。
【０１７２】
次に、図７に示した構成管理情報５０９を検索し（１００６）、接続機器に対応するＦＣがすでに存在するかどうかを判断する（１００７）。
【０１７３】
ここで、もしすでに存在すると判断した場合は、機器制御用のＦＣを起動し（１００８）、起動待ちになっている周辺機器（接続機器）に起動許可を送信して、ステップ（１００２）へ戻る。これにより、接続機器は、図９に示したステップ（９０５）で、起動を行う。
【０１７４】
一方、ステップ（１００７）で、もしＦＣがまだ存在しないと判断した場合は、接続機器情報テーブル（図１１）のダウンロード中１１０２のフラグ１１０７をＯＮ（セット）にすることで更新する（１０１０）。そして、ＦＣサーバ１０４（図１）に対しＦＣダウンロード要求を出し（１０１１）、ステップ（１１０２）へ戻る。
【０１７５】
このようにして組込接続される機器を制御するために必要なＦＣのダウンロードを行う。ダウンロード処理詳細については後述する。
【０１７６】
＜ダウンロード専用モードによる最新ＦＣのダウンロード要求処理＞
上記ダウンロード処理例では、新規に周辺機器が接続された場合のＦＣダウンロード要求処理について説明したが、ここでは図１２を参照して、ユーザが操作部１５０から自発的にＦＣをダウンロードするための手順について説明する。
【０１７７】
図１２は、本実施形態に示す画像処理装置における第３のデータ処理手順の一例を示すフローチャートである。なお、（１２０１）〜（１２０８）は各ステップを示す。なお、各ステップは、画像処理装置１００に新規接続される機器側の処理に対応する。また、各ステップは、コントローラ部１１０のＣＰＵ１１２が接続機器管理タスク８０３を実行することで実現される。なお、本処理は、ＦＣサーバ１０４からＦＣをダウンロードする例である。
【０１７８】
まず、画像処理装置１００の操作部１５０からの指示でダウンロード専用モードに移行する（１２０１）。ここではダウンロード処理を優先して行えるよう、現在使用中のＦＣ（図５の（Ｂ）に示したＦＣ５０７、５０８）はできるだけ停止し入れ替えが行える環境を整える（１２０２）。
【０１７９】
次に、構成管理テーブル（図５の構成管理情報５０９）から現在組込機器が保有するＦＣを検索する（１２０３）。そして、その結果をＦＣサーバ１０４（図１）に送信し（１２０４）、更新が必要なＦＣを検索してもらいその結果をＦＣサーバ１０４から受け取る（１２０５）。
【０１８０】
そして、その結果、更新が必要なＦＣがあるかどうか、すなわちダウンロード可能なコンポーネントがあるかどうかをコントローラ部１１０が判断する（１２０６）。
【０１８１】
ここで、コントローラ部１１０がダウンロード可能なコンポーネントがあると判断した場合は、ＦＣサーバ１０４へダウンロード要求を行い（１２０７）、指定したＦＣのダウンロードを行う。そして、ステップ（１２０８）へ進む。
【０１８２】
一方、ステップ（１２０６）で、ダウンロード可能なコンポーネントがないと判断した場合は、ステップ（１２０８）進む。
【０１８３】
そして、処理が全て終了して、ダウンロード専用モードを抜けるかどうかを判断する（１２０８）。ここで、抜けないと判断した場合は、抜ける状態になるまで待ち、抜けると判断した場合は、処理を終了する。なお、ステップ（１２０７）によるダウンロード処理詳細については後述する。
【０１８４】
＜ダウンロード処理詳細＞
以下、組込機器（画像処理装置１００）に新規に周辺機器が接続された場合のＦＣのダウンロード要求処理と、ダウンロード専用モードによる最新ＦＣのダウンロード要求処理で説明したダウンロード処理についての詳細を図１３を参照して説明する。
【０１８５】
図１３は、本実施形態に示す画像処理装置における第４のデータ処理手順の一例を示すフローチャートである。なお、（１３０１）〜（１３１７）は各ステップを示す。また、各ステップは、コントローラ部１１０のＣＰＵ１１２が接続機器管理タスク８０３を実行することで実現される。
【０１８６】
まず、コントローラ部１１０は、図８に示したダウンロードタスク８０１を起動して、初期化処理を行った後（１３０１）、ＦＣサーバ１０４（図１）からのダウンロード指示待ちとなる（１３０２）。
【０１８７】
そして、ＦＣサーバ１０４からダウンロード指示を受信した時には、一旦ダウンロード許可通知を送信し（１３０３）、ＦＣのダウンロード処理に入る（１３０４）。そして、ダウンロードされたＦＣは、図３に示したＨＤＤ１６２上に格納される。
【０１８８】
次に、ダウンロードしたＦＣと同一の種別情報を持ち、（構成管理情報より）現在使用する設定になっているＦＣに対して、今現在他のＦＣ等から使用されているかどうかを問い合わせる（１３０５）。
【０１８９】
そして、今現在他のＦＣ等から使用されているかどうかを判断し（１３０６）、使用中でないと判断した場合は、ダウンロードしたＦＣが他のＦＣと不整合を起こさないかどうかを確認するための整合性テストを行う（１３０８）。
【０１９０】
一方、ステップ（１３０６）で、指定したＦＣが今現在何らかの処理を行っている最中であると判断した場合は、ＦＣのテストを行うことはできない。そこで、次回Ｓｌｅｅｐ時、起動時、シャットダウン時のいずれかのタイミングまでテスト処理を待つ（１３０７）。
【０１９１】
次に、指定したＦＣがテスト可能な状態であれば、詳細を図１４に示す整合性テスト処理を行い、整合性がＯＫかどうかを判断する（１３０９）。ここで、整合性のテスト結果を評価し整合性に問題がないと判断した場合（ＯＫの場合）、ＦＣサーバ１０４からダウンロードした新しいＦＣを使用するよう変更する（１３１０）。なお、整合性の判断基準は、コントローラ部１１０のＣＰＵ１１２が図６に示した整合性テスト判断基準６０９を参照することで行う。
【０１９２】
また、同時に図５に示した構成管理情報５０９にテストしたＦＣの登録も行う（１３１１）。この時、接続機器情報テーブル（図１１）も確認し、ＦＣサーバ１０４からダウンロードしたＦＣが制御する機器種ＩＤの登録も行う。
【０１９３】
ここで、もし整合性に問題があるという結果が得られた場合、構成管理情報（図５に示す構成管理情報５０８）を参照し（１３１２）、以前の問題のなかったＦＣ構成を再構成して復元する（１３１３）。
【０１９４】
次に、接続機器情報テーブル（図１１）を検索し（１３１４）、ダウンロード中１１０２のフラグ１１０７がＯＮになっている機器があるかどうかを判断する（１３１５）。
【０１９５】
ここで、ダウンロード中１１０２のフラグ１１０７がＯＮになっている機器があると判断した場合は、起動待ち状態になっているので、接続機器情報テーブルのダウンロード中のフラグ１１０７をＯＦＦ状態に更新する（１３１６）。そして、起動許可を示す起動要求を接続機器へ送信する（１３１７）。
【０１９６】
ここまでで一連のダウンロード処理が終わるので再び他のダウンロード要求を受け付けるために、ステップ（１３０２）戻り、ダウンロード指示待ち状態となる。
【０１９７】
図１４は、本実施形態に示す画像処理装置における第５のデータ処理手順の一例を示すフローチャートである。本処理は、図１３に示した整合性テスト処理の詳細手順に対応する。なお、（１３２１）〜（１３２４）は各ステップを示す。また、各ステップは、コントローラ部１１０のＣＰＵ１１２が接続機器管理タスク８０３を実行することで実現される。
【０１９８】
まず、整合性テストは自動モードとマニュアルモードに分類されるので、モードの種別を判断する（１３２１）。ここで、モードが自動モードであると判断した場合は、整合性テストプログラム６０２をすぐに実行して（１３２２）、処理を終了する。
【０１９９】
ここでテストが正常に終了したかどうかの判断を行うがそのための判断材料として図６に示した整合性テスト判断基準６０９を使用する。
【０２００】
一方、ステップ（１３２１）で、モードがマニュアルモードであると判断した場合は、ユーザからのテスト開始指示入力を待ち（１３２３）、テスト指示が入力されたと判断した場合は、ステップ（１３２２）へ進む。
【０２０１】
一方、テスト指示が入力されていないと判断した場合は、ステップ（１３２４）へ進み、テスト結果をＮＧとし、テストを行わずに、本処理を終了する。
【０２０２】
＜ＦＣサーバ１０４上の処理＞
図１５は、本実施形態に示すサーバ装置における第１のデータ処理手順の一例を示すフローチャートである。本処理は、図１に示したＦＣサーバ１０４のデータ処理手順に対応する。なお、（１４０１）〜（１４１１）は各ステップを示す。また、各ステップは、ＦＣサーバ１０４のＣＰＵが記憶されたタスクを実行することで実現される。
【０２０３】
ＦＣサーバ１０４上にはクライアント側の組込機器（画像処理装置１００等）からの要求を受け付けるタスクが存在する。
【０２０４】
このタスクは、まず初期化処理を行い（１４０１）、次にクライアント機器からのリクエスト待ち状態に入る（１４０２）。
【０２０５】
本実施形態では、組込機器から以下の３つのリクエストを受け付ける。もちろんこれは実施形態１つでありこれに限られるものではない。
【０２０６】
第１のリクエストは、組込機器に新規に周辺機器が接続された場合の、機器に対応するＦＣ検索要求である。第２のリクエストは、クライアント側の操作部１５０等をユーザがダウンロード専用モードを選択したことを起因として最新バージョンＦＣ検索要求である。第３のリクエストは特定のＦＣダウンロード要求である。
【０２０７】
ステップ（１４０２）で、画像処理装置１００よりリクエストを受信したら、受信したリクエストの内容が上記第１〜第３のいずれのリクエストかを判断し（１４０３）、リクエストの内容の確認を行う。
【０２０８】
ここで、リクエストの内容が、上記第１のリクエストであると判断した場合は、ステップ（１４０６）へ進み、対応するＦＣをＦＣサーバ１０４内の記憶装置内から探し、ステップ（１４０７）で、その探索結果を画像処理装置１００に返信する。
【０２０９】
一方、ステップ（１４０３）で、リクエストの内容が、上記第２のリクエストであると判断した場合は、ステップ（１４０４）へ進む。そして、最新バージョンに更新可能なＦＣをＦＣサーバ１０４内の記憶装置内から探し、その探索結果を画像処理装置１００に返信する。
【０２１０】
一方、ステップ（１４０３）で、リクエストの内容が、上記第３のリクエストであると判断した場合は、ステップ（１４０８）へ進み、該当するＦＣをＦＣサーバ１０４が持っているかどうかをＦＣサーバ１０４内の記憶装置内から探す。そして、見つかれば、ステップ（１４０９）で、要求を行ったクライアントに対してＦＣ送信要求を出す。
【０２１１】
これにより、図１３に示したステップ（１３０２）で、この通知を受け取り、もしＦＣを受信できる状態であれば、ステップ（１３０３）で、画像処理装置１００がＦＣサーバ１０４に対しダウンロード許可通知を行う。
【０２１２】
ＦＣサーバ１０４は、この結果がダウンロード許可状態であるかを判断して（１４１０）、ダウンロードが許可されていると判断した場合は、具体的なダウンロード処理に入り（１４１１）、ステップ（１４０２）へ戻る。
【０２１３】
一方、ステップ（１４１０）で、ダウンロード許可状態でないと判断した場合は、ステップ（１４０２）へ戻る。
【０２１４】
＜ダウンロードに関する設定の手順＞
以下、図１６を参照してダウンロード処理に関する様々なモード設定手順を説明する。
【０２１５】
図１６は、本実施形態に示す画像処理装置における第６のデータ処理手順の一例を示すフローチャートである。本処理は、ダウンロード処理に関する様々なモード設定に対応する。なお、（１６０１）〜（１６０７）は各ステップを示す。また、各ステップは、コントローラ部１１０のＣＰＵ１１２がメイン処理タスク（８０８）内でダウンロードモード設定処理を実行することで実現される。
【０２１６】
なお、本実施形態において、ＦＣの整合性を自動テストするかマニュアルテストするかの選択をユーザが操作部１５０から行うものとする。もちろんこれは実施形態１つでありこれに限られるものではない。
【０２１７】
まず、コントローラ部１１０の制御により、操作部１５０からの指示でダウンロードに関する設定を行えるモード設定画面に移行する（１６０１）。次に、ユーザは操作部１５０からどのモードの設定を行うか選択する。そして、操作部１５０からユーザがモードとして、「自動テスト、マニュアルテスト選択」を選択しているかどうかをメインタスクが判断する（１００２）。ここでは、ダウンロードに関する複数の設定項目の中から「自動テスト、マニュアルテスト選択」の選択する。これにより、ステップ（１６０２）の判断がＹＥＳとなる。そして、この選択に応じて、メインタスクが、ユーザからの入力が、自動テストなのか、マニュアルテスト選択なのかを判定する（１６０３）。
【０２１８】
一方、ステップ（１６０２）で、「自動テスト、マニュアルテスト選択」以外が選択されているとメインタスクが判断した場合は、ステップ（１６０６）へ進む。そして、ステップ（１６０６）で、設定項目１に関する設定処理（ＯＦＦ／ＯＮのスイッチを設定する処理）を行い、ステップ（１６０７）へ進む。
【０２１９】
ここで、ＦＣの整合性を自動テストするかマニュアルテストするかを使用者が選択し、入力するそして、その入力内容を、メインタスクが判定する（１６０３）。
【０２２０】
そして、使用者が「自動」を選択したとメインタスクが判定した場合は、自動設定であることをＳＲＡＭ１８０に書き込み（１６０４）、「マニュアル」を選択したとメインタスクが判定した場合は、マニュアル設定であることをＳＲＡＭ１８０に書き込む（１６０５）。
【０２２１】
この設定値はダウンロード処理における、図１４に示したステップ（１３２１）で参照される。
【０２２２】
次に、ステップ（１６０７）で、さらなる設定や設定変更を行うべく指示があるかどうかを判断する。ここで、変更等の指示がないと判断した場合は、本処理を終了する。
【０２２３】
一方、ステップ（１６０７）で、変更等の指示があると判断した場合は、ステップ（１６０２）へ戻り、再度どの設定を行うか選択する。
【０２２４】
これにより、画像処理装置１００に新規に組込機器がオプション接続されたり、あるいは、既存の組込機器に代えて、機能拡張された組込機器が接続されたり等のタイミングを捉えて、適正なＦＣをダウンロードすることができる。また、ダウンロードしたＦＣが正常に動作するかどうか、すなわち、整合性を自動的にチェックできるため、不整合なＦＣがダウンロードされて更新されても、不整合であれば、元のＦＣが動作可能な状態に設定できる。
【０２２５】
したがって、新規接続される組込機器に対するＦＣのダウンロード処理負担を権限でき、利便性が向上する。
【０２２６】
〔第２実施形態〕
上記第１実施形態では、画像処理装置１００について必要なＦＣをＦＣサーバ１０４等よりダウンロード処理を実行する場合について説明したが、同一機能を備える複数の画像処理装置から必要なＦＣを同時にダウンロードさせるように構成してもよい。以下、その実施形態について説明する。本実施形態では、画像処理装置１０５からダウンロードするものとする。
【０２２７】
なお、画像処理装置のハードウエア構成は、第１実施形態と同様であるので、以下、第１実施形態との差異を中心として説明する。
【０２２８】
＜ソフトウエア構成＞
図１７は、図３に示したＲＯＭ１１４、ＨＤ１６２に記憶されたファームウエア（モジュール）の物理的配置を示す図である。なお、図５と同一のものには同一の符号を付している。
【０２２９】
なお、図５の（Ａ）は、ＲＯＭ１１４（図３）上のプログラム配置を示す。ＲＯＭ１１４上にはダウンロード、テスト、ダウンロード関連プログラム５０１、接続機器管理プログラム５０３２配置されている。また、ＲＯＭ１１４上には、ダウンロード専用モードプログラム５０３、ダウンロードモード設定処理プログラム５０４、構成管理プログラム５０５が配置されている。
【０２３０】
これらのプログラムはＲＯＭ１１４上に配置されているため基本的に消去されることはない。また、機器構成によってはこれらのプログラムのいずれかをＨＤＤ１６２に配置することも可能である。
【０２３１】
１７０１はコンポーネント転送プログラムで、他の機器（本実施形態では、画像処理装置１０５を例とする）にファームウエアコンポーネントを転送するためのプログラムである。１７０２は機器情報提供プログラムで、自分の機器が他の機器に構成の問い合わに対して、構成情報を回答するプログラムである。
【０２３２】
図５の（Ｂ）は、ＨＤＤ１６２（図３）上のプログラム配置を示す。
【０２３３】
ＨＤＤ１６２上にはＦＣ５０６〜５０８と構成管理情報５０９を格納する。
【０２３４】
本実施形態ではＦＣ５０５は予め機器内に格納された状態で出荷されているものとし、ＦＣ５０７、５０８は後からダウンロードされたものとする。
【０２３５】
なお、ＨＤＤ１６２（図３）上のデータは、ＣＰＵ１１２が読み込み、書き込みが自由に行えるように構成されている。
【０２３６】
図１８は、本実施形態に示す画像処理装置における第７のデータ処理手順の一例を示すフローチャートである。本処理は、ウンロード処理に関する様々なモード設定に対応する。なお、（１３０１）〜（１３１７）は各ステップを示し、図１３と同一のステップには同一のステップ番号を付している。また、（１８０１）から（１８０７）は本実施形態における各ステップを示す。また、各ステップは、コントローラ部１１０のＣＰＵ１１２がダウンロードタスクを実行することで実現される。
【０２３７】
まず、ダウンロードタスク８０１は初期化処理を行った（１３０１）後、ＦＣサーバ１０４（図１）または、他の組込機器（例えば図１の画像処理装置１０５）からのダウンロード指示待ちとなる（１３０２）。
【０２３８】
次に、ステップ（１８０１）で、ダウンロード指示がＦＣサーバ１０４からであるのか、他の機器からのダウンロード指示を受信しているのかを判断する。
【０２３９】
ここで、基本的にコントローラ部１１０からダウンロード要求を行っているので無条件にダウンロード処理に、ステップ（１３０３）へ進む。しかし、他の機器からのダウンロード指示を受信したと判断した場合は、勝手に見知らぬ機器からの要求を受け付けても困るためダウンロードを受け付ける機器かどうかを判断する（１８０２）。ここで、許可されていると判断した場合は、ダウンロード処理に進み、許可されていないと判断した場合は、ダウンロード非許可通知を他機器に送信し（１８０３）、ステップ（１３０２）へ戻り、再びダウンロード指示待ちとなる。
【０２４０】
そして、ＦＣサーバ１０４からダウンロード指示を受信した時には、一旦ダウンロード許可通知をＦＣサーバ１０４に送信し（１３０３）、ＦＣのダウンロード処理に入る（１３０４）。そして、ダウンロードされたＦＣは、図３に示したＨＤＤ１６２上に格納される。なお、他の機器からダウンロード指示を受信した時には、一旦ダウンロード許可通知を他の機器に送信する。
【０２４１】
次に、ダウンロードしたコンポーネントと同一の種別情報を持ち、（構成管理情報より）現在使用する設定になっているＦＣに対して、今現在他のＦＣ等から使用されているかどうかを問い合わせる（１３０５）。
【０２４２】
そして、今現在他のＦＣ等から使用されているかどうかを判断し（１３０６）、使用中でないと判断した場合は、ダウンロードしたＦＣが他のＦＣと不整合を起こさないかどうかを確認するための整合性テストを行う（１３０８）。
【０２４３】
ただし、他機種からＦＣをダウンロードする場合は、他機種でテストを行った後に本ダウンロード処理が行われるため自機でのテストは不要である。
【０２４４】
その場合は、ステップ（１８０４）で、ダウンロード指示がＦＣサーバ１０４からであるのか、他の機器からのダウンロード指示を受信しているのかを判断する。
【０２４５】
そして、他の機器からのダウンロード指示を受信していると判断した場合は、ステップ（１３１０）へ進み、テストを行わず直接ＦＣを更新する（１３１４）。
【０２４６】
一方、ステップ（１８０４）で、逆にＦＣサーバ１０４からのダウンロードの場合は、第１実施形態と同様に、整合性テスト処理に入る（１３０８）。
【０２４７】
一方、ステップ（１３０６）で、指定したＦＣが今現在何らかの処理を行っている最中であると判断した場合は、ＦＣのテストを行うことはできないので、次回Ｓｌｅｅｐ時、起動時、シャットダウン時のタイミングまでテスト処理を待つ（１３０７）。
【０２４８】
次に、指定したＦＣがテスト可能な状態であれば、図１４に示す整合性テスト処理を行い、整合性がＯＫかどうかを判断する（１３０９）。ここで、整合性のテスト結果を評価し整合性に問題がないと判断した場合（ＯＫの場合）、新しいＦＣを使用するよう変更する（１３１０）。
【０２４９】
また、同時に図５に示した構成管理情報５０９にテストしたＦＣの登録も行う（１３１１）。この時接続機器情報テーブル（図１１）も確認し、ダウンロードしたＦＣが制御する機器種ＩＤの登録も行う。
【０２５０】
もし整合性に問題があるという結果が得られた場合、構成管理情報（図５の５０８）を参照し（１３１２）、以前の問題のなかったＦＣ構成を再構成して復元する（１３１３）。
【０２５１】
次に、自機と同じ接続機器構成を持つ他の組み込み機器にもファームウエアコンポーネントを転送するかどうかを判断する（１８０５）。この設定は後述する図２０に示したダウンロードモード設定処理の中で行う。なお、ステップ（１８０５）で、転送しないと判断した場合は、ステップ（１３１４）へ進む。
【０２５２】
ここで、他機種へのＦＣ転送を行うと判断した場合は、同一の機器構成を持つ他の機種を検索する（１８０６）。そして、もし該当する機器が見つかればその機器にファームウエアコンポーネントを送信する（１８０７）。
【０２５３】
次に、接続機器情報テーブル（図１１）を検索し（１３１４）、ダウンロード中１１０２のフラグがＯＮになっている機器があるかどうかを判断する（１３１５）。ここで、ダウンロード中１１０２のフラグがＯＮになっている機器があると判断した場合は、起動待ち状態になっている。そこで、接続機器情報テーブルのダウンロード中フラグをＯＦＦ状態に更新し（１３１６）、起動許可を示す起動要求を接続機器へ送信する（１３１７）。ここまでで一連のダウンロード処理が終わるので再び他のダウンロード要求を受け付けるために、ステップ（１３０２）戻り、ダウンロード指示待ち状態となる。
【０２５４】
＜コントローラの機器情報提供処理＞
前述のダウンロード処理詳細内の、他機種へのＦＣ転送を行う処理において、同一の機器構成を持つ他の機種を検索する（１３１９）時に、機器情報の問い合わせが行われた側の処理について図１１９を参照して詳細に説明する。
【０２５５】
図１９は、本実施形態に示す画像処理装置における第８のデータ処理手順の一例を示すフローチャートである。本処理は、ウンロード処理に関する様々なモード設定に対応する。なお、（１９０１）〜（１９０４）は各ステップを示す。また、各ステップは、コントローラ部１１０のＣＰＵ１１２がダウンロードタスクを実行することで実現される。
【０２５６】
まず、組み込み機器の接続機器の情報を提供するための機器情報提供タスク８０４が起動するとまずは初期化処理を行い（１９０１）、他の機器からの問い合わせ処理を待つ（１９０２）。
【０２５７】
そして、問い合わせ依頼を受け取ったと判断した場合は、接続機器情報テーブル（図１１）を参照し（１９０３）、現在接続されている接続機器の構成を問合せ先に返して（１９０４）、本処理を終了する。
【０２５８】
＜ダウンロードに関する設定の手順＞
以下、図２０を参照して、本実施形態におけるダウンロード処理に関する様々なモード設定手順を説明する。
【０２５９】
なお、第２実施形態ではコンポーネント転送許可設定する第１のモード設定を行う場合がある。また、ＦＣの整合性を自動テストするかマニュアルテストするかの選択を設定する第２のモード設定を行う場合がある。さらに、他機種からのＦＣ自動更新許可設定とを行う第３のモード設定を行うものとがある。なお、これは実施形態１つでありこれに限られるものではない。
【０２６０】
図２０は、本実施形態に示す画像処理装置における第９のデータ処理手順の一例を示すフローチャートである。本処理は、ウンロード処理に関する様々なモード設定に対応する。なお、（２００１）〜（２００７）は各ステップを示す。また、各ステップは、コントローラ部１１０のＣＰＵ１１２がダウンロードタスクを実行することで実現される。
【０２６１】
まず、操作部１５０からの指示でダウンロードに関する設定を行えるモードに移行する（２００１）。そして、次に、上記第１〜第３のいずれかのモードの設定を行うか選択する。
【０２６２】
次に、ステップ（２００２）で、選択されたモードが第１〜第３のいずれであるかを判断する。
【０２６３】
ここで、第１のモードの設定が選択されたと判断した場合は、コンポーネント転送許可設定を行う、行わない（禁止）のいずれかを指定する（１６０３）。
【０２６４】
この設定値は、ダウンロード処理における、自機と同じ接続機器構成を持つ他の組み込み機器にもＦＣを転送するかどうかの判断（図１８に示すステップ（１８０５）の際に参照される。
【０２６５】
一方、ステップ（２００２）で、第２のモードが選択されたと判断した場合は、ＦＣの整合性を自動テストするかマニュアルテストするかの選択を行う（２００３）。この設定値はダウンロード処理における、図１４に示すステップ（１３２１）で参照され、自動モードの場合は整合性テストプログラム６０２をすぐに実行し（１３２２）、マニュアルモードの場合はユーザの確認を待つ（１３２３）。
【０２６６】
一方、ステップ（２００２）で、第３のモードが選択されたと判断した場合は、他機種からのＦＣ自動更新を許可するかどうかの設定を行う（２００５）。
【０２６７】
ここでは、一括して自動更新のＯＦＦ／ＯＮを行うか、あるいはどの機器からの要求は許可するという、機器名や機器のＩＰアドレスなど、機器毎の指定も可能である。
【０２６８】
この設定値はダウンロード処理において、勝手に見知らぬ機器からの要求を受け付けることを防ぐための、図１８に示すステップ（１８０２）のダウンロード許可判断処理で参照され、許可されていればダウンロード処理に進む。しかし、そうでなければダウンロード非許可通知を転送元の機器に送信する（１８０３）。
【０２６９】
そして、それぞれ指定した結果を不揮発性のＳＲＡＭ１８０に書き込み、電源のＯＦＦ／ＯＮに関わらず設定値が消えないようにする（２００６）。
【０２７０】
次に、さらなる設定や設定変更を行うための設定変更指示がなされているかどうかを判断する（２００７）。
【０２７１】
ここで、設定変更を行うを選択したと判断した場合は、ステップ（２００２）へ戻り、再度どの設定を行うか選択する画面で、設定を行う。
【０２７２】
一方、設定変更を行わないを選択した場合は、本処理を終了する。
【０２７３】
これにより、ユーザが操作部１５０から他の画像処理装置から必要なＦＣをダウンロードさせることができる。
【０２７４】
〔第３実施形態〕
上記実施形態では、ネットワーク上の他の画像形成装置からＦＣをダウンロードする場合について説明した。しかし、ＦＣサーバ１０４との応答状態に基づいて、ＦＣをダウンロード可能な他の画像形成装置を検索して、ＦＣのダウンロードを行うように制御してもよい。
【０２７５】
〔第４実施形態〕
また、他の画像処理装置のＦＣダウンロード状態を管理することで、いずれかの画像処理装置におけるＦＣのダウンロードタイミングに同期して、他の画像処理装置のＦＣ更新処理を自動的に実行するように構成してもよい。
【０２７６】
〔第５実施形態〕
以下、図２１、図２２に示すメモリマップを参照して本発明に係る画像処理装置、サーバ装置を含む画像処理システムで読み取り可能なデータ処理プログラムの構成について説明する。
【０２７７】
図２１は、本発明に係る画像処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【０２７８】
図２２は、本発明に係るサーバ装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【０２７９】
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報，作成者等も記憶され、かつ、プログラム読み出し側のＯＳ等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【０２８０】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【０２８１】
本実施形態における図１０、図１２、図１３、図１６、図１８、図１９、図２０、図１５に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやＦＤ等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【０２８２】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０２８３】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０２８４】
従って、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【０２８５】
プログラムを供給するための記憶媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤなどを用いることができる。
【０２８６】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０２８７】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、該ホームページから本発明のコンピュータプログラムそのもの、もしくは、圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバやｆｔｐサーバ等も本発明の請求項に含まれるものである。
【０２８８】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０２８９】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけではない。例えばそのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行う。そして、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２９０】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込ませる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２９１】
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施形態の有機的な組合せを含む）が可能であり、それらを本発明の範囲から排除するものではない。
【０２９２】
本発明の様々な例と実施形態を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではない。
【０２９３】
上記実施形態によれば、新しいＦＣをダウンロードした時、既に機器に存在するファームウエアコンポートネントとの整合性を確認するのが容易になり、機器が不具合により動作できなくなるリスクを低減させ、常にユーザに安定したサービスを提供できる。
【０２９４】
また、特定のＦＣに特定のテストプログラムが付随するため、ＦＣの動作を保障するために必要最小限のテストが行え、最小限の時間でユーザへの動作保障を提供することが可能になる。
【０２９５】
さらに、ＦＣの整合性を確認するために、本体以外の特別な装置を必要としないため、コストが低減される。
【０２９６】
また、ダウンロードの単位をバンドルとしているため、複数のコンポーネントを同時に更新、テストすることが可能になる。
【図面の簡単な説明】
【０２９７】
【図１】本発明の第１実施形態を示す組込機器を適用可能な画像処理システムの一例を示す図である。
【図２】図１に示したリーダ部と、プリンタ部の断面構成を説明する断面図である。
【図３】図１に示した制御装置の構成を説明ブロック図である。
【図４】図１に示した操作部の構成を説明する平面図である。
【図５】図３に示したＲＯＭ、ＨＤに記憶されたファームウエア（モジュール）の物理的配置を示す図である。
【図６】図５に示したＦＣのモジュール構成を説明する図である。
【図７】図５に示した構成管理情報のテーブル構成を説明する図である。
【図８】図１に示した画像処理装置のタスク構成を説明する図である。
【図９】本実施形態に示す画像処理装置における第１のデータ処理手順の一例を示すフローチャートである。
【図１０】本実施形態に示す画像処理装置における第２のデータ処理手順の一例を示すフローチャートである。
【図１１】図１に示したコントローラ部がＤＲＡＭ上で管理する接続機器情報テーブルの一例を示す図である。
【図１２】本実施形態に示す画像処理装置における第３のデータ処理手順の一例を示すフローチャートである。
【図１３】本実施形態に示す画像処理装置における第４のデータ処理手順の一例を示すフローチャートである。
【図１４】本実施形態に示す画像処理装置における第５のデータ処理手順の一例を示すフローチャートである。
【図１５】本実施形態に示すサーバ装置における第１のデータ処理手順の一例を示すフローチャートである。
【図１６】本実施形態に示す画像処理装置における第６のデータ処理手順の一例を示すフローチャートである。
【図１７】図３に示したＲＯＭ、ＨＤに記憶されたファームウエア（モジュール）の物理的配置を示す図である。
【図１８】本実施形態に示す画像処理装置における第７のデータ処理手順の一例を示すフローチャートである。
【図１９】本実施形態に示す画像処理装置における第８のデータ処理手順の一例を示すフローチャートである。
【図２０】本実施形態に示す画像処理装置における第９のデータ処理手順の一例を示すフローチャートである。
【図２１】本発明に係る画像処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【図２２】本発明に係るサーバ装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【符号の説明】
【０２９８】
１００、１０５  画像処理装置
１０２、１０３  ＰＣ
１０４  ＦＣサーバ
１１０  コントローラ部
２００  リーダ部
３００  プリンタ部
【図１】
2007213404.tif 000003
【図２】
2007213404.tif 000004
【図３】
2007213404.tif 000005
【図４】
2007213404.tif 000006
【図５】
2007213404.tif 000007
【図６】
2007213404.tif 000008
【図７】
2007213404.tif 000009
【図８】
2007213404.tif 000010
【図９】
2007213404.tif 000011
【図１０】
2007213404.tif 000012
【図１１】
2007213404.tif 000013
【図１２】
2007213404.tif 000014
【図１３】
2007213404.tif 000015
【図１４】
2007213404.tif 000016
【図１５】
2007213404.tif 000017
【図１６】
2007213404.tif 000018
【図１７】
2007213404.tif 000019
【図１８】
2007213404.tif 000020
【図１９】
2007213404.tif 000021
【図２０】
2007213404.tif 000022
【図２１】
2007213404.tif 000023
【図２２】
2007213404.tif 000024