以下、本発明の実施形態について、図面を参照して説明する。まず、図1を参照して、印刷装置30及び印刷装置30に接続されたパーソナルコンピュータ(以下、PCという)1を含む印刷システム100について説明する。印刷装置30及びPC1は、ケーブルを介して相互に接続されている。印刷装置30は公知の布帛用インクジェットプリンタであり、印刷ヘッド35(図2参照)によって、印刷媒体である布帛に印刷を行うことができる。PC1は、汎用の情報処理装置である。PC1には、表示機器であるモニタ2と、入力機器であるキーボード3及びマウス4とが接続されている。PC1は、後述する印刷データを作成し、ケーブルを介して、印刷装置30に送信する機能を有する。印刷装置30は、PC1から送信された印刷データに基づき、印刷ヘッド35の底面に設けられた吐出口群361に液体(例えば、インク)を吐出させる印刷処理を実行する機能を有する。
図1,図2及び図3を参照して、印刷装置30ついて説明する。なお、図1の左下側及び右上側は、夫々、印刷装置30の正面側及び背面側である。図1の左右方向及び上下方向は、夫々、印刷装置30の左右方向及び上下方向である。
まず、図1及び図2を参照して、印刷装置30の物理的な構成について説明する。図1に示すように、印刷装置30は、矩形箱状の筐体31を有する。筐体31の内部の左右方向略中央下部に、一対のガイドレール37が前後方向に延びている。プラテン支持台38は、ガイドレール37により、ガイドレール37に沿って前後方向(副走査方向)に搬送可能に支持されている。プラテン支持台38上面の左右方向略中央には、取り換え可能なプラテン39が固定されている。プラテン39は、平面視略五角形の板体であり、その上面に、例えば、印刷媒体であるTシャツ等の布帛を載置するためのものである。詳細は図示しないが、プラテン39が固定されたプラテン支持台38は、副走査モータ56(図3参照)及びベルトを含む副走査機構によって副走査方向に搬送される。
筐体31の前後方向略中央、且つ、プラテン39よりも上方に、一対のガイドレール33が左右方向に延びている。キャリッジ34は、ガイドレール33によって、ガイドレール33に沿って左右方向(主走査方向)に搬送可能に支持されている。キャリッジ34には、複数の印刷ヘッド35(図2参照)が搭載されている。複数の印刷ヘッド35の配置については、図2を参照して後述する。詳細は図示しないが、複数の印刷ヘッド35を備えたキャリッジ34は、主走査モータ83(図3参照)及びベルトを含む主走査機構によって主走査方向に搬送される。
図2を参照して、キャリッジ34の構成について説明する。図2に示すように、本実施形態におけるキャリッジ34には、4個の印刷ヘッド35W並びに印刷ヘッド35C,35M,35Y,及び35Kが搭載されている。以下の説明では、4個の印刷ヘッド35W並びに印刷ヘッド35C,35M,35Y,及び35Kの夫々を印刷ヘッド35とも言う。各印刷ヘッド35の底面には複数の吐出口36が設けられている。本実施形態では、印刷ヘッド35の夫々に128個の吐出口36が設けられているが、図2では、図の簡略化のため、実際の個数よりも少ない数の吐出口36が図示されている。各吐出口36は、液体を吐出可能である。詳細は図示しないが、印刷装置30に装着されたインクカートリッジから印刷ヘッド35に供給されたインクは、吐出チャンネルに設けられた圧電素子の駆動によって、各吐出口36から下向きに吐出される。なお、印刷ヘッド35に供給されたインクは、吐出チャンネルに設けられた発熱体等の駆動によって、吐出口36から下向きに吐出されてもよい。
複数の吐出口36は、第一ユニット351と、第二ユニット352とにグループ化される。第一ユニット351は、前処理用の白インクを吐出する4組の吐出口群361Wを備える。4組の吐出口群361Wは夫々、4個の印刷ヘッド35Wの底面に設けられている。即ち、本実施形態では、1個の印刷ヘッド35の底面に設けられている複数の吐出口36が、1組の吐出口群361を構成する。4組の吐出口群361W(4個の印刷ヘッド35W)は夫々、主走査方向に並べて配置されている。
第二ユニット352は、第一ユニット351と、副走査方向において対向して離間した位置に配置されている。第二ユニット352は、前処理用の白インクの吐出よりも後に行われる後処理用のカラーインクを吐出する4組の吐出口群361C,361M,361Y,及び361Kを備える。4組の吐出口群361C,361M,361Y,及び361Kは夫々、印刷ヘッド35C,35M,35Y,及び35Kの底面に設けられている。4組の吐出口群361C,361M,361Y,及び361Kは、主走査方向に並べて配置されている。吐出口群361Cはシアンインクを吐出する。吐出口群361Mはマゼンタインクを吐出する。吐出口群361Yはイエローインクを吐出する。吐出口群361Kは黒インクを吐出する。
前処理用の白インク、後処理用のカラーインクとは、同じ所定の印刷領域に先にインクの吐出を行うのが前処理用の白インクで、前処理用の白インクよりも後にインクの吐出を行うのが後処理用カラーインクである。本実施形態では、前処理用の白インクを吐出する4組の吐出口群361Wと、後処理用のカラーインクを吐出する吐出口群361C,361M,361Y,及び361Kとが副走査方向に対向して離間して配置されている。印刷装置30は、例えば、図4を参照して後述する印刷処理において、主走査方向(左右方向)における1ラインの印刷後に、プラテン39を副走査方向(前後方向)に移動させて1ラインの印刷を繰り返す。このような印刷処理において、印刷装置30は、所定の領域では、前処理用の第一ユニット351の4組の吐出口群361Wと、後処理用の第二ユニット352の吐出口群361C,361M,361Y,及び361Kとから同時に各色インクの吐出を行う。所定の領域は、前処理用インクを既に吐出した領域に、後処理用インクを吐出する領域である。なお、1ラインの印刷とは、1回(1パス)の走査によって印刷される画像の印刷に対応する。
以下の説明において、4組の吐出口群361W,並びに吐出口群361C,361M,361Y,及び361Kの夫々を吐出口群361とも言う。また、第一ユニット351及び第二ユニット352のように、吐出口36を複数有する少なくとも1組の吐出口群361を吐出ユニットとも言う。本実施形態では、同一の吐出口群361に含まれる複数の吐出口36の夫々は、同一のインクカートリッジから供給されるインクを吐出する。
なお、本実施形態の印刷装置30は、少なくとも2組の吐出口群361を備えていればよく、吐出口群361の種類及び数の夫々は、図2に示す例に限られない。例えば、白インクに対応する吐出口群361の数は、4組でなく1組だけでもよいし、白インクに対応して複数の吐出口群361がキャリッジ34に搭載される場合、その一部を用いて印刷が実行されてもよい。また、カラーインクについては、黒以外の3色(シアン、マゼンタ、イエロー)に対応する3組の吐出口群361が設けられてもよいし、シアン、マゼンタ、イエロー、黒のうちいずれか1色に対応する1組の吐出口群361が設けられてもよい。シアン、マゼンタ、イエロー、黒以外(例えば、ゴールド、シルバー等)のインクを吐出可能な吐出口群361が設けられてもよい。
また、前処理用インク及び後処理用インクに関して、印刷画像によっては、必ずしも前処理用の白インクが吐出された後に、後処理用のカラーインクが吐出されなくてもよい。より具体的には、前処理用の白インクのみが吐出された領域、又は後処理用のカラーインクのみが吐出された領域があってもよい。また、本実施形態では、前処理用の液体として白インク、後処理用の液体としてカラーインクが使用されているが、前処理用の液体と後処理用の液体との組み合わせ及び液体の種類等は適宜変更可能であり、本実施形態の場合に限定されない。例えば、前処理用の液体として、インクの定着をよくするための処理剤、後処理用の液体としてカラーインクが使用されてもよい。例えば、抜染印刷において、前処理用の液体として抜染用の処理剤、後処理用の液体として抜染用のインクが使用されてもよい。他の例では、前処理用の液体と後処理用の液体とが同じ種類の液体であってもよい。
図3を参照して、印刷装置30の電気的構成について説明する。印刷装置30は、第一制御部40と、第二制御部70及び第三制御部90とが、USBハブ61を介して接続された構成を有する。第一制御部40は、印刷装置30の制御を司るCPU41を備える。CPU41は、印刷装置30が有する第一のプロセッサであり、CPU41には、ROM42,RAM43,第二搬送駆動部51,表示制御部52,入力検知部53,及びUSB(Universal Serial Bus)ホストコントローラ60が、バス44を介して接続されている。CPU41は、後述するように、ROM42に記憶されているプログラムを実行することにより、第一位置取得部45,制御データ出力部47及び第二搬送制御部48として機能する。第一位置取得部45は、キャリッジ34の現在位置を取得する。制御データ出力部47は、吐出制御部毎に印刷データを出力する。第二搬送制御部48は、第二搬送駆動部51を制御してプラテン39を搬送させる。
ROM42には、印刷装置30の動作を制御するための印刷制御プログラム等の各種プログラム、各種初期値等が記憶されている。RAM43には、PC1から受信した印刷データ等の各種データが一時的に記憶される。本実施形態の印刷データは、第二制御部70に接続された第一ユニット351の4組の吐出口群361Wによって白インクを吐出するためのデータと、第三制御部90に接続された第二ユニット352の4組の吐出口群361C,361M,361Y,及び361Kによってカラーインクを吐出するためのデータとの双方を指す。より具体的には、印刷データは、4組の吐出口群361Wの夫々から白インクを吐出させる際の1回当たりの吐出量及び吐出位置を示すデータと、4組の吐出口群361C,361M,361Y,及び361Kの夫々からカラーインクを吐出させる際の1回当たりの吐出量及び吐出位置を示すデータとを含む公知のデータである。1回当たりの吐出量は、「1:吐出する」「2:吐出しない」の2値で表される他、3値以上のデータによって表されてもよい。吐出位置は、キャリッジ34の現在位置と対応している。
第二搬送駆動部51は、プラテン39を副走査方向に搬送させる副走査モータ56を駆動する。表示制御部52は、CPU41からの指示に応じてディスプレイ57の表示を制御する。入力検知部53は、操作ボタン58を介して入力された情報及び指示を検知する。なお、図示は省略するが、操作ボタン58には、例えば、図4を参照して後述する印刷処理の開始指示を入力するための印刷開始ボタン、印刷処理の中止指示を入力するための印刷中止ボタン、数値を入力するためのテンキー等が含まれる。ユーザは、操作ボタン58から各種情報及び指示を入力できる。USBホストコントローラ60は、USB2.0規格に適合するホストコントローラである。
USBホストコントローラ60には、USBハブ61が接続されている。USBハブ61は、1つの第一接続口62,第二接続口63,64,及び第三接続口65を有する接続機器である。第一接続口62は、アップストリーム側のポートであり、USBホストコントローラ60及びバス44を介してCPU41と接続可能である。2つの第二接続口63及び64は、ダウンストリーム側のポートであり、夫々第二制御部70,及び第三制御部90に接続している。具体的には、第二接続口63は、USBコントローラ72を介してCPU71と接続可能である。第二接続口64は、USBコントローラ92を介してCPU91と接続可能である。第三接続口65は、ダウンストリーム側のポートであり、外部機器であるUSBデバイス110と接続可能である。USBデバイス110は、例えば、USBフラッシュメモリ、及びハードディスクである。USBハブ61の第三接続口65に接続されているUSBデバイス110は、USBハブ61から取り外し可能である。USBハブ61の第二接続口及び第三接続口の数は、USBハブ61に接続される機器の数に応じて適宜変更可能である。印刷装置30に接続可能なUSBデバイスの数は、適宜変更されてよい。
なお、本実施形態では、USBハブ61の第二接続口63,64に接続されている第二制御部70及び第三制御部90については、ユーザが印刷装置30を使用中に取り外すことを想定していない。しかしながら、印刷装置30のバージョンアップ等の仕様の変更に伴い、8組の吐出口群361とは別の吐出口群を制御する他の吐出制御部を第二接続口に接続してもよい。例えば、後処理用のカラーインクの吐出口群361C,361M,361Y,及び361Kに加えて、後処理用のカラーインクの種類を増やすために、ライトシアンを吐出する吐出口群、ライトマゼンタを吐出する吐出口群、イエローを吐出する吐出口群、ブラックを吐出する吐出口群等を制御する第四制御部を、USBハブ61の別の第2接続口を介して接続してもよい。また、例えば、抜染印刷用の前処理剤を吐出する吐出口群を制御する第五制御部と、抜染印刷用の後処理用のカラーインクを吐出する吐出口群を制御する第六制御部とを、第二制御部70及び第三制御部90と夫々置き換えて、USBハブ61の第二接続口に接続してもよい。このように印刷装置30では、機能を拡充する場合には、対応する吐出口群とその吐出口群を制御する吐出制御部とを含む制御部をUSBハブ61の第二接続口を介してCPU41と接続すればよい。このため印刷装置では、第一制御部40のROM42のプログラム等を大きく変更することなく、また、ユーザが印刷装置30を別の印刷装置に変更することなく、印刷装置30の機能を拡充したりする等の変更が可能である。
USBハブ61は、USBハブコントローラ66を備える。USBハブコントローラ66は、第二接続口63,64,及び第三接続口65に接続されたUSBデバイスの検知、データの伝送速度の検知、データの伝送速度の変換、データの分配、及びUSBデバイスへの電源供給の管理等を行なう。USBハブコントローラ66は、USBホストコントローラ60からの指示に従い、複数の第二接続口63,64,及び第三接続口65のうちの1つと第一接続口62とをデータ伝送可能に接続し、当該複数の第二接続口63,64,及び第三接続口65のうちの1つに接続されたUSBデバイスと、第一接続口62に接続されたUSBホストコントローラ60との間でデータの送受信を実行する。
第二制御部70は、System−on−a−chip(SoC)上に搭載された、CPU71,USBコントローラ72,第一搬送駆動部73,及び第一吐出駆動部74を備える。CPU71は、CPU41から出力されたデータ及び後述するROM84に記憶されているプログラムに従って第二制御部70の制御を司る、印刷装置30が備える第二のプロセッサである。CPU71は、USBコントローラ72,第一搬送駆動部73,及び第一吐出駆動部74の夫々と電気的に接続されている。CPU71は、後述するように、ROM84に記憶されているプログラムを実行することにより、第二位置取得部76,第一搬送制御部77及び第一吐出制御部78として機能する。第二位置取得部76は、キャリッジ34の現在位置を取得する。第一搬送制御部77は、第一搬送駆動部73を制御してキャリッジ34を搬送させる。第一吐出制御部78は、制御データ出力部47が出力する印刷データに基づき、第一ユニット351の4組の吐出口群361Wによる白インクの吐出を制御する。
USBコントローラ72は、USB2.0規格に適合するコントローラであり、USBハブ61の第二接続口63に接続されている。USBコントローラ72は、USBハブ61の第一接続口62に接続された第一制御部40との間でデータの送受信を行う。第一搬送駆動部73は、キャリッジ34を主走査方向に搬送させる主走査モータ83を駆動する。第一吐出駆動部74は、4組の吐出口群361Wの各吐出チャンネルに設けられた圧電素子(図示略)を駆動して、第一ユニット351が有する4組の吐出口群361Wの夫々に白インクを吐出させる。第二制御部70はさらに、CPU71と接続されたROM84及びRAM85を備える。ROM84は、第二制御部70の動作を制御するための印刷制御プログラム等の各種プログラム、及び各種初期値等が記憶されている。RAM85には、CPU41から受信した印刷データ等の各種データが一時的に記憶される。CPU41と、第二制御部70とは、第一制御部40側のバス44,USBホストコントローラ60,及びUSBハブ61を介して電気的に接続される。さらにCPU41と、第二制御部70とは、他の構成要素を介さずに、第一信号線121を介して直接電気的に接続されている。
第三制御部90は、第二制御部70のSoCとは別のSoCに搭載されたCPU91,USBコントローラ92,及び第二吐出駆動部93を備える。CPU91は、CPU71と同様にCPU41から出力されたデータ及び後述するROM87に記憶されているプログラムに従って第三制御部90の制御を司る、印刷装置30が備える第二のプロセッサである。CPU91は、USBコントローラ92及び第二吐出駆動部93と接続されている。CPU91は、後述するように、ROM87に記憶されているプログラムを実行することにより、第二位置取得部94及び第二吐出制御部95として機能する。第二位置取得部94は、キャリッジ34の現在位置を取得する。第二吐出制御部95は、第二ユニット352の4組の吐出口群361C,361M,361Y及び361Kによるカラーインクの吐出を制御する。
USBコントローラ92は、USB2.0規格に適合するコントローラであり、USBハブ61の第二接続口64に接続されている。第二吐出駆動部93は、4組の吐出口群361C,361M,361Y,及び361Kの各吐出口の吐出チャンネルに設けられた圧電素子(図示略)を駆動して、4組の吐出口群361C,361M,361Y,及び361Kにカラーインクを吐出させる。第三制御部90はさらに、CPU91に接続されたROM87及びRAM88を備える。ROM87は、第三制御部90の動作を制御するための印刷制御プログラム等の各種プログラム、及び各種初期値等が記憶されている。RAM88には、CPU41から受信した印刷データ等の各種データが一時的に記憶される。CPU41と、第三制御部90とは、第一制御部40側のバス44,USBホストコントローラ60,及びUSBハブ61を介して接続される。さらにCPU41と、第三制御部90とは、他の構成要素を介さずに、第二信号線122を介して直接接続されている。
印刷装置30はさらに、主電源部81を備える。主電源部81は、第一制御部40,第二制御部70及び第三制御部90の夫々に電力を供給される。即ち、第二制御部70及び第三制御部90の夫々には、USBハブ61を介さずに、主電源部81から電力が供給される。主電源部81は、図示しない、商用電源からコンセント及び電源コードを介して印刷装置30内に電力を導入する。主電源部81は必要に応じて、第一制御部40,第二制御部70及び第三制御部90の夫々への電力の供給を遮断(OFF)することができるように構成されている。第二制御部70及び第三制御部90は、主電源部81から適宜必要な電圧に変換される等して直接供給される電力によって、安定して駆動部の制御を行うことができる。
印刷装置30はさらに、エンコーダ82を備える。エンコーダ82は、キャリッジ34(図1参照)の搬送方向(主走査方向)に沿って設けられたエンコーダストリップのパターンを、キャリッジ34に固定された光学センサにより検知し、検知結果をパルス信号で出力するリニアエンコーダである。キャリッジ34は、印刷装置30の主電源部81をONにすることにより、ガイドレール33(図1参照)の一方の端まで搬送される。このとき、印刷装置30は、キャリッジ34の現在位置を初期化する。キャリッジ34が初期位置からガイドレール33上を搬送されると、エンコーダ82は、検知結果に基づくパルス信号を第一位置取得部45,第二位置取得部76及び第二位置取得部94の夫々に入力する。第一位置取得部45は、エンコーダ82から入力があった場合に、キャリッジ34の現在位置を更新する。同様に、第二位置取得部76,94は、エンコーダ82から入力があった場合に、キャリッジ34の現在位置を更新する。
次に図4を参照して印刷装置30で実行される印刷処理を簡単に説明する。本実施形態の印刷装置30は、PC1から印刷データを受信した後、ユーザによって布帛がプラテン39へ載置がされ、印刷開始ボタンが押下されることで、印刷処理を開始する。印刷データは、USBデバイス110であるUSBフラッシュメモリ等の他の外部機器から取得されてもよい。印刷処理は、ROM42,84,及び87の夫々に記憶されたプログラムに従って、CPU41,71及び91が協働して実行する。
図4に示すように、印刷処理ではまず、CPU41(第一位置取得部45)は、第一位置取得部45がレジスタに記憶しているキャリッジ34の現在位置を基準位置として取得し、取得した基準位置をUSBハブ61を介して、第二制御部70及び第三制御部90に出力する(S1)。基準位置を受信した第二制御部70の第二位置取得部76及び第三制御部90の第二位置取得部94は、夫々キャリッジ34の現在位置を更新する。
次にCPU41(第二搬送制御部48)は第二搬送駆動部51に指示を出力して、白インクを吐出する吐出口群361の搬送経路が印刷開始位置となるように、プラテン39を搬送させる(S3)。CPU71(第一搬送制御部77)は、CPU41からの指示に基づき、第一搬送駆動部73を駆動させて、キャリッジ34を開始位置まで搬送させる(S3)。次いで、印刷装置30は、キャリッジ34を主走査方向に搬送する処理を開始する(S5)。S5の処理の開始の指示は、CPU41が、USBハブ61を介して第二制御部70のCPU71(第一搬送制御部77)に対して出力する。指示を受信したCPU71(第一搬送制御部77)は、第一搬送駆動部73を制御して、キャリッジ34の搬送制御を開始し、一定の速度でキャリッジ34を搬送させる。
次に、印刷装置30は、キャリッジ34を主走査方向に搬送させながら、1ラインの印刷を行う(S5,S7)。印刷開始直後は、印刷データ(CMYKW)における白(W)のデータに従って吐出口群361Wによる白インクの吐出のみが行われる。吐出口群361C,361M,361Y,及び361Kが、吐出口群361Wによって白インクが吐出された領域に搬送された場合、キャリッジ34を主走査方向に搬送させながら、印刷データ(CMYKW)における白(W)のデータに従って吐出口群361Wによる白インクの吐出と、カラー(CMYK)のデータに従って吐出口群361C,361M,361Y,及び361Kによるカラーインクの吐出とが並行して行われる。印刷終了直前は、白インクの吐出は終了し、印刷データ(CMYKW)におけるカラー(CMYK)のデータに従って吐出口群361C,361M,361Y,及び361Kによるカラーインクの吐出のみが行われる。
S7の処理の実行に際しては、図5を参照して後述するように、CPU41(制御データ出力部47)はUSBハブ61を介して印刷データを複数回に分けて第二制御部70のCPU71(第一吐出制御部78)及び第三制御部90のCPU91(第二吐出制御部95)の夫々に出力する。またCPU41(制御データ出力部47)は信号線121,122を介して印刷データに対応する吐出許可信号を第二制御部70のCPU71(第一吐出制御部78)及び第三制御部90のCPU91(第二吐出制御部95)の夫々に出力する。吐出許可信号は、印刷データに基づき吐出処理を開始することを許可する信号である。吐出処理は、印刷データに基づき液体を吐出する処理である。図8を参照して後述するように、CPU71(第一吐出制御部78)及びCPU91(第二吐出制御部95)の夫々は、CPU41が出力した印刷データ及び吐出許可信号を受信する。CPU71(第一吐出制御部78)及びCPU91(第二吐出制御部95)の夫々は、対応する吐出許可信号が受信された印刷データと、第二位置取得部76及び94が取得したキャリッジ34の現在位置とに基づき、印刷データによって指定される吐出位置に吐出口36によるインクを吐出する処理を制御する。
S1の処理によって、第二位置取得部76及び94の基準位置を一致させている。また図6を参照して後述するように、第二位置取得部76及び94の夫々は、同じエンコーダ82から入力された検知信号に基づき、キャリッジ34の現在位置を更新する。したがって、第二位置取得部76及び94が取得したキャリッジ34の現在位置に基づき、吐出位置を判断することで、第二制御部70によって実行される白インクの吐出処理と、第三制御部90によって実行されるカラーインクの吐出処理との同期が図られている。
吐出許可信号を用いて吐出処理の開始を制御するのは次の理由による。第二制御部70及び第三制御部90は夫々、自らが備える第二位置取得部76,94によって、インクの吐出タイミングを決定することができる。このため、第二制御部70及び第三制御部90の夫々は、独立して吐出処理を実行可能である。一方、印刷データはUSBハブ61を介して、第二制御部70及び第三制御部90の夫々に出力される。このため、印刷データの受信タイミングは、第二制御部70及び第三制御部90で異なる。したがって、一方の制御部において印刷データが受信されず吐出処理ができない状態でも、他方の制御部では印刷データが受信され、受信された印刷データに基づき吐出処理を実行可能であるという状態が起こりえる。前述のように、本実施形態の印刷装置30は、同時期にカラーインクと白インクとを吐出する処理を実行する場合があり、本来同時期に吐出されるはずの両インクのうちの一方が吐出されない事態が発生した場合には印刷品質が低下する。これに対し印刷装置30では、印刷データに基づきカラーインクと白インクとの夫々が同時期に吐出されるように、印刷データに基づく吐出処理の開始を吐出許可信号を用いて制御する。このような処理によって、印刷装置30は、白インク及びカラーインクの一方のインクのみが吐出される事態を回避させている。なおCPU41は、S5の処理において、2ライン目以降の印刷時には、吐出制御部78,95の夫々が、制御データ出力部47から吐出許可信号を受信したのを確認してから、キャリッジ34の搬送を開始させるための指示をCPU71(第一搬送制御部77)に対して出力する。このように印刷装置30は、吐出許可信号が受信されないのに、キャリッジ34の搬送が開始され、白インク及びカラーインクの双方が吐出されないという事態を回避させている。
なお、「同時期」に含まれる期間は、吐出タイミングのズレが時間P(s)以内の期間を指す。時間Pは、例えば、画像の解像度と、キャリッジ34の搬送速度に基づく、式(1)で求められる。
P=1/解像度×25.4×1/2×キャリッジ34の搬送速度(mm/s)
・・・式(1)
例えば、画像の解像度が600dpiである場合、25.4mm(1インチ)の中に600ドットの液滴が吐出される。この場合、1/解像度×25.4が、各ドット同士の中央の距離Qとなる。同時期の範囲の上限は、距離1/2Qをキャリッジ34の搬送速度(mm/s)で割った値である。
S7の次に第二制御部70のCPU71(第一搬送制御部77)は、第一搬送駆動部73を制御して、キャリッジ34の搬送を停止させる(S9)。次にCPU41(第二搬送制御部48)は、印刷が完了していなければ(S11:NO)、第二搬送駆動部51に指示を出力して、プラテン39を印刷方法に応じた量搬送させ(S13)、処理はS5に戻る。印刷方法には、例えば、マルチパス方式、及びシングルパス方式を用いる方法がある。マルチパス方式は、画素列の夫々に対して同じ印刷ヘッド35(吐出口群361)の異なる吐出口36によって1つの画素列を形成させるように、印刷ヘッド35を同じ領域に複数回走査させることで印刷を行う方式である。シングルパス方式は、画素列の夫々に対して同じ印刷ヘッド35を1回走査させることで印刷を行う方式である。印刷が完了すると(S11:YES)、CPU41(第二搬送制御部48)は、第二搬送駆動部51に指示を出力して、布帛の取り外しが可能となる位置まで前方へプラテン39を搬送させる。CPU71(第一搬送制御部77)は、CPU41からの指示に基づき、第一搬送駆動部73を駆動させて、キャリッジ34を終了位置まで搬送させる(S15)。印刷処理は以上で終了する。
なお、本実施形態の印刷装置30は、上記の印刷処理において説明したように、キャリッジ34を主走査方向に搬送させ、且つプラテン39を副走査方向に搬送させることで、キャリッジ34をプラテン39(プラテン39に載置された印刷媒体)に対して相対的に搬送させる。しかし、印刷装置30は、キャリッジ34をプラテン39に対して相対的に搬送させることが可能であればよく、具体的な搬送方法は本実施形態の方法に限定されない。つまり、プラテン39を主走査方向に搬送させ且つキャリッジ34を副走査方向に搬送させる場合、プラテン39のみを主走査方向及び副走査方向に搬送させる場合、キャリッジ34のみを主走査方向及び副走査方向に搬送させる方法が採用可能である。
次に図5を参照して、印刷データ出力処理を説明する。図5の印刷データ出力処理は、CPU41,71,及び91が協働して実行する図4のS7の処理のうち、CPU41によって実行される処理である。具体的には、CPU41は、図5に示す印刷データ出力処理において、吐出制御部毎に印刷データと、吐出許可信号とを出力する処理を実行する。印刷データ出力処理は、図4に示す印刷処理と同様に印刷装置30がPC1から印刷データを受信すると開始され、ROM42に記憶された印刷制御プログラムに従ってCPU41(制御データ出力部47)により実行される。なお、処理の過程で取得されたデータ、変数及び設定値等は、適宜RAM43に記憶されるものとする。
図5に示すように、CPU41は、PC1から受信した印刷データを取得し、RAM43に記憶される(S21)。印刷データは、ユーザの指示によりPC1で作成されたものとする。次に、CPU41は、印刷データを印刷順に読み出すための変数Nに1を設定し、印刷データの再送回数をカウントするための変数Mに0を設定する(S23)。CPU41は、印刷データを複数回に分けて第二制御部70及び第三制御部90に出力する。1回に出力する印刷データの量は、予め定められており、ROM42等の不揮発性記憶機器に記憶されている。本実施形態の1回に出力する印刷データの量は、3ライン分の印刷データである。1度に出力する印刷データの量は適宜変更されてよい。
次に、CPU41は、RAM43に記憶されている印刷データの中から、第一ユニット351の4組の吐出口群361W用のN番目の印刷データを取得し、取得した印刷データを特定印刷データとして、バス44,USBホストコントローラ60,及びUSBハブ61を介して、第二制御部70の第一吐出制御部78に出力する(S25)。特定印刷データとは、印刷データを出力する対象となっている吐出制御部である特定吐出御部に接続された吐出ユニットによって液体を吐出するための印刷データである。S25の処理における特定吐出制御部は、第二制御部70の第一吐出制御部78である。S25の処理によって、例えば3ライン分の印刷データが出力される。特定印刷データの出力に際して、出力先を示すデータに加え、例えば、以下の事項を示すデータが付加されてもよい。Nが1である印刷データを出力する場合、印刷処理により1つの画像を形成するのに必要な第一ユニット351用の全ての印刷データの大きさ(データサイズ)に関するデータが付加される。このデータは、後述する印刷データ受信処理において、全ての印刷データを受信したか否かを判断する処理において参照される。また、変数Nを表すデータが付加される。このデータは、印刷データが印刷順に出力されているか否かを判断するのに用いられる。
第二制御部70の第一吐出制御部78への印刷データの出力が完了後、CPU41(制御データ出力部47)は、RAM43に記憶されている印刷データの中から、第二ユニット352の4組の吐出口群361C,361M,361Y,及び361K用のN番目の印刷データを取得する。CPU41(制御データ出力部47)は、取得した印刷データを特定印刷データとしてバス44,USBホストコントローラ60,及びUSBハブ61を介して、第三制御部90の第二吐出制御部95に出力する(S26)。S26の処理における特定吐出制御部は、第三制御部90の第二吐出制御部95である。S26の処理によって、例えば、3ライン分(S25の処理と同じ量)の印刷データが出力される。特定印刷データの出力に際して、付加されるデータについては、第二ユニット352用の全ての印刷データの大きさに関するデータ等、S25の処理の記載と同様である。
次に、CPU41は、要求信号を受信したか否かを判断する(S27)。図8を参照して後述するように、第二制御部70及び第三制御部90の夫々は、正常な印刷データを受信できなかった場合に、CPU41に対して要求信号を送信する。要求信号は、信号が要求信号であることを示すデータ、及び要求信号の送信元(第二制御部70又は第三制御部90)を示すデータを含む。印刷装置30は、要求信号の有無を確認する処理を実行することによって、印刷データが正常に受信されなかったことに起因して、吐出処理が適切に行われないことを防いでいる。CPU41は、要求信号を受信した場合(S27:YES),受信した要求信号に基づき送信元を特定し(S29)、特定した送信元に、後続印刷データを出力する(S31)。後続印刷データは、S25又はS26において出力を開始された特定印刷データに基づき第二制御部70の第一吐出制御部78又は第三制御部90の第二吐出制御部95に電気的に接続された吐出口群361によって液体を吐出される特定吐出対象に関するデータである。本実施形態の特定吐出対象は、S25又はS26において出力を開始された特定印刷データに基づき吐出された3ライン分の白インクによる印刷結果又はカラーインクによる印刷結果である。特定印刷データと、後続印刷データとは、いずれも印刷データである。後続印刷データは、特定印刷データの出力が開始された後に、出力が開始されるデータを指す。特定印刷データは、特定吐出制御部に対して出力されるのに対し、後続印刷データは、特定吐出制御部に限らず、他の吐出制御部にも出力される印刷データを含む。
S29で特定した送信元が第二制御部70である場合、S31の処理での後続印刷データは、S25の処理で出力された第一ユニット351用のN番目の印刷データである。送信元が第三制御部90である場合、S31の処理での後続印刷データは、S26の処理で出力された第二ユニット352用のN番目の印刷データである。即ち、S31の処理では、S25又はS26の処理で出力したN番目の印刷データを正常に受信できなかった第二制御部70又は90に対し、再度N番目の印刷データを出力する処理が実行される。次にCPU41は、変数Mをインクリメントする(S33)。
要求信号を受信していない場合(S27:NO)、又はS33の処理の次に、CPU41は、受信信号の受信を完了したか否かを判断する(S35)。図6を参照して後述するように、第二制御部70及び第三制御部90は、印刷データを正常に受信した場合には、CPU41に対して受信信号を送信する。受信信号は、信号が受信信号であることを示すデータ、及び受信信号の送信元(第二制御部70又は第三制御部90)を示すデータを含む。印刷装置30は、受信信号として、第二制御部70及び第三制御部90のUSBコントローラ72及び92から、第一制御部40のUSBホストコントローラ60に送信されるハンドシェイクパケットを援用してもよい。この場合、USBホストコントローラ60が、ステータスコードがACK(Acknowledge)であるハンドシェイクパケットを受信した場合に、受信信号を受信したと判断する。このように判断するのは、USBのプロトコルにおいて、エラーなしにデータを受信した場合には、データを受信したデバイスは、ステータスコードをACKとしてハンドシェイクパケットを返すことになっているからである。もちろん、印刷装置30は、ハンドシェイクパケットとは別に第二制御部70及び第三制御部90から第一制御部40に受信信号を送信するようにしてよい。CPU41は、受信信号を受信した場合、受信した受信信号をRAM43に記憶させる。CPU41は、N番目の印刷データを出力してから所定時間経過以内に第二制御部70及び第三制御部90の双方から受信信号を受信していない場合に、受信信号受信未完了と判断する(S35:NO)。N番目の印刷データを出力してから経過時間は、図示しないタイマ処理によって計測される。
この場合、CPU41は、変数Mが定数Lよりも大きいか否かを判断する(S37)。定数Lは、N番目の印刷データを再送する回数を制限するために予め設定された値である。定数Lは、印刷データが正常に受信されない事態が発生する頻度、N番目の印刷データの大きさ、USBコントローラ72及び92のデータバッファの容量、及び印刷データの出力に要する時間等を考慮して予め設定され、ROM42等の不揮発性の記憶機器に記憶されればよい。定数Lは、例えば、5である。変数Mが定数Lよりも大きい場合(S37:YES),CPU41は、表示制御部52に指示を出力してディスプレイ57にエラー表示をし(S45)、印刷データ出力処理を終了させる。S45の処理において印刷装置30は、PC1に指示を出力対して、エラーをPC1のモニタ2に表示させてもよい。変数Mが定数Lよりも小さい場合(S37:NO)、CPU41は、RAM43を参照して、受信信号の未送信元を特定する(S39)。なお、後述のように、第二制御部70又は第三制御部90から送信される受信信号には、受信信号の送信元についてのデータが含まれるので、送信元を特定できる。未送信元は、CPU41がN番目の印刷データを出力してから所定時間経過以内に受信信号を送信しなかった第二制御部70及び第三制御部90の少なくともいずれかであり、CPU41は、RAM43に記憶された受信信号の送信元を参照して特定する。次に、CPU41は、S25の処理で特定した未送信元に、後続印刷データを出力する(S41)。S39で特定した未送信元が第二制御部70である場合、S41の処理での後続印刷データは、S25の処理で出力された第一ユニット351用のN番目の印刷データである。未送信元が第三制御部90である場合、S41の処理での後続印刷データは、S26の処理で出力された第二ユニット352用のN番目の印刷データである。即ち、S41の処理では、S25又はS26の処理で出力したN番目の印刷データに対する受信信号を送信できなかった第二制御部70又は90に対し、再度N番目の印刷データを出力する処理が実行される。次にCPU41は、変数Mをインクリメントし(S43),処理はS27に戻る。
CPU41は、N番目の印刷データを出力してから所定時間経過以内に第二制御部70及び第三制御部90の双方から受信信号を受信した場合に、受信信号受信完了と判断する(S35:YES)。この場合、CPU41は、第二制御部70及び第三制御部90に、夫々信号線121,122を介して、N番目の印刷データに対する吐出許可信号を出力する(S47)。吐出許可信号は、信号線121,122を介して、出力されるので、第二制御部70及び第三制御部90は、ほぼ同時に吐出許可信号を受信する。本実施形態では、第二制御部70の第一吐出制御部78及び第三制御部90の第二吐出制御部95の夫々は、N番目の印刷データに対応する吐出許可信号を受信するまでは、N番目の印刷データに基づく吐出処理を開始しない。次に、CPU41は、印刷順序が最後の印刷データを出力したか否かを判断する(S49)。S21で取得した全ての印刷データが出力されていなければ(S49:NO)、CPU41はNをインクリメントする(S51)。次に処理はS25に戻る。S21で取得した印刷データが全て出力されていれば(S49:YES)、印刷データ出力処理を終了する。なお、繰り返し実行されるS25,S26において、N番目の印刷データが特定印刷データとして出力された場合、次のS25,S26において、出力されるN+1番目の印刷データは、特定印刷データでもあり、N番目の印刷データに対する後続印刷データでもある。
次に図6及び図7を参照して、第一制御部40,第二制御部70及び第三制御部90の夫々によって実行される位置取得処理を説明する。図6及び図7の位置取得処理は、図4のS7の処理をCPU41,71,及び91が協働して実行するために、第一制御部40,第二制御部70及び第三制御部90の夫々において、キャリッジ34の現在位置を取得する処理である。図6及び図7において、同様の処理が実行される場合には、同じステップ番号を付与している。第二制御部70での位置取得処理は、キャリッジ34の起動処理が終了した場合に、CPU71(第二位置取得部76)によって実行される。第三制御部90での位置取得処理は、第三制御部90が起動した場合に、CPU91(第二位置取得部94)によって実行される。第一制御部40での位置取得処理は、キャリッジ34の起動処理が終了した場合に、CPU41(第一位置取得部45)によって実行される。図7に示す第一制御部40での位置取得処理は、図6のS61からS69の処理の内、S65及びS67は省略される。以下では、第一制御部40,第二制御部70及び第三制御部90の夫々が実行する位置取得処理の説明を、第二制御部70で位置取得処理が実行される場合を例に説明し、第一制御部40及び第三制御部90が実行する場合の説明は省略する。なお、第一位置取得部45は、CPU41のレジスタにキャリッジ34の現在位置を表すデータを記憶する。同様に第二位置取得部76,94は、夫々、CPU71,91のレジスタにキャリッジ34の現在位置を表すデータを記憶する。処理開始時には、第一位置取得部45及び第二位置取得部76,94の夫々のキャリッジ34の現在位置に初期位置が設定されるものとする。
図6に示すように、CPU71は、エンコーダ82から検知信号を取得したか否かを判断する(S61)。エンコーダ82から検知信号を取得した場合(S61:YES)キャリッジ34の現在位置を更新して、CPU71のレジスタに記憶させる(S63)。検知信号を取得していない場合(S61:NO),CPU71は基準位置を受信したか否かを判断する(S65)。基準位置は、図4のS1の処理によってCPU41から出力される。基準位置を取得した場合(S65:YES),レジスタに記憶されたキャリッジ34の現在位置を基準位置に置き換える(S67)。基準位置を受信していない場合(S65:NO)、又はS67の次に、位置取得処理を終了しない場合には(S69:NO)、処理はS61に戻る。位置取得処理は、例えば、主電源部81がOFFにされた場合に終了する。位置取得処理を終了する場合には(S69:YES),位置取得処理は終了する。
次に、図8を参照して、第二制御部70及び第三制御部90で実行される印刷データ受信処理を説明する。図8の印刷データ受信処理は、CPU41,71,及び91が協働して実行する図4のS7の処理のうち、CPU71及び91によって実行される処理の一部である。具体的には、CPU71及び91は、図8の印刷データ受信処理では、図5に示す印刷データ出力処理でCPU41から出力された印刷データ及び吐出許可信号を受信する処理を実行する。第二制御部70での印刷データ受信処理は、第二制御部70がCPU41から印刷データを受信すると開始され、ROM84に記憶された印刷制御プログラムに従ってCPU71により実行される。第三制御部90での印刷データ受信処理は、第三制御部90がCPU41から印刷データを受信すると開始され、ROM87に記憶された印刷制御プログラムに従ってCPU91により実行される。第二制御部70での印刷データ受信処理と、第三制御部90での印刷データ受信処理とは、基本的に同様な処理であるので、第二制御部70で印刷データ受信処理が実行される場合について説明し、第三制御部90で印刷データ受信処理が実行される場合については説明を省略する。
図8に示すように、CPU71は、CPU41が出力した印刷データを受信したか否かを判断する(S71)。印刷データを受信していない場合(S71:NO)、後述するS79の処理を実行する。印刷データを受信した場合(S71:YES)、CPU71は、S71の処理で受信した印刷データと、これまで受信した印刷データのデータサイズの積算値とをRAM85に記憶する(S72)。RAM85には印刷データを記憶するためのデータバッファとしての機能があり、図9に示すように、所定容量の印刷データを印刷順に記憶可能である。図9の状態1に示すように、データバッファにN番目の印刷データが記憶された状態から、新たにN+1番目の印刷データが受信された場合、図9の状態2に示すようにN+1番目の印刷データがデータバッファに追加される。次にCPU71は、印刷データに異常があるか否かを判断する(S73)。印刷データに異常があるか否かは、例えば、公知のUSBプロトコルで使用されるエラーチェックビットを利用して判断される。エラーチェックビットに含まれる値は、巡回助長検査(CRC:Cyclic Redundancy Check)アルゴリズムを使用して計算される。もちろん、USBプロトコルで使用されるエラーチェックビットとは別に、エラーチェック用のデータを、印刷データを出力するためのパケットに含ませておき、そのデータを利用してデータに異常があるか否かを判断してもよい。
印刷データに異常がある場合には(S73:YES)、CPU71は、USBハブ61を介してCPU41に要求信号を送信する(S75)。要求信号には、信号が要求信号であることを示すデータと、要求信号の送信元が第二制御部70であることを示すデータとが含まれる。次に、処理はS71に戻る。異常が見つかった印刷データは、データバッファから削除される。印刷データに異常が見つからなかった場合には(S73:NO)、CPU71は、USBハブ61を介してCPU41に受信信号を送信する(S77)。受信信号には、信号が受信信号であることを示すデータと、受信信号の送信元が第二制御部70であることを示すデータが含まれる。
次に、CPU71は、第一信号線121を介して、吐出許可信号を受信したか否かを判断する(S79)。吐出許可信号を受信した場合、CPU71(第一吐出制御部78)は(S79:YES)、S71で取得した印刷データに従って、インクを吐出する処理の開始を許可する(S83)。S83の処理によって、CPU71は、図4のS7の処理において、第一吐出駆動部74を制御して、印刷データに従って、キャリッジ34の現在位置に応じた吐出量のインクを吐出させる処理を実行することが許可される。前述のように、CPU71(第一吐出制御部78)及びCPU91(第二吐出制御部95)の夫々が、印刷データ受信処理とは別途実行される吐出処理において、吐出許可信号が受信された印刷データと、キャリッジ34の現在位置とに基づきインクを吐出する処理を実行する。なお、図4のS7において吐出処理が終了した印刷データは、データバッファから削除される。例えば図9の状態2に示すように、データバッファにN番目及びN+1番目の印刷データが記憶された状態から、N番目の印刷データに基づく吐出処理が完了した場合、図9の状態3に示すようにN番目の印刷データがデータバッファから削除される。
吐出許可信号を受信していない場合(S79:NO)又はS83の次に、CPU71は、印刷を終了するか否かを判断する(S85)。印刷を終了するか否かは、例えば、RAM85に記憶された、印刷データのデータサイズの積算値と、1番目の印刷データに付加された全ての印刷データのデータサイズとを比較して判断する。印刷処理が終了していない場合(S85:NO),処理はS71に戻る。印刷データに基づく印刷処理が終了した場合(S85:YES),印刷データ受信処理は終了する。
以上のように、印刷装置30は印刷データを用いて印刷媒体に画像を形成する処理を実行する。吐出口36,及び8組の吐出口群361は、本発明の吐出口、及び複数の吐出口群に相当する。図4のS7の処理及び図8のS83の処理を実行する第一吐出制御部78及び第二吐出制御部95は、本発明の第一吐出制御手段及び第二吐出制御手段、複数の吐出制御手段として機能する。第一ユニット351及び第二ユニット352の夫々は、本発明の第一ユニット及び第二ユニットに相当する。白インク及びカラーインクは、本発明の第一種液体及び第二種液体に相当する。図5の印刷データ出力処理の各ステップを実行する制御データ出力部47は、本発明の制御データ出力手段として機能する。USBハブ61は、本発明の接続手段に相当し、USBハブコントローラ66は、本発明の接続制御手段として機能する。第一信号線121及び第二信号線122は夫々、本発明の第一信号線及び第二信号線に相当する。図7の位置取得処理の各ステップを実行する第一位置取得部45は、本発明の第一位置取得手段として機能し、図6の位置取得処理の各ステップを実行する第二位置取得部76,94は、本発明の第二位置取得手段として機能する。主走査モータ83は、本発明の第一搬送手段(搬送手段)に相当し、図4のS5及びS9の処理を実行する第一搬送制御部77は、本発明の第一搬送制御手段(搬送制御手段)として機能する。副走査モータ56は、本発明の第二搬送手段に相当し、図4のS3,S13,及びS15の処理を実行する第二搬送制御部48は、本発明の第二搬送制御手段として機能する。第一制御部40及び第二制御部70の夫々は、本発明の第一制御部及び第二制御部に相当する。
上記実施形態の印刷装置30によれば、第一制御部40は、第二制御部70又は第三制御部90に対して特定印刷データの出力を開始した後に、後続印刷データを出力する。複数の吐出制御部78,95の夫々において、同時期に処理されるN番目の印刷データが、正常に受信された場合には、N+1番目の印刷データを出力する。複数の吐出制御部78,95の夫々において、同時期に処理されるN番目の印刷データが、正常に受信されない場合には、後続印刷データとしてN番目の印刷データを再出力する。これにより、各吐出制御部78,95が適切に印刷データを受信し、印刷可能状態になってから印刷データに基づき液体を吐出する処理が実行される可能性が高まる。また複数の吐出制御部78,95の全てが、同時期に液体を吐出するための印刷データを、印刷データに基づき液体を吐出する処理が開始される前に受信を完了する可能性が高まる。このため印刷装置30は、複数の吐出制御部のうち、一部の吐出制御部において印刷データの受信が完了していない又は受信した印刷データに基づき印刷可能な状態にないにもかかわらず、印刷を開始してしまうことを回避する。したがって、印刷装置30は、本来同時にインクを吐出することを前提とした印刷処理が適切に実行されないことを防ぐことで、印刷品質が低下することを防止できる。
具体的には、制御データ出力部47は、全ての吐出制御部78,95から受信信号を受信完了後に、吐出許可信号及び次の印刷データを出力する。このため、印刷装置30では、複数の吐出制御部78,95の夫々の印刷データの受信状況を考慮せずに、後続印刷データが出力される場合に比べ、複数の吐出制御部78,95の全てが、同時期に液体を吐出するための印刷データを、印刷データに基づき液体を吐出する処理が開始される前に受信を完了する可能性が高まる。前処理用の白インクと、後処理用のカラーインクとが、別々の吐出制御部78,95の制御によって異なる吐出口群361から吐出される場合でも、複数の吐出制御部78,95の全てが、同時期に液体を吐出するための印刷データを、印刷データに基づき液体を吐出する処理が開始される前に受信を完了する可能性が高まる。したがって、印刷装置30は、制御データ出力部47と、吐出制御部78,95とが接続機器であるUSBハブ61を介して接続されても、吐出制御部78,95間の印刷データの受信タイミングの相違に起因して、印刷品質が低下することを抑制することができる。
印刷装置30によれば、吐出処理を開始する前に、第二位置取得部76,94が夫々記憶するキャリッジ34の値を同じ値とするための処理を行う。これにより、印刷装置30は、複数の吐出制御部78,95間で、印刷媒体に対するキャリッジ34の現在位置の取得に誤差が生じることに起因して、インクが適切な位置に吐出されないことを防止することができる。第一制御部40は印刷データを吐出制御部78,95に出力する制御、及びプラテン39(印刷媒体)を搬送させる制御を行う。印刷装置30では印刷データを複数回に分割して出力する処理と、キャリッジ34の搬送制御と印刷媒体の搬送制御を並行して実行される。第一制御部40と、第二制御部70とで、印刷時の処理を分けて行うことで、1つの制御部で全処理が実行される場合に比べ、1つの制御部にかかる印刷中の負荷を軽減することができる。
本発明の印刷装置は、上記した実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更が加えられてもよい。例えば、以下の(A)から(G)の変形が適宜加えられてもよい。
(A)印刷装置30の構成は必要に応じて適宜変更してよい。例えば、以下(A−1)から(A−3)のような変更を加えてもよい。
(A−1)吐出口が吐出可能な液体は、吐出口が吐出可能な粘度等の性質を有する液体であればよい。したがって液体は、インクに限らず、例えば、脱色剤等の化学薬剤でもよい。吐出口群及び吐出制御部の数は適宜変更されてよい。複数の吐出制御部のすべてが、USBハブ等の接続機器を介して制御データ出力部に接続されていなくてもよい。即ち、一部の吐出制御部は接続機器を介さず制御データ出力部と接続されてもよい。1つの吐出ユニットに含まれる吐出口群の数は、1以上であればよい。
図10に示す印刷装置201から203を例に、印刷装置が備える印刷ヘッド、及び吐出制御部の変形例を説明する。印刷装置201は、第一制御部40と、第二制御部70及び第三制御部90とがUSBハブ61を介して接続されている、上記実施形態の印刷装置30の構成に加え、第三制御部90をもう一つ追加した構成を有する。追加された第三制御部90と、第一制御部40とは、信号線123によって直接接続されている。このように、USBハブ61等の接続機器を介して第一制御部40(制御データ出力部47)と接続された吐出制御部は、信号線によって制御データ出力部47と接続されることが好ましい。しかし、信号線は必要に応じて省略可能である。接続機器を介して第一制御部(制御データ出力部)と接続された吐出制御部のうちの一部のみが、信号線によって制御データ出力部と接続される場合、印刷データを出力する順序は次のようにすることが好ましい。即ち、信号線によって制御データ出力部と接続されていない吐出制御部への印刷データの出力を、信号線によって制御データ出力部と接続された吐出制御部よりも後にする。このようにした場合で、先に印刷データを受信した吐出制御部への吐出許可信号の送付時期を調整することによって、後に印刷データを受信した吐出制御部との、印刷データの受信タイミングのタイムラグに起因して印刷品質の低下を抑制することが可能である。印刷装置202は、第一制御部40と、第二制御部70とがUSBハブ61を介さずに接続され、第一制御部40と、第三制御部90とがUSBハブ61を介して接続されている構成を有する。印刷装置203では、印刷ヘッド(PH)35が、吐出制御部(HC)170と1対1で接続され、各吐出制御部(HC)170が、USBハブ161を介して接続されている。
キャリッジに搭載される印刷ヘッド及び吐出口群の変形例を図11を参照して説明する。図11(A)に示すように、変形例におけるキャリッジ341には、印刷ヘッド356,357及び358を備える。印刷ヘッド357及び358は、印刷ヘッド356と、主走査方向において対向して離間した位置に配置されている。印刷ヘッド356,357及び358が備える複数の吐出口36は、第一ユニット355と、第二ユニット359とにグループ化される。第一ユニット355は、前処理用の白インクを吐出する2組の吐出口群362Wを備える。2組の吐出口群362Wは、印刷ヘッド356の底面に設けられている。2組の吐出口群362Wは、主走査方向に並べて配置されている。第二ユニット359は、後処理用のカラーインクを吐出する4組の吐出口群362C,362M,362Y,及び362Kを備える。2組の吐出口群362C,及び362Mは、印刷ヘッド358の底面に設けられ、2組の吐出口群362Y,及び362Kは、印刷ヘッド357の底面に設けられている。吐出口群362Cはシアンインクを吐出する。吐出口群362Mはマゼンタインクを吐出する。吐出口群362Yはイエローインクを吐出する。吐出口群362Kは黒インクを吐出する。例えば、第一ユニット355は、第一吐出制御部を備える第二制御部701によって制御され、第二ユニット359は、第二吐出制御部を備える第三制御部901によって制御される。
図11に示す変形例のように、1個の印刷ヘッドは、複数の吐出口群を含んでいてもよい。1つの吐出制御部が制御する吐出口群の数は1以上であればよい。したがって、1個の印刷ヘッドに、複数の吐出口群が設けられている場合、各吐出口群は、同じ吐出制御部によって制御されてもよいし、互いに異なる吐出制御部によって制御されてもよい。具体的には、例えば、図11(A)と同様のキャリッジ341において、図11(B)に示すように、1個の印刷ヘッド358に備えられる吐出口群362C及び吐出口群362Mは夫々、第四吐出制御部を備える第四制御部911及び第五吐出制御部を備える第五制御部912によって制御されてもよい。また、1個の印刷ヘッド357に備えられる吐出口群362Y及び吐出口群362Kは夫々、第六吐出制御部を備える第六制御部913及び第七吐出制御部を備える第七制御部914によって制御されてもよい。1個の印刷ヘッドが複数の吐出口群を備える場合、各吐出口群の配置は、主走査方向に並んで配置される例に限定されず、適宜変更されてよい。複数の吐出ユニットを備える場合、キャリッジにおける各吐出ユニットの配置は適宜変更されてよい。
(A−2)接続機器は、制御データ出力部と、吐出制御部とを接続する接続機器は制御データ出力部を接続可能な第一接続口と、第一接続口とデータ伝送可能に個別に接続可能な複数の第二接続口とを有すればよく、USBハブ61に限定されない。例えば、イーサーネット(登録商標)ハブでもよい。接続機器は、データの伝送効率の観点から、スイッチング機能を有することが好ましいが、スイッチング機能を有していなくてもよい。印刷装置は、複数種類の接続機器を備えてもよい。この場合、複数の吐出制御部の夫々が、異なる接続機器を介して制御データ出力手段と接続されてもよい。
(A−3)第一位置取得部45は、CPU41に電気的に接続されたFPGA(Field−Programmable Gate Array)等の集積回路上に設けられてもよい。同様に、第二位置取得部76及び94は、夫々CPU71及び91に電気的に接続されたFPGA等の集積回路上に設けられてもよい。
(B)受信信号に含まれるデータ及び受信信号に関する処理は適宜変更されてよい。例えば、受信信号は、制御データ出力部47に対し、USBハブ61等の接続機器を介して送信されてもよいし、信号線を介して送信されてもよい。他の例では、(B−1)又は(B−2)の変更が加えられてもよい。(B−1)又は(B−2)の変更が加えられた場合にも、吐出制御部は吐出許可信号を受信してから、CPU41から送信された印刷データに基づきインクを吐出する処理を開始するので、一方の吐出制御部において印刷データが受信されていないにもかかわらず、他方の吐出制御部において吐出処理が実行されるという事態を回避することができる。
(B−1)受信信号未受信時に全ての吐出制御部に印刷データを再送する場合
いずれかの吐出制御部から受信信号を受信しなかった場合に、図5のS39の処理を省略し、全ての吐出制御部にN番目の印刷データを再送してもよい。この場合、受信信号は、送信元を示すデータを含まなくてもよい。受信側の吐出制御部では、再受信の必要のない印刷データを受信した場合には、削除してもよいし、再受信して重複するデータを削除してもよい。
(B−2)吐出制御部が受信信号を送信しない場合
さらに、CPU71,91の夫々は、図8のS77の処理、即ち、印刷データ(印刷データ)を受信した場合に、受信信号をCPU41に対して送信する処理を省略してもよい。この場合、図5のS35からS43の処理を省略し、CPU41は、印刷データ(印刷データ)を吐出制御部に対して送信後の所定のタイミング(例えば、印刷データ出力後所定時間経過後)に、吐出制御部に対して吐出許可信号を送信してもよい。この場合、CPU71,91の夫々は、S33の後に、S37の処理を実行してもよい。
(C)要求信号に含まれるデータ及び要求信号に関する処理は適宜変更されてよい。例えば、要求信号は、制御データ出力部47に対し、USBハブ61等の接続機器を介して送信されてもよいし、信号線を介して送信されてもよい(C−1)又は(C−2)の変更が加えられてもよい。(C−1)又は(C−2)の変更が加えられた場合にも、吐出制御部は吐出許可信号を受信してから、CPU41から送信された印刷データに基づきインクを吐出する処理を開始するので、一方の吐出制御部において印刷データが受信されていないにもかかわらず、他方の吐出制御部において吐出処理が実行されるという事態を回避することができる。
(C−1)要求信号受信時に全ての吐出制御部に印刷データを再送する場合
いずれかの吐出制御部から要求信号を受信した場合に、図5のS29の処理を省略し、全ての吐出制御部にN番目の印刷データを再送してもよい。この場合、要求信号は、送信元を示すデータを含まなくてもよい。受信側の吐出制御部では、再受信の必要のない印刷データを受信した場合には、削除してもよいし、再受信して重複するデータを削除してもよい。
(C−2)吐出制御部が要求信号を送信しない場合
印刷データが壊れることが想定されない場合等には、CPU71,91の夫々は、図8のS73,S75の処理、即ち、受信した印刷データに異常があるか否かを判断し、異常がある場合には要求信号を送信する処理を省略してもよい。この場合、図5のS29からS33の処理を省略し、CPU41は、印刷データ(印刷データ)を吐出制御部に対して出力後の所定のタイミング(例えば、印刷データ出力後所定時間経過後)に、吐出制御部に対して吐出許可信号を出力してもよい。この場合、CPU71,91の夫々は、S33の後に、S37の処理を実行してもよい。
(D)図5の印刷データ出力処理における、印刷データの再送回数を制限する処理は適宜変更されてよい。例えば、定数Lは、本実施形態で例示した5回に限定されず、適宜変更されてよい。また、再送回数をカウントする処理は適宜変更されてよい。より具体的には、上記実施形態では、S33及びS43の双方で再送回数をカウントしていたが、いずれかのみにおいて再送回数をカウントしてもよい。また、再送回数を制限せずに、要求信号及び受信信号の少なくともいずれかの受信状況に応じて、N番目の印刷データを再送する処理を実行してもよい。さらに、要求信号及び受信信号の受信状況によらず、印刷データを再出力する処理を実行してもよい。この場合の印刷装置では、N番目の印刷データを複数回出力することによって、吐出制御部おいてN番目の印刷データが適切に受信される可能性が高まる。したがって、複数の吐出制御手段間の印刷データの受信タイミングの相違に起因して印刷品質が低下することを抑制することができる。
(E)図4の印刷処理、図5の印刷データ出力処理、図6及び図7の位置取得処理、並びに図8の印刷データ受信処理を実行させるための指示を含むプログラムは、印刷装置30がプログラムを実行するまでに、印刷装置30が備える記憶装置に記憶されればよく、プログラムの取得方法、取得経路及びプログラムを記憶する装置の夫々は適宜変更されてよい。したがって、印刷装置30が備えるプロセッサが実行するプログラムは、ケーブル又は無線通信を介して、他の装置から受信し、フラッシュメモリ等の記憶装置に記憶されてもよい。他の装置は、例えば、PC,及びネットワーク網を介して接続されるサーバを含む。
(F)図4の印刷処理、図5の印刷データ出力処理、図6及び図7の位置取得処理、並びに図8の印刷データ受信処理の各ステップは、CPU41,71又は91によって実行される例に限定されず、一部又は全部が他の電子機器(例えば、ASIC)によって実行されてもよい。また、上記処理の各ステップは、複数の電子機器(例えば、複数のCPU)によって分散処理されてもよい。さらに、印刷装置30が備えるCPUからの指示に基づき、印刷装置30上で稼動しているオペレーティングシステム(OS)等が実際の処理の一部又は全部を行い、その処理によって上記実施形態の機能が実現される場合も本発明の範囲に含まれる。
(G)上記実施形態の処理の各ステップは、必要に応じて順序の変更、ステップの省略、及び追加が可能である。例えば、図12の表に例示する上記(B)、(C)及び(D)の変形を適宜加えたパターン1から24のいずれかを採用してよい。図12中、「B:S31の処理」は、上記変形例(B)の要求信号に関する処理に対応する。具体的には「特定」は実施形態に示したように、S27,S29,及びS31の処理を行う場合を示す。「全部」は、上記変形例(B−1)の場合に対応する。「なし」は、上記変形例(b−2)の場合に対応する。図12中、「C:S41の処理」は、上記変形例(C)の受信信号に関する処理に対応する。具体的には「特定」は実施形態に示したように、S35,S39,及びS41の処理を行う場合を示す。「全部」は、上記変形例(C−1)の場合に対応する。「なし」は、上記変形例(C−2)の場合に対応する。図12中、「D:Mのカウント」は、上記変形例(D)の再送回数の制限に関する処理に対応する。具体的には「S33の処理とS43の処理の両方」は実施形態に示したように、S33,S43及びS37の処理を行う場合を示す。「S33の処理のみ」は、S43は省略し、S33及びS37の処理を行う場合を示す。「S43の処理のみ」は、S33は省略し、S43及びS37の処理を行う場合を示す。「カウントしない」は、S33,S43及びS37の処理を省略した場合を示す。上記実施形態は、パターン1に対応する。
さらに、各吐出制御部が印刷データを受信してから、受信した印刷データに基づき吐出処理を実行するまでの時間が十分確保されている場合等には、吐出許可信号の出力は省略されてよい。他の例では、吐出許可信号と、1回に出力される印刷データとは、1対1で対応していなくてもよい。より具体的には、例えば、連続する複数回(例えば3回)に出力される印刷データに対して、1つの吐出許可信号が出力されてもよい。他の例では、1回に出力される印刷データが3ライン分の印刷データであった場合、1ライン毎に吐出許可信号が出力されてもよい。制御データ出力部47が印刷データを出力してから、吐出制御部が受信するまでに要する時間等を考慮して、吐出許可信号を出力するタイミングを調整することによって、印刷品質が低下することを防ぐことと、迅速に印刷処理を実行することとの両立を図ることができる。