説明

印刷装置及びその制御方法

【課題】 ホスト装置から印刷装置の電源供給の停止を確実に管理するのに好適な印刷装置及びその制御方法を提供する。
【解決手段】 印刷装置は、ホスト装置に接続され、指令受信部と、電源停止処理部と、指令格納部と、指令処理部と、備える。電源停止処理部は、受信した指令が電源オフコマンドである場合、印刷装置の停止処理を行う。指令処理部は、読み出した指令が状態通知コマンドである場合、ホスト装置に印刷装置内部の印刷データを全て印刷した旨の通知を行う。電源停止処理部は、印刷装置の電源供給を停止して良いと判断された場合、キャリッジに搭載された印刷ヘッドを所定の位置に移動してロックし、印刷装置の各種設定値、各種カウント値及び当該印刷装置の状態を設定記憶部に記憶し、ホスト装置に電源停止処理の主要部分が終了した旨の通知を送信し、該送信の所定時間後に印刷装置の電源供給を停止する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、印刷装置及びその制御方法に関する。
【背景技術】
【0002】
従来から、プリンタなどの印刷装置に対してコンピュータなどのホスト装置から指令を送信して、印刷装置に文字や図形を印刷させたり、印刷の体裁を整えたり、印刷装置自体の設定を行ったりする印刷システムが広く使用されている。
【0003】
一方で、印刷のコストを低減するため、インクジェット印刷ヘッドなどが普及しつつある。インクジェット印刷ヘッドなど、印刷の方式によっては、印刷装置に電源をオンにしたときや電源をオフにしたときに、印字品質を維持するために、印字ヘッドのクリーニング処理が必要なものがある。ここで言うクリーニング処理とは、印字ヘッドのノズル内の増粘したインクを排出したり、ノズル表面の異物を払拭したりすることによって行われる処理であり、メンテナンス処理とも呼ばれている。
【0004】
たとえば、インクジェット印刷ヘッドでは、インクがノズル内に残留して乾燥し増粘した場合、ノズルが詰まったりインクの出が悪くなったりすることがある。したがって、このような印刷装置では、動作中に主電源を直接スイッチでオン・オフすることは望ましくない。
【0005】
すなわち、増粘したインクが印刷ヘッドのノズルに残留した状態になってしまうと、大量のインクを使ったクリーニング処理が必要になるため、電源をオフにするときには、所定のメンテナンス処理を行うことが望ましい。
【0006】
また、店舗などでPOS(PointOfSales)端末として使用される場合、印刷装置の電源のオン・オフは、店員に直接行わせたくはない場合も多い。
【0007】
このため、ホスト装置から印刷装置の電源を管理して、印刷装置の電源をオフにする場合に、印刷装置に確実に停止処理を行わせることができるような印刷システムが研究開発の対象となっている。
【0008】
また、印刷装置のスイッチを直接操作するのではなく、ホスト装置からの指令により印刷装置の電源供給の停止が指示できるような印刷システムについても研究開発が進められている。
【特許文献1】特開平08-339275
【特許文献2】特開平08-11393
【発明の開示】
【発明が解決しようとする課題】
【0009】
このような印刷システムにおいて、ホスト装置から印刷装置の電源を管理して、印刷装置の電源をオフする場合に、印刷装置に確実に停止処理を行わせることができるような印刷システムが望まれている。
【0010】
本発明は、上記のような課題を解決するためになされたもので、ホスト装置から印刷装置の電源供給の停止を確実に管理するのに好適な印刷装置及びその制御方法を提供することを目的とする。
【課題を解決するための手段】
【0011】
本発明の印刷装置は、
ホスト装置に接続された印刷装置であって、
前記ホスト装置が送信した指令を受信する指令受信部と、
前記受信した指令が電源オフコマンドである場合、当該印刷装置の停止処理を行う電源停止処理部と、
前記受信した指令を記憶する指令格納部と、
前記受信した指令を順に読み出し、該読み出した指令が印刷指令である場合、該印刷指令に対応する印刷動作を行い、前記読み出した指令が状態通知コマンドである場合、前記ホスト装置に当該印刷装置内部の印刷データを全て印刷した旨の通知を行う指令処理部と、
を備え、
前記電源停止処理部は、前記停止処理として、当該印刷装置の電源供給を停止して良いかどうかを判断する電源停止許可処理と、当該印刷装置の電源供給を停止する電源停止処理とを行い、該電源停止処理は、前記電源停止許可処理において、当該印刷装置の電源供給を停止して良いと判断された場合、キャリッジに搭載された印刷ヘッドを所定の位置に移動してロックし、当該印刷装置の各種設定値、各種カウント値及び当該印刷装置の状態を設定記憶部に記憶し、前記ホスト装置に電源停止処理の主要部分が終了した旨の通知を送信し、該送信の所定時間後に当該印刷装置の電源供給を停止することを特徴とする。
【0012】
また、本発明の印刷装置の制御方法は、
ホスト装置に接続された印刷装置の制御方法であって、
前記ホスト装置が送信した指令を受信する指令受信工程と、
前記受信した指令が電源オフコマンドである場合、当該印刷装置の停止処理を行う電源停止処理工程と、
前記受信した指令を指令格納部に格納する指令格納工程と、
前記受信した指令を順に読み出し、該読み出した指令が印刷指令である場合、該印刷指令に対応する印刷動作を行い、前記読み出した指令が状態通知コマンドである場合、前記ホスト装置に当該印刷装置内部の印刷データを全て印刷した旨の通知を行う指令処理工程と、を備え、
前記電源停止処理工程は、前記停止処理として、当該印刷装置の電源供給を停止して良いかどうかを判断する電源停止許可処理と、当該印刷装置の電源供給を停止する電源停止処理とを含み、該電源停止処理は、前記電源停止許可処理において、当該印刷装置の電源供給を停止して良いと判断された場合、キャリッジに搭載された印刷ヘッドを所定の位置に移動してロックし、当該印刷装置の各種設定値、各種カウント値及び当該印刷装置の状態を設定記憶部に記憶し、前記ホスト装置に電源停止処理の主要部分が終了した旨の通知を送信し、該送信の所定時間後に当該印刷装置の電源供給を停止することを特徴とする。
【0013】
また、本発明の印刷装置の電源オフ制御方法は、
ホスト装置に接続された印刷装置の電源オフ制御方法であって、
ユーザによって作業終了を指示された前記ホスト装置から最後の印刷指令を受信して、当該印刷装置内部の印刷データを全て印刷する印刷指令受信・全印刷工程と、
前記ホスト装置から状態通知コマンドを受信する状態通知コマンド受信工程と、
前記状態通知コマンドを受信して、前記ホスト装置に当該印刷装置内部の印刷データを全て印刷したかどうかの通知を送信する印刷完了通知送信工程と、
前記印刷完了通知送信工程において、前記ホスト装置に当該印刷装置内部の印刷データを全て印刷した旨の通知を送信した後、前記ホスト装置から電源オフコマンドを受信する電源オフコマンド受信工程と、
前記ホスト装置に電源停止処理の主要部分が終了したかどうかの通知を送信する電源停止処理主要部分終了通知送信工程と、
前記電源停止処理主要部分終了通知送信工程において、前記ホスト装置に前記電源停止処理の主要部分が終了した旨の通知を送信した後、当該印刷装置の電源供給を停止する印刷装置電源供給停止工程と、
を備えることを特徴とする印刷装置の電源オフ制御方法。
【0014】
また、本発明の印刷装置の電源オフ制御方法は、
印刷装置に接続されたホスト装置による印刷装置の電源オフ制御方法であって、
ユーザの作業終了の指示により、前記印刷装置へ最後の印刷指令を送信して、前記印刷装置内部の印刷データを全て印刷させる最後の印刷指令送信工程と、
前記印刷装置へ状態通知コマンドを送信する状態通知コマンド送信工程と、
前記印刷装置から該印刷装置内部の印刷データを全て印刷したかどうかの通知を受信する印刷完了通知受信工程と、
前記印刷装置から該印刷装置内部の印刷データを全て印刷した旨の通知を受信した場合、前記印刷装置に電源オフコマンドを送信する電源オフコマンド送信工程と、
前記印刷装置から電源停止処理の主要部分が終了したかどうかの通知を受信する電源停止処理主要部分終了通知受信工程と、
前記印刷装置から前記電源停止処理の主要部分が終了した旨の通知を受信した場合、前記ホスト装置の電源供給を停止するホスト装置電源供給停止工程と、
を備えることを特徴とする。
【発明の効果】
【0015】
以上説明したように、本発明によれば、ホスト装置から電源オフコマンドを受信した場合、印刷装置の停止処理として、印刷装置の電源供給を停止して良いかどうか判断した後、キャリッジに搭載された印刷ヘッドを所定の位置に移動してロックし、印刷装置の各種設定値、各種カウント値及び当該印刷装置の状態を設定記憶部に記憶し、ホスト装置に電源停止処理の主要部分が終了した旨の通知を送信し、該送信の所定時間後に印刷装置の電源供給を停止するので、印刷装置の停止処理を確実に行うことができる。
【0016】
また、本発明によれば、ユーザによって作業終了を指示された時、ホスト装置から最後の印刷指令を送り、この指令を受信した印刷装置において、印刷装置内部の印刷データを全て印刷した後に印刷装置の電源供給を停止するので、印刷装置の電源供給を停止しても、未印字データを残すことがない。
【発明を実施するための最良の形態】
【0017】
以下に本発明の一実施形態を説明する。なお、以下に説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本願発明の範囲に含まれる。
(第1の実施形態)
【0018】
図1は、本発明の印刷システムの第1の実施形態の概要構成を示す模式図である。以下、図1を参照しながら説明する。
【0019】
印刷システム101は、印刷装置102と、これを制御するホスト装置103とを備える。ホスト装置103は、印刷装置102に対して通信線104を介して指令を送信する。印刷装置102は、ホスト装置103が送信した指令を受信して、その指令を解釈し、文字や図形を紙やフィルムなどに印刷したり、印刷の体裁を整えたり、印刷装置102自体の設定を変更したりする。
【0020】
また、本実施形態では、ホスト装置103が外部機器に電源を供給するための電源コネクタ(図示せず)を備えており、この電源コネクタから電源供給線105が印刷装置102に接続されている。この電源コネクタは、ホスト装置103の電源供給と連動させることができる。この場合、ホスト装置103の電源がオフになると、印刷装置102の電源スイッチを一切操作しなくとも、印刷装置102に対する電源の供給をすべて停止することができる。
【0021】
なお、通信線104は、有線ケーブルのほか、無線LAN(LocalAreaNetwork)や電話線、赤外線通信などの通信手段によってもよい。
(印刷装置の実施形態)
【0022】
図2は、印刷システム101の印刷装置102の概要構成を示す模式図である。なお、図2において、上述の図と同じ機能を果たす要素には同じ符号を付してある。
【0023】
印刷装置102は、CPU201によって制御される。電源供給コネクタ202から供給された電源は、電源コントローラ203によって制御管理される。電源供給コネクタ202と電源コントローラ203の間の電源供給線の途中には主スイッチ204が接続されており、印刷装置102全体のこれを切れば、電源を完全にオフにすることができる。
【0024】
印刷装置102は、印刷ヘッド、紙送り機構、プラテン、用紙カッターなどの印刷機構205を駆動して、紙やフィルムなどに文字や図形を印刷する。
【0025】
CPU201には、副スイッチ211が接続されている。副スイッチ211はプッシュ型のスイッチで、副スイッチ211を押圧操作すると、その操作がトリガとなって、CPU201は、印刷機構205内の印刷ヘッドのクリーニング処理を実行し、さらに、電源コントローラ203を制御して、電源コントローラ203による電源供給を停止させる。なお、電源コントローラからは、CPU201や印刷機構205に対して電源が供給されているが、図の理解を容易にするため、図2中では、この電源供給線の図示を省略している。
【0026】
印刷装置102は、ホスト装置103とインターフェース206を介して接続されており、CPU201は、インターフェース206が受信した指令にしたがって、印刷機構205を駆動する。
【0027】
インターフェース206が指令を表すデータの受信を検出すると、CPU201に対して割り込みを発生させる。CPU201は、そのときの制御の流れから受信割り込み処理に制御を移行して、検出された指令データをインターフェースに受信させ、当該データがリアルタイムコマンドである場合には、これに対応する処理を実行し、受信したデータをRAM(RandomAccessMemory)207内の受信バッファに記憶させて、受信割り込み処理を終了する。リアルタイムコマンドとは、受信したときリアルタイムに実行されるコマンドであり、本発明における電源オフコマンドはリアルタイムコマンドとして実装される。
【0028】
また、電源オフコマンドの処理の際に、インターフェース206を介してホスト装置103へ、電源オフの状況に関する情報を送信する。
【0029】
一方、CPU201は、通常処理として、受信バッファに記憶された指令データを順に読み出し、その指令データにしたがって、文字や図形を印刷したり、印刷の体裁を整えたり、印刷装置102の設定を変更したりする。このように、ここで解釈される指令を通常コマンドと呼ぶ。また、指令データがリアルタイムコマンドである場合には、当該指令データを読み飛ばす。
【0030】
文字や図形を印刷する際には、ROM(ReadOnlyMemory)208に記憶されたフォント情報を用いて、RAM207内のラインバッファに印刷イメージを展開する。展開された印刷イメージが1行分に達したり、改行指令に出会った場合に、当該ラインバッファ内の印刷イメージにしたがって印刷機構205を駆動する。
【0031】
ディップスイッチ209は、印刷装置102の各種の設定を行う。動作ランプ210は、各種の色で点灯したり、点滅することにより、現在の動作状態をユーザに知らせる。
【0032】
フラッシュEEPROM(ElectricallyErasableProgrammableROM)212には、印刷装置の各種設定のほか、印刷ヘッドの駆動回数、インクの使用量などのメンテナンス情報や、FISCALなどの会計情報を不揮発に記憶させることができる。
【0033】
指令の形式としては、POS端末用に設けられた公知の印刷指令体系を採用することができる。なお、以下の説明では、理解を容易にするため、以下のような指令を用いて説明する。0xは、十六進数を意味する接頭辞である。
【0034】
・0x0a 改行する。通常コマンド。
・0x20〜0x7e そのASCIIコードの文字を印刷する。通常コマンド。
・0x100x140x020x01n 電源オフコマンドである。リアルタイムコマンド。
【0035】
ここで、パラメータnには電源供給の停止の際の手法などを指定する。たとえば、以下の値を指定することができる。
【0036】
・0x00 直ちに電源をオフにする。
・0x01〜0x09 それぞれ、1分〜9分以内に電源をオフにする。
・0xf0 直ちに電源をオフにできるようであればオフにする。
そうでなければ電源はオンのままにする。
・0xf1〜0xf9 それぞれ、1分〜9分以内に電源をオフにできるようであればオフにする。
そうでなければ電源はオンのままにする。
いずれのパラメータが指定されたかを示すために、印刷装置102は、RAM207内のパラメータ格納領域に指定されたパラメータの種類を記憶する。
【0037】
一般にPOS端末用に設けられた印刷指令体系では、これ以外の指令も用意されている。たとえば、印刷装置102の現在のステータスを送信させたり、印刷装置102がPOS端末の銭箱を備える場合にこれを開くリアルタイムコマンドや、画像イメージを印刷させる通常コマンドなどである。これらの指令を実装した実施形態も本発明の範囲に含まれる。
【0038】
ここで、インターフェース206は、受信部として機能し、CPU201は、許可部として機能し、RAM207は、指令格納部として機能し、印刷機構205は、CPU201と共働して印刷部として機能し、電源コントローラ203は、CPU201と共働して停止処理部として機能する。また、インターフェース206は、送信部として機能し、CPU201は、停止処理済み送信制御部として機能する。また、CPU201は、禁止部として機能する。また、CPU201は、停止処理禁止送信部として機能する。
【0039】
また、ROM208は、本発明の情報記録媒体として機能する。ホスト装置103からROM 208の更新(バージョンアップ)を行うことができる場合は、ホスト装置103に装着された情報記録媒体やホスト装置103が備える情報記録媒体も、本発明の情報記録媒体として機能する。
(受信割り込み処理)
【0040】
図3は、印刷装置102で実行される受信割り込み処理の制御の流れを示すフローチャートである。受信割り込み処理は、指令データが送信されていることをインターフェース206が検知したことを契機に、後述する通常処理に割り込む形式で開始される。この割り込みは、指令データが1バイト送信されるたびに発生する。
【0041】
まず、CPU201は、インターフェース206に指令データを1バイト受信させる(ステップS301)。
【0042】
次に、CPU201は、受信した指令データの値にしたがって、印刷装置102の受信状態を次の受信状態に遷移させ(ステップS302)、その状態遷移に伴う処理を実行する(ステップS303)。
【0043】
印刷装置102の受信状態は、図4に示すような状態遷移図によって表すことができる。現在の受信状態は、RAM207内に記憶されており、遷移の度に記憶される値(図4の実施形態ではA〜E等)が更新される。
【0044】
図4に示すように、受信状態Aは、通常コマンドの列を受信しつつあることを示す状態であり、それ以外の状態は、現在リアルタイムコマンドを受信中であることを示す状態である。
【0045】
受信状態Aのときに、0x0a(改行)や0x20〜0x7e(ASCII文字印刷)のような通常コマンドを受信すると、受信状態Aに移行する。
一方、受信状態Aのときに、リアルタイムコマンドの先頭の指令データ0x10を受信すると、受信状態Bに移行する。
受信状態Bのときに、0x14を受信すると受信状態Cに移行する。
受信状態Cのときに、0x02を受信すると受信状態Dに移行する。
受信状態Dのときに、0x01を受信すると受信状態Eに移行する。
受信状態Eのときに、0x00、0x01〜0x09、0xf0、0xf1〜0xf9のいずれかを受信すると、受信状態Aに移行するとともに、後述する電源停止許可処理を実行する。
【0046】
この状態遷移図は、ROM208内に記憶しておいてもよいし、プログラムの形式で表現してもよい。
【0047】
これらの状態遷移は、通常コマンドやリアルタイムコマンドの種類に応じて変更することができ、変更した実施形態も本発明の範囲に含まれる。たとえば、受信状態B〜Eで、上記の指令データ以外のデータを受信した場合には、同様の図示しない受信状態に移行したり、移行に伴う処理を実行したり、受信状態Aに移行するように、状態遷移を定義することができる。
【0048】
状態遷移と、これに伴う処理とを実行したら、受信した1バイトの指令データを受信バッファに記憶させ(ステップS304)、本処理を終了する。
(電源停止許可処理)
【0049】
図5は、印刷装置102で実行される電源停止許可処理の制御の流れを示すフローチャートである。
【0050】
まず、CPU201は、指定されたパラメータ(0x00、0x01〜0x09、0xf0、0xf1〜0xf9のいずれか)の値を、RAM207内のパラメータ格納領域に記憶する(ステップS501)。
【0051】
さらに、現在の時刻をRAM207内に設けられた電源停止許可時刻領域に記憶する(ステップS502)。この「現在時刻」は、印刷装置102がリアルタイムクロックを備えている場合は、これら取得することができる。また、電源をオンにした時点からの経過時間を「現在時刻」としてもよい。この場合は、所定のクロック数ごとにカウント値が増加するカウンタの値を「現在時刻」とする。
【0052】
次に、当該パラメータの値を調べる(ステップS503)。パラメータの値が0x00である場合(ステップS502:0x00)、後述する電源停止処理を実行する(ステップS504)。これにより、印刷装置102への電源供給が停止されるので、本処理は終了する。
【0053】
一方、パラメータの値が0xf0である場合(ステップS503:0xf0)、印刷装置102が、直ちに電源をオフにしてもよい状態か否かを調べる(ステップS505)。直ちにオフにしてもよい状態として、たとえば、「受信バッファとラインバッファに格納された指令データはすべて処理済みである」か否か、のような条件を採用することができる。これらの条件については、後述する電源停止においてさらに詳細に説明する。
【0054】
なお、受信バッファに電源オフコマンドの先頭部分の指令データの先頭部分0x100x140x020x01が記憶されているだけの場合は、「すべて処理済み」として扱う。
【0055】
電源をオフにしてもよい状態の場合(ステップS505:Yes)、ステップS504に進み、後述する電源停止処理を実行する。
【0056】
電源をオフにすることができない状態の場合(ステップS505:No)、その旨をインターフェース206を介してホスト装置103に送信し(ステップS506)、RAM207内のパラメータ格納領域に0xffを記憶して(ステップS507)、本処理を終了する。送信のフォーマットについては、後述する電源停止処理でまとめて説明する。
【0057】
なお、ステップS507において0xffを選択したのは、指定されるパラメータの値としてありえないものだからである。また、この値は、印刷装置102に電源を投入したときに、パラメータ格納領域に初期値として記憶される値である。この値は、電源供給停止の禁止を表す。
【0058】
パラメータの値がこれら以外である場合(ステップS503:その他)、本処理を直ちに終了する。この場合、電源の停止は、後述する通常処理の過程で行われる。
(電源停止処理)
【0059】
図6は、印刷装置102で実行される電源停止処理の制御の流れを示すフローチャートである。
【0060】
まず、CPU201は、動作ランプ210を点滅させ(ステップS601)、電源停止処理を開始したことをユーザに通知する。
【0061】
次に、CPU201は、印刷機構205の印刷ヘッドのメンテナンス処理を実行する(ステップS602)。メンテナンス処理では、最後に印刷ヘッドを移動させるキャリッジを所定の位置に移動させてロックする。
【0062】
ついで、CPU201は、フラッシュEEPROM212に印刷装置102の各種設定値、インクの使用量や残量、印刷ページ数、行数、文字数などの各種カウント値、プリンタの状態などを保存する(ステップS603)。
【0063】
さらに、CPU201は、動作ランプ210を点灯させ(ステップS604)、電源停止処理の主要部分が終了したことをユーザに通知する。
【0064】
この後、CPU201は、インターフェース206を介して、ホスト装置103に、電源停止処理の主要部分が終了し、印刷装置102本体の電源を所定時間経過後(たとえば10秒)にオフにする旨と、ステップS602において調査した結果と、を合わせて通知する(ステップS605)。通知の際には、たとえば以下のようなデータを送信する。
【0065】
・0x3b0x300x00 正常に電源停止処理の主要部が終了したことを表す。
・0x3b0x0*0x00 電源停止処理に何らかの異常があったことを表す。
【0066】
0x3bは、ステータス通知のデータ列が始まるを表すヘッダであり、0x00は、ステータス通知のデータ列が終わることを表すフッタである。
【0067】
0x3b0x0*0x00の形式のデータは、前述したステップS506においても使用される。0x0*の*部分は、0以外の値が入る4ビット分の領域であり、以下の4種類の状態をこのビット列で表現する。
【0068】
・印刷ヘッドのクリーニングの途中で電源オフコマンドを受信した、か否か。
・受信バッファに未処理の指令が残っている、もしくは、ラインバッファに展開されたまま、まだ印刷していない印刷イメージが残っている、か否か。
・紙詰まりなどの異常が発生している、か否か。
・オフライン状態のときに電源オフコマンドを受信した、か否か。
【0069】
最後に、CPU201は、電源コントローラ203により、印刷装置102に対する電源供給を停止させる(ステップS606)。電源コントローラ203は、所定時間経過後に印刷装置102に対する電源供給を停止する。
【0070】
このように、ホスト装置103から送信された電源オフコマンドによって印刷装置102の電源をオフにすることができるため、ユーザは、主スイッチ204を操作する必要はない。業務形態によっては、主スイッチ204は常にオン(クローズ)の状態にしておき、副スイッチ211は使用しない(覆いをつけてユーザが操作できないようにする)などの実施態様を採用することができる。
【0071】
また、リアルタイムコマンドとして電源オフコマンドを実装しているため、パラメータとして0x00を選択した場合には、印刷装置102がオフライン状態(通常処理が待機されている状態)であっても電源をオフにすることができる。
【0072】
一方で、印刷装置102が電源オフコマンドを受信した時点の状況がホスト装置103で把握できるため、たとえば、紙詰まりで電源をオフにしてしまった場合や、何らかの理由で印刷ができなかったデータがある場合に、適切な対応をとることができる。
【0073】
なお、本実施形態では、上述のように、状態遷移によりリアルタイムコマンド等の解釈を行うが、1バイト受信した指令データを受信バッファに格納してから、受信バッファを走査して、リアルタイムコマンドか否かを検出し、リアルタイムコマンドが発見されたらその処理を実行する形態を採用してもよい。
(通常処理)
【0074】
印刷装置102で実行される通常処理は、通常の印刷装置で実行される処理と同様である。図7は、このような通常処理の制御の流れを示すフローチャートである。以下、概説する。
【0075】
通常処理では、まず、CPU201は、RAM207内の受信バッファに指令データが記憶されているか否かを調べる(ステップS701)。
【0076】
受信バッファに指令データが記憶されている場合(ステップS701:Yes)、その指令データを読み出し(ステップS702)、指令データの種類を調べる(ステップS703)。
【0077】
なお、ステップS702において指令データを読み出したら、受信バッファの状態を更新して、次回にステップS702に至ったときに、次の指令データが読み出せるようにする必要がある。
【0078】
通常処理では、受信バッファから順に指令データを読み出し、受信割り込み処理では、受信バッファへ順に指令データを格納する。したがって、所定のサイズの受信バッファを有効に利用するためには、キューやリングバッファの形式で受信バッファを実装することが望ましい。
【0079】
指令データがリアルタイムコマンドである場合(ステップS703:リアルタイムコマンド)、ステップS701に戻る。当該コマンドに対応する処理は、すでに受信割り込み処理の中で実行済みだからである。
【0080】
指令データが通常コマンドである場合(ステップS703:通常コマンド)、その指令データに対応する処理を実行して(ステップS704)、ステップS601に戻る。
【0081】
一方、受信バッファに指令データが記憶されていない場合(ステップS701:No)、CPU201は、RAM207のパラメータ格納領域に記憶された値の種類を調べる(ステップS710)。値が0xffである場合(ステップS710:0xff)、本実施形態では、電源オフコマンドが指定されていないことになるため、受信バッファに何らかの値が格納されるまで待機し(ステップS711)、所定の時間待機したら、あるいは、受信割り込みなどを契機として、ステップS701に戻る。
【0082】
一方、値が0x01〜0x09である場合(ステップS710:No)、本実施形態では、所定時間内(それぞれ1分〜9分以内)に必ず電源オフすべきことが指定されていることになる。
【0083】
そこで、CPU201は、現在の時刻を取得し(ステップS712)、当該時刻とステップS502においてRAM207内に格納された電源停止許可時刻とを比較し、所定時間が経過しているか否かを調べる(ステップS713)。
【0084】
経過していない場合(ステップS713:No)、前述した電源停止処理を実行する(ステップS714)。一方、経過してしまった場合(ステップS713:Yes)も、前述の電源停止処理を実行するが(ステップS715)、ステップS605において、以下のようなフォーマットのデータをホスト装置103へ送信する。
【0085】
・0x3b0x1*0x00 所定時間が経過しても電源停止処理が開始されなかったため、強制的に電源停止処理を開始した。
【0086】
なお、*部分には、上述のものと同じように、印刷装置のステータスを付加する。
【0087】
一方、値が0xf1〜0xf9である場合(ステップS710:No)、本実施形態では、所定時間内(それぞれ1分〜9分以内)にできるようであれば電源オフすべきことが指定されていることになる。
【0088】
そこで、CPU201は、現在の時刻を取得し(ステップS720)、当該時刻とステップS502においてRAM207内に格納された電源停止許可時刻とを比較し、所定時間が経過しているか否かを調べる(ステップS721)。
【0089】
経過していない場合(ステップS721:No)、前述した電源停止処理を実行する(ステップS722)。一方、経過してしまった場合(ステップS721:Yes)、RAM207内のパラメータ格納領域に0xffを記憶させて電源供給停止を禁止し(ステップS723)、以下のようなフォーマットのデータをホスト装置103へ送信して(ステップS724)、本処理を終了する。
【0090】
・0x3b0x200x00 所定時間が経過しても電源停止処理が開始されなかったため、電源停止処理を禁止した。
【0091】
このように、ホスト装置103が指定したパラメータによって、きめ細かく印刷装置102の電源供給停止を管理することができる。
【0092】
図8は、ステップS605における通常コマンドの処理(ステップS605)の詳細を示すフローチャートである。
【0093】
まず、指令データの種類を調べる(ステップS761)。指令データが0x20〜0x7eである場合(ステップS761:ASCII)、そのデータに対応するフォントの定義をROM208から読み出し(ステップS762)、その定義を印刷イメージとしてRAM207内のラインバッファに展開する(ステップS763)。
【0094】
さらに、ラインバッファが1行分たまったか否かを判断し(ステップS764)、1行分たまっていれば(ステップS764:Yes)、そのラインバッファに展開された印刷イメージにしたがって、印刷機構205を駆動して、文字または図形を印刷する(ステップS765)。
【0095】
ついで、クリーニング処理を行う必要があるか否かを判断し(ステップS766)、行う必要がある場合は、印刷機構205の印刷ヘッドのクリーニング処理を行う(ステップS767)。印刷ヘッドのクリーニング処理は、インクの吐出やインクの吸い上げなど、各種の公知の技法を用いることができる。
【0096】
クリーニング処理を行う必要があるか否かの判断には、たとえば以下のような基準を用いることができる。
【0097】
・前回クリーニング処理を行ってからの経過時間。
・前回クリーニング処理を行ってからのインクの使用量。
・前回印刷を行ってから今回印刷を行うまでの経過時間。
【0098】
一方、ラインバッファが1行分たまっていなければ(ステップS764:No)、ステップS766に進んで、必要があればクリーニング処理を行う。
【0099】
一方、指令データが0x0aである場合(ステップS761:LF)、ステップS765に進んで、現在のラインバッファの内容を印刷し、必要があればクリーニング処理を行う。
【0100】
ここでは、通常コマンドが1バイト単位のものである実施形態をあげて説明したが、通常コマンドが複数バイトからなるような実施形態を採用してもよい。
【0101】
この場合、ステップS702における指令データの読み出しは、1バイトづつの読み出しとして受信割り込み処理におけるような状態遷移を行ってもよいし、指令データのサイズを解釈しながら順次読み出すような形態を採用してもよい。たとえば、画像イメージの印刷指令では、画像イメージ全体のサイズを示す情報が指令データの中に埋め込まれているため、CPU201は、まず、先頭の所定バイト数の指令データを見て画像イメージのサイズを調べてから、そのサイズだけ受信バッファからイメージデータを繰り返して読み出すことになる。
(ホスト装置の実施形態)
【0102】
図9は、本発明の印刷システム101におけるホスト装置103の概要構成を示す模式図である。
【0103】
ホスト装置103の制御は、CPU801が行う。ホスト装置103は、CPU801によって制御される電源コントローラ802を備え、これがホスト装置103の各部に電源を供給するほか、印刷装置102にも電源コネクタ811を介して電源を供給することができる。なお、ホスト装置103内の各部への電源供給線は理解を容易にするため図示を省略してある。
【0104】
ホスト装置103は、ユーザからの指示入力をキーボードやマウスなどの入力装置803で受け付け、この指示入力をCPU801が解釈して処理を行い、解釈した結果をCRT(CathodeRayTube)や液晶ディスプレイなどの表示装置804に表示する。また、表示装置804には、印刷装置の状況を表示して、ユーザに通知することができる。
【0105】
また、指示入力にしたがって、各種のデータをハードディスクやフロッピーディスクなどの外部記憶装置805に記憶したり、更新したり、消去したりすることができる。
【0106】
さらに、指示入力にしたがって、インターフェース810を介して印刷装置102へ指令データを送信して、指示入力や外部記憶装置805に記憶された情報に対応する文字や図形を印刷させることができる。
【0107】
また、CD−ROMドライブ806などの読取装置により、配布されたアプリケーションプログラムをインストールすることができる。
【0108】
CPU801は、一時的な作業を行うための記憶領域として、RAM807を使用する。また、電源投入直後に実行されるIPL(InitialProgramLoader)は、ROM809に記憶されており、CPU801は、IPLを実行することにより、外部記憶装置805やCD−ROMドライブ806に装着されたCD−ROMなどからOS(OperatingSystem)やアプリケーションプログラムをRAM807にロードして実行する。
【0109】
ここで、インターフェース810は、送信部および受信部として機能し、表示装置804は、CPU801と共働して通知部として機能する。
【0110】
また、外部記憶装置805やCD−ROMドライブ806に装着されたCD−ROMは、本発明の情報記録媒体として機能する。
【0111】
図10は、ホスト装置103に対してユーザが作業の終了の指示入力を入力装置803から入力した際に実行される作業終了処理の流れを示すフローチャートである。
【0112】
まず、ホスト装置103は、最後の印刷指令として印刷装置102に対し0x0a(改行)を送信する(ステップS901)。これにより、印刷装置102は、ラインバッファ内にデータが残っていれば、これをすべて印刷することができる。なお、0x0a(改行)のほかに、改ページ(0x0c)やn行改行(0x1b0x64n)などのコマンドを送信してもよい。
【0113】
次に、印刷装置102に対して、現在の印刷状態を知らせる旨の通常コマンドを送信し(ステップS902)、返事が戻ってくるまで待機する(ステップS903)。現在の印刷状態を知らせる旨の通常コマンドとしては、たとえば、以下のようなものを使うことができる。
【0114】
・0x1d0x720x01
この通常コマンドを受信した印刷装置102は、上記0x0a(改行)に基づいて印刷機構205の駆動をし、これによる印字が完了してから、完了した旨の返事を返す。
【0115】
完了した旨の返事が戻って来たら、印刷装置102に対して、電源オフコマンドを送信して(ステップS904)、返事が戻ってくるまで、もしくは、所定経過時間(前述の通り、たとえば10秒)が経過するまで待機する(ステップS905)。戻ってくる返事は、上述のように、以下のようなデータ列である。
【0116】
・0x3b0x300x00
・0x3b0x0*0x00
これらのデータ列のフォーマットは、実施態様に応じて適宜選択することができ、これらフォーマットを変更した実施形態も本発明の範囲に含まれる。
【0117】
ついで、所定時間内に返事が戻ってきたか否かを判断し(ステップS906)、返事が戻ってきた場合(ステップS906:Yes)、その返事を吟味する(ステップS907)。返事が正常終了である場合(ステップS907:正常)、すなわち、返事が0x3b0x300x00の形であった場合、ホスト装置103本体の動作中アプリケーションとOSを終了させてから(ステップS908)、電源コントローラ802によりホスト装置103に対する電源供給を停止させる(ステップS909)。
【0118】
一方、返事が異常終了である場合(ステップS907:異常)、すなわち、返事が0x3b0x0*0x00の形であった場合、その返事に対応するメッセージを表示装置804に表示してユーザに通知し(ステップS910)、このまま作業終了処理を続行するか否かを問い合わせる(ステップS911)。
【0119】
続行する旨の指示入力があった場合(ステップS911:Yes)、ステップS908に進み、続行しない旨の指示入力があった場合(ステップS911:No)、本処理を終了する。
【0120】
一方、所定の時間内に返事が戻ってこなかった場合(ステップS906)、その旨のメッセージを表示装置804に表示してユーザに通知し(ステップS912)、ステップS911に進む。
【0121】
連動電源によりホスト装置103から印刷装置102に対して電源が供給されている場合は、ここで印刷装置102全体に対する電源もオフになる。
【0122】
上記のような制御の流れのほかの時点で、所定時間内の電源の供給停止をパラメータとして選択した場合、印刷装置102からは、印刷装置102のステータスの報告として、以下のようなデータ列が送信されてくることがある。
【0123】
・0x3b0x300x00
・0x3b0x1*0x00
・0x3b0x200x00
これらのデータ列を印刷装置102から受信する場合は、ホスト装置103から電源オフコマンドを送信した後である。ホスト装置103は、これらのデータ列により印刷装置102の状態を知ることができ、ユーザに適宜これらの情報を通知することができる。
(第2の実施形態)
【0124】
本実施形態は、主要な部分については上述の実施形態と同様であるが、電源停止処理の詳細が異なる。以下説明する。
【0125】
上述の実施形態では、電源停止処理により、印刷装置102に対する電源供給がオフにされたが、本実施形態の電源停止処理では、以下のような省電力モードに移行することにより、電源停止処理のかわりとする。
【0126】
・印刷機構に対する電源供給を停止する。
・CPU201のクロックを下げる。あるいは停止する。
【0127】
これらの手法のいずれかを選択してもよいし、両方を使用してもよい。これらの手法を上述の電源停止処理のステップS606のかわりに使用する。
【0128】
なお、この際に、ステップS604における動作ランプ210の表示色を変更したり、常時点灯ではなく間欠点灯として現在省電力モードであることを示すようにしてもよい。したがって、本実施形態では、動作ランプ210は、表示部として機能する。
【0129】
省電力モードから通常モードへの復帰は、副スイッチの操作によってCPU201に割り込みをかけることによってもよいし、ホスト装置103からの指令データによってもよい。
【0130】
また、省電力モードへ移行した旨や、移行した省電力モードの情報を、電源オフコマンド受信時の印刷装置102の状態情報としてホスト装置103に送信することもできる。
(第3の実施形態)
【0131】
本実施形態は、主要な部分については、上述の実施形態と同様であるが、電源停止処理の処理の詳細が異なる。以下説明する。
【0132】
上述の実施形態では、受信割り込み処理の状態遷移E→Aの際にかならずステップS601〜S606の電源停止処理を実行したが、本実施形態では、ステップS601を実行する前に、ディップスイッチ209の設定を調べる。
【0133】
ディップスイッチ209の所定のスイッチが第1の状態(たとえばON)になっている場合には、ステップS601〜S606の電源停止処理を実行する。
【0134】
一方第2の状態(たとえばOFF)になっている場合には、ステップS601〜S506の電源停止処理は実行せずに、そのままステップS304に戻る。この際に、ホスト装置103に対しては、ディップスイッチ209の設定に基づき、印刷装置102の電源の停止処理は実行しなかった旨を状態情報として送信する。
【0135】
本実施形態では、店舗などの業務形態に応じてディップスイッチ209の設定により、ホスト装置103から送信された電源オフコマンドに対応するか否かを決めることができる。また、対応しない場合に、ホスト装置103がその旨を知ることができる。
(第4の実施形態)
【0136】
本実施形態は、主要な部分については、上述の実施形態と同様であるが、印刷装置102とホスト装置103とが一体に構成されている点が異なる。すなわち、本印刷システム101が一体の装置として実現される。このような印刷システム101は、たとえばPOS端末として使用することができる。
【図面の簡単な説明】
【0137】
【図1】本発明の印刷システムの実施形態の概要構成を示す模式図。
【図2】本発明の印刷装置の実施形態の概要構成を示す模式図。
【図3】本発明の印刷装置で実行される割り込み処理の制御の流れを示すフローチャート。
【図4】本発明の印刷装置の受信状態の遷移を示す状態遷移図。
【図5】本発明の印刷装置で実行される電源停止許可処理の制御の流れを示すフローチャート。
【図6】本発明の印刷装置で実行される電源停止処理の制御の流れを示すフローチャート。
【図7】本発明の印刷装置で実行される通常処理の制御の流れを示すフローチャート。
【図8】本発明の印刷装置で実行される通常コマンド処理の制御の流れを示すフローチャート。
【図9】本発明のホスト装置の概要構成を示す模式図。
【図10】本発明のホスト装置で実行される作業終了処理の制御の流れを示すフローチャート。
【符号の説明】
【0138】
101 印刷システム
102 印刷装置
103 ホスト装置
104 通信線
105 電源供給線
201 CPU
202 電源供給コネクタ
203 電源コントローラ
204 主スイッチ
205 印刷機構
206 インターフェース
207 RAM
208 ROM
209 ディップスイッチ
210 動作ランプ
211 副スイッチ
212 フラッシュEEPROM
801 CPU
802 電源コントローラ
803 入力装置
804 表示装置
805 外部記憶装置
806 CD−ROMドライブ
807 RAM
809 ROM
810 インターフェース
811 電源コネクタ

