以下、本発明を具体化した一実施形態を図1〜図13に基づいて説明する。図1は、スキャナ機能を備えた印刷装置である複合機の斜視図である。複合機11は本体12とカバー13とを備え、本体12の下側部分が例えばインクジェット方式のプリンタ部14、上側部分がスキャナ部15となっていて、カバー13を開いた本体12の上面には四角板状の透明ガラスが組み込まれた原稿台15aが設けられている。本体12の背面部には用紙がセットされるサポート16aを備えた自動給紙装置16(ASF(Auto Sheet Feeder))が装備されている。また、本体12の前側には、その上段部に操作パネル17、下段部に排紙部18、中段部右寄り位置にメモリカード19を挿抜可能なメモリカードスロット(以下、単に「スロット20」という)がそれぞれ設けられている。
操作パネル17の幅方向中央部にはモニタ21(液晶ディスプレイ)が配設されている。また、操作パネル17には、電源ボタン22、実行中の動作を中止するストップボタン23、印刷/スキャンを開始するスタートボタン24、及び複合機11のモードを選択するモード選択ボタン25が配設されている。
モード選択ボタン25は、複数のモードのうちから一つのモードを選択でき、例えば「コピー」「スキャン」「メモリカード」などのモードを選択できる。モニタ21には選択されたモードに対応するメニュー画面が表示され、メニュー画面の中で項目を選択して切り替わる下位の画面で、モード毎に各種設定や印刷やスキャンの実行の開始の指示等を行うことが可能になっている。ここで、「コピー」「スキャン」は、それぞれコピー時、スキャニング時に用いるモード、「メモリカード」は、スロット20に挿着されたメモリカード19から読み取った画像データに基づく写真等を印刷するときに用いるモードである。また、操作パネル17には、上下・左右4つの矢印キーを有するとともに中央にOKボタンを有する選択ボタン26、印刷枚数を設定する印刷枚数ボタン27などが配設されている。
図2は、本実施形態の複合機におけるプリンタ部分を示す概略斜視図である。同図は、複合機の外装ケースを取り外された状態で示している。図2に示すように、プリンタ部14は、外装ケース(図示省略)内に本体ケース14aを備えている。本体ケース14aには、ガイド軸31に案内されて主走査方向(同図におけるX方向)に往復移動可能なキャリッジ32が設けられている。キャリッジ32はキャリッジモータ(以下、CRモータ33という)が駆動されることにより回転駆動される無端状のタイミングベルト34の一部に固定されており、CRモータ33が正逆転駆動されることによりキャリッジ32は主走査方向Xに往復移動するようになっている。本実施形態では、CRモータ33として、DCモータが使用されているが、ステッピングモータを使用することもできる。
キャリッジ32の下部には、インクジェット方式の記録ヘッド35が設けられている。キャリッジ32の上部には記録ヘッド35にインクを供給するためのブラック用のインクカートリッジ36と、カラー用のインクカートリッジ37とが着脱可能に装填されている。記録ヘッド35の下面はインク色毎に複数のノズルが形成されたノズル形成面となっている。
記録ヘッド35はノズル1つにつき1個の圧電振動子(図示せず)を内蔵している。インク滴の噴射対象となるノズルに対応する圧電振動子が、パルス電圧の印加に基づく電歪作用により振動し、記録ヘッド35内にノズル毎に設けられたインク室が膨張及び圧縮することで、各ノズルからインク滴が噴射(吐出)される。なお、本実施形態では、記録手段は、記録ヘッド35及びキャリッジ32により構成される。また、記録手段を移動させる移動手段は、ガイド軸31、タイミングベルト34、CRモータ33等により構成される。
キャリッジ32の下方には、記録ヘッド35と用紙38との間隔(ギャップ)を規定する例えば平型のプラテン39がその長手方向をガイド軸31の軸方向に一致させた状態で配置されている。図2においてキャリッジ32の主走査方向移動範囲において記録(インク滴噴射)を実施しうる記録可能領域の外側となる図2における右端部位置がキャリッジ32のホームポジションに設定されている。このホームポジションに相当する位置には、記録ヘッド35のクリーニング等を行うメンテナンス装置40が配設されている。また、プラテン39の下側にはメンテナンス装置40から排出された廃液が収容される廃液タンク41が配置されている。
本体ケース14aの図1における右端下部には紙送りモータ(以下、PFモータ42という)が配設されている。キャリッジ32の主走査方向移動範囲において記録可能領域よりもホームポジション側と反対側の外側となる図2における左端部位置には、トリガレバー43が本体ケース14aの背面壁開口から突出し、かつキャリッジ32と係合可能な位置に配置されている。トリガレバー43は、PFモータ42の駆動力を給紙ローラ48(図3参照)に伝達可能な接続状態と、伝達不能な切断状態とに切り換えられるクラッチ手段44を切り替え可能に操作されるように構成されている。すなわち、キャリッジ32が、反ホームポジション側のトリガ位置(所定位置)に移動してトリガレバー43を押すと、クラッチ手段44がPFモータ42の駆動力を給紙ローラ48に伝達可能な接続状態に切り換えられる。クラッチ手段44は、PFモータ42の出力軸と連動する後述の搬送ローラ(搬送駆動ローラ)の回転軸と、給紙ローラ48の回転軸との間に介装されている。
キャリッジ32がトリガ位置に移動してクラッチ手段44が接続状態に切り換えられた状態でPFモータ42が正転方向に駆動されることで、給紙ローラ48(図3参照)が回転し、用紙38は給紙されるようになっている。トリガレバー43が一度操作されてクラッチ手段44が接続状態になると、その後、キャリッジ32がトリガ位置から離れても、給紙ローラ48が約1回転する間はクラッチ手段44が接続状態に保持されるように構成されている。そして、給紙ローラ48が約1回転すると、復帰バネ(図示せず)の付勢力によりクラッチ手段44が切断状態に切り換わるように構成されている。なお、キャリッジ32がトリガ位置に位置する期間のみクラッチ手段44が接続状態に保持される構成も採用できる。また、トリガレバー43は、キャリッジ32の記録可能領域外である限りにおいて、ホームポジションと同じ側に設けられても構わない。
また、給紙後の紙送り過程において、用紙38は、PFモータ42により駆動される搬送ローラ46(図3参照)に挟持された状態で副走査方向Yへ搬送(紙送り)されるようになっている。キャリッジ32の主走査方向Xへの移動中に記録ヘッド35からインク滴を噴射させながら行われる印字動作(記録動作)と、用紙38の副走査方向Yへの紙送り動作とが交互に行われることにより、用紙38に印刷が施される。また、プリンタ部14には、ガイド軸31に沿ってリニアエンコーダ45が設けられている。リニアエンコーダ45はキャリッジ32の移動距離に比例する数のパルスを出力し、その出力パルスを検出して把握されるキャリッジ32の移動位置、移動速度及び移動方向に基づいて、キャリッジ32の速度制御及び位置制御が行われる。
図4は、記録ヘッド及び搬送機構を示す模式側面図である。図4に示すように、記録ヘッド35の下方には、用紙38の搬送方向においてプラテン39を挟んだ前後の位置に、搬送手段を構成する搬送ローラ46(紙送りローラ)及び排紙ローラ47がそれぞれ回転可能な状態で設けられている。搬送ローラ46は、駆動ローラ46Aと従動ローラ46Bからなる一対で構成され、排紙ローラ47は、駆動ローラ47Aと従動ローラ47Bからなる一対で構成されている。用紙38は、両ローラ46A,46B、及び両ローラ47A,47Bのうち少なくとも一方に挟持された状態で、PFモータ42(図1参照)の駆動力によって両駆動ローラ46A,47Aが回転駆動されることにより、図4における左方向(副走査方向Y)へ搬送される。搬送ローラ46よりも用紙搬送方向上流側の位置には、側面視略D字型形状を有する給紙ローラ48が設けられている。給紙ローラ48には、前述のようにキャリッジ32が移動経路上におけるトリガ位置に移動することで接続状態に切り換えられるクラッチ手段44を介してPFモータ42の駆動力が伝達可能となっている。給紙ローラ48は、ホッパー16b(図3参照)の下端部に対してその斜め上方に対向して位置するとともに、回転軸48aを中心に回転可能に構成され、その外周面は、軸心からの距離が一定の円弧面と、軸心からの距離が円弧面より短い平坦面とからなる。給紙ローラ48は、図4に示すリセット位置から、同図に示す矢印方向に回転して再びリセット位置に復帰する1回転をすることで、ホッパー16b上に積重された複数枚の用紙38のうち最上位の一枚のみを給紙する。
また、搬送ローラ46のやや用紙搬送方向上流側の位置には紙検出器49が設けられている。紙検出器49は、例えば接触式センサ(スイッチ式センサ)からなり、その接触式の検知レバーが搬送経路上の用紙38と干渉可能な状態に配置されている。紙検出器49は、給紙された用紙38の先端が検知レバーに当たってこれを変位させることでオンし、用紙38の後端が検知レバーを通過してその検知レバーが元の位置(待機位置)に復帰したときにオフするように構成されている。もちろん、紙検出器49は、用紙38を検知できれば他の方式のセンサを代用でき、例えば用紙38に照射した光の反射光を受光して用紙38の有無を検出可能な光学式センサ(フォトセンサ)を採用してもよい。
先行の用紙38の後端が、後続の用紙38の給紙を開始しても両用紙38が重送することがない設定位置を過ぎると、用紙38は、キャリッジ32をトリガ位置に移動させて給紙を開始することが許可されるトリガ許可領域に入る。用紙38がトリガ許可領域に位置する状態で給紙を開始した場合は、先行の用紙38の後端部と後続の用紙38の先端部が重なって搬送される重送が防止される。なお、用紙38の位置は、搬送方向(図4における左右方向)において、記録ヘッド35の下面に搬送方向に一定ピッチで多数個(例えば180個)形成されたノズル群のうち最上流ノズルの位置に相当する用紙38上の位置で管理されるようになっている。図4の用紙38の位置が給紙を開始してよい用紙の最上流の位置となる。
次に、複合機の電気的構成を図3に基づいて説明する。図3に示すように、複合機11は各種制御を司る制御部50を備えている。制御部50はホストコンピュータ10(PC)と通信可能に接続されるインターフェイス51を備えている。インターフェイス51に接続されたバス52には、CPU53、ASIC54(Application SpecificIC)、ROM55、RAM56及び不揮発性メモリ57、スキャナ入力回路58、メモリカード入出力回路59等が接続されている。CPU53はROM55に記憶されたプログラムを実行することで、給紙制御、紙送り制御、印刷制御などを行う。ASIC54は入力した印刷データを記録ヘッド35のノズルからインク滴を吐出する際の吐出信号となる所定階調値のビットマップデータに変換する画像処理を行う。
ASIC54には、ヘッドドライバ60が接続されている。ASIC54はヘッドドライバ60を介して記録ヘッド35を制御してノズルからインク滴を吐出させる。また、CPU53には、モータドライバ61,62が接続されている。CPU53は、モータドライバ61を介してCRモータ33を駆動制御するとともに、モータドライバ62を介してPFモータ42を駆動制御する。なお、モータドライバ62、PFモータ42、給紙ローラ48、搬送ローラ46及び排紙ローラ47等により、搬送手段が構成される。また、印刷データにはヘッダに各種コマンドが付されており、CPU53はコマンドを解釈することにより給紙・紙送りの紙送り量を取得する。
また、PFモータ42の出力軸は輪列(図示せず)を介して搬送駆動ローラ46A及び排紙駆動ローラ47Aと動力伝達可能に連結されており、さらに搬送駆動ローラ46Aの回転軸の端部を例えば入力軸とするクラッチ手段44の出力軸が給紙ローラ48の回転軸48aと連結されている。クラッチ手段44はキャリッジ32がトリガ位置に移動してトリガレバー43が押されることで機械的に接続される。また、搬送駆動ローラ46A又は輪列の回転軸の端部には、その回転軸と一体回転する円板式の符号板と、その符号板のスリットを投光する光を検知するセンサとから構成されるロータリエンコーダ63が設けられている。
クラッチ手段44が接続された状態では、PFモータ42の回転が給紙ローラ48に伝達可能になる。給紙ローラ48の回転軸48aは図示しないカム機構を介してホッパー16bと連結されている。
CPU53は、ロータリエンコーダ63からの出力パルスを入力してそのパルス数を計数するカウンタ65と、リニアエンコーダ45の出力パルスのパルス数を計数するカウンタ66とを内部に有する。カウンタ65は紙検出器49がオンするとCPU53によりリセットされる。よって、カウンタ65には、用紙搬送経路上における紙検出器49の検知位置から用紙38の先端までの距離に相当する計数値Kが計数される。CPU53はカウンタ65の計数値Kから頭出し以後の用紙38の位置(搬送位置)を取得する。なお、PFモータ42がステッピングモータにより構成した場合は、ロータリエンコーダ63が廃止され、カウンタ65はPFモータ42の制御パルスのステップ数を計数することになる。カウンタ65の計数値から用紙38の位置の他、紙送り量を管理する。また、カウンタ66の計数値からキャリッジ32の位置を把握する。また、リニアエンコーダ45からは位相が90度異なるA相とB相の2種類のパルスを出力し、CPU53はA相とB相の位相の遅れの違いからキャリッジ32の移動方向を把握する。例えばA相がB相より位相が90度進んでいればホームポジションから離れる方向へ移動し、A相がB相より位相が90度遅れていればホームポジションへ近づく方向へ移動していると判断する。また、CPU53は、リニアエンコーダ45の出力パルスのパルス周期を計測することで、キャリッジ速度を把握する。
ROM55には、図10にフローチャートで示される給紙処理ルーチン、図11に示す給紙駆動ルーチン、図12にフローチャートで示される印刷処理ルーチン、図13にフローチャートで示される排紙処理ルーチンの各プログラムデータが記憶されている。CPU53が、これらのプログラムを実行することにより、給紙・印刷・紙送り・排紙が行われる。また、CPU53には、操作パネル17が接続されている。詳しくは、操作パネル17のうちモニタ21は、表示ドライバ(図示せず)を介してCPU53と接続されている。操作パネル17のうち操作ボタンが操作されると、CPU53はその操作による入力に基づき、スキャニング、コピー、印刷、モニタ21のメニュー表示やメニュー画面での選択肢の入力結果を表示に反映させる表示処理などの所定の処理を行う。
メモリカード入出力回路59は、スロット20に挿着されたメモリカード19のインターフェイス回路として機能する。メモリカード19には、図示しないデジタルカメラで撮影した例えばJPEG形式の画像ファイルが格納されている。また、ASIC54には、画像処理回路が内蔵されている。
スキャナ部15は、カバー13の下側の原稿台(図示せず)に載置された原稿を光学的に読み取ってCCD15b(電荷結合素子)に蓄えられた電荷を、A/D変換回路によってA/D変換してスキャナ入力回路58に出力する。スキャナ入力回路58は、CPU53の制御の下、スキャナ部15から入力される各ラスタラインデータ(RGBの多階調画像データ)をバッファに一旦蓄えた後、RGBデータのライン間補正処理、及びRGBデータの読み取り解像度をプリンタ部14が印刷するための印字解像度に変換する解像度変換処理を行う。また、画像処理回路は、解像度変換処理が施された画像データを取得し、色変換、ハーフトーン処理、マイクロウィーブ(Micro Weave)処理など公知の画像処理を行う。そして、マイクロウィーブ処理後の画像データを基にヘッド駆動データ(印刷データ)が生成される。ヘッドドライバ60は、CPU53の制御によりヘッド駆動データに基づいて記録ヘッド35を駆動し、インク滴の吐出の有無や、吐出するインク滴の量を制御する。
ROM55には、プログラムが記録されている。CPU53はROM55から読み出したプログラムを実行することにより、各種処理および制御を司る。
図5は、印刷実行中にCPU53が実行する各種処理のタイミングチャートを示す。
CPU53は、印刷実行開始の指示を受信すると、印刷データの「コマンド解析」及び「イメージ展開」を行いながら、CRモータ33とPFモータ42を駆動制御するシーケンス制御(メカニカル制御)を割込み処理で行う。シーケンス制御には、「給紙」、「印刷動作(キャリッジ移動とインク滴噴射)」、「紙送り」、「排紙」等がある。詳しくは、各シーケンスで、CRモータ33とPFモータ42のうち少なくとも一方を制御する。給紙シーケンスは、キャリッジ32がトリガ位置に移動してクラッチ手段44が接続状態に切り換えられることで開始され、CRモータ33を制御してキャリッジ32を移動開始位置へ移動させるとともに、PFモータ42を制御して用紙38の給紙・頭出しを行う。また、印刷シーケンスでは、CRモータ33を制御してキャリッジ32を今回の1パス分移動させ、その移動途中で印刷開始位置(記録開始位置)に達すると、記録ヘッド35によるインク滴噴射(ファイア)を開始させ、印刷を行う。排紙シーケンスは、排紙コマンドに従って開始するが、印刷すべき後続頁があり且つ用紙38の位置がトリガ許可領域内にあるときは省略され、直ちに給紙シーケンスに移る。この場合、後続用紙の給紙動作に伴って排紙ローラ47が回転することで印刷済みの先行用紙は排紙される。
なお、本実施形態では、「給紙・頭出し」と「紙送り」の終了とほぼ同時にインク噴射(ファイア)が開始されるように、キャリッジ32の移動開始時期を制御している。詳しくは、キャリッジ32が移動開始位置から印刷開始位置まで移動する所要時間を演算するとともに、紙送り終了まで前記所要時間を要する紙送り残量を計算しておき、実際の紙送り残量が計算で求められた紙送り残量に一致したときにキャリッジ32の移動を開始させる。また、インク噴射(ファイア)終了とほぼ同時に紙送りが開始されるように、紙送り開始時期を制御している。すなわち、ヘッドドライバ60からの噴射終了信号に基づき紙送りを開始させる。このため、印刷動作と紙送り動作が一部平行で進められ(重ね合わせられ)、紙送りと印刷(インク噴射)が間断なく交互に行われる。これにより、紙送り終了時点から印刷開始時点までの待ち時間、及び印刷終了時点から紙送り開始時点までの待ち時間が最小に抑えられ、印刷処理のスループットを向上させている。
また、CPU53は、印刷実行開始の指示を受け付けて給紙シーケンスを開始した後、最初のライン(初行)分の印刷データ(行ラスタデータ)のイメージ展開を行う。イメージ展開は、一行分(行ラスタデータ)ずつ記録ヘッド35のノズルからのインク滴吐出順序(ドット形成順序)に合わせてドットを並び替えてイメージバッファ(出力バッファ)上に展開する処理であるため、かなりの処理時間を要する。このため、給紙開始時期を早くするため給紙シーケンスを先に開始させておく。
また、イメージバッファは2つ備えられ、展開処理された行ラスタデータは一行おきに交互にそれぞれのイメージでバッファに蓄積される。このため、一方のイメージバッファからの行ラスタデータに基づいて行の印刷が行われている最中に、他方のイメージバッファで展開処理が進められ、その行の印刷が終了すると、次行の印刷が直ぐ開始できるようにしている。初行の印刷開始位置(噴射開始位置)と印刷終了位置(吐出終了位置)はイメージ展開の結果から決まるので、印刷開始位置から定まるキャリッジ32の最適な移動開始位置は、キャリッジ32が自由に移動できる給紙期間中に求めることは困難である。
そのため、キャリッジ32を予め設定された所定の移動開始位置(以下、設定待機位置という)へ移動させて待機させ、その設定待機位置から始動させるようにしている。この設定待機位置は、用紙の幅方向端縁よりもその中心側へ所定距離移動した位置に設定されている。この設定待機位置は、統計的に多くの場合、キャリッジ32が印刷開始位置(所定速度)に達するまでの助走区間を短くでき、スループット向上に繋がる位置である。しかし、印刷開始位置が用紙の幅方向端縁付近であった場合、必要な助走距離が確保できなくなるので、その場合は、シーク処理により印刷開始位置から改めて移動開始位置を算出し直し、その算出した移動開始位置へキャリッジ32を一旦反対側へ戻すシーク動作を行ってから、キャリッジ32の印刷のための移動を開始させるようにしている。このシーク動作を行った場合は、予め十分な印刷開始位置までの距離を十分確保しておく方法よりもスループットが低下する場合もある。なお、シーク処理では、印刷開始位置をキャリッジ32の必要な助走距離に相当するステップ数だけ移動方向反対側へシフトさせた位置を、新たな移動開始位置として算出する。また、本実施形態では、初行分の行ラスタデータのイメージ展開されたデータが、初行データに相当する。さらに、各行の行ラスタデータのイメージ展開されたデータが、行データに相当する。
本実施形態では、複数部のコピー印刷を行う場合においては、1枚目(1部目)と2枚目(2部目)以降の印刷内容が同じであって、各頁の初行の印刷開始位置は全て同じであることに着目し、1枚目の印刷を行ったときに初行の移動開始位置(Fir stLineST)を記憶しおき、2枚目以降の初行の移動開始位置としてそれを使用する処理を行う。
また、複数部のコピー印刷を行う場合の他の特徴として、1枚目の最終ライン(最終行)を印刷する際のキャリッジ移動方向が、トリガ位置へ向かう方向でなかった場合(つまり、ホームポジションへ向かう方向であった場合)は、2枚目以降の初行印刷時のキャリッジ移動方向を、1枚目の初行印刷時のキャリッジ移動方向と逆方向に設定する処理を行う。
図6は、本実施形態における複数部のコピー印刷を行う場合、初行の移動開始位置を記憶する処理、及び最終行印刷時のキャリッジ移動方向がホームポジションへ向かう方向である場合に、次回の初行印刷時のキャリッジ移動方向を、1枚目の初行印刷時のキャリッジ移動方向と逆にする処理とを説明する説明図である。図6において、用紙の上側に描かれたスケールは、主走査方向におけるキャリッジ位置を示すものである。キャリッジ位置は、リニアエンコーダ45の出力パルスに基づいて求められるものであり、カウンタ65の計数値に相当する値である。キャリッジ位置は、原点(=0)が主走査方向Xにおいて1桁側の所定位置(例えばホームポジション)に設定され、その位置の値が大きくなる80桁側の所定位置にトリガ位置TriggerPosが設定されている。図6の例では、用紙38内に四角枠で描かれた領域が印刷が施される印刷領域であり、そのうち初行と最終行のものにハッチングが施されている。また、各印刷領域に施された矢印は、キャリッジ移動方向を示す。印刷は用紙38において図6の上側から下側へ向かって進められ、用紙38の後部側(上流側)(図6における下端部側)には、トリガ許可領域TAが設定されている。前述のように、本実施形態では、印刷終了行がトリガ許可領域TA内にあった場合は、排紙処理は省略されて給紙処理に移行する。
図6において下段に描かれたグラフは、初行と最終行の印刷時に移動するキャリッジ32の速度プロファイルを示す。ここで、FirstLineSTは、初行の移動開始位置、FirstLineENDは初行の停止位置、LastLineSTは最終行の移動開始位置、LastLineENDは最終行の停止位置である。これらのグラフから分かるように、印刷(インク滴噴射)が実施される定速区間の前後に、移動開始位置FirstLineST,LastLineSTから印刷開始位置に至るまでの助走区間(加速区間)と、印刷終了位置から停止位置FirstLineEND,LastLineENDまで減速するまでの減速区間が必要である。ここで、インク滴は用紙38上に一定ピッチで着弾させる必要があり、そのためにキャリッジ32の速度に応じた時間間隔でインク滴を噴射する噴射制御が行われる。そして、キャリッジ32が印刷開始位置に到達した時点に必要な所定速度(本実施形態では定速度)に達している必要があるため、所定速度に達することができる印刷可能距離を助走区間として確保する必要がある。
移動開始位置FirstLineST,LastLineSTは、印刷領域の開始点である印刷開始位置に対して必要な助走区間(加速区間)の距離(計数値相当)分だけ、その行の印刷方向と逆方向にシフトさせた位置に設定される。このように移動開始位置FirstLineST,LastLineSTは、印刷開始位置を基に算出される。また、停止位置FirstLineEND,LastLineENDは、実際に停止制御を行うときに噴射終了位置から計算で求められる。例えば噴射終了位置に減速区間の距離(計数値相当)分だけ、その行の印刷方向にシフトさせた位置に設定される。これらの移動開始位置FirstLineST,LastLineSTと、停止位置FirstLineEND,LastLineENDは、メモリ(RAM56又は不揮発性メモリ57)の所定記憶領域に記憶される。もちろん、印刷開始位置と移動開始位置の関係、及び噴射終了位置と停止位置の関係は適宜設定でき、例えば加速途中に印刷開始位置が位置したり、減速途中に印刷終了位置(噴射終了位置)が位置したりしてもよい。
なお、本実施形態の例では、移動開始位置FirstLineST,LastLineSTから印刷開始位置までの加速に必要な移動距離と、噴射終了位置から停止位置FirstLineEND,LastLineENDまでの減速に必要な移動距離が、共に等しいものとする。このため、移動開始位置FirstLineST,LastLineSTからキャリッジ32の移動を開始した場合でも、逆に停止位置FirstLineEND,LastLineENDから逆方向へキャリッジ32の移動を開始した場合でも、その対象行の印刷領域の印刷が共に可能となっている。なお、このような前提が成り立たない構成の場合は、少なくとも初行の停止位置FirstLineENDについては、逆方向に印刷を行った場合に元の印刷終了位置が印刷開始位置となるようなキャリッジ32の移動開始位置を求める。すなわち、元の印刷終了位置を助走距離分シフトさせた位置を移動開始位置として演算する。
このため、図6に示す例で複数部のコピー印刷が行われる場合、2枚目以降の初行の印刷を行う際は、キャリッジ32はトリガ位置から移動開始位置FirstLineSTに移動して待機する。
図6は、最終行の印刷移動方向がトリガ位置へ向かう方向(トリガ方向)の例であったが、図7は、最終行の印刷移動方向が原点位置へ向かう方向(反トリガ方向)の例である。図7に示すように、最終行の印刷移動方向が原点位置へ向かう方向である場合、2枚目以降のコピー印刷をする際の最終行の印刷移動方向がトリガ位置へ向かう方向になるように、初行の印刷移動方向を1枚目における初行の印刷移動方向と逆方向にする。
図8は、図7に示すような印刷が1枚目に行われた場合、コピー2枚目以降の印刷処理を示すものである。図8では、初行の印刷移動方向が1枚目のそれと逆方向になっており、その結果、最終行の印刷移動方向がトリガ位置へ向かう方向となっている。このとき、1枚目の初行の停止位置FirstLineENDをメモリから読み出して、この位置を2枚目以降の初行の移動開始位置として用いるようにしている。以上に説明した処理は、CPU53が図10〜図13にフローチャートで示された各種プログラムを実行することにより実現される。
以下、CPU53が実行する印刷処理を、図10〜図13に示すフローチャートに従って説明する。これらのプログラムは、シーケンス制御の一部として実行される。図10は給紙処理ルーチン、図11は給紙駆動ルーチン、図12は印刷処理ルーチン、図13は排紙処理ルーチンをそれぞれ示す。
複合機11を用いてコピー印刷を行う場合は、原稿を原稿台15aに載せてカバー13を閉じることでセットし、モード選択ボタン25で「コピー」を選択してコピーモードの印刷条件を設定した後、スタートボタン24を押す。また、複合機11を用いてスロット20に挿着したメモリカード19中に記憶されたデータを印刷するときは、ユーザは操作パネル17を操作してモニタ21上でメモリカード19中の画像を選択するとともに印刷条件を設定してスタートボタン24を押す。この際、複数部印刷する場合は、印刷枚数ボタン27を操作して印刷枚数(部数)を設定してからスタートボタン24を押す。また、ホストコンピュータ10から印刷を行うときは、モニタ10aに表示される設定画面で、キーボードやマウス等の入力装置10bを操作して印刷条件を設定した後、設定画面上のOKボタンを操作して印刷を実行させる。印刷条件として、用紙種、用紙サイズ、カラー/モノクロ、双方向印刷(高速印刷)、一方向印刷(高画質印刷)、縁なし・縁あり、余白設定、部数などが設定される。メモリカード印刷又はコピー印刷のときは、複合機11内で種々のファイル形式のデータ(例えばjpeg、bmpデータなど)を印刷データに変換する印刷処理(解像度変換、色変換、ハーフトーン処理、マイクロウィーブ処理等)が行われる。なお、ホストコンピュータ10から印刷する場合は、ホストコンピュータ10内のプリンタドライバ(図示せず)によってデータから印刷データへの変換が行われ、複合機11へは印刷データが送信される。以下、コピー印刷が行われる場合を例にして説明する。自動給紙装置16に用紙がセットされた状態で、原稿台15aに原稿がセットされ、複数部コピーの印刷条件が設定された後、スタートボタン24を押すと、複数部コピー印刷が開始される。まずスキャナ部15による原稿の読み取り(スキャニング)が行われ、次に読み取り画像の印刷が開始される。印刷が開始されると、まず給紙処理が開始される。給紙処理では、図10及び図11に示す各ルーチンがCPU53により実行される。
まずステップS1では、キャリッジ32がトリガ位置TriggerPosにあるか否かを判断する。例えばキャリッジ32がホームポジションに位置し、トリガ位置になければ、キャリッジ32をトリガ位置TriggerPosまで移動させる(S2)。すなわち、CPU53はCRモータ33を正転方向に駆動させ、キャリッジ32をトリガ位置まで移動させる。この結果、トリガレバー43が操作されてクラッチ手段44が接続状態に切り換わる。この状態で図11に示す給紙駆動ルーチンが開始され、PFモータ42が正転方向に駆動されることで用紙38の給紙が行われる。この給紙駆動ルーチンについては後述する。
ステップS3では、コピー印刷であるか否かを判断する。すなわち、コピーモードで印刷が実行されたときに立てられるコピーモードフラグがオン(「1」)であるか否かを判断する。コピー印刷であればステップS4へ進み、コピー印刷でなければステップS15に進む。
ステップS4では、部数指定=部数指定−1を演算する。部数指定は、印刷条件として設定された部数指定(本例では印刷枚数)の値を用いる。例えば部数指定がN部である場合、N−1に変更する処理を行う。すなわち、次の部(次頁)を印刷する給紙に移行する度に、1ずつ減算する。このため、部数指定の値(N)が「0」になると、その部(頁)が最終部(最終頁)であると把握できるようにしている。
ステップS5では、k=FirstLineST−FirstLineEND、l=LastLineST−LastLineEND、m=TriggerPos−FirstLineEND、n=TriggerPos−LastLineENDを計算する。ここで、これらの計算式中における、FirstLineST、FirstLineEND、LastLineST、LastLineENDは、それぞれ初行の移動開始位置、初行の停止位置、最終行の移動開始位置、最終行の停止位置の各データである。なお、コピー印刷開始時には、FirstLineST、FirstLineEND、LastLineST、LastLineENDの各値に、それぞれに初期値(=FFFF)が設定されるが、実際に印刷する際に各値が確定されると、その部(頁)において確定した値に更新される。そのため、2部目(2枚目)以降の部(頁)については、その前の部(前頁)の印刷時における値をとることになる。
ステップS6では、初行の移動開始位置FirstLineSTの値が初期値(FirstLineST=FFFF)であるか否かを判断する。つまり、最初(1部目)のコピー印刷であるか否かを判断する。最初(1部目)のコピー印刷であるので、ステップS16に進む。
ステップS16では、キャリッジ32を設定待機位置LineSTPosに移動させる。この設定待機位置は予め設定された移動開始位置であり、本実施形態では、この設定待機位置は、印刷開始位置までの平均移動距離を効果的に短くでき、しかも助走距離不足のためシーク処理を行って一旦戻ってから始動する頻度を低減できる経験則から導かれた位置である。このため、助走距離不足の場合は、キャリッジ32を一旦戻してから始動させる余分なシーク動作が必要であるものの、平均的にみれば印刷開始位置までのキャリッジ32の移動距離(平均値)を短く抑えられる。この設定待機位置Lin eSTPosは、例えば用紙の端縁よりも少し用紙幅方向内側へ移動した位置になる。
一方、この給紙処理では、キャリッジ32がトリガ位置TriggerPosに移動してクラッチ手段44が接続状態に切り換わったことを契機に、CPU53が図11に示す給紙駆動ルーチンを実行する。図11に示すように、キャリッジ32がトリガ位置TriggerPosに到達すると、まずPFモータ42を給紙ステップ数分駆動させる(ステップS21)。用紙38の先端が紙検出器49に検知され(紙検出器49の検知レバーを押して)、紙検出器49が用紙を検知していない「なし」の状態から、用紙を検知している「あり」の状態へ切り換わったと判断される(ステップS22でYES)まで、駆動を継続する(ステップS23)。そして、紙検出器49の検出状態が「なし」から「あり」へ切り換わると(S22でYES)、次に用紙の頭出しに必要な頭出しステップ数だけPFモータ42を駆動させる(ステップS24)。こうして用紙38は所定位置に頭出しされる。なお、紙検出器49が「なし」から「あり」の状態に切り換わる前に、PFモータ42が給紙ステップ数分の駆動を終了した場合(ステップS23でYES)は、紙なしエラーとして処理する(ステップS25)。
こうして最初(1部目)の用紙の給紙及び頭出しが終了すると、次にCPU53は、図12に示す印刷処理ルーチンを開始する。すなわち、まずステップS31では、コピー印刷であるか否かを判断する。この例ではコピー印刷であるので、次にステップS32において、部数指定≠0であるか否か、つまり最終部(最終頁)であるか否かを判断する。部数指定≠0、すなわち最終部の印刷でない場合は、ステップS33に進んで、給紙直後であるか否かを判断する。給紙直後であればステップS34に進み、給紙直後でなければステップS35に進む。
ステップS34では、初行の移動開始位置FirstLineSTと停止位置FirstLineENDをそれぞれ記憶する。実は、図5に示すように、給紙・頭出しの過程で、CPU53はイメージ展開処理を平行して実行しており、このイメージ展開処理の結果、印刷領域(インク噴射範囲)、つまり印刷開始位置と印刷終了位置がそれぞれ決まることになる。この印刷開始位置に必要な助走距離分だけ手前の位置として移動開始位置FirstLineSTを決定し、この印刷終了位置を必要な減速距離分だけ進行方向側へシフトさせた位置として停止位置FirstLineENDを決定する。この決定は、シーケンス制御に指示を出す上位のプログラムをCPU53が実行することにより行われ、CPU53から、移動開始位置FirstLineSTと停止位置FirstLineENDを指定してシーケンス制御の印刷動作を行うよう指示がなされる。このため、シーケンス制御の一部である印刷処理ルーチンにおいて用いられる移動開始位置FirstLineSTと停止位置FirstLineENDの各データが、用紙38の頭出し前の所定時期までに与えられる。そして、ステップS34では、その与えられたFirstLineSTとFirstLineENDの各データをメモリ(RAM56又は不揮発性メモリ57)の所定記憶領域に記憶する。
一方、2行目以降の印刷動作を行う際も同様に、紙送り過程もしくはそれより早いタイミングでイメージ展開が開始されており、そのイメージ展開の結果から、そのとき印刷すべき行についての移動開始位置LastLineSTと停止位置LastLineENDの各データがそれぞれ決まる。そして、各データLastLineST,LastLineENDが与えられて、シーケンス制御の印刷動作を行うよう指示がなされる。ステップS35では、与えられた移動開始位置LastLineSTと停止位置LastLineENDの各データを、メモリ(RAM56又は不揮発性メモリ57)の所定記憶領域に記憶する。メモリには最終行の移動開始位置LastLineSTと停止位置LastLineENDを記憶するための所定記憶領域が用意されている。給紙直後以外の移動開始位置LastLineSTと停止位置LastLineENDは、毎行の印刷の度に順次更新される。ここで、LastLineSTとLastLineENDは、現在の行を印刷する現時点における最終行を意味する。よって、1枚の印刷終了時点では、移動開始位置LastLineSTと停止位置LastLineENDの各データは、最終行の移動開始位置と停止位置をそれぞれ示すことになる。
ステップS36では、与えられた移動開始位置から停止位置までキャリッジ32を移動させるようにCRモータ33を駆動させ、印刷を実行する。上位のプログラムを実行するCPU53は、用紙38の頭出し過程で、紙送り残量(残りステップ数)を監視し、その紙送り残量が、キャリッジ32の移動開始位置から印刷開始位置までの移動時間に等しい所要時間に相当する残りステップ数に達した時点で、シーケンス制御側へキャリッジ駆動指令を出す。このキャリッジ駆動指令に基づき、ステップS36におけるCRモータ33の駆動が開始される。このため、キャリッジ動作は頭出し動作又は紙送り動作と一部平行して進められ重ね合わせられる。この結果、頭出し動作又は紙送り動作が終了するとほぼ同時にキャリッジ32が印刷開始位置に到達してインク滴噴射(ファイア)が開始される。もちろん、このような紙送り動作とキャリッジ動作とが重ね合わされることなく、紙送り動作とキャリッジ動作が交互に行われる制御を採用してもよい。この場合は、用紙38の頭出し終了又は紙送りの終了を待って、CRモータ33の駆動が開始されることになる。
ここで、1部目(1枚目)の初行を印刷するとき、キャリッジ32は設定待機位置LineSTPosで待機しており、その待機中に移動開始位置FirstLineSTが決まることになる。このとき、設定待機位置LineSTPosと印刷開始位置との間に必要な助走距離が確保されていない場合、CPU53はシーク処理を行って移動開始位置まで戻るように指示する。この結果、CRモータ33が正転駆動されて、キャリッジ32は進行すべき方向と反対方向となるトリガ位置側へ戻った後、移動開始位置FirstLineSTから移動を開始する。但し、設定待機位置LineSTPosで待機する場合、かなり高い確率で戻るシーク動作は不要となる。
印刷処理ルーチンにおいてキャリッジ32が初行の印刷のための1パスの移動の過程で、印刷終了位置に到達すると、CRモータ33の減速が開始され、キャリッジ32は停止位置FirstLineENDで停止する。この過程において、キャリッジ32が印刷終了位置に到達すると、シーケンス制御の一部である図示しない紙送りルーチンが実行され、PFモータ42が所定の紙送りステップ数だけ駆動されることで、用紙38が紙送りされる。こうして印刷処理ルーチンと紙送りルーチンが一部重複しながら交互に実行されることにより、各行の印刷が順次進められる。こうして1部目(1枚目)の全行の印刷を終えると、排紙コマンドが与えられ、その結果、CPU53は図13に示す排紙ルーチンを実行する。
排紙処理ルーチンが開始されると、まずステップS41において、コピー印刷であるか否かを判断する。コピー印刷であれば、次に部数指定≠0であるか否かを判断する(ステップS42)。部数指定≠0であれば、次にトリガ許可領域であるか否かを判断する(ステップS43)。トリガ許可領域であれば、次にキャリッジの印刷移動方向がトリガ方向(トリガ位置に向かう方向)であるか否かを判断する(ステップS44)。ここまでの各判断は、キャリッジ32の減速過程で行われる。そして、キャリッジの印刷移動方向がトリガ方向であれば、キャリッジ32の停止位置をトリガ位置TriggerPosへ延長する。この結果、キャリッジ32は停止位置LastLineENDを通過してトリガ位置TriggerPosまで移動して停止する。もちろん、キャリッジ32を停止位置LastLineENDで一旦停止させた後、トリガ位置TriggerPosまで移動させても構わない。そして、次のステップS46では、メモリに記憶された最終行の停止位置LastLineENDをトリガ位置TriggerPosに書き替える。
一方、最終部(最終頁)である(部数指定≠0ではなく)(S42でNO)か、トリガ許可領域でない(S43でNO)か、あるいはキャリッジ32の印刷移動方向がトリガ方向ではない(S44でNO)場合は、ステップS47において、PFモータ42を排紙ステップ数だけ駆動させる。そして、次のステップS48では、紙検出器49が非検知状態の「なし」であるか否かを判断する。「なし」でなければ、次のステップS49で、駆動が終了したか否かを判断する。そして、駆動が終了する前に紙検出器49が「なし」に切り換わると、PFモータ42をはき出しステップ数だけ駆動させ、用紙38を完全に排紙させる。一方、紙検出器49が「なし」に切り換わることなく、駆動を終了した場合は、紙ジャムエラーとして処理する。
例えば1部目(1枚目)の最終行の印刷を終了して排紙コマンドが与えられたとき、用紙の位置がトリガ許可領域TAにある場合と、キャリッジ移動方向がトリガ方向にある場合は、その後の排紙により、紙検出器49が「なし」に切り換わると、図10に示す給紙処理ルーチンを再び開始する。
そして、給紙処理ルーチンにおけるステップS1で、キャリッジ32がトリガ位置TriggerPosにはない(S1でNO)ので、キャリッジ32をトリガ位置TriggerPosへ移動させるようにCRモータ33を駆動させる。この結果、キャリッジ32がトリガ位置へ移動して、クラッチ手段44が接続状態に切り換えられる。このクラッチ手段44の切り換えにより、図11に示す給紙駆動ルーチンが開始され、用紙38の給紙及び頭出しが行われる。
一方、給紙処理ルーチンにおいて、2部目(2枚目)以降のコピー印刷に際しては、ステップS3でコピー印刷と判断され、次のステップS4で部数指定=部数指定−1の計算をする。
そしてステップS5において、k=FirstLineST−FirstLineEND、l=LastLineST−LastLineEND、m=TriggerPos−FirstLineST、n=TriggerPos−LastLineENDを計算する。このとき、FirstLineST、FirstLineEND、LastLineST、LastLineENDは、それぞれ前の部(前頁)の印刷処理時にメモリに記憶された初行の移動開始位置、初行の停止位置、最終行の移動開始位置、最終行の停止位置の各データが読み出されて計算が行われる。よって、2部目の用紙の給紙の際は、1部目の印刷処理時にメモリに書き込まれた各データが読み出されて計算が行われる。
2部目の用紙の給紙処理時である今回は、次のステップS6において、初行の移動開始位置FirstLineSTの値が初期値(FirstLineST=FFFF)ではないと判断される。このため、ステップS7に進むことになる。
ステップS7では、部数指定≠0であるか、つまり最終部の印刷であるか否かを判断する。例えばコピー部数「5部」のコピー印刷であれば、2部目である今回は部数指定の値が「3」となって部数指定≠0ではないので、ステップS8に進む。
次のステップS8でLastLineEND=TriggerPosであるか否かを判断する。すなわち前の部の初行の停止位置がトリガ位置であるか否かを判断する。LastLineEND=TriggerPosが成立する場合は、ステップS13に進み、不成立の場合はステップS9に進む。つまり、LastLineENDがTriggerPosであることは、前の部の印刷時の排紙処理ルーチン(S44,S46)で最終行がトリガ方向であったことを指すので、最終行がトリガ方向であった場合はステップS13に進む。一方、最終行がトリガ方向でなかった場合はステップS9に進む。
ステップS9では、最終行がトリガ許可領域であるか否かを判断する。最終行がトリガ許可領域であればステップS10に進み、トリガ許可領域でなければステップS13に進む。
ステップS10では、k<0であるか否かを判断する。k<0であればステップS13に進み、k<0でなければステップS11に進む。
ステップS11では、m<nであるか否かを判断する。m<nでなければステップS13に進み、m<nであればステップS14に進む。
つまり、ステップS9,10,11は、初行の移動開始位置をFirstLineENDに置き換えるべきかどうかを決める判断処理に相当する。そして、(1)最終行がトリガ許可領域にあり(S9)、かつ(2)k<0でない、つまり初行のキャリッジ移動方向が80桁から1桁へ向かう方向(トリガ方向)であり(S10)、かつ(3)m<nである、つまり最終行の停止位置からトリガ位置までの距離(=n)が、トリガ位置から初行の停止位置までの距離(=m)よりも長い場合に限り、ステップS14に進む。そして、ステップS14においてキャリッジ32を初行の停止位置まで移動させる。
また、(1)LastLineENDがTriggerPosである(S8でYES)か、(2)最終行がトリガ許可領域にない(S9でNO)か、(3 )k<0である、つまり初行が1桁から80桁へ向かう方向(反トリガ方向)であるか、(4)m<nが成立しない、つまり最終行の停止位置からトリガ位置までの距離(=n)が、トリガ位置から初行の停止位置までの距離(=m)以下であるかのうちいずれかである場合には、ステップS13に進む。
こうして図9(a)に示すように、複数部のコピー印刷時において、1部目の初行はトリガ位置から初行の移動開始位置(設定待機位置LineSTPos)まで移動し、反トリガ方向に向かって移動することで初行の印刷が行われる。この際、助走距離が不足すればシーク動作を行って、助走距離を確保できる必要な距離だけ戻った後、その位置から印刷のための移動を開始する。そして、1枚目の最終行において、図6、図9(a)に示すようにトリガ許可領域にあり、かつキャリッジ移動方向がトリガ方向であれば、そのまま停止位置FirstLineENDがトリガ位置TriggerPosまで延長される。
そして、2枚目以降における初行印刷時には、キャリッジ32は1枚目の初行と同じ移動開始位置FirstLineSTに移動する。このため、給紙後の初行印刷時における助走距離を短くでき、給紙後、早期に初行の印刷(インク滴吐出)を開始することができる。そして、最終部であるN部目における最終行の印刷はTriggerPosの手前の停止位置LastLineENDで停止する。そして、その後、キャリッジ32はホームポジションに戻る。
一方、図9(b)に示すように、1枚目の最終行が反トリガ方向となる複数部のコピー印刷の場合は、図7、図9(b)に示すように、まず1枚目の最終行印刷時にキャリッジ32を停止位置FirstLineENDで停止させた後、キャリッジ32を反転させてトリガ方向に向かって移動させてトリガ位置TriggerPosまで移動させる。そして、その後の給紙処理中において、最終行の停止位置LastLineENDからトリガ位置TriggerPosまで移動するのに必要な第1距離nと、トリガ位置TriggerPosから初行の停止位置FirstLineENDまで移動するのに必要な第2距離mとを比較し、第1距離nが第2距離より長い(m<n)場合は、初行の移動開始位置をFirstLineENDに設定する。すなわち、最終行の印刷を終えて停止したキャリッジ32が、その停止位置LastLineENDから次の給紙を開始すべくトリガ位置TriggerPosまで移動する第1所要時間と、次の給紙を開始させたキャリッジ32がトリガ位置TriggerPosから初行の停止位置まで移動する第2所要時間とを比較し、両所要時間のうち短く済む方を選択する。第1所要時間が第2所要時間より短く済む場合は、2枚目以降の初行の印刷時のキャリッジ移動方向をトリガ方向とすることにより、最終行のキャリッジ移動方向がトリガ方向になるようにする。しかも、m<nが成立したときに限り、初行のキャリッジ移動方向を反対にするため、印刷時のキャリッジ移動方向を反対にしたためにスループットが却って低下する事態を極力防止できる。
なお、m<nの条件に替えて次の条件を採用すると、より正確にスループットを向上できるキャリッジ移動方向を選択できる。すなわち、最終行の移動開始位置と、初行の移動開始位置をも考慮する条件とする。まず印刷時のキャリッジ移動方向を反対にしなかった場合における、最終行の停止位置からトリガ位置までの第1距離n1と、トリガ位置から初行の移動開始位置までの第2距離m1とを合計した第1総移動距離p1を求める。次に印刷時のキャリッジ移動方向を反対にした場合における、最終行の停止位置からトリガ位置までの第1距離n2と、トリガ位置から初行の移動開始位置までの第2距離m2とを合計した第2総移動距離p2を求める。そして、第1総移動距離p1と第2総移動距離p2のうち短い方を選択する。すなわち、第1総移動距離p1が第2総移動距離p2より長い(p1>p2)か否かを判断し、この判断条件が成立する場合は、初行のキャリッジ移動方向を反対にする。つまり、最終行の印刷を終えたキャリッジ32が給紙開始のためトリガ位置まで移動する第1所要時間と、給紙を開始させたキャリッジ32がトリガ位置から初行の移動開始位置まで移動する第2所要時間とを合計した総所要時間を、最終行を反トリガ方向のままとする場合(第1所要時間)と、最終行をトリガ方向にすべく初行のキャリッジ移動方向を反対にした場合(第2所要時間)とで比較する。そして、両総所要時間のうち短く済む方のキャリッジ移動方向を選択する。この場合、最終行がトリガ方向となるとき場合は、最終行の印刷を終えた後もキャリッジ32が停止せずトリガ位置まで移動可能であることを考慮して総所要時間を求める(又は距離換算する)ことが好ましい。
そして、総所要時間が、反転させた方が短く済む場合(p1>p2の成立時)は、図8,図9(b)に示すように初行のキャリッジ移動方向を1枚目のときの場合に対して反対にする。こうして2枚目以降(2枚目〜(N−1)枚目)のコピー印刷は、各行のキャリッジ移動方向が1枚目のときのキャリッジ移動方向に対して反対となって印刷が行われる。
但し、最終枚目(N枚目)のコピー印刷は、最終行の印刷終了後、給紙のためにトリガ位置まで移動させる必要がないので、1枚目と同様にキャリッジ移動方向が反トリガ方向となる初行の移動開始位置に戻す。すなわち、図10におけるステップS7において、部数指定≠0であれば、ステップS12に進み、k<0、つまり初行がトリガ方向であるか否かを判断する。そして初行がトリガ方向であった(k<0)場合は、ステップS14に進んで、キャリッジ32をそのときの初行の停止位置、つまり1枚目における初行の移動開始位置に移動させる。このため、最終枚目のコピー印刷時には、キャリッジ32がトリガ位置から初行の移動開始位置FirstLineSTまで移動する所要時間が短く済み、スループット向上に寄与できる。
一方、最終枚目(部数指定≠0)のコピー印刷時に、k<0が不成立(つまり初行が反トリガ方向)であった場合は、ステップS13に進んで、キャリッジ32を初行の移動開始位置FirstLineSTに移動させる。このように最終枚目については常に初行がトリガ方向になるキャリッジ移動方向で各行の印刷が行われる。
以上詳述したように、本実施形態によれば、以下の効果が得られる。
(1)1枚目の初行のイメージ展開結果から決まる印刷開始位置に必要な助走距離を確保した適切な移動開始位置FirstLineSTを、2枚目以降のコピー印刷時の初行の移動開始位置とした。このため、キャリッジ32が移動開始位置から印刷開始位置まで移動する所要時間を短くでき、スループット向上に寄与できる。
(2)最終行が反トリガ方向である場合には、2枚目以降の初行のキャリッジ移動方向を反転させるので、最終行をトリガ方向とすることができる。このため、最終行の印刷を終えた後、キャリッジ32がトリガ位置に移動するまでの所要時間を短くできる。このため、次の用紙の給紙が早期に開始され、スループット向上に寄与できる。
(3)最終行がトリガ方向になるようにキャリッジ32の移動方向を1枚目のコピー印刷時の移動方向に対して反対にする条件として、第1距離nが第2距離mより長いこと(m<n)としたので、移動方向を反対にしたことが却ってスループットを落とす事態をなるべく少なく済ませられる。
(4)特に2枚目以降のコピー印刷時の初行のキャリッジ移動方向を1枚目の初行のキャリッジ移動方向と反対にする場合の判断条件として、ステップS11のm<nに替え、次の判断処理を採用すると、一層スループット向上に寄与できる。すなわち、印刷時のキャリッジ移動方向を反対にしなかった場合における、最終行の停止位置からトリガ位置までの第1距離n1と、トリガ位置から初行の移動開始位置までの第2距離m1とを合計した第1総移動距離を求める。次に印刷時のキャリッジ移動方向を反対にした場合における、最終行の停止位置からトリガ位置までの第1距離n2と、トリガ位置から初行の移動開始位置までの第2距離m2とを合計した第2総移動距離を求める。そして、第1総移動距離と第2総移動距離のうち短い方を選択する。この場合、最終行がトリガ方向となる場合は、最終行の印刷を終えたキャリッジ32が減速又は停止せずそのままトリガ位置まで移動できることを考慮し、減速又は停止しないことによる短縮分の時間を距離に換算して総移動距離を求めると、より正確に適切なキャリッジ移動方向を選択でき、一層スループット向上に寄与できる。
(5)1枚目の最終行のキャリッジ移動方向が反トリガ方向であってもキャリッジ移動方向を反対方向にした場合であっても、最終枚目(N枚目)のコピー印刷については、最終行の印刷終了後、給紙のためにトリガ位置まで移動させる必要がないので、初行のキャリッジ移動方向を1枚目の初行と同じ方向に戻すようにした。このため、最終枚目の初行の移動開始位置までトリガ位置から移動する際の距離が短く済み、早期に初行の印刷を開始できるので、スループット向上に寄与できる。
なお、実施形態は、発明の効果が得られる限りにおいて、以下の構成に変更してよい。
(変形例1)前記実施形態では、コピー印刷の例であったが、コピー印刷に限定されない。要するに同一内容(同一データ)を複数枚印刷する構成であれば足りる。この場合、複合機に限らず印刷機能を有するプリンタであればよい。また、印刷の対象となるデータは、メモリカード等の外部記録媒体から読み込んで取得する構成、あるいはホストコンピュータ10から通信で取得する構成のどちらでもよい。
(変形例2)さらに1部が複数枚からなる印刷にも適用できる。この場合、1部を構成する複数枚(複数頁)の各頁毎に初行と最終行の移動開始位置と停止位置とをそれぞれ記憶できるようにメモリに頁毎の記憶領域を用意し、2部目以降を印刷する際に、前回の部の対応する頁を印刷するときに取得した値FirstLineST、FirstLineEND、LastLineST、LastLineENDを用いてその頁の初行の移動開始位置を決める構成とする。この構成によれば、各頁の初行の移動開始位置FirstLineSTが異なる位置であっても、2部目以降は、全頁で初行を最適な移動開始位置から印刷できる。
(変形例2)前記実施形態では、初行以外の行については、シーク動作が必要になる構成であったが、初行と同様に全行について1部目の行ごとの移動開始位置LineSTと停止位置LineENDをメモリに記憶し、2部目以降における各行の印刷時に、対応する行の移動開始位置をメモリから読み出してキャリッジ32をその移動開始位置へ移動させる構成も採用できる。この場合、2部目以降でキャリッジ移動方向を1部目のそれに対して反転させている部の印刷においては、メモリから対応する行の停止位置LineENDを読み出してこれを移動開始位置とし、キャリッジ32をこの移動開始位置に移動させる。また、キャリッジ32が印刷終了位置を過ぎれば次行の移動開始位置がその移動方向先に位置する場合は、キャリッジ32を停止させることなくそのまま次行の移動開始位置へ移動させるのが好ましい。この構成によれば、全行に渡りシーク動作が発生しなくなるので、給紙所要時間の短縮に加え、各行の印刷時のシーク動作に起因するロスタイムも削減でき、スループット向上に一層寄与する。なお、全行に渡って行うのではなく、初行の他、複数行でも足りる。
(変形例3)1部目の2行目以降の記録については、キャリッジ32を設定待機位置に移動させることに限定されない。例えば記録可能領域外で待機してもよいし、特許文献1のように1部目の初行の移動開始位置を記憶し、2行目以降に初行と同じ移動開始位置に移動させる方法も採用できる。この場合、2部目以降の2行目以降についても1部目の初行と同じ移動開始位置を採用できる。
(変形例4)トリガ位置に向かう方向ではない場合に初行のキャリッジ移動方向を反対にする方式は採用するものの、2部目以降の初行の移動開始位置を1部目の初行の移動開始位置とする方式は廃止してもよい。例えば設定待機位置に移動してもよいし、記録可能領域外で待機してシーク動作を行う方式でもよい。
(変形例5)位置特定情報として移動開始位置と停止位置を記憶したが、これに限定されない。印刷開始位置と印刷終了位置を記憶してもよい。この場合、これらの値に必要な助走距離を加えればよい。さらに移動開始位置を特定しうる限りにおいてその他のデータを採用でき、例えば印刷開始位置と移動開始位置との間の規定値、基準位置(例えば原点)からの移動開始位置までの距離や移動時間を位置特定情報として採用できる。
(変形例6)前記実施形態では、判断条件として距離を用いたが、例えばステップS10,S11,S12において、キャリッジ32の移動所要時間を用いて判断してもよい。
(変形例7)前記実施形態では、双方向印刷時に実施したが、一方向印刷時に実施してもよい。
(変形例8)前記実施形態では、印刷開始位置に所定の助走距離として印刷可能距離を加えて移動開始位置を決めたが、助走距離は適宜な値を採用できる。例えば印刷可能距離以上であり、かつ最大印刷可能領域よりも印刷範囲の狭い印刷時において、移動開始位置が最大印刷可能領域の両端位置から外側へ印刷可能距離だけシフトした位置より用紙中央寄りに位置するような値として設定することが好ましい。
(変形例9)前記実施形態では、初行印刷時にキャリッジ32を設定位置LineSTPosで待機させ、助走距離が不足する場合は、シーク動作を行なったが、逆戻りするシーク動作が不要な待機位置で待機する構成を採用できる。例えばトリガ位置で待機したり、印刷開始位置がどこであっても助走距離を確保できるそのときの印刷条件(左右方向の余白や縁なし印刷時の左右方向端縁位置)から決まる最もトリガ位置寄りの位置で待機する構成とする。
(変形例9)前記実施形態では、複合機のプリンタ部14をインクジェット式プリンタとしたが、プリンタ部の記録方式は適宜変更できる。例えばプリンタ部は、ドットインパクト式プリンタなどであってもよい。
以下、前記実施形態および各変形例から把握される技術的思想を記載する。
(1)前記同一データの記録を複数部行う場合とは、1枚の記録の複数部記録であることを特徴とする請求項1乃至7のいずれか一項に記載の記録装置。
(2)同一データの記録を複数部行う場合とは、複数部のコピー記録であることを特徴とする請求項1乃至7のいずれか一項に記載の記録装置。
(3)前記同一データの記録を複数部行う場合とは、一部につき複数枚の記録の複数部記録であり、前記記憶手段は、1部目の複数枚の記録を行うときの各初行の位置特定情報をそれぞれ格納することを特徴とする請求項1乃至7のいずれか一項に記載の記録装置。
(4)前記給送開始手段は、前記搬送手段の駆動源と前記記録媒体を給送する給送手段とを動力伝達可能な状態に接続するクラッチ手段と、前記記録手段が移動経路上の記録可能領域外の前記所定位置に移動したときに前記クラッチ手段が接続されるように前記記録手段によって操作される操作手段とを備えることを特徴とする請求項1に記載の記録装置。
(5)前記記録手段の移動経路上の記録可能領域内に前記記録手段が1部目の初行記録開始前に待機する待機位置が設定されており、前記制御手段は、前記待機位置からの移動で記録開始位置からの記録が可能な場合は前記待機位置から記録手段の移動を開始するとともに、記録開始位置に応じた適正な移動開始位置を演算して該移動開始位置を特定しうる位置特定情報を前記記憶手段に格納し、一方、前記待機位置からの移動では助走距離が不足して記録開始位置からの記録が行えない場合は前記待機位置から前記記録開始位置に応じた適正な移動開始位置まで戻って前記記録手段の移動を開始するとともに、前記適正な移動開始位置を特定しうる位置特定情報を前記記憶手段に格納することを特徴とする請求項1乃至7のいずれか一項に記載の記録装置。
(6)前記制御手段は、行ごとにイメージ展開処理を行うとともに初行のイメージ展開処理の結果から記録位置情報を把握することを特徴とする請求項1乃至7のいずれか一項に記載の記録装置。なお、記録位置情報は、初行の記録開始位置と記録終了位置とを含むことが好ましい。
(7)前記位置特定情報は、前記記録位置情報としての記録開始位置に所定の助走距離を加えて決まる移動開始位置であることを特徴とする請求項5乃至7のいずれか一項に記載の記録装置。
11…記録装置としての複合機、14…プリンタ部、15…スキャナ部、16…給送手段としての自動給紙装置(ASF)、16b…給送手段を構成するホッパー、17…操作パネル、32…記録手段を構成するキャリッジ、33…移動手段を構成するCRモータ(キャリッジモータ)、34…移動手段を構成するタイミングベルト、35…記録手段を構成する記録ヘッド、38…記録媒体としての用紙、42…駆動源としてのPFモータ(紙送りモータ)、43…給送開始手段を構成するとともに操作手段としてのトリガレバー、44…給送開始手段を構成するクラッチ手段、46…搬送手段を構成する搬送ローラ、47…搬送手段を構成する排紙ローラ、48…給送手段を構成する給紙ローラ、53…制御手段及び判断手段としてのCPU、56…記憶手段を構成するRAM、57…記憶手段を構成する不揮発性メモリ、59…メモリカード入出力回路、60…ヘッドドライバ、65…カウンタ、66…カウンタ。