(57)【要約】【課題】  従来のプリンタでは、記録ヘッドの搭載されたキャリッジを停止させることなく印刷処理を行うことが可能なように、各回路ブロックの基本動作クロックは常に最高速度で動作させているため、前記プリンタの消費電力が下げられないという問題があった。【解決手段】  本発明は、プリンタの動作時に各回路ブロックの基本動作クロックの周波数を動的に可変可能とし、印刷処理に支障をきたさない（キャリッジを停止させることなく印刷処理を行える）範囲で最低の周波数に可変させ、プリンタの動作時の消費電力を低減させるものである。【選択図】  図１
2007105912.tif 000002
【特許請求の範囲】
【請求項１】
インクジェットプリンタにおいて、前記インクジェットプリンタ内部の各回路ブロックを動作させるための基本動作クロックの周波数を動的に可変可能で供給できるクロック制御回路と、記録ヘッドを駆動させる駆動データをバッファリングする駆動データバッファと、前記駆動データバッファに前記駆動データがバッファの全容量分書き込まれるのにかかる時間を計時する計時手段と、前記計時手段の計時結果と予め定められた標準時間とを比較し、その比較結果により前記クロック制御回路の出力する基本動作クロックの周波数を制御できる比較手段とを有し、前記予め定められた標準時間より前記計時手段が計時した時間が短ければ前記クロック制御回路の出力する基本動作クロックの周波数を下げ、反対に、前記予め定められた標準時間より前記計時手段が計時した時間が長ければ前記クロック制御回路の出力する基本動作クロックの周波数を上げるように制御することを特徴とするインクジェットプリンタのパワーマネージメント制御方法。
【請求項２】
前記請求項１のインクジェットプリンタであり、前記予め定められた標準時間として、前記インクジェットプリンタの印刷モードや印刷条件毎に標準時間を設定しておき、前記計時手段が計時した時間と比較する際に前記インクジェットプリンタの印刷モードを確認し、確認した印刷モードに対応する標準時間と比較するようにすることを特徴とするインクジェットプリンタのパワーマネージメント制御方法。
【請求項３】
前記請求項１および２のインクジェットプリンタであり、前記予め定められた標準時間と前記計時手段が計時した時間とを比較した結果の時間差の大きさに応じて、前記クロック制御回路の出力する基本動作クロック周波数の可変する量の大きさを調整できることを特徴とするインクジェットプリンタのパワーマネージメント制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はインクジェットプリンタの印刷動作時の電力を低減させるためのパワーマネージメント制御に関するものである。
【背景技術】
【０００２】
従来、インクジェットプリンタ（以降単にプリンタと呼ぶ）は図６に示すように構成されていた。
【０００３】
１はプリンタのシステム全体を制御するシステムコントローラ、２は前記プリンタのエンジン内部のセンサ等の情報を基にエンジンのモータやメカ機構、プリンタ・ヘッド等を制御するためのエンジンコントローラである。３は印刷用紙を順次搬送しながら、また、記録ヘッド（キャリッジ）も順次走査させて、さらに、順次インクを吐出させながら、印刷用紙の指定した場所に指定した色のインクを順次吐出できるようにするためのメカ機構を主としたエンジンである。４は前記プリンタの操作や各種設定を行ったり、前記プリンタの状態を示す表示を行うためのオペレーションパネル（操作パネル）である。
【０００４】
１０はシステムコントローラ全体を制御するためのＣＰＵ、１１は前記ＣＰＵ１０が実行するファームウェアや各種固定データ等が格納されているＲＯＭ、１２は前記ＲＯＭ１１中の前記ファームウェアのプログラムコードをロードして実行させるためや、前記ファームウェア実行時のワークエリアとして使用したり、外部コンピュータから受信した印刷ジョブのデータ及び前記印刷ジョブ中の印刷データの画像処理した後の印刷画像データ等を格納するためのＲＡＭ、１３は前記ＣＰＵやＲＡＭと連動して動作し、プリンタが必要とする画像処理を行なったり補助するための画像処理回路、１４は外部のコンピュータ等とデータのやり取りを行うための通信Ｉ／ＦであるホストＩ／Ｆ機能、１５はシステムコントローラ内の各回路ブロックを動作させるための基本動作クロックを前記各回路ブロックに供給するためのクロック制御回路、２０はエンジンコントローラ全体を制御するためのＣＰＵ、２１は前記ＣＰＵ２０が実行するファームウェアや各種固定データ等が格納されているＲＯＭ、２２は前記ＲＯＭ２２中の前記ファームウェアのプログラムコードをロードして実行させるためや、前記システムコントローラから転送されてきた印刷用ビットマップデータ等を格納するためのＲＡＭ、２３は記録ヘッド３０に配置された複数の吐出口に対応し、前記各吐出口の各々からインク吐出を行わせられるように駆動するための駆動データを格納するための駆動データバッファであり、通常ダブルバッファで構成される。２４及び２５は前記ダブルバッファ２３のバッファＡ及びバッファＢである。２６は前記駆動データバッファから順次供給される駆動データを電気信号に変換し前記電気信号で記録ヘッドに配置された前記駆動データに対応する各吐出口からインク吐出を行わせられるように駆動するための記録ヘッド制御回路、２７はエンジン３の各種センサからの情報に基づき、ＣＰＵ２０またはＲＡＭ２２から駆動データバッファへ印刷用ビットマップデータを駆動データに変換しながら順次転送するタイミング、駆動データバッファから記録ヘッド制御回路へ駆動データを順次転送するタイミングを指示し、さらに、駆動データバッファ（ダブルバッファ）中のどちらのバッファ（バッファＡ、バッファＢ）へ印刷用ビットマップデータを駆動データに変換しながら順次転送し、また、どちらのバッファから駆動データを読み出すかの制御等を行うための読出し制御回路、２８はエンジンコントローラ内の各回路ブロックを動作させるための基本動作クロックを前記各回路ブロックに供給するためのクロック制御回路である。３０は複数の吐出口を配置する記録ヘッド、３１は前記記録ヘッド３０が取り付けられたキャリッジを移動させるための動力源であるキャリッジ駆動モータ、３２はエンジンの各部に配置されている各種センサ、３３は印刷用紙を搬送させるための搬送ローラを駆動する搬送ローラ駆動モータである。
【０００５】
以上の構成において、プリンタの電源が投入されるとＣＰＵ１０がプリンタ全体の制御を司り、ＲＯ１１のファームウェアが実行され、オペレーションパネル４の電源ランプを点燈させ、プリンタのイニシャライズ処理が行われた後、ホストＩ／Ｆからの印刷要求を待つ状態になる。操作パネルには、印刷可能状態を示す表示がなされる。この状態で、外部のコンピュータ５から送信された印刷ジョブを、システムコントローラは１４のホストＩ／Ｆ機能で受信し、一旦ＲＡＭ１２（内に確保された受信バッファ）へ格納する。このとき、コンピュータとプリンタがネットワークで接続されていて、そのネットワークを経由して印刷ジョブがＴＣＰ／ＩＰ等で規定されるパケット形式で送信されてきた場合には、（ホストＩ／Ｆ機能１４またはＣＰＵ１０が）そのパケット形式のデータからパケットのヘッダー情報等を分離する等の作業も行われる。ＣＰＵ１０は前記ＲＡＭ１２へ一旦格納された印刷ジョブデータから印刷画像データ（印刷対象データ）と前記印刷画像データを印刷する場合の印刷処理方法（印刷モード、印刷部数、用紙サイズ／種類、用紙の向き、片面印刷／両面印刷の指定、印刷ＰＡＳＳ数、ドキュメント・フォーマット等）の情報とに分離する。その後、前記印刷画像データを前記印刷処理情報で指定される印刷処理を行なうために必要な画像処理を行う。この画像処理は、ＣＰＵ１０が画像処理回路１３を制御しながら行う。前記画像処理された印刷画像データは、記録ヘッドからインクを吐出して印刷用紙上に前記印刷画像データのイメージを再現するのに都合の良い印刷用ビットマップデータ（２値データ）に変換してエンジンコントーラ２（のＲＡＭ２２）へ転送される。ＣＰＵ２０は、前記転送されてきた印刷用ビットマップデータを記録ヘッドに配置される吐出口の数や配列状態、印刷ＰＡＳＳ数等を考慮し、記録ヘッド制御回路へ順次送出するための駆動データに変換する。前記駆動データは、ＲＡＭ２２から駆動データバッファ２３へ転送されるわけであるが、ここで、駆動データバッファ２３はいわゆるダブルバッファの構成をとっており、一方のバッファ（例えばバッファＡ２４）の内容が記録ヘッド駆動のために読み出されて記録ヘッド制御回路２６へ送信されている間に、他方（バッファＢ２５）へはＣＰＵ２０により（またはＲＡＭ２２から直接）次の駆動データが格納される。これによって、記録の速度を増すことができる。記録ヘッド制御回路２６に駆動データが送信されるとその駆動データのビット並びに対応する記録ヘッド上の吐出口から、前記駆動データのビット毎の値（１または０）に応じ、インクを吐出したり吐出しなかったりする。つまり、駆動データのビット並びと吐出口の並びが対応しており、駆動データの各ビットの値が１の場合にはそのビットに対応する吐出口からインクが吐出され、駆動データの各ビットの値が０の場合にはそのビットに対応する吐出口からはインクが吐出されないというように動作し、インクを吐出した場合に印刷用紙上にインクが付着することにより、印刷処理が行われる。上記のようにして印刷用紙上にインクを吐出させる際に、記録ヘッドが取り付けられたキャリッジや印刷用紙を移動させながら、印刷用紙上の所望の位置に吐出口が移動してきたときに、記録ヘッド制御回路に駆動データバッファ内の所望の駆動データを送信できるような各部動作のタイミング制御を行う必要がある。このタイミング制御を行っているのが読出し制御回路２７である。
【０００６】
印刷を開始するには、ＣＰＵ２０がエンジン内の搬送ローラ駆動モータ３３を駆動し、搬送ローラを回転させ印刷用紙を紙送り方向へ移動させる。ＣＰＵ２０は並行して、印刷用ビットマップデータを駆動データに変換しながら駆動データバッファＡに１走査分（キャリッジが１往復する間に印刷する部分の画像データのドット数分）の駆動データを送信する。そして、エンジンの各部に配置されている各種センサのうち、印刷用紙の先端が印刷開始位置まできたことを検出するためのセンサ（先端検地センサ）が反応した時（つまり、紙送り方向の印刷開始位置に記録ヘッドがある状態の時）に、読出し制御回路２７は、キャリッジ駆動モータを駆動し、記録ヘッドを主走査方向の印刷開始位置まで移動させる。読出し制御回路２７は、このタイミングで、駆動データバッファＡ内の最初の駆動データを記録ヘッド制御回路へ送信する。すると、記録ヘッド上の吐出口からインクが吐出され印刷用紙上の印刷開始位置にインクが吐出される。次に読み出し制御回路はキャリッジを１ドット分進め、そのタイミングで駆動データバッファＡ内の次の駆動データを記録ヘッド制御回路へ送信する。すると、先程、吐出されたインクの隣の場所に今回の駆動データに対応するインクが吐出される。同様にしてキャリッジを１ドット分進め、そのタイミングで駆動データバッファＡ内の次の駆動データを記録ヘッド制御回路へ送信するというような動作を繰り返し、主走査方向の印刷終了位置まで順次インクを吐出させることができる。
【０００７】
ＣＰＵは並行して、上記のように読出し制御回路が主走査方向の１走査分の記録ヘッド制御を行っている間に、駆動バッファＢへ次の１走査分の駆動データを転送する。上記、最初の１走査分の印刷動作が終了した時、最初の駆動データバッファＡ内のデータは空となっているので、読出し制御回路は読出し用駆動データバッファをＢに切換える。それと同時にＣＰＵも、書込み用駆動データバッファをＡに切替え、次の１走査分の駆動データの送信を開始する。さらに、ＣＰＵは搬送ローラ駆動モーターを駆動し、印刷用紙を１走査の印刷領域の幅に相当する距離分印刷用紙を紙送り方向へ移動させる。この状態で、読出し制御回路は１走査目と同様な動作を繰り返し、２走査目の印刷動作を行える。と同時にＣＰＵは３走査目の駆動データを駆動バッファへ送信可能となる。
【０００８】
以上のような動作を繰り返し、印刷用紙が紙送り方向の最後まで移動した時の１走査が終了した時点で、１ページ分の印刷が完了することになる。
【０００９】
以上のように動作して、プリンタは印刷動作を行うことができる。（特許文献１参照）
【特許文献１】特開平５‐３３８１９９号公報（図１、図２）
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、近年、プリンタの高性能化が求められ、例えば、印刷モードの種類が多くなったり、種類の違うホストI／F機能を複数装備したり、ページ記述言語（PDL）をサポートしたりするようになってきた。よって、システムコントローラやエンジンコントローラの回路も複雑さを増し、それらが消費する電力もさらに増大してきた。
【００１１】
例えば、従来の低機能プリンタ等の電子機器では、その機器を制御するファームウェアも単純なシングルタスクのプログラムであった。しかしながら、最近の高機能プリンタ等では、汎用的な機器組み込み用ＯＳ（例えば、ＶｘＷｏｒｋｓ等）を採用し、全ての機能がマルチタスクで実行されるようになってきた。つまり、各機能が並行して動作するため、エンジン部（エンジンコントローラ＋エンジン）で印刷処理が行われている間に、エンジンコントローラのＣＰＵ２０（またはＲＡＭ２２）はシステムコントローラのＣＰＵ１０（またはＲＡＭ１２）から次の印刷用ビットマップデータを順次受信していて、システムコントローラでは、次の印刷画像データの画像処理を行っていると同時に、コンピュータからさらに次の印刷データをホストＩ／Ｆ機能が受信していて、そのデータ受信処理と受信したパケットデータのヘッダー情報を分離する処理も同時に行っているというような状況が普通になってきた。
【００１２】
そこで、従来のプリンタでは、通常、上記例のようなプリンタとしての処理の負荷が一番重いときでも、記録ヘッドの搭載されたキャリッジを停止させることなく印刷処理を行うことが可能なように、各回路ブロックの基本動作クロックは常に最高速度で動作させていることが一般的であった。
【００１３】
そのために、プリンタの消費電力は、プリンタとしての処理の負荷が軽い状態で印刷処理を行っているときでも、各回路ブロックは常に最高速度で動作し続けているため、前記プリンタの消費電力が下げられないという問題があった。
【課題を解決するための手段】
【００１４】
通常、インクジェットプリンタでは、記録ヘッドの搭載されたキャリッジを停止させることなく印刷処理を行えることが要求される。それは、キャリッジが移動している状態で記録ヘッドの吐出口からインクを吐出させることを前提に吐出タイミング、モータ駆動タイミング等が設計されているため、一度キャリッジが停止してしまうと、その状態から、キャリッジが止まらなかった場合の状態に復帰させるのは困難であるためである。そのために、印刷画像に悪い影響が出てしまうことが多い。
【００１５】
そのために、前記、従来実施例のように、記録ヘッドの搭載されたキャリッジを停止させることなく印刷処理を行うことが可能なように、各回路ブロックの基本動作クロックは常に最高速度で動作させていることが一般的であった。
【００１６】
記録ヘッドの搭載されたキャリッジを停止させることなく印刷処理を行うには、キャリッジ駆動モータの制御によるキャリッジの移動や搬送ローラ駆動モータの制御による印刷用紙の移動等に協調して順次記録ヘッド制御回路へ駆動データが転送されることが必要となる。つまり、直前の１走査分の印刷処理、つまり、キャリッジが１往復するまでに、次の１走査の印刷のための駆動データがダブルバッファのもう一方の駆動データバッファに蓄積できれば良いことになる。
【００１７】
本発明は、プリンタの動作時に各回路ブロックの基本動作クロックの周波数を動的に可変可能とし、印刷処理に支障をきたさない（キャリッジを停止させることなく印刷処理を行える）範囲で最低の周波数に可変させ、プリンタの動作時の消費電力を低減させるものである。
【発明の効果】
【００１８】
以上説明したように、本発明のインクジェットプリンタでは、プリンタ内部の各回路ブロックを前記インクジェットプリンタが印刷処理に支障をきたさない（キャリッジを停止させることなく印刷処理を行える）範囲で最低の周波数の基本動作クロックで動作させることが可能となるため、前記インクジェットプリンタの印刷動作時の消費電力を大幅に低下させることができる。
【発明を実施するための最良の形態】
【００１９】
図１に本実施例のブロック図を示す。図１において、６、７以外は前記背景技術のところで述べた、従来の実施例（図６）と同じである。但し、１５、２８のクロック制御回路は、出力される基本動作クロックの周波数が動的に可変可能なように変更されている。また、６は駆動データバッファ２３（ダブルバッファ）内の１つのバッファＡまたはＢ（２４や２５）に駆動データが書き込まれ始めてから満杯（Ｂｕｆｆｅｒ−Ｆｕｌｌ）になるまでにかかる時間を計時するための計時手段、７は前記計時手段が計時した時間と予め登録されている標準時間とを比較し、その比較結果により、前記クロック制御回路を制御し、前記クロック制御回路が各回路ブロックへ出力する基本動作クロックの周波数を調整することが可能な比較手段である。
【００２０】
上記構成において、クロック制御回路１５はシステムコントローラ内の全てのクロック同期動作回路の基本動作クロックを供給する。その全ての供給する基本動作クロックの周波数を可変とすることが最も効果が大きいが、説明が複雑になるため本実施例では、ＣＰＵ１０とＲＡＭ１２の基本動作クロックの周波数のみ可変とすることにする。同様にクロック制御回路２８もＣＰＵ２０とＲＡＭ２２の基本動作クロックの周波数のみ可変とすることにする。クロック制御回路１５や２８は図２に示すような基本動作クロック周波数の組合わせで動的に変更でき、それらの組合わせにレベル番号をつけて管理されている。プリンタのパワーオン時には全てが最高の周波数で動作するように、初期化ルーチンでレベル１０となるように設定される。
【００２１】
その後、前記クロック制御回路１５や２８は比較手段７からのレベル変更要求がパラメータ付きで送信されてくる。そして、前記パラメータの値を現在のクロック制御回路のレベル番号の値から減算した値が、新しいレベル番号となるようにクロック制御回路が動作する。例えば、クロック制御回路が現在レベル１０で動作しているときに、前記比較手段からレベル変更要求のパラメータ２が送信されてくると、クロック制御回路のレベルが８（１０−２＝８）に設定される。さらに、比較手段からレベル変更要求のパラメータ１が送信されてくると、クロック制御回路のレベルが７に設定される。さらに、比較手段からレベル変更要求のパラメータ−２が送信されてくると、クロック制御回路のレベルが（７−（−２）＝９）９に設定される。このようにして、比較手段から送信されてくるレベル変更要求のパラメータ値によって、各回路ブロックへの基本動作クロックの周波数が変更できるようになる。
【００２２】
前記説明したクロック制御回路１５や２８は、クロック信号の生成はハードウェア電気回路で実現されるが、出力される基本動作クロックの周波数の変更制御はＣＰＵ１０や２０のＩ／Ｏポートの信号で前記レベルが設定されるように制御され、前記レベル（即ち、基本動作クロックの周波数）を変更することができるようになっている。つまり、ＣＰＵ１０または２０が実行するファームウェアで制御可能となっている。後述する、計時手段や比較手段も同様にＣＰＵ１０または２０が実行するファームウェアで実現可能となっているため、本実施例では従来実施例から追加された機能の殆どがファームウエアで実現され、実現性が高く、プリンタのコストアップも最小限になっている。
【００２３】
本実施例のプリンタの記録ヘッドからインクが吐出される単位時間あたりの回数（つまり、吐出周波数）は一定である。一方、プリンタの印刷モード（高速モード、標準モード、きれいモード等）によって、印刷用紙へのインク吐出の密度が異なる。そのため、キャリッジの移動速度や印刷のための走査の回数（印刷ＰＡＳＳ数）が異なる。逆に言うと、印刷モードが決まると、印刷ＰＡＳＳ数や印刷用紙の移動速度等も決まる。つまり、記録ヘッドが搭載されているキャリッジの移動速度も決まる。すると、キャリッジが１往復する時間も計算できる。このキャリッジが１往復する時間とは、前記記録ヘッド制御回路が駆動データ読出し先となる前記駆動データバッファ内の２つのバッファＡとＢ（２４、２５）を切替える周期でもある。この、各印刷モード時のキャリッジの１往復する時間を標準時間として予め比較手段に登録しておく。比較手段７はハードウェアでも実現できるが、本実施例では、ＣＰＵ１０が実行するファームウェア（ＲＯＭ１１に内臓）で実現する。よって、前記標準時間の登録も、ＲＯＭ１１内に、データテーブルとして図３のような表を登録することで実現する。この表（登録されたデータテーブル）の意味するところは、標準モードの印刷の場合のキャリッジの１往復する時間が４５０（単位は問わない）とすると、きれいモードの印刷時には（細かい密度の吐出を行うために）キャリッジの移動は３０％程度遅くなり、高速モードの印刷では（粗い密度の吐出を行うために）キャリッジの移動は３０％程度速くなることを示している。
【００２４】
計時手段６も個別ハードウェアでも実現できるが、本実施例では、ＣＰＵ１０が内蔵するタイマー機能（不図示）とファームウェア（ＲＯＭ１１に内臓）で実現する。キャリッジ駆動は、読出し制御回路２７がキャリッジ駆動モータ（パルスモータ）にパルスを送信して制御しているため、キャリッジが１往復した時点を認識できる。そこで、読出し制御回路２７はキャリッジ駆動モータを制御しながら、キャリッジが１往復した時点で、駆動データバッファ２３に内部の駆動データバッファＡとＢ（２４，２５）の切替えを指示するための切換え信号が出力される。この信号はそのまま計時手段にも送信される。例えば、ＣＰＵ１０の内臓タイマーを起動するための信号ラインへ接続されている。または、ＣＰＵ１０のインターラプト入力端子へ接続され、そのインタラプト入力信号に対応するインタラプト処理ルーチン内で内臓タイマーを起動させる。よって、計時手段が計時を開始する。この状態で、ＣＰＵ２０から順次駆動データが駆動データバッファＡまたはＢ（２４，２５）へ送信され、前記駆動データバッファＡまたはＢが満杯（Ｆｕｌｌ）になったときに、バッファフル（Ｂｕｆｆｅｒ−Ｆｕｌｌ）信号が出力される。この信号はＣＰＵ２０へ出力され、ＣＰＵ２０はその信号を受けて、駆動データの送信を一時停止する。このバッファフル信号は計時手段にも出力され、計時を完了させる。本実施例では計時手段をＣＰＵ１０とファームウェアで実現しているため、前記バッファフル信号はＣＰＵ１０にも出力される。例えば、ＣＰＵ１０の内臓タイマーを停止するための信号ラインへ接続されている。または、ＣＰＵ１０のインターラプト入力端子へ接続され、そのインタラプト入力信号に対応するインタラプト処理ルーチン内で内臓タイマーを停止させる。以上のようにして、計時手段６は、プリンタが現在の基本動作クロック周波数（現在のクロック制御回路１５と２８の設定）で動作している場合に駆動データを作成し、駆動データバッファに前記駆動データを送信して、駆動データバッファＡまたはＢを満杯にするのにかかった時間を計時することができる。
【００２５】
以上のように、計時手段、比較手段、クロック制御手段が構成されている状態で、本実施例のプリンタのパワーマネージメント制御機能は図５のフローチャートのように動作する。前述したように、本実施例では、計時手段、比較手段、クロック制御手段の各機能はＣＰＵ１０やＣＰＵ２０のタイマー機能やファームウェア実行により実現される。つまり、ＣＰＵ１０やＣＰＵ２０のファームウェアで実現されている。このファームウェアの制御動作が図５のように動作することになる。
【００２６】
前述したように、本プリンタのパワーオン時の初期化動作時にクロック制御回路１５，２８は全ての基本動作クロック出力を最高速度で出力するように設定される。つまり、レベル１０（図２）に設定されている。また、印刷モードも、初期化時にデフォルト設定である標準モードに設定されている。この初期化直後の状態で、コンピュータ（図１の５）から、きれいモードで印刷する印刷ジョブが転送されてくると、システムコントローラ１は１４のホストI/F機能で受信し、一旦ＲＡＭ１２（内に確保された受信バッファ）へ格納する。その後、ＣＰＵ１０は前記ＲＡＭ１２へ一旦格納された印刷ジョブデータから印刷画像データ（印刷対象データ）と前記印刷画像データを印刷する場合の印刷処理方法の情報とに分離し、前記印刷画像データを前記印刷処理情報で指定される印刷処理を行なうために必要な画像処理を行う。さらに、ＣＰＵ１０は画像処理された後の印刷画像データを印刷用ビットマップデータに変換して、エンジンコントーラのＲＡＭ２２へ転送する。この時点で、図５に示すパワーマネージメント制御ルーチンが実行される。（図５の１）
印刷の開始時にはまず、駆動データバッファＡを選択するように読み出し制御回路が駆動データバッファへ切換え信号を出力する。前述したように、この切替え信号は計時手段６にも送信され、計時手段６が計時を開始する。（図5の２）この後は、ＣＰＵ２０が前記印刷用ビットマップデータを駆動データに変換しながら順次駆動データバッファＡへ送信する。そして、駆動データバッファＡのバッファが満杯（Ｂｕｆｆｅｒ  Ｆｕｌｌ）になるまで待つ。（図５の３）そして、前述したように駆動データバッファＡのバッファが満杯になると、バッファフル信号がＣＰＵ２０と計時手段に出力され、ＣＰＵ２０はその信号を受けて、駆動データの送信を一時停止すると同時に、計時手段の計時を完了させる。（図5の４）この時の計時手段の計時結果は、現在本実施例のプリンタが初期化直後でクロック制御回路１５と２８が出力する全ての基本動作クロックが最高周波数で動作していることことから、高速モード印刷の標準時間よりも短い時間で処理できることが予想できる。例えば、前記計時結果を２８０とする。
【００２７】
次に、前記計時手段が計時した時間と比較手段７に登録されているきれいモードの標準時間（今回の印刷モードはきれいモードであるから）とを比較し、時間差を求める。（図５の５：今回の時間差は６００−２８０＝３２０：つまり、３２０の時間分の余裕があることを示している。）そして、前記比較手段７は前記比較手段７内に予め登録されている、図４のような時間差−レベル補正値対応表のテーブルを参照し、その時間差の大きさから適正なレベル補正値を決定する。（今回の場合、時間差３２０なので、レベル補正値は＋４となる。）前記、比較手段７はその求められたレベル補正値をパラメータとして付加したレベル変更要求をクロック制御回路１５や２８へ送信する。（図５の６）最後に、クロック制御回路１５や２８は、受信したパラメータ値（レベル補正値）を現在設定されているレベル番号値から減算し、その結果を新レベル番号として再設定する。（図５の７：今回の場合、１０（現在のレベル番号）−４（レベル補正値）＝６）よって、この直後から図２のレベル番号６の条件で基本動作クロックが出力される。つまり、現在の印刷処理を行うのに必要最小限の基本動作クロック周波数でプリンタが動作するため、低消費電力化が効率的に行われる。
【００２８】
以上のように動作した後、（図５のフローチャートも２に最初に戻り、）読出し制御回路２７は書込み用駆動データバッファを駆動データバッファＡ２４から駆動データバッファＢ２５へ切替え（切替え信号出力）、駆動データバッファＡ２４から駆動データが記録ヘッド制御回路へ送られ記録ヘッドからインクの吐出が行われ始めると同時に、駆動データバッファＢ２５に次の１走査分の駆動データを転送し、さらに、計時手段の計時も開始される。（図５の２）後は、前述の動作と同様に動作し、そのような動作が今回の印刷が完了するまで行われる。例えば、計時手段７が２回目に計時した時間が５９０とする。（図５の４：これは、今回の駆動データを作成する処理が、図２のレベル番号６の示す基本動作クロックで動作するため、前回より処理時間が長くなっているっことを示している。）２回目の時間差は１０となる。（図５の５）よって、図４の時間差−レベル補正値対応表で時間差に応じたレベル値は０となる。これは、現在の印刷処理を行うのに必要最小限の基本動作クロック周波数でプリンタが動作するうえで、適正な基本動作クロックの周波数の範囲で動作していることを示している。よって、比較手段７からクロック制御回路１５や２８へ送られるレベル変更要求のパラメータが０（今回のレベル補正値）となり、その結果クロック制御回路に設定されるレベル値も現在の状態が維持され、基本動作クロックの周波数は変化しない。このように、現在の印刷処理を行うのに必要最小限の基本動作クロック周波数でプリンタが動作するうえで、適正な基本動作クロックの周波数で動作している間は、基本動作クロックの周波数もその時点の周波数が維持される。しかしながら、この基本動作クロックの周波数が維持される状態において、他のホストＩ／Ｆを経由して他のコンピュータから印刷ジョブが送られてきたので、そのデータを取り敢えずＨＤＤ（ハードディスクドライブ装置）へ格納するというような処理のタスクが動作したような場合には、システムコントローラのＣＰＵの負荷が重くなり、その結果、図５の６で求められるレベル補正値がマイナス値（負数）となる。これは、本プリンタがその時の基本動作クロックで動作している状態では、キャリッジを停止させることなく吐出動作を連続実行することが不可能なことを示している。
【００２９】
よって、このような場合には、図５の７で前記負数の補正値が負数のパラメータとしてクロック制御回路へ送信される、現時点のレベル値から減算される（つまり、パラメータ値の絶対値が加算される）ので、レベル番号は大きくなる。つまり、クロック制御手段の出力基本動作クロックの周波数が高くなる方向へ補正されることになる。よって、本プリンタは、再び、キャリッジを停止させることなく吐出動作を連続実行することが可能になり、しかも、常に、現在の印刷処理を行うのに必要最小限の基本動作クロック周波数でプリンタが動作するうえで、適正な基本動作クロックの周波数で動作することが可能となる。
【図面の簡単な説明】
【００３０】
【図１】本発明のプリンタのシステム構成ブロック図
【図２】本発明実施例の周波数組合わせ−レベル対応表
【図３】本発明実施例の印刷モード毎の標準時間
【図４】本発明実施例の時間差−レベル補正値対応表
【図５】本発明のプリンタのパワーマネージメント制御のフローチャート
【図６】従来例のプリンタのシステム構成ブロック図
【符号の説明】
【００３１】
１  システムコントローラ
２  エンジンコントローラ
３  エンジン
４  オペレーションパネル（操作パネル）
５  コンピュータ
６  計時手段
７  比較手段
１０  システムコントローラのCPU
１１  システムコントローラのROM
１２  システムコントローラのRAM
１３  システムコントローラの画像処理回路
１４  システムコントローラのホストI／F機能
１５  システムコントローラのクロック制御回路
２０  エンジンコントローラのCPU
２１  エンジンコントローラのROM
２２  エンジンコントローラのRAM
２３  駆動データバッファ
２４  駆動データバッファＡ
２５  駆動データバッファＢ
２６  記録ヘッド制御回路
２７  読出し制御回路
２８  エンジンコントローラのクロック制御回路
３０  記録ヘッド
３１  キャリッジ駆動モーター
３２  各種センサ
３３  搬送ローラ駆動モーター
【図１】
2007105912.tif 000003
【図２】
2007105912.tif 000004
【図３】
2007105912.tif 000005
【図４】
2007105912.tif 000006
【図５】
2007105912.tif 000007
【図６】
2007105912.tif 000008