JP2015174428A - 印刷装置、及び、インク吐出方法 - Google Patents

印刷装置、及び、インク吐出方法 Download PDF

Info

Publication number
JP2015174428A
JP2015174428A JP2014054510A JP2014054510A JP2015174428A JP 2015174428 A JP2015174428 A JP 2015174428A JP 2014054510 A JP2014054510 A JP 2014054510A JP 2014054510 A JP2014054510 A JP 2014054510A JP 2015174428 A JP2015174428 A JP 2015174428A
Authority
JP
Japan
Prior art keywords
data
nozzle
head
ink
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2014054510A
Other languages
English (en)
Inventor
高橋 秀明
Hideaki Takahashi
秀明 高橋
稔 長岡
Minoru Nagaoka
稔 長岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2014054510A priority Critical patent/JP2015174428A/ja
Publication of JP2015174428A publication Critical patent/JP2015174428A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Ink Jet (AREA)
  • Record Information Processing For Printing (AREA)

Abstract

【課題】ノズルからインクを吐出させる際のデータ転送に関する処理のスループットを向上することができる印刷装置を提供する。
【解決手段】インクジェットプリンター1は、バッファーBVFに記憶したノズルデータを、8バイトアライメントで、ヘッドHにデータ転送する機能と、ノズルデータに基づいて、ノズルNZからインクを吐出する機能と、を備え、バッファーBVFには、ノズル情報データにおける吐出データの位置が8バイトアライメントに対応してシフトされた複数のノズルデータが記憶され、バッファーBVFに記憶された複数のノズルデータのうちのいずれか1のノズルデータに割り振られたアドレスであって8バイトアライメントに対応する値のアドレスを転送開始アドレスとして、ヘッドHへのデータ転送を行う。
【選択図】図3

Description

