(57)【要約】【課題】印刷装置の個々の機構部品の動作回数を記憶することのできる印刷装置を提供する。【解決手段】印刷装置に電源を供給しない状態においても記憶内容を保持可能な記憶手段と、印刷装置の動作の回数をカウントする第１の動作回数カウント手段と、印刷装置の動作と同一の動作の回数をカウントする第２の動作回数カウント手段と、第１及び第２の動作回数カウント手段によってカウントされた第１及び第２のカウント値を記憶手段に格納する格納手段と、第１のカウント値を変更可能なカウント値変更手段とを有する。これにより、印刷装置の総動作回数（印刷装置が使用され始めてからの通算回数）と、交換された部品の動作回数とを記憶することができる。【選択図】図１
2006192910.tif 000002
【特許請求の範囲】
【請求項１】
ホスト装置に接続され、該ホスト装置からのコマンド及びデータに基づいて印刷を行う印刷装置において、
当該印刷装置に電源を供給しない状態においても記憶内容を保持可能な不揮発性記憶手段と、
当該印刷装置の動作の回数をカウントする第１動作回数カウント手段と、
当該印刷装置の動作と同一の動作の回数をカウントする第２動作回数カウント手段と、
前記第１動作回数カウント手段の第１カウント値及び前記第２動作回数カウント手段の第２カウント値を、それぞれ、第１履歴データ及び第２履歴データとして前記不揮発性記憶手段に所定のタイミングで格納する動作回数格納手段と、
前記ホスト装置から受信した第１コマンドに応じて、前記第１カウント値及び前記第１履歴データを初期化する動作回数変更手段と、
前記ホスト装置から受信した第２コマンドに応じて、前記第１及び／又は第２カウント値を前記ホスト装置に送信する動作回数送信手段と、
を有することを特徴とする印刷装置。
【請求項２】
請求項１記載の印刷装置において、
前記第１及び第２動作回数カウント手段を複数有することを特徴とする印刷装置。
【請求項３】
請求項１〜２の何れかに記載の印刷装置において、
当該印刷装置の稼働時間を計測する稼働時間計測手段と、
前記稼働時間計測手段が計測する所定時間毎に、当該印刷装置が所定の処理を行っているか否かを判断する判断手段とを有し、
前記動作回数格納手段は、前記判断手段により所定の処理を行っていないと判断された場合にのみ、前記履歴データを前記不揮発性記憶手段に格納することを特徴とする印刷装置。
【請求項４】
請求項１〜２の何れかに記載の印刷装置において、
当該印刷装置の稼働時間を計測する稼働時間計測手段と、
前記稼働時間計測手段が計測する所定時間毎に、当該印刷装置が所定の処理を行っているか否かを判断する判断手段とを有し、
前記動作回数格納手段は、前記判断手段により所定の処理を行っていないと判断された場合、前記履歴データを前記記憶手段に格納し、前記判断手段により所定の処理を行っていると判断された場合、前記稼働時間計測手段により前記所定時間よりも大きな第２の時間が計測されたとき、又は前記所定時間の経過後所定の処理を行っていないと判断されたときに、前記履歴データを前記不揮発性記憶手段に格納することを特徴とする印刷装置。
【請求項５】
請求項１〜４の何れかに記載の印刷装置において、
前記カウント値を寿命判定指標値に換算する動作回数換算手段を有し、
前記動作回数送信手段は、前記寿命判定指標値を送信することを特徴とする印刷装置。
【請求項６】
請求項１〜４の何れかに記載の印刷装置において、
前記カウント値を寿命判定指標値に換算する動作回数換算手段と、
前記カウント値及び／又は前記寿命判定指標値をコード化するデータ変換手段とを有し、
前記動作回数送信手段は、前記コード化データを送信することを特徴とする印刷装置。
【請求項７】
請求項１〜４の何れかに記載の印刷装置において、
前記カウント値を寿命判定指標値に換算する動作回数換算手段と、
前記カウント値及び／又は前記寿命判定指標値を表示する動作回数表示手段とを有することを特徴とする印刷装置。
【請求項８】
請求項７記載の印刷装置において、
前記動作回数表示手段は、前記カウント値及び／又は前記寿命判定指標値を印刷表示する動作回数印刷手段を有することを特徴とする印刷装置。
【請求項９】
ホスト装置に接続され、該ホスト装置からのコマンド及びデータに基づいて印刷を行う印刷装置を制御する方法において、
当該印刷装置の動作の回数をカウントする第１動作回数カウント工程と、
当該印刷装置の動作と同一の動作の回数をカウントする第２動作回数カウント工程と、
前記第１動作回数カウント工程の第１カウント値及び前記第２動作回数カウント工程の第２カウント値を、それぞれ、第１履歴データ及び第２履歴データとして不揮発性記憶手段に所定のタイミングで格納する動作回数格納工程と、
前記ホスト装置から受信した第１コマンドに応じて、前記第１カウント値及び前記第１履歴データを初期化する動作回数変更工程と、
前記ホスト装置から受信した第２コマンドに応じて、前記第１及び／又は第２カウント値を前記ホスト装置に送信する動作回数送信工程と、
を有することを特徴とする印刷装置の制御方法。
【請求項１０】
請求項９記載の印刷装置の制御方法において、
前記第１及び第２カウント工程では、当該印刷装置の複数の動作の回数をカウントすることを特徴とする印刷装置の制御方法。
【請求項１１】
請求項９〜１０の何れかに記載の印刷装置の制御方法において、
当該印刷装置の稼働時間を計測する稼働時間計測工程と、
前記稼働時間計測工程が計測する所定時間毎に、当該印刷装置が所定の処理を行っているか否かを判断する判断工程とを有し、
前記判断工程により所定の処理を行っていないと判断された場合にのみ、前記履歴データを前記不揮発性記憶手段に格納することを特徴とする制御方法。
【請求項１２】
請求項９〜１０の何れかに記載の印刷装置の制御方法において、
当該印刷装置の稼働時間を計測する稼働時間計測工程と、
前記稼働時間計測工程が計測する所定時間毎に、当該印刷装置が所定の処理を行っているか否かを判断する判断工程とを有し、
前記判断工程により所定の処理を行っていないと判断された場合、前記履歴データを前記不揮発性記憶手段に格納し、前記判断工程により所定の処理を行っていると判断された場合、前記稼働時間計測工程により前記所定時間よりも大きな第２の時間が計測されたとき、又は前記所定時間の経過後所定の処理を行っていないと判断されたときに、前記履歴データを前記不揮発性記憶手段に格納することを特徴とする制御方法。
【請求項１３】
請求項９〜１２の何れかに記載の印刷装置の制御方法において、
前記カウント値を寿命判定指標値に換算する動作回数換算工程を有し、
前記動作回数送信工程においては、前記寿命判定指標値を送信することを特徴とする制御方法。
【請求項１４】
請求項９〜１２の何れかに記載の印刷装置の制御方法において、
前記カウント値を寿命判定指標値に換算する動作回数換算工程と、
前記カウント値及び／又は前記寿命判定指標値をコード化するデータ変換工程とを有し、
前記動作回数送信工程においては、前記コード化データを送信することを特徴とする制御方法。
【請求項１５】
請求項９〜１２の何れかに記載の印刷装置の制御方法において、
前記カウント値を寿命判定指標値に換算する動作回数換算工程と、
前記カウント値及び／又は前記寿命判定指標値を表示する動作回数表示工程とを有することを特徴とする制御方法。
【請求項１６】
請求項１５記載の印刷装置の制御方法において、
前記動作回数表示工程は、前記記憶手段に格納された前記カウント値及び／又は前記寿命判定指標値を印刷表示する動作回数印刷工程を有することを特徴とする制御方法。
【請求項１７】
請求項９〜１６の何れかに記載の印刷装置の制御方法の各工程をコンピュータに実現させるためのプログラムを格納したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷装置及びその制御方法に係り、更に詳しくはＰＯＳシステムなどの金銭を扱うシステムで使用される印刷装置に用いて好適な保守情報の取り扱い技術に関する。
【背景技術】
【０００２】
従来の印刷装置では、適切な保守を行うことを目的とし、総稼働時間や印字文字数などに代表される印刷装置の動作履歴をカウントしてＥＥＰＲＯＭ（Electrically Erasable Programmable ROM）やフラッシュＲＯＭ等の不揮発性メモリに記憶していた。一般に印刷装置は、起動時に不揮発性メモリから揮発性メモリであるＲＡＭにこの履歴データをロードし、データの更新はＲＡＭで行い、定期的（一定時間間隔毎や所定値間隔毎）あるいは電源オフ時にＲＡＭのデータを不揮発性メモリに記憶していた。
【０００３】
この履歴データは、ホスト装置からのコマンドに応じて、あるいは使用者のスイッチ操作に応じて、読み出し、表示、あるいは印刷させることにより確認することができた。
【０００４】
また、特開平６−３９５６号公報に開示されているように、部品交換を実施したときには該部品に対応する履歴データをリセットし、カウントを再開していた。
【０００５】
また、特開平４−３０５６５７号公報に開示されているように、履歴データを複数のメモリに重複して記憶することにより、メモリが故障する等の原因で記憶されたデータが保証できなくなるという問題を回避していた。
【特許文献１】特開平６−３９５６号公報
【特許文献２】特開平４−３０５６５７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら従来の印刷装置では、総稼動時間からでは印刷装置の個々の機構部品がどのように使われているかを具体的に知ることはできなかった。例えば同じ総稼動時間であっても、一行の印字文字数は少ないが多くの行にわたって印字する場合と、一行の印字文字数は多いが少しの行にしか印字しない場合とでは、印字ヘッドや紙送り機構等の使われ方は異なるので、各部品の消耗度等を把握することはできなかった。また印字文字数等の履歴データは、部品寿命を検出し部品交換した後にはリセットされていたので、該交換部品を駆動するための機構部品等の総動作回数を知ることはできなかった。
【０００７】
総動作回数は、市場において実際にどれだけ使用されているのかを知ることができるので、故障原因の推定や品質保証のデータとして有効である。また次期新製品開発においても該データを反映させることにより適切なスペックの製品を提供することができる。
【０００８】
そこで本発明の目的は、印刷装置の個々の機構部品の総動作回数を記憶することのできる印刷装置を提供することにある。そして、使用者が交換可能な消耗部品に係る履歴データと、該部品を駆動するための機構部品等であって使用者が交換できない部品に係る履歴データとを独立して記憶することのできる印刷装置を提供することにある。
【課題を解決するための手段】
【０００９】
上記の課題を解決するため、本発明の印刷装置は、印刷装置に電源を供給しない状態においても記憶内容を保持可能な不揮発性記憶手段と、当該印刷装置の動作の回数をカウントする第１動作回数カウント手段と、当該印刷装置の動作と同一の動作の回数をカウントする第２動作回数カウント手段と、前記第１動作回数カウント手段の第１カウント値及び前記第２動作回数カウント手段の第２カウント値を、それぞれ、第１履歴データ及び第２履歴データとして前記不揮発性記憶手段に所定のタイミングで格納する動作回数格納手段と、前記ホスト装置から受信した第１コマンドに応じて、前記第１カウント値及び前記第１履歴データを初期化する動作回数変更手段と、前記ホスト装置から受信した第２コマンドに応じて、前記第１及び／又は第２カウント値を前記ホスト装置に送信する動作回数送信手段とを有することを特徴とする。また、第１及び第２の動作回数カウント手段を複数有することを特徴とする。
これにより、印刷装置の動作回数、例えば印刷文字数、記録媒体の搬送距離、オートカッタの動作回数等を計数し、履歴動作回数、すなわち印刷装置が使用され始めてからの通算の動作回数を記憶しておくことが可能となる。また当該動作に関する部材等の交換があった場合には交換後の通算の動作回数を合わせて記憶することが可能となる。また、例えば、部品交換によってリセットされる領域と、されない領域とを使い分けることによって、印刷装置の動作回数によって交換すべき部品が異なるような場合においても、正確な履歴情報を得ることが可能となる。
【００１０】
この場合において、印刷装置の稼働時間を計測する稼働時間計測手段と、印刷装置が所定の処理（印字動作又はデータ処理）を行っているか否かを判断する判断手段とを有し、該判断手段は、稼働時間計測手段に対応して、所定の時間毎に判断を行い、動作回数格納手段は、判断手段の結果に応じて所定の処理（印字動作又はデータ処理）を行っていないと判断された場合に、履歴データを不揮発性記憶手段に格納するようにしてもよい。これにより、電源の切断があった場合でもこれにより失われる動作回数のカウントを低減することができるとともに、印字動作やデータ処理を行っている場合には不揮発性記憶手段への格納が行われないので、当該印刷装置の動作を妨げることがなくなる。
【００１１】
また、この場合において、動作回数格納手段は、判断手段の結果に応じて所定の処理（印字動作又はデータ処理）を行っていると判断された場合には、稼働時間計測手段により所定の時間よりも大きな第２の時間が計測されたとき又は前記所定時間の経過後所定の処理を行っていないと判断されたときに、履歴データを不揮発性記憶手段に格納するようにしてもよい。これにより、印刷装置の動作が長時間に渡る場合には不揮発性記憶手段への格納を行うことによって、長時間格納が行われないことを回避することができ、電源の切断があった場合でもこれにより失われる動作回数のカウントを低減することができる。
【００１２】
また、カウント値を寿命判定指標値に換算する動作回数換算手段を有し、動作回数送信手段は、ホスト装置に寿命判定指標値を送信するようにしてもよい。これにより、ホスト装置は動作回数を寿命の判断の指標の形で入手することが可能となり、例えば動作回数と動作頻度とにより寿命が決定される場合などにより大きい効果が得られる。
【００１３】
この場合において、カウント値又は寿命判定指標値をコード化するデータ変換手段を有し、動作回数送信手段は、コード化データをホスト装置へ送信するようにしてもよい。これにより、例えばインターフェースの制約により特定データの送信ができない場合においても確実に当該データをホスト装置に送信することができる。
【００１４】
また、カウント値及び／又は寿命判定指標値を表示する動作回数表示手段を有することが望ましい。そして、動作回数表示手段は、カウント値及び／又は寿命判定指標値を印刷表示する動作回数印刷手段を有することが望ましい。これにより、オペレータは印刷装置の側においても当該データを知り、これを用いて適切な保守作業を行うことができる。
【００１５】
また、動作回数格納手段は、ホスト装置から受信した所定のコマンドに応じて、所定のタイミングにかかわらず、カウント値を履歴データとして不揮発性記憶手段に格納するようにしてもよい。これにより、適切なタイミングで履歴データの格納動作を行うことがホスト装置の管理の下で可能となり、電源の遮断によって失われる動作回数を減少させることが可能となる。
【００１６】
なお、本発明は上記の印刷装置の制御方法としても把握できるものであり、それぞれ同様の作用、効果を奏するものである。
また、本発明の制御方法は、制御装置で実行可能な制御プログラムとして供給することが可能であり、その制御プログラムを記録した記録媒体を介して提供することができる。記録媒体としてコンパクト・ディスク（ＣＤ−ＲＯＭ）、フレキシブル・ディスク、ハード・ディスク、光磁気ディスク、ディジタル・ビデオ・ディスク（ＤＶＤ−ＲＯＭ）、もしくは、磁気テープを採用することができ、これらの記録媒体を用いて、既存の印刷装置にプログラムを導入することができる。さらに、これらのプログラムをＷＷＷ（World Wide Web）ウェブ・サイトに登録し、これを使用者にダウンロードさせて、既存の印刷装置にプログラムを導入することができる。
【発明の効果】
【００１７】
本発明によれば、印刷装置の動作回数を複数の領域あるいはメモリに記憶させることにより、消耗品の消耗度と、消耗品に関わる交換できない部品の寿命、印刷装置の品質保証に係るデータの確認を容易に行うことができる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施の形態を図面に沿って説明する。
【００１９】
図１は、本発明の印刷装置の構成を示すブロック図である。図において印刷装置１は、印刷装置全体の制御を司るＣＰＵ（Central Processing Unit）２、メインメモリとしてのＲＡＭ（Random Access Memory）３、制御データ及びプログラム等を格納したＲＯＭ（Read Only Memory）４、動作状況に関するデータを格納するフラッシュＲＯＭ５、印字ヘッドによる用紙への印字等を実現する機構部６及びホスト装置との接続を行うインターフェース７を備えている。
【００２０】
印刷装置１はホスト装置と接続され、インターフェース７によりデータ（印字データ、制御コマンド等）を送受信する。該送受信されるデータは、ＲＡＭ３によってバッファリングされる。ＲＡＭ３は、一時的な記憶領域としても働く。またインターフェース７は、ホスト装置と接続されている信号線によりＣＰＵ２をリセットする機能を合わせ持つ。
【００２１】
ＣＰＵ２は、印刷装置１の電源投入時及びリセット時（以下単に起動時という）にＲＯＭ４からプログラムを読み出して該プログラムを実行し印刷装置１を制御する。またＣＰＵ２は、インターフェース７が受信してＲＡＭ３にバッファリングされたデータを解釈し、文字を印刷する制御コマンドであった場合はＲＯＭ４からフォントデータを取り出して印刷イメージをＲＡＭ３に展開する。その後ＣＰＵ２は、機構部６を駆動制御し印刷イメージを印刷する。機構部６は、ロール紙に印刷するための機構、すなわちロール紙送り部６１、ロール紙印字用ヘッド６２、ロール紙カッタ６３と、単票用紙に印刷するための機構、すなわち単票用紙送り部６４、単票用紙印字用ヘッド６５とを備えている。本例ではさらに、ＭＩＣＲ（Magnetic Ink Character Reader）用の磁気インク文字読み取りヘッド６６を備えている。
【００２２】
ＣＰＵ２は、内部にタイマーを持ち一定の間隔でタイマー割り込みを発生させる。ＲＯＭ４に格納されたタイマー割り込み処理プログラムにより時間が計測され、印刷装置１の稼動時間を計測する。
【００２３】
フラッシュＲＯＭ５は、ＣＰＵ２により読み書き可能であり、電源の供給が無い場合でもその内容を保持可能である。ＣＰＵ２は、印刷装置１の起動時にフラッシュＲＯＭ５に記憶されている動作回数のカウント値をＲＡＭ３にロードし、その後の動作回数のカウントはＲＡＭ３のデータを更新することにより行う。そして、所定のタイミングでフラッシュＲＯＭ５に書き込み記憶する。この時、ＣＰＵ２の内部タイマーによって計測された印刷装置１の稼動時間も合わせて記憶する。
【００２４】
前記のタイマー割り込み処理による時間計測では、印刷装置１の稼動時間を計測すると共に、ＲＡＭ３に記憶されているカウント値をフラッシュＲＯＭ５に記憶させる時間の計測も実施している。本例においては、タイマー割り込み処理による時間計測が２分経過したことを検出する毎にフラッシュＲＯＭ５に記憶させている。この書き込みタイミングは、フラッシュＲＯＭ５の寿命（書き込み可能回数）、印刷装置１のハードウェア構成等を考慮して適当な値に設定されている。例えば、印刷装置１の電源オフ処理が、電源スイッチがオフされると直ちに電源供給が停止する構成であるか、または電源スイッチがオフされてもソフトウェア処理により必要なデータを保存する等の処理を実施した後電源供給を停止する構成であるかによって書き込みタイミングは異なる。前者の場合は電源オフされるとデータが失われてしまうので、書き込みタイミングを短く例えば２分にし、後者の場合は電源オフされてもデータは保存できるので、書き込みタイミングは長く例えば１時間にすることができる。
【００２５】
動作回数がカウントされ、フラッシュＲＯＭ５に記憶される動作としては次のものがあり、それぞれに対してカウンタ番号を付けている。このカウンタ番号は後述する制御コマンドで使用する。
【００２６】
・単票用紙紙送り行数          カウンタ番号ａ＝１０
カウンタ番号ｂ＝１３８
・単票用紙印字文字数          カウンタ番号ａ＝１１
カウンタ番号ｂ＝１３９
・ロール紙紙送り行数          カウンタ番号ａ＝２０
カウンタ番号ｂ＝１４８
・ロール紙ヘッド通電回数      カウンタ番号ａ＝２１
カウンタ番号ｂ＝１４９
・ロール紙カッタ駆動回数      カウンタ番号ａ＝５０
カウンタ番号ｂ＝１７８
・磁気インク文字読み取り回数  カウンタ番号ａ＝６０
カウンタ番号ｂ＝１８８
・製品稼動時間                カウンタ番号ａ＝７０
カウンタ番号ｂ＝１９８
上記のとおり、印刷装置１は一つの動作に対して二つのカウンタを備えている。カウンタ番号ａのカウンタとカウンタ番号ｂのカウンタとは、それぞれ独立したカウンタであり、一つの動作に対してそれぞれのカウンタが更新されていく。またカウンタ番号ａのカウンタは制御コマンドにより変更可能なカウンタであり、カウンタ番号ｂのカウンタは制御コマンドにより変更不可能なカウンタである。
【００２７】
図２は、フラッシュＲＯＭへの書き込み制御を示すフローチャートである。フローチャートでは、印刷装置１の動作中においてＲＡＭ３上で更新されたカウント値を定期的にフラッシュＲＯＭ５に書き込むタイミングを説明している。
【００２８】
印刷装置１が起動されると、フラッシュＲＯＭ５に記憶されたカウント値がＲＡＭ３にロードされ、内部タイマーによる時間計測が開始される（２０１）。内部タイマーによる時間計測が開始されてから、予め定められた時間が経過すると（２０２）、現在印字動作とデータ処理を行っていないと判断された場合に（２０３；いいえ）、フラッシュＲＯＭ５に対するデータの書き込みを行う（２０４）。そして、内部タイマーをリセットし、次の経過時間が来るのを待つ（２０５）。ステップ２０３で、印字動作とデータ処理のどちらか一方でも行われていると判断された場合（２０３；はい）、フラッシュＲＯＭ５への書き込みは行わない。このように、印字動作とデータ処理の両方が行われていない場合にのみフラッシュＲＯＭ５への書き込みを行い、どちらか一方でも行われていた場合には書き込みを行わないので、該書き込みによる印字のスループットの低下を回避することができる。
【００２９】
図３は、第２の実施形態に係るフラッシュＲＯＭへの書き込み制御を示すフローチャートである。本実施形態における制御が、先の実施形態における制御と異なる点は、印字動作とデータ処理のどちらか一方でも行われていた場合に時間計測を継続し、第２の時間以内に印字動作とデータ処理が行われていない状態とならないときに、印字動作とデータ処理の実行状態に拘わらず、フラッシュＲＯＭ５への書き込みを行う点である。
【００３０】
印刷装置１が起動され又はリセットされると、フラッシュＲＯＭ５に記憶された各種データがＲＡＭ３上にロードされ、前記内部タイマーによる時間計測が開始される（３０１）。内部タイマーによる時間計測が開始されてから、予め定められた第１の時間（例えば、１時間）が経過すると（３０２）、現在印字動作とデータ処理を行っていないかが判断される（３０３）。印字動作とデータ処理の両方が行われていないと判断された場合に（３０３；いいえ）、フラッシュＲＯＭ５に対するデータの書き込みを行う（３０４）。そして、内部タイマーをリセットし次の経過時間まで待機する（３０５）。
【００３１】
ステップ３０３で、印字動作とデータ処理のどちらか一方でも行われていると判断された場合（３０３；はい）、直ぐにはフラッシュＲＯＭ５への書き込みは行わず、内部タイマーによる時間計測を継続する（３０６）。
【００３２】
内部タイマーが該一定時間より長い第２の時間（例えば、１時間１０分）になるまでの間（３０６）、印字動作とデータ処理が行われていないか否か判断し（３０３）、どちらも行われていないと判断した場合には、フラッシュＲＯＭ５への書き込みを行う（３０４）。内部タイマーが第２の時間を計測しても、印字動作とデータ処理のどちらか一方でも行われ続けていた場合には、印字動作とデータ処理の動作状態に拘わらずフラッシュＲＯＭ５への書き込みを行う（３０４）。
【００３３】
先の実施形態においては、印字動作とデータ処理のどちらか一方でも行われている場合、フラッシュＲＯＭ５への書き込みが保留され続ける。その結果、データの書き込み間隔が空いてしまい、その間に印刷装置の電源がオフされたり、ホスト装置がインターフェース７を通して信号線によるＣＰＵ２のリセット等を行うとカウンタに誤差が生じたり、失われる制御情報があるという欠点がある。例えば、ＰＯＳ用印刷装置では、デイリーリポート（売上等に関する１日の集計データ）といったものは、数分間印字が継続される場合があり、書き込みが保留にされる時間が長い。また、印字を継続することによりカウント値や制御情報も変化するため、書き込みが行われないまま電源オフ等されたときに発生するカウンタの誤差は大きくなり、失われる制御情報が多くなる。
【００３４】
本実施形態においては、このような欠点を解決するために印字動作とデータ処理のどちらか一方でも行われていると判断された場合にも、第２の時間までにフラッシュＲＯＭ５への書き込みを行う。
【００３５】
次に、ホスト装置からカウント値を読み書きする制御コマンドについて説明する。ただし、前記のとおりカウンタ番号ｂのカウント値を変更することはできない。
【００３６】
図４に、カウンタ番号ａのカウント値を変更する制御コマンドの例を示す。カウンタ変更コマンド４０は、コマンドコード部４１とパラメータ部４２とで構成される。さらにコマンドコード部４１は、拡張子４３と機能コード４４により構成され、パラメータ部４２は、機能拡張用パラメータ４５とカウンタ番号指定部４６により構成される。拡張子４３は文字コード＜１ＤＨ＞のＡＳＣＩＩ表記である。機能コード４４は、カウンタ変更機能を指定するコード列であり、ふたつの文字コードを組み合わせて変更機能を指定している。機能拡張用パラメータ４５は、カウンタ変更時のキーを指定する。カウンタ番号指定部４６は、変更するカウンタ番号を指定する。
【００３７】
ＣＰＵ２は、カウンタ変更コマンド４０により以下の処理を実行する。
【００３８】
（１）機能拡張用パラメータ４５により指定されたキーと所定のキーとを比較し、キーが一致した場合はカウント値の変更を実行する。キーが一致しない場合は、カウント値の変更を禁止する。
【００３９】
（２）カウンタ番号指定部４６により指定されたカウンタ番号が、変更可能なカウンタ番号ａに該当するか比較し、指定されたカウンタ番号がカウンタ番号ａに該当する場合は、指定されたカウンタのカウント値を変更する。本例においては、カウント値を０に初期化する。カウンタ番号指定部４６により指定されたカウンタ番号がカウンタ番号ａに該当しない場合は、カウント値の変更は行わない。よって、カウンタ番号ｂに該当するカウンタ番号のカウント値は変更されることがない。
【００４０】
（３）ホスト装置から送信される印刷データを展開して１行単位の印刷バッファへ格納した後に印刷命令により印刷を実行する印刷モードが選択されており、かつ印刷バッファに未印刷のデータがある場合、カウンタの変更処理を実行しない。これによりカウンタ変更処理時にメモリエラーが発生してプリンタ装置の動作が停止することによる未印刷データの消滅を防止することができ、印刷終了していない印刷データの保護が可能となる。
【００４１】
（４）ホスト装置から送信される印刷データを展開して複数行に対応する印刷バッファへ格納した後に印刷命令により印刷を実行する印刷モードが選択されており、かつ印刷領域が設定されている場合、カウンタの変更処理を実行しない。これによりカウンタ変更処理時にメモリエラーが発生してプリンタ装置の動作が停止することによる未印刷データの消滅を防止することができ、印刷終了していない印刷データの保護が可能となる。
【００４２】
（５）書き込み時に「書き込みエラー」が発生した場合、エラー発生をＬＥＤやブザー等で表示、またはエラーステータス送信や信号線の変化等によりホスト装置にその旨通知する。これによりオペレータまたはホスト装置は、印刷装置内で発生したエラーによりカウント値の変更が正常終了していないことを確認できる。
【００４３】
（６）ＲＡＭ３に記憶されているカウント値を、前記内部タイマー割り込み処理による時間計測でフラッシュＲＯＭ５への書き込みタイミングでないときであっても、フラッシュＲＯＭ５への書き込みを実施する。カウンタ変更コマンド４０によりカウント値が変更されフラッシュＲＯＭ５への書き込み前にインターフェース７を通してホスト装置が信号線によりＣＰＵ２をリセットすると変更されたカウント値が失われてしまうため、カウンタ変更コマンド処理時にフラッシュＲＯＭ５への書き込みを合わせて行う。なお、フラッシュＲＯＭ５への書き込み専用コマンドを設けて、カウント値を変更するコマンドとペアで用いることによっても同様の効果を有する。
【００４４】
図５に、カウント値を読み出す制御コマンドの例を示す。カウンタ送信コマンド５０は、コマンドコード部５１とパラメータ部５２とで構成される。さらにコマンドコード部５１は、拡張子５３と機能コード５４により構成され、パラメータ部５２は、機能拡張用パラメータ５５と、カウンタ番号指定部５６により構成される。拡張子５３は文字コード＜１ＤＨ＞のＡＳＣＩＩ表記である。機能コード５４は、カウンタ送信機能を指定するコード列であり、ふたつの文字コードを組み合わせて送信機能を指定している。機能拡張用パラメータ５５は、カウンタ送信時のキーを指定する。カウンタ番号指定部５６は、送信するカウンタ番号を指定する。
【００４５】
ＣＰＵ２は、カウンタ送信コマンド５０により以下の処理を実行する。
【００４６】
（１）機能拡張用パラメータ５５により指定されたキーと所定のキーとを比較し、キーが一致した場合は、カウント値の送信を実行する。キーが一致しない場合は、カウント値の送信を禁止する。
【００４７】
（２）カウンタ番号指定部５６により指定されたカウンタ番号が、カウントされている番号であった場合は、ＲＡＭ３に記憶されているカウント値を読み出し送信する。カウンタ番号指定部５６により指定されたカウンタ番号がカウントされていない番号であった場合は、送信コマンドは無視する。
【００４８】
（３）送信時に「読み出しエラー」が発生した場合、エラー発生をＬＥＤやブザー等で表示、またはエラーステータス送信や信号線の変化等によりホスト装置にその旨通知する。これによりオペレータまたはホスト装置は、印刷装置内で発生したエラーによりカウント値が送信されないことが確認できる。
【００４９】
（４）送信データには［ヘッダコード］または［ターミネートコード］を付加することができる。これによりホスト装置は送信データの開始と終了が簡単に認識できる。
【００５０】
またＣＰＵ２は、ホスト装置へカウント値を送信する前に次の処理を実行する。
【００５１】
（５）第１ステップとしてカウント値の換算を行う。
【００５２】
カウント値は寿命等を判断する数値として、カウントしたそのものの数値で分かり易いものと、カウントした数値そのものでは分かり難いものがある。分かり易いものはそのままのデータを送信し、分かり難いものは寿命等の判断をし易いデータに換算してから送信する。
【００５３】
一例として、単票用紙の紙送り行数について説明する。単票用紙送り部６４の駆動源は、ステッピングモータ（図示せず）である。ＣＰＵ２は、このステッピングモータのステップ数をカウントしカウント値として記憶している。使用者は、このステップ数ではどの程度の紙送りが実施されたのかが非常に分かり難い。本例の印刷装置１の１行分の紙送りは１／６インチであり、単票用紙送り部６４はステッピングモータを２４ステップ駆動すると１／６インチ単票用紙を送る構成になっている。そこでカウント値を２４で割り印字行数に換算した値を用意する。
【００５４】
（６）第２ステップとしてカウント値及びカウント値の換算値を送信用のデータに変換する。
【００５５】
カウント値やカウント値の換算値をそのままホスト装置へ送信すると、数値によっては他の制御コードと一致してしまい正常な動作が行えなくなる、また７ビット長のデータは送信できない等の問題が発生する場合がある。そこで、カウント値または換算値を１０進数の文字コードに変換してから送信する。
【００５６】
一例として、単票用紙の紙送り行数の換算値が「００００１１００Ｈ」である場合について説明する。この場合、送信データは「００Ｈ、００Ｈ、１１Ｈ、００Ｈ」の４バイトになるが、ここで「１１Ｈ」はＸＯＮコードと一緒でありハンドシェイク不良が発生してしまう可能性がある。そこで、「００００１１００Ｈ」を１０進数「４３５２Ｄ」に変換し、ホスト装置へは「３４Ｈ、３３Ｈ、３５Ｈ、３２Ｈ」という４バイトを送信する。
【００５７】
本発明の印刷装置１は、ホスト装置からのデータを印刷する以外にテスト印字を行うモード（以下テスト印字モードという）を有している。本例では、図示しない紙送りスイッチを押しながら電源を投入することによりテスト印字モードへ移行する。
【００５８】
このテスト印字モードにおいて印刷装置１は、カウンタ送信コマンド５０を受けてホスト装置に送信するカウント値と同じ内容を印刷する。図６にその印刷結果を示す。動作回数をカウントしている項目６０、カウント項目６０に対応したカウンタ番号ａのカウント値６０ａ及びカウンタ番号ｂのカウント値６０ｂを印刷する。
【００５９】
本構成によれば、印刷装置１がホスト装置に接続されていない単体の状態であってもカウント値を確認することができる。
【００６０】
また、このテスト印字モードの印字動作によってもカウントは進行する。しかし、テスト印字モードは、本例の書き込み間隔である２分間は継続しないためＲＡＭ３の内容をフラッシュＲＯＭ５に書き込むタイミングが来る前に電源を落されてしまう場合がある。この場合においてもカウント値が失われないように、前記内部タイマー割り込み処理による時間計測でフラッシュＲＯＭ５への書き込みタイミングでない場合であっても、テスト印字モードが終了したならばフラッシュＲＯＭ５への書き込みを実施する。
【００６１】
以上、本発明の一実施形態を図面に沿って説明したが、本発明は前記実施形態において示された事項に限定されず、特許請求の範囲及び発明の詳細な説明の記載、並びに周知の技術に基づいて、当業者がその変更・応用を行うことができる範囲が含まれる。
【００６２】
前記実施形態においては、リセット可能なカウンタとリセット不可能なカウンタとを有するプリンタ装置を示したが、部品交換時におけるカウント値を不揮発性メモリに記憶しておくことにより、いずれか一方のカウンタのみでも同様の効果を有する。例えば、リセット可能なカウンタのみを有する場合は、現在のカウント値と過去のカウント値の和から総動作回数を知ることができる。また、リセット不可能なカウンタのみを有する場合は、現在のカウント値と前回の部品交換時のカウント値との差から部品寿命を知ることができる。
【００６３】
前記実施形態においては、印刷装置の動作履歴データを記憶する不揮発性メモリとしてフラッシュＲＯＭを示したがＥＥＰＲＯＭを用いても良い。また、不揮発性メモリに記憶するデータは、前記実施形態に示したものに限らず、各種の印刷装置の動作状況に関するデータを対象とすることができるし、また前記実施形態に示したものの一部を対象としても良い。不揮発性メモリはまた、動作状況に関するデータ以外のデータ、例えばフォントデータやプログラム等を共に格納するように構成しても良い。
【００６４】
また、総稼働時間や書き込み時間の計時装置として、ＣＰＵ内蔵タイマーを示したが、リアルタイムクロック等のデバイスを用いても良い。
【００６５】
更に、前記実施形態においては一定時間経過毎に所定の処理の実行状態を判断するように構成したが、印刷装置の動作に伴って変化する値、例えば印字枚数や印字行数に基づく所定間隔毎にこの判断を行うように構成しても良い。
【図面の簡単な説明】
【００６６】
【図１】本発明の一実施形態に係る印刷装置の構成を示すブロック図。
【図２】図１の印刷装置におけるフラッシュＲＯＭへの書き込み制御を示すフローチャート。
【図３】図１の印刷装置における他のフラッシュＲＯＭへの書き込み制御を示すフローチャート。
【図４】図１の印刷装置におけるカウンタ変更コマンドを説明するための図。
【図５】図１の印刷装置におけるカウンタ送信コマンドを説明するための図。
【図６】図１の印刷装置におけるテスト印字モードでの印字例を示す図。
【符号の説明】
【００６７】
１・・・印刷装置
２・・・ＣＰＵ
３・・・ＲＡＭ
４・・・ＲＯＭ
５・・・フラッシュＲＯＭ
６・・・機構部
７・・・インターフェース
４０・・・カウンタ変更コマンド
５０・・・カウンタ送信コマンド
【図１】
2006192910.tif 000003
【図２】
2006192910.tif 000004
【図３】
2006192910.tif 000005
【図４】
2006192910.tif 000006
【図５】
2006192910.tif 000007
【図６】
2006192910.tif 000008