Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7765332B2 - プログラム更新システムおよび情報処理装置 - Google Patents
[go: Go Back, main page]

JP7765332B2 - プログラム更新システムおよび情報処理装置 - Google Patents

プログラム更新システムおよび情報処理装置

Info

Publication number
JP7765332B2
JP7765332B2 JP2022056568A JP2022056568A JP7765332B2 JP 7765332 B2 JP7765332 B2 JP 7765332B2 JP 2022056568 A JP2022056568 A JP 2022056568A JP 2022056568 A JP2022056568 A JP 2022056568A JP 7765332 B2 JP7765332 B2 JP 7765332B2
Authority
JP
Japan
Prior art keywords
update
time
data
unit
job
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2022056568A
Other languages
English (en)
Other versions
JP2023148504A (ja
Inventor
健二 小野木
真人 塩崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP2022056568A priority Critical patent/JP7765332B2/ja
Priority to US18/127,526 priority patent/US12481489B2/en
Publication of JP2023148504A publication Critical patent/JP2023148504A/ja
Application granted granted Critical
Publication of JP7765332B2 publication Critical patent/JP7765332B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4887Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Facsimiles In General (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Stored Programmes (AREA)

Description

この発明は、プログラム更新システムに関し、特に、画像形成装置などの情報処理装置の動作を制御するための制御プログラムを、情報処理装置に配信し、情報処理装置の制御プログラムを新しい制御プログラムに更新するプログラム更新システムに関する。
従来から、印刷機能、原稿読取機能、読取画像データの送信機能、画像データの取得機能、文字認識機能など、多数の機能を有する画像形成装置が利用されている。
また、画像形成装置を操作することにより、ネットワークを介し、サーバーとなる情報処理装置が保持する画像データ等を含む印刷ジョブを取得して印刷を実行する印刷システムも実用化されている。また前記のような印刷システムおいて、画像形成装置がサーバーの役割を果たす印刷システムも存在する。すなわち、サーバーとなる画像形成装置(親機)において、画像データ等を含む印刷ジョブを受信・保持し、ネットワークを介した他の画像形成装置(子機)からの要求に対応して、指定された印刷ジョブを子機に送信し、子機において印刷ジョブの印刷を実行する。
このような画像形成装置には、多数の機能を実行させるための制御プログラムが記憶されている。
この制御プログラムは、機能の追加や変更、不具合の改良等のために、新しいプログラムに更新されることがある。
制御プログラムの更新は、保守担当者が画像形成装置の設置場所に出向き、画像形成装置ごとに、保守担当者が行う場合もある。
また、多数の画像形成装置を保守している場合、所定のサーバーに、新しい制御プログラムを保存しておき、このサーバーからネットワークを介して、多数の画像形成装置にそれぞれ新しい制御プログラムを配信し、各々の画像形成装置において、自動的に制御プログラムを受信した新しい制御プログラムに置き換えるようにするシステムも利用されている。
また、たとえば、特許文献1では、アップデートプログラムが格納されたコンテンツサーバと、アップデートプログラムのファイル情報を提供するファイル情報提供サーバと、ファイル情報提供サーバから送信されたファイル情報を含む電子メールを受信するメールサーバと、ダウンロードしたアップデートプログラムを書き込んでソフトウェアを更新する自動アップデート装置とが、インターネット等の通信手段を介して接続され、自動アップデート装置が、メールサーバのメールボックスに電子メールが存在していることを確認した場合に、メールサーバからその電子メールを受信し、受信した電子メールに含まれるファイル情報に従って、コンテンツサーバにアクセスして、コンテンツサーバからアップデートプログラムをダウンロードし、ダウンロードしたアップデートプログラムをROM領域に書き込んで、ソフトウェアを更新する自動アップデートシステムが記載されている。
また、特許文献1には、自動アップデート装置が、アップデートプログラムをダウンロードした後、アップデート時刻が指定されている場合には、指定されたアップデート時刻になった場合に、ダウンロードしたアップデートプログラムによるソフトウェアの更新を行うことも記載されている。
特開2006-221224号公報
しかし、一般的に、画像形成装置等において、制御プログラムの更新を実行しているときには、画像形成装置本来の印刷機能等を実行することやそのための入力操作ができない。
たとえば、画像形成装置を利用しようとするユーザーが、サーバーから印刷ジョブを取得して印刷を実行するための入力操作をしようとした際に、制御プログラムの更新が開始されると、通常の入力操作を行えず、制御プログラムの更新が完了するまで長時間に渡り待たされる可能性がある。
ユーザーの使用頻度の低い時間帯に制御プログラムの更新が開始されるよう更新開始の時刻を設定することで前述のような問題を回避することも考えられる。そのような時間帯において常に画像形成装置の電源が切られているような運用になっている場合、保守担当者が期待するように制御プログラムの更新が行われないという状況が起こり得る。
そこで、この発明は、以上のような事情を考慮してなされたものであり、入力操作によりジョブが実行される可能性が高い期間において制御プログラムの更新が行われないようにすることで、ユーザーが画像形成装置などの情報処理装置を利用しようとしたときに、その情報処理装置の制御プログラムの更新が開始されたために、ユーザーによる通常の入力操作ができず、更新が完了するまで待たされるという事態が生じる可能性を低減することによりユーザーの利便性を確保することを課題とする。
この発明は、ネットワークを介して接続された複数の情報処理装置からなるプログラム更新システムであって、前記複数の情報処理装置は少なくとも1つの親機と少なくとも1つの子機とからなり、前記親機である情報処理装置は、前記子機である情報処理装置において処理されるデータを含むジョブデータを取得するジョブデータ取得部と、前記取得したジョブデータを管理記憶するジョブデータ管理記憶部と、子機からの要求に従い前記ジョブデータ管理記憶部から読み出したジョブデータを、ネットワークを介して子機に送信するジョブデータ送信部と、情報処理装置の動作を制御する制御プログラムを更新するための更新データを取得する更新データ取得部と、前記取得した更新データを記憶する更新データ記憶部と、更新データ記憶部から読み出した更新データを、ネットワークを介して子機に配信する更新データ配信部と、を備え、前記子機である情報処理装置は、ネットワークを介して親機に対して前記ジョブデータの送信を要求するジョブデータ要求部と、親機から送信された前記ジョブデータを受信するジョブデータ受信部と、受信したジョブデータを処理することにより情報処理装置が有する機能を実現するジョブ実行部と、自己の動作を制御する制御プログラムを記憶するプログラム記憶部と、ネットワークを介して親機から前記更新データを受信する更新データ受信部と、受信した前記更新データを用いて前記プログラム記憶部で記憶する制御プログラムの更新を行うプログラム更新実行部と、を備え、前記親機が更新データを配信するタイミングと前記子機が制御プログラムの更新を行うタイミングとのうち少なくとも一方が、前記ジョブデータ管理記憶部で記憶されているジョブデータに応じて決定されることを特徴とするプログラム更新システムを提供するものである。
また、前記親機が、前記ジョブデータ管理記憶部から読み出したジョブデータを処理することにより情報処理装置が有する機能を、前記子機と同様に実現する第2のジョブ実行部を備えたことを特徴とする。
また、前記親機が、前記ジョブデータを取得し前記ジョブデータ管理記憶部で記憶することに応じて、前記ジョブデータを取得した時刻に基づいて前記更新データの配信予定時刻を決定する配信予定時刻決定部と、前記配信予定時刻を記憶する記憶部と、をさらに備え、前記更新データ配信部は、前記配信予定時刻に基づくタイミングで前記更新データを配信することを特徴とする。
また、前記親機が、ジョブデータを受信した後、更新データの送信を行わないようにする期間を設けるための設定である遅延時間設定を記憶するための設定記憶部をさらに備え、前記配信予定時刻決定部は、前記ジョブデータ管理記憶部で記憶されるジョブデータを最後に取得した時刻と予め記憶された前記遅延時間設定とを用いて前記配信予定時刻を決定することを特徴とする。
また、前記親機において、前記記憶部で配信予定時刻を記憶した後に、前記ジョブデータ取得部が新しいジョブデータを取得した場合、前記配信予定時刻決定部が、前記新しいジョブデータを取得した時刻に基づいて、前記配信予定時刻を変更することを特徴とする。
また、前記親機おいて、前記ジョブデータ取得部が少なくとも1つ以上のジョブデータを取得する場合に、それぞれのジョブデータを取得した時刻であるジョブ取得時刻を前記ジョブデータと関連付けて前記ジョブデータ管理記憶部にて記憶し、前記記憶部が配信予定時刻を記憶した後に、前記子機からの要求に従い前記ジョブデータ管理記憶部から読み出したジョブデータを、ジョブデータ送信部によりネットワークを介して子機に送信した場合、該ジョブデータ以外の、前記ジョブデータ管理記憶部で記憶されているジョブデータのジョブ取得時刻を利用して前記配信予定時刻決定部が前記配信予定時刻を変更することを特徴とする。
また、前記子機が、前記受信した更新データを記憶する更新データ記憶部と、前記更新データを受信した時刻に基づいて、前記制御プログラムの更新を開始する時刻である更新開始予定時刻を設定する更新開始予定時刻設定部と、前記更新開始予定時刻を記憶する記憶部と、を備え、前記親機が新たなジョブデータを前記ジョブデータ管理記憶部で記憶したことに応じて前記更新開始予定時刻を変更すること、および、前記プログラム更新実行部は、前記更新開始予定時刻に基づくタイミングで制御プログラムの更新を行うことを特徴とする。
また、前記子機が、子機の制御プログラムの更新を開始する時刻に関する設定である更新開始時刻設定を記憶する設定記憶部をさらに備え、前記更新開始予定時刻設定部が更新開始予定時刻を設定する際に予め記憶された前記更新開始時刻設定を利用することを特徴とする。
また、前記親機が、前記ジョブデータ取得部がジョブを取得した場合、およびネットワークを介して子機にジョブデータを送信した場合に、前記子機が制御プログラムの更新処理を実行する予定時刻を決定するための情報である更新制御情報を前記子機に送信する更新制御情報送信部とを、さらに備え、前記ジョブ取得部が新しいジョブを取得した場合、前記更新制御情報送信部が、前記更新制御情報を前記子機に送信し、前記子機の更新開始予定時刻設定部が、前記更新開始予定時刻を、受信された更新制御情報に基づいて更新することを特徴とする。
また、前記親機が、子機から送信された更新データ取得要求を受信する更新取得要求受信部と、子機から前記更新データ取得要求を受信した場合に、前記ジョブデータ管理記憶部で記憶されているジョブデータに応じて更新データ配信部による更新データの配信の可否を判定する配信可否判定部と、をさらに備え、前記子機が、前記親機に、更新データを取得するための要求である更新データ取得要求を送信する更新データ取得要求部をさらに備えたことを特徴とする。
また、前記子機が、前記親機に前記更新データ取得要求を送信する時刻に関する設定である更新要求時刻設定を記憶する設定記憶部をさらに備え、前記更新データ取得要求部は、前記更新要求時刻設定に基づくタイミングで前記更新データ取得要求を送信することを特徴とする。
また、この発明のプログラム更新システムにおいて、前記情報処理装置が、画像形成装置であることを特徴とする。
また、この発明は、情報処理装置であって、情報処理装置において処理されるデータを含むジョブデータを取得するジョブデータ取得部と、前記取得したジョブデータを管理記憶するジョブデータ管理記憶部と、第2の情報処理装置からの要求に従い前記ジョブデータ管理記憶部から読み出したジョブデータを、ネットワークを介して前記第2の情報処理装置に送信するジョブデータ送信部と、情報処理装置の動作を制御する制御プログラムを更新するための更新データを取得する更新データ取得部と、前記取得した更新データを記憶する更新データ記憶部と、更新データ記憶部から読み出した更新データを、ネットワークを介して前記第2の情報処理装置に配信する更新データ配信部と、を備え、前記ジョブデータ管理記憶部で記憶されているジョブデータに応じて前記更新データを配信するタイミングもしくは可否を決定することを特徴とする情報処理装置を提供するものである。
また、この発明は、更新データによって所定の機能を実行させるための制御プログラムを更新する情報処理装置のプログラム更新方法であって、前記情報処理装置が、配信装置から送信される前記更新データを受信する親機と、前記親機から配信される更新データを利用して、自己の情報処理装置の機能を実行させる制御プログラムを更新する1または複数の子機からなり、前記情報処理装置のプログラム更新方法は、前記親機に備えられた制御部が、前記更新データを前記子機に配信する予定時刻である配信予定時刻を記憶する記憶ステップと、前記制御プログラムを更新するための更新データを取得する更新データ取得ステップと、前記情報処理装置において処理されるデータを含むジョブを取得するジョブ取得ステップと、前記ジョブを取得した時刻であるジョブ取得時刻を設定記憶するジョブ取得時刻記憶ステップと、前記配信予定時刻を経過した後に、前記取得した更新データを、前記子機に配信する更新データ配信ステップとを実行させた後に、前記子機に備えられた制御部が、前記親機から配信された更新データを受信する更新データ受信ステップと、前記受信した更新データによって、前記制御プログラムを更新するプログラム更新実行ステップとを実行させることからなり、前記ジョブ取得ステップにおいて、1または複数のジョブが取得された場合に、前記ジョブ取得時刻記憶ステップにおいて、取得されたジョブごとにジョブ取得時刻を設定記憶し、前記更新データ配信ステップにおいて、前記設定記憶されたジョブ取得時刻のうち、最後に取得したジョブのジョブ取得時刻を利用して、前記配信予定時刻を設定し、現在時刻が前記設定された配信予定時刻を経過した場合に、前記更新データを前記子機に配信することを特徴とする情報処理装置のプログラム更新方法を提供するものである。
この発明によれば、情報処理装置の親機のジョブ取得部が1または複数のジョブを取得した場合に、取得したジョブごとにジョブ取得時刻を設定記憶し、設定記憶されたジョブ取得時刻のうち、最後に取得したジョブのジョブ取得時刻を利用して、配信予定時刻を設定し、現在時刻が設定された配信予定時刻を経過した場合に、更新データを子機に配信するので、情報処理装置の子機において制御プログラムの更新が開始されたために、ユーザーが実行させようとした機能が実行できないという事態を回避することができ、ユーザーによるジョブの実行と制御プログラムの更新のタイミングが重複しないようにして、情報処理装置を利用するユーザーの利便性を確保することができる。
この発明のプログラム更新システムの一実施例の概略説明図である。 この発明の画像形成装置(親機)の一実施例の構成ブロック図である。 この発明の画像形成装置(子機)の一実施例の構成ブロック図である。 この発明の配信装置の一実施例の構成ブロック図である。 この発明の画像形成装置(親機)の記憶部に記憶される情報の一実施例の説明図である。 この発明の画像形成装置(子機)の記憶部に記憶される情報の一実施例の説明図である。 この発明のプログラム更新システムにおける制御プログラムの更新処理の実施例1の通信シーケンスである。 この発明のプログラム更新システムにおける制御プログラムの更新処理の実施例2の通信シーケンスである。 この発明のプログラム更新システムにおける制御プログラムの更新処理の実施例2の通信シーケンスである。 この発明のプログラム更新システムにおける制御プログラムの更新処理の実施例3の通信シーケンスである。 この発明のプログラム更新システムにおける制御プログラムの更新処理の実施例3の通信シーケンスである。 この発明のプログラム更新システムにおける制御プログラムの更新処理の実施例3の通信シーケンスである。 この発明のプログラム更新システムにおける制御プログラムの更新処理の実施例4の通信シーケンスである。 この発明のプログラム更新システムにおける制御プログラムの更新処理の実施例4の通信シーケンスである。 この発明のプログラム更新システムにおける制御プログラムの更新処理の実施例4の通信シーケンスである。 この発明のプログラム更新システムにおける制御プログラムの更新処理の実施例4の通信シーケンスである。
以下、図面を使用して本発明の実施の形態を説明する。なお、以下の実施例の記載によって、この発明が限定されるものではない。
<プログラム更新システムの構成>
図1に、この発明のプログラム更新システムの一実施例の概略説明図を示す。
図1において、この発明のプログラム更新システムは、主に、ネットワーク10を介して接続された配信装置3と、画像データを処理する画像形成装置(1、2)とから構成される。
画像形成装置は、1つでもよいが、複数の画像形成装置をネットワークに接続してもよい。
画像形成装置(1、2)は、この発明の情報処理装置に相当する。
また、ユーザーが所有する情報処理端末4であって、ユーザーが印刷データを作成または入力し、画像形成装置にその印刷データを送信する情報処理端末も、プログラム更新システムに含めてもよい。
以下の実施例では、情報処理装置に相当する画像形成装置にインストールされる制御プログラムの更新処理について説明する。
ただし、この発明の制御プログラムの更新処理は、画像形成装置だけでなく、画像形成装置以外の情報処理装置(たとえば、パソコン、携帯端末など)にインストールされる制御プログラムの更新処理にも適用可能である。
情報処理装置において処理されるデータを含む情報をジョブと呼び、以下の実施例において、画像形成装置において処理されるデータを含むジョブのうち、主に、印刷することを目的とするジョブを印刷ジョブと呼ぶ。
配信装置3と、各画像形成装置(1、2)と、情報処理端末4は、ネットワーク10を介して、相互に通信可能なものとする。
ネットワーク10を介して配信装置3に接続される画像形成装置や情報処理端末は、1台だけでなく、複数台でもよい。
ネットワーク10としては、インターネットなどの広域通信網や、LANなど、既存のあらゆる通信網を用いることができ、通信形態は、有線通信および無線通信のどちらを用いてもよい。
画像形成装置(MFP:Multifunction Peripheral)は、画像データを処理する装置であり、画像データの入力、形成、出力、保存、転送等を行う。
画像形成装置を、複合機、または単に、MFPとも呼ぶ。
また、この発明では、情報処理装置に相当する画像形成装置は、配信装置3から送信される更新データを受信する親機1と、親機から配信される更新データを利用して、自己の画像形成装置の機能を実行させる制御プログラムを更新する1または複数の子機2からなるものとする。
以下、親機1をMFPPとも呼び、子機2をMFPCとも呼ぶものとする。
配信装置3は、主に、画像形成装置MFPで利用する制御プログラムを記憶し、制御プログラムを画像形成装置に配信する装置である。
また、制御プログラムについて、不具合の修正や新しい機能の追加等が行われる場合は、制御プログラムの更新が行われる。
この画像形成装置MFPで利用する制御プログラムを更新するための更新プログラムを含むデータを更新データと呼ぶ。
すでに画像形成装置MFPに記憶されている制御プログラムを更新する必要がある場合は、制御プログラムを更新するための更新データが、配信装置3に記憶され、配信装置3から親機となる画像形成装置MFPに送信されるものとする。
なお、以下の実施例では、更新データは、配信装置3から親機となる画像形成装置MFPに送信するものとするが、更新データをUSBメモリなどの外部記憶媒体に保存し、その外部記憶媒体を親機に直接装着することにより、外部記憶媒体から更新データを取得してもよい。
配信装置3を配信サーバー、または単に、SVとも呼ぶ。
更新データは、配信装置3から直接、各画像形成装置に送信してもよいが、この発明では、複数の画像形成装置のうち、親機1のみに更新データを送信するものとする。
制御プログラムは、画像形成装置に備えられた機能を実行させるためのプログラムであり、各画像形成装置にインストールされるソフトウェアであり、制御ソフトとも呼ぶ。
また、更新データは、制御プログラムを更新することにより、画像形成装置に新しい機能を追加したり、機能を変更改良したりするためのデータであり、制御プログラムの更新は、制御プログラムによる所定の処理を介して行われる。
情報処理端末4は、上記したように、画像形成装置を利用しようとするユーザーが所有する装置であり、パソコンや携帯端末に相当する。
情報処理端末4を、ユーザー端末、または単に、TEとも呼ぶ。
<画像形成装置の構成>
画像形成装置MFPは、画像データを処理する機能、たとえば、複写(コピー)機能、印刷機能、原稿読取(スキャン)機能、原稿編集機能、原稿保存機能、原稿送信(ファクス)機能、通信機能などを備えた電子機器である。
画像形成装置MFPは、上記したように、配信サーバーSVから直接、制御プログラムを受信する親機MFPPと、制御プログラムを親機MFPPから受信する子機MFPCとからなる。
親機MFPPと子機MFPCとでは、制御プログラムの更新機能に関する処理が異なるので、親機MFPPと子機MFPCに分けて、それらの構成ブロック図を説明する。
親機MFPPは、更新データや印刷ジョブを受信し、子機MFPCに更新データや印刷ジョブを配信する機能を有する装置であるが、印刷機能等を有する画像形成装置である必要はなく、印刷機能等を有さない情報処理装置であってもよい。
また、以下の実施例では、この発明の画像形成装置MFPは、特に、印刷機能を備えるものとして説明するが、これ以外の機能を備えてもよい。
(画像形成装置(親機)の構成)
図2に、この発明の画像形成装置(親機)の一実施例の構成ブロック図を示す。
図2において、この発明の画像形成装置(親機)MFPPは、主として、制御部11、操作部12、表示部13、画像処理部14、通信部15、更新データ取得部16、印刷ジョブ取得部17、ジョブ取得時刻設定部21、更新データ配信部22、更新変更時刻設定部23、更新変更時刻送信部24、印刷ジョブ送信部25、制御プログラム更新部26、更新取得要求受信部27、プログラム配信判定部28、取得要求応答部29、機能実行部30、記憶部40を備える。
ここで、画像処理部14は、後述するように、主に、画像入力部、画像変換部、画像出力部から構成される。
また、更新取得要求受信部27、プログラム配信判定部28、取得要求応答部29は、子機MFPC側から、更新データを取得する要求があった場合に動作する機能ブロックである。
制御部11は、表示部13や画像処理部14などの各構成要素の動作を制御する部分であり、主として、CPU、ROM、RAM、I/Oコントローラ、タイマー等により構成される。
CPUは、ROM等の不揮発性メモリに予め格納された制御プログラムに基づいて、各種ハードウェアを有機的に動作させて、この発明の画像形成機能、更新データ配信機能などを実行する。
また、上記構成要素のうち、ジョブ取得時刻設定部21、更新変更時刻設定部23、プログラム配信判定部28などは、CPUが、所定のプログラムに基づいてそれぞれの処理を実行する機能ブロックである。
操作部12は、親機MFPPのユーザーが所定の入力操作をするための入力装置である。たとえば、文字などの情報の入力や、機能の選択入力をする部分であり、タッチパネル、特定用途のキーなどが用いられる。
ユーザーが操作するキーとしては、動作開始キー、機能選択キー、設定キーなどがある。
ユーザーは、たとえば、タッチパネルや読み取り動作の開始キーを入力する操作をすることによって、原稿の読み取りを実行させたり、画像データ等の情報の送信を開始させる送信開始キーを入力する操作をすることによって、所定の宛先に情報を送信する動作を開始させたりする。
表示部13は、情報を表示する部分であり、各機能の実行に必要な情報や、機能の実行の結果などを、利用者に知らせるために表示する。たとえば、LCD、有機ELディスプレイなどが用いられ、操作部12としてタッチパネルが用いられる場合は、表示部13とタッチパネルとが重ね合わせて配置される。
表示部13には、たとえば、親機MFPPの印刷等に利用する設定項目の設定や、原稿読取機能等を実行するのに必要な情報や、選択した機能の操作画面などが、文字、記号、図形、画像、アイコン、アニメーション、動画等を用いて、表示される。
また、この発明では、たとえば、更新データを受信した場合には、更新データを受信したことを表示部13に表示したり、更新データによる制御プログラムの更新(アップデート)を実行している場合には、制御プログラムの更新中であることを表示部13に表示したりしてもよい。
画像処理部14は、親機MFPPの主要な機能である画像形成機能を実行する部分であり、主に、画像入力部、画像変換部、および、画像出力部からなる。
主として、画像入力部は、所定の形式の画像データを入力する部分であり、画像変換部は、入力された画像データを印刷や画面表示等の用途に応じて適した画質や形式のデータに変換する部分であり、画像出力部は、変換の結果得られたデータを印刷用紙等に出力したり、ネットワークを介して他の機器に送信したりする部分である。
画像入力部は、印刷することを目的とした印刷データなど、画像や文字図形等が記載された原稿の画像データを入力する部分であり、たとえば、原稿台等に載置された原稿を光学的に読み取ったり、後述の印刷ジョブ取得部17が他の機器から受信した印刷ジョブ情報43に含まれる印刷対象の画像データを取得したりする部分である。
情報が記載された原稿を光学的に読み取る画像入力部としては、スキャナ(読取装置)を用いる。
親機MFPPは、原稿を読み取るために、原稿が載置される原稿載置台(原稿台)と、原稿を抑える原稿カバーとを備える。
また、親機MFPPは、複数枚の原稿を載置して、複数の原稿を1枚ずつ自動的に搬送して読み取る自動原稿送り装置(ADF:Automatic Document Feeder)を備えてもよい。
ネットワークを介して他の機器からデータを受信する場合、受信するデータに含まれる印刷データは印刷対象となる画像データそのものでもよいし、ページ記述言語(Page Description Language)のような画像を生成するための所定の形式のデータであってもよい。
画像情報を入力する方法には種々の方法があるが、たとえば、画像等が記載された原稿をスキャナで読み取り、原稿の画像データ(以下、入力画像データと呼ぶ)を、記憶部40に記憶する。
また、たとえば、USBメモリなどの外部の記憶媒体を接続するインターフェースが、画像入力部に該当する。
入力したい画像情報などの電子データファイルを、USBメモリなどの外部の記憶媒体に保存しておき、USBメモリ等をUSB端子などの入力インターフェースに接続し、操作部12で所定の入力操作を行うことによって、USBメモリ等に保存された所望の電子データファイルを読み出して、記憶部40に、入力画像データとして記憶してもよい。
画像変換部は、たとえば、スキャナで読み取って記憶部40に記憶されたRGB形式の入力画像データを元に、各種の画像処理を施し、印刷に適したCMYK形式の画像データに変換する。また、ページ記述言語を解析、レンダリングすることで印刷が可能な画像データに変換する。あるいは、画面表示のための画像を出力するような場合には、解像度の変換を行う。画像変換部による変換を経て得られた画像データ(以下、出力画像データと呼ぶ)は、記憶部40で再度記憶してもよいし、直接画像出力部から出力してもよい。
画像出力部は、出力画像データを出力する部分であり、たとえば、電子写真方式による画像形成を行い印刷用紙上に画像を定着させる。
ただし、画像データの出力は、印刷に限るものではなく、電話回線を介したFAX、インターネット等のネットワークを介したE-MailやFTP等による他の通信装置への画像データ送信なども含まれる。
また、出力画像データをUSBメモリなどの外部の記憶媒体に書き込んで記憶させることも、画像出力に相当する。
通信部15は、ネットワーク10を介して、他の通信装置とデータ通信をする部分である。
図1に示すように、親機MFPPは、ネットワーク10を介して、配信サーバー(SV)3とユーザーが所有する情報処理端末(TE)4に接続される。
また、画像形成装置(MFP)1は、ネットワーク10を介して、他の画像形成装置MFPにも接続される。
親機MFPPは、通信部15によって、たとえば、配信サーバー(SV)3から送信される更新データを受信したり、情報処理端末(TE)4から送信されてくる印刷ジョブなどの情報を受信したりする。
あるいは、ネットワーク10を介して、更新データの問合要求等を、配信サーバーSVなどに送信したりする。
更新データ取得部16は、配信サーバーSVから送信される更新データを取得する部分である。
原則として、親機MFPPから、配信サーバーSVに、更新データがあるか否かを問い合わせ、ある場合には更新データの配信を求める更新ソフト問合要求を送信し、配信サーバーSVに新たな更新データが記憶されている場合に、配信サーバーSVが、その問合要求に対する応答として、新たな更新データを親機MFPPに送信する。
ただし、配信サーバーSVに新たな更新データが記憶された時点で、配信サーバーSVが、親機MFPPに新たな更新データを自動送信するようにしてもよい。
更新ソフト問合要求は、たとえば、定期的に(毎日、定刻に)、配信サーバーSVに送信してもよく、あるいは、親機MFPPにおいて、親機MFPPの管理担当者が、所定の入力操作をした場合に、配信サーバーSVに送信するようにしてもよい。
取得された更新データは、子機MFPCに配信(転送)するために、記憶部40に記憶される。
印刷ジョブ取得部17は、画像形成装置MFPにおいて処理されるデータを含む印刷ジョブを取得する部分である。
一般的に、情報処理装置において処理されるデータを含むジョブを取得する機能ブロックをジョブ取得部と呼び、ジョブ取得部に、印刷ジョブ取得部17が含まれるものとする。また、ジョブ取得部には、たとえば、読取ジョブ取得部、画像認識ジョブ取得部、送信ジョブ取得部なども含まれる。
印刷ジョブは、たとえば、親機MFPPにおいて、ユーザーが直接入力される場合や、原稿の読取操作によって生成される場合もある。
また、ユーザー所有の情報処理端末TEで生成された印刷ジョブを、ネットワーク10を介して通信部15を用いて受信する場合もある。
取得された印刷ジョブは、印刷ジョブ情報43として記憶部40に記憶される。
また、親機MFPPにおいて、たとえば、その印刷ジョブを指定した印刷開始操作がされた場合に、印刷ジョブに含まれる画像データの印刷が実行される。
ジョブ取得時刻設定部21は、印刷ジョブ取得部17が印刷ジョブを取得した時刻を設定記憶する部分である。一般的に、ジョブを取得した時刻を、ジョブ取得時刻と呼ぶ。
印刷ジョブを取得した時刻は、ジョブ取得時刻(tj)44として、記憶部40に記憶される。
更新データ配信部22は、所定の配信予定時刻を経過した後に、取得した更新データを、子機MFPCに配信する部分である。
所定の配信予定時刻は、後述する記憶部40に記憶される時刻(th)47であり、更新データ配信部22によって設定するものとする。
たとえば、更新データを子機MFPCに配信するタイミングとして、配信サーバーSVから更新データを取得した後、直ちにその更新データを子機MFPCに配信することが予め設定されている場合は、更新データを取得した時刻が、配信予定時刻thに設定される。
ただし、親機MFPPに記憶される印刷ジョブの有無に基づいて、配信予定時刻thを設定するようにしてもよい。
たとえば、印刷ジョブ取得部17が1または複数の印刷ジョブを取得した場合に、ジョブ取得時刻設定部21が、取得したジョブごとにジョブ取得時刻tjを設定記憶し、更新データ配信部22が、設定記憶されたジョブ取得時刻tjのうち、最後に取得した印刷ジョブのジョブ取得時刻tjを利用して、配信予定時刻thを設定し、現在時刻が設定された配信予定時刻thを経過した場合に、更新データを子機に配信するようにしてもよい。
この取得後の所定の時間は、固定的に決めることは困難であるが、ユーザーは、印刷ジョブを印刷させることを目的として、印刷ジョブを親機MFPPに記憶させるので、印刷ジョブが親機MFPPに記憶された後、たとえば、5分とか10分というような比較的短時間の間に、印刷ジョブの印刷を開始させる操作をする可能性が高いと考えられる。
したがって、もし、取得後の所定の時間内に、更新データによる制御プログラムの更新処理が開始されてしまった場合、印刷ジョブの実行タイミングと、制御プログラムの更新処理のタイミングとが重複し、印刷ジョブの実行が、更新処理が終了するまで待たされるという事態が生じ得る。
ユーザーが実行させようとした印刷ジョブの実行が待たされるという事態をできるだけ回避するためには、更新データを取得した後、直ちに子機MFPCに配信するのではなく、親機MFPPで記憶している印刷ジョブの情報に基づいて決定したタイミングで、更新データを子機MFPCに配信することが好ましい。
たとえば、後述するように、印刷ジョブが親機MFPPに記憶されている場合は、その印刷ジョブが取得された時刻(ジョブ取得時刻tj)を利用して、配信予定時刻thを設定する。
この場合、更新データを取得した後、現在時刻が、設定された配信予定時刻thを経過した場合に、更新データを子機MFPCに配信する。以下、現在時刻を、TNという記号でも表す。
また、後述するように、配信予定時刻thが設定された後、その時刻になるよりも前に、印刷ジョブ取得部17が新しい印刷ジョブを取得した場合、ジョブ取得時刻設定部21が、新しい印刷ジョブを取得した第2のジョブ取得時刻tjを設定記憶し、更新データ配信部22が、設定記憶された第2のジョブ取得時刻tjを利用して、配信予定時刻thを変更するようにしてもよい。
また、更新データを配信するタイミングは、上記したように、主として、親機MFPPで管理されるが、親機MFPPで設定されたタイミングで自動的に更新データを配信するのではなく、親機MFPPが子機MFPCからの更新データ取得要求を受信した場合に、更新データを子機MFPCに配信するようにしてもよい。
この場合、更新データ配信部22は、後述するように、設定記憶されたジョブ取得時刻tjを利用して、更新データを子機MFPCに配信する予定時刻である配信予定時刻thを設定し、子機MFPCからの更新データ取得要求を受信した後であって、現在時刻が、設定された配信予定時刻thを経過した場合に、取得した更新データを、子機MFPCに配信する。
このように、更新データを配信するタイミングとしては、更新データを取得した後直ちにその更新データを子機MFPCに配信する場合と、印刷ジョブが親機MFPPに記憶されているとき、その印刷ジョブが取得された時刻(ジョブ取得時刻tj)を利用して配信予定時刻(th)を設定する場合と、子機MFPCからの更新データ取得要求を受信したときに更新データを子機MFPCに配信する場合の少なくとも3種類あるが、親機MFPPと子機MFPCにおいて、どの配信タイミングを採用するかを予め設定記憶しておくことが好ましい。
更新変更時刻設定部23は、印刷ジョブを取得した場合に、更新データによる制御プログラムの更新処理を実行する予定時刻を変更し、変更後の予定時刻である更新変更時刻を設定する部分である。
変更後の予定時刻は、更新変更時刻46(t2)として記憶部40に記憶される。
後述するように、更新変更時刻t2は、上記したジョブ取得時刻tjと、所定の遅延設定時間t0とから設定される(t2=tj+t0)。
たとえば、ジョブ取得時刻tjが、2021年9月24日11時00分であり、遅延設定時間t0が、20分に予め設定されている場合、更新変更時刻t2は、2021年9月24日11時20分に設定される。
更新変更時刻t2を設定するのは、印刷ジョブを取得した場合、通常、その後印刷ジョブによる印刷処理が実行されるが、その印刷ジョブの実行開始直前や実行中に、制御プログラムの更新処理が実行されてしまい、印刷ジョブの実行が待たされるのを回避するためである。
遅延設定時間t0には、典型的な印刷ジョブによる印刷処理の実行時間を考慮した時間が予め設定されるものとする。
更新変更時刻送信部24は、上記のように、設定された更新変更時刻t2を、各子機MFPCに送信する部分である。
更新変更時刻t2を受信した子機MFPCは、所定の条件を満たす場合に、後述する更新開始予定時刻Tを、更新変更時刻t2に更新する。
印刷ジョブ送信部25は、子機MFPCから印刷ジョブの要求があった場合に、要求のあった印刷ジョブのデータを子機MFPCに送信する部分である。
印刷ジョブデータを受信した子機MFPCは、その印刷ジョブに含まれる各種データを解析して印刷処理を実行する。
制御プログラム更新部26は、更新データを利用して、親機MFPPの制御プログラムを更新(アップデート)する部分である。
あるいは、制御プログラムを、更新プログラムに置き換える処理をしてもよい。
更新取得要求受信部27は、子機MFPCから送信された更新データ取得要求を受信する部分である。
更新データ取得要求は、たとえば、子機MFPCにおいて、現在時刻TNが更新開始予定時刻Tを経過した場合に、子機MFPCから親機MFPPに送信される。
更新データ取得要求を受信した親機MFPPは、更新データが自己の記憶部40に記憶されている場合、その更新データを子機MFPCに配信すべきか否かを判定する。
プログラム配信判定部28は、更新データを子機MFPCに配信すべきか否かを判定する部分である。
上記したように、子機MFPCから更新データ取得要求を受信した場合に、配信すべきか否かの判定を行う。
たとえば、親機MFPPの記憶部40に更新データがない場合、あるいは、すでに子機MFPCの制御プログラムが最新の制御プログラムに更新されている場合は、配信するべきものがないと判定する。
一方、親機MFPPの記憶部40に更新データがある場合、現在時刻TNが、上記した配信予定時刻thを経過している場合は、ユーザーが一定時間内に子機を使用して処理する可能性が高い印刷ジョブを保持していない状態なので、その更新データを子機MFPCに配信すべきであると判定する。
ただし、現在時刻TNが、配信予定時刻thを経過していない場合は、ユーザーから投入されて間もない印刷ジョブを保持しており、これからユーザーが子機を使用する可能性が高い状態なので、その更新データを子機MFPCにまだ配信すべきでないと判定する。
プログラム配信判定部28による判定の結果は、後述するように、取得応答情報として、更新データ取得要求を送信してきた子機MFPCに送信する。
取得要求応答部29は、子機MFPCから送信された更新データ取得要求に対する応答を生成し、その子機MFPCに送信する部分である。
更新データ取得要求に対する応答を、取得応答情報と呼ぶ。
取得応答情報の内容としては、たとえば、上記の判定の結果に対応して、次の3つの応答情報がある。
応答1:更新データ無し応答(適用が必要な更新データがない)
応答2:リトライ応答(更新データがあるが、まだ配信時期ではない)
応答3:更新可能応答(更新データがあり、更新可能な時期である)
たとえば、上記したように、親機MFPPの記憶部40に更新データがない場合は、配信するべきものがないので、「更新データ無し応答」を意味する取得応答情報を生成し、子機MFPCに送信する。
一方、親機MFPPの記憶部40に更新データがあり、現在時刻TNが配信予定時刻thを経過している場合は、「更新可能応答」を意味する取得応答情報を生成し、子機MFPCに送信する。この場合は、記憶部40に記憶されている更新データが、子機MFPCに送信される。
また、親機MFPPの記憶部40に更新データがあるが、現在時刻TNが配信予定時刻thを経過していない場合は、「リトライ応答」を意味する取得応答情報を生成し、子機MFPCに送信する。
この場合は、更新データが記憶されていても、まだ、子機MFPCに送信されない。
機能実行部30は、画像形成装置MFPで実行可能な所定の機能を実行する部分である。
画像形成装置MFPが上記した種々の機能を有する複合機である場合は、たとえば、ユーザーが所望の機能を選択する入力操作をした場合に、その選択された機能が実行される。
親機MFPPも子機MFPCと同様に、画像形成機能を有しているので、たとえば、ユーザーがコピー機能を選択した場合には、原稿台に載置された原稿のコピー動作が行われる。
記憶部40は、この発明の画像処理装置(親機)MFPPの各機能を実行するために必要な情報やプログラムを記憶する部分であり、ROM、RAM、フラッシュメモリなどの半導体記憶素子、HDD、SSDなどの記憶装置、その他の記憶媒体が用いられる。
予め固定的に設定され変更されることのない情報は、ROMなどのメモリに記憶され、予め固定的に設定されるが変更されることがある情報は、フラッシュメモリやHDDなどの不揮発性メモリに記憶され、一時的に記憶される情報は、RAMなどの揮発性メモリや、フラッシュメモリ、HDDなどに記憶される。
記憶部40には、たとえば、子機管理情報41、更新データ42、印刷ジョブ情報43、ジョブ取得時刻44、遅延設定時間45、更新変更時刻46、配信予定時刻47、取得応答情報48などが記憶される。
また、自己の親機MFPPの機能を実行させる制御プログラムも、記憶部40に記憶される。
図5に、画像形成装置(親機)の記憶部40に記憶される情報の一実施例の説明図を示す。
子機管理情報41は、画像形成装置(子機)を識別する情報であり、たとえば、子機MFPCの装置名、機種名、シリアル番号、IPアドレス、設置場所、オプション機能の情報、制御プログラムのバージョン情報などが含まれる。
たとえば、IPアドレスを利用して、印刷ジョブや更新データが、子機MFPCに送信される。
更新データ42は、上記したように、画像形成装置の制御プログラムを更新させるためのプログラムであり、主として、配信サーバーSVから取得される。
ただし、親機MFPPの管理担当者などによって、更新データ42を、直接、親機MFPPに入力してもよい。
更新データ42には、親機MFPPの制御プログラムを更新させるものと、子機の制御プログラムを更新させるものの両方を含むものとする。
更新データ42が、全ての子機MFPCに共通のプログラムである場合は、全ての子機MFPCにその更新データが配信される。
あるいは、更新データ42が、特定の機能に関するプログラムである場合は、その特定の機能を有する子機MFPCだけに、その更新データを配信してもよい。
ただし、以下の実施例では、更新データ42は、全ての子機MFPCに共通のプログラムであり、全ての子機MFPCに配信されるものとして説明する。
印刷ジョブ情報43は、印刷機能を実行するときに利用される情報であり、印刷ジョブを登録したユーザーに関する情報、給排紙トレイの指定情報、その他の制御情報、印刷対象である画像データを含む。
この発明では、印刷ジョブ情報43は、情報処理端末TEから受信し、親機MFPPに一時的に保存され、子機MFPCから印刷ジョブ情報43を要求された場合に、要求された印刷ジョブ情報43を、子機MFPCに送信する。
また、親機MFPPにおいて、印刷ジョブ情報43の画像データを印刷する印刷機能が選択された場合には、親機MFPPで印刷処理が実行される。
ジョブ取得時刻44は、印刷ジョブを取得した時刻(tj)であり、上記したジョブ取得時刻設定部21が設定記憶する。
たとえば、図5に示すように、2021年9月25日11時00分を意味する日付情報(2021.09.25,11:00)が、ジョブ取得時刻tjとして記憶される。
ジョブ取得時刻(tj)44は、更新変更時刻46や配信予定時刻47を設定するときに利用される。
遅延設定時間45は、親機にジョブが登録されてから子機が操作されて印刷が開始されるまでの時間、あるいは印刷が完了するまでの時間を考慮した時間(t0)であり、親機が印刷ジョブを取得してからユーザーが子機を操作してその印刷ジョブを実行するまでの間に制御プログラムの更新が開始されることを抑止するために、予め設定される情報である。
遅延設定時間(t0)45としては、たとえば、図5に示すように、20分という時間が設定される。
ここでは親機を管理するユーザーが固定の時間を設定するものとするが、親機が過去の印刷ジョブの履歴を辿り登録から実行までの時間について統計的な解析を行ったうえで、遅延設定時間(t0)45を自動的に決定してもよい。
遅延設定時間(t0)45は、更新変更時刻46や配信予定時刻47を設定するときに利用される。
更新変更時刻46は、更新データによる制御プログラムの更新処理を実行する予定時刻(t2)に相当し、上記した更新変更時刻設定部23によって設定され、更新変更時刻送信部24によって子機MFPCに送信される時刻である。
更新処理を実行する予定時刻は、各子機MFPCにおいて、初期値として所定の時刻が設定されているものとする。
印刷ジョブを取得していない場合には、更新処理を実行する予定時刻としては、初期値の時刻が、そのまま採用される。
ただし、印刷ジョブを取得した場合においては、印刷ジョブによる印刷処理が、制御プログラムの更新処理によって延期されてしまうことを回避することが好ましいので、この更新処理を実行する予定時刻を変更する。
更新変更時刻(t2)46は、印刷ジョブを取得した場合に設定される時刻であり、更新変更時刻(t2)46を各子機MFPCに送信することによって、子機MFPCで実行される更新処理は、更新変更時刻(t2)46に延期される。
更新変更時刻(t2)46は、印刷ジョブを取得した時刻に対応して設定され、たとえば、上記したジョブ取得時刻tjに、遅延設定時間t0を加算した時刻が、更新変更時刻(t2)46として設定される(t2=tj+t0)。
図5に示すように、ジョブ取得時刻tjが、2021年9月25日11時00分であり、遅延設定時間t0が20分であれば、t2=tj+t0により、更新変更時刻t2は、2021年9月25日11時20分となる。
配信予定時刻47は、更新データを子機MFPCに配信する予定時刻(th)であり、原則として、この予定時刻thを経過した後に、更新データ配信部22が、更新データを子機MFPCに配信する。
配信予定時刻(th)47は、予め初期値として所定の時刻が設定され、印刷ジョブが取得されない場合には、初期値の時刻が利用される。
ただし、上記したように、親機MFPPが印刷ジョブを取得している場合には、所定の時間内に親機MFPPでその印刷ジョブが実行されるか、あるいは、子機MFPCでその印刷ジョブの印刷処理要求が行われる可能性が高いので、配信予定時刻(th)47は、印刷ジョブの取得時刻に対応して変更される。
たとえば、配信予定時刻thは、最後に取得した印刷ジョブのジョブ取得時刻tjよりも後の時間であり、配信予定時刻thには、最後に取得した印刷ジョブのジョブ取得時刻tjに、記憶部40に予め記憶されている遅延設定時間t0を加算した時刻を設定してもよい。
複数の印刷ジョブが連続して異なる時刻に取得される場合には、印刷ジョブごとに、それぞれの印刷ジョブを取得した時刻(ジョブ取得時刻tj)が記憶部40に記憶される。
この場合、取得した印刷ジョブのうち、最後に取得した印刷ジョブのジョブ取得時刻tjを読み出して、このジョブ取得時刻tjに、上記した遅延設定時間t0を加算した時刻を、配信予定時刻(th)47として設定する(th=tj+t0)。
現在時刻TNが、配信予定時刻(th)47を経過した後に、更新データを子機MFPCに配信する。
図5に示すように、最後に取得した印刷ジョブのジョブ取得時刻tjが、2021年9月25日11時00分であり、遅延設定時間t0が20分であれば、th=tj+t0により、配信予定時刻(th)47は、2021年9月25日11時20分となる。
取得応答情報48は、上記したように、子機MFPCから送信された更新データ取得要求に対する応答である。
たとえば、図5に示すように、取得応答情報48の「01」は、応答1の更新データ無しに相当し、取得応答情報48の「02」は、応答2のリトライ応答に相当し、取得応答情報48の「03」は、応答3の更新可能応答に相当する。
また、上記したような3つの応答情報(応答1、2、3)のうちいずれかの情報(01、02、または03)を含む取得応答情報48が、子機MFPCに送信される。
(画像形成装置(子機)の構成)
図3に、この発明の画像形成装置(子機)の一実施例の構成ブロック図を示す。
図3において、この発明の画像形成装置(子機)MFPCは、主として、制御部51、操作部52、表示部53、画像処理部54、通信部55、更新データ受信部56、機能実行部57、更新取得時刻記録部58、更新開始予定時刻設定部59、印刷要求受付部60、印刷ジョブ取得要求部61、印刷ジョブ取得部62、更新変更時刻受信部63、更新延期設定部64、プログラム更新実行部65、更新データ取得要求部66、取得応答受信部67、更新開始変更部68、記憶部70を備える。
ここで、操作部52、表示部53、画像処理部54、通信部55は、上記した親機と同様の処理を行う機能ブロックであり、画像処理部54は、主に、画像入力部、画像変換部、画像出力部から構成される。これらの機能ブロックの詳細内容については、親機と同様なので省略する。
また、更新データ取得要求部66、取得応答受信部67、更新開始変更部68は、子機MFPC側から親機MFPPに対して、更新データの取得要求をする場合に動作する機能ブロックである。
制御部51は、操作部52や画像処理部54などの各構成要素の動作を制御する部分であり、主として、CPU、ROM、RAM、I/Oコントローラ、タイマー等により構成される。
CPUは、ROM等の不揮発性メモリに予め格納された制御プログラムに基づいて、各種ハードウェアを有機的に動作させて、この発明の画像形成機能などを実行する。
また、上記構成要素のうち、更新取得時刻記録部58、更新開始予定時刻設定部59、印刷要求受付部60、更新延期設定部64、更新開始変更部68などは、CPUが、所定のプログラムに基づいてそれぞれの処理を実行する機能ブロックである。
更新データ受信部56は、親機MFPPから配信された更新データを受信する部分である。
子機MFPCでは、原則として、更新データを受信すると、更新データを利用して、制御プログラムの更新が実行される。
あるいは、更新開始予定時刻が設定されている場合は、現在時刻TNが、更新開始予定時刻を経過した場合に、受信した更新データを利用して、制御プログラムの更新が実行される。
機能実行部57は、上記した親機MFPPと同様に、画像形成装置MFPで実行可能な所定の機能を実行する部分であり、たとえば、ユーザーが所望の機能を選択する入力操作をした場合に、その選択された機能(たとえば、印刷機能)が実行される。
更新取得時刻記録部58は、親機MFPPから配信された更新データを受信した場合に、更新取得時刻tkを記録する部分である。
更新取得時刻tkは、たとえば、更新データを受信した時刻である。
更新取得時刻tkは、後述する更新開始算出情報t1を設定するために利用され、さらに、更新開始算出情報t1から更新開始予定時刻Tが設定される。
更新開始予定時刻設定部59は、記録された更新取得時刻tkを利用して、更新開始予定時刻Tを設定する部分である。
更新開始予定時刻Tは、子機MFPCにおいて、受信した更新データを利用して、子機MFPCの機能を実行させる制御プログラムの更新を開始させる時刻である。
更新開始予定時刻設定部59は、たとえば、記録された更新取得時刻tkよりも後の時刻であって、後述する更新実行設定時刻Sに設定された時分情報の部分に等しい日付を更新開始予定時刻Tに設定する。
上記のように、更新データが受信され、更新取得時刻tkが設定された場合、まず、更新開始算出情報t1が設定される。
更新開始算出情報t1は、更新開始予定時刻Tを設定するための時刻情報であり、子機MFPCごとに予め設定記憶されている更新実行設定時刻Sと、更新取得時刻tkとから設定される。
更新実行設定時刻Sは、更新データを利用した制御プログラムの更新を開始する時刻情報の初期値であり、年月日は設定されず、時分情報のみが設定されるものとする。
たとえば、3時00分という時分情報が、更新実行設定時刻Sに初期設定され、HDDなどの不揮発性メモリに記憶される。
更新実行設定時刻Sは、全ての子機MFPCで同じ時刻情報を予め設定記憶してもよいが、子機MFPCが設置されている場所や運用時間帯など、子機MFPCごとの設置状況に対応させて、子機MFPCごとに、異なる時刻情報に変更できるようにしてもよい。
更新開始算出情報t1としては、この更新実行設定時刻Sを考慮して、更新取得時刻tkよりも後の時刻あって、時分情報の部分が、更新実行設定時刻Sに等しい日付が設定されるものとする。更新開始算出情報t1の年月日の部分は、更新取得時刻tkの年月日よりも後の時刻であればよいが、たとえば、次に更新実行設定時刻Sが最初に来る年月日でもよく、更新取得時刻tkの年月日の翌日としてもよい。
たとえば、更新データを受信した時刻である更新取得時刻tkが、2021年9月24日16時00分であり、更新実行設定時刻Sが3時00分であったとすると、更新取得時刻tkの後の時刻であって、次に更新実行設定時刻Sが最初に来る年月日は、更新取得時刻tkの翌日である2021年9月25日なので、更新開始算出情報t1としては、2021年9月25日の3時00分という日付が設定される。
また、更新取得時刻tkが2021年9月25日1時00分であり、更新実行設定時刻Sが3時00分であった場合は、次に更新実行設定時刻Sが最初に来る年月日は、更新取得時刻tkの当日である2021年9月25日なので、更新開始算出情報t1としては、2021年9月25日の3時00分という日付が設定される。
次に、この設定された更新開始算出情報t1を、更新開始予定時刻Tの初期値として使用する。
たとえば、初めて更新データを受信した場合には、更新開始予定時刻Tには、更新開始算出情報t1がそのまま設定される(T=t1)。
また、新しい更新データを受信するごとに、更新開始算出情報t1には異なる日付が設定されるので、更新開始予定時刻Tも、t1に等しい日付に変更される。
ただし、後述するように、親機MFPPから更新変更時刻t2を受信した場合には、その更新変更時刻t2に対応して、更新開始予定時刻Tが設定変更される。この場合、更新開始予定時刻Tは延期される。
たとえば、更新開始予定時刻Tに設定された更新開始算出情報t1が、2021年9月25日の3時00分であった場合に、親機MFPPから受信した更新変更時刻t2が、2021年9月25日の3時10分であり、このt2がt1よりも後の日付であるので、更新開始予定時刻Tは、更新変更時刻t2に変更(延期)される(T=t2)。
このように、更新開始予定時刻Tを変更するのは、親機MFPPに新しい印刷ジョブが記憶された場合であり、印刷ジョブの印刷処理と、制御プログラムの更新処理とができるだけ同時刻に重ならないようにし、印刷処理が、制御プログラムの更新処理によって延期されてしまうことを回避するためである。
印刷要求受付部60は、操作部と表示部を用いてユーザーから印刷ジョブの実行要求を受け付ける部分である。
たとえば、子機MFPCにおいて、ユーザーによって操作部から所定の入力操作がされたことに応じ、ネットワークを介して親機に保存された、このユーザーが登録した印刷ジョブの情報を取得して操作部に一覧表示し、さらにユーザーの入力操作により選択された印刷ジョブに対する実行要求を受け付ける。
印刷ジョブ取得要求部61は、ユーザーからの印刷要求を受け付けた場合、印刷要求がされた印刷ジョブの取得要求(印刷ジョブデータ要求)を、親機MFPPに送信する部分である。
印刷ジョブデータ要求には、要求する印刷ジョブに関する情報(たとえば、ジョブの識別番号など)が含まれる。
印刷ジョブ取得部62は、親機MFPPから送信された印刷ジョブを取得する部分である。
取得した印刷ジョブには、印刷対象の画像を生成するためのデータが含まれる。
更新変更時刻受信部63は、親機MFPPから送信された更新変更時刻t2を受信する部分である。
上記したように、親機MFPPが印刷ジョブを取得した場合に、親機MFPPにおいて更新データによる制御プログラムの更新処理を実行する予定時刻が変更されるが、その変更後の予定時刻である更新変更時刻t2を受信する。
更新延期設定部64は、受信した更新変更時刻t2を利用して、更新開始予定時刻Tを変更する部分である。
たとえば、更新開始算出情報t1が更新開始予定時刻Tに設定された状態(T=t1)で、親機MFPPから更新変更時刻t2を受信した場合、その更新変更時刻t2が、更新開始予定時刻Tよりも後の場合に(t2>T)、更新開始予定時刻Tが、更新変更時刻t2に変更される(T=t2)。
すなわち、更新開始予定時刻Tが延期される。
プログラム更新実行部65は、受信した更新データによって、記憶部70に記憶された子機MFPCの制御プログラムを更新する部分である。
子機MFPCにおいて、現在時刻TNが更新開始予定時刻Tを経過した場合に、プログラム更新実行部65が、更新データによって、制御プログラムを更新する。
更新データ取得要求部66は、親機MFPPに、更新データを取得するための要求(更新データ取得要求)を送信する部分である。
この更新データ取得要求は、子機MFPCが、自らのタイミングで、自動的に、更新データを取得する場合に送信される情報であり、更新データの取得タイミングを、子機MFPC側で管理している場合に利用されるものとする。
たとえば、現在時刻TNが、子機MFPCに記憶されている所定の更新開始予定時刻Tを経過した場合に、親機MFPPに、更新データ取得要求を送信する。
あるいは、たとえば、子機MFPCにおいて、管理担当者等が、更新データ取得要求に対応する所定の入力操作をした場合に、更新データ取得要求を親機MFPPに送信してもよい。
親機MFPP側で、更新データの配信タイミングを管理している場合には、更新データ取得要求は利用しなくてもよい。
取得応答受信部67は、更新データ取得要求に対応して、親機MFPPから送信される取得応答情報を受信する部分である。
取得応答情報には、上記したように3つの応答内容があり、取得応答情報を受信した後、それぞれの応答内容に対応した処理が実行される。
たとえば、更新可能応答を含む取得応答情報が受信された場合には、親機MFPPから更新データを受信して、更新データによる制御プログラムの更新処理が実行される。
更新開始変更部68は、更新開始予定時刻Tを再設定し、更新データ取得要求を送信する時刻(タイミング)を再設定する部分である。
たとえば、親機MFPPの更新取得要求受信部27が、子機MFPCからの更新データ取得要求を受信した後であって、現在時刻TNが、設定された配信予定時刻thを経過していない場合に、取得要求応答部29が、更新データ取得要求に対する応答として、まだ配信時期ではないことを示すリトライ応答を含む取得応答情報を子機MFPCに送信する。
この後、子機MFPCの取得応答受信部67が、リトライ応答を含む取得応答情報を受信した場合に、更新開始変更部68が、現在時刻TNに、後述する所定の再開間隔情報tRを加算した時刻を、更新開始予定時刻Tに再設定する。
上記したように、更新データ取得要求を受信した親機MFPPでは、プログラム配信判定部28によって、更新データを子機MFPCに配信すべきか否かを判定する。
その判定によって、親機MFPPには新しい更新データが記憶されているが、まだ配信時期ではないと判定された場合にはリトライ応答を含む取得応答情報が、子機MFPCに送信される。
リトライ応答を含む取得応答情報を受信した子機MFPCでは、まだ更新データが送信されないので、更新データを取得するために、再度、更新データ取得要求を親機MFPPに送信する必要がある。
また、現在時刻TNは、すでに、更新開始予定時刻Tを経過している場合があるので、更新開始予定時刻Tを再設定(延期)する必要がある。
そこで、リトライ応答を含む取得応答情報を受信した場合に、更新開始予定時刻Tを再設定(延期)し、さらに、更新データ取得要求を親機MFPPに送信する時刻(タイミング)を再設定する。
たとえば、後述するように、子機MFPCの記憶部70に予め設定記憶されている再開間隔情報tRを利用して、更新開始予定時刻Tと、更新データ取得要求の再送時刻を設定する。
再開間隔情報tRとしては、たとえば、5分とか、10分というような時間を予め設定しておく。
この場合、更新開始予定時刻Tには、現在時刻TNに、再開間隔情報tRを加算した時刻を設定する(T=TN+tR)。
また、更新データ取得要求の再送時刻としては、たとえば、リトライ応答を含む取得応答情報を受信した時刻に、再開間隔情報tRを加算した時刻を設定してもよい。
記憶部70は、この発明の画像処理装置(子機)MFPCの各機能を実行するために必要な情報やプログラムを記憶する部分であり、ROM、RAM、フラッシュメモリなどの半導体記憶素子、HDD、SSDなどの記憶装置、その他の記憶媒体が用いられる。
記憶部70には、たとえば、親機情報71、更新データ72、印刷ジョブ情報73、更新実行設定時刻74、更新取得時刻75、更新開始算出情報76、更新変更時刻77、更新開始予定時刻78、再開間隔情報79、取得応答情報80などが記憶される。
また、自己の子機MFPCの機能を実行させる制御プログラムも、記憶部70に記憶される。
図6に、画像形成装置(子機)の記憶部70に記憶される情報の一実施例の説明図を示す。
親機情報71は、画像形成装置(親機)を識別する情報であり、たとえば、親機MFPPの装置名、機種名、シリアル番号、IPアドレス、設置場所などが含まれる。
たとえば、IPアドレスを利用して、印刷ジョブデータ要求や更新データ取得要求が、親機MFPPに送信される。
更新データ72は、親機MFPPから配信されるプログラムであり、上記した親機MFPPに記憶される更新データ42に相当する。
印刷ジョブ情報73は、印刷対象である画像を生成するためのデータを含む情報であり、上記した親機MFPPに記憶される印刷ジョブ情報43に相当する。
更新実行設定時刻74は、更新データを利用して、子機MFPCの制御プログラムの更新を開始する時刻情報の初期値(S)である。
更新実行設定時刻(S)74としては、たとえば、図6に示すように、3時00分を意味する時分情報(03:00)が記憶される。
更新取得時刻75は、上記したように、更新データを受信した時刻(tk)である。
更新取得時刻(tk)75としては、たとえば、図6に示すように、2021年9月24日16時00分を意味する日付情報(2021.09.24,16:00)が記憶される。
更新開始算出情報76は、更新開始予定時刻Tを設定するための時刻情報(t1)である。
更新開始算出情報(t1)76としては、たとえば、図6に示すように、2021年9月25日3時00分を意味する日付情報(2021.09.25,03:00)が記憶される。
更新変更時刻77は、上記したように、更新データによる制御プログラムの更新処理を実行する予定時刻である更新変更時刻46と同一であり、親機MFPPから送信された情報(t2)である。
更新変更時刻(t2)77としては、たとえば、図6に示すように、2021年9月25日11時00分を意味する日付情報(2021.09.25,11:00)が記憶される。
更新開始予定時刻78は、上記したように、受信した更新データを利用して子機MFPCの制御プログラムの更新を開始する時刻(T)である。
更新開始予定時刻(T)78としては、たとえば、図6に示すように、2021年9月25日3時00分を意味する日付情報(2021.09.25,03:00)が記憶される。
再開間隔情報79は、上記したように、更新開始予定時刻Tと、更新データ取得要求の再送時刻を再設定するための時間情報(tR)である。
再開間隔情報(tR)79としては、たとえば、図6に示すように、30分というような時間情報が記憶される。
取得応答情報80は、上記したように、子機MFPCから送信された更新データ取得要求に対して、親機MFPPから子機MFPCに送信された情報であり、たとえば、図5に示した取得応答情報48と同一の情報である。
<配信装置(配信サーバー)の構成>
図4に、この発明の配信サーバーの一実施例の構成ブロック図を示す。
図4において、この発明の配信サーバー(SV)3は、主として、制御部101、操作部102、表示部103、通信部104、更新データ送信部105、記憶部110を備える。
制御部101は、操作部102や表示部103などの各構成要素の動作を制御する部分であり、主として、CPU、ROM、RAM、I/Oコントローラ、タイマー等により構成される。
CPUは、ROM等の不揮発性メモリに予め格納された制御プログラムに基づいて、各種ハードウェアを有機的に動作させて、配信サーバーSVにおける更新データ送信機能等を実行する。
操作部102は、配信サーバーSVの管理担当者が所定の入力操作をするための入力装置である。たとえば、文字などの情報の入力や、機能の選択入力をする部分であり、キーボード、マウスなどが用いられる。
表示部103は、情報を表示する部分であり、各機能の実行に必要な情報や、機能の実行の結果などを、管理担当者に知らせるために表示する。たとえば、LCD、有機ELディスプレイなどが用いられる。
表示部103には、たとえば、更新データの生成や送信に必要な情報が、文字、記号、図形、画像、アイコン、アニメーション、動画等を用いて、表示される。
通信部104は、ネットワーク10を介して、画像形成装置MFPとデータ通信をする部分である。
たとえば、画像形成装置の親機MFPPから、更新ソフト問合要求を受信して、画像形成装置MFPの更新データが存在する場合には、その更新データを、親機MFPPに送信する。
更新データ送信部105は、配信サーバーSVに記憶され、画像形成装置の機能を実行させる制御プログラムを更新するための更新データを、親機MFPPに送信する部分である。
また、以下の実施例では、更新データの送信には、新しい制御プログラム自体を親機MFPPに送信することも含むものとする。
上記したように、たとえば、親機MFPPから送信された更新ソフト問合要求を受信した場合に、記憶部110に記憶されている最新の更新データを、親機MFPPに送信する。
あるいは、更新ソフト問合要求を受信しなくても、新しい更新データが、配信サーバーSVに記憶されたときに、その更新データを、親機MFPPに送信するようにしてもよい。
記憶部110は、この発明の配信サーバーSVの各機能を実行するために必要な情報やプログラムを記憶する部分であり、ROM、RAM、フラッシュメモリなどの半導体記憶素子、HDD、SSDなどの記憶装置、その他の記憶媒体が用いられる。
記憶部110には、たとえば、親機情報111、更新データ112などが記憶される。
親機情報111は、画像形成装置の更新データの送信先である親機MFPPに関する情報であり、少なくとも、親機MFPPのIPアドレスなどが記憶される。
更新データ112は、画像形成装置の制御プログラムを更新するための各種のデータである。あるいは、新しい画像形成装置の制御プログラムそのものであってもよい。
また、更新データ112は、すべての画像形成装置(親機MFPPと子機MFPC)に共通のプログラムの場合もあるが、画像形成装置の機種や機能ごとに異なるプログラムであってもよい。
<制御プログラムの更新処理:実施例1>
ここでは、親機MFPPにおいて、更新データを配信するタイミングを管理する場合の実施例について説明する。
この実施例では、印刷ジョブ取得部17が印刷ジョブを取得した場合に、更新データ配信部22が、印刷ジョブを取得した時刻であるジョブ取得時刻tjを利用して、更新データを他の情報処理装置(子機MFPC)に配信する予定時刻である配信予定時刻thを設定し、現在時刻が設定された配信予定時刻thを経過した場合に、更新データを他の情報処理装置(子機MFPC)に配信する。
親機MFPPが配信サーバーSVから更新データを取得した場合において、親機MFPPに、印刷処理が完了していない印刷ジョブが記憶されていない場合は、印刷ジョブを実行するタイミングと、制御プログラムを更新するタイミングとが重複する可能性は低いと考えられるので、特に配信タイミングの制限はなく、取得した後すぐに、更新データを、各子機MFPCに配信してもよい。あるいは、あらかじめ設定された所定の時刻になるのを待って配信してもよい。
ただし、親機MFPPに、印刷処理が完了していない印刷ジョブが記憶されている場合は、印刷処理が、制御プログラムの更新処理によって延期されてしまうことを回避するために、配信タイミングに制限を設け、後述するように、その印刷ジョブを取得した時刻から所定の時間が経過した後に、更新データを、各子機MFPCに配信するようにすることが好ましい。
これにより、子機MFPCにおいては、親機MFPPに記憶されている印刷ジョブや更新データの存在を確認することなく、更新データを受信した後、直ちに制御プログラムの更新処理を実行したとしても、印刷ジョブを実行するタイミングと、制御プログラムを更新するタイミングとが重複する事態が生じる可能性を低減できる。
図7に、プログラム更新システムにおける制御プログラムの更新処理の実施例1の通信シーケンスを示す。
以下の通信シーケンスでは、更新データを、更新ソフトとも呼ぶ。
また、配信サーバーSVと、親機MFPPと、子機MFPCと、ユーザー端末TEとの間で行われる通信シーケンスを示している。
この実施例1では、子機MFPCにおいて、ユーザーによって印刷ジョブの印刷実行入力操作はされないものとする。
親機MFPPには、少なくとも、遅延設定時間t0が予め記憶されているものとする。
また、親機MFPPなど全ての装置は、時計機能を備えており、現在時刻TNを取得できるものとする。
ユーザー端末TEは、親機MFPPに接続できるものとし、親機MFPPのIPアドレスなど、親機に関する情報や、親機MFPPに接続するためのユーザーの認証情報(ID、パスワードPWなど)が、予め記憶されているものとする。
図7のユーザー端末TEのステップT1において、ユーザーが、文書データを作成し、その文書を印刷するために、印刷ジョブを生成し、親機MFPPに送信する操作をしたとする。
印刷ジョブには、印刷対象の画像データが含まれるものとする。
この操作により、ユーザー端末TEから親機MFPPに、印刷ジョブが送信される。
あるいは、ユーザーが作成した印刷ジョブを入力する操作をしただけで、自動的に、親機MFPPに印刷ジョブを送信するようにしてもよい。
なお、更新処理の説明のために、入力されるジョブを印刷ジョブとしているが、画像形成装置は、印刷機能以外の機能を有するものもあるので、入力されるジョブは、印刷ジョブ以外のジョブでもよい。
親機MFPPのステップM1において、印刷ジョブを取得し、印刷ジョブ情報43として記憶部40に記憶する。
ステップM2において、印刷ジョブを取得した時刻を、ジョブ取得時刻tjとして記憶する。ジョブ取得時刻tjは、印刷ジョブと対応付けて記憶する。
印刷ジョブ情報43には、印刷ジョブに含まれる印刷対象の画像データの他、送信元のユーザー端末TEの識別情報、印刷ジョブの作成者の名前、ジョブを識別するための番号等も記憶してもよい。
また、説明のために、ジョブ取得時刻tjと印刷ジョブ情報43を別の情報として記載しているが、ジョブ取得時刻tjも、印刷ジョブ情報43に含めてもよい。
ステップM3において、更新ソフト問合要求を、配信サーバーSVに送信する。
配信サーバーSVのステップS1において、更新ソフト問合要求を受信する。
ステップS2において、まだ送信していない新しい更新データが、記憶部110に記憶されているか否かを確認する。
ステップS3において、まだ送信していない新しい更新データが存在する場合は、その更新データを、親機MFPPに送信する。
ただし、新しい更新データが存在しない場合は、図示していないが、たとえば、更新データが存在しないことを示す「更新ソフト無し応答」を、親機MFPPに送信してもよい。
親機MFPPのステップM4において、更新データを受信し、記憶する。
ステップM5において、最後に取得した印刷ジョブのジョブ取得時刻tjを読み出す。
図7では、1つの印刷ジョブしか取得していないので、ステップM1で取得した印刷ジョブのジョブ取得時刻tjを読み出す。
ただし、親機MFPPが、すでに複数の印刷ジョブを記憶していた場合においては、複数の印刷ジョブのそれぞれのジョブ取得時刻tjのうち、最近のジョブ取得時刻tjを読み出す。
ステップM6において、読み出したジョブ取得時刻tjから、配信予定時刻thを設定する。
たとえば、読み出したジョブ取得時刻tjに、予め記憶されている遅延設定時間t0を加算した時刻を、配信予定時刻thに設定する(th=tj+t0)。
ステップM7において、現在時刻TNと、配信予定時刻thとを比較する。
現在時刻TNが、配信予定時刻thに一致するか、配信予定時刻thを経過している場合(TN≧th)、ステップM8に進む。
ただし、現在時刻TNが、配信予定時刻thを経過していない場合(TN<th)、すなわち、現在時刻TNが、まだ配信予定時刻thになっていない場合は、ステップM7に留まり、定期的に、現在時刻TNと配信予定時刻thとの比較を繰り返す。
ステップM8において、現在時刻TNが配信予定時刻thになった場合は、更新データを、子機MFPCに配信する。
ここで、記憶部40に予め記憶されている子機管理情報41を利用し、原則として、管理しているすべての子機MFPCに、更新データを送信する。
子機MFPCのステップC1において、更新データを受信し、記憶する。
ステップC2において、受信した更新データを利用して、子機MFPCの制御プログラムの更新処理(アップデート)を実行する。
更新処理は、更新データを受信した後すぐに、自動的に開始してもよいが、子機MFPCがユーザーにより操作中でないことや、任意の機能が実行されていないことを確認してから更新処理を行うことが好ましい。
以上のように、親機MFPPが、印刷ジョブを記憶していた場合には、更新データを受信したとしても、ジョブ取得時刻tjを考慮して、ジョブ取得時刻tjよりも所定の時間(遅延設定時間t0)経過した後に、更新データを子機MFPCに配信する時刻(配信予定時刻th)を延期するので、子機MFPCにおいて、印刷ジョブを実行するタイミングと、制御プログラムを更新するタイミングとが重複するような事態が生じることを低減することができる。
<制御プログラムの更新処理:実施例2>
ここでも、実施例1と同様に、親機MFPPにおいて、更新データを配信するタイミングを管理する場合の実施例について説明する。
ただし、この実施例2では、更新データが子機MFPCにまだ配信されていない状態のときに、子機MFPCにおいて、ユーザーによって印刷ジョブの印刷実行入力操作がされ、配信予定時刻thが変更される場合について説明する。
印刷ジョブを取得した時刻から所定の時間が経過した後に、更新データを、各子機MFPCに配信することと、子機MFPCにおいて、更新データを受信した後、直ちに制御プログラムの更新処理を実行する点は、実施例1と同様である。
図8と図9に、プログラム更新システムにおける制御プログラムの更新処理の実施例2の通信シーケンスを示す。
実施例2の通信シーケンスにおいて、図7の通信シーケンスのステップと同じ処理をするステップには、同じステップ番号を付与している。
図8において、ユーザー端末TEのステップT1と、配信サーバーSVのステップS1からS3と、親機MFPPのステップM1からM6は、図7の通信シーケンスと同様の処理である。
すなわち、ユーザーがユーザー端末TEに入力した印刷ジョブAを送信し、その印刷ジョブAが親機MFPPに記憶され、親機MFPPから更新ソフト問合要求を配信サーバーSVに送信した後、親機MFPPが、配信サーバーSVから送信された更新データを受信し、印刷ジョブAを取得した時刻(ジョブ取得時刻tja)を考慮して、ジョブ取得時刻tjaに、予め記憶されている遅延設定時間t0を加算した時刻を、配信予定時刻thとして設定する(th=tja+t0)。
親機MFPPのステップM6の後、ステップM11において、ユーザーが、ユーザー端末TEで印刷ジョブBを入力する操作をしたとする。
この場合、親機MFPPは、入力された印刷ジョブBを、自己の記憶部70に記憶する。
また、印刷ジョブBが入力された時刻を、ジョブ取得時刻tjbとして記憶する。
ここで、印刷ジョブBのジョブ取得時刻tjbは、印刷ジョブAのジョブ取得時刻tjaよりも後の時刻である。
ただし、ステップT1と同様に、ユーザー端末TEにおいて、ユーザーが印刷ジョブAと異なる印刷ジョブBを入力してもよい。
ステップM12において、上記したステップM6と同様に、印刷ジョブBのジョブ取得時刻tjbを利用して、配信予定時刻thを変更する。
すなわち、ジョブ取得時刻tjbに、予め記憶されている遅延設定時間t0を加算した時刻を、配信予定時刻thに設定する(th=tjb+t0)。
これにより、新たな印刷ジョブBが記憶されたので、配信予定時刻thが延期される。
次に、図8のステップM12の後に、図9に示した子機MFPC2のステップC11において、ユーザーが、親機MFPPに入力していた印刷ジョブBに含まれる画像データを印刷するために、印刷ジョブBの印刷実行を開始させる入力操作(印刷実行入力操作)をしたとする。
子機MFPC2のステップC12において、要求された印刷ジョブBは、子機MFPC2には記憶されていないので、印刷ジョブBのデータ要求(印刷ジョブデータ要求)を、親機MFPPに送信する。印刷ジョブデータ要求には、要求する印刷ジョブBに関する情報が含まれる。
親機MFPPのステップM21において、印刷ジョブデータ要求を受信する。
ステップM22において、印刷ジョブデータ要求に含まれる印刷ジョブBに関する情報を確認して、記憶部70から、印刷ジョブBを読み出す。
ステップM23において、読み出した印刷ジョブBを、印刷ジョブデータ要求を送信してきた子機MFPC2に送信する。送信する印刷ジョブBには、印刷対象である画像データも含まれる。
子機MFPC2のステップC13において、画像データを含む印刷ジョブBを受信する。
ステップC14において、印刷ジョブBの印刷処理を実行する。
すなわち、画像処理部54の画像出力部によって、印刷ジョブBに含まれる画像データを、所定の印刷用紙に印刷する。
親機MFPPのステップM24において、印刷ジョブBを送信した後に、記憶部70に記憶されていた印刷ジョブBを削除する。
あるいは、図示していないが、子機MFPC2から、印刷ジョブBの印刷完了を示す情報を受信した後に、印刷ジョブBを削除してもよい。
ステップM25において、親機MFPPの記憶部70に記憶されている印刷ジョブのうち、最後に取得したジョブを選択する。
上記した図8のステップM11の時点では、最後に取得したジョブは、印刷ジョブBであったが、ステップM24において印刷ジョブBは削除されたので、ここでは、記憶部70に記憶されている印刷ジョブのうち、最後に取得したジョブである印刷ジョブAが選択される。
ステップM26において、選択された印刷ジョブAのジョブ取得時刻tjaを読み出す。
ステップM27において、上記したステップM12と同様に、読み出したジョブ取得時刻tjaを利用して、配信予定時刻thを変更する。
すなわち、ジョブ取得時刻tjaに、予め記憶されている遅延設定時間t0を加算した時刻を、配信予定時刻thに設定する(th=tja+t0)。
これにより、配信予定時刻thが、記憶部70に残っている印刷ジョブのうち、最後に取得したジョブのジョブ取得時刻tjaを考慮した時刻に、更新される。
ステップM28において、ステップM7と同様に、現在時刻TNと、配信予定時刻thとを比較する。
現在時刻TNが、配信予定時刻thに一致するか、配信予定時刻thを経過している場合(TN≧th)、ステップM8に進む。
ただし、現在時刻TNが、配信予定時刻thを経過していない場合(TN<th)、すなわち、現在時刻TNが、まだ配信予定時刻thになっていない場合は、ステップM28に留まり、定期的に、現在時刻TNと配信予定時刻thとの比較を繰り返す。
ステップM8において、現在時刻TNが配信予定時刻thになった場合は、更新データを、管理しているすべての子機(図9では、MFPC1、MFPC2)に配信する。
図9の2つの子機(MFPC1、MFPC2)のステップC1において、それぞれ、更新データを受信し、記憶する。
さらに、2つの子機(MFPC1、MFPC2)のステップC2において、受信した更新データを利用して、子機MFPCの制御プログラムの更新処理(アップデート)を実行する。
更新処理は、更新データを受信した後すぐに、自動的に開始してもよいが、子機MFPCがユーザーにより操作中でないことや、任意の機能が実行されていないことを確認してから更新処理を行うことが好ましい。
以上のように、子機MFPCが親機MFPPに対して印刷ジョブを要求し、子機MFPCにおいて印刷ジョブの印刷が実行された場合において、親機MFPPに記憶されている印刷ジョブの内容に変化が生じた場合、親機MFPPの記憶部70に残っている印刷ジョブのうち、最後に取得したジョブのジョブ取得時刻tjを考慮した時刻に、配信予定時刻thが変更されるので、上記した実施例1と同様に、子機MFPCにおいて、印刷ジョブを実行するタイミングと、制御プログラムを更新するタイミングとが重複するような事態が生じることを低減することができる。
<制御プログラムの更新処理:実施例3>
ここでは、親機MFPPにおいて、更新データが記憶された場合には、直ちに、各子機MFPCに、その更新データを配信するが、子機MFPCにおいて、親機から取得した情報に基づいて更新データを利用した制御プログラムの更新のタイミングを決定する場合の実施例について説明する。
親機MFPPから子機MFPCに更新データが配信された後に、親機MFPPに新たな印刷ジョブが記憶された場合は、上記した更新変更時刻t2を親機MFPPから子機MFPCに送信し、子機MFPCは、受信した更新変更時刻t2を利用して更新開始予定時刻Tを変更する。
たとえば、親機MFPPの印刷ジョブ取得部17が新しい印刷ジョブを取得した場合、ジョブ取得時刻設定部21が、新しいジョブを取得した第2のジョブ取得時刻tjを設定記憶し、更新変更時刻設定部23が、第2のジョブ取得時刻tjを利用して、更新変更時刻t2を設定し、更新変更時刻送信部24が、設定された更新変更時刻t2を子機MFPCに送信し、子機MFPCの更新開始予定時刻設定部59が、更新開始予定時刻Tを、受信された更新変更時刻t2に更新する。
これにより、親機MFPPにおいては、任意のタイミングで、更新データを子機MFPCに配信することができる。
また、子機MFPCにおいては、親機MFPPに新たな印刷ジョブが記憶された場合に、制御プログラムを更新するタイミングが変更され、印刷ジョブを実行させる印刷実行入力操作がされた場合でも、ユーザー操作により等倍印刷ジョブが実行されるタイミングと、制御プログラムを更新するタイミングとが重複する事態が生じることを低減できる。
図10と図11と図12に、プログラム更新システムにおける制御プログラムの更新処理の実施例3の通信シーケンスを示す。
2つの子機MFPCを図示しているが、子機MFPCは、3つ以上あってもよい。
実施例3の通信シーケンスにおいて、図7の通信シーケンスのステップと同じ処理をするステップには、同じステップ番号を付与している。
親機MFPPには、少なくとも、遅延設定時間t0が予め記憶されているものとする。
また、2つの子機MFPCには、更新実行設定時刻Sが予め記憶されているものとする。
更新実行設定時刻Sは、すべての子機MFPCで同一であってもよく、子機MFPCごとに異なる時刻であってもよい。
図10において、配信サーバーSVのステップS1からS3と、親機MFPPのステップM3とM4とM8と、子機MFPCのステップC1は、図7の通信シーケンスと同様の処理である。
すなわち、図10のステップM3において、親機MFPPから更新ソフト問合要求を配信サーバーSVに送信した後、親機MFPPが、配信サーバーSVから送信された更新データを受信すると、直ちに、その更新データを、各子機(MFPC1、MFPC2)に送信する。
子機(MFPC1、MFPC2)が、更新データを受信すると、更新データを記憶部40に記憶するが、まだ更新処理は行わない。
ステップC21において、2つの子機MFPCでは、更新データを記憶した後、それぞれ、更新データを受信した時刻である更新取得時刻tkを、記憶部40に記憶する。
ステップC22において、更新開始算出情報t1を設定する。
ここで、更新開始算出情報t1は、上記したように、子機MFPCに予め記憶されている更新実行設定時刻Sと、更新取得時刻tkとを利用して設定される。
ステップC23において、更新開始予定時刻Tとして、更新開始算出情報t1を記憶する(T=t1)。
ここでは、更新開始算出情報t1と同じ時刻が、更新開始予定時刻Tとなる。
この後、親機MFPPに印刷ジョブが記憶されることや、子機MFPCで印刷ジョブの印刷処理が実行されるというようなイベントがない場合は、現在時刻TNが更新開始予定時刻Tを経過すれば、更新データによる子機MFPCの制御プログラムの更新処理が実行される。
図10において、ステップC23の後、ユーザー端末TEのステップT11において、図7のステップT1と同様に、ユーザーが、作成した印刷ジョブAを入力し、その印刷ジョブを印刷するために、親機MFPPに印刷ジョブAを送信する操作をしたとする。
印刷ジョブAには、印刷対象の画像データが含まれるものとする。
この操作により、ユーザー端末TEから親機MFPPに、印刷ジョブAが送信される。
親機MFPPのステップM31において、印刷ジョブAを取得し、印刷ジョブ情報43として記憶部40に記憶する。
ステップM32において、印刷ジョブAを取得した時刻を、ジョブ取得時刻tjaとして記憶する。ジョブ取得時刻tjaは、印刷ジョブAと対応付けて記憶する。
ステップM33において、更新変更時刻t2aを算出する。
更新変更時刻t2aは、上記したように、ジョブ取得時刻tjaに、遅延設定時間t0を加算することにより算出される(t2a=tja+t0)。
ステップM34において、算出された更新変更時刻t2aを、各子機MFPCに送信する。
子機MFPCのステップC24において、更新変更時刻t2aを受信する。
ステップC25において、受信した更新変更時刻t2aと、子機MFPCで設定された更新開始算出情報t1とを比較する。
更新変更時刻t2aが、更新開始算出情報t1よりも後の時刻である場合(t2a>t1)、更新開始予定時刻Tに、更新変更時刻t2aを記憶する(T=t2a)。
すなわち、更新開始予定時刻Tを、更新開始算出情報t1から、より遅い時刻である更新変更時刻t2aに変更する。
一方、更新変更時刻t2aが、更新開始算出情報t1と同一か、または更新開始算出情報t1よりも前の時刻である場合(t2a≦t1)は、更新開始予定時刻Tは、更新開始算出情報t1のままである(T=t1)。
図10のステップC25の後、図11の通信シーケンスに進む。
図11において、ユーザー端末TEのステップT12において、ステップT11と同様に、ユーザーが、印刷ジョブAとは異なる印刷ジョブBを入力し、その印刷ジョブを印刷するために、親機MFPPに印刷ジョブBを送信する操作をしたとする。
この操作により、ユーザー端末TEから親機MFPPに、印刷ジョブBが送信される。
親機MFPPのステップM35において、印刷ジョブBを取得し、印刷ジョブ情報43として記憶部40に記憶する。
ステップM36において、印刷ジョブBを取得した時刻を、ジョブ取得時刻tjbとして記憶する。
ジョブ取得時刻tjbは、印刷ジョブBと対応付けて記憶する。
ジョブ取得時刻tjbは、上記したジョブ取得時刻tjaよりも後の時刻とする(tjb>tja)。
ステップM37において、更新変更時刻t2bを算出する。
更新変更時刻t2bは、上記したように、ジョブ取得時刻tjbに、遅延設定時間t0を加算することにより算出される(t2b=tjb+t0)。
ステップM38において、算出された更新変更時刻t2bを、各子機MFPCに送信する。
子機MFPCのステップC26において、更新変更時刻t2bを受信する。
ステップC27において、ステップC25と同様に、受信した更新変更時刻t2bと、子機MFPCで設定された更新開始算出情報t1とを比較する。
更新変更時刻t2bが、更新開始算出情報t1よりも後の時刻である場合(t2b>t1)、更新開始予定時刻Tに、更新変更時刻t2bを記憶する(T=t2b)。
すなわち、更新開始予定時刻Tを、更新変更時刻t2aよりも遅い時刻である更新変更時刻t2aに変更する。
一方、更新変更時刻t2bが、更新開始算出情報t1と同一か、または更新開始算出情報t1よりも前の時刻である場合(t2b≦t1)は、更新開始予定時刻Tは、更新開始算出情報t1のままである。ただし、すでに、更新開始予定時刻Tに更新変更時刻t2aが記憶されている場合は、更新開始予定時刻Tは更新変更時刻t2aのままである(T=t2a)。
次に、子機MFPC2のステップC31において、図9のステップC11と同様に、ユーザーが、親機MFPPに入力していた印刷ジョブBに含まれる画像データを印刷するために、印刷ジョブBの印刷実行を開始させる入力操作(印刷実行入力操作)をしたとする。
子機MFPC2のステップC32において、ステップC12と同様に、要求された印刷ジョブBは、子機MFPC2には記憶されていないので、印刷ジョブBのデータ要求(印刷ジョブデータ要求)を、親機MFPPに送信する。
以下、親機MFPPにおいて、ステップM21からM24と同様の処理を行う。
すなわち、親機MFPPのステップM41において、印刷ジョブデータ要求を受信する。
ステップM42において、印刷ジョブデータ要求に含まれる印刷ジョブBに関する情報を確認して、記憶部70から、印刷ジョブBを読み出す。
ステップM43において、読み出した印刷ジョブBを、印刷ジョブデータ要求を送信してきた子機MFPC2に送信する。送信する印刷ジョブBには、印刷対象である画像データも含まれる。
親機MFPPのステップM44において、印刷ジョブBを送信した後に、記憶部70に記憶されていた印刷ジョブBを削除する。
子機MFPC2のステップC33において、ステップC13と同様に、画像データを含む印刷ジョブBを受信する。
ステップC34において、ステップC14と同様に、印刷ジョブBの印刷処理を実行する。
親機MFPPにおいて、親機MFPPのステップM44の後、図12のステップM45に進む。
ステップM45において、親機MFPPの記憶部70に記憶されている印刷ジョブのうち、最後に取得したジョブを選択する。
上記した図11のステップM35の時点では、最後に取得したジョブは、印刷ジョブBであったが、ステップM44において印刷ジョブBは削除されたので、記憶部70に記憶されている印刷ジョブのうち、最後に取得したジョブである印刷ジョブAが選択される。
ステップM46において、選択された印刷ジョブAのジョブ取得時刻tjaを読み出す。
ステップM47において、ジョブ取得時刻tjaから、再度、更新変更時刻t2aを算出する。
更新変更時刻t2aは、ジョブ取得時刻tjaに、遅延設定時間t0を加算することにより算出される(t2a=tja+t0)。
ステップM48において、現在時刻TNと、更新変更時刻t2aを比較する。
現在時刻TNが、更新変更時刻t2aを経過していない場合(TN<t2a)、ステップM49に進む。
ただし、現在時刻TNが、更新変更時刻t2aと同一か、あるいは更新変更時刻t2aを経過している場合(TN≧t2a)は、ステップM49の処理は行わない。
ステップM49において、ステップM34と同様に、算出された更新変更時刻t2aを、各子機MFPCに送信する。
各子機MFPCのステップC41において、更新変更時刻t2aを受信する。
ステップC42において、受信した更新変更時刻t2aと、子機MFPCで設定された更新開始算出情報t1とを比較する。
更新変更時刻t2aが、更新開始算出情報t1よりも後の時刻である場合(t2a>t1)、更新開始予定時刻Tを、更新変更時刻t2aに変更する(T=t2a)。
一方、更新変更時刻t2aが、更新開始算出情報t1と同一か、または更新開始算出情報t1よりも前の時刻である場合(t2a≦t1)は、更新開始予定時刻Tは変更しない。
ステップC43において、現在時刻TNと、更新開始予定時刻Tを比較する。
現在時刻TNが、更新開始予定時刻Tと同一か、あるいは更新開始予定時刻Tを経過した場合(TN≧T)、ステップC2に進む。
現在時刻TNが、更新開始予定時刻Tを経過していない場合(TN<T)は、定期的に、ステップC43を繰り返し、現在時刻TNが、更新開始予定時刻Tになるのを待つ。
各子機(MFPC1、MFPC2)のステップC2において、すでに受信していた更新データを利用して、子機MFPCの制御プログラムの更新処理(アップデート)を実行する。
更新処理は、更新データを受信した後すぐに、自動的に開始してもよいが、子機MFPCの任意の機能が実行されていないことを確認してから更新処理を行うことが好ましい。
以上のように、親機MFPPに更新データが記憶されると、直ちに、更新データが各子機MFPCに送信されるが、親機MFPPに印刷ジョブが記憶されるごとに、その印刷ジョブのジョブ取得時刻tjを利用して算出された更新変更時刻t2が、各子機MFPCに送信されて、更新開始予定時刻Tが、ジョブ取得時刻tjを考慮した時刻に延期されるので、上記した実施例と同様に、子機MFPCにおいて、印刷ジョブを実行するタイミングと、制御プログラムを更新するタイミングとが重複するような事態が生じることを低減することができる。
さらに、子機MFPCが親機MFPPに対して印刷ジョブを要求し、子機MFPCにおいて印刷ジョブの印刷が実行された場合においても、親機MFPPに記憶されている印刷ジョブの内容に変化が生じた場合、親機MFPPの記憶部70に残っている印刷ジョブのうち、最後に取得したジョブのジョブ取得時刻tjを考慮した時刻に、更新開始予定時刻Tが変更されるので、同様に、子機MFPCにおいて、必要以上に制御プログラムを更新するタイミングが遅延するような事態が生じることを低減することができる。
<制御プログラムの更新処理:実施例4>
ここでは、子機MFPCが親機MFPPに更新データの取得を要求するタイミングを管理し、更新データの取得要求を受信した親機MFPPが、印刷ジョブの受信状況に応じて、更新データの配信の可否を判断する実施例について説明する。
たとえば、親機MFPPにおいて、新しい更新データが記憶された場合、親機MFPPから各子機MFPCに自動的に更新データを配信せずに、子機MFPCから更新データ取得要求が受信された場合に、記憶されている更新データを、その取得要求を送信してきた子機MFPCに送信する。
ただし、親機MFPPに印刷ジョブが記憶されている場合は、その印刷ジョブが記憶された時刻(ジョブ取得時刻)を考慮した配信予定時刻を設定し、現在時刻が配信予定時刻を経過している場合は、更新データを子機MFPCに送信するが、現在時刻が配信予定時刻を経過していない場合は、更新データを子機MFPCに送信しないようにする。
すなわち、印刷ジョブが記憶された時刻(ジョブ取得時刻)からまだ所定の時間が経過していない場合は、ユーザーが子機MFPCを操作して当該印刷ジョブを実行しようとする可能性が高いので、子機MFPCからの更新データ取得要求が受信されても、更新データを子機MFPCに送信しないようにする。
さらに、更新データを子機MFPCに送信しないようにする場合は、子機MFPCから親機MFPPに送信する更新データ取得要求の送信タイミングを再設定する。
これにより、更新データの配信が可能になるタイミングは親機MFPPが管理するので、子機MFPCにおいては、親機MFPPに記憶されている印刷ジョブの存在を確認する必要がなく、任意のタイミングで、更新データの配信を要求することができる。
また、親機MFPPに新たな印刷ジョブが記憶されている場合、更新データの配信タイミングが親機MFPPにおいて、その印刷ジョブを取得した時刻を考慮して再設定されるので、子機MFPCにおいては、ユーザーが子機MFPCにおいて印刷実行入力操作を行おうとするタイミングと、制御プログラムを更新するタイミングとが重複する事態が生じることを低減できる。
図13から図16に、プログラム更新システムにおける制御プログラムの更新処理の実施例4の通信シーケンスを示す。
2つの子機MFPCを図示しているが、子機MFPCは、3つ以上あってもよい。
実施例4の通信シーケンスにおいて、図7の通信シーケンスのステップと同じ処理をするステップには、同じステップ番号を付与している。
親機MFPPには、少なくとも、遅延設定時間t0が予め記憶されているものとする。
また、図2や図7の実施例1では、配信予定時刻を「th」と記載していたが、この実施例では、配信予定時刻を「th2」と記載するものとする。
たとえば、印刷ジョブAに対応して設定される配信予定時刻を「th2a」と記載する。
また、2つの子機MFPCには、更新実行設定時刻Sと、更新開始予定時刻Tの初期値と、再開間隔情報tRが予め記憶されているものとする。
更新実行設定時刻S、更新開始予定時刻Tの初期値、再開間隔情報tRは、すべての子機MFPCで同一であってもよく、子機MFPCごとに異なる時刻であってもよい。
ここで、更新開始予定時刻Tの初期値は、子機MFPCの起動時の現在時刻TNでもよく、あるいは、更新実行設定時刻Sと現在時刻TNとから算出してもよい。
たとえば、更新実行設定時刻Sが03:00で、起動時の現在時刻TNが2021年9月24日16時00分であった場合、更新開始予定時刻Tの初期値として、2021年9月25日3時00分を設定する。
図13の通信シーケンスでは、親機MFPPにおいて、子機MFPCからの更新データ取得要求が受信された現在時刻TNが、印刷ジョブが記憶された時刻(ジョブ取得時刻tj)を考慮して設定された配信予定時刻th2を経過している場合の実施例の更新処理について示している。
一方、図14、15、16の通信シーケンスでは、親機MFPPにおいて、子機MFPCからの更新データ取得要求が受信された現在時刻TNが、印刷ジョブが記憶された時刻(ジョブ取得時刻tj)を考慮して設定された配信予定時刻th2をまだ経過していない場合を含む実施例の更新処理について示している。
(図13の通信シーケンスの説明)
図13において、配信サーバーSVのステップS1からS3と、親機MFPPのステップM3とM4は、図7の通信シーケンスと同様の処理である。
すなわち、図13のステップM3において、親機MFPPから更新ソフト問合要求を配信サーバーSVに送信した後、ステップS3において、配信サーバーSVが、更新データを送信し、ステップM4において、親機MFPPが、配信サーバーSVから送信された更新データを受信し、記憶する。
更新データを受信した時点では、子機(MFPC1、MFPC2)には、まだ更新データは送信されない。
図13のユーザー端末TEのステップT21において、図7のステップT1と同様に、ユーザーが、作成した印刷ジョブAを入力し、その印刷ジョブを印刷するために、親機MFPPに印刷ジョブAを送信する操作をしたとする。
印刷ジョブAには、印刷対象の画像データが含まれるものとする。
この操作により、ユーザー端末TEから親機MFPPに、印刷ジョブAが送信される。
親機MFPPのステップM51において、印刷ジョブAを取得し、印刷ジョブ情報43として記憶部40に記憶する。
ステップM52において、印刷ジョブAを取得した時刻を、ジョブ取得時刻tjaとして記憶する。ジョブ取得時刻tjaは、印刷ジョブAと対応付けて記憶する。
ステップM53において、配信予定時刻th2aを算出する。
配信予定時刻th2aは、ジョブ取得時刻tjaに、遅延設定時間t0を加算することにより設定される(th2a=tja+t0)。
子機MFPC1のステップC51において、現在時刻TNが、予め設定されている更新開始予定時刻Tを経過した場合(TN≧T)、更新データ取得要求を、親機MFPPに送信する。
親機MFPPのステップM54において、更新データ取得要求を受信する。
親機MFPPにおいて、現在時刻TNと、配信予定時刻th2aを比較する。
現在時刻TNが、配信予定時刻th2aを経過している場合(TN≧th2a)、ステップM55に進む。現在時刻TNが配信予定時刻th2aに一致する場合も、ステップM55に進む。
以下、配信予定時刻th2を経過している場合には、現在時刻TNが配信予定時刻th2に一致する場合も含むものとする。
現在時刻TNが配信予定時刻th2aを経過している場合、印刷ジョブAを取得した時刻(ジョブ取得時刻tja)から、すでに遅延設定時間t0が経過しているので、更新データを配信してもよい状態になったと判断される。
一方、現在時刻TNが配信予定時刻th2aを経過していない場合は、制御プログラムの更新タイミングと、印刷ジョブの実行タイミングとの重複を回避するために、更新データを配信せずに、後述する図14の通信シーケンスに示すように、取得応答情報(リトライ応答)を子機MFPC1に送信する。この場合については、後述する図14の通信シーケンスで説明する。
親機MFPPCのステップM55において、更新データ取得要求に対する応答として、取得応答情報(更新可能応答)を生成し、子機MFPC1に送信する。
子機MFPC1のステップC52において、取得応答情報(更新可能応答)を受信する。
なお、親機MFPPCから子機MFPC1に送信される取得応答情報(更新可能応答)に、更新データそのものを含めてもよい。
取得応答情報(更新可能応答)に、更新データを含めた場合は、以下のステップM8を省略することができる。
その後、図7と同様に、親機MFPPのステップM8と、子機MFPC1のステップC1とC2を実行する。
ステップM8において、更新データを、更新データ取得要求を送信してきた子機MFPC1に配信する。
子機MFPC1のステップC1において、更新データを受信し、記憶する。
ステップC2において、受信した更新データを利用して、子機MFPC1の制御プログラムの更新処理(アップデート)を実行する。
更新処理は、更新データを受信した後すぐに、自動的に開始してもよいが、子機MFPCの任意の機能が実行されていないことを確認してから更新処理を行うことが好ましい。
なお、図13と異なり、親機MFPPに新しい更新データが記憶されていない状態で、親機MFPPが更新データ取得要求を受信した場合は、新しい更新データがないので、親機MFPPCのステップM55において、更新データ取得要求に対する応答として、取得応答情報(更新データ無し)を生成し、子機MFPC1に送信する。
この場合、「更新データ無し」を受信した子機MFPC1では、たとえば、更新開始予定時刻Tを、たとえば、翌日の更新実行設定時刻Sに設定し、その後、延期した更新開始予定時刻Tが到来した場合に、更新データ取得要求を再送すればよい。
以上のように、この実施例では、親機MFPPが印刷ジョブを記憶しているか否かにかかわらず、子機MFPCにおいて、所定の時刻(更新開始予定時刻T)を経過した場合に、子機MFPCから親機MFPPに、更新データ取得要求を送信する。
また、親機MFPPが印刷ジョブを記憶していた場合において、子機MFPCから更新データ取得要求を受信したときに、現在時刻TNが配信予定時刻th2aを経過している場合は、更新データを子機MFPCに配信しても、その印刷ジョブの処理が待たされるような事態になることが少ないと考えて、更新データを子機MFPCに配信する。
(図14から図16の通信シーケンスの説明)
図14において、配信サーバーSVのステップS1からS3と、親機MFPPのステップM3とM4、ユーザー端末TEのステップT21、親機MFPPのステップM51からM53までの処理は、図13の通信シーケンスと同様の処理である。
すなわち、図14において、親機MFPPから更新ソフト問合要求を配信サーバーSVに送信した後、配信サーバーSVが更新データを送信し、親機MFPPが配信サーバーSVから送信された更新データを受信し、記憶する。
その後、ユーザー端末TEのステップT21において、ユーザーが、作成した印刷ジョブAを入力し、その印刷ジョブを印刷するために、親機MFPPに印刷ジョブAを送信する操作をした場合、ユーザー端末TEから親機MFPPに印刷ジョブAが送信され、親機MFPPにおいて、印刷ジョブAが取得され、印刷ジョブAを取得した時刻を、ジョブ取得時刻tjaとして記憶し、配信予定時刻th2aを設定する(th2a=tja+t0)。
図14の子機MFPC1のステップC61において、図13のステップC51と同様に、現在時刻TNが、予め設定されている更新開始予定時刻Tを経過した場合(TN≧T)、更新データ取得要求を、親機MFPPに送信する。
親機MFPPのステップM54において、更新データ取得要求を受信する。
親機MFPPにおいて、現在時刻TNと、配信予定時刻th2aを比較する。
現在時刻TNが、配信予定時刻th2aを経過していない場合(TN<th2a)、ステップM56に進む。
親機MFPPのステップM56において、更新データ取得要求に対する応答として、取得応答情報(リトライ応答)を生成し、子機MFPC1に送信する。
子機MFPC1のステップC62において、取得応答情報(リトライ応答)を受信する。
リトライ応答を受信した場合、更新データは、親機MFPPからまだ送信されてこないので、更新開始予定時刻Tを延期し、更新データ取得要求を再送する時刻を再設定する。
ここで、更新開始予定時刻Tを延期する時刻を、更新データ取得要求を再送する時刻とする。
ステップC63において、更新開始予定時刻Tを再設定(延期)する。
たとえば、リトライ応答を受信した現在時刻TNに、再開間隔情報tRを加算した時刻を、更新開始予定時刻Tとする(T=TN+tR)。
この後、図15の通信シーケンスに進む。
図15のユーザー端末TEのステップT22において、図13や図14のステップT21と同様に、ユーザーが、作成した印刷ジョブBを入力し、その印刷ジョブを印刷するために、親機MFPPに印刷ジョブBを送信する操作をしたとする。
印刷ジョブBには、ステップT21で入力された印刷ジョブAと異なる印刷対象の画像データが含まれるものとする。
この操作により、ユーザー端末TEから親機MFPPに、印刷ジョブBが送信される。
親機MFPPのステップM61、M62、M63は、図14に示したステップM51、M52、M53と同様の処理である。
親機MFPPのステップM61において、印刷ジョブBを取得し、印刷ジョブ情報43として記憶部40に記憶する。
ステップM62において、印刷ジョブBを取得した時刻を、ジョブ取得時刻tjbとして記憶する。ジョブ取得時刻tjbは、印刷ジョブBと対応付けて記憶する。
ステップM63において、配信予定時刻th2bを設定する。
配信予定時刻th2bは、ジョブ取得時刻tjbに、遅延設定時間t0を加算することにより設定される(th2b=tjb+t0)。
子機MFPC1のステップC71において、現在時刻TNが、予め設定されている更新開始予定時刻Tを経過した場合(TN≧T)、更新データ取得要求を、親機MFPPに送信する。
親機MFPPのステップM64において、更新データ取得要求を受信する。
親機MFPPにおいて、現在時刻TNと、配信予定時刻th2bを比較する。
現在時刻TNが、配信予定時刻th2bを経過していない場合(TN<th2b)、ステップM65に進む。
親機MFPPのステップM65において、上記したステップM56と同様に、更新データ取得要求に対する応答として、取得応答情報(リトライ応答)を生成し、子機MFPC1に送信する。
子機MFPC1のステップC72において、取得応答情報(リトライ応答)を受信する。
リトライ応答を受信した場合、更新データは、親機MFPPからまだ送信されてこないので、更新開始予定時刻Tを延期し、更新データ取得要求を再送する時刻を再設定する。
ステップC73において、上記したステップC63と同様に、更新開始予定時刻Tを再設定(延期)する。
たとえば、リトライ応答を受信した現在時刻TNに、再開間隔情報tRを加算した時刻を、更新開始予定時刻Tとする(T=TN+tR)。
この後、図16の通信シーケンスに進む。
図16の通信シーケンスにおいて、子機MFPC2のステップC31からC34までの処理は、図9に示した処理と同様の処理であり、親機MFPPのステップM41からM47までの処理は、図11および図12に示した処理と同様の処理である。
すなわち、図16の子機MFPC2のステップC31において、図9のステップC11と同様に、ユーザーが、親機MFPPに入力していた印刷ジョブBに含まれる画像データを印刷するために、印刷ジョブBの印刷実行を開始させる入力操作(印刷実行入力操作)をしたとする。
子機MFPC2のステップC32において、要求された印刷ジョブBは、子機MFPC2には記憶されていないので、印刷ジョブBのデータ要求(印刷ジョブデータ要求)を、親機MFPPに送信する。
親機MFPPのステップM41において、印刷ジョブデータ要求を受信する。
ステップM42において、印刷ジョブデータ要求に含まれる印刷ジョブBに関する情報を確認して、記憶部70から、印刷ジョブBを読み出す。
ステップM43において、読み出した印刷ジョブBを、印刷ジョブデータ要求を送信してきた子機MFPC2に送信する。送信する印刷ジョブBには、印刷対象である画像データも含まれる。
親機MFPPのステップM44において、印刷ジョブBを送信した後に、記憶部70に記憶されていた印刷ジョブBを削除する。
子機MFPC2のステップC33において、画像データを含む印刷ジョブBを受信する。
ステップC34において、印刷ジョブBの印刷処理を実行する。
親機MFPPのステップM45において、親機MFPPの記憶部70に記憶されている印刷ジョブのうち、最後に取得したジョブを選択する。
上記した図15のステップM61の時点では、最後に取得したジョブは、印刷ジョブBであったが、ステップM44において印刷ジョブBは削除されたので、記憶部70に記憶されている印刷ジョブのうち、最後に取得したジョブである印刷ジョブAが選択される。
ステップM46において、選択された印刷ジョブAのジョブ取得時刻tjaを読み出す。
ステップM47において、ジョブ取得時刻tjaから、再度、配信予定時刻th2aを算出する。
配信予定時刻th2aは、ジョブ取得時刻tjaに、遅延設定時間t0を加算することにより設定される(th2a=tja+t0)。
その後、図13に示した子機MFPC1のステップC51、C52、C1、C2と、親機MFPPのステップM54、M55、M8と同様の処理を行う。
子機MFPC1のステップC51において、現在時刻TNが、予め設定されている更新開始予定時刻Tを経過した場合(TN≧T)、更新データ取得要求を、親機MFPPに送信する。
親機MFPPのステップM54において、更新データ取得要求を受信する。
親機MFPPにおいて、現在時刻TNと、配信予定時刻th2aを比較する。
現在時刻TNが、配信予定時刻th2aを経過している場合(TN≧th2a)、ステップM55に進む。
現在時刻TNが配信予定時刻th2aを経過した場合、印刷ジョブAを取得した時刻(ジョブ取得時刻tja)から、すでに遅延設定時間t0が経過しているので、更新データを配信してもよい状態になったと判断される。
親機MFPPのステップM55において、更新データ取得要求に対する応答として、取得応答情報(更新可能応答)を生成し、子機MFPC1に送信する。
子機MFPC1のステップC52において、取得応答情報(更新可能応答)を受信する。
なお、親機MFPPCから子機MFPC1に送信される取得応答情報(更新可能応答)に、更新データそのものを含めてもよい。
その後、親機MFPPCのステップM8において、更新データを、更新データ取得要求を送信してきた子機MFPC1に配信する。
子機MFPC1のステップC1において、更新データを受信し、記憶する。
ステップC2において、受信した更新データを利用して、子機MFPC1の制御プログラムの更新処理(アップデート)を実行する。
更新処理は、更新データを受信した後すぐに、自動的に開始してもよいが、子機MFPCの任意の機能が実行されていないことを確認してから更新処理を行うことが好ましい。
以上のように、この図14から図16の実施例でも、親機MFPPが印刷ジョブを記憶しているか否かにかかわらず、子機MFPCにおいて、所定の時刻(更新開始予定時刻T)を経過した場合に、子機MFPCから親機MFPPに、更新データ取得要求を送信する。
また、子機MFPCから更新データ取得要求を受信したときに、親機MFPPが印刷ジョブを記憶しており、現在時刻TNが配信予定時刻th2を経過していない場合は、その印刷ジョブの処理が実行される可能性が高いと考え、すぐに、更新データの配信をしないようにすることで、子機MFPCにおいて、印刷ジョブを実行するタイミングと、制御プログラムを更新するタイミングとが重複するような事態が生じることを低減することができる。
1 画像形成装置(親機)、
2 画像形成装置(子機)、
3 配信装置(配信サーバー)、
4 情報処理端末(ユーザー端末)、
10 ネットワーク、
11 制御部、
12 操作部、
13 表示部、
14 画像処理部、
15 通信部、
16 更新データ取得部、
17 印刷ジョブ取得部、
21 ジョブ取得時刻設定部、
22 更新データ配信部、
23 更新変更時刻設定部、
24 更新変更時刻送信部、
25 印刷ジョブ送信部、
26 制御プログラム更新部、
27 更新取得要求受信部、
28 プログラム配信判定部、
29 取得要求応答部、
30 機能実行部、
40 記憶部、
41 子機管理情報、
42 更新データ、
43 印刷ジョブ情報、
44 ジョブ取得時刻、
45 遅延設定時間、
46 更新変更時刻、
47 配信予定時刻、
48 取得応答情報、
51 制御部、
52 操作部、
53 表示部、
54 画像処理部、
55 通信部、
56 更新データ受信部、
57 機能実行部、
58 更新取得時刻記録部、
59 更新開始予定時刻設定部、
60 印刷要求受付部、
61 印刷ジョブ取得要求部、
62 印刷ジョブ取得部、
63 更新変更時刻受信部、
64 更新延期設定部、
65 プログラム更新実行部、
66 更新データ取得要求部、
67 取得応答受信部、
68 更新開始変更部、
70 記憶部、
71 親機情報、
72 更新データ、
73 印刷ジョブ情報、
74 更新実行設定時刻、
75 更新取得時刻、
76 更新開始算出情報、
77 更新変更時刻、
78 更新開始予定時刻、
79 再開間隔情報、
80 取得応答情報、
101 制御部、
102 操作部、
103 表示部、
104 通信部、
105 更新データ送信部、
110 記憶部、
111 親機情報、
112 更新データ

Claims (13)

  1. ネットワークを介して接続された複数の情報処理装置からなるプログラム更新システムであって、
    前記複数の情報処理装置は少なくとも1つの親機と少なくとも1つの子機とからなり、
    前記親機である情報処理装置は、
    前記子機である情報処理装置において処理されるデータを含むジョブデータを取得するジョブデータ取得部と、
    前記取得したジョブデータを管理記憶するジョブデータ管理記憶部と、
    子機からの要求に従い前記ジョブデータ管理記憶部から読み出したジョブデータを、ネットワークを介して子機に送信するジョブデータ送信部と、
    情報処理装置の動作を制御する制御プログラムを更新するための更新データを取得する更新データ取得部と、
    前記取得した更新データを記憶する更新データ記憶部と、
    更新データ記憶部から読み出した更新データを、ネットワークを介して子機に配信する更新データ配信部と、
    前記ジョブデータ管理記憶部から読み出したジョブデータを処理することにより情報処理装置が有する機能を、前記子機と同様に実現する機能実行部と、
    を備え、
    前記子機である情報処理装置は、
    ネットワークを介して親機に対して前記ジョブデータの送信を要求するジョブデータ要求部と、
    親機から送信された前記ジョブデータを受信するジョブデータ受信部と、
    受信したジョブデータを処理することにより情報処理装置が有する機能を実現する機能実行部と、
    自己の動作を制御する制御プログラムを記憶するプログラム記憶部と、
    ネットワークを介して親機から前記更新データを受信する更新データ受信部と、
    受信した前記更新データを用いて前記プログラム記憶部で記憶する制御プログラムの更新を行うプログラム更新実行部と、
    を備え、
    前記親機が更新データを配信するタイミングと前記子機が制御プログラムの更新を行うタイミングとのうち少なくとも一方が、前記ジョブデータ管理記憶部で記憶されているジョブデータに応じて決定されることを特徴とするプログラム更新システム。
  2. 前記親機が、
    前記ジョブデータを取得し前記ジョブデータ管理記憶部で記憶することに応じて、前記ジョブデータを取得した時刻に基づいて前記更新データの配信予定時刻を決定する配信予定時刻決定部と、
    前記配信予定時刻を記憶する記憶部と、
    をさらに備え、
    前記更新データ配信部は、前記配信予定時刻に基づくタイミングで前記更新データを配信することを特徴とする請求項に記載のプログラム更新システム。
  3. 前記親機が、
    ジョブデータを受信した後、更新データの送信を行わないようにする期間を設けるための設定である遅延時間設定を記憶するための設定記憶部
    をさらに備え、
    前記配信予定時刻決定部は、前記ジョブデータ管理記憶部で記憶されるジョブデータを最後に取得した時刻と予め記憶された前記遅延時間設定とを用いて前記配信予定時刻を決定することを特徴とする請求項に記載のプログラム更新システム。
  4. 前記親機において、
    前記記憶部で配信予定時刻を記憶した後に、前記ジョブデータ取得部が新しいジョブデータを取得した場合、前記配信予定時刻決定部が、前記新しいジョブデータを取得した時刻に基づいて、前記配信予定時刻を変更することを特徴とする請求項またはに記載のプログラム更新システム。
  5. 前記親機おいて、
    前記ジョブデータ取得部が少なくとも1つ以上のジョブデータを取得する場合に、それぞれのジョブデータを取得した時刻であるジョブ取得時刻を前記ジョブデータと関連付けて前記ジョブデータ管理記憶部にて記憶し、
    前記記憶部が配信予定時刻を記憶した後に、前記子機からの要求に従い前記ジョブデータ管理記憶部から読み出したジョブデータを、ジョブデータ送信部によりネットワークを介して子機に送信した場合、
    該ジョブデータ以外の、前記ジョブデータ管理記憶部で記憶されているジョブデータのジョブ取得時刻を利用して前記配信予定時刻決定部が前記配信予定時刻を変更することを特徴とする請求項2から4のいずれかに記載のプログラム更新システム。
  6. 前記子機が、
    前記受信した更新データを記憶する更新データ記憶部と、
    前記更新データを受信した時刻に基づいて、前記制御プログラムの更新を開始する時刻である更新開始予定時刻を設定する更新開始予定時刻設定部と、
    前記更新開始予定時刻を記憶する記憶部と、
    を備え、
    前記親機が新たなジョブデータを前記ジョブデータ管理記憶部で記憶したことに応じて前記更新開始予定時刻を変更すること、および、
    前記プログラム更新実行部は、前記更新開始予定時刻に基づくタイミングで制御プログラムの更新を行うことを特徴とする請求項に記載のプログラム更新システム。
  7. 前記子機が、
    子機の制御プログラムの更新を開始する時刻に関する設定である更新開始時刻設定を記憶する設定記憶部
    をさらに備え、
    前記更新開始予定時刻設定部が更新開始予定時刻を設定する際に予め記憶された前記更新開始時刻設定を利用することを特徴とする請求項に記載のプログラム更新システム。
  8. 前記親機が、
    前記ジョブデータ取得部がジョブを取得した場合、およびネットワークを介して子機にジョブデータを送信した場合に、前記子機が制御プログラムの更新処理を実行する予定時刻を決定するための情報である更新制御情報を前記子機に送信する更新制御情報送信部と
    を、さらに備え、
    前記ジョブデータ取得部が新しいジョブを取得した場合、前記更新制御情報送信部が、前記更新制御情報を前記子機に送信し、
    前記子機の更新開始予定時刻設定部が、前記更新開始予定時刻を、受信された更新制御情報に基づいて更新することを特徴とする請求項またはに記載のプログラム更新システム。
  9. 前記親機が、
    子機から送信された更新データ取得要求を受信する更新取得要求受信部と、
    子機から前記更新データ取得要求を受信した場合に、前記ジョブデータ管理記憶部で記憶されているジョブデータに応じて更新データ配信部による更新データの配信の可否を判定する配信可否判定部と、
    をさらに備え、
    前記子機が、
    前記親機に、更新データを取得するための要求である更新データ取得要求を送信する更新データ取得要求部
    をさらに備えたことを特徴とする請求項1に記載のプログラム更新システム。
  10. 前記子機が、
    前記親機に前記更新データ取得要求を送信する時刻に関する設定である更新要求時刻設定を記憶する設定記憶部
    をさらに備え、
    前記更新データ取得要求部は、前記更新要求時刻設定に基づくタイミングで前記更新データ取得要求を送信することを特徴とする請求項に記載のプログラム更新システム。
  11. 前記情報処理装置が、画像形成装置であることを特徴とする請求項1から10のいずれかに記載のプログラム更新システム。
  12. 情報処理装置であって、
    情報処理装置において処理されるデータを含むジョブデータを取得するジョブデータ取得部と、
    前記取得したジョブデータを管理記憶するジョブデータ管理記憶部と、
    第2の情報処理装置からの要求に従い前記ジョブデータ管理記憶部から読み出したジョブデータを、ネットワークを介して前記第2の情報処理装置に送信するジョブデータ送信部と、
    情報処理装置の動作を制御する制御プログラムを更新するための更新データを取得する更新データ取得部と、
    前記ジョブデータ管理記憶部から読み出したジョブデータを処理することにより情報処理装置が有する機能を実現する機能実行部と、
    前記取得した更新データを記憶する更新データ記憶部と、
    更新データ記憶部から読み出した更新データを、ネットワークを介して前記第2の情報処理装置に配信する更新データ配信部と、
    を備え、
    前記ジョブデータ管理記憶部で記憶されているジョブデータに応じて前記更新データを配信するタイミングもしくは可否を決定することを特徴とする情報処理装置。
  13. 更新データによって所定の機能を実行させるための制御プログラムを更新する情報処理装置のプログラム更新方法であって、
    前記情報処理装置が、配信装置から送信される前記更新データを受信する親機と、前記親機から配信される更新データを利用して、自己の情報処理装置の機能を実行させる制御プログラムを更新する1または複数の子機からなり、
    前記情報処理装置のプログラム更新方法は、
    前記親機に備えられた制御部が、
    前記更新データを前記子機に配信する予定時刻である配信予定時刻を記憶する記憶ステップと、
    前記制御プログラムを更新するための更新データを取得する更新データ取得ステップと、
    前記情報処理装置において処理されるデータを含むジョブを取得するジョブ取得ステップと、
    前記ジョブを取得した時刻であるジョブ取得時刻を設定記憶するジョブ取得時刻記憶ステップと、
    前記配信予定時刻を経過した後に、前記取得した更新データを、前記子機に配信する更新データ配信ステップとを実行させた後に、
    前記子機に備えられた制御部が、
    前記親機から配信された更新データを受信する更新データ受信ステップと、
    前記受信した更新データによって、前記制御プログラムを更新するプログラム更新実行ステップとを実行させることからなり、
    前記ジョブ取得ステップにおいて、1または複数のジョブが取得された場合に、
    前記ジョブ取得時刻記憶ステップにおいて、取得されたジョブごとにジョブ取得時刻を設定記憶し、
    前記更新データ配信ステップにおいて、
    前記設定記憶されたジョブ取得時刻のうち、最後に取得したジョブのジョブ取得時刻を利用して、前記配信予定時刻を設定し、
    現在時刻が前記設定された配信予定時刻を経過した場合に、前記更新データを前記子機に配信することを特徴とする情報処理装置のプログラム更新方法。
JP2022056568A 2022-03-30 2022-03-30 プログラム更新システムおよび情報処理装置 Active JP7765332B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2022056568A JP7765332B2 (ja) 2022-03-30 2022-03-30 プログラム更新システムおよび情報処理装置
US18/127,526 US12481489B2 (en) 2022-03-30 2023-03-28 Program update system and information processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022056568A JP7765332B2 (ja) 2022-03-30 2022-03-30 プログラム更新システムおよび情報処理装置

Publications (2)

Publication Number Publication Date
JP2023148504A JP2023148504A (ja) 2023-10-13
JP7765332B2 true JP7765332B2 (ja) 2025-11-06

Family

ID=88194155

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022056568A Active JP7765332B2 (ja) 2022-03-30 2022-03-30 プログラム更新システムおよび情報処理装置

Country Status (2)

Country Link
US (1) US12481489B2 (ja)
JP (1) JP7765332B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12541362B2 (en) * 2023-08-23 2026-02-03 Bank Of America Corporation System and method of using advanced computation models for data analysis and automated decision-making for code change scheduling conflicts

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003058338A (ja) 2001-08-20 2003-02-28 Minolta Co Ltd 画像処理装置および管理ユニット
JP2004064715A (ja) 2002-07-31 2004-02-26 Minolta Co Ltd 画像形成装置
JP2016159540A (ja) 2015-03-03 2016-09-05 コニカミノルタ株式会社 チャート作成制御プログラム及び制御装置並びにチャート作成方法
JP2017100389A (ja) 2015-12-03 2017-06-08 コニカミノルタ株式会社 タンデム印刷システム及び印刷制御方法並びに印刷制御プログラム
JP2022044317A (ja) 2020-09-07 2022-03-17 シャープ株式会社 画像形成システム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040215706A1 (en) * 2003-03-31 2004-10-28 Lavender Scott D. System and method for updating software and version control in a production printer
US8365181B2 (en) * 2004-07-12 2013-01-29 Hewlett-Packard Development Company, L.P. Method and system for guiding scheduling decisions in clusters of computers using dynamic job profiling
JP2006221224A (ja) 2005-02-08 2006-08-24 Matsushita Electric Ind Co Ltd 自動アップデート装置と自動アップデート中継装置と自動アップデート中継方法と自動アップデート中継プログラムおよび自動アップデートシステム
JP2009206788A (ja) * 2008-02-27 2009-09-10 Canon Inc 管理サーバ、画像形成装置、管理方法、プログラム
JP5961081B2 (ja) * 2012-09-06 2016-08-02 キヤノン株式会社 監視装置、管理システム、ファームウェア更新方法、及びプログラム
JP6354383B2 (ja) * 2014-06-26 2018-07-11 株式会社リコー 機器導入情報配信装置、機器導入情報配信プログラム及びシステム
JP2020024636A (ja) * 2018-08-08 2020-02-13 株式会社Preferred Networks スケジューリング装置、スケジューリングシステム、スケジューリング方法及びプログラム
JP2022106619A (ja) * 2021-01-07 2022-07-20 株式会社リコー 情報処理システム、情報処理装置、および情報処理方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003058338A (ja) 2001-08-20 2003-02-28 Minolta Co Ltd 画像処理装置および管理ユニット
JP2004064715A (ja) 2002-07-31 2004-02-26 Minolta Co Ltd 画像形成装置
JP2016159540A (ja) 2015-03-03 2016-09-05 コニカミノルタ株式会社 チャート作成制御プログラム及び制御装置並びにチャート作成方法
JP2017100389A (ja) 2015-12-03 2017-06-08 コニカミノルタ株式会社 タンデム印刷システム及び印刷制御方法並びに印刷制御プログラム
JP2022044317A (ja) 2020-09-07 2022-03-17 シャープ株式会社 画像形成システム

Also Published As

Publication number Publication date
US20230315427A1 (en) 2023-10-05
JP2023148504A (ja) 2023-10-13
US12481489B2 (en) 2025-11-25

Similar Documents

Publication Publication Date Title
US9164710B2 (en) Service providing system and service providing method
US20040205261A1 (en) Image forming apparatus and control method therefor, program for executing the control method and storage medium storing the program
JP5444870B2 (ja) 画像形成装置とその処理方法およびプログラム
US10075597B2 (en) Image processing apparatus having file server function, and control method and storage medium therefor
US20110093921A1 (en) Multi-functional peripheral and multi-functional peripheral control system
US7689512B2 (en) License management apparatus capable of efficiently executing job or workflow, license management system, license management method, and recording medium
JP5120334B2 (ja) 画像形成装置
US9377981B2 (en) Image forming system that sends schedule information of image forming apparatus over network
US20080263134A1 (en) Information-processing system, method, computer-readable medium, and computer data signal for controlling provision of information or processing service
US20090292708A1 (en) Data delivery apparatus, data delivery method, and data delivery program
JP7765332B2 (ja) プログラム更新システムおよび情報処理装置
US20110216339A1 (en) Image processing apparatus, method for controlling the same, and recording medium
JP5697362B2 (ja) 画像処理システム及び処理条件設定実施方法
US20160277605A1 (en) Image forming device and image forming method
JP2004118313A (ja) ネットワークプリンタ
JP7614015B2 (ja) 画像処理装置および画像処理装置の動作状態通知方法
JP2007087217A (ja) データ通信装置、データ通信方法、およびデータ通信プログラム
JP7535234B2 (ja) 画像形成装置
JP2000025307A (ja) 画像処理装置のパラメータ共有方法およびシステム
JP2009006585A (ja) 画像形成装置、バックアップ方法、およびコンピュータプログラム
JP2020065233A (ja) 情報処理システム及び情報処理方法
JP2006174031A (ja) 画像形成システム及び画像形成装置
JP2008152402A (ja) 情報処理装置、印刷システム及びプログラム
JP6711321B2 (ja) ファクシミリ送信システム及び画像形成装置
JP2003300361A (ja) 画像形成装置および画像形成装置ネットワークシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240919

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20250613

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250617

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20250801

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20250930

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20251024

R150 Certificate of patent or registration of utility model

Ref document number: 7765332

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150