本発明は、印刷装置、及び、インク吐出方法に関する。
従来、NバイトアライメントでDMA(Direct Memory Access)転送する情報処理装置に関する技術が提案されている(例えば、特許文献1参照)。
また、インクジェット式の印刷装置では、RAM等の記憶領域に記憶されたデータを、ヘッド(インクジェットヘッド)を制御するヘッド制御ユニットにDMA転送し、ヘッド制御ユニットがDMA転送されたデータに基づいて、インクジェットヘッドを駆動するものがある。この種の印刷装置では、ヘッドに設けられた複数のノズルについて、1つずつノズルからインクを吐出させる機能を有する装置がある。当該装置では、1のノズルからインクを吐出させて、例えば、当該1のノズルのノズルチェックを実行する。
特開2009−142988号公報
上述した印刷装置では、ノズルからインクを吐出させる際のデータ転送に関する処理のスループットを向上したいとするニーズがある。
本発明は、上述した事情に鑑みてなされたものであり、ノズルが設けられたヘッドを有する印刷装置、及び、当該印刷装置に係るインク吐出方法について、ノズルからインクを吐出させる際のデータ転送に関する処理のスループットを向上することを目的とする。
上記目的を達成するために、本発明の印刷装置は、インクを吐出可能な複数のノズルが設けられた印刷ヘッドと、前記印刷ヘッドを制御するヘッド制御部と、前記ノズルからインクの吐出を制御するノズルデータを記憶する記憶領域を有する記憶部と、前記記憶領域に記憶した前記ノズルデータを、N(ただし、Nは2のべき乗)バイトアライメントで、前記ヘッド制御部にデータ転送する転送部と、を備え、前記ヘッド制御部は、前記ノズルデータに基づいて、前記印刷ヘッドに設けられた前記ノズルからインクを吐出する制御を行い、前記ノズルデータは、前記ノズルからインクを吐出しないことを示す非吐出制御データと、前記非吐出制御データに連続し、前記ノズルからインクを吐出することを示す吐出データを含むノズル情報データと、を有し、前記記憶領域には、前記ノズル情報データにおける前記吐出データの位置がNバイトアライメントに対応してシフトされた複数の前記ノズルデータが記憶され、前記転送部は、前記記憶領域に記憶された複数の前記ノズルデータのうちのいずれか1の前記ノズルデータに割り振られたアドレスであってNバイトアライメントに対応する値のアドレスを先頭アドレスとして、前記ヘッド制御部へのデータ転送を行い、前記ヘッド制御部は、転送された当該ノズルデータに基づいて、前記印刷ヘッドを制御することを特徴とする。
本発明の構成によれば、印刷装置の記憶領域に、ノズル情報データにおける吐出データの位置がNバイトアライメントに対応してシフトされた複数のノズルデータが記憶される。そして、印刷装置は、複数のノズルデータのうちのいずれか1のノズルデータに割り振られたアドレスであってNバイトアライメントに対応する値のアドレスを先頭アドレスとして、ヘッドへのデータ転送を行う。このため、所定のノズルからインクを吐出させる場合に、Nバイトアライメントに対応するノズルデータを生成して記憶領域に記憶する処理が必要なく、所定のノズルからインクを吐出させる際のデータ転送に関する処理のスループットを向上できる。
また、本発明の印刷装置は、前記吐出データは、Mバイト(ただし、MはNの正の約数)のデータであり、前記記憶領域には、前記ノズル情報データにおける前記吐出データの位置がMバイトずつシフトされた前記ノズルデータが、(N/M)個、記憶されることを特徴とする。
本発明の構成によれば、Nバイトアライメントでデータ転送すること、及び、吐出データがMバイトのデータであることに基づいて、所定のノズルからインクを吐出するために必要な複数のノズルデータを記憶できる。
また、本発明の印刷装置は、複数の前記ノズルのうちの1の前記ノズルによるインクの吐出に基づいて、当該1の前記ノズルのノズルチェックを行う機能を有することを特徴とする。
本発明の構成によれば、印刷装置は、スループットを向上してデータ転送を行って、1のノズルからインクを吐出させ、当該1のノズルのノズルチェックを実行できる。
また、上記目的を達成するために、本発明のインク吐出方法は、印刷ヘッドに設けられたノズルからインクを吐出しないことを示す非吐出制御データと、前記非吐出制御データに連続し、前記印刷ヘッドに設けられた複数の前記ノズルのうちの1の前記ノズルからインクを吐出することを示す吐出データを含むノズル情報データと、を有し、前記ノズル情報データにおける前記吐出データの位置がNバイトアライメントに対応してシフトされた複数のノズルデータを記憶領域に記憶し、前記記憶領域に記憶された複数の前記ノズルデータのうちのいずれか1の前記ノズルデータに割り振られたアドレスであってNバイトアライメントに対応する値のアドレスを先頭アドレスとして、Nバイトアライメントで前記印刷ヘッドにデータ転送し、転送した前記ノズルデータに基づいて前記印刷ヘッドにより複数の前記ノズルのうちの1の前記ノズルからインクを吐出することを特徴とする。
本発明の構成によれば、印刷装置の記憶領域に、ノズル情報データにおける吐出データの位置がNバイトアライメントに対応してシフトされた複数のノズルデータが記憶される。そして、印刷装置は、複数のノズルデータのうちのいずれか1のノズルデータに割り振られたアドレスであってNバイトアライメントに対応する値のアドレスを先頭アドレスとして、ヘッドへのデータ転送を行う。このため、所定のノズルからインクを吐出させる場合に、Nバイトアライメントに対応するノズルデータを生成して記憶領域に記憶する処理が必要なく、所定のノズルからインクを吐出させる際のデータ転送に関する処理のスループットを向上できる。
本発明によれば、ノズルが設けられたヘッドを有する印刷装置、及び、当該印刷装置に係るインク吐出方法について、ノズルからインクを吐出させる際のデータ転送に関する処理のスループットを向上できる。
本実施形態に係るインクジェットプリンターを示す図。 ヘッドを示す図。 印刷システムの機能的構成を示すブロック図。 駆動データを示す図。 第1ノズルデータを示す図。 第1ノズルデータ〜第4ノズルデータを示す図。 インクジェットプリンターの動作を示すフローチャート。 第1ノズルデータの別例を示す図。
以下、図面を参照して本発明の実施形態について説明する。
図1は、本実施形態に係るインクジェットプリンター1(印刷装置)、特に、印刷ヘッドであるインクジェットヘッド10の構成を示す模式図である。
インクジェットプリンター1は、ライン型のインクジェットヘッド10(印刷ヘッド)を備え、ロール紙R等の記録媒体を搬送方向Fに搬送しつつ、固定されたインクジェットヘッド10からインク滴を吐出して、記録媒体に画像を印刷する印刷装置である。
図1に示すように、インクジェットヘッド10は、ブラックヘッドユニット12と、シアンヘッドユニット13と、マゼンダヘッドユニット14と、イエローヘッドユニット15と、を備える。インクジェットヘッド10において、各ヘッドユニットは、搬送方向Fへ向かって、ブラックヘッドユニット12、シアンヘッドユニット13、マゼンダヘッドユニット14、イエローヘッドユニット15の順番に配置される。
ブラックヘッドユニット12には、4つのブラックヘッド12aが千鳥状に配置される。各ブラックヘッド12aには、ブラックノズル列12bが設けられる。ブラックノズル列12bは、インクを微細なインク滴として吐出するノズルNZが、搬送方向Fと交わる方向に延在して形成されたノズル列である。ブラックヘッド12aには、ブラック(K)のインクカートリッジからインクが供給される。
ブラックヘッド12aは、吐出素子S(図2)を用いて構成されるアクチュエーターによって、ブラック(K)のインクをロール紙Rへ向かって押し出して、所定のノズルNZからインク滴を吐出する。これにより、ロール紙Rにドットが形成される。
同様に、シアンヘッドユニット13には、4つのシアンヘッド13aが千鳥状に配置されている。各シアンヘッド13aには、ノズルNZからシアン(C)のインク滴を吐出するシアンノズル列13bが形成される。また、マゼンダヘッドユニット14には、4つのマゼンダヘッド14aが千鳥状に配置される。各マゼンダヘッド14aには、ノズルNZからマゼンダ(M)のインク滴を吐出するマゼンダノズル列14bが形成される。また、イエローヘッドユニット15には、4つのイエローヘッド15aが千鳥状に配置される。各イエローヘッド15aには、ノズルNZからイエロー(Y)のインク滴を吐出するイエローノズル列15bが形成されている。
なお、図1では、説明の便宜のため、各ヘッド、及び、各ヘッドが備えるノズル列を明示しているが、実際は、ノズル列を構成するノズルNZから鉛直下方へ向かってインクが吐出される構成となっており、当該構成を実現するように各部材が配置される。
インクジェットプリンター1は、ロール紙Rにインクを吐出してドットを形成し、このドットの組み合わせにより、画像を印刷する。以下、ロール紙Rに、ある1つのドットを形成する場合の基本的な動作について図1を用いて説明する。
ロール紙Rが、図1に示すように、インクジェットヘッド10の搬送方向Fの上流側に位置しており、ロール紙Rの位置P1に所定の色のドットを形成する場合を例にして説明する。所定の色は、ブラック、シアン、マゼンダ、及び、イエローのインクがそれぞれ所定量ずつ吐出されてドットが形成されることによって表現される色である。図1中、位置P2は、ブラックヘッド12aに形成されたブラックノズル列12bにおいて、搬送方向Fに搬送されるロール紙Rの位置P1が通過する位置である。位置P3、位置P4、及び、位置P5についても同様である。
インクジェットプリンター1は、ロール紙Rにドットを形成している間、ロール紙Rを、搬送方向Fへ向かって搬送する。そして、インクジェットプリンター1は、図1に示す状態からロール紙Rの搬送方向Fへの搬送が進行し、ロール紙R上の位置P1が、位置P2に対応する位置に至ったタイミングで、対応するノズルNZから所定量のブラックのインクを吐出する。同様にして、ロール紙Rの位置P1が位置P3に至ったタイミングで、対応するノズルNZから所定量のシアンのインクを吐出する。また、ロール紙Rの位置P1が位置P4に至ったタイミングで、対応するノズルNZから所定量のマゼンダのインクを吐出する。また、ロール紙Rの位置P1が位置P5に至ったタイミングで、対応するノズルNZから所定量のイエローのインクを吐出する。このようにして、ロール紙Rの位置P1に、ブラック、シアン、マゼンダ、及び、イエローのインクがそれぞれ所定量ずつ吐出され、位置P1に所定の色のドットが形成される。
つまり、本実施形態に係るインクジェットプリンター1では、画像の印刷に係る処理中は、インクジェットヘッド10はその位置が固定された状態である。そして、この固定されたインクジェットヘッド10に対してロール紙Rが相対的に移動しつつ、インクジェットヘッド10から適宜インクが吐出されてドットが形成され、画像の印刷が行われる。
以下の説明では、ブラックヘッド12a、シアンヘッド13a、マゼンダヘッド14a、及び、イエローヘッド15aを特に区別せずに表現する場合、「ヘッドH」と表現する。
図2は、ヘッドHの構造を模式的に示す図である。
図2に示すように、ヘッドHには、ノズルNZが搬送方向Fと交わる方向に並んで設けられる。本実施形態では、1のヘッドHに、ノズルNZ1〜ノズルNZ400の400個のノズルNZが設けられる。各ノズルNZに対応して吐出素子Sが設けられる。吐出素子Sへの電圧の印加制御は、後述するヘッド制御ユニット30(ヘッド制御部)により行われる。
図3は、本実施形態に係る印刷システム2の機能的構成を示すブロック図である。
図3に示すように、印刷システム2は、インクジェットプリンター1と、インクジェットプリンター1に通信可能に接続され、インクジェットプリンター1を制御するホストコンピューター3とを備える。ホストコンピューター3には、アプリケーションと、プリンタードライバーとがインストールされている。ホストコンピューター3は、これらソフトウェアの機能により、制御データを生成し、インクジェットプリンター1に送信することにより、インクジェットプリンター1を制御する。アプリケーションは、POSアプリケーションや、文書作成ソフトウェア、表計算ソフトウェア、ウェブブラウザー等、プリンタードライバーに対して、印刷に関する情報を出力可能なソフトウェアのことである。
図3に示すように、インクジェットプリンター1は、制御部20と、動作制御部21と、不揮発性メモリー22と、RAM23(記憶部)と、通信インターフェース24と、ノズルチェック制御部26と、DMAコントローラー28(転送部)と、ヘッド制御部29とを備え、これらがバスBUSを介して接続される。
制御部20は、CPU、その他の制御回路を備え、インクジェットプリンター1を制御する。
動作制御部21は、ロール紙R等の記録媒体を搬送する搬送機構や、インクジェットヘッド10をホームポジション等に移動するキャリッジ、その他の機構と接続され、制御部20の制御で、各種機構を制御する。
不揮発性メモリー22は、EEPROM等であり、プログラムファイル、その他のデータを記憶する。
RAM23は、データを一時記憶する。RAM23には、バッファーBUFが設けられる。
通信インターフェース24は、制御部20の制御で、ホストコンピューター3と所定の通信規格に従って通信する。
インクジェットプリンター1は、ホストコンピューター3から、通信インターフェース24を介して制御データを受信する。インクジェットプリンター1は、受信した制御データに基づいて、記録媒体への画像の印刷を実行する。以下、画像を印刷するときのインクジェットプリンター1の基本的な動作について説明する。
ホストコンピューター3が送信する制御データには、印刷する画像に対応するイメージデータが含まれる。イメージデータは、色に関する情報を例えば階調値として保持するドットが、ドットマトリックス状に配置されたデータである。制御部20が、制御データに基づいてイメージデータを生成する構成であってもよい。制御部20は、イメージデータを、RAM23のバッファーBUFに展開する。制御部20は、後述するDMAコントローラー28を制御して、バッファーBUFに展開したイメージデータを、所定のデータ量ずつ、後述するヘッド制御ユニット30にDMA転送する。ヘッド制御ユニット30は、DMA転送されたデータに基づいて、ヘッドHを駆動する。制御部20は、ヘッドHの駆動に対応して、制御データに基づいて動作制御部21を制御し、記録媒体の搬送、その他の動作を実行する。
ノズルチェック制御部26は、制御部20の制御で、ノズルチェック装置27を制御する。
以下の説明では、1のノズルNZからインクを吐出して、当該1のノズルNZの状態を検査することを「ノズルチェック」と表現し、複数のノズルNZのノズルチェックを連続して行うことを「連続ノズルチェック処理」と表現する。
ノズルチェック装置27は、インクジェットヘッド10に設けられたノズルNZのうちの1のノズルNZからのインク滴の吐出に応じて、当該1のノズルNZのノズルチェックを行う。ノズルチェックの方式は、種々の方式を採用できる。例えば、発光器から射出したレーザー光にインク滴飛翔経路を交差するように位置合わせする。そして、ノズルNZからのインク滴の吐出に応じて、吐出されたインク滴によるレーザー光の遮光を受光器で検出できなかった場合、ノズル詰まりが発生していると判定するレーザー方式を採用できる。また例えば、インクジェットヘッド10と、当該ヘッドに対向し、当該ヘッドから吐出されたインクを受けるキャップとの間に電圧を印加し、それぞれを「−」と「+」とに帯電させる。この場合、ノズルNZからのインクの吐出に応じて、「−」に帯電したインク滴が、「+」に帯電したキャップに接近する過程で静電誘導によりインクジェットヘッド10とキャップとの間の電界が変化し、さらに、着弾時にインク滴の電荷が中和されて電界が変化する。そして、電界の変化が反映された測定信号を積分回路で積分し、積分値が所定の閾値を超えなければノズル詰まりが発生していると判定する電界検出方式を採用できる。
DMAコントローラー28は、制御部20の制御で、RAM23のバッファーBUFから、ヘッド制御ユニット30へのデータのDMA転送(以下、単に「転送」という。)を実行する。DMAコントローラー28は、転送開始アドレス設定部28aと、転送カウンター28bとを備える。
転送開始アドレス設定部28aは、制御部20の制御で、バッファーBUFに展開されたデータについて、転送開始位置を示すアドレス(以下、「転送開始アドレス」という。)を設定する。
転送カウンター28bは、制御部20の制御で、転送するデータのデータ長(以下、「転送データ長」という。)を設定する。また、転送カウンター28bは、データの転送の開始後、転送済みのデータのデータ長を計測する。
データを転送する場合、制御部20と、DMAコントローラー28は、以下の処理を実行する。制御部20は、転送するデータの転送開始アドレスを転送開始アドレス設定部28aに通知する。転送開始アドレス設定部28aは、転送開始アドレスを設定する。また、制御部20は、転送するデータのデータ長を転送カウンター28bに通知する。転送カウンター28bは、データ長を設定する。制御部20は、DMAコントローラー28に、データの転送の開始を指示する。当該指示に応じて、DMAコントローラー28は、設定された転送開始アドレスを転送開始位置として、バッファーBUFからヘッド制御ユニット30へのデータの転送を開始し、転送カウンター28bが計測した転送済みのデータのデータ長が、設定されたデータ長に達したら転送を終了する。データの転送の終了後、DMAコントローラー28は、制御部20に、データの転送が終了したことを通知する。
本実施形態では、RAM23のバッファーBUFから、ヘッド制御ユニット30へのデータの転送は、8バイトアライメントで行われる。
ヘッド制御部29は、インクジェットヘッド10が16個のヘッドHを有することに対応して、16個のヘッド制御ユニット30を有する。1のヘッド制御ユニット30には、1のヘッドHが接続される。
ヘッド制御ユニット30は、ヘッドメモリー31と、ヘッド駆動回路32とを有する。
ヘッド駆動回路32は、ヘッドHが有するノズルNZの数と同数の信号線34を介して、ノズルNZの吐出素子Sのそれぞれに接続される。
RAM23のバッファーBUFからヘッド制御ユニット30に転送されたデータは、所定の態様で、ヘッドメモリー31に展開される。ヘッドメモリー31に展開されたデータは、所定のタイミングでヘッド駆動回路32に出力される。ヘッド駆動回路32は、入力されたデータに基づいて、吐出素子Sへの電圧の印加制御を行い、ヘッドHを駆動する。
以下の説明では、「0x」は、「0x」に続く値が16進数で表された値であることを示す。
次に、ヘッドHの駆動時に、バッファーBUFからヘッド制御ユニット30へ転送されるデータについて説明する。
以下では、図2に示すように、ヘッドHには、ノズルNZ1〜ノズルNZ400の400個のノズルNZが設けられている。
ヘッドHの駆動時、バッファーBUFに駆動データD1が展開され、バッファーBUFからヘッド制御ユニット30へ、駆動データD1が転送される。
図4は、駆動データD1がバッファーBUFに展開された様子を説明に適した態様で模式的に示す図である。
駆動データD1は、ヘッドHが有する400個のノズルNZ(ノズルNZ1〜ノズルNZ400)の8ショット分の吐出/非吐出を示すデータである。本実施形態では、「8ショット分の吐出/非吐出を示す」とは、所定の間隔を開けて連続する8回のタイミングについて、各タイミングでインクを吐出するか、吐出しないかを示す、ということである。
図4に示すように、駆動データD1において、1のノズルの8ショット分の吐出/非吐出を示すデータのサイズは、2バイトである。従って、駆動データD1のサイズは、800バイト(「2バイト(1のノズルNZのデータのサイズ)×400(ノズルNZの個数)=800バイト」)である。
以下、駆動データD1において、1のノズルの8ショット分の吐出/非吐出を示す2バイトのデータを、「単ノズル駆動データD2」という。駆動データD1は、ノズルNZ1〜ノズルNZ400の400個のノズルNZに係る単ノズル駆動データD2が連続したデータである。
図4の例では、バッファーBUFに、アドレスADX1を先頭アドレスとして、駆動データD1が展開されている。上述したように、本実施形態では、バッファーBUFからヘッド制御ユニット30へのデータの転送は、8バイトアライメントで行われる。従って、アドレスADX1の値は、「0x40」で割り切れる値である。また、データの転送は、8バイトずつ(4個のノズルNZに係る単ノズル駆動データD2ずつ)行われる。
図4の例では、アドレスADX1を先頭アドレスとして展開される2バイトのデータは、ノズルNZ1に係る単ノズル駆動データD2である。
単ノズル駆動データD2では、1のタイミングでインクを吐出するか否かを、2ビットで表す。
以下の説明では、8ショットに対応する8回のタイミングを、タイミングT1〜タイミングT8と表現する。タイミングT1が到来した後、所定の間隔で、タイミングT2〜タイミングT7の順番で各タイミングが到来し、最後にタイミングT8が到来する。
ノズルNZ1に係る単ノズル駆動データD2において、1ビット目と2ビット目とのビットの組合せにより、タイミングT1におけるインクの吐出/非吐出が表される。同様に、3ビット目と4ビット目とのビットの組合せにより、タイミングT2におけるインクの吐出/非吐出が表される。同様に、15ビット目と16ビット目とのビットの組合せにより、タイミングT8におけるインクの吐出/非吐出が表される。
以下の説明では、単ノズル駆動データD2において、1のタイミングにおけるインクの吐出/非吐出を示す2ビットのデータを、ショットデータD3という。
図4に示すように、ノズルNZ1に係る単ノズル駆動データD2において、タイミングT1に係るショットデータD3(1ビット目と2ビット目とのデータ)は、「11」である。これは、タイミングT1で、ノズルNZ1からインクを吐出することを示す。
ノズルNZ1に係る単ノズル駆動データD2において、タイミングT2に係るショットデータD3(3ビット目と4ビット目とのデータ)は、「00」である。これは、タイミングT2で、ノズルNZ1からインクを吐出しないことを示す。
以下の説明では、値が「11」であり、インクを吐出することを示すショットデータD3のことを、吐出ショットデータD4と表現する。一方、値が「00」であり、インクを吐出しないことを示すショットデータD3のことを、非吐出ショットデータD5と表現する。
図4に示すように、ノズルNZ1に係る単ノズル駆動データD2では、タイミングT1、T4、T5、及び、T8に係るショットデータD3が、吐出ショットデータD4であり、それ以外のショットデータD3が非吐出ショットデータD5である。この場合、ノズルNZ1に係る単ノズル駆動データD2は、タイミングT1、T4、T5、及び、T8でノズルNZ1からインクを吐出することを示す。
図4に示すように、バッファーBUFに、アドレスADX2を先頭アドレスとして、ノズルNZ2に係る単ノズル駆動データD2が展開される。
アドレスADX2は、アドレスADX1から、2バイト分、変移したアドレスである。
ノズルNZ2に係る単ノズル駆動データD2は、全てのショットデータD3が、非吐出ショットデータD5である。従って、ノズルNZ2に係る単ノズル駆動データD2は、タイミングT1〜タイミングT8のいずれのタイミングでも、ノズルNZ2からインクを吐出しないことを示す。
以下の説明では、タイミングT1〜T8に係る全てのショットデータD3が、非吐出ショットデータD5である単ノズル駆動データD2のことを「非吐出データD6」と表現する。非吐出データD6は、タイミングT1〜T8のいずれのタイミングにおいても、対応するノズルNZからインクを吐出しないことを示す。一方、一つでも吐出ショットデータD4を有する単ノズル駆動データD2のことを「吐出データD7」と表現する。吐出データD7は、タイミングT1〜T8のタイミングのうち、少なくとも1のタイミングで対応するノズルNZからインクを吐出することを示す。
図4において、ノズルNZ1に係る単ノズル駆動データD2は、「吐出データD7」であり、ノズルNZ2に係る単ノズル駆動データD2は、「非吐出データD6」である。
図4に示す駆動データD1の転送は、以下のようにして行われる。
制御部20は、バッファーBUFに、「0x40」で割り切れる値のアドレスADX1を先頭アドレスとして、駆動データD1を展開する。
次いで、制御部20は、DMAコントローラー28の転送開始アドレス設定部28aを制御して、転送開始アドレスとして、アドレスADX1を設定する。次いで、制御部20は、DMAコントローラー28の転送カウンター28bを制御して、転送データ長として、800バイトを設定する。次いで、制御部20は、DMAコントローラー28に、転送開始を指示する。
DMAコントローラー28は、バッファーBUFにアクセスし、アドレスADX1を転送開始アドレスとして、800バイト分のデータの転送を実行する。その際、データの転送は、8バイトずつ行われる。
以上のようにして、バッファーBUFからヘッド制御ユニット30への転送が行われる。
なお、8ショットを超えるショット数分のインクの吐出を制御する場合は、対応する個数の駆動データD1が、順次、バッファーBUFに展開され、ヘッド制御ユニット30に転送される。例えば、ノズルNZによる800ショット分のインクの吐出を制御する場合は、100個の駆動データD1が、順次、バッファーBUFに展開され、ヘッド制御ユニット30に転送される。
次に、インクジェットプリンター1の連続ノズルチェック処理(ノズルチェック)時の動作について詳述する。
連続ノズルチェック処理では、ヘッドHが有する複数のノズルNZのうちの1のノズルNZからインクの吐出が行われ、当該吐出に基づいて、当該1のノズルNZのノズルチェックが行われる。
不揮発性メモリー22には、元データが記憶される。
制御部20は、所定のタイミングで、不揮発性メモリー22に記憶された元データに基づいて、第1ノズルデータND1、第2ノズルデータND2、第3ノズルデータND3、及び、第4ノズルデータND4を生成し、バッファーBUFに、所定の態様で展開する。以下、第1ノズルデータND1、第2ノズルデータND2、第3ノズルデータND3、及び、第4ノズルデータND4を区別せずに表現する場合は、「ノズルデータND」と表現する。
元データは、制御部20が各ノズルデータNDを生成するのに必要な情報を有するデータである。元データは、ノズルデータNDを含むデータであってもよい。
また、所定のタイミングは、例えば、インクジェットプリンター1の電源投入時、ユーザーから指示があった時、連続ノズルチェック処理(ノズルチェック)を開始する時、所定の条件が成立した時等である。
図5は、ノズルデータNDの1つである第1ノズルデータND1を示す図である。図6は、第1ノズルデータND1〜第4ノズルデータND4の4つのノズルデータNDを示す図である。図6(A)は第1ノズルデータND1を示し、(B)は第2ノズルデータND2を示し、(C)は第3ノズルデータND3を示し、(D)は第4ノズルデータND4を示す。
図5に示すように、第1ノズルデータND1は、ヌルデータQ1(非吐出制御データ)と、ヌルデータQ1に連続するノズル情報データQ2とを有する。
ヌルデータQ1のサイズは、798バイト(2バイト×399)である。ヌルデータQ1の全てのビットは、「0」である。
つまり、ヌルデータQ1は、399個の非吐出データD6が連続するデータである。
ノズル情報データQ2のサイズは、800バイト(2バイト×400)である。第1ノズルデータND1に係るノズル情報データQ2の先頭アドレスは、アドレスADA400である。アドレスADA400の値は、「0x40」で割り切れる値である。制御部20は、第1ノズルデータND1をバッファーBUFに展開する際、ノズル情報データQ2の先頭アドレスの値が、「0x40」で割り切れる値となるように、第1ノズルデータND1をバッファーBUFに展開する。
なお、本実施形態において、アドレスADA(n)(ただし、nは1≦n≦799の整数)について、nの値は、バッファーBUFにおける2バイト分のアドレスの変移により、「1」増加する。例えば、アドレスADA401は、アドレスADA400から、2バイト分、変移したアドレスである。
第1ノズルデータND1に係るノズル情報データQ2は、先頭の2バイトのデータの全てのビットが「1」であり、残り798バイトのデータの全てのビットが「0」である。つまり、第1ノズルデータND1は、「0x40」で割り切れる値のアドレスADA400を先頭アドレスとして展開された1個の吐出データD7に、399個の非吐出データD6が連続して展開されたデータである。
第1ノズルデータND1に割り当てられるアドレスのうち、「0x40」で割り切れるアドレスを転送開始アドレスとすることによって、転送されるデータを、ノズルNZ1〜ノズルNZ400の400個のノズルNZのうち、以下の1のノズルNZからインクを吐出することを示す駆動データD1とすることができる。すなわち、ノズルNZ(4x+1)(ただし、xは、0≦x≦99の整数)からインクを吐出することを示す駆動データD1である。つまり、ノズルNZ1、5、9・・・397のいずれか1のノズルNZからインクを吐出することを示す駆動データD1である。
また、アドレスADA400が「0x40」で割り切れる値を有するため、「0x40」で割り切れるアドレスは、アドレスADA(4y)(ただし、1≦y≦100の整数)である。つまり、アドレスADA4、8、16・・・400である。
例を挙げて詳述すると、第1ノズルデータND1について、アドレスADA400を転送開始アドレスとして、800バイトのデータを転送した場合、転送されるデータは、先頭の2バイトを構成するビットの値が「1」であり、残り798バイトを構成するビットの値が「0」のデータである。これは、転送されるデータが、ノズルNZ1に係る単ノズル駆動データD2が吐出データD7であり、ノズルNZ2〜ノズルNZ400に係る単ノズル駆動データD2が非吐出データD6である駆動データD1であることを意味する。
また、第1ノズルデータND1について、アドレスADA396を転送開始アドレスとして、800バイトのデータを転送した場合、転送されるデータは、先頭8バイトを構成するビットの値が「0」であり、9バイト目、10バイト目を構成するビットの値が「1」であり、残り790バイトを構成するビットの値が「0」である。これは、転送されるデータが、ノズルNZ5に係る単ノズル駆動データD2が吐出データD7であり、それ以外のノズルNZに係る単ノズル駆動データD2が非吐出データD6である駆動データD1であることを意味する。
また、第1ノズルデータND1について、アドレスADA4を転送開始アドレスとして、800バイトのデータを転送した場合、転送されるデータは、先頭792バイトを構成するビットの値が「0」であり、793バイト目、794バイト目を構成するビットの値が「1」であり、残り6バイトを構成するビットの値が「0」である。これは、転送されるデータが、ノズルNZ397に係る単ノズル駆動データD2が吐出データD7であり、それ以外のノズルNZに係る単ノズル駆動データD2が非吐出データD6である駆動データD1であることを意味する。
以上のように、第1ノズルデータND1について、8バイトアライメントに対応して、「0x40」で割り切れる値のアドレスを転送開始アドレスとして、データの転送を実行することにより、ノズルNZ(4x+1)(ただし、xは、0≦x≦99の整数)のうち、任意の1のノズルからインクを吐出させることができる。
図6(B)に示すように、第2ノズルデータND2は、第1ノズルデータND1と同様、798バイトのヌルデータQ1と、ヌルデータQ1に連続する800バイトのノズル情報データQ2とを有する。
第2ノズルデータND2に係るノズル情報データQ2の先頭アドレスは、アドレスADB400である。アドレスADB400の値は、「0x40」で割り切れる値である。制御部20は、第2ノズルデータND2をバッファーBUFに展開する場合、ノズル情報データQ2の先頭アドレスの値が、「0x40」で割り切れる値となるように、第2ノズルデータND2をバッファーBUFに展開する。
なお、アドレスADB(n)(ただし、nは1≦n≦799の整数)について、nの値は、バッファーBUFにおける2バイト分のアドレスの変移により、「1」増加する。例えば、アドレスADB401は、アドレスADB400から、2バイト分、変移したアドレスである。
第2ノズルデータND2に係るノズル情報データQ2は、3バイト目と、4バイト目のデータを構成するビットが「1」であり、それ以外のビットが「0」である。つまり、第2ノズルデータND2は、「0x40」で割り切れる値のアドレスADB400を先頭アドレスとして展開された1個の非吐出データD6に、1個の吐出データD7が連続して展開され、さらに、398個の非吐出データD6が連続して展開されたデータである。
第2ノズルデータND2に割り当てられるアドレスのうち、「0x40」で割り切れるアドレスを転送開始アドレスとすることによって、転送されるデータを、ノズルNZ1〜ノズルNZ400の400個のノズルNZのうち、以下の1のノズルNZからインクを吐出することを示す駆動データD1とすることができる。すなわち、ノズルNZ(4x+2)(ただし、xは、0≦x≦99の整数)からインクを吐出することを示す駆動データD1である。つまり、ノズルNZ2、6、10・・・398のいずれか1のノズルNZからインクを吐出することを示す駆動データD1である。
また、アドレスADB400が「0x40」で割り切れる値を有するため、「0x40」で割り切れるアドレスは、アドレスADB(4y)(ただし、1≦y≦100の整数)である。つまり、アドレスADB4、8、16・・・400である。
例を挙げて詳述すると、第2ノズルデータND2について、アドレスADB400を転送開始アドレスとして、800バイトのデータを転送した場合、転送されるデータは、3バイト目と、4バイト目のデータを構成するビットの値が「1」であり、それ以外のビットの値が「0」のデータである。これは、転送されるデータが、ノズルNZ2に係る単ノズル駆動データD2が吐出データD7であり、ノズルNZ1、3〜400に係る単ノズル駆動データD2が非吐出データD6である駆動データD1であることを意味する。
また、第2ノズルデータND2について、アドレスADB396を転送開始アドレスとして、800バイトのデータを転送した場合、転送されるデータは、先頭の10バイトを構成するビットの値が「0」であり、11バイト目、12バイト目を構成するビットの値が「1」であり、残り788バイトを構成するビットの値が「0」である。これは、転送されるデータが、ノズルNZ6に係る単ノズル駆動データD2が吐出データD7であり、それ以外のノズルNZに係る単ノズル駆動データD2が非吐出データD6である駆動データD1であることを意味する。
また、第2ノズルデータND2について、アドレスADB4を転送開始アドレスとして、800バイトのデータを転送した場合、転送されるデータは、先頭794バイトを構成するビットの値が「0」であり、795バイト目、796バイト目を構成するビットの値が「1」であり、残り4バイトを構成するビットの値が「0」である。これは、転送されるデータが、ノズルNZ398に係る単ノズル駆動データD2が吐出データD7であり、それ以外のノズルNZに係る単ノズル駆動データD2が非吐出データD6である駆動データD1であることを意味する。
以上のように、第2ノズルデータND2について、8バイトアライメントに対応して、「0x40」で割り切れる値のアドレスを転送開始アドレスとして、データの転送を実行することにより、ノズルNZ(4x+2)(ただし、xは、0≦x≦99の整数)のうち、任意の1のノズルからインクを吐出させることができる。
図6(C)に示すように、第3ノズルデータND3は、第1ノズルデータND1と同様、798バイトのヌルデータQ1と、ヌルデータQ1に連続する800バイトのノズル情報データQ2とを有する。
第3ノズルデータND3に係るノズル情報データQ2の先頭アドレスは、アドレスADC400である。アドレスADC400の値は、「0x40」で割り切れる値である。制御部20は、第3ノズルデータND3をバッファーBUFに展開する場合、ノズル情報データQ2の先頭アドレスの値が、「0x40」で割り切れる値となるように、第3ノズルデータND3をバッファーBUFに展開する。
なお、アドレスADC(n)(ただし、nは1≦n≦799の整数)について、nの値は、バッファーBUFにおける2バイト分のアドレスの変移により、「1」増加する。例えば、アドレスADC401は、アドレスADC400から、2バイト分、変移したアドレスである。
第3ノズルデータND3に係るノズル情報データQ2は、5バイト目と、6バイト目のデータを構成するビットが「1」であり、それ以外のビットが「0」である。つまり、第3ノズルデータND3は、「0x40」で割り切れる値のアドレスADC400を先頭アドレスとして展開された2個の非吐出データD6に、1個の吐出データD7が連続して展開され、さらに、397個の非吐出データD6が連続して展開されたデータである。
第3ノズルデータND3に割り当てられるアドレスのうち、「0x40」で割り切れるアドレスを転送開始アドレスとすることによって、転送されるデータを、ノズルNZ1〜ノズルNZ400の400個のノズルNZのうち、以下の1のノズルNZからインクを吐出することを示す駆動データD1とすることができる。すなわち、ノズルNZ(4x+3)(ただし、xは、0≦x≦99の整数)からインクを吐出することを示す駆動データD1である。つまり、ノズルNZ3、7、11・・・399のいずれか1のノズルNZからインクを吐出することを示す駆動データD1である。
また、アドレスADC400が「0x40」で割り切れる値を有するため、「0x40」で割り切れるアドレスは、アドレスADC(4y)(ただし、1≦y≦100の整数)である。つまり、アドレスADC4、8、16・・・400である。
例を挙げて詳述すると、第3ノズルデータND3について、アドレスADC400を転送開始アドレスとして、800バイトのデータを転送した場合、転送されるデータは、5バイト目と、6バイト目のデータを構成するビットの値が「1」であり、それ以外のビットの値が「0」のデータである。これは、転送されるデータが、ノズルNZ3に係る単ノズル駆動データD2が吐出データD7であり、ノズルNZ1、2、4〜400に係る単ノズル駆動データD2が非吐出データD6である駆動データD1であることを意味する。
また、第3ノズルデータND3について、アドレスADC396を転送開始アドレスとして、800バイトのデータを転送した場合、転送されるデータは、先頭の12バイトを構成するビットの値が「0」であり、13バイト目、14バイト目を構成するビットの値が「1」であり、残り786バイトを構成するビットの値が「0」である。これは、転送されるデータが、ノズルNZ7に係る単ノズル駆動データD2が吐出データD7であり、それ以外のノズルNZに係る単ノズル駆動データD2が非吐出データD6である駆動データD1であることを意味する。
また、第3ノズルデータND3について、アドレスADC4を転送開始アドレスとして、800バイトのデータを転送した場合、転送されるデータは、先頭796バイトを構成するビットの値が「0」であり、797バイト目、798バイト目を構成するビットの値が「1」であり、残り2バイトを構成するビットの値が「0」である。これは、転送されるデータが、ノズルNZ399に係る単ノズル駆動データD2が吐出データD7であり、それ以外のノズルNZに係る単ノズル駆動データD2が非吐出データD6である駆動データD1であることを意味する。
以上のように、第3ノズルデータND3について、8バイトアライメントに対応して、「0x40」で割り切れる値のアドレスを転送開始アドレスとして、データの転送を実行することにより、ノズルNZ(4x+3)(ただし、xは、0≦x≦99の整数)のうち、任意の1のノズルからインクを吐出させることができる。
図6(D)に示すように、第4ノズルデータND4は、第1ノズルデータND1と同様、798バイトのヌルデータQ1と、ヌルデータQ1に連続する800バイトのノズル情報データQ2とを有する。
第4ノズルデータND4に係るノズル情報データQ2の先頭アドレスは、アドレスADD400である。アドレスADD400の値は、「0x40」で割り切れる値である。制御部20は、第4ノズルデータND4をバッファーBUFに展開する場合、ノズル情報データQ2の先頭アドレスの値が、「0x40」で割り切れる値となるように、第4ノズルデータND4をバッファーBUFに展開する。
なお、アドレスADD(n)(ただし、nは1≦n≦799の整数)について、nの値は、バッファーBUFにおける2バイト分のアドレスの変移により、「1」増加する。例えば、アドレスADD401は、アドレスADD400から、2バイト分、変移したアドレスである。
第4ノズルデータND4に係るノズル情報データQ2は、7バイト目と、8バイト目のデータを構成するビットが「1」であり、それ以外のビットが「0」である。つまり、第4ノズルデータND4は、「0x40」で割り切れる値のアドレスADD400を先頭アドレスとして展開された3個の非吐出データD6に、1個の吐出データD7が連続して展開され、さらに、396個の非吐出データD6が連続して展開されたデータである。
第4ノズルデータND4に割り当てられるアドレスのうち、「0x40」で割り切れるアドレスを転送開始アドレスとすることによって、転送されるデータを、ノズルNZ1〜ノズルNZ400の400個のノズルNZのうち、以下の1のノズルNZからインクを吐出することを示す駆動データD1とすることができる。すなわち、ノズルNZ(4x+4)(ただし、xは、0≦x≦99の整数)からインクを吐出することを示す駆動データD1である。つまり、ノズルNZ4、8、12・・・400のいずれか1のノズルNZからインクを吐出することを示す駆動データD1である。
また、アドレスADD400が「0x40」で割り切れる値を有するため、「0x40」で割り切れるアドレスは、アドレスADD(4y)(ただし、1≦y≦100の整数)である。つまり、アドレスADD4、8、16・・・400である。
例を挙げて詳述すると、第4ノズルデータND4について、アドレスADD400を転送開始アドレスとして、800バイトのデータを転送した場合、転送されるデータは、7バイト目と、8バイト目のデータを構成するビットの値が「1」であり、それ以外のビットの値が「0」のデータである。これは、転送されるデータが、ノズルNZ4に係る単ノズル駆動データD2が吐出データD7であり、ノズルNZ1〜3、5〜400に係る単ノズル駆動データD2が非吐出データD6である駆動データD1であることを意味する。
また、第4ノズルデータND4について、アドレスADD396を転送開始アドレスとして、800バイトのデータを転送した場合、転送されるデータは、先頭の14バイトを構成するビットの値が「0」であり、15バイト目、16バイト目を構成するビットの値が「1」であり、残り784バイトを構成するビットの値が「0」である。これは、転送されるデータが、ノズルNZ8に係る単ノズル駆動データD2が吐出データD7であり、それ以外のノズルNZに係る単ノズル駆動データD2が非吐出データD6である駆動データD1であることを意味する。
また、第4ノズルデータND4について、アドレスADD4を転送開始アドレスとして、800バイトのデータを転送した場合、転送されるデータは、先頭798バイトを構成するビットの値が「0」であり、799バイト目、800バイト目を構成するビットの値が「1」である。これは、転送されるデータが、ノズルNZ400に係る単ノズル駆動データD2が吐出データD7であり、それ以外のノズルNZに係る単ノズル駆動データD2が非吐出データD6である駆動データD1であることを意味する。
以上のように、第4ノズルデータND4について、8バイトアライメントに対応して、「0x40」で割り切れる値のアドレスを転送開始アドレスとして、データの転送を実行することにより、ノズルNZ(4x+4)(ただし、xは、0≦x≦99の整数)のうち、任意の1のノズルからインクを吐出させることができる。
以上のように、本実施形態では、第1ノズルデータND1〜第4ノズルデータND4の4個のノズルデータNDのうち、いずれか1のノズルデータNDに割り振られた「0x40」で割り切れる値のアドレスを転送開始アドレスとしてデータを転送することにより、任意の1のノズルNZからインクを吐出することを示す駆動データD1の転送が可能である。つまり、制御部20は、4個のノズルデータNDを用いて、任意の1のノズルNZからインクを吐出させる駆動データD1の転送を実行することができる。
ここで、任意の1のノズルNZからインクを吐出させる場合、制御部20が、その都度、対応する駆動データD1を生成し、生成した駆動データD1をバッファーBUFに展開し、DMAコントローラー28の制御で、データの転送することも考えられる。本実施形態によれば、対応する駆動データD1を生成し、バッファーBUFに展開する処理、また当該処理に付随する処理が行われないため、上述した処理を実行する場合と比較して、データ転送に関する処理のスループットを向上できる。
次に、連続ノズルチェック処理時におけるインクジェットプリンター1の動作について説明する。
図7は、連続ノズルチェック処理時におけるインクジェットプリンター1の動作を示すフローチャートである。
なお、以下の説明では、制御部20は、連続ノズルチェック処理を開始する場合に、元データに基づいて、4個のノズルデータNDをバッファーBUFに展開する。上述したように、ノズルデータNDをバッファーBUFに展開するタイミングは、上記タイミングに限らない。
また、以下の説明では、制御部20は、1のヘッドHについて、連続ノズルチェック処理を実行する。上述したように、インクジェットプリンター1は16個のヘッドHを備えているため、連続ノズルチェック処理時、インクジェットプリンター1は、以下で説明する処理を、各ヘッドHについて実行する。
図7に示すように、インクジェットプリンター1の制御部20は、連続ノズルチェック処理を開始するか否かを監視する(ステップSA1)。
例えば、ユーザーから連続ノズルチェック処理の開始の指示があった場合、所定の条件が成立した場合等に、制御部20は、連続ノズルチェック処理を開始すると判別する。連続ノズルチェック処理を開始するタイミングは、ユーザーにより設定可能な構成となっている。
連続ノズルチェック処理を開始する場合(ステップSA1:YES)、制御部20は、不揮発性メモリー22が記憶する元データに基づいて、上述した4個のノズルデータNDを生成する(ステップSA2)。
次いで、制御部20は、生成した各ノズルデータNDを、上述した態様で、バッファーBUFに展開する(ステップSA3)。すなわち、制御部20は、各ノズルデータNDについて、ノズル情報データQ2の先頭アドレスの値が、「0x40」で割り切れる値となるように、バッファーBUFに展開する。
次いで、制御部20は、ヘッドHが備える複数のノズルNZのうち、1のノズルNZを、ノズルチェックの対象のノズルNZとして決定する(ステップSA4)。
ここで、連続ノズルチェック処理では、ヘッドHが備える複数のノズルNZについて、所定の順番で、ノズルチェックが実行される。所定の順番は、ユーザーにより設定可能な構成となっている。所定の順番は、例えば、ノズルNZ1からノズルNZ400へ向かって400個のノズルNZを順次ノズルチェックする順番や、ノズルNZ1、ノズルNZ3・・・ノズルNZ399のように所定の規則に従った順番や、ノズルNZ50、ノズルNZ100のように指定されたノズルNZを順次ノズルチェックする順番等である。
ステップSA4では、所定の順番に従って、順次、1のノズルNZをノズルチェックの対象のノズルNZとして決定する。
以下の説明では、ステップSA4で決定されたノズルNZを「対象ノズル」と表現する。
次いで、制御部20は、4個のノズルデータNDのうち、対象ノズルからインクを吐出する場合に、データの転送に利用するノズルデータNDを決定する(ステップSA5)。
対象ノズルが、ノズルNZ(z)(ただし、zは、1≦z≦400の整数)として、ステップSA5の処理について詳述する。
上述したように、第1ノズルデータND1に割り振られたアドレスのうち、8バイトアライメントに対応するアドレスを転送開始アドレスとすることにより、ノズルNZ(4x+1)(ただし、xは、0≦x≦99の整数)のうち任意の1のノズルNZからインクを吐出する駆動データD1の転送を実行できる。
また、第2ノズルデータND2に割り振られたアドレスのうち、8バイトアライメントに対応するアドレスを転送開始アドレスとすることにより、ノズルNZ(4x+2)(ただし、xは、0≦x≦99の整数)のうち任意の1のノズルNZからインクを吐出する駆動データD1の転送を実行できる。
また、第3ノズルデータND3に割り振られたアドレスのうち、8バイトアライメントに対応するアドレスを転送開始アドレスとすることにより、ノズルNZ(4x+3)(ただし、xは、0≦x≦99の整数)のうち任意の1のノズルNZからインクを吐出する駆動データD1の転送を実行できる。
また、第4ノズルデータND4に割り振られたアドレスのうち、8バイトアライメントに対応するアドレスを転送開始アドレスとすることにより、ノズルNZ(4x+4)(ただし、xは、0≦x≦99の整数)のうち任意の1のノズルNZからインクを吐出する駆動データD1の転送を実行できる。
そして、ステップSA5で、制御部20は、対象ノズルであるノズルNZ(z)について、「z」が、「4x+1」、「4x+2」、「4x+3」、及び、「4x+4」のいずれの式により表されるかを判断する。例えば、「z=1」であれば、「4x+1(x=0)」で表すことができ、「z=6」であれば、「4x+2(x=1)」で表すことができ、「z=15」であれば、「4x+3(x=3)」で表すことができ、「z=20」であれば、「4x+4(x=4)」で表すことができる。
「z」が「4x+1」で表すことができる場合、制御部20は、データの転送に利用するノズルデータNDとして、第1ノズルデータND1を決定する。「z」が「4x+2」で表すことができる場合、制御部20は、データの転送に利用するノズルデータNDとして、第2ノズルデータND2を決定する。「z」が「4x+3」で表すことができる場合、制御部20は、データの転送に利用するノズルデータNDとして、第3ノズルデータND3を決定する。「z」が「4x+4」で表すことができる場合、制御部20は、データの転送に利用するノズルデータNDとして、第4ノズルデータND4を決定する。
次いで、制御部20は、ステップSA5で決定したノズルデータNDに割り振られたアドレスついて、対象ノズルからインクを吐出することを示す駆動データD1を転送する場合に、転送開始アドレスとすべきアドレスを決定する(ステップSA6)。ここで、決定されたアドレスの値は、8バイトアライメントに対応する値(「0x40」で割り切れる値)となる。
例えば、ステップSA5で決定したノズルデータNDが、第1ノズルデータND1の場合、ステップSA6で制御部20は以下の処理を実行する。
上記の場合において、対象ノズルがノズルNZ1の場合、制御部20は、アドレスADA400(図5参照)を転送開始アドレスとして決定する。また、対象ノズルがノズルNZ5の場合、制御部20は、アドレスADA396(図5参照)を転送開始アドレスとして決定する。また、対象ノズルがノズルNZ397の場合、制御部20は、アドレスADA4を転送開始アドレスとして決定する。
次いで、制御部20は、DMAコントローラー28の転送開始アドレス設定部28aを制御して、転送開始アドレスとして、ステップSA6で決定したアドレスを設定する。また、制御部20は、DMAコントローラー28の転送カウンター28bを制御して、転送データ長として、800バイトを設定する(ステップSA7)。
次いで、制御部20は、DMAコントローラー28に、転送開始を指示する(ステップSA8)。
当該転送開始の指示に応じて、対象ノズルからインクを吐出することを示す駆動データD1が、バッファーBUFからヘッド制御ユニット30へ転送される。駆動データD1は、ヘッドメモリー31に所定の態様で展開され、ヘッド駆動回路32に所定の態様で出力される。ヘッド駆動回路32は、ヘッドメモリー31からの入力に基づいて、吐出素子Sへの電圧の印加制御を行い、対象ノズルから8ショット分、インクを吐出させる。
制御部20は、対象ノズルからのインクの吐出に応じて、ノズルチェック制御部26を制御して、ノズルチェック装置27によりノズルチェックを行う(ステップSA9)。制御部20は、ノズルチェックの結果を示すデータを、ホストコンピューター3に送信し、ホストコンピューター3は、ノズルチェックの結果を表示部に表示する。
次いで、制御部20は、ノズルチェックを行うノズルNZについて、全てのノズルNZのノズルチェックが完了したか否かを判別する(ステップSA10)。
全てのノズルNZのノズルチェックが完了していない場合(ステップSA10:NO)、制御部20は、処理手順をステップSA4へ戻す。
全てのノズルNZのノズルチェックが完了した場合(ステップSA10:YES)、制御部20は、処理を終了する。
以上説明したように、本実施形態に係るインクジェットプリンター1(印刷装置)は、複数のノズルNZが設けられたヘッドHを備える。インクジェットプリンター1は、バッファーBUF(記憶領域)に記憶したノズルデータNDを、8バイトアライメント(N(ただし、Nは2のべき乗)バイトアライメント)で、ヘッドHにデータ転送する機能と、ノズルデータNDに基づいて、ノズルNZからインクを吐出する機能と、を備える。ノズルデータNDは、ヌルデータQ1(非吐出制御データ)と、ヌルデータQ1に連続し、1のノズルNZからインクを吐出することを示す吐出データD7を含むノズル情報データQ2と、を有する。バッファーBUFには、ノズル情報データQ2における吐出データD7の位置が8バイトアライメントに対応してシフトされた複数のノズルデータNDが記憶される。インクジェットプリンター1は、バッファーBUFに記憶された複数のノズルデータNDのうちのいずれか1のノズルデータNDに割り振られたアドレスであって8バイトアライメントに対応する値のアドレスを転送開始アドレス(先頭アドレス)として、ヘッドHへのデータ転送を行う。これにより、複数のノズルNZのうちの任意の1のノズルNZにインクを吐出させることが可能である。
この構成によれば、インクジェットプリンター1のバッファーBUFに、ノズル情報データQ2における吐出データD7の位置が8バイトアライメントに対応してシフトされた複数のノズルデータNDが記憶される。そして、インクジェットプリンター1は、複数のノズルデータNDのうちのいずれか1のノズルデータNDに割り振られたアドレスであって8バイトアライメントに対応する値のアドレスを転送開始アドレスとして、ヘッドHへのデータ転送を行うことにより、複数のノズルNZのうちの任意の1のノズルNZにインクを吐出させることが可能な構成を有する。このため、1のノズルNZからインクを吐出させる場合に、8バイトアライメントに対応するノズルデータNDを生成してバッファーBUFに記憶する処理が必要なく、ノズルNZからインクを吐出させる際のデータ転送に関する処理のスループットを向上できる。
また、本実施形態では、吐出データD7は、2バイトのデータである。バッファーBUFには、ノズル情報データQ2における吐出データD7の位置が2バイトずつシフトされた前記ノズルデータが、4(8/2)個、記憶される。
この構成によれば、8バイトアライメントでデータ転送すること、及び、吐出データが2バイトのデータであることに基づいて、任意の1のノズルからインクを吐出するために必要な複数のノズルデータを記憶できる。
また、本実施形態に係るインクジェットプリンター1は、複数のノズルNZのうちの1のノズルNZによるインクの吐出に基づいて、当該1のノズルNZのノズルチェックを行う機能を有する。
この構成によれば、インクジェットプリンター1は、スループットを向上してデータ転送を行って、1のノズルNZからインクを吐出させ、当該1のノズルNZのノズルチェックを実行できる。
<変形例>
上述した実施形態では、ノズルデータNDは、任意の1のノズルNZに8ショット分のインクを吐出させるデータであった。一方、ノズルデータNDが、任意の1のノズルNZに8ショット以上のショット数分、インクを吐出するデータである場合、ノズルデータNDの構造は、例えば、以下のようになる。
図8は、ノズルデータNDが、任意の1のノズルNZに800ショット分のインクを吐出させるデータである場合の、第1ノズルデータND1の構造を模式的に示す図である。
図8に示すように、第1ノズルデータND1は、ヌルデータQ1に、100個のノズル情報データQ2が連続するデータである。各ノズル情報データQ2の態様は同一であり、先頭の2バイトを構成するビットの値が「1」である。第1ノズルデータND1は、8バイトアライメントに対応して、アドレスが割り振られる。第1ノズルデータND1を利用してデータを転送する場合、制御部20は、所定のアドレスを転送開始アドレスとすると共に、転送データ長を80000バイトとする。これにより、データの転送に応じて、対応するノズルNZから800ショット分のインクが吐出される。
すなわち、ヌルデータQ1に連続するノズル情報データQ2の個数を変更することにより、ノズルNZから吐出するインクのショット数を変更できる。
なお、上述した実施の形態は、あくまでも本発明の一態様を示すものであり、本発明の範囲内で任意に変形および応用が可能である。
例えば、上述した実施形態では、ノズルデータNDの態様の例を示したが、ノズルデータNDの態様は例示したものに限らない。
また、インクジェットプリンター1は、ラインプリンターであったが、本発明が適用される印刷装置は、ラインプリンターに限らず、例えば、シリアルプリンターであってもよい。シリアルプリンターとは、印刷時、記録媒体に対して相対的にインクジェットヘッドが移動して印刷を行うプリンターである。すなわち、本発明は、インクジェットプリンターに適用可能である。
また、上述した実施形態で説明した処理は、動作モードが特定のモードの場合に実行されてもよい。
また、図3に示す各機能ブロックはハードウェアとソフトウェアにより実現可能であり、特定のハードウェア構成を示唆するものでは無い。
また、本実施形態では、ノズルデータNDに関し、「11」が吐出を示し、「00」が非吐出を示していたが、吐出、非吐出のビットの態様は、例示したものに限らない。例えば、「00」が吐出を示し、「11」が「非吐出」を示す構成であってもよい。
1・・・インクジェットプリンター(印刷装置)、10…インクジェットヘッド、23…RAM(記憶部)、28…DMAコントローラー(転送部)、30…ヘッド制御ユニット(ヘッド制御部)、BUF・・・バッファー(記憶領域)、ND1・・・第1ノズルデータ(ノズルデータ)、ND2・・・第2ノズルデータ(ノズルデータ)、ND3・・・第3ノズルデータ(ノズルデータ)、ND4・・・第4ノズルデータ(ノズルデータ)、Q1・・・ヌルデータ(非吐出制御データ)、Q2・・・ノズル情報データ、H・・・ヘッド、NZ・・・ノズル。

