JP7165503B2 - サーマルプリンタおよび印刷制御方法 - Google Patents

サーマルプリンタおよび印刷制御方法 Download PDF

Info

Publication number
JP7165503B2
JP7165503B2 JP2018063471A JP2018063471A JP7165503B2 JP 7165503 B2 JP7165503 B2 JP 7165503B2 JP 2018063471 A JP2018063471 A JP 2018063471A JP 2018063471 A JP2018063471 A JP 2018063471A JP 7165503 B2 JP7165503 B2 JP 7165503B2
Authority
JP
Japan
Prior art keywords
print
character
data
gradation
control data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018063471A
Other languages
English (en)
Other versions
JP2019171708A (ja
Inventor
康弘 原山
智裕 渡辺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Component Ltd
Original Assignee
Fujitsu Component Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Component Ltd filed Critical Fujitsu Component Ltd
Priority to JP2018063471A priority Critical patent/JP7165503B2/ja
Publication of JP2019171708A publication Critical patent/JP2019171708A/ja
Application granted granted Critical
Publication of JP7165503B2 publication Critical patent/JP7165503B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Electronic Switches (AREA)

Description

本発明は、サーマルプリンタおよび印刷制御方法に関する。
サーマルヘッドの発熱体を発熱させて画像を印刷するサーマルプリンタが知られている。また、発熱体へのエネルギーの通電時間を制御することによって、多階調画像を印刷する技術が知られている。
特許文献1には、印刷時の階調を指定する入力データに応じてサーマルヘッドの通電を時分割し、サーマルヘッドの総通電時間と時分割の回数を制御することにより、発熱体に印加するエネルギーの総和を制御して印刷濃度を制御する技術が開示されている。
特許文献2には、1画素を記録用紙送り方向に複数分割して記録し、指定された多階調でドットパターンを記録する技術が開示されている。
特開昭64-90770号公報 特開昭63-93272号公報
特許文献1,2の技術は画像の多階調印刷を行うものであり、文字の多階調印刷を行うものではない。
また、画像の多階調印刷のために、入力した画像データを多階調印刷用の印刷制御データにデータ展開する必要があり、生成した印刷制御データを格納するバッファが必要となっていた。バッファに格納するデータ量が増加すると、データ展開やバッファに対するデータの書き込み、読み出しが長時間化するため、印刷処理時間が長時間化する虞がある。
本発明は、バッファに記憶されるデータのデータ量を抑制しつつ、文字を多階調に印刷できるようにすることを目的とする。
上述した課題を解決するために、本発明のサーマルプリンタは、サーマルヘッドの発熱体によって印刷を行うサーマルプリンタであって、印刷データを取得する取得部と、印刷データに含まれる文字データに関するバッファ情報をバッファに設定する設定部と、バッファに設定されたバッファ情報に基づいて、文字を印刷するための印刷制御データを生成する変換部と、印刷制御データをサーマルヘッドに転送して文字を印刷させる転送部と、を備え、設定部は、文字の階調を示す階調情報をバッファに設定し、変換部は、バッファに設定された階調情報に基づいて、階調情報が示す階調で文字を印刷するための印刷制御データを生成する。
本発明によれば、バッファに記憶されるデータのデータ量を抑制しつつ、文字を多階調に印刷することができる。
実施形態に係るサーマルプリンタの構成を示す図である。 実施形態に係るサーマルヘッドの構成を示す図である。 実施形態に係るサーマルプリンタの機能構成を示す図である。 実施形態に係る処理の手順を示すフローチャートである。 コードバッファに設定されるデータを示す図である。 印刷制御データの生成に用いられるグラフィックデータを示す図である。 記憶部に記憶される設定テーブルを示す図である。 変換部が生成する印刷制御データを示す図である。 実施形態に係るサーマルプリンタの各種信号のタイミングを示す図である。 実施形態に係るサーマルプリンタによって印刷された文字を示す図である。
〔実施形態〕
以下、図面を参照して、実施形態について説明する。
(サーマルプリンタ)
図1は、実施形態に係るサーマルプリンタ10の構成を示す図である。図1に示すサーマルプリンタ10は、入力した印刷データに応じてサーマルヘッド121の発熱体を発熱させて感熱紙等の印刷媒体に文字を印刷する装置である。図1に示すように、サーマルプリンタ10は、制御回路ユニット100、プリンタメカ部120、およびバッテリ140を備える。
制御回路ユニット100は、MCU101、メモリ102、駆動回路103、駆動回路104、およびI/F(Inter Face)回路105を備える。
MCU101は、印刷データから印刷制御データを生成する処理、印刷制御データをサーマルヘッド121へ送信する処理、モータ制御データを駆動回路104へ送信する処理といった制御処理を行う。MCU101はCPU(Central Processing Unit)、メモリ(例えばROM(Read Only Memory)、フラッシュメモリ)を備えて構成される。
メモリ102は、MCU101が制御処理を行う際に必要な各種データを記憶する。メモリ102としては、例えばRAM(Random Access Memory)が用いられる。
駆動回路103は、MCU101から出力された印刷制御データをサーマルヘッド121へ供給して、サーマルヘッド121の駆動を制御する。
駆動回路104は、MCU101から出力されたモータ制御データに基づいて、印刷媒体の用紙送りを行うためのパルスモータ122の駆動を制御する。
I/F(Inter Face)回路105は、MCU101とパーソナルコンピュータ等の外部機器との間の各種データ送受信を制御する。
プリンタメカ部120は、サーマルヘッド121、パルスモータ122、サーミスタ123を備える。サーマルヘッド121は複数の発熱体(図2参照)を有し、駆動回路103から入力する印刷制御データに応じて発熱体を駆動して印刷媒体への印刷を行う。パルスモータ122は、サーマルプリンタ10の用紙送りローラ(図示省略)を駆動回路104から入力するモータ制御データにより駆動して用紙送りを行う。サーミスタ123は、サーマルヘッド121の温度を検出し、検出された温度を表す検出値TをMCU101に送信する。
バッテリ140は、サーマルプリンタ10の各部を動作させるための電力を供給する。バッテリ140としては、例えばリチウムイオンバッテリが用いられる。
(サーマルヘッド121の構成)
図2は、実施形態に係るサーマルヘッド121の構成を示す図である。図2に示すように、サーマルヘッド121は、発熱体R1~R640、集積回路IC1~IC640、シフトレジスタ201、およびラッチレジスタ202を備える。
発熱体R1~R640は、サーマルヘッド121の主走査方向に一列に並べて設けられている。発熱体R1~R640は、エネルギーの印加すなわち通電によって発熱し、感熱紙を加熱して文字を印刷する。サーマルプリンタ10は、発熱体R1~R640により1印刷ラインにつき640個のドットを印刷媒体に印刷できる。
発熱体R1~R640は、印刷領域に応じて分割された印刷ブロックごとに制御される。本実施形態では、発熱体R1~R640は160個の発熱体ごとに、第1の印刷ブロック(R1~R160)と、第2の印刷ブロック(R161~R320)と、第3の印刷ブロック(R321~R480)と、第4の印刷ブロック(R481~R640)とに分割されている。なお、サーマルプリンタ10に設けられる発熱体の数、印刷ブロックの数等は、本実施形態に例示される構成に限られるものではない。
集積回路IC1~IC640は各発熱体R1~R640に対応して設けられ、それぞれ発熱体R1~R640に接続されている。IC1~IC640は、MCU101から入力するストローブ信号のオンオフによってそのオンオフが制御される。IC1~IC640は、ラッチレジスタ202から入力する信号が「1」でMCU101から入力するストローブ信号が「オン」の場合にオンになり、対応する発熱体R1~R640に通電する。発熱体R1~R640の通電時間はストローブ信号がオンとなっている時間により制御され、通電時間が長いほど発熱体R1~R640に印加されるエネルギーが大きくなる。
シフトレジスタ201は、発熱体R1~R640に対応する640ビットの1印刷ライン分の印刷制御データを記憶する。シフトレジスタ201が記憶する印刷制御データは発熱体R1~R640の発熱を制御するデータであり、ビットが「1」である場合にはそのビットに対応する発熱体がオンとなり、ビットが「0」である場合には対応する発熱体がオフとなる。
ラッチレジスタ202は、シフトレジスタ201と同様に、発熱体R1~R640に対応する1印刷ライン分の印刷制御データを記憶するデータ記憶領域を有する。ラッチレジスタ202は、MCU101から/LAT信号(データラッチ信号)を受信したタイミングで、シフトレジスタ201が記憶する印刷制御データをラッチする。ラッチレジスタ202によってラッチされた1印刷ライン分の印刷制御データは、IC1~IC640に入力する。
MCU101は、外部機器から入力する印刷データに基づいて文字を印刷するための印刷制御データ(DI信号)を生成する。MCU101は、メモリ102に記憶された設定テーブル(図7参照)に基づいて、印刷データ中の各文字が印刷データによって指定された階調で印刷されるように、印刷制御データを生成する。文字の階調とは文字の印刷濃度を意味する。本実施形態では、文字の印刷濃度を文字毎に異ならせることができる。
MCU101は、生成したDI信号を1印刷ライン単位でクロック同期式シリアル通信によってシフトレジスタ201へ送信する。また、MCU101は、シフトレジスタ201への1印刷ライン分のDI信号の送信が完了すると、/LAT信号をラッチレジスタ202へ送信する。これにより、MCU101は、シフトレジスタ201が記憶する1印刷ライン分の印刷制御データをラッチレジスタ202にラッチさせる。
また、MCU101は、発熱体に対するエネルギーの通電時間を制御するストローブ信号を印刷ブロック毎に送信する。MCU101は、第1の印刷ブロックを制御するIC1~IC160にストローブ信号STB1を送信する。また、MCU101は第2の印刷ブロックを制御するIC161~IC320にストローブ信号STB2を送信する。また、MCU101は第3の印刷ブロックを制御するIC321~IC480にストローブ信号STB3を送信する。また、MCU101は第4の印刷ブロックを制御するIC481~IC640にストローブ信号STB4を送信する。
電源17は、発熱体R1~R640に接続され、発熱体R1~R640に電圧Vを印加する。MCU101は、分圧回路141によって分圧された電圧Vinに基づいて、電源17から発熱体R1~R640に印加されている電圧Vを求める。サーミスタ123はサーマルヘッド121の温度を測定し、測定値TをMCU101に送信する。
MCU101は、発熱体R1~R640に印加されている電圧Vに基づいて発熱体R1~R640に印加するエネルギーを補正し、電圧変化に起因するエネルギーの不足分を補う。
また、MCU101は、サーマルヘッド121の温度測定値Tに基づいて発熱体R1~R640に印加するエネルギーを補正し、温度変化に起因するエネルギーの不足分を補う。
(サーマルプリンタ10の機能構成)
図3は、サーマルプリンタ10の機能構成を示す図である。図3に示すように、サーマルプリンタ10は、取得部301、設定部302、コードバッファ303、変換部304、転送部305、および記憶部307を備える。
取得部301は、外部機器から送信された印刷データをI/F回路105を介して取得する。印刷データには、文字データと文字データが示す文字の印刷設定を示す印刷設定情報とが含まれている。印刷設定情報にはたとえば、文字毎の階調を示す階調情報が含まれている。取得部301の機能は、例えばメモリに記憶されたプログラムをCPUが実行することによって実現される。
設定部302は、取得部301が取得した文字データおよび印刷設定情報に基づいて、文字データに関するバッファ情報(コードバッファ文字情報)を文字毎にコードバッファ303に設定する。コードバッファ文字情報には例えば、印刷される文字のグラフィックデータや印刷設定が含まれている。
また、設定部302は、取得部301が取得した印刷設定情報に含まれている階調情報に基づいて、取得部301が取得した文字データに含まれている文字毎に階調情報をコードバッファ303に設定する。具体的には、設定部302は、各文字の階調情報を対応するコードバッファ文字情報に設定する。
また、設定部302は、取得部301が取得した文字データおよび印刷設定情報に基づいて、印刷データの印刷行に関するコードバッファ行情報をコードバッファ303に設定する。設定部302の機能は、メモリに記憶されたプログラムをCPUが実行することによって実現される。
コードバッファ303は、設定部302が設定した文字毎のコードバッファ文字情報と、文字毎の階調情報と、コードバッファ行情報とを記憶する。コードバッファ303は、例えばMCU101が備えるメモリである。
変換部304は、コードバッファ303に設定された文字毎のコードバッファ文字情報と文字毎の階調情報と、記憶部307に記憶されている設定テーブルとに基づいて、文字データに含まれる各文字を対応する階調情報で示す階調で印刷するための複数(本実施形態では、1印刷ラインあたり4つ)の印刷制御データを生成する。変換部304の機能は、メモリに記憶されたプログラムをCPUが実行することによって実現される。
転送部305は、1印刷ライン毎に、変換部304が生成した当該印刷ラインの複数の印刷制御データを、駆動回路103を介してサーマルヘッド121へ順次転送する。転送部305の機能は、メモリに記憶されたプログラムをCPUが実行することによって実現される。
記憶部307は、文字データに含まれる各文字に対して設定される階調毎に、印刷制御データに設定すべき設定値が対応付けられた設定テーブルを記憶する。なお、記憶部307が記憶する設定テーブルの詳細は図7を用いて後述する。記憶部307は、例えばメモリ102によって実現される。
サーマルヘッド121は、1印刷ライン毎に転送部305から順次転送される複数の印刷制御データに基づいて発熱体R1~R640を複数回駆動することにより、文字データに含まれる各文字を設定された階調情報が示す階調で印刷する。
(サーマルプリンタ10による処理)
図4は、サーマルプリンタ10による処理の手順を示すフローチャートである。
まず、取得部301は、外部機器から送信された文字データおよび印刷設定情報を含む印刷データをI/F回路105を介して取得する(S401)。
次に、設定部302は、S401で取得した印刷データに含まれている印刷設定情報に基づいて、印刷データの印刷行に関するコードバッファ行情報をコードバッファ303に設定する。(S402)。
また、設定部302は、S401で取得した印刷データに含まれている文字データおよび印刷設定情報に基づいて、文字毎にコードバッファ文字情報をコードバッファ303に設定する(S403)。
さらに、設定部302は、S401で取得した印刷設定情報に含まれている階調情報に基づいて、S401で取得した文字データに含まれている文字毎の階調情報をコードバッファ303に設定する(S404)。
続いて、変換部304は、コードバッファ303に設定されたコードバッファ文字情報および階調情報に基づいて、S401で取得した文字データに含まれている各文字を対応する階調で印刷するための印刷制御データを生成する(S405)。ここで変換部304は1印刷ラインにつき4つの印刷制御データを生成する。
そして、転送部305は、1印刷ライン毎に、S404で生成した4つの印刷制御データを駆動回路103を介してサーマルヘッド121へ順次転送する(S406)。サーマルヘッド121は、1印刷ライン毎に転送部305から順次転送される4つの印刷制御データに基づいて発熱体R1~R640を4回駆動して、文字データに含まれる各文字を対応する階調で印刷媒体に印刷する(S407)。そして、サーマルプリンタ10は、図4に示す一連の処理を終了する。
なお、S405~S407の処理は、サーマルプリンタ10が1印刷ライン毎に行う処理を示している。サーマルプリンタ10は、S405~S407の処理を印刷ライン数および印刷行数に応じて繰り返し実行することにより、印刷媒体に複数の印刷ラインおよび複数の印刷行の印刷を行う。
(コードバッファ303に設定されるデータ)
図5は、コードバッファ303に設定されるデータの一例を示す図である。図5に示すように、コードバッファ303には、設定部302によってコードバッファ行情報501、およびコードバッファ文字情報502が設定される。コードバッファ行情報501は、印刷データの印刷行に関するバッファ情報である。コードバッファ文字情報502は、文字データに含まれている文字毎に設定される当該文字に関するバッファ情報である。
図5に示す例では、コードバッファ行情報501は、データ項目として、コード数(1行あたりの文字数)、印字ライン数(1行あたりの印刷ライン数)、用紙送りライン数(1行の印刷ライン数+空白行の印刷ライン数)、左マージン、行内最大アンダーライン量(アンダーラインの幅のドット数)、および倒立文字[解除/指定]を含んでいる。
図5に示す例では、コードバッファ文字情報502はグラフィックデータの保存アドレスおよびグラフィック情報を含んでいる。保存アドレスには、印刷対象の文字のグラフィックデータ(図6参照)が保存されているメモリ102のアドレスが設定される。グラフィック情報は、データ項目として縦/横倍率、左右スペース量、アンダーライン高さ、右回転、白黒反転、強調、キャラクタサイズ、識別子、および階調を含んでいる。
ユーザは、各文字に対し4段階の階調(100%,80%,60%,0%)のいずれかを設定可能である。また、ユーザは、各文字に対し多階調印刷を行わない旨を示す「なし」を設定することも可能である。
変換部304は、文字データに含まれる各文字に対し、コードバッファ文字情報502に設定されている「階調」の設定値に基づいて印刷制御データを生成する。
ある文字の「階調」に「100%」が設定された場合、変換部304は、図7に示す設定テーブルに基づいてその文字を印刷濃度「100%」で印刷する印刷制御データを生成する。
ある文字の「階調」に「なし」が設定された場合、変換部304はその文字を所定の印刷濃度(例えば、100%)で印刷するための印刷制御データを生成する。
なお、本実施形態では、図7に示すように各文字を16段階の階調で印刷することが可能である。但し、本実施形態では、そのうちの4段階の階調(100%,80%,60%,0%)をユーザが使用する例を説明している。これにより、本実施形態では、文字データを印刷したときの文字間での印刷濃度の違いをユーザが容易に視認できるようにしている。
(印刷制御データ)
図6は、変換部304による印刷制御データの生成に用いられるグラフィックデータの一例を示す図である。図6(a)は文字「A」のグラフィックデータを16進数で表したものである。図6(b)は文字「A」のグラフィックデータを印刷イメージで表したものである。
図6に示すように1文字が16×16ドットで構成される場合、1文字分のグラフィックデータは8ドット毎に1byteのデータで表すことができる。図6(b)において、4行目の1~8番目のドットからなる部分(図中点線で囲んだ部分)については、2進数表記で「000011111」と表すことができ、16進数表記で「0x0F」と表すことができる。図6(a)に示すように、1文字分のグラフィックデータとして32byteのデータが必要となる。
サーマルプリンタ10は、文字の多階調印刷を行うために文字の印刷を1印刷ライン毎に4段階で行う。このため、変換部304は、各文字に対しグラフィックデータから4つの印刷制御データを生成する。すなわち、変換部304は、1文字につき32×4=128byteの印刷制御データを生成する。
但し、本実施形態では、コードバッファ303に比較的データ量が多い印刷制御データを格納するのではなく、比較的データ量が少ないコードバッファ文字情報および階調情報を設定する。図5では、1文字につき5byteの階調情報を含むコードバッファ文字情報を設定する。
サーマルプリンタ10は、コードバッファ303に設定されたコードバッファ文字情報および階調情報に基づいて、印刷時に1文字につき128byteの印刷制御データを生成する。これにより、本実施形態では、コードバッファ303が記憶するデータのデータ量を抑制しつつ、文字を多階調で印刷できるようになっている。
(設定テーブル)
図7は、記憶部307が記憶する設定テーブルの一例を示す図である。図7に示すように、設定テーブル700では、文字データに含まれる各文字に対して設定され得る階調毎に、その階調で印刷を行うため印刷制御データに設定すべき設定値と、その階調で印刷を行うためにサーマルヘッド121の発熱体に印加されるエネルギーとが対応付けられている。サーマルヘッド121に印加されるエネルギーは、印刷媒体に印刷される文字の印刷濃度と実質的に等しい。
本実施形態では、文字の多階調印字を行うために1印刷ラインの印刷を4段階で行う。このため、文字データに含まれる文字毎に1~4回目の印刷の各々の印刷制御データを生成する。これに応じて、設定テーブル700には各文字に対して設定され得る階調毎に、1~4回目の印刷制御データのそれぞれに設定すべき設定値(「ON」または「OFF」)が示されている。
1回目の印刷制御データは「53.3%」のエネルギーをサーマルヘッド121の発熱体に印加する制御データである。設定テーブル700で1回目の印刷制御データに対して「ON」が設定されている場合、対応する印刷制御データの値が「1」のドットの発熱体に対し、1回目の印刷では「53.3%」のエネルギーが印加される。
2回目の印刷制御データは、「26.7%」のエネルギーを発熱体に印加する制御データである。設定テーブル700で2回目の印刷制御データに対して「ON」が設定されている場合、対応する印刷制御データの値が「1」のドットに対応する発熱体に対し、2回目の印刷で「26.7%」のエネルギーが印加される。
3回目の印刷制御データは、「13.3%」のエネルギーを発熱体に印加する制御データである。設定テーブル700で3回目の印刷制御データに対して「ON」が設定されている場合、対応する印刷制御データの値が「1」のドットに対応する発熱体に対し、3回目の印刷では「13.3%」のエネルギーが印加される。
4回目の印刷制御データは「6.7%」のエネルギーを発熱体に印加する制御データである。設定テーブル700で4回目の印刷制御データに対して「ON」が設定されている場合、対応する印刷制御データの値が「1」のドットに対応する発熱体に対し、4回目の印刷では「6.7%」のエネルギーが印加される。
(印刷制御データ)
図8は、変換部304が生成する印刷制御データの一例を示す図である。ここでは、ある文字のグラフィックデータの一部(2進数表記で「00001111」で表される部分)に着目し、この部分を設定された階調で印刷するための印刷制御データを設定テーブルに基づいて生成する例を説明する。
図8(a)は、文字に階調「15」(「100%」)が設定された例を表している。この場合、変換部304は設定テーブル700に基づき、その文字の1~4回目の印刷制御データとしてそれぞれ「ON」,「ON」,「ON」,「ON」を設定する。これにより、変換部304は、図8(a)に示すように、その文字の1~4回目の印刷制御データとして2進数表記で「00001111」で表されるデータを生成する。これに応じて、1~4回目の印刷のそれぞれにおいて「1」が設定されたドット(図8では5~8番目のドット)に対応するサーマルヘッド121の発熱体が通電される。その結果、「1」が設定されたドットに対応する発熱体に階調「15」に応じたエネルギー「100%(53.3%+26.7%+13.3%+6.7%)」が4回に分けて印加され、そのドットが階調「15」に応じた印刷濃度(100%)で印刷される。
図8(b)は、文字に階調「12」(または「80%」)が設定された例を表している。この場合、変換部304は設定テーブル700に基づき、その文字の1~4回目の印刷制御データとしてそれぞれ「ON」,「ON」,「OFF」,「OFF」を設定する。これにより、変換部304は、図8(b)に示すようにその文字1~2回目の印刷制御データとして2進数表記で「00001111」で表されるデータを生成する、3~4回目の印刷制御データとして2進数表記で「00000000」で表されるデータを生成する。これに応じて、1~2回目の印刷では「1」が設定されたドットに対応する発熱体が通電され、3~4回目の印刷ではいずれの発熱体も通電されない。その結果、「1」が設定されたドットに対応する発熱体に対し、階調「12」に応じたエネルギー「80%(53.3%+26.7%)」が印加され、「1」が設定されたドットが階調「12」に応じた印刷濃度(80%)で印刷される。
図8(c)は、文字に階調「10」(または「60%」)が設定された例を表している。この場合、変換部304は設定テーブル700に基づき、その文字の1~4回目の印刷制御データとして「ON」,「OFF」,「OFF」,「ON」を設定する。これにより、変換部304は、図8(c)に示すようにその文字の1,4回目の印刷制御データとして2進数表記で「00001111」で表されるデータを生成する一方、2~3回目の印刷制御データとして2進数表記で「00000000」で表されるデータを生成する。これに応じて、1,4回目の印刷では「1」が設定されたドットに対応する発熱体が通電され、2~3回目の印刷ではいずれの発熱体も通電されない。その結果、「1」が設定されたドットに対応する発熱体に対し、階調「10」に応じたエネルギー「60%(53.3%+6.7%)」が印加され、そのドットが階調「10」に応じた印刷濃度(60%)で印刷される。
図8(d)は、文字に階調「8」(または「40%」)が設定された例を表している。この場合、変換部304は設定テーブル700に基づきその文字の1~4回目の印刷制御データとして「OFF」,「ON」,「ON」,「OFF」を設定する。これにより、変換部304は、図8(d)に示すようにその文字の2~3回目の印刷制御データとして2進数表記で「00001111」で表されるデータを生成する一方、1,4回目の印刷制御データとして2進数表記で「00000000」で表されるデータを生成する。これに応じて、2,3回目の印刷では「1」が設定されたドットに対応する発熱体が通電され、1、4回目の印刷ではいずれの発熱体も通電されない。その結果、「1」が設定されたドットに対応する発熱体に対し、階調「8」に応じたエネルギー「40%(26.7%+13.3%)」が印加され、そのドットが階調「8」に応じた印刷濃度(40%)で印刷される。
(各種信号のタイミング)
図9は、サーマルプリンタ10における各種信号のタイミングの一例を示す図である。ここでは、1印刷ラインを4段階で印刷する際の各種信号のタイミングを説明する。
まず、MCU101が、第1の印刷ステップの開始タイミング(t1)が到来するまでの間に、1印刷ライン分の1回目の印刷制御データd1をシフトレジスタ201へ送信する。その後、MCU101は1回目のデータラッチ信号をラッチレジスタ202へ送信する。これにより、ラッチレジスタ202が、シフトレジスタ201に記憶されている印刷制御データd1をラッチする。そして、t1が到来すると、ラッチレジスタ202によってラッチされた印刷制御データd1がIC1~IC640に入力する。その状態で、MCU101が1回目のストローブ信号s1(エネルギー:53.3%)をIC1~IC640に入力する。これにより、IC1~IC640のうち、印刷制御データd1に「1」が設定されているビットに対応するICがオンとなり、オンとなったICに対応する発熱体に53.3%のエネルギーが印加される。
次に、MCU101は、第2の印刷ステップの開始タイミング(t2)が到来するまでの間に2回目の印刷制御データd2をシフトレジスタ201へ送信する。その後、MCU101は2回目のデータラッチ信号をラッチレジスタ202へ送信する。これにより、ラッチレジスタ202がシフトレジスタ201内に記憶されている印刷制御データd2をラッチする。そして、t2が到来すると、ラッチレジスタ202によってラッチされた印刷制御データd2がIC1~IC640に入力する。その状態で、MCU101が2回目のストローブ信号s2(エネルギー:26.7%)をIC1~IC640に入力する。これにより、IC1~IC640のうち、印刷制御データd2に「1」が設定されているビットに対応するICがオンとなり、オンとなったICに対応する発熱体に26.7%のエネルギーが印加される。
次に、MCU101は、第3の印刷ステップの開始タイミング(t3)が到来するまでの間に3回目の印刷制御データd3をシフトレジスタ201へ送信する。その後、MCU101は3回目のデータラッチ信号をラッチレジスタ202へ送信する。これにより、ラッチレジスタ202がシフトレジスタ201内に記憶されている印刷制御データd3をラッチする。そして、t3が到来すると、ラッチレジスタ202によってラッチされた印刷制御データd3がIC1~IC640に入力する。その状態で、MCU101が3回目のストローブ信号s3(エネルギー:13.3%)をIC1~IC640に入力する。これにより、IC1~IC640のうち印刷制御データd3に「1」が設定されているビットに対応するICがオンとなり、オンとなったICに対応する発熱体に13.3%のエネルギーが印加される。
次に、MCU101は、第4の印刷ステップの開始タイミング(t4)が到来するまでの間に4回目の印刷制御データd4をシフトレジスタ201へ送信する。その後、MCU101は4回目のデータラッチ信号をラッチレジスタ202へ送信する。これにより、ラッチレジスタ202が、シフトレジスタ201内に記憶されている印刷制御データd4をラッチする。そして、t4が到来すると、ラッチレジスタ202によってラッチされた印刷制御データd4がIC1~IC640に入力する。その状態で、MCU101が4回目のストローブ信号s4(エネルギー:6.7%)をIC1~IC640に入力する。これにより、IC1~IC640のうち印刷制御データd4に「1」が設定されているビットに対応するICがオンとなり、オンとなったICに対応する発熱体に対し、6.7%のエネルギーが印加される。
なお、図9において、1印刷ライン分の印刷制御データの転送時間は、MCU101に予め設定されている転送速度設定と1印刷ラインのドット数とに依存する。転送速度設定が「4MHz」であり且つ1印刷ラインのドット数が「640ドット」である場合、1印刷ライン分の印刷制御データの転送時間は0.25μs(マイクロ秒)×640である。なお、本実施形態では1印刷ラインのドット数が「640ドット」であるが、1印刷ラインのドット数は、サーマルヘッド121のサイズに応じたもの(2インチ:48ドット,3インチ:72ドット,4インチ:104ドット)となる。
図9において、データラッチ信号の送信時間は例えば、数十ns(ナノ秒)~1μs程度である。
図9において、各ストローブ信号s1~s4の長さは印字濃度に応じたものとなる。ストローブ信号s1はエネルギー「53.3%」を発熱体に印加するために必要な長さとなる。ストローブ信号s2はエネルギー「26.7%」を発熱体に印加するために必要な長さとなる。ストローブ信号s3はエネルギー「13.3%」を発熱体に印加するために必要な長さとなる。ストローブ信号s4はエネルギー「6.7%」を発熱体に印加するために必要な長さとなる。ストローブ信号の長さが所定の1印刷ステップの割り当て時間よりも長くなる場合はストローブ信号の長さが優先され、1印刷ステップの割り当て時間が延長される。
図9において、1印刷ステップ毎のモータ信号の長さは印字速度に応じて変化する。1印刷ラインが1/8mmで印字速度を「100mm/秒」と指定した場合、1印刷ラインのモータ信号の長さは1.25msとなる。1印刷ラインにつき4ステップでモータを駆動する場合、1印刷ステップ毎のモータ信号の長さは1.25ms/4=0.3125msとなる。また、1印刷ラインが1/8mmで印字速度を「50mm/秒」と指定した場合、1印刷ラインのモータ信号の長さは2.5msとなり、1印刷ラインにつき4ステップでモータを駆動する場合、1印刷ステップ毎のモータ信号の長さは2.5ms/4=0.625msとなる。
(印刷された文字)
図10は、サーマルプリンタ10によって印刷された文字の例を示す。ここでは、サーマルプリンタ10によって文字「ABCDEFGH」が印刷された例を説明する。
文字「A」,「B」の階調として、コードバッファ303に「15(エネルギー:100%)」が設定されている場合、図10に示すように文字「A」,「B」は設定された階調「15(印刷濃度:100%)」で印刷される。
文字「C」,「D」の階調としてコードバッファ303に「12(エネルギー:80%)」が設定されている場合、図10に示すように文字「C」,「D」は設定された階調「12(印刷濃度:80%)」で印刷される。
文字「E」,「F」の階調として、コードバッファ303に「9(エネルギー:60%)」が設定されている場合、図10に示すように文字「E」,「F」は設定された階調「9(印刷濃度:60%)」で印刷される。
文字「G」,「H」の階調としてコードバッファ303に「6(エネルギー:40%)」が設定されている場合、文字「G」,「H」は設定された階調「6(印刷濃度:40%)」で印刷される。
このように、本実施形態では、文字毎にコードバッファ303に設定された階調で印刷することができる。特に、本実施形態では、コードバッファ303に設定可能な階調を、階調値が互いに所定値以上離れている4段階の階調(100%,80%,60%,40%)としている。これにより、本実施形態では、図10に示すように印刷された文字間の印刷濃度の違いをユーザが容易に視認できる。
以上説明したように、本実施形態では、コードバッファに設定した文字の階調情報に基づいて、設定された階調で文字を印刷するための印刷制御データを印刷時に生成する。これにより、本実施形態では、コードバッファが記憶するデータ量を抑制しつつ、文字を多階調で印刷できる。
本実施形態では、文字毎に設定した階調情報に基づいて各文字を設定された階調で印刷するための印刷制御データを印刷時に生成するため、文字毎に任意の階調で印刷できる。
なお、本実施形態では、文字毎に、コードバッファ303に階調とともに文字サイズや回転角度を設定することが可能である。これにより、本実施形態では各文字を任意の階調、文字サイズ、回転角度で印刷することができる。
以上、本発明の第1,第2実施形態について詳述したが、本発明はこれらの実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形又は変更が可能である。
例えば、上記実施形態では印刷濃度として100%,80%,60%,40%の4段階の階調値を設定しているが、コードバッファ303に他の4段階の階調値を設定してもよく、3段階以下の階調値あるいは5段階以上の階調値を設定可能としてもよい。
実施形態のサーマルプリンタ10は、文字のみならず画像を印刷可能なものであってもよい。文字データが印刷データとして入力した場合、文字データ用のバッファに文字データに関するバッファデータを格納し、印刷時にバッファデータから文字データを印刷するための印刷制御データを生成する。一方、画像データが入力した場合、画像データ用のバッファに画像データに関するバッファデータを格納し、印刷時にバッファデータから画像データを印刷するための印刷制御データを生成してもよい。
10 サーマルプリンタ
101 MCU
102 メモリ
103 駆動回路
121 サーマルヘッド
201 シフトレジスタ
202 ラッチレジスタ
301 取得部
302 設定部
303 コードバッファ
304 変換部
305 転送部
307 記憶部
IC1~IC640 集積回路
R1~R640 発熱体

Claims (5)

  1. サーマルヘッドの発熱体によって印刷を行うサーマルプリンタであって、
    印刷データを取得する取得部と、
    前記印刷データに含まれる文字データに関するコードバッファ文字情報をバッファに設定する設定部と、
    前記バッファに設定された前記コードバッファ文字情報に基づいて、文字を印刷するための印刷制御データを生成する変換部と、
    前記印刷制御データを前記サーマルヘッドに転送して前記文字を印刷させる転送部と、
    を備え、
    前記設定部は、
    前記印刷制御データの生成に用いられるグラフィックデータの保存アドレス及び文字の階調を示す階調情報を前記バッファに設定し、
    前記転送部は、
    前記バッファに設定された前記階調情報に基づいて、前記変換部で生成された1印刷ライン分の前記印刷制御データを順次前記サーマルヘッドに転送する
    ことを特徴とするサーマルプリンタ。
  2. 前記設定部は、
    前記印刷データに含まれている文字毎に、当該文字の階調を示す前記階調情報を前記バッファに設定し、
    前記変換部は、
    前記バッファに設定された前記文字の前記階調情報に基づいて、前記文字を設定された階調で印刷するための、前記印刷制御データを生成する
    ことを特徴とする請求項1に記載のサーマルプリンタ。
  3. 前記変換部は、
    前記印刷データに含まれている文字毎に、当該文字に対して設定された前記階調情報に基づいて、当該階調情報が示す階調で当該文字を印刷するための複数の前記印刷制御データを生成し、
    前記転送部は、
    前記変換部が生成した複数の印刷制御データを前記サーマルヘッドに転送して前記発熱体を複数回に分けて駆動することにより、前記印刷データに含まれている各文字を設定された階調で印刷させる
    ことを特徴とする請求項2に記載のサーマルプリンタ。
  4. 前記設定部は、
    前記印刷データに含まれている文字毎に多階調印刷を行うか否かを示す情報を前記バッファに設定可能である
    ことを特徴とする請求項2または3に記載のサーマルプリンタ。
  5. サーマルヘッドの発熱体によって印刷を行うサーマルプリンタによる印刷制御方法であって、
    印刷データを取得し、
    前記印刷データに含まれる文字の階調を示す階調情報及び文字毎の印刷制御データの生成に用いるグラフィックデータの保存アドレスを含む、前記文字に関するコードバッファ文字情報をバッファに設定し、
    前記バッファに設定された前記コードバッファ文字情報に基づいて1印刷ライン分の印刷制御データを生成し、順次前記サーマルヘッドに転送する
    ことを特徴とする印刷制御方法。
JP2018063471A 2018-03-29 2018-03-29 サーマルプリンタおよび印刷制御方法 Active JP7165503B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018063471A JP7165503B2 (ja) 2018-03-29 2018-03-29 サーマルプリンタおよび印刷制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018063471A JP7165503B2 (ja) 2018-03-29 2018-03-29 サーマルプリンタおよび印刷制御方法

Publications (2)

Publication Number Publication Date
JP2019171708A JP2019171708A (ja) 2019-10-10
JP7165503B2 true JP7165503B2 (ja) 2022-11-04

Family

ID=68169907

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018063471A Active JP7165503B2 (ja) 2018-03-29 2018-03-29 サーマルプリンタおよび印刷制御方法

Country Status (1)

Country Link
JP (1) JP7165503B2 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003019822A (ja) 2001-07-10 2003-01-21 Pentax Corp サーマルヘッド発熱制御装置
JP2003291429A (ja) 2002-04-03 2003-10-14 Max Co Ltd サーマルヘッドドライバ回路
JP2004358756A (ja) 2003-06-03 2004-12-24 Canon Inc 画像出力装置及び方法
JP2007050677A (ja) 2005-08-19 2007-03-01 Seiko Epson Corp サーマルプリンタ、サーマルプリンタの制御方法および制御プログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6393272A (ja) * 1986-10-08 1988-04-23 Hitachi Ltd 階調記録装置
JPS6490770A (en) * 1987-10-01 1989-04-07 Oki Electric Ind Co Ltd Density controller
TW583104B (en) * 2003-07-30 2004-04-11 Hi Touch Imaging Tech Co Ltd Method for increasing thermal print quality

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003019822A (ja) 2001-07-10 2003-01-21 Pentax Corp サーマルヘッド発熱制御装置
JP2003291429A (ja) 2002-04-03 2003-10-14 Max Co Ltd サーマルヘッドドライバ回路
JP2004358756A (ja) 2003-06-03 2004-12-24 Canon Inc 画像出力装置及び方法
JP2007050677A (ja) 2005-08-19 2007-03-01 Seiko Epson Corp サーマルプリンタ、サーマルプリンタの制御方法および制御プログラム

Also Published As

Publication number Publication date
JP2019171708A (ja) 2019-10-10

Similar Documents

Publication Publication Date Title
EP1754611A1 (en) Thermal printer
JPS63203348A (ja) サ−マルプリンタの印字制御装置
JP2008213489A (ja) サーマルヘッドの制御方法及びサーマルプリンタ
US5548319A (en) Gradation data method processing including repeated reading and recording of high density data
JP4942414B2 (ja) プリント装置
JP7165503B2 (ja) サーマルプリンタおよび印刷制御方法
JP2018001653A (ja) サーマルプリンタ
JP3020732B2 (ja) サーマルプリント方法及びサーマルプリンタ
EP4292826A1 (en) Printer, printing control method, and storage medium
JP7104763B2 (ja) サーマルプリンタ
KR0178755B1 (ko) 속도조절기능을 갖는 열승화형 프린터
JPH1191152A (ja) 感熱記録装置
KR0134344B1 (ko) 프린터의 계조별 동시 발열 도트수산출장치
JP2506623B2 (ja) プリンタにおける階調制御装置
JPH0620613Y2 (ja) 熱転写式カラ−プリンタのヘツドドライブ回路
JP5574347B2 (ja) サーマルヘッドを制御するユニットを有する装置
JP4385459B2 (ja) サーマルヘッドの制御装置及びその制御方法
JP2019181802A (ja) サーマルプリンタ、印刷制御装置、および印刷制御方法
JP2007112106A (ja) 感熱印字ヘッド及び関連制御方法
JPH032060A (ja) 記録ヘッドの駆動制御方式
JP2009096078A (ja) サーマルプリンタ、および印字制御方法
JPH0325115B2 (ja)
JP2001180030A (ja) サーマルヘッド及びサーマルプリンタ
JP2007112105A (ja) 感熱印字ヘッド、その駆動回路及び関連制御方法
JPH0624944U (ja) サーマルヘッドの制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210201

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220307

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220419

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20220620

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220816

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20221011

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221024

R150 Certificate of patent or registration of utility model

Ref document number: 7165503

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150