(57)【要約】      （修正有）【課題】利用者やサービスマンの知識やノウハウに依存することなく、安全に且つ自動的にデジタル複合機のプログラムをバージョンアップさせる。【解決手段】インターネット上に存在するＳＮＭＰサーバ（１−１）に対してデジタル複合機（１−３）よりメールを送信し、その返信を受けることで、最新のファームウエアバージョン情報を取得し、またそのファームウエアバージョン情報より動作保証をするバージョン情報をメールで取得し、次にそのバージョンのファームウエアデータをメールで取得してこれをＲＯＭに対して自動で書き換える。【選択図】図１
2006127392.tif 000002
【特許請求の範囲】
【請求項１】
システム起動させるに際し、複数のプログラムを動作させることにより起動されるシステムにおいて、電源投入後の初期動作を実行するためのプログラムを格納するＲｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ（以下、ＲＯＭ）を有し、プログラムを動作させるための揮発性メインメモリ（以下、メモリ）を有し、さらにシステム起動後に動作するプログラムを格納するハードディスク（以下、ＨＤＤ）等の外部記憶装置を有し、ネットワーク接続するネットワークインタフェースを有するシステムにおいて、ＲＯＭ格納のプログラムのバージョンを取得する手段と、ＨＤＤ格納のプログラムのバージョンを取得する手段と、プログラムをＲＯＭに対して書き換える手段と、ＳＮＭＰサーバを持ちメールの送受信ができる手段と、インターネット上に存在するサーバに対してメールを送信し、その返信を受けることで、最新のファームウエアバージョン情報をメールで取得する手段と、そのファームウエアバージョン情報より動作保証をするバージョン情報をメールで取得する手段と、そのバージョンのファームウエアデータをメールで取得する手段と、そのバージョンのファームウエアの更新することを自動ですることを特徴としたデジタル複合機。
【請求項２】
取得したファームウエア個数をサーバ側で計数し、課金を行うことを特徴とした請求項１記載デジタル複合機。
【請求項３】
前記ＲＯＭは、通常時の動作時の場合で、プログラムにより消去及び書き込みが可能な機能を持つフラッシュＲＯＭであることを特徴とした請求項１記載デジタル複合機。
【発明の詳細な説明】
【技術分野】
【０００１】
１つデジタル複合機の内部で、複数のコントローラが存在し、また１つのコントローラ装置内部に複数のプログラムが存在し、そのプログラムが連携して動作することを前提とするデジタル複合機に関するもの。
【背景技術】
【０００２】
従来のネットワーク接続可能なデジタル複合機において、ファームウエアのバージョンアップ等は、ＲＯＭの交換、ＨＤＤの交換を行っていた。
【０００３】
または、外部Ｉ／Ｆ（セントロニクス、シリアル、ＵＳＢ、ネットワーク）を介して、人為的なアクションによりファームウエアのバージョンアップを行っていた（例えば、特許文献１参照）。
【特許文献１】特開平０６−２１４９１０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、このような従来の技術では、利用者自身または、サービスマンが、意図的にバージョンアップの行為を行う必要が必要あるという人為的な手間を介在する必要があった。
【０００５】
また、システム内部複数のプログラムが相互に連携して動作するシステムのプログラムのバージョン間に発生する整合性の情報を利用者または、サービスマンが熟知している必要があり、不整合を起こす組み合わせのプログラムにバージョンアップした際、動作しなくなる可能性が発生するという問題があった。
【０００６】
プログラムのバージョンアップに関してのオペレーションに関してノウハウ等の必要な知識を利用者およびサービスマンが持つ必要があるという問題があった。
【０００７】
またファームウエアのバージョンアップ作業にサービスマンがユーザ先に出向かなければいけないという手間があった。
【０００８】
本発明は、以上の点に着目して成されたもので、利用者やサービスマンの知識や、ノウハウに依存することなく安全に且つ、自動的にシステムのプログラムをバージョンアップさせるデジタル複合機を提供することを目的とする。
【課題を解決するための手段】
【０００９】
課題を解決する手段として、インターネットに接続可能な、ネットワーク上にデジタル複合機が接続されていることを前提としている。
【００１０】
ネットワークを介して、あらかじめ登録されているインターネット上に存在するファームウエアサーバに対してメールを利用してコマンドの送受信、およびデータの送受信を行う手段と、ファームウエア間とバージョン間に依存する整合性の関係を示す情報ファイルをメールにより受信する手段と、その情報からファームウエアプログラムをバージョンアップさせるかどうかを判断する手段をもつことにより解決する。
【００１１】
なお、さらに詳細に説明すれば、本発明は下記の構成によって前記課題を解決できた。
【００１２】
（１）システム起動させるに際し、複数のプログラムを動作させることにより起動されるシステムにおいて、電源投入後の初期動作を実行するためのプログラムを格納するＲｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ（以下、ＲＯＭ）を有し、プログラムを動作させるための揮発性メインメモリ（以下、メモリ）を有し、さらにシステム起動後に動作するプログラムを格納するハードディスク（以下、ＨＤＤ）等の外部記憶装置を有し、ネットワーク接続するネットワークインタフェースを有するシステムにおいて、ＲＯＭ格納のプログラムのバージョンを取得する手段と、ＨＤＤ格納のプログラムのバージョンを取得する手段と、プログラムをＲＯＭに対して書き換える手段と、ＳＮＭＰサーバを持ちメールの送受信ができる手段と、インターネット上に存在するサーバに対してメールを送信し、その返信を受けることで、最新のファームウエアバージョン情報をメールで取得する手段と、そのファームウエアバージョン情報より動作保証をするバージョン情報をメールで取得する手段と、そのバージョンのファームウエアデータをメールで取得する手段と、そのバージョンのファームウエアの更新することを自動ですることを特徴としたデジタル複合機。
【発明の効果】
【００１３】
本発明によれば、ファームウエアの更新があった際、ファームウエアサーバのデータを更新しておけば、ユーザ先のデジタル複合機が自動的にバージョンアップの作業を行い、且つファームウエア間の動作保証のないバージョンにアップされることによる不具合を防ぐことができる。
【００１４】
また、バージョンアップ作業としてサービスマンがユーザ先に出向く手間も省ける。
【００１５】
さらにサービスマンがユーザ先に出向くより低料金でバージョンアップが可能となりユーザ側のメリットもでる。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の一実施例について図面を参照して説明する。
【実施例】
【００１７】
図１は、本発明にかかる基本的なシステム構成を示す図である。
【００１８】
１-１は、インターネット上に存在するデジタル複合機の販売元が管理する前記デジタル複合機上で動作するファームウエアのプログラムおよびファームウエア間の動作保証を示すバージョン情報ファイルを抱えるサーバである。１−２は、デジタル複合機が設置されているオフィスとインターネットを接続するファイアーウォールである。１−３は複数のファームウエアの構成により動作するデジタル複合機である。１−４は、１−２と１−３のそれぞれの機器を接続されているローカルエリアネットワーク（以下ＬＡＮ）を示す。
【００１９】
図２は、本システムにおける基本的な構成を示すシステムブロック図である。２−１はＣＰＵ、即ち中央処理装置であり、この装置全体の制御及び演算処理等を行うものである。
【００２０】
２−２はＲＯＭ即ち読み出し専用メモリであり、システム起動プログラムやプリンタエンジンの制御を行うプログラム及び文字データ、文字コード情報等の記憶領域である。但し、本実施例を実現するために、通常時は、ＲＯＭとして動作するが、プログラムにより消去およぶ書き込みが可能であるフラッシュＲＯＭであることが必要である。
【００２１】
２−３はＲＡＭ即ちランダムアクセスメモリであり、使用制限のないデータ記憶領域で、ダウンロードにより追加登録されたフォントデータが記憶されたり、様々な処理毎にプログラムやデータがロードされ実行される。
【００２２】
２−４は、例えばハードディスク等の外部記憶装置であり、印刷装置か受け付けた印刷ジョブをスプールしたり、プログラムや印刷データ等が格納されたり、作業用の領域として利用されたりする。
【００２３】
２−５は液晶などの表示部であり、印刷装置の設定状態や、現在の印刷装置内部の処理、エラー状態などの表示に使用される。
【００２４】
２−６は操作部であり、印刷装置の設定を変更したり、リセットするために使用される。
【００２５】
２−７はエンジンインターフェイスであり実際にエンジンを制御するコマンド等のやり取りする口である。ここでのエンジンとはスキャナおよびプリンタを指す。
【００２６】
２−８はネットワークインタフェースであり、このインターフェイスを介して機器がネットワークに接続される。
【００２７】
２−９は外部インターフェイスであり、パラレル（またはシリアル）などのインターフェイスを介してホストコンピュータと接続される。
【００２８】
２−１０はシステムバスであり、上述の構成要素間のデータの通路となるべきものである。例えば、スキャナから画像データを読み取り、プリンタから出力するコピー動作は次のようになる。
【００２９】
操作部２−６の入力をきっかけにして、ＲＡＭ２−３に格納されたプログラムが動作を始め、まずエンジンＩ／Ｆ２−７を介してスキャナ２−１１に起動が掛かり原稿の読み取りが始まる。読み取られたイメージデータは一旦ＲＡＭ２−３に格納される。
【００３０】
次にエンジンＩ／Ｆ２−８を介してプリンタに起動が掛かり、プリンタと同期して先ほどＲＡＭ２−３に格納された画像データが出力される。ここでは、一度画像をＲＡＭ２−３に格納し終わってから、プリンタに出力する場合を説明したが、スキャナ２−１１の画像読み取りに同期して、ＲＡＭ２−３への格納とプリンタ２−１２への出力を同時に行うことも考えられる。また、動作中には操作者に処理中であることを知らせたり、読み取り原稿枚数を通知する情報が表示部２−５には表示される。さらに、格納した画像データをネットワークＩ／Ｆを介して他のプリンタや複写機に転送したり、外部記憶装置２−４に印刷データを不揮発データとして保存することも可能である。
【００３１】
図３は、本実施例におけるデジタル複合機の初期組み立て時に行われるファームウエアのダウンロードの順序を示すフローチャートである。
【００３２】
互いの持つファームウエア間のバージョン情報等の交換し、お互いの持つファームウエア間のバージョン情報を更新する仕組みを説明するフローチャートである。
【００３３】
デジタル複写機では、大きく分けて３つのコントローラが存在し、プリンタエンジン（２−１２）を制御するプリンタコントローラ、スキャナエンジン（２−１１）を制御するスキャナコントローラ、前記２つのコントローラを制御するメインコントローラが存在する。
【００３４】
それぞれのコントローラには、通常１つ、または複数のファームウエアが存在する。例えば、高機能な処理を行うメインコントローラは、ＨＤＤなどからメインプログラムをＬｏａｄするために必要な起動プログラムを格納するファームウエア（以下ブートロムとする）と前述メインプログラムと２つのファームウエアが存在する。プリンタコントローラのファームウエア（以下、プリンタファームとする）とスキャナコントローラのファームウエア（以下、スキャナファームとする）がある。
【００３５】
デジタル複写機の初期組み立て時は、メインコントローラの初期動作を行うブートロムを装着する（Ｓ３０１）必要がある。最初の処理だけはダウンロードで行うことは出来ない。Ｓ３０１でのブートロム装着後、電源起動し、ブートロムのファームプログラムが、ＨＤＤ（２−４）や、ＬａｎＩ／Ｆ（２−８）をアクセスすることが可能になった状態で、Ｎｅｔｗｏｒｋや、外部Ｉ／Ｆ（２−９）を介して、メインコントローラのファームウエアをダウンロードする。（Ｓ３０３）。その後、ＨＤＤ内にメインコントローラのファームをセーブしておく（Ｓ３０４）。
【００３６】
同様にプリンタファームをＬａｎＩ／Ｆ（２−８）や外部Ｉ／Ｆ（２−９）介して、プリンタファームをダウンロードし（Ｓ３０５）、メインコントローラ上のＨＤＤ（２−４）にセーブする（Ｓ３０６）。その後、エンジンＩ／Ｆ（２−７）を介して、プリンタファームの更新を行う（Ｓ３０７）。
【００３７】
同様にスキャナファームをＬａｎＩ／Ｆ（２−８）や外部Ｉ／Ｆ（２−９）介して、スキャナファームをダウンロードし（Ｓ３０８）、メインコントローラ上のＨＤＤ（２−４）にセーブする（Ｓ３０９）。その後、エンジンＩ／Ｆ（２−７）を介して、スキャナファームの更新を行う（Ｓ３１０）。
【００３８】
すべてのファームの更新が終わった時点で、ＨＤＤ（２−４）に格納された各ファームの名前とバージョンの組合せの情報がファイルとしてＨＤＤ（２−４）内にセーブする（Ｓ３１２）。
【００３９】
上記バージョンの組合せ情報とは、図４に示すような、ファームウエア毎のバージョン情報と、図５に示すようなファームウエア間のバージョン依存情報を記述する情報を抱えている。
【００４０】
ここで図５に示す内容の詳細を記載する。
【００４１】
例えば、ブートロムの場合、
Ｂｏｏｔｒｏｍ＝｛
“ＭａｉｎＦｉｒｍ”，０ｘ００１０，０ｘ０１１５，
“ＰｒｉｎｔｅｒＦｉｒｍ”，０ｘ００００，０ｘｆｆｆｆ，
“ＳｃａｎｎｅｒＦｉｒｍ”，０ｘ０００１，０ｘ０１５０，
｝
となるが、現在動作中のＢｏｏｔｒｏｍは、ＭａｉｎＦｉｒｍがバージョン０ｘ００１０から０ｘ１１５までの間の動作を保証する。ＰｒｉｎｔｅｒＦｉｒｍに関しては、０ｘ００００から０ｘｆｆｆｆまでの間の動作を保証する。すなわちＢｏｏｔｒｏｍとＰｒｉｔｅｒＦｉｒｍのバージョン依存性がないことを意味する。ＳｃａｎｎｅｒＦｉｒｍのバージョンに関しては、０ｘ０００１から０ｘ０１５０の間の動作を保証することを意味する。
【００４２】
この情報により動作中のＢｏｏｔｒｏｍと他のファームウエアとの動作保証のバージョン情報を取得することができる。
【００４３】
このバージョン情報は、各ファームウエア内部にデータとして格納されておりＳ３１１の処理で、各ファームウエアのデータから情報を引き出し、情報ファイルを作成する。
【００４４】
図６は、デジタル複合機１−３とファームウエアサーバ１−１の間でお互いのファームウエアのバージョン情報を交換するフローチャートを説明する。
【００４５】
デジタル複合機１−３には、あらかじめファームウエアサーバのメールアドレスが登録されており、登録済みのメールアドレス宛てにメールを送信することでファームウエアサーバと交信が可能になる。
【００４６】
デジタル複合機１−３は、自機のライセンス番号と、自機のメールアドレスと、最新ファームウエアバージョン情報のリクエストコマンドを本文としたメールをファームウエアサーバのメールアドレスに対して送信を行う（Ｓ６０１）。
【００４７】
送信されたメールは、ファイアーウォール１−２を経由してインターネットを介して、ファームウエアサーバに届けられる。デジタル複合機１−３は、ファームウエアサーバからの返信メールを待つ（Ｓ６０２）。
【００４８】
Ｓ６０１で送信されたメールを受信したファームウエアサーバは、メール本文のライセンス番号のチェックを行い、正式ユーザとして登録済みの番号であった場合、本文に記述されている最新ファームウエアバージョン情報のリクエストコマンドに答え、デジタル複合機宛てに最新ファームウエアバージョン情報をメールの本文につけて送信する。ここでいう最新ファームウエアバージョン情報の中身は、図４、図５で示したフォーマットのデータである。
【００４９】
ファームウエアサーバが送信した、メールを受け取ったデジタル複合機１−３は、メールから最新ファームウエアバージョン情報を切り出し、自機ＨＤＤ内に格納する（Ｓ６０３）。
【００５０】
図７は、図６のフローチャートで取得した最新ファームウエアバージョン情報と、自機１−３のファームウエア情報とを比較判断し、必要なファームウエアデータを取得するフローチャートである。
【００５１】
Ｓ６０３で取得した最新ファームウエアバージョンと自機１−３ファームウエアバージョン情報とを比較する（Ｓ７０１）。比較のロジックは、ファームウエアサーバから送信されたの各ファームウエアのバージョンが自機１−３のファームウエアのバージョンより新しいこと。そのファームウエアを更新することで他のファームウエアとの動作保証バージョン内であることを確認する（Ｓ７０２）。
Ｓ７０１の比較でバージョンアップ必要と判断されたファームウエアのデータをファームウエアサーバ１−１に対して自機のライセンス番号と、自機のメールアドレスと、取得したいファームウエアの種類のリクエストコマンドを本文としたメールを送信する（Ｓ７０３）。ファームウエアサーバ１−１は、受信したメール本文のライセンス番号のチェックを行い、正式ユーザとして登録済みの番号であった場合、メール本文にあった指定されたファームウエアの最新データを添付データとして、デジタル複合機１−３宛てに送信する。この際、添付データサイズが大きい場合データを分割して、分割したファイル数だけ送信を繰り返す。デジタル複合機１−３では、メールを受信すると（Ｓ７０４）、添付Ｆｉｌｅをデータとして切り出し、Ｓ３０２、Ｓ３０４、Ｓ３０６、Ｓ３０９の操作で、自機内ＨＤＤ内部に保存していたファームウエアデータを更新する（Ｓ７０５）。ファームウエアサーバが分割してメールを送った場合は、デジタル複合機１−３は、分割された添付ファイルを結合してから自機内ＨＤＤに格納する。
【００５２】
さらに図４、図５で示したファームウエアバージョン情報Ｆｉｌｅを更新する（Ｓ７０６）。その後各ファームウエア自身への更新を行う（Ｓ７０７）。
【００５３】
ファームウエアサーバ側では、ユーザからのメールアクセスを常時監視しており、ユーザが取得したファームウエアの個数を計数し、課金する（Ｓ７０８）ことが可能になっている。その情報を元にユーザに対して請求ができる。
【図面の簡単な説明】
【００５４】
【図１】ネットワークシステムの構成を示すブロック図
【図２】基本的な構成を示すブロック図
【図３】第一の実施例におけるフローチャートその１
【図４】デジタル複合機内のファームウエアの各バージョン情報を示す図
【図５】デジタル複合機内のファームウエアのバージョン間による動作保証バージョン情報を示す図
【図６】実施例におけるフローチャートその２
【図７】実施例におけるフローチャートその３
【符号の説明】
【００５５】
１−１    ファームウエアサーバ
１−２    ファイアーウォール
１−３    デジタル複合機（自機）
１−４    ＬＡＮ（ローカルエリアネットワーク）
２‐１    ＣＰＵ
２‐２    ＲＯＭ
２‐３    ＲＡＭ
２‐４    外部記憶装置
２‐５    表示部
２‐６    操作部
２‐７    エンジンインターフェイス
２‐８    ネットワークインタフェース
２‐９    外部インターフェイス
２‐１０    システムバス
２‐１１    スキャナ
２‐１２    プリンタ
【図１】
2006127392.tif 000003
【図２】
2006127392.tif 000004
【図３】
2006127392.tif 000005
【図４】
2006127392.tif 000006
【図５】
2006127392.tif 000007
【図６】
2006127392.tif 000008
【図７】
2006127392.tif 000009