[go: up one dir, main page]

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

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

Info

Publication number
JP2019181802A
JP2019181802A JP2018075425A JP2018075425A JP2019181802A JP 2019181802 A JP2019181802 A JP 2019181802A JP 2018075425 A JP2018075425 A JP 2018075425A JP 2018075425 A JP2018075425 A JP 2018075425A JP 2019181802 A JP2019181802 A JP 2019181802A
Authority
JP
Japan
Prior art keywords
line data
data
dot line
printing
print
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.)
Pending
Application number
JP2018075425A
Other languages
English (en)
Inventor
原山 康弘
Yasuhiro Harayama
康弘 原山
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 JP2018075425A priority Critical patent/JP2019181802A/ja
Publication of JP2019181802A publication Critical patent/JP2019181802A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Electronic Switches (AREA)

Abstract

【課題】印刷媒体の搬送速度の減速度合いをユーザが適切に調整できるようにすることで、印字品質をより高めることができるようにすること。【解決手段】サーマルプリンタは、サーマルヘッドによって印刷を行うサーマルプリンタであって、印刷データを取得する取得部と、前記印刷データを展開してドットラインデータを生成する展開処理部と、前記ドットラインデータに罫線データが含まれているか否かを判定する判定部と、前記判定部によってドットラインデータに罫線データが含まれていると判定された場合、当該罫線データのnライン前のドットラインデータから、当該罫線データの印刷まで、印刷媒体の搬送速度を減速させる速度制御部とを備える。【選択図】図3

Description

