(57)【要約】【課題】エラーログのメモリへの保存をより適切に制御する。【解決手段】制御装置であって、前記制御装置においてエラーが発生した場合、前記制御装置において発生したエラーに関するエラー情報を取得する取得手段と、前記取得された前記エラー情報を記憶部に記憶させる制御手段と、を有し、前記取得された前記エラー情報の種類に基づいて、前記取得された前記エラー情報を記憶部に記憶させるか否かが制御されることを特徴とする制御装置を提供することで課題を解決する。【選択図】図４
2020183074.tif 000002
【特許請求の範囲】
【請求項１】
制御装置であって、
前記制御装置においてエラーが発生した場合、前記制御装置において発生したエラーに関するエラー情報を取得する取得手段と、
前記取得された前記エラー情報を記憶部に記憶させる制御手段と、を有し、
前記取得された前記エラー情報の種類に基づいて、前記取得された前記エラー情報を記憶部に記憶させるか否かが制御されることを特徴とする制御装置。
【請求項２】
前記取得された前記エラー情報の種類に基づいて、前記取得された前記エラー情報の重要度を特定する特定手段と、をさらに有し、
前記特定された重要度に基づいて、前記取得された前記エラー情報を前記記憶部に記憶させるか否かが制御されることを特徴とする請求項１に記載の制御装置。
【請求項３】
前記記憶部に既に記憶されている少なくとも１つの他のエラー情報の重要度が、前記特定された重要度よりも低い場合、前記少なくとも１つの他のエラー情報が前記記憶部から消去され、前記取得されたエラー情報が前記記憶部に記憶されるように制御され、
前記記憶部に既に記憶されている全ての他のエラー情報の重要度が、前記特定された重要度よりも高い場合、前記取得されたエラー情報が前記記憶部に記憶されないように制御されることを特徴とする請求項２に記載の制御装置。
【請求項４】
前記少なくとも１つの他のエラー情報の重要度が、前記特定された重要度よりも低い場合、前記少なくとも１つの他のエラー情報のうち、前記記憶部が記憶したタイミングが古いものを優先的に消去することを特徴とする請求項３に記載の制御装置。
【請求項５】
前記少なくとも１つの他のエラー情報の重要度が、前記特定された重要度より低い場合、前記少なくとも１つの他のエラー情報のうち、前記重要度が低いものを優先的に消去することを特徴とする請求項３に記載の制御装置。
【請求項６】
前記特定された重要度が、所定の閾値に満たない場合、前記取得されたエラー情報が前記記憶部に記憶されないように制御され、
前記特定された重要度が、前記所定の閾値以上である場合、前記取得されたエラー情報が前記記憶部に記憶されるように制御されることを特徴とする請求項２に記載の制御装置。
【請求項７】
前記制御装置が記憶しているテーブルに設定されている重要度によって、前記取得された前記エラー情報の重要度が特定されることを特徴とする請求項１から６のいずれか１項に記載の制御装置。
【請求項８】
前記取得された前記エラー情報に対応し、且つ前記テーブルに設定されている重要度が、前記エラー情報が取得されるごとに変更されることを特徴とする請求項７に記載の制御装置。
【請求項９】
前記取得された前記エラー情報に関連するエラー情報に対応し、且つ前記テーブルに設定されている重要度が、前記エラー情報が取得されるごとに変更されることを特徴とする請求項７又は８に記載の制御装置。
【請求項１０】
前記取得された前記エラー情報に関連するエラー情報に対応するエラーは、前記取得された前記エラー情報に対応するエラーに連続して発生するエラーであることを特徴とする請求項９に記載の制御装置。
【請求項１１】
前記記憶部の空き容量が、前記取得された前記エラー情報を記憶するための容量に満たない場合に、前記取得された前記エラー情報を記憶部に記憶させるか否かが制御されることを特徴とする請求項１から１０のいずれか１項に記載の制御装置。
【請求項１２】
前記エラー情報が取得されるごとに、前記取得された前記エラー情報を記憶部に記憶させるか否かが制御されることを特徴とする請求項１から１０のいずれか１項に記載の制御装置。
【請求項１３】
前記記憶部に、前記取得された前記エラー情報の種類と同じ種類の前記エラー情報が既に記憶されている場合、前記取得された前記エラー情報と前記既に記憶されているエラー情報とが１つのエラー情報に集約されることを特徴とする請求項１から１２のいずれか１項に記載の制御装置。
【請求項１４】
前記取得された前記エラー情報が特定の種類であり、且つ前記記憶部に、前記取得された前記エラー情報の種類と同じ種類の前記エラー情報が既に記憶されている場合、前記取得された前記エラー情報と前記既に記憶されているエラー情報とが１つのエラー情報に集約され、
前記取得された前記エラー情報が前記特定の種類でない種類であり、且つ前記記憶部に、前記取得された前記エラー情報の種類と同じ種類の前記エラー情報が既に記憶されている場合、前記取得された前記エラー情報と前記既に記憶されているエラー情報とが１つのエラー情報に集約されないことを特徴とする請求項１３に記載の制御装置。
【請求項１５】
前記取得された前記エラー情報の種類が、前記記憶部に直近で記憶された前記エラー情報の種類と同じである場合、前記取得された前記エラー情報を前記記憶部に記憶させないことを特徴とする請求項１から１４のいずれか１項に記載の制御装置。
【請求項１６】
記録剤を記録媒体に付加することで印刷を実行する印刷手段をさらに有することを特徴とする請求項１から１５のいずれか１項に記載の制御装置。
【請求項１７】
前記制御装置において発生するエラーには、前記記録剤を付加するための記録ヘッドに関するエラー、前記制御装置が保持する記録剤に関するエラー、前記制御装置が保持する記録媒体に関するエラーのうち少なくとも１つを含むことを特徴とする請求項１６に記載の制御装置。
【請求項１８】
制御装置の制御方法であって、
前記制御装置においてエラーが発生した場合、前記制御装置において発生したエラーに関するエラー情報を取得する取得ステップと、
前記取得された前記エラー情報を記憶部に記憶させる制御ステップと、を有し、
前記取得された前記エラー情報の種類に基づいて、前記取得された前記エラー情報を記憶部に記憶させるか否かが制御されることを特徴とする制御方法。
【請求項１９】
請求項１から１７のいずれか１項に記載の制御装置の各手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置、制御方法およびプログラムに関する。
【背景技術】
【０００２】
特許文献１には、プリンタにエラーが発生したとき、当該プリンタのアフターサービスを実施しているサイトに接続し、エラーを解決するために必要な情報を、当該プリンタと接続されたコンピュータに表示させる方法が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−１２３３８３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、プリンタ等の制御装置においてエラーが発生した場合、発生したエラーに関する情報（エラーログ）がメモリに保存される。そのように、エラーログをメモリに保存する形態が普及するにつれ、エラーログのメモリへの保存をより適切に制御することが要望されている。
【０００５】
そこで、本発明の目的は、エラーログのメモリへの保存をより適切に制御することにある。
【課題を解決するための手段】
【０００６】
本発明の制御装置は、
前記制御装置においてエラーが発生した場合、前記制御装置において発生したエラーに関するエラー情報を取得する取得手段と、
前記取得された前記エラー情報を記憶部に記憶させる制御手段と、を有し、
前記取得された前記エラー情報の種類に基づいて、前記取得された前記エラー情報を記憶部に記憶させるか否かが制御されることを特徴とする。
【０００７】
本発明の制御装置の制御方法は、
前記制御装置においてエラーが発生した場合、前記制御装置において発生したエラーに関するエラー情報を取得する取得ステップと、
前記取得された前記エラー情報を記憶部に記憶させる制御ステップと、を有し、
前記取得された前記エラー情報の種類に基づいて、前記取得された前記エラー情報を記憶部に記憶させるか否かが制御されることを特徴とする。
【発明の効果】
【０００８】
本発明においては、エラーログのメモリへの保存をより適切に制御することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の印刷装置の外観の一例を示す図である。
【図２】電気的接触を媒介する基板とヘッドコネクタとの外観を示す図である。
【図３】メインコントロール基板の一構成例を示すブロック図である。
【図４】印刷装置の実施の一形態における内部構成の一例を示す図である。
【図５】エラーログの蓄積方法を説明するためのフローチャートである。
【図６】発生したエラーから発生する連鎖的エラーを時系列的に示す図である。
【図７】連鎖的に発生するエラー情報をより具体的に示す図である。
【図８】エラーの重要度とその関係性を示したテーブル情報の一例を示す図である。
【図９】エラーログスタック情報とその構造と内部情報との一例を示す図である。
【図１０】エラーコードをスタックする手順を示すフローチャートである。
【図１１】エラースタック使用状況の一例を示す図である。
【図１２】従来方式を用いたエラースタックの様子の一例を示す図である。
【図１３】本発明を用いたエラースタックの様子の一例を示す図である。
【発明を実施するための形態】
【００１０】
以下に図面を参照して、本発明の好適な実施形態を例示的に説明する。ただし、本発明については、その趣旨を逸脱しない範囲で、当業者の通常の知識に基づいて、以下に記載する実施形態に対して適宜変更、改良が加えられたものについても本発明の範囲に入ることが理解されるべきである。
（第１の実施形態）
【００１１】
本実施形態では、エラーログ（エラー情報）を記録する制御装置について説明する。制御装置として、本実施形態ではインクジェット方式による印刷を行う印刷装置を例示しているが、これに限定されず、エラーログを記録する装置であれば、種々の装置に適用可能である。例えば、印刷装置であれば、インクジェット方式以外の方式（電子写真方式、熱昇華方式等）による印刷を行う装置にも適用可能である。また、印刷装置のみならず複写機やファクシミリ装置、携帯端末、スマートホン、パーソナルコンピュータ、タブレット端末、ＰＤＡ、デジタルカメラ、音楽再生デバイス、テレビ、スマートスピーカ等にも適用可能である。
【００１２】
図１は、本発明の印刷装置の外観の一例を示す図である。図１に示した印刷装置１００は、印刷装置１００の印字スペース内部で、記録ヘッドが搭載される移動ユニット（以下、キャリッジユニットと称する）を有する。記録ヘッドは、このキャリッジユニットに装着される。印刷装置は、記録剤であるインクを記録ヘッドによって紙等の記録媒体に付加することで、印刷を実行する。
【００１３】
図２は、図１に示したキャリッジユニット８２が具備する、記録ヘッド側の電気的接触を媒介する基板８５と、記録ヘッド側で電気的接触を媒介するヘッドコネクタ８３との外観の一例を示す図である。ヘッドコネクタ８３は、印字装置側のキャリッジに備えられ、電気信号を媒介するためのコネクタである。ヘッドコネクタ８３は、物理的な接触により電気信号を媒介させる複数のコンタクトピン８４を有する。基板８５は、記録ヘッド側に備えられ、電気信号を媒介するための基板である。基板８５は、複数のパッド８６を有する。パッド８６とコンタクトピン８４とが物理的に接触して電気信号を媒介する。
【００１４】
図３は、本発明の印刷装置に具備されたメインコントロール基板の一構成例を示すブロック図である。メインコントロール基板には図３に示すように、印刷装置の主要制御を担うコントロールブロック９１が具備されている。また、コントロールブロック９１内に、コントロールブロック９１全体を制御するＣＰＵ９２と、ＲＡＭ９３と、エラーログスタックが設けられている不揮発性メモリ９４と、ＲＯＭ９５とが具備されている。ＣＰＵ９２と、ＲＡＭ９３、ＲＯＭ９５等によって、印刷装置のコンピュータが形成される。ＲＯＭ９５には、エラーログの優先順位テーブル９６と、過去のエラー解析結果をもとに作成された重要エラーに伴う連鎖エラー情報テーブル９７とが設けられている。エラーログは印刷装置内に設けられたセンサから情報経路９８を介して入力される。なお、影響度の大きいエラーに関しては、通常のエラーよりも重要度を上げて、優先順位テーブル９６に保存されている。そして、本印刷装置でエラーが発生した場合、重要エラーに伴う連鎖エラー情報テーブル９７に基づいて、優先順位テーブル９６の優先度を見直し、以後に発生する連鎖エラーを記憶（保存）できるようにしている。
【００１５】
図４は、本発明の印刷装置の実施の一形態における内部構成の一例を示す図である。本形態における印刷装置１００は図４に示すように、テーブル１１０と、記憶部１２０と、制御部１３０とを有する。なお、図４には、本発明の印刷装置が具備する構成要素のうち、本形態に関わる主要な構成要素のみを示す。
テーブル１１０は、エラーの種類と、エラーの重要度とをあらかじめ対応付けて記憶する。例えば、テーブル１１０は、後述する図８に示す重要エラーに伴う連鎖エラー情報テーブル９７に記憶されている重要度をエラーの種類と対応付けて記憶する。
記憶部１２０は、発生したエラーのログ情報であるエラーログをエラースタックとして記憶（保存）する。
制御部１３０は、発生したエラーの種類に基づいて重要度をテーブル１１０から読み出す。制御部１３０は、発生したエラーのエラーログを、テーブル１１０から読み出した重要度を含めて記憶部１２０に記憶させる。制御部１３０は、これらの情報を、後述する図９に示すエラーログスタック情報のような形式で記憶部１２０に記憶させる。
エラーログを蓄積するメモリ（記憶部１２０）には、当然、容量の上限がある。そのため一般的に、エラーログの記憶部１２０への蓄積方式としてファーストインファースト方式が用いられている。このようなエラーログスタックにおいては、古いエラーログが、その後に大量に発生したエラーログにより、スタックから押し出されて消去されてしまう。そして、印刷装置においては、種々の種類のエラーが発生しうる。そして、エラーの種類に応じて、エラーの重要度が異なることがある。上記のファーストインファースト方式では、重要度の高いエラーが消去されてしまうという課題がある。そのため本実施形態では、発生したエラーの種類に応じて、エラーログを記憶するか否かを制御する形態について説明する。
制御部１３０は、記憶部１２０のエラーログ用の領域の空き容量が、発生したエラーのエラーログを記憶させるために必要な容量に満たない場合、記憶部１２０に記憶されているエラーログのうち、発生したエラーの重要度よりも低い重要度のエラーログを消去する。そして、制御部１３０は、発生したエラーのエラーログを記憶部１２０の消去した領域に記憶させる。このとき、制御部１３０は、発生したエラーのエラーログに含まれる重要度よりも低い重要度のエラーログのうち、記憶部１２０が記憶したタイミングが古いものから順に（優先的に）消去するものであっても良い。または、制御部１３０は、発生したエラーのエラーログに含まれる重要度よりも低い重要度のログ情報のうち、重要度が低いものから順に（優先的に）消去するものであっても良い。また、制御部１３０は、記憶部１２０に記憶されているエラーログのうち、エラーログのエラーの種類と同じ種類のエラーログが複数記憶されている場合、その複数のエラーログを１つのログ情報に集約する。このとき制御部１３０は、記憶部１２０に記憶されているエラーログのうち、重要度が所定の値よりも低いエラーログは、そのエラーログのエラーの種類と同じ種類のエラーログが複数記憶されている場合、その複数のエラーログを１つのログ情報に集約しても良い。また、制御部１３０は、発生したエラーの種類が、記憶部１２０に直近で記憶させたエラーログのエラーの種類と同じである場合、発生したエラーのエラーログを記憶部１２０に記憶させない（書き込まない）ものであっても良い。また、制御部１３０は、印刷装置１００の動作環境に基づいて、テーブル１１０が記憶している重要度を変更するものであっても良い。また、制御部１３０は、エラーの発生順序に基づいて、エラーの互いの連鎖関係を示す連鎖情報を記憶部１２０に記憶させる。記憶部１２０が記憶する連鎖情報は、後述する図６に示す連鎖情報や、後述する図８に示す重要エラーに伴う連鎖エラー情報テーブル９７である。
【００１６】
上述したように本実施形態では、エラーの重要度に応じて、エラーを記憶するか否かを制御する。その制御において参照される重要度は、固定であっても、可変であっても良い。以下では、重要度が可変である形態について説明する。具体的には本実施形態では、エラーが発生した場合、当該発生したエラーの重要度を上げる。またさらに、当該発生したエラーに関連するエラー（当該発生したエラーに続いて発生する可能性が高いエラー）の重要度を上げる。図５は、初期に発生したエラー事象に応じてエラーの重要度を変更させて、エラーログスタックに蓄積すべきか否か判定する処理を説明するためのフローチャートである。ユーザが印刷装置の設置作業を実施する（Ｓ１）。その後、印刷装置に電源が投入され（Ｓ２）、記録ヘッドがキャリッジに装着されると（Ｓ３）、記録ヘッドがキャリッジに正常に装着されたかどうかを確認するコンタクトチェック処理が行われる（Ｓ４）。コンタクトエラーが発生している場合は、コンタクトチェック処理により、コンタクトエラーが発生していることが検知され、コンタクトエラーが発生していることを示す情報が取得される。このＳ４から以下に説明するＳ７までの処理は、印刷装置に搭載されたＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）が行う処理である。なお、Ｓ４以降の処理が実行されるタイミングは、印刷装置の設置作業が実施されたタイミングに限定されない。Ｓ４以降の処理は、コンタクトチェック処理が行われるべき種々のタイミングで実行されて良い。なおコンタクトチェック処理が行われるべきタイミングとは例えば、記録ヘッドの交換が行われたタイミングや、印刷装置の筐体に設置されている、記録ヘッドの交換用のカバーが開閉されたタイミング等である。
コンタクトエラーの発生により記録ヘッドがキャリッジに正常に装着されていないと判定された場合、コンタクトチェック処理がＮＧとなる。コンタクトチェック処理がＮＧとなった場合、つまり、記録ヘッドがキャリッジに正常に装着されていないと判定された場合、コンタクトエラーの重要度を現在設定されている重要度よりも１つのランク分上げて、当該コンタクトエラーをログに残す（Ｓ５）。続いて、コンタクトエラーに起因する関連エラーの重要度を上げる処理が行われる（Ｓ６）。このとき、ほかのエラーの重要度を下げる処理が行われる。すると、コンタクトエラー発生に関連して重要度を上げる重要度アップリストが作成される（Ｓ７）。その後、記録ヘッドとキャリッジとの接触不良判定を改善するために、記録ヘッドのキャリッジへの脱着が繰り返されると（Ｓ８）、そのコンタクトエラー発生回数があらかじめ設定された回数（上限値）に到達したかどうかが判定される（Ｓ９）。このＳ９から以下に説明するＳ１６までの処理は、印刷装置に搭載されたＣＰＵが行う処理である。Ｓ９にて、コンタクトエラー発生回数があらかじめ設定された回数（上限値）に到達したと判定した場合、コンタクトエラーが発生したことが断定される（Ｓ１０）。すると、印刷装置を印刷を実行しない状態とするためのエラー処理が行われる（Ｓ１１）。
一方、Ｓ４にて、記録ヘッドがキャリッジに正常に装着されていると判定された場合は、装着された記録ヘッドの識別情報であるヘッドＩＤ（ＩＤｅｎｔｉｆｉｃａｔｉｏｎ）の読み出し処理が行われる（Ｓ１２）。記録ヘッドからのヘッドＩＤの読み出しが正しく行われた場合、所定の処理が行われる（Ｓ１３）。一方、記録ヘッドからのヘッドＩＤの読み出しが正しく行われなかった場合は、ヘッドＩＤの読み出しが正しく行われなかったことを示すヘッドＩＤ識別エラーがエラーログに記録される（Ｓ１４）。続いて、過去にコンタクトエラーが発生したかどうかが判定される（Ｓ１５）。過去にコンタクトエラーが発生したと判定された場合、エラーログスタックに記憶されているコンタクトエラーの発生回数をカウントアップする処理が行われる（Ｓ１６）。そして、印刷装置を印刷を実行しない状態とするためのエラー処理が行われる（Ｓ１７）。一方、Ｓ１５にて、過去にコンタクトエラーが発生していないと判定された場合は、Ｓ１６の処理は行なわれずにＳ１７の処理が行なわれる。
【００１７】
図５には、印刷装置の設置時の設置手順フローの一部を示したもので、特に記録ヘッドのドコンタクトエラーを例に挙げている。印刷装置の設置を行うユーザは、まず、印刷装置の電源を投入して、印刷装置の初期動作を完了させた後、Ｓ３において、新品の記録ヘッドを印刷装置のキャリッジホルダーに装着する。この時、記録ヘッドがキャリッジホルダーに正常に装着されたか確認するコンタクトチェック処理がＳ４にて行われる。ここで、コンタクトエラーが発生した場合、これ以後、記録ヘッドの脱着で、コンタクトエラーが発生しなくなったとしても、今後に再発する可能性が非常に高いということを暗示している結果となる。したがって、これ以後、コンタクトチェックをフォローするために、コンタクトエラーが発生したログが今後発生する他のエラーによりも先にエラーログスタックから押し出されないように、コンタクトチェック関連のエラーの重要度を上げる。具体的には、Ｓ７にて作成された重要度アップリストに示すように、コンタクトチェック関連のエラーについては、今回のコンタクトエラーの発生により、今後注目すべきエラーとして、重要度を上げる。コンタクトチェック関連のエラーは、コンタクトエラーが発生しない状況下では、重要度は比較的高くないエラー項目ではある。これにより、重要でないエラーの発生によりログ上で上書き抹消される確率が低減される。
【００１８】
図６は、印刷装置の動作への影響度が高い主因エラーに関して、以後に発生する連鎖的エラーを、２次エラー、３次エラー、４次エラーと時系列的に示す図である。エラー主因項目名（１次エラー）２１の項目と、２次的に発生する２次エラー２２の項目と、３次的に発生する３次エラー２３の項目と、４次的に発生する４次エラー２４の項目とが時系列に並んでいる。１次エラー２１の１つとして、コンタクトエラー２５が挙げられる。コンタクトエラー２５の発生により記録ヘッドとの通信ラインが不通になることにより生じるヘッド異常昇温エラー２６と、記録ヘッドとの通信不良によるインク吐出制御エラー２７と、記録ヘッド内の不揮発性メモリ内の情報収集の失敗を示すヘッド情報エラー２８とが２次エラー２２として挙げられる。ここで、インク吐出制御エラー２７は、インクの吐出制御のエラーに限らず、印刷に用いる液体の吐出制御エラーを示す。以下の説明においても同様である。
また、他の１次エラー２１としてヘッド電源リークエラー２９が挙げられる。このヘッド電源リークエラー２９は、記録ヘッド内で複数の電源がリークする現象であり、広範囲に渡って致命的ダメージを与えるおそれがある。ヘッド電源リークエラー２９の発生により、３．３Ｖの低電圧電源ラインに、記録ヘッドがインクを吐出するために用いる３２Ｖの高電圧が流れ込んで電圧上昇した場合に発する低電圧側の電圧上昇エラー３０が２次エラー２２として挙げられる。また、ヘッド電源リークエラー２９の発生により、電源リークで高電圧側の電位が低下したことを検知して発せられる高電圧側の電圧低下エラー３１が２次エラー２２として挙げられる。また、インクを吐出させるヒータ用電源の電源リークによる温度低下で吐出できなくなったことを発するインク吐出不能エラー３２が３次エラー２３として挙げられる。また、３．３Ｖの低電圧ＩＣエリアに、３２Ｖの高電圧が流入して印刷装置のシステム上のパラメータを格納する不揮発性メモリＩＣが機能不全に陥った時に発する不揮発性メモリ読み出しエラー３３が３次エラー２３として挙げられる。また、３．３Ｖの低電圧電源ラインに接続された記録ヘッド内の不揮発性メモリの機能不全として発生するヘッドＩＤ読み出しエラー３４が３次エラー２３として挙げられる。これらの３次エラーは、高電圧側の電圧低下エラー３１が発生することにより発生する。また、インク吐出不能エラー３２が発生すると、連鎖的に４次エラー２４として順次発生する、結果として印字用紙に印刷できない印字不能エラー３５が挙げられる。
また、他の１次エラー２１として用紙検知センサエラー３６が挙げられる。この用紙検知センサエラー３６は、印字用紙の種別、状態、大きさの検知ができなくなるエラーである。用紙検知センサエラー３６の発生に起因して発生する、用紙を検出できないエラーである用紙検出エラー３７が２次エラー２２として挙げられる。また、用紙検知センサエラー３６の発生に起因して発生する、カバーの開閉を検出できなくなるカバー開閉検出エラー３８が２次エラー２２として挙げられる。また、用紙検知センサエラー３６の発生に起因して発生する、用紙に印刷できないエラーであるインク吐出エラー３９が２次エラー２２として挙げられる。また、用紙検知センサエラー３６の発生に起因して発生する、用紙の位置関係が確認できないエラーである紙送りエラー４０が２次エラー２２として挙げられる。
【００１９】
図６には、どのようなエラーを発端として、どのような連鎖でエラーの影響が広がっていくかをまとめて示している。図６において、影響度が大きなエラーの発端となる主因（１次エラー２１）で発するエラーは、それ以後の電源切断および投入でも解消されずに、１次エラー２１を起因とした、連鎖的エラーが次々と発生していく様子がわかる。しかしながら、これまでは、この連鎖的に発生した２次エラー２２、３次エラー２３および４次エラー２４の本来の根本原因で発せられたものでないエラーの記録が、エラースタックを埋め尽くしてしまう。すると、本来知るべきエラーの主因となるエラーの記録がエラースタックから吐き出されてしまい、原因解明を滞らせてしまう。
【００２０】
図７は、図６に示した連鎖的に発生するエラー情報を、より具体的にテーブル情報として示す図である。図７には、特に最も重要である１次エラー情報として、「コンタクトエラー」、「ヘッド電源リーク」および「用紙検知センサエラー」が設定された優先順位テーブル９６を示す。その後、各1次エラー２１が発生した後、連鎖的に発生するエラー情報が、２次エラー２２、３次エラー２３、４次エラー２４として優先順位テーブル９６にあらかじめ設定される。このテーブル情報に基づいて、後述する各エラーの重要度を示すテーブルと密接に関連して、連鎖的に発生する各エラー情報の優先順位を決定することが可能となる。
【００２１】
図８は、印刷装置で発生するエラー情報についてエラーの重要度をあらかじめ決定し、その関係性を示した初期のテーブル情報の一例を示す図である。図８に示した重要エラーに伴う連鎖エラー情報テーブル９７のテーブル情報は、エラー情報による重要度の基準となり、エラー発生時において、まずこの重要度の比較により優先順位を決定することから実行される。例えば、本発明においては、エラー情報として重要度が「高」に設定された「コンタクトエラー」は、重要度が「中」に設定された「キャリッジ移動エラー」に対して、必ず主因エラーとして上位に設定されることを示している。また、この「キャリッジ移動エラー」は、重要度が「低」に設定された「紙ジャムエラー」に対して、必ず主因エラーとして上位に設定されることを示している。なお、重要度が「高」に設定されるエラー情報の数は、スタック情報として記憶される容量に対して必ず少ない数が設定される（この場合はエラー数を５とした）。これにより、印刷装置で発生した重要度が「高」に設定されたエラー情報のみで、エラーログスタック情報の記憶領域に空きがなくなってしまうことがないように設定される。また、このテーブル情報におけるエラーの重要度を、図５で示したフローチャートを用いて説明した処理にしたがい、上下させて再度テーブル情報を更新していくことが可能である。
【００２２】
図９は、本発明における記憶領域に保存されるエラーログスタック情報とその構造と内部情報との一例を示す図である。図９（ａ）には、記憶領域に保存されたエラーログスタック情報の一例を示し、その保存容量として１０段分の情報をスタックすることが可能な場合を示す。このとき、後述する重要度に影響しない、新たに発生したエラー情報はスタック位置の上位から順番に保存され、保存されたタイミングが古い下位のエラー情報から破棄（消去）される。図９（ｂ）には、保存される各エラー情報の構造と内部情報との一例を示す。各エラーログスタックにおいてエラーコード５１内に埋め込まれた重要度フラグ５２と、各エラーコード情報と、その発生したエラーの回数をカウントするエラー発生回数５４とから構成される。重要度フラグ５２は、各重要度が設定されたテーブル５３の内容に基づいて設定されるフラグである。コスト上等の制約で、限りなく削減されたエラーログスタックを有効利用するために、同一エラーの発生した場合も、その発生回数情報をエラー発生回数５４として記憶する構成となる。エラー発生回数５４は、３ビットまたは４ビットのインクリメントする値５５で表される。なお、図６〜図８のようにして印刷装置で管理されるエラーは、上述したエラーに限定されず、印刷装置において発生しうる他の種類のエラーが印刷装置で管理されても良い。例えば、印刷装置が保持するインクがなくなったエラーであるインクなしエラー等が、印刷装置で管理されても良い。
【００２３】
図１０は、エラーコードをスタックする手順の一例を説明するためのフローチャートである。印刷装置で何らかのエラーが発生すると、発生したエラーを示す情報が取得され、エラーログエントリーフローが開始される（Ｓ１０１）。まず、発生したエラー（正確には、発生したエラーに対応するエラー情報）と同一のエラーがスタック内に存在するかどうかが判定される（Ｓ１０２）。スタック内に同一エラーが存在すると判定された場合、当該エラーを示すエラーコードと対応付けられたカウンタの値が更新される（Ｓ１０３）。具体的には、発生したエラーと、発生したエラーと同一のエラーであるスタック内のエラーとを集約する。これにより例えば、１つ分のエラーを新たに記憶するための空き容量がスタックにない場合にも、発生したエラーと同一のエラーがスタックに存在する場合は、当該発生したエラーをスタックに入れることができる。一方、Ｓ１０２にて、スタック内に同一エラーが存在しないと判定された場合は、スタックに当該エラーログを記憶しているための空き領域があるかどうかが判定される（Ｓ１０４）。スタックに空き領域があると判定された場合、当該エラーを示す新たなエラーコードがスタックの空き領域に書き込まれる（Ｓ１０５）。
一方、Ｓ１０４にて、スタックに空き領域がないと判定された場合は、図８に示した連鎖エラー情報テーブル９７または図９に示したエラーコード５１の重要度フラグ５２に基づいて、発生したエラーの重要度が「高」であるかどうかが判定される（Ｓ１０６）。発生したエラーの重要度が「高」であると判定された場合、重要度が「中」または「低」であるエラーがスタックされている部分を、ファーストインファーストアウトにてスタックする（Ｓ１０７）。つまり、重要度が「中」または「低」であるエラーのうち、古いもの（早くにスタックされたもの）から削除し、発生したエラーログをスタックできる領域を空き領域として確保する。また、発生したエラーの重要度が「高」ではないと判定された場合、図８に示した連鎖エラー情報テーブル９７または図９に示したエラーコード５１の重要度フラグ５２に基づいて、発生したエラーの重要度が「中」であるかどうかが判定される（Ｓ１０８）。発生したエラーの重要度が「中」であると判定された場合、重要度が「低」であるエラーがスタックされている部分を、ファーストインファーストアウトにてスタックする（Ｓ１０９）。つまり、重要度が「低」であるエラーのうち、古いもの（早くにスタックされたもの）から削除し、発生したエラーログをスタックできる領域を空き領域として確保する。一方、Ｓ１０８にて、発生したエラーの重要度が「中」ではないと判定された場合は、影響度の少ないエラーとしてこのエラーログをスタックせずに破棄し（Ｓ１１０）、このフローを終了する。
【００２４】
図１１は、エラースタック使用状況の一例を示す図である。図１１に示した印刷装置内のメモリに割り当てられたエラーログスタック６１は、１０段のスタックが設けられている。このエラーログスタック６１は、すでに発生したエラーのエラーログが書き込まれ、空き領域が無い状態になっている。エラーログスタック６１には、直前に発生した３回の紙詰まりエラー６４、ヘッド昇温警告エラー６５や、コンタクトチェックエラー６６がすでに蓄積されている状態で、連鎖的に新たに紙詰まりエラー６２が発生した場合を示している。図１１に示した状態では、エラーログスタック６１には、新たに発生した紙詰まりエラー６２のエラーログをスタックする領域が足りない。そして、スタックのための領域が足りない場合のエラー情報の吐き出し方法は、ファーストインファーストアウトで行われるとする。すると、新たに発生した紙詰まりエラー６２のエラーログを、入力経路６３を介してスタックすると、ヘッド昇温警告エラー６５と同様に重要エラーに位置づけされているコンタクトチェックエラー６６が出力経路６７から吐き出されてしまう。
【００２５】
図１２は、図１１に示したエラースタックの状態において、新たに発生した紙詰まりエラー６２のエラーログを、従来方式を用いてスタックした場合のエラースタックの様子の一例を示す図である。図１１に示したエラースタックの状態において、従来方式を用いて新たに発生したエラーログを蓄積した場合、図１１に示した、新たに発生した紙詰まりエラー６２のエラーログ（２つ）を、入力経路６３を介してスタックする。そして、すでにスタックされている紙詰まりエラー６４とともに紙詰まりエラー７１としてスタックする。そうすると、それにより２つ分のエラーログがファーストインファーストアウトで吐き出されてしまう。図１２に示した例では、コンタクトチェックエラー６６とメンテナンスカートリッジエラーのログとの２つのエラーログ７２が吐き出されてしまう。従来方式では、吐き出されたエラーログ７２の中に、エラーの原因解明の手掛かりとなる重要エラーログも含まれているため、このように単なるファーストインファーストアウトでエラーログが吐き出されてしまうと、その後のエラー解析作業は困難になってしまう。
【００２６】
図１３は、図１１に示したエラースタックの状態において、新たに発生した紙詰まりエラー６２のエラーログを、本発明を用いてスタックした場合のエラースタックの様子の一例を示す図である。図１３に示すように、スタックされているエラーログのうち、互いに同じエラーログが複数スタックされている場合、その複数のエラーログを１つのエラーログに集約する。図１３に示した例では、５つの紙詰まりエラーが１つの紙詰まりエラー６９にまとめてスタックされている。これにより、エラーログ３つ分の領域６８が空き領域として確保される。この紙詰まりエラーは、連鎖的に連続して発生したと判定され、また、その重要度が低く設定されているため、集約しても可能であると判定されたものである。また、この発生回数は、図９に示したエラーコード５１内のエラー発生回数５４としてカウントされて記録される。
【００２７】
このように、本発明においては、容量に限りあるエラースタックの領域の有効利用に着目する。具体的には、エラーごとにその重要度をあらかじめ設定する。そして、エラーが発生したときにエラーログをスタックする領域に空きがない場合、発生したエラーの重要度とすでに蓄積されているエラーログの重要度とに基づいて、発生したエラーログを蓄積するかどうかを判定する。そして、発生したエラーログを蓄積する場合に、すでに蓄積されているエラーログの一部を消去する。これにより、トラブルに至った経緯を司るエラーの履歴を把握できることで、以下の効果を奏する。
（１）原因究明に欠かせない重要なエラーの痕跡が残せることで、敏速なる解明が図れる。
（２）使用者がエラー解消目的での、電源切断、再投入という行為に対しても、重要なエラーログをスタックから吐き出してしまうことがなくなる。
（３）エラーの種別は、発生回数分だけスタックに蓄積せずに、まとめて１つのスタックに入れ込むため、エラーログスタックの効率的スペース活用も図れることで、コストダウン目的で削減されたエラーログ容量であっても対応可能である。
（その他の実施形態）
【００２８】
上述では、発生したエラーのエラーログの重要度を、エラーログに対応するエラーの種類に基づいて特定して、特定した重要度に基づいて、図１０に示すような処理が実行されて当該エラーログを記憶させるか否かが制御される形態について説明した。しかし、この形態に限定されない。例えば、重要度を特定せず、エラーログに対応するエラーの種類そのものに基づいて、エラーログを記憶させるか否かが制御される形態であっても良い。
また上述では、記憶部１２０の空き容量が、発生したエラーのエラーログを記憶するために必要な容量に満たない場合に、図１０に示すような処理が実行されて当該エラーログを記憶させるか否かが制御される形態について説明したが、この形態に限定されない。例えば、エラーが発生する毎に、エラーログを記憶させるか否かが制御される形態であっても良い。言い換えれば、記憶部１２０の空き容量が、発生したエラーのエラーログを記憶するために必要な容量に満たしているか否かにかかわらず、エラーログを記憶させるか否かが制御されても良い。
また上述では、発生したエラーのエラーログと、記憶部１２０に既に記憶されているエラーログとを比較することで、エラーログを記憶させるか否かが制御される形態について説明したが、この形態に限定されない。他のエラーログと比較することなく、エラーログを記憶させるか否かが制御される形態であっても良い。具体的には例えば、発生したエラーのエラーログの重要度が、所定の閾値を満たすか否か（例えば、閾値以上か閾値未満か）を判定し、満たさない場合、エラーログを記憶させず、満たす場合、エラーログを記憶させても良い。また、このようにして複数のエラーログを記憶していった結果、記憶部１２０の空き容量が、発生したエラーのエラーログを記憶するために必要な容量を満たさなくなる場合がある。その場合は、発生したエラーのエラーログと、記憶部１２０に既に記憶されているエラーログとを比較することで、エラーログを記憶させるか否かが制御されても良い。すなわち、記憶部１２０の空き容量が、発生したエラーのエラーログを記憶するために必要な容量を満たさなくなっている場合と、いない場合とで、制御の方法を切り替えても良い。
【００２９】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である
【符号の説明】
【００３０】
１００    印刷装置
１１０    テーブル
１２０    記憶部
１３０    制御部
【図１】
2020183074.tif 000003
【図２】
2020183074.tif 000004
【図３】
2020183074.tif 000005
【図４】
2020183074.tif 000006
【図５】
2020183074.tif 000007
【図６】
2020183074.tif 000008
【図７】
2020183074.tif 000009
【図８】
2020183074.tif 000010
【図９】
2020183074.tif 000011
【図１０】
2020183074.tif 000012
【図１１】
2020183074.tif 000013
【図１２】
2020183074.tif 000014
【図１３】
2020183074.tif 000015