(57)【特許請求の範囲】
【請求項１】
インク滴を吐出するノズルと該インクを収容しておくインク収容器とを備え、前記ノズルと前記インク収容器とをつなぐインク通路の容積を変化させて該インク滴を吐出し、印刷媒体上にインクドットを形成することによって画像を印刷する印刷装置であって、
該画像の印刷に際して、前記インクドットが形成されるか否かを判断するドット形成判断手段と、
前記ノズルが前記印刷媒体との相対位置を変更しつつ形成しようとするインクドットの配列の中から、前記吐出されるインク滴の大きさに影響を与える配列を、前記ドット形成判断手段の判断結果に基づいて検出するドット配列検出手段と、
該ドット配列の検出結果を前記インク通路容積の変化速度に反映させて、吐出されるインク滴の大きさを補償するインク滴補償手段と、
該補償された大きさのインク滴を吐出してインクドットを形成するドット形成手段と
を備えた印刷装置。
【請求項２】
請求項１記載の印刷装置であって、
前記ドット配列検出手段は、前記ドット配列として、前記インク滴を吐出するノズルが、直前にインク滴を吐出してから前記インク滴を吐出するまでの間隔を検出する手段である印刷装置。
【請求項３】
請求項１記載の印刷装置であって、
前記ドット配列検出手段は、前記ドット配列として、前記インク滴を吐出する頻度を表す指標たるインク滴吐出頻度を検出する手段である印刷装置。
【請求項４】
請求項１記載の印刷装置であって、
複数設けられた前記ノズルの各々からインク滴を吐出することによって、一度に複数のインクドットを形成可能なインク吐出ヘッドを備え、
前記ドット配列検出手段は、前記ドット配列として、一度に形成可能な前記インクドット数と一度に形成されるインクドット数との割合を表す指標たる駆動デューティを検出する手段である印刷装置。
【請求項５】
請求項１記載の印刷装置であって、
前記ノズルは、大きさの異なるインク滴を吐出することにより、大きさの異なる２種類以上のインクドットを形成可能なノズルであり、
前記ドット形成判断手段と前記ドット配列検出手段は、前記各々の処理を、前記大きさの異なるインクドット毎に行う手段である印刷装置。
【請求項６】
請求項１記載の印刷装置であって、
前記インク収容器は各色のインクを各色毎に収容するインク収容器であり、
前記ノズルは、該収容された各色インク毎にインク滴を吐出するノズルであり、
前記ドット形成判断手段と前記ドット配列検出手段は、前記各々の処理を前記各色インク毎に行う手段である印刷装置。
【請求項７】
請求項１記載の印刷装置であって、
印加される電圧信号に応じて、前記インク通路の容積を変化させる電歪素子を備え、
前記インク滴補償手段は、前記ドット配列の検出結果を、前記電圧信号に反映させる手段である印刷装置。
【請求項８】
請求項７記載の印刷装置であって、
前記インク滴補償手段は、予め設定された複数の電圧信号の中から、前記ドット配列の検出結果に基づいて所定の電圧信号を選択する手段である印刷装置。
【請求項９】
インク滴を吐出するノズルと該インクを収容しておくインク収容器とを備え、前記ノズルと前記インク収容器とをつなぐインク通路の容積を変化させて該インク滴を吐出し、印刷媒体上にインクドットを形成することによって画像を印刷する印刷方法であって、
該画像の印刷に際して、前記インクドットが形成されるか否かを判断し、
前記ノズルが前記印刷媒体との相対位置を変更しつつ形成しようとするインクドットの配列の中から、前記吐出されるインク滴の大きさに影響を与える前記配列を、前記インクドットの形成有無の判断結果に基づいて検出し、
該ドット配列の検出結果を前記インク通路容積の変化速度に反映させることによって、吐出されるインク滴の大きさを補償し、
該補償された大きさのインク滴を吐出して画像を印刷する印刷方法。
【請求項１０】
インク滴を吐出するノズルと該インクを収容しておくインク収容器とを備え、前記ノズルと前記インク収容器とをつなぐインク通路の容積を変化させて該インク滴を吐出し、印刷媒体上にインクドットを形成することによって画像を印刷する印刷装置で用いられるプログラムをコンピュータで読み取り可能に記録した記録媒体であって、
該画像の印刷に際して、前記インクドットが形成されるか否かを判断する機能と、
前記ノズルが前記印刷媒体との相対位置を変更しつつ形成しようとするインクドットの配列の中から、前記吐出されるインク滴の大きさに影響を与える前記配列を、前記インクドットの形成有無の判断結果に基づいて検出する機能と、
該ドット配列の検出結果を前記インク通路容積の変化速度に反映させることによって、吐出されるインク滴の大きさを補償する機能と、
該補償された大きさのインク滴を吐出して前記インクドットを形成する機能と
を実現するプログラムを記録した記録媒体。
【請求項１１】
インク滴を吐出するノズルと該インクを収容しておくインク収容器とを備え、前記ノズルと前記インク収容器とをつなぐインク通路の容積を変化させて該インク滴を吐出し、印刷媒体上にインクドットを形成することによって画像を印刷する印刷装置であって、
該画像の印刷に際して、インクドットが形成されるか否かを仮に判断する第１のドット形成判断手段と、
前記ノズルが前記印刷媒体との相対位置を変更しつつ形成しようとするインクドットの配列の中から、前記吐出されるインク滴の大きさに影響を与える前記配列を、前記第１のドット形成判断手段の判断結果に基づいて検出するドット配列検出手段と、
該ドット配列の検出結果に基づいて、前記インク滴の大きさへの影響が補償されるように、最終的にインクドットを形成すべきか否かを判断する第２のドット形成判断手段と、
該第２のドット形成判断手段の判断結果に基づいて、前記インクドットを形成するドット形成手段と
を備えた印刷装置。
【請求項１２】
請求項１１記載の印刷装置であって、
前記第２のドット形成判断手段は、前記インク滴の大きさが小さくなる場合に形成されて該縮小を補償するインクドットたる補償ドットの形成有無を、前記ドット配列の検出結果に基づいて判断する手段であり、
前記ドット形成手段は、前記最終的なインクドットに代えて、前記仮のインクドットと前記補償ドットとを形成する手段である印刷装置。
【請求項１３】
インク滴を吐出するノズルと該インクを収容しておくインク収容器とを備え、前記ノズルと前記インク収容器とをつなぐインク通路の容積を変化させて該インク滴を吐出し、印刷媒体上にインクドットを形成することによって画像を印刷する印刷方法であって、
該画像の印刷に際して、インクドットが形成されるか否かを仮に判断し、
前記ノズルが前記印刷媒体との相対位置を変更しつつ形成しようとするインクドットの配列の中から、前記吐出されるインク滴の大きさに影響を与えるドット配列を、前記仮に判断したインクドットの形成有無に基づいて検出し、
該ドット配列の検出結果に基づいて、前記インク滴の大きさへの影響が補償されるように、最終的にインクドットを形成すべきか否かを判断し、
該最終的な判断結果に基づきインクドットを形成して画像を印刷する印刷方法。
【請求項１４】
インク滴を吐出するノズルと該インクを収容しておくインク収容器とを備え、前記ノズルと前記インク収容器とをつなぐインク通路の容積を変化させて該インク滴を吐出し、印刷媒体上にインクドットを形成することによって画像を印刷する印刷装置で用いられるプログラムをコンピュータで読み取り可能に記録した記録媒体であって、
該画像の印刷に際して、インクドットが形成されるか否かを仮に判断する機能と、
前記ノズルが前記印刷媒体との相対位置を変更しつつ形成しようとするインクドットの配列の中から、前記吐出されるインク滴の大きさに影響を与えるドット配列を、前記仮に判断したインクドットの形成有無に基づいて検出する機能と、
該ドット配列の検出結果に基づいて、前記インク滴の大きさへの影響が補償されるように、最終的にインクドットを形成すべきか否かを判断する機能と、
該最終的な判断結果に基づいて、インクドットの形成を制御する機能と
を実現するプログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、インク滴を吐出して印刷媒体上に画像を印刷する技術に関し、詳しくは印刷画像の画質を向上させる技術に関する。
【０００２】
【従来の技術】
微細なインク滴を吐出することにより、印刷媒体上にインクドットを形成して画像を印刷する印刷装置（以下、インクジェット式印刷装置）は、コンピュータ等で作成した画像の出力装置として広く使用されている。インクジェット式印刷装置の中には、カラーインクを装着し各色のインク滴を吐出することによって、カラー画像の印刷が可能なものも開発されている。
【０００３】
更に、近年では、単位面積当たりに形成されるインクドットの数を増やして、より高解像度の印刷を可能する技術や、インクドットの大きさを可変とする技術、通常のインクに加えて染料濃度を抑えた淡インクをも使用する技術等が開発され、その結果、インクジェット式印刷装置の画像品質は大きく向上した。こうした印刷画質の向上に伴って、インクジェット式印刷装置は、単にコンピュータの出力装置として使用されるだけでなく、デジタルカメラ等で撮影した自然画像の出力装置としても広く使用されるようになってきている。
【０００４】
【発明が解決しようとする課題】
しかしながら、インクジェット式印刷装置には、インク滴の吐出量の変動により、印刷される色が微妙にずれることがあるという問題があった。印刷色のずれる程度は僅かであり、かつズレが起きる領域も限定的なものではあるが、インクジェット式印刷装置を用いて更に高品質の画像を印刷するためには、かかる問題の改良が必要であった。
【０００５】
この発明は、従来技術において上述の課題が発生するメカニズムを明らかにしてなされたものであり、インクジェット式印刷装置の印刷画質を向上させる技術を提供することを目的とする。
【０００６】
【課題を解決するための手段およびその作用・効果】
上述の課題の少なくとも一部を解決するため、本発明の第１の印刷装置は、次の構成を採用した。すなわち、
インク滴を吐出するノズルと該インクを収容しておくインク収容器とを備え、前記ノズルと前記インク収容器とをつなぐインク通路の容積を変化させて該インク滴を吐出し、印刷媒体上にインクドットを形成することによって画像を印刷する印刷装置であって、
該画像の印刷に際して、前記インクドットが形成されるか否かを判断するドット形成判断手段と、
前記ノズルが前記印刷媒体との相対位置を変更しつつ形成しようとするインクドットの配列の中から、前記吐出されるインク滴の大きさに影響を与える配列を、前記ドット形成判断手段の判断結果に基づいて検出するドット配列検出手段と、
該ドット配列の検出結果を前記インク通路容積の変化速度に反映させて、吐出されるインク滴の大きさを補償するインク滴補償手段と、
該補償された大きさのインク滴を吐出してインクドットを形成するドット形成手段と
を備えることを要旨とする。
【０００７】
また、上記第１の印刷装置に対応する本発明の第１の印刷方法は、
インク滴を吐出するノズルと該インクを収容しておくインク収容器とを備え、前記ノズルと前記インク収容器とをつなぐインク通路の容積を変化させて該インク滴を吐出し、印刷媒体上にインクドットを形成することによって画像を印刷する印刷方法であって、
該画像の印刷に際して、前記インクドットが形成されるか否かを判断し、
前記ノズルが前記印刷媒体との相対位置を変更しつつ形成しようとするインクドットの配列の中から、前記吐出されるインク滴の大きさに影響を与える前記配列を、前記インクドットの形成有無の判断結果に基づいて検出し、
該ドット配列の検出結果を前記インク通路容積の変化速度に反映させることによって、吐出されるインク滴の大きさを補償し、
該補償された大きさのインク滴を吐出して画像を印刷することを要旨とする。
【０００８】
本願の発明者は、インク滴を吐出する際に、印刷媒体上に形成されるインクドットの配列によっては、吐出するインク滴の大きさが変わる場合があることを見い出して、本願発明を完成させた。そこで、本願の印刷装置および印刷方法の作用・効果について説明する前に、本願発明者が見い出した現象、すなわち、インクドットの配列によってはインク滴の大きさが変動し得る現象について説明する。
【０００９】
図３１（ａ）は、印刷媒体上にインクドットを形成して画像を印刷する印刷装置において、インク滴を吐出する機構を概念的に示す説明図である。図示するように、インク滴吐出機構の代表的な構成は、インク収容器から供給されたインクを一時的に貯めておくインク室Ａと、インク滴を吐出するノズルＢと、吐出するインクを収容しておくインク収容器Ｆと、インク室ＡとノズルＢとをつなぐインク吐出通路Ｃと、インク収容器Ｆ内のインクをインク室Ａに供給するインク供給通路Ｄと、インク室Ａの側壁を変形させてインク室容積を変動させるためのアクチュエータＥとから構成されている。尚、図３１（ａ）では、インク吐出通路Ｃおよびインク供給通路Ｄの通路抵抗をそれぞれオリフィスｃ，ｄで模式的に表現している。
【００１０】
図３１（ａ）に示すようなインク吐出機構において、アクチュエータＥを駆動してインク室容積を減少させると、容積減少に伴ってノズルＢからインク滴が吐出される。インク滴を吐出した後は、吐出したインク量相当のインクを供給してインク室Ａをインクで満たし、次のインク吐出に備えなければならない。しかしインクには粘性があるので、通路抵抗ｄに打ち勝って、インク供給通路Ｄを流すことのできる時間当たりのインク量には自ずから限界があり、インク滴の吐出頻度が高くなると必要な量のインクをインク室に供給することができなくなる場合がある。このような状態でインク滴を吐出しようとしても、インク室Ａがインクで満たされていないために、小さなインク滴しか吐出することができない。
【００１１】
また、インク吐出ヘッドには複数のインク吐出機構が設けられているのが一般的であるが、主に製造上の理由等から、各インク供給通路の一部を共通化して形成される場合が多い。図３１（ｂ）は、このような一例を概念的に示したものであり、インク室Ａ１・Ａ２・Ａ３のそれぞれにインクを供給するインク供給通路Ｄ１・Ｄ２・Ｄ３は、その一部がインク供給通路Ｄ４によって共通化されている。尚、図３１（ｂ）ではインク供給通路の共通部分（インク供給通路Ｄ４）の通路抵抗をオリフィスｄ４で表している。
【００１２】
このような構成では、個々のノズルＢ１・Ｂ２・Ｂ３のインク吐出頻度がさほど高くない場合でも、３つのノズルを合わせたインク吐出頻度が高ければ、インク供給通路の共通部分を流れるインク量は多くなるのでインクの供給が間に合わなくなる場合がある。それぞれのインク室Ａ１・Ａ２・Ａ３のインクが不足気味のままインク滴を吐出しても、小さなインク滴しか吐出することができない。つまり、複数のノズルを備えたインク吐出ヘッドでは、一度に吐出するインク滴の数が多くなるとインク滴の大きさが小さくなってしまう場合がある。
【００１３】
以上では、インク室へのインクの供給が間に合わなくなるために、吐出されるインク滴の大きさが小さくなる場合を説明したが、印刷媒体上に形成されるインクドットの配列によってインク滴の大きさが変動する原因は、これだけではない。例えば、インク室Ａの側壁はインク滴を吐出する度にアクチュエータＥの外力で変形し、アクチュエータＥが外力を解除すると元の状態に復元する。すなわち、インク滴の吐出に伴ってインク室側壁は振動していることになり、インク滴の吐出頻度が高くなるとこの振動が収まらないうちに次のインク滴を吐出しなければならなくなる。インク滴の吐出タイミングが、側壁の残存する振動の位相と一致すればインク室Ａが大きく変形することになってインク滴は大きくなり、逆位相となればインク室Ａの変形量は少なくなってインク滴は小さくなる。
【００１４】
また、インク滴の吐出に伴って、ノズルＢのインク界面（メニスカス）には振動が発生する。すなわち、インク室Ａが変形するにつれて、インク室Ａから押し出されたインクがノズルＢの端面から盛り上がり、ついにはインク滴となってノズルＢから吐出される（図３１（ｃ）参照）。インク滴がノズルＢから離れた瞬間、ノズル側に残ったインクは表面張力でインク滴吐出方向とは逆向きに引き戻され、ノズルＢのインク界面はその後もしばらく振動する。このインク界面の振動も、インクの粘性によってやがては消滅するが、インク滴の吐出頻度が高くなるとこの振動が収まらないうちに次のインク滴を吐出しなければならなくなる。インク滴の吐出タイミングがインク界面の振動と同位相であれば大きなインク滴が吐出され、逆位相であれば小さなインク滴が吐出されることになる。
【００１５】
図３１（ｂ）に示したように複数のインク室が隣接して形成されている場合には、あるインク室でインク滴を吐出した影響が他のインク室に現れて、インク滴の大きさが変動する現象も発生する。例えば、各インク室Ａ１・Ａ２・Ａ３およびインク収容器Ｆはインク通路Ｄ１・Ｄ２・Ｄ３・Ｄ４で連結されていて、相互の圧力波が行き来することができるので、全体が１つの音響回路を構成していると考えることができる。この音響回路の共鳴周波数と各インク室のアクチュエータの駆動周波数とが一致あるいは整数倍になると一種の共振現象が起こり、あるインク室でインク滴を吐出した影響が他のインク室の圧力変動となって現れることがある。このような場合にも、圧力変動の位相とインク滴を吐出するタイミングとの関係によって、インク滴の大きさが変動しうる。
【００１６】
また、複数のインク室が隣接して形成されていることから、あるインク室の変形に伴って隣のインク室も僅かではあるが変形してしまう場合も起こり得る。ヘッドに搭載されるノズル数の増加に伴い、各インク室を隔てる隔壁は薄くなる傾向にあり、このような現象が起こり易くなる傾向にある。このように、あるインク室での変形が隣接するインク室を変形させると、次のような理由により、所定の大きさのインク滴を吐出できない場合が生じうる。すなわち、隣接するインク室の容積を同時に減少させようとしても、各インク室は隣接するインク室が変形する影響で既にいくらか変形しているため、インク室容積の減少量が所定量とは異なる場合が生じうる。容積減少が所定量とならなければ、所定の大きさのインク滴を吐出することはできない。
【００１７】
更には、各インク室のアクチュエータを電力を用いて駆動しており、かつ、各アクチュエータが同一の電源に接続されて全体として１つの電気回路を構成しているような場合に、あるアクチュエータで電力を消費した影響が他のアクチュエータの印加電圧に現れる場合がある。また、回路全体で電気的な共振現象が発生する場合もあり得る。これらのような場合、各アクチュエータに印加される電圧が変動するので、各アクチュエータはインク室に所定の外力を加えることができず、各ノズルから吐出されるインク滴の大きさが変動することがある。
【００１８】
ノズルは印刷媒体に対して相対的に移動しながらインク滴を吐出しているので、個々のノズルがインク滴を吐出する頻度や、隣り合うノズルがインク滴を吐出するタイミング、あるいは複数のノズルがインク滴を吐出するタイミング等は、そのまま、印刷媒体上に形成されるインクドットの配列に反映される。従って、インクドットの配列が異なれば、前述した種々の理由により、ノズルから吐出されるインク滴の大きさが変わってくる場合があるのである。
【００１９】
本願発明の印刷装置および印刷方法は、ノズルが形成するインクドットの配列と該ノズルが吐出するインク滴の大きさとの関係に着目して完成されたものであり、以下に述べるように、インクドットの配列に応じてインク吐出量を補正することによって、印刷画像の画質を向上させることが可能である。
【００２０】
本願発明の印刷装置および印刷方法においては、画像の印刷に際して、先ずインクドットが形成されるか否かを判断する。次いで、ノズルが印刷媒体との相対位置を変更しながら形成しようとするインクドットの配列の中から、インク滴の大きさに影響を与えるインクドットの配列を、前記ドット形成有無の判断結果に基づいて検出する。このインクドット配列の前記インク通路容積の変化速度に反映させて、吐出するインク滴の大きさを補償し、補償された大きさのインク滴を吐出してインクドットを形成する。こうすれば、インクドットの配列によって吐出されるインク滴の大きさが変動することを回避することができ、インクドットが常に適切な大きさに保たれるので、印刷画像の画質を向上させることが可能となる。
【００２１】
本願発明の印刷装置においては、インク滴の大きさに影響を与えるドット配列として、あるインク滴を吐出するノズルについて、そのノズルで直前にインク滴を吐出してから、そのインク滴を吐出するまでの間隔を検出することも好ましい。同一ノズルでインク滴を吐出する間隔が短くなると、インク滴の大きさが変動する場合があるので、前記間隔を検出すれば、吐出するインク滴の大きさを適切に修正することが可能となり、ひいては印刷画質の向上を図ることができる。
【００２２】
ドット配列として、インク滴吐出頻度を検出することも好適である。ここにインク滴吐出頻度とは、あるノズルがインク滴を吐出する頻度を表す指標であって、具体的には次のように定義される。あるノズルが記録媒体上を移動しながらインク滴を吐出してドットを形成していく様子を考えて、記録媒体上に形成されたあるドットに着目する。その着目ドットの直前にもドットが形成されている場合、すなわち、ドットが連続して形成される場合、その着目ドットのインク滴吐出頻度は１００％であると定義される。また、着目ドットの直前にはドットが形成されていないが、１ドットの間をおいた隣のドットにはドットが形成されている場合は、その着目ドットのインク滴吐出頻度は５０％であると定義される。同様に、２ドットの間隔をおいてドットが形成されている場合はインク滴吐出頻度３３％、３ドットの間隔が存在している場合は２５％と定義される。
【００２３】
ノズルから吐出されるインク滴の大きさは、インク滴吐出頻度の値によって変動しうるので、前記ドット配列としてインク滴吐出頻度を検出し、この値に基づいてインク滴の大きさを修正すれば、インクドットの大きさを常に適切な大きさに保つことができるので、印刷画質を向上することができる。尚、以下の説明では、インク滴吐出頻度を相対駆動周波数とも称する場合があり、本明細書中では、これらは同義の言葉として使用されている。
【００２４】
また、インク吐出ヘッドの複数のノズルが設けられていて、各ノズルからインク滴を吐出することにより、一度に複数のインクドットを形成可能な印刷装置においては、前記ドット配列として、一度に形成可能なインクドットの個数と一度に形成されるインクドットの個数との割合（駆動デューティ）を検出することも好ましい。一度に形成するインクドットの個数が増えると、吐出される個々のインク滴の大きさが小さくなることがあるので、検出した駆動デューティに基づいてインク滴の大きさを修正すれば、インクドットの大きさを常に適切な大きさに保ち、印刷画質を向上させることが可能となる。
【００２５】
大きさの異なるインク滴を吐出することによって、大きさの異なる２種類以上のインクドットを形成可能なノズルを備えた印刷装置においては、各ドットの形成有無の判断とドット配列の検出とドット形成とのそれぞれの処理を、インクドットの大きさ毎に行うことも好ましい。吐出されるインク滴の大きさが異なれば、例えばインク室に供給すべきインク量やインク室の変形量等が異なるため、ドット配列によってインク滴の大きさが変動する程度も異なってくる。従って、インクドットの大きさ毎にドット配列を検出すれば、吐出されるインク滴の大きさをより精度良く修正することができ、インクドットの大きさを更に適切な大きさに保つことが可能となるので、より高画質の印刷が可能になる。
【００２６】
インク収容器に各色のインクを各色毎に収容し、各色インクのインク滴を吐出する印刷装置においては、ドット形成判断とドット配列検出とドット形成の各々の処理を、各色インク毎に行うことも好適である。このような印刷装置では、吐出されるインク滴の大きさも各色インク毎に変動するので、各処理を各色毎に行うことによって、インク滴の大きさを各色インク毎に修正することができる。このため、各色毎に、インクドットの大きさを適切な大きさに保つことができるので、印刷画質を向上させることが可能となる。
【００２７】
印加される電圧値に応じて変形する電歪素子を用いて、インク通路容積を変化させる印刷装置においては、インクドット配列の検出結果を該電歪素子に印加する電圧の信号に反映させることも好適である。こうすれば、ドット配列によるインク滴の大きさの変動を補正することができるので、形成されるインクドットの大きさを適切な大きさに保つことができ、印刷画質を向上させることが可能となる。
【００２８】
かかる印刷装置においては、ドット配列の検出結果に応じて、電歪素子に印加する電圧信号を制御することも好ましい。ドット配列の検出結果に基づいて電圧信号を制御することにより、インク滴の大きさの変動を補正すれば、印刷媒体上に形成されるインク滴の大きさを適切な大きさに保つことができるので、印刷画質を向上させることができる。
【００２９】
更には、かかる印刷装置においては、次のようにすることも好適である。電歪素子に印加する電圧信号を複数設定しておき、ドット配列の検出結果に応じて、複数の電圧信号の中から、適した電圧信号を選択するようにしても良い。こうすれば、電圧信号を制御してインク滴の大きさを修正する場合に比べて、簡便に修正することができる。
【００３０】
本願発明の第２の印刷装置は、前述の課題の少なくとも一部を解決するために
次の構成を採用した。すなわち、
インク滴を吐出するノズルと該インクを収容しておくインク収容器とを備え、前記ノズルと前記インク収容器とをつなぐインク通路の容積を変化させて該インク滴を吐出し、印刷媒体上にインクドットを形成することによって画像を印刷する印刷装置であって、
該画像の印刷に際して、インクドットが形成されるか否かを仮に判断する第１のドット形成判断手段と、
前記ノズルが前記印刷媒体との相対位置を変更しつつ形成しようとするインクドットの配列の中から、前記吐出されるインク滴の大きさに影響を与える前記配列を、前記第１のドット形成判断手段の判断結果に基づいて検出するドット配列検出手段と、
該ドット配列の検出結果に基づいて、前記インク滴の大きさへの影響が補償されるように、最終的にインクドットを形成すべきか否かを判断する第２のドット形成判断手段と、
該第２のドット形成判断手段の判断結果に基づいて、前記インクドットを形成するドット形成手段と
を備えることを要旨とする。
【００３１】
また、上記第２の印刷装置に対応する本願発明の第２の印刷方法は、
インク滴を吐出するノズルと該インクを収容しておくインク収容器とを備え、前記ノズルと前記インク収容器とをつなぐインク通路の容積を変化させて該インク滴を吐出し、印刷媒体上にインクドットを形成することによって画像を印刷する印刷方法であって、
該画像の印刷に際して、インクドットが形成されるか否かを仮に判断し、
前記ノズルが前記印刷媒体との相対位置を変更しつつ形成しようとするインクドットの配列の中から、前記吐出されるインク滴の大きさに影響を与えるドット配列を、前記仮に判断したインクドットの形成有無に基づいて検出し、
該ドット配列の検出結果に基づいて、前記インク滴の大きさへの影響が補償されるように、最終的にインクドットを形成すべきか否かを判断し、
該最終的な判断結果に基づきインクドットを形成して画像を印刷することを要旨とする。
【００３２】
かかる第２の印刷装置および印刷方法は、先ず画像の印刷に際して仮のインクドットの形成有無を判断し、次いでノズルが形成するインクドットの配列の中から、インク滴の大きさに影響を与えるインクドットの配列を、前記仮のインクドットの形成有無の判断結果に基づいて検出する。その後、ドット配列の検出結果に基づいて、インク滴の大きさへの影響を補償するように、最終的なインクドットの形成の有無を判断し、こうして得られた最終的な判断結果に基づいて、最終的なインクドットを印刷媒体上に形成する。こうすれば、仮のインクドットの配列によってインク滴の大きさが変動することを考慮した上で、最終的なインクドットの形成判断を行うことができるので、印刷画質を向上させることが可能となる。
【００３３】
かかる第２の印刷装置においては、前記ドット配列の検出結果をドット形成有無の判断結果に反映させるために、補償ドットの形成有無を判断することも好適である。補償ドットとは、ドット配列の影響でインク滴の大きさが小さくなった場合に、インク滴の縮小を補うために追加して形成されるインクドットをいう。ドット配列の検出結果に基づき形成すると判断した補償ドットを、先に形成する旨の判断がなされていた仮のインクドットに加えて、印刷媒体上に形成する。こうすれば、インクドットの配列によって吐出されるインク滴の大きさが変動しても、補償ドットの形成によってこれを補償することができ、印刷画像の画質を向上させることが可能となる。
【００３４】
更に、かかる補償ドットを、通常のインクドット（補償ドットではない、すなわち仮のインクドットのこと）の形成とは別に、すなわちドットを形成する時間をずらして、別途形成することも好適である。別途形成することには、次のようなものも含まれる。例えば、インクノズルが印刷媒体上を往復動しながらインクドットを形成する印刷装置において、通常のインクドットを形成するためのノズルの往復動作と補償ドットを形成するための往復動とを別に設けることや、ノズルの復動作中に補償ドットを形成すること等が含まれる。
【００３５】
通常のインクドットと補償ドットとを同時に形成する場合には、通常のインクドットを形成するノズルと補償ドットを形成するノズルの重複を避けるための処理が必要となるが、別途補償ドットを形成すればかかる処理が不要となり、補償ドットを形成するための処理の簡便化を図ることができる。
【００３６】
上述してきた本願発明の第１の印刷方法や第２の印刷方法は、印刷装置と該印刷装置を制御するコンピュータとを組み合わせ、該コンピュータにおいて、インクドット配列の検出等の前記処理を行うことによっても実現しうる。従って本願発明には、かかる処理を行うプログラムをコンピュータで読みとり可能に記録した記録媒体としての各種態様も含まれている。すなわち、本願の第１の印刷方法に対応する記録媒体は、
インク滴を吐出するノズルと該インクを収容しておくインク収容器とを備え、前記ノズルと前記インク収容器とをつなぐインク通路の容積を変化させて該インク滴を吐出し、印刷媒体上にインクドットを形成することによって画像を印刷する印刷装置で用いられるプログラムをコンピュータで読み取り可能に記録した記録媒体であって、
該画像の印刷に際して、前記インクドットが形成されるか否かを判断する機能と、
前記ノズルが前記印刷媒体との相対位置を変更しつつ形成しようとするインクドットの配列の中から、前記吐出されるインク滴の大きさに影響を与える前記配列を、前記インクドットの形成有無の判断結果に基づいて検出する機能と、
該ドット配列の検出結果を前記インク通路容積の変化速度に反映させることによって、吐出されるインク滴の大きさを補償する機能と、
該補償された大きさのインク滴を吐出して前記インクドットを形成する機能と
を実現するプログラムを記録した記録媒体としての態様である。
【００３７】
かかる記録媒体に記憶されたプログラムがコンピュータに読み込まれ、該コンピュータが、インク滴の大きさに影響を与えるインクドット配列を検出し、検出したドット配列を反映しながらインク滴の吐出を行うことにより、印刷媒体上に形成されるインク滴の大きさが適切な大きさに保たれるので、印刷画質が向上される。
【００３８】
また本願の第２の印刷方法に対応する記録媒体は、
インク滴を吐出するノズルと該インクを収容しておくインク収容器とを備え、前記ノズルと前記インク収容器とをつなぐインク通路の容積を変化させて該インク滴を吐出し、印刷媒体上にインクドットを形成することによって画像を印刷する印刷装置で用いられるプログラムをコンピュータで読み取り可能に記録した記録媒体であって、
該画像の印刷に際して、インクドットが形成されるか否かを仮に判断する機能と、
前記ノズルが前記印刷媒体との相対位置を変更しつつ形成しようとするインクドットの配列の中から、前記吐出されるインク滴の大きさに影響を与えるドット配列を、前記仮に判断したインクドットの形成有無に基づいて検出する機能と、
該ドット配列の検出結果に基づいて、前記インク滴の大きさへの影響が補償されるように、最終的にインクドットを形成すべきか否かを判断する機能と、
該最終的な判断結果に基づいて、インクドットの形成を制御する機能と
を実現するプログラムを記録した記録媒体としての態様である。
【００３９】
かかる記録媒体に記憶されたプログラムがコンピュータに読み込まれ、該コンピュータが仮のインクドットの形成の有無を判断し、かかる仮のインクドットに基づいて、インク滴の大きさに影響を与えるインクドット配列を検出し、該インクドット配列の検出結果に基づいて前記最終的なインクドットの形成有無を判断し、こうして得られた最終的なインクドットの判断結果に基づいてインクドットを形成することにより、印刷画質を向上させることができる。
【００４０】
【発明の実施の形態】
Ａ．装置の構成
本発明の実施の形態を、実施例に基づいて説明する。図１は、本発明の実施例において使用される印刷装置の構成を示す説明図である。図示するように、この印刷装置は、コンピュータ８０にカラースキャナ２１とカラープリンタ２０とが接続されており、コンピュータ８０に所定のプログラムがロードされ実行されることによって、全体として印刷装置として機能する。印刷しようとするカラー原稿は、コンピュータ８０が認識可能なカラー画像データＯＲＧにカラースキャナ２１で変換された後、コンピュータ８０に入力される。コンピュータ８０は、所定の画像処理を行って、カラー画像データＯＲＧをプリンタで印刷可能な画像データに変換し、カラープリンタ２０に出力する。コンピュータ８０が扱う画像データには、カラースキャナ２１で取り込んだ画像の他に、コンピュータ８０上で各種のアプリケーションプログラム９１により作成した画像や、カラースキャナ２１から取り込んだ画像に加工を加えた画像等も用いられる。これら画像データの変換結果は、プリンタで印刷可能な画像データＦＮＬとして、カラープリンタ２０に出力され、この画像データＦＮＬに従って、カラープリンタ２０は印刷用紙上に各色のインクドットを形成する。この結果、コンピュータ８０から出力されたカラー画像データに対応したカラー画像が、印刷用紙上に得られることになる。
【００４１】
コンピュータ８０は、各種の演算処理を実行するＣＰＵ８１・ＲＯＭ８２・ＲＡＭ８３・入力インターフェース８４・出力インターフェース８５・ＣＲＴコントローラ（ＣＲＴＣ）８６・ディスクコントローラ（ＤＤＣ）８７・シリアル入出力インターフェース（ＳＩＯ）８８等から構成されており、これらはバス８９で接続されて相互にデータのやり取りが可能となっている。ＣＲＴＣ８６はカラー表示可能なＣＲＴ２３への信号出力を制御し、ＤＤＣ８７はフレキシブルディスクドライブ２５やハードディスク２６あるいは図示しないＣＤ−ＲＯＭドライブ等とのデータのやり取りを制御する。ＲＯＭ８２やハードディスク２６には、ＲＡＭ８３にロードされＣＰＵ８１で実行される各種のプログラムや、デバイスドライバの形式で提供される各種のプログラムが記憶されている。また、ＳＩＯ８８をモデム２４を経由して公衆電話回線ＰＮＴに接続すれば、外部のネットワーク上にあるサーバＳＶから必要なデータやプログラムをハードディスク２６にダウンロードすることが可能となる。
【００４２】
コンピュータ８０に電源を投入すると、ＲＯＭ８２およびハードディスク２６に記憶されていたオペレーティングシステムが起動し、オペレーティングシステムの管理の下で、各種アプリケーションプログラム９１が動くようになっている。
【００４３】
カラープリンタ２０は、カラー画像の印刷が可能なプリンタであり、本実施例では、印刷用紙上にシアン・マゼンタ・イエロ・ブラックの合計４色のインクを吐出することによってカラー画像を印刷するインクジェットプリンタを使用している。もちろん、これら４色インクの他に、ライトシアン・ライトマゼンタのインクを加えた合計６色のインクを使用するカラープリンタであっても構わない。
【００４４】
また、本実施例のカラープリンタ２０はバリアブルドットプリンタ、すなわち大きさの異なる大・中・小の３種類のドットを、各色毎に形成することが可能なプリンタである。本実施例のカラープリンタ２０は、インクの吐出方法を工夫することによって、単一のインク吐出ノズルを用いて３種類の大きさのドットを形成するとともに、吐出するインク滴の大きさを修正することも可能である。かかるインクの吐出方法およびインク滴の大きさを修正する方法については後述する。また、インク吐出方法の説明から明らかな通り、ドットの大きさは３種類に限られるものではなく、大小２種類のドットを形成するものであっても、更には４種類以上のドットを形成するものであっても構わない。
【００４５】
図２は、本印刷装置のソフトウェアの構成を概念的に示すブロック図である。コンピュータ８０においては、すべてのアプリケーションプログラム９１はオペレーティングシステムの下で動作する。オペレーティングシステムには、ビデオドライバ９０やプリンタドライバ９２が組み込まれていて、各アプリケーションプログラム９１から出力される画像データは、これらのドライバからデータ入出力モジュール９７を介して、カラープリンタ２０に出力される。
【００４６】
アプリケーションプログラム９１が印刷命令を発すると、コンピュータ８０のプリンタドライバ９２は、アプリケーションプログラム９１から画像データを受け取って所定の画像処理を行い、プリンタが印刷可能な画像データに変換する。図２に概念的に示すようにプリンタドライバ９２が行う画像処理は、解像度変換モジュール９３と、色変換モジュール９４と、ハーフトーンモジュール９５と，インターレースモジュール９６の大きく４つのモジュールから構成されている。各モジュールで行う画像処理の内容は後述するが、プリンタドライバ９２が受け取った画像データはこれらモジュールで変換された後、最終的な画像データＦＮＬとしてカラープリンタ２０に出力される。尚、本実施例のカラープリンタ２０は、画像データＦＮＬに従ってドットを形成する役割を果たすのみであるが、画像処理の一部をカラープリンタ２０で行うものであっても良い。
【００４７】
図３に、本実施例のカラープリンタ２０の概略構成を示す。このカラープリンタ２０は、図示するように、キャリッジ４０に搭載された印字ヘッド４１を駆動してインクの吐出およびドット形成を行う機構と、このキャリッジ４０をキャリッジモータ３０によってプラテン３６の軸方向に往復動させる機構と、紙送りモータ３５によって印刷用紙Ｐを搬送する機構と、制御回路６０とから構成されている。キャリッジ４０をプラテン３６の軸方向に往復動させる機構は、プラテン３６の軸と並行に架設されたキャリッジ４０を摺動可能に保持する摺動軸３３と、キャリッジモータ３０との間に無端の駆動ベルト３１を張設するプーリ３２と、キャリッジ４０の原点位置を検出する位置検出センサ３４等から構成されている。印刷用紙Ｐを搬送する機構は、プラテン３６と、プラテン３６を回転させる紙送りモータ３５と、図示しない給紙補助ローラと、紙送りモータ３５の回転をプラテン３６および給紙補助ローラに伝えるギヤトレイン（図示省略）とから構成されている。制御回路６０は、プリンタの操作パネル５９と信号をやり取りしつつ、紙送りモータ３５やキャリッジモータ３０、印字ヘッド４１の動きを適切に制御し、更に、プリンタのインク残量表示パネル５８の表示も制御している。カラープリンタ２０に供給された印刷用紙Ｐは、プラテン３６と給紙補助ローラの間に挟み込まれるようにセットされ、プラテン３６の回転角度に応じて所定量だけ送られる。
【００４８】
キャリッジ４０には黒（Ｋ）インクを収納するインクカートリッジ４２と、シアン（Ｃ）・マゼンタ（Ｍ）イエロ（Ｙ）のインクを収納するインクカートリッジ４３と、インク温度を計測する温度センサ３７とが装着されている。よちろん、ＫインクとＹインクとを同じインクカートリッジに収納させる等しても良い。どのような組合せにしろ、複数のインクを１つのカートリッジに収納可能とすれば、キャリッジ４０をコンパクトに構成することができる。キャリッジ４０の下部にある印字ヘッド４１には、Ｋ・Ｃ・Ｍ・Ｙの各インクに対して、インク吐出用ヘッド４４・４５・４６・４７がそれぞれ形成されている。キャリッジ４０の底部には図示しない導入管が各インク毎に立設されており、キャリッジ４０にインクカートリッジを装着すると、カートリッジ内の各インクは導入管を通じて、それぞれのインク吐出用ヘッド４４ないし４７に供給される。各ヘッドに供給されたインクは、後述する方法によって印字ヘッド４１から吐出され、印刷用紙上にドットを形成する。
【００４９】
図４（ａ）は各色ヘッドの内部構造を示した説明図である。各色のインク吐出用ヘッド４４ないし４７には、各色毎に４８個のノズルＮｚが設けられていて、各ノズルには、インク通路５０とその通路上にピエゾ素子ＰＥが設けられている。ピエゾ素子ＰＥは周知のように、電圧の印加により結晶構造が歪み、極めて高速に電気−機械エネルギの変換を行う素子である。本実施例では、ピエゾ素子ＰＥの両端に設けられた電極間に所定時間幅の電圧を印加することにより、図４（ｂ）に示すようにピエゾ素子ＰＥが電圧の印加時間だけ伸張し、インク通路５０の一側壁を変形させる。この結果、インク通路５０の体積はピエゾ素子ＰＥの伸張に応じて伸縮し、この収縮分に相当するインクが粒子ＩｐとなってノズルＮｚから高速で吐出される。このインクＩｐがプラテン３６に装着された印刷用紙Ｐに染み込むことにより、印刷用紙Ｐの上にドットが形成される。
【００５０】
図５は、インク吐出用ヘッド４４ないし４７におけるインクジェットノズルＮｚの配列を示す説明図である。図示するように、インク吐出用ヘッドの底面には、各色毎のインクを吐出する４組のノズルアレイが形成されており、１組のノズルアレイ当たり４８個のノズルＮｚが一定のノズルピッチｋで千鳥状に配列されている。尚、各ノズルアレイに含まれる４８個のノズルＮｚは千鳥状に配列されている必要はなく、一直線上に配列されていてもよい。ただし、図５に示すように千鳥状に配列すれば、製造上、ノズルピッチｋを小さく設定し易いという利点がある。
【００５１】
図５に示すように、各色のインク吐出用ヘッド４４ないし４７は、キャリッジ４０の搬送方向にヘッドの位置がずれている。また、各色ヘッド毎のノズルに関しても、ノズルが千鳥状に配置されている関係上、キャリッジ４０の搬送方向に位置がずれている。カラープリンタ２０の制御回路６０は、キャリッジ４０を搬送しながらノズルを駆動する際に、ノズルの位置の違いによるヘッド駆動タイミングの違いを考慮しながら、適したタイミングでそれぞれのヘッドを駆動している。
【００５２】
本実施例のカラープリンタ２０は、図５に示したように一定径のノズルＮｚを備えているが、かかるノズルＮｚを用いて大きさの異なる３種類のドットを形成することができる。以下にこの原理について説明する。図６は、インクが吐出される際のノズルＮｚの駆動波形と吐出されるインクＩｐとの関係を示した説明図である。図６において破線で示した駆動波形が通常のドットを吐出する際の波形である。区間ｄ２において一旦、基準電圧よりも低い電圧をピエゾ素子ＰＥに印加すると、先に図４で説明したのとは逆にインク通路５０の断面積を増大する方向にピエゾ素子ＰＥが変形する。ノズルへのインクの供給速度には限界があるため、インク通路５０の拡大に対してインクの供給量が不足し、図６の状態Ａに示した通り、インク界面（メニスカス）ＭｅはノズルＮｚの内側にへこんだ状態となる。また、図６の実線で示す駆動波形を用いて区間ｄ１に示すように電圧を急激に低くすると、インクの供給量が更に不足して、状態ａで示すように状態Ａに比べて大きく内側にへこんだ状態となる。
【００５３】
次に、ピエゾ素子ＰＥに高い電圧を印加すると（区間ｄ３）、インク通路５０の断面積の減少により通路内のインクが圧縮され、インク滴がインクノズルから吐出される。このとき、インク供給量が不足していると吐出されるインク滴も小さくなる。従って、メニスカスＭｅがあまり内側にへこんでいない状態（状態Ａ）からは、状態Ｂおよび状態Ｃに示すごとく大きなインク滴が吐出され、メニスカスＭｅが大きくへこんだ状態（状態ａ）からは状態ｂおよび状態ｃに示すごとく小さなインク滴が吐出される。このように、駆動電圧を低くする際（区間ｄ１，ｄ２）の変化率を変えれば、形成されるドットの大きさを変化させることができる。
【００５４】
カラープリンタ２０は、２種類の駆動波形を連続的に出力する。この様子を図７に示した。電圧を低くする際の変化率を比べれば、駆動波形Ｗ１とＷ２は、それぞれ小さなインク滴Ｉｐｓと大きなインク滴Ｉｐｍとに対応していることが分かる。キャリッジ４０が主走査方向に移動しながら、駆動波形Ｗ１を出力し、次いで駆動波形Ｗ２を出力する場合を考える。駆動波形Ｗ１により吐出される小さなインク滴Ｉｐｓは飛翔速度が比較的小さく、駆動波形Ｗ２により吐出される大きなインク滴Ｉｐｍは飛翔速度が大きいので、吐出されてから印刷用紙に到着するまでの所要時間は、小さなインク滴Ｉｐｓの方が長くなる。当然、インクの吐出位置から印刷用紙に到着した位置の主走査方向へ移動距離も、小さなインク滴Ｉｐｓの方が大きなインク滴Ｉｐｍより長くなる。従って、駆動波形Ｗ１と駆動波形Ｗ２のタイミングを調節すれば、図７に示すように、小さなインク滴Ｉｐｓと大きなインク滴Ｉｐｍとを同一画素に吐出することが可能となる。
【００５５】
本実施例のカラープリンタ２０では、ピエゾ素子ＰＥに供給される駆動波形Ｗ１およびＷ２の内、駆動波形Ｗ１のみ有効とすることによって小さなドットを、駆動波形Ｗ２のみを有効とすることで中ドットを、駆動波形Ｗ１とＷ２をともに有効として、２つのインク滴を同一画素に吐出することによって大ドットを形成している。もちろん、駆動波形の種類を増やすことによって、更に多種類の大きさのドットを形成することも可能である。
【００５６】
図８は、カラープリンタ２０の制御回路６０の内部構成を示す説明図である。図示するように、制御回路６０の内部には、ＣＰＵ６１・ＰＲＯＭ６２・ＲＡＭ６３・コンピュータ８０とのデータのやり取りを行うＰＣインターフェース６４・周辺機器とのデータのやり取りを行う周辺機器入出力部（ＰＩＯ）６５・タイマ６６・駆動バッファ６７等が設けられている。紙送りモータ３５や、キャリッジモータ３０等は、ＰＩＯ６５を介してデータの受け渡しを行う。駆動バッファ６７は、インク吐出用ヘッド４４ないし４７にドットのオン・オフ信号を供給するバッファとして使用される。これらは互いにバス６８で接続され、相互にデータのやり取りが可能となっている。また、制御回路６０には、３つの発振器７０・７１・７２と、分配出力器６９が設けられている。３つの発振器はそれぞれ独自の駆動波形を分配出力器６９に出力しているが、各駆動波形は同一タイミングで出力されており、異なる発振器の駆動波形であっても位相は一致している。このように位相のそろった駆動波形の供給を受けて、分配出力器６９は回路を切り換えながら、インク吐出ヘッド４４ないし４７に対して必要な駆動波形を分配する。
【００５７】
ここで、発振器７０が駆動波形を出力する方法を例にとって、３つの発振器７０・７１・７２が所定の駆動波形を出力する方法について説明しておく。図９（ａ）に示すように、発振器７０は、４つの抵抗Ｒ１・Ｒ２・Ｒ３・Ｒ４と４つのスイッチング素子Ｓ１・Ｓ２・Ｓ３・Ｓ４とを用いて１つの回路を構成し、この回路の中央から電圧を取り出してコンデンサＣ１を接続したような構成となっている。スイッチング素子は、ＣＰＵ６１の制御に従い回路を電気的に開閉する機能を有する素子であって、カラープリンタ２０ではトランジスタが使用されている。回路の一方には正電圧が他方には負電圧が印加されていて、発振器７０はＣＰＵ６１の指示に従って４つのスイッチング素子を開閉することによって、所定の駆動波形を出力している。以下に、図９（ｂ）を用いて説明する。
【００５８】
初期状態、すなわちいずれのスイッチング素子（以下、素子）も開いている（以下、オフ）状態では、発振器７０の出力端子には電圧は発生しない。素子Ｓ２が閉じる（以下、オン）とコンデンサＣ１が放電するに従って出力端子の電圧が下がり始め、素子Ｓ２がオフになるまで低下する。この時の電圧の降下速度は抵抗Ｒ２の抵抗値が大きければ緩やかとなり、抵抗値が小さければ急激に低下する。次いで素子Ｓ１がオンになるとコンデンサＣ１が充電されるに従って出力端子の電圧は上昇し始め、素子Ｓ１がオフになるまで上昇する。この時の電圧上昇速度も、抵抗Ｒ１の抵抗値によって決まる。再び素子Ｓ２をオンにして出力端子の電圧を低下させ、端子電圧が０になったら素子Ｓ２をオフにする。発振器７０は、このように素子Ｓ１およびＳ２を所定タイミングで開閉することにより、小ドット形成用の駆動波形Ｗ１を出力している。中ドット用の駆動波形Ｗ２も素子Ｓ３とＳ４を同様に開閉して出力する。抵抗Ｒ３とＲ４の抵抗値を変更すれば、電圧の降下速度あるいは上昇速度を変化させることができる。
【００５９】
本実施例の発振器７０においては、抵抗Ｒ１ないしＲ４の抵抗値は、（抵抗Ｒ１の抵抗値）＜（抵抗Ｒ３の抵抗値）、かつ、（抵抗Ｒ２の抵抗値）＜（抵抗Ｒ４の抵抗値）の関係を満たすように設定されている。従って、図９（ｂ）に示すように、スイッチング素子Ｓ１・Ｓ２により抵抗Ｒ１・Ｒ２を選択することで小さなインク滴を吐出する駆動波形Ｗ１が、また、スイッチング素子Ｓ３・Ｓ４により抵抗Ｒ３・Ｒ４を選択することで大きなインク滴を吐出する駆動波形Ｗ２が出力される。
【００６０】
他の２つの発振器７１・７２も、発振器７０と同様の方法を用いて駆動波形を出力している。但し、抵抗Ｒ１ないしＲ４に相当する各抵抗の抵抗値は、発振器毎に少しずつ異なっている。つまり、発振器７１の駆動波形を使用してインク滴を吐出した場合には発振器７０の波形を使用した場合よりインク滴が若干大きくなるように、また、発振器７２の駆動波形を使用した場合にはインク滴が若干小さくなるように、各抵抗値の値が設定されている。
【００６１】
図８に示した分配出力器６９は、上述した３種類の駆動波形を発振器７０ないし７２から受け取り、各色のインク吐出ヘッド４４ないし４７のそれぞれに適切な駆動波形を選択して分配している。
【００６２】
コンピュータ８０が、図８に示す制御回路６０に画像データＦＮＬを出力すると、ドットのオン・オフ信号がＲＡＭ６３に一時的に蓄えられる。そして、ＣＰＵ６１は、紙送りモータ３５やキャリッジモータ３０の動きと同期を採りながら、所定のタイミングでドットのオン・オフ信号を駆動バッファ６７に出力する。
【００６３】
次に、ＣＰＵ６１が駆動バッファ６７にドットのオン・オフ信号を出力することによって、ドットが吐出されるメカニズムについて説明する。図１０は、インク吐出用ヘッド４４ないし４７の１つのノズル列を例にとって、その接続を示す説明図である。インク吐出用ヘッド４４ないし４７のノズル列は、駆動バッファ６７をソース側とし、分配出力器６９をシンク側とする回路に介装されており、ノズル列を構成する各ピエゾ素子ＰＥは、その電極の一方が駆動バッファ６７の各出力端子に、他方が一括して分配出力器６９の出力端子に、それぞれ接続されている。分配出力器６９からは、図１０に示す通り、発振器７０ないし７２の駆動波形のいずれかが出力されている。ＣＰＵ６１が駆動バッファ６７に、各ノズル毎のドットのオン・オフ信号を出力すると、オン信号を受け取ったピエゾ素子ＰＥだけが駆動波形によって駆動される。この結果、駆動バッファ６７からオン信号を受け取っていたピエゾ素子ＰＥのノズルから一斉にインク粒子Ｉｐが吐出される。また、吐出されるインク滴の大きさは、出力分配器６９で選択された駆動波形に依存する。すなわち、発振器７０の駆動波形が選択されていれば標準的なインク滴が吐出され、発振器７１の駆動波形が選択されていれば若干大きめのインク滴が、発振器７２の駆動波形が選択されていれば若干小さめのインク滴が吐出されることになる。
【００６４】
以上のようなハードウェア構成を有するカラープリンタ２０は、キャリッジモータ３０を駆動することによって、各色のインク吐出用ヘッド４４ないし４７を印刷用紙Ｐに対して主走査方向に移動させ、また紙送りモータ３５を駆動することによって、印刷用紙Ｐを副走査方向に移動させる。制御回路６０の制御の下、キャリッジ４０の主走査および副走査を繰り返しながら、適切なタイミングで印字ヘッド４１を駆動することによって、カラープリンタ２０は印刷用紙上にカラー画像を印刷している。
【００６５】
Ｂ．画像処理の概要
上述のように、カラープリンタ２０は、画像データＦＮＬの供給を受けてカラー画像を印刷する機能を有するが、画像データＦＮＬは、コンピュータ８０がカラー画像に所定の画像処理を行って生成する。図１１はコンピュータ８０のプリンタドライバ９２内で、ＣＰＵ８１が行う画像処理の概要を示すフローチャートである。以下、同図に従って、画像処理の概要を説明する。
【００６６】
画像処理を開始するとＣＰＵ８１は、画像データを入力する（ステップＳ１００）。この画像データは図２で説明したようにアプリケーションプログラム９１から供給されるデータであり、画像を構成する各画素毎にＲ・Ｇ・Ｂそれぞれの色について、０〜２５５の値の２５６階調を有するデータである。この画像データの解像度は、原画像のデータＯＲＧの解像度等に応じて変化する。
【００６７】
ＣＰＵ８１は、入力された画像データの解像度をカラープリンタ２０が印刷するための解像度に変換する（ステップＳ１０２）。画像データの解像度が印刷解像度よりも低い場合には、線形補間によって隣接する原画像データの間に新たなデータを生成することで解像度変換を行う。逆に画像データの解像度が印刷解像度よりも高い場合には、一定の割合でデータを間引くことにより解像度変換を行う。
【００６８】
次に、ＣＰＵ８１は色変換処理を行う（ステップＳ１０４）。色変換処理とはＲ・Ｇ・Ｂの階調値からなる画像データをカラープリンタ２０で使用するＣ・Ｍ・Ｙ等の各色の階調値のデータに変換する処理である。この処理は、色変換テーブルＬＵＴを用いて行われており（図２参照）、ＬＵＴにはＲ・Ｇ・Ｂのそれぞれの組合せからなる色をカラープリンタ２０で表現するためのＣ・Ｍ・Ｙ・Ｋの組合せが記憶されている。色変換テーブルを用いて色変換を行う処理自体については、公知の種々の技術が適用可能であり、例えば補間演算による処理が適用できる。
【００６９】
色変換処理を終了すると多値化処理を開始する（ステップＳ１０６）。本実施例においては、色変換後の画像データはＣ・Ｍ・Ｙ・Ｋの４色の２５６階調画像となっている。一方、本実施例のカラープリンタ２０では、「ドットを形成しない」、「小ドットを形成する」、「中ドットを形成する」、「大ドットを形成する」の合計４つの状態しか採り得ない。従って、２５６階調を有する画像を、カラープリンタ２０が表現できる４階調で表現された画像に変換する必要がある。すなわち、記録媒体上で大・中・小の各ドットの形成され易さを、原画像の階調値に応じて変化させることによって、原画像の２５６階調をカラープリンタ２０が表現可能な４階調値で表現するのである。尚、このような変換を行う処理を階調数変換処理と呼び、特に、変換される階調数が２値であるような処理を２値化処理と、それより多い階調数へ変換する処理を多値化処理と呼ぶ。
【００７０】
ＣＰＵ８１は多値化処理を終了すると、インターレース処理を開始する（ステップＳ１０８）。この処理は、多値化処理によってドットの形成有無を表す形式に変換された画像データを、カラープリンタ２０に転送すべき順序に並べ替える処理である。すなわち、前述のようにカラープリンタ２０は、キャリッジ４０の主走査と副走査を繰り返しながら、印字ヘッド４１を駆動して印刷用紙Ｐの上にドット列（ラスタ）を形成していく。図５を用いて説明したように、各色毎のインク吐出用ヘッド４４ないし４７には、複数のノズルＮｚが設けられているので、１回の主走査で複数本のラスタを形成することができる。それらラスタは互いにノズルピッチｋだけ離れている。その結果、画素間隔で並ぶラスタを形成するには、まず、ノズルピッチｋだけ離れた複数のラスタを形成し、次にヘッド位置を少しずらして、ラスタの間に新たなラスタを形成していくといった制御が必要となる。
【００７１】
また、印刷画質を向上させるために、１本のラスタを複数回の主走査に分けて形成したり、更には印刷時間を短縮するために、主走査の往動時と復動時のそれぞれでドットを形成するといった制御も行われる。これらの制御を行うと、カラープリンタ２０が実際にドットを形成する順序は、画像データ上で画素の順序と異なった順序となるので、インターレース処理において画像データの並べ替えを行って、大・中・小の各ドットのオン・オフを示すドットデータとしてＲＡＭ８３に展開するのである。
【００７２】
ＣＰＵ８１はインターレース処理を終了すると、インク吐出量補正処理を開始する（ステップＳ１１０）。前述した様に、インク吐出ヘッド４４ないし４７が印刷媒体上にそれぞれ形成するインクドットの配列によって、各ヘッドから吐出されるインク滴の大きさが変動することがある。インク滴の大きさが変動すると印刷媒体上には所定の大きさのインクドットが形成されないので、印刷画質の低下をきたす。そこで、インク吐出量補正処理は、インターレース処理がＲＡＭ８３上に展開したドットデータを読み込んでドットデータを解析し、インク吐出量を補正することによって画質の低下を回避する。かかる補正を行う態様には、吐出するインク滴の大きさを直接補正する態様と、インクドットの形成有無の判断において補正する態様との、２つの態様が存在する。それぞれの態様については後で詳述する。
【００７３】
インク吐出量補正処理が終了すると、ＣＰＵ８１は最終的に得られた画像データを、画像データＦＮＬとしてカラープリンタ２０に出力する（ステップＳ１１２）。
【００７４】
Ｃ．インク吐出量補正処理の内容（第１の実施態様）
図１２は、第１の実施態様におけるインク吐出量補正処理の流れを示すフローチャートである。第１の実施態様におけるインク吐出量補正処理では、インターレース処理（図１１参照）によってＲＡＭ８３に展開されたドットデータを読み込んで（ステップＳ２００）、これを解析することによってドット配列によるインク吐出量の変動量を算出し（ステップＳ２０２）、算出結果を元に、インク吐出ヘッドに供給する適切な駆動波形を選択する（ステップＳ２０４）。そして駆動波形の選択結果を図１１の画像処理ルーチンに返して（ステップＳ２０６）、インク吐出量補正処理を終了する。以下、図１２に示したフローチャートに従って、第１の実施態様におけるインク吐出量補正処理について説明する。尚、カラープリンタ２０はＣ・Ｍ・Ｙ・Ｋの各色毎にインクドットを形成しており、以下の処理も各色毎に行っているが、説明を簡略化するために、以下では特にインクの色を特定せずに説明する。
【００７５】
（１）ドットデータ読込処理（ステップＳ２００）
図１３（ａ）は、ステップＳ２００において、ＲＡＭ８３から読み込まれるドットデータの一例を示したものである。実際のドットデータのデータサイズは、図１３（ａ）に示した例よりも大きいが、説明の都合上、ノズル数が８個、主走査方向の画素数が１６個のデータとして表示している。また、各ノズルには１番から８番の固有のノズル番号を付し、主走査方向に並ぶ各画素には、先頭から順に１番から１６番までの番号を付してある。図中にシリアル番号として表示されているのがこれであり、シリアル番号が同じ画素に形成されるドットは、インク滴が吐出されるタイミングが同一となっている。
【００７６】
ＲＡＭ８３上に展開されているドットデータでは、大・中・小のドットの大きさが区別されているが、ステップＳ２００では、各ドットの大きさを区別せずに読み込んでいる。この理由については後述するが、ドットデータ読込処理（Ｓ２００）は、大・中・小のいずれかのドットが形成される画素にはドットの形成を表す値「１」を書き込み、ドットが形成されない画素にはその旨を表す値「０」を書き込みながら、ＲＡＭ８３上のドットデータを読み込んで、図１３（ａ）に示すようなドットデータを読み込む。
【００７７】
ここで、ステップＳ２００において、ドットの大きさを区別せずに読み込んでいる理由を簡単に説明しておく。図１２に示したように、第１の実施態様においては、ドット配列によるインク吐出量の変動量を算出し、この算出結果を基にインク吐出ヘッドに供給する適切な駆動波形を選択して、インク吐出量の変動を補正している。ところが、図８で説明したように、本実施例のカラープリンタ２０は、３種類の駆動波形、すなわち標準波形に加えて、標準より大きめのインク滴となる駆動波形と、小さめのインク滴となる駆動波形の、３種類しか備えていない。つまり、インク吐出量変動の算出精度を向上させても、それを駆動波形に反映させることができないので、処理を複雑化させてまでドットの大きさを区別しながらインク吐出量補正処理を行う実益に乏しいのである。
【００７８】
もちろん、より多種類の駆動波形を備えておき、この中から適した駆動波形を選択する場合や、また、後述するように、インク吐出量変動の算出結果に基づいて駆動波形を制御する場合には、ドットの大きさを区別して、インク吐出量変動の算出精度を向上させても良いのはもちろんである。そのような場合には、ドットの大きさを区別してインク吐出量補正を行うことによって補正精度を向上させることができるので、各ドットの大きさを区別して読み込む方が、画質向上の観点からはより好ましい。
【００７９】
（２）ドット配列解析処理（ステップＳ２０２）
こうして図１３（ａ）に示すようなドットデータを読み込むと、ＣＰＵ８１は読み込んだドットデータを解析して、インク吐出量の補正係数を各シリアル位置毎に算出する（ステップＳ２０２）。インク吐出量の補正係数を算出する方法には、種々の方法があるが、以下では、算出方法の例として、駆動デューティに基づく方法と、相対駆動周波数を利用する方法、および駆動デューティと相対駆動周波数のどちらも利用する方法について、順次説明する。
【００８０】
（ａ）駆動デューティに基づく補正係数の算出
駆動デューティに基づいて補正係数を算出する場合は、以下に示すように、読み込んだドットデータに基づいて各シリアル位置での駆動デューティを算出する。ここで駆動デューティとは、一度に形成可能なインクドットの最大個数と一度に形成されるインクドットの個数との割合を示す数値である。図１３（ａ）のドットデータを用いて具体的に説明する。例えば、図１３（ａ）のシリアル番号１番の位置では、一度に形成可能なインクドット数（８個）の内、実際に形成したドットの数は１個であるから、駆動デューティは、（１／８）×１００≒１３％と計算される。同様にしてシリアル番号２番の位置では、実際に形成するドット数は４個であるから、駆動デューティは、（４／８）×１００＝５０％となる。こうして、図１３（ａ）のドットデータから各シリアル位置での駆動デューティを算出すると、図１３（ｂ）に示した結果が得られる。
【００８１】
以上の説明から明らかなように、駆動デューティの値が大きくなる程、一度に多くのインク滴が吐出されることを表している。前述したように、一度に多くのインク滴を吐出するとインク室Ａ（図３１）へのインクの供給が間に合わず、吐出するインク滴の大きさが小さくなる傾向があるので、各シリアル位置毎に駆動デューティを算出して、これを補正するのである。
【００８２】
以上のようにして駆動デューティを求めた後、ＣＰＵ８１は図１３（ｃ）に示すようなテーブルを参照することにより、駆動デューティの値を補正係数に変換する。図１３（ｃ）は、駆動デューティ１００％におけるインク滴重量（インク滴１滴当たりの重量）を基準に、各駆動デューティにおけるインク滴重量の比率を示したものであり、予め実験によって求められている。このように、駆動デューティに対するインク滴重量の比率を求めておき、これを基に、図１３（ｂ）に示す駆動デューティから、図１３（ｄ）に示すように各シリアル位置毎に補正係数を求めるのである。尚、補正係数を実験的に求める方法については後述する。
【００８３】
（ｂ）相対駆動周波数に基づく補正係数の算出
次に、相対駆動周波数に基づいて補正係数を算出する処理について説明する。相対駆動周波数とは、時間的にどのような頻度でインク滴を吐出するかを表す指標であり、具体的には次のようにして定義される。あるノズルが記録媒体上を移動しながらインク滴を吐出してドットを形成していく様子を考えて、記録媒体上に形成されたあるドットに着目する。その着目ドットの直前にもドットが形成されている場合、すなわち、ドットが連続して形成される場合、その着目ドットの相対駆動周波数は１００％であると定義される。また、着目ドットの直前にはドットが形成されていないが、１ドットの間をおいた隣のドットにはドットが形成されている場合は、その着目ドットの相対駆動周波数は５０％であると定義される。同様に、２ドットの間隔をおいてドットが形成されている場合は相対駆動周波数３３％、３ドットの間隔が存在している場合は２５％と定義される。
【００８４】
図１４は、前述のドットデータ読込処理（図１２のステップＳ２００）で読み込んだドットデータを解析して、相対駆動周波数に基づいて補正係数を算出する処理の流れを示すフローチャートである。ＣＰＵ８１は、読み込んだドットデータから、各画素のドット形成有無を判断し（ステップＳ３００）、ドットが形成されない画素については相対駆動周波数Ｆｒが０％であると判断する（ステップＳ３０２）。ドットが形成される画素については、その画素の直前のドットの形成有無を判断し（ステップＳ３０４）、直前画素にもドットが形成されることになっている場合は、その画素の駆動周波数Ｆｒは１００％であると判断する（ステップＳ３０６）。直前画素にドットが形成されないことになっている場合は、２画素前のドット形成有無を判断し（ステップＳ３０８）、ドットが形成されることになっている場合は、その画素の駆動周波数Ｆｒは５０％であると判断する（ステップＳ３１０）。２画素前にもドットが形成されないことになっている場合は、その画素の駆動周波数は３３％以下であると判断する（ステップＳ３１２）。次いで、読み込んだ全データについて判断が終了したか否かを判断し（ステップＳ３１４）、終了していなければステップＳ３００に戻って、以上の処理を繰り返す。全データの判断が終了している場合は、全ての画素について相対駆動周波数が求められたことになる。そこで、画素毎の補正係数の算出（ステップＳ３１６）、および各シリアル位置での補正係数の算出を行う（ステップＳ３１８）。ステップＳ３１６およびステップＳ３１８の処理内容については、図１５を用いて具体的に説明する。
【００８５】
ステップＳ３１４の処理を終了した時点では、最初に読み込まれたドットデータ（図１３（ａ）参照）は、図１５（ａ）に示すような、各画素の相対駆動周波数を示すデータに変換されている。ＣＰＵ８１は図１５（ｂ）に示すようなテーブルを参照して、この相対駆動周波数のデータを各画素位置での補正係数に変換する。変換に際して参照されるテーブルは、図１５（ｂ）に図示するような、相対駆動周波数とインク温度との組合せに対して補正係数が１つ定まるような２次元テーブルである。
【００８６】
ここで、図１５（ｂ）の意味するところについて、若干説明しておく。ノズルから吐出される単位時間当たりのインク量は、相対駆動周波数の値が高くなる程多くなる。前述したように、一般に、単位時間当たりのインク吐出量が多くなる程、インク滴重量が小さくなる傾向がある。これはインクの粘性によって、インク室Ａ（図３１参照）に対するインクの供給が間に合わなくなるためであり、インク温度が低いほどインクの粘度が高くなるので、この傾向は顕著になる。逆にインク温度が高くなると、ノズル端面でのインク界面の振動の影響が顕著に現れる。すなわち、インク温度が低いときにはインクの粘度が高くインク界面の振動が直ぐに減衰してしまうので、インク界面の振動の影響でインク滴重量が変動することはないが、インク温度が高くなるとインク界面の振動が容易に減衰しなくなるので、前述したようにインク滴重量が多くなることがあるのである。
【００８７】
このように、インク滴重量は駆動周波数とインク温度の影響によって変動する。そこで、各種の駆動周波数とインク温度とを組み合わせた各種条件で、インク滴重量を実測し、その結果を、インク温度２５℃・駆動周波数１００％の条件を基準として整理して得られたのが図１５（ｂ）である。尚、図１５（ｂ）に示されているように、インク滴重量は、インク温度２５℃においては相対駆動周波数によらず一定となる特性を示している。これは、インク温度２５℃はカラープリンタの標準的な使用条件と考えられることから、インク温度２５℃では特にフラットな特性となるように、各種の設計パラメータを調整した結果によるものである。また、相対駆動周波数１００％の条件では、インク温度によらずほぼ同等のインク滴重量が得られている。これは次の理由による。すなわち、相対駆動周波数に対する特性をインク温度２５℃で特にフラットに調整した関係上、他のインク温度においては、もはやフラットな特性とすることはできないので、相対駆動周波数１００％の条件で、できるだけインク温度２５℃相当のインク滴重量が得られるように、各種設計パラメータを調整した結果によるものである。
【００８８】
図１５（ｂ）を参照すれば、相対駆動周波数に対するインク滴重量の補正係数を求めることができるので、図１５（ａ）に示した各画素の相対駆動周波数に対するインク滴重量の補正係数を求めることができる。このような処理が図１４のステップＳ３１６の処理である。すなわち、ＣＰＵ８１は先ず温度センサ３７の出力によってインク温度を検出し、図１５（ｂ）に示すような２次元テーブルを参照することによって、図１５（ｃ）に示すような補正係数を求めている。尚、図１５（ｃ）の例では、インク温度１０℃の場合を示している。
【００８９】
こうしてインク滴重量の補正係数が各画素毎に計算されたので、続くステップＳ３１８の処理では、画素毎の補正係数を各シリアル位置毎に平均して、各シリアル位置での補正係数とする。図１５（ｃ）を用いて具体的に説明する。例えば、シリアル番号２番の位置では、ノズル位置１番・３番・４番・８番の４つの画素について補正係数が、それぞれ「１．１」、「１．１」、「１．１」、「１」と求められている。そこで、これらの平均をとって、
（１．１＋１．１＋１．１＋１）／４≒１．０８
がシリアル番号２番の補正係数となる。ステップＳ３１８の処理では、このようにして各シリアル位置毎に補正係数を算出する。
【００９０】
尚、以上の説明においては、相対駆動周波数を算出するためにドット形成有無を判断するのは２画素前までであり、３画素前のドット形成有無は判断していない（図１４のステップＳ３０８参照）。これは、３画素前のドット形成有無によってインク吐出量が変動することは少なく、２画素前のドット形成有無まで判断していれば経験上十分だからである。もちろん、カラープリンタの設計によっては３画素前のドット形成有無によってインク吐出量が変動することも考えられ、このような場合は３画素前のドット形成有無も判断して、相対駆動周波数が３３％であるか、２５％以下であるかを区別することで、算出精度を向上させることも好適である。
【００９１】
（ｃ）駆動デューティと相対駆動周波数を同時に考慮した補正係数の算出
最後に、駆動デューティおよび相対駆動周波数を同時に考慮した補正係数の算出方法について説明する。実際の印刷においては、当然、駆動デューティと相対駆動周波数とが同時に変化するため、２つの影響を同時に考慮すれば、より精度良くインク滴重量の変動を補正することができる。
【００９２】
前述したように、駆動デューティによる補正係数の意味するところは、全ノズルで一斉にインク滴を吐出した場合のインク滴重量を１として、インクを吐出しないノズルがあったときにインク滴重量はどれだけ増加するかを示す値である。また、相対駆動周波数による補正係数の意味するところは、連続してインク滴を吐出する場合のインク滴重量を１として、直前の画素あるいは直前の２画素でインク滴を吐出しなかった場合にインク滴重量はどれだけ増加するかを示す値である。従って、２つの補正係数を乗算することによって、駆動デューティによる影響と相対駆動周波数による影響を同時に考慮した補正係数を算出することができる。
【００９３】
以上の説明から明らかなように、予め駆動デューティによる補正係数と相対駆動周波数による補正係数とを求めておき、それら２つの補正係数をシリアル位置毎に乗算することによって、駆動デューティと相対駆動周波数を同時に考慮した補正係数を求めることができるのである。
【００９４】
（３）駆動波形選択処理（ステップＳ２０４）
以上、説明してきたいずれかの方法により、シリアル位置毎に補正係数が求められたら、この補正係数に基づいてインク吐出ヘッドに供給すべき駆動波形を選択する。前述したように、本実施例のカラープリンタ２０では、駆動波形は標準波形（波形１）と、標準より大きめのインク滴が吐出される波形（波形２）、および標準より小さめのインク滴が吐出される波形（波形３）の３種類の波形が使用可能である。そこで、ステップＳ２０２でシリアル位置毎に求めた補正係数に基づき、図１６に示すように各駆動波形を選択する。すなわち、補正係数が０．９６以上１．０６未満（０．９６≦補正係数＜１．０６）の場合は、標準の駆動波形１を選択する。補正係数の値が０．９６未満（補正係数＜０．９６）の場合は小さめのインク滴が吐出されると考えられるので、これを補正するために大きめのインク滴を吐出する波形２を選択する。また、補正係数の値が１．０６以上（１．０６≦補正係数）の場合は大きめのインク滴が吐出されると考えられるので、小さめのインク滴を吐出する波形３を選択する。このようにして、ステップＳ２０４の駆動波形選択処理では、シリアル位置毎に適切な駆動波形を選択した図１６（ｂ）に示すようなデータを生成する。
【００９５】
尚、本実施例では３種類の駆動波形を使用可能な場合を説明したが、より多種類の駆動波形の使用が可能な場合は、補正係数の値に応じて更に細かく場合を分けても良いのはもちろんである。更に、後述するように、自由な駆動波形を出力することができる場合には、補正係数に応じて駆動波形を制御することも好適である。
【００９６】
（４）波形選択データ出力処理（ステップＳ２０６）
続く波形選択データ出力処理では、ステップＳ２０４で生成された、シリアル位置毎の駆動波形の類別を示すデータ（図１６（ｂ）参照）を図１１の画像処理ルーチンに出力する。画像処理ルーチンのデータ出力処理（図１１のステップＳ１１２）は、インターレース処理（ステップＳ１０８）がＲＡＭ８３上に展開したドットデータと共に、インク吐出量補正処理（ステップＳ１１０）から受け取った駆動波形の類別を示すデータを、カラープリンタ２０に出力する。カラープリンタ２０の制御回路６０内にあるＣＰＵ６１は、受け取ったデータに基づいて分配出力器６９を制御し、インク吐出ヘッド毎に適切な駆動波形を供給することによって、ドット配列によるインク滴重量の変動を補正する。
【００９７】
Ｄ．インク吐出量補正処理の内容（第２の実施態様）
以上、第１の実施態様では、インク吐出ヘッドに印加する駆動波形を変更することによって、インク滴の大きさを補正しているが、インクドットの形成有無の判断において補正することも可能である。以下に、この第２の態様について説明する。
【００９８】
（１）第２の実施態様におけるインク吐出量補正処理の概要
図１７は、第２の実施態様におけるインク吐出量補正処理の一例としてのフローチャートを示す説明図である。第２の実施態様におけるインク吐出量補正処理においても、第１の実施態様におけるインク吐出量補正処理と同様に、先ずインターレース処理（図１１参照）によってＲＡＭ８３上に展開されたドットデータを読み込み（ステップＳ４００）、読み込んだデータのドット配列を解析する（ステップＳ４０２）。前述したようにドット配列の影響でインク滴重量の変動が生じれば、それに対応して印刷媒体上に表現される階調値に誤差が生じる。第２の実施態様におけるドット配列解析処理では、このようなドット配列の影響によって生じる階調表現の誤差を画素毎に算出している。より詳しくは、先ず、画素毎に補正係数を算出（ステップＳ４０２Ａ）し、この補正係数を元に各画素の階調表現誤差を算出している（ステップＳ４０２Ｂ）。こうして求めた画素毎の階調表現誤差を補償するように、補償ドットの形成判断を行い（ステップＳ４０４）、この補償ドットの形成有無の判断結果を反映させるべく、インターレース処理（図１１参照）がＲＡＭ８３上に展開したドットデータを修正する（ステップＳ４０６）。以下、図１７のフローチャートに従って、各処理の内容を詳しく説明する。
【００９９】
（２）ドットデータ読込処理（ステップＳ４００）
第２の実施態様におけるインク吐出量補正処理においても、ＣＰＵ８１は第１の実施態様における場合と同様に、インターレース処理（図１１参照）においてＲＡＭ８３上に展開されたドットデータを読み込む。但し、第１の実施例で説明した場合とは異なり、第２の実施態様においては大・中・小の各ドットを区別してドットデータを取り込んでいる。これは次の理由によるものである。前述したように第１の実施例においては、算出したインク吐出量の変動を結局駆動波形の選択に反映させているのでインク吐出量の補正精度には限界があり、大・中・小の各ドットを区別して算出精度を向上させる実益に乏しい。これに対して第２の実施態様においては、補償ドットの形成に反映させるので、第１の実施例よりはインク吐出量の補正精度が高く、大・中・小の各ドットを区別して吐出量変動の算出精度を向上させる実益があるためである。
【０１００】
図１８は、第２の実施態様におけるドットデータ読込処理（ステップＳ４００）で読み込まれたドットデータの一例を示したものである。ＲＡＭ８３上に展開されるドットデータはもっと大きなサイズのデータであるが、ここでは説明を簡略化するために、ノズル数８個・シリアル数１０個のデータとして表示している。図中の各画素の記載された数値「０」ないし「３」はそれぞれ以下を示すものである。数値「０」はその画素にはドットが形成されないことを表し、数値「１」は小ドットが形成されることを、数値「２」は中ドットが形成されることを、数値「３」は大ドットが形成されることを示している。
【０１０１】
（３）ドット配列解析処理（ステップＳ４０２）
図１８に示すようなドットデータを読み込むと、ＣＰＵ８１はこのデータを解析して、インク吐出量の変動による階調表現誤差を算出する（ステップＳ４０２）。図１７に示すように、階調表現誤差の算出は、補正係数を算出する処理（ステップＳ４０２Ａ）と補正係数を元に階調表現誤差を算出する処理（ステップＳ４０２Ｂ）の２つの段階を経て行われる。以下、図１９を用いて具体的に説明する。
【０１０２】
初めに行う補正係数算出処理（ステップＳ４０２Ａ）では、各画素の相対駆動周波数と、各シリアル位置での駆動デューティを算出する。相対駆動周波数および駆動デューティの算出方法は、第１の実施態様において説明した方法と同様な方法を適用することができる。すなわち、先に説明したように各ドットの大きさを区別してドットデータを読み込んでいるが（ステップＳ４００）、補正係数の算出（ステップＳ４０２Ａ）に関しては、ドットの大きさを区別せずに処理の簡略化を図っても特に実用上の問題は生じなかった。そこで、以下の補正係数算出処理（ステップＳ４０２Ａ）の説明では、各ドットの大きさを区別せず簡略化した処理を行うものとして説明する。もちろん、各ドットの大きさを区別すれば補正係数の算出精度を向上させることができるので好適である。
【０１０３】
図１８に示したドットデータに対して、各画素の相対駆動周波数と各シリアル位置の駆動デューティを算出すると、図１９（ａ）に示すような結果が得られる。次に、得られた相対駆動周波数と駆動デューティをそれぞれ補正係数の変換する。補正係数への変換は、図２０に示すような変換テーブルを参照することによって行う。図２０（ａ）は、駆動デューティを補正係数に変換するためのテーブルであり、図２０（ｂ）は相対駆動周波数を補正係数に変換するテーブルである。ＣＰＵ８１は、ＲＡＭ８３上に展開されたこのようなテーブルを参照して、それぞれの補正係数に変換する。
【０１０４】
尚、第２の実施態様において、補正係数への変換のために参照されるテーブルは、先に説明した第１の実施態様において、駆動デューティあるいは相対駆動周波数をそれぞれの補正係数に変換するために参照されるテーブル（図１３（ｃ）、図１５（ｂ）参照）とは補正係数の設定の仕方が異なっているので、この点について説明しておく。
【０１０５】
第２の実施態様では、ドット配列によるインク吐出量の変動を、補償ドットを形成することによって補償しようとする。すなわち、インク滴重量が変動して印刷媒体上の表現階調が小さくなった場合であれば補償ドットを形成してこれを補うことができるが、逆に、階調表現が大きくなった場合はこれを補うことはできない。そこで、第２の実施態様においては、印刷媒体上の表現階調が大きめになることのないように、予めインク滴重量が大きい条件を基準としている。例えば図２０（ａ）では、駆動デューティが大きくなるほどインク滴重量は少なくなるが、駆動デューティが小さな条件を基準として、駆動デューティが大きくなるほど補正係数が小さくなるように設定されている。また、図２０（ｂ）では、カラープリンタのもっとも標準的な使用温度であると思われるインク温度２５℃を基準として、各条件における補正係数の値を設定してある。
【０１０６】
このような変換テーブルを参照しながら、図１９（ａ）のデータを補正係数に変換すると図１９（ｂ）に示すような結果を得ることができる。こうして得られた各補正係数は、それぞれ次のような意味を持っている。相対駆動周波数に基づいて各画素毎に求めた補正係数は、連続してインク滴を吐出することによりインク滴重量が減少する割合を表している。また、駆動デューティに基づいてシリアル位置毎に求めた補正係数は、一度に多数のインク滴を吐出することによりインク滴重量が減少する割合を表している。従って、画素毎に求めた補正係数に、そのシリアル位置での補正係数を乗算することにより、相対駆動周波数の影響と駆動デューティの影響を同時に考慮した補正係数を算出することができる。このようにして、図１９（ｂ）の結果から各画素毎に補正係数を求めると図１９（ｃ）に示しような結果を得ることができる。このように、各画素毎の補正係数を算出すると補正係数算出処理（ステップＳ４０２Ａ）を終了して、階調表現誤差算出処理（ステップＳ４０２Ｂ）を開始する（図１７参照）。
【０１０７】
前述のように、ドット配列の影響でインク滴重量に変動が生じると、印刷媒体上に表現される階調値に誤差が生じる。階調表現誤差算出処理（ステップＳ４０２Ｂ）では、ドットデータ読込処理（ステップＳ４００）で読み込んだドットデータと、補正係数算出処理（ステップＳ４０２Ａ）で画素毎に算出した補正係数とに基づき、以下のようにして、かかる画素毎の階調誤差を算出する。
【０１０８】
階調表現誤差算出処理（ステップＳ４０２Ｂ）では、先ず、ドットデータ読込処理（ステップＳ４００）が読み込んだドットデータ（図１８参照）を、階調評価値に変換し、階調評価値に補正係数を乗算して階調表現誤差を算出する。以下、図２１を用いて具体的に説明する。尚、ここでいう階調評価値とは、所定の大きさのインクドットが形成されたときに、その画素に表現される階調値のことである。本実施例においては、大・中・小の３種類のドットを形成しており、各ドットはそれぞれ次のような階調評価値をとる。大ドットの階調評価値は「２５５」、中ドットの階調評価値は「１２８」、小ドットの階調評価値は「６４」、またドットを形成しない場合の階調評価値は「０」となっている。
【０１０９】
図２１（ａ）は、図１８のドットデータを階調評価値に変換した結果を示したものである。ドット配列の影響でインク滴重量が変動を受けることがなければ、各画素には図２１（ａ）に示すような階調値が表現されるはずであったと考えることができる。この値に、補正係数算出処理（ステップＳ４０２Ａ）で画素毎に求めた補正係数を乗算することにより、実際に印刷媒体上に表現される階調値を推定することができる。階調表現誤差算出処理（ステップＳ４０２Ｂ）では、本来表現されるはずであった階調値から実際に表現されると推定される階調値を減算することによって、階調表現誤差を画素毎に算出する。このようにして、図２１（ｂ）に示すような画素毎の階調表現誤差を算出すると、階調表現誤差算出処理（ステップＳ４０２Ｂ）を終了する。
【０１１０】
（４）補償ドット形成判断処理（ステップＳ４０４）
ドット配列解析処理（ステップＳ４０２）で、階調表現誤差が画素毎に求まると、これを補償すべく補償ドットの形成判断を開始する（ステップＳ４０４）。補償ドットの形成判断は、図２２に示すようなマトリックスフィルタを作用させることによって行う。図２２に示したマトリックスフィルタは、Ｆ１１ないしＦ２２の４つの要素を持った、２×２の大きさを有する行列である。尚、マトリックスフィルタの大きさは、図２２に限定されるものではないことはもちろんである。
【０１１１】
図２３は、図２２に示すマトリックスフィルタを作用させて、補償ドットの形成判断を行う流れを示すフローチャートである。以下、図２１（ｂ）の階調表現誤差の算出結果に、図２２のフィルタを作用させる場合を例に挙げつつ、図２３のフローチャートに従って説明する。
【０１１２】
補償ドット形成判断処理を開始すると、ＣＰＵ８１は初めに着目画素位置を初期化する（ステップＳ５００）。着目画素とは補償ドットの形成判断を行おうとする画素のことであり、着目画素位置の初期化とは着目画素の位置をノズル番号１番・シリアル番号１番の画素に設定することを言う。
【０１１３】
着目画素を設定すると、次にマトリックスフィルタを作用させて誤差データを取得する（ステップＳ５０２）。図２１（ｂ）を用いて具体的に説明すると、着目画素はノズル番号１番・シリアル番号１番の位置にあるので、図２２のフィルタのＦ１１をこの位置に設定し、Ｆ１１，Ｆ１２，Ｆ２１，Ｆ２２の各位置での階調誤差を、「０」，「２」，「０」，「０」をそれぞれ取得する。
【０１１４】
次いで、Ｆ１１ないしＦ２２の各位置での階調誤差を加算して着目画素位置のフィルタ値を算出する（ステップＳ５０４）。先程の例では、フィルタ値Ｆｖは、０＋２＋０＋０＝２と算出される。このフィルタ値Ｆｖとの値を、大ドットの形成有無を判断するための閾値ｔｈｌ、中ドットの形成有無判断のための閾値ｔｈｍ、小ドットの形成有無判断のための閾値ｔｈｓと比較することにより、注目画素に形成すべき補償ドットの種類を判断する（ステップＳ５０６）。フィルタ値Ｆｖが小ドット用の閾値ｔｈｓより小さい場合は、着目画素には補償ドットを形成しないと判断し、補償ドット形成の判断結果を示す値Ｃｃｄにドットを形成しないことを示す値「０」を代入する（ステップＳ５０８）。フィルタ値Ｆｖが閾値ｔｈｓより大きいが閾値ｔｈｍより小さい場合は、着目画素には補償ドットとして小ドットを形成すると判断して、Ｃｃｄに小ドットを形成することを表す値「１」を代入する（ステップＳ５１０）。フィルタ値Ｆｖが閾値ｔｈｍより大きく閾値ｔｈｌより小さい場合には中ドットを形成すると判断し、Ｃｃｄに中ドットの形成を意味する値「２」を代入し（ステップＳ５１２）、フィルタ値Ｆｖが閾値ｔｈｌより大きい場合には、大ドットを形成することを意味する値「３」を代入する（ステップＳ５１４）。各閾値の値は、印刷画質を見ながら最終的に調整されるが、ここでは、大・中・小の各ドット用の閾値ｔｈｌ・ｔｈｍ・ｔｈｓとして、それぞれ１９２，９６，３２の値が設定されている。先程の例では、Ｆｖ＝２であるので、この着目画素には補償ドットを形成しないものと判断し、Ｃｃｄに「０」を代入する。
【０１１５】
１つの着目画素について補償ドットの形成有無を判断したら、全データの処理を終了したか否かを判断し（ステップＳ５１６）、終了していない場合は着目画素の位置を移動する（ステップＳ５１８）。ここでは、マトリックスフィルタは２×２の大きさであるので、着目画素は２画素分移動して、ノズル番号１番・シリアル番号３番の画素に移動する。また、着目画素が右端まで移動している場合、すなわちノズル番号１・シリアル番号９番の画素にある場合は、ノズル番号３番・シリアル番号１番の画素に移動する。こうして、新たな着目画素について、ステップＳ５０２に続く一連の処理を行い、全てのデータについて処理を完了すると、補償ドット形成判断処理（図１７のステップＳ４０４）を抜けて、インク吐出量補正処理に戻る。以上、第２の実施例におけるドット配列解析処理（図１７のステップＳ４０２）では、図１８に示すようなドットデータを読み込んで、各画素毎に補償ドットの形成有無を判断し、最終的には図２４に示すようなデータが得られることになる。
【０１１６】
（５）ドットデータ修正処理（ステップＳ４０６）
図１７のフローチャートに示すように、ドット配列処理（ステップＳ４０２）を終了すると、続いてＣＰＵ８１はドットデータ修正処理を開始する（ステップＳ４０４）。この処理は、図２４にように判断された補償ドットを形成すべく、画像処理ルーチン中のインターレース処理（図１１参照）が生成したドットデータを修正する処理である。本実施例では、インターレース処理が生成したドットデータ（通常ドットのデータ）の後ろに補償ドットのデータを追加し、通常ドットを形成した後（ただし副走査を行う前）に別途補償ドットを形成している。このように、通常ドットを補償ドットを別々に形成する理由は、次のようなものである。
【０１１７】
補償ドットを形成するのは、ドット配列の影響によるインク滴重量の変動を補正するためである。補償ドットを通常ドットと同時に形成したのでは、その補償ドットの算出の前提となったドット配列が変更されてしまうので、ドット配列によるインク滴重量の変動を正しく補正することができなくなる。このため、補償ドットの形成に際しては、補償ドットの形成がインク滴重量の変動に影響を与えないようにするための、複雑なデータ処理を行う必要が生じる。ところが、本実施例のように、通常ドットの形成後かつ副走査する前に、改めて補償ドットを形成することにすれば、複雑なデータ処理を行うことなく、補償ドットを形成することができる。
【０１１８】
もっとも、キャリッジの往動と復動のどちらでもドットを形成可能な場合は、補償ドットをまとめて復動時に形成するようにしてもよい。こうすれば、補償ドットの形成に要する時間を短縮化することができる。
【０１１９】
Ｅ．補正係数の実測方法
以上説明してきた第１の実施態様あるいは第２の実施態様のいずれにおいても、駆動デューティあるいは相対駆動周波数に対する補正係数は予め設定されているものとして説明したきた。以下では、これら補正係数を実測する方法について説明する。
【０１２０】
図２５は、インク吐出量を実測するための装置構成を、概念的に示した説明図である。図示するように、計測装置は、インク滴を吐出するヘッド２００と、ヘッドに駆動信号を供給しつつヘッドの制御を行う制御装置２０１と、ヘッド２００へインクを供給するインクカートリッジ２０２ないし２０４と、専用の記録用紙２０９と、印刷画像のインク濃度を読み取る光学的読み取り装置２１０、あるいはインクカートリッジの重量減少を高精度に計測する電子天秤２０５ないし２０７とから構成されている。３つのインクカートリッジ２０２・２０３・２０４は、カートリッジ内のインク温度がそれぞれ１０℃・２５℃・４０℃に保たれていて、切り換え弁２０８を操作することにより、ヘッドに供給するインク温度を切り換えられるようになっている。制御装置２０１は、予め定められたパターンでヘッド２００を駆動して、専用用紙上に所定の画像を印刷する。本計測装置ではヘッド２００は主走査・副走査を行うことができないが、代わりに、専用用紙を移動可能なステージ（図示省略）にセットしておき、このステージを主走査方向・副走査方向に移動させることによって用紙上に画像を印刷する。このステージの制御も制御装置２０１が行っている。
【０１２１】
ヘッド２００が印刷する所定画像の一例を、図２６に示す。図示した例では、インク温度１０℃・２５℃・４０℃の各条件毎に、予め選択された２種類のドットパターンで印刷された各画像が印刷されている。つまり、図２６の例では、インクの供給に関わる条件を６通りの組合せに変更して、それぞれの画像が１枚の用紙上に印刷されていることになる。各条件でのインク滴重量を計測する際には、インクカートリッジ内のインク残量やインク種類等の他の条件を変更しながら、図２６に示すような画像を印刷するのである。
【０１２２】
１つの条件での印刷が終了する度に、インクを供給したインクカートリッジの重量減少量を計測し、計測された減少量をインク滴数で除算すれば、その条件でのインク滴重量（インク滴１滴当たりの重量）を求めることができる。吐出されるインク滴数は、所定画像毎に決まっているので、予め計測しておけばよい。こうにして、インク温度および形成されるドット配列を変更しながら、各条件におけるインク滴重量を計測し、この計測値を基に、各条件での補正係数を求めている。
【０１２３】
また、光学的読み取り装置２１０により、専用用紙上に印刷された所定画像のインク濃度を計測して、各種補正係数を求めることも可能である。すなわち、図２６の例に示すように、ヘッド２００が印刷する画像の面積は一定であり、各画像のインク濃度はインク吐出重量と正比例する。従って、インク濃度を計測し、インク濃度の比からインク吐出重量の比を求めるのである。尚、インク濃度の計測に際しては、次のような理由から専用用紙を使用することが好ましい。光学的読み取り装置２１０は、基準光源の光を投射して印刷画像からの反射光強度を計測している。すなわち、画像のインク濃度が高いほど用紙上の染料濃度が高くなり、染料濃度が高いほど印刷画像の反射率は低くなるので、光学的読み取り装置２１０は反射光強度を測定し、反射率を求めることによってインク濃度を計測しているのである。ところが、インクには染料の他にもアルコール等の各種溶媒が含まれており、インク吐出量が多くなると、これら溶媒の影響で印刷用紙の表面が毛羽立つ等して反射率が変化するため、インク濃度の計測値に誤差が混入することがある。そこで、かかる誤差の混入をできるだけ避けるため、溶媒による表面状態の変化が小さい専用用紙を使用することが好ましいのである。
【０１２４】
Ｆ．第３の実施態様
以上説明してきた実施態様においては、駆動波形は予め設定されており、ピエゾ素子ＰＥに印加する駆動波形そのものを直接制御することはしていない。しかし、折に触れて指摘している通り、補正係数に基づいて駆動波形そのものを直接制御すれば、インク滴重量の変動を精度良く補正することができるので好適である。そこで、駆動波形を直接制御する方法について、以下に説明しておく。
【０１２５】
図２７は、駆動波形の最小単位（以下、駆動波形ＣＯＭ）を概念的に示したものである。ピエゾ素子ＰＥに印加される駆動波形は、このような最小単位の駆動波形ＣＯＭにより構成されているので、かかる駆動波形ＣＯＭの波形を制御することによって、ピエゾ素子ＰＥに印加される波形を自由に制御することが可能となる。
【０１２６】
図２７に示すように、駆動波形ＣＯＭは大きく４つの領域から構成されている。はじめに中間電位Ｖｍを所定時間だけ維持した後（ホールドパルスＰ１１３）最低電位Ｖｌｓまで一定の勾配で下降する第１の領域（放電パルスＰ１１４）と、この最低電位Ｖｌｓを所定時間だけ維持する第２の領域（ホールドパルスＰ１１５）と、続いて最高電位Ｖｐまで一定の勾配で上昇し所定時間だけ保持する第３の領域（充電パルス１１６）と、再び中間電位Ｖｍまで再び下降する第４の領域（放電パルス１１７）の４つの領域である。
【０１２７】
図２８は、このような駆動波形ＣＯＭを生成するための発振器７００の構成を示すブロック図である。尚、このような発振器７００を使用する場合は、図８に示した発振器７０に代えて発振器７００を装着する。また、図２９は、発振器７００が駆動波形ＣＯＭに含まれる各パルスを生成していく過程を示す説明図である。図３０は、発振器７００においてデータ信号を用いてメモリ７８１にスルーレートを設定する場合の各信号のタイミングチャートである。ここでスルーレートとは、駆動波形ＣＯＭを構成する前述した４つの領域において、出力電圧の単位時間当たりの増加量あるいは減少量を示す値である。
【０１２８】
図２８に示すように、発振器７００は、メモリ７８１と、第１のラッチ７８２と、加算器７８３と、第２のラッチ７８４と、Ｄ／Ａ変換器７８６と、電圧増幅部７８８と、電流増幅器７８９とから構成されている。メモリ７８１は図８に示す制御回路のＣＰＵ６１から受け取った信号を記憶し、第１のラッチ７８２はメモリ７８１が記憶している信号を読み出して一時的に保持しておく。加算器７８３は、第１のラッチ７８２の出力と第２のラッチ７８４の出力との加算を行い、加算器７８３の出力は第２のラッチ７８４に一時的に保持される。つまり、第１のラッチ７８２の出力（すなわちメモリ７８１がＣＰＵ６１から受け取った信号）は、加算器７８３によって次々と加算され第２のラッチ７８４に累積していくことになる。この第２のラッチ７８４の出力は、Ｄ／Ａ変換器７８６でデジタルデータからアナログデータに変換され、次いで電圧増幅部７８８で駆動波形の電圧まで増幅され、電流増幅器７８９で電流を増幅されて駆動波形ＣＯＭとして出力される。
【０１２９】
以下、発振器７００が駆動波形ＣＯＭを出力する動作について説明する。ＣＰＵ６１はメモリ７８１に対して、３種類のクロック信号８０１・８０２・８０３と、データ信号８３０と、リセット信号８２０と、４本のアドレス信号８１０・８１１・８１２・８１３とを出力する。アドレス信号８１０ないし８１３は４ビット幅のアドレスバスを構成している。
【０１３０】
発振器７００は、駆動波形ＣＯＭの出力に先立って、スルーレートを設定する。図３０は、スルーレートの設定動作について説明した説明図である。ＣＰＵ６１はクロック信号８０１と１ビットのデータ信号８３０とを用いて、スルーレートのデータをメモリ７８１にシリアル転送する。１つのデータを転送し終わると、ＣＰＵ６１はデータを格納するアドレスを出力し、続いてイネーブル信号を出力する。メモリ７８１は、イネーブル信号が出力されたタイミングでアドレスを受け取り、そのアドレスにシリアル転送されたスルーレートのデータを書き込む。このような手順を繰り返すことにより、必要な種類のスルーレートを設定する。アドレスバスは４ビット幅を有しているので最大１６種類のスルーレートをメモリ７８１に記憶することができる。尚、スルーレートの最上位ビットは符号として使用されている。
【０１３１】
各アドレスＡ、Ｂ、Ｃ・・・へのスルーレートの設定が終了した後、アドレス信号８１０〜８１３（４ビット幅のアドレスバス）にアドレスＢが出力されると、アドレスＢに格納されたスルーレートがクロック信号８０２によって第１のラッチ７８２に保持される。次いでクロック信号８０３が出力されると、第１のラッチ７８２に保持された出力と第２のラッチ７８４の出力とが加算器７８３で加算され第２のラッチ７８４に保持される。すなわち図２９に示すように、一旦、アドレス信号に対応したスルーレートが選択されると、その後、クロック信号８０３を受け取る度に、第２のラッチ７８４の出力は選択されたスルーレートに従って増減する。アドレスＢに格納されたスルーレートは、単位時間ｄＴ当たりの電圧ｄＶ１だけ電圧を上昇させたことに対応した値となっている。電圧が増加するのか減少するのかは、各アドレスに格納されたデータの付号によって決定される。アドレス信号８１０から８１３によって選択されたアドレスに、正のデータが格納されていれば電圧は増加し、負のデータが格納されていれば電圧は減少する。
【０１３２】
図２９に示した例では、アドレスＡにはスルーレートとして値０、すなわち、電圧を維持することを意味する値が格納されている。従って、クロック信号８０２によりアドレスＡが選択されると、駆動信号の波形は増減のないフラットな状態に保たれる。また、アドレスＣには、単位時間ｄＴ当たりの電圧をｄＶ２だけ低下させることを意味するスルーレートが格納されている。従って、クロック信号８０２によってアドレスＣが選択されると、ｄＶ２ずつ電圧が低下していくことになる。このように、各アドレスに適切なスルーレートを予め設定しておき、アドレス値を次々と指定していくことによって、任意の駆動波形ＣＯＭを出力することができる。
【０１３３】
以上、各種の実施例について説明してきたが、本発明は上記すべての実施例に限られるものではなく、その要旨を逸脱しない範囲において種々の態様で実施することができる。例えば、上述の機能を実現するソフトウェアプログラム（アプリケーションプログラム）を、通信回線を介してコンピュータシステムのメインメモリまたは外部記憶装置に供給し実行するものであってもよい。
【図面の簡単な説明】
【図１】本実施例の印刷装置の概略構成図である。
【図２】ソフトウェアの構成を示す説明図である。
【図３】本実施例のプリンタの概略構成図である。
【図４】本実施例のプリンタにおけるドット形成原理を示す説明図である。
【図５】本実施例のプリンタにおけるノズル配列を示す説明図である。
【図６】本実施例のプリンタにより大きさの異なるドットを形成する原理を説明する説明図である。
【図７】本実施例のプリンタにおけるノズルの駆動波形および該駆動波形により形成されるドットの様子を示す説明図である。
【図８】本実施例のプリンタの制御装置の内部構成を示す説明図である。
【図９】本実施例のプリンタで駆動波形の発生方法を概念的に示す説明図である。
【図１０】本実施例のプリンタヘッドが駆動バッファからデータを受けてドットを形成する様子を示す説明図である。
【図１１】本実施例における画像処理ルーチンの流れを示すフローチャートである。
【図１２】第１の実施態様におけるインク吐出量補正処理の流れを示すフローチャートである。
【図１３】第１の実施態様におけるドット配列解析処理の内容を具体的に説明する説明図である。
【図１４】第１の実施態様のドット配列解析処理において相対駆動周波数に基づいて補正係数を算出する処理の流れを示すフローチャートである。
【図１５】第１の実施態様のドット配列解析処理において相対駆動周波数に基づいて補正係数を算出する処理を具体的に説明する説明図である。
【図１６】第１の実施態様の駆動波形選択処理の内容を具体的に説明する説明図である。
【図１７】第２の実施態様におけるインク吐出量補正処理の流れを示すフローチャートである。
【図１８】第２の実施態様のドットデータ読込処理で読み込まれるドットデータの一例を示した説明図である。
【図１９】第２の実施態様の補正係数算出処理の内容を具体的に説明する説明図である。
【図２０】第２の実施態様の補正係数算出処理で参照される補正係数の一例を示した説明図である。
【図２１】第２の実施態様の階調表現誤差算出処理の内容を具体的に説明する説明図である。
【図２２】第２の実施態様の補償ドット形成判断処理の内容を具体的に説明する説明図である。
【図２３】第２の実施態様における補償ドット形成判断処理の流れを示すフローチャートである。
【図２４】第２の実施態様の補償ドット形成判断処理において判断された補償ドットの一例を示す説明図である。
【図２５】本実施例において各種の補正係数を実測する方法を説明する説明図である。
【図２６】補正係数の実測するために専用用紙に印刷される画像の一例を示す説明図である。
【図２７】第３の実施態様における駆動波形の構成を示す説明図である。
【図２８】第３の実施態様における発振器の構成を示す説明図である。
【図２９】第３の実施態様における発振器が駆動波形を出力するタイミングを示す説明図である。
【図３０】第３の実施態様における発振器がスルーレートを設定する動作を説明する説明図である。
【図３１】インク吐出機構の代表的な構成を概念的に示す説明図である。
【符号の説明】
２０…カラープリンタ
２１…カラースキャナ
２３…ＣＲＴ
２４…モデム
２５…フレキシブルディスクドライブ
２６…ハードディスク
３０…キャリッジモータ
３１…駆動ベルト
３２…プーリ
３３…摺動軸
３４…位置検出センサ
３５…紙送りモータ
３６…プラテン
３７…温度センサ
３８…光学的センサ
４０…キャリッジ
４１…ＣＰＵ
４１…印字ヘッド
４２、４３…インクカートリッジ
４４〜４７…インク吐出用ヘッド
５０…インク通路
５５…突起部
５６…識別ラベル
５８…インク残量表示パネル
５９…操作パネル
６０…制御回路
６１…ＣＰＵ
６２…ＰＲＯＭ
６３…ＲＡＭ
６４…ＰＣインターフェース
６５…ＰＩＯ
６６…タイマ
６７…駆動バッファ
６８…バス
６９…分配出力器
７０…発振器
７１…接点スイッチ
８０…コンピュータ
８１…ＣＰＵ
８２…ＲＯＭ
８３…ＲＡＭ
８４…入力インターフェース
８５…出力インターフェース
８６…ＣＲＴＣ
８７…ＤＤＣ
８８…ＳＩＯ
８９…バス
９０…ビデオドライバ
９１…アプリケーションプログラム
９２…プリンタドライバ
９３…解像度変換モジュール
９４…色変換モジュール
９５…ハーフトーンモジュール
９６…インターレースモジュール
９７…データ入出力モジュール
１００…インク残量監視モジュール
１０１…供給条件検出モジュール
１０２…インク滴数計数モジュール
１０３…インク吐出量算出モジュール
１０４…インク残量監視モジュール
１１０…簡易スキャナドライバ
１５０…作業用メモリ
１６０…インク収容量記憶部
１６１…インク使用量記憶部
１６２…インク滴重量記憶部
１６３…供給条件記憶部
１６４…補正係数記憶部
１６５…インク滴数計数部
２００…ヘッド
２０１…制御装置
２０２〜２０４…インクカートリッジ
２０５〜２０７…電子天秤
２０８…切り換え弁
２０９…記録用紙
２１０…光学的読み取り装置
【図１】
0003835045.tif 000002
【図２】
0003835045.tif 000003
【図３】
0003835045.tif 000004
【図４】
0003835045.tif 000005
【図５】
0003835045.tif 000006
【図６】
0003835045.tif 000007
【図７】
0003835045.tif 000008
【図８】
0003835045.tif 000009
【図９】
0003835045.tif 000010
【図１０】
0003835045.tif 000011
【図１１】
0003835045.tif 000012
【図１２】
0003835045.tif 000013
【図１３】
0003835045.tif 000014
【図１４】
0003835045.tif 000015
【図１５】
0003835045.tif 000016
【図１６】
0003835045.tif 000017
【図１７】
0003835045.tif 000018
【図１８】
0003835045.tif 000019
【図１９】
0003835045.tif 000020
【図２０】
0003835045.tif 000021
【図２１】
0003835045.tif 000022
【図２２】
0003835045.tif 000023
【図２３】
0003835045.tif 000024
【図２４】
0003835045.tif 000025
【図２５】
0003835045.tif 000026
【図２６】
0003835045.tif 000027
【図２７】
0003835045.tif 000028
【図２８】
0003835045.tif 000029
【図２９】
0003835045.tif 000030
【図３０】
0003835045.tif 000031
【図３１】
0003835045.tif 000032