(57)【要約】【課題】  通電分割回数を自動的に設定可能なプリンタ及びプリンタの制御方法を提供する。【解決手段】  ラインサーマルプリンタ１００は、複数の発熱素子を備えた印刷ヘッド１１２と、ホスト装置１２０からの印刷データをもとに１ドットラインデータを生成するデータ解析部２０３と、１ドットラインデータを所定の通電分割回数に応じて分割し、分割データを時間差をおいて印刷ヘッドに送信することにより、複数の発熱素子を時分割通電する分割データ送信部２０５と、電源から供給される電源電圧に応じて、通電分割回数を求める通電分割回数算出部２０６と、を備えている。【選択図】  図１
2007030263.tif 000002
【特許請求の範囲】
【請求項１】
ホスト装置と通信可能に接続されたプリンタであって、
複数の発熱素子を備えた印刷ヘッドと、
前記ホスト装置からの印刷データをもとに１ドットラインデータを生成するデータ解析部と、
前記１ドットラインデータを所定の通電分割回数に応じて分割し、分割データを時間差をおいて印刷ヘッドに送信することにより、前記複数の発熱素子を時分割通電する分割データ送信部と、
電源から供給される電源電圧に応じて、前記通電分割回数を求める通電分割回数算出部と、を備えたことを特徴とするプリンタ。
【請求項２】
前記通電分割回数算出部は、電源負荷最大の状態において前記発熱素子の通電数を増加させていき、前記電源電圧が所定値未満となったときの前記発熱素子の通電数を基に、前記通電分割回数を求めることを特徴とする請求項１に記載のプリンタ。
【請求項３】
前記電源負荷最大の状態とは、紙送り速度が最高速度である状態であることを特徴とする請求項２に記載のプリンタ。
【請求項４】
前記通電分割回数算出部は、前記電源電圧が所定値未満となったときの前記発熱素子の通電数で印加通電最大ドット数を割ることにより前記通電分割回数を求めることを特徴とする請求項２または３に記載のプリンタ。
【請求項５】
前記通電分割回数算出部は、所定のコマンドまたはパネルスイッチによる所定の操作により起動されることを特徴とする請求項１〜４の何れか１項に記載のプリンタ。
【請求項６】
ホスト装置と通信可能に接続され、かつ複数の発熱素子を備えた印刷ヘッドを有するプリンタの制御方法であって、
電源から供給される電源電圧に応じて、通電分割回数を求める通電回数算出ステップと、
前記ホスト装置からの印刷データをもとに１ドットラインデータを生成するラインデータ生成ステップと、
前記通電回数に応じて、前記１ドットラインデータを通電分割回数に応じて分割し、分割データを時間差をおいて前記印刷ヘッドに送信することにより、前記複数の発熱素子を時分割通電する時分割通電ステップと、を備えたことを特徴とするプリンタの制御方法。
【請求項７】
電源負荷最大の状態において前記発熱素子の通電数を増加させていき、前記電源電圧が所定値未満となったときの前記発熱素子の通電数を基に、前記通電分割回数を求めることを特徴とする請求項６に記載のプリンタの制御方法。
【請求項８】
前記電源負荷最大の状態とは、紙送り速度が最高速度である状態であることを特徴とする請求項７に記載のプリンタの制御方法。
【請求項９】
前記電源電圧が所定値未満となったときの前記発熱素子の通電数で印加通電最大ドット数を割ることにより前記通電分割回数を求めることを特徴とする請求項７または８に記載のプリンタの制御方法。
【請求項１０】
前記通電回数算出ステップは、所定のコマンドまたはパネルスイッチによる所定の操作により起動されることを特徴とする請求項６〜９の何れか１項に記載のプリンタの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリンタ及びプリンタの制御方法に係り、特に電源ユニットが所定の電圧値を供給できない場合であっても、適切にプリンタを動作可能する方法に関する。
【背景技術】
【０００２】
プリンタは、用紙に文字や画像を形成する画像形成装置の一つとして現在産業界の様々な分野でも用いられている。プリンタとしては、ドットインパクト方式、インクジェット方式、電子写真方式等、様々な方式のものが実用化されているが、例えば、小売店等のレジスター装置等には、サーマル方式のプリンタが一般的に用いられている。
【０００３】
サーマル方式のプリンタは、一列に配置され、独立して駆動加熱される複数の発熱素子を備えた印刷ヘッドを備えている。印刷時には、この印刷ヘッドの発熱素子を選択的に駆動加熱して、対向配置された感熱紙の対応箇所をその熱によって発色させることにより、印刷を行う。
【０００４】
通常は、この複数の発熱素子を用紙幅に応じた最大数を用いて印刷を行うことにより印刷を行う。しかしながら、例えば、プリンタに電力を供給する電源が十分な容量を持っていない場合は、各発熱素子に十分な量の電流を通電することができず、電流不足によりプリンタ全体の電圧が降下してしまい、印刷が実行できないような状況が発生する場合もある。また、プリンタがレジスター等他の機器から電力が供給されているような場合には、プリンタのみならず、他の機器にも十分な電力が供給されなくなり、プリンタを含むシステム全体のリセットが発生する場合もある。
【０００５】
このような問題を考慮し、プリンタでは、印刷ヘッドの発熱素子を例えば２〜４等の所定の数に分割し、一括して通電される発熱素子の数を少なくすることで消費電流を押さえる制御が行われている。このような制御を行うことにより、低容量の電源を使用した場合でも、所望の印刷を実行することができる（例えば、特許文献１参照）。
【０００６】
【特許文献１】特開平５−２４２３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
現実には、プリンタに電力を供給する電源としてさまざまな種類のものが取り付けられることがあり、電源の種類に応じて電源容量も種々のものが想定される。このような状況で、個々の電源のそれぞれに応じた最適な通電分割回数を決定するには、実際の電源を取り付けた後、プリンタを駆動し、個別の状況に応じた制御を行うファームウェアを作成しなければならない。したがって、例えばプリンタの導入当初は、電源容量に応じた最適な通電分割回数がわからないため、サービスマン等が個々の事情に応じた対応を行い、状況に応じてファームウェアを作成するといった手間がかかっていた。
【０００８】
本発明は、上記事情を鑑みて為されたものであり、通電分割回数を自動的に設定可能なプリンタ及びプリンタの制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
（１）  ホスト装置と通信可能に接続されたプリンタであって、
複数の発熱素子を備えた印刷ヘッドと、
前記ホスト装置からの印刷データをもとに１ドットラインデータを生成するデータ解析部と、
前記１ドットラインデータを所定の通電分割回数に応じて分割し、分割データを時間差をおいて印刷ヘッドに送信することにより、前記複数の発熱素子を時分割通電する分割データ送信部と、
電源から供給される電源電圧に応じて、前記通電分割回数を求める通電分割回数算出部と、を備えたことを特徴とするプリンタ。
（２）  前記通電分割回数算出部は、電源負荷最大の状態において前記発熱素子の通電数を増加させていき、前記電源電圧が所定値未満となったときの前記発熱素子の通電数を基に、前記通電分割回数を求めることを特徴とする（１）に記載のプリンタ。
（３）  前記電源負荷最大の状態とは、紙送り速度が最高速度である状態であることを特徴とする（２）に記載のプリンタ。
（４）  前記通電分割回数算出部は、前記電源電圧が所定値未満となったときの前記発熱素子の通電数で印加通電最大ドット数を割ることにより前記通電分割回数を求めることを特徴とする（２）または（３）に記載のプリンタ。
（５）  前記通電分割回数算出部は、所定のコマンドまたはパネルスイッチによる所定の操作により起動されることを特徴とする（１）〜（４）の何れか１項に記載のプリンタ。
（６）  ホスト装置と通信可能に接続され、かつ複数の発熱素子を備えた印刷ヘッドを有するプリンタの制御方法であって、
電源から供給される電源電圧に応じて、通電分割回数を求める通電回数算出ステップと、
前記ホスト装置からの印刷データをもとに１ドットラインデータを生成するラインデータ生成ステップと、
前記通電回数に応じて、前記１ドットラインデータを通電分割回数に応じて分割し、分割データを時間差をおいて前記印刷ヘッドに送信することにより、前記複数の発熱素子を時分割通電する時分割通電ステップと、を備えたことを特徴とするプリンタの制御方法。
（７）  電源負荷最大の状態において前記発熱素子の通電数を増加させていき、前記電源電圧が所定値未満となったときの前記発熱素子の通電数を基に、前記通電分割回数を求めることを特徴とする（６）に記載のプリンタの制御方法。
（８）  前記電源負荷最大の状態とは、紙送り速度が最高速度である状態であることを特徴とする（７）に記載のプリンタの制御方法。
（９）  前記電源電圧が所定値未満となったときの前記発熱素子の通電数で印加通電最大ドット数を割ることにより前記通電分割回数を求めることを特徴とする（７）または（８）に記載のプリンタの制御方法。
（１０）  前記通電回数算出ステップは、所定のコマンドまたはパネルスイッチによる所定の操作により起動されることを特徴とする（６）〜（９）の何れか１項に記載のプリンタの制御方法。
【発明の効果】
【００１０】
本発明のプリンタは、複数の発熱素子を備えた印刷ヘッドと、ホスト装置からの印刷データをもとに１ドットラインデータを生成するデータ解析部と、１ドットラインデータを所定の通電分割回数に応じて分割し、分割データを時間差をおいて印刷ヘッドに送信することにより、複数の発熱素子を時分割通電する分割データ送信部と、電源から供給される電源電圧に応じて、通電分割回数を求める通電分割回数算出部と、を備えている。
【００１１】
本発明のプリンタによれば、電源電圧がどのようなものであっても、通電分割回数算出部により通電分割回数を求め、求められた通電分割回数に応じて分割データ送信部が複数の発熱素子を時分割通電するので、どのような電源ユニットが用いられた場合であっても、安定してプリンタを動作させることができる。また、電源ユニットとしてプリンタを制御するホスト装置が用いられた場合であっても、ホスト装置ともどもシステムリセットしてしまうといった不具合が生じることなく、プリンタを安定動作させることができる。
【００１２】
また、通電分割回数算出部により通電分割回数が容易に設定できるため、電源ユニットの違い毎にサービスマンがユーザサイドに赴き、個々の状況に応じてファームウェアを作成すると言った手間をかける必要も無くなる。
【００１３】
また、本発明によれば、通電分割回数算出部は、電源負荷最大の状態において前記発熱素子の通電数を増加させていき、電源電圧が所定値未満となったときの前記発熱素子の通電数を基に、通電分割回数を求める。このように構成することにより、適切な通電分割回数を求めることが可能である。
【００１４】
具体的に、電源負荷最大の状態とは、プリンタにおいて電源負荷が最大となる紙送り速度が最高速度である状態である。この状態において、選択された通電分割数において電源電圧が所定値以上であれば、問題なくプリンタを駆動させることができる。
【００１５】
また、具体的に、通電分割回数算出部は、電源電圧が所定値未満となったときの発熱素子の通電数で印加通電最大ドット数を割ることにより通電分割回数を求めることができる。本発明によれば、このような簡単な演算処理により通電分割回数を求めることができる。
【００１６】
また、通電分割回数算出部は、起動処理時に受信する所定のコマンドまたはパネルスイッチによる所定の操作により起動される。したがって、ユーザは、このようなコマンドまたは操作を入力することにより、簡単に通電分割回数を設定してやることができる。
【発明を実施するための最良の形態】
【００１７】
以下、図面を参照しながら、本発明にかかるプリンタ及びプリンタの制御方法についてラインサーマルプリンタを例に挙げて詳細に説明する。
【００１８】
図１は、ラインサーマルプリンタの概略構成を示すブロック図であり、図２は、印刷データの処理の流れを示すブロック図であり、図３は、印刷ヘッドの構造を示すブロック図であり、図４は、分割データ送信部の処理を示す模式図であり、図５及び図６は、通電分割回数算出部による通電分割回数算出の流れをしめすフローチャートである。
【００１９】
本実施形態のラインサーマルプリンタ１００は、一列に配置され、独立して駆動加熱される複数の発熱素子を備えた発熱体３０３を有する印刷ヘッド１１２を備えた画像記録装置である。ラインサーマルプリンタ１００は、印刷媒体としての感熱紙を搬送し、印刷時には、この印刷ヘッド１１２の発熱素子を選択的に駆動加熱して、対向配置された感熱紙の対応箇所をその熱によって発色させることにより、印刷を行う。
【００２０】
ラインサーマルプリンタ１００は、主として、ＣＰＵ１０１と、ＲＯＭ１０２と、ＲＡＭ１０３と、印刷機構部１０４と、各種センサ１０５と、通信インタフェース１０６と、パネルスイッチ１０７と、を備えている。
【００２１】
ＣＰＵ（Ｃｅｎｔｒａｌ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）１０１は、ラインサーマルプリンタ１００の制御中枢ユニットであり、ＲＯＭ１０２内に記憶されたファームウェアを実行することにより、ホスト装置１２０と通信を行いながら、感熱紙の紙送り、印刷等を実行する。
【００２２】
ＲＯＭ（Ｒｅａｄ Ｏｎｌｙ Ｍｅｍｏｒｙ）１０２は、ラインサーマルプリンタ１００の各種機能を実現するファームウェアおよび制御時に参照される各種データを記憶する不揮発性メモリである。ＣＰＵ１０１は、前述の通り各種データを参照しながらファームウェアを実行することにより、ラインサーマルプリンタ１００における各種機能を実現する。本実施形態では、このＲＯＭ１０２は、フラッシュＲＯＭまたはＥＥＰＲＯＭ等の電気的に書き換え可能な記憶素子で構成されており、ファームウェアのアップデートや各種データの更新等を実行することができる。
【００２３】
ＲＡＭ（Ｒａｎｄｏｍ Ａｃｃｅｓｓ Ｍｅｍｏｒｙ）１０３は、ラインサーマルプリンタ１００の各種機能を実現するときに必要なデータの一時記憶領域として機能する揮発性メモリである。ＲＡＭ１０３には、後述する受信バッファ２０２や印刷バッファ２０４等のデータ格納領域が設定されており（図２参照）、ＣＰＵ１０１は、このＲＡＭ１０３内の各種データを参照しながら印刷を実行する。
【００２４】
印刷機構部１０４は、印刷を実行するラインサーマル方式の印刷ヘッド１１２と、紙送りローラ、オートカッタ等の駆動部品を駆動するモータ１１３およびプランジャ１１４と、これら印刷ヘッド１１２、モータ１１３およびプランジャ１１４を駆動するドライバ回路として機能する印刷制御部１１１から構成される。印刷機構部１０４では、これらの印刷ヘッド１１２、モータ１１３およびプランジャ１１４を駆動しつつ、感熱紙の搬送、印刷、切断等の各種物理的処理を実行する。
【００２５】
各種センサ１０５は、ラインサーマルプリンタ１００の各部の状態を検出する複数のセンサから構成される。各種センサ１０５としては、エラー検出を行うエラーセンサ、図示せぬカバーの開状態を検出するカバーオープンセンサ、用紙搬送路上用紙の有無を検出する用紙検出センサ等が例示される。
また、本実施形態では、各種センサ１０５の一つとして、特に、図示せぬ電源から供給される電圧を検出する電源電圧検出センサ、発熱体３０３の温度を検出するヘッド温度検出センサ、紙送り速度を検出する紙送り速度検出センサが設けられている。この電源電圧センサ、ヘッド温度検出センサ、紙送り速度検出センサについては、後ほど説明する。
【００２６】
通信インタフェース１０６は、外部に設置されたホスト装置１２０との間の通信を行う外部入出力インタフェースである。本実施形態のラインサーマルプリンタ１００は、この通信インタフェース１０６及びシリアル、パラレル、ＵＳＢ方式等の各種ケーブルを介してホスト装置１２０と通信可能に接続されている。ホスト装置１２０からは、この通信インタフェース１０６を介して各種制御コマンド、印刷データ等の印刷制御情報が送信され、ＣＰＵ１０１は、この印刷制御情報に基づいて、印刷制御部１１１、印刷ヘッド１１２、モータ１１３およびプランジャ１１４を制御する。
【００２７】
次に、図２を参照しながら、本実施形態のラインサーマルプリンタ１００におけるデータ処理部及び処理の流れについて説明する。
本実施形態では、ＣＰＵ１０１がＲＯＭ１０２内のファームウェアを実行することにより、主制御部２０１、受信バッファ２０２、データ解析部２０３、印刷バッファ２０４、分割データ送信部２０５及び通電分割回数算出部２０６がデータ処理部として実現され機能する。
【００２８】
受信バッファ２０２は、通信インタフェース１０６を介してホスト装置１２０から受信した各種制御コマンド、印刷データ等の印刷制御情報を一時的に保存するデータ受信領域である。受信バッファ２０２は、ホスト装置１２０から受信したデータをその種類に拘わらず受信順に保存していく。
【００２９】
データ解析部２０３は、受信バッファ２０２に保存された印刷制御情報をＦＩＦＯ（Ｆｉｒｓｔ Ｉｎ Ｆｉｒｓｔ Ｏｕｔ）方式に基づいて順次読み出して解析し、解析結果に基づいて所要の処理を実行する。ここで、読み出された印刷制御情報が制御コマンドであれば、主制御部２０１に解析結果に応じた処理を主制御部２０１に要求し実行させる。
【００３０】
一方、読み出された印刷制御情報が印刷データであれば、ＲＯＭ１０２中のフォントデータを参照して印刷データを展開し、印刷バッファ２０４に１ドットライン毎に印刷データ（以下、「１ドットラインデータ」という）として保存していく。ここで、「１ドットラインデータ」とは、印刷機構部１０４の印刷ヘッド１１２によって同時に印刷可能な１ドットライン分の印刷データである。１ドットラインデータは、印刷ヘッド１１２を構成する複数個の発熱素子の数に対応して構成される。例えば、同時駆動可能な発熱素子の数が５１２個であれば、１ドットラインデータのデータ数も最大で５１２個である。
【００３１】
なお、ラインサーマルプリンタ１００が印刷される感熱紙の幅を可変にできるように構成されている場合には、同時駆動される発熱素子の数は、感熱紙の幅に応じて変化する。この場合には、１ドットラインデータのデータ数は、用紙幅に応じた最大駆動発熱素子の数に応じて変化する。以下の説明では、用紙幅を考慮し最大に印加可能な通電ドットの数を最大印加通電ドット数と呼ぶこととする。
【００３２】
分割データ送信部２０５は、印刷バッファ１０４に保存された１ドットラインデータをＲＯＭ１０２に保存された所定の通電分割回数に応じて分割して分割データを生成し、分割データ毎に印刷機構部１０４の印刷ヘッド１１２に送信する印刷データ送信部である。また、通電分割回数算出部２０６は、電源電圧に応じて、分割データ送信部２０５により参照される所定の通電分割回数を求める演算を行う演算部である。この分割データ送信部２０５と通電分割回数算出部２０６は、本実施形態のラインサーマルプリンタ１００の主要な構成要素であり、具体的な作用について後ほど詳しく説明する。
【００３３】
図２についての説明は以上である。
なお、本実施形態では、説明が複雑になるため省略したが、分割データ送信部２０５は、分割データの生成及び送信の他に、印刷履歴に応じた通電タイミング及び通電時間等について所定の補正処理を実行するように構成されていてもよい。ラインサーマル方式の印刷ヘッド１１２では、先の通電によって発熱体３０３の各発熱素子に与えられた熱エネルギーを考慮しないと、次回の通電時に各発熱素子に均一に加熱することができず、濃度のばらつき等が発生してしまう。このため、分割データ送信部２０５は、さらに通電履歴を考慮した各種補正処理を後述するストローブ信号を用いて施すことにより、各発熱素子に与えられる熱エネルギーを均一化することができる。なお、この処理については、以下では説明を省略する。
【００３４】
次に、図３を参照しながら、印刷ヘッド１１２について説明する。
印刷ヘッド１１２は、シフトレジスタ３０１と、複数の駆動回路３０２と、発熱体３０３と、を備えている。
【００３５】
シフトレジスタ３０１は、分割データ送信部２０５から転送される印刷データを一時的に保存するためのラインバッファである。分割データ送信部２０５からシフトレジスタ３０１へは、印刷データはシリアル伝送されており、シフトレジスタ３０１は、同期クロックを参照して、印刷データを送信順に内部に保存していく。
【００３６】
駆動回路３０２は、発熱体３０３の複数の発熱素子一つ一つに対応して設けられたＡＮＤ回路であり、個々の発熱素子を駆動して印刷を実行させるかどうかを決定する。駆動回路３０２には、シフトレジスタ３０１に一時保存された各印刷データの一つと、印刷タイミング及び通電時間を決定するストローブ信号の反転信号が入力され、両者の論理積に応じて信号「Ｈｉｇｈ」が出力される。
【００３７】
発熱体３０３は、用紙搬送路の幅方向、つまり感熱紙の幅方向に沿って配列された複数の発熱素子から構成されている。各発熱素子は、対応する駆動回路３０２から信号「Ｈｉｇｈ」を受け取ると、ヘッド電源電圧により電圧が供給されて加熱される。そして、発熱した発熱素子に生じる熱は接触している感熱紙の接触領域に伝達され、発熱紙を発色させる。
本実施形態のラインサーマルプリンタ１００は、以上のようにして感熱紙への印刷を実行する。
【００３８】
次に、図４を参照しながら、分割データ送信部２０５による分割データの生成及び送信について説明する。
【００３９】
分割データ送信部２０５は、印刷バッファ２０３に保存された１ドットラインデータを読み出し、この１ドットラインデータを所定の通電分割回数によって分割して、通電分割回数に応じた数の送信データを生成する。
【００４０】
具体的な例として、例えば、図４に示すように、１ドットラインデータが５１２個であり、これを４分割するように設定されている場合を考える。この場合は、まず印刷バッファ２０３に保存された５１２個のデータからなる１ドットラインデータを４分割し、それぞれ１２８個ずつのデータからなる４つの印刷データのまとまり「分割データＡ」、「分割データＢ」、「分割データＣ」、「分割データＤ」に分け、各分割データＡ〜Ｄの一つを備えた「第１の送信データ」〜「第４の送信データ」を作成する。
【００４１】
「第１の送信データ」は、１番目から１２８番目までに「分割データＡ」が順に割り当てられ、そして１２９番目から５１２番目のデータとして非印刷を意味する０のデータ（マスクデータ）が割り当てられた、計５１２個のデータである。
【００４２】
「第２の送信データ」は、１番目から１２８番目までに非印刷を意味する０のデータ（マスクデータ）が割り当てられ、１２９番目から２５６番目までに「分割データＢ」が順に割り当てられ、そして２５７番目から５１２番目のデータとして非印刷を意味する０のデータ（マスクデータ）が割り当てられた、計５１２個のデータである。
【００４３】
「第３の送信データ」は、１番目から２５６番目までに非印刷を意味する０のデータ（マスクデータ）が割り当てられ、２５７番目から３８４番目までに「分割データＣ」が順に割り当てられ、そして３８５番目から５１２番目のデータとして非印刷を意味する０のデータ（マスクデータ）が割り当てられた、計５１２個のデータである。
【００４４】
「第４の送信データ」は、１番目から３８４番目までに非印刷を意味する０のデータ（マスクデータ）が割り当てられ、３８５番目から５１２番目までに「分割データＤ」が順に割り当てられた、計５１２個のデータである。
【００４５】
図４から自ずと理解されるように、第１の送信データから第４の送信データまでの同一番目のデータをすべて足し合わせると、分割前の１ドットラインデータとなる。これらの第１の送信データ、第２の送信データ、第３の送信データ、及び第４の送信データは、順に印刷ヘッド１１２に送信され、送信された順に時間をおいて感熱紙上に印刷が行われる。
【００４６】
このように、本実施形態では、分割前の１ドットラインデータを複数に時系列的に分割して、発熱素子を駆動して印刷を実行することにより、一度に駆動される発熱素子の最大数を、（印加通電最大ドット数）／（通電分割回数）に制限することができる（上記では、５１２／４＝１２８）。したがって、電源容量が不足しており、所定数以上の発熱素子に同時に通電を行うと電圧降下が生じるような場合でも、一定数以下に制限してやれば電圧降下を抑制しシステムリセット等の不具合を防ぐことができる。
【００４７】
次に、通電分割回数についてであるが、通電分割回数を多くしすぎると電圧降下は発生しにくいが印刷ヘッド２１１へのデータ転送回数及び駆動回数が増加して印刷効率が低下してしまい、通電分割回数が少なすぎると電圧降下が発生してしまう。したがって、通電分割回数としてはシステムリセット等の不具合を引き起こしかねない電圧降下が発生しない程度の通電分割回数を決定してやることが好ましい。
【００４８】
本実施形態では、この通電分割回数の最適値を通電分割回数算出部２０６により求めることができる。実際の通電分割回数として最適な通電分割回数を求めるためには、ラインサーマルプリンタ１００がどのような電源により電力が供給されているかを知る必要があるが、通電分割回数算出部２０６は、これを各種センサ１０５の一つとして設けられた電源電圧検出センサが検出する電源電圧値を参照して決定している。
【００４９】
以下、図５及び図６を参照しながら、この通電分割回数算出部２０６による通電分割回数算出の流れを説明する。
【００５０】
まず、図５において、ラインサーマルプリンタ１００の電源がオンされ、ＣＰＵ１０１がファームウェアを読み出しつつ起動処理が行われる。この起動処理においては、まず通電分割回数測定の実施に対応するパネルスイッチ１０７の操作が行われたかどうか、すなわちユーザによる特殊コマンドが入力されたかどうかが検証される（ステップＳ１）。この特殊コマンドを意味するパネルスイッチ１０７の操作とは、例えば、ラインサーマルプリンタ１００のカバーが開であり、かつパネルスイッチ１０７が押された状態で電源がオンされ、その後パネルスイッチが所定回数押されるといった特殊な状況に対応している。また、ホストコンピュータから直接特殊コマンドを受信するように構成されていてもよい。
【００５１】
ステップＳ１において、上述のような通電分割回数測定の実施に対応するパネルスイッチ１０７の操作が行われていなければ、通常モードでの起動が行われ、ステップＳ１０に移行する。一方、通電分割回数測定の実施に対応するパネルスイッチ１０７の操作が行われていれば、ステップＳ２に移行し、通電分割回数算出部２０６が起動し通電分割回数測定モードに移行する。
【００５２】
以下、ステップＳ２〜ステップＳ９までの処理は通電分割回数算出部２０６による通電分割回数測定モードにおける処理である。
【００５３】
まず、ステップＳ２では印加通電可能ドット数を１ドットに設定し、そして印字紙送り割込みを起動する（ステップＳ３）。
【００５４】
印字紙送り割込み処理を図６に示す。
印字紙送り割込処理の概要についてまず説明すると、この印字紙送り割込処理では、ラインサーマルプリンタ１００の電源負荷が最大の状態で、通電する発熱素子の数を一つずつ増やしていき、電源電圧値が所定値未満となる通電の一つ前に通電した発熱素子の数を求めてやる処理である。
具体的に、印字紙送り割込み処理では、まずこの割込み処理が初回の起動であるかどうかが判断される（ステップＳ２１）。
【００５５】
ステップＳ２１において、初回起動であれば、まずステップＳ２４に移行し、紙送り速度検出センサの検出値を参照して感熱紙の紙送り速度が最高速度であるかどうか判断される。紙送り速度が最高速度であるということは、紙送りに関するラインサーマルプリンタ１００の電源負荷が最大であることを意味する。一方、初回時等紙送り速度が最高速度でなければ、ステップＳ２７に移行し、ヘッド温度検出センサの検出値を参照してヘッド温度から発熱素子への通電幅及び紙送り速度を決定する。
【００５６】
その後、印刷バッファ２０４にテスト印刷用の印刷データを設定する（ステップＳ２８）。この印刷データは、印加通電可能ドット数分の印刷が有効な印刷データであり、その後、ステップＳ２８において印刷データを印刷ヘッド１１２に送信して、発熱体３０３の発熱素子への通電を実行する。この通電では、印加通電可能ドット数分の印刷が有効な印刷データに応じて、印加通電可能ドット数分の発熱素子が通電される。
【００５７】
通電が行われると、ステップＳ３０において、電源電圧検出センサの検出値のＡＤ変換が実行される。その後は、再度ステップＳ２１に戻り、今度は初回起動ではないので、ステップS２２に進み、ＡＤ変換値が読み取られる。
【００５８】
そして、ステップＳ２３において、読み取られたＡＤ変換値がＲＯＭ１０２に記憶された所定の電圧値未満であるかどうかが判断される。ここで、読み取られたＡＤ変換値が所定の電圧値以上であれば、再度ステップＳ２４に進み処理を継続する。
なお、ＡＤ変換値と比較参照される所定の電圧値としては、ラインサーマルプリンタ１００の駆動に最低限必要な電圧値に多少余裕を持たせた所定値を加えたものが例示される。
【００５９】
２度目移行のステップＳ２４の処理において、紙送り速度が最高速度であれば、ステップＳ２４からステップＳ２５に移行し、印加通電可能ドット数が印加通電最大ドット数以上であるかどうかが判断される。
【００６０】
ステップＳ２５において、印加通電可能ドット数が印加通電最大ドット数未満であれば、ステップＳ２６において、印加通電可能ドット数に１を追加する。これは、ステップＳ２３において、今回の通電における印加通電可能ドット数では、所定電圧以下にならないことが確認されている。したがって、発熱素子の数を一つ増やしてやる必要があり、現在の印加通電可能ドット数に１を加えることにより次回通電する発熱素子の数を決定してやることとなる。その後は、ステップＳ２７に進み、ステップＳ２３でＹｅｓまたはステップＳ２５でＹｅｓとなるまでフローチャートにしたがい処理を繰り返す。
【００６１】
一方、ステップＳ２５において、印加通電可能ドット数が印加通電最大ドット数以上であれば、これは印加通電最大ドット数で印加通電しても問題となるような電圧降下が発生しなかったことを意味する。この場合には、ステップＳ３１に移行して、印字紙送り割込み処理を終了する。
【００６２】
また、ステップＳ２３において、ＡＤ変換値が所定の電圧値未満であれば、現在の印加通電可能ドット数では、通電により電源電圧値が所定値未満となってしまうことが判断された状態である。したがって、ステップＳ３１において電源電圧値が所定値未満とならない印加通電可能ドット数として一つ前に通電した発熱素子の数、すなわち（現在の印加通電可能ドット数―１）を新たな印加通電可能ドット数として処理を終了する。なお、所定の電圧値が実際の起動に最低限必要な電圧値に余裕を持たせたものである場合には、現在の印加通電可能ドット数をそのまま印加通電可能ドット数としてもよい。
【００６３】
図６に示す割込み処理が実行されている間、図５に示すメインのフローでは、ステップＳ４において、割込み処理が終了するまで待機している。そして、割込み処理が終了すると、ステップＳ５に進み、求められた印加通電可能ドット数で印加通電最大ドット数を割り、通電分割回数を求める。
【００６４】
ステップＳ６では、この通電分割回数を求める割り算において０以外の余りが発生したどうか判断する。ここで、余りが０であれば、ステップＳ５の割り算で得られた商をそのまま印加通電可能ドット数としてステップＳ８に移行するが、余りが０でなければ、ステップＳ５の割り算で得られた商に１を加えた数を通電可能回数に設定する（ステップＳ７）。
【００６５】
その後、得られた通電可能回数は、書き込み可能な不揮発性メモリであるＲＯＭ１０２に書き込まれ（ステップＳ８）、その後ＣＰＵリセットされて通電分割回数設定モードが終了する（ステップＳ９）。
【００６６】
ステップＳ９のＣＰＵリセット後に再起動が実行されると今度は通常モードで起動される。これは、ステップＳ１で特殊なパネルスイッチ操作が行われなかった場合も同様である。通常モードでの起動時には、ＲＯＭ１０２に書き込まれた、通電分割回数が読み出されて、通電分割回数が分割データ送信部２０５に設定される（ステップＳ１０）。
【００６７】
その後、印刷を実行する場合には、分割データ送信部２０５は、設定された通電分割回数に応じて１ドットラインデータを分割して、印刷ヘッドに印刷データを送信して印刷動作が実行される（ステップＳ１１）。
本実施形態のラインサーマルプリンタ１００における処理説明は以上の通りである。
【００６８】
以上説明したように、本実施形態のラインサーマルプリンタ１００は、複数の発熱素子を備えた印刷ヘッド１１２と、ホスト装置１２０からの印刷データをもとに１ドットラインデータを生成するデータ解析部２０３と、１ドットラインデータを所定の通電分割回数に応じて分割し、分割データを時間差をおいて印刷ヘッドに送信することにより、複数の発熱素子を時分割通電する分割データ送信部２０５と、電源から供給される電源電圧に応じて、通電分割回数を求める通電分割回数算出部２０６と、を備えている。
【００６９】
したがって、電源電圧がどのようなものであっても、通電分割回数算出部２０６により通電分割回数を求め、求められた通電分割回数に応じて分割データ送信部２０５が複数の発熱素子を時分割通電するので、どのような電源ユニットが用いられた場合であっても、安定してラインサーマルプリンタ１００を動作させることができる。また、電源ユニットとしてラインサーマルプリンタ１００を制御するホスト装置１２０が用いられた場合であっても、ホスト装置１２０ともどもシステムリセットしてしまうといった不具合が生じることなく、ラインサーマルプリンタ１００を動作させることができる。
【００７０】
また、通電分割回数算出部２０６により通電分割回数が容易に設定できるため、電源ユニットの違い毎にサービスマンがユーザサイドに赴き、個々の状況に応じてファームウェアを作成すると言った手間をかける必要も無くなる。
【００７１】
また、本実施形態では、通電分割回数算出部は、電源負荷最大の状態において前記発熱素子の通電数を増加させていき、電源電圧が所定値未満となったときの前記発熱素子の通電数を基に、通電分割回数を求める。このように構成することにより、適切な通電分割回数を求めることが可能である。
【００７２】
具体的に、電源負荷最大の状態とは、ラインサーマルプリンタ１００において電源負荷が最大となる紙送り速度が最高速度である状態である。この状態において、選択された通電分割数において電源電圧が所定値以上であれば、問題なくラインサーマルプリンタ１００を駆動させることができる。
【００７３】
また、具体的に、通電分割回数算出部２０６は、電源電圧が所定値未満となったときの発熱素子の通電数で印加通電最大ドット数を割ることにより通電分割回数を求めることができる。本実施形態では、このような簡単な演算処理により通電分割回数を求めることができる。
【００７４】
また、通電分割回数算出部２０６は、起動処理時に受信する所定のコマンドまたはパネルスイッチによる所定の操作により起動される。したがって、ユーザは、このような所定のコマンドまたはパネルスイッチによる所定の操作を入力することにより、簡単に通電分割回数を設定してやることができる。
【図面の簡単な説明】
【００７５】
【図１】ラインサーマルプリンタの概略構成を示すブロック図である。
【図２】印刷データの処理の流れを示すブロック図である。
【図３】印刷ヘッドの構造を示すブロック図である。
【図４】分割データ送信部の処理を示す模式図である。
【図５】通電分割回数算出部による通電分割回数算出の流れをしめすフローチャートである。
【図６】通電分割回数算出部による通電分割回数算出の流れをしめすフローチャートである。
【符号の説明】
【００７６】
１００  ラインサーマルプリンタ
１０１  ＣＰＵ
１０２  ＲＯＭ
１０３  ＲＡＭ
１０４  印刷機構部
１０５  各種センサ
１０６  通信インタフェース
１０７  パネルスイッチ
２０２  受信バッファ
２０３  データ解析部
２０４  印刷バッファ
２０５  分割データ送信部
【図１】
2007030263.tif 000003
【図２】
2007030263.tif 000004
【図３】
2007030263.tif 000005
【図４】
2007030263.tif 000006
【図５】
2007030263.tif 000007
【図６】
2007030263.tif 000008