(57)【要約】【課題】底面部のサイズを削減することが可能な位置検出装置を提供すること。【解決手段】位置検出装置が搭載された被搭載物の移動面における位置を検出する位置検出装置であって、前記移動面における移動量を検出する移動量検出手段と、少なくとも前記移動面における前記被搭載物の姿勢を検出する姿勢検出手段と、前記移動量及び前記姿勢に基づいて前記被搭載物の前記位置を算出する位置算出手段と、を有する。【選択図】図１
2017170879.tif 000002
【特許請求の範囲】
【請求項１】
位置検出装置が搭載された被搭載物の移動面における位置を検出する位置検出装置であって、
前記移動面における移動量を検出する移動量検出手段と、
少なくとも前記移動面における前記被搭載物の姿勢を検出する姿勢検出手段と、
前記移動量及び前記姿勢に基づいて前記被搭載物の前記位置を算出する位置算出手段と、
を有する位置検出装置。
【請求項２】
前記移動量検出手段と前記姿勢検出手段にタイミングを通知するタイミング通知手段を有し、
前記タイミング通知手段は、前記移動量検出手段が前記移動量を検出するタイミングと同じタイミングで、前記姿勢検出手段に前記姿勢を検出するタイミングを通知する請求項１に記載の位置検出装置。
【請求項３】
前記移動量検出手段と前記姿勢検出手段が１つの基板に配置されている請求項１又は２に記載の位置検出装置。
【請求項４】
前記姿勢検出手段は前記被搭載物が上方から平面視された場合の端部に配置されている請求項１〜３のいずれか１項に記載の位置検出装置。
【請求項５】
前記姿勢検出手段は、前記被搭載物の内部の発熱体が配置された基板とは異なる基板に配置されている請求項１〜４のいずれか１項に記載の位置検出装置。
【請求項６】
前記姿勢検出手段は、前記被搭載物の底面に配置されている請求項１〜５のいずれか１項に記載の位置検出装置。
【請求項７】
前記姿勢検出手段が検出する前記被搭載物の姿勢から該被搭載物の移動面からの浮き量を算出する浮き量算出手段を有し、
前記位置算出手段は、前記移動量検出手段が検出した移動量を、前記浮き量算出手段が算出した浮き量に応じて補正する請求項１に記載の位置検出装置。
【請求項８】
請求項１〜７のいずれか１項に記載の位置検出装置と、
前記被搭載物の位置に応じて該位置の画像を形成するための液滴を吐出する液滴吐出手段と、
を有する液滴吐出装置。
【請求項９】
１つの前記移動量検出手段と前記液滴吐出手段が隣接して配置されている請求項８に記載の液滴吐出装置。
【請求項１０】
前記液滴吐出手段には複数の液滴の吐出部が列状に配置されており、
前記移動量検出手段は、前記液滴吐出手段の列に対し垂直な方向に隣接して配置されている請求項８に記載の液滴吐出装置。
【請求項１１】
前記液滴吐出手段には複数の液滴の吐出部が列状に配置されており、
前記移動量検出手段は、前記液滴吐出手段の列と直列に隣接して配置されている請求項８に記載の液滴吐出装置。
【請求項１２】
前記被搭載物が人により印刷媒体の上を走査される場合、
前記姿勢検出手段は人から見て手前側であって、幅方向のほぼ中央に配置されている請求項８〜１１のいずれか１項に記載の液滴吐出装置。
【請求項１３】
位置検出装置が搭載された被搭載物の移動面における位置を検出する位置検出装置を、
前記移動面における移動量を検出する移動量検出手段と、
少なくとも前記移動面における前記被搭載物の姿勢を検出する姿勢検出手段と、
前記移動量及び前記姿勢に基づいて前記被搭載物の前記位置を算出する位置算出手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、位置検出装置、液滴吐出装置及びプログラムに関する。
【背景技術】
【０００２】
用紙を搬送させて用紙が画像の形成位置に到達したタイミングでインクなどを吐出して画像を形成するプリンタが知られている。これに対し、ノートＰＣの小型化、スマートデバイスの普及などにより、プリンタ装置においても小型化・携帯化のニーズが高まっている。そこで、プリンタ装置から紙搬送システムを削除することで小型化されたプリンタ（以下、ＨＭＰ：ハンディモバイルプリンタという）が実用化されつつある。ＨＭＰには、紙搬送システムが搭載されていないので、人が紙面上を移動させることで紙面上を走査しインクを吐出する。
【０００３】
ＨＭＰは紙面上における自分の位置を検出して位置に応じた画像を形成するためのインクを吐出する。この位置を検出するための機構として、従来、底面に２つのナビゲーションセンサが配置されているＨＭＰが知られている（例えば、特許文献１参照。）。ナビゲーションセンサは光学的に紙面の微小なエッジを検出してサイクル時間ごとの移動量を検出するセンサである。ナビゲーションセンサが２つあることでＨＭＰは紙面に水平な方向の回転角を検出できる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来のＨＭＰでは底面部のサイズを削減することが困難であるという問題があった。まず、ナビゲーションセンサは１つしかなくても位置を検出することが可能である。２つ必要なのはＨＭＰの紙面に対する回転角を算出し、回転角に基づいて位置を算出するためである。また、回転角の検出精度を向上させるには２つのナビゲーションセンサの間隔がある程度長いことが好ましい。これらのため、従来のＨＭＰでは底面部のサイズを削減することが困難であった。
【０００５】
本発明は、上記課題に鑑み、底面部のサイズを削減することが可能な位置検出装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、位置検出装置が搭載された被搭載物の移動面における位置を検出する位置検出装置であって、前記移動面における移動量を検出する移動量検出手段と、少なくとも前記移動面における前記被搭載物の姿勢を検出する姿勢検出手段と、前記移動量及び前記姿勢に基づいて前記被搭載物の前記位置を算出する位置算出手段と、を有する。
【発明の効果】
【０００７】
底面部のサイズを削減することが可能な位置検出装置を提供することができる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態のＨＭＰの構成の概略を示す図の一例である。
【図２】ＨＭＰによる画像形成を模式的に示す図の一例である。
【図３】ＨＭＰのハードウェア構成図の一例である。
【図４】制御部の構成を説明する図の一例である。
【図５】ジャイロセンサが角速度を検出する原理を説明する図の一例である。
【図６】ナビゲーションセンサのハードウェア構成の構成例を示す図である。
【図７】ナビゲーションセンサによる移動量の検出方法を説明する図の一例である。
【図８】ＩＪ記録ヘッド駆動回路の構成図の一例である。
【図９】ＨＭＰの平面図の一例である。
【図１０】ＨＭＰの座標系と位置の算出方法を説明する図の一例である。
【図１１】画像形成中に生じるＨＭＰの回転角ｄθの求め方を説明する図の一例である。
【図１２】目標吐出位置とノズルの位置の関係を説明する図の一例である。
【図１３】画像データ出力器とＨＭＰの動作手順を説明するフローチャート図の一例である。
【図１４】比較のために示されたナビゲーションセンサが２つの場合の画像形成可能範囲を説明する図の一例である。
【図１５】ナビゲーションセンサが１つの場合の画像形成可能範囲を説明する図の一例である。
【図１６】ナビゲーションセンサの配置例を説明する図の一例である。
【図１７】ジャイロセンサの配置例を示す図の一例である。
【図１８】ジャイロセンサが検知するＨＭＰの姿勢を説明する図の一例である。
【図１９】センサ紙間距離と移動量の解像度の変化を示す図の一例である。
【図２０】ナビゲーションセンサの組み付け位置を説明する図の一例である。
【図２１】ナビゲーションセンサの印刷媒体からの浮き量を説明する図の一例である。
【図２２】画像データ出力器とＨＭＰの動作手順を説明するフローチャート図の一例である（実施例２）。
【発明を実施するための形態】
【０００９】
以下、本発明を実施するための形態について図面を参照しながら説明する。
【実施例１】
【００１０】
まず、図１を用いて本実施形態のハンディモバイルプリンタ（以下、ＨＭＰという）の概略的な特徴を説明する。図１は、本実施形態のＨＭＰ２０の構成の概略を示す図である。図１（ａ）は比較のために示された従来のＨＭＰ２０の構成図を示す。従来のＨＭＰ２０は１つのＩＪ記録ヘッド２４と２つのナビゲーションセンサ３０（以下、区別するためナビゲーションセンサＳ０，Ｓ１という）を有している。
【００１１】
図１（ｂ）は従来のＨＭＰ２０の画像形成可能範囲５０１を示す。図１（ａ）のＨＭＰ２０は左側にＩＪ記録ヘッド２４があり右側に２つのナビゲーションセンサＳ０，Ｓ１が縦に配置されている。ナビゲーションセンサＳ１とノズル６１の下端との間隔はＡ〔ｍｍ〕、ノズル６１からナビゲーションセンサＳ０，Ｓ１までの間隔はＢ〔ｍｍ〕である。ナビゲーションセンサＳ０，Ｓ１が印刷媒体１２からはみ出してしまうのでＨＭＰ２０は、印刷媒体１２の左端からＢ〔ｍｍ〕よりも右に移動できない。また、ナビゲーションセンサＳ１とノズル６１の下端の間隔がＡ〔ｍｍ〕なので、ＨＭＰ２０は、印刷媒体１２の下端からＡ〔ｍｍ〕よりも下に移動できない。したがって、図示するように印刷媒体１２の下にも横にも印刷できない場所が生じてしまう。
【００１２】
図１（ｃ）は本実施形態のＨＭＰ２０の構成図を示す。本実施形態のＨＭＰ２０は１つのＩＪ記録ヘッド２４、１つのナビゲーションセンサＳ０、及び、１つのジャイロセンサ３１を有している。図１（ｄ）は本実施形態のＨＭＰ２０の画像形成可能範囲５０１を示す。ノズル６１の下端とナビゲーションセンサＳ０までの間隔をＡ〔ｍｍ〕とする。ナビゲーションセンサＳ０が印刷媒体１２からはみ出してしまうので、ＨＭＰ２０は印刷媒体１２の下端からＡ〔ｍｍ〕より下に移動できない。一方、ノズル６１とナビゲーションセンサＳ０の横方向の間隔はゼロなので、ＨＭＰ２０は印刷媒体１２の左端から右端まで移動できる。したがって、図示するように下側にだけ印刷できない場所が生じる。
【００１３】
図１（ｂ）と図１（ｄ）を比較すると明らかなように、ジャイロセンサ３１が搭載されることでナビゲーションセンサの数を１つにでき、底面のサイズを削減できる。この結果、画像形成可能範囲５０１を大きくすることができる。
【００１４】
＜用語について＞
底面のサイズは、ナビゲーションセンサとノズル６１を囲む範囲、又は、この範囲の制約を受けることでそれ以上は小さくできないＨＭＰ２０の底面の大きさである。実際のＨＭＰ２０の底面のサイズはナビゲーションセンサとノズル６１を囲む範囲よりも大きくてよく、操作性やデザインなどが考慮されて決定されてよい。
【００１５】
被搭載物とは、位置検出装置が搭載された物をいう。移動面において位置が検出されうる物としてもよい。例えば、ＨＭＰ２０が被搭載物の一例である。また、位置検出装置は移動した距離を検出することができるため距離測定器も被搭載物の一例となりうる。
【００１６】
移動面は、ＨＭＰ２０が移動できる面であればよく、平面の他、曲面も含まれる。具体的には印刷媒体１２が挙げられるがこれには限られない。
【００１７】
また、物体の姿勢とは、剛体の６つの自由度のうち回転角を表す自由度（剛体の重心を通って直交する３つの軸をそれぞれ中心とする回転角）をいう。このうち、平面における物体の姿勢は、平面に垂直な軸を中心とする回転角で表される。
【００１８】
位置を算出するとは、何らかのデータに演算を施すことにより位置に関する情報を得ることであり、位置を検出するとは、プロセスを問わずに位置に関する情報を得ることをいう。ただし、両者は位置に関する情報が得られる点で同じであり本実施形態では位置の算出と位置の検出を厳密には区別しない。
【００１９】
＜ＨＭＰ２０による画像形成＞
図２は、ＨＭＰ２０による画像形成を模式的に示す図の一例である。ＨＭＰ２０には、例えばスマートフォンやＰＣ（Personal Computer）等の画像データ出力器１１から画像データが送信される。ユーザはＨＭＰ２０を把持して、印刷媒体１２（例えば定形用紙やノートなど）から浮き上がらないようにフリーハンドで走査させる。
【００２０】
ＨＭＰ２０は後述するようにナビゲーションセンサＳ０とジャイロセンサ３１で位置を検出し、ＨＭＰ２０が目標吐出位置に移動すると、目標吐出位置で吐出すべき色のインクを吐出する。すでにインクを吐出した場所はマスクされるので（インクの吐出の対象とならないので）、ユーザは印刷媒体１２上で任意の方向にＨＭＰ２０を走査させることで画像を形成できる。
【００２１】
印刷媒体１２からＨＭＰ２０が浮き上がらないことが好ましいのは、ナビゲーションセンサＳ０が印刷媒体１２からの反射光を利用して移動量を検出するためである。印刷媒体１２からＨＭＰ２０が浮き上がると反射光を検出できなくなり移動量を検出できない。印刷媒体１２からナビゲーションセンサＳ０がはみ出した場合も、印刷媒体１２の厚みにより反射光を検出できなくなったり、検出できても位置がずれたりする場合がある。このため、ナビゲーションセンサＳ０は印刷媒体１２上で走査されることが好ましく、上記のようにノズル６１とナビゲーションセンサＳ０が印刷媒体１２上に共に存在することが好ましい。
【００２２】
＜構成例＞
図３は、ＨＭＰ２０のハードウェア構成図の一例を示す。ＨＭＰ２０は、印刷媒体１２に画像を形成する液滴吐出装置又は画像形成装置の一例である。ＨＭＰ２０は、制御部２５によって全体の動作が制御され、制御部２５には通信Ｉ/Ｆ２７、ＩＪ記録ヘッド駆動回路２３、ＯＰＵ２６、ＲＯＭ２８、ＤＲＡＭ２９、ナビゲーションセンサ３０、及びジャイロセンサ３１が電気的に接続されている。また、ＨＭＰ２０は電力により駆動されるため、電源２２と電源回路２１を有している。電源回路２１が生成する電力は、点線２２ａで示す配線などにより、通信Ｉ/Ｆ２７、ＩＪ記録ヘッド駆動回路２３、ＯＰＵ２６、ＲＯＭ２８、ＤＲＡＭ２９、ＩＪ記録ヘッド２４、制御部２５、ナビゲーションセンサ３０、及び、ジャイロセンサ３１に供給されている。
【００２３】
電源２２としては主に電池（バッテリー）が利用される。太陽電池や商用電源（交流電源）、燃料電池等が用いられてもよい。電源回路２１は、電源２２が供給する電力をＨＭＰ２０の各部に分配する。また、電源２２の電圧を各部に適した電圧に降圧や昇圧する。また、電源２２が充電可能な電池である場合、電源回路２１は交流電源の接続を検出して電池の充電回路に接続し、電源２２の充電を可能にする。
【００２４】
通信Ｉ/Ｆ２７は、スマートフォンやＰＣ（Personal Computer）等の画像データ出力器１１から画像データの受信等を行う。通信Ｉ/Ｆ２７は例えば無線ＬＡＮ、Bluetooth（登録商標）、ＮＦＣ（Near Field Communication）、赤外線、３Ｇ（携帯電話）、又は、ＬＴＥ（Long Term Evolution）等の通信規格に対応した通信装置である。また、このような無線通信の他、有線ＬＡＮ、ＵＳＢケーブルなどを用いた有線通信に対応した通信装置であってもよい。
【００２５】
ＲＯＭ２８は、ＨＭＰ２０のハードウェア制御を行うファームウェアや、ＩＪ記録ヘッド２４の駆動波形データ（液滴を吐出するための電圧変化を規定するデータ）や、ＨＭＰ２０の初期設定データ等を格納している。
【００２６】
ＤＲＡＭ２９は通信Ｉ/Ｆ２７が受信した画像データを記憶したり、ＲＯＭ２８から展開されたファームウェアを格納したりするために使用される。したがって、ＣＰＵ３３がファームウェアを実行する際のワークメモリとして使用される。
【００２７】
ナビゲーションセンサ３０は、所定のサイクル時間ごとにＨＭＰ２０の移動量を検出するセンサである。ナビゲーションセンサ３０は、例えば、発光ダイオード（ＬＥＤ）やレーザ等の光源と、印刷媒体１２を撮像する撮像センサを有している。ＨＭＰ２０が印刷媒体１２上を走査されると、印刷媒体１２の微小なエッジが次々に検出され（撮像され）エッジ間の距離を解析することで移動量が得られる。本実施形態では、ナビゲーションセンサ３０は、ＨＭＰ２０の底面に１つだけ搭載されている。従来は２つであった。ただし、説明のためナビゲーションセンサ３０が２つあるＨＭＰ２０について説明する場合がある。なお、ナビゲーションセンサ３０として、さらに多軸の加速度センサを用いてもよく、ＨＭＰ２０は加速度センサのみでＨＭＰ２０の移動量を検出してもよい。
【００２８】
ジャイロセンサ３１は、印刷媒体１２に垂直な軸を中心にＨＭＰ２０が回転した際の角速度を検出するセンサである。詳細は後述される。
【００２９】
ＯＰＵ（Operation panel Unit）２６は、ＨＭＰ２０の状態を表示するＬＥＤ、ユーザがＨＭＰ２０に画像形成を指示するためのスイッチ等を有している。ただし、これに限定するものではなく、液晶ディスプレイを有していてよく、さらにタッチパネルを有していてもよい。また、音声入力機能を有していてもよい。
【００３０】
ＩＪ記録ヘッド駆動回路２３は上記の駆動波形データを用いて、ＩＪ記録ヘッド２４を駆動するための駆動波形（電圧）を生成する。インクの液滴のサイズなどに応じた駆動波形を生成できる。
【００３１】
ＩＪ記録ヘッド２４は、インクを吐出するためのヘッドである。図ではＣＭＹＫの４色のインクを吐出可能になっているが、単色でもよく５色以上の吐出が可能でもよい。各色ごとに一列（二列以上でもよい）に列状に並んだ複数のインク吐出用のノズル６１（吐出部）が配置されている。また、インクの吐出方式はピエゾ方式でもサーマル方式でもよく、この他の方式でもよい。ＩＪ記録ヘッド２４は、ノズル６１から液体を吐出・噴射する機能部品である。吐出される液体は、ＩＪ記録ヘッド２４から吐出可能な粘度や表面張力を有するものであればよく、特に限定されないが、常温、常圧下において、または加熱、冷却により粘度が３０〔mPa・s〕以下となるものであることが好ましい。より具体的には、水や有機溶媒等の溶媒、染料や顔料等の着色剤、重合性化合物、樹脂、界面活性剤等の機能性付与材料、ＤＮＡ、アミノ酸やたんぱく質、カルシウム等の生体適合材料、天然色素等の可食材料、などを含む溶液、懸濁液、エマルジョンなどであり、これらは例えば、インクジェット用インク、表面処理液、電子素子や発光素子の構成要素や電子回路レジストパターンの形成用液、３次元造形用材料液等の用途で用いることができる。
【００３２】
制御部２５はＣＰＵ３３を有しＨＭＰ２０の全体を制御する。制御部２５は、ナビゲーションセンサ３０により検出される移動量及びジャイロセンサ３１により検出される角速度を元に、ＩＪ記録ヘッド２４の各ノズルの位置、該位置に応じて形成する画像の決定、後述する吐出ノズル可否判定等を行う。制御部２５について詳細は次述する。
【００３３】
図４は、制御部２５の構成を説明する図の一例である。制御部２５はＳｏＣ５０とＡＳＩＣ/ＦＰＧＡ４０を有している。ＳｏＣ５０とＡＳＩＣ/ＦＰＧＡ４０はバス４６，４７を介して通信する。ＡＳＩＣ/ＦＰＧＡ４０はどちらの実装技術で設計されてもよいことを意味し、ＡＳＩＣ/ＦＰＧＡ４０以外の他の実装技術で構成されてよい。また、ＳｏＣ５０とＡＳＩＣ/ＦＰＧＡ４０を別のチップにすることなく１つのチップや基板で構成してもよい。あるいは、３つ以上のチップや基板で実装してもよい。
【００３４】
ＳｏＣ５０は、バス４７を介して接続されたＣＰＵ３３、位置算出回路３４、メモリＣＴＬ（コントローラ）３５、及び、ＲＯＭ ＣＴＬ（コントローラ）３６等の機能を有している。なお、ＳｏＣ５０が有する構成要素はこれらに限られない。
【００３５】
また、ＡＳＩＣ/ＦＰＧＡ４０は、バス４６を介して接続されたImage RAM３７、ＤＭＡＣ３８、回転器３９、割込みコントローラ４１、ナビゲーションセンサＩ/Ｆ４２、印字/センサタイミング生成部４３、ＩＪ記録ヘッド制御部４４及びジャイロセンサＩ/Ｆ４５を有している。なお、ＡＳＩＣ/ＦＰＧＡ４０が有する構成要素はこれらに限られない。
【００３６】
ＣＰＵ３３は、ＲＯＭ２８からＤＲＡＭ２９に展開されたファームウェア（プログラム）などを実行し、ＳｏＣ５０内の位置算出回路３４、メモリＣＴＬ３５、及び、ＲＯＭ ＣＴＬ３６の動作を制御する。また、ＡＳＩＣ/ＦＰＧＡ４０内のImage RAM３７、ＤＭＡＣ３８、回転器３９、割込みコントローラ４１、ナビゲーションセンサＩ/Ｆ４２、印字/センサタイミング生成部４３、ＩＪ記録ヘッド制御部４４及びジャイロセンサＩ/Ｆ４５等の動作を制御する。
【００３７】
位置算出回路３４は、ナビゲーションセンサ３０が検出するサンプリング周期ごとの移動量及びジャイロセンサ３１が検出するサンプリング周期ごとの角速度に基づいてＨＭＰ２０の位置（座標情報）を算出する。ＨＭＰ２０の位置とは、厳密にはノズル６１の位置であるが、ナビゲーションセンサ３０のある位置が分かればノズル６１の位置を算出できる。本実施例では、特に断らない限りナビゲーションセンサ３０の位置としてナビゲーションセンサＳ０の位置をいう。また、位置算出回路３４は目標吐出位置を算出する。なお、位置算出回路３４をＣＰＵ３３がソフト的に実現してもよい。
【００３８】
ナビゲーションセンサ３０の位置は、後述するように例えば所定の原点（画像形成が開始される時のＨＭＰ２０の初期位置）を基準に算出されている。また、位置算出回路３４は、過去の位置と最も新しい位置の差に基づいて移動方向や加速度を推定し、例えば次回の吐出タイミングにおけるナビゲーションセンサ３０の位置を予測する。こうすることで、ユーザの走査に対する遅れを抑制してインクを吐出できる。
【００３９】
メモリＣＴＬ３５は、ＤＲＡＭ２９とのインタフェースであり、ＤＲＡＭ２９に対しデータを要求し、取得したファームウェアをＣＰＵ３３に送出したり、取得した画像データをＡＳＩＣ/ＦＰＧＡ４０に送出したりする。
【００４０】
ＲＯＭ ＣＴＬ３６は、ＲＯＭ２８とのインタフェースであり、ＲＯＭ２８に対しデータを要求し、取得したデータをＣＰＵ３３やＡＳＩＣ/ＦＰＧＡ４０に送出する。
【００４１】
回転器３９は、ＤＭＡＣ３８が取得した画像データを、インクを吐出するヘッド、ヘッド内のノズル位置、及び、取り付け誤差などによるヘッド傾きに応じて回転させる。ＤＭＡＣ３８は回転後の画像データをＩＪ記録ヘッド制御部４４へ出力する。
【００４２】
Image RAM３７はＤＭＡＣ３８が取得した画像データを一時的に格納する。すなわち、ある程度の画像データがバッファリングされ、ＨＭＰ２０の位置に応じて読み出される。
【００４３】
ＩＪ記録ヘッド制御部４４は、画像データ（ビットマップデータ）にディザ処理などを施して大きさと密度で画像を表す点の集合に画像データを変換する。これにより、画像データは吐出位置と点のサイズのデータとなる。ＩＪ記録ヘッド制御部４４は点のサイズに応じた制御信号をＩＪ記録ヘッド駆動回路２３に出力する。ＩＪ記録ヘッド駆動回路２３は上記のように制御信号に対応した駆動波形データを用いて、駆動波形（電圧）を生成する。
【００４４】
ナビゲーションセンサＩ/Ｆ４２は、ナビゲーションセンサ３０と通信し、ナビゲーションセンサ３０からの情報として移動量ΔＸ´、ΔＹ´（これらについては後述する）を受信し、その値を内部レジスタに格納する。
【００４５】
印字/センサタイミング生成部４３は、ナビゲーションセンサＩ/Ｆ４２とジャイロセンサＩ/Ｆ４５が情報を読み取るタイミングを通知し、ＩＪ記録ヘッド制御部４４に駆動タイミングを通知する。情報を読み取るタイミングの周期はインクの吐出タイミングの周期よりも長い。ＩＪ記録ヘッド制御部４４は吐出ノズル可否判定を行い、インクを吐出すべき目標吐出位置があればインクを吐出し、目標吐出位置がなければ吐出しないと判定する。
【００４６】
ジャイロセンサＩ/Ｆ４５は印字/センサタイミング生成部４３により生成されたタイミングになるとジャイロセンサ３１が検出する角速度を取得してその値をレジスタに格納する。
【００４７】
割込みコントローラ４１は、ナビゲーションセンサＩ/Ｆ４２がナビゲーションセンサ３０との通信が完了したことを検知して、ＳｏＣ５０へそれを通知するための割込み信号を出力する。ＣＰＵ３３はこの割込みにより、ナビゲーションセンサＩ/Ｆ４２が内部レジスタに記憶するΔＸ´、ΔＹ´を取得する。その他、エラー等のステータス通知機能も有する。ジャイロセンサＩ/Ｆ４５に関しても同様に、割込みコントローラ４１はＳｏＣ５０に対し、ジャイロセンサ３１との通信が終了したことを通知するための割込み信号を出力する。
【００４８】
＜ジャイロセンサ＞
図５は、ジャイロセンサ３１が角速度を検出する原理を説明する図の一例である。移動している物体に回転が加わると、物体の移動方向と回転軸の両方に直行する方向にコリオリ力が発生する。
【００４９】
物体を移動させるため、ジャイロセンサ３１ではＭＥＭＳ（Micro Electro Mechanical Systems）素子を振動させることで速度ｖ（ベクトル）を発生させる。振動している質量ｍのＭＥＭＳ素子に外部から角速度ω（ベクトル）の回転が加わると、ＭＥＭＳ素子にコリオリ力が加わる。コリオリ力Ｆは以下のように表すことができる。
Ｆ＝−２ｍΩ×ｖ
なお、「×」はベクトルの外積を表し、上記のように物体の移動方向と回転軸に直交する方向がコリオリ力Ｆの方向である。ＭＥＭＳ素子は例えば櫛歯構造の電極を有しており、ジャイロセンサ３１はコリオリ力Ｆにより発生した変位を静電容量の変化として捉える。コリオリ力Ｆの信号はジャイロセンサ３１内で増幅されフィルタリングされた後、角速度に演算されて出力される。すなわち、Ｆ，ｍ、ｖが既知なので角速度ωを取り出すことができる。
【００５０】
＜ナビゲーションセンサについて＞
図６は、ナビゲーションセンサのハードウェア構成の構成例を示す図である。ナビゲーションセンサ３０は、ホストＩ/Ｆ３０１、イメージプロセッサ３０２、ＬＥＤドライバ３０３、２つのレンズ３０４、３０６及び、イメージアレイ３０５を有する。ＬＥＤドライバ３０３は、ＬＥＤと制御回路が一体となっておりイメージプロセッサ３０２からの命令によりＬＥＤ光を照射する。イメージアレイ３０５は、レンズ３０４を介して印刷媒体１２からのＬＥＤ光の反射光を受光する。２つのレンズ３０４，３０６は、印刷媒体１２の表面に対して光学的に焦点が合うように設置されている。
【００５１】
イメージアレイ３０５は、ＬＥＤ光の波長に感度を有するフォトダイオードなどを有し、受光したＬＥＤ光からイメージデータを生成する。イメージプロセッサ３０２はイメージデータを取得して、イメージデータからナビゲーションセンサの移動距離（上記のΔＸ´、ΔＹ´）を算出する。イメージプロセッサ３０２は、算出した移動距離を、ホストＩ/Ｆ３０１を介して制御部２５へ出力する。
【００５２】
光源として使用される発光ダイオード(ＬＥＤ)は、表面が粗い印刷媒体１２、例えば紙を使用する場合に有用である。これは、表面が粗い場合、影が発生するため、その影を特徴部分として、Ｘ軸方向及びＹ軸方向の移動距離を正確に算出することが可能になるからである。一方、表面が滑らか、あるいは透明な印刷媒体１２に対しては、光源としてレーザ光を発生させる半導体レーザ(ＬＤ)を使用することができる。半導体レーザで、印刷媒体１２上に例えば縞模様等を形成することで特徴部分を作ることができ、それを基に正確に移動距離を算出することができるからである。
【００５３】
次に、図７を用いて、ナビゲーションセンサ３０の動作について説明する。図７はナビゲーションセンサ３０による移動量の検出方法を説明する図である。ＬＥＤドライバ３０３が照射した光は、レンズ３０６を介して印刷媒体１２の表面に照射される。印刷媒体１２の表面は、図７（ａ）に示すように様々な形状の微小な凹凸を有している。このため、様々な形の影が発生する。
【００５４】
イメージプロセッサ３０２は、予め決められたサンプリングタイミング毎に、レンズ３０４及びイメージアレイ３０５を介して反射光を受光し、イメージデータ３１０を取得する。図７（ｂ）に示すように生成したイメージデータ３１０を、イメージプロセッサ３０２は規定の分解能単位でマトリクス化する。すなわち、イメージデータ３１０を複数の矩形領域に分割する。そして、イメージプロセッサ３０２は、前回のサンプリングタイミングで得られたイメージデータ３１０と、今回のサンプリングタイミングで得られたイメージデータ３１０とを比較してイメージデータ３１０が移動した矩形領域の数を検出し、それを移動距離として算出する。図７（ｂ）で図示するΔＸ方向にＨＭＰ２０が移動したとする。ｔ＝０とｔ＝１のイメージデータ３１０を比較すると、右端にある形状が中央の形状と一致する。したがって、形状は−Ｘ方向に移動しているので、ＨＭＰ２０がＸ方向に一マス分移動したことが分かる。時刻ｔ＝１とｔ＝２についても同様である。
【００５５】
＜ＩＪ記録ヘッド駆動回路＞
図８は、ＩＪ記録ヘッド駆動回路２３の構成図の一例である。まず、ＩＪ記録ヘッド２４は、複数のノズル６１を備え、各ノズル６１にはアクチュエータが設けられている。アクチュエータは、サーマル方式、ピエゾ方式のいずれであってもよい。サーマル方式は、ノズル内のインクに熱を与えて膨張させ、この膨張によりノズル６１からインク滴を吐出させるものである。ピエゾ方式は、圧電素子によりノズル壁を押し、内部のインクを押し出すことによりインク滴を吐出させるものである。
【００５６】
ＩＪ記録ヘッド駆動回路２３は、アナログスイッチ２３１と、レベルシフタ２３２と、階調デコーダ２３３と、ラッチ２３４と、シフトレジスタ２３５とを備えている。ＩＪ記録ヘッド制御部４４は、ＩＪ記録ヘッド駆動回路２３に対し、ＩＪ記録ヘッド２４のノズル６１の数（アクチュエータの数も同じ）分のシリアルデータである画像データＳＤを、画像データ転送クロックSCKによってシフトレジスタ２３５に転送する。
【００５７】
転送が終了すると、ＩＪ記録ヘッド制御部４４は、画像データラッチ信号SLnによりノズル毎に設けられたラッチ２３４に各画像データＳＤを記憶させる。
【００５８】
ＩＪ記録ヘッド制御部４４は、画像データＳＤをラッチさせた後、アナログスイッチ２３１へ各階調値のインク滴を各ノズルから吐出させるためのヘッド駆動波形Vcomを出力する。このとき、ＩＪ記録ヘッド制御部４４は、階調デコーダ２３３に対してヘッド駆動マスクパターンＭＮを階調制御信号として与えるが、そのヘッド駆動マスクパターンＭＮを駆動波形のタイミングに合わせて選択するように遷移させる。
【００５９】
階調デコーダ２３３は、階調制御信号とラッチされた画像データとを論理演算し、レベルシフタ２３２は、論理演算した得られた論理レベル電圧信号を、アナログスイッチ２３１を駆動できる電圧レベルまで昇圧する。
【００６０】
アナログスイッチ２３１は、昇圧された電圧信号を受け付けON/OFFすることにより、ＩＪ記録ヘッドのアクチュエータへ供給する駆動波形VoutNが各ノズルで異なる波形となる。ＩＪ記録ヘッド２４は、この駆動波形に基づきインク滴を吐出させ、印刷媒体１２上に画像を形成する。
【００６１】
なお、図８の構成及びその説明は、インクジェット方式のプリンタで一般に採用されている構成である。インク滴を吐出できれば、図８の構成に限られずＨＭＰ２０に搭載されてよい。
【００６２】
＜ＩＪ記録ヘッドにおけるノズル位置について＞
次に、図９を用いて、ＩＪ記録ヘッド２４におけるノズル位置等について説明する。図９（ａ）は、ＨＭＰ２０の平面図の一例である。図９（ｂ）はＩＪ記録ヘッド２４のみを説明する図の一例である。図示されている面が印刷媒体１２に対向する面である。
【００６３】
本実施形態のＨＭＰ２０は、１つのナビゲーションセンサＳ０を有している。図９（ａ）のＳ１は、説明の便宜上、ナビゲーションセンサが２つある場合の設置位置を示す。ナビゲーションセンサ３０が２つある場合の、２つのナビゲーションセンサＳ０，Ｓ１の間の長さは距離Ｌである。距離Ｌは長いほどよい。これは、距離Ｌが長いほど検出可能な最小の回転角θが小さくなり、ＨＭＰ２０の位置の誤差が少なくなるからである。
【００６４】
ナビゲーションセンサ３０からＩＪ記録ヘッド２４までの距離はそれぞれ距離ａ、ｂである。距離ａと、距離ｂは等しくてもよいし、ゼロでもよい（ＩＪ記録ヘッド２４に接している）。また、ナビゲーションセンサ３０が１つだけの場合、ナビゲーションセンサＳ０はＩＪ記録ヘッド２４の周囲の任意の場所に配置される。したがって、図示するナビゲーションセンサＳ０の位置は一例である。ただし、ＩＪ記録ヘッド２４とナビゲーションセンサＳ０の距離が短いことでＨＭＰ２０の底面のサイズを削減しやすくなる。
【００６５】
図９（ｂ）に示すように、ＩＪ記録ヘッド２４の端から最初のノズル６１までの距離は距離ｄ、隣接するノズル間の距離は距離ｅである。ａ〜ｅの値はＲＯＭ２８などに予め記憶されている。
【００６６】
位置算出回路３４などがナビゲーションセンサＳ０の位置を算出すれば、距離ａ（距離ｂ）、距離ｄ及び距離ｅを用いて、位置算出回路３４はノズル６１の位置を算出できる。
【００６７】
＜印刷媒体１２におけるＨＭＰ２０の位置について＞
図１０は、ＨＭＰ２０の座標系と位置の算出方法を説明する図の一例である。本実施形態では、印刷媒体１２に水平な方向をＸ軸、垂直な方向をＹ軸に設定する。原点は画像形成が開始された際のナビゲーションセンサＳ０の位置である。この座標を印刷媒体座標と称することにする。これに対し、ナビゲーションセンサＳ０は図１０の座標軸（Ｘ´軸、Ｙ´軸）で移動量を出力する。すなわち、ノズル６１の配列方向をＹ´軸、Ｙ´軸に直交する方向をＸ´軸として移動量を出力する。
【００６８】
図９（ａ）に示したように、印刷媒体１２に対しＨＭＰ２０が時計回りにθ回転している場合を例にして説明する。ユーザがＨＭＰ２０を印刷媒体座標に対し全く傾けることなく走査させることは困難でゼロでないθが生じると考えられる。全く回転していなければ、Ｘ＝Ｘ´、Ｙ＝Ｙ´である。しかし、ＨＭＰ２０が印刷媒体１２に対し回転角θ、回転した場合、ナビゲーションセンサＳ０の出力とＨＭＰ２０の印刷媒体１２における実際の位置が一致しなくなる。回転角θは時計回りが正、Ｘ、Ｘ´は右方向が正、Ｙ、Ｙ´は上方向が正である。
【００６９】
図１０（ａ）はＨＭＰ２０のＸ座標を説明する図の一例である。図１０（ａ）では回転角θのＨＭＰ２０がＸ方向にのみ同じ回転角θのまま移動した場合のナビゲーションセンサＳ０が検出する移動量ΔＸ´、ΔＹ´とＸ，Ｙの対応を示している。なお、ナビゲーションセンサ３０が２つある場合、相対位置は固定なので２つのナビゲーションセンサ３０の出力（移動量）は同じである。ナビゲーションセンサＳ０のＸ座標はＸ１＋Ｘ２であり、Ｘ１＋Ｘ２はΔＸ´、ΔＹ´及び回転角θから求められる。
【００７０】
図１０（ｂ）は回転角θのＨＭＰ２０がＹ方向にのみ同じ回転角θのまま移動した場合のナビゲーションセンサＳ０が検出する移動量ΔＸ´、ΔＹ´とＸ，Ｙの対応を示している。ナビゲーションセンサＳ０のＹ座標はＹ１＋Ｙ２であり、Ｙ１＋Ｙ２は−ΔＸ´、ΔＹ´及び回転角θから求められる。
【００７１】
したがって、ＨＭＰ２０がＸ方向及びＹ方向に回転角θのまま移動した場合、ナビゲーションセンサＳ０が出力するΔＸ´、ΔＹ´は印刷媒体座標のＸ，Ｙに以下のように変換できる。
Ｘ＝ΔＸ´cosθ＋ΔＹ´sinθ  …（１）
Ｙ＝−ΔＸ´sinθ＋ΔＹ´cosθ  …（２）
<<回転角θの検出>>
本実施形態では、回転角θをジャイロセンサ３１の出力により位置算出回路３４が求める。しかしながら、距離Ｌが長い方が位置を高精度に求められることを示すため、ナビゲーションセンサ３０が２つある場合の回転角θの求め方を説明する。
【００７２】
図１１は、画像形成中に生じるＨＭＰ２０の回転角ｄθの求め方を説明する図の一例である。回転角ｄθは２つのナビゲーションセンサＳ０，Ｓ１が検出する移動量ΔＸ´を用いて算出される。印刷媒体１２の上側のナビゲーションセンサＳ０が検出する移動量ΔＸ´0、ナビゲーションセンサＳ１が検出する移動量をΔＸ´1とする。なお、図１１ではすでに得られている回転角をθとしている。
【００７３】
ＨＭＰ２０が平行移動しながらｄθ回転した場合、移動量ΔＸ´0とΔＸ´1は一致しない。しかし、どちらの出力も２つのナビゲーションセンサＳ０，Ｓ１を結ぶ直線に垂直な方向の移動量なので、移動量ΔＸ´0とΔＸ´1の差は「ΔＸ´0−ΔＸ´1」として求めることができる。この差はＨＭＰ２０がｄθ回転したことにより生じた値である。また、「ΔＸ´0−ΔＸ´1」、Ｌ、及び、ｄθに図１１に示す関係があることから、ｄθは以下のように表すことができる。
ｄθ＝arcsin｛（ΔＸ´0−ΔＸ´1）/Ｌ｝  …（３）
位置算出回路３４がこのｄθを積算することで回転角θを求めることができる。式（１）（２）に示すように、回転角θは位置の算出に用いられるので、回転角θが位置の精度に影響する。また、式（３）から分かるように、より小さいｄθを検出するには距離Ｌを大きくすることが好ましい。したがって、距離Ｌが位置の精度に影響するが、距離Ｌを大きくするとＨＭＰ２０の底面積が大きくなり、画像形成可能範囲５０１が小さくなる。
【００７４】
続いて、ジャイロセンサ３１の出力を用いた回転角θの算出方法を説明する。ジャイロセンサ３１の出力は角速度ωである。
ω=dθ/dt
であるから、ｄｔをサンプリング周期とすると回転角ｄθは以下で表せる。
dθ=ω×dt
したがって、現在（時間t=0〜N）の回転角θは以下のようになる。
【００７５】
【数１】
2017170879.tif 000003
このように、ジャイロセンサ３１でも回転角θを求めることができる。式（１）（２）に示すように、回転角θを用いて位置を算出できる。ナビゲーションセンサＳ０の位置を算出できれば、図９（ｂ）に示したａ〜ｅの値により、位置算出回路３４は各ノズル６１の座標を算出することができる。なお、式（１）のＸ、式（２）のＹはそれぞれサンプリング周期における変化量なのでこのＸ，Ｙを累積することで現在の位置が求められる。
【００７６】
＜目標吐出位置＞
続いて、図１２を用いて目標吐出位置について説明する。図１２は、目標吐出位置とノズル６１の位置の関係を説明する図の一例である。目標吐出位置Ｇ１〜Ｇ９は、ＨＭＰ２０がノズル６１からインクを着弾させる目標位置（画素の形成先）である。目標吐出位置Ｇ１〜Ｇ９は、ＨＭＰ２０の初期位置とＨＭＰ２０のＸ軸/Ｙ軸方向の解像度(Xdpi,Ydpi)から求めることができる。
【００７７】
例えば、解像度が３００dpiの場合、ＩＪ記録ヘッド２４の長手方向及びこれに対し垂直な方向に約0.084[mm]ごとに目標吐出位置が設定される。この目標吐出位置Ｇ１〜Ｇ９に吐出される画素があれば、ＨＭＰ２０はインクを吐出する。
【００７８】
しかし、実際には、ノズル６１と目標吐出位置が完全に一致するタイミングを捉えることは困難なので、ＨＭＰ２０は目標吐出位置とノズル６１の現在位置との間に許容誤差６２を設けている。そして、ノズル６１の現在位置が目標吐出位置から許容誤差６２の範囲内にある場合に、ノズル６１からインクを吐出する（このような許容範囲を設けることを「吐出ノズル可否判定」という。）。
【００７９】
また、矢印６３に示すように、ＨＭＰ２０はノズル６１の移動方向と加速度を監視しており、次回の吐出タイミングのノズル６１の位置を予測している。したがって、予測された位置と許容誤差６２の範囲内を比較してインクの吐出を準備することが可能になる。
【００８０】
＜動作手順＞
図１３は、画像データ出力器１１とＨＭＰ２０の動作手順を説明するフローチャート図の一例である。まず、ユーザは画像データ出力器１１の電源ボタンを押下する（Ｕ１０１）。画像データ出力器１１はそれを受け付け、電池等から電源が供給されて起動する。
【００８１】
ユーザは画像データ出力器１１で出力したい画像を選択する（Ｕ１０２）。画像データ出力器１１は画像の選択を受け付ける。ワープロアプリケーションのようなソフトウェアの文書データが画像として選択されてもよいし、ＪＰＥＧなどの画像データが選択されてもよい。必要であればプリンタドライバが画像データ以外のデータを画像に変更してよい。
【００８２】
ユーザは選択した画像をＨＭＰ２０で印刷する操作を行う（Ｕ１０３）。ＨＭＰ２０は印刷ジョブの実行の要求を受け付ける。印刷ジョブの要求により画像データがＨＭＰ２０へ送信される。
【００８３】
ユーザは、ＨＭＰ２０を持ち、印刷媒体１２（例えばノート）の上で初期位置を決定する（Ｕ１０４）。
【００８４】
そして、ユーザはＨＭＰ２０の印刷開始ボタンを押下する（Ｕ１０５）。ＨＭＰ２０は印刷開始ボタンの押下を受け付ける。
【００８５】
ユーザはＨＭＰ２０を印刷媒体１２の上で滑らせるように自由に走査する（Ｕ１０６）。
【００８６】
続いて、ＨＭＰ２０の動作を説明する。以下の動作はＣＰＵ３３がファームウェアを実行することで行われる。
【００８７】
ＨＭＰ２０も電源のＯＮにより起動する。ＨＭＰ２０のＣＰＵ３３は、ＨＭＰ２０に内蔵されている図３，４のハードウェア要素を初期化する（Ｓ１０１）。例えば、ナビゲーションセンサＩ/Ｆ４２やジャイロセンサＩ/Ｆ４５のレジスタを初期化したり、印字／センサタイミング生成部４３にタイミング値を設定したりする。また、ＨＭＰ２０と画像データ出力器１１との間の通信を確立する。
【００８８】
ＨＭＰ２０のＣＰＵ３３は初期化が完了したかどうかを判定し、完了していない場合はこの判定を繰り返す（Ｓ１０２）。
【００８９】
初期化が完了すると（Ｓ１０２のＹｅｓ）、ＨＭＰ２０のＣＰＵ３３は、ＯＰＵ２６の例えばＬＥＤ点灯によりユーザに印刷可能な状態であることを報知する（Ｓ１０３）。これにより、ユーザは印刷可能な状態であることを把握し、上記のように印刷ジョブの実行を要求する。
【００９０】
印刷ジョブの実行の要求により、ＨＭＰ２０の通信Ｉ/Ｆ２７は画像データ出力器１１から画像データの入力を受け付け、画像が入力された旨をＯＰＵ２６のＬＥＤを点滅させる等によりユーザに対し報知する（Ｓ１０４）。
【００９１】
ユーザが印刷媒体１２上でＨＭＰ２０の初期位置を決め印刷開始ボタンを押下すると、ＨＭＰ２０のＯＰＵ２６はこの操作を受け付け、ＣＰＵ３３がナビゲーションセンサＩ/Ｆ４２に位置（移動量）を読み取らせる（Ｓ１０５）。これにより、ナビゲーションセンサＩ/Ｆ４２はナビゲーションセンサＳ０と通信し、ナビゲーションセンサＳ０が検出した移動量を取得しレジスタなどに格納しておく（Ｓ１００１）。ＣＰＵ３３はナビゲーションセンサＩ/Ｆ４２から移動量を読み出す。
【００９２】
ユーザが印刷開始ボタンを押下した直後に取得された移動量はゼロであるがゼロでないとしても、ＣＰＵ３３は例えば座標(0,0)の初期位置としてＤＲＡＭ２９やＣＰＵ３３のレジスタなどに格納する（Ｓ１０６）。
【００９３】
また、初期位置を取得すると印字／センサタイミング生成部４３がタイミングの生成を開始する（Ｓ１０７）。印字／センサタイミング生成部４３は、初期化で設定されたナビゲーションセンサＳ０の移動量の取得タイミングに達するとナビゲーションセンサＩ/Ｆ４２にタイミングとジャイロセンサＩ/Ｆ４５にタイミングを指示する。これが周期的に行われ上記のサンプリング周期となる。
【００９４】
ＨＭＰ２０のＣＰＵ３３は、移動量と角速度情報を取得するタイミングであるか否かを判定する（Ｓ１０８）。この判定は、割込みコントローラ４１からの通知により行うが、印字／センサタイミング生成部４３と同じタイミングをＣＰＵ３３がカウントすることで判定してもよい。
【００９５】
移動量と角速度情報を取得するタイミングになると、ＨＭＰ２０のＣＰＵ３３はナビゲーションセンサＩ/Ｆ４２から移動量を取得し、ジャイロセンサＩ/Ｆ４５から角速度情報を取得する（Ｓ１０９）。上記のように、ジャイロセンサＩ/Ｆ４５は印字／センサタイミング生成部４３が生成するタイミングでジャイロセンサ３１から角速度情報を取得しており、ナビゲーションセンサＩ/Ｆ４２は印字／センサタイミング生成部４３が生成するタイミングでナビゲーションセンサＳ０から移動量を取得している。
【００９６】
次に、位置算出回路３４は角速度情報と移動量を用いてナビゲーションセンサＳ０の現在の位置を算出する（Ｓ１１０）。具体的には、位置算出回路３４は、前回のサイクルで算出した位置(Ｘ,Ｙ)と、今回取得した移動量(ΔＸ´、ΔＹ´)及び角速度情報から算出した移動距離を加えて、現在のナビゲーションセンサＳ０の位置を算出する。初期位置のみで、前回算出した位置がない場合は、初期位置に今回取得した移動量(ΔＸ´、ΔＹ´) 及び角速度情報から算出した移動距離を加えて、現在のナビゲーションセンサＳ０の位置を算出する。
【００９７】
次に、位置算出回路３４はナビゲーションセンサＳ０の現在の位置を用いて各ノズル６１の現在の位置を算出する（Ｓ１１１）。
【００９８】
このように、印字／センサタイミング生成部４３により角速度情報と移動量が同時に又はほぼ同時に取得されるので、回転角と回転角が検出されたタイミングで取得された移動量でノズル６１の位置を算出できる。したがって、種類が異なるセンサの情報でノズル６１の位置が算出されても、ノズル６１の位置の精度が低下しにくい。
【００９９】
次に、ＣＰＵ３３はＤＭＡＣ３８を制御して、算出した各ノズル６１の位置を基に、各ノズル６１の周辺画像の画像データをＤＲＡＭ２９からImage RAM３７へ送信する（Ｓ１１２）。なお、回転器３９は、ユーザにより指定されたヘッド位置（ＨＭＰ２０の持ち方など）及びＩＪ記録ヘッド２４の傾きに応じて、画像を回転させる。
【０１００】
次に、ＩＪ記録ヘッド制御部４４は周辺画像を構成する各画像要素の位置座標と、各ノズル６１の位置座標とを比較する（Ｓ１１３）。位置算出回路３４は、ノズル６１の過去の位置と現在の位置を用いてノズル６１の加速度を算出している。これにより、位置算出回路３４は、ナビゲーションセンサＩ/Ｆ４２が移動量を取得しジャイロセンサＩ/Ｆ４５が角速度情報を取得する周期よりも短いＩＪ記録ヘッド２４のインク吐出周期ごとにノズル６１の位置を算出している。
【０１０１】
ＩＪ記録ヘッド制御部４４は、位置算出回路３４が算出するノズル６１の位置から所定範囲内に画像要素の位置座標が含まれるか否かを判定する（Ｓ１１４）。
【０１０２】
吐出条件を満たさない場合、処理はステップＳ１０８に戻る。吐出条件を満たす場合、ＩＪ記録ヘッド制御部４４はノズル６１ごとに画像要素のデータをＩＪ記録ヘッド駆動回路２３に出力する（Ｓ１１５）。これにより、印刷媒体１２にはインクが吐出される。
【０１０３】
次に、ＣＰＵ３３は全画像データを出力したかを判定する（Ｓ１１６）。出力していない場合、ステップＳ１０８からＳ１１５までの処理を繰り返す。
【０１０４】
全画像データを出力した場合、ＣＰＵ３３は、例えばＯＰＵ２６のＬＥＤを点灯させユーザに印刷が終了したことを報知する（Ｓ１１７）。
【０１０５】
なお、全画像データを出力しなくても、ユーザが十分と判断した場合には、ユーザは印刷完了ボタンを押下し、ＯＰＵ２６がそれを受け付けて、印刷を終了してよい。印刷終了後、ユーザが電源をＯＦＦにすることもできるし、印刷が終了した時点で、自動で電源がOFFにされるようになっていてもよい。
【０１０６】
＜ナビゲーションセンサが１つの場合の画像形成可能範囲＞
図１４、１５を用いて、ナビゲーションセンサが１つの場合の画像形成可能範囲５０１を説明する。図１４は、比較のために示されたナビゲーションセンサ３０が２つの場合の画像形成可能範囲５０１を説明する図の一例である。
【０１０７】
図１４（ａ）ではノズルに対し並列に２つのナビゲーションセンサ３０が配置されている。なお、図１４（ａ）はＨＭＰ２０を上から見た図である。図１４（ｂ）は、図１４（ａ）の配置において印刷媒体１２上になければいけない部品（ナビゲーションセンサ、ノズル）により形成される多角形５０２を示す。多角形５０２は底面のサイズの一例である。多角形５０２を形成するノズル６１から右側のナビゲーションセンサＳ０，Ｓ１までの間隔をＡ〔ｍｍ〕、ノズル６１の下端と下側のナビゲーションセンサＳ１までの間隔をＢ〔ｍｍ〕とする。
【０１０８】
図１４（ｃ）は、図１４（ａ）の配置の場合の画像形成可能範囲５０１を示す。ノズル６１は多角形５０２の左端かつ上端にあるので印刷媒体１２の左端の上端から画像形成可能である。これに対し、ノズル６１から右側のナビゲーションセンサＳ０，Ｓ１までの間隔がＡ〔ｍｍ〕なので、ノズル６１は印刷媒体１２の右端からＡ〔ｍｍ〕よりも右方向に移動できない（画像形成できない）。このため、画像形成可能範囲５０１の右端は印刷媒体１２の右端から長さＡ〔ｍｍ〕の場所になる。同様にノズル６１から下側のナビゲーションセンサＳ１までの間隔がＢ〔ｍｍ〕なので、ノズル６１は印刷媒体１２の下短からＢ〔ｍｍ〕よりも下方向に移動できない（画像形成できない）。このため、画像形成可能範囲５０１の下端は印刷媒体１２の下端から長さＢ〔ｍｍ〕の場所になる。
【０１０９】
図１４（ｄ）ではノズル６１の上下に直列に２つのナビゲーションセンサＳ０、Ｓ１が配置されている。図１４（ｅ）は、図１４（ｄ）の配置において印刷媒体１２上になければいけない部品（ナビゲーションセンサ、ノズル）により形成される多角形５０２を示す。多角形５０２を形成するナビゲーションセンサＳ０からＳ１までの長さをＡ〔ｍｍ〕とする。
【０１１０】
図１４（ｆ）は、図１４（ｄ）の配置の場合の画像形成可能範囲５０１を示す。印刷媒体１２の縦の長さが長さＡ〔ｍｍ〕よりも短いので、ＨＭＰ２０は印刷媒体１２に画像を形成できない。ＨＭＰ２０が９０度回転され、印刷媒体１２の横方向に平行にＨＭＰ２０が配置されても、印刷媒体１２の横の長さが長さＡ〔ｍｍ〕よりも短いので、ＨＭＰ２０は印刷媒体１２に画像を形成できない。このため、図１４（ｆ）には画像形成可能範囲５０１が存在しない。
【０１１１】
このように、２つのナビゲーションセンサ３０のいずれか１つでも印刷媒体１２からはみ出ると、ＨＭＰ２０が位置を検出できなくなる（位置が正確でなくなる）ため、ＨＭＰ２０の底面部のサイズが大きいことは、印刷媒体１２における画像形成可能範囲５０１を制限するという不都合をもたらしていた。また、当然ながら２つのナビゲーションセンサ３０が印刷媒体１２の上にあっても、ＩＪ記録ヘッド２４が印刷媒体１２からはみ出すとＨＭＰ２０は画像を形成できない。したがって、２つのナビゲーションセンサ３０及びＩＪ記録ヘッド２４が印刷媒体１２の内側になければならず、画像形成可能範囲５０１が制限されていた。このため、従来のＨＭＰ２０ではユーザが紙面を広く使って画像形成することが難しい場合があった。
【０１１２】
図１５は、ナビゲーションセンサ３０が１つの場合の画像形成可能範囲５０１を説明する図の一例である。図１５（ａ）ではノズル６１に対し直列に１つのナビゲーションセンサＳ０が配置されている。すなわち、ノズル６１の下方に可能な限り接近した状態でナビゲーションセンサＳ０が隣接して配置されている。なお、図１５（ａ）はＨＭＰ２０を上から見た図である。図１５（ｂ）は、図１５（ａ）の配置において印刷媒体１２上になければいけない部品（ナビゲーションセンサ、ノズル）により形成される多角形５０２を示す。多角形５０２を形成するノズル６１の下端とナビゲーションセンサＳ０までの距離をＡ〔ｍｍ〕とする。
【０１１３】
図１５（ｃ）は、図１５（ａ）の配置の場合の画像形成可能範囲５０１を示す。多角形５０２はほぼ直線状なので印刷媒体１２の左端の上端から、印刷媒体１２の右端の上端まで画像形成可能である。しかし、ノズル６１から下側のナビゲーションセンサＳ０までの間隔がＡ〔ｍｍ〕なので、ノズル６１は印刷媒体１２の下短からＡ〔ｍｍ〕よりも下方向に移動できない（画像形成できない）。このため、画像形成可能範囲５０１の下端は印刷媒体１２の下端から長さＡ〔ｍｍ〕の場所になる。
【０１１４】
図１４（ｃ）（ｆ）と図１５（ｃ）を比較すると明らかなように、ナビゲーションセンサ３０が１つとなることで、画像形成可能範囲５０１が大きく広がることが分かる。とくに印刷媒体１２の上半分以上が画像形成可能範囲５０１となるので、ＨＭＰ２０が１８０度反転されると印刷媒体１２の下半分が画像形成可能範囲５０１となる。したがって、実質的に印刷媒体１２の全体を画像形成可能範囲５０１とすることができる。なお、図１５（ａ）においてナビゲーションセンサＳ０はＩＪ記録ヘッド２４の上方に配置されていてもよい。この場合、画像形成可能範囲５０１は印刷媒体１２の下端から、上端までＡ〔ｍｍ〕を残す範囲までである（図１５（ｃ）の画像形成可能範囲５０１が上下反転する）。
【０１１５】
図１５（ｄ）ではノズル６１の配列方向に垂直な方向に１つのナビゲーションセンサＳ０が配置されている。すなわち、ノズル６１の右側に可能な限り接近した状態でナビゲーションセンサＳ０が隣接して配置されている。図１５（ｅ）は、図１５（ｄ）の配置において印刷媒体１２上になければいけない部品（ナビゲーションセンサ、ノズル）により形成される多角形５０２を示す。多角形５０２を形成するノズルとナビゲーションセンサＳ０までの距離をＡ〔ｍｍ〕とする。
【０１１６】
図１５（ｆ）は、図１５（ｄ）の配置の場合の画像形成可能範囲５０１を示す。ノズルは多角形５０２の上端かつ左端にありノズル６１の下方にナビゲーションセンサＳ０がないので印刷媒体１２の左端の上端から下端まで画像形成可能である。しかし、ノズル６１から右側のナビゲーションセンサＳ０までの間隔がＡ〔ｍｍ〕なので、ノズル６１は印刷媒体１２の右端からＡ〔ｍｍ〕よりも右方向に移動できない（画像形成できない）。このため、画像形成可能範囲５０１の右端は印刷媒体１２の右端から長さＡ〔ｍｍ〕の場所になる。
【０１１７】
図１４（ｃ）（ｆ）と図１５（ｆ）を比較すると明らかなように、ナビゲーションセンサ３０が１つとなることで、画像形成可能範囲５０１が大きく広がることが分かる。とくに印刷媒体１２の左半分以上が画像形成可能範囲５０１となるので、ＨＭＰ２０が１８０度反転されると印刷媒体１２の右半分が画像形成可能範囲５０１となる。したがって、実質的に印刷媒体１２の全体を画像形成可能範囲５０１とすることができる。なお、図１５（ｄ）において、ナビゲーションセンサＳ０はＩＪ記録ヘッド２４の左側に配置されていてもよい。この場合、画像形成可能範囲５０１は印刷媒体１２の右端から、左端までＡ〔ｍｍ〕を残す範囲までである（図１５（ｆ）の画像形成可能範囲５０１が左右反転する）。
【０１１８】
また、図１６に示すように、ＩＪ記録ヘッド２４にナビゲーションセンサＳ０が配置されていてもよい。図１６は、ナビゲーションセンサＳ０の配置例を説明する図の一例である。ナビゲーションセンサＳ０は、例えばノズル６１を囲むブラケット（保持部材）に設けられた孔に配置される。あるいは、ナビゲーションセンサＳ０が底面付近になくてもよい場合、底面よりも筐体の内側にナビゲーションセンサＳ０が設置されてもよい。この場合、同一平面にナビゲーションセンサＳ０とノズル６１が配置されなくてよいのでナビゲーションセンサＳ０とノズル６１の間隔を短くできる。
【０１１９】
＜ジャイロセンサの配置例＞
ジャイロセンサ３１は回転の中心に近い方に配置されていることが好ましいことが知られている。しかし、ＨＭＰ２０の回転中心はＨＭＰ２０の中心や重心となる場合よりも、ユーザの肘の付近となる場合が多い。ユーザは肘を中心にＨＭＰ２０を走査させるからである。そこで、ジャイロセンサ３１は図１７に示すように配置されることが好ましい。
【０１２０】
図１７（ａ）はジャイロセンサ３１の配置例を示す図の一例である。ジャイロセンサ３１はＨＭＰ２０の筐体の手前側であって、幅方向のほぼ中央に配置されている。ユーザの肘に最も近いためである。このような配置により、ジャイロセンサ３１が回転中心の近い場所に配置されるので検出する角速度の精度が向上することが期待される。なお、ユーザはＨＭＰ２０を９０度又は１８０度回転させた状態で走査させる場合がある。この点を考慮すると、ジャイロセンサ３１はＨＭＰ２０の上方からの平面視においてＨＭＰ２０の端部に１つ以上設置されていることが好ましい。
【０１２１】
一方、ＨＭＰ２０を剛体とする場合、必ず筐体の手前側に配置しなければ必要な精度が得られないわけではなく、ＨＭＰ２０のどこに配置されても実用上不足のない精度が得られる。しかし、ユーザが触れうるＨＭＰ２０の部分の近くは、ユーザがＨＭＰ２０を走査させる際に加重がかかることで変形することもあり得る。このような変形がジャイロセンサ３１に伝わると角速度にノイズが入るおそれがある。
【０１２２】
したがって、ＨＭＰ２０の筐体の内部でユーザが触れることができず、変形しにくい状態でジャイロセンサ３１が配置されることが好ましい。具体的には、ＨＭＰ２０の底面付近のプリント基板７０に配置される。なお、プリント基板７０は、樹脂などでできた板状の部品で電子部品や集積回路（ＩＣ）、及びそれらを繋ぐ金属配線などを高密度に実装したものである。プリント基板はＰＷＢや電子基板と呼ばれる場合がある。このように配置されることで、一般的な人の力でＨＭＰ２０が変形したとしてもジャイロセンサ３１には伝わりにくいので、角速度にノイズが入ることを抑制できる。
【０１２３】
また、ジャイロセンサ３１の角速度は温度変化の影響を受けることが知られており、筐体内の温度変化が少ない場所に配置されることが好ましい。ＳｏＣ、ＡＳＩＣ／ＦＰＧＡ等のＬＳＩ又は電源など、電流が多く流れる回路は動作中、発熱する発熱体である。したがってこれらの回路の近くは温度変化が大きい。このため、図１７（ｂ）に示すようにＳｏＣ５０及びＡＳＩＣ／ＦＰＧＡ４０から可能な限り遠方にジャイロセンサ３１が配置されることが好ましい。図１７（ｂ）では、少なくともＳｏＣ及びＡＳＩＣ／ＦＰＧＡとは異なるプリント基板７０にジャイロセンサ３１が配置されている。
【０１２４】
なお、人間の手も熱源となるので、この点からもジャイロセンサ３１は底面付近に配置されることが好ましい。
【０１２５】
また、温度特性が線形的であったり、事前に温度特性を調査したりすることが可能な場合、温度センサで温度を測定し、温度特性に応じて角速度を補正してもよい。
【０１２６】
また、ナビゲーションセンサＳ０とジャイロセンサ３１が同じプリント基板７０に実装されることも有効である。図１７（ｃ）ではＨＭＰ２０の手前側のジャイロセンサ３１とナビゲーションセンサＳ０が１つのプリント基板７０上に配置されている。ジャイロセンサ３１とナビゲーションセンサＳ０の位置が近くても特にＨＭＰ２０の底面のサイズの削減に貢献しない。しかし、ジャイロセンサ３１が三軸の場合、印刷媒体１２に垂直な軸に対する回転角以外の姿勢の変化を検出できるため、以下のように利点がある。
【０１２７】
図１８はジャイロセンサ３１が検知するＨＭＰ２０の姿勢を説明する図の一例である。ジャイロセンサ３１が三軸の場合、ヨー方向、ロール方向及びピッチ方向の角速度を検出できる。このうちヨー方向の角速度がナビゲーションセンサの位置の算出に使用されている。画像形成中にロール方向及びピッチ方向の角速度が検出された場合、ナビゲーションセンサＳ０が印刷媒体１２から離れてしまった可能性がある。同じプリント基板７０にナビゲーションセンサＳ０とジャイロセンサ３１が配置されている場合、ジャイロセンサ３１が検出したロール方向及びピッチ方向の角速度と同程度の角速度がナビゲーションセンサＳ０にも作用していると考えられるので、ナビゲーションセンサＳ０が印刷媒体１２から離れるほどのロール方向又はピッチ方向の角速度が生じたことを検知しやすい。
【０１２８】
したがって、同じプリント基板７０にナビゲーションセンサＳ０とジャイロセンサ３１が配置されている場合、三軸のジャイロセンサ３１を用いることで、ナビゲーションセンサＳ０が印刷媒体１２から離れたかどうかを検知しやすくなる。
【０１２９】
＜ジャイロセンサ３１の組み付け時の処理＞
また、ジャイロセンサ３１が三軸の角速度を検出可能である場合、ジャイロセンサ３１がＨＭＰ２０に組み付けられた際の組み付け精度をＨＭＰ２０などが検出できる。ジャイロセンサ３１はＨＭＰ２０に可能な限り水平に組み付けられることが好ましい。こうすることでヨー方向のＨＭＰ２０の姿勢の変化が全て角速度で検出可能となる。しかしながら、実際の組み付けではわずかに水平からのずれが生じる場合があり、この場合、ユーザが水平にのみＨＭＰ２０を回転させてもロール方向又はピッチング方向の角速度が検出される場合がある。
【０１３０】
したがって、ユーザは例えばＨＭＰ２０を試験モードなどで動作させ、ＨＭＰ２０を水平に走査させる。ＨＭＰ２０はロール方向又はピッチング方向の角速度を検出し、ジャイロセンサ３１がＨＭＰ２０に対しどのくらい傾いているかを判定する。どのくらい傾いているかが分かるとヨー方向の角速度を補正することができる。
【０１３１】
また、ジャイロセンサ３１が一軸（ヨー方向）のみの角速度を検出する場合、0度→90度→0度の範囲で動かせる冶具が用意される。ＨＭＰ２０はユーザが治具で0度→90度→0度の範囲で動かしている際に、角度を検出する。検出された角度が９０度にならない場合、９０度になるような補正係数を算出し機器内部に格納しておく。したがって、実際の画像形成時には角速度を補正できる。
【実施例２】
【０１３２】
ユーザがＨＭＰ２０を印刷媒体１２上で走査する際、わずかに底面が印刷媒体１２から浮いてしまう場合がある。ナビゲーションセンサ３０も浮いてしまうため、ナビゲーションセンサ３０が検出する位置も正確でなくなる。この浮きによる位置の誤差は無視できるが、移動量の解像度が大きく変わってしまう。
【０１３３】
光学的なナビゲーションセンサ３０の解像度はＣＰＩ（Count Per  Inch）で表される。これは、ナビゲーションセンサ３０が１インチ移動される間にカウントされる数を意味し、数が大きいほど高解像度である。
【０１３４】
図１９に示すように、ナビゲーションセンサ３０は、紙面とナビゲーションセンサ３０間の距離によって、移動量の解像度が変化する。図１９は、センサ紙間距離と移動量の解像度の変化を示す図の一例である。センサ紙間距離が大きいほど解像度が低下することが分かる。これは、ナビゲーションセンサ３０は印刷媒体１２のエッジを光学的に検知するため、センサ紙間距離が近い方がエッジの検出に有利なためである（微小なエッジを検出しやすい）。
【０１３５】
ナビゲーションセンサ３０にはこのような性質があるため、ＨＭＰ２０のメーカではＨＭＰ２０におけるナビゲーションセンサ３０の組み付け位置に合わせて、決まった解像度（CPI）で、Ｘ，Ｙの移動量を検出する。
【０１３６】
このため、ＨＭＰ２０が印刷媒体１２から浮いた場合、移動量にもずれが生じるため（実際の移動量よりも少ない移動量しか検出できない）、何らかの補正が行われることが好ましい。本実施例ではＨＭＰ２０の印刷媒体１２からの浮きによる移動量の解像度の低下を抑制するＨＭＰ２０について説明する。
【０１３７】
図２０（ａ）はナビゲーションセンサ３０の組み付け位置をＨＭＰ２０の上面から示す図であり、図２０（ｂ）はナビゲーションセンサ３０の３軸の回転を説明するための図である。
【０１３８】
図２０（ｂ）に示すように、Ｘ-Ｙ平面に印刷媒体１２が設置され、印刷媒体１２に対し垂直方向がＺ軸とする。実施例１にて説明したようにノズル６１の位置は、Ｚ軸中心の回転角度により算出される。一方、ナビゲーションセンサ３０が印刷媒体１２からどのくらい浮いたかは、Ｘ軸中心の回転角度、及びＹ軸中心の回転角度の少なくとも一方に影響される。なお、ナビゲーションセンサ３０の全体がＺ軸方向に平行移動することは考えなくてよい。一般にユーザがそのような使い方をすることはなく、ナビゲーションセンサ３０の全体が大きく浮いた場合はエラーとなるためである。
【０１３９】
印刷開始時のＸ軸中心の回転角度、及びＹ軸中心の回転角度がゼロとすると、ジャイロセンサ３１がＸ軸(Ｙ-Ｚ平面)の回転角度、Ｙ軸(Ｚ-Ｚ平面)の回転角度を検出することで、位置算出回路３４が印字走査中の浮きを検出することができる。
【０１４０】
次に、図２１を参照して浮き量の算出方法を説明する。図２１はナビゲーションセンサ３０の印刷媒体１２からの浮き量を説明する図の一例である。図２１（ａ）は、ナビゲーションセンサ３０を図２０（ａ）のＹ軸方向から見た場合の側面図である。図２１（ｂ）はナビゲーションセンサ３０が左端を軸にして回転した（浮いた）場合の浮き量を示し、図２１（ｃ）はナビゲーションセンサ３０が右端を軸にして回転した（浮いた）場合の浮き量を示す。
【０１４１】
ナビゲーションセンサ３０のＨＭＰ２０の筐体の左端からの距離をＬ１、右端からの距離をＬ２とする。左端を軸に回転した場合と右端を軸に回転した場合とでＹ軸中心の回転方向が逆になるので、位置算出回路３４は回転角度が正か負かによって回転方向（左端軸回転と右端軸回転）を判断できる。左端軸回転の場合は図２１（ｂ）のように浮き量を算出し、右端軸回転の場合は図２１（ｃ）のように浮き量を算出する。
【０１４２】
ジャイロセンサ３１が検出する回転角をαとする。回転方向が判断された後のαは絶対値でよい。図２１（ｂ）から左端軸回転の場合の浮き量は以下のようになる。
Ｌ１sinα
同様に図２１（ｃ）から左端軸回転の場合の浮き量は以下のようになる。
Ｌ２sinα
図２１（ａ）（ｂ）の浮き量はＹ軸を中心とする回転により生じるものであるが、ＨＭＰ２０にはＸ軸を中心とする回転も生じる。このため、位置算出回路３４はＸ軸を中心とする回転により生じる浮き量も算出する。以上から、最終的な浮き量は以下のように、Ｘ軸中心回転による浮き量とＹ軸中心回転による浮き量の合計（和）として算出される。
【０１４３】
ナビゲーションセンサ３０の浮き量 
＝浮き量(Ｘ軸中心回転)  ＋  浮き量(Ｙ軸中心回転)
なお、ナビゲーションセンサ３０が浮いたことで、ナビゲーションセンサ３０の高さ方向だけでなく横方向にナビゲーションセンサ３０が移動する。移動量は、「Ｌ１−Ｌ１cosα」「Ｌ２−Ｌ２cosα」である。しかし、実際のＨＭＰ２０の走査においては浮き量が小さいため無視することができる。
【０１４４】
しかしながら、上記した、浮きにより生じる印刷媒体１２とナビゲーションセンサ３０間の距離の変化による移動量の解像度の違いは無視できない。走査時に、ナビゲーションセンサ３０が若干浮いてしまうだけで、ナビゲーションセンサ３０が出力する移動量の解像度が大きく変化する（小さくなる）ため、ナビゲーションセンサ３０が実際に移動した量よりも検出される移動量が小さくなる。
【０１４５】
そこで、位置算出回路３４は図１９に示すセンサ紙間距離と移動量の解像度の比例関係を利用して、浮き量を解像度の変化に換算する解像度換算を行い、移動量を補正する。具体例を用いて説明する。
【０１４６】
例えば、ナビゲーションセンサ３０のセンサ紙間距離と移動量の解像度との関係が以下のとおりであるとする。
印刷媒体−センサ間  ２mmのとき、4000cpi相当
印刷媒体−センサ間  ２．１mmのとき、3500cpi相当
つまり、浮き量が２ｍｍから２．１ｍｍに変化すると、移動量の解像度が５００ｃｐｉ低下する。これは、印刷媒体−センサ間が２ｍｍの場合、ナビゲーションセンサ３０が１ｍｍ動いた際にナビゲーションセンサ３０が出力する移動量は１５７カウントだが、印刷媒体−センサ間が２．１ｍｍに変化すると、ナビゲーションセンサ３０が１ｍｍ動いた際にナビゲーションセンサ３０が出力する移動量は１３７カウントに低下することを意味する。したがって、ナビゲーションセンサ３０の移動量が実際の移動量よりも少なく算出されてしまい、ナビゲーションセンサ３０の位置にズレが生じてしまう。
【０１４７】
しかしながら、図１９のようにセンサ紙間距離と移動量の解像度の比例関係をＨＭＰ２０が保持しておくことで、浮き量から移動量の解像度を位置算出回路３４が推定できるため、位置の補正が可能になる。
【０１４８】
例えば、図１９のようなセンサ紙間距離と移動量の解像度の関係をｙ＝ａｘ＋ｂの式で表す。ｙが移動量の解像度、ｘがセンサ紙間距離、ａ、ｂが係数である。浮き量でｘが求められるので、移動量の解像度を求めることができる。浮き量がゼロの場合の移動量の解像度を求めた移動量の解像度で割った値を、ナビゲーションセンサ３０が浮いている場合に検出された移動量（カウント数）に乗じる。これにより、ナビゲーションセンサ３０が浮いても浮き量がゼロの場合の移動量に補正できる。
【０１４９】
なお、紙種によってセンサ紙間距離と移動量の解像度の比例関係が変わる場合があるため、紙種に応じたセンサ紙間距離と移動量の解像度の比例関係を保持しておくことが好ましい。
【０１５０】
図２２は、画像データ出力器１１とＨＭＰ２０の動作手順を説明するフローチャート図の一例である。図２２の説明では図１３との相違を主に説明する。
【０１５１】
まず、ステップＳ１０６で、ＣＰＵ３３は例えば座標(0,0)の初期位置と共に、ジャイロセンサ３１の初期角度（Ｘ，Ｙ軸）をＤＲＡＭ２９やＣＰＵ３３のレジスタなどに格納する（Ｓ１０６）。すなわち、ＣＰＵ３３はジャイロセンサ３１の角速度情報をリードする。
【０１５２】
そして、ステップＳ１１０で位置算出回路３４は、角速度情報と移動量を用いてナビゲーションセンサＳ０の現在の位置を算出する際、ジャイロセンサ３１が検出するＸ軸及びＹ軸を中心とする回転角に基づいて浮き量を算出し、ナビゲーションセンサ３０の位置を補正する。
【０１５３】
以上のように、本実施例によれば、ナビゲーションセンサ３０が浮いたことで、移動量の解像度が変化しても、ナビゲーションセンサ３０の位置を補正できる。
【０１５４】
＜その他の適用例＞
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【０１５５】
例えば、上記したＳｏＣ５０、ＡＳＩＣ/ＦＰＧＡ４０の構成要素は、ＣＰＵ性能やＡＳＩＣ/ＦＰＧＡ４０の回路規模等により、どちらに含まれていてもよい。
【０１５６】
また、本実施形態ではインクを吐出して画像を形成すると説明したが、可視光、紫外線、赤外線、レーザなどを照射して画像を形成してもよい。この場合、印刷媒体１２として例えば熱や光に反応するものが用いられる。また、透明な液体を吐出してもよい。この場合、特定の波長域の光が照射されると可視情報が得られる。また、金属ペーストや樹脂などを吐出してもよい。
【０１５７】
また、本実施形態ではジャイロセンサ３１により印刷媒体１２における姿勢を検出すると説明したが、地磁気センサによっても水平方向の姿勢（方位）を検出できる。
【０１５８】
また、ジャイロセンサ３１は１つに限られず２つ以上設置されていてもよい。
【０１５９】
なお、ナビゲーションセンサＳ０は移動量検出手段の一例であり、ジャイロセンサ３１は姿勢検出手段の一例であり、位置算出回路３４は位置算出手段の一例である。印字/センサタイミング生成部４３はタイミング通知手段の一例であり、ＩＪ記録ヘッド制御部４４等は液滴吐出手段の一例であり、ＨＭＰ２０は液滴吐出装置の一例である。ＣＰＵ３３、位置算出回路３４及びジャイロセンサ３１は浮き量算出手段の一例である。
【０１６０】
また、ＨＭＰ２０のうち位置の算出に必要な機能を最低限有する装置が位置検出装置である。例えば、ナビゲーションセンサＳ０、ジャイロセンサ３１、位置算出回路３４，及びＣＰＵ３３を有する。換言すると画像形成に必要な機能を有さないＨＭＰ２０が位置検出装置である。また、位置検出装置が搭載された装置が被搭載物であり、ＨＭＰ２０は被搭載物の一例である。
【符号の説明】
【０１６１】
１１      画像データ出力器
１２      印刷媒体
２５      制御部
３０      ナビゲーションセンサ
３１      ジャイロセンサ
３３      ＣＰＵ
３４      位置算出回路
４２      ナビゲーションセンサＩ/Ｆ
４３      センサタイミング生成部
４５      ジャイロセンサＩ/Ｆ
６１      ノズル
７０      プリント基板
【先行技術文献】
【特許文献】
【０１６２】
【特許文献１】特表２０１０-５２２６５０号公報
【図１】
2017170879.tif 000004
【図２】
2017170879.tif 000005
【図３】
2017170879.tif 000006
【図４】
2017170879.tif 000007
【図５】
2017170879.tif 000008
【図６】
2017170879.tif 000009
【図７】
2017170879.tif 000010
【図８】
2017170879.tif 000011
【図９】
2017170879.tif 000012
【図１０】
2017170879.tif 000013
【図１１】
2017170879.tif 000014
【図１２】
2017170879.tif 000015
【図１３】
2017170879.tif 000016
【図１４】
2017170879.tif 000017
【図１５】
2017170879.tif 000018
【図１６】
2017170879.tif 000019
【図１７】
2017170879.tif 000020
【図１８】
2017170879.tif 000021
【図１９】
2017170879.tif 000022
【図２０】
2017170879.tif 000023
【図２１】
2017170879.tif 000024
【図２２】
2017170879.tif 000025