【特許請求の範囲】
【請求項1】
ホスト装置に接続された印刷装置であって、
前記ホスト装置が送信した指令を受信する指令受信部と、
前記受信した指令が電源オフコマンドである場合、当該印刷装置の停止処理を行う電源停止処理部と、
前記受信した指令を記憶する指令格納部と、
前記受信した指令を順に読み出し、該読み出した指令が印刷指令である場合、該印刷指令に対応する印刷動作を行い、前記読み出した指令が状態通知コマンドである場合、前記ホスト装置に当該印刷装置内部の印刷データを全て印刷した旨の通知を行う指令処理部と、
を備え、
前記電源停止処理部は、前記停止処理として、当該印刷装置の電源供給を停止して良いかどうかを判断する電源停止許可処理と、当該印刷装置の電源供給を停止する電源停止処理とを行い、該電源停止処理は、前記電源停止許可処理において、当該印刷装置の電源供給を停止して良いと判断された場合、キャリッジに搭載された印刷ヘッドを所定の位置に移動してロックし、当該印刷装置の各種設定値、各種カウント値及び当該印刷装置の状態を設定記憶部に記憶し、前記ホスト装置に電源停止処理の主要部分が終了した旨の通知を送信し、該送信の所定時間後に当該印刷装置の電源供給を停止することを特徴とする印刷装置。
【請求項2】
ホスト装置に接続された印刷装置の制御方法であって、
前記ホスト装置が送信した指令を受信する指令受信工程と、
前記受信した指令が電源オフコマンドである場合、当該印刷装置の停止処理を行う電源停止処理工程と、
前記受信した指令を指令格納部に格納する指令格納工程と、
前記受信した指令を順に読み出し、該読み出した指令が印刷指令である場合、該印刷指令に対応する印刷動作を行い、前記読み出した指令が状態通知コマンドである場合、前記ホスト装置に当該印刷装置内部の印刷データを全て印刷した旨の通知を行う指令処理工程と、
を備え、
前記電源停止処理工程は、前記停止処理として、当該印刷装置の電源供給を停止して良いかどうかを判断する電源停止許可処理と、当該印刷装置の電源供給を停止する電源停止処理とを含み、該電源停止処理は、前記電源停止許可処理において、当該印刷装置の電源供給を停止して良いと判断された場合、キャリッジに搭載された印刷ヘッドを所定の位置に移動してロックし、当該印刷装置の各種設定値、各種カウント値及び当該印刷装置の状態を設定記憶部に記憶し、前記ホスト装置に電源停止処理の主要部分が終了した旨の通知を送信し、該送信の所定時間後に当該印刷装置の電源供給を停止することを特徴とする印刷装置の制御方法。
【請求項3】
ホスト装置に接続された印刷装置の電源オフ制御方法であって、
ユーザによって作業終了を指示された前記ホスト装置から最後の印刷指令を受信して、当該印刷装置内部の印刷データを全て印刷する印刷指令受信・全印刷工程と、
前記ホスト装置から状態通知コマンドを受信する状態通知コマンド受信工程と、
前記状態通知コマンドを受信して、前記ホスト装置に当該印刷装置内部の印刷データを全て印刷したかどうかの通知を送信する印刷完了通知送信工程と、
前記印刷完了通知送信工程において、前記ホスト装置に当該印刷装置内部の印刷データを全て印刷した旨の通知を送信した後、前記ホスト装置から電源オフコマンドを受信する電源オフコマンド受信工程と、
前記ホスト装置に電源停止処理の主要部分が終了したかどうかの通知を送信する電源停止処理主要部分終了通知送信工程と、
前記電源停止処理主要部分終了通知送信工程において、前記ホスト装置に前記電源停止処理の主要部分が終了した旨の通知を送信した後、当該印刷装置の電源供給を停止する印刷装置電源供給停止工程と、
を備えることを特徴とする印刷装置の電源オフ制御方法。
【請求項4】
印刷装置に接続されたホスト装置による印刷装置の電源オフ制御方法であって、
ユーザの作業終了の指示により、前記印刷装置へ最後の印刷指令を送信して、前記印刷装置内部の印刷データを全て印刷させる最後の印刷指令送信工程と、
前記印刷装置へ状態通知コマンドを送信する状態通知コマンド送信工程と、
前記印刷装置から該印刷装置内部の印刷データを全て印刷したかどうかの通知を受信する印刷完了通知受信工程と、
前記印刷装置から該印刷装置内部の印刷データを全て印刷した旨の通知を受信した場合、前記印刷装置に電源オフコマンドを送信する電源オフコマンド送信工程と、
前記印刷装置から電源停止処理の主要部分が終了したかどうかの通知を受信する電源停止処理主要部分終了通知受信工程と、
前記印刷装置から前記電源停止処理の主要部分が終了した旨の通知を受信した場合、前記ホスト装置の電源供給を停止するホスト装置電源供給停止工程と、
を備えることを特徴とするホスト装置による印刷装置の電源オフ制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2007−22090(P2007−22090A)
【公開日】平成19年2月1日(2007.2.1)
【国際特許分類】
【出願番号】特願2006−244482(P2006−244482)
【出願日】平成18年9月8日(2006.9.8)
【分割の表示】特願平11−280816の分割
【原出願日】平成11年9月30日(1999.9.30)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.フロッピー
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】