本発明は、サーマルプリンタ、印刷制御装置、および印刷制御方法に関する。
入力された印刷データに応じて、サーマルヘッドを発熱させて印刷を行うサーマルプリンタが知られている。
サーマルプリンタでは、白ドットの割合が高い空白データ等の印刷後、黒ドットの割合が高い罫線データ等のドットラインデータを印刷する際に、印字速度が急減速し印字品質が低下する虞があった。特に、黒ドットの割合が高い印刷の際にサーマルヘッドへのエネルギー印加を複数のステップに分割して行う場合に、印字速度の急減速が生じ易くなる。
特許文献1には、オンドット数が規定数を跨いで変化する1ラインの印字データを検出したときに、印字速度を段階的に変化させるサーマルプリンタが開示されている。また、特許文献2には、複数のラインデータの印字速度を算出し、現在の印字速度よりも低い印字速度のラインが存在する場合、現在の印字速度から低い印字速度に減速させる減速傾きを算出してモータを制御し、印字速度を低下させる技術が開示されている。
特開2001−180027号公報 特開2009−90547号公報
特許文献1では対象となる印字データが存在する場合一律に印字速度を段階的に変化させており、オンドット数以外の条件を加味していない。また、特許文献2の技術は、現在の印字速度と、現在の印字速度よりも低い印字速度に基づいて直線的な減速となるように、または所定の減速曲線に応じて減速の傾きが決定されるものである。このため、特許文献2の技術は、印刷媒体の搬送速度の減速度合いをユーザが適切に調整することができず、よって、印字品質をより高めることができない。
本発明は、印刷媒体の搬送速度の減速度合いをユーザが適切に調整できるようにすることで、印字品質をより高めることができるようにすることを目的とする。
上述した課題を解決するために、本発明のサーマルプリンタは、サーマルヘッドによって印刷を行うサーマルプリンタであって、印刷データを取得する取得部と、前記印刷データを展開してドットラインデータを生成する展開処理部と、前記ドットラインデータに罫線データが含まれているか否かを判定する判定部と、前記判定部によってドットラインデータに罫線データが含まれていると判定された場合、当該罫線データのnライン前のドットラインデータから、当該罫線データの印刷まで、印刷媒体の搬送速度を減速させる速度制御部とを備える。
本発明によれば、印刷媒体の搬送速度の減速度合いをユーザが適切に調整できるため、印字品質をより高めることができる。
実施形態に係るサーマルプリンタの概略構成を示す図である。 実施形態に係るサーマルヘッドの構成を示す図である。 実施形態に係るサーマルプリンタの機能構成を示す図である。 実施形態に係るコードバッファの構成を示す図である。 実施形態に係る印刷処理を示すフローチャートである。 実施形態に係る印刷速度制御処理を示すフローチャートである。 実施形態に係る印刷速度制御処理を示すフローチャートである。 一実施形態に係る減速処理を説明する図である。 一実施形態に係る減速処理を説明する図である。 一実施形態に係る各種信号のタイミングを示す図である。
〔実施形態〕
以下、図面を参照して、実施形態について説明する。
(サーマルプリンタ10の概略構成)
図1は、実施形態に係るサーマルプリンタ10の概略構成を示す図である。図1に示すサーマルプリンタ10は、入力した印刷データに応じてサーマルヘッド121の発熱体を発熱させて、感熱紙等の印刷媒体に印刷を行う装置である。図1に示すように、サーマルプリンタ10は、制御回路ユニット100、プリンタメカ部120、およびバッテリ140を備える。
制御回路ユニット100は、MCU101、メモリ102、ヘッド駆動回路103、モータ駆動回路104、およびI/F(Inter Face)回路105を備える。
MCU101は、各種印刷制御処理を行う。MCU101は、例えば、CPU(Central Processing Unit)、メモリ(ROM(Read Only Memory)、フラッシュメモリ等)等を備えて構成されている。なお、MCU101は、「印刷制御装置」として機能する。
メモリ102は、MCU101が各種処理を行う際に必要な各種データを記憶する。メモリ102としては、例えば、RAM(Random Access Memory)が用いられる。
ヘッド駆動回路103は、MCU101から出力された印刷制御データをサーマルヘッド121へ供給して、サーマルヘッド121の駆動を制御する。
モータ駆動回路104は、MCU101から出力されたモータ制御データに基づいて、用紙送りを行うためのパルスモータ122を駆動する。
I/F回路105は、MCU101とパーソナルコンピュータなどの外部機器との間の各種データの送受信を制御する。
プリンタメカ部120は、サーマルヘッド121およびパルスモータ122を備える。サーマルヘッド121は複数の発熱体を有しており、ヘッド駆動回路103から入力された印刷制御データに応じて発熱体を駆動する。パルスモータ122は、サーマルプリンタ10の不図示の用紙送りローラを駆動するように構成され、モータ駆動回路104から入力したモータ制御データに応じて、用紙送りローラを駆動する。
バッテリ140は、サーマルプリンタ10の動作用の所定の電圧(例えば、3.3V)の電力を供給する。バッテリ140としてはリチウムイオンバッテリ等が用いられる。
(サーマルヘッド121)
図2は、実施形態に係るサーマルヘッド121の構成を示す図である。図2に示すように、サーマルヘッド121は、発熱体R1〜R640、集積回路IC1〜IC640、シフトレジスタ201、およびラッチレジスタ202を備える。
発熱体R1〜R640は、主走査方向に一列に並べて設けられている。発熱体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に対応する640ビットの印刷制御データを記憶する。ラッチレジスタ202は、MCU101から/LAT信号(データラッチ信号)を受信したタイミングで、シフトレジスタ201内に記憶されている1ドットライン分の印刷制御データをラッチする。ラッチレジスタ202にラッチされた印刷制御データは、IC1〜IC640に入力する。
MCU101は、外部機器から入力した印刷データに基づいて、文字を印刷するための印刷制御データ(DI信号)を生成する。そして、MCU101は、生成したDI信号を1ドットライン単位でシフトレジスタ201へ送信する。また、MCU101は、シフトレジスタ201への1ドットライン分の印刷制御データの送信が完了すると、/LAT信号をラッチレジスタ202へ送信し、シフトレジスタ201に記憶されている1ドットライン分の印刷制御データをラッチレジスタ202にラッチさせる。
また、MCU101は、発熱体R1〜R640の印刷ブロック毎に、発熱体に対するエネルギー印加を制御するストローブ信号を送信する。MCU101は、第1の印刷ブロックを制御するIC1〜IC160にストローブ信号STB1を送信する。同様に、MCU101は、第2の印刷ブロックを制御するIC161〜IC320にストローブ信号STB2を、第3の印刷ブロックを制御するIC321〜IC480にストローブ信号STB3を、第4の印刷ブロックを制御するIC481〜IC640にストローブ信号STB4をそれぞれ送信する。
バッテリ140は、発熱体R1〜R640に接続され、発熱体R1〜R640に電圧Vを印加する。
(サーマルプリンタ10の機能構成)
図3は、サーマルプリンタ10の機能構成を示す図である。図3に示すように、サーマルプリンタ10は、取得部301、解析処理部302、設定部303、コードバッファ304、イメージバッファ305、展開処理部307、格納部308、判定部310、速度制御部311、および転送部312を備える。
取得部301は、外部機器から送信された印刷データをI/F回路105を介して取得する。印刷データには画像データおよび文字データの少なくとも一方が含まれる。
解析処理部302は、取得部301が取得した印刷データに対するコマンド解析処理を行い、印刷データが画像データであるか、文字データであるかを判断する。そして、解析処理部302は、印刷データが画像データである場合、画像データをイメージバッファ305に書き込む。一方、印刷データが文字データである場合、文字データを設定部303に供給する。
設定部303は、解析処理部302から供給された文字データに含まれている文字毎に文字の印刷設定情報であるコードバッファ文字情報(「文字設定情報」)を生成してコードバッファ304に書き込む。また、設定部303は、文字データに含まれている文字行毎に、文字行の印刷設定情報であるコードバッファ文字行情報(「文字行設定情報」)を生成してコードバッファ304に書き込む。
コードバッファ304は、設定部303によって書き込まれた文字行設定情報および文字設定情報を記憶する。イメージバッファ305は、解析処理部302によって書き込まれた画像データを記憶する。なお、コードバッファ304に記憶される文字設定情報および文字行設定情報については、図4を用いて後述する。
展開処理部307は、コードバッファ304に記憶された文字行設定情報および文字設定情報を展開して、文字印刷のためのドットラインデータを生成する。また、展開処理部307は、イメージバッファ305に記憶された画像データを展開し、画像印刷のためのドットラインデータを生成する。1ドットラインは640ドットからなるため、展開処理部307は1ドットラインにつき640ドット分の発熱体を制御するドットラインデータを生成する。図4で後述するように、コードバッファ304は第1コードバッファ304Aおよび第2コードバッファ304Bを有し、冗長的構成となっている。これにより、展開処理部307が一方のコードバッファに対して展開処理を行っている際に、設定部303が他方のコードバッファに文字行設定情報および文字設定情報を書き込むことができ、展開処理部307と設定部303とが並列的に処理を行うため、処理速度を向上させることができる。
格納部308は、展開処理部307が生成したドットラインデータのうち所定本数のドットラインデータを格納する。格納部308に格納されたドットラインデータは、先頭のドットラインデータから順次サーマルヘッド121へ転送される。また、格納部308格納されたドットラインデータの末尾には新たな印刷データが順次追加される。
判定部310は、現在のドットラインデータからnライン後のドットラインデータが罫線データであるか否かを判定する。判定部310は、1ドットラインデータを構成する黒ドットの占める割合が所定の閾値(例えば、70%)以上のドットラインデータを罫線データと判定する。なお、ライン数nはユーザが任意に設定可能である。例えば、ライン数nは外部機器から設定され、メモリ102またはMCU101内蔵のメモリに読出し可能に記憶される。
また、判定部310は、空白データを構成するドットラインデータがmライン連続しているか否かを判定する。判定部310は、格納部308の先頭に格納されたドットラインデータが空白データである場合、空白データの連続数を記録する空白連続カウンタ値に「1」を加算する。そして、判定部310は、空白連続カウンタ値がmに達した場合、空白ラインがmライン連続していると判定する。なお、回数mはユーザが任意に設定可能である。例えば、回数mは外部機器から設定され、メモリ102またはMCU101内蔵メモリに読出し可能に記憶される。
速度制御部311は、判定部310によって空白ラインがm回連続し、且つnライン後のドットラインデータが罫線データであると判定された場合、罫線データの印刷前から印刷媒体の搬送速度を徐々に減速させる。具体的には、速度制御部311は、罫線データよりもnライン前の現在のドットラインデータから印刷媒体の搬送速度の減速を開始する。このとき、速度制御部311は、減速前の搬送速度V1と減速後の搬送速度V2との差分と、ライン数nとに基づいて、印刷媒体の搬送速度を搬送速度V1から搬送速度V2までドットラインデータ毎に段階的に減少させる。速度制御部311は、空白ラインのときには印刷媒体の搬送速度を徐々に高めることで印刷速度の向上を図っている。空白ラインがm回連続し、搬送速度がある程度高まったときに減速制御を行うため、減速制御の効果を高めることができる。
特に、速度制御部311は、式(1)を用いてドットラインデータ毎の搬送速度を算出し、搬送速度V1から搬送速度V2まで一定の減速率でドットラインデータ毎に段階的に搬送速度を減少させる。もしくは、速度制御部311は、式(2)を用いてドットラインデータ毎の搬送速度を算出し、搬送速度V1から搬送速度V2まで減速率が徐々に小さくなるようにドットラインデータ毎に段階的に搬送速度を減少させる。
転送部312は、格納部308に格納されたドットラインデータをヘッド駆動回路103から順次サーマルヘッド121へ転送する。サーマルヘッド121は、転送部312から転送されたドットラインデータに基づいて発熱体R1〜R640を駆動して、ドットラインデータに対応するドットラインを印刷媒体に印刷する。
サーマルプリンタ10の各機能は、サーマルプリンタ10が備える各種ハードウェアおよびソフトウェアによって実現される。取得部301、解析処理部302、設定部303、展開処理部307、判定部310、速度制御部311、および転送部312は、メモリ102またはMCU101内蔵のメモリに記憶されたプログラムをMCU101が実行することにより実現される。また、コードバッファ304、イメージバッファ305、および格納部308は、メモリ102またはMCU101内蔵のメモリによって実現される。
MCU101が実行するプログラムは、予めサーマルプリンタ10に導入された状態で提供されてもよく、外部からサーマルプリンタ10に導入してもよい。後者の場合、プログラムは、USBメモリ、メモリカード、CD−ROM等の外部記憶媒体から提供してもよく、ネットワーク上のサーバのダウンロードによって提供してもよい。
(コードバッファ304の構成)
図4は、コードバッファ304の構成を示す図である。図4に示すように、コードバッファ304は、第1コードバッファ304Aおよび第2コードバッファ304Bを有している。第1コードバッファ304Aおよび第2コードバッファ304Bは互いに同一の構成を有し、コードバッファ304は冗長的構成を有している。
図4に示すように、各コードバッファ304A,304Bには、設定部303によってコードバッファ行情報(行設定情報)401およびコードバッファ文字情報(文字設定情報)402が設定される。コードバッファ行情報401は文字行毎に設定される設定情報である。コードバッファ文字情報402は文字毎に設定される設定情報である。
図4に示す例では、行設定情報401は、データ項目として、コード数(1行あたりの文字数)、印字ライン数(1行あたりのドットライン数)、用紙送りライン数(1行のドットライン数+空白行のドットライン数)、左マージン、行内最大アンダーライン量(アンダーラインの幅のドット数)、および倒立文字[解除/指定]を含んでいる。
また、図4では、文字設定情報402はグラフィックデータの保存アドレスおよびグラフィック情報を含んでいる。保存アドレスは、印刷対象の文字のグラフィックデータが保存されているメモリのアドレスが設定される。グラフィック情報は、印刷対象の文字のグラフィックデータの印刷設定に関する情報であり、データ項目として、例えば、縦/横倍率、左右スペース量、アンダーライン高さ、右回転(0°/90°/180°/270°)、白黒反転[解除/指定]、強調(二重)[解除/指定]、キャラクタサイズ、および識別子を含んでいる。
(印刷処理)
図5は、サーマルプリンタ10による印刷処理の手順を示すフローチャートである。図5に示す処理は、サーマルプリンタ10による印刷が行われている間、MCU101によって繰り返し実行される。
まず、取得部301が、印刷データを、I/F回路105を介して外部機器から取得する(S501)。次に、解析処理部302が、S501で取得した印刷データが画像データであるか否かを判断する(S502)。
S501で取得した印刷データが画像データである場合(S502:Yes)、解析処理部302は印刷データをイメージバッファ305へ格納する(S503)。
一方、S501で取得した印刷データが文字データである場合(S502:No)、設定部303は印刷データから行設定情報および文字設定情報を生成し、コードバッファ304に書き込む(S504)。
続いて、展開処理部307がドットラインデータを生成する(S505)。展開処理部307は、コードバッファ304に格納された行設定情報および文字設定情報を展開して、文字印刷のためのドットラインデータを生成する。または、展開処理部307は、イメージバッファ305に格納された画像データを展開して、画像印刷のためのドットラインデータを生成する。
そして、格納部308にS505で生成したドットラインデータを格納する(S506)。
さらに、転送部312が、格納部308に格納されたドットラインデータを、1ドットラインデータ毎にヘッド駆動回路103を介してサーマルヘッド121へ順次転送する(S507)。
これに応じて、サーマルヘッド121が、転送部312から順次転送されたドットラインデータに基づいて、1ドットラインデータ毎に発熱体R1〜R640を駆動してドットラインを印刷する(S508)。そして、サーマルプリンタ10は、図5に示す一連の処理を終了する。
なお、S502〜S508の処理は、S501で取得した印刷データの印刷が完了するまで、サーマルプリンタ10によって繰り返し実行される。これにより、サーマルプリンタ10は、印刷データに含まれる文字データおよび画像データを印刷する。
(印刷速度制御処理)
図6および図7は、実施形態に係る印刷速度制御処理の手順を示すフローチャートである。図6および図7に示す処理は、サーマルプリンタ10による印刷が行われている間、MCU101によって図5に示す印刷処理と並行して繰り返し実行され、格納部308に格納されている1ドットラインデータ毎に実行される。図6および図7は1ドットラインに対する処理を示し、複数ラインを印刷する際には図6および図7の処理が繰り返し実行される。
まず、判定部310が、罫線データ有無のチェックを行うか否かを示す罫線チェック要求フラグに「オン」が設定されているか否かを判断する(S601)。罫線チェック要求フラグが「オン」に設定されている場合(S601:Yes)、判定部310は図7のAへ処理を進める。
一方、罫線チェック要求フラグに「オン」が設定されていない場合(S601:No)、判定部310はS602へ処理を進める。なお、罫線チェック要求フラグのデフォルト値は「オフ」である。
S602では、判定部310が、現在のドットラインデータが空白データであるか否かを判断する。現在のドットラインデータが空白データはない場合(S602:No)、判定部310は空白データの連続数を示す空白連続カウンタ値を「0」にクリアする(S603)。そして、サーマルプリンタ10は、図6に示す一連の処理を終了する。
一方、現在のドットラインデータが空白データである場合(S602:Yes)、判定部310は空白連続カウンタ値に「1」を加算して(S604)、空白連続カウンタ値がm以上であるか否かを判断する(S605)。
空白連続カウンタ値がm以上ではない場合(S605:No)、サーマルプリンタ10は、図6および図7に示す一連の処理を終了する。
一方、空白連続カウンタ値がm以上である場合(S605:Yes)、判定部310は罫線チェック要求フラグに「オン」を設定する(S606)。そして、サーマルプリンタ10は、図6および図7に示す一連の処理を終了する。
続いて、図7のA以降の、S601で罫線チェック要求フラグが「オン」と判定した場合の処理を説明する。判定部310は、格納部308(中間バッファ)に格納されている複数のドットラインデータのうち、現在のドットラインデータからnライン後のドットラインデータをチェックし(S701)nライン後のドットラインデータが罫線データであるか否かを判定する(S702)。
nライン後のドットラインデータが罫線データである場合(S702:Yes)、速度制御部311は減速処理を行い、罫線データの印刷が行われる前から印刷媒体の搬送速度を徐々に減速させる(S704)。そして、判定部310は罫線チェック要求フラグにc「オフ」を設定する(S705)。その後、サーマルプリンタ10は、図6および図7に示す一連の処理を終了する。
一方、nライン後のドットラインデータが罫線データではない場合(S702:No)、判定部310は、nライン後のドットラインデータが空白データ以外のその他の印刷データであるか否かを判定する(S703)。
nライン後のドットラインデータがその他の印刷データである場合(S703:Yes)、判定部310は罫線チェック要求フラグに初期化のため「オフ」を設定する(S705)。その後、サーマルプリンタ10は図6および図7に示す一連の処理を終了する。
一方、nライン後のドットラインデータがその他の印刷データではない、つまり空白データである場合(S703:No)、サーマルプリンタ10は図6および図7に示す一連の処理を終了する。
(減速処理)
図8は、一実施形態に係る減速処理を説明する図である。
<中間バッファ>
図8に示すように、格納部308は所定ライン数のドットラインデータを格納可能である。図8では、格納部308は最大16本のドットラインデータを格納する。格納部308に格納されたドットラインデータは、先頭の「ドットラインデータ(1)」から順次サーマルヘッド121へ転送される。この際、他のドットラインデータは順次先頭に向ってシフトする。これにより、格納部308にドットラインデータの空きが生じるため、ドットラインデータの末尾に新たな印刷データを追加することが可能となる。
<判定部310による判定処理>
判定部310は、格納部308に格納されているドットラインデータに基づいて、減速処理を行うか否かを判定する。判定部310は、現在のドットラインデータが連続してmライン目の空白データであり、且つ、現在のドットラインデータからnライン後のドットラインデータが罫線データであると判定した場合、減速処理を行うと判定する。判定部310は、各ドットラインデータについて順次空白データであるか否かを判定し、空白データであると判定した場合には空白連続カウンタ値(初期値=「0」)に「1」を加算する。そして、判定部310は、空白連続カウンタ値が「m」に達した場合、現在のドットラインデータからnライン後のドットラインデータが罫線データであるか否かを判定する。nライン後のドットラインデータが罫線データであると判定した場合、判定部310は減速処理を行うと判定する。
<速度制御部311による減速処理>
速度制御部311は、判定部310が減速処理を行うと判定した場合、nライン後の罫線データの印刷開始前から印刷媒体の搬送速度を徐々に減速させる。具体的には、速度制御部311は、罫線データよりもnライン前のドットラインデータが印刷されるタイミングから印刷媒体の搬送速度の減速を開始する。このとき、速度制御部311は減速前の現在の搬送速度V1と減速後の罫線データの搬送速度V2との差分と、ライン数nとに基づいて、印刷媒体の搬送速度を搬送速度V1から搬送速度V2までドットラインデータ毎に段階的に減少させる。
例えば、速度制御部311は、式(1)により、現在のドットラインデータよりもiライン後のドットラインデータの搬送速度Vを算出する。
=V1+(V2−V1)×(i/n)・・・(1)
速度制御部311は、現在の印刷データから罫線データまで、ドットラインデータ毎に式(1)から算出した算出された搬送速度となるように搬送速度を制御する。これにより、現在のドットラインデータから罫線データが印刷されるまでの間、一定の減速率で搬送速度が徐々に減速される。
なお、速度制御部311は、式(1)の代わりに、式(2)により現在のドットラインデータよりもi本後のドットラインデータの搬送速度Vを算出してもよい。但し、指数bは、1以上の任意の整数値である。
=V1+(V2−V1)×(i/n)・・・(2)
速度制御部311は、現在の印刷データから罫線データまでドットラインデータ毎に式(2)より算出した搬送速度となるように搬送速度を制御する。これにより、現在のドットラインデータから罫線データが印刷されるまでの間、減速率が徐々に小さくなるように搬送速度が徐々に減速される。
なお、式(1)および式(2)のいずれを用いるかは、ユーザが任意に設定し、メモリ102またはMCU101内蔵のメモリに読出し可能に記憶して設定すればよい。
<ライン数nおよび回数m>
ライン数nおよび回数mはユーザが任意の値を設定することが可能である。この設定は例えば外部機器から行われる。以下に、ライン数nおよび回数mの設定値の具体例を示すが、これらには限らない。なお、1文字は26ドットラインで構成されるものとする。
<ライン数n>
初期値:n=8ドットライン
設定単位:2ドットライン単位
設定範囲:2〜16ドットライン
<回数m>
初期値:m=1文字行(26ドット)
設定単位:1文字行(26ドット)単位
設定範囲:1〜16文字行(26〜416ドット)
ユーザは、必要に応じて外部機器からコマンドを送信することにより、ライン数nおよび回数mの値を調整することができる。
ライン数nの設定値を初期値(n=8)よりも大きくすることにより、減速処理に要するライン数が増えるため、印刷媒体の搬送速度の減速率を低下させることができる。反対に、ライン数nの設定値を初期値(n=8)よりも小さくすることにより、減速処理に要するライン数が減るため、搬送速度の減速率を高めることができる。
本実施形態のサーマルプリンタ10は、ステッピングモータ駆動のステップ単位で加速制御が行われる。1ドットを4印刷ステップで印刷する場合は、印字速度は印字データの種類によらず停止状態(0印刷ステップ)から徐々に加速してゆき、104印刷ステップ(26ドット×4印刷ステップ)で最高速度に達する。印刷開始から104印刷ステップに達するまでは印字速度が最高速度に達していないため、本実施形態による減速処理を実行してもその効果は低いと見込まれる。
本実施形態のサーマルプリンタ10では、印刷中には印刷データに応じてモータが加減速され、その加速ステップは停止状態の0ステップから最高速度の104ステップの間で変動する。空白データ以外の印刷データを印刷している際には印字速度が最高速度から下がった状態になり、空白データが出現すると印字速度が下がった状態からまた加速していく。空白データが連続するとき、印字速度は最高速度の状態が継続している。
本実施形態のサーマルプリンタ10は、回数mの設定値を初期値(m=1)よりも大きくすることで、減速処理を行わずに印字速度が加速する期間を長く取ることが可能となり、全体的な印字速度を向上させることができる。
但し、印字速度を向上させることによって罫線データ印字開始時の印字品質に影響を及ぼす可能性が高くなる。このため、回数mの設定値を調整する際には設定値を段階的に高め、印字品質に影響を及ぼさない程度の値を設定することが好ましい。例えば、回数mの設定値を増加させた際に設定値が「6」のときに印字品質の低下がみられた場合には、回数mの設定値を「5」またはそれ以下とする。
なお、回数mの最大値を16文字行(416ドット)以上の値に設定しても、印字速度および印字品質に変化が生じないと見込まれるが、条件によって印字速度や印字品質に変化が生じなくなる回数mの最大値は変わる可能性がある。
図9は、一実施形態に係る減速処理を説明する図である。図9では、格納部308に格納される16本のドットラインデータを例示する。図9において、1〜2番目のドットラインデータは空白データでも罫線データでもないその他の印刷データである。3〜12番目,15〜16番目のドットラインデータは空白データである。13〜14番目のドットラインデータは罫線データである。ここでは、ライン数nに「4」が設定され、回数mに「1」が設定されている場合について説明する。
図9では、9番目のドットラインデータから4ライン後のドットラインデータが罫線データであり、9番目のドットラインデータは回数mが「1」且つライン数nが「4」の減速処理の判定条件を満たしている。以下、9番目のドットラインデータが「現在のドットラインデータ」となったときの処理を説明する。
図9では、速度制御部311は、9番目のドットラインデータが現在のドットラインデータとなったとき、減速処理を行うために、現在のドットラインデータの搬送速度をV1、13番目の罫線データの搬送速度をV2とし、式(1)より10〜13番目のドットラインデータの各々の搬送速度を算出する。
・10番目のドットラインデータ:V=V1+(V2−V1)×(1/4)
・11番目のドットラインデータ:V=V1+(V2−V1)×(2/4)
・12番目のドットラインデータ:V=V1+(V2−V1)×(3/4)
・13番目のドットラインデータ:V=V1+(V2−V1)×(4/4)=V2
なお、速度制御部311は、式(1)の代わりに式(2)を用いてもよく、この場合、式(2)により10〜13番目のドットラインデータの各々の搬送速度を算出する。
・10番目のドットラインデータ:V=V1+(V2−V1)×(1/4)
・11番目のドットラインデータ:V=V1+(V2−V1)×(2/4)
・12番目のドットラインデータ:V=V1+(V2−V1)×(3/4)
・13番目のドットラインデータ:V=V1+(V2−V1)×(4/4)=V2
そして、速度制御部311は、9番目のドットラインデータから13番目の罫線データまでの1ドットラインデータ毎に、ドットラインデータが印刷される際に算出された搬送速度となるように印刷媒体の搬送速度を制御する。
これにより、現在のドットラインデータから罫線データの印刷までの間に、印刷媒体の搬送速度が搬送速度V1から搬送速度V2まで徐々に減速される。
(各種信号のタイミング)
図10は、一実施形態に係る各種信号のタイミングの一例を示す図である。ここでは、1ドットラインデータを4段階で印刷する際の各種信号のタイミングを説明する。1ドットラインデータを4段階で印刷することで、1ドットラインデータ毎に多階調印刷を行うことができる。
<第1の印刷ステップ>
まず、MCU101が、第1の印刷ステップの開始タイミングt1までに1回目のドットラインデータd1をシフトレジスタ201へ送信する。その後、MCU101は、データラッチ信号をラッチレジスタ202へ送信する。これにより、ラッチレジスタ202が、シフトレジスタ201内に記憶されているドットラインデータd1をラッチする。t1が到来すると、ラッチレジスタ202にラッチされたドットラインデータd1がIC1〜IC640に入力する。MCU101がストローブ信号s1をIC1〜IC640に入力すると、ドットラインデータd1に「1」が設定されているビットに対応するICがオンとなり、対応する発熱体にエネルギーが印加されることとなる。
<第2の印刷ステップ>
次に、MCU101は、第2の印刷ステップの開始タイミングt2までにドットラインデータd2をシフトレジスタ201へ送信する。その後、MCU101はデータラッチ信号をラッチレジスタ202へ送信する。これにより、ラッチレジスタ202がドットラインデータd2をラッチする。t2が到来すると、ラッチレジスタ202にラッチされたドットラインデータd2がIC1〜IC640に入力する。MCU101がストローブ信号s2をIC1〜IC640に入力すると、ドットラインデータd2に「1」が設定されているビットに対応するICがオンとなり、対応する発熱体にエネルギーが印加される。
<第3の印刷ステップ>
次に、MCU101は、第3の印刷ステップの開始タイミングt3までにドットラインデータd3をシフトレジスタ201へ送信し、データラッチ信号をラッチレジスタ202へ送信する。これにより、ラッチレジスタ202がドットラインデータd3をラッチする。t3が到来すると、ラッチレジスタ202にラッチされたドットラインデータd3がIC1〜IC640に入力する。MCU101がストローブ信号s3をIC1〜IC640に入力すると、ドットラインデータd3に「1」に設定されているビットに対応するICがオンとなり、対応する発熱体にエネルギーが印加される。
<第4の印刷ステップ>
次に、MCU101は、第4の印刷ステップの開始タイミングt4までにドットラインデータd4をシフトレジスタ201へ送信し、データラッチ信号をラッチレジスタ202へ送信する。これにより、ラッチレジスタ202がドットラインデータd4をラッチする。t4が到来すると、ラッチレジスタ202にラッチされたドットラインデータd4がIC1〜IC640に入力する。MCU101がストローブ信号s4をIC1〜IC640に入力すると、ドットラインデータd4に「1」が設定されているビットに対応するICがオンとなり、対応する発熱体にエネルギーが印加される。
図10において、1印刷ステップ毎のモータ信号の長さは印字速度に応じて変化する。1ドットラインが1/8mmで、印字速度を100mm/秒とした場合、1ドットライン毎のモータ信号の長さは1.25ms(ミリ秒)となる。1ドットラインにつき4印刷ステップでモータが駆動される場合、1印刷ステップ毎のモータ信号の長さは1.25ms/4=0.3125msとなる。
本実施形態の速度制御部311は、罫線データが印刷されるまでの1ステップ毎のモータ信号の長さが徐々に長くなるように制御することで、印字速度を徐々に減速させることができる。
以上説明したように、本実施形態のサーマルプリンタ10は、ドットラインデータに罫線データが含まれている場合、罫線データよりもnライン前のドットラインデータから印刷媒体の搬送速度を徐々に減速させる。本実施形態では、ユーザが印字品質を確認しながらnの値を調整することで、減速の開始タイミングを調整できる。したがって、本実施形態によれば、罫線データの印刷開始までの搬送速度を適切に減速させ、印字品質をより高めることができる。
特に、本実施形態のサーマルプリンタ10は、空白データがmライン連続し、且つドットラインデータに罫線データが含まれている場合に、搬送速度を徐々に減速させる。本実施形態では、ユーザが印字品質を確認しながらmの値を調整することで、減速処理実行条件としての空白データの連続数を調整できる。したがって、本実施形態によれば、罫線データの印刷開始までの搬送速度を適切に減速させ、印字品質をより高めることができる。
以上、本発明の一実施形態について詳述したが、本発明はこれらの実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形又は変更が可能である。
10 サーマルプリンタ
101 MCU(印刷制御装置)
102 メモリ
201 シフトレジスタ
202 ラッチレジスタ
301 取得部
302 解析処理部
303 設定部
304 コードバッファ
305 イメージバッファ
307 展開処理部
308 格納部
310 判定部
311 速度制御部
312 転送部

