(57)【要約】【課題】磁気スケールなどに使用される、ルックアップテーブルを使う内挿装置において、ルックアップテーブルの記憶容量の最小化を得ること。【解決手段】９０°位相差の２相アナログ信号を２相デジタル信号に変換するアナログ・デジタル変換部１１０，１２０と、２相デジタル信号をアドレスに変換するアドレス生成部１３０を備える。そして、１／８の領域で連続し値により折り返した領域に内挿値を記憶したルックアップテーブル１４０を備え、アドレス生成部１３０で変換したアドレスに対応した内挿値を読み出す。【選択図】図１
2010249704.tif 000002
【特許請求の範囲】
【請求項１】
検出された９０°位相差の２相アナログ信号を２相デジタル信号に変換するアナログ／デジタル変換部と、
前記２相デジタル信号をアドレスに変換するアドレス生成部と、
前記２相アナログ信号であるＳｉｎ信号及びＣｏｓ信号からなる直交座標平面の１／８周期分に変換し、前記２相デジタル信号の縦軸側データの最上位ビットが０又は１を識別し、その識別結果に応じて前記２相デジタル信号の各々を反転又は非反転として折り返した領域に、内挿データを記憶したルックアップテーブルと、
前記アドレス生成部から入力された前記アドレスに対応した内挿値を、前記ルックアップテーブルから読み出す内挿値出力部とを備えた内挿装置。
【請求項２】
前記２相デジタル信号と前記内挿値を入力して、内挿値を補正する補正部をさらに備えた請求項１記載の内挿装置。
【請求項３】
前記アドレス生成部は、
ｎ(ｎは正の整数)ビットの前記２相デジタル信号の最上位ビットを０又は１を識別し、識別結果に応じて前記２相デジタル信号の各々を反転又は非反転とし、
反転又は非反転とした２相デジタル信号から最上位ビットを削除した２相デジタル信号を比較し、
その比較より小さいデジタル信号の最上位ビットを０又は１を識別し、識別結果に応じて前記最上位ビットを削除した２相デジタル信号を反転又は非反転とし、
前記最上位ビットを削除した２相デジタル信号の比較より小さい方のデジタル信号から上位から２ビット目をさらに削除したデータを上位アドレスに、前記最上位ビットを削除した２相デジタル信号の比較より大きいほうのデータを下位アドレスとし、前記上位アドレスと前記下位アドレスを繋げて、２ｎ−３ビットのアドレスとする処理を行う請求項１又は２記載の内挿装置。
【請求項４】
前記補正部で処理される前記内挿値を一定区間のサンプリングのうちの前回のサンプリング時の前記内挿値と現在のサンプリング時の前記内挿値との演算より、サンプリング毎の増減変位量を算出する差分演算部と、
前記サンプリング毎の増減変位量をＡＢ相出力として出力するＡＢ相出力生成部とをさらに備えた請求項１〜３のいずれか１項に記載の内挿装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、磁気スケール装置などに使用される、ルックアップテーブルを用いた内挿装置に関する。
より詳細には、工作機械、自動倉庫、有軌道台車や無人搬送車等の測長装置や測角装置での位置決め又は角度検出等に用いられる内挿装置に関する。
【背景技術】
【０００２】
磁気スケール装置などの測長装置や測角装置においては、内挿装置を使って測定される位置や角度の検出精度を向上させることが行われている。このような内挿装置において、従来、ルックアップテーブルを使う場合はアナログ／デジタル変換器のデータをそのままｘｙ平面のｘ、ｙに対応するアドレスに入力している。そのため、１周期分の内挿データを保持する必要性があり、高分解能を得るには大きな容量を必要とするため、コスト負担が大きかった。１周期分の内挿データについては、後述する本発明の実施の形態の説明の中で図２を参照して説明する。
【０００３】
そこで、ルックアップテーブルのデータ量を減らす技術として、特開平８−２０１１１０号公報に記載された技術がある。これは、リニアエンコーダから出力される９０°位相差の２相アナログ信号（Ｓｉｎ、Ｃｏｓ信号）からなる直交座標平面の第２〜４象限のパターンを第１象限のパターンに置き換えるというものである。図８は、第１〜４象限にあるＳｉｎ信号及びＣｏｓ信号をデジタル変換したＳｉｎデータ及びＣｏｓデータを、直交座標平面の第１象限のパターンの置き換えを表したものである。例えば、第１象限にある場合、Ｃｏｓデータ及びＳｉｎデータの最上位ビットが１となるので、上位アドレスはＣｏｓデータ、下位アドレスはＳｉｎデータとなる。第２象限にある場合、Ｃｏｓデータの最上位ビットが１、Ｓｉｎデータの最上位ビットが０となるので、上位アドレスはＣｏｓデータ、下位アドレスはＳｉｎデータの反転値となる。第３象限にある場合、Ｃｏｓデータ及びＳｉｎデータの最上位ビットが０となるので、上位アドレスはＣｏｓデータの反転値、下位アドレスはＳｉｎデータの反転値となる。第４象限にある場合、Ｃｏｓデータの最上位ビットが０、Ｓｉｎデータの最上位ビットが１となるので、上位アドレスはＣｏｓデータの反転値、下位アドレスはＳｉｎデータとなる。
【０００４】
なお、図８の下位アドレス、上位アドレスの欄に上横線を引いた値は反転値を表している。
【０００５】
これにより、ルックアップテーブルのデータ量が１／４になり、その分のルックアップテーブルを記憶するメモリの容量が小さくできることから、内挿装置のローコスト化が図れていた。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平８−２０１１１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、ルックアップテーブルのデータ量を更に減らそうとした場合において、第１象限の０〜π／４とπ／４〜π／２は対称であるため、π／４〜π／２のパターンを０〜π／４のパターンに置き換えるということが考えられる。これにより、ルックアップテーブルのデータ量は更に半分になる。しかし、このルックアップテーブルのパターンが三角形になってしまい、記憶装置にルックアップテーブルのデータを記憶させる場合には連続的な記憶領域を確保できない。そのために、ルックアップテーブルのデータ量に見合った小さい容量の記憶装置を使うことができず、記憶装置の容量を１／４にすることが限界と考えられていた。
【０００８】
本発明はかかる点に鑑みてなされたものであり、内挿装置が備えるルックアップテーブルの記憶容量をさらなる最小化を得ることを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するため本発明は、９０°位相差の２相アナログ信号を検出する検出部と、９０°位相差の２相アナログ信号を２相デジタル信号に変換するアナログ／デジタル変換部と、２相デジタル信号をアドレスに変換するアドレス生成部を備える。そして、１／８の領域で折り返して連続した領域に内挿値を記憶したルックアップテーブルを備え、アドレス生成部で変換したアドレスに対応した内挿値を読み出すものである。
【発明の効果】
【００１０】
本発明により、ルックアップテーブルを使う内挿装置において、Ｓｉｎ信号及びＣｏｓ信号の１周期分（３６０°）の内挿データを従来の１／８で記憶領域のルックアップテーブルで得ることができる。従って、内挿装置が備えるルックアップテーブルの記憶容量を削減でき、低コスト化に貢献する。また、従来と同じ記憶容量のルックアップテーブルを使った場合には、ルックアップテーブルに記憶させることができる内挿データを増やすことができ、内挿データの高精度化を図ることができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施の形態による内部構成の例を示したブロック図である。
【図２】本発明の一実施の形態によるルックアップテーブルの例の説明図である。
【図３】本発明の一実施の形態によるルックアップテーブルの１／８領域化の例の説明図である。
【図４】本発明の一実施の形態によるルックアップテーブルの内容の一例を示す説明図である。
【図５】本発明の一実施の形態によるアドレス生成器の処理例の説明図である。
【図６】本発明の一実施の形態による補正器の処理例の説明図である。
【図７】本発明の一実施の形態による変位出力器の処理例を示すフローチャートである。
【図８】従来の処理例の説明図である。
【発明を実施するための形態】
【００１２】
以下、本発明の一実施の形態について、以下の順序で説明する。
１．本実施の形態の内部構成（図１）
２．ルックアップテーブルの１／８領域化の処理（図２〜４）
３．アドレス生成器の処理（図５）
４．補正器の処理（図６）
５．変位出力器の処理（図７）
【００１３】
［１．本実施の形態内部構成例］
図１は、本実施の形態の内挿装置の内部構成例を示すブロック図である。
アナログ／デジタル変換器１１０、１２０は、図示しないエンコーダから出力される９０°位相差の２相アナログ信号（Ｓｉｎ信号、Ｃｏｓ信号）を一定時間毎にサンプリングを行い、デジタル信号に変換してアドレス生成器１３０に出力する。ここでのエンコーダとは、磁気スケール装置などの測長装置や測角装置で測長信号又は測角信号を得るエンコーダである。なお、このアナログ／デジタル変換器の分解能はｎビット(ｎは正の整数)で、デジタル変換されたＳｉｎ信号及びＣｏｓ信号をＳｉｎデータ及びＣｏｓデータとする。
【００１４】
アドレス生成器１３０では、図４の条件に従って、デジタル変換されたＳｉｎデータ及びＣｏｓデータからアドレス（２ｎ−３ビット）を変換して、記憶部１４０に入力する。なお、図４の説明については、別途後述する。
【００１５】
記憶部１４０には、内挿データが記憶されているルックアップテーブルが記憶してある。アドレス生成器１３０で変換されたアドレス（２ｎ−３ビット）が入力されることで、ルックアップテーブルより内挿値を読み出す。なお、記憶部１４０に記憶してあるルックアップテーブルの領域は、通常より１／８の領域で連続的な領域で記憶されている。この領域への変換の説明（図２〜３を参照）は、別途説明する。
【００１６】
補正器１５０では、図６の条件に従って、アドレス生成器を通して入力されるＳｉｎデータ及びＣｏｓデータと記憶部１４０から読み出された内挿値から、真の内挿値を求める。なお、図６の説明については、別途後述する。
【００１７】
ラッチ１７０ａでは、補正器１５０で処理される真の内挿値を一定区間のサンプリングのうち前回のサンプリング時の真の内挿値を一時保持する。
【００１８】
そして、差分１７０ｂで、ラッチ１７０ａでの一時保持した前回のサンプリング時の真の内挿値と補正器１５０より処理された現在の真の内挿値とを演算し、サンプリング毎の内挿値の変化量（増減変位量）を算出する。なお、この増減変位量の算出は、別途説明する。
【００１９】
ＡＢ相出力生成器１８０では、２ビットグレイコードカウンタで増減変位量をカウントさせて、サンプリング毎の内挿値の変位量としてのＡＢ相出力を出力する。グレイ・コード(gray code)・カウンタは、同時に1つのビットしか変化しないよう、数値にグレイ・コードを割り当て、デコード時のスタティック・ハザード（短時間のスパイク状のノイズ）を防止したものである。
【００２０】
ちなみに、増減変位量演算回路１７０はラッチ１７０ａと差分１７０ｂで構成されており、変位出力器１６０は増減変位量演算回路１７０とＡＢ相出力生成器１８０で構成されている。
【００２１】
［２．ルックアップテーブルの１／８領域化の処理］
図２〜３を参照して、通常のルックアップテーブルの領域を１／８にし、更に記憶部１４０に連続的な領域として占有できるようにルックアップテーブルを四角くするための領域の変換例について説明する。
【００２２】
従来、エンコーダ等から出力されるアナログ信号は９０°位相の異なる周期性信号であり、それらの周期性信号はＳｉｎ（正弦波）信号とＣｏｓ（余弦波）信号の関係になっている。Ｃｏｓ信号を縦軸、Ｓｉｎ信号を横軸として直交座標平面に対応させると、Ｓｉｎ信号及びＣｏｓ信号の一周期で円を描くリサージュ図形になる。リサージュ図形とは、互いに垂直の方向に単振動を合成するときに描かれる曲線である。図２に示すように、直交座標平面には原点Ｏから、放射状に均等に内挿数（Ｖ）に分割されて、それぞれ０〜Ｖ−１の内挿値が割り振られている。
【００２３】
図２において、第１象限と第２象限はｙ軸で対象であり、第１象限と第３象限は原点Ｏで対象であり、第１象限と第４象限はｘ軸で対象である。そのため、第２象限はｙ軸の値をそのままでｘ軸の値を反転させることにより、第１象限に置換できる。第３象限はｘ軸の値とｙ軸の値の両方を反転させることにより、第１象限に置換できる。第４象限は、ｘの値はそのままでｙの値を反転させることにより、第１象限に置換できる。これにより、この第２〜４象限を第１象限に置換できるため、ルックアップテーブルのデータが１／４の容量になる。
【００２４】
次に、π／４〜π／２の範囲を０〜π／４の範囲に置換について説明する。図３（ａ）において、０〜π／４とπ／４〜π／２は対称である。ここで、０〜π／４の範囲でｙ軸の値よりｘ軸の値を比較した場合はｘ軸の値の方が大きい。そして、π／４〜π／２の範囲ではｘ軸の値よりｙ軸の値を比較した場合はｙ軸の値の方が大きい。そのため、ｘ軸の値とｙ軸の値を比較して、ｘ軸の値よりｙ軸の値の方が大きい場合にはｘ軸の値とｙ軸の値を入れ替える。つまり、図３（ｂ）のように、π／４〜π／２の範囲を０〜π／４の範囲に置換できる。これにより、ルックアップテーブルのデータが更に半分になり、全体に対して１／８の容量になる。
【００２５】
しかし、このルックアップテーブルの容量は０〜π／４となっているため、このデータ領域のパターンは三角形となっている。そのため、記憶部１４０にデータとして記憶させる場合、三角形の形で領域が記憶することはできなく、三角形を覆うように四角形でのデータ領域を記憶することになる。これでは、ルックアップテーブルの記憶領域が１／４の領域と変わらない。
【００２６】
そこで、図３（ｃ）に示すように、ルックアップテーブルを連続した領域にすべく、第１象限の中心の点Ｐ、点Ｐの水平線上で第１象限のルックアップテーブルの外縁部のｘ軸上の接点Ｓの垂直方向との接点Ｒ、原点Ｏと点Ｐを結んだ線と接点Ｓの垂直方向との接点Ｑ、で囲んだ領域を、点Ｐを支点１８０°座標に回転させて、原点Ｏと点Ｐを結んだ線に接触させる形にする。
【００２７】
これにより、ルックアップテーブルは、本来正方形の四角の領域で示される上半分の領域が、下半分の領域の空き領域に折り返されて、１／８の容量で連続した四角い領域になる。つまり、図３（ｄ）のとおり、ｘ軸の値は０００００〜１１１１１で、ｙ軸の値は００００〜１１１１の領域になる。
【００２８】
図４は、図３（ｄ）に示す1／８で四角い領域での内挿値の具体的数値例を示したもので、内挿数（Ｖ＝４０）に分割した場合で１／８の領域を示している。図４では、折り返される前の領域（上半分の領域）を破線で示してあり、この破線で示される上半分の値３の領域と、値４の領域とが、下半分の左上に収まっている。
【００２９】
［３．アドレス生成器の処理］
前述でルックアップテーブルが１／８の容量で連続した四角い記憶領域に変換されているので、アドレス生成器１３０はこのルックアップテーブルに対応したアドレスを変更する必要がある。そこで、デジタル変換されたＣｏｓデータ及びＳｉｎデータを、前述のルックアップテーブルの領域に対応するためのアドレス（２ｎ−３ビット）に変更するアドレス生成器１３０についての処理例について、図５を参照して説明する。なお、図５で、Ｓｉｎ，Ｃｏｓの上に「−」を付けたものはそれぞれの反転値を表している。
【００３０】
まず、デジタル変換された２相デジタル信号（Ｃｏｓデータ、Ｓｉｎデータ）の２つのデータの各最上位ビットの状態を判断する（図５の条件の第１象限化の欄を参照）。そして、最上位ビットが“０”である場合、各々のデータは反転させる。
【００３１】
そして、その反転又は非反転したデータの最上位ビットを削除したデータの比較を行う（図５の条件の（０〜π／４）化の欄を参照）。
【００３２】
その比較より、小さいほうのデータの最上位ビットを判断する。そのデータの最上位ビットが“１”である場合、各々のデータは反転させる（図５の条件の１／８領域化の欄を参照）。
【００３３】
その２つのデータの処理結果を、一方のデータをさらに最上位ビットを削除したデータを上位アドレスとし、もう一方のデータを下位アドレスとする（図５の処理結果の欄を参照）。そして、その上位アドレスと下位アドレスを順に繋げて、ルックアップテーブルに対応したアドレスとなる。
【００３４】
デジタル変換された２相デジタル信号が円を描くルックアップテーブル内の各領域にあった場合、領域ごとの処理結果を記載する。なお、Ｃｏｓデータ（ｎ−１）及びＳｉｎデータ（ｎ−１）はＣｏｓデータ及びＳｉｎデータの最上位ビットを削除したデータで、Ｃｏｓデータ（ｎ−２）及びＳｉｎデータ（ｎ−２）はＣｏｓデータ及びＳｉｎデータの上位２ビットを削除したデータとする。
【００３５】
［Ｎｏ．１］
デジタル変換された２相デジタル信号が、Ｃｏｓデータ及びＳｉｎデータの最上位ビットが“１”、“Ｃｏｓデータ（ｎ−１）≦Ｓｉｎデータ（ｎ−１）”、Ｃｏｓデータ（ｎ−１）の最上位ビットが“１”の場合に実行される。それは、上位アドレスをＣｏｓデータ（ｎ−２）の反転値、下位アドレスをＳｉｎデータ（ｎ−１）の反転値となり、順に繋げてアドレス（２ｎ−３ビット）に変更される（図５、Ｎｏ．１を参照）。
【００３６】
［Ｎｏ．２］
デジタル変換された２相デジタル信号が、Ｃｏｓデータ及びＳｉｎデータの最上位ビットが“１”、“Ｃｏｓデータ（ｎ−１）≦Ｓｉｎデータ（ｎ−１）”、Ｃｏｓデータ（ｎ−１）の最上位ビットが“０”の場合に実行される。それは、上位アドレスをＣｏｓデータ（ｎ−２）、下位アドレスをＳｉｎデータ（ｎ−１）となり、順に繋げてアドレス（２ｎ−３ビット）に変更される（図５、Ｎｏ．２を参照）。
【００３７】
［Ｎｏ．３］
デジタル変換された２相デジタル信号が、Ｃｏｓデータ及びＳｉｎデータの最上位ビットが“１”、“Ｃｏｓデータ（ｎ−１）＞Ｓｉｎデータ（ｎ−１）”、Ｓｉｎデータ（ｎ−１）の最上位ビットが“１”の場合に実行される。それは、上位アドレスをＳｉｎデータ（ｎ−２）の反転値、下位アドレスをＣｏｓデータ（ｎ−１）の反転値となり、順に繋げてアドレス（２ｎ−３ビット）に変更される（図５、Ｎｏ．３を参照）。
【００３８】
［Ｎｏ．４］
デジタル変換された２相デジタル信号が、Ｃｏｓデータ及びＳｉｎデータの最上位ビットが“１”、“Ｃｏｓデータ（ｎ−１）＞Ｓｉｎデータ（ｎ−１）”、Ｓｉｎデータ（ｎ−１）の最上位ビットが“０”の場合に実行される。それは、上位アドレスをＳｉｎデータ（ｎ−２）、下位アドレスをＣｏｓデータ（ｎ−１）となり、順に繋げてアドレス（２ｎ−３ビット）に変更される（図５、Ｎｏ．４を参照）。
【００３９】
［Ｎｏ．５］
デジタル変換された２相デジタル信号が、Ｃｏｓデータの最上位ビットが“１”でＳｉｎデータの最上位ビットが“０”、“Ｃｏｓデータ（ｎ−１）≦Ｓｉｎデータ（ｎ−１）の反転値”、Ｃｏｓデータ（ｎ−１）の最上位ビットが“１”の場合に実行される。それは、上位アドレスをＣｏｓデータ（ｎ−２）の反転値、下位アドレスをＳｉｎデータ（ｎ−１）となり、順に繋げてアドレス（２ｎ−３ビット）に変更される（図５、Ｎｏ．５を参照）。
【００４０】
［Ｎｏ．６］
デジタル変換された２相デジタル信号が、Ｃｏｓデータの最上位ビットが“１”でＳｉｎデータの最上位ビットが“０”、“Ｃｏｓデータ（ｎ−１）≦Ｓｉｎデータ（ｎ−１）の反転値”、Ｃｏｓデータ（ｎ−１）の最上位ビットが“０”の場合に実行される。それは、上位アドレスをＣｏｓデータ（ｎ−２）、下位アドレスをＳｉｎデータ（ｎ−１）の反転値となり、順に繋げてアドレス（２ｎ−３ビット）に変更される（図５、Ｎｏ．６を参照）。
【００４１】
［Ｎｏ．７］
デジタル変換された２相デジタル信号が、Ｃｏｓデータの最上位ビットが“１”でＳｉｎデータの最上位ビットが“０”、“Ｃｏｓデータ（ｎ−１）＞Ｓｉｎデータ（ｎ−１）の反転値”、Ｓｉｎデータ（ｎ−１）の反転値の最上位ビットが“１”の場合に実行される。それは、上位アドレスをＳｉｎデータ（ｎ−２）、下位アドレスをＣｏｓデータ（ｎ−１）の反転値となり、順に繋げてアドレス（２ｎ−３ビット）に変更される（図５、Ｎｏ．７を参照）。
【００４２】
［Ｎｏ．８］
デジタル変換された２相デジタル信号が、Ｃｏｓデータの最上位ビットが“１”でＳｉｎデータの最上位ビットが“０”、“Ｃｏｓデータ（ｎ−１）＞Ｓｉｎデータ（ｎ−１）の反転値”、Ｓｉｎデータ（ｎ−１）の反転値の最上位ビットが“０”の場合に実行される。それは、上位アドレスをＳｉｎデータ（ｎ−２）の反転値、下位アドレスをＣｏｓデータ（ｎ−１）となり、順に繋げてアドレス（２ｎ−３ビット）に変更される（図５、Ｎｏ．８を参照）。
【００４３】
［Ｎｏ．９］
デジタル変換された２相デジタル信号が、Ｃｏｓデータ及びＳｉｎデータの最上位ビットが“０”、“Ｃｏｓデータ（ｎ−１）の反転値≦Ｓｉｎデータ（ｎ−１）の反転値”、Ｃｏｓデータ（ｎ−１）の反転値の最上位ビットが“１”の場合に実行される。それは、上位アドレスをＣｏｓデータ（ｎ−２）、下位アドレスをＳｉｎデータ（ｎ−１）となり、順に繋げてアドレス（２ｎ−３ビット）に変更される（図５、Ｎｏ．９を参照）。
【００４４】
［Ｎｏ．１０］
デジタル変換された２相デジタル信号が、Ｃｏｓデータ及びＳｉｎデータの最上位ビットが“０”、“Ｃｏｓデータ（ｎ−１）の反転値≦Ｓｉｎデータ（ｎ−１）の反転値”、Ｃｏｓデータ（ｎ−１）の反転値の最上位ビットが“０”の場合に実行される。それは、上位アドレスをＣｏｓデータ（ｎ−２）の反転値、下位アドレスをＳｉｎデータ（ｎ−１）の反転値となり、順に繋げてアドレス（２ｎ−３ビット）に変更される（図５、Ｎｏ．１０を参照）。
【００４５】
［Ｎｏ．１１］
デジタル変換された２相デジタル信号が、Ｃｏｓデータ及びＳｉｎデータの最上位ビットが“０”、“Ｃｏｓデータ（ｎ−１）の反転値＞Ｓｉｎデータ（ｎ−１）の反転値”、Ｓｉｎデータ（ｎ−１）の反転値の最上位ビットが“１”の場合に実行される。それは、上位アドレスをＳｉｎデータ（ｎ−２）、下位アドレスをＣｏｓデータ（ｎ−１）となり、順に繋げてアドレス（２ｎ−３ビット）に変更される（図５、Ｎｏ．１１を参照）。
【００４６】
［Ｎｏ．１２］
デジタル変換された２相デジタル信号が、Ｃｏｓデータ及びＳｉｎデータの最上位ビットが“０”、“Ｃｏｓデータ（ｎ−１）の反転値＞Ｓｉｎデータ（ｎ−１）の反転値”、Ｓｉｎデータ（ｎ−１）の反転値の最上位ビットが“０”の場合に実行される。それは、上位アドレスをＳｉｎデータ（ｎ−２）の反転値、下位アドレスをＣｏｓデータ（ｎ−１）の反転値となり、順に繋げてアドレス（２ｎ−３ビット）に変更される（図５、Ｎｏ．１２を参照）。
【００４７】
［Ｎｏ．１３］
デジタル変換された２相デジタル信号が、Ｃｏｓデータの最上位ビットが“０”でＳｉｎデータの最上位ビットが“１”、“Ｃｏｓデータ（ｎ−１）の反転値≦Ｓｉｎデータ（ｎ−１）”、Ｃｏｓデータ（ｎ−１）の反転値の最上位ビットが“１”の場合に実行される。それは、上位アドレスをＣｏｓデータ（ｎ−２）、下位アドレスをＳｉｎデータ（ｎ−１）の反転値となり、順に繋げてアドレス（２ｎ−３ビット）に変更される（図５、Ｎｏ．１３を参照）。
【００４８】
［Ｎｏ．１４］
デジタル変換された２相デジタル信号が、Ｃｏｓデータの最上位ビットが“０”でＳｉｎデータの最上位ビットが“１”、“Ｃｏｓデータ（ｎ−１）の反転値≦Ｓｉｎデータ（ｎ−１）”、Ｃｏｓデータ（ｎ−１）の反転値の最上位ビットが“０”の場合に実行される。それは、上位アドレスをＣｏｓデータ（ｎ−２）の反転値、下位アドレスをＳｉｎデータ（ｎ−１）となり、順に繋げてアドレス（２ｎ−３ビット）に変更される（図５、Ｎｏ．１４を参照）。
【００４９】
［Ｎｏ．１５］
デジタル変換された２相デジタル信号が、Ｃｏｓデータの最上位ビットが“０”でＳｉｎデータの最上位ビットが“１”、“Ｃｏｓデータ（ｎ−１）の反転値＞Ｓｉｎデータ（ｎ−１）”、Ｓｉｎデータ（ｎ−１）の最上位ビットが“１”の場合に実行される。それは、上位アドレスをＳｉｎデータ（ｎ−２）の反転値、下位アドレスをＣｏｓデータ（ｎ−１）となり、順に繋げてアドレス（２ｎ−３ビット）に変更される（図５、Ｎｏ．１５を参照）。
【００５０】
［Ｎｏ．１６］
デジタル変換された２相デジタル信号が、Ｃｏｓデータの最上位ビットが“０”でＳｉｎデータの最上位ビットが“１”、“Ｃｏｓデータ（ｎ−１）の反転値＞Ｓｉｎデータ（ｎ−１）”、Ｓｉｎデータ（ｎ−１）の最上位ビットが“０”の場合に実行される。それは、上位アドレスをＳｉｎデータ（ｎ−２）、下位アドレスをＣｏｓデータ（ｎ−１）の反転値となり、順に繋げてアドレス（２ｎ−３ビット）に変更される（図５、Ｎｏ．１６を参照）。
【００５１】
これらのＮｏ．１〜１６の処理より、アドレス生成器１３０によってアドレス（２ｎ−３ビット）に変更される。そして、このアドレス（２ｎ−３ビット）から記憶部１４０に記憶してあるルックアップテーブルより内挿値Ａを読み出す。
【００５２】
［４．補正器の処理］
次に、図６を参照して、読み出した内挿値Ａとアドレス生成器１３０を通して入力されたＳｉｎデータ及びＣｏｓデータから、補正器１５０で本来の内挿値Ａ’を算出される処理例について説明する。
【００５３】
Ｃｏｓデータ及びＳｉｎデータの最上位ビットが“１”、“Ｃｏｓデータ（ｎ−１）≦Ｓｉｎデータ（ｎ−１）”の場合、[内挿値Ａ]をそのまま内挿値Ａ’とする（図６、Ｎｏ．１を参照）。対して、“Ｃｏｓデータ（ｎ−１）＞Ｓｉｎデータ（ｎ−１）”の場合、[Ｖ／８＋（Ｖ／８−１）−内挿値Ａ）]の値を内挿値Ａ’とする（図６、Ｎｏ．２を参照）。
【００５４】
Ｓｉｎデータの最上位ビットが“０”及びＣｏｓデータの最上位ビットが“１”で、“Ｃｏｓデータ（ｎ−１）≦Ｓｉｎデータ（ｎ−１）の反転値”の場合、[Ｖ／４＋（Ｖ／８＋（Ｖ／８−１）−内挿値Ａ）]の値を内挿値Ａ’とする（図６、Ｎｏ．３を参照）。対して、“Ｃｏｓデータ（ｎ−１）＞Ｓｉｎデータ（ｎ−１）の反転値”の場合、[Ｖ／４＋内挿値Ａ]の値を内挿値Ａ’とする（図６、Ｎｏ．４を参照）。
【００５５】
Ｃｏｓデータ及びＳｉｎデータの最上位ビットが“０”で、“Ｃｏｓデータ（ｎ−１）の反転値≦Ｓｉｎデータ（ｎ−１）の反転値”の場合、[Ｖ／２＋内挿値Ａ]の値を内挿値Ａ’とする（図６、Ｎｏ．５を参照）。対して、“Ｃｏｓデータ（ｎ−１）の反転値＞Ｓｉｎデータ（ｎ−１）の反転値”の場合、[Ｖ／２＋（Ｖ／８＋（Ｖ／８−１）−内挿値Ａ）]を内挿値Ａ’とする（図６、Ｎｏ．６を参照）。
【００５６】
Ｓｉｎデータの最上位ビットが“１”及びＣｏｓデータの最上位ビットが“０”で、“Ｃｏｓデータ（ｎ−１）の反転値≦Ｓｉｎデータ（ｎ−１）”の場合、[３×Ｖ／４＋（Ｖ／８＋（Ｖ／８−１）−内挿値Ａ）]を内挿値Ａ’とする（図６、Ｎｏ．７を参照）。対して、“Ｃｏｓデータ（ｎ−１）の反転値＞Ｓｉｎデータ（ｎ−１）”の場合、[３×Ｖ／４＋内挿値Ａ]を内挿値Ａ’とする（図６、Ｎｏ．８を参照）。
【００５７】
これらにより、本来の内挿値Ａ’が算出できる。
【００５８】
［５．変位出力器の処理例］
図７のフローチャートを参照して、増減変位量演算回路１７０がサンプリング毎の内挿値の変化量を求めて出力する場合について説明する。この図７のフローチャートの処理は、補正器１５０からの内挿値Ａ’が画差分１７０ｂに入力され（ステップＳ１０１）、ラッチ１７０ａに保持されている前回の内挿値Ａ”が差分１７０ｂに入力された（ステップＳ１０２）場合に実行される。
【００５９】
現在の内挿値Ａ’から、ラッチ１７０ａが保持している前回の内挿値Ａ”を減算し、これを仮の変数ｓとする（ステップＳ１０３）。
【００６０】
そして、仮の変数ｓの絶対値がＶ／２未満か以上であるかを判断する（ステップＳ１０４）。
【００６１】
ステップＳ１０４で、仮の変数ｓの絶対値がＶ／２未満の場合は、そのまま１サンプリング間の増減変位量ｇとして出力する（ステップＳ１０８）。
【００６２】
ステップＳ１０４で、仮の変数ｓの絶対値がＶ／２以上の場合は、仮の変数ｓが正かどうかを判断する（ステップＳ１０５）。仮の変数ｓが正の場合は、仮の変数ｓから内挿数Ｖを減算して（ステップＳ１０６）、これを増減変位量ｇとして出力する（ステップＳ１０８）。仮の変数ｓが負の場合は、仮の変数ｓに内挿数Ｖを加算して（ステップＳ１０７）、これを増減変位量ｇとして出力する（ステップＳ１０８）。
【００６３】
以上説明した本実施の形態においては、従来のルックアップテーブルの領域に比べて、１／８で連続した四角い領域に、Ｓｉｎ信号及びＣｏｓ信号の１周期分（３６０°）の内挿データを代行することができる。これにより、記憶部の記憶領域を小さくすることができるためにローコスト化を図れる。さらに従来と同じ領域の記憶部を使用した場合には、従来と比べて、更なる高分解能化が可能である。
【００６４】
例えば、アナログ／デジタル変換器を６ビットで、ＲＯＭのデータ幅１バイトの場合、直交座標平面のルックアップテーブルをそのまま使用する。その場合、直交座標平面の縦軸６ビット、横軸６ビットで計１２ビットとなり、ＲＯＭの領域は２の１２乗で４０９６バイト必要である。これを、従来技術では第１象限化により縦軸５ビット、横軸５ビットで計１０ビットとなり、ＲＯＭの領域は２の１０乗で１０２４バイトになる。
【００６５】
しかし、本実施の形態を用いた場合、第１象限化から更に半減され座標変換することから縦軸４ビット、横軸５ビットとなり、ＲＯＭの領域は２の９乗で５１２バイトとなる。そのため、直交座標平面のルックアップテーブルをそのまま使用した場合と比べＲＯＭの容量は１／８になる。これにより、ルックアップテーブルに用いるＲＯＭの領域を１／８にすることにより、大きい領域のＲＯＭを使う必要が無く、ローコスト化が図れる。
【００６６】
また、安価なワンチップマイコン程度のＲＯＭの領域でも高内挿が可能であり、アナログ／デジタル変換からＡＢ相出力までワンチップで行うことができて、ローコスト化が図れる。更に、従来と同じ容量のＲＯＭを使用した場合、更なる高分解能化が可能である。
【符号の説明】
【００６７】
１１０，１２０…アナログ／デジタル変換器、１３０…アドレス生成器、１４０…記憶部、１５０…補正器、１６０…変位出力器、１７０…増減変位量演算回路、１７０ａ…ラッチ、１７０ｂ…差分、１８０…ＡＢ相出力生成器
【図１】
2010249704.tif 000003
【図２】
2010249704.tif 000004
【図３】
2010249704.tif 000005
【図４】
2010249704.tif 000006
【図５】
2010249704.tif 000007
【図６】
2010249704.tif 000008
【図７】
2010249704.tif 000009
【図８】
2010249704.tif 000010