組込機器、ダウンロード方法、記憶媒体、プログラム
【課題】 外部機器からダウンロードされる機器制御プログラムの適応性を判断して、機器制御プログラムの登録または更新を利便性よく行えることである。
【解決手段】 コントローラ部110は、LAN400を介して各機器を制御する機器制御プログラムおよび機器制御プログラムに関連する複数の関連ファイルをFCサーバ104からダウンロードする。そして、コントローラ部110は、ダウンロードタスクを起動して、ダウンロードされた関連ファイルに基づいて、前記機器制御プログラムの整合性を確認する。そして、その整合性の確認結果に基づいて、ダウンロードされた機器制御プログラムの管理情報を動作可能状態または、ダウンロード前の旧機器制御プログラムが動作可能状態に復旧させること特徴とする。
【解決手段】 コントローラ部110は、LAN400を介して各機器を制御する機器制御プログラムおよび機器制御プログラムに関連する複数の関連ファイルをFCサーバ104からダウンロードする。そして、コントローラ部110は、ダウンロードタスクを起動して、ダウンロードされた関連ファイルに基づいて、前記機器制御プログラムの整合性を確認する。そして、その整合性の確認結果に基づいて、ダウンロードされた機器制御プログラムの管理情報を動作可能状態または、ダウンロード前の旧機器制御プログラムが動作可能状態に復旧させること特徴とする。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、接続される複数の機器の機器制御プログラム部品を組み合わせて処理を行う組合せ機器の機器制御プログラムのダウンロード処理に関するものである。
【背景技術】
【0002】
近年、電子機器において、種々の機能を拡張するために本体に対してハードウエア資源やソフトウエア資源を組み込み可能な電子機器、例えば画像処理装置が実用化されている。
【0003】
このような電子機器において、ハードウエアの高速化、高機能化またはユーザニーズの複雑化に伴い、組み込み機器は非常に柔軟な機器構成を持つことが必須となってきた。
【0004】
一方、これまで組み込み機器用ファームウエアはCPU毎に1つであることを前提とした設計が一般的だった。
【0005】
このため、接続機器構成のバリエーションの数だけファームウエアを作成しなければならない場合があった。
【0006】
あるいは1つのファームウエアだけしか作成しない代わりに全てのバリエーションに対応するよう機器構成よってはオーバースペックなファームウエアを動作させなければならないという問題があった。
【0007】
そこで、近年ファームウエアを機能毎に「コンポーネント」として作成しハードウエアの構成に合わせて必要なものだけロードして使用するということが考案されてきた。
【0008】
しかしながら、ダウンロードできる対象が増えるにつれてFC間の整合性を保証するのが困難になってきた。
【0009】
これに対して従来の整合性保証の例として、下記特許文献1記載の「ローディング方法」がある。
【0010】
この方法によれば、制御装置上で元々実行されているプログラムはそのままに新プログラムをダウンロード、シミュレーションし、その結果をデータベースに送信しデータベース側で適用の可否を判断する。そして、そのデータベース側での判断を終えた後、その結果を制御装置に通知するという方法でプログラムの動作保障を行う提案がなされている。
【0011】
また、従来の整合性保証処理の例として、下記特許文献2記載の「情報記録再生装置およびその動作テスト方法」がある。この方法によれば、機器の制御プログラムの動作を確認するためのテストプログラムを外部から受信して実行することにより動作保障を行うという提案がなされている。
【特許文献1】特開平7−21030号公報
【特許文献2】特開平11−353762号公報
【発明の開示】
【発明が解決しようとする課題】
【0012】
しかしながら、上記特許文献1に示す「ローディング方法」によれば、同じハードウエアの機器が複数台接続されているような環境下でも1台ずつシミュレーションが必要でありプログラムの更新作業に時間と手間がかかってしまう。
【0013】
また、制御装置の他に適用の可否を判断するためのデータベースが必要となる。
【0014】
そもそもスタンドアローンな電子機器上のファームウエアコンポーネント(以下、FCと呼ぶ)の場合であっても、以下の組み合わせがある。
【0015】
ハードウエア機器構成のバリエーションが複雑になっていく環境下では、接続できる機器の数、機器毎の機能バリエーション、各FCのバージョンの組み合わせが発生し、全ての組み合わせでテストすることが困難となってくる。
【0016】
ここで、機能バリエーションとは、同一機器を使用しても機能制限や、別の機器に依存してFCを別々に用意する可能性もある。
【0017】
さらに、カスタマイズの仕組みとして、サードパーティ製のFCも動作できる環境下では、より一層全組み合わせでテストすることが困難となってくる。
【0018】
しかしながら、特許文献2に示す「情報記録再生装置およびその動作テスト方法」によれば、FCのプログラムと共にテストプログラムを受信して、テストを行うことはできるが特にFCとの対応はなされていない。
【0019】
このため、FCの制御内容に必ずしもフィットしたテストができるかどうかが保障されないという問題点と、ダウンロードしたFCの動作確認に必要のないテストまで行い、時間や手間がかかってしまうという問題があった。
【0020】
上記不整合による最悪のケースとして、FCの組み合わせによってはユーザが使用する機器が正常に動作しないということも想定される。
【0021】
特に組み込み機器の場合、機器の種類によっては誤動作により大きな損害や人体への危険をも引き起こしてしまう可能性がある。
【0022】
このため、複雑化するハードウエア構成に対応したファームウエアの協調動作を確実に保障しつつ、迅速に作業が完了する方法が望まれてきた。
【0023】
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、外部機器からダウンロードされる機器制御プログラムの適応性を判断して、機器制御プログラムの登録または更新を利便性よく行える仕組みを提供することである。
【課題を解決するための手段】
【0024】
上記目的を達成する本発明の組込機器は以下に示す構成を備える。
【0025】
接続される複数の機器の機器制御プログラム部品を組み合わせて処理を行う組込機器であって、各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器からダウンロードするダウンロード手段と、前記ダウンロード手段によりダウンロードされた関連ファイルに基づいて、前記機器制御プログラムの整合性を確認する確認手段と、前記確認手段による整合性の確認結果に基づいて、ダウンロードされた前記機器制御プログラムの管理情報を動作可能状態または、ダウンロード前の旧機器制御プログラムが動作可能状態に復旧させるダウンロード制御手段とを有することを特徴とする。
【0026】
上記目的を達成する本発明のダウンロード方法は以下に示す構成を備える。
【0027】
接続される複数の機器の機器制御プログラム部品を組み合わせて処理を行う組込機器におけるダウンロード方法であって、各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器からダウンロードするダウンロードステップと、前記ダウンロードステップによりダウンロードされた関連ファイルに基づいて、前記機器制御プログラムの整合性を確認する確認ステップと、前記確認ステップによる整合性の確認結果に基づいて、ダウンロードされた前記機器制御プログラムの管理情報を動作可能状態または、ダウンロード前の旧機器制御プログラムが動作可能状態に復旧させるダウンロード制御ステップと、
を有することを特徴とする。
【発明の効果】
【0028】
本発明によれば、外部機器からダウンロードされる機器制御プログラムの適応性を判断して、機器制御プログラムの登録または更新を利便性よく行える。
【0029】
また、適応性の判断するファイルを機器制御プログラムと同時にダウンロードできるため、機器制御プログラムの適応性を機器制御プログラムの登録あるいは更新する前にシミュレーションすることができる。
【0030】
さらに、機器制御プログラムの適応性を判定した上で、機器制御プログラムの登録あるいは更新するの可否が決定されるため、不整合な機器制御プログラムが登録または更新されてしまう事態を回避できる。
【0031】
また、不整合な機器制御プログラムをダウンロードしている場合には、同一の機器としてすでに登録されている旧機器制御プログラムを実行させる環境に自動復旧させることができ、ダウンロード処理実行に伴う不具合を未然に防止できる。
【0032】
さらに、機器制御プログラムを適正なタイミングで自動的にダウンロードしたり、ユーザの指定タイミングでダウンロードしたりでき、ダウンロード処理タイミングを調整できるため利便性が向上する。
【発明を実施するための最良の形態】
【0033】
次に本発明を実施するための最良の形態について図面を参照して説明する。
【0034】
<システム構成の説明>
〔第1実施形態〕
<画像入出力装置の全体構成>
図1は、本発明の第1実施形態を示す組込機器を適用可能な画像処理システムの一例を示す図である。なお、本実施形態では、組込機器例として、リーダ部と、プリンタ部とが通信可能な画像処理装置を例としている。また、本実施形態では、複数の機器が組み合わせて、画像処理装置が構成されている例である。
【0035】
図1に示す画像処理装置100において、リーダ部(画像入力装置)200は、原稿画像を光学的に読み取り、画像データに変換する。リーダ部200は、原稿を読取るための機能を持つスキャナユニット210と、原稿用紙を搬送するための機能を持つ原稿給紙ユニット250とが組み合わされて構成される。150は操作部で、個別の機器種ID150−1を備える。また、170はカードリーダ部で、個別の機器種ID170−1を備える。
【0036】
なお、画像処理装置105も同等のハードウエア資源と、ソフトウエア資源を備える。
【0037】
これらのユニットは、通常オプションとして着脱、交換が可能であるため、ユニットの種別を識別するための機器種ID250−1、210−1を個別に備えている。
【0038】
プリンタ部(画像出力装置)300は、記録紙を搬送し、その上に画像データを可視画像として印字して装置外に排紙する。
【0039】
プリンタ部300は、複数種類の記録紙カセットを持つ給紙ユニット360を備える。また、プリンタ部300は、画像データを記録紙に転写、定着させる機能を持つマーキングユニット310と、印字された記録紙をソート、ステイプルして機外へ出力する機能を持つ排紙ユニット370とで構成される。
【0040】
組込機器として機能する排紙ユニット370と給紙ユニット360は、その機能処理能力に応じてさまざまな種類のものに交換または着脱が可能であるため、ユニットの種別を識別するための機器種ID360−1、370−1を備えている。
【0041】
制御装置110は、リーダ部200、プリンタ部300と所定のインタフェースを介して電気的に接続され、さらにLAN 400を介して、PC102,103と所定のプロトコルで通信可能に接続されている。
【0042】
制御装置110は、リーダ部200を制御して、原稿の画像データを読込み、プリンタ部300を制御して画像データを記録用紙に出力してコピー機能を提供する。
【0043】
また、制御装置110は、リーダ部200から読取った画像データを、コードデータに変換し、ネットワーク400を介してホストコンピュータへ送信するスキャナ機能を提供する。
【0044】
さらに、制御装置110は、ホストコンピュータからネットワーク400を介して受信したコードデータを画像データに変換し、プリンタ部300に出力するプリンタ機能を提供する。
【0045】
さらに、ネットワーク400上には制御装置110を制御するためのFCを提供するためのFCサーバ104や他の画像処理装置105が接続される。
【0046】
また、カードリーダ170と通信してカード有無や部門番号を取得し、部門毎のスキャンやプリントの枚数をカウントする。操作部150は、制御装置110に接続され、液晶タッチパネルで構成され、画像入出力システムを操作するためのユーザI/Fを提供する。
【0047】
操作部150やカードリーダ170もまた着脱、交換が可能であることが想定されているため、ユニットの種別を識別するための機器種IDを備える。拡張I/Fはオプションボードを接続することが可能なコネクタである。
【0048】
制御装置110は各ユニットの有無や種類に応じて制御を適宜変更する必要がある。
【0049】
従って、組み合わされたユニットの構成に合わせて適切な制御ソフト(ファームウエア)をFCサーバ104から所定のタイミングでダウンロードしてテストして切り替える必要がある。
【0050】
なお、ファームウエアは、FCサーバ104より、後述するタイミングでダウンロードする。102,103はPCで、いわゆるCPU、ROM、RAM等を備えるコントローラ部と、入出力デバイスを備える。また、このPC102、103は、外部記憶装置、例えばハードディスクに所定のOSがインストールされている。そして、PC102、103は、そのOSを介して、アプリケーションプログラムを実行することで種々のデータ処理を行う。
【0051】
また、PC102、103は、外部記憶装置にインストールされているプリンタドライバを介して、印刷情報を画像処理装置100や、図示しないネットワークプリンタ、あるいはローカル接続されるプリンタに出力可能に構成されている。
【0052】
図2は、図1に示したリーダ部200と、プリンタ部300の断面構成を説明する断面図である。なお、本実施形態では、感光ドラムが4つ併設される4連タンデム型のレーザプリンタエンジンを備える例を示しているが、他の画像形成方式であってもよい。この図により画像入出力装置の仕組みを説明する。
【0053】
図2において、リーダ部200の原稿給紙ユニット250は原稿を先頭順に1枚ずつプラテンガラス211上へ給送し、原稿の読み取り動作終了後、プラテンガラス211上の原稿を排出するものである。
【0054】
原稿がプラテンガラス211上に搬送されると、ランプ212を点灯させ、光学ユニット213の移動を開始させて、原稿を露光走査する。この時の原稿からの反射光は、ミラー214、215、216及びレンズ217によってCCDイメージセンサ(以下CCDという)218へ導かれる。このように、走査された原稿の画像はCCD218によって読み取られる。
【0055】
222はリーダ画像処理回路部であり、CCD218から出力される画像データに所定の画像処理を施し、スキャナI/F140を介して制御装置110へと出力するところである。
【0056】
352はプリンタ画像処理回路部であり、プリンタI/F145を介して制御装置110から送られる画像信号をレーザドライバへと出力するところである。
【0057】
プリンタ部300のレーザドライバ317はレーザ発光部313、314、315、316を駆動するものであり、プリンタ画像処理部352から出力された画像データに応じたレーザ光をレーザ発光部313、314、315、316を発光させる。
【0058】
このレーザ光はミラー340〜351によって感光ドラム325〜328に照射され、感光ドラム325〜328にはレーザ光に応じた潜像が形成される。321〜324は、それぞれブラック(Bk)、イエロー(Y)、シアン(C)、マゼンダ(M)のトナーによって、潜像を現像するための現像器であり、現像された各色のトナーは、用紙に転写されフルカラーのプリントアウトがなされる。
【0059】
給紙カセット360、361及び手差しトレイ362のいずれかより、レーザ光の照射開始と同期したタイミングで給紙された用紙は、レジストローラ333を経て、転写ベルト334上に吸着され、搬送される。
【0060】
そして、感光ドラム325、326、327、328に付着された現像剤を記録紙に転写する。現像剤の乗った記録紙は定着部335に搬送され、定着部335の熱と圧力により現像剤は記像紙に定着される。
【0061】
次に、定着部335を通過した記録紙は排出ローラ336によって排出され、排紙ユニット370は排出された記録紙を束ねて記録紙の仕分けをしたり、仕分けされた記録紙のステイプルしたりする。
【0062】
また、両面記録が設定されている場合は、排出ローラ336のところまで記録紙を搬送した後、排出ローラ336の回転方向を逆転させ、フラッパ337によって再給紙搬送路338へ導く。再給紙搬送路338へ導かれた記録紙は上述したタイミングで転写ベルト334へ給紙される。
【0063】
<制御装置の説明>
図3は、図1に示した制御装置110の構成を説明ブロック図である。
【0064】
図3において、メインコントローラ111は、主にCPU112と、バスコントローラ113、各種I/Fコントローラ回路とから構成される。
【0065】
CPU112とバスコントローラ113は制御装置110全体の動作を制御するものであり、CPU112はROM114やHDD162から読込んだプログラムに基づいて動作する。
【0066】
また、ホストコンピュータ等のPC102、103から受信したPDL(ページ記述言語)コードデータを解釈し、ラスタイメージデータに展開する動作も、このプログラムに記述されており、ソフトウエアによって処理される。
【0067】
バスコントローラ113は、各I/Fから入出力されるデータ転送を制御するものであり、バス競合時の調停やDMAデータ転送の制御を行う。
【0068】
DRAM116はDRAM I/F117によってメインコントローラ111と接続されており、CPU112が動作するためのワークエリアや、画像データを蓄積するためのエリアとして使用される。
【0069】
SRAM180もメインコントローラ111と接続されているが、CPU112が動作するために必要なデータを長期間保持するエリアとして使用される。SRAM180は不揮発メモリであるため電源のOFF/ONに関わらずデータは保持される。
【0070】
Codec118は、DRAM116に蓄積されたラスタイメージデータをMH/MR/MMR/JBIG/JPEG等の方式で圧縮し、また逆に圧縮され蓄積されたコードデータをラスタイメージデータに伸長する。
【0071】
SRAM119はCodec118の一時的なワーク領域として使用される。Codec118はI/F120を介してメインコントローラ111と接続され、DRAM116との間のデータの転送は、バスコントローラ113によって制御されDMA転送される。
【0072】
Graphic Processor135は、DRAM116に蓄積されたラスタイメージデータに対して、画像回転、画像変倍、色空間変換、二値化の処理をそれぞれ行う。
【0073】
SRAM136はGraphic Processor135の一時的なワーク領域として使用される。Graphic Processor135はI/F137を介してメインコントローラ111と接続され、DRAM116との間のデータの転送は、バスコントローラ113によって制御されDMA転送される。
【0074】
Network Contorller121はI/F122によってメインコントローラ111と接続され、コネクタ122によって外部ネットワークと接続される。ネットワークとしては一般的にイーサネット(登録商標)があげられる。
【0075】
汎用高速バス125には、拡張ボードを接続するための拡張コネクタ124とI/O制御部126とが接続される。汎用高速バスとしては、一般的にPCIバスがあげられる。
【0076】
I/O制御部126には、リーダ部200、プリンタ部300の各CPUと制御コマンドを送受信するための調歩同期シリアル通信コントローラ127が2チャンネル装備されており、I/Oバス128によって外部I/F回路140,145に接続されている。
【0077】
パネルI/F132は、LCDコントローラ131に接続され、操作部150上の液晶画面に表示を行うためのI/Fと、ハードキーやタッチパネルキーの入力を行うためのキー入力I/F130とから構成される。
【0078】
操作部150は液晶表示部と液晶表示部上に張り付けられたタッチパネル入力装置と、複数個のハードキーを有する。そして、タッチパネルまたはハードキーにより入力された信号は前述したパネルI/F132を介してCPU112に伝えられ、液晶表示部はパネルI/F520から送られてきた画像データを表示するものである。
【0079】
液晶表示部には、本画像形成装置の操作における機能表示や画像データ等を表示する。
【0080】
リアルタイムクロックモジュール133は、機器内で管理する日付と時刻を更新/保存するためのもので、バックアップ電池134によってバックアップされている。
【0081】
E−IDEインタフェース161は、外部記憶装置を接続するためのものである。本実施形態においては、このI/Fを介してハードディスクドライブ160を接続し、ハードディスク162へ画像データを記憶させたり、ハードディスク162から画像データを読み込む動作をしたりする。
【0082】
画像処理装置100と部門毎のスキャン枚数、プリント枚数を管理する管理装置171を接続するための機能ユニットである。そして、管理装置インタフェース170は、管理装置171へ画像形成装置から制御コマンドを送ったり、管理装置171から画像形成装置へカウンタ情報やイネーブル信号を返信したりするのに使用される。管理装置171はカードリーダ172と接続され、カード毎に固有の部門情報を取得できる。
【0083】
コネクタ142と147は、それぞれリーダ部200とプリンタ部300とに接続され、同調歩同期シリアルI/F(143,148)とビデオI/F(144,149)とから構成される。
【0084】
スキャナI/F140は、コネクタ142を介してリーダ部200と接続され、また、スキャナバス141によってメインコントローラ111と接続されている。
【0085】
そして、スキャナI/F140は、リーダ部200から受け取った画像に対して所定の処理を施す機能を有し、さらに、リーダ部200から送られたビデオ制御信号をもとに生成した制御信号を、スキャナバス141に出力する機能も有する。
【0086】
スキャナバス141からDRAM116へのデータ転送は、バスコントローラ113によって制御される。
【0087】
プリンタI/F145は、コネクタ147を介してプリンタ部300と接続され、また、プリンタバス146によってメインコントローラ111と接続されている。そして、プリンタI/F145は、メインコントローラ111から出力された画像データに所定の処理を施して、プリンタ部300へ出力する機能を有する。さらに、プリンタI/F145は、プリンタ部300から送られたビデオ制御信号をもとに生成した制御信号を、プリンタバス146に出力する機能も有する。
【0088】
DRAM116上に展開されたラスタイメージデータのプリンタ部への転送は、バスコントローラ113によって制御され、プリンタバス146、ビデオI/F149を経由して、プリンタ部300へDMA転送される。
【0089】
<操作部150の説明>
図4は、図1に示した操作部150の構成を説明する平面図である。この操作部150も組込機器の一例であって、各画像処理装置の能力や機能に応じて、いろいろなタイプのものが用意されている。
【0090】
図4において、LCD表示部402は、LCD上にタッチパネルシートが貼られており、システムの操作画面を表示するとともに、表示してあるキーが押されるとその位置情報をコントローラ部110のCPU112に伝える。
【0091】
スタートキー406は原稿画像の読み取り動作を開始する時などに用いる。スタートキー406の中央部には、緑と赤の2色LEDがあり、その色によってスタートキー406が使える状態にあるかどうかを視覚的に識別表示する。
【0092】
ストップキー407は稼動中の動作を止める働きをする。IDキー405は使用者のユーザIDを入力するときに用いる。リセットキー408は操作部150からの設定を初期化するときに用いる。
【0093】
ガイドキー409はタッチパネル上に表示されているキーやハードキーの働きを説明するために用いる。
【0094】
ユーザモードキー403は、本体固有のモード設定を行うときに用いる。テンキー404は置数や倍率を直接入力する際に使用する。クリアキー410はテンキー入力した数値をクリアするときに用いる。操作部電源スイッチ412は、操作部のON/OFFを行うときに用いる。節電キー411は、節電モードに入るときに使用する。
【0095】
<ソフトウエア構成>
図5は、図3に示したROM114、HD162に記憶されたファームウエア(モジュール)の物理的配置を示す図である。
【0096】
なお、図5の(A)は、ROM114(図3)上のプログラム配置を示す。ROM114上にはダウンロード、テスト、バージョンアップ制御プログラムを含むダウンロード関連プログラム501、接続機器管理プログラム502が配置されている。
【0097】
また、ROM114上には、ダウンロード専用モードプログラム503、ダウンロードモード設定処理プログラム504、構成管理プログラム505が配置されている。
【0098】
これらのプログラムはROM114上に配置されているため基本的に消去されることはない。また、機器構成によってはこれらのプログラムのいずれかをHDD162に配置することも可能である。
【0099】
図5の(B)は、HDD162(図3)上のプログラム配置を示す。
【0100】
HDD162上にはFC506とDWFC507、508と構成管理情報509を格納する。
【0101】
本実施形態ではFC506は予め機器内に格納された状態で出荷されているものとし、DWFC507、508は後からFCサーバ104または画像処理装置105等よりダウンロードされたものとする。
【0102】
なお、HDD162(図3)上のデータは、CPU112が読み込み、書き込みが自由に行えるように構成されている。
【0103】
図6は、図5に示したFCのモジュール構成を説明する図である。
【0104】
図6の(A)はDWFC507、508を例とするダウンロード可能なFCの構成を示す。
【0105】
図6の(A)において、ダウンロード可能なDWFC507、508等は、機器制御プログラム(ファームウエア本体)601、整合性テストプログラム602を備える。また、使用問い合わせプログラム603、FC種別情報604、FCバージョン情報605、整合性テスト判断基準609を備える。
【0106】
ここで、使用問い合わせプログラム603とは、このDWFCが現在機器制御に使用されているかどうかを確認するプログラムである。
【0107】
整合性テストプログラム602とは、機器にダウンロードされた時に整合性を確認するためのテストプログラムである。整合性テスト判断基準609とは、整合性テストケースの実行結果が正しいかどうかの判断基準である。
【0108】
整合性テスト判断段基準609は基本的に、整合性テスト開始時のFCのパラメタを定義する事前条件と、整合性テスト後のFCが使用するパラメタの正解値とのセットで構成され、このセットが1また複数含まれている。例えば、あるFCがA〜Eのパラメタを持っていたと仮定する。そしてこのFCはパラメタの値をA、Bを入力とし、ある処理を実行した出力結果がパラメタの値のC、D、Eとして反映され、返却値として返却されると仮定すると、整合性テスト判断基準609はA、Bの値と正しいテストの結果として期待されるC、D、Eの値を含む。他の種類のテストも行う場合には、上記A〜Eのと同様な別のパラメタセットを複数含む。
【0109】
なお、本実施形態では、FCサーバ104または画像処理装置105等からダウンロード可能なDWFC自身が、整合性テストプログラム602や整合性テスト判断基準609をDWFC内に直接含んでいる。
【0110】
しかし、DWFCがどのテストプログラムや判断基準を使用するかというポインタのみを持ち、後からテストプログラムや判断基準を入手することも可能に構成されている。
【0111】
図6の(B)はFC506を例とするダウンロード対象外のFCの構成を示す。
【0112】
次に、FC506を例とするダウンロードを行わないFCの構成を説明する。
【0113】
ダウンロードが行わないFCは、機器制御プログラム(ファームウエア本体)606、FC種別情報607、FCバージョン情報608のみを備える。
【0114】
ダウンロードが行われない場合は、ダウンロード直後の使用問い合わせ処理や整合性テスト(後述)を行わないためこれらのプログラムがFCに含まれている必要がないためである。
【0115】
もちろん、FCとしてそれらのプログラムを含んでいても動作に実害はないが余分なプログラムを含むことによりメモリを多く消費することになる。
【0116】
図7は、図5に示した構成管理情報509のテーブル構成を説明する図である。
【0117】
図7において、構成管理情報509は現在使用中の構成かどうかを示すフラグ707と日時情報702と、機器の持つFC種別情報604,607とFCバージョン605,608とFCが制御する機器が持つ機器種IDを記録する。
【0118】
ただし、特定の機器を制御するFCではない場合機器種IDは記録されない。この例では機器出荷時704には機器内で以下のFCを使用していたことを示す。
【0119】
FC種別708は種別の内容が「C1」で、バージョン情報709はバージョンの内容が「1.8」であることを示す。
【0120】
FC種別710は種別の内容が「C2」で、バージョン情報711はバージョンの内容が「2.1」で、使用機器種ID712は、IDが「SCN1」であることを示す。
【0121】
FC種別713は種別の内容が「C3」で、バージョン情報714はバージョンの内容が「1.3」で、使用機器種ID715は、IDが「PRN1」であることを示す。
【0122】
そして、次のバージョンアップ時705では以下のように全てのFCが以下のようにバージョンアップされている。
【0123】
FC種別716は種別の内容が「C1」で、バージョン情報717はバージョンの内容が「1.9」であることを示す。
【0124】
FC種別718は種別の内容が「C2」で、バージョン情報719はバージョンの内容が「2.2」で、使用機器種ID720は、IDが「SCN1」であることを示す。
【0125】
FC種別721は種別の内容が「C3」で、バージョン情報722はバージョンの内容が「1.4」で、使用機器種ID723は、IDが「PRN1」であることを示す。
【0126】
さらに、その次のバージョンアップ時706では新規に、FC種別732は種別の内容が「C4」で、バージョン情報733はバージョンの内容が「1.0」で、使用機器種ID734は、IDが「DF1」が追加されていることを示す。
【0127】
その他は、FCが以下のようにバージョンアップ、または維持されている。
【0128】
FC種別724は種別の内容が「C1」で、バージョン情報717はバージョンの内容が「2.0」であることを示す。
【0129】
FC種別726は種別の内容が「C2」で、バージョン情報727はバージョンの内容が「2.2」で、使用機器種ID728は、IDが「SCN1」であることを示す。
【0130】
FC種別732は種別の内容が「C3」で、バージョン情報730はバージョンの内容が「1.5」で、使用機器種ID731は、IDが「PRN1」であることを示す。
【0131】
次のバージョンアップ時706では、FC種別724、725はバージョンアップされているが、FC種別726については、前回のバージョンアップ時705と変わっていないことを示す。
【0132】
このように、機器で使用されているFCのバージョンが変わるたびに構成管理情報がHDD162(図3)上に登録される。
【0133】
また、最終的に使用することに決定されたFC群について、種別情報/バージョン情報/使用機器種ID703、日時情報702と共に、現在使用中の構成かどうかを示すフラグ701をセットする。ここで、現在の構成701を使用するかどうかは構成管理の方法に依存する。
【0134】
<実行時のタスク構成>
図8は、図1に示した画像処理装置100のタスク構成を説明する図である。以下、画像処理装置100、105が備えるコントローラ部110のタスク構成を説明する。
【0135】
図8において、接続機器管理タスク803は図1に示した原稿給紙ユニット250、スキャナユニット210、操作部150、カードリーダ170、排紙ユニット370、給紙ユニット360に代表される接続可能な機器の管理を行う。
【0136】
必要に応じてFCサーバ104(図1)に対しFCダウンロード要求を出す。ダウンロードタスク801は、FCサーバ104(図1)や他の組み込み機器からFCをダウンロード行うためのタスクであり、条件に従って構成管理処理807も行う。
【0137】
メイン処理タスク808では、専用のダウンロード画面等の制御を含む各種処理805を行ったり、各種ダウンロードに関するダウンロードモード設定処理806を行ったりする。
【0138】
以下、本実施形態における組込機器の特徴的構成について、図5、図1等を参照して説明する。
【0139】
接続される複数の機器、本実施形態では、図1に示すようにリーダ部200とプリンタ部とを備える画像処理装置100を組込機器の一例とする。ここで、複数の機器とは、原稿給紙ユニット250、スキャナユニット210と、操作部150と、カードリーダ170、排紙ユニット370、給紙ユニット360を備える。
【0140】
そして、画像処理装置100は、上記各機器の機器制御プログラム部品を組み合わせて、例えばコピー処理、プリント処理、ファクシミリ処理、スキャナ処理等、あるいはこれらの複合処理を行う。
【0141】
画像処理装置100は、図8に示すメイン処理タスク808が各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器からダウンロードするダウンロード機能を備える。このダウンロード機能により、所定のプロトコルで機器制御プログラムをFCサーバ104からダウンロードする。
【0142】
そして、ダウンロード機能によりFCサーバ104からダウンロードされた関連ファイルに基づいて、前記機器制御プログラムの整合性を確認する確認機能を実行するダウンロードタスク801を備える。
【0143】
この確認機能は、図13に示すダウンロードタスク処理を実行する。
【0144】
そして、確認機能による整合性の確認結果に基づいて、ダウンロードされた前記機器制御プログラム(FC)の管理情報を動作可能状態または、ダウンロード前の旧機器制御プログラムが動作可能状態に復旧させる。
【0145】
なお、本実施形態において、ダウンロードされる複数の関連ファイルには、機器制御プログラムの整合性をテストするテストプログラム(図6に示す整合性テストプログラム602)を備える。
【0146】
また、複数の関連ファイルには、前記テストプログラムのテスト結果を判断するための判断基準情報(図6に示す整合性テスト判断基準609)を備える。
【0147】
さらに、複数の関連ファイルには、前記機器制御プログラムに対応する機器が使用中かどうかを問い合わせる問い合わせプログラム(図6に示す使用中問合わせプログラム603)を備える。
【0148】
また、複数の関連ファイルには、前記機器制御プログラムのID(図6に示すと、前記機器制御プログラムのバージョン(図6に示すFCバージョン605)を備える。
【0149】
含むことを特徴とする請求項1記載の組込機器。
【0150】
さらに、転送プログラムは、他の組込機器から応答される機器構成から機器構成が共通する組込機器が存在するか否かを判断可能(後述する図10に示すステップ(1007)とする。
【0151】
また、ダウンロード機能によりダウンロードされた前記機器制御プログラムを前記管理情報(図7に示すデータ構造のテーブルとして管理される情報)とともに記憶する記憶手段(図3に示したHD162)を備える。なお、HD162以外の不揮発性メモリ媒体であってもよい。
【0152】
さらに、HD162は、図7に示すようにいずれかの機器制御プログラムに対して異なるバージョンの機器制御プログラムを識別可能に記憶する。
【0153】
さらに、ダウンロード機能を実行させる複数のダウンロードモードからいずれかのダウンロードモードを選択する選択機能を備える。そして、ダウンロードタスク801は、図16に示すような処理を実行する。この際、選択機能により選択されるダウンロードモードに基づいて、前記各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器から自動ダウンロードするタイミング(図18に示すステップ(1307)で判断される)を決定する。
【0154】
また、タイミングは、対象となる機器が休止中となる第1のタイミング、対象となる機器の起動する第2のタイミング、対象となる機器の動作を終了するタイミング、操作部からのダウンロードを受け付けたタイミングのいずれかである。
【0155】
<組込機器に新規に周辺機器が接続された場合のFCのダウンロード要求処理>
以下、図9、図10を参照して、組込機器である画像処理装置101に新規に周辺機器(新たな組込機器)が接続された場合の処理を説明する。
【0156】
図9は、本実施形態に示す画像処理装置における第1のデータ処理手順の一例を示すフローチャートである。なお、(901)〜(905)は各ステップを示す。なお、各ステップは、画像処理装置100に新規接続される機器側の制御部の処理手順に対応する。本処理例は、画像処理装置100に組込機器が新規接続されたタイミングでFCサーバ104からFCをダウンロードする要求する処理に対応する。
【0157】
図1に示した原稿給紙ユニット250、スキャナユニット210、操作部150、カードリーダ170、排紙ユニット370、給紙ユニット360に代表される周辺機器(接続機器)は組込接続が行われる(901)。この場合、組込機器である新機器の起動が行われる(902)。
【0158】
そして、接続機器は起動直後に機器種IDを組込機器である画像処理装置100のコントローラ部110に送信する。
【0159】
ここで、もしコントローラ部110が機器種IDを送信した接続機器を制御できる状態(制御するためのFCをすでに格納しており、当該FCを実行できる状態)であれば起動できることを新機器に対して通知する。
【0160】
そこで、ステップ(904)で、接続された機器は、コントローラ部110からの通知状態を監視して、起動OKであることが通知されているかどうかを判断する。
【0161】
そして、起動OKでない場合は、新機器の図示しない制御部は、コントローラ部110が起動OK状態を通知するまで待ち、起動が許可されれば、必要な他タスクの起動や変数の初期化といった起動に必要な処理を行い(905)、本処理を終了する。
【0162】
図10は、本実施形態に示す画像処理装置における第2のデータ処理手順の一例を示すフローチャートである。なお、(1001)〜(1011)は各ステップを示す。なお、各ステップは、画像処理装置100に新規接続される機器側の処理に対応する。また、各ステップは、コントローラ部110のCPU112が接続機器管理タスク803を実行することで実現される。
【0163】
まず、コントローラ部110は、図8に示した接続機器管理タスク803でその管理を行い、本タスクが起動して、初期化処理を行う(1001)。
【0164】
ここで、図11に示す接続機器テーブルの初期化も行う。
【0165】
図11は、図1に示したコントローラ部110がDRAM116上で管理する接続機器情報テーブルの一例を示す図である。
【0166】
図11に示す例は、現在接続されている周辺機器のID1101を格納するためのテーブルであり、図11の例では機器ID1103、1104、1105を記録している。機器ID1103はSCN1であり、機器ID1104はPRN1であり、機器ID1105はDF1である。
【0167】
また、初めて接続された機器でその機器を制御するためのFCをコントローラ部110側がダウンロード中の場合は、ダウンロード中1102を表すフラグ1107をセットする。
【0168】
本例では機器種IDが「DF1」の機器に関するFCを、例えば図1に示したFCサーバ104からダウンロードして、フラグ1107がセットされた状態を示す。
【0169】
次に、各周辺機器(接続機器)から送信される機器種IDを受信するのを待つ(1002)。そして、機器種IDをコントローラ部110が受信したら、図11に示した情報機器テーブルを検索し(1003)、すでに登録されている機器であるかどうかを確認する(1004)。
【0170】
ここで、もしすでに情報機器テーブルに登録されていると判断した場合は、何も行わず、ステップ(1002)へ戻る。
【0171】
一方、ステップ(1002)で、情報機器テーブルに登録されていないと判断した場合は、情報機器テーブルに機器種ID、例えば「DF1」等を登録する(1005)。
【0172】
次に、図7に示した構成管理情報509を検索し(1006)、接続機器に対応するFCがすでに存在するかどうかを判断する(1007)。
【0173】
ここで、もしすでに存在すると判断した場合は、機器制御用のFCを起動し(1008)、起動待ちになっている周辺機器(接続機器)に起動許可を送信して、ステップ(1002)へ戻る。これにより、接続機器は、図9に示したステップ(905)で、起動を行う。
【0174】
一方、ステップ(1007)で、もしFCがまだ存在しないと判断した場合は、接続機器情報テーブル(図11)のダウンロード中1102のフラグ1107をON(セット)にすることで更新する(1010)。そして、FCサーバ104(図1)に対しFCダウンロード要求を出し(1011)、ステップ(1102)へ戻る。
【0175】
このようにして組込接続される機器を制御するために必要なFCのダウンロードを行う。ダウンロード処理詳細については後述する。
【0176】
<ダウンロード専用モードによる最新FCのダウンロード要求処理>
上記ダウンロード処理例では、新規に周辺機器が接続された場合のFCダウンロード要求処理について説明したが、ここでは図12を参照して、ユーザが操作部150から自発的にFCをダウンロードするための手順について説明する。
【0177】
図12は、本実施形態に示す画像処理装置における第3のデータ処理手順の一例を示すフローチャートである。なお、(1201)〜(1208)は各ステップを示す。なお、各ステップは、画像処理装置100に新規接続される機器側の処理に対応する。また、各ステップは、コントローラ部110のCPU112が接続機器管理タスク803を実行することで実現される。なお、本処理は、FCサーバ104からFCをダウンロードする例である。
【0178】
まず、画像処理装置100の操作部150からの指示でダウンロード専用モードに移行する(1201)。ここではダウンロード処理を優先して行えるよう、現在使用中のFC(図5の(B)に示したFC507、508)はできるだけ停止し入れ替えが行える環境を整える(1202)。
【0179】
次に、構成管理テーブル(図5の構成管理情報509)から現在組込機器が保有するFCを検索する(1203)。そして、その結果をFCサーバ104(図1)に送信し(1204)、更新が必要なFCを検索してもらいその結果をFCサーバ104から受け取る(1205)。
【0180】
そして、その結果、更新が必要なFCがあるかどうか、すなわちダウンロード可能なコンポーネントがあるかどうかをコントローラ部110が判断する(1206)。
【0181】
ここで、コントローラ部110がダウンロード可能なコンポーネントがあると判断した場合は、FCサーバ104へダウンロード要求を行い(1207)、指定したFCのダウンロードを行う。そして、ステップ(1208)へ進む。
【0182】
一方、ステップ(1206)で、ダウンロード可能なコンポーネントがないと判断した場合は、ステップ(1208)進む。
【0183】
そして、処理が全て終了して、ダウンロード専用モードを抜けるかどうかを判断する(1208)。ここで、抜けないと判断した場合は、抜ける状態になるまで待ち、抜けると判断した場合は、処理を終了する。なお、ステップ(1207)によるダウンロード処理詳細については後述する。
【0184】
<ダウンロード処理詳細>
以下、組込機器(画像処理装置100)に新規に周辺機器が接続された場合のFCのダウンロード要求処理と、ダウンロード専用モードによる最新FCのダウンロード要求処理で説明したダウンロード処理についての詳細を図13を参照して説明する。
【0185】
図13は、本実施形態に示す画像処理装置における第4のデータ処理手順の一例を示すフローチャートである。なお、(1301)〜(1317)は各ステップを示す。また、各ステップは、コントローラ部110のCPU112が接続機器管理タスク803を実行することで実現される。
【0186】
まず、コントローラ部110は、図8に示したダウンロードタスク801を起動して、初期化処理を行った後(1301)、FCサーバ104(図1)からのダウンロード指示待ちとなる(1302)。
【0187】
そして、FCサーバ104からダウンロード指示を受信した時には、一旦ダウンロード許可通知を送信し(1303)、FCのダウンロード処理に入る(1304)。そして、ダウンロードされたFCは、図3に示したHDD162上に格納される。
【0188】
次に、ダウンロードしたFCと同一の種別情報を持ち、(構成管理情報より)現在使用する設定になっているFCに対して、今現在他のFC等から使用されているかどうかを問い合わせる(1305)。
【0189】
そして、今現在他のFC等から使用されているかどうかを判断し(1306)、使用中でないと判断した場合は、ダウンロードしたFCが他のFCと不整合を起こさないかどうかを確認するための整合性テストを行う(1308)。
【0190】
一方、ステップ(1306)で、指定したFCが今現在何らかの処理を行っている最中であると判断した場合は、FCのテストを行うことはできない。そこで、次回Sleep時、起動時、シャットダウン時のいずれかのタイミングまでテスト処理を待つ(1307)。
【0191】
次に、指定したFCがテスト可能な状態であれば、詳細を図14に示す整合性テスト処理を行い、整合性がOKかどうかを判断する(1309)。ここで、整合性のテスト結果を評価し整合性に問題がないと判断した場合(OKの場合)、FCサーバ104からダウンロードした新しいFCを使用するよう変更する(1310)。なお、整合性の判断基準は、コントローラ部110のCPU112が図6に示した整合性テスト判断基準609を参照することで行う。
【0192】
また、同時に図5に示した構成管理情報509にテストしたFCの登録も行う(1311)。この時、接続機器情報テーブル(図11)も確認し、FCサーバ104からダウンロードしたFCが制御する機器種IDの登録も行う。
【0193】
ここで、もし整合性に問題があるという結果が得られた場合、構成管理情報(図5に示す構成管理情報508)を参照し(1312)、以前の問題のなかったFC構成を再構成して復元する(1313)。
【0194】
次に、接続機器情報テーブル(図11)を検索し(1314)、ダウンロード中1102のフラグ1107がONになっている機器があるかどうかを判断する(1315)。
【0195】
ここで、ダウンロード中1102のフラグ1107がONになっている機器があると判断した場合は、起動待ち状態になっているので、接続機器情報テーブルのダウンロード中のフラグ1107をOFF状態に更新する(1316)。そして、起動許可を示す起動要求を接続機器へ送信する(1317)。
【0196】
ここまでで一連のダウンロード処理が終わるので再び他のダウンロード要求を受け付けるために、ステップ(1302)戻り、ダウンロード指示待ち状態となる。
【0197】
図14は、本実施形態に示す画像処理装置における第5のデータ処理手順の一例を示すフローチャートである。本処理は、図13に示した整合性テスト処理の詳細手順に対応する。なお、(1321)〜(1324)は各ステップを示す。また、各ステップは、コントローラ部110のCPU112が接続機器管理タスク803を実行することで実現される。
【0198】
まず、整合性テストは自動モードとマニュアルモードに分類されるので、モードの種別を判断する(1321)。ここで、モードが自動モードであると判断した場合は、整合性テストプログラム602をすぐに実行して(1322)、処理を終了する。
【0199】
ここでテストが正常に終了したかどうかの判断を行うがそのための判断材料として図6に示した整合性テスト判断基準609を使用する。
【0200】
一方、ステップ(1321)で、モードがマニュアルモードであると判断した場合は、ユーザからのテスト開始指示入力を待ち(1323)、テスト指示が入力されたと判断した場合は、ステップ(1322)へ進む。
【0201】
一方、テスト指示が入力されていないと判断した場合は、ステップ(1324)へ進み、テスト結果をNGとし、テストを行わずに、本処理を終了する。
【0202】
<FCサーバ104上の処理>
図15は、本実施形態に示すサーバ装置における第1のデータ処理手順の一例を示すフローチャートである。本処理は、図1に示したFCサーバ104のデータ処理手順に対応する。なお、(1401)〜(1411)は各ステップを示す。また、各ステップは、FCサーバ104のCPUが記憶されたタスクを実行することで実現される。
【0203】
FCサーバ104上にはクライアント側の組込機器(画像処理装置100等)からの要求を受け付けるタスクが存在する。
【0204】
このタスクは、まず初期化処理を行い(1401)、次にクライアント機器からのリクエスト待ち状態に入る(1402)。
【0205】
本実施形態では、組込機器から以下の3つのリクエストを受け付ける。もちろんこれは実施形態1つでありこれに限られるものではない。
【0206】
第1のリクエストは、組込機器に新規に周辺機器が接続された場合の、機器に対応するFC検索要求である。第2のリクエストは、クライアント側の操作部150等をユーザがダウンロード専用モードを選択したことを起因として最新バージョンFC検索要求である。第3のリクエストは特定のFCダウンロード要求である。
【0207】
ステップ(1402)で、画像処理装置100よりリクエストを受信したら、受信したリクエストの内容が上記第1〜第3のいずれのリクエストかを判断し(1403)、リクエストの内容の確認を行う。
【0208】
ここで、リクエストの内容が、上記第1のリクエストであると判断した場合は、ステップ(1406)へ進み、対応するFCをFCサーバ104内の記憶装置内から探し、ステップ(1407)で、その探索結果を画像処理装置100に返信する。
【0209】
一方、ステップ(1403)で、リクエストの内容が、上記第2のリクエストであると判断した場合は、ステップ(1404)へ進む。そして、最新バージョンに更新可能なFCをFCサーバ104内の記憶装置内から探し、その探索結果を画像処理装置100に返信する。
【0210】
一方、ステップ(1403)で、リクエストの内容が、上記第3のリクエストであると判断した場合は、ステップ(1408)へ進み、該当するFCをFCサーバ104が持っているかどうかをFCサーバ104内の記憶装置内から探す。そして、見つかれば、ステップ(1409)で、要求を行ったクライアントに対してFC送信要求を出す。
【0211】
これにより、図13に示したステップ(1302)で、この通知を受け取り、もしFCを受信できる状態であれば、ステップ(1303)で、画像処理装置100がFCサーバ104に対しダウンロード許可通知を行う。
【0212】
FCサーバ104は、この結果がダウンロード許可状態であるかを判断して(1410)、ダウンロードが許可されていると判断した場合は、具体的なダウンロード処理に入り(1411)、ステップ(1402)へ戻る。
【0213】
一方、ステップ(1410)で、ダウンロード許可状態でないと判断した場合は、ステップ(1402)へ戻る。
【0214】
<ダウンロードに関する設定の手順>
以下、図16を参照してダウンロード処理に関する様々なモード設定手順を説明する。
【0215】
図16は、本実施形態に示す画像処理装置における第6のデータ処理手順の一例を示すフローチャートである。本処理は、ダウンロード処理に関する様々なモード設定に対応する。なお、(1601)〜(1607)は各ステップを示す。また、各ステップは、コントローラ部110のCPU112がメイン処理タスク(808)内でダウンロードモード設定処理を実行することで実現される。
【0216】
なお、本実施形態において、FCの整合性を自動テストするかマニュアルテストするかの選択をユーザが操作部150から行うものとする。もちろんこれは実施形態1つでありこれに限られるものではない。
【0217】
まず、コントローラ部110の制御により、操作部150からの指示でダウンロードに関する設定を行えるモード設定画面に移行する(1601)。次に、ユーザは操作部150からどのモードの設定を行うか選択する。そして、操作部150からユーザがモードとして、「自動テスト、マニュアルテスト選択」を選択しているかどうかをメインタスクが判断する(1002)。ここでは、ダウンロードに関する複数の設定項目の中から「自動テスト、マニュアルテスト選択」の選択する。これにより、ステップ(1602)の判断がYESとなる。そして、この選択に応じて、メインタスクが、ユーザからの入力が、自動テストなのか、マニュアルテスト選択なのかを判定する(1603)。
【0218】
一方、ステップ(1602)で、「自動テスト、マニュアルテスト選択」以外が選択されているとメインタスクが判断した場合は、ステップ(1606)へ進む。そして、ステップ(1606)で、設定項目1に関する設定処理(OFF/ONのスイッチを設定する処理)を行い、ステップ(1607)へ進む。
【0219】
ここで、FCの整合性を自動テストするかマニュアルテストするかを使用者が選択し、入力するそして、その入力内容を、メインタスクが判定する(1603)。
【0220】
そして、使用者が「自動」を選択したとメインタスクが判定した場合は、自動設定であることをSRAM180に書き込み(1604)、「マニュアル」を選択したとメインタスクが判定した場合は、マニュアル設定であることをSRAM180に書き込む(1605)。
【0221】
この設定値はダウンロード処理における、図14に示したステップ(1321)で参照される。
【0222】
次に、ステップ(1607)で、さらなる設定や設定変更を行うべく指示があるかどうかを判断する。ここで、変更等の指示がないと判断した場合は、本処理を終了する。
【0223】
一方、ステップ(1607)で、変更等の指示があると判断した場合は、ステップ(1602)へ戻り、再度どの設定を行うか選択する。
【0224】
これにより、画像処理装置100に新規に組込機器がオプション接続されたり、あるいは、既存の組込機器に代えて、機能拡張された組込機器が接続されたり等のタイミングを捉えて、適正なFCをダウンロードすることができる。また、ダウンロードしたFCが正常に動作するかどうか、すなわち、整合性を自動的にチェックできるため、不整合なFCがダウンロードされて更新されても、不整合であれば、元のFCが動作可能な状態に設定できる。
【0225】
したがって、新規接続される組込機器に対するFCのダウンロード処理負担を権限でき、利便性が向上する。
【0226】
〔第2実施形態〕
上記第1実施形態では、画像処理装置100について必要なFCをFCサーバ104等よりダウンロード処理を実行する場合について説明したが、同一機能を備える複数の画像処理装置から必要なFCを同時にダウンロードさせるように構成してもよい。以下、その実施形態について説明する。本実施形態では、画像処理装置105からダウンロードするものとする。
【0227】
なお、画像処理装置のハードウエア構成は、第1実施形態と同様であるので、以下、第1実施形態との差異を中心として説明する。
【0228】
<ソフトウエア構成>
図17は、図3に示したROM114、HD162に記憶されたファームウエア(モジュール)の物理的配置を示す図である。なお、図5と同一のものには同一の符号を付している。
【0229】
なお、図5の(A)は、ROM114(図3)上のプログラム配置を示す。ROM114上にはダウンロード、テスト、ダウンロード関連プログラム501、接続機器管理プログラム5032配置されている。また、ROM114上には、ダウンロード専用モードプログラム503、ダウンロードモード設定処理プログラム504、構成管理プログラム505が配置されている。
【0230】
これらのプログラムはROM114上に配置されているため基本的に消去されることはない。また、機器構成によってはこれらのプログラムのいずれかをHDD162に配置することも可能である。
【0231】
1701はコンポーネント転送プログラムで、他の機器(本実施形態では、画像処理装置105を例とする)にファームウエアコンポーネントを転送するためのプログラムである。1702は機器情報提供プログラムで、自分の機器が他の機器に構成の問い合わに対して、構成情報を回答するプログラムである。
【0232】
図5の(B)は、HDD162(図3)上のプログラム配置を示す。
【0233】
HDD162上にはFC506〜508と構成管理情報509を格納する。
【0234】
本実施形態ではFC505は予め機器内に格納された状態で出荷されているものとし、FC507、508は後からダウンロードされたものとする。
【0235】
なお、HDD162(図3)上のデータは、CPU112が読み込み、書き込みが自由に行えるように構成されている。
【0236】
図18は、本実施形態に示す画像処理装置における第7のデータ処理手順の一例を示すフローチャートである。本処理は、ウンロード処理に関する様々なモード設定に対応する。なお、(1301)〜(1317)は各ステップを示し、図13と同一のステップには同一のステップ番号を付している。また、(1801)から(1807)は本実施形態における各ステップを示す。また、各ステップは、コントローラ部110のCPU112がダウンロードタスクを実行することで実現される。
【0237】
まず、ダウンロードタスク801は初期化処理を行った(1301)後、FCサーバ104(図1)または、他の組込機器(例えば図1の画像処理装置105)からのダウンロード指示待ちとなる(1302)。
【0238】
次に、ステップ(1801)で、ダウンロード指示がFCサーバ104からであるのか、他の機器からのダウンロード指示を受信しているのかを判断する。
【0239】
ここで、基本的にコントローラ部110からダウンロード要求を行っているので無条件にダウンロード処理に、ステップ(1303)へ進む。しかし、他の機器からのダウンロード指示を受信したと判断した場合は、勝手に見知らぬ機器からの要求を受け付けても困るためダウンロードを受け付ける機器かどうかを判断する(1802)。ここで、許可されていると判断した場合は、ダウンロード処理に進み、許可されていないと判断した場合は、ダウンロード非許可通知を他機器に送信し(1803)、ステップ(1302)へ戻り、再びダウンロード指示待ちとなる。
【0240】
そして、FCサーバ104からダウンロード指示を受信した時には、一旦ダウンロード許可通知をFCサーバ104に送信し(1303)、FCのダウンロード処理に入る(1304)。そして、ダウンロードされたFCは、図3に示したHDD162上に格納される。なお、他の機器からダウンロード指示を受信した時には、一旦ダウンロード許可通知を他の機器に送信する。
【0241】
次に、ダウンロードしたコンポーネントと同一の種別情報を持ち、(構成管理情報より)現在使用する設定になっているFCに対して、今現在他のFC等から使用されているかどうかを問い合わせる(1305)。
【0242】
そして、今現在他のFC等から使用されているかどうかを判断し(1306)、使用中でないと判断した場合は、ダウンロードしたFCが他のFCと不整合を起こさないかどうかを確認するための整合性テストを行う(1308)。
【0243】
ただし、他機種からFCをダウンロードする場合は、他機種でテストを行った後に本ダウンロード処理が行われるため自機でのテストは不要である。
【0244】
その場合は、ステップ(1804)で、ダウンロード指示がFCサーバ104からであるのか、他の機器からのダウンロード指示を受信しているのかを判断する。
【0245】
そして、他の機器からのダウンロード指示を受信していると判断した場合は、ステップ(1310)へ進み、テストを行わず直接FCを更新する(1314)。
【0246】
一方、ステップ(1804)で、逆にFCサーバ104からのダウンロードの場合は、第1実施形態と同様に、整合性テスト処理に入る(1308)。
【0247】
一方、ステップ(1306)で、指定したFCが今現在何らかの処理を行っている最中であると判断した場合は、FCのテストを行うことはできないので、次回Sleep時、起動時、シャットダウン時のタイミングまでテスト処理を待つ(1307)。
【0248】
次に、指定したFCがテスト可能な状態であれば、図14に示す整合性テスト処理を行い、整合性がOKかどうかを判断する(1309)。ここで、整合性のテスト結果を評価し整合性に問題がないと判断した場合(OKの場合)、新しいFCを使用するよう変更する(1310)。
【0249】
また、同時に図5に示した構成管理情報509にテストしたFCの登録も行う(1311)。この時接続機器情報テーブル(図11)も確認し、ダウンロードしたFCが制御する機器種IDの登録も行う。
【0250】
もし整合性に問題があるという結果が得られた場合、構成管理情報(図5の508)を参照し(1312)、以前の問題のなかったFC構成を再構成して復元する(1313)。
【0251】
次に、自機と同じ接続機器構成を持つ他の組み込み機器にもファームウエアコンポーネントを転送するかどうかを判断する(1805)。この設定は後述する図20に示したダウンロードモード設定処理の中で行う。なお、ステップ(1805)で、転送しないと判断した場合は、ステップ(1314)へ進む。
【0252】
ここで、他機種へのFC転送を行うと判断した場合は、同一の機器構成を持つ他の機種を検索する(1806)。そして、もし該当する機器が見つかればその機器にファームウエアコンポーネントを送信する(1807)。
【0253】
次に、接続機器情報テーブル(図11)を検索し(1314)、ダウンロード中1102のフラグがONになっている機器があるかどうかを判断する(1315)。ここで、ダウンロード中1102のフラグがONになっている機器があると判断した場合は、起動待ち状態になっている。そこで、接続機器情報テーブルのダウンロード中フラグをOFF状態に更新し(1316)、起動許可を示す起動要求を接続機器へ送信する(1317)。ここまでで一連のダウンロード処理が終わるので再び他のダウンロード要求を受け付けるために、ステップ(1302)戻り、ダウンロード指示待ち状態となる。
【0254】
<コントローラの機器情報提供処理>
前述のダウンロード処理詳細内の、他機種へのFC転送を行う処理において、同一の機器構成を持つ他の機種を検索する(1319)時に、機器情報の問い合わせが行われた側の処理について図119を参照して詳細に説明する。
【0255】
図19は、本実施形態に示す画像処理装置における第8のデータ処理手順の一例を示すフローチャートである。本処理は、ウンロード処理に関する様々なモード設定に対応する。なお、(1901)〜(1904)は各ステップを示す。また、各ステップは、コントローラ部110のCPU112がダウンロードタスクを実行することで実現される。
【0256】
まず、組み込み機器の接続機器の情報を提供するための機器情報提供タスク804が起動するとまずは初期化処理を行い(1901)、他の機器からの問い合わせ処理を待つ(1902)。
【0257】
そして、問い合わせ依頼を受け取ったと判断した場合は、接続機器情報テーブル(図11)を参照し(1903)、現在接続されている接続機器の構成を問合せ先に返して(1904)、本処理を終了する。
【0258】
<ダウンロードに関する設定の手順>
以下、図20を参照して、本実施形態におけるダウンロード処理に関する様々なモード設定手順を説明する。
【0259】
なお、第2実施形態ではコンポーネント転送許可設定する第1のモード設定を行う場合がある。また、FCの整合性を自動テストするかマニュアルテストするかの選択を設定する第2のモード設定を行う場合がある。さらに、他機種からのFC自動更新許可設定とを行う第3のモード設定を行うものとがある。なお、これは実施形態1つでありこれに限られるものではない。
【0260】
図20は、本実施形態に示す画像処理装置における第9のデータ処理手順の一例を示すフローチャートである。本処理は、ウンロード処理に関する様々なモード設定に対応する。なお、(2001)〜(2007)は各ステップを示す。また、各ステップは、コントローラ部110のCPU112がダウンロードタスクを実行することで実現される。
【0261】
まず、操作部150からの指示でダウンロードに関する設定を行えるモードに移行する(2001)。そして、次に、上記第1〜第3のいずれかのモードの設定を行うか選択する。
【0262】
次に、ステップ(2002)で、選択されたモードが第1〜第3のいずれであるかを判断する。
【0263】
ここで、第1のモードの設定が選択されたと判断した場合は、コンポーネント転送許可設定を行う、行わない(禁止)のいずれかを指定する(1603)。
【0264】
この設定値は、ダウンロード処理における、自機と同じ接続機器構成を持つ他の組み込み機器にもFCを転送するかどうかの判断(図18に示すステップ(1805)の際に参照される。
【0265】
一方、ステップ(2002)で、第2のモードが選択されたと判断した場合は、FCの整合性を自動テストするかマニュアルテストするかの選択を行う(2003)。この設定値はダウンロード処理における、図14に示すステップ(1321)で参照され、自動モードの場合は整合性テストプログラム602をすぐに実行し(1322)、マニュアルモードの場合はユーザの確認を待つ(1323)。
【0266】
一方、ステップ(2002)で、第3のモードが選択されたと判断した場合は、他機種からのFC自動更新を許可するかどうかの設定を行う(2005)。
【0267】
ここでは、一括して自動更新のOFF/ONを行うか、あるいはどの機器からの要求は許可するという、機器名や機器のIPアドレスなど、機器毎の指定も可能である。
【0268】
この設定値はダウンロード処理において、勝手に見知らぬ機器からの要求を受け付けることを防ぐための、図18に示すステップ(1802)のダウンロード許可判断処理で参照され、許可されていればダウンロード処理に進む。しかし、そうでなければダウンロード非許可通知を転送元の機器に送信する(1803)。
【0269】
そして、それぞれ指定した結果を不揮発性のSRAM180に書き込み、電源のOFF/ONに関わらず設定値が消えないようにする(2006)。
【0270】
次に、さらなる設定や設定変更を行うための設定変更指示がなされているかどうかを判断する(2007)。
【0271】
ここで、設定変更を行うを選択したと判断した場合は、ステップ(2002)へ戻り、再度どの設定を行うか選択する画面で、設定を行う。
【0272】
一方、設定変更を行わないを選択した場合は、本処理を終了する。
【0273】
これにより、ユーザが操作部150から他の画像処理装置から必要なFCをダウンロードさせることができる。
【0274】
〔第3実施形態〕
上記実施形態では、ネットワーク上の他の画像形成装置からFCをダウンロードする場合について説明した。しかし、FCサーバ104との応答状態に基づいて、FCをダウンロード可能な他の画像形成装置を検索して、FCのダウンロードを行うように制御してもよい。
【0275】
〔第4実施形態〕
また、他の画像処理装置のFCダウンロード状態を管理することで、いずれかの画像処理装置におけるFCのダウンロードタイミングに同期して、他の画像処理装置のFC更新処理を自動的に実行するように構成してもよい。
【0276】
〔第5実施形態〕
以下、図21、図22に示すメモリマップを参照して本発明に係る画像処理装置、サーバ装置を含む画像処理システムで読み取り可能なデータ処理プログラムの構成について説明する。
【0277】
図21は、本発明に係る画像処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【0278】
図22は、本発明に係るサーバ装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【0279】
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【0280】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【0281】
本実施形態における図10、図12、図13、図16、図18、図19、図20、図15に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【0282】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【0283】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0284】
従って、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
【0285】
プログラムを供給するための記憶媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVDなどを用いることができる。
【0286】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0287】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、該ホームページから本発明のコンピュータプログラムそのもの、もしくは、圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバやftpサーバ等も本発明の請求項に含まれるものである。
【0288】
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【0289】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけではない。例えばそのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行う。そして、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0290】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込ませる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0291】
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施形態の有機的な組合せを含む)が可能であり、それらを本発明の範囲から排除するものではない。
【0292】
本発明の様々な例と実施形態を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではない。
【0293】
上記実施形態によれば、新しいFCをダウンロードした時、既に機器に存在するファームウエアコンポートネントとの整合性を確認するのが容易になり、機器が不具合により動作できなくなるリスクを低減させ、常にユーザに安定したサービスを提供できる。
【0294】
また、特定のFCに特定のテストプログラムが付随するため、FCの動作を保障するために必要最小限のテストが行え、最小限の時間でユーザへの動作保障を提供することが可能になる。
【0295】
さらに、FCの整合性を確認するために、本体以外の特別な装置を必要としないため、コストが低減される。
【0296】
また、ダウンロードの単位をバンドルとしているため、複数のコンポーネントを同時に更新、テストすることが可能になる。
【図面の簡単な説明】
【0297】
【図1】本発明の第1実施形態を示す組込機器を適用可能な画像処理システムの一例を示す図である。
【図2】図1に示したリーダ部と、プリンタ部の断面構成を説明する断面図である。
【図3】図1に示した制御装置の構成を説明ブロック図である。
【図4】図1に示した操作部の構成を説明する平面図である。
【図5】図3に示したROM、HDに記憶されたファームウエア(モジュール)の物理的配置を示す図である。
【図6】図5に示したFCのモジュール構成を説明する図である。
【図7】図5に示した構成管理情報のテーブル構成を説明する図である。
【図8】図1に示した画像処理装置のタスク構成を説明する図である。
【図9】本実施形態に示す画像処理装置における第1のデータ処理手順の一例を示すフローチャートである。
【図10】本実施形態に示す画像処理装置における第2のデータ処理手順の一例を示すフローチャートである。
【図11】図1に示したコントローラ部がDRAM上で管理する接続機器情報テーブルの一例を示す図である。
【図12】本実施形態に示す画像処理装置における第3のデータ処理手順の一例を示すフローチャートである。
【図13】本実施形態に示す画像処理装置における第4のデータ処理手順の一例を示すフローチャートである。
【図14】本実施形態に示す画像処理装置における第5のデータ処理手順の一例を示すフローチャートである。
【図15】本実施形態に示すサーバ装置における第1のデータ処理手順の一例を示すフローチャートである。
【図16】本実施形態に示す画像処理装置における第6のデータ処理手順の一例を示すフローチャートである。
【図17】図3に示したROM、HDに記憶されたファームウエア(モジュール)の物理的配置を示す図である。
【図18】本実施形態に示す画像処理装置における第7のデータ処理手順の一例を示すフローチャートである。
【図19】本実施形態に示す画像処理装置における第8のデータ処理手順の一例を示すフローチャートである。
【図20】本実施形態に示す画像処理装置における第9のデータ処理手順の一例を示すフローチャートである。
【図21】本発明に係る画像処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【図22】本発明に係るサーバ装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【符号の説明】
【0298】
100、105 画像処理装置
102、103 PC
104 FCサーバ
110 コントローラ部
200 リーダ部
300 プリンタ部
【技術分野】
【0001】
本発明は、接続される複数の機器の機器制御プログラム部品を組み合わせて処理を行う組合せ機器の機器制御プログラムのダウンロード処理に関するものである。
【背景技術】
【0002】
近年、電子機器において、種々の機能を拡張するために本体に対してハードウエア資源やソフトウエア資源を組み込み可能な電子機器、例えば画像処理装置が実用化されている。
【0003】
このような電子機器において、ハードウエアの高速化、高機能化またはユーザニーズの複雑化に伴い、組み込み機器は非常に柔軟な機器構成を持つことが必須となってきた。
【0004】
一方、これまで組み込み機器用ファームウエアはCPU毎に1つであることを前提とした設計が一般的だった。
【0005】
このため、接続機器構成のバリエーションの数だけファームウエアを作成しなければならない場合があった。
【0006】
あるいは1つのファームウエアだけしか作成しない代わりに全てのバリエーションに対応するよう機器構成よってはオーバースペックなファームウエアを動作させなければならないという問題があった。
【0007】
そこで、近年ファームウエアを機能毎に「コンポーネント」として作成しハードウエアの構成に合わせて必要なものだけロードして使用するということが考案されてきた。
【0008】
しかしながら、ダウンロードできる対象が増えるにつれてFC間の整合性を保証するのが困難になってきた。
【0009】
これに対して従来の整合性保証の例として、下記特許文献1記載の「ローディング方法」がある。
【0010】
この方法によれば、制御装置上で元々実行されているプログラムはそのままに新プログラムをダウンロード、シミュレーションし、その結果をデータベースに送信しデータベース側で適用の可否を判断する。そして、そのデータベース側での判断を終えた後、その結果を制御装置に通知するという方法でプログラムの動作保障を行う提案がなされている。
【0011】
また、従来の整合性保証処理の例として、下記特許文献2記載の「情報記録再生装置およびその動作テスト方法」がある。この方法によれば、機器の制御プログラムの動作を確認するためのテストプログラムを外部から受信して実行することにより動作保障を行うという提案がなされている。
【特許文献1】特開平7−21030号公報
【特許文献2】特開平11−353762号公報
【発明の開示】
【発明が解決しようとする課題】
【0012】
しかしながら、上記特許文献1に示す「ローディング方法」によれば、同じハードウエアの機器が複数台接続されているような環境下でも1台ずつシミュレーションが必要でありプログラムの更新作業に時間と手間がかかってしまう。
【0013】
また、制御装置の他に適用の可否を判断するためのデータベースが必要となる。
【0014】
そもそもスタンドアローンな電子機器上のファームウエアコンポーネント(以下、FCと呼ぶ)の場合であっても、以下の組み合わせがある。
【0015】
ハードウエア機器構成のバリエーションが複雑になっていく環境下では、接続できる機器の数、機器毎の機能バリエーション、各FCのバージョンの組み合わせが発生し、全ての組み合わせでテストすることが困難となってくる。
【0016】
ここで、機能バリエーションとは、同一機器を使用しても機能制限や、別の機器に依存してFCを別々に用意する可能性もある。
【0017】
さらに、カスタマイズの仕組みとして、サードパーティ製のFCも動作できる環境下では、より一層全組み合わせでテストすることが困難となってくる。
【0018】
しかしながら、特許文献2に示す「情報記録再生装置およびその動作テスト方法」によれば、FCのプログラムと共にテストプログラムを受信して、テストを行うことはできるが特にFCとの対応はなされていない。
【0019】
このため、FCの制御内容に必ずしもフィットしたテストができるかどうかが保障されないという問題点と、ダウンロードしたFCの動作確認に必要のないテストまで行い、時間や手間がかかってしまうという問題があった。
【0020】
上記不整合による最悪のケースとして、FCの組み合わせによってはユーザが使用する機器が正常に動作しないということも想定される。
【0021】
特に組み込み機器の場合、機器の種類によっては誤動作により大きな損害や人体への危険をも引き起こしてしまう可能性がある。
【0022】
このため、複雑化するハードウエア構成に対応したファームウエアの協調動作を確実に保障しつつ、迅速に作業が完了する方法が望まれてきた。
【0023】
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、外部機器からダウンロードされる機器制御プログラムの適応性を判断して、機器制御プログラムの登録または更新を利便性よく行える仕組みを提供することである。
【課題を解決するための手段】
【0024】
上記目的を達成する本発明の組込機器は以下に示す構成を備える。
【0025】
接続される複数の機器の機器制御プログラム部品を組み合わせて処理を行う組込機器であって、各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器からダウンロードするダウンロード手段と、前記ダウンロード手段によりダウンロードされた関連ファイルに基づいて、前記機器制御プログラムの整合性を確認する確認手段と、前記確認手段による整合性の確認結果に基づいて、ダウンロードされた前記機器制御プログラムの管理情報を動作可能状態または、ダウンロード前の旧機器制御プログラムが動作可能状態に復旧させるダウンロード制御手段とを有することを特徴とする。
【0026】
上記目的を達成する本発明のダウンロード方法は以下に示す構成を備える。
【0027】
接続される複数の機器の機器制御プログラム部品を組み合わせて処理を行う組込機器におけるダウンロード方法であって、各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器からダウンロードするダウンロードステップと、前記ダウンロードステップによりダウンロードされた関連ファイルに基づいて、前記機器制御プログラムの整合性を確認する確認ステップと、前記確認ステップによる整合性の確認結果に基づいて、ダウンロードされた前記機器制御プログラムの管理情報を動作可能状態または、ダウンロード前の旧機器制御プログラムが動作可能状態に復旧させるダウンロード制御ステップと、
を有することを特徴とする。
【発明の効果】
【0028】
本発明によれば、外部機器からダウンロードされる機器制御プログラムの適応性を判断して、機器制御プログラムの登録または更新を利便性よく行える。
【0029】
また、適応性の判断するファイルを機器制御プログラムと同時にダウンロードできるため、機器制御プログラムの適応性を機器制御プログラムの登録あるいは更新する前にシミュレーションすることができる。
【0030】
さらに、機器制御プログラムの適応性を判定した上で、機器制御プログラムの登録あるいは更新するの可否が決定されるため、不整合な機器制御プログラムが登録または更新されてしまう事態を回避できる。
【0031】
また、不整合な機器制御プログラムをダウンロードしている場合には、同一の機器としてすでに登録されている旧機器制御プログラムを実行させる環境に自動復旧させることができ、ダウンロード処理実行に伴う不具合を未然に防止できる。
【0032】
さらに、機器制御プログラムを適正なタイミングで自動的にダウンロードしたり、ユーザの指定タイミングでダウンロードしたりでき、ダウンロード処理タイミングを調整できるため利便性が向上する。
【発明を実施するための最良の形態】
【0033】
次に本発明を実施するための最良の形態について図面を参照して説明する。
【0034】
<システム構成の説明>
〔第1実施形態〕
<画像入出力装置の全体構成>
図1は、本発明の第1実施形態を示す組込機器を適用可能な画像処理システムの一例を示す図である。なお、本実施形態では、組込機器例として、リーダ部と、プリンタ部とが通信可能な画像処理装置を例としている。また、本実施形態では、複数の機器が組み合わせて、画像処理装置が構成されている例である。
【0035】
図1に示す画像処理装置100において、リーダ部(画像入力装置)200は、原稿画像を光学的に読み取り、画像データに変換する。リーダ部200は、原稿を読取るための機能を持つスキャナユニット210と、原稿用紙を搬送するための機能を持つ原稿給紙ユニット250とが組み合わされて構成される。150は操作部で、個別の機器種ID150−1を備える。また、170はカードリーダ部で、個別の機器種ID170−1を備える。
【0036】
なお、画像処理装置105も同等のハードウエア資源と、ソフトウエア資源を備える。
【0037】
これらのユニットは、通常オプションとして着脱、交換が可能であるため、ユニットの種別を識別するための機器種ID250−1、210−1を個別に備えている。
【0038】
プリンタ部(画像出力装置)300は、記録紙を搬送し、その上に画像データを可視画像として印字して装置外に排紙する。
【0039】
プリンタ部300は、複数種類の記録紙カセットを持つ給紙ユニット360を備える。また、プリンタ部300は、画像データを記録紙に転写、定着させる機能を持つマーキングユニット310と、印字された記録紙をソート、ステイプルして機外へ出力する機能を持つ排紙ユニット370とで構成される。
【0040】
組込機器として機能する排紙ユニット370と給紙ユニット360は、その機能処理能力に応じてさまざまな種類のものに交換または着脱が可能であるため、ユニットの種別を識別するための機器種ID360−1、370−1を備えている。
【0041】
制御装置110は、リーダ部200、プリンタ部300と所定のインタフェースを介して電気的に接続され、さらにLAN 400を介して、PC102,103と所定のプロトコルで通信可能に接続されている。
【0042】
制御装置110は、リーダ部200を制御して、原稿の画像データを読込み、プリンタ部300を制御して画像データを記録用紙に出力してコピー機能を提供する。
【0043】
また、制御装置110は、リーダ部200から読取った画像データを、コードデータに変換し、ネットワーク400を介してホストコンピュータへ送信するスキャナ機能を提供する。
【0044】
さらに、制御装置110は、ホストコンピュータからネットワーク400を介して受信したコードデータを画像データに変換し、プリンタ部300に出力するプリンタ機能を提供する。
【0045】
さらに、ネットワーク400上には制御装置110を制御するためのFCを提供するためのFCサーバ104や他の画像処理装置105が接続される。
【0046】
また、カードリーダ170と通信してカード有無や部門番号を取得し、部門毎のスキャンやプリントの枚数をカウントする。操作部150は、制御装置110に接続され、液晶タッチパネルで構成され、画像入出力システムを操作するためのユーザI/Fを提供する。
【0047】
操作部150やカードリーダ170もまた着脱、交換が可能であることが想定されているため、ユニットの種別を識別するための機器種IDを備える。拡張I/Fはオプションボードを接続することが可能なコネクタである。
【0048】
制御装置110は各ユニットの有無や種類に応じて制御を適宜変更する必要がある。
【0049】
従って、組み合わされたユニットの構成に合わせて適切な制御ソフト(ファームウエア)をFCサーバ104から所定のタイミングでダウンロードしてテストして切り替える必要がある。
【0050】
なお、ファームウエアは、FCサーバ104より、後述するタイミングでダウンロードする。102,103はPCで、いわゆるCPU、ROM、RAM等を備えるコントローラ部と、入出力デバイスを備える。また、このPC102、103は、外部記憶装置、例えばハードディスクに所定のOSがインストールされている。そして、PC102、103は、そのOSを介して、アプリケーションプログラムを実行することで種々のデータ処理を行う。
【0051】
また、PC102、103は、外部記憶装置にインストールされているプリンタドライバを介して、印刷情報を画像処理装置100や、図示しないネットワークプリンタ、あるいはローカル接続されるプリンタに出力可能に構成されている。
【0052】
図2は、図1に示したリーダ部200と、プリンタ部300の断面構成を説明する断面図である。なお、本実施形態では、感光ドラムが4つ併設される4連タンデム型のレーザプリンタエンジンを備える例を示しているが、他の画像形成方式であってもよい。この図により画像入出力装置の仕組みを説明する。
【0053】
図2において、リーダ部200の原稿給紙ユニット250は原稿を先頭順に1枚ずつプラテンガラス211上へ給送し、原稿の読み取り動作終了後、プラテンガラス211上の原稿を排出するものである。
【0054】
原稿がプラテンガラス211上に搬送されると、ランプ212を点灯させ、光学ユニット213の移動を開始させて、原稿を露光走査する。この時の原稿からの反射光は、ミラー214、215、216及びレンズ217によってCCDイメージセンサ(以下CCDという)218へ導かれる。このように、走査された原稿の画像はCCD218によって読み取られる。
【0055】
222はリーダ画像処理回路部であり、CCD218から出力される画像データに所定の画像処理を施し、スキャナI/F140を介して制御装置110へと出力するところである。
【0056】
352はプリンタ画像処理回路部であり、プリンタI/F145を介して制御装置110から送られる画像信号をレーザドライバへと出力するところである。
【0057】
プリンタ部300のレーザドライバ317はレーザ発光部313、314、315、316を駆動するものであり、プリンタ画像処理部352から出力された画像データに応じたレーザ光をレーザ発光部313、314、315、316を発光させる。
【0058】
このレーザ光はミラー340〜351によって感光ドラム325〜328に照射され、感光ドラム325〜328にはレーザ光に応じた潜像が形成される。321〜324は、それぞれブラック(Bk)、イエロー(Y)、シアン(C)、マゼンダ(M)のトナーによって、潜像を現像するための現像器であり、現像された各色のトナーは、用紙に転写されフルカラーのプリントアウトがなされる。
【0059】
給紙カセット360、361及び手差しトレイ362のいずれかより、レーザ光の照射開始と同期したタイミングで給紙された用紙は、レジストローラ333を経て、転写ベルト334上に吸着され、搬送される。
【0060】
そして、感光ドラム325、326、327、328に付着された現像剤を記録紙に転写する。現像剤の乗った記録紙は定着部335に搬送され、定着部335の熱と圧力により現像剤は記像紙に定着される。
【0061】
次に、定着部335を通過した記録紙は排出ローラ336によって排出され、排紙ユニット370は排出された記録紙を束ねて記録紙の仕分けをしたり、仕分けされた記録紙のステイプルしたりする。
【0062】
また、両面記録が設定されている場合は、排出ローラ336のところまで記録紙を搬送した後、排出ローラ336の回転方向を逆転させ、フラッパ337によって再給紙搬送路338へ導く。再給紙搬送路338へ導かれた記録紙は上述したタイミングで転写ベルト334へ給紙される。
【0063】
<制御装置の説明>
図3は、図1に示した制御装置110の構成を説明ブロック図である。
【0064】
図3において、メインコントローラ111は、主にCPU112と、バスコントローラ113、各種I/Fコントローラ回路とから構成される。
【0065】
CPU112とバスコントローラ113は制御装置110全体の動作を制御するものであり、CPU112はROM114やHDD162から読込んだプログラムに基づいて動作する。
【0066】
また、ホストコンピュータ等のPC102、103から受信したPDL(ページ記述言語)コードデータを解釈し、ラスタイメージデータに展開する動作も、このプログラムに記述されており、ソフトウエアによって処理される。
【0067】
バスコントローラ113は、各I/Fから入出力されるデータ転送を制御するものであり、バス競合時の調停やDMAデータ転送の制御を行う。
【0068】
DRAM116はDRAM I/F117によってメインコントローラ111と接続されており、CPU112が動作するためのワークエリアや、画像データを蓄積するためのエリアとして使用される。
【0069】
SRAM180もメインコントローラ111と接続されているが、CPU112が動作するために必要なデータを長期間保持するエリアとして使用される。SRAM180は不揮発メモリであるため電源のOFF/ONに関わらずデータは保持される。
【0070】
Codec118は、DRAM116に蓄積されたラスタイメージデータをMH/MR/MMR/JBIG/JPEG等の方式で圧縮し、また逆に圧縮され蓄積されたコードデータをラスタイメージデータに伸長する。
【0071】
SRAM119はCodec118の一時的なワーク領域として使用される。Codec118はI/F120を介してメインコントローラ111と接続され、DRAM116との間のデータの転送は、バスコントローラ113によって制御されDMA転送される。
【0072】
Graphic Processor135は、DRAM116に蓄積されたラスタイメージデータに対して、画像回転、画像変倍、色空間変換、二値化の処理をそれぞれ行う。
【0073】
SRAM136はGraphic Processor135の一時的なワーク領域として使用される。Graphic Processor135はI/F137を介してメインコントローラ111と接続され、DRAM116との間のデータの転送は、バスコントローラ113によって制御されDMA転送される。
【0074】
Network Contorller121はI/F122によってメインコントローラ111と接続され、コネクタ122によって外部ネットワークと接続される。ネットワークとしては一般的にイーサネット(登録商標)があげられる。
【0075】
汎用高速バス125には、拡張ボードを接続するための拡張コネクタ124とI/O制御部126とが接続される。汎用高速バスとしては、一般的にPCIバスがあげられる。
【0076】
I/O制御部126には、リーダ部200、プリンタ部300の各CPUと制御コマンドを送受信するための調歩同期シリアル通信コントローラ127が2チャンネル装備されており、I/Oバス128によって外部I/F回路140,145に接続されている。
【0077】
パネルI/F132は、LCDコントローラ131に接続され、操作部150上の液晶画面に表示を行うためのI/Fと、ハードキーやタッチパネルキーの入力を行うためのキー入力I/F130とから構成される。
【0078】
操作部150は液晶表示部と液晶表示部上に張り付けられたタッチパネル入力装置と、複数個のハードキーを有する。そして、タッチパネルまたはハードキーにより入力された信号は前述したパネルI/F132を介してCPU112に伝えられ、液晶表示部はパネルI/F520から送られてきた画像データを表示するものである。
【0079】
液晶表示部には、本画像形成装置の操作における機能表示や画像データ等を表示する。
【0080】
リアルタイムクロックモジュール133は、機器内で管理する日付と時刻を更新/保存するためのもので、バックアップ電池134によってバックアップされている。
【0081】
E−IDEインタフェース161は、外部記憶装置を接続するためのものである。本実施形態においては、このI/Fを介してハードディスクドライブ160を接続し、ハードディスク162へ画像データを記憶させたり、ハードディスク162から画像データを読み込む動作をしたりする。
【0082】
画像処理装置100と部門毎のスキャン枚数、プリント枚数を管理する管理装置171を接続するための機能ユニットである。そして、管理装置インタフェース170は、管理装置171へ画像形成装置から制御コマンドを送ったり、管理装置171から画像形成装置へカウンタ情報やイネーブル信号を返信したりするのに使用される。管理装置171はカードリーダ172と接続され、カード毎に固有の部門情報を取得できる。
【0083】
コネクタ142と147は、それぞれリーダ部200とプリンタ部300とに接続され、同調歩同期シリアルI/F(143,148)とビデオI/F(144,149)とから構成される。
【0084】
スキャナI/F140は、コネクタ142を介してリーダ部200と接続され、また、スキャナバス141によってメインコントローラ111と接続されている。
【0085】
そして、スキャナI/F140は、リーダ部200から受け取った画像に対して所定の処理を施す機能を有し、さらに、リーダ部200から送られたビデオ制御信号をもとに生成した制御信号を、スキャナバス141に出力する機能も有する。
【0086】
スキャナバス141からDRAM116へのデータ転送は、バスコントローラ113によって制御される。
【0087】
プリンタI/F145は、コネクタ147を介してプリンタ部300と接続され、また、プリンタバス146によってメインコントローラ111と接続されている。そして、プリンタI/F145は、メインコントローラ111から出力された画像データに所定の処理を施して、プリンタ部300へ出力する機能を有する。さらに、プリンタI/F145は、プリンタ部300から送られたビデオ制御信号をもとに生成した制御信号を、プリンタバス146に出力する機能も有する。
【0088】
DRAM116上に展開されたラスタイメージデータのプリンタ部への転送は、バスコントローラ113によって制御され、プリンタバス146、ビデオI/F149を経由して、プリンタ部300へDMA転送される。
【0089】
<操作部150の説明>
図4は、図1に示した操作部150の構成を説明する平面図である。この操作部150も組込機器の一例であって、各画像処理装置の能力や機能に応じて、いろいろなタイプのものが用意されている。
【0090】
図4において、LCD表示部402は、LCD上にタッチパネルシートが貼られており、システムの操作画面を表示するとともに、表示してあるキーが押されるとその位置情報をコントローラ部110のCPU112に伝える。
【0091】
スタートキー406は原稿画像の読み取り動作を開始する時などに用いる。スタートキー406の中央部には、緑と赤の2色LEDがあり、その色によってスタートキー406が使える状態にあるかどうかを視覚的に識別表示する。
【0092】
ストップキー407は稼動中の動作を止める働きをする。IDキー405は使用者のユーザIDを入力するときに用いる。リセットキー408は操作部150からの設定を初期化するときに用いる。
【0093】
ガイドキー409はタッチパネル上に表示されているキーやハードキーの働きを説明するために用いる。
【0094】
ユーザモードキー403は、本体固有のモード設定を行うときに用いる。テンキー404は置数や倍率を直接入力する際に使用する。クリアキー410はテンキー入力した数値をクリアするときに用いる。操作部電源スイッチ412は、操作部のON/OFFを行うときに用いる。節電キー411は、節電モードに入るときに使用する。
【0095】
<ソフトウエア構成>
図5は、図3に示したROM114、HD162に記憶されたファームウエア(モジュール)の物理的配置を示す図である。
【0096】
なお、図5の(A)は、ROM114(図3)上のプログラム配置を示す。ROM114上にはダウンロード、テスト、バージョンアップ制御プログラムを含むダウンロード関連プログラム501、接続機器管理プログラム502が配置されている。
【0097】
また、ROM114上には、ダウンロード専用モードプログラム503、ダウンロードモード設定処理プログラム504、構成管理プログラム505が配置されている。
【0098】
これらのプログラムはROM114上に配置されているため基本的に消去されることはない。また、機器構成によってはこれらのプログラムのいずれかをHDD162に配置することも可能である。
【0099】
図5の(B)は、HDD162(図3)上のプログラム配置を示す。
【0100】
HDD162上にはFC506とDWFC507、508と構成管理情報509を格納する。
【0101】
本実施形態ではFC506は予め機器内に格納された状態で出荷されているものとし、DWFC507、508は後からFCサーバ104または画像処理装置105等よりダウンロードされたものとする。
【0102】
なお、HDD162(図3)上のデータは、CPU112が読み込み、書き込みが自由に行えるように構成されている。
【0103】
図6は、図5に示したFCのモジュール構成を説明する図である。
【0104】
図6の(A)はDWFC507、508を例とするダウンロード可能なFCの構成を示す。
【0105】
図6の(A)において、ダウンロード可能なDWFC507、508等は、機器制御プログラム(ファームウエア本体)601、整合性テストプログラム602を備える。また、使用問い合わせプログラム603、FC種別情報604、FCバージョン情報605、整合性テスト判断基準609を備える。
【0106】
ここで、使用問い合わせプログラム603とは、このDWFCが現在機器制御に使用されているかどうかを確認するプログラムである。
【0107】
整合性テストプログラム602とは、機器にダウンロードされた時に整合性を確認するためのテストプログラムである。整合性テスト判断基準609とは、整合性テストケースの実行結果が正しいかどうかの判断基準である。
【0108】
整合性テスト判断段基準609は基本的に、整合性テスト開始時のFCのパラメタを定義する事前条件と、整合性テスト後のFCが使用するパラメタの正解値とのセットで構成され、このセットが1また複数含まれている。例えば、あるFCがA〜Eのパラメタを持っていたと仮定する。そしてこのFCはパラメタの値をA、Bを入力とし、ある処理を実行した出力結果がパラメタの値のC、D、Eとして反映され、返却値として返却されると仮定すると、整合性テスト判断基準609はA、Bの値と正しいテストの結果として期待されるC、D、Eの値を含む。他の種類のテストも行う場合には、上記A〜Eのと同様な別のパラメタセットを複数含む。
【0109】
なお、本実施形態では、FCサーバ104または画像処理装置105等からダウンロード可能なDWFC自身が、整合性テストプログラム602や整合性テスト判断基準609をDWFC内に直接含んでいる。
【0110】
しかし、DWFCがどのテストプログラムや判断基準を使用するかというポインタのみを持ち、後からテストプログラムや判断基準を入手することも可能に構成されている。
【0111】
図6の(B)はFC506を例とするダウンロード対象外のFCの構成を示す。
【0112】
次に、FC506を例とするダウンロードを行わないFCの構成を説明する。
【0113】
ダウンロードが行わないFCは、機器制御プログラム(ファームウエア本体)606、FC種別情報607、FCバージョン情報608のみを備える。
【0114】
ダウンロードが行われない場合は、ダウンロード直後の使用問い合わせ処理や整合性テスト(後述)を行わないためこれらのプログラムがFCに含まれている必要がないためである。
【0115】
もちろん、FCとしてそれらのプログラムを含んでいても動作に実害はないが余分なプログラムを含むことによりメモリを多く消費することになる。
【0116】
図7は、図5に示した構成管理情報509のテーブル構成を説明する図である。
【0117】
図7において、構成管理情報509は現在使用中の構成かどうかを示すフラグ707と日時情報702と、機器の持つFC種別情報604,607とFCバージョン605,608とFCが制御する機器が持つ機器種IDを記録する。
【0118】
ただし、特定の機器を制御するFCではない場合機器種IDは記録されない。この例では機器出荷時704には機器内で以下のFCを使用していたことを示す。
【0119】
FC種別708は種別の内容が「C1」で、バージョン情報709はバージョンの内容が「1.8」であることを示す。
【0120】
FC種別710は種別の内容が「C2」で、バージョン情報711はバージョンの内容が「2.1」で、使用機器種ID712は、IDが「SCN1」であることを示す。
【0121】
FC種別713は種別の内容が「C3」で、バージョン情報714はバージョンの内容が「1.3」で、使用機器種ID715は、IDが「PRN1」であることを示す。
【0122】
そして、次のバージョンアップ時705では以下のように全てのFCが以下のようにバージョンアップされている。
【0123】
FC種別716は種別の内容が「C1」で、バージョン情報717はバージョンの内容が「1.9」であることを示す。
【0124】
FC種別718は種別の内容が「C2」で、バージョン情報719はバージョンの内容が「2.2」で、使用機器種ID720は、IDが「SCN1」であることを示す。
【0125】
FC種別721は種別の内容が「C3」で、バージョン情報722はバージョンの内容が「1.4」で、使用機器種ID723は、IDが「PRN1」であることを示す。
【0126】
さらに、その次のバージョンアップ時706では新規に、FC種別732は種別の内容が「C4」で、バージョン情報733はバージョンの内容が「1.0」で、使用機器種ID734は、IDが「DF1」が追加されていることを示す。
【0127】
その他は、FCが以下のようにバージョンアップ、または維持されている。
【0128】
FC種別724は種別の内容が「C1」で、バージョン情報717はバージョンの内容が「2.0」であることを示す。
【0129】
FC種別726は種別の内容が「C2」で、バージョン情報727はバージョンの内容が「2.2」で、使用機器種ID728は、IDが「SCN1」であることを示す。
【0130】
FC種別732は種別の内容が「C3」で、バージョン情報730はバージョンの内容が「1.5」で、使用機器種ID731は、IDが「PRN1」であることを示す。
【0131】
次のバージョンアップ時706では、FC種別724、725はバージョンアップされているが、FC種別726については、前回のバージョンアップ時705と変わっていないことを示す。
【0132】
このように、機器で使用されているFCのバージョンが変わるたびに構成管理情報がHDD162(図3)上に登録される。
【0133】
また、最終的に使用することに決定されたFC群について、種別情報/バージョン情報/使用機器種ID703、日時情報702と共に、現在使用中の構成かどうかを示すフラグ701をセットする。ここで、現在の構成701を使用するかどうかは構成管理の方法に依存する。
【0134】
<実行時のタスク構成>
図8は、図1に示した画像処理装置100のタスク構成を説明する図である。以下、画像処理装置100、105が備えるコントローラ部110のタスク構成を説明する。
【0135】
図8において、接続機器管理タスク803は図1に示した原稿給紙ユニット250、スキャナユニット210、操作部150、カードリーダ170、排紙ユニット370、給紙ユニット360に代表される接続可能な機器の管理を行う。
【0136】
必要に応じてFCサーバ104(図1)に対しFCダウンロード要求を出す。ダウンロードタスク801は、FCサーバ104(図1)や他の組み込み機器からFCをダウンロード行うためのタスクであり、条件に従って構成管理処理807も行う。
【0137】
メイン処理タスク808では、専用のダウンロード画面等の制御を含む各種処理805を行ったり、各種ダウンロードに関するダウンロードモード設定処理806を行ったりする。
【0138】
以下、本実施形態における組込機器の特徴的構成について、図5、図1等を参照して説明する。
【0139】
接続される複数の機器、本実施形態では、図1に示すようにリーダ部200とプリンタ部とを備える画像処理装置100を組込機器の一例とする。ここで、複数の機器とは、原稿給紙ユニット250、スキャナユニット210と、操作部150と、カードリーダ170、排紙ユニット370、給紙ユニット360を備える。
【0140】
そして、画像処理装置100は、上記各機器の機器制御プログラム部品を組み合わせて、例えばコピー処理、プリント処理、ファクシミリ処理、スキャナ処理等、あるいはこれらの複合処理を行う。
【0141】
画像処理装置100は、図8に示すメイン処理タスク808が各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器からダウンロードするダウンロード機能を備える。このダウンロード機能により、所定のプロトコルで機器制御プログラムをFCサーバ104からダウンロードする。
【0142】
そして、ダウンロード機能によりFCサーバ104からダウンロードされた関連ファイルに基づいて、前記機器制御プログラムの整合性を確認する確認機能を実行するダウンロードタスク801を備える。
【0143】
この確認機能は、図13に示すダウンロードタスク処理を実行する。
【0144】
そして、確認機能による整合性の確認結果に基づいて、ダウンロードされた前記機器制御プログラム(FC)の管理情報を動作可能状態または、ダウンロード前の旧機器制御プログラムが動作可能状態に復旧させる。
【0145】
なお、本実施形態において、ダウンロードされる複数の関連ファイルには、機器制御プログラムの整合性をテストするテストプログラム(図6に示す整合性テストプログラム602)を備える。
【0146】
また、複数の関連ファイルには、前記テストプログラムのテスト結果を判断するための判断基準情報(図6に示す整合性テスト判断基準609)を備える。
【0147】
さらに、複数の関連ファイルには、前記機器制御プログラムに対応する機器が使用中かどうかを問い合わせる問い合わせプログラム(図6に示す使用中問合わせプログラム603)を備える。
【0148】
また、複数の関連ファイルには、前記機器制御プログラムのID(図6に示すと、前記機器制御プログラムのバージョン(図6に示すFCバージョン605)を備える。
【0149】
含むことを特徴とする請求項1記載の組込機器。
【0150】
さらに、転送プログラムは、他の組込機器から応答される機器構成から機器構成が共通する組込機器が存在するか否かを判断可能(後述する図10に示すステップ(1007)とする。
【0151】
また、ダウンロード機能によりダウンロードされた前記機器制御プログラムを前記管理情報(図7に示すデータ構造のテーブルとして管理される情報)とともに記憶する記憶手段(図3に示したHD162)を備える。なお、HD162以外の不揮発性メモリ媒体であってもよい。
【0152】
さらに、HD162は、図7に示すようにいずれかの機器制御プログラムに対して異なるバージョンの機器制御プログラムを識別可能に記憶する。
【0153】
さらに、ダウンロード機能を実行させる複数のダウンロードモードからいずれかのダウンロードモードを選択する選択機能を備える。そして、ダウンロードタスク801は、図16に示すような処理を実行する。この際、選択機能により選択されるダウンロードモードに基づいて、前記各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器から自動ダウンロードするタイミング(図18に示すステップ(1307)で判断される)を決定する。
【0154】
また、タイミングは、対象となる機器が休止中となる第1のタイミング、対象となる機器の起動する第2のタイミング、対象となる機器の動作を終了するタイミング、操作部からのダウンロードを受け付けたタイミングのいずれかである。
【0155】
<組込機器に新規に周辺機器が接続された場合のFCのダウンロード要求処理>
以下、図9、図10を参照して、組込機器である画像処理装置101に新規に周辺機器(新たな組込機器)が接続された場合の処理を説明する。
【0156】
図9は、本実施形態に示す画像処理装置における第1のデータ処理手順の一例を示すフローチャートである。なお、(901)〜(905)は各ステップを示す。なお、各ステップは、画像処理装置100に新規接続される機器側の制御部の処理手順に対応する。本処理例は、画像処理装置100に組込機器が新規接続されたタイミングでFCサーバ104からFCをダウンロードする要求する処理に対応する。
【0157】
図1に示した原稿給紙ユニット250、スキャナユニット210、操作部150、カードリーダ170、排紙ユニット370、給紙ユニット360に代表される周辺機器(接続機器)は組込接続が行われる(901)。この場合、組込機器である新機器の起動が行われる(902)。
【0158】
そして、接続機器は起動直後に機器種IDを組込機器である画像処理装置100のコントローラ部110に送信する。
【0159】
ここで、もしコントローラ部110が機器種IDを送信した接続機器を制御できる状態(制御するためのFCをすでに格納しており、当該FCを実行できる状態)であれば起動できることを新機器に対して通知する。
【0160】
そこで、ステップ(904)で、接続された機器は、コントローラ部110からの通知状態を監視して、起動OKであることが通知されているかどうかを判断する。
【0161】
そして、起動OKでない場合は、新機器の図示しない制御部は、コントローラ部110が起動OK状態を通知するまで待ち、起動が許可されれば、必要な他タスクの起動や変数の初期化といった起動に必要な処理を行い(905)、本処理を終了する。
【0162】
図10は、本実施形態に示す画像処理装置における第2のデータ処理手順の一例を示すフローチャートである。なお、(1001)〜(1011)は各ステップを示す。なお、各ステップは、画像処理装置100に新規接続される機器側の処理に対応する。また、各ステップは、コントローラ部110のCPU112が接続機器管理タスク803を実行することで実現される。
【0163】
まず、コントローラ部110は、図8に示した接続機器管理タスク803でその管理を行い、本タスクが起動して、初期化処理を行う(1001)。
【0164】
ここで、図11に示す接続機器テーブルの初期化も行う。
【0165】
図11は、図1に示したコントローラ部110がDRAM116上で管理する接続機器情報テーブルの一例を示す図である。
【0166】
図11に示す例は、現在接続されている周辺機器のID1101を格納するためのテーブルであり、図11の例では機器ID1103、1104、1105を記録している。機器ID1103はSCN1であり、機器ID1104はPRN1であり、機器ID1105はDF1である。
【0167】
また、初めて接続された機器でその機器を制御するためのFCをコントローラ部110側がダウンロード中の場合は、ダウンロード中1102を表すフラグ1107をセットする。
【0168】
本例では機器種IDが「DF1」の機器に関するFCを、例えば図1に示したFCサーバ104からダウンロードして、フラグ1107がセットされた状態を示す。
【0169】
次に、各周辺機器(接続機器)から送信される機器種IDを受信するのを待つ(1002)。そして、機器種IDをコントローラ部110が受信したら、図11に示した情報機器テーブルを検索し(1003)、すでに登録されている機器であるかどうかを確認する(1004)。
【0170】
ここで、もしすでに情報機器テーブルに登録されていると判断した場合は、何も行わず、ステップ(1002)へ戻る。
【0171】
一方、ステップ(1002)で、情報機器テーブルに登録されていないと判断した場合は、情報機器テーブルに機器種ID、例えば「DF1」等を登録する(1005)。
【0172】
次に、図7に示した構成管理情報509を検索し(1006)、接続機器に対応するFCがすでに存在するかどうかを判断する(1007)。
【0173】
ここで、もしすでに存在すると判断した場合は、機器制御用のFCを起動し(1008)、起動待ちになっている周辺機器(接続機器)に起動許可を送信して、ステップ(1002)へ戻る。これにより、接続機器は、図9に示したステップ(905)で、起動を行う。
【0174】
一方、ステップ(1007)で、もしFCがまだ存在しないと判断した場合は、接続機器情報テーブル(図11)のダウンロード中1102のフラグ1107をON(セット)にすることで更新する(1010)。そして、FCサーバ104(図1)に対しFCダウンロード要求を出し(1011)、ステップ(1102)へ戻る。
【0175】
このようにして組込接続される機器を制御するために必要なFCのダウンロードを行う。ダウンロード処理詳細については後述する。
【0176】
<ダウンロード専用モードによる最新FCのダウンロード要求処理>
上記ダウンロード処理例では、新規に周辺機器が接続された場合のFCダウンロード要求処理について説明したが、ここでは図12を参照して、ユーザが操作部150から自発的にFCをダウンロードするための手順について説明する。
【0177】
図12は、本実施形態に示す画像処理装置における第3のデータ処理手順の一例を示すフローチャートである。なお、(1201)〜(1208)は各ステップを示す。なお、各ステップは、画像処理装置100に新規接続される機器側の処理に対応する。また、各ステップは、コントローラ部110のCPU112が接続機器管理タスク803を実行することで実現される。なお、本処理は、FCサーバ104からFCをダウンロードする例である。
【0178】
まず、画像処理装置100の操作部150からの指示でダウンロード専用モードに移行する(1201)。ここではダウンロード処理を優先して行えるよう、現在使用中のFC(図5の(B)に示したFC507、508)はできるだけ停止し入れ替えが行える環境を整える(1202)。
【0179】
次に、構成管理テーブル(図5の構成管理情報509)から現在組込機器が保有するFCを検索する(1203)。そして、その結果をFCサーバ104(図1)に送信し(1204)、更新が必要なFCを検索してもらいその結果をFCサーバ104から受け取る(1205)。
【0180】
そして、その結果、更新が必要なFCがあるかどうか、すなわちダウンロード可能なコンポーネントがあるかどうかをコントローラ部110が判断する(1206)。
【0181】
ここで、コントローラ部110がダウンロード可能なコンポーネントがあると判断した場合は、FCサーバ104へダウンロード要求を行い(1207)、指定したFCのダウンロードを行う。そして、ステップ(1208)へ進む。
【0182】
一方、ステップ(1206)で、ダウンロード可能なコンポーネントがないと判断した場合は、ステップ(1208)進む。
【0183】
そして、処理が全て終了して、ダウンロード専用モードを抜けるかどうかを判断する(1208)。ここで、抜けないと判断した場合は、抜ける状態になるまで待ち、抜けると判断した場合は、処理を終了する。なお、ステップ(1207)によるダウンロード処理詳細については後述する。
【0184】
<ダウンロード処理詳細>
以下、組込機器(画像処理装置100)に新規に周辺機器が接続された場合のFCのダウンロード要求処理と、ダウンロード専用モードによる最新FCのダウンロード要求処理で説明したダウンロード処理についての詳細を図13を参照して説明する。
【0185】
図13は、本実施形態に示す画像処理装置における第4のデータ処理手順の一例を示すフローチャートである。なお、(1301)〜(1317)は各ステップを示す。また、各ステップは、コントローラ部110のCPU112が接続機器管理タスク803を実行することで実現される。
【0186】
まず、コントローラ部110は、図8に示したダウンロードタスク801を起動して、初期化処理を行った後(1301)、FCサーバ104(図1)からのダウンロード指示待ちとなる(1302)。
【0187】
そして、FCサーバ104からダウンロード指示を受信した時には、一旦ダウンロード許可通知を送信し(1303)、FCのダウンロード処理に入る(1304)。そして、ダウンロードされたFCは、図3に示したHDD162上に格納される。
【0188】
次に、ダウンロードしたFCと同一の種別情報を持ち、(構成管理情報より)現在使用する設定になっているFCに対して、今現在他のFC等から使用されているかどうかを問い合わせる(1305)。
【0189】
そして、今現在他のFC等から使用されているかどうかを判断し(1306)、使用中でないと判断した場合は、ダウンロードしたFCが他のFCと不整合を起こさないかどうかを確認するための整合性テストを行う(1308)。
【0190】
一方、ステップ(1306)で、指定したFCが今現在何らかの処理を行っている最中であると判断した場合は、FCのテストを行うことはできない。そこで、次回Sleep時、起動時、シャットダウン時のいずれかのタイミングまでテスト処理を待つ(1307)。
【0191】
次に、指定したFCがテスト可能な状態であれば、詳細を図14に示す整合性テスト処理を行い、整合性がOKかどうかを判断する(1309)。ここで、整合性のテスト結果を評価し整合性に問題がないと判断した場合(OKの場合)、FCサーバ104からダウンロードした新しいFCを使用するよう変更する(1310)。なお、整合性の判断基準は、コントローラ部110のCPU112が図6に示した整合性テスト判断基準609を参照することで行う。
【0192】
また、同時に図5に示した構成管理情報509にテストしたFCの登録も行う(1311)。この時、接続機器情報テーブル(図11)も確認し、FCサーバ104からダウンロードしたFCが制御する機器種IDの登録も行う。
【0193】
ここで、もし整合性に問題があるという結果が得られた場合、構成管理情報(図5に示す構成管理情報508)を参照し(1312)、以前の問題のなかったFC構成を再構成して復元する(1313)。
【0194】
次に、接続機器情報テーブル(図11)を検索し(1314)、ダウンロード中1102のフラグ1107がONになっている機器があるかどうかを判断する(1315)。
【0195】
ここで、ダウンロード中1102のフラグ1107がONになっている機器があると判断した場合は、起動待ち状態になっているので、接続機器情報テーブルのダウンロード中のフラグ1107をOFF状態に更新する(1316)。そして、起動許可を示す起動要求を接続機器へ送信する(1317)。
【0196】
ここまでで一連のダウンロード処理が終わるので再び他のダウンロード要求を受け付けるために、ステップ(1302)戻り、ダウンロード指示待ち状態となる。
【0197】
図14は、本実施形態に示す画像処理装置における第5のデータ処理手順の一例を示すフローチャートである。本処理は、図13に示した整合性テスト処理の詳細手順に対応する。なお、(1321)〜(1324)は各ステップを示す。また、各ステップは、コントローラ部110のCPU112が接続機器管理タスク803を実行することで実現される。
【0198】
まず、整合性テストは自動モードとマニュアルモードに分類されるので、モードの種別を判断する(1321)。ここで、モードが自動モードであると判断した場合は、整合性テストプログラム602をすぐに実行して(1322)、処理を終了する。
【0199】
ここでテストが正常に終了したかどうかの判断を行うがそのための判断材料として図6に示した整合性テスト判断基準609を使用する。
【0200】
一方、ステップ(1321)で、モードがマニュアルモードであると判断した場合は、ユーザからのテスト開始指示入力を待ち(1323)、テスト指示が入力されたと判断した場合は、ステップ(1322)へ進む。
【0201】
一方、テスト指示が入力されていないと判断した場合は、ステップ(1324)へ進み、テスト結果をNGとし、テストを行わずに、本処理を終了する。
【0202】
<FCサーバ104上の処理>
図15は、本実施形態に示すサーバ装置における第1のデータ処理手順の一例を示すフローチャートである。本処理は、図1に示したFCサーバ104のデータ処理手順に対応する。なお、(1401)〜(1411)は各ステップを示す。また、各ステップは、FCサーバ104のCPUが記憶されたタスクを実行することで実現される。
【0203】
FCサーバ104上にはクライアント側の組込機器(画像処理装置100等)からの要求を受け付けるタスクが存在する。
【0204】
このタスクは、まず初期化処理を行い(1401)、次にクライアント機器からのリクエスト待ち状態に入る(1402)。
【0205】
本実施形態では、組込機器から以下の3つのリクエストを受け付ける。もちろんこれは実施形態1つでありこれに限られるものではない。
【0206】
第1のリクエストは、組込機器に新規に周辺機器が接続された場合の、機器に対応するFC検索要求である。第2のリクエストは、クライアント側の操作部150等をユーザがダウンロード専用モードを選択したことを起因として最新バージョンFC検索要求である。第3のリクエストは特定のFCダウンロード要求である。
【0207】
ステップ(1402)で、画像処理装置100よりリクエストを受信したら、受信したリクエストの内容が上記第1〜第3のいずれのリクエストかを判断し(1403)、リクエストの内容の確認を行う。
【0208】
ここで、リクエストの内容が、上記第1のリクエストであると判断した場合は、ステップ(1406)へ進み、対応するFCをFCサーバ104内の記憶装置内から探し、ステップ(1407)で、その探索結果を画像処理装置100に返信する。
【0209】
一方、ステップ(1403)で、リクエストの内容が、上記第2のリクエストであると判断した場合は、ステップ(1404)へ進む。そして、最新バージョンに更新可能なFCをFCサーバ104内の記憶装置内から探し、その探索結果を画像処理装置100に返信する。
【0210】
一方、ステップ(1403)で、リクエストの内容が、上記第3のリクエストであると判断した場合は、ステップ(1408)へ進み、該当するFCをFCサーバ104が持っているかどうかをFCサーバ104内の記憶装置内から探す。そして、見つかれば、ステップ(1409)で、要求を行ったクライアントに対してFC送信要求を出す。
【0211】
これにより、図13に示したステップ(1302)で、この通知を受け取り、もしFCを受信できる状態であれば、ステップ(1303)で、画像処理装置100がFCサーバ104に対しダウンロード許可通知を行う。
【0212】
FCサーバ104は、この結果がダウンロード許可状態であるかを判断して(1410)、ダウンロードが許可されていると判断した場合は、具体的なダウンロード処理に入り(1411)、ステップ(1402)へ戻る。
【0213】
一方、ステップ(1410)で、ダウンロード許可状態でないと判断した場合は、ステップ(1402)へ戻る。
【0214】
<ダウンロードに関する設定の手順>
以下、図16を参照してダウンロード処理に関する様々なモード設定手順を説明する。
【0215】
図16は、本実施形態に示す画像処理装置における第6のデータ処理手順の一例を示すフローチャートである。本処理は、ダウンロード処理に関する様々なモード設定に対応する。なお、(1601)〜(1607)は各ステップを示す。また、各ステップは、コントローラ部110のCPU112がメイン処理タスク(808)内でダウンロードモード設定処理を実行することで実現される。
【0216】
なお、本実施形態において、FCの整合性を自動テストするかマニュアルテストするかの選択をユーザが操作部150から行うものとする。もちろんこれは実施形態1つでありこれに限られるものではない。
【0217】
まず、コントローラ部110の制御により、操作部150からの指示でダウンロードに関する設定を行えるモード設定画面に移行する(1601)。次に、ユーザは操作部150からどのモードの設定を行うか選択する。そして、操作部150からユーザがモードとして、「自動テスト、マニュアルテスト選択」を選択しているかどうかをメインタスクが判断する(1002)。ここでは、ダウンロードに関する複数の設定項目の中から「自動テスト、マニュアルテスト選択」の選択する。これにより、ステップ(1602)の判断がYESとなる。そして、この選択に応じて、メインタスクが、ユーザからの入力が、自動テストなのか、マニュアルテスト選択なのかを判定する(1603)。
【0218】
一方、ステップ(1602)で、「自動テスト、マニュアルテスト選択」以外が選択されているとメインタスクが判断した場合は、ステップ(1606)へ進む。そして、ステップ(1606)で、設定項目1に関する設定処理(OFF/ONのスイッチを設定する処理)を行い、ステップ(1607)へ進む。
【0219】
ここで、FCの整合性を自動テストするかマニュアルテストするかを使用者が選択し、入力するそして、その入力内容を、メインタスクが判定する(1603)。
【0220】
そして、使用者が「自動」を選択したとメインタスクが判定した場合は、自動設定であることをSRAM180に書き込み(1604)、「マニュアル」を選択したとメインタスクが判定した場合は、マニュアル設定であることをSRAM180に書き込む(1605)。
【0221】
この設定値はダウンロード処理における、図14に示したステップ(1321)で参照される。
【0222】
次に、ステップ(1607)で、さらなる設定や設定変更を行うべく指示があるかどうかを判断する。ここで、変更等の指示がないと判断した場合は、本処理を終了する。
【0223】
一方、ステップ(1607)で、変更等の指示があると判断した場合は、ステップ(1602)へ戻り、再度どの設定を行うか選択する。
【0224】
これにより、画像処理装置100に新規に組込機器がオプション接続されたり、あるいは、既存の組込機器に代えて、機能拡張された組込機器が接続されたり等のタイミングを捉えて、適正なFCをダウンロードすることができる。また、ダウンロードしたFCが正常に動作するかどうか、すなわち、整合性を自動的にチェックできるため、不整合なFCがダウンロードされて更新されても、不整合であれば、元のFCが動作可能な状態に設定できる。
【0225】
したがって、新規接続される組込機器に対するFCのダウンロード処理負担を権限でき、利便性が向上する。
【0226】
〔第2実施形態〕
上記第1実施形態では、画像処理装置100について必要なFCをFCサーバ104等よりダウンロード処理を実行する場合について説明したが、同一機能を備える複数の画像処理装置から必要なFCを同時にダウンロードさせるように構成してもよい。以下、その実施形態について説明する。本実施形態では、画像処理装置105からダウンロードするものとする。
【0227】
なお、画像処理装置のハードウエア構成は、第1実施形態と同様であるので、以下、第1実施形態との差異を中心として説明する。
【0228】
<ソフトウエア構成>
図17は、図3に示したROM114、HD162に記憶されたファームウエア(モジュール)の物理的配置を示す図である。なお、図5と同一のものには同一の符号を付している。
【0229】
なお、図5の(A)は、ROM114(図3)上のプログラム配置を示す。ROM114上にはダウンロード、テスト、ダウンロード関連プログラム501、接続機器管理プログラム5032配置されている。また、ROM114上には、ダウンロード専用モードプログラム503、ダウンロードモード設定処理プログラム504、構成管理プログラム505が配置されている。
【0230】
これらのプログラムはROM114上に配置されているため基本的に消去されることはない。また、機器構成によってはこれらのプログラムのいずれかをHDD162に配置することも可能である。
【0231】
1701はコンポーネント転送プログラムで、他の機器(本実施形態では、画像処理装置105を例とする)にファームウエアコンポーネントを転送するためのプログラムである。1702は機器情報提供プログラムで、自分の機器が他の機器に構成の問い合わに対して、構成情報を回答するプログラムである。
【0232】
図5の(B)は、HDD162(図3)上のプログラム配置を示す。
【0233】
HDD162上にはFC506〜508と構成管理情報509を格納する。
【0234】
本実施形態ではFC505は予め機器内に格納された状態で出荷されているものとし、FC507、508は後からダウンロードされたものとする。
【0235】
なお、HDD162(図3)上のデータは、CPU112が読み込み、書き込みが自由に行えるように構成されている。
【0236】
図18は、本実施形態に示す画像処理装置における第7のデータ処理手順の一例を示すフローチャートである。本処理は、ウンロード処理に関する様々なモード設定に対応する。なお、(1301)〜(1317)は各ステップを示し、図13と同一のステップには同一のステップ番号を付している。また、(1801)から(1807)は本実施形態における各ステップを示す。また、各ステップは、コントローラ部110のCPU112がダウンロードタスクを実行することで実現される。
【0237】
まず、ダウンロードタスク801は初期化処理を行った(1301)後、FCサーバ104(図1)または、他の組込機器(例えば図1の画像処理装置105)からのダウンロード指示待ちとなる(1302)。
【0238】
次に、ステップ(1801)で、ダウンロード指示がFCサーバ104からであるのか、他の機器からのダウンロード指示を受信しているのかを判断する。
【0239】
ここで、基本的にコントローラ部110からダウンロード要求を行っているので無条件にダウンロード処理に、ステップ(1303)へ進む。しかし、他の機器からのダウンロード指示を受信したと判断した場合は、勝手に見知らぬ機器からの要求を受け付けても困るためダウンロードを受け付ける機器かどうかを判断する(1802)。ここで、許可されていると判断した場合は、ダウンロード処理に進み、許可されていないと判断した場合は、ダウンロード非許可通知を他機器に送信し(1803)、ステップ(1302)へ戻り、再びダウンロード指示待ちとなる。
【0240】
そして、FCサーバ104からダウンロード指示を受信した時には、一旦ダウンロード許可通知をFCサーバ104に送信し(1303)、FCのダウンロード処理に入る(1304)。そして、ダウンロードされたFCは、図3に示したHDD162上に格納される。なお、他の機器からダウンロード指示を受信した時には、一旦ダウンロード許可通知を他の機器に送信する。
【0241】
次に、ダウンロードしたコンポーネントと同一の種別情報を持ち、(構成管理情報より)現在使用する設定になっているFCに対して、今現在他のFC等から使用されているかどうかを問い合わせる(1305)。
【0242】
そして、今現在他のFC等から使用されているかどうかを判断し(1306)、使用中でないと判断した場合は、ダウンロードしたFCが他のFCと不整合を起こさないかどうかを確認するための整合性テストを行う(1308)。
【0243】
ただし、他機種からFCをダウンロードする場合は、他機種でテストを行った後に本ダウンロード処理が行われるため自機でのテストは不要である。
【0244】
その場合は、ステップ(1804)で、ダウンロード指示がFCサーバ104からであるのか、他の機器からのダウンロード指示を受信しているのかを判断する。
【0245】
そして、他の機器からのダウンロード指示を受信していると判断した場合は、ステップ(1310)へ進み、テストを行わず直接FCを更新する(1314)。
【0246】
一方、ステップ(1804)で、逆にFCサーバ104からのダウンロードの場合は、第1実施形態と同様に、整合性テスト処理に入る(1308)。
【0247】
一方、ステップ(1306)で、指定したFCが今現在何らかの処理を行っている最中であると判断した場合は、FCのテストを行うことはできないので、次回Sleep時、起動時、シャットダウン時のタイミングまでテスト処理を待つ(1307)。
【0248】
次に、指定したFCがテスト可能な状態であれば、図14に示す整合性テスト処理を行い、整合性がOKかどうかを判断する(1309)。ここで、整合性のテスト結果を評価し整合性に問題がないと判断した場合(OKの場合)、新しいFCを使用するよう変更する(1310)。
【0249】
また、同時に図5に示した構成管理情報509にテストしたFCの登録も行う(1311)。この時接続機器情報テーブル(図11)も確認し、ダウンロードしたFCが制御する機器種IDの登録も行う。
【0250】
もし整合性に問題があるという結果が得られた場合、構成管理情報(図5の508)を参照し(1312)、以前の問題のなかったFC構成を再構成して復元する(1313)。
【0251】
次に、自機と同じ接続機器構成を持つ他の組み込み機器にもファームウエアコンポーネントを転送するかどうかを判断する(1805)。この設定は後述する図20に示したダウンロードモード設定処理の中で行う。なお、ステップ(1805)で、転送しないと判断した場合は、ステップ(1314)へ進む。
【0252】
ここで、他機種へのFC転送を行うと判断した場合は、同一の機器構成を持つ他の機種を検索する(1806)。そして、もし該当する機器が見つかればその機器にファームウエアコンポーネントを送信する(1807)。
【0253】
次に、接続機器情報テーブル(図11)を検索し(1314)、ダウンロード中1102のフラグがONになっている機器があるかどうかを判断する(1315)。ここで、ダウンロード中1102のフラグがONになっている機器があると判断した場合は、起動待ち状態になっている。そこで、接続機器情報テーブルのダウンロード中フラグをOFF状態に更新し(1316)、起動許可を示す起動要求を接続機器へ送信する(1317)。ここまでで一連のダウンロード処理が終わるので再び他のダウンロード要求を受け付けるために、ステップ(1302)戻り、ダウンロード指示待ち状態となる。
【0254】
<コントローラの機器情報提供処理>
前述のダウンロード処理詳細内の、他機種へのFC転送を行う処理において、同一の機器構成を持つ他の機種を検索する(1319)時に、機器情報の問い合わせが行われた側の処理について図119を参照して詳細に説明する。
【0255】
図19は、本実施形態に示す画像処理装置における第8のデータ処理手順の一例を示すフローチャートである。本処理は、ウンロード処理に関する様々なモード設定に対応する。なお、(1901)〜(1904)は各ステップを示す。また、各ステップは、コントローラ部110のCPU112がダウンロードタスクを実行することで実現される。
【0256】
まず、組み込み機器の接続機器の情報を提供するための機器情報提供タスク804が起動するとまずは初期化処理を行い(1901)、他の機器からの問い合わせ処理を待つ(1902)。
【0257】
そして、問い合わせ依頼を受け取ったと判断した場合は、接続機器情報テーブル(図11)を参照し(1903)、現在接続されている接続機器の構成を問合せ先に返して(1904)、本処理を終了する。
【0258】
<ダウンロードに関する設定の手順>
以下、図20を参照して、本実施形態におけるダウンロード処理に関する様々なモード設定手順を説明する。
【0259】
なお、第2実施形態ではコンポーネント転送許可設定する第1のモード設定を行う場合がある。また、FCの整合性を自動テストするかマニュアルテストするかの選択を設定する第2のモード設定を行う場合がある。さらに、他機種からのFC自動更新許可設定とを行う第3のモード設定を行うものとがある。なお、これは実施形態1つでありこれに限られるものではない。
【0260】
図20は、本実施形態に示す画像処理装置における第9のデータ処理手順の一例を示すフローチャートである。本処理は、ウンロード処理に関する様々なモード設定に対応する。なお、(2001)〜(2007)は各ステップを示す。また、各ステップは、コントローラ部110のCPU112がダウンロードタスクを実行することで実現される。
【0261】
まず、操作部150からの指示でダウンロードに関する設定を行えるモードに移行する(2001)。そして、次に、上記第1〜第3のいずれかのモードの設定を行うか選択する。
【0262】
次に、ステップ(2002)で、選択されたモードが第1〜第3のいずれであるかを判断する。
【0263】
ここで、第1のモードの設定が選択されたと判断した場合は、コンポーネント転送許可設定を行う、行わない(禁止)のいずれかを指定する(1603)。
【0264】
この設定値は、ダウンロード処理における、自機と同じ接続機器構成を持つ他の組み込み機器にもFCを転送するかどうかの判断(図18に示すステップ(1805)の際に参照される。
【0265】
一方、ステップ(2002)で、第2のモードが選択されたと判断した場合は、FCの整合性を自動テストするかマニュアルテストするかの選択を行う(2003)。この設定値はダウンロード処理における、図14に示すステップ(1321)で参照され、自動モードの場合は整合性テストプログラム602をすぐに実行し(1322)、マニュアルモードの場合はユーザの確認を待つ(1323)。
【0266】
一方、ステップ(2002)で、第3のモードが選択されたと判断した場合は、他機種からのFC自動更新を許可するかどうかの設定を行う(2005)。
【0267】
ここでは、一括して自動更新のOFF/ONを行うか、あるいはどの機器からの要求は許可するという、機器名や機器のIPアドレスなど、機器毎の指定も可能である。
【0268】
この設定値はダウンロード処理において、勝手に見知らぬ機器からの要求を受け付けることを防ぐための、図18に示すステップ(1802)のダウンロード許可判断処理で参照され、許可されていればダウンロード処理に進む。しかし、そうでなければダウンロード非許可通知を転送元の機器に送信する(1803)。
【0269】
そして、それぞれ指定した結果を不揮発性のSRAM180に書き込み、電源のOFF/ONに関わらず設定値が消えないようにする(2006)。
【0270】
次に、さらなる設定や設定変更を行うための設定変更指示がなされているかどうかを判断する(2007)。
【0271】
ここで、設定変更を行うを選択したと判断した場合は、ステップ(2002)へ戻り、再度どの設定を行うか選択する画面で、設定を行う。
【0272】
一方、設定変更を行わないを選択した場合は、本処理を終了する。
【0273】
これにより、ユーザが操作部150から他の画像処理装置から必要なFCをダウンロードさせることができる。
【0274】
〔第3実施形態〕
上記実施形態では、ネットワーク上の他の画像形成装置からFCをダウンロードする場合について説明した。しかし、FCサーバ104との応答状態に基づいて、FCをダウンロード可能な他の画像形成装置を検索して、FCのダウンロードを行うように制御してもよい。
【0275】
〔第4実施形態〕
また、他の画像処理装置のFCダウンロード状態を管理することで、いずれかの画像処理装置におけるFCのダウンロードタイミングに同期して、他の画像処理装置のFC更新処理を自動的に実行するように構成してもよい。
【0276】
〔第5実施形態〕
以下、図21、図22に示すメモリマップを参照して本発明に係る画像処理装置、サーバ装置を含む画像処理システムで読み取り可能なデータ処理プログラムの構成について説明する。
【0277】
図21は、本発明に係る画像処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【0278】
図22は、本発明に係るサーバ装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【0279】
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【0280】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【0281】
本実施形態における図10、図12、図13、図16、図18、図19、図20、図15に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【0282】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【0283】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0284】
従って、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
【0285】
プログラムを供給するための記憶媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVDなどを用いることができる。
【0286】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0287】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、該ホームページから本発明のコンピュータプログラムそのもの、もしくは、圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバやftpサーバ等も本発明の請求項に含まれるものである。
【0288】
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【0289】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけではない。例えばそのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行う。そして、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0290】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込ませる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0291】
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施形態の有機的な組合せを含む)が可能であり、それらを本発明の範囲から排除するものではない。
【0292】
本発明の様々な例と実施形態を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではない。
【0293】
上記実施形態によれば、新しいFCをダウンロードした時、既に機器に存在するファームウエアコンポートネントとの整合性を確認するのが容易になり、機器が不具合により動作できなくなるリスクを低減させ、常にユーザに安定したサービスを提供できる。
【0294】
また、特定のFCに特定のテストプログラムが付随するため、FCの動作を保障するために必要最小限のテストが行え、最小限の時間でユーザへの動作保障を提供することが可能になる。
【0295】
さらに、FCの整合性を確認するために、本体以外の特別な装置を必要としないため、コストが低減される。
【0296】
また、ダウンロードの単位をバンドルとしているため、複数のコンポーネントを同時に更新、テストすることが可能になる。
【図面の簡単な説明】
【0297】
【図1】本発明の第1実施形態を示す組込機器を適用可能な画像処理システムの一例を示す図である。
【図2】図1に示したリーダ部と、プリンタ部の断面構成を説明する断面図である。
【図3】図1に示した制御装置の構成を説明ブロック図である。
【図4】図1に示した操作部の構成を説明する平面図である。
【図5】図3に示したROM、HDに記憶されたファームウエア(モジュール)の物理的配置を示す図である。
【図6】図5に示したFCのモジュール構成を説明する図である。
【図7】図5に示した構成管理情報のテーブル構成を説明する図である。
【図8】図1に示した画像処理装置のタスク構成を説明する図である。
【図9】本実施形態に示す画像処理装置における第1のデータ処理手順の一例を示すフローチャートである。
【図10】本実施形態に示す画像処理装置における第2のデータ処理手順の一例を示すフローチャートである。
【図11】図1に示したコントローラ部がDRAM上で管理する接続機器情報テーブルの一例を示す図である。
【図12】本実施形態に示す画像処理装置における第3のデータ処理手順の一例を示すフローチャートである。
【図13】本実施形態に示す画像処理装置における第4のデータ処理手順の一例を示すフローチャートである。
【図14】本実施形態に示す画像処理装置における第5のデータ処理手順の一例を示すフローチャートである。
【図15】本実施形態に示すサーバ装置における第1のデータ処理手順の一例を示すフローチャートである。
【図16】本実施形態に示す画像処理装置における第6のデータ処理手順の一例を示すフローチャートである。
【図17】図3に示したROM、HDに記憶されたファームウエア(モジュール)の物理的配置を示す図である。
【図18】本実施形態に示す画像処理装置における第7のデータ処理手順の一例を示すフローチャートである。
【図19】本実施形態に示す画像処理装置における第8のデータ処理手順の一例を示すフローチャートである。
【図20】本実施形態に示す画像処理装置における第9のデータ処理手順の一例を示すフローチャートである。
【図21】本発明に係る画像処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【図22】本発明に係るサーバ装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【符号の説明】
【0298】
100、105 画像処理装置
102、103 PC
104 FCサーバ
110 コントローラ部
200 リーダ部
300 プリンタ部
【特許請求の範囲】
【請求項1】
接続される複数の機器の機器制御プログラム部品を組み合わせて処理を行う組込機器であって、
各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器からダウンロードするダウンロード手段と、
前記ダウンロード手段によりダウンロードされた関連ファイルに基づいて、前記機器制御プログラムの整合性を確認する確認手段と、
前記確認手段による整合性の確認結果に基づいて、ダウンロードされた前記機器制御プログラムの管理情報を動作可能状態または、ダウンロード前の旧機器制御プログラムが動作可能状態に復旧させるダウンロード制御手段と、
を有することを特徴とする組込機器。
【請求項2】
複数の関連ファイルは、前記機器制御プログラムの整合性をテストするテストプログラムと、前記テストプログラムのテスト結果を判断するための判断基準情報、前記機器制御プログラムに対応する機器が使用中かどうかを問い合わせる問い合わせプログラムと、前記機器制御プログラムのIDと、前記機器制御プログラムのバージョンとを含むことを特徴とする請求項1記載の組込機器。
【請求項3】
複数の関連ファイルは、前記機器制御プログラムの整合性をテストするテストプログラムと、前記テストプログラムのテスト結果を判断するための判断基準情報、前記機器制御プログラムに対応する機器が使用中かどうかを問い合わせる問い合わせプログラムと、前記機器制御プログラムのIDと、前記機器制御プログラムのバージョンと、他の組込機器からの機器構成に対する問い合わせに応答して機器情報を応答する応答プログラムと、他の組込機器からの要求に応答して機器構成が共通する機器制御プログラムを要求元の他の組込機器に転送する転送プログラムとを含むことを特徴とする請求項1記載の組込機器。
【請求項4】
前記転送プログラムは、他の組込機器から応答される機器構成から機器構成が共通する組込機器が存在するか否かを判断可能とすることを特徴とする請求項3記載の組込機器。
【請求項5】
前記ダウンロード手段によりダウンロードされた前記機器制御プログラムを前記管理情報とともに記憶する記憶手段を備えることを特徴とする請求項1記載の組込機器。
【請求項6】
前記記憶手段は、いずれかの機器制御プログラムに対して異なるバージョンの機器制御プログラムを識別可能に記憶することを特徴とする請求項1〜4のいずれかに記載の組込機器。
【請求項7】
前記ダウンロード手段を実行させる複数のダウンロードモードからいずれかのダウンロードモードを選択する選択手段を備え、
前記ダウンロード制御手段は、前記選択手段により選択されるダウンロードモードに基づいて、前記各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器から自動ダウンロードするタイミングを決定することを特徴とする請求項1〜6のいずれかに記載の組込機器。
【請求項8】
前記タイミングは、対象とする機器が休止中となる第1のタイミング、対象となる機器の起動する第2のタイミング、対象となる機器の動作を終了するタイミング、操作部からのダウンロードを受け付けたタイミングのいずれかであることを特徴とする請求項7記載の組込機器。
【請求項9】
前記組込機器は、プリンタ部、スキャナ部を備える画像処理装置であることを特徴とする請求項1〜7のいずれかに記載の組込機器。
【請求項10】
前記外部機器は、通信回線を介して通信可能なサーバ装置または他の画像処理装置であることを特徴とする請求項1〜7のいずれかに記載の組込機器。
【請求項11】
接続される複数の機器の機器制御プログラム部品を組み合わせて処理を行う組込機器におけるダウンロード方法であって、
各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器からダウンロードするダウンロードステップと、
前記ダウンロードステップによりダウンロードされた関連ファイルに基づいて、前記機器制御プログラムの整合性を確認する確認ステップと、
前記確認ステップによる整合性の確認結果に基づいて、ダウンロードされた前記機器制御プログラムの管理情報を動作可能状態または、ダウンロード前の旧機器制御プログラムが動作可能状態に復旧させるダウンロード制御ステップと、
を有することを特徴とするダウンロード方法。
【請求項12】
複数の関連ファイルは、前記機器制御プログラムの整合性をテストするテストプログラムと、前記テストプログラムのテスト結果を判断するための判断基準情報、前記機器制御プログラムに対応する機器が使用中かどうかを問い合わせる問い合わせプログラムと、前記機器制御プログラムのIDと、前記機器制御プログラムのバージョンとを含むことを特徴とする請求項11記載のダウンロード方法。
【請求項13】
複数の関連ファイルは、前記機器制御プログラムの整合性をテストするテストプログラムと、前記テストプログラムのテスト結果を判断するための判断基準情報、前記機器制御プログラムに対応する機器が使用中かどうかを問い合わせる問い合わせプログラムと、前記機器制御プログラムのIDと、前記機器制御プログラムのバージョンと、他の組込機器からの機器構成に対する問い合わせに応答して機器情報を応答する応答プログラムと、他の組込機器からの要求に応答して機器構成が共通する機器制御プログラムを要求元の他の組込機器に転送する転送プログラムとを含むことを特徴とする請求項11記載のダウンロード方法。
【請求項14】
前記転送プログラムは、他の組込機器から応答される機器構成から機器構成が共通する組込機器が存在するか否かを判断可能とすることを特徴とする請求項13記載のダウンロード方法。
【請求項15】
前記ダウンロードステップによりダウンロードされた前記機器制御プログラムを前記管理情報とともに記憶手段に登録して管理する管理ステップを備えることを特徴とする請求項11記載のダウンロード方法。
【請求項16】
前記記憶手段は、いずれかの機器制御プログラムに対して異なるバージョンの機器制御プログラムを識別可能に記憶することを特徴とする請求項11〜4のいずれかに記載のダウンロード方法。
【請求項17】
前記ダウンロードステップを実行させる複数のダウンロードモードからいずれかのダウンロードモードを選択する選択ステップを備え、
前記ダウンロード制御ステップは、前記選択手段により選択されるダウンロードモードに基づいて、前記各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器から自動ダウンロードするタイミングを決定することを特徴とする請求項11〜16のいずれかに記載のダウンロード方法。
【請求項18】
前記タイミングは、対象となる機器が休止中となる第1のタイミング、対象となる機器の起動する第2のタイミング、対象となる機器の動作を終了するタイミング、操作部からのダウンロードを受け付けたタイミングのいずれかであることを特徴とする請求項17記載のダウンロード方法。
【請求項19】
前記組込機器は、プリンタ部、スキャナ部を備える画像処理装置であることを特徴とする請求項11〜17のいずれかに記載のダウンロード方法。
【請求項20】
前記外部機器は、通信回線を介して通信可能なサーバ装置または他の画像処理装置であることを特徴とする請求項11〜17のいずれかに記載のダウンロード方法。
【請求項21】
請求項11〜20のいずれかに記載のダウンロード方法をコンピュータに実行させるためのプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【請求項22】
請求項11〜20のいずれかに記載のダウンロード方法をコンピュータに実行させることを特徴とするプログラム。
【請求項1】
接続される複数の機器の機器制御プログラム部品を組み合わせて処理を行う組込機器であって、
各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器からダウンロードするダウンロード手段と、
前記ダウンロード手段によりダウンロードされた関連ファイルに基づいて、前記機器制御プログラムの整合性を確認する確認手段と、
前記確認手段による整合性の確認結果に基づいて、ダウンロードされた前記機器制御プログラムの管理情報を動作可能状態または、ダウンロード前の旧機器制御プログラムが動作可能状態に復旧させるダウンロード制御手段と、
を有することを特徴とする組込機器。
【請求項2】
複数の関連ファイルは、前記機器制御プログラムの整合性をテストするテストプログラムと、前記テストプログラムのテスト結果を判断するための判断基準情報、前記機器制御プログラムに対応する機器が使用中かどうかを問い合わせる問い合わせプログラムと、前記機器制御プログラムのIDと、前記機器制御プログラムのバージョンとを含むことを特徴とする請求項1記載の組込機器。
【請求項3】
複数の関連ファイルは、前記機器制御プログラムの整合性をテストするテストプログラムと、前記テストプログラムのテスト結果を判断するための判断基準情報、前記機器制御プログラムに対応する機器が使用中かどうかを問い合わせる問い合わせプログラムと、前記機器制御プログラムのIDと、前記機器制御プログラムのバージョンと、他の組込機器からの機器構成に対する問い合わせに応答して機器情報を応答する応答プログラムと、他の組込機器からの要求に応答して機器構成が共通する機器制御プログラムを要求元の他の組込機器に転送する転送プログラムとを含むことを特徴とする請求項1記載の組込機器。
【請求項4】
前記転送プログラムは、他の組込機器から応答される機器構成から機器構成が共通する組込機器が存在するか否かを判断可能とすることを特徴とする請求項3記載の組込機器。
【請求項5】
前記ダウンロード手段によりダウンロードされた前記機器制御プログラムを前記管理情報とともに記憶する記憶手段を備えることを特徴とする請求項1記載の組込機器。
【請求項6】
前記記憶手段は、いずれかの機器制御プログラムに対して異なるバージョンの機器制御プログラムを識別可能に記憶することを特徴とする請求項1〜4のいずれかに記載の組込機器。
【請求項7】
前記ダウンロード手段を実行させる複数のダウンロードモードからいずれかのダウンロードモードを選択する選択手段を備え、
前記ダウンロード制御手段は、前記選択手段により選択されるダウンロードモードに基づいて、前記各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器から自動ダウンロードするタイミングを決定することを特徴とする請求項1〜6のいずれかに記載の組込機器。
【請求項8】
前記タイミングは、対象とする機器が休止中となる第1のタイミング、対象となる機器の起動する第2のタイミング、対象となる機器の動作を終了するタイミング、操作部からのダウンロードを受け付けたタイミングのいずれかであることを特徴とする請求項7記載の組込機器。
【請求項9】
前記組込機器は、プリンタ部、スキャナ部を備える画像処理装置であることを特徴とする請求項1〜7のいずれかに記載の組込機器。
【請求項10】
前記外部機器は、通信回線を介して通信可能なサーバ装置または他の画像処理装置であることを特徴とする請求項1〜7のいずれかに記載の組込機器。
【請求項11】
接続される複数の機器の機器制御プログラム部品を組み合わせて処理を行う組込機器におけるダウンロード方法であって、
各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器からダウンロードするダウンロードステップと、
前記ダウンロードステップによりダウンロードされた関連ファイルに基づいて、前記機器制御プログラムの整合性を確認する確認ステップと、
前記確認ステップによる整合性の確認結果に基づいて、ダウンロードされた前記機器制御プログラムの管理情報を動作可能状態または、ダウンロード前の旧機器制御プログラムが動作可能状態に復旧させるダウンロード制御ステップと、
を有することを特徴とするダウンロード方法。
【請求項12】
複数の関連ファイルは、前記機器制御プログラムの整合性をテストするテストプログラムと、前記テストプログラムのテスト結果を判断するための判断基準情報、前記機器制御プログラムに対応する機器が使用中かどうかを問い合わせる問い合わせプログラムと、前記機器制御プログラムのIDと、前記機器制御プログラムのバージョンとを含むことを特徴とする請求項11記載のダウンロード方法。
【請求項13】
複数の関連ファイルは、前記機器制御プログラムの整合性をテストするテストプログラムと、前記テストプログラムのテスト結果を判断するための判断基準情報、前記機器制御プログラムに対応する機器が使用中かどうかを問い合わせる問い合わせプログラムと、前記機器制御プログラムのIDと、前記機器制御プログラムのバージョンと、他の組込機器からの機器構成に対する問い合わせに応答して機器情報を応答する応答プログラムと、他の組込機器からの要求に応答して機器構成が共通する機器制御プログラムを要求元の他の組込機器に転送する転送プログラムとを含むことを特徴とする請求項11記載のダウンロード方法。
【請求項14】
前記転送プログラムは、他の組込機器から応答される機器構成から機器構成が共通する組込機器が存在するか否かを判断可能とすることを特徴とする請求項13記載のダウンロード方法。
【請求項15】
前記ダウンロードステップによりダウンロードされた前記機器制御プログラムを前記管理情報とともに記憶手段に登録して管理する管理ステップを備えることを特徴とする請求項11記載のダウンロード方法。
【請求項16】
前記記憶手段は、いずれかの機器制御プログラムに対して異なるバージョンの機器制御プログラムを識別可能に記憶することを特徴とする請求項11〜4のいずれかに記載のダウンロード方法。
【請求項17】
前記ダウンロードステップを実行させる複数のダウンロードモードからいずれかのダウンロードモードを選択する選択ステップを備え、
前記ダウンロード制御ステップは、前記選択手段により選択されるダウンロードモードに基づいて、前記各機器を制御する機器制御プログラムおよび前記機器制御プログラムに関連する複数の関連ファイルを外部機器から自動ダウンロードするタイミングを決定することを特徴とする請求項11〜16のいずれかに記載のダウンロード方法。
【請求項18】
前記タイミングは、対象となる機器が休止中となる第1のタイミング、対象となる機器の起動する第2のタイミング、対象となる機器の動作を終了するタイミング、操作部からのダウンロードを受け付けたタイミングのいずれかであることを特徴とする請求項17記載のダウンロード方法。
【請求項19】
前記組込機器は、プリンタ部、スキャナ部を備える画像処理装置であることを特徴とする請求項11〜17のいずれかに記載のダウンロード方法。
【請求項20】
前記外部機器は、通信回線を介して通信可能なサーバ装置または他の画像処理装置であることを特徴とする請求項11〜17のいずれかに記載のダウンロード方法。
【請求項21】
請求項11〜20のいずれかに記載のダウンロード方法をコンピュータに実行させるためのプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【請求項22】
請求項11〜20のいずれかに記載のダウンロード方法をコンピュータに実行させることを特徴とするプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【公開番号】特開2007−213404(P2007−213404A)
【公開日】平成19年8月23日(2007.8.23)
【国際特許分類】
【出願番号】特願2006−33893(P2006−33893)
【出願日】平成18年2月10日(2006.2.10)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成19年8月23日(2007.8.23)
【国際特許分類】
【出願日】平成18年2月10日(2006.2.10)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]