Claims (5)

  1. サーマルヘッドによって印刷を行うサーマルプリンタであって、
    印刷データを取得する取得部と、
    前記印刷データを展開してドットラインデータを生成する展開処理部と、
    前記ドットラインデータに罫線データが含まれているか否かを判定する判定部と、
    前記判定部によってドットラインデータに罫線データが含まれていると判定された場合、当該罫線データのnライン前のドットラインデータから、当該罫線データの印刷まで、印刷媒体の搬送速度を減速させる速度制御部と
    を備えることを特徴とするサーマルプリンタ。
  2. 前記速度制御部は、
    減速前の前記搬送速度と減速後の前記搬送速度との差分と、前記ライン数nとに基づいて、前記印刷媒体の搬送速度を前記ドットラインデータ毎に段階的に減少させる
    ことを特徴とする請求項1に記載のサーマルプリンタ。
  3. 前記判定部は、
    空白データを構成するドットラインデータがm回連続して行われるか否かを判定し、
    前記速度制御部は、
    前記判定部によって、前記空白データを構成するドットラインデータがm回連続して印刷されると判定され、且つ、前記判定部によって、前記ドットラインデータに罫線データが含まれていると判定された場合、前記印刷媒体の搬送速度を減速させる
    ことを特徴とする請求項1または2に記載のサーマルプリンタ。
  4. プリンタ用の印刷制御装置であって、
    印刷データを取得する取得部と、
    前記印刷データを展開することによりドットラインデータを生成する展開処理部と、
    前記ドットラインデータに罫線データが含まれているか否かを判定する判定部と、
    前記判定部によってドットラインデータに罫線データが含まれていると判定された場合、当該罫線データよりもnライン前のドットラインデータから当該罫線データの印刷までの間に、印刷媒体の搬送速度を徐々に減速させる速度制御部と
    を備えることを特徴とする印刷制御装置。
  5. サーマルヘッドによって印刷を行うサーマルプリンタ用の印刷制御方法であって、
    印刷データを取得し、
    前記印刷データを展開して、ドットラインデータを生成し、
    前記ドットラインデータに罫線データが含まれているか否かを判定し、
    前記ドットラインデータに罫線データが含まれていると判定された場合、当該罫線データよりもnライン前のドットラインデータの印刷から、当該罫線データの印刷まで、印刷媒体の搬送速度を徐々に減速させる
    ことを特徴とする印刷制御方法。
