(57)【要約】【課題】リニアエンコーダにインクミスト等が付着しても、キャリッジの速度及び位置を正確に検出することができるインクジェットプリンタを提供する。【解決手段】リニアスケールは、キャリッジの移動方向に沿って平行に配置される。キャリッジに取り付けられたリニアセンサ２２は、リニアスケールを読み取って得られた位相差９０度のＡ相信号及びＢ相信号を出力する。crenca補正回路５０ａは、Ａ相信号のデューティを略５０％に補正し、その補正後の信号をa_comped信号として出力し、crencb補正回路５０ｂは、Ｂ相信号のデューティを略５０％に補正し、その補正後の信号をb_comped信号として出力する。位置カウンタ４１は、a_comped信号及びb_comped信号に基づいてキャリッジの位置に対応する値をカウントする。ＭＰＵ３１は、位置カウンタ４１のカウント値に基づいてキャリッジの位置及び速度を検出する。【選択図】        図３
2004202963.tif 000002
【特許請求の範囲】
【請求項１】
インクの吐出を行うプリントヘッドと、前記プリントヘッドを搭載するキャリッジとを有し、前記キャリッジを往復移動しながら前記プリントヘッドからインクを吐出することにより記録媒体に画像を形成するインクジェットプリンタにおいて、
前記キャリッジの移動方向に沿って平行に配置された光学式のリニアスケールと、
前記キャリッジに取り付けられており、前記リニアスケールを読み取って得られた位相差９０度のＡ相信号及びＢ相信号を出力する光学式のリニアセンサと、
前記Ｂ相信号のデューティを略５０％に補正し、その補正後の信号を第一補正信号として出力する第一補正手段と、
前記Ａ相信号のデューティを略５０％に補正し、その補正後の信号を第二補正信号として出力する第二補正手段と、
前記第一補正信号及び前記第二補正信号に基づいて前記キャリッジの位置に対応する値をカウントする位置計数手段と、
前記位置計数手段のカウント値に基づいて前記キャリッジの位置及び速度を制御する制御手段と、
を備えることを特徴とするインクジェットプリンタ。
【請求項２】
前記第一補正手段は、前記Ａ相信号の周期の半分のパルス幅を有する第一パルス信号を、前記Ａ相信号の立ち上がりから、前記キャリッジの移動方向、前記Ａ相信号の周期及び前記Ｂ相信号のデューティに基づいて算出された所定のディレイ値だけ遅れて発生させる第一信号生成手段と、前記Ｂ相信号のデューティに応じて前記第一パルス信号と前記Ｂ相信号との論理和又は論理積を算出することにより前記第一補正信号を生成する第一論理演算手段とを有し、
前記第二補正手段は、前記Ｂ相信号の周期の半分のパルス幅を有する第二パルス信号を、前記Ｂ相信号の立ち上がりから、前記キャリッジの移動方向、前記Ｂ相信号の周期及び前記Ａ相信号のデューティに基づいて算出された所定のディレイ値だけ遅れて発生させる第二信号生成手段と、前記Ａ相信号のデューティに応じて前記第二パルス信号と前記Ａ相信号との論理和又は論理積を算出することにより前記第二補正信号を生成する第二論理演算手段とを有することを特徴とする請求項１記載のインクジェットプリンタ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、キャリッジの移動量を光学式のリニアエンコーダで検出し、そのリニアエンコーダからの信号に基づいてキャリッジの速度・位置制御を行うインクジェットプリンタに関する。
【０００２】
【従来の技術】
インクジェットプリンタは、プリントヘッドを搭載したキャリッジを往復移動させることによって印字を行う。一般に、インクジェットプリンタには、キャリッジの移動量を検出する光学式のリニアエンコーダが設けられている。光学式のリニアエンコーダは、一定間隔で微小ピッチの開口部（スリット）が形成されたリニアスケール（スケール板）と、リニアセンサとを備えている。リニアセンサは、リニアスケールを挟んで互いに対向するように設けられた発光部及び受光部を有する。リニアセンサからの出力信号に基づいてリニアスケールとリニアセンサとの相対的な位置が検出される（例えば、特許文献１参照。）。このようなリニアエンコーダにおいては、リニアスケールの開口部にインクミストやゴミ等が付着し、正常な出力が得られない場合がある。
【０００３】
例として、従来のリニアエンコーダの一形式について説明する。図２０は被測定物の直線方向の位置検出や移動量検出等を行うリニアエンコーダの概略構成図である。図２０に示すリニアエンコーダは、リニアスケール１１０と、リニアセンサとを備える。リニアセンサは、発光部１２０と、受光部（検出ヘッド）１３０とを有する。リニアスケール１１０は、被測定物（不図示）に取り付けられ、リニアセンサは、リニアスケール１１０の長手方向ｘに沿って移動可能な可動部（不図示）に取り付けられる。インクジェットプリンタでは、リニアスケール１１０はキャリッジレールに、リニアセンサはキャリッジに取り付けられる場合が多い。可動部が図２０に示す方向ｘに沿って移動することにより、リニアスケール１１０とリニアセンサとの相対位置が変化する。
【０００４】
リニアスケール１１０には、スリット状（長方形状）の複数の開口部（窓部ともいう。）１１１がピッチＰで長手方向ｘに沿って形成されている。発光部１２０は、光源、コリメーターレンズ等を有し、平行光束を放射する。受光部１３０は、リニアスケール１１０に対する可動部の移動状態を検出するために、二つのスリット状の開口部（窓部ともいう。）１３１ａ，１３１ｂを有するマスク１３１と、開口部１３１ａ，１３１ｂの各々に対応した位置に設けられたＡ相フォトダイオード１４１及びＢ相フォトダイオード１４２とを有する。
【０００５】
発光部１２０からの光束は、リニアスケール１１０の開口部１１１を通り受光部１３０に設けたＡ相フォトダイオード１４１とＢ相フォトダイオード１４２に入射する。リニアスケール１１０には、ピッチＰでスリット状の窓部１１１が設けられており、また、受光部１３０のマスク１３１にも、Ａ相フォトダイオード１４１用のスリット状の窓部１３１ａと、Ｂ相フォトダイオード１４２用のスリット状の窓部１３１ｂとが設けられている。このため、Ａ相フォトダイオード１４１の出力電流はマスク１３１の窓部１３１ａ内に照射された光量に比例し、Ｂ相フォトダイオード１４２の出力電流はマスク１３１の窓部１３１ｂ内に照射された光量に比例する。
【０００６】
いま、便宜上、発光部１２０からの光束が完全な平行光束であると仮定する。この平行光束がリニアスケール１１０に入射すると、平行光束はリニアスケール１１０の窓部１１１のみ通過することができる。このため、受光部１３０にはリニアスケール１１０の窓部１１１に対応した領域の光束が照射される。
【０００７】
図２１はリニアスケール１１０と受光部１３０との位置関係を説明するための概略図である。リニアスケール１１０の各窓部１１１のｘ方向の幅とマスク１３１の窓部１３１ａ，１３１ｂのｘ方向の幅とは同じである。ここで、これら窓部１１１，１３１ａ，１３１ｂの幅をＤ／２とする。また、窓部１１１，１３１ａ，１３１ｂの幅Ｄ／２は、リニアスケール１１０の窓部１１１のピッチＰの半分となっている。すなわち、Ｐ＝Ｄである。更に、マスク１３１における二つの窓部１３１ａ，１３１ｂのｘ方向の間隔は、通常、（ｎ＋１／４）×Ｐである。ここで、ｎは自然数である。
【０００８】
このとき、Ａ相フォトダイオード１４１の出力電流Ｉはマスク１３１の窓部１３１ａ内に照射された光束の光量に比例し、Ｂ相フォトダイオード１４２の出力電流Ｉはマスク１３１の窓部１３１ｂ内に照射された光束の光量に比例する。このため、リニアスケール１１０と受光部１３０との相対的な位置がｘ方向に変位したとき、その変位量と各フォトダイオード１４１，１４２からの出力電流Ｉとの関係は図２２に示すようになる。
【０００９】
図２２に示すように、Ａ相フォトダイオード１４１からの出力電流Ｉ（Ａ相出力）は三角波１５１となり、Ｂ相フォトダイオード１４２からの出力電流Ｉ（Ｂ相出力）は三角波１５２となる。図２１に示すように、マスク１３１における二つの窓部１３１ａ，１３１ｂのｘ方向の間隔は（ｎ＋１／４）×Ｐである。この場合、Ａ相フォトダイオード１４１からの出力電流ＩとＢ相フォトダイオード１４２からの出力電流Ｉとの位相関係は、図２２に示すように、位相が９０度ずれている。通常、かかるＡ相出力１５１、Ｂ相出力１５２を用いて、リニアスケール１１０に対向して設けられた可動部（キャリッジ）の変位・速度の計測や、可動部（キャリッジ）の位置決め制御を行っている。
【００１０】
例えば、図２２に示すＡ相出力１５１、Ｂ相出力１５２の各々をある値でコンパレートした矩形波によりカウンタを駆動し、これによりキャリッジの変位量の計測を行っている。かかる矩形波がリニアセンサからの出力信号、すなわちエンコーダ出力信号（Ａ相信号、Ｂ相信号）であり、通常、デジタル信号である。また、本来、上記の矩形波はデューティ（周期に対するパルス幅の割合）が５０％になるべきものである。
【００１１】
【特許文献１】
特開平５−８７５９０号公報
【００１２】
【発明が解決しようとする課題】
しかしながら、発光部１２０からの光束を完全な平行光束にすることは実際上不可能であり、ある程度散乱された光がＡ相フォトダイオード１４１、Ｂ相フォトダイオード１４２に照射されることになる。このため、実際には、Ａ相フォトダイオード１４１からの出力電流Ｉ及びＢ相フォトダイオード１４２からの出力電流Ｉは、図２３に示すようなものとなる。発光部１２０からの光束が、フォトダイオード１４１，１４２に到達するまでに散乱される理由は、主に、発光部１２０のレンズの汚れやリニアスケール１１０の窓部１１１の汚れなどが関係している。インクジェットプリンタでは、印刷に伴ってプリントヘッドのノズルよりインクミストが発生し、このインクミストが付着することによって、プリンタのさまざまな部位が汚れることになる。特に、リニアスケール１１０やリニアセンサは、プリンタの構造上、インクミストが付着しやすい場所に取り付けられることが多く、リニアスケール１１０やリニアセンサにおいてはインクミストによる汚れが顕著である。そして、発光部１２０から発せられ、フォトダイオード１４１，１４２に到達する光束が完全な平行光束でないと、図２２に示すＡ相出力及びＢ相出力は、図２３に示すように、その波形の形状が変化する。図２３に示すようなＡ相出力及びＢ相出力が得られた場合、それらの波形をコンパレートしたエンコーダ出力信号の波形も、デューティが５０％からばらついてしまう。
【００１３】
発光部１２０からの光束がどのように散乱し、フォトダイオード１４１，１４２に到達するかによって、エンコーダ出力信号のデューティは０〜１００％の値を取り得る。そして、最悪の場合は、エンコーダ出力信号がハイレベルで一定の値に張り付いたり（デューティ１００％）、ローレベルで一定の値に張り付いたり（デューティ０％）する。エンコーダ出力信号の波形をカウンタでカウントすることにより、キャリッジの速度検出、位置検出を行っているので、Ａ相、Ｂ相のエンコーダ出力信号のうちいずれか一方でもデューティが一定の値に張り付いてしまうと、正確な速度検出、位置検出が不可能となる。
【００１４】
また、上記のカウンタは、Ａ相、Ｂ相のエンコーダ出力信号の相対的な関係に基づいて駆動されるので、Ａ相のエンコーダ出力信号のデューティとＢ相のエンコーダ出力信号のデューティが著しく異なるか、それらのデューティがともに著しく大きいか、それらのデューティがともに著しく小さいかすると、リニアスケール１１０に対するリニアセンサの相対的な移動方向をカウンタが誤認識してしまい、キャリッジの速度及び位置についての正確な検出が不可能となる。
【００１５】
本発明は上記事情に基づいてなされたものであり、光学式リニアエンコーダにインクミストやほこり等が付着しても、キャリッジの速度及び位置を正確に検出することができるインクジェットプリンタを提供することを目的とするものである。
【００１６】
【課題を解決するための手段】
上記の目的を達成するための請求項１記載の発明は、インクの吐出を行うプリントヘッドと、前記プリントヘッドを搭載するキャリッジとを有し、前記キャリッジを往復移動しながら前記プリントヘッドからインクを吐出することにより記録媒体に画像を形成するインクジェットプリンタにおいて、前記キャリッジの移動方向に沿って平行に配置された光学式のリニアスケールと、前記キャリッジに取り付けられており、前記リニアスケールを読み取って得られた位相差９０度のＡ相信号及びＢ相信号を出力する光学式のリニアセンサと、前記Ｂ相信号のデューティを略５０％に補正し、その補正後の信号を第一補正信号として出力する第一補正手段と、前記Ａ相信号のデューティを略５０％に補正し、その補正後の信号を第二補正信号として出力する第二補正手段と、前記第一補正信号及び前記第二補正信号に基づいて前記キャリッジの位置に対応する値をカウントする位置計数手段と、前記位置計数手段のカウント値に基づいて前記キャリッジの位置及び速度を制御する制御手段と、を備えることを特徴とするものである。
【００１７】
請求項２記載の発明は、請求項１記載のインクジェットプリンタにおいて、前記第一補正手段は、前記Ａ相信号の周期の半分のパルス幅を有する第一パルス信号を、前記Ａ相信号の立ち上がりから、前記キャリッジの移動方向、前記Ａ相信号の周期及び前記Ｂ相信号のデューティに基づいて算出された所定のディレイ値だけ遅れて発生させる第一信号生成手段と、前記Ｂ相信号のデューティに応じて前記第一パルス信号と前記Ｂ相信号との論理和又は論理積を算出することにより前記第一補正信号を生成する第一論理演算手段とを有し、前記第二補正手段は、前記Ｂ相信号の周期の半分のパルス幅を有する第二パルス信号を、前記Ｂ相信号の立ち上がりから、前記キャリッジの移動方向、前記Ｂ相信号の周期及び前記Ａ相信号のデューティに基づいて算出された所定のディレイ値だけ遅れて発生させる第二信号生成手段と、前記Ａ相信号のデューティに応じて前記第二パルス信号と前記Ａ相信号との論理和又は論理積を算出することにより前記第二補正信号を生成する第二論理演算手段とを有することを特徴とするものである。
【００１８】
【発明の実施の形態】
以下に本発明の一実施形態について図面を参照して説明する。図１は本発明の一実施形態であるインクジェットプリンタの概略斜視図、図２はそのインクジェットプリンタにおけるキャリッジの概略斜視図、図３はそのインクジェットプリンタの概略制御ブロック図である。
【００１９】
本実施形態のインクジェットプリンタは、図１、図２及び図３に示すように、プリントヘッド１１と、キャリッジ１２と、キャリッジレール１３と、キャリッジモータ１４と、キャリッジ駆動ベルト１５と、モータドライバ１６と、光学式のリニアエンコーダ２０と、エンジンコントローラ３０とを備えるものである。
【００２０】
キャリッジ１２には、プリントヘッド１１が搭載されている。プリントヘッド１１は、その下面に多数のノズルを有し、各ノズルの吐出口から微小インク滴を吐出する。
【００２１】
キャリッジレール１３は、キャリッジ１２が走査するレールである。キャリッジ駆動ベルト１５は、キャリッジ１２に固定されており、キャリッジモータ１４の動力をキャリッジ１２に伝達する。ここで、キャリッジモータ１４はモータドライバ１６により駆動される。キャリッジ１２は、キャリッジモータ１４により、キャリッジレール１３に沿ってプリンタの長手方向に往復移動する。図１及び図２に示すように、キャリッジ１２の移動方向には、順方向、逆方向が定義されている。インクジェットプリンタでは、キャリッジ１２を往復移動しながらプリントヘッド１１からインクを吐出することにより、記録媒体に画像を形成する。
【００２２】
リニアエンコーダ２０は、リニアスケール２１と、リニアセンサ２２とを有する。このリニアエンコーダ２０は、図２０及び図２１に示すものと同じ構造のものである。すなわち、リニアスケール２１は、図２０及び図２１におけるリニアスケール１１０に対応し、リニアセンサ２２は、図２０及び図２１におけるリニアセンサ１２０に対応する。このため、以下では、リニアエンコーダ２０について詳細な説明を省略し、簡単に説明することにする。
【００２３】
リニアセンサ２２は、一種のフォトインタラプタであり、発光部と、発光部から発せられた光を受光する受光部とを備えている。図２に示すように、リニアセンサ２２は、キャリッジ１２の背面側に取り付けられており、リニアスケール２１は、リニアセンサ２２の発光部と受光部との間に入り込むようにして、キャリッジ移動方向に沿って平行に配置されている。リニアスケール２１には、多数のスリット（窓部）が一定のピッチで形成されている。リニアセンサ２２の発光部から発せられた光をリニアスケール２１の遮光部が遮ることにより、リニアセンサ２２は遮光部を検出する。また、リニアスケール２１の窓部は、遮光部よりも光の透過性がよい物質で形成されている。このため、発光部から発せられた光のうち、その一部はリニアスケール２１の窓部によって反射若しくは吸収されるが、その大部分は窓部を通過して、受光部に到達する。
【００２４】
受光部に対してある一定量以上の光が照射されると、リニアセンサ２２からは、リニアスケール２１を読み取って得られた二つのエンコーダ出力信号、すなわち、crenca信号（Ａ相信号）及びcrencb信号（Ｂ相信号）が出力される。crenca信号は、Ａ相フォトダイオードからの出力をある値でコンパレートして得られる矩形波であり、crencb信号は、Ｂ相フォトダイオードからの出力をある値でコンパレートして得られる矩形波である。
【００２５】
また、Ａ相フォトダイオード、Ｂ相フォトダイオード、リニアスケール２１の窓部についての位置関係は、図２１に示したものと同様である。このような位置関係をとることにより、crenca信号とcrencb信号は、ほぼ位相差９０度の波形として出力される。図４（ａ）に、キャリッジ１２が順方向に移動している場合、位相差が９０度であるcrenca信号及びcrencb信号の波形の一例を示す。図４（ｂ）に、キャリッジ１２が逆方向に移動している場合、位相差が９０度であるcrenca信号及びcrencb信号の波形の一例を示す。また、図４（ａ），（ｂ）の例では、crenca信号及びcrencb信号のデューティはそれぞれ５０％である。リニアセンサ２２から出力されるcrenca信号及びcrencb信号は、図３に示すように、エンジンコントローラ３０のＡＳＩＣ４０に入力する。
【００２６】
エンジンコントローラ３０は、印刷画像データの処理、当該インクジェットプリンタの駆動系やセンサ系の制御を行うものである。かかるエンジンコントローラ３０は、図３に示すように、ＭＰＵ（制御手段）３１と、画像データメモリ３２と、カスタムＩＣであるＡＳＩＣ４０とを備える。ＭＰＵ３１は、本インクジェットプリンタの各部の制御を統括するものである。また、画像データメモリ３２には、ホストコンピュータ（不図示）から送られた画像データが記憶される。
【００２７】
ＡＳＩＣ４０は、図３に示すように、位置カウンタ（位置計数手段）４１と、データ転送制御回路４２と、画像データメモリ３２を制御するメモリコントローラ４３と、モータドライバ１６を制御するモータ制御回路４４と、crenca補正回路（第二補正手段）５０ａと、crencb補正回路（第一補正手段）５０ｂとを有する。尚、図３において、矢印は電気的接続状態を示しており、矢印の向きが信号の出力方向に対応している。
【００２８】
位置カウンタ４１は、crencb補正回路５０ｂから出力される第一補正信号及びcrenca補正回路５０ａから出力される第二補正信号に基づいて、キャリッジ１２の位置に対応する値をカウントする。本実施形態では、キャリッジ１２の速度検出及び位置検出はすべて位置カウンタ４１のカウント値に基づいて行われる。ＭＰＵ３１は位置カウンタ４１のカウント値をリード／ライト可能である。すなわち、ＭＰＵ３１によって、位置カウンタ４１のカウント値がリードされ、キャリッジ１２の速度及び位置が検出される。ＭＰＵ３１は、こうして検出されたキャリッジ１２の速度情報及び位置情報に基づいて、キャリッジ１２の速度・位置制御を行う。
【００２９】
一般に、リニアエンコーダを用いたインクジェットプリンタでは、リニアセンサからの出力信号のタイミングに従ってプリントヘッドからインクを吐出させ、画像を形成している。本実施形態では、データ転送制御回路４２が、インクを吐出させる信号をプリントヘッド１１に対して出力するが、その出力タイミングを、位置カウンタ４１のカウント値の更新に同期させているのである。すなわち、位置カウンタ４１のカウント値が更新されると、データ転送制御回路４２は、プリントヘッド１１に対して、インクを吐出することを示唆する信号を出力する。したがって、位置カウンタ４１のカウント値の更新タイミングがずれると、それだけ形成される画像がずれ、画質が悪くなってしまう。
【００３０】
図３に示すcrenca補正回路５０ａ及びcrencb補正回路５０ｂが本発明の要部であり、本実施形態において、crenca補正回路５０ａ及びcrencb補正回路５０ｂ以外の部分の構成は、従来の既知の技術で実現可能である。
【００３１】
各補正回路５０ａ，５０ｂには、crenca信号及びcrencb信号が入力する。crenca補正回路５０ａは、crenca信号のデューティを略５０％に補正して、その補正後の信号をa_comped信号（第二補正信号）として出力する。crencb補正回路５０ｂは、crencb信号のデューティを略５０％に補正して、その補正後の信号をb_comped信号（第一補正信号）として出力する。crenca補正回路５０ａ及びcrencb補正回路５０ｂの詳細な説明は後述するが、これら補正回路５０ａ，５０ｂは、エンコーダ出力信号のデューティを５０％に補正し、位置カウンタ４１を正しく動作させる回路である。
【００３２】
次に、エンコーダ出力信号のデューティを５０％に補正することが位置カウンタ４１を正しく動作させるということについて、その意味を説明する。
【００３３】
キャリッジ１２が順方向に移動するとき、正常な状態では、リニアセンサ２２からの出力信号は図４（ａ）に示すようになる。すなわち、crenca信号及びcrencb信号は９０度の位相差で出力される。また、正常な状態では、crenca信号及びcrencb信号のデューティは略５０％である。ここで、正常な状態とは、リニアセンサ２２とリニアスケール２１が正規の角度、距離で固定されており、かつ、インクミストや塵などの影響によってリニアセンサ２２の発光部からの光が屈折したり、乱反射したりしないような状態をいう。
【００３４】
しかし、実際には、そういう状態はありえないので、程度の差はあるが、発光部から発せられた光はインクミストや塵などによって、屈折、乱反射し、受光部に到達する。そのため、実際には、リニアセンサ２２からの出力信号のデューティは５０％にはならず、４０％であったり、６０％であったりする。例えば、デューティが７５％を超えるようなとき、その波形は、図５に示すようになる。図５（ａ）は、キャリッジ１２が順方向に移動している場合、デューティが７５％を超えるcrenca信号及びcrencb信号の波形の一例を示す図であり、図５（ｂ）は、キャリッジ１２が逆方向に移動している場合、デューティが７５％を超えるcrenca信号及びcrencb信号の波形の一例を示す図である。図５に示すように、リニアセンサ２２からの出力信号（crenca信号、crencb信号）は、インクミストや塵などによってそのデューティが５０％にならないことが多い。
【００３５】
いま、例えば、crenca信号及びcrencb信号のデューティが図５に示すように７５％を超える場合、当該crenca信号及びcrencb信号が、crenca補正回路５０ａ、crencb補正回路５０ｂを介さずに位置カウンタ４１にそのまま入力し、位置カウンタ４１がカウント動作を行ったとすると、位置カウンタ４１は正常に駆動しない。
【００３６】
図６は位置カウンタ４１の駆動の一例を説明するための図である。図６（ａ）に、crenca信号（Ａ相信号）及びcrencb信号（Ｂ相信号）が直接、位置カウンタ４１に入力したときの位置カウンタ４１の駆動条件を示す。図６（ａ）において、上向きの矢印は信号の立ち上がりを、下向きの矢印は信号の立ち下がりを示している。また、「Ｈ」は信号の論理がハイであることを、「Ｌ」は信号の論理がローであることを示している。論理がハイのとき、電圧レベルは４．５Ｖ以上であり、論理がローのとき、電圧レベルは０．４Ｖ以下である。図６（ａ）に示すように、位置カウンタ４１は、crenca信号又はcrencb信号のエッジで駆動する。そして、カウントアップか、カウントダウンかは、一方の信号のエッジが立ち上がりか立ち下がりか、及び当該エッジにおいて他方の信号の論理がハイかローかによって判断される。具体的に、位置カウンタ４１が＋１だけカウントアップするのは、▲１▼crenca信号が立ち上がりエッジで、crencb信号の論理がローのとき、▲２▼crenca信号が立ち下がりエッジで、crencb信号の論理がハイのとき、▲３▼crencb信号が立ち上がりエッジで、crenca信号の論理がハイのとき、▲４▼crencb信号が立ち下がりエッジで、crenca信号の論理がローのときである。一方、位置カウンタ４１が−１だけカウントダウンするのは、▲１▼crenca信号が立ち下がりエッジで、crencb信号の論理がローのとき、▲２▼crenca信号が立ち上がりエッジで、crencb信号の論理がハイのとき、▲３▼crencb信号が立ち下がりエッジで、crenca信号の論理がハイのとき、▲４▼crencb信号が立ち上がりエッジで、crenca信号の論理がローのときである。
【００３７】
尚、本実施形態では、a_comped信号及びb_comped信号が位置カウンタ４１に入力する。この場合の位置カウンタ４１の駆動条件は、図６（ａ）において、「Ａ相信号（crenca信号）」を「第二補正信号（a_comped信号）」に、「Ｂ相信号（crencb信号）」を「第一補正信号（b_comped信号）」に置き換えたものとなる。
【００３８】
図６（ａ）に示すような駆動条件で位置カウンタ４１は駆動しているので、図５に示すようなcrenca信号、crencb信号が位置カウンタ４１に入力し、位置カウンタ４１がカウント動作を行うと、位置カウンタ４１は、図６（ｃ）に示すように駆動する。ここで、図６（ｃ）において、「＋１」はカウントアップであることを、「−１」はカウントダウンであることを示している。図６（ｃ）に示すように位置カウンタ４１が駆動すると、位置カウンタ４１のカウント値は正常にならず、キャリッジ１２の位置検出、速度検出が正確にできなくなる。キャリッジ１２が順方向に移動中は、位置カウンタ４１のカウント値は常にカウントアップ、キャリッジ１２が逆方向に移動中は、位置カウンタ４１のカウント値は常にカウントダウンでなければならないのに、図６（ｃ）によれば、そのようになっていないことがよく分かる。したがって、crenca信号、crencb信号が図５に示すようなものであるとき、これらの信号によって直接、位置カウンタ４１を駆動する方式（従来の技術）では、キャリッジ１２の位置検出、速度検出が正確にできない。
【００３９】
このため、本実施形態では、図６（ｂ）に示すように、crenca補正回路５０ａによってcrenca信号のデューティを５０％に補正して、その補正後の信号であるa_comped信号を生成すると共に、crencb補正回路５０ｂによってcrencb信号のデューティを５０％に補正して、その補正後の信号であるb_comped信号を生成している。そして、a_comped信号、b_comped信号によって位置カウンタ４１を駆動するようにしている。a_comped信号、b_comped信号によって、位置カウンタ４１は図６（ｂ）に示すように正常に駆動する。図６（ｂ）を見ると、キャリッジ１２が等速移動中は、位置カウンタ４１のカウントアップ、カウントダウンは等間隔になされるので、速度検出が正確にできる。また、キャリッジ１２が順方向に移動中はカウントアップ、キャリッジ１２が逆方向に移動中はカウントダウンという規則が守られるので、常に位置カウンタ４１のカウント値は、キャリッジ１２の位置に１対１に対応した値となり、正確な位置検出が可能となる。
【００４０】
以上、crenca補正回路５０ａ、crencb補正回路５０ｂが本発明の要部に相当する部分であり、当該補正回路５０ａ，５０ｂにおいて、デューティがばらつくcrenca信号、crencb信号のデューティを５０％に保つことにより、位置カウンタ４１が正確に駆動し、キャリッジ１２の速度及び位置について正確な検出が可能であることを説明した。以下に、crenca補正回路５０ａ及びcrencb補正回路５０ｂについて詳しく説明する。
【００４１】
最初に、crenca補正回路５０ａ及びcrencb補正回路５０ｂの動作について説明する。図７はcrencb補正回路５０ｂ（crenca補正回路５０ａ）で用いられる演算法則を示す図、図８（ａ）はcrencb補正回路５０ｂ内で算出されるディレイ値Δｔａの算出条件を示す図、図８（ｂ）はcrenca補正回路５０ａ内で算出されるディレイ値Δｔｂの算出条件を示す図である。また、図９（ａ）はcrencb補正回路５０ｂの内部回路である論理演算回路を説明するための図、図９（ｂ）はcrenca補正回路５０ａの内部回路である論理演算回路を説明するための図である。
【００４２】
crenca補正回路５０ａとcrencb補正回路５０ｂは全く同一の回路構成をしている。各補正回路５０ａ，５０ｂは、図９に示すように、論理演算回路５７０を有する。ここで、crencb補正回路５０ｂにおける論理演算回路５７０は、本発明の「第一の論理演算手段」に対応し、crenca補正回路５０ａにおける論理演算回路５７０は、本発明の「第二の論理演算手段」に対応する。かかる論理演算回路５７０は、２つの入力信号に対してＡＮＤ演算又はＯＲ演算を行い、その演算後の信号を出力する回路である。具体的に、crencb補正回路５０ｂにおける論理演算回路５７０には、図９（ａ）に示すように、lsa_cap1信号（第一パルス信号）とcrencb信号（Ｂ相信号）とが入力し、その論理演算回路５７０はb_comped信号（第一補正信号）を出力する。また、crenca補正回路５０ａにおける論理演算回路５７０には、図９（ｂ）に示すように、lsb_comped信号（第二パルス信号）とcrenca信号（Ａ相信号）とが入力し、その論理演算回路５７０はa_comped信号（第二補正信号）を出力する。
【００４３】
lsa_cap1信号、lsb_cap1信号はそれぞれ、crencb補正回路５０ｂ、crenca補正回路５０ａの内部のローカルな信号である。lsa_cap1信号は、パルス幅がｃであり、crenca信号の立ち上がりからディレイ値Δｔａだけ遅れたタイミングで生成される。crencb補正回路５０ｂは、crenca信号の周期ａ及びcrencb信号のデューティを、crenca信号の毎周期毎に測定する。そして、キャリッジ１２の移動方向、crenca信号の周期及びcrencb信号のデューティに基づいてディレイ値Δｔａをcrenca信号の毎周期毎に算出すると共に、crenca信号の周期に基づいてパルス幅ｃをcrenca信号の毎周期毎に算出する。また、lsb_cap1信号は、パルス幅がｄであり、crencb信号の立ち上がりからディレイ値Δｔｂだけ遅れたタイミングで生成される。crenca補正回路５０ａは、crencb信号の周期ｂ及びcrenca信号のデューティを、crencb信号の毎周期毎に測定する。そして、キャリッジ１２の移動方向、crencb信号の周期及びcrenca信号のデューティに基づいてディレイ値Δｔｂをcrencb信号の毎周期毎に算出すると共に、crencb信号の周期に基づいてパルス幅ｄをcrencb信号の毎周期毎に算出する。
【００４４】
尚、以下、必要があるときには、周期ａ，ｂ、ディレイ値Δｔａ，Δｔｂ、パルス幅ｃ，ｄに添字を付して、それらが何番目の周期における値であるかを明確に示すことにする。
【００４５】
ディレイ値Δｔａ，Δｔｂはそれぞれ、図８（ａ），（ｂ）に示す条件にしたがって算出される。具体的に、crencb補正回路５０ｂは、crencb信号のデューティが５０％以上である場合、ディレイ値Δｔａｎ（ｎ＝１，２，３，・・・ ）を、キャリッジ１２が順方向に移動しているときに、ａｎ×３／４として算出し、キャリッジ１２が逆方向に移動しているときに、ａｎ／４として算出する。一方、crencb信号のデューティが５０％未満である場合は、ディレイ値Δｔａｎ（ｎ＝１，２，３，・・・ ）を、キャリッジ１２が順方向に移動しているときに、ａｎ／４として算出し、キャリッジ１２が逆方向に移動しているときに、ａｎ×３／４として算出する。また、crenca補正回路５０ａは、crenca信号のデューティが５０％以上である場合、ディレイ値Δｔｂｎ（ｎ＝１，２，３，・・・ ）を、キャリッジ１２が順方向に移動しているときに、ｂｎ／４として算出し、キャリッジ１２が逆方向に移動しているときに、ｂｎ×３／４として算出する。そして、crenca信号のデューティが５０％未満である場合は、ディレイ値Δｔｂｎ（ｎ＝１，２，３，・・・ ）を、キャリッジ１２が順方向に移動しているときに、ｂｎ×３／４として算出し、キャリッジ１２が逆方向に移動しているときに、ｂｎ／４として算出する。
【００４６】
また、パルス幅ｃｎ（ｎ＝１，２，３，・・・ ）は、ａｎ／２として算出され、パルス幅ｄｎ（ｎ＝１，２，３，・・・ ）は、ｂｎ／２として算出される。crencb補正回路５０ｂ（crenca補正回路５０ａ）においては、パルス幅ｃ（ｄ）はカウンタで算出され、ディレイ値Δｔａ（Δｔｂ）はマルチプレクサにて算出される。マルチプレクサ回路は大きくならないように、シフト演算が有効であろう。
【００４７】
crencb補正回路５０ｂは、Δｔａの値に応じたタイミングで、パルス幅ｃのlsa_cap1信号を生成し、crenca補正回路５０ａは、Δｔｂの値に応じたタイミングで、パルス幅ｄのlsb_cap1信号を生成する。また、lsa_cap1信号（lsb_cap1信号）のアクティブレベルは、図７に示すように、crencb信号（crenca信号）のデューティに基づいて決定される。すなわち、crencb信号（crenca信号）のデューティが５０％以上である場合には、lsa_cap1信号（lsb_cap1信号）はローアクティブとされ、crencb信号（crenca信号）のデューティが５０％未満である場合には、lsa_cap1信号（lsb_cap1信号）はハイアクティブとされる。
【００４８】
こうしてcrencb補正回路５０ｂ（crenca補正回路５０ａ）で生成されたlsa_cap1信号（lsb_cap1信号）は、crencb補正回路５０ｂ（crenca補正回路５０ａ）内の論理演算回路５７０に入力する。この論理演算回路５７０は、lsa_cap1信号（lsb_cap1信号）とcrencb信号（crenca信号）とのＡＮＤ演算又はＯＲ演算を行い、b_comped信号（a_comped信号）を出力する。論理演算回路５７０がＡＮＤ演算を行うか、ＯＲ演算を行うは、図７に示すように、crencb補正回路５０ｂにおいてはcrencb信号のデューティに応じて決定され、crenca補正回路５０ａにおいてはcrenca信号のデューティに応じて決定される。すなわち、crencb補正回路５０ｂ（crenca補正回路５０ａ）内の論理演算回路５７０は、crencb信号（crenca信号）のデューティが５０％以上であるときは、ＡＮＤ演算を行い、crencb信号（crenca信号）のデューティが５０％未満であるときは、ＯＲ演算を行う。
【００４９】
crencb補正回路５０ｂにおいては、crencb信号とlsa_cap1信号とが論理演算回路５７０に入力し、その論理演算回路５７０は、図７に示す演算法則にしたがって演算し、b_comped信号を出力する。この出力されるb_comped信号は、パルスのデューティが５０％に補正されたcrencb信号である。また、crenca補正回路５０ａにおいては、crenca信号とlsb_cap1信号とが論理演算回路５７０に入力し、その論理演算回路５７０は、図７に示す演算法則にしたがって演算し、a_comped信号を出力する。この出力されるa_comped信号は、パルスのデューティが５０％に補正されたcrenca信号である。
【００５０】
crencb補正回路５０ｂで生成されるlsa_cap1信号及びb_comped信号の例を、図１０〜図１３に示す。また、crenca補正回路５０ａで生成されるlsb_cap1信号及びa_comped信号の例を、図１４〜図１７に示す。ここで、図１０はキャリッジ１２が順方向に移動し、crencb信号のデューティが５０％以上である場合にcrencb補正回路５０ｂで生成されるlsa_cap1信号及びb_comped信号のタイムチャート、図１１はキャリッジ１２が逆方向に移動し、crencb信号のデューティが５０％以上である場合にcrencb補正回路５０ｂで生成されるlsa_cap1信号及びb_comped信号のタイムチャート、図１２はキャリッジ１２が順方向に移動し、crencb信号のデューティが５０％未満である場合にcrencb補正回路５０ｂで生成されるlsa_cap1信号及びb_comped信号のタイムチャート、図１３はキャリッジ１２が逆方向に移動し、crencb信号のデューティが５０％未満である場合にcrencb補正回路５０ｂで生成されるlsa_cap1信号及びb_comped信号のタイムチャートである。そして、図１４はキャリッジ１２が順方向に移動し、crenca信号のデューティが５０％以上である場合にcrenca補正回路５０ａで生成されるlsb_cap1信号及びa_comped信号のタイムチャート、図１５はキャリッジ１２が逆方向に移動し、crenca信号のデューティが５０％以上である場合にcrenca補正回路５０ａで生成されるlsb_cap1信号及びa_comped信号のタイムチャート、図１６はキャリッジ１２が順方向に移動し、crenca信号のデューティが５０％未満である場合にcrenca補正回路５０ａで生成されるlsb_cap1信号及びa_comped信号のタイムチャート、図１７はキャリッジ１２が逆方向に移動し、crenca信号のデューティが５０％未満である場合にcrenca補正回路５０ａで生成されるlsb_cap1信号及びa_comped信号のタイムチャートである。
【００５１】
尚、crenca補正回路５０ａ、crencb補正回路５０ｂの動作条件であるが、入力されるcrenca信号及びcrencb信号の位相差が略９０度である必要がある。厳密に位相差が９０度である必要があるわけではないので、市販されている一般的なリニアセンサであれば問題なく動作するであろう。
【００５２】
次に、crenca補正回路５０ａ、crencb補正回路５０ｂの回路構成について説明する。両補正回路５０ａ，５０ｂは全く同一の回路で構成可能であるので、ここでは、crencb補正回路５０ｂについてのみ説明する。図１８はcrencb補正回路５０ｂの概略ブロック図である。図１８に示すように、crencb補正回路５０ｂの入力信号は、crenca信号及びcrencb信号であり、その出力信号はb_comped信号である。尚、crenca補正回路５０ａにおいては、crenca信号とcrencb信号とがcrencb補正回路５０ｂの場合と逆の入力ポートに入力される点、出力信号がa_comped信号である点を除き、回路構成などはcrencb補正回路５０ｂと全く同一である。
【００５３】
crencb補正回路５０ｂは、図１８に示すように、エッジ検出回路５１０と、インバータ５２０と、第一カウンタ５３１と、第二カウンタ５３２と、第三カウンタ５３３と、第四カウンタ５３４と、第一レジスタ５４１と、第二レジスタ５４２と、第三レジスタ５４３と、第四レジスタ５４４と、第一比較回路５５１と、第二比較回路５５２と、第三比較回路５５３と、第一パルス生成回路５６１と、第二パルス生成回路５６２と、第三パルス生成回路５６３と、論理演算回路５７０とを備える。
【００５４】
エッジ検出回路５１０にはcrenca信号が入力する。エッジ検出回路５１０は、入力されるcrenca信号の立ち上がりエッジを検出して、同時に、内部クロックの一周期分のパルス幅を有するパルス信号（ah_edge信号）を出力する。
【００５５】
第一カウンタ５３１は、内部クロックと同期した１６ビットのカウンタである。この第一カウンタ５３１のカウント値は、ah_edge信号によって０にリセットされる。すなわち、第一カウンタ５３１は、crenca信号の周期をカウントするカウンタである。また、第一カウンタ５３１のカウント値には、ある上限値が設定され、第一カウンタ５３１は、その上限値以上はカウントしないようにしておく必要がある。かかる上限値の値はALL１でかまわないが、ALL１に限らず、十分大きな値であればよい。p_widthは第一カウンタ５３１のカウント値である。
【００５６】
第一レジスタ５４１は、第一カウンタ５３１のカウント値p_widthを保持するレジスタであり、ah_edge信号に同期して第一カウンタ５３１のカウント値p_widthを取り込む。p_width1は第一レジスタ５４１の出力値である。また、第二レジスタ５４２は、第一レジスタ５４１の出力値p_width1を保持するレジスタであり、ah_edge信号に同期して第一レジスタ５４１の値p_width1を取り込む。comp_p_widthは第二レジスタ５４２の出力値である。ここで、p_width1は現在のcrenca信号の周期であり、comp_p_widthはその一周期以前のcrenca信号の周期である。図１８に示すp_width1は、図１０〜図１３に示すａｎ（ｎ＝１，２，３，・・・ ）に対応する。
【００５７】
第一パルス生成回路５５１は、ah_edge信号が入力されてから、Δｔａ後にパルス信号pulse_enbを１パルス出力する。Δｔａは、図１９（ａ）に示す条件にしたがって算出される。図１９（ａ）において、ar信号は、crencb信号のデューティが５０％以上であるか、５０％未満であるかを示す信号である。ここでは、ar＝‘１’は、crencb信号のデューティが５０％以上であることを示し、ar＝‘０’は、crencb信号のデューティが５０％未満であることを示している。かかるar信号は第一比較回路５６１から出力される。また、cr_dir信号は、キャリッジ１２の移動方向を示唆する信号であり、ＭＰＵ３１より示唆される信号である。ここでは、cr_dir＝‘０’は、キャリッジ１２が順方向に移動中であることを示し、cr_dir＝‘１’は、キャリッジ１２が逆方向に移動中であることを示している。cr_dir信号は、第四レジスタ５４４から出力される。この第四レジスタ５４４はＭＰＵ３１から値をライトできるレジスタである。
【００５８】
具体的に、第一パルス生成回路５５１は、ar信号が‘１’である場合、ディレイ値Δｔａを、cr_dir信号が‘０’であれば、p_width1×３／４として算出し、cr_dir信号が‘１’であれば、p_width1×１／４として算出する。また、ar信号が‘０’である場合は、ディレイ値Δｔａを、cr_dir信号が‘０’であれば、p_width1×１／４として算出し、cr_dir信号が‘１’であれば、p_width1×３／４として算出する。
【００５９】
第二パルス生成回路５５２は、第一パルス生成回路５５１からのpulse_enb信号が入力されると、パルス幅ｃのlsa_cap0信号を出力する。ここで、パルス幅ｃは、p_width1×１／２として算出される。lsa_cap0信号のアクティブレベルはハイアクティブである。
【００６０】
第三パルス生成回路５５３は、ar信号が‘１’のときに、第二パルス生成回路５５２からのlsa_cap0信号の論理を反転させてlsa_cap1信号として出力し、ar信号が‘０’のときに、第二パルス生成回路５５２からのlsa_cap0信号をそのままlsa_cap1信号として出力する。第一パルス生成回路５５１、第二パルス生成回路５５２及び第三パルス生成回路５５３は、lsa_cap1信号を生成するためのブロックである。もちろん、図１８に示すlsa_cap1信号と、図９（ａ）、図１０〜図１３に示すlsa_cap1信号とは同一の信号である。
【００６１】
尚、crencb補正回路５０ｂにおける、エッジ検出回路５１０、インバータ５２０、第一カウンタ５３１、第二カウンタ５３２、第三カウンタ５３３、第一レジスタ５４１、第四レジスタ５４４、第一比較回路５５１、第一パルス生成回路５６１、第二パルス生成回路５６２及び第三パルス生成回路５６３は、本発明の「第一信号生成手段」に対応する。また、crenca補正回路５０ａにおける、上記と同様の回路群は、本発明の「第二信号生成手段」に対応する。
【００６２】
第二カウンタ５３２及び第三カウンタ５３３はともに、ah_edge信号によってカウント値をリセットするカウントイネーブル付きカウンタである。第二カウンタ５３２は、crencb信号をカウントイネーブル信号としており、第三カウンタ５３３は、インバータ５２０から出力されるcrencb信号の論理反転信号をカウントイネーブル信号としている。すなわち、第二カウンタ５３２は、crencb信号のＨ区間をカウントしており、第三カウンタ５３３はcrencb信号のＬ区間をカウントしている。h_countは第二カウンタ５３２のカウント値であり、l_countは第三カウンタ５３３のカウント値である。
【００６３】
第一比較回路５６１は、第二カウンタ５３２のカウント値h_countと第三カウンタ５３３のカウント値l_countとを比較する。そして、h_count≧l_countのとき、ar信号として‘１’を出力し、h_count＜l_countのとき、ar信号として‘０’を出力する。第一比較回路５６１は、crencb信号のデューティを測定しており、そのデューティが５０％以上であるときにar＝‘１’を、５０％未満であるときにar＝‘０’を出力しているのである。
【００６４】
論理演算回路５７０は、ar信号の値に応じて、入力される二つの信号の演算をし、演算結果をb_comped信号として出力する。入力される二つの信号とは、crencb信号及びlsa_cap1信号のことである。演算は図１９（ｂ）に示す条件にしたがって実行される。すなわち、ar＝‘１’であるときには、crencb信号及びlsa_cap1信号のＡＮＤ演算を行い、その演算結果をb_comped信号として出力する。ar＝‘０’であるときには、crencb信号及びlsa_cap1信号のＯＲ演算を行い、その演算結果をb_comped信号として出力する。b_comped信号は、デューティが５０％に補正されたリニアセンサ２２のＢ相信号（crencb信号）である。
【００６５】
また、論理演算回路５７０に入力されるfunction_limit_b信号であるが、以下に説明するように、この信号は機能リミッターとして働くものである。function_limit_b＝‘０’（アクティブ）のとき、論理演算回路５７０は、図１９（ｂ）の条件に関係なく、b_comped信号としてcrencb信号を出力する。
【００６６】
次に、機能リミッターについて説明する。第四カウンタ５３４、第二レジスタ５４２、第三レジスタ５４３、第二比較回路５６２及び第三比較回路５６３は、crencb補正回路５０ｂの機能リミッターとしての役割を果たすための回路である。
【００６７】
第二比較回路５６２には、第一レジスタ５４１の出力値p_width1及び第二レジスタ５４２の出力値comp_p_widthが入力する。第二比較回路５６２は、これら二つの値が図１９（ｃ）に示す条件▲１▼〜▲４▼のいずれかに該当するとき、limit_on信号を‘０’（アクティブ）にする。また、条件▲１▼〜▲４▼がいずれも成立しないときに、limit_on信号を‘１’（インアクティブ）にする。ここで、条件▲１▼は、comp_p_width＜p_width1×３１／３２であり、条件▲２▼は、comp_p_width×３１／３２＞p_width1である。また、条件▲３▼は、p_width1＝ALL１であり、条件▲４▼は、comp_p_width＝ALL１である。
【００６８】
第四カウンタ５３４は、limit_on信号をカウントイネーブルとし、limit_on＝‘１’のときにah_edge信号の入力数をカウントし、limit_on＝‘０’のときにカウント値をリセットするカウンタである。第四カウンタ５３４のカウント値は、disable_cntとして出力される。
【００６９】
第三レジスタ５４３は、第四レジスタ５４４と同様にＭＰＵ３１から値をライトできるレジスタであり、リミッターが働く区間を設定する。リミッターが働く区間とは、function_limit_b信号をアクティブにしている期間であり、ah_edge信号のパルス数で表される。disable_time_bは第三レジスタ５４３からの出力値である。
【００７０】
第三比較回路５６３には、第四カウンタ５３４のカウント値disable_cnt及び第三レジスタ５４３の出力値disable_time_bが入力する。第三比較回路５６３は、これら二つの値を比較し、disable_cnt＜disable_time_bのとき、function_limit_b＝‘０’（アクティブ）にし、disable_cnt≧disable_time_bのとき、function_limit_b＝‘１’（インアクティブ）にする。すなわち、図１９（ｃ）に示す条件▲１▼〜▲４▼がいずれも成立しなくても、すぐにはリミッターは解除されず、第四カウンタ５３４のカウント値disable_cntが第三レジスタ５４３からの出力値disable_time_bよりも小さい間はリミッターは働いたままである。
【００７１】
このように、第四カウンタ５３４、第二レジスタ５４２、第三レジスタ５４３、第二比較回路５６２及び第三比較回路５６３は、上記の条件▲１▼〜▲４▼のいずれかが成立するとき、crencb補正回路５０ｂの機能をＯＦＦするための回路である。crencb補正回路５０ｂの機能がＯＦＦにされると、crencb補正回路５０ｂは実質的に単なるバッファとなり、入力されるcrencb信号をそのままb_comped信号として出力する。したがって、条件▲１▼〜▲４▼のいずれかが成立するとき、crencb補正回路５０ｂは、crencb信号のデューティを５０％に補正することはできない。
【００７２】
条件▲１▼〜▲４▼のいずれかが成立するときとは、どのような場合であるかというと、まず、キャリッジ１２が加速中、もしくは減速中において、入力されるcrenca信号の周期がある一定値以上の割合で変化するときである。p_width1は現在のcenca信号の周期であり、comp_p_widthはその一周期以前のcrenca信号の周期である。図１０〜図１３でいうと、例えば、p_width1＝ａ２のとき、comp_p_width＝ａ１である。p_width1＝ａ３のとき、comp_p_width＝ａ２である。条件▲１▼及び条件▲２▼において、周期変動が１／３２＝３．１２５％以上あるときに、機能リミッターが働く。周期変動が１／３２＝３．１２５％以上あるということは、キャリッジ１２が加速中もしくは減速中であるか、crenca信号にパルス抜けなどの異常があるかである。このようなときにcrencb補正回路の機能をＯＮしておくと、生成されるb_comped信号のエッジ数がcrencb信号と一致しなくなる場合があり、位置カウンタ４１のカウント値が正常に駆動されなくなってしまうので、機能をＯＦＦする必要があるのである。
【００７３】
周期変動が１／３２＝３．１２５％以上ある場合とした理由は、１／３２の値は、ビットシフトとアダー回路を用いて比較的小規模の回路で構成できるからであるが、別にこれに限る必要はない。ただ、周期変動としては３〜５％が適当な値ではないかと思われる。
【００７４】
また、条件▲３▼、▲４▼の場合に関しては、crenca信号の周期が、図１８に示す第一カウンタ５３１のカウント値の上限値以上の周期であるとき、crencb補正回路において所望の動作が期待できないので、やはり機能をＯＦＦする必要がある。そもそも、条件▲３▼、▲４▼が成立するときなどは、キャリッジ１２が停止中か、低速移動中かであるが、第一カウンタ５３１のカウント値が十分大きいときは、ほぼキャリッジ１１は停止していると扱ってよい。このようなときに、図６（ｃ）に示すように位置カウンタ４１のカウント値が正常に更新されなくなる確率は、キャリッジ１２が高速に動いているときよりもはるかに小さいため、crencb補正回路５０ｂの機能をＯＮしておく必要はないのである。
【００７５】
本実施形態のインクジェットプリンタでは、crenca補正回路が、リニアエンコーダから出力されるcrenca信号のデューティを５０％に補正し、crencb補正回路が、リニアエンコーダから出力されるcrencb信号のデューティを５０％に補正する。そして、crenca補正回路における補正後の信号であるa_comped信号及びcrencb補正回路における補正後の信号であるb_comped信号が位置カウンタに入力する。このため、リニアエンコーダにインクミストやほこり等が付着し、その影響でリニアエンコーダの感度が悪くなったとしても、デューティが５０％に補正されたa_comped信号及びb_comped信号によって位置カウンタを正常に駆動することができる。したがって、キャリッジが等速で移動中は、位置カウンタの更新間隔はほぼ等間隔となり、良い画質が得られる。また、位置カウンタのカウント値が正しく更新されるので、キャリッジの正確な位置検出が可能であると共に、キャリッジの正確な速度検出が可能である。
【００７６】
尚、本発明は上記の実施形態に限定されるものではなく、その要旨の範囲内において種々の変形が可能である。
【００７７】
【発明の効果】
以上説明したように本発明に係るインクジェットプリンタは、第一補正手段が、リニアセンサから出力されるＢ相信号のデューティを略５０％に補正し、第二補正手段が、リニアセンサから出力されるＡ相信号のデューティを略５０％に補正する。そして、第一補正手段における補正後の信号である第一補正信号及び第二補正手段における補正後の信号である第二補正信号が位置計数手段に入力する。このため、リニアスケールにインクミストやほこり等が付着し、その影響でリニアセンサの感度が悪くなったとしても、デューティが略５０％に補正された第一補正信号及び第二補正信号によって位置計数手段を正常に駆動することができる。したがって、キャリッジが等速で移動中は、位置計数手段の更新間隔はほぼ等間隔となり、良い画質が得られる。また、位置計数手段のカウント値が正しく更新されるので、キャリッジの正確な位置検出が可能であると共に、キャリッジの正確な速度検出が可能である。
【図面の簡単な説明】
【図１】本発明の一実施形態であるインクジェットプリンタの概略斜視図である。
【図２】そのインクジェットプリンタにおけるキャリッジの概略斜視図である。
【図３】そのインクジェットプリンタの概略制御ブロック図である。
【図４】（ａ）は、キャリッジが順方向に移動している場合、位相差が９０度であるcrenca信号及びcrencb信号の波形の一例を示す図、（ｂ）は、キャリッジが逆方向に移動している場合、位相差が９０度であるcrenca信号及びcrencb信号の波形の一例を示す図である。
【図５】（ａ）は、キャリッジが順方向に移動している場合、デューティが７５％を超えるcrenca信号及びcrencb信号の波形の一例を示す図、（ｂ）は、キャリッジが逆方向に移動している場合、デューティが７５％を超えるcrenca信号及びcrencb信号の波形の一例を示す図である。
【図６】位置カウンタの駆動の一例を説明するための図である。
【図７】crencb補正回路（crenca補正回路）で用いられる演算法則を示す図である。
【図８】（ａ）はcrencb補正回路内で算出されるディレイ値Δｔａの算出条件を示す図、（ｂ）はcrenca補正回路内で算出されるディレイ値Δｔｂの算出条件を示す図である。
【図９】（ａ）はcrencb補正回路の内部回路である論理演算回路を説明するための図、（ｂ）はcrenca補正回路の内部回路である論理演算回路を説明するための図である。
【図１０】キャリッジが順方向に移動し、crencb信号のデューティが５０％以上である場合にcrencb補正回路で生成されるlsa_cap1信号及びb_comped信号のタイムチャートである。
【図１１】キャリッジが逆方向に移動し、crencb信号のデューティが５０％以上である場合にcrencb補正回路で生成されるlsa_cap1信号及びb_comped信号のタイムチャートである。
【図１２】キャリッジが順方向に移動し、crencb信号のデューティが５０％未満である場合にcrencb補正回路で生成されるlsa_cap1信号及びb_comped信号のタイムチャートである。
【図１３】キャリッジが逆方向に移動し、crencb信号のデューティが５０％未満である場合にcrencb補正回路で生成されるlsa_cap1信号及びb_comped信号のタイムチャートである。
【図１４】キャリッジが順方向に移動し、crenca信号のデューティが５０％以上である場合にcrenca補正回路で生成されるlsb_cap1信号及びa_comped信号のタイムチャートである。
【図１５】キャリッジが逆方向に移動し、crenca信号のデューティが５０％以上である場合にcrenca補正回路で生成されるlsb_cap1信号及びa_comped信号のタイムチャートである。
【図１６】キャリッジが順方向に移動し、crenca信号のデューティが５０％未満である場合にcrenca補正回路で生成されるlsb_cap1信号及びa_comped信号のタイムチャートである。
【図１７】キャリッジが逆方向に移動し、crenca信号のデューティが５０％未満である場合にcrenca補正回路で生成されるlsb_cap1信号及びa_comped信号のタイムチャートである。
【図１８】crencb補正回路の概略ブロック図である。
【図１９】crencb補正回路内における所定の回路の動作条件を説明するための図である。
【図２０】被測定物の直線方向の位置検出や移動量検出等を行うリニアエンコーダの概略構成図である。
【図２１】そのリニアエンコーダにおけるリニアスケールと受光部との位置関係を説明するための概略図である。
【図２２】そのリニアエンコーダにおいて発光部から完全な平行光束が二つのフォトダイオードに照射されたと仮定した場合にリニアスケールと受光部との相対的な位置の変動量と各フォトダイオードからの出力電流との関係を示す図である。
【図２３】そのリニアエンコーダにおいて発光部からある程度散乱された光が二つのフォトダイオードに照射された場合にリニアスケールと受光部との相対的な位置の変動量と各フォトダイオードからの出力電流との関係を示す図である。
【符号の説明】
１１・・・ プリントヘッド、１２・・・ キャリッジ、１３・・・ キャリッジレール、１４・・・ キャリッジモータ、１５・・・ キャリッジ駆動ベルト、１６・・・ モータドライバ、２０・・・ 光学式のリニアエンコーダ、２１・・・ リニアスケール、２２・・・ リニアセンサ、３０・・・ エンジンコントローラ、３１・・・ ＭＰＵ、３２・・・ 画像データメモリ、４０・・・ ＡＳＩＣ、４１・・・ 位置カウンタ、４２・・・ データ転送制御回路、４３・・・ メモリコントローラ、４４・・・ モータ制御回路、５０ａ・・・ crenca補正回路、５０ｂ・・・ crencb補正回路、５１０・・・ エッジ検出回路、５２０・・・ インバータ、５３１・・・ 第一カウンタ、５３２・・・ 第二カウンタ、５３３・・・ 第三カウンタ、５３４・・・ 第四カウンタ、５４１・・・ 第一レジスタ、５４２・・・ 第二レジスタ、５４３・・・ 第三レジスタ、５４４・・・ 第四レジスタ、５５１・・・ 第一比較回路、５５２・・・ 第二比較回路、５５３・・・ 第三比較回路、５６１・・・ 第一パルス生成回路、５６２・・・ 第二パルス生成回路、５６３・・・ 第三パルス生成回路、５７０・・・ 論理演算回路
【図１】
2004202963.tif 000003
【図２】
2004202963.tif 000004
【図３】
2004202963.tif 000005
【図４】
2004202963.tif 000006
【図５】
2004202963.tif 000007
【図６】
2004202963.tif 000008
【図７】
2004202963.tif 000009
【図８】
2004202963.tif 000010
【図９】
2004202963.tif 000011
【図１０】
2004202963.tif 000012
【図１１】
2004202963.tif 000013
【図１２】
2004202963.tif 000014
【図１３】
2004202963.tif 000015
【図１４】
2004202963.tif 000016
【図１５】
2004202963.tif 000017
【図１６】
2004202963.tif 000018
【図１７】
2004202963.tif 000019
【図１８】
2004202963.tif 000020
【図１９】
2004202963.tif 000021
【図２０】
2004202963.tif 000022
【図２１】
2004202963.tif 000023
【図２２】
2004202963.tif 000024
【図２３】
2004202963.tif 000025