図1は、プリンター1(印刷装置)の要部の構成を示す図である。
図1を用いた説明では、印刷媒体(ロール紙)を上流側から下流側へ搬送しながら印刷を行う印刷装置において、矢印に示すように、図中で左へ向かう方向(印刷媒体を搬送する方向のうち上流側への方向)を「前方」とする。また、図中で右へ向かう方向(印刷媒体を搬送する方向のうち下流側への方向)を「後方」とする。また、図中で上へ向かう方向(プリンター1を設置した際の重力方向と反対の方向)を「上方」とする。また、図中で下へ向かう方向(プリンター1を設置した際の重力方向)を「下方」とする。
プリンター1は、印刷媒体に文字や画像等を印刷する装置であり、ホストコンピューター200(図2参照)と通信接続し、ホストコンピューター200から受信した画像データから生成した印刷データに基づいて印刷を実行する。
本実施形態では、プリンター1が文字や画像等を印刷する印刷媒体の一例として、ロール状に巻き回されたメディアM(ロール紙)を例示する。以下の説明において、メディアMの面のうち、印刷される側(インクジェットヘッド51~52と対向する側)の面を表面、又は、印刷面と表現し、印刷されない側の面を裏面と表現する。
図1に示すように、プリンター1は、繰出軸20からメディアMを繰り出す繰出部2と、繰出部2により繰り出されたメディアMに文字や画像等を印刷する印刷部3と、印刷部3により印刷されたメディアMを巻取軸25により巻き取る巻取部4とを備える。
繰出部2は、メディアMの終端を巻き付けた繰出軸20と、繰出軸20から繰り出されたメディアMを巻き掛ける従動ローラー21とを備える。繰出軸20は、メディアMの表面を外側に向けた状態、換言すると、メディアMの裏面と従動ローラー21とが対向する状態で、メディアMの終端を巻き付けて支持する。繰出軸20が図1において時計回りに回転することで、繰出軸20に巻き付けられたメディアMは、従動ローラー21を経由して印刷部3に向けて繰り出される。メディアMは、繰出軸20に着脱自在な芯管(不図示)を介して繰出軸20に巻き付けられている。繰出軸20のメディアMが使い切られた際には、ロール状のメディアMが巻き付けられた新たな芯管を繰出軸20に装着して、繰出軸20のメディアMを取り換えることが可能である。なお、繰出軸20は、動力伝達機構を介して連結された不図示のモーターからの駆動力を受けて回転する。
印刷部3は、繰出部2から繰り出されたメディアMをプラテンドラム30で支持しつつ、プラテンドラム30の外周面に沿って配置された印刷ユニット5によって、メディアMに文字や画像等を印刷する。印刷ユニット5については、後述する。プラテンドラム30の前方には、前駆動ローラー31が設けられ、プラテンドラム30の後方には、後駆動ローラー32が設けられる。前駆動ローラー31から後駆動ローラー32へと搬送されるメディアMは、プラテンドラム30に巻き掛けられて支持される。印刷部3は、メディアMのプラテンドラム30に巻き掛けられている部分に向けて、印刷ユニット5が備えるインクジェットヘッド51からインクを吐出し、メディアMに着弾したインクによって文字や画像等を印刷する。
前駆動ローラー31は、溶射によって形成された複数の微小突起を外周面に有しており、繰出部2から繰り出されたメディアMを裏面側から巻き掛ける。前駆動ローラー31は、図1において時計回りに回転することで、繰出部2から繰り出されたメディアMを搬送方向Hの下流側に搬送する。前駆動ローラー31と対向する位置には、前駆動ローラー31と協働してメディアMを搬送するニップローラー31aが設けられている。ニップローラー31aは、前駆動ローラー31側へ付勢された状態でメディアMの表面に当接し、前駆動ローラー31との間でメディアMを挟む。これにより、前駆動ローラー31とメディアMと間の摩擦力が確保され、プリンター1は、前駆動ローラー31によるメディアMの搬送を確実に実行できる。
プラテンドラム30は、図示せぬ支持機構により回転自在に支持された円筒形状のドラムである。プラテンドラム30は、前駆動ローラー31から後駆動ローラー32へ搬送されるメディアMを、裏面側から巻き掛ける。プラテンドラム30は、メディアMとの間の摩擦力により搬送方向Hに従動して回転しながら、メディアMを裏面側から支持する。
印刷部3には、プラテンドラム30への巻き掛け部の両側でメディアMを折り返す従動ローラー33、及び、従動ローラー34が設けられる。従動ローラー33は、前駆動ローラー31とプラテンドラム30の間でメディアMの表面を巻き掛けて、メディアMを折り返す。従動ローラー34は、プラテンドラム30と後駆動ローラー32の間でメディアMの表面を巻き掛けて、メディアMを折り返す。このように、プラテンドラム30に対して搬送方向Hの上流側、及び、下流側それぞれにおいてメディアMを折り返すことで、プラテンドラム30へのメディアMの巻き掛け長さを長く確保できる。
後駆動ローラー32は、溶射によって形成された複数の微小突起を外周面に有しており、プラテンドラム30から従動ローラー34を経由して搬送されるメディアMを裏面側から巻き掛ける。後駆動ローラー32は、図1において時計回りに回転することで、メディアMを巻取部4へと搬送する。後駆動ローラー32と対向する位置には、後駆動ローラー32と協働してメディアMを搬送するニップローラー32aが設けられる。ニップローラー32aは、後駆動ローラー32側へ付勢された状態でメディアMの表面に当接し、後駆動ローラー32との間でメディアMを挟む。これにより、後駆動ローラー32とメディアMとの間の摩擦力が確保され、プリンター1は、後駆動ローラー32によるメディアMの搬送を確実に実行できる。
このように、前駆動ローラー31から後駆動ローラー32へと搬送されるメディアMは、プラテンドラム30の外周面に支持される。印刷部3では、プラテンドラム30に支持されたメディアMの表面に文字や画像等を印刷するために、印刷ユニット5に、吐出するインクの色の異なる複数のインクジェットヘッド51が設けられる。各インクジェットヘッド51は、プラテンドラム30に巻き掛けられたメディアMの表面に対して所定の間隙を設け対向するように位置し、対応する色のインクを吐出する。プリンター1は、搬送方向Hへ搬送されるメディアMに対して各インクジェットヘッド51がインクを吐出することで、メディアMの表面に文字や画像等を印刷する。
本実施形態の複数のインクジェットヘッド51は、メディアMの搬送方向Hと交差する方向に延在するライン型のヘッドであり、シアン(C)、マゼンタ(M)、イエロー(Y)、及び、ブラック(K)のそれぞれに対応するヘッドである。本実施形態において、各インクジェットヘッド51が吐出するインクは、紫外線を照射することにより硬化するUV(Ultraviolet)インクである。そのため、印刷ユニット5は、インクを硬化させてメディアMに定着させるUV光源61とUV光源62とがプラテンドラム30の外周に沿って設けられる。
本実施形態では、インクの硬化は、仮硬化と本硬化との二段階に分けて実行される。仮硬化とは、メディアMに吐出されたインクが、メディアMから流れたり滲んだりとしない程度にインクの表面を硬化することを示す。本硬化とは、仮硬化したインクに対し、仮硬化より光量の多い紫外線を照射することにより、インクの内部まで完全に硬化することを示す。複数のインクジェットヘッド51の各間には、仮硬化用のUV光源61が配置され、UV光源61により各インクジェットヘッド51が吐出したインクを仮硬化する。複数のインクジェットヘッド51の搬送方向Hの下流側には、本硬化用のUV光源62が配置され、UV光源62により各インクジェットヘッド51が吐出したインクを本硬化する。
図1に示すように、UV光源62の搬送方向Hの下流側には、インクジェットヘッド52が設けられる。インクジェットヘッド52は、プラテンドラム30に巻き掛けられたメディアMの表面に対して所定の間隙を設けて対向するように位置し、透明のインクをメディアMに対して吐出する。この透明のインクも、UVインクである。インクジェットヘッド52の搬送方向Hの下流側には、UV光源63が設けられる。UV光源63は、UV光源61より光量の多い紫外線を照射し、インクジェットヘッド52によりメディアMの表面に吐出された透明のインクを本硬化する。これによって、透明のインクは、メディアMに定着する。
このように、印刷部3では、プラテンドラム30の外周部に巻き掛けられるメディアMに対して、インクの吐出および硬化が適宜実行されて、メディアMに文字や画像等を印刷する。印刷されたメディアMは、後駆動ローラー32によって巻取部4へと搬送される。
巻取部4は、メディアMの終端を巻き付けた巻取軸25の他に、巻取軸25と後駆動ローラー32の間でメディアMを裏面側から巻き掛ける従動ローラー41を備える。巻取軸25は、メディアMの表面を外側に向けた状態、換言すると、メディアMの裏面と従動ローラー41とが対向する状態で、メディアMの終端を巻き取って支持する。巻取軸25が図1の時計回りに回転すると、後駆動ローラー32から搬送されたメディアMは、従動ローラー41を経由して巻取軸25に巻き取られる。メディアMは、巻取軸25に着脱自在な芯管(不図示)を介して巻取軸25に巻き取られる。巻取軸25に巻き取られたメディアMが満杯になった際には、芯管ごとメディアMを取り外すことが可能である。つまり、メディアMは、芯管ごとプリンター1に対して着脱可能に構成される。なお、巻取軸25は、動力伝達機構を介して連結された不図示のモーターからの駆動力を受けて回転する。
プリンター1は、テンションセンサー74(図2)や、エッジセンサー75、マークセンサー76等の種々のセンサーを備える。
テンションセンサー74は、例えば、従動ローラー21と、従動ローラー34と、従動ローラー41とにそれぞれ配置される。従動ローラー21に配置されるテンションセンサー74は、繰出軸20から前駆動ローラー31までのメディアMのテンション(すなわちメディアMの張り)を検出し、検出結果を後述するプリンター制御部100(図2)に出力する。プリンター制御部100は、入力された検出結果に基づいて、繰出軸20の回転を制御し、繰出軸20から前駆動ローラー31までのメディアMのテンションを調整する。従動ローラー34に配置されるテンションセンサー74は、前駆動ローラー31から後駆動ローラー32までのメディアMのテンションを検出し、検出結果を後述するプリンター制御部100に出力する。プリンター制御部100は、入力された検出結果に基づいて、後駆動ローラー32の回転を制御し、前駆動ローラー31から後駆動ローラー32までのメディアMのテンションを調整する。従動ローラー41に配置されるテンションセンサー74は、後駆動ローラー32から巻取軸25までのメディアMのテンションを検出し、検出結果を後述するプリンター制御部100に出力する。プリンター制御部100は、入力された検出結果に基づいて、巻取軸25の回転を制御し、後駆動ローラー32から巻取軸25までのメディアMのテンションを調整する。
エッジセンサー75は、従動ローラー21と前駆動ローラー31との間に配置される。エッジセンサー75は、例えば、超音波センサー等により構成され、メディアMの幅方向(搬送方向Hと交差する方向)の位置を検出し、検出結果をプリンター制御部100に出力する。プリンター制御部100は、検出結果に基づいて、メディアMの幅方向の位置を調整し、メディアMが蛇行して搬送経路8において搬送されることを抑制する。
マークセンサー76は、メディアMが有するマークを検出するセンサーであり、例えば、反射型光学センサーにより構成され、光をメディアMに対して投光する投光部と、投光された光の反射光を受光する受光部とを備える。投光部は、印加される電圧に応じて投光する光の光量である投光量を異ならせる発光素子により構成される。また、受光部は、受光する光の光量に応じて出力する電圧を異ならせる受光素子により構成される。マークセンサー76は、受光部による受光結果に基づいてマークを検出し、検出結果をプリンター制御部100に出力する。プリンター制御部100は、検出結果に基づいて、メディアMの位置を管理し、例えば、印刷を開始する際にメディアMの位置をメディアMに無駄な余白が生じないよう、適切な印刷開始位置に設定する頭出し動作を実行する。
次に、プリンター1の機能的構成について説明する。
図2は、プリンター1の機能的構成を示す図である。
プリンター1は、プリンター制御装置10(印刷制御装置)と、通信部11と、入力部12と、表示部13と、センサー部14と、印刷部3と、搬送部15とを備える。
プリンター制御装置10は、プリンター1の各部を制御する装置であり、プリンター制御部100と、プリンター記憶部110(記憶部)とを備える。
プリンター制御部100は、CPUや、ROM、RAM、ASIC、信号処理回路等を備え、プリンター1の各部を制御する。プリンター制御部100は、例えばCPUが、ROMや後述するプリンター記憶部110等に記憶されたプログラムをRAMに読み出して処理を実行し、また、例えばASICに実装された機能により処理を実行し、また、例えば信号処理回路で信号処理を行って処理を実行する等、ハードウェア及びソフトウェアにより処理を実行する。プリンター制御部100は、機能ブロックとして、画像処理部101と、書込部102と、読出部103と、読書制御部104(制御部)と、容量検出部105と、計測部106と、報知部107と、解消部108とを備える。これら機能ブロックは、CPU等のハードウェアが、プリンター記憶部110やROM等に記憶されたプログラムを読み出して処理を実行する等により、ハードウェアとソフトウェアとの協働により処理を実行する。これら機能ブロックについては後述する。
プリンター記憶部110は、ハードディスクや、EEPROM、SSD(Solid State Drive)等の不揮発性メモリーを備え、各種データを書き換え可能に記憶する。特に、本実施形態のプリンター記憶部110は、受信用SSD111と、印刷用SSD112(不揮発性メモリー)とを備える。受信用SSD111は、ホストコンピューター200から受信した、メディアMに印刷される文字や画像等の画像データを記憶するSSDである。印刷用SSD112は、受信用SSD111が記憶する画像データに対して画像処理部101が処理して生成した印刷データを記憶するSSDである。受信用SSD111と印刷用SSD112とは、NAND型のSSDにより構成され、記憶素子の最小単位である「セル」を8Kバイト(キロバイト)(セル数65536個)以上16Kバイト(セル数163968個)未満のサイズにまとめた「ページ」と呼ばれる単位でデータの書き込み、及び、データの読み出しが実行される。
通信部11は、プリンター制御部100の制御で、所定の通信規格に従って、ホストコンピューター200と通信する。
入力部12は、プリンター1に設けられた操作スイッチや、タッチパネル等の入力手段を備え、ユーザーの入力手段に対する操作を検出し、プリンター制御部100に出力する。プリンター制御部100は、入力部12からの入力に基づいて、入力手段に対する操作に対応する処理を実行する。
表示部13は、複数のLEDや、表示パネル等を備え、プリンター制御部100の制御で、LEDを所定の態様で点灯/消灯や、表示パネルへの情報の表示等を実行する。
センサー部14は、テンションセンサー74と、エッジセンサー75と、マークセンサー76とを備える。センサー部14は、これらセンサーが検出した検出結果をプリンター制御部100に出力する。
印刷部3は、インクジェットヘッド51、インクジェットヘッド52、UV光源61、UV光源62、及び、UV光源63を備える印刷ユニット5や、インクジェットヘッド51、及び、インクジェットヘッド52を駆動する駆動回路、UV光源61~UV光源63を駆動する駆動回路、その他の印刷媒体への印刷に関する構成を備える。
搬送部15は、繰出部2や、巻取部4、前駆動ローラー31、後駆動ローラー32、繰出軸20を回転させるモーター、巻取軸25を回転させるモーター、前駆動ローラー31を回転させるモーター、後駆動ローラー32を回転させるモーター、その他の印刷媒体の搬送に関する構成を備える。
次に、プリンター制御部100が備える機能ブロックについて説明する。
画像処理部101は、受信用SSD111が記憶する画像データに対して、解像度変換処理や、色変換処理、ハーフトーン処理、ラスタライズ処理、コマンド付加処理等の各種処理を実行し、印刷データを生成する。以下の説明では、画像処理部101が画像データに基づいて各種処理を実行する対象のデータも、印刷データと表現する。
解像度変換処理は、受信用SSD111から読み出した画像データを、設定された解像度の印刷データに変換する処理である。例えば、印刷データの解像度が600×600dpiに設定されている場合、画像処理部101は、ベクター形式の画像データを600×600dpiの解像度のビットマップ形式の印刷データに変換する。解像度変換処理後の印刷データは、マトリクス状に配置された画素を示す画素データから構成される。各画素データは、RGB色空間の例えば256階調の階調値を有するデータである。
色変換処理は、例えば、RGB色空間の印刷データをCMYK色空間の印刷データに変換する処理である。CMYK色とは、シアン(C)、マゼンタ(M)、イエロー(Y)、ブラック(K)であり、CMYK色空間の印刷データは、プリンター1が有するインクの色に対応したデータである。従って、例えば、プリンター1がCMYK色系の4種類のインクを使用する場合に、画像処理部101は、RGB色空間の印刷データに基づいて、CMYK色系の4次元空間の印刷データを生成する。この色変換処理は、RGB色空間における階調値とCMYK色空間における階調値とを対応づけたテーブル(いわゆる、ルックアップテーブル(LUT))に基づいて実行される。なお、色変換処理後の印刷データは、CMYK色空間により表現される印刷データである。
ハーフトーン処理は、高階調数(256階調)の印刷データを、プリンター1が形成可能な階調数の印刷データに変換する処理である。このハーフトーン処理により、256階調を示す印刷データは、例えば、2階調(ドット有り、無し)を示す1ビットの印刷データや、4階調(ドット無し、小ドット、中ドット、大ドット)を示す2ビットの印刷データ等に変換される。具体的には、階調値(0~255)とドット生成率とが対応したドット生成率テーブルから、階調値に対応するドットの生成率(例えば、4階調の場合は、ドット無し、小ドット、中ドット、大ドットのそれぞれの生成率)を求め、得られた生成率において、ディザ法・誤差拡散法等のアルゴリズムに基づいて、ドットが分散して形成されるように印刷データが作成される。
ラスタライズ処理は、マトリクス状に並ぶ画素データ(例えば、上記のように1ビットや2ビットのデータ)を、印刷時のドット形成順序に従って並べ替える処理である。マトリクス状に並ぶ画素データは、印刷画像を構成する各ラスタラインを形成する実際のノズルに割り付けられる。
コマンド付加処理は、ラスタライズ処理された印刷データに、プリンター1の印刷の動作に応じたコマンドを付加する処理である。コマンドとしては、例えば、メディアMの搬送(搬送方向Hへの移動量や速度等)を指示するコマンド等が挙げられる。
なお、画像処理部101は、これら各種処理を全て実行する構成に限定されず、例えば、ホストコンピューター200が色変換処理まで実行した画像データを送信した場合、色変換処理後の処理のみを当該画像データに実行する構成でもよい。
書込部102は、印刷用SSD112に対して「ページ」と呼ばれる単位で、画像処理部101が生成した印刷データを印刷用SSD112に書き込む。例えば、印刷用SSD112が少なくとも絶縁膜、浮遊ゲート、及び、トンネル酸化膜で構成される場合、書込部102は、高電圧を印刷用SSD112に印加することで、電子をトンネル酸化膜に通過させて浮遊ゲートに格納させることによってデータを印刷用SSD112に書き込んで保持させることができ、この構成により印刷データを印刷用SSD112に書き込んで保持させることができる。
読出部103は、印刷用SSD112に対して「ページ」と呼ばれる単位で、書込部102により書き込まれた印刷データを読み出す。例えば、印刷用SSD112が少なくとも絶縁膜、浮遊ゲート、及び、トンネル酸化膜で構成される場合、読出部103は、低電圧を印刷用SSD112に印加して、浮遊ゲートにある電子量によって変化する信号を0と1とで判別することで、印刷データを印刷用SSD112から読み出す。読出部103により読み出された印刷データは、図示しないプリントバッファーに格納され、プリンター制御部100は、印刷部3により、プリントバッファーに格納された印刷データに基づく印刷を実行する。なお、印刷用SSD112は不揮発性メモリーであるため、電力供給を遮断しても、書き込まれた印刷データは保持されたままである。
読書制御部104は、書込部102による印刷用SSD112への印刷データの書き込みを実行させ、また、読出部103による印刷用SSD112からの印刷データの読み出しを実行させる。また、読書制御部104は、後に詳述するが、印刷データを印刷用SSD112から消去する。例えば、印刷用SSD112が少なくとも絶縁膜、浮遊ゲート、及び、トンネル酸化膜で構成される場合、読書制御部104は、書き込みと逆方向に電圧を印刷用SSD112に印加し電子を浮遊ゲートから放出させて、印刷用データを印刷用SSD112から消去する。
容量検出部105は、印刷用SSD112について、データを記憶していない容量である空き容量を検出する。例えば、容量検出部105は、印刷用SSD112が記憶可能な容量と、検出時点で書き込まれたデータのサイズとに基づいて、空き容量を検出する。なお、容量検出部105による空き容量の検出は、上記の方法に限定されず、いずれの方法を採用できる。
計測部106は、カウンター等の機能を有し、書込部102が印刷用SSD112に書き込んだ印刷データのサイズ、及び、書き込み回数の少なくともいずれかの累計量を計測する。
報知部107は、表示部13により種々の情報を表示することで、種々の情報を報知する。報知部107が報知する情報は、印刷速度の低下に関する情報、及び、印刷用SSD112に発生し得る断片化に関する情報の少なくともいずれかである。
解消部108は、例えばガーベージコレクションの機能を実行することで、印刷用SSD112に発生した断片化を解消する。解消部108の解消方法は、既存の方法を採用できる。
ところで、本実施形態のプリンター1は、搬送方向Hと交差する方向に、少なくとも13インチ以上の幅を有するメディアMに対して印刷可能であり、且つ、印刷中の搬送速度が1分あたり7.5m(メートル)以上である。プリンター1がこのように構成されるのは、例えばプリンター1が印刷会社によって利用され、この印刷会社において、通常のプリンターが印刷対象とする印刷媒体より大型のメディアMに対し、短期間で多くの印刷を実行する場合があるためである。なお、本実施形態において通常のプリンターとは、13インチを下回る幅のメディアに対して印刷可能なプリンター、又は/及び、搬送速度が1分あたり7.5メートルを下回るプリンターを示す。
この種のプリンター1には、複数の印刷データに基づく印刷を連続して印刷し、複数の印刷に要する時間を短縮したいとするニーズがある。このニーズに応えるべく、プリンター1は、印刷用SSD112に対して、書込部102による印刷データの書き込みと、読出部103による印刷データの読み出しとを同時に実行可能に構成される。これにより、プリンター1は、1の印刷データに基づく印刷終了後、印刷用SSD112に新たな印刷データが書き込まれているため、連続して複数の印刷を実行でき、上記ニーズに応えることができる。
新たな印刷データを書き込む際には、印刷用SSD112に新たな印刷データのサイズ以上の容量を確保するため、既に書き込まれた印刷データの消去が必要となる場合がある。しかしながら、一般的に、NAND型のSSDでは、データの消去とデータの読み出しとを同時に実行されると、データの読み出し速度が低下する。したがって、印刷用SSD112では、印刷データの消去と、印刷データの読み出しとを同時に実行されると、印刷データの読み出し速度が低下する虞がある。
ここで、一般的なNAND型のSSDにおけるデータの消去について説明する。
NAND型のSSDでは、「ブロック」という単位でデータの消去が行われる。「ブロック」とは、データの書き込み、及び、データの読み出しが行われる単位を示す「ページ」を複数集合したものである。ブロックに消去対象のデータと、消去非対象のデータとが混在する場合、NAND型のSSDでは、まず、消去非対象のデータの退避処理が実行される。消去非対象のデータの退避処理とは、データの消去を実行するブロックに存在する消去非対象のデータを、データが書き込まれていない他のブロック、又は、所定のバッファーにコピーすることである。
NAND型のSSDでは、消去非対象のデータの退避処理が実行されると、消去対象のデータが書き込まれたブロックに書き込まれたデータ(消去対象のデータ、及び、消去非対象のデータ)が消去される。次いで、NAND型のSSDでは、データの消去が実行されると、退避処理でコピーされていた消去非対象のデータが、データの消去が実行されたブロックに書き戻される。
このように、NAND型のSSDでは、ブロックに、消去対象のデータと消去非対象のデータとが混在すると、退避処理が実行され、消去対象のデータの消去後に、消去非対象のデータが書き戻される。一般に、NAND型のSSDでは、データの読み出しと、データの書き込みとが同時に実行されると、データの読み出し速度が低下する虞があることが知られている。したがって、ブロックに消去対象のデータと消去非対象のデータとが混在する場合、NAND型のSSDでは、データの消去の処理に書き込み(消去非対象のデータの書き戻し)が伴われ、データの読み出し速度が低下する虞がある。特に、NAND型のSSDでは、1のページに対する書き込み回数を平準化するウェアレベリング機能が働くため、データを消去する際、1のブロックに消去対象のデータと消去非対象のデータとが混在し易い。
以上から、印刷用SSD112に対する印刷データの消去が、印刷データの読み出しと共に実行されると、印刷データの読み出し速度が低下する虞がある。前述した通り、プリンター1は、読出部103により読み出された印刷データに基づいて、印刷部3により印刷を実行する。そのため、読出部103の読み出し速度が低下すると、プリンター1は、読み出された印刷データに基づく印刷を実行できず、印刷速度の低下が発生し、さらには印刷動作を一時的に停止する虞がある。これでは、プリンター1は、複数の印刷データに基づく印刷に要する時間の長期化を招いてしまう。
特に、本実施形態のプリンター1は、通常のプリンターと比較して、大型のメディアMに対して印刷を実行するため、印刷動作が一時的に停止してしまうと、一時停止時に慣性で搬送方向Hに移動し、再度印刷を開始する際に印刷位置がずれて印刷品質が低下し易い。
そこで、本実施形態のプリンター制御装置10は、以下に示す動作を実行する。
図3は、プリンター制御装置10の動作を示すフローチャートである。
図3のフローチャートの開始時点では、印刷用SSD112に複数の印刷データが書き込まれているものとする。また、図3のフローチャートの開始時点では、印刷用SSD112に書き込まれた複数の印刷データのうち、少なくとも1の印刷データは、プリンター1により印刷が終了した印刷データ(以下、「印刷済みの印刷データ」と表現する)であるとする。
プリンター制御装置10の読書制御部104は、読出部103による印刷データの読み出しを開始するか否かを判別する(ステップSA1)。例えば、読書制御部104は、ユーザーにより印刷対象の印刷データが指定され、入力部12が印刷データを指定する操作を検出した場合、入力部12からの入力に基づいて、印刷用SSD112から指定された印刷データの読み出しを開始すると判別する(ステップSA1:YES)。また、例えば、事前に印刷対象の印刷データが指定され、且つ、当該印刷データに基づく印刷が予約されている場合、読書制御部104は、印刷用SSD112から指定された印刷データの読み出しを開始すると判別する(ステップSA1:NO)。
次いで、印刷データの読み出しを開始すると判別した場合(ステップSA1:YES)、読書制御部104は、プリンター1の状態が読出部103による読み出しが可能な状態か否かを判別する(ステップSA2)。例えば、インク残量を検出するインク残量検出機構をプリンター1が備えており、インク残量検出機構が検出したインク残量が所定残量を下回る場合、読書制御部104は、インク不足と判定して、プリンター1の状態が読出部103による読み出しが可能な状態でないと判別する(ステップSA2:NO)。また、例えば、メディアMの残量を検出する媒体残量検出機構をプリンター1が備えており、媒体残量検出機構が検出したメディアMの残量が所定残量を下回る場合、読書制御部104は、メディアMの交換が必要であると判定して、プリンター1の状態が読出部103による読み出しが可能な状態でないと判別する(ステップSA2:NO)。
読書制御部104は、プリンターの状態が読出部103による印刷データの読み出しが可能な状態でないと判別した場合(ステップSA2:NO)、ステップSA2の処理を再度実行する。一方、読書制御部104が、プリンターの状態が読出部103による印刷データの読み出しが可能な状態であると判別した場合(ステップSA2:YES)、読出部103は、印刷用SSD112から印刷データの読み出しを実行する(ステップSA3)。この読出部103の読み出しに伴い、プリンター1は、読み出された印刷データに基づく印刷を実行する。
次いで、読書制御部104は、ステップSA3で読み出し対象の印刷データに対する読出部103の読み出しを終了するか否かを判別する(ステップSA4)。例えば、読書制御部104は、ステップSA3で読み出し対象の印刷データを全て読出部103が読み出した場合、ステップSA3で読み出し対象の印刷データに対する読出部103の読み出しを終了すると判別する(ステップSA4:YES)。この判別の場合、プリンター1は、プリントバッファーに書き込まれた印刷データに基づく印刷が終了次第、ステップSA3の読み出し対象の印刷データに基づく印刷を終了する。また、例えば、読書制御部104は、ステップSA3で読み出し対象の印刷データを全て読出部103が読み出していない場合、ステップSA3で読み出し対象の印刷データに対する読出部103の読み出しを終了すると判別する(ステップSA4:YES)。この判別の場合、読出部103からの読み出しが継続するため、プリンター1は、ステップSA3の読み出し対象の印刷データに基づく印刷を継続する。
読書制御部104は、ステップSA3で読み出し対象の印刷データに対する読出部103の読み出しを終了すると判別した場合(ステップSA4:YES)、処理をステップSA1に戻す。なお、事前に次の印刷データに基づく印刷が予約されている場合、読書制御部104は、ステップSA1において「YES」の判別を実行する。
一方、読書制御部104は、ステップSA3で読み出し対象の印刷データに対する読出部103の読み出しを終了しないと判別した場合(ステップSA4:NO)、Trimコマンド(消去コマンド)を受信したか否かを判別する(ステップSA5)。本実施形態では、Trimコマンドは、印刷用SSD112から印刷済みの印刷データの消去を指示するコマンドである。例えば、読書制御部104は、ホストコンピューター200からTrimコマンドが送信された場合、Trimコマンドを受信したと判別する(ステップSA5:YES)。また、例えば、読書制御部104は、ユーザーにより印刷済の印刷データの消去が指示され、入力部12が当該指示の操作を検出しTrimコマンドをプリンター制御装置10に送信した場合、読書制御部104は、Trimコマンドを受信したと判別する(ステップSA5:YES)。
読書制御部104は、Trimコマンドを受信していないと判別した場合(ステップSA5:NO)、新たな印刷データの書き込みを書込部102により開始する指示があったか否かを判別する(ステップSA6)。本実施形態において新たな印刷データとは、画像処理部101により画像処理された印刷データであって、印刷用SSD112に書き込まれていない印刷データを示す。例えば、ホストコンピューター200から画像データを複数受信しており、受信用SSD111に複数の画像データが記憶されているとする。この場合において、ユーザーが印刷データを生成する画像データを指定した場合、読書制御部104は、新たな印刷データの書き込みを書込部102により開始する指示があったと判別する(ステップSA6:YES)。また、例えば、ホストコンピューター200から画像データを受信した場合、当該受信をトリガーとして、読書制御部104は、新たな印刷データの書き込みを書込部102により開始する指示があったと判別する(ステップSA6:YES)。
読書制御部104は、新たな印刷データの書き込みを書込部102により開始する指示がないと判別した場合(ステップSA6:NO)、処理をステップSA3に移行させる。
一方、読書制御部104が、新たな印刷データの書き込みを開始する指示があったと判別した場合(ステップSA6:YES)、容量検出部105は、印刷用SSD112の空き容量を検出する(ステップSA7)。
次いで、読書制御部104は、読出部103の状態が印刷用SSD112から印刷データを読み出していない状態であるか否かを判別する(ステップSA8)。前述した通り、読出部103から印刷データが読み出されることで、プリンター1は、読み出された印刷データに基づく印刷を実行する。したがって、読出部103が印刷データを読み出していない状態とは、プリンター1の状態が印刷を実行しない状態(以下、「未印刷状態」と表現する)に相当する。
本実施形態においてプリンター1の状態が未印刷状態とは、クリーニング動作に係る状態、又は、メディアMの交換に係る状態の少なくともいずれかを示す。
クリーニング動作に係る状態とは、クリーニング動作に伴う一連の動作を実行している状態を示す。クリーニング動作とは、インクジェットヘッド51、及び、インクジェットヘッド52のノズルの内部に溜まるインクを強制的に吸引し、時間経過に伴い発生するインクの増粘に起因した吐出不良を防止する動作である。本実施形態のプリンター1は、クリーニング動作を実行する際、インクジェットヘッド51、及び、インクジェットヘッド52を、メディアMにインクを吐出する印刷位置からクリーニング動作を実行するクリーニング位置まで移動させる。クリーニング位置は、例えば、クリーニング実行時にメディアMにインクが着弾しない位置に設けられる。プリンター1は、クリーニング位置までインクジェットヘッド51、及び、インクジェットヘッド52を移動させると、インクジェットヘッド51、及び、インクジェットヘッド52に対してクリーニング動作を実行する。そして、プリンター1は、クリーニング動作を終了すると、クリーニング動作後のインクジェットヘッド51、及び、インクジェットヘッド52をクリーニング位置から印刷位置まで移動させる。クリーニング動作に係る状態には、このインクジェットヘッド51、及び、インクジェットヘッド52を移動させる動作の状態も含まれる。
メディアMの交換に係る状態とは、メディアMの交換に伴う一連の動作を実行している状態を示す。メディアMの交換において、プリンター1は、メディアMが交換されるまで印刷を開始しないよう待機状態となる。メディアMの交換に係る状態には、この待機状態も含まれる。
なお、クリーニング動作に係る状態、及び、メディアMの交換に係る状態が継続する期間は、補実施形態において、印刷用SSD112から印刷データを消去に要する期間より長いことを前提とする。
クリーニング動作は、ノズルの吐出不良を防止する動作であるため、1の印刷データの印刷後や、メディアMを所定量搬送した後、印刷実行期間が所定期間経過した後等の所定間隔で実行される。したがって、クリーニング動作に係る状態は、所定間隔で発生する未印刷状態である。また、メディアMの交換は、メディアM切れが発生する間隔で実行される。したがって、メディアMの交換に係る状態も、所定間隔で発生する未印刷状態である。
ステップSA8において、読出部103の状態が印刷用SSD112から印刷データを読み出していない状態でないと判別した場合(ステップSA8:NO)、読書制御部104は、処理をステップSA8に戻し、再度ステップSA8の判別を実行する。一方で、読出部103の状態が印刷用SSD112から印刷データを読み出していない状態であると判別した場合(ステップSA8:YES)、読書制御部104は、新たな印刷データのサイズ(データ量に相当)が、ステップSA7で検出した空き容量を下回るか否かを判別する(ステップSA9)。
次いで、読書制御部104は、新たな印刷データのサイズが、ステップSA7で検出した空き容量を下回ると判別した場合(ステップSA9:YES)、新たな印刷データを書込部102により書き込ませる。これにより、書込部102は、印刷用SSD112に新たな印刷データの書き込みを実行する(ステップSA10)。
次いで、読書制御部104は、読出部103が印刷データを読み出していない状態から解消されたか否か、すなわち、プリンター1の状態が未印刷状態から解消されたか否かを判別する(ステップSA11)。つまり、読書制御部104は、プリンター1の状態が、クリーニング動作に係る状態、又は、メディアMの交換に係る状態から解消されたか否かをステップSA11において判別する。
読書制御部104は、読出部103が印刷データを読み出していない状態から解消されていないと判別した場合(ステップSA11:NO)、処理をステップSA11に戻し、再度、ステップSA11の判別を実行する。一方で、読書制御部104は、読出部103が印刷データを読み出していない状態から解消されたと判別した場合(ステップSA11:YES)、読出部103が印刷データを読み出していない状態が発生したタイミングが1の印刷データの読み出し終了に伴うタイミングであるか否かを判別する(ステップSA12)。前述した通り、読出部103が印刷データを読み出していない状態(特に、クリーニング動作に係わる状態)は、1の印刷データの読み出しの終了後にも発生し得る。
読書制御部104は、読出部103が印刷データを読み出していない状態が発生したタイミングが、1の印刷データの読み出し終了に伴うタイミングであると判別した場合(ステップSA12:YES)、処理をステップSA1に戻す。一方で、読書制御部104は、読出部103が印刷データを読み出していない状態が発生したタイミングが、1の印刷データの読み出し終了に伴うタイミングでないと判別した場合(ステップSA12:NO)、読出部103が印刷データを読み出していない状態が発生したタイミング前に読み出していた印刷データの読み出しを再開すると判定し(ステップSA13)、処理をステップSA3に戻す。
ステップSA9の説明に戻り、読書制御部104は、新たな印刷データのサイズが、ステップSA7で検出した空き容量を下回らないと判別した場合(ステップSA9:NO)、印刷用SSD112に書き込まれている印刷済みの印刷データを消去する(ステップSA14)。
ステップSA14では、読書制御部104は、印刷済みの印刷データのうち、書き込まれたタイミングが最も古い印刷データを消去する。1の印刷済みの印刷データを消去しても、新たな印刷データのサイズを上回る空き容量を印刷用SSD112に確保できない場合、読書制御部104は、書き込まれたタイミングが古い順に、複数の印刷済みの印刷データの消去を実行する。
読書制御部104は、印刷用SSD112に書き込まれている印刷済みの印刷データを消去すると、新たな印刷データを書込部102により書き込ませる。これにより、書込部102は、印刷用SSD112に新たな印刷データの書き込みを実行する(ステップSA15)。次いで、読書制御部104は、処理をステップSA11に移行させる。
ここで、上述した動作を実行して複数の印刷データに基づく印刷を実行する場合におけるプリンター制御装置10の状態のタイミングについて説明する。
図4は、複数の印刷データに基づく印刷を実行する場合におけるプリンター制御装置10の状態を示すタイミングチャートである。
図4では、印刷データA、印刷データB、印刷データC、印刷データD、及び、印刷データEの5つの印刷データに基づく印刷に係る動作をプリンター制御装置10が実行する場合を例示する。
図4において、タイミングチャートAは、印刷データAに基づく印刷に係る動作におけるプリンター制御装置10の状態を示し、タイミングチャートBは、印刷データBに基づく印刷に係る動作におけるプリンター制御装置10の状態を示し、タイミングチャートCは、印刷データCに基づく印刷に係る動作におけるプリンター制御装置10の状態を示し、タイミングチャートDは、印刷データDに基づく印刷に係る動作におけるプリンター制御装置10の状態を示し、タイミングチャートEは、印刷データEに基づく印刷に係る動作におけるプリンター制御装置10の状態を示す。
また、図4のタイミングチャートの開始時点では、印刷データA、及び、印刷データBが印刷用SSD112に書き込まれており、印刷データC、印刷データD、及び、印刷データEが印刷用SSD112に書き込まれていないものとする。
また、図4に図示される「印刷」とは、タイミングチャートに対応する印刷データの読み出しが行われ、読み出された当該印刷データに基づく印刷が実行されていることを示している。また、図4に図示される「クリーニング」とは、プリンター1の状態がクリーニング動作に係わる状態であることを示している。また、図4に図示される「画像処理」とは、ホストコンピューター200から受信した画像データから印刷データを画像処理部101が生成することを示している。また、図4に図示される「書き込み」とは、タイミングチャートに対応する印刷データの書き込みが行われていることを示している。また、図4に図示される「消去」とは、印刷済みの印刷データの消去を示しており、タイミングチャートに対応する印刷データの消去を示していない。
また、図4では、クリーニング動作は、1の印刷データに基づく印刷終了後にプリンター制御装置10により実行されるものとする。
図4のタイミングチャートAに示すように、プリンター制御部100の読出部103は、タイミングt1において印刷データAの読み出しを開始する。つまり、プリンター1は、タイミングt1において印刷データAに基づく印刷を開始する。
タイミングt1から期間が経過しタイミングt2に至り、タイミングt2において、ホストコンピューター200から印刷データCの元となる画像データが送信されたとする。すると、図4のタイミングチャートCに示すように、プリンター制御部100の画像処理部101は、タイミングt2において印刷データCの生成を開始する。そして、タイミングt2から期間がさらに経過しタイミングt3に至ると、画像処理部101は、印刷データCの生成を終了する。
タイミングt3から期間が経過しタイミングt4に至り、タイミングt4において、印刷データAの読み出しが終了したとする、換言すると、印刷データAに基づく印刷が終了したとする。すると、タイミングt4から、プリンター制御装置10のプリンター制御部100は、クリーニング動作を実行する。これにより、プリンター1の状態は、タイミングt4からクリーニング動作に係わる状態となる。また、読出部103の状態は、印刷用SSD112から印刷データを読み出していない状態となる。
また、図4のタイミングチャートCに示すように、タイミングt4において、プリンター制御部100の書込部102は、印刷データCの書き込みを開始する。なお、図4では、印刷データAと印刷データBとが書き込まれた印刷用SSD112の空き容量は、印刷データCのサイズを上回るものとする。したがって、プリンター制御装置10は、印刷データCを書き込む際、印刷データAが印刷済みの印刷データであるが、印刷データAの消去を実行しない。このように、読書制御部104は、印刷データCを書き込む際、印刷済みの印刷データの消去を実行しないため、速やかに印刷データCの書き込みを実行できる。したがって、読書制御部104は、速やかに印刷データCの書き込みが書込部102により実行できるため、印刷データCの書き込みと、印刷データAの後に実行される印刷データBに基づく印刷(すなわち、印刷データBの読出部103による読み出し)とが重なる期間を短縮でき、印刷データBの読み出し速度が低下する期間を短縮できる。したがって、読書制御部104は、複数の印刷データに基づく印刷に要する時間の長期化を抑制できる。
また、図4のタイミングチャートCに示すように、読書制御部104は、タイミングt3において印刷データCの生成が終了しているにも関わらず、印刷データAの読み出し中、印刷データCの書き込みを書込部102に実行させない。これにより、読書制御部104は、印刷データCの書き込みと印刷データAの読み出しとが同時実行されないため、印刷データAの読み出し速度が低下することを防止し、複数の印刷データに基づく印刷に要する時間の長期化を抑制できる。
タイミングt4から期間が経過しタイミングt5に至り、タイミングt5において、図4のタイミングチャートAに示すように、印刷データAに基づく印刷後のクリーニング動作が終了したとする。つまり、プリンター1の状態が、タイミングt5において、クリーニング動作に係わる状態から解消されたとする。また、読出部103の状態が、印刷データを読み出していない状態から解消されたとする。
すると、図4のタイミングチャートBに示すように、プリンター制御部100の読出部103は、タイミングt5において印刷データBの読み出しを開始する。つまり、プリンター1は、タイミングt5において印刷データBに基づく印刷を開始する。
タイミングt5から期間が経過しタイミングt6に至ったとする。すると、図4のタイミングチャートCに示すように、読書制御部104は、印刷データCの書き込みを終了する。
タイミングt6から期間が経過しタイミングt7に至り、タイミングt7において、ホストコンピューター200から印刷データDの元となる画像データが送信されたとする。すると、図4のタイミングチャートDに示すように、プリンター制御部100の画像処理部101は、タイミングt7において印刷データDの生成を開始する。そして、タイミングt7から期間がさらに経過しタイミングt8に至ると、画像処理部101は、印刷データDの生成を終了する。
タイミングt8から期間が経過しタイミングt9に至り、タイミングt9において、印刷データBの読み出しが終了したとする、換言すると、印刷データBに基づく印刷が終了したとする。すると、タイミングt9から、プリンター制御装置10のプリンター制御部100は、クリーニング動作を実行する。これにより、プリンター1の状態は、タイミングt9からクリーニング動作に係わる状態となる。また、読出部103の状態は、印刷用SSD112から印刷データを読み出していない状態となる。
また、図4のタイミングチャートDに示すように、タイミングt9において、プリンター制御部100の読書制御部104は、印刷済みの印刷データのうち、印刷データAの消去を開始する。なお、図4では、印刷データAと印刷データBと印刷データCとが書き込まれた印刷用SSD112の空き容量は、印刷データDのサイズを下回るものとする。そして、印刷データAを消去した印刷用SSD112の空き容量は、印刷データDのサイズを上回るものとする。
タイミングt9から期間が経過しタイミングt10に至り、タイミングt10において印刷データAの消去が終了したとする。すると、図4のタイミングチャートDに示すように、タイミングt10において、プリンター制御部100の書込部102は、印刷データDの書き込みを開始する。なお、印刷データDの書き込みを開始するタイミングt10のプリンター1の状態は、印刷データBに基づく印刷終了後に実行されるクリーニング動作に係わる状態である。このように、読書制御部104は、プリンター1の状態が、印刷データBに基づく印刷終了後に実行されるクリーニング動作に係わる状態である際に、印刷済みの印刷データである印刷データAの消去を実行し、消去後、新たな印刷データである印刷データDの書き込みを実行する。このように、読書制御部104は、印刷データAの消去を、プリンター1の状態がクリーニング動作に係わる状態である場合(読出部103が印刷データを読み出していない状態である場合)に実行する。そのため、読書制御部104は、印刷データAを消去する際、印刷データ(例えば、印刷データB、または、印刷データC)の読み出しが行われないため、複数の印刷に要する時間の長期化を抑制できる。特に、プリンター1に所定間隔で発生する未印刷状態を利用して印刷データAの消去を実行するため、読書制御部104は、印刷データの読み出し速度の低下を防止した上で効率良く印刷データAの消去を実行でき、複数の印刷に要する時間の長期化を抑制できる。
タイミングt10から期間が経過しタイミングt11に至り、タイミングt11において、図4のタイミングチャートBに示すように、印刷データBに基づく印刷後のクリーニング動作が終了したとする。つまり、プリンター1の状態が、タイミングt11において、クリーニング動作に係わる状態から解消されたとする。
すると、図4のタイミングチャートCに示すように、プリンター制御部100の読出部103は、タイミングt11において印刷データCの読み出しを開始する。つまり、プリンター1は、タイミングt11において印刷データCに基づく印刷を開始する。
タイミングt11から期間が経過しタイミングt12に至ったとする。そして、タイミングt12おいて、ホストコンピューター200から印刷データDの元となる画像データが送信されたとする。すると、図4のタイミングチャートEに示すように、プリンター制御部100の画像処理部101は、タイミングt12において印刷データEの生成を開始する。そして、タイミングt12から期間がさらに経過しタイミングt13に至ると、画像処理部101は、印刷データEの生成を終了する。
タイミングt13から期間が経過しタイミングt14に至ったとする。すると、図4のタイミングチャートDに示すように、読書制御部104は、印刷データDの書き込みを終了する。
タイミングt14から期間が経過しタイミングt15に至り、タイミングt15において、印刷データCの読み出しが終了したとする、換言すると、印刷データCに基づく印刷が終了したとする。すると、タイミングt15から、プリンター制御装置10のプリンター制御部100は、クリーニング動作を実行する。これにより、プリンター1の状態は、タイミングt15からクリーニング動作に係わる状態となる。
また、図4のタイミングチャートEに示すように、タイミングt15において、プリンター制御部100の書込部102は、印刷済みの印刷データのうち、印刷データBの消去を開始する。なお、図4では、印刷データBと印刷データCと印刷データDが書き込まれた印刷用SSD112の空き容量は、印刷データEのサイズを下回るものとする。そして、印刷データBを消去した印刷用SSD112の空き容量は、印刷データEのサイズを上回るものとする。
タイミングt15から期間が経過しタイミングt16に至り、タイミングt16において印刷データBの消去が終了したとする。すると、図4のタイミングチャートEに示すように、タイミングt16において、プリンター制御部100の書込部102は、印刷データEの書き込みを開始する。なお、印刷データEの書き込みを開始するタイミングt16のプリンター1の状態は、印刷データCに基づく印刷終了後に実行されるクリーニング動作に係わる状態である。このように、読書制御部104は、プリンター1の状態が、印刷データCに基づく印刷終了後に実行されるクリーニング動作に係わる状態である際に、印刷済みの印刷データである印刷データBの消去を実行し、消去後、新たな印刷データである印刷データEの書き込みを実行する。このように、読書制御部104は、印刷データBの消去を、プリンター1の状態が、印刷データの読み出しが行われないクリーニング動作に係わる状態である場合に実行する。そのため、読書制御部104は、印刷データBを消去する際、印刷データ(例えば印刷データC、又は、印刷データD)の読み出しが行われないため、複数の印刷に要する時間の長期化を抑制できる。特に、プリンター1に所定間隔で発生する未印刷状態を利用して印刷データBの消去を実行するため、読書制御部104は、印刷データの読み出し速度の低下を防止した上で効率良く印刷データBの消去を実行でき、複数の印刷に要する時間の長期化を抑制できる。
タイミングt16から期間が経過しタイミングt17に至り、タイミングt17において、図4のタイミングチャートCに示すように、印刷データCに基づく印刷後のクリーニング動作が終了したとする。つまり、プリンター1の状態が、タイミングt17において、クリーニング動作に係わる状態から解消されたとする。
すると、図4のタイミングチャートDに示すように、プリンター制御部100の読出部103は、タイミングt17において印刷データDの読み出しを開始する。つまり、プリンター1は、タイミングt17において印刷データDに基づく印刷を開始する。
タイミングt17から期間が経過しタイミングt18に至ったとする。すると、図4のタイミングチャートEに示すように、読書制御部104は、印刷データEの書き込みを終了する。
タイミングt18から期間が経過しタイミングt19に至り、タイミングt19において、印刷データDの読み出しが終了したとする、換言すると、印刷データDに基づく印刷が終了したとする。すると、タイミングt19から、プリンター制御装置10は、クリーニング動作を実行する。これにより、プリンター1の状態は、タイミングt19からクリーニング動作に係わる状態となる。
タイミングt19から期間が経過しタイミングt20に至り、タイミングt20において、図4のタイミングチャートDに示すように、印刷データDに基づく印刷後のクリーニング動作が終了したとする。つまり、プリンター1の状態が、タイミングt20において、クリーニング動作に係わる状態から解消されたとする。
すると、図4のタイミングチャートEに示すように、プリンター制御部100の読出部103は、タイミングt20において印刷データEの読み出しを開始する。つまり、プリンター1は、タイミングt20において印刷データEに基づく印刷を開始する。
タイミングt20から期間が経過しタイミングt21に至り、タイミングt21において、印刷データEの読み出しが終了したとする、換言すると、印刷データEに基づく印刷が終了したとする。すると、タイミングt21から、プリンター制御装置10は、クリーニング動作を実行する。これにより、プリンター1の状態は、タイミングt21からクリーニング動作に係わる状態となる。そして、タイミングt21から期間が経過しタイミングt22に至ると、図4のタイミングチャートEに示すように、タイミングt22において、印刷データDに基づく印刷後のクリーニング動作が終了する。つまり、プリンター1の状態が、タイミングt22において、クリーニング動作に係わる状態から解消される。
以上により、印刷データA~印刷データEの5つの印刷データに基づく印刷が終了する。
このように、読書制御部104は、読出部103の印刷データの読み出し状態に応じて、印刷済みの印刷データの消去を制御し、新たな印刷データを書込部102により書き込ませる。これにより、読書制御部104は、印刷用SSD112に対して効率良く印刷済みの印刷データの消去を制御でき、複数の印刷に要する時間が長期化することを抑制できる。より詳細には、読書制御部104は、読出部103が印刷データを読み出していない状態である場合(図4では、プリンター1の状態がクリーニング動作に係る状態である場合)に、印刷済みの印刷データを印刷用SSD112から消去し、その後に新たな印刷データを書込部102により印刷用SSD112に書き込ませる。これにより、読書制御部104は、印刷済みの印刷データを消去する際、読出部103による印刷データの読み出しが行われないため、複数の印刷に要する時間の長期化を抑制できる。特に、プリンター1に所定間隔で発生する未印刷状態を利用して印刷済みの印刷データの消去を実行するため、読書制御部104は、読出部103による印刷データの読み出し速度の低下を防止した上で、効率良く印刷済みの印刷データの消去を実行でき、複数の印刷に要する時間の長期化を抑制できる。さらに、読書制御部104は、読出部103の印刷データの読み出し速度が低下することを防止できるため、読み出し速度の低下による印刷動作が一時的に停止することを抑制でき、再度印刷を開始する際に印刷位置がずれることを抑制でき、通常のプリンターより印刷品質が低下し易いプリンター1であっても、印刷品質の低下を抑制できる。
また、読書制御部104は、新たな印刷データのサイズが印刷用SSD112の空き容量を下回る場合、印刷済みの印刷データを印刷用SSD112から消去することなく、新たな印刷データを書込部102により書き込ませる。これにより、読書制御部104は、新たな印刷データのサイズが、印刷済みの印刷データの消去が必要なサイズである場合には、印刷用SSD112から印刷済みの印刷データの消去を実行する。また、読書制御部104は、新たな印刷データのサイズが、印刷済みの印刷データの消去が不要なサイズである場合には、印刷用SSD112から印刷済みの印刷データの消去を実行しない。これにより、読書制御部104は、新たな印刷データのサイズに応じて効率よく印刷用SSD112の書き込みを実行でき、複数の印刷に要する時間の長期化を抑制できる。さらに、読書制御部104は、新たな印刷データのサイズが、印刷済みの印刷データの消去が不要なサイズである場合、速やかに新たな印刷データを書き込めるため、新たな印刷データの書き込みと、既に書き込まれている印刷データの読み出しとが重なる期間を短縮でき、複数の印刷データに基づく印刷に要する時間の長期化を抑制できる。
また、読書制御部104は、読出部103が印刷データを読み出している状態の場合、印刷済みの印刷データの消去を開始させない。例えば、読書制御部104は、図4の場合、印刷データBの読み出し中に印刷データAの消去を開始させない。これにより、読書制御部104は、印刷済みの印刷データの消去と、読出部103の印刷データの読み出しとが同時に実行されることを防止し、印刷データの読み出し速度が低下することを防止して複数の印刷に要する時間の長期化を抑制できる。
なお、図4では、読出部103が印刷データを読み出していない状態として、プリンター1の状態がクリーニング動作に係る状態である場合を例示したが、メディアMの交換に係る状態でもよい。また、図4では、1の印刷データに基づく印刷の終了後に、プリンター1の状態がクリーニング動作に係る状態に移行する場合を例示したが、1の印刷データに基づく印刷中に、プリンター1の状態がクリーニング動作に係る状態に移行してもよい。この場合でも、印刷済みの印刷データの消去、及び、新たな印刷データの書き込みの開始を、読出部103が印刷データを読み出していない状態である場合に実行すれば、上述した効果と同様の効果を奏する。
図3のフローチャートのステップSA5の説明に戻り、読書制御部104は、Trimコマンドを受信したと判別した場合(ステップSA5:YES)、読出部103の状態が印刷用SSD112から印刷データを読み出していない状態であるか否かを判別する(ステップSA16)。
読書制御部104は、読出部103の状態が印刷用SSD112から印刷データを読み出していない状態でないと判別した場合(ステップSA16:NO)、新たな印刷データの書き込みを書込部102により開始する指示があったか否かを判別する(ステップSA17)。
読書制御部104は、新たな印刷データの書き込みを書込部102により開始する指示があったと判別した場合(ステップSA17:YES)、処理をステップSA7に移行させる。一方で、読書制御部104は、新たな印刷データの書き込みを書込部102により開始する指示がないと判別した場合(ステップSA17:NO)、Trimコマンドに基づいて印刷用SSD112から印刷済みの印刷データを消去する(ステップSA18)。例えば、ステップSA18において、Trimコマンドに消去する印刷データを指定する情報が含まれる場合、読書制御部104は、指定される印刷データを印刷用SSD112から消去する。また、例えば、ステップSA18において、Trimコマンドに消去する印刷データを指定する情報が含まれない場合、読書制御部104は、印刷用SSD112に書き込まれた印刷データでの内、印刷済みの印刷データであって、且つ、書き込まれたタイミングが最も古い印刷データを消去する。
ここで、Trimコマンドを受信した場合の動作を実行して、複数の印刷データに基づく印刷を実行する場合におけるプリンター制御装置10の状態のタイミングについて説明する。
図5は、Trimコマンドを受信した場合の動作を実行して、複数の印刷データに基づく印刷を実行する場合におけるプリンター制御装置10の状態を示すタイミングチャートである。
図5では、図4と同様、印刷データA、印刷データB、印刷データC、印刷データD、及び、印刷データEの5つの印刷データに基づく印刷に係る動作をプリンター制御装置10が実行する場合を例示する。
図5において、タイミングチャートAは、印刷データAに基づく印刷に係る動作におけるプリンター制御装置10の状態を示し、タイミングチャートBは、印刷データBに基づく印刷に係る動作におけるプリンター制御装置10の状態を示し、タイミングチャートCは、印刷データCに基づく印刷に係る動作におけるプリンター制御装置10の状態を示し、タイミングチャートDは、印刷データDに基づく印刷に係る動作におけるプリンター制御装置10の状態を示し、タイミングチャートEは、印刷データEに基づく印刷に係る動作におけるプリンター制御装置10の状態を示す。
また、図5のタイミングチャートの開始時点では、図4と異なり、印刷データA、印刷データB、及び、印刷データCが印刷用SSD112に書き込まれており、印刷データD、及び、印刷データEが印刷用SSD112に書き込まれていないものとする。また、図5の説明では、印刷用SSD112は、3つの印刷データまで書き込み可能で、これ以降印刷データを書き込む際には印刷データの消去が必要であるものとする。
また、図5において図示される「印刷」、「クリーニング」、「画像処理」、「書き込み」、及び、「消去」は、図4に示すそれぞれと同じ内容を示す。
また、図5では、図4と同様に、クリーニング動作が、1の印刷データに基づく印刷終了後にプリンター制御装置10により実行されるものとする。
図5のタイミングチャートAに示すように、プリンター制御部100の読出部103は、タイミングtaにおいて印刷データAの読み出しを開始する。つまり、プリンター1は、タイミングtaにおいて印刷データAに基づく印刷を開始する。
タイミングtaから期間が経過しタイミングtbに至り、タイミングtbにおいて、ホストコンピューター200からTrimコマンドを受信したとする。
タイミングtbから期間が経過しタイミングtcに至り、タイミングtcにおいて、印刷データAの読み出しが終了したとする、換言すると、印刷データAに基づく印刷が終了したとする。すると、タイミングtcから、プリンター制御装置10のプリンター制御部100は、クリーニング動作を実行する。これにより、プリンター1の状態は、タイミングtcからクリーニング動作に係わる状態となる。
また、図5のタイミングチャートDに示すように、タイミングtcにおいて、プリンター制御部100の読書制御部104は、タイミングtbで受信したTrimコマンドに従って、印刷済みの印刷データの消去を開始する。タイミングtcでは、印刷用SSD112に書き込まれた印刷データのうち、印刷データAのみが印刷済みの印刷データであるため、読書制御部104は、タイミングtcから印刷データAの消去を開始する。
タイミングtcから期間が経過しタイミングtdに至ったとする。すると、読書制御部104は、タイミングtdにおいて印刷データAの消去を終了する。
タイミングtdから期間が経過しタイミングteに至り、タイミングteにおいて、図5のタイミングチャートAに示すように、印刷データAに基づく印刷後のクリーニング動作が終了したとする。つまり、プリンター1の状態が、タイミングteにおいて、クリーニング動作に係わる状態から解消されたとする。
すると、図5のタイミングチャートBに示すように、プリンター制御部100の読出部103は、タイミングteにおいて印刷データBの読み出しを開始する。つまり、プリンター1は、タイミングteにおいて印刷データBに基づく印刷を開始する。
タイミングteから期間が経過しタイミングtfに至り、タイミングtfにおいて、ホストコンピューター200から印刷データDの元となる画像データが送信されたとする。すると、図5のタイミングチャートDに示すように、プリンター制御部100の画像処理部101は、タイミングtfにおいて印刷データDの生成を開始する。そして、タイミングtfから期間がさらに経過しタイミングtgに至ると、画像処理部101は、印刷データDの生成を終了する。
タイミングtgから期間が経過しタイミングthに至り、タイミングthにおいて、印刷データBの読み出しが終了したとする、換言すると、印刷データBに基づく印刷が終了したとする。すると、タイミングthから、プリンター制御装置10のプリンター制御部100は、クリーニング動作を実行する。これにより、プリンター1の状態は、タイミングthからクリーニング動作に係わる状態となる。
また、図5のタイミングチャートCに示すように、タイミングthにおいて、プリンター制御部100の書込部102は、印刷データDの書き込みを開始する。前述した通り、図5の説明では、印刷用SSD112に書き込み可能な印刷データの数を3つとしている。タイミングthでは、Trimコマンドの受信により印刷用SSD112に書き込まれた印刷データが、印刷データBと印刷データCとの2つである。したがって、タイミングthでは、事前に印刷データDを書き込むための空き容量が印刷用SSD112に設けられているため、読書制御部104は、印刷済みの印刷データの消去を伴わず印刷データDを書込部102に書き込ませる。
このように、読書制御部104は、事前に印刷済みの印刷データを消去することで、印刷データDを書き込む際に印刷済みの印刷データの消去を実行しないため、速やかに印刷データDの書き込みを実行できる。したがって、読書制御部104は、速やかに印刷データDの書き込みが書込部102により実行できるため、印刷データDの書き込みと、印刷データBの後に実行される印刷データCに基づく印刷(すなわち、印刷データCの読出部103による読み出し)とが重なる期間を短縮でき、印刷データCの読み出し速度が低下する期間を短縮できる。したがって、読書制御部104は、複数の印刷データに基づく印刷に要する時間の長期化を抑制できる。
タイミングthから期間が経過しタイミングtiに至り、タイミングtiにおいて、図5のタイミングチャートBに示すように、印刷データBに基づく印刷後のクリーニング動作が終了したとする。つまり、プリンター1の状態が、タイミングtiにおいて、クリーニング動作に係わる状態から解消されたとする。
すると、図5のタイミングチャートCに示すように、プリンター制御部100の読出部103は、タイミングtiにおいて印刷データCの読み出しを開始する。つまり、プリンター1は、タイミングtiにおいて印刷データCに基づく印刷を開始する。
タイミングtiから期間が経過しタイミングtjに至ったとする。すると、図5のタイミングチャートCに示すように、書込部102は、印刷データDの書き込みを終了する。
タイミングtjから期間が経過しタイミングtkに至り、タイミングtkにおいて、ホストコンピューター200から印刷データEの元となる画像データが送信されたとする。すると、図5のタイミングチャートEに示すように、プリンター制御部100の画像処理部101は、タイミングtkにおいて印刷データEの生成を開始する。そして、タイミングtkから期間がさらに経過しタイミングtlに至ると、画像処理部101は、印刷データEの生成を終了する。
タイミングtlから期間が経過しタイミングtmに至り、タイミングtmにおいて、印刷データCの読み出しが終了したとする、換言すると、印刷データCに基づく印刷が終了したとする。すると、タイミングtmから、プリンター制御装置10は、クリーニング動作を実行する。これにより、プリンター1の状態は、タイミングtmからクリーニング動作に係わる状態となる。
また、図5のタイミングチャーEに示すように、タイミングtmにおいて、プリンター制御部100の読書制御部104は、印刷済みの印刷データのうち、印刷データBの消去を開始する。図5では、印刷用SSD112では、3つの印刷データまで書き込み可能であることを前提としている。タイミングtmでは、印刷用SSD112に印刷データBと印刷データCと印刷データDとが書き込まれている。したがって、読書制御部104は、印刷データEを書き込む前に、タイミングthにおいて、印刷済みの印刷データである印刷データBの消去を実行する。
タイミングtmから期間が経過しタイミングtnに至り、タイミングtnにおいて印刷データBの消去が終了したとする。すると、図5のタイミングチャートEに示すように、タイミングtnにおいて、プリンター制御部100の書込部102は、印刷データEの書き込みを開始する。なお、印刷データEの書き込みを開始するタイミングtnにおけるプリンター1の状態は、印刷データCに基づく印刷終了後に実行されるクリーニング動作に係わる状態である。このように、読書制御部104は、プリンター1の状態が、印刷データCに基づく印刷終了後に実行されるクリーニング動作に係わる状態である際に、印刷済みの印刷データである印刷データBの消去を実行し、消去後、新たな印刷データである印刷データEの書き込みを開始する。つまり、読書制御部104は、印刷データBの消去を、プリンター1の状態が、印刷データの読み出しが行われないクリーニング動作に係わる状態である場合に実行する。そのため、読書制御部104は、印刷データBを消去する際、印刷データ(例えば印刷データC、または、印刷データD)の読み出しが行われないため、複数の印刷に要する時間の長期化を抑制できる。
タイミングtnから期間が経過しタイミングtoに至り、タイミングtoにおいて、図5のタイミングチャートCに示すように、印刷データCに基づく印刷後のクリーニング動作が終了したとする。つまり、プリンター1の状態が、タイミングtoにおいて、クリーニング動作に係わる状態から解消されたとする。
すると、図5のタイミングチャートDに示すように、プリンター制御部100の読出部103は、タイミングtoにおいて印刷データDの読み出しを開始する。つまり、プリンター1は、タイミングtoにおいて印刷データDに基づく印刷を開始する。
タイミングtoから期間が経過しタイミングtpに至ったとする。すると、図4のタイミングチャートEに示すように、読書制御部104は、印刷データEの書き込みを終了する。
タイミングtpから期間が経過しタイミングtqに至り、タイミングtqにおいて、印刷データDの読み出しが終了したとする、換言すると、印刷データDに基づく印刷が終了したとする。すると、タイミングtqから、プリンター制御装置10のプリンター制御部100は、クリーニング動作を実行する。これにより、プリンター1の状態は、タイミングtqからクリーニング動作に係わる状態となる。
タイミングtqから期間が経過しタイミングtrに至り、タイミングtrにおいて、図5のタイミングチャートDに示すように、印刷データDに基づく印刷後のクリーニング動作が終了したとする。つまり、プリンター1の状態が、タイミングtrにおいて、クリーニング動作に係わる状態から解消されたとする。
すると、図5のタイミングチャートEに示すように、プリンター制御部100の読出部103は、タイミングtrにおいて印刷データEの読み出しを開始する。つまり、プリンター1は、タイミングtrにおいて印刷データEに基づく印刷を開始する。
タイミングtrから期間が経過しタイミングtsに至り、タイミングtsにおいて、印刷データEの読み出しが終了したとする、換言すると、印刷データEに基づく印刷が終了したとする。すると、タイミングtsから、プリンター制御装置10のプリンター制御部100は、クリーニング動作を実行する。これにより、プリンター1の状態は、タイミングtsからクリーニング動作に係わる状態となる。そして、タイミングtsから期間が経過しタイミングtuに至ると、図5のタイミングチャートEに示すように、タイミングtuにおいて、印刷データEに基づく印刷後のクリーニング動作が終了する。つまり、プリンター1の状態が、タイミングtuにおいて、クリーニング動作に係わる状態から解消される。
以上により、印刷データA~印刷データEの5つの印刷データに基づく印刷が終了する。
このように、読書制御部104は、新たな印刷データの書き込みを開始する指示があるまでに、Trimコマンドを受信した場合、印刷用SSD112から印刷済みの印刷データを消去する。そして、読書制御部104は、新たな印刷データの書き込みを開始する際に、新たな印刷データのサイズが印刷用SSD112の空き容量を下回る場合に、印刷済みの印刷データの消去を実行せずに新たな印刷データを書込部102に書き込ませる。これにより、読書制御部104は、事前に、新たな印刷データのサイズ分の空き容量を印刷用SSD112に設けることで、速やかな新たな印刷データの書き込みが可能となり、複数の印刷に要する時間の長期化を抑制できる。
上述したように、NAND型のSSDでは、1のページに対する書き込み回数を平準化するウェアレベリング機能が働くため、データを消去する際、1のブロックに消去対象のデータと消去非対象のデータとが混在し易い。つまり、印刷用SSD112には、断片化が発生し易い。そこで、印刷用SSD112の断片化を加味して、プリンター制御装置10は、以下に示す動作を実行してもよい。
図6は、プリンター制御装置10の動作を示すフローチャートである。
図6のフローチャートにおいて、図3のフローチャートと同一のステップについては、同一のステップ番号を付し、その詳細な処理の説明を省略する。
読書制御部104は、ステップSA7において容量検出部105により印刷用SSD112の空き容量を検出すると、計測部106が計測した累積量が断片発生量(所定量)以上であるか否かを判別する(ステップSB1)。ここでいう断片発生量とは、印刷用SSD112が断片化の状態となり得る累積量を示す。この断片発生量は、事前に行われたテストやシミュレーション等によって予め設定され、プリンター記憶部110等に情報として記憶される。
読書制御部104は、計測部106が計測した累積量が断片発生量以上でないと判別した場合(ステップSB1:NO)、処理をステップSA8に移行させ、上述した処理を実行する。
一方で、読書制御部104は、計測部106が計測した累積量が断片発生量以上であると判別した場合(ステップSB1:YES)、報知部107は、印刷速度の低下に関する情報と、断片化に関する情報とを、表示部13の表示によりユーザーに報知する(ステップSB2)。例えば、報知部107は、「印刷速度の低下の虞あり」のような印刷速度の低下に関する情報と、「断片化の発生の虞あり」のような断片化の発生に関する情報とを表示部13の表示により報知する。これにより、ユーザーは、プリンター1の印刷速度が低下する虞があることを認識できる。また、断片化に関する情報を報知することで、ユーザーは、印刷速度の低下の虞の原因が、印刷用SSD112に発生し得る断片化であることを認識できる。
次いで、報知部107が、印刷速度の低下に関する情報と断片化に関する情報とを表示部13の表示によりユーザーに報知すると、解消部108は、印刷用SSD112に発生し得る断片化を解消するか否かを判別する(ステップSB3)。例えば、解消部108は、所定のユーザーインターフェースを表示し、ユーザーの当該ユーザーインターフェースの操作により断片化の解消の指示があった場合に、印刷用SSD112に発生し得る断片化を解消すると判別する(ステップSB3:YES)。また、例えば、解消部108は、所定のユーザーインターフェースを表示し、ユーザーの当該ユーザーインターフェースの操作により断片化を解消しない指示があった場合に、印刷用SSD112に発生し得る断片化を解消しないと判別する(ステップSB3:NO)。
読書制御部104は、解消部108が印刷用SSD112に発生し得る断片化を解消しないと判別した場合(ステップSB3:NO)、処理をステップSA8に移行させ、上述した処理を実行する。
一方で、読書制御部104は、解消部108が印刷用SSD112に発生し得る断片化を解消すると判別した場合(ステップSB3:YES)、読出部103の状態が印刷用SSD112から印刷データを読み出していない状態であるか否かを判別する(ステップSB4)。
ステップSB4において、読出部103の状態が印刷用SSD112から印刷データを読み出していない状態でないと判別した場合(ステップSB4:NO)、読書制御部104は、処理をステップSB4に戻し、再度、ステップSB4の判別を実行する。一方で、読書制御部104の状態が印刷用SSD112から印刷データを読み出していない状態であると判別した場合(ステップSB4:YES)、読書制御部104は、新たな印刷データのサイズが、ステップSA7で検出した空き容量を下回るか否かを判別する(ステップSB5)。
次いで、読書制御部104は、新たな印刷データのサイズが、ステップSA7で検出した空き容量を下回ると判別した場合(ステップSB5:YES)、解消部108により印刷用SSD112に発生し得る断片化を解消する(ステップSB6)。次いで、読書制御部104は、解消部108により印刷用SSD112に発生し得る断片化の解消を実行すると、新たな印刷データを書込部102により書き込ませる。これにより、書込部102は、印刷用SSD112に新たな印刷データの書き込みを実行する(ステップSB7)。
次いで、読書制御部104は、読出部103が印刷データを読み出していない状態から解消されたか否か、すなわち、プリンター1の状態が未印刷状態から解消されたか否かを判別する(ステップSB8)。つまり、読書制御部104は、プリンター1の状態が、クリーニング動作に係る状態、又は、メディアMの交換に係る状態から解消されたか否かをステップSB8において判別する。
読書制御部104は、読出部103が印刷データを読み出していない状態から解消されていないと判別した場合(ステップSB8:NO)、処理をステップSB8に戻し、再度ステップSB8の判別を実行する。一方で、読書制御部104は、読出部103が印刷データを読み出していない状態から解消されたと判別した場合(ステップSB8:YES)、読出部103が印刷データを読み出していない状態が発生したタイミングが1の印刷データの読み出し終了に伴うタイミングであるか否かを判別する(ステップSB9)。前述した通り、読出部103が印刷データを読み出していない状態(特に、クリーニング動作に係わる状態)は、1の印刷データの読み出しの終了後にも発生し得る。
読書制御部104は、読出部103が印刷データを読み出していない状態が発生したタイミングが、1の印刷データの読み出し終了に伴うタイミングであると判別した場合(ステップSB9:YES)、処理をステップSA1に戻す。一方で、読書制御部104は、読出部103が印刷データを読み出していない状態が発生したタイミングが、1の印刷データの読み出し終了に伴うタイミングでないと判別した場合(ステップSB9:NO)、読出部103が印刷データを読み出していない状態が発生したタイミング前に読み出していた印刷データの読み出しを再開すると判定し(ステップSB10)、処理をステップSA3に戻す。
ステップSB5の説明に戻り、読書制御部104は、新たな印刷データのサイズが、ステップSA7で検出した空き容量を下回らないと判別した場合(ステップSB5:NO)、解消部108により印刷用SSD112に発生し得る断片化を解消する(ステップSB11)。次いで、読書制御部104は、解消部108により印刷用SSD112に発生し得る断片化の解消を実行すると、印刷用SSD112に書き込まれている印刷済みの印刷データを消去する(ステップSB12)。
読書制御部104は、印刷用SSD112に書き込まれている印刷済みの印刷データを消去すると、新たな印刷データを書込部102により書き込ませる。これにより、書込部102は、印刷用SSD112に新たな印刷データの書き込みを実行する(ステップSB13)。次いで、読書制御部104は、処理をステップSA11に移行させる。
このように、報知部107は、計測部106が計測した累積量が断片化発生量以上となる場合、印刷速度の低下に関する情報と、断片化に関する情報とを報知する。そして、解消部108は、ユーザーにより断片化の解消の指示があった場合、印刷用SSD112に発生し得る断片化を解消する。周知の通り、SSD等の不揮発性メモリーが断片化の状態であると、データの読み出し速度、及び、データの書き込み速度が低下する。したがって、解消部108は、印刷用SSD112に発生し得る断片化による印刷データの読み出し速度の低下を解消できる。特に、解消部108は、読出部103が印刷データを読み出していない状態である場合に、印刷用SSD112に発生した断片化を解消するため、断片化の解消の処理と、印刷データの読み出しとが重なることない。そのため、解消部108は、印刷用SSD112に対し複数の処理を並列で実行されることがなく、読出部103の印刷データの読み出し速度が低下することを防止し、複数の印刷に要する時間の長期化を抑制できる。また、解消部108は、新たな印刷データの書き込みの前に印刷用SSD112に発生し得る断片化を解消するため、断片化による書き込み速度の低下を防止できる。
なお、上述した動作では、解消部108が印刷用SSD112の断片化を解消したに後に、読書制御部104が印刷済みの印刷データを消去する構成を例示したが、ステップSB11とステップSB12との処理の順番は逆でもよい。
以上、説明したように、プリンター制御装置10(印刷制御装置)は、印刷データに基づいて印刷を実行するプリンター1(印刷装置)を制御する。プリンター制御装置10は、ページ単位で読み書きを実行される印刷用SSD112(不揮発性メモリー)を含むプリンター記憶部110(記憶部)と、印刷用SSD112に印刷データを書き込む書込部102と、印刷用SSD112から印刷データを読み出す読出部103と、読出部103の読み出し状態に応じて、印刷用SSD112からの印刷済みの印刷データの消去を制御し、新たな印刷データを書込部102により書き込ませる読書制御部104(制御部)と、を備える。
この構成によれば、読書制御部104は、読出部103の読み出し状態に応じて、印刷済みの印刷データの消去を制御し、新たな印刷データを書込部102により書き込ませるため、印刷用SSD112に対して効率良く印刷済みの印刷データの消去を制御でき、複数の印刷に要する時間が長期化することを抑制できる。
また、読書制御部104は、読出部103が印刷データを読み出していない状態である場合、印刷用SSD112から印刷済みの印刷データを消去し、新たな印刷データを書込部102に書き込ませる。
この構成によれば、読書制御部104は、読出部103が印刷データを読み出していない状態である場合に、印刷済みの印刷データを消去し、新たな印刷データを書き込ませるため、印刷済みの印刷データの消去と印刷データの読み出しとが重なることがなく、印刷済みの印刷データの消去により印刷データの読み出し速度が低下すること防止でき、複数の印刷に要する時間の長期化を抑制できる。
また、読書制御部104は、読出部103が印刷データを読み出している状態である場合、印刷用SSD112からの印刷済みの印刷データの消去を開始させない。
この構成によれば、読書制御部104は、印刷済みの印刷データの消去と印刷データの読み出しとが同時に実行されないため、読出部103の印刷データの読み出し速度の低下を防止でき、複数の印刷に要する時間の長期化を抑制できる。
また、読出部103が印刷データを読み出していない状態は、プリンター1の状態が、ノズルからインクを吸引するクリーニング動作に係る状態、及び、プリンター1に着脱可能なメディアM(ロール紙)の交換に係る状態の少なくともいずれかである。
この構成によれば、プリンター1の状態が、クリーニング動作に係る状態、及び、メディアMの交換に係る状態の少なくともいずれかである場合に、印刷済みの印刷データを印刷用SSD112から消去することから、複数の印刷に要する時間の長期化を抑制した上で、所定間隔で発生する未印刷状態を利用して効率よく印刷済みの印刷データの消去を実行できる。
また、読書制御部104は、書込部102による新たな印刷データの書き込みを開始する指示があるまでに、印刷用SSD112から印刷データの消去を指示するTrimコマンド(消去コマンド)を受信した場合、印刷用SSD112から印刷済みの印刷データを消去する。また、読書制御部104は、書込部102による新たな印刷データの書き込みを開始する際、新たな印刷データのサイズが印刷用SSD112の空き容量を下回る場合に、印刷用SSD112からの印刷済みの印刷データの消去を実行せずに新たな印刷データを書込部102により書き込ませる。
この構成によれば、読書制御部104は、事前に、新たな印刷データのサイズ分の空き容量を印刷用SSD112に設けることで、速やかな新たな印刷データの書き込みが可能となり、複数の印刷に要する時間の長期化をさらに抑制できる。
また、プリンター制御装置10は、印刷用SSD112に書き込んだ印刷データの累計量を計測する計測部106と、情報を報知する報知部107と、を備える。報知部107は、計測部106が計測した累計量が断片化発生量(所定量)以上となった場合に、プリンター1の印刷速度の低下に関する情報を表示部13の表示により報知する。
この構成によれば、計測部106が計測した累積量が断片発生量以上となった場合に、プリンター1の印刷速度の低下に関する情報を報知するため、印刷用SSD112への書き込みによって生じ得る印刷速度の低下についてユーザーが認識できる。
また、プリンター制御装置10は、印刷用SSD112の断片化を解消する解消部108を備える。報知部107は、計測部106が計測した累計量が断片化発生量以上となった場合に、断片化に関する情報を報知する。解消部108は、ユーザーにより解消の指示があった場合、印刷用SSD112の断片化を解消する。
この構成によれば、計測部106が計測した累計量が断片化発生量以上となった場合に、断片化に関する情報を報知するため、ユーザーが印刷用SSD112に発生し得る断片化を認識できる。また、報知部107が、印刷速度に関する情報と共に断片化に関する情報を報知することで、ユーザーは、印刷速度の低下の要因が印刷用SSD112に発生し得る断片化であることを認識できる。また、この構成によれば、ユーザーにより解消の指示があった場合、印刷用SSD112の断片化を解消するため、断片化による印刷データの読み出し速度の低下を解消できる。
また、ページを構成するセルの個数を示すnの値は、印刷用SSD112から読み書きの実行が可能なデータサイズが8Kバイト以上16Kバイト未満となる値である。
一般に、ハードディスクは、セクタと呼ばれる単位で読み書きが実行され、そのセクタから読み出し可能なデータサイズが約4Kバイトであることが知られている。前述した通り、プリンター1が印刷動作を一時的に停止すると、印刷品質が低下する虞がある。そのため、読出部103が1度に読み出し可能な印刷データのサイズは、大きければ大きいほどプリンター1の印刷動作が一時的に停止する可能性が低くなる。そこで、本実施形態では、印刷データを読み出す対象を印刷用SSD112とすることで、ハードディスクよりも印刷データを速やかに読み出せることができ、印刷に必要となる印刷データの読み出しが間に合わなくなることによって、複数の印刷に要する時間が長期化することを抑制できる。
また、プリンター制御装置10は、印刷データに基づいて印刷を実行する印刷部3を備えるプリンター1に設けられる。
この構成によれば、プリンター制御装置10がプリンター1に設けられる場合でも、印刷用SSD112に対して効率良く印刷済みの印刷データの消去を制御でき、複数の印刷に要する時間が長期化することを抑制できる。
なお、上述した各実施形態は、あくまでも本発明の一態様を示すものであり、本発明の範囲内で任意に変形及び応用が可能である。
例えば、上述した実施形態では、プリンター制御装置10がプリンター1に設けられる構成を例示したが、プリンター制御装置10は、プリンター1と別体で、且つ、外部に設けられてもよい。この場合、プリンター制御装置10は、印刷データの生成を専門的に実行する外部装置として機能する。
また、例えば、上述した実施形態では、印刷ヘッドとしてライン型のインクジェットヘッド51、52を例示したが、キャリッジに搭載されメディアMの搬送方向Hと交差する方向に走査するシリアル型のインクジェットヘッドでもよい。
また、プリンター制御部100を上述した各機能ブロックの機能は、プログラムを記憶した記憶媒体、プログラムを配信するサーバー装置、上記プログラムを伝送する伝送媒体、上記プログラムを搬送波内に具現化したデータ信号等の形態で実現することもできる。記憶媒体としては、コンピューターが読み取り可能な種々の媒体を利用することができ、磁気的、光学的記憶媒体あるいは半導体メモリーデバイスを用いるもののいずれであってもよく、その他の種類の記憶媒体をしようしてもよい。また、メモリーカード等の可搬型記憶媒体であってもよい。また、記憶媒体は、上記装置と通信回線を介して接続された装置が備える記憶媒体であってもよい。上記プログラムは、オペレーティングシステムを実装して動作する装置において、オペレーティングシステム上で動作する単体のアプリケーションプログラムとして実装することができる。また、単体のアプリケーションプログラムに限らず、オペレーティングシステム、デバイスドライバー、及び、アプリケーションプログラムのうち複数の機能として実装されてもよい。例えば、操作面を備える操作デバイスを制御するデバイスドライバープログラム、及び/または、オペレーティングシステムにおいて操作デバイスの操作を受け付けるプログラムモジュールが協働して上記プログラムを実現する構成であってもよい。また、複数のアプリケーションプログラムにより、本発明の上記プログラムを実現する構成であってもよく、具体的なプログラムの形態は任意である。
また、例えば、上述したプリンター制御装置10の制御方法(印刷制御装置の制御方法)が、プリンター制御装置10が備えるコンピューターを用いて実現される場合、本発明を、上記制御方法を実現するためにコンピューターが実行するプログラム、このプログラムを前記コンピューターで読み取り可能に記録した記録媒体、或いは、このプログラムを伝送する伝送媒体の態様で構成することも可能である。上記記録媒体としては、磁気的、光学的記録媒体又は半導体メモリーデバイスを用いることができる。具体的には、フレキシブルディスク、HDD(Hard Disk Drive)、CD-ROM(Compact Disk Read Only Memory)、DVD(Digital Versatile Disk)、Blu-ray(登録商標) Disc、光磁気ディスク、フラッシュメモリー、カード型記録媒体等の可搬型の、或いは固定式の記録媒体が挙げられる。また、上記記録媒体は、プリンター制御装置10が備える内部記憶装置であるRAM(Random Access Memory)、ROM(Read Only Memory)、HDD等の不揮発性記憶装置であってもよい。
また、例えば、図3、及び、図6の処理単位は、プリンター制御装置10の処理を理解容易にするために、主な処理内容に応じて分割したものであり、処理単位の分割の仕方や名称によって、本発明が限定されることはない。プリンター制御装置10の処理は、処理内容に応じて、されに多くの処理単位に分割してもよい。また、1つの処理単位がさらに多くの処理を含むように分割してもよい。
また、図2に示した各機能部は機能的構成を示すものであって、具体的な実装形態は特に限定されない。つまり、必ずしも各機能部に個別に対応するハードウェアが実装される必要はなく、一つのプロセッサーがプログラムを実行することで複数の機能部の機能を実現する構成とすることも勿論可能である。また、上述した実施形態においてソフトウェアで実現される機能の一部をハードウェアとしてもよく、或いは、ハードウェアで実現される機能の一部をソフトウェアで実現してもよい。その他、プリンター1、及び、プリンター制御装置10の他の各部の具体的な細部構成についても、本発明の趣旨を逸脱しない範囲で任意に変更可能である。
また、例えば、上述した実施形態において、プリンター1は、インクジェットヘッド51、及び、インクジェットヘッド52を備えるインクジェットプリンターとして例示した。しかしながら、プリンター1は、印刷形式がインクジェット形式に限定されず、いずれの印刷形式でも本発明を適応できる。なお、インクジェット形式以外のプリンター1に本発明を適応する場合、プリンター1の未印刷状態には、クリーニング動作に係る状態が含まれない。