(57)【特許請求の範囲】
【請求項１】
コンピュータプログラムにより制御される電子装置であって、
外部装置から送信される、前記電子装置のファームウェアをアップデートするためのアップデート用データと前記ファームウェアのアップデート開始タイミングを決定するための情報を含む第１の情報とを受信する受信手段と、
前記ファームウェアのアップデート開始タイミングを決定するための情報を含む、前記第１の情報とは異なる第２の情報の入力を受付ける入力手段と、
前記入力手段により入力される前記第２の情報を記憶する記憶手段と、
前記第１の情報及び前記第２の情報の何れを優先して前記アップデート開始タイミングを決定するかを判定する優先判定手段と、
前記第１の情報及び前記第２の情報のうち前記優先判定手段により優先すると判定された情報により前記アップデート開始タイミングを決定するアップデート開始タイミング決定手段とを含む、電子装置。
【請求項２】
前記優先判定手段は、
前記第１の情報が受信されない場合、前記第２の情報を優先すると判定し、
前記第１の情報が受信された場合、前記第１の情報を優先すると判定する、請求項１に記載の電子装置。
【請求項３】
前記入力手段は、前記第１の情報及び前記第２の情報の何れが優先されるかを示す優先情報の入力をさらに受付け、
前記記憶手段は、前記入力手段により入力される前記優先情報をさらに記憶し、
前記優先判定手段は、前記記憶手段に記憶されている前記優先情報に応じて、前記第１の情報及び前記第２の情報の何れを優先するかを判定する、請求項１に記載の電子装置。
【請求項４】
前記第１の情報は、所定情報を含むことができ、
前記受信手段により受信された前記第１の情報が前記所定情報を含んでいることを受けて、前記アップデート開始タイミング決定手段は、前記アップデート開始タイミングを、前記アップデート用データの受信完了直後と決定する、請求項１に記載の電子装置。
【請求項５】
前記入力手段は、前記アップデート開始タイミングを決定するための情報を含む第３の情報を外部管理装置に要求することを指示する指示情報の入力をさらに受付け、
前記記憶手段は、前記入力手段により前記指示情報が入力されたことを受けて、前記指示情報を記憶し、
前記第１の情報に対し前記第２の情報が優先される条件であり、且つ、前記記憶手段に前記指示情報が記憶されていれば、前記受信手段による前記アップデート用データの受信が完了した後、前記第３の情報の送信を前記外部管理装置に要求する要求情報を送信する送信手段をさらに含み、
前記受信手段は、前記第３の情報として、前記外部管理装置から前記要求情報に対する応答として送信される情報をさらに受信し、
前記優先判定手段は、前記第１の情報に代えて、前記受信手段により受信された前記第３の情報を使用する、請求項１から３の何れか１項に記載の電子装置。
【請求項６】
前記入力手段は、前記第１の情報及び前記第２の情報の何れが優先されるかを示す優先情報を外部管理装置に要求することを指示する指示情報の入力をさらに受付け、
前記記憶手段は、前記入力手段により前記指示情報が入力されたことを受けて、前記指示情報を記憶し、
前記記憶手段に前記指示情報が記憶されていれば、前記受信手段による前記アップデート用データの受信が完了した後、前記優先情報の送信を前記外部管理装置に要求する要求情報を送信する送信手段をさらに含み、
前記受信手段は、前記優先情報として、前記外部管理装置から前記要求情報に対する応答として送信される情報をさらに受信し、
前記優先判定手段は、前記受信手段により受信された前記優先情報に応じて、前記第１の情報及び前記第２の情報の何れを優先するかを判定する、請求項１に記載の電子装置。
【請求項７】
前記入力手段は、前記外部管理装置から前記要求情報に対する応答として送信される前記情報を受信できなかった場合に実行されるべき処理を特定する処理特定情報の入力をさらに受付け、
前記記憶手段は、前記入力手段により前記処理特定情報が入力されたことを受けて、前記処理特定情報を記憶し、
前記受信手段が、前記外部管理装置から前記要求情報に対する応答として送信される前記情報を受信できなかったことを受けて、前記記憶手段に記憶された前記処理特定情報により特定される処理を実行する手段をさらに含む、請求項５又は６に記載の電子装置。
【請求項８】
前記外部装置から送信される前記第１の情報は、前記第１の情報及び前記第２の情報の何れが優先されるかを示す優先情報を含み、
前記優先判定手段は、前記優先情報に応じて、前記第１の情報及び前記第２の情報の何れを優先するかを判定する、請求項２に記載の電子装置。
【請求項９】
前記アップデート開始タイミング決定手段は、
前記第２の情報により前記アップデート開始タイミングを決定する場合、前記受信手段による前記アップデート用データの受信が完了してから、前記記憶手段に記憶された前記第２の情報により特定される待ち時間が経過した時刻を、前記アップデート開始タイミングに決定し、
前記第１の情報により前記アップデート開始タイミングを決定する場合、前記第１の情報により特定される時刻を、前記アップデート開始タイミングに決定する、請求項１から８の何れか１項に記載の電子装置。
【請求項１０】
前記第１の情報は、前記アップデート用データに含まれる、請求項１から９の何れか１項に記載の電子装置。
【請求項１１】
前記電子装置は、前記外部装置による前記アップデート用データの送信対象である複数の画像形成装置のうちの１台の画像形成装置である、請求項１から１０の何れか１項に記載の電子装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファームウェアをアップデートする機能を有する電子装置に関し、特に、画像形成装置等の、複数の同種類の電子装置が事務所等で使用される状況において、各電子装置のファームウェアのアップデートを適切なタイミングで、支障なく実行することができる電子装置に関する。
【背景技術】
【０００２】
近年、電子機器である画像処理装置の１種として、多くの事業所（会社、事務所等）に、記録用紙に画像を形成する画像形成装置（代表的にはコピー機）が導入されている。このような画像形成装置の１種である複合機（ＭＦＰ：Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）は、コピーモード、ファクシミリモード、通信ネットワーク（以下、単にネットワークともいう）対応のプリンタモード、及びスキャナモードのように、複数の機能を備える。画像形成装置は、ネットワークに接続され、複数のユーザにより共用されるケースが多い。
【０００３】
画像形成装置等の電子装置は、電子装置を構成するハードウェアを制御するためのコンピュータプログラム（ファームウェア）を備えている。電子装置は、ファームウェアを介して各ハードウェアの動作を制御することにより、各機能を実現している。ファームウェアは、バージョンアップ、又は不具合の修正等のために、新たなファームウェアにアップデート（更新）される。ファームウェアは、例えば、電子装置がネットワークに接続されていれば、コンピュータサーバ（以下、単にサーバともいう）等の外部装置からダウンロードされ、アップデートされる。
【０００４】
例えば、下記特許文献１には、配信サーバで画像形成装置に適用可能なファームウェアを管理する技術が開示されている。複数の画像形成装置の各々は、適用可能なファームウェアの有無を配信サーバに確認する確認時間が設定されると、確認時間から、ファームウェアを適用する適用時間をランダムに決定し、適用時間になれば、配信サーバからのファームウェアをダウンロードして適用する。これにより、複数の画像形成装置から配信サーバへの更新確認を行なう時間を分散させ、配信サーバへの負荷の集中を防ぐことができる。
【０００５】
下記特許文献２には、使用者の作業の妨げにならないようにファームウェアの更新を行なうことができる情報処理装置が開示されている。この情報処理装置は、外部装置からファームウェアの更新要求コマンドを受信した場合、現在の状況がファームウェアの更新が可能な状況であるか否かを判定して、可能な状況であれば、外部装置からファームウェアを取得して、更新する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１２−５９１８０号公報
【特許文献２】特開２００８−３０５０４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１及び２は何れも、アップデートの対象となる装置が、アップデートされるべきファームウェアを記憶しているサーバ等から、ファームウェアをダインロードして、アップデートする方式を前提としている。一方、別のアップデート方式として、サーバ等から対象の装置にファームウェアを一斉に送信する方式がある。その場合、事務所等で使用している画像形成装置がファームウェアを受信し、ほぼ同じタイミングで一斉にアップデートを開始することになり、一時的に事務所内の画像形成装置が全て使用できない状況が生じ得る。
【０００８】
この問題は、アップデート方式が異なる特許文献１及び２に開示された技術によっては解決されない。
【０００９】
したがって、本発明は、複数の同種類の電子装置が事務所等で使用される状況において、各電子装置のファームウェアのアップデートを適切なタイミングで、支障なく実行することができる電子装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明に係る電子装置は、コンピュータプログラムにより制御される電子装置である。この電子装置は、外部装置から送信される、電子装置のファームウェアをアップデートするためのアップデート用データを受信する受信部と、第１の時間情報の入力を受付ける入力部と、入力部により入力される第１の時間情報を記憶する記憶部と、受信部によるアップデート用データの受信が完了してから、記憶部に記憶された第１の時間情報により特定される待ち時間が経過し、ファームウェアのアップデートを開始するアップデート開始時刻に達したか否かを判定する第１の判定処理を実行する判定部と、判定部によりアップデート開始時刻に達したと判定されたことを受けて、受信されたアップデート用データを用いてファームウェアのアップデートを開始する制御部とを含む。
【００１１】
これにより、事務所等で使用されている複数の同種類の電子装置において、異なる待ち時間（第１の時間情報）を設定することにより、各電子装置のファームウェアのアップデートを異なるタイミングで開始させることができ、複数の同種の電子装置が全て使用できなくなる状況が生じることを回避することができる。
【００１２】
好ましくは、外部装置から送信されるアップデート用データは、所定の時刻を特定するための第２の時間情報を含む。判定部は、第１の判定処理に代えて、第２の時間情報により特定される時刻をアップデート開始時刻として、アップデート開始時刻に達したか否かを判定する第２の判定処理を実行する。
【００１３】
これにより、各電子装置においてアップデート開始時刻が適切に設定されていない場合でも、適切なタイミングでアップデートを開始させることができる。
【００１４】
より好ましくは、入力部は、第１の時間情報及び第２の時間情報の何れが優先されるかを示す優先情報の入力をさらに受付ける。記憶部は、入力部により入力される優先情報をさらに記憶する。判定部は、受信部によるアップデート用データの受信が完了した後、記憶部に記憶されている優先情報に応じて、第１の判定処理又は第２の判定処理を実行する。
【００１５】
これにより、各電子装置のアップデート開始時刻をより柔軟に設定することができる。
【００１６】
さらに好ましくは、外部装置から送信されるアップデート用データは、所定情報を含むことができる。受信部により受信されたアップデート用データが所定情報を含んでいることを受けて、判定部は、第１の判定処理を実行することなくアップデート開始時刻に達したと判定する。
【００１７】
これにより、重大なセキュリティ問題を修正したい場合等に、各電子装置における設定を無視して、アップデートを開始させることができる。
【００１８】
好ましくは、入力部は、第３の時間情報を外部管理装置に要求することを指示する指示情報の入力をさらに受付ける。記憶部は、入力部により指示情報が入力されたことを受けて、指示情報を記憶する。電子装置は、記憶部に指示情報が記憶されていれば、受信部によるアップデート用データの受信が完了した後、第３の時間情報の送信を外部管理装置に要求する要求情報を送信する送信部をさらに含む。受信部は、第３の時間情報として、外部管理装置から要求情報に対する応答として送信される情報をさらに受信する。判定部は、記憶部に記憶された第１の時間情報に代えて、受信部により受信された第３の時間情報を使用して、第１の判定処理を実行する。
【００１９】
これにより、各電子装置のアップデート開始時刻を、外部管理装置で効率的に管理することができる。
【００２０】
より好ましくは、入力部は、優先情報を外部管理装置に要求することを指示する指示情報の入力をさらに受付ける。記憶部は、入力部により指示情報が入力されたことを受けて、指示情報を記憶する。電子装置は、記憶部に指示情報が記憶されていれば、受信部によるアップデート用データの受信が完了した後、優先情報の送信を外部管理装置に要求する要求情報を送信する送信部をさらに含む。受信部は、優先情報として、外部管理装置から要求情報に対する応答として送信される情報をさらに受信する。判定部は、受信部により受信された優先情報に応じて、第１の判定処理又は第２の判定処理を実行する。
【００２１】
これにより、各電子装置のアップデート開始時刻を、外部管理装置で、効率的に管理することができ、より柔軟に設定することができる。
【００２２】
さらに好ましくは、入力部は、外部管理装置から要求情報に対する応答として送信される情報を受信できなかった場合に実行されるべき処理を特定する処理特定情報の入力をさらに受付ける。記憶部は、入力部により処理特定情報が入力されたことを受けて、処理特定情報を記憶する。電子装置は、受信部が、外部管理装置から要求情報に対する応答として送信される情報を受信できなかったことを受けて、記憶部に記憶された処理特定情報により特定される処理を実行する。
【００２３】
これにより、各電子装置は、外部管理装置との接続エラーが生じた場合でも、適切に対処することができる。
【００２４】
好ましくは、外部装置から送信されるアップデート用データは、第１の時間情報及び第２の時間情報の何れが優先されるかを示す優先情報を含み、判定部は、優先情報に応じて、第１の判定処理又は第２の判定処理を実行する。
【００２５】
これにより、各電子装置において優先情報を予め設定する必要がない。
【００２６】
より好ましくは、電子装置は、外部装置によるアップデート用データの送信対象である複数の画像形成装置のうちの１台の画像形成装置である。
【００２７】
これにより、事務所等で使用されている複数の画像形成装置において、異なる待ち時間を設定することにより、各画像形成装置のファームウェアのアップデートを異なるタイミングで開始させることができ、複数の画像形成装置が全て使用できなくなる状況が生じることを回避することができる。
【発明の効果】
【００２８】
本発明によれば、事務所等で使用されている複数の同種類の電子装置において、各電子装置のファームウェアのアップデートを異なるタイミングで開始させることができるので、複数の同種の電子装置が全て使用できなくなる状況が生じることを回避することができる。
【図面の簡単な説明】
【００２９】
【図１】本発明の第１の実施の形態に係る画像形成装置を含むシステムの構成を示すブロック図である。
【図２】図１の画像形成装置において実行されるファームウェアのアップデートの実行プログラムの構成を示すフローチャートである。
【図３】第１の実施の形態に係る画像形成装置に表示される設定画面の例を示す図である。
【図４】第２の実施の形態に係る画像形成装置において実行されるファームウェアのアップデートの実行プログラムの構成を示すフローチャートである。
【図５】第２の実施の形態に係る画像形成装置に表示される設定画面の例を示す図である。
【図６】本発明の第３の実施の形態に係る画像形成装置を含むシステムの構成を示すブロック図である。
【図７】第３の実施の形態に係る画像形成装置において実行されるファームウェアのアップデートの実行プログラムの構成を示すフローチャートである。
【図８】第３の実施の形態に係る画像形成装置に表示される設定画面の例を示す図である。
【図９】アップデート開始時間管理サーバに記憶されているデータベースを示す図である。
【発明を実施するための形態】
【００３０】
以下の実施の形態では、同一の部品には同一の参照番号を付してある。それらの名称及び機能も同一である。したがって、それらについての詳細な説明は繰返さない。
【００３１】
（第１の実施の形態）
図１を参照して、本発明の第１の実施の形態に係る画像形成装置を含むシステムは、複数の画像形成装置（第１画像形成装置１００及び第２画像形成装置２００）と、コンピュータサーバ（以下、単にサーバともいう）３００とが、通信ネットワーク（以下、単にネットワークともう）４００に接続されて構成されている。図１では、２台の画像形成装置を示しているが、３台以上の画像形成装置がネットワーク４００に接続されていてもよい。
【００３２】
第１画像形成装置１００は、例えば複合機であり、制御部１０２、記憶部１０４、操作部１０６、動作部１０８、タイマ１１０、通信部１１２及びバス１１４を含む。制御部１０２、記憶部１０４、操作部１０６、動作部１０８、タイマ１１０及び通信部１１２はバス１１４に接続されており、各部間のデータ転送は、バス１１４を介して行なわれる。
【００３３】
制御部１０２は、実質的にコンピュータであって、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＲＯＭ（Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）、及びＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）（何れも図示せず）を含む。制御部１０２は、第１画像形成装置１００全体を制御する。記憶部１０４は、例えば不揮発性記憶装置であるＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）である。
【００３４】
制御部１０２のＣＰＵは、操作部１０６からの指示に応じて、各種コンピュータプログラム（以下、単にプログラムともいう）を実行する。これによって、第１画像形成装置１００は、各部の動作の制御、及び外部機器との通信等の所望の処理を実行する。プログラム及びデータは、予めＲＯＭ又は記憶部１０４に記憶されており、所望の処理の実行時に、ＲＯＭ又は記憶部１０４から読出されてＲＡＭに記憶される。ＣＰＵは、ＲＡＭの一部領域を作業エリアとして用いて、プログラムを実行する。プログラムの実行結果は、適宜記憶部１０４に記憶される。
【００３５】
操作部１０６は、入力部と表示部とを含み、例えば、タッチパネルと、液晶パネル等の表示パネルとで構成されるタッチパネルディスプレイである。表示部（表示パネル）には、第１画像形成装置１００に指示を行なうための画面が表示される。ユーザは、表示部に表示されたキーを、表示部に重ねられた入力部（タッチパネル）上で選択する（タッチパネル上の該当部分にタッチする）ことによって、第１画像形成装置１００の機能設定及び動作指示等を行なうことができる。
【００３６】
動作部１０８は、第１画像形成装置１００の機能を実行するための機構を含む。動作部１０８は、例えば、複写機能に関して、原稿及び記録紙を搬送するためのローラ、感光体ドラム、及びトナーの転写ベルト等を回転させるためのモータ、記録紙の搬送路等に配置されたセンサ、ヒータ、並びに、それら各部への給電部等を含む。
【００３７】
タイマ１１０は、制御部１０２からの要求を受けて、制御部１０２に現在時刻の情報（以下、単に現在時刻ともいう）を出力する。
【００３８】
通信部１１２は、例えば、外部のネットワーク４００に接続するためのＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）であり、外部機器とネットワーク４００を介してデータの送受信を行なう。
【００３９】
第２画像形成装置２００は、第１画像形成装置１００と同様に構成されている。
【００４０】
サーバ３００は、制御部３０２、記憶部３０４、通信部３０６、及びバス３０８を含む。制御部３０２、記憶部３０４、及び通信部３０６はバス３０８に接続されており、各部間のデータ転送は、バス３０８を介して行なわれる。
【００４１】
制御部３０２は、ＣＰＵ、ＲＯＭ、及びＲＡＭ（何れも図示せず）を含む。制御部３０２は、サーバ３００全体を制御する。記憶部３０４は、例えば不揮発性記憶装置であるＨＤＤである。
【００４２】
制御部３０２のＣＰＵは、コンピュータ用キーボード及びマウス等の操作装置（図示せず）からの指示に応じて、各種プログラムを実行する。これによって、サーバ３００は、各部の動作の制御、及び外部機器との通信等の所望の処理を実行する。プログラム及びデータは、予めＲＯＭ又は記憶部３０４に記憶されており、所望の処理の実行時に、ＲＯＭ又は記憶部３０４から読出されてＲＡＭに記憶される。ＣＰＵは、ＲＡＭの一部領域を作業エリアとして用いて、プログラムを実行する。プログラムの実行結果は、適宜記憶部３０４に記憶される。
【００４３】
通信部３０６は、外部のネットワーク４００に接続するためのＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）である。
【００４４】
以下、図２を参照して、第１画像形成装置１００により実行される、ファームウェアのアップデートの実行プログラムに関して説明する。本プログラムは、第１画像形成装置１００の電源がオンされて第１画像形成装置１００が起動されると実行され、電源がオフされると終了する。第２画像形成装置２００においても、同じプログラムが実行される。
【００４５】
ステップ５００において、制御部１０２は、アップデート用のファームウェア（アップデート用データともいう）を受信したか否かを判定する。アップデート用データはサーバ３００から送信される。受信したと判定された場合、制御部１０２は、受信したアップデート用データを記憶部１０４に記憶し、その後、制御はステップ５０２に移行する。受信していないと判定された場合、ステップ５００が繰返される。
【００４６】
ステップ５０２において、制御部１０２は、タイマ１１０から現在時刻を取得し、基準時刻としてＲＡＭに記憶する。
【００４７】
ステップ５０４において、制御部１０２は、ファームウェアのアップデートを開始する時刻（以下、アップデート開始時刻という）を決定する。具体的には、制御部１０２は、アップデート開始までの待ち時間を記憶部１０４から読出し、ステップ５０２で記憶した基準時刻に加算して、アップデート開始時刻を決定し、ＲＡＭに記憶する。
【００４８】
アップデート用のファームウェアを受信した時刻からアップデート開始時刻までの待ち時間（以下、単に待ち時間ともいう）は、図３に示す設定画面６００により予め設定される。設定画面６００は、操作部１０６の表示パネルに表示される。図３の領域６０２に表示された２つのラジオボタンは、操作部１０６のタッチパネルが操作されて、択一的に何れか一方が選択され得る。図３は、「即時に開始する」が選択された状態を示す。この場合、待ち時間は“０”に設定され、アップデート用データを受信すると、制御部１０２は、アップデートを直ちに開始する。下側のラジオボタンが選択された場合、セル６０４に待ち時間を、分単位で入力することができる。例えば、セル６０４の右側の三角形が表示された領域がタッチされると、複数の候補（数字）が表示され、その中から選択される。また、セル６０４がタッチされた場合に、テンキーを表示し、テンキーの操作により数値を入力可能にしてもよい。
【００４９】
操作部１０６の操作により図３の「ＯＫ」ボタン６０６がタッチされると、設定された値が記憶部１０４に記憶される。「キャンセル」ボタン６０８がタッチされると、新たな設定値が破棄され、現在の設定値が維持される。「ＯＫ」ボタン６０６又は「キャンセル」ボタン６０８がタッチされた場合、設定画面６００は消去される。
【００５０】
ステップ５０６において、制御部１０２は、アップデートを開始する時刻になったか否かを判定する。具体的には、制御部１０２は、ステップ５０４でＲＡＭに記憶したアップデート開始時刻を読出し、タイマ１１０から現在時刻を取得し、両者を比較して現在時刻がアップデート開始時刻に到達しているか否かを判定する。開始時刻に達した（経過した状態を含む）と判定された場合、制御はステップ５０８に移行する。そうでなければ、ステップ５０６が繰返される。
【００５１】
ステップ５０８において、制御部１０２は、ステップ５００で記憶部１０４に記憶したアップデート用データを読出し、ファームウェアのアップデートを開始する。
【００５２】
ステップ５１０において、制御部１０２は、ファームウェアのアップデートが完了したか否かを判定する。完了したと判定された場合、制御はステップ５００に戻る。そうでなければ、ステップ５１０が繰返される。
【００５３】
以上により、第１画像形成装置１００は、アップデート用のファームウェアを受信した時刻から、予め設定された待ち時間が経過し、アップデート開始時刻に達するまでアップデートを開始せず、アップデート開始時刻に達すれば、アップデートを開始する。第２画像形成装置２００においても同様である。したがって、第１画像形成装置１００と第２画像形成装置２００とにおいて、異なる待ち時間を予め設定しておくことにより、第１画像形成装置１００と第２画像形成装置２００とが同時刻に、サーバ３００からアップデート用のデータを受信したとしても、異なる時刻にアップデートが実行されるようにすることができる。これにより、第１画像形成装置１００と第２画像形成装置２００とが同時に使用できなくなることを回避することができる。
【００５４】
上記では、待ち時間が操作部１０６を介して設定される場合を説明したが、これに限定されない。サーバ３００から各画像形成装置に待ち時間の情報を送信し、各画像形成装置が、受信した待ち時間で、記憶部している待ち時間を更新するようにしてもよい。このようにすれば、ユーザがアップデート開始時刻の設定をデフォルト（例えば、即時に開始する設定）のままにしている場合に、画像形成装置のメーカの意図でアップデート開始時刻を適切な値に設定することができる。また、各画像形成装置でアップデートのタイミングが、初期値から大きく異なる値に設定されているような場合に、アップデートのタイミングを初期値に戻すことができる。
【００５５】
上記では、予め記憶された待ち時間にしたがって、アップデート開始時刻が決定される場合を説明したが、これに限定されない。サーバからアップデート用データと共に、画像形成装置での設定を無効にする情報（無効フラグ）を送信してもよい。無効フラグは、アップデート用データ内に含まれていてもよい。各画像形成装置は、無効フラグを受信した場合、“０”と異なる待ち時間が記憶部に記憶されていたとしても、受信したアップデート用データを用いて、直ちにファームウェアのアップデートを実行する。このようにすることにより、重大なセキュリティ問題を修正したい場合等に、画像形成装置側の設定を無視して、アップデートさせることができる。
【００５６】
（第２の実施の形態）
第１の実施の形態においては、各画像形成装置において、ファームウェアのアップデート開始時刻までの待ち時間として異なる値が予め設定されるのに対して、第２の実施の形態においては、アップデート用データにアップデート開始時刻を特定するための情報が含まれ得る。さらに、第２の実施の形態では、設定された待ち時間と、アップデート用データに含まれる開始時刻との何れを優先的に使用するかが、各画像形成装置において予め設定される。
【００５７】
本実施の形態に係るシステムは、第１の実施の形態に係るシステム（図１）と同様に構成される。本実施の形態に係るシステムを構成する複数の画像形成装置及びサーバはそれぞれ、第１の実施の形態に係るシステムを構成する第１画像形成装置１００、第２画像形成装置２００、及びサーバ３００と同様に構成されており、同様の処理を実行する。以下、図１の参照番号を引用する。
【００５８】
第１の実施の形態と異なり、本実施の形態においては、第１画像形成装置１００及び第２画像形成装置２００は、ファームウェアのアップデートのために、図４に示すプログラムを実行する。図４のプログラムが、第１の実施の形態のプログラム（図１）と異なる点は、ステップ５２０〜ステップ５２４が追加されていることだけである。
【００５９】
図４のプログラムは、図２のプログラムと同様に、第１画像形成装置１００の電源がオンされて第１画像形成装置１００が起動されると実行され、電源がオフされると終了する。
【００６０】
制御部１０２は、アップデート用のデータを受信すると（ステップ５００）、現在時刻を取得して基準時刻として記憶する（ステップ５０２）。このとき、ステップ５００では、アップデート用データのみが受信される場合に限らず、アップデート用データに加えて、時刻情報が受信される場合もある。
【００６１】
ステップ５２０において、制御部１０２は、受信したデータ内に含まれる設定（時刻情報）を優先するか否かを判定する。第１画像形成装置１００において、ファームウェアのアップデートに関する条件は、図５に示す設定画面６２０により予め設定されている。設定画面６２０は、図３の設定画面６００に含まれている設定項目（待ち時間は５分に設定されている。）に加えて、チェックボックス６２２を含む。チェックボックス６２２は、アップデート開始時刻を決定するときに、受信データに含まれている時刻情報と、記憶部１０４に記憶されている待ち時間との何れを優先して使用するかを設定するためのものである。
【００６２】
チェックボックス６２２の選択の有無に対応して所定のフラグ（優先フラグ）が“１”又は“０”に設定される。図５は、チェックボックス６２２が選択された状態を示す（優先フラグ＝１）。この状態では、受信データに含まれている時刻情報が使用される。一方、チェックボックス６２２が選択されていなければ（優先フラグ＝０）、記憶部１０４に記憶されている待ち時間が使用される。設定された値は、「ＯＫ」ボタン６０６がタッチされることにより、記憶部１０４に記憶される。
【００６３】
したがって、ステップ５２０では具体的には、制御部１０２は、記憶部１０４から優先フラグを読出し、優先フラグが“１”であるか否かを判定する。優先フラグが“１”であれば、制御はステップ５２２に移行する。そうでなければ（優先フラグ＝０）、制御はステップ５０４に移行し、第１の実施の形態と同様に、記憶部１０４に記憶された待ち時間を用いて、アップデート開始時刻が決定される。
【００６４】
ステップ５２２において、制御部１０２は、ステップ５００でアップデート用データと共に時刻情報を受信したか否かを判定する。時刻情報を受信したと判定された場合、制御はステップ５２４に移行する。そうでなければ、即ち、アップデート用データのみを受信し、時刻情報を受信しなかった場合、制御はステップ５０４に移行する。
【００６５】
ステップ５２４において、制御部１０２は、ステップ５００で受信したデータに含まれる時刻情報により特定される時刻をアップデート開始時刻として決定する。ここでは、受信された時刻情報は、待ち時間のような相対時間を示す情報ではなく、第１画像形成装置１００が設置されている場所で共通に使用されている絶対時刻であるとする。
【００６６】
ステップ５０４又はステップ５２４により、アップデート開始時刻が決定された後、第１の実施の形態と同様に、アップデート開始時刻になれば、受信したアップデート用データを用いてファームウェアのアップデートが実行される。
【００６７】
以上により、第１画像形成装置１００は、設定に応じて、記憶部１０４に記憶された待ち時間、又は、サーバ３００から受信した時刻情報を用いて、サーバ３００から受信したアップデート用データを用いてファームウェアのアップデートを行なうことができる。第２画像形成装置２００も同様である。したがって、第１の実施の形態と同様に、第１画像形成装置１００と第２画像形成装置２００とにおいて、異なる待ち時間を予め設定しておくことにより、第１画像形成装置１００と第２画像形成装置２００とが同時に使用できなくなることを回避することができる。
【００６８】
受信した時刻情報を優先的に使用するように設定されている場合、アップデート用データのみを受信すると、第１画像形成装置１００は、第１の実施の形態と同様に、アップデート用データを受信した時刻から、予め設定された待ち時間が経過するまで、アップデートを開始せず、アップデート開始時刻に達すれば、アップデートを開始することができる。一方、受信した時刻情報を優先的に使用するように設定されている場合、アップデート用データに加えて時刻情報を受信すると、受信した時刻情報により特定されるアップデート開始時刻に、ファームウェアのアップデートが開始される。したがって、複数の画像形成装置のアップデートを、異なるタイミングで実行させることも、同時に実行させることも可能になる。例えば、各画像形成装置において、受信した時刻情報を優先的に使用するように予め設定しておき、通常のアップデートでは、サーバ３００から各画像形成装置に、アップデート用データのみを送信し、各画像形成装置に記憶されている待ち時間により決定されるタイミングでアップデートを開始させる。一方、重要な不具合を解消するためのアップデート、又は、特定の日時から処理内容を変更するためアップデート等の場合には、一斉にアップデートが実行されることが好ましいので、サーバ３００から各画像形成装置に、アップデート用データ及び時刻情報を送信する。これにより、各画像形成装置において同じ時刻にアップデートを開始させることができる。
【００６９】
上記では、アップデート用データと共に送信される時刻情報は、アップデート開始時刻そのものを特定するための時刻情報である場合を説明したが、これに限定されない。送信される時刻情報は、アップデートを開始するまでの待ち時間のような相対時間を表す情報であってもよい。
【００７０】
上記では、受信された時刻情報を優先的に使用するか否かを特定するための優先フラグが、画像形成装置に予め設定されている場合を説明したが、これに限定されない。優先フラグが、アップデート用データと共に画像形成装置に送信されてもよい。その場合、画像形成装置は、ステップ５０４において、アップデート用データに優先フラグが含まれているか否か、及び、含まれている優先フラグの値を判定し、その判定結果に応じて、ステップ５０４又はステップ５２２を実行すればよい。
【００７１】
（第３の実施の形態）
第１及び第２の実施の形態においては、各画像形成装置がファームウェアのアップデートに関する条件を管理するのに対して、第３の実施の形態では、アップデートに関する条件を外部装置でも管理することができる。さらに、第３の実施の形態では、第２の実施の形態と同様に、各画像形成装置に設定された待ち時間と、アップデート用データに含まれる開始時刻を特定するための情報との何れを優先的に使用するかが、各画像形成装置において予め設定されることに加えて、アップデート開始時刻をサーバに問合せるか否かが予め設定される。
【００７２】
図６を参照して、本実施の形態に係るシステムは、第１の実施の形態に係るシステム（図１）にアップデート開始時間管理サーバ３２０が追加された構成になっている。
【００７３】
本実施の形態に係るシステムを構成する複数の画像形成装置及びサーバはそれぞれ、第１の実施の形態に係るシステムを構成する第１画像形成装置１００、第２画像形成装置２００、及びサーバ３００と同様に構成されており、同様の処理を実行する。以下、図１の参照番号を引用する。
【００７４】
アップデート開始時間管理サーバ３２０は、サーバ３００と同様に構成され、ネットワーク４００に接続されている。アップデートに関する情報を含むデータベース３２２は、アップデート開始時間管理サーバ３２０の記憶部（図示せず）に記憶されている。
【００７５】
本実施の形態においては、第１画像形成装置１００及び第２画像形成装置２００は、ファームウェアのアップデートのために、図７に示すプログラムを実行する。図７のプログラムが、第２の実施の形態のプログラム（図４）と異なる点は、ステップ５４０〜ステップ５５０が追加されていることだけである。
【００７６】
図７のプログラムは、図４のプログラムと同様に、第１画像形成装置１００の電源がオンされて第１画像形成装置１００が起動されると実行され、電源がオフされると終了する。制御部１０２は、アップデート用データを受信すると（ステップ５００）、現在時刻を取得して基準時刻として記憶する（ステップ５０２）。このとき、ステップ５００では、第２の実施の形態と同様に、アップデート用データのみが受信される場合に限らず、アップデート用データに加えて、時刻情報が受信される場合もある。
【００７７】
受信した時刻情報を優先的に使用するように設定されていれば（ステップ５２０での判定結果がＹＥＳ）、第２の実施の形態と同様にステップ５２２が実行され、時刻情報の受信の有無に応じて、ステップ５２４又はステップ５０４が実行される。
【００７８】
一方、受信した時刻情報を優先的に使用するように設定されていなければ（ステップ５２０での判定結果がＮＯ）、ステップ５４０において、制御部１０２は、アップデート開始時刻をアップデート開始時間管理サーバ３２０に問合せるように設定されているか否かを判定する。具体的には、制御部１０２は、後述する設定画面（図８）により記憶部１０４に記憶された所定のフラグ（問合せフラグ）を読出し、その値により判定する。問合せるように設定されていれば（問合せフラグ＝１）、制御はステップ５４２に移行する。そうでなければ（問合せフラグ＝０）、制御はステップ５０４に移行し、第１の実施の形態と同様に記憶部１０４に記憶された待ち時間を用いて、アップデート開始時刻が決定される。
【００７９】
ステップ５４２において、制御部１０２は、アップデート開始時間管理サーバ３２０にアップデート開始時刻を特定するための時刻情報の送信を要求する情報（以下、要求情報ともいう）を送信する。具体的には、制御部１０２は、要求情報、送信先アドレス、及び送信元アドレスを含むパケットデータを生成し、通信部１１２から送信する。制御部１０２は、後述する設定画面（図８）により記憶部１０４に記憶されたアップデート開始時間管理サーバ３２０のＩＰアドレスを読出し、そのＩＰアドレスを送信先アドレスとする。送信元アドレスは、自己（第１画像形成装置１００）のＩＰアドレスである。
【００８０】
アップデート開始時間管理サーバ３２０は、要求情報を含むパケットデータを受信した場合、そのパケットデータに含まれる送信元アドレスを用いて内部のデータベースを検索し、対応する待ち時間を特定する。アップデート開始時間管理サーバ３２０には、例えば、図９に示すデータベースが記憶されている。装置名の「ｐｒｉｎｔｅｒ１」は第１画像形成装置１００を表し、「ｐｒｉｎｔｅｒ２」は第２画像形成装置２００を表している。この場合、待ち時間として“３”分が特定される。アップデート開始時間管理サーバ３２０は、要求情報が含まれていたパケットデータに含まれる送信元アドレスを送信先アドレスとし、特定された待ち時間を含むパケットデータを生成して、送信する。これにより、第１画像形成装置１００は、アップデート開始時刻を特定するための時刻情報として待ち時間を受信することができる。
【００８１】
ステップ５４４において、制御部１０２は、アップデート開始時間管理サーバ３２０から時刻情報を受信したか否かを判定する。受信したと判定された場合、受信した時刻情報をＲＡＭに記憶し、制御はステップ５４６に移行する。そうでなければ、制御はステップ５４８に移行する。
【００８２】
ステップ５４６において、制御部１０２は、ステップ５４４で受信した時刻情報を用いてアップデート開始時刻を決定し、ＲＡＭに記憶する。その後、制御はステップ５０６に移行する。具体的には、制御部１０２は、受信した待ち時間を、ステップ５０２で記憶部１０４に記憶した基準時刻に加算して、アップデート開始時刻を決定する。
【００８３】
ステップ５４４で受信したと判定されなければ、ステップ５４８において、制御部１０２は、アップデート開始時間管理サーバ３２０との通信エラーが発生したか否かを判定する。通信エラーが発生したと判定された場合、制御はステップ５５０に移行する。そうでなければ、制御はステップ５４４に戻る。
【００８４】
ステップ５５０において、制御部１０２は、アップデート開始時刻の受信処理を中止すするように設定されているか否かを判定する。具体的には、制御部１０２は、後述する設定画面（図８）により記憶部１０４に記憶された所定のフラグ（エラー処理フラグ）を読出し、その値により判定する。中止するように設定されていれば（エラー処理フラグ＝１）、制御はステップ５００に戻る。そうでなければ（エラー処理フラグ＝０）、制御はステップ５４２に戻る。
【００８５】
ステップ５４４及びステップ５４８により、通信エラーが発生していなければ、アップデート開始時間管理サーバ３２０から時刻情報を待受け、通信エラーが発生すれば、再度、要求情報がアップデート開始時間管理サーバ３２０に送信される（ステップ５４２）。
【００８６】
ステップ５０４、ステップ５２４又はステップ５４６により、アップデート開始時刻が決定された後、第１の実施の形態と同様に、アップデート開始時刻になれば、受信したアップデート用データを用いてファームウェアのアップデートが実行される。
【００８７】
図８を参照して、具体的な設定に応じて、図７のプログラムにおける処理の流れを説明する。図８の設定画面６４０には、図５の設定画面６２０に含まれる項目（待ち時間は５分に設定されている。）に加えて、アップデート開始時間管理サーバ３２０への問合せに関する設定を行なうための項目が含まれている。チェックボックス６４２は、アップデート開始時刻をアップデート開始時間管理サーバ３２０に問合せるか否かを設定するためのものである。チェックボックス６４２は、チェックボックス６２２が選択されていない場合に選択可能であり、チェックボックス６２２が選択されている場合には、選択することはできない。
【００８８】
チェックボックス６４２の選択の有無に対応して問合せフラグが“１”又は“０”に設定される。セル６４４には、問合せ先であるアップデート開始時間管理サーバ３２０のＩＰアドレスが設定される。図８は、チェックボックス６４２が選択され、アップデート開始時間管理サーバ３２０のＩＰアドレスが入力された状態を示す。
【００８９】
領域６４６に表示された２つのラジオボタンは、アップデート開始時間管理サーバ３２０との通信に支障が生じた場合の処理を設定するためのものであり、択一的に何れか一方が選択され得る。何れが選択されるかに応じて、エラー処理フラグが設定される。図８は、「アップデートしない」（アップデートを中止）が選択された状態であり、エラー処理フラグは“１”に設定される。「アップデートする」が選択された場合、エラー処理フラグは“０”に設定される。
【００９０】
「ＯＫ」ボタン６０６が選択されると、設定画面６４０における各設定に応じて、待ち時間、優先フラグ、問合せフラグ、サーバのＩＰアドレス、及びエラー処理フラグが、記憶部１０４に記憶される。
【００９１】
図８の設定画面６４０に対応する情報が記憶部１０４に記憶されている場合、第１画像形成装置１００は、アップデート用データを受信すると（ステップ５００の判定結果がＹＥＳ）、ステップ５２０が実行され、その判定結果がＮＯ（優先フラグが“０”）となり、ステップ５４０が実行され、その判定結果がＹＥＳ（問合せフラグ＝１）となり、ステップ５４２が実行される。ステップ５４２では、セル６４４に設定されたＩＰアドレスを送信先として、要求情報が送信される。その後、ステップ５４４により時刻情報が受信され、ステップ５４６によりアップデート開始時刻が決定される。即ち、待ち時間として、記憶部１０４に予め記憶されていた「５分」ではなく、ステップ５４４で受信された「３分」が使用される。
【００９２】
ステップ５４４により、時刻情報が受信されずに、ステップ５４８でエラーが検出された場合、ステップ５５０での判定結果はＹＥＳ（エラーフラグ＝１）となり、アップデートは実行されずに、制御はステップ５００に戻る。
【００９３】
図８において、「アップデートする」が選択されていれば、エラーフラグは“０”であり、ステップ５５０の判定結果はＮＯとなり、制御はステップ５４２に戻る。
【００９４】
図８において、チェックボックス６４２が選択されておらず、チェックボックス６２２も選択されていなければ、第１画像形成装置１００は、アップデート用データを受信すると（ステップ５００の判定結果がＹＥＳ）、ステップ５２０が実行され、その判定結果がＮＯ（優先フラグ＝０）となり、ステップ５４０が実行され、その判定結果がＮＯ（問合せフラグ＝０）となり、ステップ５０４が実行される。ステップ５０４により、ステップ５０２で記憶した基準時刻から５分後（図８参照）の時刻が、アップデート開始時刻として決定される。
【００９５】
図８において、チェックボックス６２２が選択され、チェックボックス６４２が選択されていなければ、第１画像形成装置１００は、アップデート用データを受信すると（ステップ５００の判定結果がＹＥＳ）、ステップ５２０が実行され、その判定結果がＹＥＳ（優先フラグ＝１）となり、ステップ５２２が実行され、その判定結果に応じて、ステップ５２４又はステップ５０４が実行され、アップデート開始時刻が決定される。
【００９６】
以上により、第１画像形成装置１００は、設定に応じて、記憶部１０４に記憶された待ち時間、サーバ３００から受信した時刻情報、又は、アップデート開始時間管理サーバ３２０から受信した時刻情報を用いて、アップデート開始時刻を決定することができる。第２画像形成装置２００も同様である。したがって、第１の実施の形態と同様に、第１画像形成装置１００と第２画像形成装置２００とにおいて、異なる待ち時間を予め設定しておくことにより、第１画像形成装置１００と第２画像形成装置２００とが同時に使用できなくなることを回避することができる。また、第２の実施の形態と同様に、サーバ３００から、各画像形成装置のアップデート開始時刻を制御することができ、例えば、複数の画像形成装置に一斉にアップデートを開始させることができる。
【００９７】
さらに、各画像形成装置においてアップデートに関する設定をしなくても、アップデート開始時間管理サーバ３２０で、各画像形成装置のアップデートに関する設定を効率的に管理することができる。
【００９８】
上記では、データベースに各画像形成装置の待ち時間が記憶されている場合を説明したが、これに限定されない。待ち時間の代わりに、アップデート開始時刻（絶対時刻）が記憶されていてもよい。その場合、ステップ５４４で受信される情報そのものがアップデート開始時刻である。
【００９９】
上記では、受信した時刻情報を優先するか否かを特定するための優先フラグを設定可能な場合を説明したが、これに限定されない。優先フラグを設定することができなくてもよい。その場合、設定画面は、図８において、チェックボックス６２２とその項目とを削除した画面にすればよい。画像形成装置で実行されるプログラムは、図７において、ステップ５２０〜５２４を削除し、ステップ５０２に続いてステップ５４０が実行されるようにすればよい。
【０１００】
上記では、アップデート開始時間管理サーバ３２０が、サーバ３００と異なる場合を説明したが、サーバ３００がアップデート開始時間管理サーバの役割をも実行してもよい。
【０１０１】
上記した待ち時間の値は一例であり、待ち時間は、対象となる画像形成装置に応じて、適切な値に設定され得る。また、待ち時間及びアップデート開始時刻は、分単位での指定に限定されず、より細かく又はより粗く設定されてもよい。
【０１０２】
上記した第１〜第３の実施の形態では、画像形成装置のファームウェアのアップデートを行なう場合を説明したが、これに限定されない。事務所等において、同じ種類の電子装置が複数使用されており、それらの電子装置にサーバからアップデート用データを配信するアップデート方式が採用されていれば、同時にアップデートが実行された場合に、全ての電子装置を使用できなくなるので、本発明を適用することにより、そのような状況が生じることを回避することができる。
【０１０３】
今回開示された実施の形態は単に例示であって、本発明が上記した実施の形態のみに制限されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、特許請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味及び範囲内での全ての変更を含む。
【符号の説明】
【０１０４】
１００    第１画像形成装置
１０２    制御部
１０４    記憶部
１０６    操作部
１０８    動作部
１１０    タイマ
１１２    通信部
１１４    バス
２００    第２画像形成装置
３００    サーバ
３０２    制御部
３０４    記憶部
３０６    通信部
３０８    バス
３２０    アップデート開始時間管理サーバ
４００    ネットワーク
【図１】
0006534519.tif 000002
【図２】
0006534519.tif 000003
【図３】
0006534519.tif 000004
【図４】
0006534519.tif 000005
【図５】
0006534519.tif 000006
【図６】
0006534519.tif 000007
【図７】
0006534519.tif 000008
【図８】
0006534519.tif 000009
【図９】
0006534519.tif 000010