以下、本発明の一実施形態である印刷装置1について、図面を参照して説明する。はじめに印刷装置1の構成について、図1,図2を参照して説明する。図1に示すように、印刷装置1には、文字入力キー2、印字キー3、リターンキー4等を設けたキーボード6、液晶ディスプレイ7、テープカセット35(図9参照)を収納するカセット収納部8が、収納カバー8Aに覆われて設けられている。
キーボード6の下側には、制御基板12が設けられている。制御基板12の先端部下面には、環境温度を検出するためのサーミスタ13が取り付けられている。カセット収納部8の左側面部には、印字されたテープが排出されるラベル排出口16が形成されている
カセット収納部8には、サーマルヘッド9(図1参照)と、サーマルヘッド9に対向するプラテンローラ10と、プラテンローラ10の下流側のテープ送り用ローラ11と、テープ送り用ローラ11に対向するテープ駆動ローラ軸14と、テープカセット35内に収納されるインクリボンを送るリボン巻取軸15等が配置されている。
リボン巻取軸15は、テープカセット35に設けられた後述するインクリボン巻取リール44(図9参照)に嵌挿される。インクリボン巻取リール44は、ステッピングモータ等により構成されるテープ送りモータ30(図3参照)から駆動機構を介して回転駆動され、印字後のインクリボン43(図9参照)を巻き取る。リボン巻取軸15は、印字スピードと同期してインクリボン巻取リール44を回転駆動する。テープ駆動ローラ軸14は、テープ送りモータ30から適宜の伝達機構を介して回転駆動され、後述するテープ駆動ローラ53(図9参照)を回転駆動する。
図2に示すように、平板状のサーマルヘッド9の前面の左端縁部には、所定個数(本実施形態では、128個)の各発熱素子R1〜Rn(nは、所定個数)が、左端縁部の辺に沿って一列に配列されて形成されている。サーマルヘッド9の前面右端縁部には、制御基板12上に設けられる不図示のコネクタに接続されるフレキシブルケーブルFの他端が半田付け等により電気的に接続されている。
サーマルヘッド9は、メッキ鋼板やステンレス鋼板等により形成される放熱板9Aの前面の左端縁部に、各発熱素子R1〜Rnの配列方向が、放熱板9Aの左端縁部の辺に平行になるように接着剤などで固着されている。フレキシブルケーブルFの上端右角部は、両面テープ等によって放熱板9Aの前面に固着されている。フレキシブルケーブルFの一端側は、放熱板9Aの下端縁部に穿設された貫通孔9Dに挿入されて後側に引き出されている。
次に、印刷装置1の電気的構成について、図3を参照して説明する。印刷装置1は、制御基板12(図1参照)上に設けられた制御回路部20を備えている。制御回路部20は、CPU21と、CPU21にデータバス22を介して接続された入出力インターフェイス23、CGROM24、ROM25、ROM26、RAM27、不揮発性メモリ29等が設けられている。CPU21の内部にはタイマー21Aが設けられている。
CGROM24には、多数のキャラクタの各々に関して、表示のためのドットパターンデータがコードデータに対応させて格納されている。
ROM25には、アルファベット文字や記号等のキャラクタを印字するための多数のキャラクタの各々に関して、印字用ドットパターンデータが書体毎に分類され、各書体毎に6種類(16、24、32、48、64、96のドットサイズ)の印字文字サイズ分が、コードデータに対応させて記憶されている。さらに、階調表現を含むグラフィック画像を印字するためのグラフィックパターンデータも記憶されている。
ROM26には、キーボード6から入力された文字や数字等のキャラクタのコードデータに対応させてLCDC28を制御する表示駆動制御プログラム、印字バッファ27Bのデータを読み出してサーマルヘッド9や、テープ送りモータ30を駆動する印字駆動制御プログラム、各印字ドットの形成エネルギー量に対応する各発熱素子R1〜Rnの印加パルス幅を決定する印加パルス幅決定プログラム、サーマルヘッド9の各発熱素子R1〜Rnの蓄熱量を考慮した駆動制御プログラム(図10〜図12参照)、その他、印刷装置1の制御上必要な各種のプログラムが記憶されている。CPU21は、ROM26に記憶されている各種プログラムに基づいて各種の演算を行う。
入出力インターフェイス23には、キーボード6と、サーミスタ13と、液晶ディスプレイ(LCD)7に表示データを出力するためのビデオRAM28Aを有するディスプレイコントローラ(以下、LCDCという)28と、サーマルヘッド9の各発熱素子R1〜Rnに駆動電圧パルスを印加するための駆動回路32と、テープ送りモータ30を駆動するための駆動回路31とが各々接続されている。
次に、RAM27の各種記憶エリアについて、図4を参照して説明する。RAM27には、テキストメモリ27A、印字バッファ27B、カウンタ記憶エリア27C、環境温度記憶エリア27D等が設けられている。テキストメモリ27Aには、キーボード6から入力された文書データが記憶されている。印字バッファ27Bには、複数の文字や記号等の印字用ドットパターンや各ドットの形成エネルギー量である印加パルス幅等がドットパターンデータとして記憶されている。サーマルヘッド9は印字バッファ27Bに記憶されているドットパターンデータに従って、後述のサーマルヘッド9の各発熱素子R1〜Rnの蓄熱量を考慮した駆動制御プログラム(図10〜図12参照)によりドット印字を行う。カウンタ記憶エリア27Cには、サーマルヘッド9により印字される1ライン(本実施形態では、128ドット)分の印字ドット数のカウント値Nが格納される。環境温度記憶エリア27Dには、サーミスタ13によって検出された環境温度が記憶される。
次に、不揮発性メモリ29の各種記憶エリアについて、図5を参照して説明する。不揮発性メモリ29には、ドット数カウンタ記憶エリア29A、パラメータ記憶エリア29B、時刻記憶エリア29C等が設けられている。ドット数カウンタ記憶エリア29Aには、サーマルヘッド9により印字される起動時からの総印字ドット数が記憶される。パラメータ記憶エリア29Bには、サーマルヘッド9の印字処理において各発熱素子R1〜Rnの印加パルス幅の通電時間を設定する際に選択される放熱パラメータテーブル33(図6参照)、蓄熱係数テーブル38(図7参照)、補正係数テーブル39(図8参照)が各々記憶されている。時刻記憶エリア29Cには、印字終了時の時刻(以下、印字終了時刻と呼ぶ)と、印字処理の開始の時刻(以下、印字処理開始時刻と呼ぶ)とが各々記憶される。
次に、放熱パラメータテーブル33について、図6を参照して説明する。放熱パラメータテーブル33は、テープ印字中に、サーマルヘッド9の各発熱素子R1〜Rnに選択的に印加される駆動電圧パルスの通電時間を設定する際に選択される。放熱パラメータテーブル33は、サーミスタ13を介して測定される温度を示す「環境温度」と、その「環境温度」に対応する「基準総量」と「減算ドット数(1秒当たり)」とから構成されている。
「基準総量」は、蓄熱係数テーブル38の蓄熱係数dを決定する際に、ドット数カウンタ記憶エリア29Aのカウント値と比較するための比較基準ドット数である。「減算ドット数」は、所定時間毎(本実施形態では、約1秒毎)にドット数カウンタ記憶エリア29Aのカウント値から減算するドット数である。
「減算ドット数」は、
(1)サーマルヘッド9の材質、形状、大きさ
(2)放熱板9Aの材質、形状、大きさ
(3)サーマルヘッド9と放熱板9Aの間の接着剤の材質、厚み
(4)放熱板9Aと印刷装置1のメカフレームとの接合方法
(5)メカフレームの材質、形状、大きさ
(6)環境温度
等によって決定される印字ドット数であり、サーマルヘッド9の放熱板9A(図2参照)等を介した自然放熱量を表している。
「基準総量」は、環境温度等によって決定される印字ドット数であり、連続印字によってサーマルヘッド9の各発熱素子R1〜Rnの蓄熱温度の上昇による印字ドットの潰れ等が発生しないことを保証する最大連続印字ドット数を表している。「環境温度」には、「30℃以上」、「20℃以上30℃未満」、「20℃未満」の3種類の環境温度範囲が予め登録されている。各「環境温度」に対する「基準総量」には、「環境温度」の「30℃以上」に対して「0ドット」、「環境温度」の「20℃以上30℃未満」に対して「4860ドット」、「環境温度」の「20℃未満」に対して「12600ドット」が「基準総量」として予め登録されている。
各「環境温度」に対する「減算ドット数(1秒当たり)」には、「環境温度」の「30℃以上」に対して「1800ドット」、「環境温度」の「20℃以上30℃未満」に対して「3825ドット」、「環境温度」の「20℃未満」に対して「5250ドット」が「減算ドット数」として予め登録されている。なお、各「環境温度」に対応する「基準総量」と「減算ドット数」は、放熱板9Aの形状変更などによるサーマルヘッド9の自然放熱量の変化などに対応して、任意の数値に変更できるパラメータである。
次に、蓄熱係数テーブル38について、図7を参照して説明する。蓄熱係数テーブル38は、テープ印字中に、サーマルヘッド9の各発熱素子R1〜Rnに選択的に印加される駆動電圧パルスの通電時間を設定する際に選択される。蓄熱係数テーブル38は、不揮発性メモリ29のドット数カウンタ記憶エリア29A(図5参照)のカウント値がその際の環境温度に対応する基準総量を越えるドット数を示す「基準総量を超えたドット数」と、サーミスタ13を介して測定される5種類の環境温度範囲とから構成されている。これら5種類の環境温度範囲は、「10〜16℃」、「17〜21℃」、「22〜27℃」、「28〜31℃」、「32〜35℃」の各環境温度範囲である。
蓄熱係数テーブル38の「基準総量を超えたドット数」には、50000ドット未満を表す「50000未満」と、50000ドットから1599999ドットまで50000ドット毎に区分される31種類のドット数区分範囲と、1600000ドット以上を表す「1600000以上」と、の33種類のドット数区分範囲が予め登録されている。そして、5種類の各環境温度範囲において、33種類の「基準総量を超えたドット数」のドット数区分範囲のドット数が大きくなるに従って、「1.0」から「0.55」までのいずれかの値が「蓄熱係数d」として小さくなるように予め登録されている。
次に、補正係数テーブル39について、図8を参照して説明する。補正係数テーブル39は、テープ印字開始前に、それまで印字が行われていなかった非印字時間中の放熱量をドット数カウンタの値に反映させるために選択される。補正係数テーブル39は、「非印字時間(Tw)」と、サーミスタ13によって検出される5種類の「環境温度範囲」とから構成されている。これら5種類の環境温度範囲は、蓄熱係数テーブル38(図7参照)の各環境温度範囲と同じである。
補正係数テーブル39の「非印字時間(Tw)」には、0秒〜800秒までの18の非印字時間(秒)が設定されている。「補正係数(f)」は、各環境温度範囲毎に、各非印字時間に対応して各々登録されている。ドット数カウンタの値を補正係数(f)で割ることで、非印字中の放熱量を反映させたドット数カウンタの値を得ることができる。補正係数(f)は、非印字時間が長くなるにつれて大きくなるように調整されている。また、補正係数(f)は、環境温度が低くなるにつれて大きくなるように調整されている。補正係数(f)が大きければ大きいほど、その値で割られて得られるドット数カウンタの値は小さくなるから、サーマルヘッド9の蓄熱量は低くなる。その反対に、補正係数(f)が小さければ小さいほど、その値で割られて得られるドット数カウンタの値は大きくなるから、サーマルヘッド9の蓄熱量は大きくなる。
次に、テープカセット35の概略構成について、図9を参照して説明する。テープカセット35は、印刷装置1のカセット収納部8に着脱可能に収納される。テープカセット35は、透明テープ等からなる被印字テープ36、被印字テープ36に印字を施すためのインクリボン43、印字がなされた被印字テープ36に裏貼りされる両面粘着テープ46を、テープスプール37、リール42、テープスプール47に各々巻回し、カセット本体35Bの底面に立設された各種ボスに回転可能に嵌挿して収納している。さらに、使用済みのインクリボン43を巻き取るインクリボン巻取リール44を備えている。
リール42から引き出された未使用インクリボン43は、被印字テープ36と重ね合わされ、被印字テープ36と共に開口部52に入り、サーマルヘッド9及びサーマルヘッド9に対して圧接状態にあるプラテンローラ10の間を通過する。その後、インクリボン43は、被印字テープ36から引き離され、リボン巻取軸15により回転駆動されるインクリボン巻取リール44に至り、インクリボン巻取リール44により巻き取られる。
両面粘着テープ46は、片面に離形紙を重ね合わされた状態で、離形紙を外側にしてテープスプール47に巻回されて収納されている。そして、このテープスプール47から引き出された両面粘着テープ46は、テープ駆動ローラ53とテープ駆動ローラ53に対して圧接状態にあるテープ送り用ローラ11との間を通過し、離形紙が重ね合わされない側の粘着面が被印字テープ36に貼着される。
これにより、テープスプール37に巻回され、このテープスプール37から引き出された被印字テープ36は、テープカセット35のサーマルヘッド9が挿入される開口部52を通過する。その後、両面粘着テープ46が貼り合わされる被印字テープ36は、テープカセット35の片側下方部(図2中、左下側部)に回転自在に設けられ、テープ送りモータ30の駆動を受けて回転するテープ駆動ローラ53と、このテープ駆動ローラ53に対向配置されるテープ送り用ローラ11との間を通過して、テープカセット35の外部に送り出されて、印刷装置1のラベル排出口16より排出される。この場合、両面粘着テープ46は、被印字テープ36に対してテープ駆動ローラ53及びテープ送り用ローラ11によって圧着される。
次に、印刷装置1における通常の印字動作について簡単に説明する。キーボード6の文字キーを介して文字等が入力された場合、そのテキスト(文書データ)がテキストメモリ27Aに順次記憶される。さらに、ドットパターン発生制御プログラム及び表示駆動制御プログラムに基づき、キーボード6を介して入力された文字等に対応するドットパターンがLCD7上に表示される。サーマルヘッド9は駆動回路32を介して駆動される。そして、印字バッファ27Bに記憶されたドットパターンデータの印字を行い、これと同期してテープ送りモータ30が駆動回路31を介してテープの送り制御を行う。サーマルヘッド9は、駆動回路32を介して各発熱素子R1〜Rnが1ライン分の印字ドットに対応して選択的に設定される駆動電圧パルスの印加により発熱駆動されることで、文字等がテープ上に印字される。
次に、上記構成からなる印刷装置1のサーマルヘッド9の各発熱素子R1〜Rnの蓄熱量を考慮した駆動制御処理について、図10乃至図12を参照して説明する。なお、駆動制御処理は、CPU21によって実行されるものである。駆動制御処理は、「印字処理」、「タイマー割り込み処理」、「印字開始前処理」によって構成される。
まず、印字処理について、図10を参照して説明する。まず、タイマー21Aを起動する(S1)。次いで、RAM27に記憶されている蓄熱係数d(起動時には、この蓄熱係数dには「1.0」が代入されて記憶されている。)を読み込み、印字バッファ27Bに記憶される1ライン分(各発熱素子R1〜Rn分)の印字用ドットの形成エネルギー量である印加パルス幅を読み出し、この蓄熱係数dを各印加パルス幅に乗算して、各発熱素子R1〜Rnの通電時間を設定して、1ライン分の印字を開始する(S2)。
続いて、サーマルヘッド9を介して被印字テープ36に1ライン分(各発熱素子R1〜Rn分)の印字データが印字されたか否かを判断する(S3)。1ライン分の印字データが未だ印字されていない場合は(S3:NO)、S3に戻って、1ライン分の印字が終了するのを待つ。
そして、1ライン分の印字が終了した場合は(S3:YES)、印字データの印字ドット数が記憶されているRAM27のカウンタ記憶エリア27C(図4参照)に記憶されたカウント値Nを読み出し、このカウント値Nを不揮発性メモリ29のドット数カウンタ記憶エリア29A(図5参照)に記憶されたカウント値に加算する(S4)。なお、起動時には、ドット数カウンタ記憶エリア29Aには「0」が代入されて記憶されている。
続いて、印字バッファ27Bに記憶される印字用データを全て印字したか否かを判断する(S5)。印字バッファ27Bに未だ印字用データが残っている場合は(S5:NO)、S2に戻って処理を繰り返す。印字バッファ27Bに記憶されている印字用データを全て印字した場合には(S5:YES)、印字終了時の時刻を、不揮発性メモリ29の時刻記憶エリア29C(図5参照)に記憶し(S6)、不図示のメインフローチャートに戻る。
なお、CPU21が、図10に示す印字処理を実行している場合、図11に示す「タイマー割り込み処理」を、S1におけるタイマー21Aの起動時から所定時間毎(本実施形態では、印字周期である約14.1msec毎)に実行する。
次に、タイマー割り込み処理について、図11を参照して説明する。まず、サーミスタ13によって検出された温度データを取得し、RAM27の環境温度記憶エリア27D(図4参照)に記憶する(S11)。続いて、タイマー21Aの起動時又は前回の後述のS13の処理の終了後から所定時間(本実施形態では、約1秒)経過したか否かを判断する(S12)。
タイマー21Aの起動時又は前回のS13の処理の終了後から所定時間(本実施形態では、約1秒)経過した場合には(S12:YES)、RAM27の環境温度記憶エリア27Dから環境温度データを再度読み出し、該環境温度データをパラメータ記憶エリア29Bに記憶される放熱パラメータテーブル33の「環境温度」の3種類のいずれの種類に該当するかを判断する。さらに、該当する「環境温度」の種類に対応する「減算ドット数」を読み込み、RAM27に「減算ドット数」として記憶する(S13)。そして、RAM27から「減算ドット数」を再度読み出し、この「減算ドット数」をドット数カウンタ記憶エリア29Aのカウント値から減算した数値を、ドット数カウンタ記憶エリア29Aのカウント値として代入して記憶する。
例えば、RAM27から読み出した環境温度データが10℃の場合には、ドット数カウンタ記憶エリア29Aのカウント値から「5250ドット」を減算した数値を、ドット数カウンタ記憶エリア29Aのカウント値として新たに記憶する。ドット数カウンタ記憶エリア29Aのカウント値から「減算ドット数」を減算した値が負の値になる場合は、ドット数カウンタ記憶エリア29Aには「0」が代入されて記憶される。
一方、タイマー21Aの起動時又は前回のS13の処理の終了後から所定時間(本実施形態では、約1秒)経過していない場合には(S12:NO)、S13の減算処理を実行せず、次のS14の処理に移行する。
続いて、RAM27から環境温度データを再度読み出し、その環境温度データをパラメータ記憶エリア29B(図5参照)に記憶された放熱パラメータテーブル33の「環境温度」の3種類のいずれの種類に該当するか判断し、該当する「環境温度」の種類に対応する「基準総量」を読み込み、RAM27に「基準総量」として記憶する。そして、RAM27から「基準総量」を再度読み出し、ドット数カウンタ記憶エリア29Aのカウント値が、この「基準総量」を越えているか否かを判定する(S14)。
例えば、RAM27から読み出した環境温度データが10℃の場合には、ドット数カウンタ記憶エリア29Aのカウント値が「12600ドット」を越えているか否かを判断する。また、環境温度データが25℃の場合には、ドット数カウンタ記憶エリア29Aのカウント値が「4860ドット」を越えているか否かを判断する。また、環境温度データが35℃の場合には、ドット数カウンタ記憶エリア29Aのカウント値が「0ドット」を越えているか否かを判断する。
ドット数カウンタ記憶エリア29Aのカウント値が「基準総量」を越えている場合は(S14:YES)、RAM27から「基準総量」を再度読み出し、ドット数カウンタ記憶エリア29Aのカウント値からこの「基準総量」を減算したドット数を「基準総量を越えたドット数」としてRAM27に記憶する。続いて、RAM27からこの「基準総量を超えたドット数」と「環境温度データ」とを再度読み出し、パラメータ記憶エリア29Bに記憶される蓄熱係数テーブル38の33種類の「基準総量を越えたドット数」のドット数区分範囲と5種類の環境温度範囲とのいずれの組み合わせに該当するか判断し、該当する組み合わせに対応する蓄熱係数dを読み込み、RAM27に蓄熱係数dとして記憶する(S15)。そして、当該タイマー割り込み処理を終了して、印字処理のサブフローチャートに戻る。
例えば、RAM27から読み出した「基準総量を超えたドット数」が「26000ドット」で、RAM27から読み出した環境温度データが20℃の場合には、蓄熱係数テーブル38の該当する蓄熱係数dとして「0.75」を読み込み、この「0.75」をRAM27に蓄熱係数dとして記憶後、当該タイマー割り込み処理を終了して、印字処理のサブフローチャート(図10参照)に戻る。
一方、ドット数カウンタ記憶エリア29Aのカウント値がこの「基準総量」を越えていない場合には(S14:NO)、RAM27に「1.0」を蓄熱係数dとして記憶後(S16)、当該タイマー割り込み処理を終了する。そして、印字処理のサブフローチャート(図10参照)に戻る。
次に、印字開始前処理について、図12を参照して説明する。印字開始前処理は、図10に示す駆動制御処理の前に実行される。まず、環境温度が取得される(S31)。次いで、印字開始直前の時間を読み込んで不揮発性メモリ29の時刻記憶エリア29C(図5参照)に記憶する(S32)。さらに、前回の印字終了時の時間を読み込む(S33)。そして、不揮発性メモリ29に記憶された印字開始直前の時刻から前回の印字終了時の時刻を差し引くことによって、非印字時間を算出する(S34)。
続いて、算出された非印字時間が800秒を超えているか否かを判断する(S35)。非印字時間が800秒を超えていた場合(S35:YES)、サーマルヘッド9はかなり放熱されて冷えていると推測される。この場合、不揮発性メモリ29のドット数カウンタ記憶エリア29A(図5参照)に記憶されているドット数カウンタの値に「0」を代入して記憶し(S36)、印字処理のサブフローチャートに戻る。
一方、非印字時間が800秒をまだ経過していない場合(S35:NO)、非印字時間に対応する放熱量を推測する必要がある。この場合、まず、不揮発性メモリ29のドット数カウンタ記憶エリア29A(図5参照)に記憶されている前回の印字終了時のドット数カウンタの値を読み込む(S37)。次いで、不揮発性メモリ29のパラメータ記憶エリア29B(図5参照)に記憶された補正係数テーブル39(図8参照)を参照し、算出された「非印字時間」と、サーミスタ13によって検出された「環境温度」とに応じた補正係数(f)を決定する(S38)。
例えば、非印字時間が100秒で、サーミスタ13で検出された環境温度が13℃であった場合、補正係数テーブル39を参照することによって、補正係数(f)=5.5と決定される。また、同じ非印字時間で、サーミスタ13で検出された環境温度が25℃であった場合は、補正係数(f)=4.5と決定される。また、同じ非印字時間で、サーミスタ13で検出された環境温度が33℃であった場合は、補正係数(f)=3.5と決定される。つまり、同じ非印字時間であれば、環境温度が高ければ高いほど、補正係数は小さくなるようになっている。
一方、例えば、環境温度が25℃で、非印字時間が5秒であった場合、補正係数テーブル39を参照することによって、補正係数(f)=1.2と決定される。また、同じ環境温度で、非印字時間が100秒であった場合は、補正係数(f)=4.5と決定される。また、同じ環境温度で、非印字時間が560秒であった場合は、補正係数(f)=21.2と決定される。つまり、同じ環境温度であれば、非印字時間が長ければ長いほど、補正係数は大きくなるようになっている。
次いで、決定された補正係数(f)を用いて、ドット数カウンタの値の補正処理を行う(S39)。補正処理では、まず、不揮発性メモリ29のドット数カウンタ記憶エリア29A(図5参照)に記憶されている前回の印字終了時のドット数カウンタの値を、決定された補正係数で割る。その割って得られた値を、不揮発性メモリ29のドット数カウンタ記憶エリア29A(図5参照)に、印字開始直前のドット数カウンタの値として代入して記憶する。この値が図10に示す「印字処理」のS4において利用される。
例えば、環境温度が低くなるにつれて、サーマルヘッド9における放熱量は大きくなる。そして、上述したように、環境温度が低ければ低いほど、補正係数は大きくなるので、そのような補正係数で割られて得られるドット数カウンタの値は逆に小さくなる。ここで、ドット数カウンタの値は、蓄熱係数を乗じることによって通電時間となることから、サーマルヘッド9の蓄熱状態を計量するものである。従って、環境温度が低ければ低いほど、サーマルヘッド9の蓄熱状態が低下するように算出される。このように補正係数と、サーマルヘッド9の蓄熱状態とが反比例の関係になるように、補正係数テーブル39に予め登録して管理することで、非印字時間および環境温度に適切な補正係数を得ることができ、サーマルヘッド9の蓄熱状態を容易に推測することができる。
このように、前回の印字終了時から今回の印字処理開始時までの非印字時間を算出し、その算出した非印字時間と、現在の環境温度とに応じて決定した補正係数(f)で、ドット数カウンタの値を割ることによって、非印字中の放熱量を考慮したドット数カウンタの値を得ることができ、サーマルヘッド9の蓄熱量を計算できる。そして、従来のように、電源オフ時のような非印字中でも蓄熱量を計算するのではなく、印字処理開始前に、非印字時間および環境温度に基づいて非印字中の放熱量を反映させた蓄熱量を計算する。これにより、電源オフ時に消費していた電力を大幅に節約できる。印刷装置1の電源を供給する電池の長寿命化が期待できる。
以上説明したように、本実施形態である印刷装置1では、サーマルヘッド9の放熱量を考慮しつつ、サーマルヘッド9の印字ドット数と基準総量との差分が大きくなるに従って各発熱素子R1〜Rnの通電時間が短くなるように設定され、環境温度が高くなるに従って各発熱素子R1〜Rnの通電時間が短くなるように設定される。よって、連続印字ドット数と環境温度とを考慮してこの各発熱素子R1〜Rnの蓄熱量を一定量に維持することができる。簡易な処理で連続パルス印加による印字ドットの滲みやつぶれを確実に防止できる。印字パターンと印字パターンの間の印字休止等の処理待ち時間がなくなりユーザの使い勝手がよく、且つ高品位の印字が可能となる。
また、前回の印字終了時から今回の印字処理開始時までの非印字時間を算出し、その算出した非印字時間と、現在の環境温度とに応じて決定した補正係数(f)で、ドット数カウンタの値を割ることによって、非印字中の放熱量を考慮したドット数カウンタの値を得ることができ、サーマルヘッド9の蓄熱量をより正確に計算できる。そして、従来のように、電源オフ時のような非印字中でも蓄熱量を計算するのではなく、印字処理開始前に、非印字時間および環境温度に基づいて非印字中の放熱量を反映させた蓄熱量を計算する。これにより、電源オフ時に消費していた電力を大幅に節約できる。印刷装置1の電源を供給する電池の長寿命化が期待できる。
以上説明において、図5に示すドット数カウンタ記憶エリア29Aが本発明の「カウント値記憶手段」に相当する。放熱パラメータテーブル33が本発明の「減算ドット数記憶手段」に相当する。補正係数テーブル39が本発明の「補正係数記憶手段」に相当する。
なお、本発明は前記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の改良、変形が可能であることは勿論である。例えば、以下のようにしてもよい。
上記実施形態では、印刷装置1で使用される印刷データは、キーボード6から入力されたものであり、RAM27のテキストメモリ27Aに記憶されているが、例えば、印刷装置1をコンピュータに接続し、そのコンピュータから送信される印刷データをRAM27に記憶させてもよい。この場合、コンピュータから送信される印刷データには、印刷データの送信を開始した開始時刻の情報である「時刻情報」が付加されている。その時刻情報から得られる開始時刻を「印字処理開始時刻」とすれば、上記実施形態と同様に非印字時間を算出でき、上記実施形態と同じの効果を得ることができる。なお、その他の構成は、上記実施形態と全く同じである。
また、上記実施形態では、補正係数でドット数カウンタの値を割っているが、ドット数カウンタの値に乗じることで同値が得られるような補正係数を登録してもよい。
また、上記実施形態では、放熱パラメータテーブル33の「環境温度」は、3種類に設定したが、3種類以上等の任意の種類に設定してもよい。これにより、サーマルヘッド9の放熱量をさらに正確に予測することができる。
また、上記実施形態では、蓄熱係数テーブル38の蓄熱係数dは、各「基準総量を超えたドット数」と各「環境温度」との各組み合わせに対して一定値に設定されているが、1次関数や2次関数など各々任意に設定してもよい。これにより、さらに正確な蓄熱係数dを設定することができる。