JP2018075425A 2018-04-10 2018-04-10 サーマルプリンタ、印刷制御装置、および印刷制御方法 Pending JP2019181802A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018075425A JP2019181802A (ja) 2018-04-10 2018-04-10 サーマルプリンタ、印刷制御装置、および印刷制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018075425A JP2019181802A (ja) 2018-04-10 2018-04-10 サーマルプリンタ、印刷制御装置、および印刷制御方法

Publications (1)

Publication Number Publication Date
JP2019181802A true JP2019181802A (ja) 2019-10-24

Family

ID=68338195

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018075425A Pending JP2019181802A (ja) 2018-04-10 2018-04-10 サーマルプリンタ、印刷制御装置、および印刷制御方法

Country Status (1)

Country Link
JP (1) JP2019181802A (ja)

Similar Documents

Publication Publication Date Title
JP6489431B2 (ja) サーマルプリンタ、制御方法及びプログラム
EP3745244B1 (en) Print data generating apparatus
US9233554B2 (en) Control device, printer, and control method of a printer
JP4942414B2 (ja) プリント装置
JP2019181802A (ja) サーマルプリンタ、印刷制御装置、および印刷制御方法
JP2024013936A (ja) 画像形成装置、画像形成装置の制御方法、及びプログラム
JP7017181B2 (ja) サーマルプリンタ、売上データ処理装置、印刷方法およびプログラム
KR19990086291A (ko) 데이터를 다중매수로 인쇄하는 장치 및 방법
JP7165503B2 (ja) サーマルプリンタおよび印刷制御方法
US9471022B2 (en) Print control apparatus, print control method, image forming system, and non-transitory computer readable medium
US20250083456A1 (en) Thermal printer and control method thereof
JPH0930079A (ja) 印刷装置
US20240100858A1 (en) Printer, printing control method, and storage medium
JP4079958B2 (ja) 熱履歴制御装置、その動作方法、及びサーマルプリンタ
JPH0616764Y2 (ja) ドットマトリクスプリンタ
JP6904728B2 (ja) ヘッド駆動装置、サーマルプリンタ、及び制御方法
JPH10193664A (ja) サーマルプリンタ
JP3116280B2 (ja) 両面印字制御方式
JPH0550718A (ja) 印刷装置
JP2004355068A (ja) 画像形成システムおよび画像形成装置
JP5648031B2 (ja) 印字装置および制御プログラム
JP2020019208A (ja) サーマルプリンタ、売上データ処理装置およびプログラム
JP2009096078A (ja) サーマルプリンタ、および印字制御方法
JP2869227B2 (ja) シリアルプリンタにおける印字データ処理制御回路
JPH0976568A (ja) 印刷装置