(57)【特許請求の範囲】
【請求項１】
プリンタの制御方法であって、
衝撃検出待ちコマンドを受信する第１工程と、
前記衝撃検出待ちコマンドに基づき、衝撃を検出可能な衝撃検出待ち状態に移行する第２工程と、
前記衝撃検出待ち状態において所定の衝撃を検出したことを条件として、所定の処理を実行する第３工程を行うことを特徴とするプリンタの制御方法。
【請求項２】
請求項１に記載のプリンタの制御方法において、
前記第３工程における前記所定の衝撃は所定回数の衝撃であることを特徴とするプリンタの制御方法。
【請求項３】
請求項１または２に記載のプリンタの制御方法において、
前記第３工程では、前記衝撃検出待ち状態において所定の衝撃を検出したことを条件として、受信した印刷データの印刷キャンセル処理を行うことを特徴とするプリンタの制御方法。
【請求項４】
請求項１ないし３のいずれかの項に記載のプリンタの制御方法において、
前記第２工程では、前記衝撃検出待ちコマンドに基づき、所定の処理の実行を保留して前記衝撃検出待ち状態に移行し、
前記第３工程では、前記衝撃検出待ち状態において所定の衝撃を検出したことを条件として、前記第２工程において保留した処理を実行することを特徴とするプリンタの制御方法。
【請求項５】
請求項４に記載のプリンタの制御方法において、
前記第２工程において、印刷開始処理、または、印刷用紙の自動切断処理のいずれかの実行を保留することを特徴とするプリンタの制御方法。
【請求項６】
請求項１ないし５のいずれかの項に記載のプリンタの制御方法において、
前記第１工程の前に、前記所定の衝撃を検出するための検出閾値または／および検出回数値を受信して記憶することを特徴とするプリンタの制御方法。
【請求項７】
衝撃検出部および制御部を備えたプリンタであって、
前記制御部は、衝撃検出待ちコマンドを受信した場合に、前記衝撃検出部による衝撃検出待ち状態に移行し、当該衝撃検出待ち状態において前記衝撃検出部が所定の衝撃を検出したことを条件として、所定の処理を実行することを特徴とするプリンタ。
【請求項８】
請求項７に記載のプリンタにおいて、
前記所定の衝撃は、予め設定された検出閾値以上の衝撃または／および予め設定された回数の衝撃であり、
記憶部を有し、当該記憶部に、前記検出閾値または／および前記回数を記憶することを特徴とするプリンタ。
【請求項９】
請求項７または８に記載のプリンタにおいて、
前記制御部は、前記衝撃検出待ち状態において所定の衝撃を検出したことを条件として、受信した印刷データの印刷キャンセル処理を行うことを特徴とするプリンタ。
【請求項１０】
請求項７ないし９のいずれかの項に記載のプリンタにおいて、
前記制御部は、印刷開始を保留して前記衝撃検出待ち状態に移行し、前記衝撃検出待ち状態において所定の衝撃を検出したことを条件として、前記保留した印刷を開始することを特徴とするプリンタ。
【請求項１１】
請求項７ないし１０のいずれかの項に記載のプリンタにおいて、
印刷用紙の印刷済み部分を排出する排出経路と、当該排出経路に設けられた切断機構を有し、
前記制御部は、前記印刷用紙への前記切断機構の作動を保留して前記衝撃検出待ち状態に移行し、前記衝撃検出待ち状態において所定の衝撃を検出したことを条件として、前記切断機構を作動させることを特徴とするプリンタ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷データの入力後にプリンタ本体に所定の操作を行い、当該印刷データの印刷キャンセルや印刷保留などの各種処理を行うことが可能なプリンタおよびその制御方法に関する。
【背景技術】
【０００２】
従来から、プリンタ本体に印刷キャンセルボタンなどを設けて、印刷データの受信後にこの印刷キャンセルボタンが操作された場合に、受信済み印刷データに基づく印刷の実行をキャンセルできるプリンタが提案されている。例えば、特許文献１の印刷装置では、印刷中にユーザがオペレーションパネルに設けられたキャンセルスイッチを操作すると、この操作に応じたスイッチ割り込み処理を行って印刷を中止することができる。
【０００３】
また、特許文献２には、装置ハウジングの任意の場所に与えられる打撃または衝撃を衝撃センサで検出し、検出内容に基づいて強制紙排出処理やヘッド回復処理、インク交換処理などの各種処理を実行することにより、装置本体における操作パネルや操作ボタンなどの設置数を減らした画像形成装置が提案されている。この画像形成装置では、ホスト装置からの設定命令により、予め、画像形成装置本体に、衝撃検出を行うべき機器状態と検出すべき衝撃パターン、および、当該衝撃パターンが検出されたときに実行すべき処理の内容を対応付けて記憶させておく。これにより、設定後は、ホスト装置からの命令がなくても、画像形成装置側で自動的に機器状態に対応して衝撃検出を行う。
【特許文献１】特開２００６−３２６８４１号公報
【特許文献２】特開２０００−２４６９８９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
特許文献１のようにプリンタ本体に印刷キャンセルボタンなどの操作ボタンを設けると、当該操作ボタンの上には物を置けないなど、設置上の制約が大きくなる。特に、レシートプリンタなどの業務用プリンタでは、場所を取らないようにカウンタ下の棚などに置くことがあり、このような場合に操作ボタンを押せないことがある。また、ベルトクリップでユーザの腰部分に装着して使用する携帯型のレシートプリンタなどの場合には、手探りで直感的に操作できることが望ましいが、手探りでは操作ボタンを見つけにくいため、スムーズに操作しにくいという問題点があった。また、複数の操作ボタンがあると、手探りではどの操作ボタンか判別しにくく、操作ミスが発生するなどの問題点があった。
【０００５】
特許文献２のようにユーザが装置ハウジングを叩いたことを検出して処理を行う構成では、直感的な操作を行うことができ、装置ハウジングから操作ボタンを除去することができる。しかしながら、特許文献２の画像形成装置では、予め、装置本体に、衝撃検出を行うべき装置状態および衝撃検出をトリガとして実行する処理を記憶させる必要があり、設定に手間がかかるという問題点があった。また、一旦衝撃検出を行うように設定した後は、設定した装置状態が発生すると必ず衝撃による操作を受け付ける。よって、印刷ジョブごとに衝撃検出による処理を行うかどうかを変えたり、あるいは、印刷ジョブごとに衝撃検出により行う処理の内容を変えることができないという問題点があった。
【０００６】
本発明の課題は、このような点に鑑みて、装置本体を叩くタッピング操作を衝撃検出により検知して処理を行うことができ、さらに、タッピング操作を受け付けるか否かを印刷ジョブごとに異ならせることができるプリンタおよびその制御方法を提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明のプリンタの制御方法は、
プリンタの制御方法であって、
衝撃検出待ちコマンドを受信する第１工程と、
前記衝撃検出待ちコマンドに基づき、衝撃を検出可能な衝撃検出待ち状態に移行する第２工程と、
前記衝撃検出待ち状態において所定の衝撃を検出したことを条件として、所定の処理を実行する第３工程を行うことを特徴とする。
【０００８】
また、本発明のプリンタは、
衝撃検出部および制御部を備えたプリンタであって、
前記制御部は、前記プリンタに衝撃検出待ちコマンドを受信した場合に、前記衝撃検出部による衝撃検出待ち状態に移行し、当該衝撃検出待ち状態において前記衝撃検出部が所定の衝撃を検出したことを条件として、所定の処理を実行することを特徴とする。
【０００９】
このように、本発明のプリンタの制御方法およびプリンタは、衝撃が加えられた場合にその衝撃を検出して所定の処理を行うので、当該処理を行うための操作ボタンなどをプリンタの装置本体に設ける必要がない。よって、直感的な操作が可能になり、手探りでも容易かつ正確に操作を行うことができる。また、装置本体の設置の自由度およびデザインの自由度が高まる。また、本発明では、衝撃検出待ちコマンドに基づいてプリンタが衝撃検出待ち状態になる。衝撃検出待ちコマンドを受信した時に限って衝撃検出による操作を行うことができる。よって、衝撃検出による操作を受け付けるかどうかを、印刷ジョブごとに異ならせることができる。
【００１０】
本発明のプリンタの制御方法において、前記第３工程における前記所定の衝撃は所定回数の衝撃であるとよい。このようにすると、衝撃の回数が所定の回数になった場合に限って処理を実行するので、誤操作などを抑制することができる。
【００１１】
本発明のプリンタの制御方法において、前記第３工程では、前記衝撃検出待ち状態において所定の衝撃を検出したことを条件として、受信した印刷データの印刷キャンセル処理を行うとよい。また、本発明のプリンタにおいて、前記制御部は、前記衝撃検出待ち状態において所定の衝撃を検出したことを条件として、前記印刷データの印刷キャンセル処理を行うとよい。このようにすると、印刷開始前にユーザが装置ハウジングなどを叩くだけで印刷キャンセルを行うことができる。
【００１２】
本発明のプリンタの制御方法において、前記第２工程では、前記衝撃検出待ちコマンドに基づき、所定の処理の実行を保留して前記衝撃検出待ち状態に移行し、前記第３工程では、前記衝撃検出待ち状態において所定の衝撃を検出したことを条件として、前記第２工程において保留した処理を実行するとよい。具体的には、前記第２工程において、印刷開始処理、または、印刷用紙の自動切断処理のいずれかの実行を保留するとよい。このようにすると、ユーザが装置ハウジングなどを叩くまで処理を保留することができ、ユーザの望むタイミングで処理を実行することができる。
【００１３】
本発明のプリンタにおいて、前記制御部は、印刷開始を保留して前記衝撃検出待ち状態に移行し、前記衝撃検出待ち状態において所定の衝撃を検出したことを条件として、前記保留した印刷を実行するとよい。このようにすると、ユーザが装置ハウジングなどを叩くまで印刷開始を保留することができる。
【００１４】
本発明のプリンタにおいて、印刷用紙の印刷済み部分を排出する排出経路と、当該排出経路に設けられた切断機構を有し、前記制御部は、前記印刷用紙への前記切断機構の作動を保留して前記衝撃検出待ち状態に移行し、前記衝撃検出待ち状態において所定の衝撃を検出したことを条件として、前記切断機構を作動させるとよい。このようにすると、ユーザが装置ハウジングなどを叩くまで印刷済み用紙を切り離さないようにすることができる。
【００１５】
本発明のプリンタの制御方法において、前記第１工程の前に、前記所定の衝撃を検出するための検出閾値または／および検出回数値を受信して記憶するとよい。また、本発明のプリンタにおいて、前記所定の衝撃は、予め設定された検出閾値以上の衝撃または／および予め設定された回数の衝撃であり、記憶部を有し、当該記憶部に、前記検出閾値または／および前記回数を記憶するとよい。このようにすると、衝撃検出における検出閾値や検出すべき衝撃回数を衝撃検出待ちコマンドに含めなくてもよい。また、設定により検出閾値や衝撃回数を変えることができる。さらに、ユーザが誤って軽く触れた場合などの誤操作を抑制することができる。
【発明の効果】
【００１６】
本発明では、プリンタに加えられた衝撃を検出して所定の処理を行うので、当該処理を行うための操作ボタンなどをプリンタの装置本体に設ける必要がない。よって、直感的な操作が可能になり、手探りでも容易かつ正確に操作を行うことができる。また、装置本体の設置の自由度およびデザインの自由度が高まる。また、本発明では、衝撃検出待ちコマンドに基づいて衝撃検出待ち状態になるので、衝撃検出による操作を、衝撃検出待ちコマンドを受信した時に限って行うことができ、他の印刷データに対しては衝撃検出に基づく処理を行わないようにすることができる。つまり、衝撃検出による操作の有無を、印刷データごとに異ならせることができる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の実施の形態について、図面を参照しながら説明する。
（レシートプリンタの構成）
レシートプリンタ１は、装置内部にロール紙などの記録用紙を転動可能に保持しており、ホスト装置２などから印刷データを受信すると、このロール紙に印刷を行って印刷済み部分を切断し排出するものである。図１は本実施形態のレシートプリンタのブロック図である。レシートプリンタ１は、この図に示すように、装置各部を制御する制御部１０と、制御部１０からの制御信号に応じてロール紙への印刷動作を行う印刷機構２０と、ロール紙の印刷済み部分を自動切断するオートカッタ３０（切断機構）と、レシートプリンタ１のハウジング３に加えられた衝撃を検出する衝撃センサ４０を備えている。また、レシートプリンタ１は、図示しない電源部や、ホスト装置２との通信を行うための通信部などを備えている。
【００１８】
制御部１０は、ＣＰＵなどの演算処理ユニットと、制御に必要な各種プログラムやデータを記憶しているフラッシュＲＯＭあるいはＥＥＰＲＯＭ、および、ＣＰＵなどによる処理の際にワークエリアとして機能するＲＡＭなどの記憶部を備えている。制御部１０には、ホスト装置２からのコマンドや印刷データが通信部を介して入力される。レシートプリンタ１における通信部は、無線ＬＡＮアダプタなどを用いた無線通信、あるいは、ＵＳＢケーブル、ＬＡＮケーブルなどを用いた有線通信により、ホスト装置２と接続可能に構成されている。
【００１９】
印刷機構２０は、記録ヘッドおよびその駆動機構を備えている。また、印刷機構２０は、ロール紙の未使用部分を印刷位置に移動させ、印刷済み部分を外部に送り出すための紙送り機構を備えている。印刷機構２０は、ゲートアレイなどの駆動回路および駆動モータを備えており、制御部１０からの制御信号が駆動回路に入力されると、モータ駆動電流を生成して駆動モータに供給する。駆動モータの出力は紙送り機構あるいは記録ヘッド駆動用の駆動機構などに伝達され、これにより各機構が作動する。
【００２０】
オートカッタ３０は、制御部１０からの制御信号に基づき、ロール紙の紙送り動作と連動して作動する。レシートプリンタ１のハウジング３には図示しない排紙口が形成されており、ロール紙の印刷部分は、レシートプリンタ１内に設けられた紙搬送路を通って印刷位置から排紙口側に送り出される。オートカッタ３０は、ハウジング３における排紙口の内側に配置されており、例えば、ロール紙の紙面に刃先が向くように設置されている可動刃と、この可動刃を駆動するための駆動機構と、ロール紙を挟んで可動刃とは反対側に配置されている固定刃などを備えている。可動刃は、オートカッタ３０が作動していないときは紙搬送路から後退しており、オートカッタ３０が作動開始するとロール紙の紙面に向かって前進し、固定刃との間にロール紙を挟み込んで切断する。なお、オートカッタ３０はこのような構成に限定されず、他の構成であってもよい。
【００２１】
制御部１０は、記録ヘッドが作動している間はその印刷動作に連動して紙送り機構を作動させ、ロール紙を移動させる。そして、記録ヘッドによる印刷動作が終了すると、印刷済み部分をレシートプリンタ１の外部に排出するための紙送りを行う。例えば、制御部１０は、印刷済み部分およびその後方の所定長さの余白部分が紙搬送路における可動刃の設置位置を通過したところで紙送り機構を停止させる。このとき、ロール紙の印刷済み部分はそのほとんどが排紙口からレシートプリンタ１外に出ているので、この状態でオートカッタ３０を作動させてロール紙を切断すると、切り離された印刷済み紙片は、排紙口からレシートプリンタ１の外部に落下することになる。ユーザは、オートカッタ３０による切断動作終了前に排紙口からレシートプリンタ１外に出ている部分を手で持つなどして保持すれば、印刷済み紙片を落下させずに受け取ることができる。オートカッタ３０を、ロール紙の一部を残して切断するように構成すれば、落下を防ぐことができる。
【００２２】
衝撃センサ４０は、ユーザがレシートプリンタ１のハウジング３を指で叩くなどのタッピング操作を行った場合に、このタッピング操作による衝撃を検出するためのものである。本実施形態では、ユーザによるタッピング位置をレシートプリンタ１の排紙口周辺に設定しており、衝撃センサ４０を、ハウジング３における排紙口周辺の内側面に取り付けている。衝撃センサ４０には、例えば、リードスイッチとマグネット及びスプリングを備えたものを用いることができる。ハウジング３への衝撃により衝撃センサ４０本体に所定の加速度が加わると、衝撃センサ４０内においてスプリングに連結されたマグネットが移動し、マグネットの磁界によりリードスイッチが動作して検出信号を出力する。また、衝撃時の加速度による錘の動きを圧電材料や位置センサなどにより計測し、所定の衝撃が加わったことを検出するものを衝撃センサとして用いてもよい。
【００２３】
衝撃センサ４０の検出信号は制御部１０に入力される。制御部１０は、内蔵する検出プログラムにより、衝撃センサ４０からの検出信号（加速度）が、予め設定された検出閾値（加速度閾値）を越えるものであるか否かを判定する。また、制御部１０は、予め設定された検出閾値（加速度閾値）を越える衝撃があった場合には、その回数をカウントして、予め設定された回数だけ衝撃が検出されたか否かを判定する。制御部１０は、これらの判定により、レシートプリンタ１のユーザが、所定のタッピング操作を行ったことを検知する。判定に用いられる検出閾値は、制御部１０内の記憶部に記憶されている。なお、記憶部に検出閾値および検出回数だけではなく衝撃のタイミングについても記憶させておき、予め設定された衝撃パターンで衝撃が加えられたか否かを判定してもよい。
【００２４】
制御部１０は、ホスト装置２などから検出閾値（加速度閾値）、検出回数（タッピング回数）、あるいは衝撃パターンなどの衝撃検出設定データが入力された場合に、記憶部にこの衝撃検出設定データを記憶させたり、既に記憶されている衝撃検出設定データを書き換えたりする。図２は衝撃検出を行うための検出閾値、検出回数などの設定処理のフローチャートである。制御部１０は、Ｓ１１〜Ｓ１２においてレシートプリンタ１に入力された検出閾値および検出回数を記憶部に記憶させる。本実施形態では、制御部１０は、予め設定された検出閾値以上の衝撃（加速度）を予め設定された回数以上検出した場合に、ユーザによる所定のタッピング操作が行われたと判定する。
【００２５】
（レシートプリンタの制御）
次に、上記構成のレシートプリンタ１における制御について説明する。制御部１０は、ホスト装置２などからタッピング操作待ちコマンド（衝撃検出待ちコマンド）を含む印刷データを受信し（第１工程）、その場合には、このタッピング操作待ちコマンドと共に受信した印刷データの処理の際に、図３〜図５のフローチャートに示す処理を行う。タッピング操作待ちコマンドには、例えば、タッピング操作待ち印刷キャンセルコマンド、タッピング操作待ち印刷開始コマンド、タッピング操作待ちカット動作コマンドなどがある。図３〜図５の各フローチャートは、以下の（１）〜（３）で説明するように、これらの各コマンドを受信した場合に行う処理である。
【００２６】
制御部１０は、これらの各コマンドを受信した場合には、所定のタイミングでタッピング操作待ち状態（衝撃検出待ち状態）に移行し（第２工程）、タッピング検出処理を行う。タッピング操作待ち状態では、制御部１０は、ユーザがレシートプリンタ１のハウジング３における排紙口周辺を叩くタッピング操作を予め設定された検出閾値以上の強さで予め設定された回数だけ行った場合に、衝撃センサ４０の検出信号によりそのことを検知し、予め設定されたタッピング操作が行われたと判定する。そして、制御部１０は、当該判定をトリガ信号として、これらの各コマンドと共に受信した印刷データの印刷キャンセル処理、ロール紙への印刷開始処理、および、ロール紙の印刷済み部分のオートカット処理などを実行する（第３工程）。
【００２７】
なお、レシートプリンタ１がタッピング操作待ちコマンドを含まない印刷データを受信した場合には、制御部１０は、この印刷データの処理においてはタッピング操作を反映させない。すなわち、この場合には、制御部１０は、衝撃センサ４０の検出信号に基づくタッピング操作の検出と判定を行わない。
【００２８】
（１）タッピング操作による印刷キャンセル制御
この制御は、ユーザがタッピング操作を行ったことにより印刷をキャンセルできるようにするものである。レシートプリンタ１がホスト装置２などからタッピング操作待ち印刷キャンセルコマンドを含む印刷データを受信した場合には、制御部１０は、タッピング操作待ち印刷キャンセルコマンドを確認したことにより、受信した印刷データの展開およびイメージバッファへの格納などの印刷前処理を開始すると共に、レシートプリンタ１をタッピング操作待ち状態（衝撃検出待ち状態）に移行させる。タッピング操作待ち状態では、制御部１０は、印刷前処理およびロール紙への印刷処理と並行して、図３のフローチャートにおけるＳ２１〜Ｓ２６の処理（タッピング検出処理）を行う。
【００２９】
制御部１０は、タッピング操作待ち状態に移行すると、まず、制御部１０内のワークエリアに記憶されたタッピング回数値を初期化して０にする（Ｓ２１）。続いて、衝撃センサ４０の検出信号を一定時間ごとにサンプリングし（Ｓ２２）、検出信号（加速度）が予め設定した検出閾値以上であるか否かを判定し（Ｓ２３）、検出閾値以上でない場合にはＳ２２に戻る。一方、Ｓ２３において検出信号が検出閾値以上であると判定された場合には、タッピング回数値に１を加算し（Ｓ２４）、加算後のタッピング回数値が予め設定した検出回数以上であるか否かを判定し（Ｓ２５）、検出回数以上でない場合にはＳ２２に戻る。一方、Ｓ２５においてタッピング回数値が検出回数以上であると判定された場合には、予め設定されたタッピング操作が行われたと判定し（Ｓ２６）、当該判定をトリガ信号として、印刷キャンセル処理を実行する（Ｓ２７）。制御部１０の負担を軽くするため、サンプリングする時（Ｓ２２）、割り込み処理を用いてもよい。
【００３０】
制御部１０は、Ｓ２１〜Ｓ２６のタッピング検出処理を、ロール紙への印刷が完了するまでの間、継続して行う。制御部１０は、印刷完了までの間にタッピング操作があったと判定した場合には、速やかに印刷前処理あるいはロール紙への印刷処理を中止し、印刷データの廃棄およびロール紙の印刷済み部分の排出を行う。また、タッピング操作が検出されることなく印刷が終了した場合には、制御部１０は、印刷処理の終了と同時にタッピング検出処理を終了する。
【００３１】
（２）タッピング操作による印刷開始制御
この制御は、ユーザがタッピング操作を行うまで印刷を保留しておき、タッピング操作があったときに印刷を開始するものである。レシートプリンタ１がホスト装置２などからタッピング操作待ち印刷開始コマンドを含む印刷データを受信した場合には、制御部１０は、図４のフローチャートにおけるＳ３１〜Ｓ４１の処理を行う。制御部１０は、印刷データを受信してタッピング操作待ち印刷開始コマンドを確認すると（Ｓ３１）、当該コマンドに基づいて印刷前処理あるいはタッピング検出処理を実行中であることを示すビジー信号をホスト装置２へ返す（Ｓ３２）。そして、制御部１０は、印刷データを受信バッファから読み込んで展開し、イメージバッファに格納する（Ｓ３３）。ここで、制御部１０は、印刷データの展開などの前処理が終了しても展開済み印刷データのロール紙への印刷はまだ開始せず、その実行を保留しておく。そして、タッピング待ち状態に移行してＳ３４〜Ｓ３９の処理（タッピング検出処理）を行う。
【００３２】
Ｓ３４〜Ｓ３９のタッピング検出処理は、予め設定されたタッピング操作が検出されるまで継続して行われる。Ｓ３４〜Ｓ３９の処理は、タッピング操作による印刷キャンセル制御におけるＳ２１〜Ｓ２６の処理と同一である。すなわち、制御部１０は、タッピング回数を初期化（Ｓ３４）した後、衝撃センサ４０の検出信号を一定時間ごとにサンプリングして（Ｓ３５）、予め設定した検出閾値以上であるか判定し（Ｓ３６）、検出閾値以上であった場合にはタッピング回数値に１を加算する（Ｓ３７）。そして、予め設定したタッピング回数以上であると判定された場合には（Ｓ３８：Ｙｅｓ）、予め設定されたタッピング操作が行われたと判定し（Ｓ３９）、当該判定をトリガ信号として、Ｓ３３で保留していた展開済み印刷データのロール紙への印刷処理を開始する（Ｓ４０）。印刷終了後は、制御部１０からホスト装置２に、印刷データの処理が終了したことを示すビジー解除信号（レディ信号）を返す（Ｓ４１）。
【００３３】
（３）タッピング操作によるカット動作開始制御
この制御は、ユーザがタッピング操作を行うまでオートカッタ３０のカット動作を保留しておき、タッピング操作があったときにオートカッタのカット動作を開始するものである。レシートプリンタ１がホスト装置２などからタッピング操作待ちカット動作コマンドを含む印刷データを受信した場合には、制御部１０は、図５のフローチャートにおけるＳ５１〜Ｓ６１の処理を行う。制御部１０は、印刷データを受信してタッピング操作待ちカット動作コマンドを確認すると（Ｓ５１）、まず、印刷データを受信バッファから読み込んで展開するなどの印刷前処理を行った後、ロール紙への印刷を行う（Ｓ５２）。ここで、制御部１０は、ロール紙への印刷が完了してもオートカッタ３０によるカット動作（印刷済み部分の自動切断）を開始せず、カット動作の実行を保留してタッピング待ち状態に移行する。そのため、まず、タッピング検出処理を実行中であることを示すビジー信号をホスト装置２へ返す（Ｓ５３）。そして、タッピング待ち状態に移行して、Ｓ５４〜Ｓ５９の処理（タッピング検出処理）を行う。
【００３４】
Ｓ５４〜Ｓ５９のタッピング検出処理は、予め設定されたタッピング操作が検出されるまで継続して行われる。Ｓ５４〜Ｓ５９の処理は、上記Ｓ２１〜Ｓ２６の処理、および、上記Ｓ３４〜Ｓ３９の処理と同一である。すなわち、制御部１０は、タッピング回数を初期化（Ｓ５４）した後、衝撃センサ４０の検出信号を一定時間ごとにサンプリングして（Ｓ５５）、予め設定した検出閾値以上であるか判定し（Ｓ５６）、検出閾値以上であった場合にはタッピング回数値に１を加算する（Ｓ５７）。そして、予め設定したタッピング回数以上であると判定された場合には（Ｓ５８：Ｙｅｓ）、予め設定されたタッピング操作が行われたと判定し（Ｓ５９）、当該判定をトリガ信号として、Ｓ５３で保留していたオートカッタ３０のカット動作を開始する（Ｓ６０）。これにより、レシートプリンタ１の排紙口からレシートプリンタ１外に出ていた印刷済み部分が切り離される。カット動作終了後は、制御部１０からホスト装置２に、印刷データの処理が終了したことを示すビジー解除信号を返す（Ｓ６１）。
【００３５】
（本実施形態の効果）
以上のように、本実施形態のレシートプリンタ１は、タッピング操作待ち印刷キャンセルコマンド、タッピング操作待ち印刷開始コマンド、タッピング操作待ちカット動作コマンドなどを含む印刷データを受信すると、当該コマンドを確認したことによりタッピング待ち状態に移行する。そして、衝撃センサ４０の検出信号に基づきハウジング３に所定のタッピング操作が加えられたことを検知した場合に、印刷データの印刷キャンセル処理、印刷開始処理、カット動作開始処理などを行う。すなわち、ユーザは、ハウジング３における排紙口付近などの適当な位置を指先などで叩く（タッピング）だけで、印刷キャンセル、印刷開始、カット動作開始などのレシートプリンタ１の操作を行うことができる。タッピングによる操作は手探りでも容易かつ正確に行うことができ、直感的に行うことができるので、操作性が向上し、誤操作を抑制することができる。また、タッピングによる操作を受け付けるようにすれば、レシートプリンタ１の上面や前面などに操作ボタンを設ける必要がなくなるので、設置の自由度が高まり、レシートプリンタ１の上に物を置いたりできるようになる。また、デザインの自由度が高まると共に、誤って操作ボタンを押すなどの誤操作を抑制できる。
【００３６】
本実施形態では、タッピング操作待ちコマンドを含む印刷データを受信したときに限ってタッピング検出処理を行うので、タッピング操作を受け付けるかどうかを印刷ジョブごとに異ならせることができる。また、タッピング操作の有無を判定するための検出閾値および検出回数を予め設定しておき、これらの設定値を越える衝撃を検出した場合にのみタッピング操作有りと判定するので、うっかりハウジング３に接触してしまった場合にこれをタッピング操作と判定してしまうなどの誤操作を抑制できる。
【００３７】
本実施形態では、タッピング操作待ち印刷開始コマンドを受信した場合には、タッピング操作があるまでは印刷開始を保留することができる。従って、ユーザがベルトクリップなどで携帯して使用することが多いレシートプリンタ１においては、排紙口から出てくる印刷物が外的要因によって千切れてしまうなどの事故が発生しない状況であることを確認し、印刷物を受け取れる状況を整えた上でタッピング操作を行うことができるので、確実に、且つ、完全な状態で印刷物を受け取ることができる。また、タッピング操作待ちカット動作コマンドを受信した場合には、排紙口から出てくる印刷済みのロール紙の切断をタッピング操作があるまで保留することができる。従って、ユーザは、印刷物を受け取れる状況を整えた上でタッピング操作を行うことにより、ユーザが気づかないうちにカット動作が行われて印刷物が落下して紛失してしまったり、完全な状態で受け取れないといった不具合を抑制できる。
【００３８】
（改変例）
（１）上記実施形態では、予めレシートプリンタ１に記憶させた検出閾値および検出回数を読み出してタッピング操作の有無を判定していたが、タッピング操作待ちコマンドに検出閾値および検出回数を含めても良い。このようにすれば、衝撃検出設定データを入力して記憶させる処理を行う必要がない。また、印刷ジョブごとに検出閾値および検出回数を変えることができる。また、衝撃センサ４０によっては、その感度やサンプリング周期、検出する出力パルスの長さなどを設定することもできる。
【００３９】
（２）上記実施形態は、タッピング操作待ちコマンドを１つだけ含む印刷データを受信した場合のレシートプリンタ１の制御であったが、複数のタッピング操作待ちコマンドを含む印刷データをレシートプリンタ１に送信し、タッピング操作の内容あるいはタイミングに応じて、異なる処理を行うようにしてもよい。例えば、タッピング操作待ち印刷キャンセルコマンドと、タッピング操作待ちカット動作コマンドを含む印刷データをレシートプリンタ１に送信し、制御部１０が、印刷データの展開などの前処理中および印刷用紙への印刷中にタッピング動作有りと判定した場合には印刷キャンセル処理を行う。一方、この印刷データの印刷終了時にはオートカッタ３０のカット動作を保留し、印刷終了後、タッピング操作有りと判定した場合にカット動作を行うように制御する。すなわち、１つの印刷ジョブにおいて、タッピング操作を受け付けるタイミングを複数設定しておき、タッピング操作を受け付けたタイミングに応じて、適切な処理を行うことができる。また、１つの印刷データに複数のタッピング操作待ちコマンドを含める場合には、各コマンドにそれぞれ異なるタッピング操作（回数、タイミング、衝撃パターンなどが異なるタッピング操作）を対応づけておくとよい。このようにすれば、ユーザは、実行したい処理に応じてタッピング操作を使い分けることができる。
【００４０】
（３）上記実施形態では、所定のタッピング操作有りと判定した場合に実行する処理を、印刷キャンセル、印刷開始、カット動作開始の３種類にしていたが、例えば、タッピング操作をトリガとして、印刷データの再印刷（レシートの再発行）を行ってもよい。すなわち、タッピング操作待ち再印刷コマンドを含む印刷データを受信した場合には、制御部１０は、当該印刷データの印刷および印刷済み用紙の自動切断を行った後、印刷データを破棄せずに、タッピング操作待ち状態に移行する。そして、所定のタッピング操作有りと判定した場合に、再印刷を実行する。再印刷終了後、印刷データを破棄して印刷ジョブを終了してもよいし、再度タッピング操作待ち状態に移行し、次の印刷データが入力されるまではタッピング検出処理を続けても良い。
【図面の簡単な説明】
【００４１】
【図１】本発明に係るレシートプリンタのブロック図である。
【図２】衝撃検出を行うための検出閾値、検出回数などの設定処理のフローチャートである。
【図３】タッピング操作による印刷キャンセル制御のフローチャートである。
【図４】タッピング操作による印刷開始制御のフローチャートである。
【図５】タッピング操作によるカット動作開始制御のフローチャートである。
【符号の説明】
【００４２】
１…レシートプリンタ、２…ホスト装置、３…ハウジング、１０…制御部、２０…印刷機構、３０…オートカッタ、４０…衝撃センサ
【図１】
0005018511.tif 000002
【図２】
0005018511.tif 000003
【図３】
0005018511.tif 000004
【図４】
0005018511.tif 000005
【図５】
0005018511.tif 000006