Claims (4)

  1. インクを吐出可能な複数のノズルが設けられた印刷ヘッドと、
    前記印刷ヘッドを制御するヘッド制御部と、
    前記ノズルからインクの吐出を制御するノズルデータを記憶する記憶領域を有する記憶部と、
    前記記憶領域に記憶した前記ノズルデータを、N(ただし、Nは2のべき乗)バイトアライメントで、前記ヘッド制御部にデータ転送する転送部と、を備え、
    前記ヘッド制御部は、前記ノズルデータに基づいて、前記印刷ヘッドに設けられた前記ノズルからインクを吐出する制御を行い、
    前記ノズルデータは、前記ノズルからインクを吐出しないことを示す非吐出制御データと、前記非吐出制御データに連続し、前記ノズルからインクを吐出することを示す吐出データを含むノズル情報データと、を有し、
    前記記憶領域には、前記ノズル情報データにおける前記吐出データの位置がNバイトアライメントに対応してシフトされた複数の前記ノズルデータが記憶され、
    前記転送部は、前記記憶領域に記憶された複数の前記ノズルデータのうちのいずれか1の前記ノズルデータに割り振られたアドレスであってNバイトアライメントに対応する値のアドレスを先頭アドレスとして、前記ヘッド制御部へのデータ転送を行い、
    前記ヘッド制御部は、転送された当該ノズルデータに基づいて、前記印刷ヘッドを制御する
    ことを特徴とする印刷装置。
  2. 前記吐出データは、Mバイト(ただし、MはNの正の約数)のデータであり、
    前記記憶領域には、前記ノズル情報データにおける前記吐出データの位置がMバイトずつシフトされた前記ノズルデータが、(N/M)個、記憶されることを特徴とする請求項1に記載の印刷装置。
  3. 複数の前記ノズルのうちの1の前記ノズルによるインクの吐出に基づいて、当該1の前記ノズルのノズルチェックを行う機能を有することを特徴とする請求項1又は2に記載の印刷装置。
  4. 印刷ヘッドに設けられたノズルからインクを吐出しないことを示す非吐出制御データと、前記非吐出制御データに連続し、前記印刷ヘッドに設けられた複数の前記ノズルのうちの1の前記ノズルからインクを吐出することを示す吐出データを含むノズル情報データと、を有し、前記ノズル情報データにおける前記吐出データの位置がNバイトアライメントに対応してシフトされた複数のノズルデータを記憶領域に記憶し、
    前記記憶領域に記憶された複数の前記ノズルデータのうちのいずれか1の前記ノズルデータに割り振られたアドレスであってNバイトアライメントに対応する値のアドレスを先頭アドレスとして、Nバイトアライメントで前記印刷ヘッドにデータ転送し、転送した前記ノズルデータに基づいて前記印刷ヘッドにより複数の前記ノズルのうちの1の前記ノズルからインクを吐出することを特徴とするインク吐出方法。
