(57)【要約】【課題】ソフト分割時に無駄な印字データの分割が発生することをなくし、印字速度の低下を低減できる、サーマルプリンタを提供する。【解決手段】サーマルヘッドの駆動に使用される電源の容量に応じた分割ドット数ｎ（例えば、３２）で物理ブロック１〜６を分割し、複数の仮想物理ブロックＢ１〜Ｂ１２を生成する。そして、印字ドット数が分割ドット数ｎを越えない範囲で、仮想物理ブロックの組み合わせパタンーンを１または２以上選択し、仮想論理ブロックＫ１を生成する。ヘッド駆動部は、仮想論理ブロックＫ１内に含まれる仮想物理ブロックの印字データを受信し、仮想物理ブロックの組み合わせパターンごとに、該仮想物理ブロックの組み合わせパターンに応じたストローブ信号のパターンを生成し、発熱素子を駆動する。【選択図】図２
2009096078.tif 000002
【特許請求の範囲】
【請求項１】
複数の発熱素子がライン状に配設されたサーマルヘッドを感熱紙に押し当て、前記発熱素子にパルス通電を行うことにより印字を行うと共に、前記サーマルヘッドの発熱素子が複数の物理ブロックに分割されており、各物理ブロック内の発熱素子が１つのストローブ信号で駆動されるサーマルプリンタにおいて、
前記各物理ブロックを、サーマルヘッドの駆動に使用される電源の容量に応じた所定の分割ドット数ｎで分割し、複数の仮想物理ブロックを生成するソフト分割処理部と、
前記各仮想物理ブロック内の印字ドット数を基に、仮想物理ブロック内の印字ドット数の合計が前記分割ドット数ｎを越えない範囲で、前記仮想物理ブロックの組み合わせパターンを１または２以上選択すると共に、これらの仮想物理ブロックの組み合わせパターンを含む仮想論理ブロックを生成する仮想論理ブロック生成部と、
前記仮想論理ブロック内に含まれる仮想物理ブロックの印字データを受信し、前記仮想物理ブロックの組み合わせパターンごとに、該仮想物理ブロックの組み合わせパターンに対応するストローブ信号のパターンを生成し、前記発熱素子を駆動するヘッド駆動部と、
を備えることを特徴とするサーマルプリンタ。
【請求項２】
前記仮想論理ブロック生成部は、
前記各仮想物理ブロック内の印字ドット数を基に、仮想物理ブロック内の印字ドット数の合計が前記分割ドット数ｎを越えない範囲で、前記仮想物理ブロックの組み合わせパターンを１または２以上選択すると共に、これらの仮想物理ブロックの組み合わせパターンを含む第１の仮想論理ブロック生成し、
また、前記第１の仮想論理ブロックの生成時に選択されなかった残りの仮想物理ブロックを基に、前記第１の仮想論理ブロックの生成と同様にして第２の仮想論理ブロックを生成し、
さらに、前記仮想論理ブロックの生成を前記仮想物理ブロックが全て選択されるまで繰り返して、複数の仮想論理ブロックを生成するように構成され、
前記仮想論理ブロック内に含まれる仮想物理ブロックの印字データを、前記各仮想論理ブロックごとに前記ヘッド駆動部に転送すると共に、該転送の際に、転送する仮想論理ブロックに含まれていない仮想物理ブロック内の印字データをスペースデータにして転送するデータ転送部を、
備えることを特徴とする請求項１に記載のサーマルプリンタ。
【請求項３】
前記サーマルヘッドの発熱素子は６個の物理ブロックで構成されると共に、各物理ブロックはそれぞれ６４個の発熱素子により構成されており、
前記電源の容量に応じた分割ドット数ｎが３２であり、
前記ソフト分割処理部は、前記物理ブロックを分割ドット数３２で２分割し、１２個の仮想物理ブロックを生成するように、
構成されたことを特徴とする請求項１または請求項２に記載のサーマルプリンタ。
【請求項４】
複数の発熱素子がライン状に配設されたサーマルヘッドを感熱紙に押し当て、前記発熱素子にパルス通電を行うことにより印字を行うと共に、前記サーマルヘッドの発熱素子が複数の物理ブロックに分割されており、各物理ブロック内の発熱素子が１つのストローブ信号で駆動されるサーマルプリンタにおける印字制御方法であって、
前記各物理ブロックを、サーマルヘッドの駆動に使用される電源の容量に応じた所定の分割ドット数ｎで分割し、複数の仮想物理ブロックを生成するソフト分割処理手順と、
前記各仮想物理ブロック内の印字ドット数を基に、仮想物理ブロック内の印字ドット数の合計が前記分割ドット数ｎを越えない範囲で、前記仮想物理ブロックの組み合わせパターンを１または２以上選択すると共に、これらの仮想物理ブロックの組み合わせパターンを含む仮想論理ブロックを生成する仮想論理ブロック生成手順と、
前記仮想論理ブロック内に含まれる仮想物理ブロックの印字データを受信し、前記仮想物理ブロックの組み合わせパターンごとに、該仮想物理ブロックの組み合わせパターンに対応するストローブ信号のパターンを生成し、前記発熱素子を駆動するヘッド駆動手順と、
を含むことを特徴とする印字制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーマルヘッドの発熱素子を複数の物理ブロックに分割すると共に、該物理ブロックをさらに分割して駆動するソフト分割時に、無駄な分割が発生することをなくし、印字速度の低下を低減できる、サーマルプリンタ、および印字制御方法に関する。
【背景技術】
【０００２】
情報印刷端末のひとつであるサーマルプリンタは、小売業界や物流業界をはじめ．様々なシステム形態の中で使用されている。このサーマルプリンタは、複数の発熱素子がライン状に配設されたサーマルヘッドを感熱紙に押し当て、複数の発熱素子のうちから選択指定した発熱素子にパルス通電を行うと共に、パルス通電と感熱紙の紙送りとを交互に繰り返して印字を行うものである。
【０００３】
図５は、サーマルプリンタにおけるサーマルヘッドの構成例を示す図である。
図５に示すように、サーマルヘッド３１は、感熱紙４１に対して主走査方向に発熱素子がライン状に配列して構成される。図５に示す例では、サーマルヘッド３１は発熱素子がライン状に配列された６つの物理ブロック１から物理ブロック６で構成されている。なお、物理ブロックとは、サーマルヘッド内の複数の発熱素子をグループ単位に分けたものであり、１つのストローブ信号で同時に駆動される発熱素子のグループである。
【０００４】
また、各物理ブロックには６４個の発熱素子Ｒ１〜Ｒ６４がライン状に配列されている。従って、全部で３８４個の発熱素子により１ドットラインが形成されている。
【０００５】
また、プリント用印字データ生成部２２から印字ドットバッファ２５に１ラインの印字ドットデータ(ドット書込みデータ)が送信される。この印字ドットバッファ２５も６つのメモリブロックＭ１〜Ｍ６に分割され、それぞれのメモリブロックは６４個のドットデータを保持する。この場合、メモリブロックＭ１は物理ブロック１に対応し、メモリブロックＭ２〜Ｍ６は、物理ブロック２〜６にそれぞれ対応する。
【０００６】
印字ドットバッファ２５に保持されたドットデータ（印字を行わないスペースデータも含む）は、データ転送回路２６を通してヘッド駆動回路２７に送られる。ヘッド駆動回路２７では、印字ドットバッファ２５から受け取ったドットデータに応じて、対応する発熱素子Ｒ１〜Ｒ６４を駆動する。
【０００７】
なお、印字ドットバッファ２５のデータは、データ転送回路２６を通して、ヘッド駆動回路２７に転送されるが、この際に、ソフト分割処理部２８により、ソフト分割処理が行われる（ソフト分割処理については後述する）。
【０００８】
ヘッド駆動回路２７についても、物理ブロック１〜６に対応する６つの駆動回路ブロックＤＳＴ１からＤＳＴ６に分割されており、各駆動回路ブロックＤＳＴ１〜ＤＳＴ６はそれぞれ６４個の発熱素子Ｒ１〜Ｒ６４を駆動するように構成されている。この発熱素子Ｒ１〜Ｒ６４の駆動は、サーマルヘッド駆動電源２３から出力される電圧Ｖｐを、ドットデータ（印字ドットバッファ２５から受け取ったドットデータ）で指定された発熱素子Ｒ１〜Ｒ６４に印加することにより行われる。
【０００９】
また、各駆動回路ブロックＤＳＴ１からＤＳＴ６には、通電パルス制御部２４から、それぞれストローブ信号ＳＴＢ１〜ＳＴＢ６が入力され、このストローブ信号ＳＴＢ１〜ＳＴＢ６の内のイネーブルになったストローブ信号に相当する駆動回路ブロックＤＳＴ１〜ＤＳＴ６だけが発熱素子を駆動する。
【００１０】
ところで上記構成のサーマルヘッドにおいては、サーマルヘッド駆動電源２３の電源容量（特に、電流容量）には制限があり、このサーマルヘッド駆動電源２３の低消費電流化を図るために、ソフト分割という手法が用いられる。このソフト分割では、物理ブロック１から６を、さらに複数の物理ブロックに動的に分割する。例えば、図６（Ａ）に示すように、６４ドットからなる物理ブロック１〜６を、それぞれ、３２ドットごとに動的に分割する。
【００１１】
そして、例えば、図６（Ａ）に示すように、物理ブロック１における印字ドット数が、物理ブロック１は（９，１０）とする。また、物理ブロック２は（２４，５）、物理ブロック３は（３，３０）、物理ブロック４は（２０，１０）、物理ブロック５は（５，２３）、物理ブロック６は（８，１０）とする。ここで、括弧内の数字は、各物理ブロック１〜６において動的に分割された左側ブロックと右側ブロック内の印字ドット数（スペースデータを除く実際に印字されるドット数）である。
【００１２】
この場合に、図６（Ｂ）に示すように、最初に、各物理ブロック１〜６内の左側ブロックのデータをそのままにして、右側物理ブロックのデータをマスク（スペースデータに）した論理ブロックＲ１を構成する。この論理ブロックＲ１のデータをヘッド駆動回路２７に印字ドットデータとして転送する。なお、図６（Ｂ）中の黒塗りの部分は、印字なし（スペースデータ）を挿入することを示している。
【００１３】
そして、ヘッド駆動回路２７は、論理ブロックＲ１を基に、サーマルヘッド３１を駆動する。この場合、論理ブロックＲ１において、印字ドット数を物理ブロック１から順番に見て行き、印字ドット数が３２ドット、またはそれに近いドット数（３２ドット以下）になるような組み合わせを選択する。そして、選択された物理ブロックに対応するストローブ信号によりサーマルヘッドを駆動する。
【００１４】
図６（Ｂ）に示す例では、最初に、物理ブロック１（ドットデータ数９）と、物理ブロック３（ドットデータ数３）と、物理ブロック４（ドットデータ数２０）が選択される（合計ドットデータ数３２）。そして、第１ストローブ信号として、図５に示すストローブ信号ＳＴＢ１、ストローブ信号ＳＴＢ３、ストローブ信号ＳＴＢ４を出力する。これにより、第１回目の印字が行われる。
【００１５】
続いて、残りの印字データについても、印字ドット数が３２ドット、またはそれに近いドット数（３２ドット以下）になるような組み合わせを選択する。この場合は、物理ブロック２（ドットデータ数２４）と、物理ブロック５（ドットデータ数５）とが選択される（合計ドットデータ数２９）。そして、第２ストローブ信号として、ストローブ信号ＳＴＢ２、ストローブ信号ＳＴＢ５を出力する。これにより、第２回目の印字が行われる。
【００１６】
続いて、残りの印字データについても、印字ドット数が３２ドット、またはそれに近いドット数（３２ドット以下）になるような組み合わせを選択する。この場合は、物理ブロック６（ドットデータ数８）が選択され（合計ドットデータ数８）、第３ストローブ信号として、ストローブ信号ＳＴＢ６を出力する。これにより、第３回目の印字が行われる。
【００１７】
次に、図６（Ｃ）に示すように、各物理ブロック１〜６内の右側のブロックのデータをそのままにして、左側のブロックのデータをマスク（スペースデータに）した論理ブロックＲ２を構成する。この論理ブロックＲ２のデータを、ヘッド駆動回路２７に印字ドットデータとして転送する。
【００１８】
そして、図６（Ｃ）に示す論理ブロックＲ２において、物理ブロック１〜６内の印字ドット数を左側（物理ブロック１）から順番に見て行き、印字ドット数が３２ドット、またはそれに近いドット数（３２ドット以下）になるような組み合わせを選択する。そして、選択された物理ブロックに対応するストローブ信号によりサーマルヘッドを駆動する。
【００１９】
図６（Ｃ）に示す例では、物理ブロック１（ドットデータ数１０）と、物理ブロック２（ドットデータ数５）と、物理ブロック４（ドットデータ数１０）が選択される（合計ドットデータ数２５）。そして、第１ストローブ信号として、図５に示すストローブ信号ＳＴＢ１、ストローブ信号ＳＴＢ２、ストローブ信号ＳＴＢ４を出力する。これにより、第４回目の印字が行われる。
【００２０】
続いて、物理ブロック３（ドットデータ数３０）が選択され（合計ドットデータ数３０）、第２ストローブ信号として、ストローブ信号ＳＴＢ３を出力する。これにより、第５回目の印字が行われる。
【００２１】
続いて、物理ブロック５（ドットデータ数２３）が選択され（合計ドットデータ数２３）、第３ストローブ信号として、ストローブ信号ＳＴＢ５を出力する。これにより、第６回目の印字が行われる。
【００２２】
続いて、物理ブロック６（ドットデータ数１０）が選択され（合計ドットデータ数１０）、第４ストローブ信号として、ストローブ信号ＳＴＢ６を出力する。これにより、第７回目の印字が行われる。以上、第１回から第７回の印字により、１ドットラインの印字が完了する。
【００２３】
また、図７は、ソフト分割時における１ドットライン印字処理の流れを示すフローチャートであり、上述したソフト分割処理の流れをフローチャートで示したものである。以下、図７を参照して、その処理の流れについて説明する。
【００２４】
ソフト分割処理部２８では、物理ブロックを動的分割数ｎで分割した後に論理ブロック（例えば、図６に示す論理ブロックＲ１）の生成を行い、この論理ブロックをヘッド駆動回路２７に転送する（ステップＳ３１）。続いて、この論理ブロックを基に、印字ドット数が動的分割数ｎの範囲内になるようなヘッド駆動パターンを順次に決定し（ステップＳ３２）、通電パルス制御部２４により、ヘッド駆動パターンに応じたストローブ信号を印加し、サーマルヘッドを駆動する（ステップＳ３３）。
【００２５】
続いて、ソフト分割処理部２８は、残りの物理ブロックの印字データから論理ブロック（例えば、図６に示す論理ブロックＲ２）の生成を行い、この論理ブロックをヘッド駆動回路２７に転送する（ステップＳ３４）。続いて、この論理ブロックを基に、印字ドット数が動的分割数ｎの範囲内になるようなヘッド駆動パターンを順次に決定し（ステップＳ３５）、通電パルス制御部２４により、ヘッド駆動パターンに応じたストローブ信号を印加し、サーマルヘッドを駆動する（ステップＳ３６）。
【００２６】
続いて、１ドットラインの印字がすべて終了したかが判定され（ステップＳ３７）、終了していない場合は（ステップＳ３７：Ｎｏ）、ステップＳ３４に移行し、全て終了している場合は（ステップＳ３７：Ｙｅｓ）、処理を終了する。
【００２７】
ところで上述したソフト分割においては、分割のドット数に応じて、物理ブロックに等分にマスクを施し、論理ブロックを構成していたため、ドット数の組み合わせにおいて、無駄な分割が発生することがあった。
【００２８】
例えば、図６（Ｃ）における例では、４回のストローブ信号の発生が必要になっていた。このため、印字速度の低下を招くことがあり、この問題の解決が望まれていた。
【００２９】
なお、従来技術のラインサーマルヘッドが開示されている（例えば、特許文献１を参照）。しかしながら、この特許文献１のラインサーマルヘッドは、ラインサーマルヘッドの印字データの転送制御を介して低電流駆動化を行うことを目的としており、上記ソフト分割時における印字速度の低下を回避することを目的とはしておらず、本発明とは目的と構成が異なるものである。
【特許文献１】特開平４−２７９３６２号公報
【発明の開示】
【発明が解決しようとする課題】
【００３０】
本発明は、斯かる実情に鑑みなされたものであり、本発明の目的は、ソフト分割時に無駄なドットデータの分割が発生することをなくし、印字速度の低下を低減できる、サーマルプリンタ、および、サーマルヘッドの印字制御方法を提供することにある。
【課題を解決するための手段】
【００３１】
本発明は上記課題を解決するためになされたものであり、本発明のサーマルプリンタは、複数の発熱素子がライン状に配設されたサーマルヘッドを感熱紙に押し当て、前記発熱素子にパルス通電を行うことにより印字を行うと共に、前記サーマルヘッドの発熱素子が複数の物理ブロックに分割されており、各物理ブロック内の発熱素子が１つのストローブ信号で駆動されるサーマルプリンタにおいて、前記各物理ブロックを、サーマルヘッドの駆動に使用される電源の容量に応じた所定の分割ドット数ｎで分割し、複数の仮想物理ブロックを生成するソフト分割処理部と、前記各仮想物理ブロック内の印字ドット数を基に、仮想物理ブロック内の印字ドット数の合計が前記分割ドット数ｎを越えない範囲で、前記仮想物理ブロックの組み合わせパターンを１または２以上選択すると共に、これらの仮想物理ブロックの組み合わせパターンを含む仮想論理ブロックを生成する仮想論理ブロック生成部と、前記仮想論理ブロック内に含まれる仮想物理ブロックの印字データを受信し、前記仮想物理ブロックの組み合わせパターンごとに、該仮想物理ブロックの組み合わせパターンに対応するストローブ信号のパターンを生成し、前記発熱素子を駆動するヘッド駆動部と、を備えることを特徴とする。
上記構成からなる本発明のサーマルプリンタでは、サーマルヘッドの駆動に使用される電源の容量に応じた分割ドット数ｎで物理ブロックを分割し、複数の仮想物理ブロックを生成する。そして、印字ドット数が分割ドット数ｎを越えない範囲で、仮想物理ブロックの組み合わせパタンーンを１または２以上選択し、仮想論理ブロックを生成する。ヘッド駆動部は、仮想論理ブロック内に含まれる仮想物理ブロックの印字データを受信し、仮想物理ブロックの組み合わせパターンごとに、該仮想物理ブロックの組み合わせパターンに応じたストローブ信号のパターンを生成し、発熱素子を駆動する。
これにより、ソフト分割時に無駄なドットデータの分割が発生することをなくし、印字速度の低下を低減できる。
【００３２】
また、本発明のサーマルプリンタは、前記各仮想物理ブロック内の印字ドット数を基に、仮想物理ブロック内の印字ドット数の合計が前記分割ドット数ｎを越えない範囲で、前記仮想物理ブロックの組み合わせパターンを１または２以上選択すると共に、これらの仮想物理ブロックの組み合わせパターンを含む第１の仮想論理ブロック生成し、また、前記第１の仮想論理ブロックの生成時に選択されなかった残りの仮想物理ブロックを基に、前記第１の仮想論理ブロックの生成と同様にして第２の仮想論理ブロックを生成し、さらに、前記仮想論理ブロックの生成を前記仮想物理ブロックが全て選択されるまで繰り返して、複数の仮想論理ブロックを生成するように構成され、前記仮想論理ブロック内に含まれる仮想物理ブロックの印字データを、前記各仮想論理ブロックごとに前記ヘッド駆動部に転送すると共に、該転送の際に、転送する仮想論理ブロックに含まれていない仮想物理ブロック内の印字データをスペースデータにして転送するデータ転送部を、備えることを特徴とする。
上記構成からなる本発明のサーマルプリンタでは、仮想論理ブロック生成部は、各物理ブロックの組み合わせパターンを選択し、これらの選択された仮想物理ブロックからなる第１の仮想論理ブロックを生成すると共に、残りの仮想物理ブロックを基に、第２の仮想論理ブロックを生成し、さらに、仮想物理ブロックが全て選択されるまで仮想物理ブロックの選択を繰り返し、複数の仮想論理ブロックを生成する。そして、データ転送部は、各仮想論理ブロックのデータをヘッド駆動部に転送する際に、転送する仮想論理ブロックに含まれていな仮想物理ブロック内の印字データをスペースデータにして転送する。
これにより、適正にドットデータを分割した仮想論理ブロックを生成することができる。このため、ソフト分割時に無駄なドットデータの分割が発生することをなくし、印字速度の低下を低減できる。
【００３３】
また、本発明のサーマルプリンタは、前記サーマルヘッドの発熱素子は６個の物理ブロックで構成されると共に、各物理ブロックはそれぞれ６４個の発熱素子により構成されており、前記電源の容量に応じた分割ドット数ｎが３２であり、前記ソフト分割処理部は、前記物理ブロックを分割ドット数３２で２分割し、１２個の仮想物理ブロックを生成するように、構成されたことを特徴とする。
これにより、サーマルヘッドが６個の物理ブロックで構成されると共に、各物理ブロックがそれぞれ６４個の発熱素子により構成されるサーマルヘッドにおいて、ソフト分割時に無駄なドットデータの分割が発生することをなくし、印字速度の低下を低減できる。
【００３４】
また、本発明の印字制御方法は、複数の発熱素子がライン状に配設されたサーマルヘッドを感熱紙に押し当て、前記発熱素子にパルス通電を行うことにより印字を行うと共に、前記サーマルヘッドの発熱素子が複数の物理ブロックに分割されており、各物理ブロック内の発熱素子が１つのストローブ信号で駆動されるサーマルプリンタにおける印字制御方法であって、前記各物理ブロックを、サーマルヘッドの駆動に使用される電源の容量に応じた所定の分割ドット数ｎで分割し、複数の仮想物理ブロックを生成するソフト分割処理手順と、前記各仮想物理ブロック内の印字ドット数を基に、仮想物理ブロック内の印字ドット数の合計が前記分割ドット数ｎを越えない範囲で、前記仮想物理ブロックの組み合わせパターンを１または２以上選択すると共に、これらの仮想物理ブロックの組み合わせパターンを含む仮想論理ブロックを生成する仮想論理ブロック生成手順と、前記仮想論理ブロック内に含まれる仮想物理ブロックの印字データを受信し、前記仮想物理ブロックの組み合わせパターンごとに、該仮想物理ブロックの組み合わせパターンに対応するストローブ信号のパターンを生成し、前記発熱素子を駆動するヘッド駆動手順と、を含むことを特徴とする。
上記手順を含む本発明の印字制御方法では、サーマルヘッドの駆動に使用される電源の容量に応じた分割ドット数ｎで物理ブロックを分割し、複数の仮想物理ブロックを生成する。そして、印字ドット数が分割ドット数ｎを越えない範囲で、前記仮想物理ブロックの組み合わせパタンーンを１または２以上選択し、仮想論理ブロックを生成する。ヘッド駆動部は、仮想論理ブロック内に含まれる仮想物理ブロックの印字データを受信し、仮想物理ブロックの組み合わせパターンごとに、該仮想物理ブロックの組み合わせパターンに応じたストローブ信号のパターンを生成し、発熱素子を駆動する。
これにより、ソフト分割時に無駄なドットデータの分割が発生することをなくし、印字速度の低下を低減できる。
【発明の効果】
【００３５】
本発明のサーマルプリンタでは、ソフト分割時に仮想物理ブロック方式を用いることで、無駄なドットデータの分割が発生することがなくなり、印字速度の低下を低減できる。
【発明を実施するための最良の形態】
【００３６】
以下、本発明の実施の形態を添付図面を参照して説明する。
【００３７】
ここで、最初に本明細書で使用している用語について説明しておく。
物理ブロックとは、サーマルヘッド内の複数の発熱素子をグループ単位に分けたものであり、１つのストローブ信号で同時に駆動される発熱素子のグループである。
【００３８】
また、仮想物理ブロックとは、物理ブロックを所定の分割ドット数で分割したものである。また、仮想論理ブロックとは、選択された仮想物理ブロックの組み合わせパターンを１または２以上含む、仮想物理ブロックの集合体である。
【００３９】
図１は、本発明の実施の形態に係わるサーマルプリンタの構成を示す図であり、本発明に直接関係する部分を示したものである。
【００４０】
図１に示すサーマルプリンタ１は、ＣＰＵ（Central Processing Unit）、ＲＯＭ(Read Only Memory)、ＲＡＭ（(Read Only Memory)を含む主制御部１１と、主制御部１１内のプリント制御部２１とで構成される。また、プリント制御部２１内のプリント用印字データ生成部２２は、外部入力される画像データを基に、プリント用印字データ（印字ドットデータ）を生成する。
【００４１】
なお、図１に示すサーマルプリンタ１が、図５に示す従来のサーマルプリンタと構成上、異なるのは、図１に示すソフト分割処理部２８内に、新たに仮想論理ブロック生成部２９を設けた点であり、他の構成は図５に示すサーマルプリンタと同様であり、同一の構成部分には同一の符号を付している。
【００４２】
ソフト分割処理部２８では、サーマルヘッド３１の物理ブロック１から６を、分割数ｎドットにより仮想物理ブロックに分割する。この分割数ｎドットは、サーマルヘッド駆動電源が流せる最大電流おいて、同時に印字できるドット数を基に決定されるものであり、電源容量や、サーマルヘッドの発熱素子の種類や、個数に応じて動的に決定されるものである。
【００４３】
図１に示す例では、物理ブロック１〜６内の６４ドット（８バイト）を３２ドット（４バイト）で動的に分割し、仮想物理ブロックＢ１〜Ｂ１２に分割する。そして、仮想物理ブロックＢ１〜Ｂ１２に、各々３２個の発熱素子Ｒ１〜Ｒ３２がライン状に配列されるようにする。また、各印字ドットバッファ２５内のメモリブロックＭ１〜Ｍ６についても同様に２分割し、１２個のメモリブロックｍ１〜ｍ１２に分割する。
【００４４】
これにより、メモリブロックｍ１が仮想物理ブロックＢ１に対応し、メモリブロックｍ２が仮想物理ブロックＢ２に対応する。以下、メモリブロックｍ３〜ｍ１２が仮想物理ブロックＢ３〜Ｂ１２に、それぞれ対応する。
【００４５】
そして、図２（Ａ）に示すように、仮想物理ブロックＢ１〜Ｂ１２における印字ドット数（実際に印字されるドット数）が、仮想物理ブロックＢ１は９、仮想物理ブロックＢ２は１０とする。仮想物理ブロックＢ３は２４、仮想物理ブロックＢ４は５、仮想物理ブロックＢ５は３、仮想物理ブロックＢ６は３０とする。仮想物理ブロックＢ７は２０、仮想物理ブロックＢ８は１０、仮想物理ブロックＢ９は５、仮想物理ブロックＢ１０は２３とする。また、仮想物理ブロックＢ１１は８、仮想物理ブロックＢ１２は１０とする。
【００４６】
そして、仮想論理ブロック生成部２９では、図２（Ａ）に示される仮想物理ブロックＢ１〜Ｂ１２内のドットデータ数を順に見て行き（加算して行き）、同一のタイミングで印字できるドット数（印字ドット数が３２ドット、またはそれに近いドット数（３２ドット以下））になるような組み合わせ（グループ）を選択する。これにより、図２（Ｂ）に示す仮想論理ブロックＫ１が得られる。なお、仮想論理ブロックは、印字対象として選択された仮想物理ブロックの組み合わせからなる、仮想物理ブロックの集合体である。
【００４７】
例えば、図２（Ａ）において、仮想物理ブロックＢ１を含む最初のグループを選択する場合に、仮想物理ブロックＢ１のドットデータ数（９）と、仮想物理ブロックＢ２のドットデータ数（１０）を合計する。この場合は、１９ドット（Ｂ１＋Ｂ２）となり（３２ドット以下）、さらに次の仮想物理ブロックＢ３を見る。しかし、仮想物理ブロックＢ３のドットデータ数（２４）を１９ドット（Ｂ１＋Ｂ２）に加算すると、３２ドットを越えるので、仮想物理ブロックＢ３を選択せずに、次の仮想物理ブロックＢ４を見る。仮想物理ブロックＢ４のドットデータ数（５）を１９ドット（Ｂ１＋Ｂ２）に加算すると２４ドット（Ｂ１＋Ｂ２＋Ｂ４）になるので仮想物理ブロックＢ４を選択する。
【００４８】
以下同様にして、加算できるドットデータ数を持つ仮想物理ブロックを選択し行き、仮想物理ブロックＢ５、Ｂ９が選択できることが分かる。これにより、まず、第１のグループとして、仮想物理ブロックＢ１，Ｂ２，Ｂ４、Ｂ５、Ｂ９が選択される（合計３２ドット）。
【００４９】
続いて、さらに次のグループの選択を続ける。この場合に、既に仮想物理ブロックが選択された物理ブロックに属する仮想物理ブロックについては、グループ選択から除外する（同一のストローブ信号で駆動される印字ドット数の合計が３２ビットを超えてしまうため）。従って、物理ブロック１、２、３内の仮想物理ブロックＢ３、Ｂ６は除外される。
【００５０】
従って、次のグループは、物理ブロック４内の仮想物理ブロックＢ７から選択が開始される。そして、同一のタイミングで印字できるドット数（印字ドット数が３２ドット、またはそれに近いドット数（３２ドット以下））になるような組み合わせを選択する。これにより、仮想物理ブロックＢ７、Ｂ８が選択される。また、さらに次のグループとして、仮想物理ブロックＢ１１とＢ１２が選択される。
【００５１】
これにより、図２（Ｂ）に示す仮想物理ブロックＢ１〜Ｂ１２に対応した、仮想論理ブロックＫ１が得られる。この仮想論理ブロックＫ１は、第１のグループ（仮想物理ブロックＢ１、Ｂ２、Ｂ４、Ｂ５、Ｂ９）と、第２のグループ（仮想物理ブロックＢ７、Ｂ８）と、第３のグループ（仮想物理ブロックＢ１１、Ｂ１２）で構成されたものである。この仮想論理ブロックＫ１の印字ドットデータをデータ転送回路２６を通して、ヘッド駆動回路２７に転送する。
【００５２】
そして、通電パルス制御部２４では、最初に第１ストローブ信号（ＳＴＢ１、ＳＴＢ２、ＳＴＢ３、ＳＴＢ５）をイネーブルにし、仮想物理ブロックＢ１，Ｂ２、Ｂ４、Ｂ５、Ｂ９のドットデータの印字を行う。次に、第２ストローブ信号（ＳＴＢ４）をイネーブルにし、仮想物理ブロックＢ７，Ｂ８のドットデータの印字を行う。続いて、第３ストローブ信号（ＳＴＢ６）をイネーブルにし、仮想物理ブロックＢ１１，Ｂ１２のドットデータの印字を行う。
以上の処理により、３２ドットまたはこれに近いドット数での印字を繰り返しながら、図２（Ｂ）に示す仮想論理ブロックＫ１のデータの印字が完了する。
【００５３】
次に、図２（Ｃ）に示す仮想論理ブロックＫ２を生成する。この仮想論理ブロックＫ２は、図２（Ｂ）の仮想論理ブロックＫ１において選択されなかった仮想物理ブロックＢ３，Ｂ６、Ｂ１０で構成される。
【００５４】
図２（Ｃ）に示す仮想論理ブロックＫ２についても、３２ドット以内で印字するグループを選択する。これにより、第１のグループとして、仮想物理ブロックＢ３が選択され、第２のグループとして、仮想物理ブロックＢ６が選択され、第３のグループとして仮想物理ブロックＢ１０が選択される。
【００５５】
この仮想論理ブロックＫ２の印字ドットデータをデータ転送回路２６を通して、ヘッド駆動回路２７に転送する。
【００５６】
そして、通電パルス制御部２４では、最初に第１ストローブ信号（ＳＴＢ２）をイネーブルにし、仮想物理ブロックＢ３の印字を行う。次に、第２ストローブ信号（ＳＴＢ３）をイネーブルにし、仮想物理ブロックＢ６のドットデータの印字を行う。続いて、第３ストローブ信号（ＳＴＢ５）をイネーブルにし、仮想物理ブロックＢ１０のドットデータの印字を行う。
これにより、３２ドットまたはこれに近いドット数での印字を繰り返しながら、図２（Ｃ）に示す仮想論理ブロックＫ２のデータの印字が完了する。
【００５７】
以上説明した仮想論理ブロックＫ１および仮想論理ブロックＫ２による印字処理を行うことにより、図１（Ａ）に示す１ドットラインデータの印字処理が完了する。
【００５８】
上述した印字処理方法においては、３２ドットのなるべく近い値で印字するグループを選択するようにしているので、無駄な印字を回避することができる。すなわち、図６に示す従来のソフト分割処理では、同じ１ドットライン印字データに対して印字回数が７回でるのに対し、図２に示す例では、６回になっている。
【００５９】
このように、本発明においては、サーマルヘッド駆動電源２３における消費電流を抑えながら（３２ドット以下の印字）、印字回数を低減させることができ、従来のソフト分割に比べて印字速度の低下を抑制することができる。
【００６０】
なお、前述したソフト分割処理部はソフト分割処理部２８が相当し、仮想論理ブロック生成部は仮想論理ブロック生成部２９が相当する。また、ヘッド駆動部は、ソフト分割処理部２８により制御される通電パルス制御部２４およびヘッド駆動回路２７が相当する。また、データ転送部は、ソフト分割処理部２８により制御されるデータ転送回路２６が相当する。
【００６１】
また、図３は、上述した本発明のサーマルプリンタにおけるサーマルヘッドの印字処理動作をフローチャートで示したものある。以下、図３を参照して、その処理の流れについて説明する。
【００６２】
ソフト分割処理部２８内の仮想論理ブロック生成部２９では、仮想物理ブロックを基にして仮想論理ブロックの生成を行い、この仮想物理ブロックをヘッド駆動回路２７に転送する（ステップＳ１）。ヘッド駆動回路２７では、仮想論理ブロックに含まれる仮想物理ブロックの組み合わせパターンを基に、ヘッド駆動パターンを決定し（ステップＳ２）、通電パルス制御部２４により、ヘッド駆動パターンに応じたストローブ信号を印加し、サーマルヘッドを駆動する（ステップＳ３）。
【００６３】
続いて、仮想論理ブロック生成部２９は、残り分仮想物理ブロックから仮想論理ブロックの生成を行い、この仮想論理ブロックをヘッド駆動回路２７に転送する（ステップＳ４）。ヘッド駆動回路２７では、仮想論理ブロックに含まれる仮想物理ブロックの組み合わせパターンを基に、ヘッド駆動パターンを決定し（ステップＳ５）、通電パルス制御部２４により、ヘッド駆動パターンに応じたストローブ信号を印加し、サーマルヘッドを駆動する（ステップＳ６）。
【００６４】
続いて、１ドットラインの印字がすべて終了したかが判定され（ステップＳ７）、終了していない場合は（ステップＳ７：Ｎｏ）、ステップＳ４に移行し、全て終了している場合は（ステップＳ７：Ｙｅｓ）、処理を終了する。
【００６５】
また、図４は、仮想論理ブロックの生成とデータ転送処理の流れを示すフローチャートである。
【００６６】
図４を参照して、最初に、動的分割ドット数ｎに合わせて各物理ブロックを仮想物理ブロックへ分割する（ステップＳ１１）。例えば、図１に示すように、物理ブロック１〜６を３２ドット動的分割し、仮想物理ブロックＢ１〜Ｂ１２へ分割する。この仮想物理ブロック内の印字ドット数から、仮想物理ブロックの組み合わせパターンを選択し仮想論理ブロックを生成する（ステップＳ１２）。例えば、図２（Ｂ）に示す仮想論理ブロックＫ１を生成し、この仮想論理ブロックに含まれる仮想物理ブロックの印字データをヘッド駆動回路２７に転送する（ステップＳ１３）。
【００６７】
以上説明したように、本発明のサーマルプリンタにおいては、物理ブロックを動的に分割して仮想物理ブロックを生成し、この仮想物理ブロック内における印字ドット数のデータを基に、適正な印字ドット数を持つ仮想物理ブロックの組み合わせパターンを生成し、この組み合わせパターンを含む仮想論理ブロックを生成する。このように、ソフト分割時に仮想論理ブロック方式を用いることで、物理ブロックをソフト分割する際に、従来技術のようにムダな分割が発生することがなくなり、印字速度の低下を低減できるようになる。
【００６８】
以上、本発明の実施の形態に係わるサーマルプリンタについて説明したが、上述したプリント制御部２１内の各処理部は専用のハードウェアで構成してもよく、また、主制御部１１内のＣＰＵがプログラムを読み出して実行することにより、各処理部の機能を実現するようにしてもよい。
【００６９】
以上、本発明の実施の形態について説明したが、本発明のサーマルプリンタは、上述の図示例にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
【図面の簡単な説明】
【００７０】
【図１】本発明の実施の形態に係わるサーマルプリンタの構成を示す図である。
【図２】仮想論理ブロック生成とデータ転送について説明するため図である。
【図３】本発明における１ドットライン印刷動作の処理の流れを示すフローチャートである。
【図４】仮想論理ブロックの生成及びデータ転送処理の流れを示すフローチャートである。
【図５】従来のサーマルプリンタの構成を示す図である。
【図６】従来のサーマルプリンタにおけるソフト分割処理について説明するための図である。
【図７】ソフト分割時における１ドットライン印字処理の流れを示すフローチャートである。
【符号の説明】
【００７１】
１・・・サーマルプリンタ、１１・・・主制御部、２１・・・プリント制御部、２２・・・プリント用印字データ生成部、２３・・・サーマルヘッド駆動電源、２４・・・通電パルス制御部、２５・・・印字ドットバッファ、２６・・・データ転送回路、２７・・・ヘッド駆動回路、２８・・・ソフト分割処理部、２９・・・仮想論理ブロック生成部、３１・・・サーマルヘッド、４１・・・感熱紙
【図１】
2009096078.tif 000003
【図２】
2009096078.tif 000004
【図３】
2009096078.tif 000005
【図４】
2009096078.tif 000006
【図５】
2009096078.tif 000007
【図６】
2009096078.tif 000008
【図７】
2009096078.tif 000009