(57)【要約】【課題】サーマルプリンタでの印字結果に対する電圧ドロップの影響を抑える。【解決手段】１ライン毎に印字データとストローブ信号とをサーマルヘッド１１２に出力する印字制御回路１４０と、印字制御回路１４０が出力する印字データ中の印字オンデータ数を計数する印字オンデータ数計数回路１５１と、ヘッド電圧を検出する電圧検出回路１６１と、を備え、電圧検出回路１６１で検出されたヘッド電圧を基に設定されたストローブ信号のパルス幅を印字オンデータ数に対応付けて補正テーブルＴａに記憶させる。また、印字制御回路１４０は、印字オンデータ数計数回路１５１によって計数される印字オンデータ数に対応するストローブ信号のパルス幅を補正テーブルＴａから読み出し、印字データとこの読み出したパルス幅のストローブ信号とをサーマルヘッド１１２に出力する。【選択図】図４
2009208387.tif 000002
【特許請求の範囲】
【請求項１】
複数ドットの発熱抵抗体をライン状に配置し、前記発熱抵抗体への通電時間を決定するストローブ信号に応じて印字データを前記発熱抵抗体に出力することで前記発熱抵抗体を通電状態にして発熱させるサーマルヘッドと、
１ライン毎に印字データとストローブ信号とを前記サーマルヘッドに出力する印字制御部と、
前記印字制御部に設けられて当該印字制御部が出力する印字データ中の印字オンデータ数を計数する計数部と、
前記発熱抵抗体に印加されるヘッド電圧を検出する電圧検出部と、
前記電圧検出部で検出されたヘッド電圧を基に設定されたストローブ信号のパルス幅を前記印字オンデータ数に対応付けて記憶領域に記憶させる手段と、
を備え、
前記印字制御部は、前記記憶領域から前記計数部によって計数される印字オンデータ数に対応するストローブ信号のパルス幅を読み出し、印字データと当該読み出したパルス幅のストローブ信号とを前記サーマルヘッドに出力する、
サーマルプリンタ。
【請求項２】
複数ドットの発熱抵抗体をライン状に配置し、前記発熱抵抗体への通電時間を決定するストローブ信号に応じて印字データを前記発熱抵抗体に出力することで前記発熱抵抗体を通電状態にして発熱させるサーマルヘッドと、
１ライン毎に印字データとストローブ信号とを前記サーマルヘッドに出力する印字制御部と、
前記印字制御部に設けられて当該印字制御部が出力する印字データ中の印字オンデータ数を計数する計数部と、
前記発熱抵抗体に印加されるヘッド電圧を検出する電圧検出部と、
印字オンデータ数を所定数にした印字データとストローブ信号とを前記印字制御部に出力させ、その際に前記電圧検出部によって検出されるヘッド電圧を取得する手段と、
前記取得されたヘッド電圧と印字オンデータ数がゼロである場合におけるヘッド電圧の理論値である基準電圧とに基づいて各印字オンデータ数におけるヘッド電圧を求め、前記基準電圧を当該求めたヘッド電圧で除した値の自乗数に印字オンデータ数がゼロである場合におけるストローブ信号の基準パルス幅を乗じた値を各印字オンデータ数におけるパルス幅として求め、各印字オンデータ数と当該求めたストローブ信号のパルス幅とを対応付けて記憶領域に記憶させる手段と、
を備え、
前記印字制御部は、前記記憶領域から前記計数部によって計数される印字オンデータ数に対応するストローブ信号のパルス幅を読み出し、印字データと当該読み出したパルス幅のストローブ信号とを前記サーマルヘッドに出力する、
サーマルプリンタ。
【請求項３】
前記印字制御部は、印字データとストローブ信号とを１ライン毎に複数の通電単位に分割して出力し、
前記補正テーブルは、通電単位毎のパルス幅を記憶する、
請求項１又は２記載のサーマルプリンタ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、レシートプリンタ等のサーマルプリンタに関する。
【背景技術】
【０００２】
従来、ライン状に配置された複数ドットの発熱抵抗体を有するサーマルヘッドによって主走査方向に画像を形成しつつ、主走査方向と直交する方向である副走査方向への用紙搬送を行うことで、用紙上に印字を行うサーマルプリンタがある（例えば、特許文献１〜３参照）。
【０００３】
このようなサーマルプリンタは、レシートを発行するレシートプリンタとして使用されることがある。レシートプリンタとしてのサーマルプリンタは、ＰＯＳ端末やＥＣＲの本体に組み込まれて使用される形態が日本国内を中心に主流となっている。このようなサーマルプリンタを、以下、組込みタイプのサーマルプリンタと呼ぶ。また、組込みタイプのサーマルプリンタとは別に、日本国外向けを中心として、ＰＯＳ端末の本体から分離された形態のサーマルプリンタもある。以下、このようなサーマルプリンタを、分散タイプのサーマルプリンタと呼ぶ。
【０００４】
【特許文献１】特開平６−１１５１３９号公報
【特許文献２】特開平１１−２７７７８３号公報
【特許文献３】特開２０００−３２６５３９公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、サーマルプリンタについては、１ライン印字に際しての印字データ中の印字オンデータ数が多い場合には、電源の供給能力や電源からサーマルヘッドへの配線長の影響によって、電圧ドロップが発生するという問題がある。
【０００６】
つまり、サーマルプリンタは、１ラインの印字オンデータ数が少ない場合には、電圧ドロップが小さいため十分な濃度の印字結果を得ることができるものの、１ラインの印字オンデータ数が多い場合には、電圧ドロップが大きくなり濃度が薄い印字結果となってしまうことがある。そのため、印字オンデータ数の多少が混在すると、印字結果に濃度ムラが発生し、その見栄えは非常に悪いものとなってしまう。
【０００７】
そこで、従来、電圧ドロップの影響を抑えるための技術として、印字動作中にリアルタイムで取得した発熱抵抗体の電圧と基準となる電圧との比較結果から発熱抵抗体に出力するストローブ信号のパルス幅を補正する技術が知られている。しかしながら、近年、サーマルヘッドの制御が高速化されているため、通常の印字動作中にリアルタイムで電圧を検出する技術を使用してストローブ信号のパルス幅補正をすることが困難になっている。
【０００８】
また、印字動作中に印字オンデータ数を計数して、発生するであろう仮想的な電圧ドロップ量を予測して、ストローブ信号のパルス幅補正をする技術が知られている。しかし、離れて位置するＰＯＳ端末の本体から電源供給を受けることが多い分散タイプのサーマルプリンタと組込みタイプのサーマルプリンタとでは、電圧ドロップ量は異なるし、分散タイプのサーマルプリンタ同士であっても環境によって電圧ドロップ量は異なる。そのため、発生が予測される電圧ドロップ量を一律に設定してサーマルプリンタを共通に開発することができないのである。つまり、このような技術によっても、ストローブ信号のパルス幅を適切に補正することが困難になっている。
【０００９】
本発明の目的は、使用形態によらず、電圧ドロップの影響を抑えることのできるサーマルプリンタを提供することである。
【課題を解決するための手段】
【００１０】
本発明のサーマルプリンタは、複数ドットの発熱抵抗体をライン状に配置し、前記発熱抵抗体への通電時間を決定するストローブ信号に応じて印字データを前記発熱抵抗体に出力することで前記発熱抵抗体を通電状態にして発熱させるサーマルヘッドと、１ライン毎に印字データとストローブ信号とを前記サーマルヘッドに出力する印字制御部と、前記印字制御部に設けられて当該印字制御部が出力する印字データ中の印字オンデータ数を計数する計数部と、前記発熱抵抗体に印加されるヘッド電圧を検出する電圧検出部と、前記電圧検出部で検出されたヘッド電圧を基に設定されたストローブ信号のパルス幅を前記印字オンデータ数に対応付けて記憶領域に記憶させる手段と、を備え、前記印字制御部は、前記記憶領域から前記計数部によって計数される印字オンデータ数に対応するストローブ信号のパルス幅を読み出し、印字データと当該読み出したパルス幅のストローブ信号とを前記サーマルヘッドに出力する。
【００１１】
別の面から見た本発明のサーマルプリンタは、複数ドットの発熱抵抗体をライン状に配置し、前記発熱抵抗体への通電時間を決定するストローブ信号に応じて印字データを前記発熱抵抗体に出力することで前記発熱抵抗体を通電状態にして発熱させるサーマルヘッドと、１ライン毎に印字データとストローブ信号とを前記サーマルヘッドに出力する印字制御部と、前記印字制御部に設けられて当該印字制御部が出力する印字データ中の印字オンデータ数を計数する計数部と、前記発熱抵抗体に印加されるヘッド電圧を検出する電圧検出部と、印字オンデータ数を所定数にした印字データとストローブ信号とを前記印字制御部に出力させ、その際に前記電圧検出部によって検出されるヘッド電圧を取得する手段と、前記取得されたヘッド電圧と印字オンデータ数がゼロである場合におけるヘッド電圧の理論値である基準電圧とに基づいて各印字オンデータ数におけるヘッド電圧を求め、前記基準電圧を当該求めたヘッド電圧で除した値の自乗数に印字オンデータ数がゼロである場合におけるストローブ信号の基準パルス幅を乗じた値を各印字オンデータ数におけるパルス幅として求め、各印字オンデータ数と当該求めたストローブ信号のパルス幅とを対応付けて記憶領域に記憶させる手段と、を備え、前記印字制御部は、前記記憶領域から前記計数部によって計数される印字オンデータ数に対応するストローブ信号のパルス幅を読み出し、印字データと当該読み出したパルス幅のストローブ信号とを前記サーマルヘッドに出力する。
【発明の効果】
【００１２】
本発明によれば、検出されたヘッド電圧を基にストローブ信号のパルス幅が適切に補正されるので、使用形態によらず、電圧ドロップの影響を抑えることのできるサーマルプリンタを提供することができる。
【発明を実施するための最良の形態】
【００１３】
本発明の実施の一形態を図１ないし図１１に基づいて説明する。本実施の形態は、分散タイプのレシートプリンタであるサーマルプリンタ１０１への適用例である。
【００１４】
図１は、サーマルプリンタ１０１の構造を概略的に示す縦断側面図である。サーマルプリンタ１０１は、カバー１０２ａが開閉自在に設けられた本体ハウジング１０２を有している。本体ハウジング１０２には、背面側（図１中右側）に位置させて、ロール状に巻回されたレシート用紙ＲＴを収納する円弧状の収納部１０３が設けられている。レシート用紙ＲＴは、感熱紙であり、熱によって化学反応を起こして発色する。
【００１５】
本体ハウジング１０２の内部には、収納部１０３に収納されたレシート用紙ＲＴを本体ハウジング１０２の前面側（図１中左側）に設けられた排紙口１０８に案内する用紙経路１０６が形成されている。用紙経路１０６中には、レシート用紙ＲＴを搬送して印字を行う印字機構１０５が設けられている。印字機構１０５は、ステッピングモータ１１０（図２参照）によって回転駆動されるプラテンローラ１０４と、このプラテンローラ１０４に用紙経路１０６を介して当接するサーマルヘッド１１２とを主体に構成されている。サーマルヘッド１１２は、その保持板が図示しないスプリングによってプラテンローラ１０４に押し付けられる方向に押圧されて保持されている。また、サーマルヘッド１１２は、プラテンローラ１０４に対向接触する部分に多数の発熱抵抗体１３１（図３参照）が、搬送されるレシート用紙ＲＴの幅方向にライン状に配列されている。
【００１６】
本体ハウジング１０２の排紙口１０８には、排紙されるレシート用紙ＲＴを切断するためのカッタ機構１０７が設けられている。カッタ機構１０７は、平板長板状である固定刃と可動刃とが組み合わされて構成され、可動刃の摺動によりレシート用紙ＲＴを切断する。
【００１７】
図２は、プリンタシステム１の各部の電気的接続を示すブロック図である。プリンタシステム１は、サーマルプリンタ１０１と、サーマルプリンタ１０１にインターフェース１２９を介してデータ通信可能に接続された商品販売データ処理装置であるＰＯＳ端末１１とによって構成されている。
【００１８】
サーマルプリンタ１０１では、プラテンローラ１０４を回転駆動するためのステッピングモータ１１０やサーマルヘッド１１２等の各部は、ＣＰＵ１１７等によって構成されたマイクロコンピュータ１１８によって駆動制御される。つまり、各種演算処理を実行して各部を集中的に制御するＣＰＵ１１７が設けられ、このＣＰＵ１１７には固定データを固定的に格納するＲＯＭ１１９と可変データを書換え自在に格納するＲＡＭ１２０とがシステムバス１２１を介して接続されている。ＲＯＭ１１９には制御プログラムが格納され、マイクロコンピュータ１１８は、ＲＯＭ１１９に格納された制御プログラムに従い、ＲＡＭ１２０をワークエリアとして利用しつつ各種の処理を実行する。
【００１９】
本実施の形態では、印字機構１０５による印字動作に際してマイクロコンピュータ１１８に駆動制御される各部として、プラテンローラ１０４を回転駆動するためのステッピングモータ１１０を駆動制御するためのモータドライバ１２２と、サーマルヘッド１１２の制御を行う印字制御部としての印字制御回路１４０とが設けられている。モータドライバ１２２及び印字制御回路１４０は、システムバス１２１を介してＣＰＵ１１７に接続されている。そして、印字制御回路１４０は、ＣＰＵ１１７に制御されて、クロック信号ＣＬＫ、シリアル印字データＤ１、ラッチ信号ＬＡＴＣＨ、発熱抵抗体１３１への通電時間を決定するストローブ信号ＳＴＢをサーマルヘッド１１２に出力する（図３参照）。
【００２０】
また、本実施の形態のサーマルプリンタ１０１は、ライン型の印字方式を採用することから、サーマルヘッド１１２がライン状に備える複数個の発熱抵抗体１３１（図３参照）によって主走査方向の印字を行い、レシート用紙ＲＴの搬送によって生ずるサーマルヘッド１１２に対するレシート用紙ＲＴの移動によって副走査方向の印字を行う。そこで、副走査方向の印字のために、レシート用紙ＲＴの搬送タイミング等の検出が必要となることから、本実施の形態では、このような検出のためにセンサ１２５が用紙経路１０６中に配置され、このセンサ１２５はＩ／Ｏポート１２８を介してシステムバス１２１に接続されている。
【００２１】
さらに、サーマルプリンタ１０１では、ＰＯＳ端末１１から転送されたデータをインターフェース１２９を介して取り込み、このインターフェース１２９を介して取り込んだデータを印字データに変換して画像メモリ１３０に展開する。したがって、ＰＯＳ端末１１は、サーマルプリンタ１０１とデータ通信可能にするインターフェース（図示せず）を有する。そして、ＣＰＵ１１７は、画像メモリ１３０に展開された印字データから１ライン毎のデータを印字制御回路１４０に出力する。そこで、それらのインターフェース１２９及び画像メモリ１３０も、システムバス１２１を介してＣＰＵ１１７に接続されている。
【００２２】
加えて、サーマルヘッド１１２のヘッド基板（図示せず）にはサーミスタ及びＡＤコンバータ（いずれも図示せず）が取り付けられており、このサーミスタによる検出信号（ヘッド温度情報）はＡＤコンバータによりデジタル値に変換されてＣＰＵ１１７に取り込まれるように接続されている。
【００２３】
図３は、サーマルヘッド１１２の構成を示すブロック図である。サーマルヘッド１１２には、電圧が供給されて発熱する４３２個の発熱抵抗体１３１がライン状に配置されて設けられている。このようなサーマルヘッド１１２では、電源１７１（図４参照）からの電圧を４３２個の発熱抵抗体１３１に選択的に印加することができるように構成されている。
【００２４】
そこで、サーマルヘッド１１２は、発熱抵抗体１３１の他に、シフトレジスタ１３２と、データラッチ回路１３３と、スイッチ回路１３４とをさらに有している。
【００２５】
シフトレジスタ１３２は、Ｄタイプのフリップフロップ回路（ＦＦ回路）からなり、印字制御回路１４０からのクロック信号ＣＬＫに同調して印字制御回路１４０が出力するシリアル印字データＤ１を読み込み、パラレル印字データとして格納する。
【００２６】
データラッチ回路１３３は、印字制御回路１４０からのラッチ信号ＬＡＴＣＨに基づいて、シフトレジスタ１３２が格納しているパラレル印字データＤ２を読み込んで格納する。
【００２７】
スイッチ回路１３４は、４３２個の発熱抵抗体１３１に対応して設けられたアンドゲート１３５を有し、データラッチ回路１３３からのパラレル印字データＤ２と印字制御回路１４０からのストローブ信号ＳＴＢとの論理積を発熱抵抗体１３１に出力する。こうして、対応する発熱抵抗体１３１に電流が流れて電圧が印加され、発熱抵抗体１３１が発熱駆動される。
【００２８】
図４は、印字制御回路１４０の構成示す機能ブロック図である。まず、本実施の形態のサーマルプリンタ１０１には、サーマルヘッド１１２への通電のための電源１７１の電圧を検出する電圧検出部としての電圧検出回路１６１が設けられている。電圧検出回路１６１はＣＰＵ１１７と接続されており、検出した電圧をＣＰＵ１１７に出力する。こうして、サーマルプリンタ１０１のＣＰＵ１１７は、電圧検出回路１６１が検出した電圧を取得する。
【００２９】
次に、ＣＰＵ１１７に接続した印字制御回路１４０について説明する。印字制御回路１４０は、前述したように、ＣＰＵ１１７の制御を受けて、ストローブ信号ＳＴＢ等を出力するものである。そこで、印字制御回路１４０は、ストローブ信号ＳＴＢを生成して出力するタイミングコントローラであるストローブ生成部１５３を備えている。
【００３０】
ところで、本実施の形態の印字制御回路１４０は、１ライン分のクロック信号ＣＬＫ、シリアル印字データＤ１、ラッチ信号ＬＡＴＣＨ、ストローブ信号ＳＴＢを、予め指定された複数単位で分割した構成で出力する。以下、この単位を通電単位と呼ぶ。本実施の形態では、６つの通電単位で構成され、図示しないレジスタに設定記憶されている。そして、印字制御回路１４０は、ＣＰＵ１１７から出力される１ライン毎のデータに基づいて通電単位毎の印字データを生成し、このデータを受けて、クロック信号ＣＬＫ、シリアル印字データＤ１、ラッチ信号ＬＡＴＣＨ、ストローブ信号ＳＴＢを出力するのである。
【００３１】
このような印字制御回路１４０は、クロック信号ＣＬＫの立ち上がりのタイミングでシリアル印字データＤ１のＨレベルの数（以下、印字オンデータ数と呼ぶ）を計数する計数部としての印字オンデータ数計数回路１５１を備えている。また、この際、通電単位についてカウントをする通電単位カウンタ１５２も印字制御回路１４０に設けられている。
【００３２】
そして、本実施の形態では、印字オンデータ数計数回路１５１が計数した印字オンデータ数と、通電単位カウンタ１５２がカウントした通電単位とに基づいて、印字制御回路１４０（ストローブ生成部１５３）から出力されるストローブ信号ＳＴＢのパルス幅が補正される。この補正の際に参照されるのが、後述するキャリブレーション処理（図５等参照）の実行によって生成される補正テーブルＴａ（図７等参照）である。そして、補正テーブルＴａの生成には、ＣＰＵ１１７の図示しないメモリに形成された基準テーブルＴｂ（図６等参照）が参照される。補正テーブルＴａは、予め記憶対象を記憶可能に形成された記憶領域であって、記憶対象が記憶されることによって生成される。
【００３３】
なお、印字制御回路１４０は、その他に、クロック信号ＣＬＫを生成して出力するタイミングコントローラであるクロック生成部（図示せず）、ラッチ信号ＬＡＴＣＨを生成して出力するタイミングコントローラであるラッチ生成部（図示せず）、ＣＰＵ１１７からの印字データを格納して出力するためのラインメモリ（図示せず）等をさらに備えている。
【００３４】
このような構成において、次に、本実施の形態のサーマルプリンタ１０１で実行されるキャリブレーション処理について説明する。
【００３５】
図５は、キャリブレーション処理を示すフローチャートである。キャリブレーション処理は、例えば、セッティングに際して実行される。また、キャリブレーション処理は、サーマルプリンタ１０１の製造工程においても実行されることがある。
【００３６】
キャリブレーション処理を実行する場合、まず、サーマルプリンタ１０１を「キャリブレーションモード」に移行させる必要がある。サーマルプリンタ１０１を「キャリブレーションモード」への移行は、例えば、接続されたＰＯＳ端末１１のＣＰＵ（図示せず）がＲＯＭ等の記憶部（図示せず）に格納されたプログラムに従って実行する所定のキャリブレーション処理に伴って行われる。サーマルプリンタ１０１のＣＰＵ１１７は、「キャリブレーションモード」への移行を判定したならば（ステップＳ１０１のＹ）、印字制御回路１４０を制御して、印字オンデータ数＝４３２（印字率＝１００％）で１ライン印字を実行する（ステップＳ１０２）。このとき、１回の通電単位で１ラインが印字され、一例として、横罫線の印字が実行される。
【００３７】
ステップＳ１０２での印字に際して、電圧検出回路１６１は、電源１７１からサーマルヘッド１１２（発熱抵抗体１３１）への供給電圧（以下、ヘッド電圧ＶＨと呼ぶことがある）を検出してＣＰＵ１１７に出力する。したがって、ＣＰＵ１１７は、印字オンデータ数＝４３２（印字率＝１００％）でのヘッド電圧ＶＨを取得する（ステップＳ１０３）。ここで、本実施の形態の電源１７１の電圧は「２４Ｖ」である。そのため、理論的には、電圧検出回路１６１によって検出されるヘッド電圧ＶＨも「２４Ｖ」となる。しかしながら、電源１７１の供給能力や電源１７１とサーマルヘッド１１２（発熱抵抗体１３１）との配線長等の影響によって、電圧ドロップが生じている。すなわち、電圧検出回路１６１によって検出されるヘッド電圧ＶＨは「２４Ｖ」よりも低い値となる。
【００３８】
そして、サーマルプリンタ１０１のＣＰＵ１１７は、ステップＳ１０３で取得したヘッド電圧ＶＨと基準テーブルＴｂ（図６参照）とに基づいて、補正テーブルＴａ（図７参照）を生成する処理を実行する（ステップＳ１０４）。
【００３９】
ここで、ステップＳ１０４での処理内容の詳細について説明する。まず、基準テーブルＴｂ（図６参照）について説明する。
【００４０】
図６は、基準テーブルＴｂのデータ構成を示す模式図である。基準テーブルＴｂは、印字オンデータ数＝０（印字率＝０％）において発熱抵抗体１３１に印加されるヘッド電圧ＶＨの理論値（以下、「基準電圧」と呼ぶことがある）を記憶している。本実施の形態では、基準電圧＝２４Ｖである。
【００４１】
そして、基準テーブルＴｂは、この基準電圧が発熱抵抗体１３１に印加される場合におけるストローブ信号ＳＴＢに対して予め設定されたパルス幅（以下、「基準パルス幅」と呼ぶことがある）を記憶している。基準パルス幅は、試験等により予め決定されたもので、通電単位毎に記憶されている。
【００４２】
ここでは、サーマルプリンタ１０１が、ＰＯＳ端末の本体から例えば２ｍ長のケーブルを介して電源供給を受けるものであって、図５のフローチャートのステップＳ１０３でＣＰＵ１１７が取得したヘッド電圧ＶＨが電圧ドロップの発生により「２２．５Ｖ」であった場合について説明する。
【００４３】
この場合、サーマルプリンタ１０１のＣＰＵ１１７は、図５のフローチャートのステップＳ１０４では、取得したヘッド電圧ＶＨ（＝２２．５Ｖ）と基準テーブルＴｂとに基づいて、各通電単位におけるパルス幅（＝ｔ２（μｓ））を、以下の式
ｔ２＝（Ｖ２４÷Ｖｄ）２×ｔ１
Ｖ２４：基準電圧＝２４Ｖ
Ｖｄ  ：取得したヘッド電圧（又は求めたヘッド電圧）
ｔ１  ：基準電圧＝２４Ｖでのパルス幅
に従い算出して、補正テーブルＴａ（図７参照）を生成する。
【００４４】
図７は、補正テーブルＴａのデータ構成を示す模式図である。図７に示すように、補正テーブルＴａは、印字オンデータ数（印字率）を４段階（「ランク１」〜「ランク４」）に区分し、各段階に対応させて各通電単位（１ｓｔ、２ｎｄ、３ｒｄ、４ｔｈ、５ｔｈ、６ｔｈ）におけるパルス幅を記憶するテーブルである。補正テーブルＴａは、予め、各「ランク（１〜４）」についての「印字ドット数」及び「印字率（％）」を記憶しており、さらに、補正テーブルＴａは、各通電単位（１ｓｔ〜６ｔｈ）についての「パルス幅（μｓ）」と「電圧（Ｖ）」とを記憶可能に構成されている。なお、ランクについては、４段階に限られることはない。
【００４５】
補正テーブルＴａの生成に際しては、まず、サーマルプリンタ１０１のＣＰＵ１１７は、基準テーブルＴｂに記憶されている基準パルス幅を、補正テーブルＴａにおける「ランク１」の「パルス幅（μｓ）」に記憶させる。このとき、「ランク１」の「電圧（Ｖ）」には、基準テーブルＴｂに記憶されている基準電圧（＝２４（Ｖ））に基づいて、「２４．０（Ｖ）」を記憶させる。
【００４６】
次に、サーマルプリンタ１０１のＣＰＵ１１７は、取得したヘッド電圧ＶＨ（＝２２．５Ｖ）と基準テーブルＴｂとに基づいて算出した各通電単位におけるパルス幅を、「ランク４」に記憶させる。このとき、「ランク４」の「電圧（Ｖ）」には、取得したヘッド電圧ＶＨ「２２．５（Ｖ）」に基づいて、「２２．５（Ｖ）」を記憶させる。
【００４７】
次に、サーマルプリンタ１０１のＣＰＵ１１７は、「ランク２」及び「ランク３」に対応する「電圧（Ｖ）」を求める。「ランク２」及び「ランク３」に対応する「電圧（Ｖ）」は、「ランク１」の「電圧（Ｖ）」と「ランク４」の「電圧（Ｖ）」との間の互いに異なる値であって、各ランク間の電圧差が同程度となる値である。ここでは、サーマルプリンタ１０１のＣＰＵ１１７は、一例として、「ランク２」の「電圧（Ｖ）」として２３．５（Ｖ）を求め、「ランク３」の「電圧（Ｖ）」として２３．０（Ｖ）を求めた。なお、これらの電圧については、ＲＯＭ１１９に格納された所定の計算プログラムに従ってＣＰＵ１１７が算出するようにしてもよい。
【００４８】
そして、サーマルプリンタ１０１のＣＰＵ１１７は、求めた「ランク２」に対応する「電圧（Ｖ）」（＝２３．５Ｖ）と基準テーブルＴｂとに基づいて、上記の式に従って、各通電単位におけるパルス幅を算出して、算出したパルス幅（μｓ）を、補正テーブルＴａの「ランク２」の「パルス幅（μｓ）」に記憶させる。このとき、補正テーブルＴａの「ランク２」の「電圧（Ｖ）」には、求めた電圧「２３．５（Ｖ）」を記憶させる。
【００４９】
同様に、サーマルプリンタ１０１のＣＰＵ１１７は、求めた「ランク３」に対応する「電圧（Ｖ）」（＝２３．０Ｖ）と基準テーブルＴｂとに基づいて、上記の式に従って、各通電単位におけるパルス幅を算出して、算出したパルス幅（μｓ）を、補正テーブルＴａの「ランク３」の「パルス幅（μｓ）」に記憶させる。このとき、補正テーブルＴａの「ランク３」の「電圧（Ｖ）」には、求めた電圧「２３．０（Ｖ）」を記憶させる。
【００５０】
このようにして、電圧検出回路１６１で検出されたヘッド電圧を基にパルス幅が算出されることにより、電圧検出回路１６１で検出されたヘッド電圧を基にストローブ信号のパルス幅が設定される。そして、設定された（算出された）パルス幅が記憶領域としての補正テーブルＴａに記憶されるのである。こうして、補正テーブルＴａが生成される。
【００５１】
次に、キャリブレーション処理の実行によって補正テーブルＴａが生成された後に、サーマルプリンタ１０１で通常に行われる印字（以下、通常印字と呼ぶことがある）について説明する。
【００５２】
図８は、通常印字での印字動作の一例を示すタイミングチャートである。本実施の形態では、図８に示すように、印字時間「５００μｓ」の１ライン印字が、６回の通電単位（１ｓｔ〜６ｔｈ）によって構成されている。つまり、１ライン印字中に６回データの入れ替えが行われているのである。
【００５３】
通常印字は、概略的には、印字制御回路１４０からの所定周期のクロック信号ＣＬＫに従い印字１ライン毎にシリアル印字データＤ１がシフトレジスタ１３２に取り込まれ、１ラインのシリアル印字データＤ１の取り込みの後、印字制御回路１４０からラッチ信号ＬＡＴＣＨが出力される。この状態でデータラッチ回路１３３にはパラレル印字データＤ２が格納された状態となり、スイッチ回路１３４のアンドゲート１３５にストローブ信号ＳＴＢが入力されて、各々の発熱抵抗体１３１は、パラレル印字データＤ２に従って発熱する。こうして、レシート用紙ＲＴには、各々の発熱抵抗体１３１の発熱による印字がなされる。
【００５４】
そして、本実施の形態の通常印字では、より詳細には、サーマルプリンタ１０１のＣＰＵ１１７によって印字制御回路１４０が制御されて、補正テーブルＴａに基づいて印字動作がなされるのである。
【００５５】
まず、サーマルプリンタ１０１のＣＰＵ１１７は、印字制御回路１４０を制御して、印字制御回路１４０にクロック信号ＣＬＫとシリアル印字データＤ１とをサーマルヘッド１１２のシフトレジスタ１３２にシリアル転送させる。このとき、印字オンデータ数計数回路１５１は、４３２回（発熱抵抗体１３１のドット数）のクロック信号ＣＬＫの立ち上がりのタイミングでシリアル印字データＤ１の印字オンデータ数を計数してその上位２ｂｉｔの情報を補正テーブルＴａに伝える。さらに、このとき、通電単位カウンタ１５２は、通電単位をカウントして、その上位３ｂｉｔの情報を補正テーブルＴａに伝える。印字制御回路１４０は、これらの印字オンデータ数及び通電単位の情報に基づいて、補正テーブルＴａから対応するパルス幅（μｓ）を読み出す。そして、印字制御回路１４０は、ラッチ信号ＬＡＴＣＨを出力し、その後にストローブ信号ＳＴＢを出力するが、この際、印字制御回路１４０は、補正テーブルＴａから読み出したパルス幅（μｓ）を、出力するストローブ信号ＳＴＢのパルス幅に反映させる。
【００５６】
例えば、印字制御回路１４０から出力されるシリアル印字データＤ１について、印字オンデータ数計数回路１５１によって計数された印字オンデータ数が「３００」であり、通電単位が「１ｓｔ」の場合には、図７に示した補正テーブルＴａから「パルス幅」として「８７．１（μｓ）」が読み出されて、出力されるストローブ信号ＳＴＢのパルス幅が「８７．１（μｓ）」となる。
【００５７】
そして、通電単位「１ｓｔ」のストローブ信号ＳＴＢがＬｏｗの間に、サーマルプリンタ１０１のＣＰＵ１１７は、印字制御回路１４０を制御して、印字制御回路１４０に通電単位「２ｎｄ」のクロック信号ＣＬＫとシリアル印字データＤ１とをシフトレジスタ１３２にシリアル転送させる。この際、通電単位「１ｓｔ」と同様に、印字オンデータ数計数回路１５１は、クロック信号ＣＬＫの立ち上がりのタイミングでシリアル印字データＤ１の印字オンデータ数を計数してその上位２ｂｉｔの情報を補正テーブルＴａに伝え、通電単位カウンタ１５２は、通電単位をカウントして、その上位３ｂｉｔの情報を補正テーブルＴａに伝える。印字制御回路１４０は、これらの印字オンデータ数及び通電単位の情報に基づいて、補正テーブルＴａから対応するパルス幅（μｓ）を読み出し、出力するストローブ信号ＳＴＢのパルス幅に反映させる。
【００５８】
例えば、通電単位「２ｎｄ」のシリアル印字データＤ１について、印字オンデータ数計数回路１５１によって計数された印字オンデータ数が「２００」である場合には、図７に示した補正テーブルＴａから「パルス幅」として「８３．４（μｓ）」が読み出される。つまり、ストローブ生成部１５３によってストローブ信号ＳＴＢが８３．４μｓ出力される。
【００５９】
通電単位「３ｒｄ」以降についても、上記のように、補正テーブルＴａから「パルス幅（μｓ）」が読み出され、出力されるストローブ信号ＳＴＢのパルス幅に反映される。
【００６０】
次に、図７に基づいて説明した補正テーブルＴａとは別の補正テーブルＴａについて説明する。
【００６１】
図９は、補正テーブルＴａのデータ構成の別の一例を示す模式図である。図９に示す補正テーブルＴａが記憶するデータ構成は、図７に示した補正テーブルＴａと同一である。また、図９に示す補正テーブルＴａが生成される際に実行される処理内容は、図７に示した補正テーブルＴａが生成される際に実行される処理内容と同様である。
【００６２】
図９に示す補正テーブルＴａは、分散タイプのサーマルプリンタ１０１の環境が、図７に示した補正テーブルＴａが生成された環境と比較して、ＰＯＳ端末１１の本体から電源供給を受けるケーブル長が短い場合において、キャリブレーション処理（図５参照）の実行により生成されるテーブルである。
【００６３】
ＰＯＳ端末１１の本体から電源供給を受けるケーブル長が、図７に示した補正テーブルＴａが生成された環境におけるケーブル長（２ｍ）よりも短い場合、電圧ドロップの発生は、より抑えられることになる。そのため、この場合においてキャリブレーション処理が実行される（つまり、印字率＝１００％での１ライン印字がなされる）と、電圧検出回路１６１によって検出されてサーマルプリンタ１０１のＣＰＵ１１７が取得するヘッド電圧ＶＨは、より高い値（例えば、２３．５Ｖとする）となる。そして、このような場合に生成される補正テーブルＴａ（図９参照）については、そのパルス幅は図７に示した補正テーブルＴａに記憶されているパルス幅よりも、短い値となる。つまり、サーマルプリンタ１０１のＣＰＵ１１７が、取得したヘッド電圧ＶＨ（＝２３．５Ｖ）と、基準テーブルＴｂに記憶された基準電圧及び基準パルス幅とに基づいて、前述の式に従って各通電単位におけるパルス幅を算出すると、当該式中の「（Ｖ２４÷Ｖｄ）２」の値が、ヘッド電圧ＶＨが２２．５Ｖである場合よりも小さくなるため、求められるパルス幅はより短いものとなる。例えば、「ランク４」の「１ｓｔ」での「パルス幅」に着目すると、図７の補正テーブルＴａでは、「９１．０（μｓ）」であるのに対して、図９に示す補正テーブルＴａでは、「８３．４（μｓ）」となっている。
【００６４】
次に、図５のフローチャート等に基づいて説明したキャリブレーション処理とは別のキャリブレーション処理（図１０参照）が実行され、このキャリブレーション処理の実行によって図７及び図９に示した補正テーブルＴａとは別の補正テーブルＴａ（図１１参照）が生成される場合について説明する。
【００６５】
図１０は、キャリブレーション処理の別の一例を示すフローチャートである。サーマルプリンタ１０１のＣＰＵ１１７は、「キャリブレーションモード」への移行を判定したならば（ステップＳ２０１のＹ）、印字制御回路１４０を制御して、まず、印字オンデータ数＝４３２（印字率＝１００％）で１ライン印字を実行する（ステップＳ２０２）。この際、電圧検出回路１６１は、ヘッド電圧ＶＨを検出してＣＰＵ１１７に出力するので、サーマルプリンタ１０１のＣＰＵ１１７は、印字オンデータ数＝４３２（印字率＝１００％）でのヘッド電圧ＶＨを取得する（ステップＳ２０３）。
【００６６】
このとき、キャリブレーション処理が実行されるサーマルプリンタ１０１の環境については、図７に示した補正テーブルＴａが生成された環境と同じであるものとする。したがって、電圧ドロップが生じており、電圧検出回路１６１によって検出されてステップＳ２０３でＣＰＵ１１７が取得するヘッド電圧ＶＨは「２２．５Ｖ」となる。
【００６７】
次に、サーマルプリンタ１０１のＣＰＵ１１７は、印字制御回路１４０を制御して、印字オンデータ数＝０（印字率＝０％）で１ライン印字を実行する（ステップＳ２０４）。なお、ステップＳ２０４で「印字オンデータ数＝０（印字率＝０％）で１ライン印字を実行する」といっても、印字率＝０％であるので、実際には、レシート用紙ＲＴへの印字は行われない。そして、ステップＳ２０４に際しても、電圧検出回路１６１は、ヘッド電圧ＶＨを検出してＣＰＵ１１７に出力するので、サーマルプリンタ１０１のＣＰＵ１１７は、印字オンデータ数＝０（印字率＝０％）でのヘッド電圧ＶＨを取得する（ステップＳ２０５）。
【００６８】
ところで、電源１７１の電圧は「２４Ｖ」であるため、印字オンデータ数＝０（印字率＝０％）での１ライン印字がなされる場合に電圧検出回路１６１によって検出されるヘッド電圧ＶＨは「２４Ｖ」になると考えられる。しかし、電源１７１の出力電圧誤差によって、このとき電圧検出回路１６１によって検出されるヘッド電圧ＶＨは「２４Ｖ」よりも高い値又は低い値となることがある。そこで、以下には、ステップＳ２０５で電圧検出回路１６１によって検出されてＣＰＵ１１７が取得したヘッド電圧ＶＨが「２４Ｖ」よりも高い「２４．５Ｖ」であった場合について説明する。
【００６９】
次に、サーマルプリンタ１０１のＣＰＵ１１７は、ステップＳ２０３で取得した印字オンデータ数＝４３２（印字率＝１００％）でのヘッド電圧ＶＨと、ステップＳ２０５で取得した印字オンデータ数＝０（印字率＝０％）でのヘッド電圧ＶＨとに基づいて、補正テーブルＴａ（図１１参照）を生成する（ステップＳ２０６）。
【００７０】
図１１は、補正テーブルＴａのデータ構成のさらに別の一例を示す模式図である。図１１に示す補正テーブルＴａが記憶するデータ構成は、図７及び図９に示した補正テーブルＴａと同一である。しかし、他の例とは異なり、図１１に示す補正テーブルＴａの「ランク１」には、基準テーブルＴｂに記憶されている基準電圧及び基準パルス幅が記憶されない。これに代えて、図１１に示す補正テーブルＴａの「ランク１」には、印字オンデータ数＝０（印字率＝０％）でのヘッド電圧ＶＨ（＝２４．５（Ｖ））に基づいて算出されるパルス幅が記憶される。したがって、図１０のフローチャートのステップＳ２０６では、まず、サーマルプリンタ１０１のＣＰＵ１１７は、図１０のフローチャートのステップＳ２０５で取得したヘッド電圧ＶＨ「２４．５Ｖ」と基準テーブルＴｂとに基づいて、上記の式に従って、各通電単位におけるパルス幅を算出する。そして、ＣＰＵ１１７は、算出したパルス幅（μｓ）を、補正テーブルＴａの「ランク１」の「パルス幅（μｓ）」に記憶させる。このとき、補正テーブルＴａの「ランク１」の「電圧（Ｖ）」には、取得した電圧「２４．５（Ｖ）」を記憶させる。
【００７１】
そして、「ランク２」ないし「ランク４」の「パルス幅（μｓ）」及び「電圧（Ｖ）」については、サーマルプリンタ１０１のＣＰＵ１１７は、図７又は図９に基づいて説明したようにして求めて、図１１に示す補正テーブルＴａに記憶させる。このようにして、図１１に示すような補正テーブルＴａが生成される。作成された補正テーブルＴａに基づいた印字動作については、図８のタイミングチャートに基づいて説明した印字動作と同様なので説明は省略する。
【００７２】
このようにして生成された図１１に示す補正テーブルＴａによれば、出力されるストローブ信号ＳＴＢのパルス幅の補正が、より正確に実行される。
【００７３】
以上説明したように本実施の形態によれば、キャリブレーション処理の実行により電圧検出回路１６１が検出した電圧に基づいてストローブ信号ＳＴＢのパルス幅（μｓ）が求められて補正テーブルＴａに記憶されるので、通常印字で印字制御回路１４０から出力されるストローブ信号ＳＴＢのパルス幅の補正が適切になされる。こうして、サーマルプリンタ１０１が組込みタイプであっても分散タイプであっても、印字結果に対する電圧ドロップの影響を抑えることができる。
【図面の簡単な説明】
【００７４】
【図１】サーマルプリンタの構造を概略的に示す縦断側面図である。
【図２】プリンタシステムの各部の電気的接続を示すブロック図である。
【図３】サーマルヘッドの構成を示すブロック図である。
【図４】印字制御回路の構成示す機能ブロック図である。
【図５】キャリブレーション処理を示すフローチャートである。
【図６】基準テーブルのデータ構成を示す模式図である。
【図７】補正テーブルのデータ構成を示す模式図である。
【図８】通常印字での印字動作の一例を示すタイミングチャートである。
【図９】補正テーブルのデータ構成の別の一例を示す模式図である。
【図１０】キャリブレーション処理の別の一例を示すフローチャートである。
【図１１】補正テーブルのデータ構成のさらに別の一例を示す模式図である。
【符号の説明】
【００７５】
１０１…サーマルプリンタ，１１２…サーマルヘッド，１３１…発熱抵抗体，１４０…印字制御回路（印字制御部），１５１…印字オンデータ数計数回路（計数部），１６１…電圧検出回路（電圧検出部），Ｔａ…補正テーブル（記憶領域）
【図１】
2009208387.tif 000003
【図２】
2009208387.tif 000004
【図３】
2009208387.tif 000005
【図４】
2009208387.tif 000006
【図５】
2009208387.tif 000007
【図６】
2009208387.tif 000008
【図７】
2009208387.tif 000009
【図８】
2009208387.tif 000010
【図９】
2009208387.tif 000011
【図１０】
2009208387.tif 000012
【図１１】
2009208387.tif 000013