JP2014054510A 2014-03-18 2014-03-18 印刷装置、及び、インク吐出方法 Pending JP2015174428A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014054510A JP2015174428A (ja) 2014-03-18 2014-03-18 印刷装置、及び、インク吐出方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014054510A JP2015174428A (ja) 2014-03-18 2014-03-18 印刷装置、及び、インク吐出方法

Publications (1)

Publication Number Publication Date
JP2015174428A true JP2015174428A (ja) 2015-10-05

Family

ID=54254024

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014054510A Pending JP2015174428A (ja) 2014-03-18 2014-03-18 印刷装置、及び、インク吐出方法

Country Status (1)

Country Link
JP (1) JP2015174428A (ja)

Similar Documents

Publication Publication Date Title
EP3212405B1 (en) Printhead fire signal control
JP6203025B2 (ja) 記録装置および記録データの処理方法
JP2016074152A (ja) 記録装置及びその駆動方法
JP2009018534A (ja) インクジェット記録装置
JP2006264054A (ja) 印刷システム、印刷方法及び印刷制御装置
JP4517907B2 (ja) 印刷システム、印刷方法及び印刷制御装置
US9796175B2 (en) Controller to insert print image-dependent prefire pulses in an inkjet printing system
US20220288923A1 (en) Printing apparatus
JP2006231776A (ja) 記録装置及び記録制御方法
JP2015174428A (ja) 印刷装置、及び、インク吐出方法
US8854646B2 (en) Printing device and control method of printing device
KR20030067138A (ko) 잉크젯 프린터 및 그의 헤드구동방법
JP6649694B2 (ja) 記録装置及び記録制御方法
JP2005041136A (ja) インクジェット記録装置およびインクジェット記録方法
JP6883193B2 (ja) 液滴吐出装置、画像形成装置、及びプログラム
JP2011235528A (ja) 記録ヘッド及び記録装置
JP2010240937A (ja) 画像形成装置、画像形成システム、及び画像形成方法
JP2007210210A (ja) 液体吐出装置及び駆動信号の生成方法
EP3710924B1 (en) Identifying random bits in control data packets
JP5919159B2 (ja) インクジェット記録装置
US10261447B2 (en) Printing apparatus and control method of printing apparatus
US10391764B2 (en) Element substrate, printhead, and printing apparatus
JP6951850B2 (ja) インクジェットヘッド制御装置及びインクジェットプリンタ
JP5744825B2 (ja) 記録システム、記録装置、画像処理装置、及び記録制御方法
JP2017024366A (ja) 印刷装置および印刷方法

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20160617

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20160628