(57)【要約】【課題】  プリンタのファームウェアとパーソナルコンピュータのプリンタドライバとを発生した障害に基づいて適切な組み合わせで更新する。【解決手段】  ＰＣ１２と、ＰＣ１２から印刷データを受信して印刷処理を行うプリンタ１０と、プリンタ１０のファームウェアとプリンタドライバとを管理するサーバ１４とが接続されて構成される更新システム１であって、前記印刷処理において障害が発生したことを検知する手段と、前記検知した障害に対応するエラーコードを判定する手段と、前記判定したエラーコードに基づいて、サーバ１４から、プリンタ１０の更新用ファームウェアとＰＣ１２の更新用プリンタドライバとを取得する取得手段と、前記取得した更新用ファームウェアと更新用プリンタドライバとを用いて、プリンタ１０のファームウェアとＰＣ１２のプリンタドライバとを更新する手段と、を含む更新システム１。【選択図】        図１
2007058453.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置と、前記情報処理装置から印刷データを受信して印刷処理を行うプリンタと、前記プリンタのファームウェアとプリンタドライバとを管理するサーバとが接続されて構成される更新システムであって、
前記印刷処理において障害が発生したことを検知する手段と、
前記検知した障害に対応するエラーコードを判定する手段と、
前記判定したエラーコードに基づいて、前記サーバから、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを取得する取得手段と、
前記取得した更新用ファームウェアと更新用プリンタドライバとを用いて、前記プリンタのファームウェアと前記情報処理装置のプリンタドライバとを更新する手段と、を含む
ことを特徴とする更新システム。
【請求項２】
請求項１に記載の更新システムにおいて、
前記サーバから、エラーコードにそれぞれ対応付けて、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとの組み合わせを示すデータを受信する手段と、
前記受信したデータを参照して、前記判定したエラーコードに対応した、更新用ファームウェアと更新用プリンタドライバの組み合わせを検出する手段と、をさらに含み、
前記取得手段は、前記検出した組み合わせに基づいて、前記サーバから、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを取得する、
ことを特徴とする更新システム。
【請求項３】
請求項１に記載の更新システムにおいて、
前記プリンタは、
前記判定したエラーコードを前記サーバに送信する手段をさらに含み、
前記サーバは、
エラーコードにそれぞれ対応付けて、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを記憶する手段と、
前記送信されたエラーコードを受信する手段と、
前記受信したエラーコードに対応づけて記憶された、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを前記プリンタに転送する手段と、をさらに含む
ことを特徴とする更新システム。
【請求項４】
請求項１に記載の更新システムにおいて、
前記情報処理装置は、
前記判定したエラーコードを前記サーバに送信する手段をさらに含み、
前記サーバは、
エラーコードにそれぞれ対応付けて、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを記憶する手段と、
前記送信されたエラーコードを受信する手段と、
前記受信したエラーコードに対応づけて記憶された、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを前記情報処理装置に転送する手段と、をさらに含む
ことを特徴とする更新システム。
【請求項５】
情報処理装置から印刷データを受信して印刷処理を行うプリンタであって、
前記印刷処理において障害が発生したことを検知する手段と、
前記検知した障害に対応するエラーコードを判定する手段と、
前記判定したエラーコードに基づいて、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを取得する手段と、
前記取得した更新用ファームウェアを用いて、前記プリンタのファームウェアを更新する手段と、
前記取得した更新用プリンタドライバを、前記情報処理装置に送信する手段と、を含む
ことを特徴とするプリンタ。
【請求項６】
情報処理装置から印刷データを受信して印刷処理を行うプリンタの制御方法であって、
前記印刷処理において障害が発生したことを検知するステップと、
前記検知した障害に対応するエラーコードを判定するステップと、
前記判定したエラーコードに基づいて、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを取得するステップと、
前記取得した更新用ファームウェアを用いて、前記プリンタのファームウェアを更新するステップと、
前記取得した更新用プリンタドライバを、前記情報処理装置に送信するステップと、を含む
ことを特徴とするプリンタの制御方法。
【請求項７】
情報処理装置から印刷データを受信して印刷処理を行うプリンタを機能させるためのプログラムであって、
前記印刷処理において障害が発生したことを検知する手段、
前記検知した障害に対応するエラーコードを判定する手段、
前記判定したエラーコードに基づいて、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを取得する手段、
前記取得した更新用ファームウェアを用いて、前記プリンタのファームウェアを更新する手段、及び、
前記取得した更新用プリンタドライバを、前記情報処理装置に送信する手段、
としてプリンタを機能させるためのプログラム。
【請求項８】
プリンタに印刷データを送信して印刷処理を行わせる情報処理装置であって、
前記印刷処理において障害が発生したことを検知する手段と、
前記検知した障害に対応するエラーコードを判定する手段と、
前記判定したエラーコードに基づいて、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを取得する手段と、
前記取得した更新用プリンタドライバを用いて、前記情報処理装置のプリンタドライバを更新する手段と、
前記取得した更新用ファームウェアを、前記プリンタに送信する手段と、を含む
ことを特徴とする情報処理装置。
【請求項９】
プリンタに印刷データを送信して印刷処理を行わせるコンピュータの制御方法であって、
前記印刷処理において障害が発生したことを検知するステップと、
前記検知した障害に対応するエラーコードを判定するステップと、
前記判定したエラーコードに基づいて、前記プリンタの更新用ファームウェアと前記コンピュータの更新用プリンタドライバとを取得するステップと、
前記取得した更新用プリンタドライバを用いて、前記コンピュータのプリンタドライバを更新するステップと、
前記取得した更新用ファームウェアを、前記プリンタに送信するステップと、を含む
ことを特徴とするコンピュータの制御方法。
【請求項１０】
プリンタに印刷データを送信して印刷処理を行わせるコンピュータのプログラムであって、
前記印刷処理において障害が発生したことを検知する手段、
前記検知した障害に対応するエラーコードを判定する手段、
前記判定したエラーコードに基づいて、前記プリンタの更新用ファームウェアと前記コンピュータの更新用プリンタドライバとを取得する手段、
前記取得した更新用プリンタドライバを用いて、前記コンピュータのプリンタドライバを更新する手段、及び、
前記取得した更新用ファームウェアを、前記プリンタに送信する手段、
として前記コンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリンタのファームウェアと情報処理装置のプリンタドライバのアップデートを行う更新システム、プリンタ、情報処理装置、コンピュータの制御方法およびプログラムに関する。
【背景技術】
【０００２】
パーソナルコンピュータから印刷データを送信して、プリンタにおいて印刷処理する際に、プリンタ又はパーソナルコンピュータにおいて不具合が生じて正常に印刷処理が行われないことがある。このような場合に、プリンタのファームウェアやパーソナルコンピュータのプリンタドライバをアップデートして、不具合を解消することがある。プリンタのファームウェアやパーソナルコンピュータのプリンタドライバのアップデートに関する技術として、特許文献１では、プリンタ内部で不具合があった場合に、不具合の状態をサーバに送信し、サーバからは更新用ソフトウェアを受信して、プリンタのファームウェアをアップデートする技術が記載されている。
【特許文献１】特開平９−２３７０１７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、従来の技術では、プリンタ内部で発生した障害にしか対応できないという問題があった。また、プリンタのファームウェアをアップデートするだけでは、プリンタのファームウェアとパーソナルコンピュータのプリンタドライバとの組み合わせが適正でなく、不具合が解消しないという問題もあった。
【０００４】
本発明は上記課題に鑑みてなされたものであって、その目的の一つは、プリンタのファームウェアとパーソナルコンピュータのプリンタドライバとを発生した障害に基づいて適切な組み合わせで更新することができる更新システム、プリンタ、情報処理装置、コンピュータの制御方法およびプログラムを提供することにある。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明に係る更新システムは、情報処理装置と、前記情報処理装置から印刷データを受信して印刷処理を行うプリンタと、前記プリンタのファームウェアとプリンタドライバとを管理するサーバとが接続されて構成される更新システムであって、前記印刷処理において障害が発生したことを検知する手段と、前記検知した障害に対応するエラーコードを判定する手段と、前記判定したエラーコードに基づいて、前記サーバから、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを取得する取得手段と、前記取得した更新用ファームウェアと更新用プリンタドライバとを用いて、前記プリンタのファームウェアと前記情報処理装置のプリンタドライバとを更新する手段と、を含むことを特徴とする。
【０００６】
また、本発明に係るプリンタは、情報処理装置から印刷データを受信して印刷処理を行うプリンタであって、前記印刷処理において障害が発生したことを検知する手段と、前記検知した障害に対応するエラーコードを判定する手段と、前記判定したエラーコードに基づいて、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを取得する手段と、前記取得した更新用ファームウェアを用いて、前記プリンタのファームウェアを更新する手段と、前記取得した更新用プリンタドライバを、前記情報処理装置に送信する手段と、を含むことを特徴とする。
【０００７】
また、本発明に係るプリンタの制御方法は、情報処理装置から印刷データを受信して印刷処理を行うプリンタの制御方法であって、前記印刷処理において障害が発生したことを検知するステップと、前記検知した障害に対応するエラーコードを判定するステップと、前記判定したエラーコードに基づいて、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを取得するステップと、前記取得した更新用ファームウェアを用いて、前記プリンタのファームウェアを更新するステップと、前記取得した更新用プリンタドライバを、前記情報処理装置に送信するステップと、を含むことを特徴とする。
【０００８】
また、本発明に係るプリンタを機能させるためのプログラムは、情報処理装置から印刷データを受信して印刷処理を行うプリンタのプログラムであって、前記印刷処理において障害が発生したことを検知する手段、前記検知した障害に対応するエラーコードを判定する手段、前記判定したエラーコードに基づいて、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを取得する手段、前記取得した更新用ファームウェアを用いて、前記プリンタのファームウェアを更新する手段、及び、前記取得した更新用プリンタドライバを、前記情報処理装置に送信する手段、としてプリンタを機能させるためのプログラムである。プログラムは、ＣＤ−ＲＯＭ（Compact Disk - Read Only Memory）、ＤＶＤ−ＲＯＭ（Digital Versatile Disk - Read Only Memory）、メモリーカードその他のあらゆるコンピュータ読み取り可能な情報記憶媒体に格納することとしてもよい。
【０００９】
また、本発明に係る情報処理装置は、プリンタに印刷データを送信して印刷処理を行わせる情報処理装置であって、前記印刷処理において障害が発生したことを検知する手段と、前記検知した障害に対応するエラーコードを判定する手段と、前記判定したエラーコードに基づいて、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを取得する手段と、前記取得した更新用プリンタドライバを用いて、前記情報処理装置のプリンタドライバを更新する手段と、前記取得した更新用ファームウェアを、前記プリンタに送信する手段と、を含むことを特徴とする。
【００１０】
また、本発明に係るコンピュータ（例えばパーソナルコンピュータ、サーバコンピュータ、携帯情報端末等である。以下、同様。）の制御方法は、プリンタに印刷データを送信して印刷処理を行わせるコンピュータの制御方法であって、前記印刷処理において障害が発生したことを検知するステップと、前記検知した障害に対応するエラーコードを判定するステップと、前記判定したエラーコードに基づいて、前記プリンタの更新用ファームウェアと前記コンピュータの更新用プリンタドライバとを取得するステップと、前記取得した更新用プリンタドライバを用いて、前記コンピュータのプリンタドライバを更新するステップと、前記取得した更新用ファームウェアを、前記プリンタに送信するステップと、を含むことを特徴とする。
【００１１】
また、本発明に係るプログラムは、プリンタに印刷データを送信して印刷処理を行わせるコンピュータのプログラムであって、前記印刷処理において障害が発生したことを検知する手段、前記検知した障害に対応するエラーコードを判定する手段、前記判定したエラーコードに基づいて、前記プリンタの更新用ファームウェアと前記コンピュータの更新用プリンタドライバとを取得する手段、前記取得した更新用プリンタドライバを用いて、前記コンピュータのプリンタドライバを更新する手段、及び、前記取得した更新用ファームウェアを、前記プリンタに送信する手段、として前記コンピュータを機能させるためのプログラムである。プログラムは、ＣＤ−ＲＯＭ（Compact Disk - Read Only Memory）、ＤＶＤ−ＲＯＭ（Digital Versatile Disk - Read Only Memory）、メモリーカードその他のあらゆるコンピュータ読み取り可能な情報記憶媒体に格納することとしてもよい。
【００１２】
本発明では、情報処理装置と、情報処理装置から印刷データを受信して印刷処理を行うプリンタと、プリンタのファームウェアとプリンタドライバとを管理するサーバとが接続されて更新システムが構成される。そして、更新システムでは、印刷処理において障害が発生したことを検知し、その検知した障害に対応するエラーコードを判定する。次に、判定したエラーコードに基づいて、プリンタの更新用ファームウェアと情報処理装置の更新用プリンタドライバとを、サーバからダウンロードする。そして、ダウンロードした更新用ファームウェアと更新用プリンタドライバとを用いて、プリンタのファームウェアと情報処理装置のプリンタドライバとを更新する。
【００１３】
本発明によると、プリンタの更新用ファームウェアと情報処理装置の更新用プリンタドライバとが、印刷処理において発生した障害のエラーコードに関連付けられている。そのため、本発明に係る更新システムでは、印刷処理中に発生した障害に対応するエラーコードに基づいて、プリンタのファームウェアと情報処理装置のプリンタドライバとを適切な組み合わせで更新することができる。
【００１４】
また、本発明の一態様では、更新システムは、前記サーバから、エラーコードにそれぞれ対応付けて、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとの組み合わせを示すデータを受信する手段と、前記受信したデータを参照して、前記判定したエラーコードに対応した、更新用ファームウェアと更新用プリンタドライバの組み合わせを検出する手段と、をさらに含み、前記取得手段は、前記検出した組み合わせに基づいて、前記サーバから、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを取得する、ことを特徴とする。こうすれば、更新システムは、サーバから受信した、エラーコードにそれぞれ対応付けて、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとの組み合わせを示すデータから、判定したエラーコードに対応する更新用ファームウェアと更新用プリンタドライバの組み合わせを検出することができる。そして、検出した組合せに基づいて、サーバからプリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを取得し、プリンタのファームウェアと情報処理装置のプリンタドライバとを適切な組み合わせで更新することができる。
【００１５】
また、本発明の一態様では、更新システムにおいて、前記プリンタは、前記判定したエラーコードを前記サーバに送信する手段をさらに含み、前記サーバは、エラーコードにそれぞれ対応付けて、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを記憶する手段と、前記送信されたエラーコードを受信する手段と、前記受信したエラーコードに対応づけて記憶された、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを前記プリンタに転送する手段と、をさらに含むことを特徴とする。こうすれば、更新システムでは、サーバは、エラーコードにそれぞれ対応付けて、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを記憶し、プリンタから送信されたエラーコードに基づいて、プリンタに対してプリンタの更新用ファームウェアと情報処理装置の更新用プリンタドライバとを転送する。プリンタは、転送された更新用ファームウェアと更新用プリンタドライバとに基づいて、プリンタのファームウェアと情報処理装置のプリンタドライバとを適切な組み合わせで更新することができる。
【００１６】
また、本発明の一態様では、更新システムにおいて、前記情報処理装置は、前記判定したエラーコードを前記サーバに送信する手段をさらに含み、前記サーバは、エラーコードにそれぞれ対応付けて、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを記憶する手段と、前記送信されたエラーコードを受信する手段と、前記受信したエラーコードに対応づけて記憶された、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを前記情報処理装置に転送する手段と、をさらに含むことを特徴とする。こうすれば、更新システムでは、サーバは、エラーコードにそれぞれ対応付けて、前記プリンタの更新用ファームウェアと前記情報処理装置の更新用プリンタドライバとを記憶し、情報処理装置から送信されたエラーコードに基づいて、情報処理装置に対してプリンタの更新用ファームウェアと情報処理装置の更新用プリンタドライバとを転送する。情報処理装置は、転送された更新用ファームウェアと更新用プリンタドライバとに基づいて、プリンタのファームウェアと情報処理装置のプリンタドライバとを適切な組み合わせで更新することができる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の好適な実施形態について図面に基づいて詳細に説明する。
【００１８】
図１は、本発明に係る更新システムのシステム構成図である。図１に示されるように、更新システム１は、プリンタ１０、ＰＣ１２とサーバ１４を含んで構成される。プリンタ１０とＰＣ１２とは、ＬＡＮなどの内部ネットワーク１６を介して接続される。また、プリンタ１０は、内部ネットワーク１６を介してインターネットなどの外部ネットワーク１８に接続し、外部ネットワーク１８上にあるサーバ１４にアクセスすることができる。本実施形態では、プリンタ１０とＰＣ１２とはイーサネット（登録商標）接続されていることとするが、シリアル接続など他の接続形態であっても構わない。
【００１９】
本実施形態における更新システム１では、プリンタ１０がＰＣ１２から送信された印刷データの印刷処理中に障害が発生したことを検知した場合に、プリンタ１０のファームウェアとＰＣ１２のプリンタドライバとを更新するものである。プリンタ１０は、更新用のファームウェアとプリンタドライバとを、サーバ１４からダウンロードして取得する。
【００２０】
本実施形態におけるプリンタ１０は、ネットワーク機能を有するネットワークプリンタである。プリンタ１０は、ＰＣ１２から印刷データを受信して印刷処理を行う。プリンタ１０は、印刷処理において発生する障害を検知し、検知した障害のエラーコードを判定する。また、プリンタ１０は、サーバ１４から、エラーコードにそれぞれ対応付けて、プリンタ１０の更新用ファームウェアと、ＰＣ１２の更新用プリンタドライバとの組み合わせを示すデータ（以下、組合せデータとする）を受信する。図２に、組合せデータに格納されている情報の一例を示す。図２に示されるように、組合せデータは、エラーコードに対応付けて、更新用ファームウェアおよび更新用プリンタドライバのバージョン情報を持つテーブルである。同図中の「−」は、工場出荷時のバージョンを示し、「−」のファームウェアまたはプリンタドライバは、更新の必要がない。そして、プリンタ１０は、受信した組合せデータを参照して、判定したエラーコードに対応した、更新用ファームウェアと更新用プリンタドライバの組み合わせを検出する。プリンタ１０は、検出した組み合わせに基づいて、サーバ１４から、プリンタ１０の更新用ファームウェアとＰＣ１２の更新用プリンタドライバとを取得する。そして、プリンタ１０は、取得した更新用ファームウェアを用いて、プリンタ１０のファームウェアを更新し、また、取得した更新用プリンタドライバを、ＰＣ１２に送信する。
【００２１】
ＰＣ１２は、プリンタ１０に印刷データを送信し印刷処理を行わせるパーソナルコンピュータである。ＰＣ１２では、印刷処理において障害が発生した場合には、その障害情報をプリンタ１０に対して送信する。そして、ＰＣ１２は、プリンタ１０がサーバ１４から取得した更新用プリンタドライバを、プリンタ１０から受信し、プリンタドライバの更新を行う。
【００２２】
サーバ１４は、プリンタ１０のファームウェアとプリンタドライバとを管理するサーバである。本実施形態におけるサーバ１４は、インターネットに接続されている。サーバ１４は、プリンタ１０のエラーコードに対応付けて、プリンタ１０の更新用ファームウェアとＰＣ１２の更新用プリンタドライバとの組み合わせを示すデータを保持する。そして、プリンタ１０に対して、上記のデータを送信する。また、サーバ１４は、プリンタ１０からダウンロードの要求があったファームウェアとプリンタドライバとを、プリンタ１０に対して送信する。
【００２３】
図３は、プリンタ１０の機能ブロック図である。図３に示されるように、プリンタ１０は、機能的には、送受信部２０、印刷処理部２２、障害検知部２４、エラーコード判定部２６、組合せ検出部２８、アップデータ取得部３０、アップデータ格納部３２と更新部３４を含んで構成される。
【００２４】
送受信部２０は、ＰＣ１２およびサーバ１４とデータの送受信を行うものであり、プリンタ１０のネットワークインターフェースを含んで構成される。送受信部２０は、印刷処理部２２に対しては、ＰＣ１２から受信した印刷データを転送する。また、送受信部２０は、エラーコード判定部２６に対しては、ＰＣ１２から受信した障害情報を転送する。送受信部２０は、組合せ検出部２８に対しては、サーバ１４から受信した組合せデータを転送する。そして、送受信部２０は、アップデータ取得部３０から要求された更新用ファームウェアと更新用プリンタドライバをサーバ１４から受信し、それらをアップデータ取得部３０に転送する。
【００２５】
印刷処理部２２は、ＰＣ１２から受信した印刷データに基づいて印刷処理を行うものである。印刷処理部２２は、受信した印刷データを解釈し、ラスタライズ等をすることで出力データを作成し、その出力データに基づいた画像を、プリンタ１０に供給された記録用紙に固定する処理を行う。
【００２６】
障害検知部２４は、プリンタ１０の印刷処理において発生した障害を検知するものである。障害検知部２４は、印刷処理部２２を定期的に監視し、印刷処理部２２において処理中に障害が発生した場合に発信されるエラー信号を検知する。障害検知部２４は、エラー信号を検知すると、印刷処理部２２に対して、印刷処理をいったん停止させる。
【００２７】
エラーコード判定部２６は、印刷処理において発生した障害に対応するエラーコードを判定するものである。エラーコード判定部２６では、プリンタ１０において発生した障害のほか、ＰＣ１２から送信されるＰＣ１２における印刷処理に係る障害についても併せて判定される。エラーコード判定部２６は、例えば、障害検知部２４で検知されたエラー信号、エラー発生時のプリンタ１０のステータス情報、エラーの発生したアドレス等の情報から、プリンタ１０のＲＯＭに記憶されるエラーコードとエラー信号やステータス情報等を対応付けたデータベースを参照し、エラーコードを判定する。
【００２８】
組合せ検出部２８は、エラーコード判定部２６で判定したエラーコードに対応するファームウェアとプリンタドライバの組合せを検出するものである。プリンタ１０は、送受信部２０において、サーバ１４から、エラーコードにそれぞれ対応付けて、プリンタ１０の更新用ファームウェアとＰＣ１２の更新用プリンタドライバとの組み合わせを示すデータを受信する。組合せ検出部２８は、上記受信したデータを参照し、エラーコード判定部２６で判定したエラーコードに基づいて、対応するファームウェアとプリンタドライバとの組合せを検出する。
【００２９】
アップデータ取得部３０は、組合せ検出部２８で検出したファームウェアとプリンタドライバの組合せに基づいて、更新用ファームウェアと更新用プリンタドライバとをサーバ１４からダウンロードするものである。アップデータ取得部３０は、サーバ１４に対して、検出した組合せに対応するファームウェアとプリンタドライバの識別情報をリクエストデータとして送信し、サーバ１４から、リクエストデータに対応する更新用ファームウェアと更新用プリンタドライバとを受信する。
【００３０】
アップデータ格納部３２は、アップデータ取得部３０でサーバ１４からダウンロードした更新用ファームウェアと更新用プリンタドライバとをプリンタ１０の一時メモリに格納するものである。プリンタ１０の一時メモリは、揮発性メモリであっても、不揮発性メモリであっても構わない。一時メモリが揮発性メモリである場合は、ＰＣ１２のプリンタドライバを先に更新した後に、プリンタ１０のファームウェアの更新を行う。一方で、一時メモリが不揮発性メモリである場合には、先にプリンタ１０のファームウェアを更新した後に、ＰＣ１２のプリンタドライバの更新を行っても構わない。その場合に、プリンタ１０は、ファームウェアの更新後の再起動を行うが、その際に不揮発性メモリの中に更新用プリンタドライバが存在するか否かを確認し、存在していれば、ＰＣ１２のプリンタドライバの更新を行う。
【００３１】
更新部３４は、アップデータ格納部３２に格納された更新用ファームウェアを用いて、プリンタ１０のファームウェアを更新するものである。また、更新部３４は、アップデータ格納部３２に格納された更新用プリンタドライバを送受信部２０に転送して、ＰＣ１２に送信する。
【００３２】
図４は、ＰＣ１２の機能ブロック図である。図４に示されるように、ＰＣ１２は、機能的には、制御部４０、障害検知部４２、送受信部４４、更新用ドライバ格納部４６と更新部４８を含んで構成される。
【００３３】
制御部４０は、ＰＣ１２の各部を制御し、処理の順序やタイミングを制御するものである。制御部４０は、ＰＣ１２のＣＰＵとメモリを含んで構成される。制御部４０は、ＰＣ１２を操作するユーザから印刷要求を受けて、プリンタ１０に送信するために印刷データを送受信部４４に転送する。また、送受信部４４から転送される更新用ドライバを更新用ドライバ格納部４６に格納する。
【００３４】
障害検知部４２は、ＰＣ１２における印刷処理において発生した障害を検知するものである。障害検知部４２は、制御部４０における印刷処理において障害が発生した場合に発信されるエラー信号を検知する。そして、障害検知部４２は、エラー信号を検知すると、制御部４０における印刷処理を停止させ、検知した障害に係る情報を送受信部４４に転送する。
【００３５】
送受信部４４は、プリンタ１０とデータの送受信をするためのものである。送受信部４４は、制御部４０から転送された印刷データや、障害検知部４２から転送された障害に係る情報をプリンタ１０に送信する。また、プリンタ１０から更新用ドライバを受信し、制御部４０に転送する。
【００３６】
更新用ドライバ格納部４６は、更新用ドライバをＰＣ１２のメモリに格納するものである。更新用ドライバ格納部４６は、メモリによって構成されることとしてもよいし、その他のハードディスク等の記録装置によって構成されることとしてもよい。
【００３７】
更新部４８は、更新用ドライバ格納部４６に格納された更新用ドライバを用いて、ＰＣ１２のプリンタドライバを更新するものである。本実施形態では、ＰＣ１２のプリンタドライバは、実ドライバと仮想ドライバとから構成されるものである。実ドライバは、ＰＣ１２とプリンタ１０間においてデータを相互に解釈できるように変換する一般的なプリンタドライバの機能と、仮想ドライバからの指示により印刷処理を中断する機能とを有するものである。そして、仮想ドライバは、ＰＣ１２で起動するアプリケーションからの印刷要求を受け付け、受け付けた印刷要求を実ドライバへ転送する機能と、実ドライバの起動・停止処理を行う機能と、実ドライバの更新を行う機能とを有するものである。なお、実ドライバと仮想ドライバとはＰＣ１２を制御するＯＳ上の別プロセスとして起動しており、プリンタドライバに上記の構成を設けることで、仮想ドライバにより実ドライバを更新することが可能となり、ユーザによってプリンタドライバを再起動することを要しない。
【００３８】
図５は、サーバ１４の機能ブロック図である。図５に示されるように、サーバ１４は、機能的には、送受信部５０、制御部５２、アップデータ保持部５４と組合せデータ保持部５６を含んで構成される。
【００３９】
送受信部５０は、インターネットを通じてアクセスしてくる装置とデータの送受信をするためのものである。送受信部５０は、サーバ１４のネットワークインターフェースを含んで構成される。本実施形態では、送受信部５０は、プリンタ１０とデータ通信を行う。送受信部５０からは、エラーコードにそれぞれ対応付けて、プリンタ１０の更新用ファームウェアと、ＰＣ１２の更新用プリンタドライバとの組み合わせを示すデータや、更新用ファームウェア及び更新用プリンタドライバが、プリンタ１０に対して送信される。
【００４０】
制御部５２は、サーバ１４の各部を制御し、サーバ１４における処理の順序やタイミングを制御するものである。制御部５２は、サーバ１４のＣＰＵ及びメモリを含んで構成される。制御部５２は、プリンタ１０からの組合せデータの転送要求に対して、組合せデータ保持部５６から組合せデータを取得して、送受信部５０に転送する。また、制御部５２は、プリンタ１０からの更新用ファームウェアと更新用プリンタドライバの転送要求に対して、アップデータ保持部５４から該当するファームウェアとプリンタドライバを取得して、送受信部５０に転送する。
【００４１】
アップデータ保持部５４は、プリンタ１０の更新用ファームウェアとＰＣ１２の更新用プリンタドライバとを保持するものである。アップデータ保持部５４は、ハードディスク等の記録装置を含んで構成される。アップデータ保持部５４には、アップデートのバージョンのそれぞれに対応したファームウェアとプリンタドライバとが保持される。
【００４２】
組合せデータ保持部５６は、エラーコードにそれぞれ対応付けて、プリンタ１０の更新用ファームウェアと、ＰＣ１２の更新用プリンタドライバとの組み合わせを示すデータを保持するものである。上記データは、例えば、図２に示される内容が記載されたものであり、ファイルとして構成される。なお、組合せデータ保持部５６は、メモリまたはハードディスク等の記憶装置を含んで構成される。
【００４３】
以下、本発明の実施の形態に係る更新システム１におけるファームウェアとプリンタドライバの更新処理の動作の詳細について説明する。
【００４４】
図６は、更新システム１におけるファームウェアとプリンタドライバの更新処理のフロー図である。ＰＣ１２からプリンタ１０に印刷データが送信され、印刷処理が開始される（Ｓ１０１）。この印刷処理中に障害の発生が検知されなかった場合には（Ｓ１０２のＮ）、そのまま印刷処理が実行され、印刷処理の完了と共に処理が終了する。一方で、印刷処理中に障害の発生が検知された場合には（Ｓ１０２のＹ）、プリンタ１０は、検知された障害に対応するエラーコードを判定する（Ｓ１０３）。プリンタ１０は、サーバ１４から組合せデータをダウンロードし（Ｓ１０４）、この組合せデータから、プリンタ１０が判定したエラーコードに対応するファームウェアとプリンタドライバとの組合せを検出する（Ｓ１０５）。ここで、プリンタ１０は、検出した組合せに基づいて、ファームウェアを更新する必要がある場合には（Ｓ１０６のＹ）、更新用のファームウェアをサーバ１４からダウンロードする（Ｓ１０７）。一方で、ファームウェアを更新する必要がない場合には（Ｓ１０６のＮ）、Ｓ１０７の処理を行わずに次の処理に移る。そして、プリンタ１０はダウンロードしたファームウェアをプリンタ１０の一時メモリに格納する。また、プリンタ１０は、検出した組合せに基づいて、プリンタドライバを更新する必要がある場合には（Ｓ１０８のＹ）、更新用のプリンタドライバをサーバ１４からダウンロードする（Ｓ１０９）。そして、プリンタ１０は、ダウンロードしたプリンタドライバをＰＣ１２に送信する（Ｓ１１０）。プリンタドライバを受信したＰＣ１２は、受信したプリンタドライバを用いてプリンタドライバの更新を行う（Ｓ１１１）。また、プリンタ１０は、プリンタドライバを更新する必要がない場合には（Ｓ１０８のＮ）、Ｓ１０９〜Ｓ１１１の処理を行わず次の処理に移る。そして、プリンタ１０においても一時メモリに格納したファームウェアを用いて、ファームウェアの更新を行う（Ｓ１１２）。以上のファームウェアとプリンタドライバとの更新を行った後に、再び印刷処理を実行する。こうすることで、印刷処理において発生した障害を解消して、印刷処理を実行することができる。
【００４５】
次に、本発明の第２の実施形態について説明する。第２の実施形態では、プリンタ１０の代わりにＰＣ１２が更新システムで発生した障害のエラーコードを判定し、そのエラーコードに基づいてサーバ１４から更新用のファームウェアとプリンタドライバとを取得する。
【００４６】
図７は、第２の実施形態に係るプリンタ１０の機能ブロック図である。図７に示されるように、プリンタ１０は、機能的には、送受信部２０、印刷処理部２２、障害検知部２４、更新用ファームウェア格納部３３と更新部３４を含んで構成される。図７において、図３に記載された機能ブロックと同じ番号が付されたブロックは、第１の実施形態と同様の機能を有するものであるため、以下では説明を省略する。
【００４７】
更新用ファームウェア格納部３３は、更新用ファームウェアをプリンタ１０の一時メモリに格納するものである。第２の実施形態では、プリンタ１０は更新用ファームウェアをＰＣ１２から受信して格納する。
【００４８】
図８は、第２の実施形態に係るＰＣ１２の機能ブロック図である。図８に示されるように、ＰＣ１２は、機能的には、エラーコード判定部２６、組合せ検出部２８、アップデータ取得部３０、アップデータ格納部３２、制御部４０、障害検知部４２、送受信部４４と更新部４８を含んで構成される。図８において、図３および図４に記載された機能ブロックと同じ番号が付されたブロックは、第１の実施形態と同様の機能を有する。なお、エラーコード判定部２６、組合せ検出部２８、アップデータ取得部３０、アップデータ格納部３２は、第１の実施形態では、プリンタ１０が有する機能であったが、本実施形態では、ＰＣ１２が有する機能である。上記の機能ブロックの処理の内容は第１の実施形態の場合と同様であるため、以下では説明を省略する。
【００４９】
そして、本発明の第３の実施形態について説明する。第３の実施形態では、プリンタ１０が判定したエラーコードをサーバ１４に送信し、サーバ１４側で受信したエラーコードに対応した更新用ファームウェアと更新用プリンタドライバとを検出し、検出した更新用ファームウェアと更新用プリンタドライバとをプリンタ１０に転送する。
【００５０】
図９は、本発明の第３の実施形態に係るプリンタ１０の機能ブロック図である。図９で示されるように、第３の実施形態に係るプリンタ１０は、機能的には、送受信部２０、印刷処理部２２、障害検知部２４、エラーコード判定部２６、アップデータ取得部３０、アップデータ格納部３２と更新部３４を含んで構成される。図９において、図３に記載された機能ブロックと同じ番号が付されたブロックは、第１の実施形態と同様の機能を有するものであるため、以下では説明を省略する。
【００５１】
第３の実施形態に係るプリンタ１０においては、エラーコード判定部２６は、判定したエラーコードを送受信部２０に転送して、サーバ１４に送信する。
【００５２】
サーバ１４では、送受信部５０においてプリンタ１０から受信したエラーコードを制御部５２に転送する。制御部５２は、組合せデータ保持部５６にアクセスして組合せデータを取得し、組合せデータから、プリンタ１０から受信したエラーコードに対応し、更新用ファームウェアと更新用プリンタドライバとの組合せを検出する。そして、検出した更新用ファームウェアと更新用プリンタドライバとの組合せに基づいて、アップデータ保持部５４から更新用ファームウェアと更新用プリンタドライバとを取得する。そして、取得した更新用ファームウェアと更新用プリンタドライバとを送受信部５０に転送して、プリンタ１０に送信する。
【００５３】
以上説明した本発明の実施の形態に係る更新システム１によれば、プリンタ１０のファームウェアとパーソナルＰＣ１２のプリンタドライバとを発生した障害に基づいて適切な組み合わせで更新することができる。
【００５４】
なお、本発明は上記実施形態に限定されるものではない。
【００５５】
例えば、上記第３の実施形態では、プリンタ１０がエラーコードをサーバ１４に送信し、更新用ファームウェアと更新用プリンタドライバとをサーバ１４から取得することとしているが、ＰＣ１２が上記の処理を行うこととしてもよい。
【図面の簡単な説明】
【００５６】
【図１】本発明に係る更新システムのシステム構成図である。
【図２】組合せデータに格納されている情報の一例を示す図である。
【図３】プリンタの機能ブロック図である。
【図４】ＰＣの機能ブロック図である。
【図５】サーバの機能ブロック図である。
【図６】更新システムにおけるファームウェアとプリンタドライバの更新処理のフロー図である。
【図７】本発明の第２の実施形態に係るプリンタの機能ブロック図である。
【図８】本発明の第２の実施形態に係るＰＣの機能ブロック図である。
【図９】本発明の第３の実施形態に係るプリンタの機能ブロック図である。
【符号の説明】
【００５７】
１  更新システム、１０  プリンタ、１２  ＰＣ、１４  サーバ、１６  内部ネットワーク、１８  外部ネットワーク、２０  送受信部、２２  印刷処理部、２４  障害検知部、２６  エラーコード判定部、２８  組合せ検出部、３０  アップデータ取得部、３２  アップデータ格納部、３３  更新用ファームウェア格納部、３４  更新部、４０  制御部、４２  障害検知部、４４  送受信部、４６  更新用ドライバ格納部、４８  更新部、５０  送受信部、５２  制御部、５４  アップデータ保持部、５６  組合せデータ保持部。
【図１】
2007058453.tif 000003
【図２】
2007058453.tif 000004
【図３】
2007058453.tif 000005
【図４】
2007058453.tif 000006
【図５】
2007058453.tif 000007
【図６】
2007058453.tif 000008
【図７】
2007058453.tif 000009
【図８】
2007058453.tif 000010
【図９】
2007058453.tif 000011