(57)【要約】【課題】書き込みができない状態の書込手段が生じた場合でも、正常な画像が形成できるようにする。【解決手段】記録ヘッドの位置を示すヘッド位置情報を受け付けて、記録ヘッド上の書込手段であるノズルの位置を算出するノズル位置生成部１４２と、算出したノズルの位置情報に応じた画像データをテーブル管理部１４４を介してデータ蓄積部１４５から取得し、ＩＪ記録ヘッド制御部１３３へ出力するアドレス生成部１４３とを設け、さらに、画像データのうち書き込み済みの部分を特定するための書込済情報を、データ蓄積部１４５に生成して、書き込み済みの画素を再度書き込まないようにする。この場合において、ノズル状態格納部１３５の情報に基づき、ノズルが書き込みをできない状態であると判断した場合には、そのノズルによる画像の書き込みと、それに応じた書込済情報の生成を行わないようにした。【選択図】図４
2017164926.tif 000002
【特許請求の範囲】
【請求項１】
供給される画像データに従って記録媒体に画像を書き込む書込手段を備える画像形成装置であって、
所定の基準位置を基準とした前記書込手段の位置を検出する位置検出手段と、
前記記録媒体上に形成すべき画像を示す全体画像データのうち、前記位置検出手段が検出した位置に応じた画像データに従った書き込みを前記書込手段に実行させる書込制御手段と、
前記全体画像データのうち前記書込手段による書き込み済みの部分を特定するための書込済情報を生成する生成手段と、
前記書込済情報に従い、書き込み済みの部分の画像を前記記録媒体に再度書き込まないように前記書込手段を制御する制御手段と、
前記書込手段が、前記書き込みをできない状態であるか否かを検出する状態検出手段とを備え、
前記生成手段は、前記書込手段が前記書き込みをできない状態である間は、前記書込手段の動作に応じた前記書込済情報の更新を停止することを特徴とする画像形成装置。
【請求項２】
請求項１に記載の画像形成装置であって、
前記書き込みをできない状態である書込手段に、前記記録媒体に対する画像の書き込みを実行させないように前記書込手段を制御する制御手段を備えることを特徴とする画像形成装置。
【請求項３】
請求項２に記載の画像形成装置であって、
複数の前記書込手段が配列された画像形成手段を備え、
前記生成手段は、前記複数の書込手段のいずれかが前記書き込みをできない状態である間、その書込手段の動作に応じた前記書込済情報の更新を停止することを特徴とする画像形成装置。
【請求項４】
請求項２に記載の画像形成装置であって、
複数の前記書込手段が配列された画像形成手段を備え、
前記制御手段は、前記複数の書込手段のいずれかが前記書き込みをできない状態である間、その書込手段及びその書込手段の周囲所定範囲内の各書込手段に、前記記録媒体に対する画像の書き込みを実行させないように前記各書込手段を制御し、
前記生成手段は、前記制御手段が前記画像の書き込みを実行させないように制御している書込手段の動作に応じた前記書込済情報の更新を停止することを特徴とする画像形成装置。
【請求項５】
請求項２に記載の画像形成装置であって、
複数の前記書込手段が配列された画像形成手段を備え、
前記制御手段は、前記複数の書込手段のいずれかが前記書き込みをできない状態である間、その書込手段から前記配列の端部の書込手段までの間の各書込手段に、前記記録媒体に対する画像の書き込みを実行させないように前記各書込手段を制御し、
前記生成手段は、前記制御手段が前記画像の書き込みを実行させないように制御している書込手段の動作に応じた前記書込済情報の更新を停止することを特徴とする画像形成装置。
【請求項６】
請求項５に記載の画像形成装置であって、
前記配列の端部は、前記配列の両端のうち、前記書込をできない状態である書込手段から近い方の端部であることを特徴とする画像形成装置。
【請求項７】
請求項２乃至６のいずれか一項に記載の画像形成装置であって、
複数の前記書込手段が配列された画像形成手段と、
画像書込のモードを設定する設定手段とを備え、
前記制御手段が、前記複数の書込手段のいずれかが前記書き込みをできない状態である間、その書込手段に対してどの範囲にある各書込手段に、前記記録媒体に対する画像の書き込みを実行させないように前記各書込手段を制御するかを、前記設定手段により設定されているモードに応じて決定することを特徴とする画像形成装置。
【請求項８】
請求項２乃至６のいずれか一項に記載の画像形成装置であって、
複数の前記書込手段が配列された画像形成手段を備え、
前記制御手段が、前記複数の書込手段のいずれかが前記書き込みをできない状態である間、その書込手段に対してどの範囲にある各書込手段に、前記記録媒体に対する画像の書き込みを実行させないように前記各書込手段を制御するかを、ユーザが予め指定した基準に従って決定することを特徴とする画像形成装置。
【請求項９】
供給される画像データに従って記録媒体に画像を書き込む書込手段による画像形成方法であって、
所定の基準位置を基準とした前記書込手段の位置を検出する位置検出手順と、
前記記録媒体上に形成すべき画像を示す全体画像データのうち、前記位置検出手段が検出した位置に応じた画像データに従った書き込みを前記書込手段に実行させる書込制御手順と、
前記書込手段が、前記書き込みをできない状態であるか否かを検出する状態検出手順とを備え、
前記生成手順において、前記書込手段が前記書き込みをできない状態である間は、前記書込手段の動作に応じた前記書込済情報の更新を停止することを特徴とする画像形成方法。
【請求項１０】
供給される画像データに従って記録媒体に画像を書き込む書込手段を制御するコンピュータを、
所定のセンサの検出結果に従い、所定の基準位置を基準とした前記書込手段の位置を検出する位置検出手段と、
前記記録媒体上に形成すべき画像を示す全体画像データのうち、前記位置検出手段が検出した位置に応じた画像データに従った書き込みを前記書込手段に実行させる書込制御手段と、
前記全体画像データのうち前記書込手段による書き込み済みの部分を特定するための書込済情報を生成する生成手段と、
前記書込済情報に従い、書き込み済みの部分の画像を前記記録媒体に再度書き込まないように前記書込手段を制御する制御手段と、
前記書込手段が、前記書き込みをできない状態であるか否かを検出する状態検出手段として機能させるためのプログラムであって、
前記生成手段は、前記書込手段が前記書き込みをできない状態である間は、前記書込手段の動作に応じた前記書込済情報の更新を停止することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像形成装置、画像形成方法及びプログラムに関する。
【背景技術】
【０００２】
昨今の、ノート型ＰＣ(Personal  Computer)の小型化やスマートデバイスの急激な普及に伴い、プリンタにおいても小型化、携帯化が大きな要望の一つとして挙げられている。そして、紙搬送システムを備えず、紙面上を人の手で走査しながらインクを塗布するハンドヘルド印刷デバイスが開発されている（特許文献１参照）。
【０００３】
このようなハンドヘルド印刷デバイスでは、位置方向検知機能を備えたセンサを搭載し、目標吐出位置と吐出ノズルの現在位置が一致した際にインクを吐出して画像を形成する。
また、こうしたハンドヘルド印刷デバイスでは、小型化のために、記録ヘッドのメンテナンスを行うための回復装置を印刷装置と別個の装置とし、使用者が装置本体をこの回復装置に連結した時にメンテナンスが行われるようにする（特許文献２参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、回復装置を本体と分離したために、ノズルに異常が発生し、インク吐出が不良となった場合でも、直ちに回復措置と連結して回復処理を実行することができない場合がある。このような場合に、そのまま印刷を実行すると、吐出不良となったノズルの箇所部分の印刷が行われず、正常な画像の印刷ができないことになる。
これは、ハンドヘルド印刷デバイスに限らず、書込手段を備える他の画像形成装置においても、回復処理をすぐに実行できない事情がある場合は、吐出結果の不良として発生し得るものである。
この点に関連し、特許文献２には、前回の回復動作から所定時間経過すると回復動作が必要となったことを表示することが記載されている。しかし、前回の回復動作から次の回復動作までの間の時間で吐出不良が発生した場合に、回復装置に連結することができない状況だと、印刷結果が、画像が欠けたものとなってしまうという問題には対応できない。
【０００５】
この発明は、このような問題を解決し、供給される画像データに従って記録媒体に画像を書き込む書込手段を備える画像形成装置において、書き込みができない状態の書込手段が生じた場合でも、正常な画像が形成できるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
以上の目的を達成するために、この発明による画像形成装置は、供給される画像データに従って記録媒体に画像を書き込む書込手段を備える画像形成装置であって、所定の基準位置を基準とした上記書込手段の位置を検出する位置検出手段と、上記録媒体上に形成すべき画像を示す全体画像データのうち、上記位置検出手段が検出した位置に応じた画像データに従った書き込みを上記書込手段に実行させる書込制御手段と、上記全体画像データのうち上記書込手段による書き込み済みの部分を特定するための書込済情報を生成する生成手段と、上記書込済情報に従い、書き込み済みの部分の画像を上記記録媒体に再度書き込まないように上記書込手段を制御する制御手段と、上記書込手段が、上記書き込みをできない状態であるか否かを検出する状態検出手段とを設けたものであって、上記生成手段は、上記書込手段が上記書き込みをできない状態である間は、上記書込手段の動作に応じた上記書込済情報の更新を停止することとしたものである。
【発明の効果】
【０００７】
上記の構成によれば、供給される画像データに従って記録媒体に画像を書き込む書込手段を備える画像形成装置において、ノズルから液滴吐出が不良となった場合でも、正常な画像の印刷を行うことができる。
【図面の簡単な説明】
【０００８】
【図１】この発明の画像形成装置の第１実施形態であるハンドヘルドプリンタの使用状態の例を示す図である。
【図２】この発明の第１実施形態であるハンドヘルドプリンタのハードウェア構成を示す図である。
【図３】図１のハンドヘルドプリンタが備える制御部のハードウェア構成や制御機能をより詳細に示す図である。
【図４】図１のハンドヘルドプリンタが備える画像読取部のハードウェア構成や制御機能をより詳細に示す図である。
【図５】図１の回復装置のハードウェア構成を示す図である。
【図６】この発明の第１実施形態であるハンドヘルドプリンタが印刷を開始する場合に実行する処理のフローチャートである。
【図７】図６の続きのフローチャートである。
【図８Ａ】全体画像データに対応するフラグ領域の一部を示す図である。
【図８Ｂ】全体画像データに対応するフラグ領域の一部を示す図である。
【図９】この発明の第１実施形態であるハンドヘルドプリンタが異常ノズルの情報を取得する処理のフローチャートである。
【図１０Ａ】この発明の第１実施形態であるハンドヘルドプリンタが用いるノズルチェックパターンの一例を示す図である。
【図１０Ｂ】その別の一例を示す図である。
【図１０Ｃ】その更に別の一例を示す図である。
【図１０Ｄ】その更に別の一例を示す図である。
【図１１】第２実施形態のハンドヘルドプリンタが実行する図６と対応する処理のフローチャートである。
【図１２】第２実施形態のハンドヘルドプリンタが実行する図７と対応する処理のフローチャートである。
【図１３Ａ】全体画像データの一部を示す図である。
【図１３Ｂ】全体画像データの一部を示す図である。
【図１４】第３実施形態のハンドヘルドプリンタが備えるノズルの配置とレーザ光の光路との関係を示す図である。
【図１５】第３実施形態のハンドヘルドプリンタのハードウェア構成を示す、図２と対応する図である。
【図１６】第３実施形態のハンドヘルドプリンタが備える制御部のハードウェア構成や制御機能をより詳細に示す、図３と対応する図である。
【図１７】第３実施形態のハンドヘルドプリンタが備える画像読取部のハードウェア構成や制御機能をより詳細に示す、図４と対応する図である。
【図１８】第３実施形態のハンドヘルドプリンタが実行する図９に対応する処理のフローチャートである。
【図１９】第１実施形態の変形例のハンドヘルドプリンタの印刷モード設定画面を示す図である。
【発明を実施するための形態】
【０００９】
〔第１実施形態：図１乃至図１２〕
以下、本発明の第１実施形態について、図１乃至図１２を用いて説明する。
まず図１に、この発明の画像形成装置の第１実施形態であるハンドヘルドプリンタ１０の使用状態の例を示す。
【００１０】
図１に示すハンドヘルドプリンタ１０は、外部の画像データ出力器（ここではタブレット型コンピュータ３０とするが、スマートフォン、ＰＣ（パーソナルコンピュータ）等、任意の情報処理装置であってよい）から供給される画像データを受信し、記録媒体４０上をユーザが手動走査するのに応じて、液滴であるインクをノズルから吐出することにより、記録媒体４０上に、受信した画像データに従った画像を形成する装置である。
ユーザによる手動走査の方向や速度は任意である。ハンドヘルドプリンタ１０は、移動量、加速度、回転量等を検出するセンサを備え、これらのセンサの検出結果に基づき現在位置を特定し、現在位置と対応する画像を記録媒体上に形成すべく、画像データに従ったインクの吐出を行う。
【００１１】
記録媒体４０は、ノートや定型用紙等、平面状のものが考えられるが、ハンドヘルドプリンタ１０による手動走査が可能でありかつ現在位置を特定できるなら、曲面状であることも妨げられない。また、材質は任意である。
また、ハンドヘルドプリンタ１０は、ノズルのインク詰まり除去や吐出位置精度維持のための回復処理を行うための回復装置２０とセットで用いる。ユーザは、画像形成のために記録媒体上を走査する際にはハンドヘルドプリンタ１０を単体で把持して移動させるが、ハンドヘルドプリンタ１０を使用しない間や、ハンドヘルドプリンタ１０の回復処理を行う場合には、これを回復装置２０にセットする。
ハンドヘルドプリンタ１０が回復装置２０にセットされると、両者は協働して、必要に応じて回復処理を実行する。
【００１２】
次に、図２に、ハンドヘルドプリンタ１０のハードウェア構成を示す。
ハンドヘルドプリンタ１０は、電源１０１、電源回路１０２、制御部１０３、ＩＪ（Ink  Jet）記録ヘッド駆動部１０４、ＩＪ記録ヘッド１０５、ＯＰＵ（Operation  Panel  Unit）１０６、ナビゲーションセンサ１０７、メモリ１０８、通信Ｉ／Ｆ（Interface）１０９及びシリアルＩ／Ｆ１１０を備える。
【００１３】
電源１０１は、電池やバッテリー等であって、ハンドヘルドプリンタ１０に電源を供給する機能を備える。電源回路１０２は、電源１０１が供給する電源をハンドヘルドプリンタ１０の制御部１０３やＩＪ記録ヘッド駆動部１０４で使用可能な電源に変換する機能を備える。また、バッテリーの充電回路やＡＣ電源との切り替え等を行う機能も備える。
制御部１０３は、後述のＣＰＵ１２１を含む制御回路を備え、ハンドヘルドプリンタ１０全体の動作を統括制御する機能を備える。
【００１４】
ＩＪ記録ヘッド駆動部１０４は、ＩＪ記録ヘッド１０５を駆動させるための駆動回路であり、供給された画像データに基づいて、ＩＪ記録ヘッド１０５が記録媒体４０にインクの吐出を実行するためのＩＪ記録ヘッド駆動波形Ｖｃｏｍを生成する。
【００１５】
ＩＪ記録ヘッド１０５は、インクを吐出するために用いる複数のノズル１０５ａ１〜１０５ａＮ（以降、個体を特定する必要がない場合は、単にノズル１０５ａと記載する。）を備え、供給される画像データに従ってＩＪ記録ヘッド１０５を駆動し、ノズル１０５ａがインクを記録媒体４０に向けて吐出させることにより、記録媒体４０への印刷を実行する。
ここで、ノズル１０５ａ及びこれと対応するＩＪ記録ヘッド駆動部１０４は、供給される画像データに従って記録媒体４０に画像を書き込む、書込手段として機能する。また、ＩＪ記録ヘッド１０５は、書込手段であるノズル１０５ａが複数配列された画像形成手段として機能する。
なお、ＩＪ記録ヘッド１０５は、圧電素子（ピエゾ素子）を用いるピエゾ式でもインクを加熱して発生する泡を利用してインクを押し出すサーマル方式でもよいが、この実施形態では、サーマル方式を用いる。
【００１６】
ＯＰＵ１０６は、ユーザの操作を受け付け、またハンドヘルドプリンタ１０の動作状態や設定状態を表示するための表示操作部である。具体的には、ＬＥＤ（Light  Emitting  Diode）、スイッチ等で構成することができる。また、液晶パネルやタッチパネルを用いてもよい。
ＯＰＵ１０６により表示するハンドヘルドプリンタ１０の状態には、電源のオン／オフや、ハンドヘルドプリンタ１０を回復装置２０にセットし回復動作を行う必要があるか否か、等が考えられる。
【００１７】
ナビゲーションセンサ１０７は、ハンドヘルドプリンタ１０やＩＪ記録ヘッド１０５の位置に関して、例えば、発光ダイオード（ＬＥＤ）やレーザ等の光源と、記録媒体４０を撮像する撮像センサ、又は、入反射光の干渉縞を撮像するセンサである。ハンドヘルドプリンタ１０が記録媒体４０上を走査されると、記録媒体４０の微小なエッジが次々に検出され（撮像され）エッジ間の距離を解析することで移動量が得られる。その他、公知の姿勢センサ及び加速度センサを組み合わせて構成する場合であってもよい。ナビゲーションセンサ１０７が検出した情報は、位置情報を算出するために用いられる。
メモリ１０８は、不揮発性記憶媒体（記憶手段）であり、制御部１０３が実行するハンドヘルドプリンタ１０のハードウェア制御を行うファームウェア等の各種プログラムや、ＩＪ記録ヘッド１０５のＩＪ記録ヘッド駆動波形データ、ハンドヘルドプリンタ１０の初期設定データ、ＩＪ記録ヘッド１０５の状態データ等の各種データを格納している。
【００１８】
通信Ｉ／Ｆ１０９は、タブレット型コンピュータ３０やＰＣ等のホストからデータ受信等を行うインタフェースである。通信Ｉ／Ｆ１０９としては、無線ＬＡＮやＮＦＣ（Near  Field  Communication：近距離無線通信）等を用いることが考えられるが、これに限るものではない。
シリアルＩ／Ｆ１１０は、ハンドヘルドプリンタ１０と回復装置２０との間でデータの送受信を行うためのインタフェースである。汎用のシリアルインタフェースを用いることができる。また、ハンドヘルドプリンタ１０が回復装置２０上に載置された状態で通信が可能であればよい。送受信するデータとしては、例えば、回復装置２０からハンドヘルドプリンタ１０に対して回復処理の実行を指示するための回復コマンドが考えられる。
【００１９】
次に、図３を用いて、制御部１０３のより詳細なハードウェア構成や制御機能について説明する。図３は、ハンドヘルドプリンタ１０の制御部１０３のハードウェア構成をより詳細に示す図である。
図３に示すように、制御部１０３は、バス１６１及び１６２を介して相互に通信するＳｏＣ（System-on-a  chip）１２０とＡＳＩＣ／ＦＰＧＡ（Application  Specific  Integrated  Circuit／Field-Programmable  Gate  Array）１３０を備える。
なお、ＡＳＩＣ／ＦＰＧＡ１３０は、ＡＳＩＣとＦＰＧＡのいずれの実装技術で設計をしてもよいことを意味するが、これ以外の他の実装技術で構成されてもよい。また、ＳｏＣ１２０とＡＳＩＣ／ＦＰＧＡ１３０をまとめて１のチップや基板で構成してもよいし、２以上のチップや基板で実装してもよい。
【００２０】
ＳｏＣ１２０は、ＣＰＵ１２１、位置算出部１２２及びメモリコントローラ１２３を備える。これらはバス１６１を介して接続されている。
ＣＰＵ１２１は、メモリ１０８から展開されたファームウェア（プログラム）等を実行し、ＳｏＣ１２０内の各部及びＡＳＩＣ／ＦＰＧＡ１３０内の各部の動作を制御する。そして、この制御を通じて、ハンドヘルドプリンタ１０の後述する各種機能を実現する。
【００２１】
位置算出部１２２は、ナビゲーションセンサ１０７が検出するサンプリング周期毎の移動量、回転量、加速度等に基づいてハンドヘルドプリンタ１０の位置（座標情報）を検出（算出）する機能を備える。また、位置算出部１２２は、ハンドヘルドプリンタ１０がインクを吐出する際の、目標吐出位置も算出する機能も備える。
メモリコントローラ１２３は、メモリ１０８からのデータの読み出しを制御するインタフェースである。
【００２２】
次に、ＡＳＩＣ／ＦＰＧＡ１３０は、ナビゲーションセンサＩ／Ｆ１３１、印刷／センサタイミング生成部１３２、ＩＪ記録ヘッド制御部１３３、画像読取部１３４、ノズル状態格納部１３５、割込制御部１３６、を備える。これらはバス１６２を介して相互に接続され、バス１６１，１６２を介してＣＰＵ１２１から制御可能となっている。
【００２３】
ナビゲーションセンサＩ／Ｆ１３１は、ナビゲーションセンサ１０７を制御するためのインタフェースである。より具体的には、ナビゲーションセンサＩ／Ｆ１３１は、印刷／センサタイミング生成部１３２から通知されたタイミングで、ナビゲーションセンサ１０７から、ナビゲーションセンサ１０７が検出した移動量、回転量、加速度等の情報を取得して内部メモリに格納し、ＣＰＵ１２１等による参照に供することができる。
印刷／センサタイミング生成部１３２は、ナビゲーションセンサＩ／Ｆ１３１にナビゲーションセンサ１０７の情報を読み取るタイミングを通知し、また、ＩＪ記録ヘッド制御部１３３にＩＪ記録ヘッド１０５を駆動する駆動タイミングを通知する機能を備える。
【００２４】
ヘッドを駆動して各ノズルに対して画像データと対応する階調のドットを形成させる
ＩＪ記録ヘッド制御部１３３は、ＩＪ記録ヘッド駆動部１０４に、ＩＪ記録ヘッド１０５の駆動に用いる制御信号及び画像データを供給する機能を備える。なお、ＩＪ記録ヘッド１０５の回復動作を行う場合には、ＩＪ記録ヘッド制御部１３３は、ＩＪ記録ヘッド駆動部１０４に対し、回復動作を実行させるための制御信号を供給する。
画像読取部（回転器）１３４は、ＩＪ記録ヘッド１０５の駆動に用いる画像データの取得及びＩＪ記録ヘッド制御部１３３への供給を行う機能を備える。詳細については、図４において説明する。
【００２５】
ノズル状態格納部１３５は、不揮発性のメモリであり、ＩＪ記録ヘッド１０５が備える吐出ノズルについてノズル毎の状態情報を格納する機能を備える。不揮発性であるため、ハンドヘルドプリンタ１０の電源がオフになってもノズルの状態情報を保持することができる。また、初期設定では、全てのノズルは正常状態として記憶されている。そして、ＣＰＵ１２１に備えられているノズル状態設定受付部１２４が異常ノズル設定要求を受け付けると、その要求を受け付けたノズルを異常ノズルとして記憶する。ノズル状態設定受付部については、図４において説明する。
【００２６】
割込制御部１３６は、割込信号を生成してＳｏＣ１２０へ出力する機能を備える。割込信号の生成及び出力は、例えば、ナビゲーションセンサＩ／Ｆ１３１がナビゲーションセンサ１０７から新たな情報（例えば、移動量、回転量、加速度等）を取得したことを通知された場合に行う。
割込信号には、取得した内容を示す情報と、その事項に関係するセンサの検出値の情報とが含まれる。ＣＰＵ１２１は、ＳｏＣ１２０へ出力された割込信号から、ナビゲーションセンサ１０７が検出した移動量、回転量、加速度等の情報を取得する。
また、割込制御部１３６は、上記割込信号により、ハンドヘルドプリンタ１０のステータス情報（エラー等）をＳｏＣ１２０上のＣＰＵ１２１へ通知する機能も備える。
【００２７】
次に、画像読取部１３４について図４を用いて説明する。
画像読取部１３４は、ＣＰＵ＿Ｉ／Ｆ１４１、ノズル位置生成部１４２、アドレス生成部１４３、テーブル管理部１４４、データ蓄積部１４５及び出力Ｉ／Ｆ１４６を備える。
ＣＰＵ＿Ｉ／Ｆ１４１は、ＣＰＵ１２１を制御するためのインタフェースであり、ＩＪ記録ヘッド１０５がインク吐出を行うタイミング毎に、ＣＰＵ１２１からそのインク吐出時のＩＪ記録ヘッド１０５のヘッド位置情報を受け付ける機能を備える。また、画像の幅、高さ、解像度といった各種の設定を受け付ける機能も備える。更に、受け付けたＩＪ記録ヘッド１０５の位置情報や各種の設定をノズル位置生成部１４２に出力する機能も備える。
【００２８】
ノズル位置生成部１４２は、ＣＰＵ＿Ｉ／Ｆ１４１から受け付けたＩＪ記録ヘッド１０５のヘッド位置情報から、ＩＪ記録ヘッド１０５に設けられている各ノズル１０５ａの位置情報を生成し、アドレス生成部１４３に出力する機能を備える。このとき、ノズル位置生成部１４２は、ヘッド位置情報を受け付ける毎にノズル位置情報を生成する。
また、ノズル位置生成部１４２は、図３のノズル状態格納部１３５から、ＩＪ記録ヘッド１０５に設けられているノズルが正常状態か異常状態かの情報を取得し、アドレス生成部１４３へその情報を出力する機能も備える。
【００２９】
この情報は、ＣＰＵ１２１に備えられているノズル状態設定受付部１２４がノズル状態格納部１３５に格納するものである。
また、ノズル位置生成部１４２は、ＣＰＵ＿Ｉ／Ｆ１４１を介して、印刷モード等の種々の設定も受け付ける。
ここで、ノズル位置生成部１４２は、位置算出部１２２が算出したＩＪ記録ヘッド１０５の所定の基準位置を基準として、ＩＪ記録ヘッド１０５が備える全ノズル１０５ａについて、ノズル毎の位置を検出する位置検出手段として機能する。また、ノズル位置生成部１４２が行う、所定の基準位置を基準としてノズル毎の位置を検出する処理は、位置検出手順の処理である。
【００３０】
ノズル状態設定受付部１２４は、ＣＰＵ１２１に設けられており、ユーザがＯＰＵ１０６を介してノズル１０５ａが異常状態にあることを設定すると、その設定を受け付けて、ノズル状態格納部１３５にノズル番号を特定して、ノズルが１０５ａが異常状態にあるという情報を格納する機能を備える。
なお、ノズルが異常状態であるか否かを判断するためには、ノズルチェックパターンを印刷してユーザが判断をする。この処理については、後述する図９〜図１０Ｄにおいて説明する。
【００３１】
アドレス生成部１４３は、記録媒体４０上に形成すべき画像を示す全体画像データのうち、ノズル位置生成部１４２が検出したノズル位置情報に応じた画像データのメモリアドレスを生成する機能と、生成したメモリアドレスをテーブル管理部１４４に出力する機能とを備える。
そして、アドレス生成部１４３は、生成したメモリアドレスから読み出され、テーブル管理部１４４から渡された画像データをＩＪ記録ヘッド制御部１３３に出力し、ＩＪ記録ヘッド制御部１３３は上述した通り、ＩＪ記録ヘッド駆動部１０４に、ＩＪ記録ヘッド１０５の駆動に用いる制御信号及び画像データを供給する。この処理は、ノズル位置生成部１４２が検出した位置に応じた画像データに従った書き込みをノズル１０５aに実行させる書込制御手段の機能である。
更に、アドレス生成部１４３は、書き込み済みの画像データについての書込済情報を生成する生成手段の機能も備える。
なお、上述した、アドレス生成部１４３が、ノズル位置生成部１４２が生成した位置に応じた画像データに従った書き込みをノズル１０５ａに実行させる処理は、書込制御手順の処理であり、書込手段による書き込み済みの部分を特定するための書込済情報を生成する処理は、生成手順の処理である。
【００３２】
テーブル管理部１４４は、データ蓄積部１４５が蓄積するデータの中から、アドレス生成部１４３が生成したメモリアドレスに応じた画像データを読み出し、その読み出した画像データをアドレス生成部１４３に出力する機能を備える。また、アドレス生成部１４３が生成した書込済情報をデータ蓄積部１４５に格納する機能も備える。
【００３３】
データ蓄積部１４５は、記憶手段であり、メモリコントローラ１２３を介してメモリ１０８から読み出したデータや、テーブル管理部１４４から受け付けた、メモリ１０８に書き込むべき書込済情報等のデータを、一時的に格納する機能を備える。
出力Ｉ／Ｆ１４６は、アドレス生成部１４３が出力した画像データをＩＪ記録ヘッド制御部１３３の要求する形式に変換し、ＩＪ記録ヘッド制御部１３３に出力する機能を有する。また、データをバッファリングする機能も備える。
【００３４】
次に、回復装置２０について図５を用いて説明する。
回復装置２０は、ハンドヘルドプリンタ１０を使用しない場合に載置する載置台としての機能を備えると共に、ハンドヘルドプリンタ１０のＩＪ記録ヘッド１０５に対し、その機能を維持及び回復させるためのクリーニング等の回復動作を行う機能を備える装置である。なお、ハンドヘルドプリンタ１０をプリンタ本体、回復装置２０を回復ユニットとして、ハンドヘルドプリンタ１０と回復装置２０とが一つの印刷装置を構成するものとして捉えてもよい。
【００３５】
図５に示すように、回復装置２０は、電源２０１、電源回路２０２、制御部２０３、状態検知センサ２０４、回復処理部２０５及びシリアルＩ／Ｆ２０６を備える。
まず、電源２０１は、電池やバッテリー等であって、回復装置２０に電源を供給する機能を備える。
電源回路２０２は、電源２０１が供給する電源を回復装置２０の各部の駆動に使用する電源に変換する機能を備える。また、バッテリーの充電回路やＡＣ電源との切り替え等を行う機能も備える。
【００３６】
制御部２０３は、ＣＰＵを含む制御回路を備え、ハンドヘルドプリンタ１０全体の動作を統括制御する機能を備える。
状態検知センサ２０４は、ハンドヘルドプリンタ１０の状態を検出するためのセンサである。より具体的には、ハンドヘルドプリンタ１０が回復装置２０と接続しているか否かを検出するセンサと、接続されたハンドヘルドプリンタ１０におけるＩＪ記録ヘッド１０５（インクタンクも含む）の異常を検出する機能を備える。なお、ハンドヘルドプリンタ１０と回復装置２０との接続は、回復装置２０上の所定の位置にハンドヘルドプリンタ１０を載置することによって、所定のコネクタを介して行われる。
【００３７】
回復処理部２０５は、回復装置２０と接続されたハンドヘルドプリンタ１０に対し、そのＩＪ記録ヘッド１０５のクリーニング等の回復動作を行う機能を備える。また、回復処理部２０５は、クリーニングユニットを駆動するためのモータ等の駆動手段を含むものである。
【００３８】
シリアルＩ／Ｆ２０６は、回復装置２０とハンドヘルドプリンタ１０との間でデータの送受信を行うためのインタフェースである。ハンドヘルドプリンタ１０側のシリアルＩ／Ｆ１１０と対応するものであるので、詳細な説明は省略する。
【００３９】
以上が、この発明の第１実施形態のハンドヘルドプリンタ１０及び回復装置２０の概略構成についての説明である。
ところで、この第１実施形態における特徴的な機能の一つは、記録媒体４０上に形成すべき画像の全体画像データのうち、一度書き込みを行った画像データについては、書込済情報を生成し、その生成した書込済情報を記録することにより、当該部分について再度の書き込みを行わないようにする点である。
【００４０】
また、いずれかのノズル１０５ａが異常状態にある場合に、当該ノズル１０５ａが正常状態であれば印刷することになるはずの画像データについて、書込済情報を更新しないようにする点も特徴的な機能の一つである。
ノズル１０５ａが異常状態とは、何らかの理由によりノズル１０５ａがインク吐出不可の状態にある場合をいう。一方、正常状態とは、インク吐出可の状態にある場合をいう。なお、以降の説明において、異常ノズル、正常ノズルと記載する場合も同様の趣旨である。
以下、ハンドヘルドプリンタ１０の画像読取部１３４が実行する処理について、上記の特徴的な機能を実現するための処理を中心に説明する。
【００４１】
図６及び図７に示すのは、ハンドヘルドプリンタ１０が、ユーザからの要求により印刷を開始する場合に実行する処理のフローチャートである。なお、図６及び図７に示す処理は、画像読取部１３４が主体となって実行する処理について、画像読取部１３４内の各部がどのように連携して処理を実行しているかを説明するものである。
【００４２】
ハンドヘルドプリンタ１０の画像読取部１３４は、ユーザからの印刷開始指示があると、図６のフローチャートに示す処理を開始する。
そしてまず、ノズル位置生成部１４２が、ナビゲーションセンサ１０７が検出したＩＪ記録ヘッド１０５の位置を示すヘッド位置情報を受け付け（Ｓ１１）、ＩＪ記録ヘッド１０５が備える１以上のノズル１０５ａのうち、未だ処理対象となっていない１のノズル１０５ａを処理対象とする（Ｓ１２）。
【００４３】
次に、ノズル位置生成部１４２は、処理対象のノズル１０５ａが正常な状態か否かを判断する（Ｓ１３）。この判断は、処理対象のノズル１０５ａについて、ノズル状態格納部１３５に格納されているノズル状態の情報を参照して行うことができる。
ステップＳ１３の処理において、ノズル位置生成部１４２は状態検出手段として機能する。また、ステップＳ１３の処理は、状態検出手順の処理である。
正常な状態である場合（Ｓ１３のＹｅｓ）、ノズル位置生成部１４２は、ステップＳ１１で受け付けたＩＪ記録ヘッド１０５のヘッド位置情報から、処理対象のノズル１０５ａのノズル位置情報を生成する（Ｓ１４）。ノズル位置生成部１４２は、生成したノズル位置情報をアドレス生成部１４３へ出力する。
【００４４】
アドレス生成部１４３は、ステップＳ１４で生成されたノズル位置情報を基に、印刷対象となる画像データのメモリアドレスを生成する（Ｓ１５）。ここでは、画像データ中の、ノズル位置情報が示す位置に形成すべき画素のデータが格納されたメモリアドレスを生成する。アドレス生成部１４３は、生成したメモリアドレスをテーブル管理部１４４に出力する。
【００４５】
次に、テーブル管理部１４４は、データ蓄積部１４５を参照して、印刷対象の画像データに対応するフラグ領域に、書込済フラグが既に立っているか否かを判断する（Ｓ１６）。ステップＳ１６の処理において、テーブル管理部１４４は、制御手段として機能する。また、ステップＳ１６の処理は、制御手順の処理である。
書込済フラグが立っていない場合は（Ｓ１６のＮｏ）、テーブル管理部１４４は、アドレス生成部１４３から取得したメモリアドレスの画像データをデータ蓄積部１４５から読み出し（Ｓ１７）、アドレス生成部１４３へ出力する。
【００４６】
アドレス生成部１４３は、テーブル管理部１４４から出力された画像データを、処理対象のノズル１０５ａの吐出制御用データとして、ＩＪ記録ヘッド制御部１３３へ、出力Ｉ／Ｆ１４６を介して出力する（Ｓ１８）。
次に、処理は図７に示す部分に進み、アドレス生成部１４３は、フラグ領域内の、ステップＳ１７で読み出した画像データのメモリアドレスと対応する位置に書込済フラグを立てるべきことを、テーブル管理部１４４に通知する。テーブル管理部１４４は、データ蓄積部１４５に設けたフラグ領域内の、ステップＳ１７で読み出した画像データのメモリアドレスと対応する位置に、書込済フラグを立てる（「１」を書き込む）（Ｓ１９）。なお、この処理は、ステップＳ１７の処理と同時に行ってもよい。
【００４７】
なお、データ蓄積部１４５内に格納された全体画像データ及びそのフラグ領域は、メモリ１０８に格納されているものを、メモリコントローラ１２３を介して、データ蓄積部１４５に読み出して、一時的に格納したものであり、処理が完了すると、メモリ１０８に格納される。
【００４８】
ここで、書込済情報である書込済フラグを格納するためのフラグ領域について図８Ａ及び図８Ｂを用いて説明する。図８Ａ及び図８Ｂは、全体画像データに対応するフラグ領域の一部を示したものである。
フラグ領域には、画像データ中の各画素について、その画素の画像が書込み済みであるか否かを示す書込済フラグの値が格納される。初期状態では全画素について書込済フラグがクリアされており（「０」を格納）、書き込みが行われると、書き込みを行った画素に対応する位置に書込済フラグが立てられる（「１」を格納）。
【００４９】
まず、図８Ａに、ＩＪ記録ヘッド１０５が備える１以上のノズル１０５ａのいずれもが正常状態である場合の、書き込み前のフラグ領域の一部７０（以下、単にフラグ領域７０）と書き込み後の同じフラグ領域７０を示す。なお、この図において、ＩＪ記録ヘッド１０５が備えるノズル１０５ａは６本とし、矢印はＩＪ記録ヘッド１０５の移動方向Ｈを示す。また、枠７０ａ内は書き込みが行われた箇所である。
書き込み前（左側の図）には、フラグ領域７０には書込済フラグが立っていない。そして、その後書き込みが行われると、枠７０ａの内側の、書き込み済みの画素と対応するアドレスに、書込済フラグが立てられる（右側の図）。このようにして書込済情報を更新し、どの画素の画像が書き込み済みであるかを記録することができる。
【００５０】
次に、図８Ｂであるが、図８Ａと同じく書き込み前後のフラグ領域７０を示した。但し、図８Ｂでは、ＩＪ記録ヘッド１０５のノズル１０５ａ１〜６のうちノズル１０５ａ３が異常状態にある状態で書き込みを行った場合の例を示している。
したがって、書き込みを行った枠７０ａ内の領域についても、ノズル１０５ａ３により書き込むべき画素についてはノズル異常のため書き込みが行われていないので、これに対応して書込済フラグが立っていない。したがって未だ書き込みがされていないことが分かる。したがって、それらの画素は、ＩＪ記録ヘッド１０５が再度その位置を通過した場合には、正常ノズルによって書き込みを行う対象となり得る。
【００５１】
図６の説明に戻る。ステップＳ１３でＮｏの場合、アドレス生成部１４３は、ＩＪ記録ヘッド制御部１３３に、処理対象のノズル１０５ａの吐出制御用データとして、インク非吐出を示す画像データを出力する（Ｓ２０）。異常が発生しているノズルにインクを吐出させないようにするためである。
また、ステップＳ１６でＹｅｓの場合も同様の処理を行う。この場合は、処理対象のノズルにより書き込むべき画素は、既に書き込み済みであるため、重ねて印刷することを防ぐためである。
【００５２】
以上の処理が終了すると、図７のステップＳ２１に進み、ノズル位置生成部１４２は、未だ処理対象となっていないノズル１０５aがあるか判断する（Ｓ２１）。ステップＳ１９の処理が終了した場合にも同様にステップＳ２１に進む。
ステップＳ２１でＹｅｓの場合は、ステップＳ１２に戻って、次のノズル１０５ａを処理対象としてステップＳ１２からＳ２１までの処理を繰り返す。この処理は、全ノズル１０５ａについて、上述の処理が完了するまで繰り返される。
【００５３】
全ノズル１０５ａについて上述の処理が完了し、ステップＳ２１の判断がＮｏとなると、次に、印刷対象となる画像データの全ての画素の印刷が完了したか否かを判断する（Ｓ２２）。この判断は、全画素について書込済フラグが立ったか否かに基づき行うことができる。
ステップＳ２２でＮｏの場合は、ステップＳ１１に戻って、次のヘッド位置情報に基づきステップＳ１１からステップＳ２２の処理を繰り返す。ステップＳ２２でＹｅｓの場合、図６及び図７の処理が終了する。
【００５４】
以上のように、画像データ中の書き込み済みの部分を特定するための書込済情報を生成することにより、同じ画素を複数回再度書き込むことを防止できる。また、ノズル１０５ａ１〜Ｎのいずれかが異常状態にある場合には、そのノズル１０５ａにより書き込む箇所については書込済情報を更新しない。このため、異常状態にあるノズル１０５ａが通過した位置は、次に別のノズルが通過した場合に書き込みの対象となる。したがって、一部異常状態のノズルがある場合でも、何度か位置をずらしながら走査を行うことにより、ノズル１０５ａが異常状態であって書き込めなかった画素を他のノズルにより書き込み、欠けのない正常な全体画像を形成することができる。
【００５５】
また、フラグ領域を設けて、該領域内において、書込済情報の生成及び更新を実行するので、全体画像データを壊すことがない。そのため、複数回印刷をする場合に、元の全体画像データを再利用することができる。また、例えば、文字領域とグラフィック領域とで構成されるデータにおいて、元画像のデータをもとに領域毎に異なる処理を行うような場合にも、元の全体画像データを利用することが可能である。
【００５６】
上述の処理を行う際に、ハンドヘルドプリンタ１０の画像読取部１３４は、異常ノズルについては、ノズル番号を特定して、該ノズルが異常状態にあるとの情報を取得しておく必要がある。そこで、図９のフローチャートを用いて、異常ノズルの発生を予測し、ノズル状態設定受付部１２４が異常ノズルの設定処理を受け付け、ノズル状態格納部１３５に記憶する処理について説明する。この処理を実行することで、ハンドヘルドプリンタ１０は異常ノズルの情報を取得することができる。
【００５７】
ハンドヘルドプリンタ１０のＣＰＵ１２１は、電源がオンになると図９に示すフローチャートの処理を開始する。
この処理において、ＣＰＵ１２１はまず、予め定めたメンテナンス時期になるまで待機する（Ｓ４１）。メンテナンス時期は回復動作を実行する時期のことであり、適宜の期間毎に回復動作を行うように、任意に設定すればよい。
メンテナンス時期になった場合（Ｓ４１のＹｅｓ）、ＣＰＵ１２１は、ユーザに対してメンテナンス又はノズルチェックパターンの印刷の、いずれかを実行すべきことを通知する（Ｓ４２）。
【００５８】
ステップＳ４２で回復動作を実行すべきことを通知するのは、ノズル１０５ａに異常が生じることを事前に防ぐためである。また、ノズルチェックパターンの印刷はノズル１０５ａが異常状態にあるか否かを確認するために行うものである。ステップＳ４２で、ＣＰＵ１２１は、定期的に、このどちらかの処理を実行することをユーザに対して通知する。
メンテナンス時期に実行する回復動作の内容についても特に制限はなく、回復動作用インクの吐出（空打ち）やＩＪ記録ヘッド１０５のクリーニング等、適宜のものを行えばよい。
【００５９】
ここで、ノズルチェックパターンについて、図１０Ａ〜１０Ｄを用いて説明する。
ノズルチェックパターンとは、ユーザがノズル１０５ａの吐出可否を判断するのに用いるパターンであり、任意のパターンをハンドヘルドプリンタ１０が備えるノズル１０５ａがそれぞれ印刷し、ユーザは、印刷された該パターンから各ノズル１０５ａについて吐出可否を判断する。
図１０Ａ〜１０Ｄにノズルチェックパターンの例を示す。
【００６０】
まず、図１０Ａに示すのは、従来用いられている標準的なノズルチェックパターンの一例である。このパターンでは、各ノズル１０５ａが、ＩＪ記録ヘッド１０５に備えられている間隔で、インクを吐出して、ドットを印刷する。図ではこのドットを中が黒く塗りつぶされた円で示している。ユーザは、印刷結果を見て、対応するドットが印刷されないノズル１０５ａが異常ノズルであると判断することができる。
ところで、この判断はユーザが印刷されたノズルチェックパターンを目視して行うものであるため、ユーザが目視しやすいようにすることが好ましい。
【００６１】
しかし、図１０Ａに示すパターンの場合、各ノズル１０５ａが印刷するドットの間隔が狭いため、ユーザが目視しづらい。
そこで、図１０Ｂに示すパターンのように、各ノズル１０５ａが印刷するドット同士の間隔を広げて印刷することが考えられる。ハンドヘルドプリンタ１０により記録媒体４０上を走査されている状態で、各ノズル１０５ａが、そのノズルと対応する吐出位置に来たタイミングでインクの吐出を行うことにより、ノズル１０５ａの配置間隔と異なる感覚でドットを印刷することができる。
また、図１０Ｃに示すパターンのように、各ノズル１０５ａが複数のドットを印刷するパターンも考えられ、同様に印刷することができる。
【００６２】
更に、図１０Ｄに示すように、各ノズル１０５ａに自身のノズル番号を印刷させるパターンも考えら、同様に印刷することができる。
図１０Ｂ〜１０Ｄのようなパターンを用いることで、ユーザが目視しやすくなり、各ノズル１０５ａの吐出可否を容易に判断することができる。
ハンドヘルドプリンタ１０は、ある画像の印刷中でも、ユーザの指示に応じてその印刷を中断し、以上のようなノズルチェックパターンを印刷することができる。なお、ここに示したノズルチェックパターンは、例示であって、これ以外のパターンを排除するものではない。
【００６３】
図９の説明に戻る。
ステップＳ４２の後は、ＣＰＵ１２１は回復動作を実行したか否かを判断する（Ｓ４３）。上述した通り、ここで実行する回復動作は、実際にノズルに異常が生じているかとは関係なく、実行することができるものである。
ステップＳ４３でＹｅｓの場合、ＣＰＵ１２１は、ノズル状態格納部１３５に格納されている異常ノズルの設定をクリアして（Ｓ４８）、ステップＳ４１に戻る。この場合、全てのノズル１０５ａが正常である旨の設定を行ったことになる。ノズル１０５ａに異常が発生していたとしても回復動作により正常に戻ると考えられるためである。
Ｎｏの場合は、ＣＰＵ１２１は、ノズルチェックパターンを印刷したかを判断する（Ｓ４４）。印刷していない場合は（Ｓ４４のＮｏ）、ステップＳ４３に戻る。
【００６４】
一方、印刷した場合（Ｓ４４のＹｅｓ）、ＣＰＵ１２１はユーザから異常ノズルの設定を受け付けたか否かを判断する（Ｓ４５）。この判断は、ノズルチェックパターンの印刷から一定時間後や、ユーザから異常ノズルの有無について設定があった時点で行う。そして、ステップＳ４５で、Ｎｏの場合は、異常ノズルの設定をクリアして（Ｓ４８）ステップＳ４１に戻る。ノズルチェックパターンにより全ノズルが正常であることが確認できたと考えらえるためである。
【００６５】
一方、Ｙｅｓの場合、ＣＰＵ１２１は受け付けた異常ノズルの設定を、ノズル状態格納部１３５に記憶する（Ｓ４６）。
その後、回復動作を実行するまで待機し（Ｓ４７）、実行した場合は（Ｓ４７のＹｅｓ）は、異常ノズルの設定をクリアして（Ｓ４８）ステップＳ４１に戻る。
以上でこの処理の説明は終わるが、上述の処理を行うことにより、ＩＪ記録ヘッド１０５が備える各ノズル１０５ａについて、正常な状態か異常な状態かを検出し、記憶することができる。
【００６６】
〔第２実施形態：図１１〜図１３Ｂ〕
次に、この発明の第２実施形態であるハンドヘルドプリンタ１０について、図１１〜図１３Ｂを用いて説明する。
この第２実施形態は、書込済情報をフラグ領域に記録するのではなく、元の全体画像データ自体に書き込んで記録する点が第１実施形態と異なる。その他の点は第１実施形態と共通であるので、ここでは、この点について説明する。また、第１実施形態で説明した構成要素と共通の又は対応する箇所には、第１実施形態で用いたものと同じ符号を用いる。この点は、以降の説明する実施形態でも同様とする。
【００６７】
図１１及び図１２に、第２実施形態における図６及び図７と対応する処理のフローチャートを示した。この処理は基本的には図６及び図７の処理と同じであり、ステップＳ１６がない点と、ステップＳ１９に代えてステップＳ１９−２の処理を行う点のみが異なる。そこで、これらに関連する事項についてのみ説明する。
【００６８】
第２実施形態では、第１実施形態と異なりフラグ領域を設けず、書込済情報としてインク非吐出の画像データ（最低階調値の「０」とする）を生成し、元の画像データの書き込み済みの画素のデータをその非吐出の画像データに書き換える（Ｓ１９−２）。
このため、ステップＳ１６のように、書き込み済みフラグを参照する必要はない。書き込み済みの画素を再度印刷しようとしても、画像データ自体が非吐出の画像データに変更されているため、単に画像データに従った吐出制御を行うだけで、同じ画素の２度目以降の書き込みを行わないようにすることができる。
【００６９】
次に、第2実施形態における書込済情報の更新について、図１３Ａ及び図１３Ｂを用いて説明する。図１３Ａ及び図１３Ｂは、全体画像データの一部を示したものであり、第１実施形態の図８Ａ及び図８Ｂと対応する。また、図８Ａ及び図８Ｂと同様に、矢印はＩＪ記録ヘッド１０５の移動方向Ｈを示している。また、ＩＪ記録ヘッド１０５が備えるノズルの本数は６本であり、移動方向Ｈに対して水平方向に、左からノズル１０５ａ１〜１０５ａ６の順で配列しているとする。
【００７０】
図１３ＡではＩＪ記録ヘッド１０５が備えるノズル１０５ａ１〜１０５ａ６は、いずれも正常状態にあるものとする。
左側の図は、画像データ領域８０の書き込みが行われていない状態を示している。この画像データ領域８０において、書き込みが行われると、書き込み済みの画素は、非吐出の画像データ（０）に置き換えられる。右側の図において、枠８０ａの内部は、非吐出の画像データに置き換えられていることから、書き込み済みであることがわかる。
【００７１】
次に、図１３Ｂに、ＩＪ記録ヘッド１０５が備えるノズル１０５ａ１〜１０５ａ６のうち、ノズル１０５ａ３及び１０５ａ４が異常状態である場合の書き込み前後の画像データの例を示す。同じく枠８０ａ内が書き込みを行った箇所である。
枠８０ａ内をみると、ノズル１０５ａ３及び１０５ａ４が書き込むべき画素の画像データは、ノズル異常のため書き込みが行われていないので、画像データが更新されていない。それ以外の部分は非吐出の画像データに置き換えられている。
この方式でも、第1実施形態の場合と同様、１つの画素を複数回書き込んでしまうことを防止できる。この方式では、元から最低階調値である画素と、書き込み後に最低階調値に変更された画素とを区別できないが、多重書き込みの防止及び欠けのない画像の印刷の実現のためにはこの点は問題とならない。
【００７２】
〔第３実施形態：図１４〜図１８〕
次に、この発明の第３実施形態のハンドヘルドプリンタ１０について、図１４〜図１８を用いて説明する。
第３実施形態は、ノズルが異常状態にあるか否かを、ハンドヘルドプリンタ１０の制御部１０３に設けられたノズル状態検出部１５１が自動的に検出できるようにした点が第1実施形態と異なる。その他の点は第１実施形態と共通であるので、ここでは、相違点についてのみ説明する。
【００７３】
まず、第３実施形態における、ノズル１０５ａが異常状態にあるか否かの判断方法について、図１４を用いて説明する。
図１４は、第３実施形態のハンドヘルドプリンタ１０が備えるＩＪ記録ヘッド１０５におけるノズル１０５ａの配置と、インクの吐出を検出するためのレーザ光の光路との関係を示す図である。
図１４に示すように、第3実施形態においては、ＩＪ記録ヘッド１０５が６本のノズル１０５ａ１〜１０５ａ６を備えるものとする。そして、ＩＪ記録ヘッド１０５の一方の端部側近傍にレーザ発光部１１１を、もう一方の端部側近傍にレーザ受光部１１２を対向して設ける。このレーザ発光部１１１が発光するレーザ光Ｌは、ノズル１０５ａ１〜１０５ａ６のインク吐出経路を横切るように直進し、レーザ受光部１１２が受光する。
【００７４】
レーザ光Ｌが発光中に、ノズル１０５ａがインクを吐出すると、レーザ光Ｌはインクにより遮られるので、レーザ受光部１１２での受光する光量が減少する。そこで、レーザ光Ｌを一定時間継続して発光させ、その間にノズル１０５ａ１〜１０５ａ６から順次インクを吐出し、各吐出タイミング時のレーザ受光部１１２の受光状態で、各ノズル１０５ａ１〜１０５ａ６が正常状態にあるか（インクを吐出できたか）否かを検出することができる。
【００７５】
上述の検出機能を実現するための構成を含む、第３実施形態のハンドヘルドプリンタ１０の構成について、以下説明する。
まず、図１５に、図２と対応する、第３実施形態のハンドヘルドプリンタ１０のハードウェア構成を示す。
この構成は基本的には図２と同じであるが、ハンドヘルドプリンタ１０がレーザ発光部１１１及びレーザ受光部１１２を備える点が異なる。
レーザ発光部１１１は、レーザ発光素子とレーザ発光回路、レーザ駆動部を備え、レーザを発光する機能を備える。
レーザ受光部１１２は、レーザ受光素子と、レーザ受光量検出センサを備え、レーザ発光部１１１が発光するレーザ光Ｌを受光する機能を備える。
レーザ発光部１１１及びレーザ受光部１１２は、ノズル１０５ａが異常状態にあるか否かを検出するために用いられる。いずれも、公知の技術を用いて構成すればよい。
【００７６】
次に、図１６に、図３と対応する、第３実施形態のハンドヘルドプリンタ１０の制御部１０３のハードウェア構成を示す。この構成は基本的には図３と同じであるが、制御部１０３が、ＳｏＣ１２０及びＡＳＩＣ／ＦＰＧＡ１３０に加え、ノズル状態検出部１５１を備える点と、ＡＳＩＣ／ＦＰＧＡ１３０がノズル状態制御部１３７を備える点が異なる。
以下、これらについて説明する。
【００７７】
ノズル状態検出部１５１は、レーザ受光部１１２が受光したレーザ光の受光量を基に、ノズルの状態が正常であるか否かを判断する機能を備える。
例えば、レーザ受光部１１２から取得した受光量が、あるノズル１０５ａからインクを吐出したタイミングで予め設定した受光量の閾値を下回る場合は、そのノズル１０５ａが正常状態、上回る場合は異常状態であると判断する。閾値については、実験等により適宜の値を定めればよい。ノズル状態検出部１５１は、検出結果をノズル状態制御部１３７に出力する。
ノズル状態制御部１３７は、ノズル状態検出部１５１が出力した検出結果を、バス１６１、１６２を介してＣＰＵ１２１に出力する機能を備える。
【００７８】
次に、図１７に、図４と対応する、第３実施形態のハンドヘルドプリンタ１０の機能構成を示す。
図１７に示すように、ＣＰＵ１２１は、図４に示したノズル状態設定受付部１２４に代えて、ノズル状態設定部１２５を備えている。ノズル状態設定部１２５は、ノズル状態制御部１３７からノズル状態検出部１５１が検出した検出結果を取得し、ノズル状態格納部１３５に備えられているノズル１０５ａの状態情報をその検出結果に応じて書き換える機能を備える。
【００７９】
次に、図１８に、第３実施形態のハンドヘルドプリンタ１０のＣＰＵ１２１が実行する処理の、図９と対応するフローチャートを示した。
図１８の処理において、ステップＳ５１〜Ｓ５４の処理は、基本的には図９のステップＳ４１〜Ｓ４４の処理と同じである。但し、ステップＳ５２では、ユーザに通知するのは、メンテナンス又はレーザ光を用いたノズルチェックのいずれかの実行をすべきこととなる。また、ステップＳ５４では、レーザ光Ｌを用いたノズルチェックを実行したか否かを判断する。
【００８０】
ステップＳ５４でＹｅｓの場合、ＣＰＵ１２１は、レーザ受光部１１２が受光した光量が予め設定した閾値以上となるノズルが存在したか否かを制御部１０３のノズル状態検出部１５１が判断する。ここでＹｅｓの場合、ＣＰＵ１２１は、該当のノズルを異常ノズルとしてノズル状態格納部１３５に記憶する（Ｓ５６）。
次に、メンテナンスを実行したかを再度判断する（Ｓ５７）。ここでＮｏの場合、ステップＳ５７に戻り、メンテナンスを実行するまで、待機することになる。一方、Ｙｅｓの場合は、異常状態が正常状態に回復したものとして、ノズル状態格納部１３５に格納されている異常ノズルの設定をクリアして（Ｓ５８）、ステップＳ５１に戻る。
【００８１】
ステップＳ５５でＮｏの場合も、ノズル１０５ａは正常状態であるから、やはり異常ノズルの設定をクリアして（Ｓ５８）、ステップＳ５１に戻る。
以上でこの処理の説明は終わるが、上述の処理を行うことにより、ハンドヘルドの制御部１０３は、ＩＪ記録ヘッド１０５が備える各ノズル１０５ａについて、正常な状態か異常な状態かを検出し、記憶することができる。
【００８２】
〔変形例〕
次に、第１実施形態のハンドヘルドプリンタ１０の変形例について説明する。
上述した実施形態において、印刷処理を実行する場合、ノズル位置生成部１４２はノズル状態格納部１３５に格納されているノズル１０５ａの状態情報を取得し、ノズル１０５ａが異常状態である場合は、そのノズル１０５ａが処理対象となった場合に図６のステップＳ１３でＮｏと判断し、そのノズル１０５ａを用いた書き込みを行わないようにしていた。また、そのノズル１０５ａと対応する画素について書込済情報を更新しないようにしていた。
【００８３】
この変形例では、上記に加え、異常状態にあるノズル１０５ａが存在する場合に、そのノズル１０５ａを基準とした所定範囲内のノズル１０５ａについても、同様にステップＳ１３でＮｏと判断し書き込みと書込済情報の更新を行わないようにしている。また、所定範囲をどのような範囲とするかを設定した画像書込モードに応じてユーザが決定できるようにしている。
【００８４】
次に、この画像書込モードについて表１を用いて説明する。
【表１】
2017164926.tif 000003
この表は、一例として、ＩＪ記録ヘッド１０５が備えるノズル１０５ａは「１」から「１６」の１６本で一列に直線状に配列されており、そのうちノズル番号「４」のノズル１０５ａ４に異常が発生している場合に、どの範囲のノズル１０５ａについて画像の書き込みと書込済情報の更新停止を行うかを、設定可能な画像書込モード毎に示したものである。「有効」を示す「■」のノズルについては画像の書き込みと書込済情報の更新を行い、「無効」を示す「□」のノズルについてはそれらを行わない。
【００８５】
まず、モードＡは、異常状態にあると判断されたノズルについてのみ画像の書き込みと書込済情報の更新を無効にするモードである。
モードＢは、異常状態にあるノズル１０５ａから、配列の端部のノズル１０５ａまでの間に配列されているノズル１０５ａ全てについて、画像の書き込みと書込済情報の更新を無効にするモードである。なお、配列両端のうちどちらの端部までとするかは任意であるが、この例では、異常状態にあるノズル１０５ａ４から近いほうの端部である、ノズル番号「１」のノズル１０５ａ１までとしている。
【００８６】
モードＣは、異常状態にあるノズル１０５ａと、その両隣に配列されているノズル１０５ａについて、画像の書き込みと書込済情報の更新を無効にするモードである。表１の例では、ノズル番号「４」のノズル１０５ａ４と、その両隣のノズル番号「３」及び「５」のノズル１０５ａ３及び５について、停止を行っている。
モードＤは、異常状態のノズル１０５ａがある場合でも、そのノズル１０５ａ自体も含め、画像の書き込みと書込済情報の更新を無効にしないモードである。すなわち、上述した実施形態の制御を行わず、異常状態のノズル１０５ａも含めて印刷を試みるモードである。
【００８７】
以上のうちモードＡは、上述した実施形態の場合と同じ動作を行うモードであり、初期状態はこのモードとするとよい。
モードＢ及びＣは、１回のフリーハンド走査で印刷できる量は少なくなるが、印刷されていない箇所を目視しやすくなるモードである。異常状態にあるノズル１０５ａだけでなく、その周囲のノズル１０５ａについても書き込みを停止した方が、未書き込みであり再度走査しなければならない領域がユーザにとってわかりやすくなると考えられる。
モードＤは、印刷が不完全な箇所が生じるけれども、全体画像が印刷される時間をその分だけ速くすることができる。
上記のモードは一例であり、どの範囲について画像の書き込みと書込済情報の更新を無効にするかは、予め適宜に定めておけばよい。
【００８８】
また、この画像書込モードは、印刷モード設定項目に含めておき、図１９に示したような、印刷モード設定画面から、ユーザが選択することができるようにしてもよい。ノズル位置生成部１４２は、当該印刷モード等の種々の設定を受け付ける機能を備えているので、画像書込モードの設定についても、受け付ける。
また、画像書込モード自体を、ユーザが予め基準を指定して、適宜設定することができるようにしてもよい。
【００８９】
以上で実施形態の説明を終了するが、この発明において、装置の具体的な構成、具体的な処理の手順、異常ノズルの検出方式、画像形成に使用する記録媒体等は、実施形態で説明したものに限るものではない。
例えば、記録ヘッド上の書込手段の配列は、かならずしも１本の直線状でなくても構わない。曲線や、複数本の直線に沿った配列であっても、書込手段毎の位置が既知であれば、図６等の処理は同様に適用可能である。
【００９０】
また、第１実施形態では、ノズルに画像データに従った書き込みを実行させるために、画像データそのものをＩＪ記録ヘッド制御部１３３に出力することについて説明をしたが、ＩＪ記録ヘッド制御部１３３に出力するのは画像データに限られない。
例えば、そのノズル位置に応じた画像データを書き込むのに必要なインク量やインクの色等の情報をＩＪ記録ヘッド制御部１３３に出力してもよい。
なお、画像データを書き込むのに必要なインク量の情報については、画素毎に必要なインク量を予めテーブルとしてデータ蓄積部１４５に蓄積しておき、そのノズル位置に対応する画像データとそのテーブルとを参照してアドレス生成部１４３が決定することが考えられる。
また、書き込みの方式がインク以外の場合、例えば、熱や光を用いる場合は、必要な熱量、光量等に関する情報を同様に予めテーブルとして蓄積しておき、ＩＪ記録ヘッド制御部１３３に出力してもよい。
【００９１】
また、上述した実施形態では、この発明をハンドヘルドプリンタに適用した例について説明した。しかし、これに限られることはない。手動ではなく、何らかの機械的構成により自動で記録媒体上を書込手段により走査する画像形成装置であっても、この発明は適用可能である。ただし、書き込みができない状態で走査し、書き込みがなされたかった箇所について、何らかの手段で書き込みができる書込手段により再走査して書き込みを行えるような画像形成装置に適用することが好適である。
また、書込手段による書き込みの方式も、インク等の液滴の吐出によるものに限られない。感熱材料に熱を加える方式や、感光材料に光を当てる方式など、任意の方式で書き込みを行う装置に、本発明を適用可能である。
【００９２】
また、この発明のプログラムの実施形態は、コンピュータに所要のハードウェアを制御させて上述した実施形態におけるハンドヘルドプリンタ１０の機能（特に図９の処理あるいはこれと対応する処理による機能）を実現させるためのプログラムである。
このようなプログラムは、はじめからコンピュータに備えるＲＯＭや他の不揮発性記憶媒体（フラッシュメモリ，ＥＥＰＲＯＭ等）などに格納しておいてもよいし、メモリカード、ＣＤ、ＤＶＤ、ブルーレイディスク等の任意の不揮発性記録媒体に記録して提供することもできる。
【００９３】
それらの記録媒体に記録されたプログラムをコンピュータにインストールして実行させることにより、上述した各手順を実行させることができる。
さらに、ネットワークに接続され、プログラムを記録した記録媒体を備える外部装置あるいはプログラムを記憶手段に記憶した外部装置からダウンロードし、コンピュータにインストールして実行させることも可能である。
【００９４】
また、以上説明してきた各実施形態、動作例及び変形例の構成は、相互に矛盾しない限り任意に組み合わせて実施可能であることは勿論である。
【符号の説明】
【００９５】
１０：ハンドヘルドプリンタ、２０：回復装置、３０：タブレット型コンピュータ、４０：記録媒体、１０１，２０１：電源、１０２，２０２：電源回路、１０３，２０３：制御部、１０４：ＩＪ記録ヘッド駆動部、１０５：ＩＪ記録ヘッド、１０５ａ：ノズル、１０６：ＯＰＵ、１０７：ナビゲーションセンサ、１０８：メモリ、１０９：通信Ｉ／Ｆ、１１０，２０６：シリアルＩ／Ｆ、１１１：レーザ発光部、１１２：レーザ受光部、１２０：ＳｏＣ、１２１：ＣＰＵ、１２２：位置算出部、１２３：メモリコントローラ、１２４：ノズル状態設定受付部、１２５：ノズル状態設定部、１３０：ＡＳＩＣ／ＦＰＧＡ、１３１：ナビゲーションセンサＩ／Ｆ、１３２：印刷／センサタイミング生成部、１３３：ＩＪ記録ヘッド制御部、１３４：画像読取部、１３５：ノズル状態格納部、１３６：割込制御部、１３７：ノズル状態制御部、１４１：ＣＰＵ＿Ｉ／Ｆ、１４２：ノズル位置生成部、１４３：アドレス生成部、１４４：テーブル管理部、１４５：データ蓄積部、１４６：出力Ｉ／Ｆ、１５１：ノズル状態検出部、１６１，１６２：バス、２０４：状態検知センサ、２０５：回復処理部、７０：フラグ領域、７０ａ，８０ａ：枠、８０：画像データ領域
【先行技術文献】
【特許文献】
【００９６】
【特許文献１】特表２０１０−５２００８７号公報
【特許文献２】特開平９−２６７４９３号公報
【図１】
2017164926.tif 000004
【図２】
2017164926.tif 000005
【図３】
2017164926.tif 000006
【図４】
2017164926.tif 000007
【図５】
2017164926.tif 000008
【図６】
2017164926.tif 000009
【図７】
2017164926.tif 000010
【図８Ａ】
2017164926.tif 000011
【図８Ｂ】
2017164926.tif 000012
【図９】
2017164926.tif 000013
【図１０Ａ】
2017164926.tif 000014
【図１０Ｂ】
2017164926.tif 000015
【図１０Ｃ】
2017164926.tif 000016
【図１０Ｄ】
2017164926.tif 000017
【図１１】
2017164926.tif 000018
【図１２】
2017164926.tif 000019
【図１３Ａ】
2017164926.tif 000020
【図１３Ｂ】
2017164926.tif 000021
【図１４】
2017164926.tif 000022
【図１５】
2017164926.tif 000023
【図１６】
2017164926.tif 000024
【図１７】
2017164926.tif 000025
【図１８】
2017164926.tif 000026
【図１９】
2017164926.tif 000027