(57)【要約】【課題】印刷画像における白スジを低減させること。【解決手段】開示の技術の一態様に係る液体吐出装置は、印刷媒体上を移動しながら、複数のノズル列から前記印刷媒体に液体を吐出する記録ヘッドと、移動面における前記記録ヘッドの移動量を検出する移動量検出部と、少なくとも前記移動面における前記記録ヘッドの姿勢を検出する姿勢検出部と、前記移動量及び前記姿勢に基づいて、前記ノズル列が含まれる直線上で、前記ノズル列の一端にあるノズルより外側にある第１基準点の位置と、前記ノズル列の他端にあるノズルより外側にある第２基準点の位置と、をそれぞれ決定する基準点位置決定部と、前記第１基準点及び前記第２基準点の位置に基づき、前記ノズル列に含まれる各ノズルの位置を取得するノズル位置取得部と、前記各ノズルの前記移動面における位置と、画像データとに基づき、前記各ノズルからの前記液体の吐出を制御する吐出制御部と、を有する。【選択図】図１６
2020124842.tif 000002
【特許請求の範囲】
【請求項１】
印刷媒体上を移動しながら、複数のノズル列から前記印刷媒体に液体を吐出する記録ヘッドと、
移動面における前記記録ヘッドの移動量を検出する移動量検出部と、
少なくとも前記移動面における前記記録ヘッドの姿勢を検出する姿勢検出部と、
前記移動量及び前記姿勢に基づいて、前記ノズル列が含まれる直線上で、前記ノズル列の一端にあるノズルより外側にある第１基準点の位置と、前記ノズル列の他端にあるノズルより外側にある第２基準点の位置と、をそれぞれ決定する基準点位置決定部と、
前記第１基準点及び前記第２基準点の位置に基づき、前記ノズル列に含まれる各ノズルの位置を取得するノズル位置取得部と、
前記各ノズルの前記移動面における位置と、画像データとに基づき、前記各ノズルからの前記液体の吐出を制御する吐出制御部と、を有する
液体吐出装置。
【請求項２】
前記基準点位置決定部は、
前記ノズル列が含まれる直線上での前記第１基準点と前記第２基準点の中間点が、前記各ノズルが存在しない位置に配置されるように、前記第１基準点及び前記第２基準点の少なくとも一方の位置を決定する
請求項１に記載の液体吐出装置。
【請求項３】
前記ノズル列におけるノズル間隔をＥとし、前記ノズル列に含まれるノズル数をＮとした場合に、
前記基準点位置決定部は、
前記移動量及び前記姿勢に基づいて、前記ノズル列が含まれる直線上で、
前記ノズル列の一端にあるノズルより外側にＥだけ離れた前記第１基準点の位置と、
前記第１基準点の位置から、前記ノズル列の他端の方向に、２×Ｅ×Ｎより長い距離で、且つＥに２のべき乗を乗算した距離だけ離れた前記第２基準点の位置と、をそれぞれ決定する
請求項１、又は２に記載の液体吐出装置。
【請求項４】
前記基準点位置決定部は、
前記ノズル列のノズル間隔より小さい位置分解能により、前記第１基準点及び前記第２基準点の位置を決定する
請求項１乃至３の何れか１項に記載の液体吐出装置。
【請求項５】
前記ノズル列におけるノズル間隔をＥとし、前記位置分解能をΔｐとし、前記ノズル列に含まれるノズル数をＮとした場合に、
前記ノズル間隔と前記位置分解能は以下の式を満足する
（Ｅ／Δｐ）２＞Ｎ
請求項４に記載の液体吐出装置。
【請求項６】
印刷媒体上を移動しながら、複数のノズル列から前記印刷媒体に液体を吐出する記録ヘッドと、
移動面における前記記録ヘッドの移動量を検出する移動量検出部と、
少なくとも前記移動面における前記記録ヘッドの姿勢を検出する姿勢検出部と、
前記移動量及び前記姿勢に基づいて、前記ノズル列が含まれる直線上で、前記ノズル列の一端にあるノズルより外側にあり、前記ノズル列のノズル間隔だけ離れた位置にある第１基準点の位置と、前記第１基準点から前記ノズル列の他端の方向に離れた位置にある第２基準点の位置と、をそれぞれ決定する基準点位置決定部と、
前記第１基準点から前記ノズルまでの距離と、前記第２基準点から前記ノズルまでの距離とに基づき、前記ノズル列に含まれる各ノズルの位置を取得するノズル位置取得部と、
前記各ノズルの前記移動面における位置と、画像データとに基づき、前記各ノズルからの前記液体の吐出を制御する吐出制御部と、を有する
液体吐出装置。
【請求項７】
前記基準点位置決定部は、
前記第１基準点の位置を含む位置にあるノズルと、前記ノズル列の一端にあるノズルとが、前記印刷媒体上に形成される画像の１つの画素に該当する面積内に配置されるように、前記第１基準点を決定する
請求項６に記載の液体吐出装置。
【請求項８】
前記基準点位置決定部は、
算出された前記第１基準点の位置データの小数部をゼロとして、前記第１基準点の位置を決定する
請求項７に記載の液体吐出装置。
【請求項９】
前記基準点位置決定部は、
算出された前記第１基準点の位置データの小数部をゼロにする制御を切り替え可能である
請求項８に記載の液体吐出装置。
【請求項１０】
前記記録ヘッドの前記傾きをθとし、前記ノズル列に含まれるノズル数をＮとした場合に、
前記基準点位置決定部は、θ＜ａｒｃｔａｎ｛（Ｎ−１）／Ｎ｝を満足する場合に、算出された前記第１基準点の位置データの小数部をゼロとして、前記第１基準点の位置を決定する
請求項８、又は９に記載の液体吐出装置。
【請求項１１】
前記記録ヘッドの前記移動面内での傾きを変化させる回転角調整部を有し、
前記回転角調整部は、
決定された前記第１基準点の位置に基づき、前記第１基準点の位置を含む位置にあるノズルと、前記ノズル列の一端にあるノズルとが、前記印刷媒体上に形成される画像の１つの画素に該当する面積内に配置されるように、前記記録ヘッドの前記傾きを調整する
請求項７乃至１０の何れか１項に記載の液体吐出装置。
【請求項１２】
前記記録ヘッドの前記傾きをθとし、前記ノズル列に含まれるノズル数をＮとした場合に、
前記回転角調整部は、
以下の式を満足するように、前記記録ヘッドの前記傾きを調整する
θ＜ａｒｃｔａｎ｛（Ｎ−１）／Ｎ｝
請求項１１に記載の液体吐出装置。
【請求項１３】
記録ヘッドが印刷媒体上を移動しながら、複数のノズル列から前記印刷媒体に液体を吐出する記録工程と、
移動面における前記記録ヘッドの移動量を検出する移動量検出工程と、
少なくとも前記移動面における前記記録ヘッドの姿勢を検出する姿勢検出工程と、
前記移動量及び前記姿勢に基づいて、前記ノズル列が含まれる直線上で、前記ノズル列の一端にあるノズルより外側にある第１基準点の位置と、前記ノズル列の他端にあるノズルより外側にある第２基準点の位置と、をそれぞれ決定する基準点位置決定工程と、
前記第１基準点及び前記第２基準点の位置に基づき、前記ノズル列に含まれる各ノズルの位置を取得するノズル位置取得工程と、
前記各ノズルの前記移動面における位置と、画像データとに基づき、前記各ノズルからの前記液体の吐出を制御する吐出制御工程と、を含む
液体吐出方法。
【請求項１４】
液体吐出装置を、
記録ヘッドが印刷媒体上を移動しながら、複数のノズル列から前記印刷媒体に液体を吐出する記録部、
移動面における前記記録ヘッドの移動量を検出する移動量検出部、
少なくとも前記移動面における前記記録ヘッドの姿勢を検出する姿勢検出部、
前記移動量及び前記姿勢に基づいて、前記ノズル列が含まれる直線上で、前記ノズル列の一端にあるノズルより外側にある第１基準点の位置と、前記ノズル列の他端にあるノズルより外側にある第２基準点の位置と、をそれぞれ決定する基準点位置決定部、
前記第１基準点及び前記第２基準点の位置に基づき、前記ノズル列に含まれる各ノズルの位置を取得するノズル位置取得部、
前記各ノズルの前記移動面における位置と、画像データとに基づき、前記各ノズルからの前記液体の吐出を制御する吐出制御部、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、液体吐出装置、液体吐出方法、及びプログラムに関する。
【背景技術】
【０００２】
ノートＰＣの小型化、スマートデバイスの普及等により、プリンタの小型化・携帯化のニーズが高まり、プリンタから紙搬送システムを削除することで小型化された液体吐出装置（以下、ＨＨＰ：ハンドヘルドプリンタという）が実用化されつつある。
【０００３】
ＨＨＰは、ユーザにより紙等の印刷媒体上をフリーハンド走査されながら、通信機能を持つスマートデバイスやＰＣ（Personal Computer）等の端末から受信した画像データに基づき、記録ヘッドに設けられた複数のノズルからインク等の液体を吐出して印刷を行う。
【０００４】
印刷では、算出された各ノズルの位置データに基づき、画像を構成する各画素に対応させて液体を吐出するノズルが選択される。しかし、記録ヘッドが画像に対してわずかに傾きをもって配置されていると、各ノズルの位置算出時に、演算上の桁落ちで液体を吐出するノズルとして選択されないノズルが生じ、このノズルから液体が吐出されないことで、印刷画像に白スジが発生する場合がある。
【０００５】
印刷画像における白スジの発生に対し、画素に対応させて液体を吐出するノズルを選択する際に、画素に基づく目標吐出位置の最近傍のノズルを常に選択するのではなく、最近傍以外のノズルも選択しうる条件を与える。そして、この条件の範囲を空間的に切り替えることで、液体が吐出されないノズルが固定されることを低減し、白スジを低減させる装置が開示されている（例えば、特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１の装置では、演算上の桁落ちで液体を吐出するノズルとして選択されないノズルが生じる点は解消されていない。そのため、液体が吐出されないノズルを狭い範囲で分散させることはできても、ノズル全体に分散させることはできず、その結果、白スジが発生する場合があった。
【０００７】
本発明は、上記の点に鑑みてなされたものであって、印刷画像における白スジを低減させることを課題とする。
【課題を解決するための手段】
【０００８】
開示の技術の一態様に係る液体吐出装置は、印刷媒体上を移動しながら、複数のノズル列から前記印刷媒体に液体を吐出する記録ヘッドと、移動面における前記記録ヘッドの移動量を検出する移動量検出部と、少なくとも前記移動面における前記記録ヘッドの姿勢を検出する姿勢検出部と、前記移動量及び前記姿勢に基づいて、前記ノズル列が含まれる直線上で、前記ノズル列の一端にあるノズルより外側にある第１基準点の位置と、前記ノズル列の他端にあるノズルより外側にある第２基準点の位置と、をそれぞれ決定する基準点位置決定部と、前記第１基準点及び前記第２基準点の位置に基づき、前記ノズル列に含まれる各ノズルの位置を取得するノズル位置取得部と、前記各ノズルの前記移動面における位置と、画像データとに基づき、前記各ノズルからの前記液体の吐出を制御する吐出制御部と、を有する。
【発明の効果】
【０００９】
印刷画像における白スジを低減させることができる。
【図面の簡単な説明】
【００１０】
【図１】実施形態に係るＨＨＰによる印刷の様子の一例を説明する図である。
【図２】実施形態に係るＨＨＰのハードウェア構成の一例を説明するブロック図である。
【図３】実施形態に係る制御部のハードウェア構成の一例を説明するブロック図である。
【図４】ジャイロセンサが角速度を検出する原理を説明する図である。
【図５】ナビゲーションセンサのハードウェア構成の一例を説明するブロック図である。
【図６】ナビゲーションセンサによる移動量の検出方法の一例を説明する図であり、（ａ）は印刷媒体への光の照射を説明する図、（ｂ）はイメージデータの一例を示す図である。
【図７】実施形態に係るＩＪ記録ヘッド駆動回路の構成の一例を説明するブロック図である。
【図８】ＩＪ記録ヘッドのノズル位置の一例を説明する図であり、（ａ）実施形態に係るＨＨＰの構成の一例を説明する平面図、（ｂ）はＩＪ記録ヘッドのみを説明する図である。
【図９】実施形態に係るＨＨＰの座標系と位置の算出方法の一例を説明する図であり、（ａ）はＨＨＰのＸ座標を説明する図、（ｂ）はナビゲーションセンサが検出する移動量を示す図である。
【図１０】印刷中に生じるＨＨＰの回転角の求め方の一例を説明する図である。
【図１１】目標吐出位置とノズルの位置の関係の一例を説明する図である。
【図１２】画像データ出力器とＨＨＰによる印刷動作の一例を示すフローチャートである。
【図１３】ナビゲーションセンサの位置から所定の点の位置を取得する方法の一例を説明する図である。
【図１４】基準点を用いたノズル位置の取得方法の一例を説明する図である。
【図１５】印刷画像における白スジの発生原理を説明する図であり、（ａ）は印刷画像の画素とノズルとの関係を示す図、（ｂ）は印刷後の画像のドットを示す図である。
【図１６】第１の実施形態に係る第１基準点及び第２基準点の位置の決定方法の一例を説明する図である。
【図１７】第１の実施形態に係るＨＨＰの機能構成の一例を説明するブロック図である。
【図１８】第１の実施形態に係るＨＨＰの動作の一例を示すフローチャートである。
【図１９】ノズル列のノズル毎での非吐出ノズル発生率のシミュレーション結果の一例を示す図である。
【図２０】第１基準点及び第２基準点の位置の小数部分を変化させた時の非吐出ノズルの発生頻度のシミュレーション結果の一例を示すヒストグラムである。
【図２１】第２の実施形態に係る第１基準点及び第２基準点の位置の決定方法の一例を説明する図である。
【図２２】第２の実施形態に係る制御部のハードウェア構成の一例を説明するブロック図である。
【図２３】第２の実施形態に係るＨＨＰの機能構成の一例を説明するブロック図である。
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態について図面を参照しながら説明する。
【００１２】
実施形態では、液体吐出装置の一例としてハンドヘルドプリンタ（以下、ＨＨＰという）について説明する。ＨＨＰは、ユーザにより印刷媒体上で移動（走査）されながら、画像データ、及び移動面におけるＨＨＰの位置データに基づいて、インク（液体の一例）を吐出し、印刷媒体上に画像を形成する装置である。
【００１３】
なお、実施形態では、位置分解能を示す用語として「解像度」を用いる場合がある。解像度の単位は「ｄｐｉ（dot per inch）」である。長さの単位に換算するには、１インチの長さを「解像度」で除算すれば良い。一例として、解像度２４００ｄｐｉの場合、長さの単位の位置分解能は、２５．４／２４００＝１０．５μｍであり、解像度６１４４００ｄｐｉの場合、長さの単位の位置分解能は、２５．４／６１４４００＝０．０４μｍ等である。
【００１４】
また、実施形態では、記録ヘッドを「ＩＪ記録ヘッド」と称し、実施形態の用語における印刷、画像形成、印字、記録はいずれも同義である。
【００１５】
＜実施形態に係るＨＨＰの構成＞
先ず、実施形態に係るＨＨＰについて説明する。図１は、実施形態に係るＨＨＰによる印刷の様子の一例を説明する図である。ＨＨＰ２０には、スマートフォンやＰＣ（Personal Computer）等の画像データ出力器１１から画像データが送信される。ユーザはＨＨＰ２０を把持して、印刷媒体１２（定形用紙やノート等）から浮き上がらないようにフリーハンドで走査させる。このＨＨＰ２０が走査される面は、「移動面」の一例である。
【００１６】
ＨＨＰ２０は後述するようにナビゲーションセンサＳ０とジャイロセンサ３１で位置を検出し、ＨＨＰ２０が目標吐出位置に移動すると、目標吐出位置で吐出すべき色のインクを吐出する。すでにインクを吐出した場所はマスクされるため（インクの吐出の対象とならないため）、ユーザは、印刷媒体１２上で任意の方向にＨＨＰ２０を走査させることで、印刷媒体１２上に画像を形成することができる。
【００１７】
印刷媒体１２からＨＨＰ２０が浮き上がらないことが好ましいのは、ナビゲーションセンサＳ０が印刷媒体１２からの反射光を利用して移動量を検出するためである。印刷媒体１２からＨＨＰ２０が浮き上がると反射光を検出できなくなり移動量を検出できない。印刷媒体１２からナビゲーションセンサＳ０がはみ出した場合も、印刷媒体１２の厚みにより反射光を検出できなくなったり、検出できても位置がずれたりする場合がある。このため、ナビゲーションセンサＳ０は印刷媒体１２上で走査されることが好ましく、上記のようにノズル６１とナビゲーションセンサＳ０が印刷媒体１２上に共に存在することが好ましい。
【００１８】
＜実施形態に係るＨＨＰのハードウェア構成＞
図２は、実施形態に係るＨＨＰのハードウェア構成の一例を説明する図である。ＨＨＰ２０は、制御部２５によって全体の動作が制御され、制御部２５には通信Ｉ/Ｆ（Interface）２７、ＩＪ（Inkjet）記録ヘッド駆動回路２３、ＯＰＵ（Operation panel Unit）２６、ＲＯＭ（Read Only Memory）２８、ＤＲＡＭ（Dynamic Random Access Memory）２９、ナビゲーションセンサ３０、及びジャイロセンサ３１等が電気的に接続されている。
【００１９】
また、ＨＨＰ２０は電力により駆動されるため、電源２２と電源回路２１とを有している。電源回路２１が生成する電力は、点線２２ａで示す配線等により、通信Ｉ/Ｆ２７、ＩＪ記録ヘッド駆動回路２３、ＯＰＵ２６、ＲＯＭ２８、ＤＲＡＭ２９、ＩＪ記録ヘッド２４、制御部２５、ナビゲーションセンサ３０、及びジャイロセンサ３１に供給されている。ここで、ＩＪ記録ヘッド２４は、「液体吐出部」の一例であり、ナビゲーションセンサ３０は、「移動量検出部」の一例であり、ジャイロセンサ３１は「姿勢検出部」の一例である。
【００２０】
電源２２としては主に電池（バッテリー）が利用される。太陽電池や商用電源（交流電源）、燃料電池等が用いられても良い。電源回路２１は、電源２２が供給する電力をＨＨＰ２０の各部に分配する。また、電源２２の電圧を各部に適した電圧に降圧や昇圧する。また、電源２２が充電可能な電池である場合、電源回路２１は交流電源の接続を検出して電池の充電回路に接続し、電源２２の充電を可能にする。
【００２１】
通信Ｉ/Ｆ２７は、スマートフォンやＰＣ等の画像データ出力器１１から画像データの受信等を行う。通信Ｉ/Ｆ２７は例えば無線ＬＡＮ、Bluetooth（登録商標）、ＮＦＣ（Near Field Communication）、赤外線、３Ｇ（携帯電話）、又は、ＬＴＥ（Long Term Evolution）等の通信規格に対応した通信装置である。また、このような無線通信の他、有線ＬＡＮ、ＵＳＢケーブルなどを用いた有線通信に対応した通信装置であっても良い。
【００２２】
ＲＯＭ２８は、ＨＨＰ２０のハードウェア制御を行うファームウェアや、ＩＪ記録ヘッド２４の駆動波形データ（液滴を吐出するための電圧変化を規定するデータ）や、ＨＨＰ２０の初期設定データ等を格納している。
【００２３】
ＤＲＡＭ２９は通信Ｉ/Ｆ２７が受信した画像データを記憶したり、ＲＯＭ２８から展開されたファームウェアを格納したりするために使用される。したがって、ＣＰＵ３３がファームウェアを実行する際のワークメモリとして使用される。
【００２４】
ナビゲーションセンサ３０は、所定のサイクル時間毎にＨＨＰ２０の移動量を検出するセンサである。ナビゲーションセンサ３０は、例えば、発光ダイオード（ＬＥＤ）やレーザ等の光源と、印刷媒体１２を撮像する撮像センサを有している。ＨＨＰ２０が印刷媒体１２上を走査されると、印刷媒体１２の微小なエッジが次々に検出され（撮像され）エッジ間の距離を解析することで移動量が得られる。実施形態では、ナビゲーションセンサ３０は、ＨＨＰ２０の底面に１つだけ搭載されている。従来は２つであった。ただし、説明のためナビゲーションセンサ３０が２つあるＨＨＰ２０について説明する場合がある。なお、ナビゲーションセンサ３０として、さらに多軸の加速度センサを用いても良く、ＨＨＰ２０は加速度センサのみでＨＨＰ２０の移動量を検出しても良い。
【００２５】
ジャイロセンサ３１は、印刷媒体１２に垂直な軸を中心にＨＨＰ２０が回転した際の角速度を検出するセンサである。詳細は後述される。
【００２６】
ＯＰＵ２６は、ＨＨＰ２０の状態を表示するＬＥＤ、ユーザがＨＨＰ２０に印刷を指示するためのスイッチ等を有している。ただし、これに限定されるものではなく、液晶ディスプレイを有していても良く、さらにタッチパネルを有していても良い。また、音声入力機能を有していても良い。
【００２７】
ＩＪ記録ヘッド駆動回路２３は上記の駆動波形データを用いて、ＩＪ記録ヘッド２４を駆動するための駆動波形（電圧）を生成する。インクの液滴のサイズ等に応じた駆動波形を生成できる。
【００２８】
ＩＪ記録ヘッド２４は、インクを吐出するためのヘッドである。図ではＣＭＹＫの４色のインクを吐出可能になっているが、単色でも良く５色以上の吐出が可能でも良い。色毎に一列（二列以上でも良い）に列状に並んだ複数のインク吐出用のノズル６１（吐出ノズルの一例）が配置されている。また、インクの吐出方式はピエゾ方式でもサーマル方式でも良く、この他の方式でも良い。ＩＪ記録ヘッド２４は、ノズル６１からインク等の液体を吐出・噴射する機能部品である。吐出される液体は、ＩＪ記録ヘッド２４から吐出可能な粘度や表面張力を有するものであれば良く、特に限定されないが、常温、常圧下において、または加熱、冷却により粘度が３０〔mPa・s〕以下となるものであることが好ましい。より具体的には、水や有機溶媒等の溶媒、染料や顔料等の着色剤、重合性化合物、樹脂、界面活性剤等の機能性付与材料、ＤＮＡ、アミノ酸やたんぱく質、カルシウム等の生体適合材料、天然色素等の可食材料、などを含む溶液、懸濁液、エマルジョンなどであり、これらは例えば、インクジェット用インク、表面処理液、電子素子や発光素子の構成要素や電子回路レジストパターンの形成用液、３次元造形用材料液等の用途で用いることができる。
【００２９】
制御部２５はＣＰＵ３３を有し、ＨＨＰ２０の全体を制御する。制御部２５は、ナビゲーションセンサ３０により検出される移動量及びジャイロセンサ３１により検出される角速度を元に、ＩＪ記録ヘッド２４の各ノズルの位置と、その位置に応じて形成する画像の決定、後述する吐出ノズル可否判定等を行う。制御部２５について詳細は次述する。
【００３０】
＜制御部のハードウェア構成＞
図３は、制御部２５のハードウェア構成の一例を説明するブロック図である。制御部２５はＳｏＣ（System on a Chip）５０とＡＳＩＣ（Application Specific Integrated Circuit）/ＦＰＧＡ（Field-Programmable Gate Array）４０を有している。ＳｏＣ５０とＡＳＩＣ/ＦＰＧＡ４０はバス４６，４７を介して通信する。ＡＳＩＣ/ＦＰＧＡ４０はどちらの実装技術で設計されても良いことを意味し、ＡＳＩＣ/ＦＰＧＡ４０以外の他の実装技術で構成されて良い。また、ＳｏＣ５０とＡＳＩＣ/ＦＰＧＡ４０を別のチップにすることなく１つのチップや基板で構成してもよい。或いは、３つ以上のチップや基板で実装してもよい。
【００３１】
ＳｏＣ５０は、バス４７を介して接続されたＣＰＵ３３、位置算出回路３４、メモリＣＴＬ（コントローラ）３５、及びＲＯＭ ＣＴＬ（コントローラ）３６等の機能を有している。なお、ＳｏＣ５０が有する構成要素はこれらに限られない。
【００３２】
また、ＡＳＩＣ/ＦＰＧＡ４０は、バス４６を介して接続されたＩｍａｇｅ ＲＡＭ３７、ＤＭＡＣ３８、回転器３９、割込みコントローラ４１、ナビゲーションセンサＩ/Ｆ４２、印字/センサタイミング生成部４３、ＩＪ記録ヘッド制御部４４及びジャイロセンサＩ/Ｆ４５を有している。なお、ＡＳＩＣ/ＦＰＧＡ４０が有する構成要素はこれらに限られない。ここで、ＩＪ記録ヘッド制御部４４は「吐出制御部」の一例である。
【００３３】
ＣＰＵ３３は、ＲＯＭ２８からＤＲＡＭ２９に展開されたファームウェア（プログラム）などを実行し、ＳｏＣ５０内の位置算出回路３４、メモリＣＴＬ３５、及び、ＲＯＭ ＣＴＬ３６等の動作を制御する。また、ＡＳＩＣ/ＦＰＧＡ４０内のＩｍａｇｅ ＲＡＭ３７、ＤＭＡＣ３８、回転器３９、割込みコントローラ４１、ナビゲーションセンサＩ/Ｆ４２、印字/センサタイミング生成部４３、ＩＪ記録ヘッド制御部４４及びジャイロセンサＩ/Ｆ４５等の動作を制御する。
【００３４】
位置算出回路３４は、ナビゲーションセンサ３０が検出するサンプリング周期毎の移動量及びジャイロセンサ３１が検出するサンプリング周期毎の角速度に基づいてＨＨＰ２０の位置（座標情報）を算出する。ＨＨＰ２０の位置とは、厳密にはノズル６１の位置であるが、ナビゲーションセンサ３０のある位置が分かればノズル６１の位置を算出できる。実施形態では、特に断らない限りナビゲーションセンサ３０の位置としてナビゲーションセンサＳ０の位置をいう。また、位置算出回路３４は目標吐出位置を算出する。なお、位置算出回路３４をＣＰＵ３３がソフト的に実現しても良い。
【００３５】
ナビゲーションセンサ３０の位置は、後述するように所定の原点（印刷が開始される時のＨＨＰ２０の初期位置）等を基準に算出されている。また、位置算出回路３４は、過去の位置と最も新しい位置の差に基づいて移動方向や加速度を推定し、次回の吐出タイミングにおけるナビゲーションセンサ３０の位置を予測することができる。こうすることで、ユーザの走査に対する遅れを抑制してインクを吐出できる。
【００３６】
メモリＣＴＬ３５は、ＤＲＡＭ２９とのインタフェースであり、ＤＲＡＭ２９に対しデータを要求し、取得したファームウェアをＣＰＵ３３に送出したり、取得した画像データをＡＳＩＣ/ＦＰＧＡ４０に送出したりする。
【００３７】
ＲＯＭ ＣＴＬ３６は、ＲＯＭ２８とのインタフェースであり、ＲＯＭ２８に対しデータを要求し、取得したデータをＣＰＵ３３やＡＳＩＣ/ＦＰＧＡ４０に送出する。
【００３８】
Ｉ２Ｃ ＣＴＬ６９は、ＮＶＲＡＭ６７とのインタフェースである。但し、Ｉ２Ｃに限定されるものではなく、ＳＰＩ（Serial Peripheral Interface）やパラレルバス等のインタフェースを用いても良い。
【００３９】
回転器３９は、ＤＭＡＣ３８が取得した画像データを、インクを吐出するヘッド、ヘッド内のノズル位置、及び、取り付け誤差等によるヘッド傾きに応じて回転させる。ＤＭＡＣ３８は回転後の画像データをＩＪ記録ヘッド制御部４４へ出力する。
【００４０】
Ｉｍａｇｅ ＲＡＭ３７はＤＭＡＣ３８が取得した画像データを一時的に格納する。すなわち、ある程度の画像データがバッファリングされ、ＨＨＰ２０の位置に応じて読み出される。
【００４１】
ＩＪ記録ヘッド制御部４４は、画像データ（ビットマップデータ）にディザ処理などを施して大きさと密度で画像を表す点の集合に画像データを変換する。これにより、画像データは吐出位置と点のサイズのデータとなる。ＩＪ記録ヘッド制御部４４は点のサイズに応じた制御信号をＩＪ記録ヘッド駆動回路２３に出力する。ＩＪ記録ヘッド駆動回路２３は上記のように制御信号に対応した駆動波形データを用いて、駆動波形（電圧）を生成する。
【００４２】
ナビゲーションセンサＩ/Ｆ４２は、ナビゲーションセンサ３０と通信し、ナビゲーションセンサ３０からの情報として移動量ΔＸ´、ΔＹ´（これらについては後述する）を受信し、その値を内部レジスタに格納する。
【００４３】
印字/センサタイミング生成部４３は、ナビゲーションセンサＩ/Ｆ４２とジャイロセンサＩ/Ｆ４５が情報を読み取るタイミングを通知し、ＩＪ記録ヘッド制御部４４に駆動タイミングを通知する。情報を読み取るタイミングの周期はインクの吐出タイミングの周期よりも長い。ＩＪ記録ヘッド制御部４４は吐出ノズル可否判定を行い、インクを吐出すべき目標吐出位置があればインクを吐出し、目標吐出位置がなければ吐出しないと判定する。
【００４４】
ジャイロセンサＩ/Ｆ４５は印字/センサタイミング生成部４３により生成されたタイミングになるとジャイロセンサ３１が検出する角速度を取得してその値をレジスタに格納する。
【００４５】
割込みコントローラ４１は、ナビゲーションセンサＩ/Ｆ４２がナビゲーションセンサ３０との通信が完了したことを検知して、ＳｏＣ５０へそれを通知するための割込み信号を出力する。ＣＰＵ３３はこの割込みにより、ナビゲーションセンサＩ/Ｆ４２が内部レジスタに記憶するΔＸ´、ΔＹ´を取得する。その他、エラー等のステータス通知機能も有する。ジャイロセンサＩ/Ｆ４５に関しても同様に、割込みコントローラ４１はＳｏＣ５０に対し、ジャイロセンサ３１との通信が終了したことを通知するための割込み信号を出力する。
【００４６】
＜ジャイロセンサによる検出原理＞
図４は、ジャイロセンサ３１が角速度を検出する原理を説明する図である。移動している物体に回転が加わると、物体の移動方向と回転軸の両方に直行する方向にコリオリ力が発生する。
【００４７】
物体を移動させるため、ジャイロセンサ３１ではＭＥＭＳ（Micro Electro Mechanical Systems）素子を振動させることで速度ｖ（ベクトル）を発生させる。振動している質量ｍのＭＥＭＳ素子に外部から角速度ω（ベクトル）の回転が加わると、ＭＥＭＳ素子にコリオリ力が加わる。コリオリ力Ｆは以下のように表すことができる。
Ｆ＝−２ｍΩ×ｖ
なお、「×」はベクトルの外積を表し、上記のように物体の移動方向と回転軸に直交する方向がコリオリ力Ｆの方向である。ＭＥＭＳ素子は例えば櫛歯構造の電極を有しており、ジャイロセンサ３１はコリオリ力Ｆにより発生した変位を静電容量の変化として捉える。コリオリ力Ｆの信号はジャイロセンサ３１内で増幅されフィルタリングされた後、角速度に演算されて出力される。すなわち、Ｆ，ｍ、ｖが既知なので角速度ωを取り出すことができる。
【００４８】
＜ナビゲーションセンサのハードウェア構成＞
図５は、ナビゲーションセンサのハードウェア構成の構成例を示す図である。ナビゲーションセンサ３０は、Ｈｏｓｔ Ｉ/Ｆ３０１、イメージプロセッサ３０２、ＬＥＤドライバ３０３、２つのレンズ３０４、３０６及び、イメージアレイ３０５を有する。ＬＥＤドライバ３０３は、ＬＥＤと制御回路が一体となっておりイメージプロセッサ３０２からの命令によりＬＥＤ光を照射する。イメージアレイ３０５は、レンズ３０４を介して印刷媒体１２からのＬＥＤ光の反射光を受光する。２つのレンズ３０４，３０６は、印刷媒体１２の表面に対して光学的に焦点が合うように設置されている。
【００４９】
イメージアレイ３０５は、ＬＥＤ光の波長に感度を有するフォトダイオード等を有し、受光したＬＥＤ光からイメージデータを生成する。イメージプロセッサ３０２はイメージデータを取得して、イメージデータからナビゲーションセンサの移動距離（上記のΔＸ´、ΔＹ´）を算出する。イメージプロセッサ３０２は、算出した移動距離を、ホストＩ/Ｆ３０１を介して制御部２５へ出力する。
【００５０】
光源として使用される発光ダイオード(ＬＥＤ)は、表面が粗い印刷媒体１２、例えば紙を使用する場合に有用である。これは、表面が粗い場合、影が発生するため、その影を特徴部分として、Ｘ軸方向及びＹ軸方向の移動距離を正確に算出することができる。一方、表面が滑らか、或いは透明な印刷媒体１２に対しては、光源としてレーザ光を発生させる半導体レーザ(ＬＤ)を使用することができる。半導体レーザで、印刷媒体１２上に例えば縞模様等を形成することで特徴部分を作ることができ、それを基に正確に移動距離を算出することができる。
【００５１】
＜ナビゲーションセンサの動作＞
次に、図６を用いて、ナビゲーションセンサ３０の動作について説明する。図６はナビゲーションセンサ３０による移動量の検出方法の一例を説明する図であり、（ａ）は印刷媒体への光の照射の様子を説明する図、（ｂ）はイメージデータの一例を示す図である。
【００５２】
ＬＥＤドライバ３０３が照射した光は、レンズ３０６を介して印刷媒体１２の表面に照射される。印刷媒体１２の表面は、図６（ａ）に示すように様々な形状の微小な凹凸を有している。このため、様々な形の影が発生する。
【００５３】
イメージプロセッサ３０２は、予め決められたサンプリングタイミング毎に、レンズ３０４及びイメージアレイ３０５を介して反射光を受光し、イメージデータ３１０を取得する。図６（ｂ）に示すように生成したイメージデータ３１０を、イメージプロセッサ３０２は規定の分解能単位でマトリクス化する。すなわち、イメージデータ３１０を複数の矩形領域に分割する。
【００５４】
そして、イメージプロセッサ３０２は、前回のサンプリングタイミングで得られたイメージデータ３１０と、今回のサンプリングタイミングで得られたイメージデータ３１０とを比較してイメージデータ３１０が移動した矩形領域の数を検出し、それを移動距離として算出する。図６（ｂ）で図示するΔＸ方向にＨＨＰ２０が移動したとする。ｔ＝０とｔ＝１のイメージデータ３１０を比較すると、右端にある形状が中央の形状と一致する。したがって、形状は−Ｘ方向に移動しているので、ＨＨＰ２０がＸ方向に一マス分移動したことが分かる。時刻ｔ＝１とｔ＝２についても同様である。
【００５５】
＜ＩＪ記録ヘッド駆動回路の構成＞
図７は、ＩＪ記録ヘッド駆動回路２３の構成の一例を説明するブロック図である。まず、ＩＪ記録ヘッド２４は、複数のノズル６１を備え、各ノズル６１にはアクチュエータが設けられている。アクチュエータは、サーマル方式、ピエゾ方式のいずれであっても良い。サーマル方式は、ノズル内のインクに熱を与えて膨張させ、この膨張によりノズル６１からインク滴を吐出させるものである。ピエゾ方式は、圧電素子によりノズル壁を押し、内部のインクを押し出すことによりインク滴を吐出させるものである。
【００５６】
ＩＪ記録ヘッド駆動回路２３は、アナログスイッチ２３１と、レベルシフタ２３２と、階調デコーダ２３３と、ラッチ２３４と、シフトレジスタ２３５とを備えている。ＩＪ記録ヘッド制御部４４は、ＩＪ記録ヘッド駆動回路２３に対し、ＩＪ記録ヘッド２４のノズル６１の数（アクチュエータの数も同じ）分のシリアルデータである画像データＳＤを、画像データ転送クロックＳＣＫによってシフトレジスタ２３５に転送する。
【００５７】
転送が終了すると、ＩＪ記録ヘッド制御部４４は、画像データラッチ信号ＳＬｎによりノズル毎に設けられたラッチ２３４に各画像データＳＤを記憶させる。
【００５８】
ＩＪ記録ヘッド制御部４４は、画像データＳＤをラッチさせた後、アナログスイッチ２３１へ各階調値のインク滴を各ノズルから吐出させるためのヘッド駆動波形Ｖｃｏｍを出力する。このとき、ＩＪ記録ヘッド制御部４４は、階調デコーダ２３３に対してヘッド駆動マスクパターンＭＮを階調制御信号として与えるが、そのヘッド駆動マスクパターンＭＮを駆動波形のタイミングに合わせて選択するように遷移させる。
【００５９】
階調デコーダ２３３は、階調制御信号とラッチされた画像データとを論理演算し、レベルシフタ２３２は、論理演算した得られた論理レベル電圧信号を、アナログスイッチ２３１を駆動できる電圧レベルまで昇圧する。
【００６０】
アナログスイッチ２３１は、昇圧された電圧信号を受け付けＯＮ／ＯＦＦすることにより、ＩＪ記録ヘッド２４のアクチュエータへ供給する駆動波形ＶｏｕｔＮが各ノズルで異なる波形となる。ＩＪ記録ヘッド２４は、この駆動波形に基づきインク滴を吐出させ、印刷媒体１２上に画像を形成する。
【００６１】
なお、図７の構成及びその説明は、インクジェット方式のプリンタで一般に採用されている構成である。インク滴を吐出できれば、図７の構成に限られずＨＨＰ２０に搭載されてよい。
【００６２】
＜ＩＪ記録ヘッドにおけるノズル位置について＞
次に、図８を用いて、ＩＪ記録ヘッド２４におけるノズル位置等について説明する。図８（ａ）は、ＨＨＰ２０の平面図の一例である。図８（ｂ）はＩＪ記録ヘッド２４のみを説明する図の一例である。図示されている面が印刷媒体１２に対向する面である。
【００６３】
実施形態に係るＨＨＰ２０は、１つのナビゲーションセンサＳ０を有している。図８（ａ）のＳ１は、説明の便宜上、ナビゲーションセンサ３０が２つある場合の設置位置を示す。ナビゲーションセンサ３０が２つある場合の、２つのナビゲーションセンサＳ０，Ｓ１の間の長さは距離Ｌである。距離Ｌは長いほどよい。これは、距離Ｌが長いほど検出可能な最小の回転角θが小さくなり、ＨＨＰ２０の位置の誤差が少なくなるからである。
【００６４】
ナビゲーションセンサ３０からＩＪ記録ヘッド２４までの距離はそれぞれ距離ａ、ｂである。距離ａと、距離ｂは等しくてもよいし、ゼロでもよい（ＩＪ記録ヘッド２４に接している）。また、ナビゲーションセンサ３０が１つだけの場合、ナビゲーションセンサＳ０はＩＪ記録ヘッド２４の周囲の任意の場所に配置される。したがって、図示するナビゲーションセンサＳ０の位置は一例である。ただし、ＩＪ記録ヘッド２４とナビゲーションセンサＳ０の距離が短いことでＨＨＰ２０の底面のサイズを削減しやすくなる。
【００６５】
図８（ｂ）に示すように、ＩＪ記録ヘッド２４の端から最初のノズル６１までの距離は距離ｄ、隣接するノズル間の距離は距離ｅである。ａ〜ｅの値はＲＯＭ２８等に予め記憶されている。
【００６６】
位置算出回路３４等がナビゲーションセンサＳ０の位置を算出すれば、距離ａ（距離ｂ）、距離ｄ及び距離ｅを用いて、位置算出回路３４はノズル６１の位置を算出できる。
【００６７】
＜印刷媒体１２におけるＨＨＰ２０の位置について＞
図９は、実施形態に係るＨＨＰの座標系と位置の算出方法の一例を説明する図であり、（ａ）はＨＨＰのＸ座標を説明する図、（ｂ）はナビゲーションセンサが検出する移動量を示す図である。
【００６８】
実施形態では、印刷媒体１２に水平な方向をＸ軸、垂直な方向をＹ軸に設定する。原点は印刷が開始された際のナビゲーションセンサＳ０の位置である。この座標を印刷媒体座標と称することにする。これに対し、ナビゲーションセンサＳ０は図９の座標軸（Ｘ´軸、Ｙ´軸）で移動量を出力する。すなわち、ノズル６１の配列方向をＹ´軸、Ｙ´軸に直交する方向をＸ´軸として移動量を出力する。
【００６９】
図９（ａ）に示したように、印刷媒体１２に対しＨＨＰ２０が時計回りにθ回転している場合を例にして説明する。ユーザがＨＨＰ２０を印刷媒体座標に対し全く傾けることなく走査させることは困難で、ゼロでないθが生じると考えられる。全く回転していなければ、Ｘ＝Ｘ´、Ｙ＝Ｙ´である。しかし、ＨＨＰ２０が印刷媒体１２に対し回転角θ、回転した場合、ナビゲーションセンサＳ０の出力とＨＨＰ２０の印刷媒体１２における実際の位置が一致しなくなる。回転角θは時計回りが正、Ｘ、Ｘ´は右方向が正、Ｙ、Ｙ´は上方向が正である。
【００７０】
図９（ａ）では回転角θのＨＨＰ２０がＸ方向にのみ同じ回転角θのまま移動した場合のナビゲーションセンサＳ０が検出する移動量ΔＸ´、ΔＹ´とＸ，Ｙの対応を示している。なお、ナビゲーションセンサ３０が２つある場合、相対位置は固定なので２つのナビゲーションセンサ３０の出力（移動量）は同じである。ナビゲーションセンサＳ０のＸ座標はＸ１＋Ｘ２であり、Ｘ１＋Ｘ２はΔＸ´、ΔＹ´及び回転角θから求められる。
【００７１】
図９（ｂ）は回転角θのＨＨＰ２０がＹ方向にのみ同じ回転角θのまま移動した場合のナビゲーションセンサＳ０が検出する移動量ΔＸ´、ΔＹ´とＸ，Ｙの対応を示している。ナビゲーションセンサＳ０のＹ座標はＹ１＋Ｙ２であり、Ｙ１＋Ｙ２は−ΔＸ´、ΔＹ´及び回転角θから求められる。
【００７２】
したがって、ＨＨＰ２０がＸ方向及びＹ方向に回転角θのまま移動した場合、ナビゲーションセンサＳ０が出力するΔＸ´、ΔＹ´は印刷媒体座標のＸ，Ｙに以下のように変換できる。
Ｘ＝ΔＸ´cosθ＋ΔＹ´sinθ  …（１）
Ｙ＝−ΔＸ´sinθ＋ΔＹ´cosθ  …（２）
<<回転角θの検出方法>>
実施形態では、回転角θをジャイロセンサ３１の出力により位置算出回路３４が求める。しかしながら、距離Ｌが長い方が位置を高精度に求められることを示すため、ナビゲーションセンサ３０が２つある場合の回転角θの求め方を説明する。
【００７３】
図１０は、印刷中に生じるＨＨＰ２０の回転角ｄθの求め方の一例を説明する図である。回転角ｄθは２つのナビゲーションセンサＳ０，Ｓ１が検出する移動量ΔＸ´を用いて算出される。印刷媒体１２の上側のナビゲーションセンサＳ０が検出する移動量ΔＸ´0、ナビゲーションセンサＳ１が検出する移動量をΔＸ´1とする。なお、図１０ではすでに得られている回転角をθとしている。
【００７４】
ＨＨＰ２０が平行移動しながらｄθ回転した場合、移動量ΔＸ´0とΔＸ´1は一致しない。しかし、どちらの出力も２つのナビゲーションセンサＳ０，Ｓ１を結ぶ直線に垂直な方向の移動量なので、移動量ΔＸ´0とΔＸ´1の差は「ΔＸ´0−ΔＸ´1」として求めることができる。この差はＨＨＰ２０がｄθ回転したことにより生じた値である。また、「ΔＸ´0−ΔＸ´1」、Ｌ、及び、ｄθに図１０に示す関係があることから、ｄθは以下のように表すことができる。
ｄθ＝arcsin｛（ΔＸ´0−ΔＸ´1）/Ｌ｝  …（３）
位置算出回路３４がこのｄθを積算することで回転角θを求めることができる。式（１）（２）に示すように、回転角θは位置の算出に用いられるので、回転角θが位置の精度に影響する。また、式（３）から分かるように、より小さいｄθを検出するには距離Ｌを大きくすることが好ましい。したがって、距離Ｌが位置の精度に影響するが、距離Ｌを大きくするとＨＨＰ２０の底面積が大きくなり、印刷可能範囲５０１が小さくなる。
【００７５】
続いて、ジャイロセンサ３１の出力を用いた回転角θの算出方法を説明する。ジャイロセンサ３１の出力は角速度ωである。
ω=dθ/dt
であるから、ｄｔをサンプリング周期とすると回転角ｄθは以下で表せる。
dθ=ω×dt
したがって、現在（時間t=0〜N）の回転角θは以下のようになる。
【００７６】
【数１】
2020124842.tif 000003
このように、ジャイロセンサ３１でも回転角θを求めることができる。式（１）（２）に示すように、回転角θを用いて位置を算出できる。ナビゲーションセンサＳ０の位置を算出できれば、図８（ｂ）に示したａ〜ｅの値により、位置算出回路３４は各ノズル６１の座標を算出することができる。なお、式（１）のＸ、式（２）のＹはそれぞれサンプリング周期における変化量なのでこのＸ，Ｙを累積することで現在の位置が求められる。
【００７７】
＜目標吐出位置＞
続いて、図１１を用いて目標吐出位置について説明する。図１１は、目標吐出位置とノズル６１の位置の関係の一例を説明する図である。目標吐出位置Ｇ１〜Ｇ９は、ＨＨＰ２０がノズル６１からインクを着弾させる目標位置（画素の形成先）である。目標吐出位置Ｇ１〜Ｇ９は、ＨＨＰ２０の初期位置とＨＨＰ２０のＸ軸/Ｙ軸方向の解像度(Xdpi,Ydpi)から求めることができる。
【００７８】
例えば、解像度が３００dpiの場合、ＩＪ記録ヘッド２４の長手方向及びこれに対し垂直な方向に約0.084[mm]ごとに目標吐出位置が設定される。この目標吐出位置Ｇ１〜Ｇ９に吐出される画素があれば、ＨＨＰ２０はインクを吐出する。
【００７９】
しかし、実際には、ノズル６１と目標吐出位置が完全に一致するタイミングを捉えることは困難であるため、ＨＨＰ２０は目標吐出位置とノズル６１の現在位置との間に許容誤差６２を設けている。そして、ノズル６１の現在位置が目標吐出位置から許容誤差６２の範囲内にある場合に、ノズル６１からインクを吐出する（このような許容範囲を設けることを「吐出ノズル可否判定」という。）。
【００８０】
また、矢印６３に示すように、ＨＨＰ２０はノズル６１の移動方向と加速度を監視しており、次回の吐出タイミングのノズル６１の位置を予測している。したがって、予測された位置と許容誤差６２の範囲内を比較してインクの吐出を準備することが可能になる。
【００８１】
＜画像データ出力器とＨＨＰによる印刷動作＞
図１２は、画像データ出力器１１とＨＨＰ２０による印刷動作の一例を説明するフローチャートである。
【００８２】
まず、ステップＵ１０１において、ユーザは画像データ出力器１１の電源ボタンを押下する。画像データ出力器１１はそれを受け付け、電池等から電源が供給されて起動する。
【００８３】
続いて、ステップＵ１０２において、ユーザは画像データ出力器１１で出力したい画像を選択する。画像データ出力器１１は画像の選択を受け付ける。ワープロアプリケーションのようなソフトウェアの文書データが画像として選択されてもよいし、ＪＰＥＧ等の画像データが選択されても良い。必要であればプリンタドライバが画像データ以外のデータを画像に変更してよい。
【００８４】
続いて、ステップＵ１０３において、ユーザは選択した画像をＨＨＰ２０で印刷する操作を行う。ＨＨＰ２０は印刷ジョブの実行の要求を受け付ける。印刷ジョブの要求により画像データがＨＨＰ２０へ送信される。
【００８５】
続いて、ステップＵ１０４において、ユーザは、ＨＨＰ２０を持ち、印刷媒体１２（例えばノート）の上で初期位置を決定する。
【００８６】
続いて、ステップＵ１０５において、ユーザはＨＨＰ２０の印刷開始ボタンを押下する。ＨＨＰ２０は印刷開始ボタンの押下を受け付ける。
【００８７】
続いて、ステップＵ１０６において、ユーザはＨＨＰ２０を印刷媒体１２の上で滑らせるように自由に走査する。
【００８８】
次に、ＨＨＰ２０の動作を説明する。以下の動作はＣＰＵ３３がファームウェアを実行することで行われる。
【００８９】
ＨＨＰ２０も電源のＯＮにより起動する。
【００９０】
先ず、ステップＳ１０１において、ＨＨＰ２０のＣＰＵ３３は、ＨＨＰ２０に内蔵されている図３，４のハードウェア要素を初期化する。例えば、ナビゲーションセンサＩ/Ｆ４２やジャイロセンサＩ/Ｆ４５のレジスタを初期化したり、印字／センサタイミング生成部４３にタイミング値を設定したりする。また、ＨＨＰ２０と画像データ出力器１１との間の通信を確立する。
【００９１】
続いて、ステップＳ１０２において、ＨＨＰ２０のＣＰＵ３３は初期化が完了したかどうかを判定し、完了していない場合（ステップＳ１０２、Ｎｏ）はこの判定を繰り返す。
【００９２】
初期化が完了すると（ステップＳ１０２、Ｙｅｓ）、ステップＳ１０３において、ＨＨＰ２０のＣＰＵ３３は、ＯＰＵ２６の例えばＬＥＤ点灯によりユーザに印刷可能な状態であることを報知する。これにより、ユーザは印刷可能な状態であることを把握し、上記のように印刷ジョブの実行を要求する。
【００９３】
続いて、ステップＳ１０４において、印刷ジョブの実行の要求により、ＨＨＰ２０の通信Ｉ/Ｆ２７は画像データ出力器１１から画像データの入力を受け付け、画像が入力された旨をＯＰＵ２６のＬＥＤを点滅させる等によりユーザに対し報知する。
【００９４】
続いて、ステップＳ１０５において、ユーザが印刷媒体１２上でＨＨＰ２０の初期位置を決め印刷開始ボタンを押下すると、ＨＨＰ２０のＯＰＵ２６はこの操作を受け付け、ＣＰＵ３３がナビゲーションセンサＩ/Ｆ４２に位置（移動量）を読み取らせる。これにより、ステップＳ１００１において、ナビゲーションセンサＩ/Ｆ４２はナビゲーションセンサＳ０と通信し、ナビゲーションセンサＳ０が検出した移動量を取得しレジスタ等に格納しておく。ＣＰＵ３３はナビゲーションセンサＩ/Ｆ４２から移動量を読み出す。
【００９５】
続いて、ステップＳ０６において、ユーザが印刷開始ボタンを押下した直後に取得された移動量はゼロであるがゼロでないとしても、ＣＰＵ３３は例えば座標(0,0)の初期位置としてＤＲＡＭ２９やＣＰＵ３３のレジスタなどに格納する。
【００９６】
また、ステップＳ１０７において、初期位置を取得すると印字／センサタイミング生成部４３がタイミングの生成を開始する。印字／センサタイミング生成部４３は、初期化で設定されたナビゲーションセンサＳ０の移動量の取得タイミングに達するとナビゲーションセンサＩ/Ｆ４２にタイミングとジャイロセンサＩ/Ｆ４５にタイミングを指示する。これが周期的に行われ上記のサンプリング周期となる。
【００９７】
続いて、ステップＳ１０８において、ＨＨＰ２０のＣＰＵ３３は、移動量と角速度情報を取得するタイミングであるか否かを判定する。この判定は、割込みコントローラ４１からの通知により行うが、印字／センサタイミング生成部４３と同じタイミングをＣＰＵ３３がカウントすることで判定しても良い。
【００９８】
続いて、ステップＳ１０９において、移動量と角速度情報を取得するタイミングになると、ＨＨＰ２０のＣＰＵ３３はナビゲーションセンサＩ/Ｆ４２から移動量を取得し、ジャイロセンサＩ/Ｆ４５から角速度情報を取得する。上記のように、ジャイロセンサＩ/Ｆ４５は印字／センサタイミング生成部４３が生成するタイミングでジャイロセンサ３１から角速度情報を取得しており、ナビゲーションセンサＩ/Ｆ４２は印字／センサタイミング生成部４３が生成するタイミングでナビゲーションセンサＳ０から移動量を取得している。
【００９９】
続いて、ステップＳ１１０において、位置算出回路３４は角速度情報と移動量を用いてナビゲーションセンサＳ０の現在の位置を算出する。具体的には、位置算出回路３４は、前回のサイクルで算出した位置(Ｘ,Ｙ)と、今回取得した移動量(ΔＸ´、ΔＹ´)及び角速度情報から算出した移動距離を加えて、現在のナビゲーションセンサＳ０の位置を算出する。初期位置のみで、前回算出した位置がない場合は、初期位置に今回取得した移動量(ΔＸ´、ΔＹ´) 及び角速度情報から算出した移動距離を加えて、現在のナビゲーションセンサＳ０の位置を算出する。
【０１００】
続いて、ステップＳ１１１において、位置算出回路３４はナビゲーションセンサＳ０の現在の位置を用いて各ノズル６１の現在の位置を算出する。
【０１０１】
このように、印字／センサタイミング生成部４３により角速度情報と移動量が同時に又はほぼ同時に取得されるので、回転角と回転角が検出されたタイミングで取得された移動量でノズル６１の位置を算出できる。したがって、種類が異なるセンサの情報でノズル６１の位置が算出されても、ノズル６１の位置の精度が低下しにくい。
【０１０２】
続いて、ステップＳ１１２において、ＣＰＵ３３はＤＭＡＣ３８を制御して、算出した各ノズル６１の位置を基に、各ノズル６１の周辺画像の画像データをＤＲＡＭ２９からＩｍａｇｅ ＲＡＭ３７へ送信する。なお、回転器３９は、ユーザにより指定されたヘッド位置（ＨＨＰ２０の持ち方など）及びＩＪ記録ヘッド２４の傾きに応じて、画像を回転させる。
【０１０３】
続いて、ステップＳ１１３において、ＩＪ記録ヘッド制御部４４は周辺画像を構成する各画像要素の位置座標と、各ノズル６１の位置座標とを比較する。位置算出回路３４は、ノズル６１の過去の位置と現在の位置を用いてノズル６１の加速度を算出している。これにより、位置算出回路３４は、ナビゲーションセンサＩ/Ｆ４２が移動量を取得しジャイロセンサＩ/Ｆ４５が角速度情報を取得する周期よりも短いＩＪ記録ヘッド２４のインク吐出周期ごとにノズル６１の位置を算出している。
【０１０４】
続いて、ステップＳ１１４において、ＩＪ記録ヘッド制御部４４は、位置算出回路３４が算出するノズル６１の位置から所定範囲内に画像要素の位置座標が含まれるか否かを判定する。
【０１０５】
吐出条件を満たさない場合（ステップＳ１１５、Ｎｏ）、処理はステップＳ１０８に戻る。吐出条件を満たす場合（ステップＳ１１５、Ｙｅｓ）、ステップＳ１１５において、ＩＪ記録ヘッド制御部４４はノズル６１ごとに画像要素のデータをＩＪ記録ヘッド駆動回路２３に出力する。これにより、印刷媒体１２にはインクが吐出される。
【０１０６】
続いて、ステップＳ１１６において、ＣＰＵ３３は全画像データを出力したかを判定する。出力していない場合（ステップＳ１１６、Ｎｏ）、ステップＳ１０８〜Ｓ１１５までの処理を繰り返す。
【０１０７】
全画像データを出力した場合（ステップＳ１１６、Ｙｅｓ）、ステップＳ１１７において、ＣＰＵ３３は、例えばＯＰＵ２６のＬＥＤを点灯させユーザに印刷が終了したことを報知する。
【０１０８】
このようにして、実施形態に係るＨＨＰ２０は、画像データ出力器１１から入力した画像を印刷媒体上に印刷することができる。
【０１０９】
なお、全画像データを出力しなくても、ユーザが十分と判断した場合には、ユーザは印刷完了ボタンを押下し、ＯＰＵ２６がそれを受け付けて、印刷を終了して良い。印刷終了後、ユーザが電源をＯＦＦにすることもできるし、印刷が終了した時点で、自動で電源がＯＦＦにされるようになっていても良い。
【０１１０】
［第１の実施形態］
次に、第１の実施形態に係るＨＨＰ２０ａについて説明する。なお、既に説明した実施形態と同一の構成部についての説明は省略する。後述する第２の実施形態においても同様である。
【０１１１】
＜第１の実施形態に係るノズル位置の取得方法＞
本実施形態に係るノズル位置の取得方法について、図１３〜１４を参照して説明する。図１３は、ナビゲーションセンサの位置から所定の点の位置を取得する方法の一例を説明する図である。
【０１１２】
図１３は、ＩＪ記録ヘッド２４の印刷媒体１２に対向する面を示している。位置Ｐ０は現在のナビゲーションセンサ３０の位置を示し、位置Ｐ０の座標を（Ｘ０、Ｙ０）とする。位置Ｐは、ＩＪ記録ヘッド２４の印刷媒体１２への対向面を含む面における予め定められた所定の点の位置を示し、位置Ｐの座標を（ＸＰ、ＹＰ）とする。
【０１１３】
上述した方法で現在のナビゲーションセンサ３０の位置Ｐ０（Ｘ０、Ｙ０）と、ＩＪ記録ヘッド２４の回転角θが位置算出回路３４により算出されている場合に、位置Ｐ（ＸＰ、ＹＰ）は次式で算出することができる。
ＸＰ＝Ｘ０−ａ・ｓｉｎ（θ＋ψ）  …（４）
ＹＰ＝Ｙ０−ａ・ｓｉｎ（θ＋ψ）  …（５）
但し、距離ａはナビゲーションセンサ３０の位置Ｐ０から位置Ｐまでの距離である。また、角度ψは、ＩＪ記録ヘッド２４の印刷媒体１２への対向面を含む面内における、位置Ｐ０と位置Ｐを結ぶ線分のＩＪ記録ヘッド２４に対する傾きである。距離ａと角度ψは、予め定められている。
【０１１４】
位置Ｐを各ノズルの位置とすると、各ノズルの位置は、（４）式及び（５）式を用いて算出することができる。しかし、（４）式及び（５）式を用いる場合、ＩＪ記録ヘッド２４に含まれる全てのノズル毎に、位置Ｐ０からノズルまでの距離ａと、角度ψを予めＤＲＡＭ２９やＲＯＭ２８等のメモリに記憶しておく必要がある。そのため、メモリ容量に負荷がかかる。加えて、ＩＪ記録ヘッド２４に含まれるノズルの数だけ三角関数の演算を行う必要があるため、ＣＰＵ３３や位置算出回路３４等の演算器に演算負荷がかかる。また、高速計算に対応可能な演算器を用いると、ＨＨＰ２０ａのコストが増大する。ＩＪ記録ヘッド２４に含まれるノズルの数が増えるに従い、これらの負荷やコストの増大は、より顕著となる。
【０１１５】
そこで、本実施形態では、ＩＪ記録ヘッド２４の印刷媒体１２への対向面を含む面内に、ＩＪ記録ヘッド２４に含まれる各ノズルの位置を算出するための仮想的な基準点を設け、この基準点の位置に基づき、各ノズルの位置を取得する。
【０１１６】
図１４は、基準点を用いたノズル位置の取得方法の一例を説明する図である。図１３と同様に、図１４は、ＩＪ記録ヘッド２４の印刷媒体１２に対向する面を示している。ノズル列６５は、複数のノズル６１が配列されたノズル列を示している。一点鎖線で示した直線６５１は、ノズル列６５が含まれる直線を示している。換言すると、直線６５１は、１つのノズル列を構成する全てのノズルが線上に含まれる直線である。
【０１１７】
ノズル列６５には、ノズル列６５の一端にあるノズル６１１からノズル列６５の他端にあるノズル６１ＮまでのＮ個のノズルが含まれている。図１４に示した例では、ノズル数Ｎは７である。ノズル６１ｎは、ノズル６１１から数えてｎ番目のノズルを示している。
【０１１８】
第１基準点Ａは、直線６５１上で、ノズル６１１より外側にある点であり、その位置ＰＡの座標は（ＸＡ、ＹＡ）で表される。第２基準点Ｂは、直線６５１上で、ノズル６１Ｎより外側にある点であり、その位置ＰＢの座標（ＸＡ、ＹＡ）で表される。
【０１１９】
ここで、「ノズル列の一端にあるノズルより外側」とは、ノズル列６５の一端にあるノズル６１１から見てノズルがない側を意味し、「ノズル列の他端にあるノズルより外側」とは、ノズル列６５の他端にあるノズル６１Ｎから見てノズルがない側を意味する。
【０１２０】
第１基準点Ａ及び第２基準点Ｂは、ＩＪ記録ヘッド２４に含まれる各ノズルの位置を算出するための仮想的な基準点であり、それぞれの位置ＰＡ及びＰＢは、ナビゲーションセンサ３０により検出された移動量及びジャイロセンサ３１により検出された姿勢に基づいて、（４）式及び（５）式により算出することができる。
【０１２１】
一方、ノズル列に含まれるノズル６１ｎの位置Ｐｎの座標（Ｘｎ、Ｙｎ）は、第１基準点Ａの位置ＰＡ及び第２基準点Ｂの位置ＰＢに基づき、次の（６）式及び（７）式で取得することができる。
【０１２２】
【数２】
2020124842.tif 000004
【０１２３】
【数３】
2020124842.tif 000005
但し、距離Ｌは、第１基準点Ａから第２基準点Ｂまでの距離であり、距離Ｌｎは第１基準点Ａからノズル６１ｎまでの距離である。
【０１２４】
（６）式及び（７）式には三角関数が含まれないため、各ノズルの位置の演算負荷を低減することができ、低コストの演算器を用いた場合でも高速計算が可能となる。また、ナビゲーションセンサ３０の位置Ｐ０からノズルまでの距離ａと、角度ψをノズル毎に記憶する必要もないため、メモリ容量の負荷も低減することができる。
【０１２５】
さらに、ＩＪ記録ヘッド２４ではノズル間隔Ｅは均等であるとの条件を用い、且つ距離Ｌをノズル間隔Ｅに２のべき乗をかけた値（２５６×Ｅ等)に設定すると、（６）式を（８）式に、また（７）式を（９）式にそれぞれ変形できる。これにより、計算がより簡略化され、より高速の演算が可能となる。
【０１２６】
【数４】
2020124842.tif 000006
【０１２７】
【数５】
2020124842.tif 000007
（６）式及び（７）式では、２５６で除算する演算が含まれるため、整数で演算すると誤差が発生する可能性があるが、Ｘｎの解像度をＸＡ、ＸＢの解像度の２５６倍で演算すれば演算結果が必ず整数になり、誤差は発生しない。
【０１２８】
例えばＸＡ、ＸＢの解像度が２４００ｄｐｉである場合に、Ｘｎの解像度を６１４４００ｄｐｉで演算すれば、（８）式を（１０）式に、（９）式を（１１）式にそれぞれ変形できる。なお、（１０）式及び（１１）式におけるＸｎの添え字のカッコ内には、解像度（６１４４００ｄｐｉ等）が示されている。以下においても同様である。
【０１２９】
【数６】
2020124842.tif 000008
【０１３０】
【数７】
2020124842.tif 000009
そして、２４００ｄｐｉ単位の値を得るには、演算結果を２５６で除算すれば良い。つまり、次式で算出できる。
Ｘｎ（２４００ｄｐｉ）＝Ｘｎ（６１４４００ｄｐｉ）／２５６
（１０）式及び（１１）式を用いることで、さらなる演算の高速化と、演算誤差の低減を図ることができる。
【０１３１】
＜演算上の桁落ちによる印刷画像の白スジの発生＞
上述したように、仮想的に設けた第１基準点Ａ及び第２基準点を用いてノズル位置を取得すると、メモリ容量及び演算の負荷を低減することができる。しかし、その一方で、演算上の桁落ちに起因して、印刷画像に白スジ（インクが吐出されない部分）が発生する場合がある。以下に、白スジの発生原理を説明する。
【０１３２】
図１５は、印刷画像における白スジの発生原理を説明する図であり、（ａ）は印刷画像の画素とノズルとの関係を示す図、（ｂ）は印刷後の画像のドットを示す図である。図１５に矢印で示したＸ軸は、ＨＨＰ２０ａが移動される方向を示し、Ｙ軸はＸ軸と直交する方向を示す。ノズルの配列方向はＹ軸に一致するところ、図１５（ａ）では、ＩＪ記録ヘッド２４の移動面内での傾きにより、ノズルの配列方向がＹ軸に対してわずかに傾いている状態を示している。
【０１３３】
説明を簡単にするため、以下の条件下で、（１０）式及び（１１）式を用いてノズルの位置を取得した場合を説明する。
（条件）
ノズルの解像度                        ６００ｄｐｉ
印刷画像の解像度                      ６００ｄｐｉ
ノズル数                              １２個
第１基準点Ａの位置                    ノズル番号１の位置
第２基準点Ｂの位置                    ノズル番号９の位置
第１基準点Ａと第２基準点Ｂの設定単位  ２４００ｄｐｉ
第１基準点Ａと第２基準点Ｂとの距離    ２４００ｄｐｉ単位で３２ドット
図１５（ａ）において、四角の図形は印刷画像の画素を表し、１つの四角が１画素に該当する。最も正のＹ方向側にある画素が１画素目で、負のＹ方向側に向かうにつれ、２画素目、３画素目と、画素番号が増えるものとする。
【０１３４】
また、黒丸はＩＪ記録ヘッド２４においてインクが吐出されるノズルを示し、白丸はＩＪ記録ヘッド２４においてインクが吐出されないノズルを示している。黒丸及び白丸の内部に示した数字はノズル番号を表している。
【０１３５】
ノズル番号１のノズルは第１基準点Ａと一致しているため、２４００ｄｐｉで設定されるのに対し、画像の解像度は６００ｄｐｉであるため、Ｙ方向において、１画素に対して４通りの位置に吐出でき、図１５（ａ）では４通りのパターンとして、印刷画像の画素とノズルとの関係のパターン（Ａ）〜（Ｄ）が示されている。
【０１３６】
Ｘ方向に対してＩＪ記録ヘッド２４が垂直に配置された場合、第１基準点Ａと第２基準点Ｂとの間隔は、２４００ｄｐｉ単位で３２ドットとなる。これに対して、ＩＪ記録ヘッド２４がわずかに傾き、第１基準点Ａと第２基準点Ｂとの間隔が２４００ｄｐｉ単位で３１ドットとなった場合、ノズル位置はＹ方向において整数値でしか取得できないため、Ｙ方向の隣り合うノズルで、３ドット分の間隔にしかならない場合がある。
【０１３７】
一例として、図１５（ａ）の例では、パターン（Ａ）におけるノズル番号１とノズル番号２との間の間隔、並びにパターン（Ｂ）におけるノズル番号９とノズル番号１０との間の間隔は、それぞれ３ドットとなっている。その結果、パターン（Ａ）では、１画素目にノズル番号１とノズル番号２のノズルが配置されている。１つの画素に２つのノズルからインクの吐出は行われないため、ノズル番号２のノズルからはインクが吐出されなくなる。同様に、パターン（Ｂ）では、９画素目に対してノズル番号９とノズル番号１０のノズルが配置され、ノズル番号１０のノズルからはインクが吐出されなくなる。
【０１３８】
図１５（ｂ）は、図１５（ａ）におけるパターン（Ａ）の状態が維持されたまま、ＨＨＰ２０ａがＸ方向に移動され、印刷が行われた場合の印刷画像のドットを示している。ノズル番号２のノズルからインクが吐出されないため、ノズル番号２の位置に白スジ１５１が発生している。
【０１３９】
図１５に例示したように、第１基準点Ａ、又は第２基準点Ｂに一致するノズルの次のノズルが、インクを吐出するノズルとして選択されないノズル（以下、非吐出ノズルという）になりやすい。これは、ノズル番号１のノズルは第１基準点Ａと一致し、ノズル番号９のノズルは第２基準点Ｂと一致しているため、ノズル番号１のノズルとノズル番号９の算出において演算誤差が発生しないことに起因する。
【０１４０】
具体的には、図１５（ａ）のパターン（Ａ）では、第１基準点ＡのＹ方向の位置が２４００ｄｐｉ単位で４の倍数、つまり、ノズルの解像度である６００ｄｐｉ単位で小数部分がゼロになるため、Ｙ方向におけるノズル番号１のノズルの位置Ｙ１も６００ｄｐｉ単位で小数部分がゼロ、つまり、Ｙ１＝０となる。
【０１４１】
一方、（９）式に従うと、ノズル番号２のノズルの位置Ｙ２は、Ｙ２＝Ｙ１＋（３１−０）／３２＝０．９６８７５となり、繰り上がりが発生せず、Ｙ２＝０となる。従って、１画素目に対してノズル番号１とノズル番号２のノズルの両者が配置され、ノズル番号２のノズルからはインクが吐出されなくなる。
【０１４２】
同様に、パターン（Ｂ）では、ノズル番号９のノズルの位置Ｙ９は小数部分がゼロになるため、ノズル番号１０のノズルの位置Ｙ１０では繰り上がりが発生せずにＹ１０＝Ｙ９＝８となって、ノズル番号１０のノズルからはインクが吐出されなくなる。
【０１４３】
また、第１基準点Ａ及び第２基準点Ｂだけでなく、第１基準点Ａと第２基準点Ｂの中間点に一致するノズルの次のノズルにおいても、インクを吐出するノズルとして選択されない可能性が高くなる。ここで、第１基準点Ａと第２基準点Ｂの中間点とは、第１基準点Ａから第２基準点Ｂの方向に、第１基準点Ａと第２基準点Ｂの間隔の１／２だけ離れた位置にある点をいう。
【０１４４】
第１基準点Ａと第２基準点Ｂの中間点では、（７）式におけるＬｎ＝Ｌ／２となるため、Ｙｎ＝（ＹＡ＋ＹＢ）／２となる。この時、ＹＡ＋ＹＢが２の倍数となると、Ｙｎの小数部分がゼロになるため、上述したものと同様に、次のノズルからインクが吐出されなくなる。
【０１４５】
このように、演算上の桁落ち（整数値でしか取得できないこと）により、非吐出ノズルが生じ、インクが吐出されないことで印刷画像に白スジが発生する。
【０１４６】
なお、図１５では説明を簡単にするため、ノズル数が１２個の場合を説明したが、実際のＩＪ記録ヘッドでは、一般に数百個程度の数のノズルが設けられる。ノズル数が多くなった場合でも、上述したものと同様の原理で非吐出ノズルが生じる。
【０１４７】
以上のことから、本実施形態では、非吐出ノズルに起因する白スジを低減させるために、ＩＪ記録ヘッド２４に含まれる全てのノズルが、第１基準点Ａ、第２基準点Ｂ、及び第１基準点Ａと第２基準点Ｂの中間点に一致しないように、第１基準点Ａ及び第２基準点Ｂの位置を決定する。以下に、この決定方法とその作用を説明する。
【０１４８】
なお、上述した例では、説明を簡単にするためにノズル数を１２個としたが、以下では、実際に則したノズル数として３２０個の場合を例に説明する。
【０１４９】
＜第１の実施形態に係る第１基準点及び第２基準点の位置の決定方法＞
図１６は、本実施形態に係る第１基準点及び第２基準点の位置の決定方法の一例を説明する図である。図１３、図１４と同様に、図１６はＩＪ記録ヘッド２４の印刷媒体１２に対向する面を示している。一点鎖線で示した直線６５１は、ノズル列６５が含まれる直線を示し、ノズル列６５には、ノズル６１１〜６１３２０が配列されている。また、ノズル数Ｎは３２０でノズル同士の間隔はＥである。
【０１５０】
第１基準点Ａは、直線６５１上で、ノズル列６５の一端にあるノズル６１１より外側にノズル間隔Ｅだけ離れた位置にある。つまり、第１基準点Ａの位置の座標（ＸＡ、ＹＡ）は、距離ａ＝Ｅ、角度ψ＝０として（４）式及び（５）式により算出され、決定されている。
【０１５１】
第１基準点Ａの位置をこのように決定することで、ノズル列６５に含まれるノズルのうちで、第１基準点Ａに一致するノズルをなくすことができる。そして、第１基準点Ａに一致するノズルとその隣のノズルが同じ画素（１つの画素に該当する面積内）に配置されることで、隣のノズルが非吐出ノズルになることを防ぐことができる。
【０１５２】
一方、第２基準点Ｂは、直線６５１上で、第１基準点Ａの位置から、ノズル列６５の他端の方向に、ノズル間隔Ｅの１０２４倍の距離だけ離れた位置にある。つまり、第２基準点Ｂの位置の座標（ＸＢ、ＹＢ）は、距離ａ＝１０２４×Ｅ、角度ψ＝０として、（４）式及び（５）式により算出され、決定されている。ここで、ノズル間隔Ｅの１０２４倍の距離は、「２×Ｅ×Ｎより長い距離で、且つＥに２のべき乗を乗算した距離」の一例である。
【０１５３】
第２基準点Ｂの位置をこのように決定することで、ノズル列６５に含まれるノズルのうちで、第２基準点Ｂに一致するノズルをなくすことができる。そして、第２基準点Ｂに一致するノズルとその隣のノズルが同じ画素に配置されることで、隣のノズルが非吐出ノズルになることを防ぐことができる。
【０１５４】
また、第１基準点Ａと第２基準点Ｂとの間の距離を、「２×Ｅ×Ｎより長い距離」とすることで、ＩＪ記録ヘッド２４の傾きのわずかな変化により、Ｙ方向における第１基準点Ａ及び第２基準点Ｂの位置が変化しやすくなる。これにより、非吐出ノズルを特定のノズルに偏らせることなく各ノズルに分散させることができる。さらに、第１基準点Ａと第２基準点Ｂとの間の距離を、「Ｅに２のべき乗を乗算した距離」とすることで、演算を簡単にし、演算速度を向上させることができる。
【０１５５】
また、一般に、第１基準点Ａと第２基準点Ｂの間の中間点ＡＢ、第１基準点Ａと中間点ＡＢの間の中間点ＡＡＢ、第１基準点Ａと中間点ＡＡＢの間の中間点ＡＡＡＢ、・・・等に一致するノズルがあると、その隣のノズルが非吐出ノズルになる確率が高くなる。これに対し、上述したように第１基準点Ａ及び第２基準点Ｂを決定することで、中間点ＡＢの位置は（ＹＡ＋ＹＢ）／２、中間点ＡＡＢの位置は（ＹＡ＋ＹＢ）／４、中間点ＡＡＡＢの位置は（ＹＡ＋ＹＢ）／８、・・・となって、算出される各位置の小数部分がゼロになる。これにより、中間点ＡＢ等の隣のノズルが非吐出ノズルになる確率を低減させることができる。
【０１５６】
＜第１の実施形態に係るＨＨＰの機能構成及び動作＞
図１７は、本実施形態に係るＨＨＰの機能構成の一例を説明するブロック図である。図１７に示すように、ＨＨＰ２０ａはＳｏＣ５０ａと、ＤＲＡＭ２９ａとを有する。ＳｏＣ５０ａに含まれるＣＰＵ３３ａは基準点位置決定部３３１を有し、また、位置算出回路３４ａはノズル位置取得部３４１を有する。ＤＲＡＭ２９ａは、ノズル数Ｎ、ノズル間隔Ｅ等のノズル情報２９１を格納している。
【０１５７】
基準点位置決定部３３１及びノズル位置取得部３４１は、それぞれメモリＣＴＬ３５を介して、ＤＲＡＭ２９ａを参照し、ノズル数Ｎ、ノズル間隔Ｅ等のノズル情報２９１を取得することができる。
【０１５８】
基準点位置決定部３３１は、上述した方法により、第１基準点Ａ及び第２基準点Ｂの位置をそれぞれ決定し、決定した結果をノズル位置取得部３４１に出力することができる。
【０１５９】
ここで、基準点位置決定部３３１は、ノズル間隔Ｅより小さい位置分解能Δｐで、第１基準点Ａ及び第２基準点Ｂの位置を決定すると好適である。このようにすることで、第１基準点Ａと第２基準点Ｂの位置データの小数部分の値がとりうる値の組み合わせ数を増やすことができる。そして、非吐出ノズルを、特定のノズルに偏らせることなく各ノズルに分散させることができる。
【０１６０】
より詳細には、以下の式を満足する位置分解能Δｐで、第１基準点Ａ及び第２基準点Ｂの位置を決定すると好適である。
（Ｅ／Δｐ）２＞Ｎ  ・・・（１２）
（１２）式を満足させることで、第１基準点Ａと第２基準点Ｂの小数部分の値がとりうる値の組み合わせ数をノズル数より多くすることができ、非吐出ノズルを、特定のノズルに偏らせることなく各ノズルに分散させることができる。
【０１６１】
このようにして、非吐出ノズルの発生確率を低減させることで、印刷画像における白スジを低減させることができる。
【０１６２】
また、ノズル位置取得部３４１は、基準点位置決定部３３１から入力した第１基準点Ａ及び第２基準点Ｂの位置に基づき、（８）式及び（９）式、或いは（１０）式及び（１１）式を用いて、ＩＪ記録ヘッド２４に含まれる各ノズルの位置を取得することができる。
【０１６３】
取得された各ノズルの位置データは、印字／センサタイミング生成部４３に出力され、ＩＪ記録ヘッド制御部４４によるインクの吐出制御に用いられる。
【０１６４】
なお、上述した例では、ＣＰＵ３３ａが基準点位置決定部３３１の機能を備え、位置算出回路３４ａがノズル位置取得部３４１を備える例を示したが、これに限定されるものではない。ノズル位置取得部３４１の機能を回転器３９等が備える構成としても良い。
【０１６５】
次に、図１８は、本実施形態に係るＨＨＰの動作の一例を示すフローチャートである。
【０１６６】
先ず、ステップＳ１８１において、ナビゲーションセンサ３０は、検出したＨＨＰ２０ａの移動量データを、ナビゲーションセンサＩ／Ｆ４２を介して基準点位置決定部３３１に出力する。
【０１６７】
続いて、ステップＳ１８２において、ジャイロセンサ３１は、検出したＨＨＰ２０ａの姿勢データを、ジャイロセンサＩ／Ｆ４５を介して基準点位置決定部３３１に出力する。
【０１６８】
続いて、ステップＳ１８３において、基準点位置決定部３３１は、ＤＲＡＭ２９ａを参照して取得したノズル数Ｎ、ノズル間隔Ｅ等のノズル情報２９１と、ＨＨＰ２０ａの移動量及び姿勢に基づき、第１基準点Ａ及び第２基準点Ｂの位置を決定する。そして、決定結果をノズル位置取得部３４１に出力する。
【０１６９】
続いて、ステップＳ１８４において、ノズル位置取得部３４１は、ＤＲＡＭ２９ａを参照して取得したノズル数Ｎ、ノズル間隔Ｅ等のノズル情報２９１と、入力した第１基準点Ａ及び第２基準点Ｂの位置に基づき、（８）式及び（９）式、或いは（１０）式及び（１１）式を用いて、ＩＪ記録ヘッド２４に含まれる各ノズルの位置を取得する。そして、取得結果を印字／センサタイミング生成部４３に出力する。
【０１７０】
続いて、ステップＳ１８５において、各ノズルの位置に基づき生成された印字／センサタイミングに応じて、ＩＪ記録ヘッド制御部４４は、ＩＪ記録ヘッド２４を制御し、印刷媒体１２にインクを吐出させる。
【０１７１】
このようにして、ＨＨＰ２０ａは、第１基準点Ａ及び第２基準点Ｂの位置に基づいて取得されたノズルの位置データを用いて、印刷媒体１２にインクを吐出し、印刷することができる。
【０１７２】
＜非吐出ノズル発生率のシミュレーション結果＞
次に、図１９は、ノズル列のノズル毎での非吐出ノズル発生率のシミュレーション結果の一例を示す図である。図１９の横軸はノズル番号を示し、縦軸は非吐出ノズルの発生率を示している。図１９では、０〜１１００番までのノズル毎での非吐出ノズルの発生率が示されている。第１基準点Ａの位置は０番目のノズルの位置に決定され、第２基準点Ｂの位置は１０２４番目のノズルの位置に決定されている。
【０１７３】
図１９に示されているように、１番目のノズル、５１３番目のノズル、１０２５番目のノズルの発生率が他のノズルに対して高くなっている。ここで、１番目のノズルは、第１基準点Ａに一致するノズルの隣のノズルであり、５１３番目のノズルは、第１基準点Ａと第２基準点Ｂの中間点に一致するノズルの隣のノズルである。また、１０２５番目のノズルは、第２基準点Ｂに一致するノズルの隣のノズルである。
【０１７４】
本実施形態に係る方法によれば、１番目のノズル、５１３番目のノズル、１０２５番目のノズルの一致しないように第１基準点Ａ及び第２基準点Ｂのそれぞれの位置を決定するため、非吐出ノズルの発生率が高いノズルを除外し、非吐出ノズルの発生率を低減させることができる。これにより、印刷画像における白スジを低減させることができる。
【０１７５】
また、図２０は、第１基準点Ａ及び第２基準点Ｂの位置の小数部分を変化させた時の非吐出ノズルの発生頻度のシミュレーション結果の一例を示すヒストグラムである。
【０１７６】
図２０の縦軸は非吐出ノズルの発生頻度を示し、発生頻度が高いものから順に、発生頻度が示されている。
【０１７７】
シミュレーションでは、解像度６００ｄｐｉ単位における第１基準点ＡのＹ座標ＹＡ＝０とし、第２基準点ＢのＹ座標ＹＢ＝１０００とし、第１基準点Ａ及び第２基準点Ｂの小数部分に疑似乱数を加え、小数部分を変化させた。点線のグラフは２４００ｄｐｉ、一点鎖線のグラフは４８００ｄｐｉ、破線のグラフは９６００ｄｐｉ、実線のグラフは１９２００ｄｐｉの解像度（位置分解能）でシミュレートした結果である。
【０１７８】
解像度が１９２００ｄｐｉの場合は、第１基準点Ａ及び第２基準点Ｂの小数部分がとりうる値が１０２４通りあり、この場合、非吐出ノズルの発生確率が概ね均等になった。
【０１７９】
単に解像度を上げるだけでは、非吐出ノズルの発生確率は低くなるものの、ＨＨＰ２０ａを移動させた際に第１基準点Ａ及び第２基準点ＢのＹ座標が全く変化しない場合には印刷画像に白スジが発生する。
【０１８０】
そこで、吐出タイミング毎、又はＸ方向に一定量移動する毎に、Ｙ座標の小数部分を異ならせるように疑似乱数等を加える。これにより、ＨＨＰ２０ａの移動中にＹ座標が全く変化しない場合においても、白スジを低減させることができる。
【０１８１】
ここで、小数部分を変化させると、決定される第１基準点Ａ及び第２基準点Ｂの位置の誤差が増大する場合がある。これを防ぐためには、第１基準点Ａ及び第２基準点Ｂの位置の算出を２４００ｄｐｉの解像度で行い、算出値の小数部分に１９２００ｄｐｉ単位で０〜７を加算して、第１基準点Ａ及び第２基準点Ｂを決定するようにすると好適である。
【０１８２】
＜効果＞
以上説明してきたように、本実施形態では、第１基準点Ａ及び第２基準点Ｂを用いて（８）式及び（９）式、又は（１０）式及び（１１）式によりノズル位置を取得する。これらの式には三角関数が含まれないため、各ノズルの位置の演算負荷を低減でき、低コストの演算器を用いた場合でも高速計算が可能となる。また、ナビゲーションセンサ３０の位置Ｐ０からノズルまでの距離ａと、角度ψをノズル毎に記憶する必要もないため、メモリ容量の負荷も低減可能となる。さらに、演算誤差の低減を図ることができる。
【０１８３】
また、本実施形態では、第１基準点Ａの位置を、直線６５１上で、ノズル列６５の一端にあるノズル６１１より外側にノズル間隔Ｅだけ離れた位置に決定する。これにより、ノズル列６５に含まれるノズルのうちで、第１基準点Ａに一致するノズルをなくすことができ、第１基準点Ａに一致するノズルの隣のノズルが非吐出ノズルになることを防ぐことができる。
【０１８４】
また、第２基準点Ｂの位置を、直線６５１上で、第１基準点Ａの位置からノズル列６５の他端の方向に、ノズル間隔Ｅの１０２４倍の距離だけ離れた位置に決定する。これにより、ノズル列６５に含まれるノズルのうちで、第２基準点Ｂに一致するノズルをなくすことができ、第２基準点Ｂに一致するノズルの隣のノズルが非吐出ノズルになることを防ぐことができる。
【０１８５】
また、第１基準点Ａと第２基準点Ｂとの間の距離を、「２×Ｅ×Ｎより長い距離」とすることで、ＩＪ記録ヘッド２４の傾きのわずかな変化に応じて、Ｙ方向における第１基準点Ａ及び第２基準点Ｂの位置が変化しやすくする。これにより、非吐出ノズルを、特定のノズルに偏らせることなく各ノズルに分散させることができる。また、第１基準点Ａと第２基準点Ｂとの間の距離を、「Ｅに２のべき乗を乗算した距離」とすることで、演算速度を向上させることができる。
【０１８６】
さらに、第１基準点Ａと第２基準点Ｂの間の中間点ＡＢ等において、算出される各位置の小数部分をゼロにすることができ、これにより、中間点等に一致するノズルの隣のノズルが非吐出ノズルになる確率を低減させることができる。
【０１８７】
また、本実施形態では、基準点位置決定部３３１は、ノズル間隔Ｅより小さい位置分解能Δｐで、第１基準点Ａ及び第２基準点Ｂの位置を決定する。これにより、第１基準点Ａと第２基準点Ｂの位置データの小数部分の値がとりうる値の組み合わせ数を増やすことができ、非吐出ノズルを、特定のノズルに偏らせることなく各ノズルに分散させることができる。
【０１８８】
さらに、（１２）式を満足する位置分解能Δｐで、第１基準点Ａ及び第２基準点Ｂの位置を決定することで、第１基準点Ａと第２基準点Ｂの小数部分の値がとりうる値の組み合わせ数をノズル数より多くすることができる。これにより、非吐出ノズルを、特定のノズルに偏らせることなく各ノズルに分散させることができる。
【０１８９】
以上のようにして、非吐出ノズルの発生確率を低減させることで、印刷画像における白スジを低減させることができる。
【０１９０】
［第２の実施形態］
次に、第２の実施形態に係るＨＨＰ２０ｂについて説明する。
【０１９１】
第１の実施形態では、ＨＨＰ２０ａの移動量及び姿勢に基づいて、ノズル列６５が含まれる直線上で、ノズル列６５の一端にあるノズルより外側にある第１基準点Ａの位置と、ノズル列６５の他端にあるノズルより外側にある第２基準点Ｂの位置とをそれぞれ決定する例を説明した。
【０１９２】
これに対し、本実施形態では、ＨＨＰ２０ｂの移動量及び姿勢に基づいて、ノズル列６５が含まれる直線上で、ノズル列６５の一端にあるノズルより外側にあり、ノズル列６５のノズル間隔Ｅだけ離れた位置にある第１基準点Ａの位置と、第１基準点Ａからノズル列６５の他端の方向に離れた位置ある第２基準点Ｂの位置とをそれぞれ決定する。
【０１９３】
つまり、第２基準点Ｂの位置は、ノズル列６５が含まれる直線上で、第１基準点Ａからノズル列６５の他端の方向に離れた位置であれば、ノズル列６５の他端の外側であっても内側であっても何れでも良い。
【０１９４】
また、本実施形態では、第１基準点Ａの位置は、ノズル列６５の一端にあるノズルより外側で、実際には存在しない仮想ノズルの位置にあることを想定する。
【０１９５】
図２１は、本実施形態に係る第１基準点及び第２基準点の位置の決定方法の一例を説明する図である。図の見方は図１６と同じであるため、説明を省略する。図２１では、図１６に対し、ＩＪ記録ヘッド２４が傾きθだけ傾いている点と、第２基準点Ｂの位置が、ノズル列６５が含まれる直線上で、ノズル列６５の他端にあるノズルより内側にある点とが異なっている。
【０１９６】
図２１の例の場合、第１基準点Ａの位置、すなわち仮想ノズル６１０の位置の隣にノズル６１１が存在するため、第１基準点Ａの解像度６００ｄｐｉ単位でのＹ座標の小数部分がゼロの場合、仮想ノズル６１０とノズル６１１のＹ座標は６００ｄｐｉ単位で同一の値になる。
【０１９７】
従って、仮想ノズル６１０とノズル６１１は同一の画素に配置されることになるが、仮想ノズル６１０は実際には存在しないノズルであるため、仮想ノズル６１０から吐出はされず、ノズル６１１から吐出させることができる。換言すると、仮想ノズル６１０が非吐出ノズルになる。
【０１９８】
解像度２４００ｄｐｉ単位でのノズル６１３２０のＹ座標が１２７６〜１２７９に収まる場合、つまり、ＩＪ記録ヘッド２４の傾きθが０＜｜θ｜＜ａｒｃｔａｎ（３１９／３２０）＝４．５３（度）の場合は、非吐出ノズルは１つに限られる。その非吐出ノズルを仮想ノズル６１０に固定することで、他の全てのノズルは、インクを吐出するノズルとして選択されるノズルになる。これにより、ノズル列６５に含まれるノズルが非吐出ノズルになることを防ぐことができる。
【０１９９】
さらに、解像度６００ｄｐｉ単位での第１基準点Ａの位置ＹＡの小数部分がゼロ以外の場合にも、予め定めた切り捨て、切り上げ、又は四捨五入等の規則により、解像度６００ｄｐｉ単位での第１基準点Ａの位置ＹＡの小数部分を強制的にゼロとみなして各ノズルの位置を算出する。これにより、ＹＡの値に関わらず非吐出ノズルを仮想ノズル６１０に固定することができる。
【０２００】
但し、強制的に解像度６００ｄｐｉ単位での第１基準点Ａの位置ＹＡの小数部分をゼロとみなすことにより、新たに以下の弊害が生じる場合がある。
（Ｉ）第１基準点Ａの位置ＹＡを移動することによる画質の低下(最大３／４ドット分のドットの位置ずれの発生)
（ＩＩ）非吐出ノズルが複数発生する条件（|θ|>４．５３度）になると、２番目以降のノズルに非吐出ノズルが集中しやすくなる
上記（ＩＩ）は、|θ|<４．５３度の条件を満たす場合に限り、強制的に解像度６００ｄｐｉ単位での第１基準点Ａの位置ＹＡの小数部分をゼロとする処理を実行するようにすることで、回避することができる。
【０２０１】
＜本実施形態に係るＨＨＰ２０ｂの構成＞
図２２は、本実施形態に係る制御部のハードウェア構成の一例を説明するブロック図である。図２２に示すように、ＨＨＰ２０ｂは制御部２５ｂを有し、制御部２５ｂに含まれるＳｏＣ５０ｂはＣＰＵ３３ｂを有し、ＡＳＩＣ／ＦＰＧＡ４０ｂはアクチュエータＩ／Ｆ４８を有する。
【０２０２】
アクチュエータＩ/Ｆ４８はアクチュエータ駆動回路４９Ａと通信し、アクチュエータ駆動回路４９Ａにアクチュエータ４９Ｂを駆動させるための制御信号を送信することができる。
【０２０３】
アクチュエータ４９Ｂは、ＩＪ記録ヘッド２４に取り付けられたピエゾアクチュエータ等のアクチュエータであり、アクチュエータ駆動回路４９Ａからの駆動信号に応じてＩＪ記録ヘッド２４の傾きを変化させることができる。
【０２０４】
図２３は、本実施形態に係るＨＨＰの機能構成の一例を説明するブロック図である。図２３に示すように、ＨＨＰ２０ｂは、ＳｏＣ５０ｂを有し、ＳｏＣ５０ｂに含まれるＣＰＵ３３ｂは、基準点位置決定部３３１ｂと、回転角調整部３３２とを有する。
【０２０５】
基準点位置決定部３３１ｂは、図２１を参照して説明した第１基準点及び第２基準点の位置の決定処理を実行することができる。
【０２０６】
また、回転角調整部３３２は、アクチュエータ駆動回路４９Ａに制御信号を送信し、ＩＪ記録ヘッド２４の傾きθを、０＜｜θ｜＜４．５３（度）の条件を満足するように調整する機能を有する。
【０２０７】
以上説明した制御部２５ｂのハードウェア構成及びＨＨＰ５０ｂの機能構成により、本実施形態に係る第１基準点及び第２基準点の位置を決定する機能を実現することができる。
【０２０８】
＜効果＞
以上説明してきたように、本実施形態では、ＨＨＰ２０ｂの移動量及び姿勢に基づいて、ノズル列６５が含まれる直線上で、ノズル列６５の一端にあるノズルより外側にあり、ノズル列６５のノズル間隔Ｅだけ離れた位置にある第１基準点Ａの位置と、第１基準点Ａからノズル列６５の他端の方向に離れた位置ある第２基準点Ｂの位置とをそれぞれ決定する。これにより、仮想ノズル６１０を非吐出ノズルにすることで、ノズル列６５に含まれる各ノズルが非吐出ノズルになることを防ぐことができる。
【０２０９】
また、回転角調整部３３２により、０＜｜θ｜＜ａｒｃｔａｎ（３１９／３２０）＝４．５３（度）の条件を満たすように、ＩＪ記録ヘッド２４の傾きθを調整することで、ノズル列６５に含まれる各ノズルが非吐出ノズルになることを防ぐことができる。
【０２１０】
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【０２１１】
また、実施形態は、液体吐出方法も含む。例えば、液体吐出方法は、記録ヘッドが印刷媒体上を移動しながら、複数のノズル列から前記印刷媒体に液体を吐出する記録工程と、移動面における前記記録ヘッドの移動量を検出する移動量検出工程と、少なくとも前記移動面における前記記録ヘッドの姿勢を検出する姿勢検出工程と、前記移動量及び前記姿勢に基づいて、前記ノズル列が含まれる直線上で、前記ノズル列の一端にあるノズルより外側にある第１基準点の位置と、前記ノズル列の他端にあるノズルより外側にある第２基準点の位置と、をそれぞれ決定する基準点位置決定工程と、前記第１基準点及び前記第２基準点の位置に基づき、前記ノズル列に含まれる各ノズルの位置を取得するノズル位置取得工程と、前記各ノズルの前記移動面における位置と、画像データとに基づき、前記各ノズルからの前記液体の吐出を制御する吐出制御工程と、を含む。このような液体吐出方法により、上述した液体吐出装置と同様の効果を得ることができる。
【０２１２】
さらに、実施形態は、プログラムも含む。例えば、プログラムは、液体吐出装置を、記録ヘッドが印刷媒体上を移動しながら、複数のノズル列から前記印刷媒体に液体を吐出する記録部、移動面における前記記録ヘッドの移動量を検出する移動量検出部、少なくとも前記移動面における前記記録ヘッドの姿勢を検出する姿勢検出部、前記移動量及び前記姿勢に基づいて、前記ノズル列が含まれる直線上で、前記ノズル列の一端にあるノズルより外側にある第１基準点の位置と、前記ノズル列の他端にあるノズルより外側にある第２基準点の位置と、をそれぞれ決定する基準点位置決定部、前記第１基準点及び前記第２基準点の位置に基づき、前記ノズル列に含まれる各ノズルの位置を取得するノズル位置取得部、前記各ノズルの前記移動面における位置と、画像データとに基づき、前記各ノズルからの前記液体の吐出を制御する吐出制御部、として機能させる。このようなプログラムにより、上述した液体吐出装置と同様の効果を得ることができる。
【０２１３】
また、上記で説明した実施形態の各機能は、一又は複数の処理回路によって実現することが可能である。ここで、本明細書における「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上記で説明した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)、DSP（digital signal processor）、FPGA（field programmable gate array）や従来の回路モジュール等のデバイスを含むものとする。
【符号の説明】
【０２１４】
１１      画像データ出力器
１２      印刷媒体
２０、２０ａ、２０ｂ  ＨＨＰ（液体吐出装置の一例）
２３      ＩＪ記録ヘッド駆動回路
２４      ＩＪ記録ヘッド
２５、２５ａ、２５ｂ  制御部
２６      ＯＰＵ
３０      ナビゲーションセンサ（移動量検出部の一例）
３１      ジャイロセンサ（姿勢検出部の一例）
３３、３３ａ、３３ｂ  ＣＰＵ
３３１、３３１ｂ  基準点位置決定部
３３２    回転角調整部
３４、３４ａ  位置算出回路
３４１        ノズル位置取得部
４２      ナビゲーションセンサＩ/Ｆ
４３      センサタイミング生成部
４４      ＩＪ記録ヘッド制御部（吐出制御部の一例）
４５      ジャイロセンサＩ/Ｆ
４８      アクチュエータＩ／Ｆ
４９Ａ    アクチュエータ駆動回路
４９Ｂ    アクチュエータ
５０、５０ａ、５０ｂ  ＳｏＣ
６１      ノズル
６７      ＮＶＲＡＭ
ΔＸ´、ΔＹ´  移動量
ω        角速度
Ａ        第１基準点
Ｂ        第２基準点
θ        回転角
Ｅ        ノズル間隔
Δｐ      位置分解能
【先行技術文献】
【特許文献】
【０２１５】
【特許文献１】特開２０１６−１７９６６０号公報
【図１】
2020124842.tif 000010
【図２】
2020124842.tif 000011
【図３】
2020124842.tif 000012
【図４】
2020124842.tif 000013
【図５】
2020124842.tif 000014
【図６】
2020124842.tif 000015
【図７】
2020124842.tif 000016
【図８】
2020124842.tif 000017
【図９】
2020124842.tif 000018
【図１０】
2020124842.tif 000019
【図１１】
2020124842.tif 000020
【図１２】
2020124842.tif 000021
【図１３】
2020124842.tif 000022
【図１４】
2020124842.tif 000023
【図１５】
2020124842.tif 000024
【図１６】
2020124842.tif 000025
【図１７】
2020124842.tif 000026
【図１８】
2020124842.tif 000027
【図１９】
2020124842.tif 000028
【図２０】
2020124842.tif 000029
【図２１】
2020124842.tif 000030
【図２２】
2020124842.tif 000031
【図２３】
2020124842.tif 000032