(57)【要約】【課題】回転体の回転角度を高い分解能で検出する。【解決手段】回転軸の１周を互いに異なる数に分割したセグメント内の角度情報を示す複数の検出信号を取得する取得部と、複数の検出信号のうちの少なくとも２つの検出信号に基づいて、回転軸の角度値の第１桁範囲および第１桁範囲の下位側に接する第２桁範囲を含む第１基準角度情報を算出する基準角度算出部と、少なくとも２つの検出信号に基づく第１桁範囲に対応する角度情報を第１桁範囲に含み、少なくとも１つの検出信号に基づく第２桁範囲に対応する角度情報を第２桁範囲に含む出力用角度情報を生成する生成部と、出力用角度情報および第１基準角度情報の差に基づいて、出力用角度情報における第１桁範囲の角度情報を補正する補正部と、を備える角度検出装置、角度検出方法、およびプログラムを提供する。【選択図】図１２
2019074397.tif 000002
【特許請求の範囲】
【請求項１】
回転軸の１周を互いに異なる数に分割したセグメント内の角度情報を示す複数の検出信号を取得する取得部と、
前記複数の検出信号のうちの少なくとも２つの検出信号に基づいて、前記回転軸の角度値の第１桁範囲および前記第１桁範囲の下位側に接する第２桁範囲を含む第１基準角度情報を算出する基準角度算出部と、
前記少なくとも２つの検出信号に基づく前記第１桁範囲に対応する角度情報を前記第１桁範囲に含み、前記複数の検出信号のうちの少なくとも１つの検出信号に基づく前記第２桁範囲に対応する角度情報を前記第２桁範囲に含む出力用角度情報を生成する生成部と、
前記出力用角度情報および前記第１基準角度情報の差に基づいて、前記出力用角度情報における前記第１桁範囲の角度情報を補正する補正部と、
を備える角度検出装置。
【請求項２】
前記補正部は、前記出力用角度情報および前記第１基準角度情報の差が第１閾値以上であることを条件として、前記出力用角度情報における前記第１桁範囲の角度情報をインクリメントまたはデクリメントすることにより差を減少させる請求項１に記載の角度検出装置。
【請求項３】
前記第１閾値は、前記第１桁範囲の最下位桁の重みの１／２に相当する値である請求項２に記載の角度検出装置。
【請求項４】
前記少なくとも２つの検出信号は、第１検出信号および第２検出信号からなり、
前記少なくとも１つの検出信号は、前記第１検出信号および第３検出信号からなる
請求項１から３のいずれか一項に記載の角度検出装置。
【請求項５】
前記第１検出信号は、前記回転軸の１周を２（ｍ＋ｎ）（ただし、ｍ、ｎは自然数）に分割したセグメント内の角度を示し、
前記第２検出信号は、前記回転軸の１周を２（ｍ＋ｎ）−１に分割したセグメント内の角度を示し、
前記第３検出信号は、前記回転軸の１周を２ｍ×（２ｎ−１）に分割したセグメント内の角度を示す
請求項４に記載の角度検出装置。
【請求項６】
前記取得部は、前記複数の検出信号のそれぞれとして、前記回転軸の１周を分割したセグメント内の位相角を示す信号値を取得し、
前記基準角度算出部は、前記第１検出信号の位相角および前記第２検出信号の位相角に基づいて、前記第１桁範囲を示すｍおよび前記第２桁範囲を示すｎを含む前記第１基準角度情報を算出し、
前記生成部は、前記第１検出信号の位相角および前記第３検出信号の位相角に基づいて、前記出力用角度情報の前記第２桁範囲を示すｎに対応する角度情報を算出する
請求項５に記載の角度検出装置。
【請求項７】
前記基準角度算出部は、前記第１検出信号および前記第３検出信号に基づいて、前記回転軸の角度値の前記第２桁範囲および前記第２桁範囲の下位側に接する第３桁範囲を含む第２基準角度情報を更に算出し、
前記生成部は、前記第１検出信号に基づいて、前記出力用角度情報における前記第３桁範囲に対応する角度情報を生成し、
前記補正部は、前記出力用角度情報における前記第２桁範囲および前記第３桁範囲の部分と、前記第２基準角度情報との差に基づいて、前記出力用角度情報における前記第２桁範囲の角度情報を補正する
請求項４から６のいずれか一項に記載の角度検出装置。
【請求項８】
前記出力用角度情報における前記第３桁範囲に対応する角度情報は、前記第１検出信号のセグメント内の位相角を示す請求項７に記載の角度検出装置。
【請求項９】
前記補正部は、前記出力用角度情報における前記第２桁範囲および前記第３桁範囲の部分と、前記第２基準角度情報との差が第２閾値以上であることを条件として、前記出力用角度情報における前記第２桁範囲の角度情報をインクリメントまたはデクリメントして差を減少させる請求項７または８に記載の角度検出装置。
【請求項１０】
前記第２閾値は、前記第２桁範囲の最下位桁の重みの１／２に相当する値である請求項９に記載の角度検出装置。
【請求項１１】
前記回転軸と、
前記回転軸に対して固定され、前記複数の検出信号のそれぞれに対応して回転方向に沿って各検出信号に対応するセグメント数のスリットが設けられた磁性体の回転盤と、
前記複数の検出信号のそれぞれに対応して設けられ、対応するスリットの相対位置に応じた磁場を検出する複数の磁気センサと
を備え、
前記取得部は、前記複数の磁気センサから前記複数の検出信号を取得する
請求項１から１０のいずれか一項に記載の角度検出装置。
【請求項１２】
回転軸の１周を互いに異なる数に分割したセグメント内の角度情報を示す複数の検出信号を取得することと、
前記複数の検出信号のうちの少なくとも２つの検出信号に基づいて、前記回転軸の角度値の第１桁範囲および前記第１桁範囲の下位側に接する第２桁範囲を含む第１基準角度情報を算出することと、
前記少なくとも２つの検出信号に基づく前記第１桁範囲に対応する角度情報を前記第１桁範囲に含み、前記少なくとも１つの検出信号に基づく前記第２桁範囲に対応する角度情報を前記第２桁範囲に含む出力用角度情報を生成することと、
前記出力用角度情報および前記第１基準角度情報の差に基づいて、前記出力用角度情報における前記第１桁範囲の角度情報を補正することと、
を備える角度検出方法。
【請求項１３】
コンピュータに、請求項１から１１のいずれか一項に記載の角度検出装置として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、角度検出装置、角度検出方法、およびプログラムに関する。
【背景技術】
【０００２】
従来、磁気抵抗素子を用いて、回転体の回転角度を高い分解能で検出する検出装置が知られていた（例えば、特許文献１参照）。
特許文献１  特開２０１６−２３９８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかしながら、このような検出装置は、回転体の磁気抵抗素子に対向する面に、偏心および振動等によってブレが生じると、回転体の回転角度の検出精度が悪化してしまうことがあった。特に、１００μｍを超える面ブレが生じると、大きな誤差が生じてしまうことがあった。
【課題を解決するための手段】
【０００４】
本発明の第１の態様においては、回転軸の１周を互いに異なる数に分割したセグメント内の角度情報を示す複数の検出信号を取得する取得部と、複数の検出信号のうちの少なくとも２つの検出信号に基づいて、回転軸の角度値の第１桁範囲および第１桁範囲の下位側に接する第２桁範囲を含む第１基準角度情報を算出する基準角度算出部と、少なくとも２つの検出信号に基づく第１桁範囲に対応する角度情報を第１桁範囲に含み、少なくとも１つの検出信号に基づく第２桁範囲に対応する角度情報を第２桁範囲に含む出力用角度情報を生成する生成部と、出力用角度情報および第１基準角度情報の差に基づいて、出力用角度情報における第１桁範囲の角度情報を補正する補正部と、を備える角度検出装置、角度検出方法、およびプログラムを提供する。
【０００５】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【０００６】
【図１】本実施形態に係る検出部８０の構成例を示す。
【図２】本実施形態に係る磁気センサ４０の検出結果が最小となる場合の例を示す。
【図３】本実施形態に係る磁気センサ４０の検出結果が最大となる場合の例を示す。
【図４】本実施形態に係る磁気センサ４０のより詳細な構成例を示す。
【図５】本実施形態に係る磁気センサ４０が出力する検出信号の一例を示す。
【図６】本実施形態に係る複数の磁気センサ４０がそれぞれ出力する検出信号の一例を示す。
【図７】本実施形態に係る回転盤１４の構成例を示す。
【図８】本実施形態に係る角度検出装置１００の第１の構成例を磁気センサ４０と共に示す。
【図９】本実施形態に係る角度検出装置１００の動作フローの一例を示す。
【図１０】本実施形態に係る角度検出装置１００の上位桁の算出結果を、機械角θ０と共に示す。
【図１１】本実施形態に係る角度検出装置１００の上位桁および中位桁の算出結果の一例を示す。
【図１２】本実施形態に係る角度検出装置１００の第２の構成例を磁気センサ４０と共に示す。
【図１３】本実施形態に係る第２の構成例の角度検出装置１００が実行する動作フローの一例を示す。
【図１４】本実施形態に係る角度検出装置１００が算出する機械角θ０の一例を示す。
【図１５】本実施形態に係る角度検出装置１００が出力する出力用角度情報の一例を示す。
【図１６】本実施形態に係る第２の構成例の角度検出装置１００が補正した出力用角度情報の一例を示す。
【図１７】本発明の複数の態様が全体的又は部分的に具現化されうるコンピュータ１２００の例を示す。
【発明を実施するための形態】
【０００７】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【０００８】
図１は、本実施形態に係る検出部８０の構成例を示す。検出部８０は、例えば、工作機械および産業用ロボット等の被検出物の回転する部分に取り付けられ、当該部分の回転角を検出するエンコーダの一部として機能する。検出部８０は、一例として、モータ等に取り付けられ、モータの回転角等を検出する。検出部８０は、回転体１０と、基板２０と、磁場発生部３０と、磁気センサ４０とを備える。
【０００９】
回転体１０は、回転軸１２および回転盤１４を備える。回転軸１２は、被検出物の回転部分の回転軸等に取り付けられる。
【００１０】
回転盤１４は、回転軸１２に対して固定され、回転軸１２を中心軸として回転する。回転盤１４は、円盤状の磁性体でよい。回転盤１４は、回転盤の回転角度に対応するように、回転方向に沿って複数のスリットが設けられる。回転盤１４は、複数のスリットが同心円状に略等間隔に設けられてよい。例えば、回転盤１４は、複数のスリットによるスリット列が形成され、当該スリット列のうちの一のスリットの位置に基づき、当該回転盤１４の回転角を検出する。
【００１１】
基板２０は、回転盤１４と略平行に配置される。基板２０は、回転軸１２に対しては固定されない。即ち、回転盤１４は、基板２０に対して略平行な状態を保ちつつ回転してよい。
【００１２】
磁場発生部３０は、予め定められた略一定の磁場を発生させる。磁場発生部３０は、例えば、磁石を有し、Ｎ極またはＳ極が回転盤１４の方向を向くように配置される。磁場発生部３０は、回転盤１４が有するスリットに対して、発生させた磁場が届く程度に、回転盤１４に近接して配置される。磁場発生部３０は、一例として、フェライト、サマリウムコバルト、およびネオジム等の材料を含む永久磁石である。
【００１３】
磁気センサ４０は、回転盤１４および磁場発生部３０の間に設けられる。磁気センサ４０は、基板２０上に複数設けられてよい。磁気センサ４０は、回転盤１４が有する複数のスリットに対応して設けられ、磁場発生部３０から発生する磁束密度を検出する。磁場発生部３０から発生する磁束密度は、回転盤１４のスリットの位置に応じて変化するので、磁気センサ４０は、このような磁束密度の変化を検出することになる。磁気センサ４０が検出する磁束密度の変化について、次に説明する。
【００１４】
図２は、本実施形態に係る磁気センサ４０の検出結果が最小となる場合の例を示す。図２の検出部８０において、図１に示された検出部８０の動作と略同一のものには同一の符号を付け、説明を省略する。図２は、回転盤１４がＸＹ平面と略平行に回転し、磁気センサ４０が回転盤１４の−Ｚ方向側に配置した例を示す。また、図２は、回転盤１４が複数のスリット５０を有し、当該複数のスリット５０のうちの第１スリット５２が、磁気センサ４０の＋Ｚ方向側に位置した例を示す。
【００１５】
この場合、磁場発生部３０は、第１スリット５２に対向するので、磁場発生部３０から発生する磁場のほとんどは回転盤１４の磁性体部を通過しないため、回転盤１４によってによって磁気増幅されない。したがって、例えば、磁場発生部３０および第１スリット５２のＸＹ座標が近接すると、磁気センサ４０に入力する磁束は減少する。そして、図２に示すように、磁場発生部３０および第１スリット５２のＸＹ座標が略一致すると、磁気センサ４０の検出結果は最小となる。
【００１６】
図３は、本実施形態に係る磁気センサ４０の検出結果が最大となる場合の例を示す。図３の検出部８０において、図１および図２に示された検出部８０の動作と略同一のものには同一の符号を付け、説明を省略する。図３は、回転盤１４がＸＹ平面と略平行に回転し、磁気センサ４０が回転盤１４の−Ｚ方向側に配置した例を示す。また、図３は、回転盤１４が有する複数のスリット５０のうちの第１スリット５２および第２スリット５４の間の磁性体が、磁気センサ４０の＋Ｚ方向側に位置した例を示す。
【００１７】
この場合、磁場発生部３０は、回転盤１４の磁性体に対向するので、磁場発生部３０から発生する磁場の少なくとも一部は回転盤１４の磁性体部を通過することで磁気増幅される。したがって、例えば、磁場発生部３０と、第１スリット５２および第２スリット５４の間の磁性体とのＸＹ座標が近接すると、磁気センサ４０に入力する磁束は増加する。そして、図３に示すように、磁場発生部３０と、第１スリット５２および第２スリット５４の間の磁性体とのＸＹ座標が略一致すると、磁気センサ４０の検出結果は最大となる。
【００１８】
図４は、本実施形態に係る磁気センサ４０のより詳細な構成例を示す。図４の検出部８０において、図１から図３に示された検出部８０の動作と略同一のものには同一の符号を付け、説明を省略する。図４において、回転盤１４の移動方向の例を矢印で示す。また、図４は、検出部８０が、電源４２を更に備える例を示す。また、図４は、磁気センサ４０が、第１感磁部２１０、第１端子２５０、第２感磁部３１０、および第２端子３５０を備える例を示す。
【００１９】
電源４２は、第１電位の一方の端子と、第２電位の他方の端子を有し、第１電位および第２電位の電位差を電源電圧として、磁気センサ４０に供給する。図４は、第１電位が第２電位よりも高電位の例を示す。第２電位は、接地電位（グラウンド電位）でよい。
【００２０】
第１感磁部２１０および第２感磁部３１０は、回転盤１４の回転に伴う磁束密度の変化を検出する。第１感磁部２１０および第２感磁部３１０は、回転盤１４の回転角度、回転速度および回転数を検出してよい。また、第１感磁部２１０および第２感磁部３１０を用いて、回転盤１４の回転方向を検出してよい。
【００２１】
第１端子２５０および第２端子３５０は、検出結果を出力する。第１感磁部２１０および第２感磁部３１０は、電源４２から電源電圧を受け取る。第１感磁部２１０は、第１磁気抵抗素子２１２および第３磁気抵抗素子２１４を有する。第１磁気抵抗素子２１２は、第１端子２５０および電源４２の第１電位の間に接続される。第３磁気抵抗素子２１４は、第１端子２５０および電源４２の第２電位の間に接続される。
【００２２】
第１磁気抵抗素子２１２および第３磁気抵抗素子２１４は、回転盤１４の移動方向に配列され、電源４２に接続される。即ち、第１磁気抵抗素子２１２および第３磁気抵抗素子２１４は、第１電位および第２電位の間に電気的に直列に接続される。この場合、第１端子２５０は、第１磁気抵抗素子２１２および第３磁気抵抗素子２１４によって電源電圧を分圧した電圧を出力することになる。
【００２３】
第２感磁部３１０は、第２磁気抵抗素子３１２および第４磁気抵抗素子３１４を有する。第２磁気抵抗素子３１２は、第２端子３５０および電源４２の第１電位の間に接続される。第４磁気抵抗素子３１４は、第２端子３５０および電源４２の第２電位の間に接続される。
【００２４】
第２磁気抵抗素子３１２および第４磁気抵抗素子３１４は、回転盤１４の移動方向に配列され、電源４２に接続される。即ち、第２磁気抵抗素子３１２および第４磁気抵抗素子３１４は、第１電位および第２電位の間に電気的に直列に接続される。この場合、第２端子３５０は、第２磁気抵抗素子３１２および第４磁気抵抗素子３１４によって電源電圧を分圧した電圧を出力することになる。
【００２５】
ここで、第２磁気抵抗素子３１２は、回転盤１４の移動方向において第１磁気抵抗素子２１２および第３磁気抵抗素子２１４の間に配置される。また、第３磁気抵抗素子２１４は、回転盤１４の移動方向において第２磁気抵抗素子３１２および第４磁気抵抗素子３１４の間に配置される。
【００２６】
第１磁気抵抗素子２１２、第２磁気抵抗素子３１２、第３磁気抵抗素子２１４、および第４磁気抵抗素子３１４といった磁気抵抗素子は、回転盤１４の移動に伴う磁場発生部３０からの磁束密度に応じて抵抗値を変化させる。例えば、磁気抵抗素子は、入力する磁場の磁束密度の大きさが増加すると、抵抗値も増加する。磁気抵抗素子は、半導体磁気抵抗素子を感磁領域に含んでよい。半導体磁気抵抗素子は、一例として、ＩＩＩ−Ｖ族化合物半導体材料を含む。
【００２７】
第１磁気抵抗素子２１２、第２磁気抵抗素子３１２、第３磁気抵抗素子２１４、および第４磁気抵抗素子３１４は、回転盤１４のスリット５０の周期に応じて、配列されてよい。例えば、図４に示すように、第３磁気抵抗素子２１４が第１スリット５２および第２スリット５４の間の磁性体に対向した場合、第１磁気抵抗素子２１２が第２スリット５４に対向するように、第１磁気抵抗素子２１２および第３磁気抵抗素子２１４は配置される。なお、回転盤１４の移動方向において、各スリットの幅と、スリット間の距離は、ほぼ等しい値で形成されているとする。即ち、スリット５０の１周期は、スリット幅の２倍に略等しい。
【００２８】
この場合、第３磁気抵抗素子２１４の抵抗値は、入力する磁束密度に応じて抵抗値が変化する範囲において最大値となる。また、第１磁気抵抗素子２１２の抵抗値は、入力する磁束密度に応じて抵抗値が変化する範囲において最小値となる。したがって、図４の例に示すような回転盤１４の位置において、磁気センサ４０は、電源電圧を分圧した電圧の変化範囲における最大値を、第１端子２５０から出力する。
【００２９】
同様に、第２磁気抵抗素子３１２および第４磁気抵抗素子３１４は、回転盤１４の周期的に配列されたスリット５０の周期に応じて、回転盤１４の移動方向に沿って配列される。図４において、第２磁気抵抗素子３１２は、回転盤１４の第１スリット５２および磁性体の間に位置する。また、第４磁気抵抗素子３１４は、回転盤１４の磁性体および第２スリット５４の間に位置する。
【００３０】
したがって、第２磁気抵抗素子３１２および第４磁気抵抗素子３１４に入力する磁束密度は、第１磁気抵抗素子２１２および第３磁気抵抗素子２１４の磁束密度の中間の磁束密度となる。例えば、第１磁気抵抗素子２１２、第２磁気抵抗素子３１２、第３磁気抵抗素子２１４、および第４磁気抵抗素子３１４の順に、回転体１０の移動方向において等間隔に配置された場合、第２磁気抵抗素子３１２および第４磁気抵抗素子３１４の抵抗値は、それぞれ、抵抗値の変化範囲の略中間の値となる。
【００３１】
なお、第１磁気抵抗素子２１２、第２磁気抵抗素子３１２、第３磁気抵抗素子２１４、および第４磁気抵抗素子３１４は、ゼロ磁場に対する略同一の初期抵抗値と、磁束密度に対して略同一の抵抗の変化率とを有する磁気抵抗素子とする。これにより、図４の例に示すような回転盤１４の位置においては、磁気センサ４０は、電源電圧の略中間値を、第２端子３５０から出力する。このような磁気センサ４０に対して、図４に示す矢印の移動方向に回転盤１４が移動するので、各磁気抵抗素子に入力する磁束密度は、回転盤１４のスリット５０の位置に応じて増減し、第１端子２５０および第２端子３５０から出力される電圧も増減する。
【００３２】
図５は、本実施形態に係る磁気センサ４０が出力する検出信号の一例を示す。図５の横軸は時間ｔを示し、縦軸は検出信号の電圧値Ｖを示す。図５は、第１端子２５０および第２端子３５０から出力される検出信号電圧をそれぞれプロットした例を示す。例えば、時刻ｔ１は、回転体１０の磁気センサ４０に対する位置が図４に示す配置する時点の例である。この場合、第１端子２５０は、電圧変化の最大値である電圧Ｖ１が出力され、第２端子３５０は、電圧変化の中間値である電圧Ｖ２を出力する。
【００３３】
次に、時刻ｔ２は、第２磁気抵抗素子３１２が第２スリット５４に対向し、第４磁気抵抗素子３１４が第１スリット５２および第２スリット５４の間の磁性体に対向するまで、回転盤１４が回転した時点の例である。この場合、第１端子２５０は、電圧変化の中間値である電圧Ｖ２が出力され、第２端子３５０は、電圧変化の最大値である電圧Ｖ１が出力される。次に、時刻ｔ３は、第１磁気抵抗素子２１２が第２スリット５４の次に並ぶ磁性体に対向し、第３磁気抵抗素子２１４が第２スリット５４に対向するまで、回転盤１４が回転した時点の例である。この場合、第１端子２５０は、電圧変化の最小値である電圧Ｖ３が出力され、第２端子３５０は、電圧変化の中間値である電圧Ｖ２を出力する。
【００３４】
このように、回転盤１４が回転軸１２を中心に等速円運動をした場合、第１端子２５０および第２端子３５０からそれぞれ出力される検出信号は、余弦波信号および正弦波信号となる。したがって、磁気センサ４０は、第１端子２５０および第２端子３５０が出力する検出信号の電圧から逆正接を算出することにより、回転軸の１周を分割したセグメント内における回転盤１４の角度情報（電気角）を検出することができる。
【００３５】
また、磁気センサ４０は、第１端子２５０および／または第２端子３５０が出力する検出信号の周期から、回転盤１４の回転速度を検出できる。また、磁気センサ４０は、例えば、正弦波信号のピーク値等の検出回数から、回転盤１４の回転数を検出することができる。また、回転盤１４の回転が等速運動ではなくても、回転してスリット５０の位置が移動することにより、検出信号は変化する。したがって、当該検出信号の変化によって、磁気センサ４０は、回転盤１４が移動したことを検出することができる。また、磁気センサ４０は、第１端子２５０および第２端子３５０の検出信号の位相比較によって、回転盤１４の回転方向を検出することができる。
【００３６】
以上の磁気センサ４０を用いて検出される回転盤１４の電気角は、当該回転盤１４の１つのスリット周期に対応する角度範囲における回転角度（セグメント機械角）に対応する。なお、当該角度範囲を、回転軸の１周を分割したセグメントとする。例えば、回転盤１４に設けられたスリットの数をｋとすると、回転盤１４の電気角θｋは、回転盤１４の１周のうちの２π／ｋのセグメント内におけるセグメント機械角θ'に対応する。したがって、磁気センサ４０が検出に用いたスリットの回転盤１４上の位置（即ち、セグメントの位置）がわかれば、回転盤１４の１周のうちの機械角θ（即ち、回転角の絶対的な値）がわかる。
【００３７】
例えば、検出部８０は、回転盤１４の初期位置（θ０）を記憶し、磁気センサ４０によって回転盤１４が回転した電気角θｋを検出した後、セグメント機械角（θ'）に変換し、変換したセグメント機械角θ'を初期位置θ０に積算することで、回転盤１４の機械角θを算出できる（θ＝θ０＋Σθ'）。また、検出部８０は、過去データとの比較によって機械角θを算出してよい。また、検出部８０は、回転盤１４を１回転して、回転盤１４の位置を確認してから機械角θを算出してもよい。
【００３８】
このように、検出部８０は、記憶部等への過去データの記憶および／または初期動作等を実行しないと、機械角θを算出することはできない。そこで、検出部８０は、回転盤１４に複数のスリット列を設け、複数の磁気センサ４０を用いて、それぞれ電気角を検出することで、機械角θを算出する。このような、複数の磁気センサ４０による機械角θの算出について次に説明する。
【００３９】
図６は、本実施形態に係る複数の磁気センサ４０がそれぞれ出力する検出信号の一例を示す。図６は、２つの磁気センサ４０がそれぞれ出力する正弦波信号の例を示す。即ち、図６に示す検出信号は、図４に示す磁気センサ４０の第１端子２５０または第２端子３５０から出力される信号の例である。図６は、横軸が回転盤１４の機械角θを示し、縦軸は検出信号の電圧値Ｖを示す。
【００４０】
検出信号ＶＭは、回転盤１４に形成されたＭ個のスリットを有する第１スリット列から検出された第１検出信号の例を示す。また、検出信号ＶＮは、回転盤１４に形成されたＮ個のスリットを有する第２スリット列から検出された第２検出信号とする（Ｎ≠Ｍ）。図６は、回転盤１４の機械角θが０°の場合に、第１検出信号ＶＭおよび第２検出信号ＶＮが略一致する例を示す。即ち、回転盤１４の移動方向において、第１スリット列が有する一のスリットの移動方向側の端部と、第２スリット列が有する一のスリットの移動方向側の端部とが、略一致する例を示す。
【００４１】
第１スリット列に対応する第１磁気センサ４０は、第１スリット列のスリット周期に応じて、正弦波信号を第１検出信号ＶＭとして出力する。また、第２スリット列に対応する第２磁気センサ４０は、第２スリット列のスリット周期に応じて、正弦波信号を第２検出信号ＶＮとして出力する。第１スリット列および第２スリット列のスリット周期が異なるので、第１検出信号ＶＭおよび第２検出信号ＶＮは、機械角θが増加するにつれて、極大値、極小値、０Ｖの位置がずれていく。
【００４２】
例えば、回転盤１４が第１スリット列のスリット幅に相当する角度θＭπだけ回転すると、第１検出信号ＶＭは０Ｖから極大値を経て再び０Ｖに変化する。この場合、回転盤１４は第２スリット列のスリット幅に相当する角度θＮπまで回転していないので、第２検出信号ＶＮは０Ｖまでには至らない（θＭπ＜θＮπ）。そして、回転盤１４が角度θＮπまで回転すると、第２検出信号ＶＮは０Ｖになるが、第１検出信号ＶＭは０Ｖからマイナスの電圧側に変化する。
【００４３】
即ち、第１磁気センサ４０が検出する電気角と、第２磁気センサ４０が検出する電気角の差（θＭ−θＮ）は、スリットの位置に応じて異なることになる。ここで、第１スリット列および第２スリット列のスリットの数の差を１（一例として、Ｎ＝Ｍ−１）にすると、当該電気角の差は、機械角θの０から２πまでの変化に対して、０から２πまで変化することになる。したがって、検出部８０は、一の時点に検出された２つの電気角に基づき、当該一の時点の機械角θを算出することができる。
【００４４】
このように、検出部８０は、スリット数が１つ異なる２つのスリット列を有する回転盤１４と、２つのスリット列に対応する２つの磁気センサ４０とを用いて、過去のデータ等を用いずに、機械角θを検出できる。しかしながら、回転盤１４の磁気センサ４０に対向する面は、偏心および振動等によってブレが生じることがある。この場合、回転盤１４および磁気センサ４０の間の距離が変動するので、検出部８０の機械角θの検出精度が悪化してしまう。そこで、本実施形態に係る検出部８０は、スリット列を３以上にして、回転盤１４の面ブレに起因する検出精度の悪化を低減させる。
【００４５】
図７は、本実施形態に係る回転盤１４の構成例を示す。回転盤１４は、複数の検出信号のそれぞれに対応して、回転方向に沿って各検出信号に対応するセグメント数のスリットが設けられる。スリットは、貫通孔でよい。また、スリットは、回転盤１４の磁気センサ４０を向く面において、三角形、正方形、長方形、台形、多角形、円形、および楕円形等でよい。複数のスリットは、略同一の形状でよく、また、相似の形状であることが望ましい。
【００４６】
図７は、回転盤１４が３つのスリット列を有する例を示す。ここで、回転軸１２に最も近いスリット列を第３スリット列とし、回転軸１２から最も遠いスリット列を第２スリット列とし、第２スリット列および第３スリット列の間のスリット列を第１スリット列とする。
【００４７】
第１スリット列は、２（ｍ＋ｎ）個のスリット５０を有し、回転軸１２の１周を２（ｍ＋ｎ）に分割する。ただし、ｍおよびｎは自然数とする。第２スリット列は、２（ｍ＋ｎ）−１個のスリット６０を有し、回転軸１２の１周を２（ｍ＋ｎ）−１に分割する。第３スリット列は、２ｍ×（２ｎ−１）個のスリット７０を有し、回転軸１２の１周を２ｍ×（２ｎ−１）に分割する。
【００４８】
本実施形態において、ｍ＝３、ｎ＝３とした例を説明する。即ち、第１スリット列は６４個のスリット５０を有し、第２スリット列は６３個のスリット６０を有し、第３スリット列は５６個のスリット７０を有する。検出部８０は、このような３つのスリット列のそれぞれ対応する少なくとも３つの磁気センサ４０を備える。そして、３つの磁気センサ４０は、回転盤１４の回転角（機械角）に応じた検出信号をそれぞれ出力する。そして、本実施形態に係る角度検出装置は、このような３以上の検出信号に基づき、回転盤１４の機械角θを精度良く算出する。
【００４９】
図８は、本実施形態に係る角度検出装置１００の第１の構成例を磁気センサ４０と共に示す。角度検出装置１００は、図７に示す回転盤１４が設けられた検出部８０の検出結果を受け取り、回転盤１４の機械角θを算出する。角度検出装置１００は、角度検出装置１００は、取得部１１０と、生成部１２０とを備える。
【００５０】
取得部１１０は、回転軸の１周を互いに異なる数に分割したセグメント内の角度情報を示す複数の検出信号を取得する。取得部１１０は、複数の磁気センサ４０から複数の検出信号を取得する。ここで、複数の磁気センサ４０は、複数の検出信号のそれぞれに対応して設けられ、対応するスリットの相対位置に応じた磁場を検出する。
【００５１】
図８は、取得部１１０が、３つの磁気センサ４０から検出信号をそれぞれ受け取る例を示す。なお、図８において、例えば、磁気センサ４０ａは、第１スリット列に対応し、スリット５０の位置に応じた第１検出信号を出力する。また、磁気センサ４０ｂは、第２スリット列に対応し、スリット６０の位置に応じた第２検出信号を出力する。また、磁気センサ４０ｃは、第３スリット列に対応し、スリット７０の位置に応じた第３検出信号を出力する。
【００５２】
取得部１１０は、それぞれの磁気センサ４０から、対応するセグメントにおける電気角の情報を、検出信号として受け取る。このように、それぞれの磁気センサ４０は、電気角を算出してから取得部１１０に供給してよい。取得部１１０は、電気角の情報をデジタル信号で受け取ることが好ましい。また、取得部１１０は、電気角の情報がアナログ信号の場合は、ＡＤ変換器を有し、デジタル値に変換してもよい。また、磁気センサ４０に代えて、取得部１１０が、検出結果に応じて電気角を算出してもよい。
【００５３】
取得部１１０は、検出部８０に接続され、検出信号を取得してよい。また、取得部１１０は、ネットワーク等に接続され、当該ネットワークを介して検出信号を取得してもよい。取得部１１０は、取得すべき検出信号の少なくとも一部が外部のデータベース等に記憶されている場合、当該データベース等にアクセスして、取得してもよい。また、取得部１１０は、取得した検出信号の情報を、記憶部等に記憶してよい。
【００５４】
生成部１２０は、複数の検出信号に基づき、回転盤１４の機械角θに対応する出力用角度情報を算出して出力する。生成部１２０は、算出すべき出力用角度情報を予め定められた桁の範囲に分割し、分割した部分に対応する値をそれぞれ算出する。生成部１２０は、出力用角度情報を、回転盤１４のスリット列の数に応じた数に分割してよい。図７に示す回転盤１４を用いる例の場合、生成部１２０は、算出すべき出力用角度情報を、上位桁、中位桁、および下位桁の３つに分割する。
【００５５】
この場合、生成部１２０は、スリットの数のパラメータであるｍを上位桁の数に対応させ、ｎを中位桁の数に対応させてよい。生成部１２０は、一例として、出力用角度情報を１８ビットの値とし、最上位ビットから並ぶ上位３ビットを上位桁、次に並ぶ３ビットを中位桁、次に並ぶ１２ビットを下位桁として分割する。
【００５６】
生成部１２０は、複数の検出信号のうちの少なくとも２つの検出信号に基づいて、第１桁範囲に対応する角度情報を算出する。生成部１２０は、算出した第１桁範囲に対応する角度情報を第１桁範囲に含む出力用角度情報を生成する。生成部１２０は、例えば、出力用角度情報の上位桁を第１桁範囲とし、少なくとも２つの検出信号は、第１検出信号および第２検出信号として、当該検出信号に基づき上位桁の値を算出する。なお、生成部１２０は、本例に限定されることはなく、出力用角度情報の上位桁とは異なる部分を第１桁範囲としてもよい。例えば、生成部１２０は、中位桁を第１桁範囲としてよい。
【００５７】
また、生成部１２０は、複数の検出信号のうちの少なくとも１つの検出信号に基づく第２桁範囲に対応する角度情報を算出する。生成部１２０は、算出した第２桁範囲に対応する角度情報を第２桁範囲に含む出力用角度情報を生成する。生成部１２０は、例えば、出力用角度情報の中位桁を第２桁範囲とし、少なくとも１つの検出信号は、第１検出信号および第３検出信号として、当該検出信号に基づき中位桁の値を算出する。なお、生成部１２０は、本例に限定されることはなく、出力用角度情報の中位桁とは異なる部分を第２桁範囲としてもよい。例えば、生成部１２０は、下位桁を第２桁範囲としてよい。
【００５８】
また、生成部１２０は、第１検出信号に基づいて、出力用角度情報における第３桁範囲に対応する角度情報を算出する。生成部１２０は、算出した第３桁範囲に対応する角度情報を第３桁範囲に含む出力用角度情報を生成する。生成部１２０は、例えば、出力用角度情報の下位桁を第３桁範囲とし、全ての桁の値を生成した後に、当該出力用角度情報を出力する。
【００５９】
以上のように、角度検出装置１００は、回転盤１４の機械角θを上位桁、中位桁、および下位桁に分割して、分割した部分毎に角度情報を算出する。このような角度検出装置１００の動作について、次に説明する。
【００６０】
図９は、本実施形態に係る角度検出装置１００の動作フローの一例を示す。角度検出装置１００は、図９に示すＳ５１０からＳ５４０までの動作を実行することにより、磁気センサ４０の検出信号から回転盤１４の機械角θを算出して出力する。
【００６１】
まず、取得部１１０は、３つの磁気センサ４０から検出信号をそれぞれ取得する（Ｓ５１０）。取得部１１０は、複数の検出信号のそれぞれとして、回転軸１２の１周を分割したセグメント内の位相角を示す信号値を取得する。本実施例において、第１検出信号は、回転軸１２の１周を２（ｍ＋ｎ）（ただし、ｍ、ｎは自然数）に分割したセグメント内の角度を示す。即ち、取得部１１０は、２π／２（ｍ＋ｎ）の角度範囲における電気角θＭを、第１検出信号として取得する。
【００６２】
また、第２検出信号は、回転軸１２の１周を２（ｍ＋ｎ）−１に分割したセグメント内の角度を示す。即ち、取得部１１０は、２π／｛２（ｍ＋ｎ）−１｝の角度範囲における電気角θＮを、第２検出信号として取得する。また、第３検出信号は、回転軸１２の１周を２ｍ×（２ｎ−１）に分割したセグメント内の角度を示す。即ち、取得部１１０は、２π／｛２ｍ×（２ｎ−１）｝の角度範囲における電気角θＳを、第３検出信号として取得する。
【００６３】
次に、生成部１２０は、３ビットの上位桁を算出する（Ｓ５２０）。生成部１２０は、回転盤１４の機械角θ０を、第１検出信号および第２検出信号の差分から算出する。
（数１）
θ０＝θＭ−θＮ
【００６４】
なお、ここで算出される機械角θ０は、図６で説明した様に、回転盤１４の面ブレ等によって誤差が発生することがある。そこで、生成部１２０は、（数１）式の機械角θ０に誤差が生じても、最上位ビットから並ぶ３ビットについては確からしい値として、当該上位３ビットを出力用角度情報の上位桁として採用する。生成部１２０は、次式を用いて、出力用角度情報の最上位から並ぶ３ビットを算出してよい。なお、ＩＮＴ（）は、整数値を返す関数である。ここで、一例として、上位桁を「０１１」とする。
（数２）
ＩＮＴ（２ｍ・θ０／２π）
【００６５】
次に、生成部１２０は、３ビットの中位桁を算出する（Ｓ５３０）。生成部１２０は、回転盤１４のセグメント機械角θ'を、第１検出信号および第３検出信号の差分から算出する。
（数３）
θ'＝θＭ−θＳ
【００６６】
ここで算出されるセグメント機械角θ'も、回転盤１４の面ブレ等によって誤差が発生することはある。しかしながら、セグメント機械角θ'は、機械角θ０の１／２ｎの範囲の角度を示すものであるから、セグメント機械角θ'の単位ビット当たりの回転盤１４における角度は、機械角θ０の単位ビット当たりの回転盤１４における角度と比較して、略２ｎ倍大きい。したがって、機械角θ０に誤差が発生しても、当該誤差の大きさがセグメント機械角θ'の単位ビット当たりの角度未満の場合は、セグメント機械角θ'の誤差としては出力されず、ほとんど影響がないことになる。
【００６７】
そこで、生成部１２０は、機械角θ０の上位３ビットの次に並ぶ３ビットにおいては、（数３）式のセグメント機械角θ'の方がより確からしい値として、セグメント機械角θ'を出力用角度情報の中位桁として採用する。生成部１２０は、次式を用いて、出力用角度情報の最上位から４、５、および６番目並ぶ３ビットを算出してよい。このように、生成部１２０は、第１検出信号の位相角および第３検出信号の位相角に基づいて、出力用角度情報の第２桁範囲を示すｎに対応する角度情報を算出する。ここで、一例として、中位桁を「１１１」とすると、出力用角度情報の最上位から６番目までのビットは、「０１１１１１」となる。
（数４）
ＩＮＴ（２ｎ・θ'／２π）
【００６８】
次に、生成部１２０は、出力用角度情報を生成して出力する（Ｓ５４０）。電気角θＭは、１つのスリット周期に相当するセグメント内の角度を示すので、回転盤１４の回転角として検出した角度のうち最も分解能が高い角度である。そこで、生成部１２０は、出力用角度情報の下位桁を第１検出信号である電気角θＭとする。即ち、出力用角度情報における第３桁範囲に対応する角度情報は、第１検出信号のセグメント内の位相角を示す。生成部１２０は、例えば、上位桁および下位桁による６ビットの値に続けて、電気角θＭの１２ビットの値を挿入する。一例として、電気角θＭを「００１００１０１１１０１」とすると、出力用角度情報は、「０１１１１１００１００１０１１１０１」となる。
【００６９】
生成部１２０は、以上のように生成した出力用角度情報を出力する。このように、本実施形態に係る角度検出装置１００は、異なる数に分割した複数のセグメントの電気角に基づいて、機械角およびセグメント機械角を算出し、より確からしい桁を採用する。したがって、角度検出装置１００は、回転盤１４にブレが生じた場合の検出精度の悪化を防止し、誤差の発生を低減することができる。角度検出装置１００は、一例として、回転盤１４の回転方向に対して垂直方向に、３０μｍ程度までのブレが当該回転盤１４に生じても、上位桁および中位桁の誤差の発生を低減できる。
【００７０】
なお、回転盤１４に発生するブレが、３０μｍを超えて、１００μｍ程度に至ることもある。この場合、図８に示す角度検出装置１００を用いても、誤差が発生してしまう。特に、図８に示す角度検出装置１００は、出力用角度情報を複数に分割してそれぞれ算出するので、分割した境界のビットに誤差が生じてしまうことがある。
【００７１】
図１０は、本実施形態に係る角度検出装置１００の上位桁の算出結果を、機械角θ０と共に示す。図１０の横軸は、回転盤１４の実際の機械角θ（回転角）を示し、右側の縦軸は出力用角度情報の上位桁の算出結果を示し、左の縦軸は検出信号から算出された機械角θ０を示す。図１０は、回転盤１４に略１００μｍのブレが生じているとした場合のシミュレーション結果の一例である。機械角θ０は（数１）式から算出し、上位桁は（数２）式から算出した結果である。
【００７２】
回転盤１４のブレが１００μｍ程度になると、算出される機械角θ０と実際の機械角θの誤差が大きくなってしまい、上位桁の算出結果にも誤差が生じるようになる。このような誤差が生じたまま、出力用角度情報の上位桁として採用すると、最上位ビットに近いビット値に誤差が含まれることになる。このような出力用角度情報の例を次に示す。
【００７３】
図１１は、本実施形態に係る角度検出装置１００の上位桁および中位桁の算出結果の一例を示す。図１１の横軸は、回転盤１４の実際の機械角θ（回転角）を示し、縦軸は出力用角度情報の上位桁および中位桁を合わせた６ビットの算出結果を示す。図１１は、図１０で示したように、上位桁の算出結果に誤差が生じたまま出力用角度情報を出力した例を示す。この場合、出力用角度情報は、上位桁および中位桁の切り換わり近辺でビット値の飛びが発生することがあり、実際の機械角θからは乖離してしまう。
【００７４】
このようなビット値の飛びは、上位桁および中位桁の切り換わりだけでなく、中位桁および下位桁の切り換わり近辺でも生じることがある。したがって、回転盤１４のブレが１００μｍ程度になると、角度検出装置１００の検出精度が低下してしまう場合がある。そこで、本実施形態に係る角度検出装置１００は、算出した出力用角度情報を補正してこのようなビット値の飛びの発生を防止する。このような角度検出装置１００について、次に説明する。
【００７５】
図１２は、本実施形態に係る角度検出装置１００の第２の構成例を磁気センサ４０と共に示す。第２の構成例の角度検出装置１００において、図８に示された本実施形態に係る第１の構成例の角度検出装置１００の動作と略同一のものには同一の符号を付け、説明を省略する。第２の構成例の角度検出装置１００は、基準角度算出部１３０と、補正部１４０とを更に備える。
【００７６】
基準角度算出部１３０は、回転盤１４にブレが生じた場合に、誤差が発生してもビット値の飛びはほとんど発生しない角度情報を基準角度情報として算出する。基準角度算出部１３０は、例えば、複数の検出信号のうちの少なくとも２つの検出信号に基づいて、回転軸１２の機械角の角度値（θ０）の第１桁範囲および第１桁範囲の下位側に接する第２桁範囲を含む第１基準角度情報を算出する。
【００７７】
また、基準角度算出部１３０は、第１検出信号および第３検出信号に基づいて、回転軸１２の角度値の第２桁範囲および第２桁範囲の下位側に接する第３桁範囲を含む第２基準角度情報を算出してよい。基準角度算出部１３０は、補正すべき部分に応じた基準角度情報をそれぞれ算出してよい。
【００７８】
補正部１４０は、出力用角度情報および第１基準角度情報の差に基づいて、出力用角度情報における第１桁範囲の角度情報を補正する。補正部１４０は、予め定められた閾値を用いて、角度情報を補正してよい。このような第２の構成例の角度検出装置１００の補正動作について、次に説明する。
【００７９】
図１３は、本実施形態に係る第２の構成例の角度検出装置１００が実行する動作フローの一例を示す。第２の構成例の角度検出装置１００は、図１３に示すＳ６１０からＳ６７０までの動作を実行することにより、磁気センサ４０の検出信号から回転盤１４の機械角θを算出し、当該機械角を補正してから出力する。
【００８０】
まず、取得部１１０は、３つの磁気センサ４０から検出信号をそれぞれ取得する（Ｓ６１０）。そして、生成部１２０は、３ビットの上位桁および３ビットの中位桁を算出する（Ｓ６２０）。Ｓ６１０およびＳ６２０の動作は、図９で説明したＳ５１０からＳ５３０の動作と略同一なので、ここでは説明を省略する。なお、一例として、出力用角度情報の最上位から６番目までのビットを「０１１１１１」とする。
【００８１】
次に、基準角度算出部１３０は、第１検出信号および第２検出信号に基づいて、上位桁および中位桁を含む第１基準角度情報を算出する（Ｓ６３０）。基準角度算出部１３０は、（数１）式と同様に、回転盤１４の機械角θ０を第１検出信号および第２検出信号の差分から算出する。なお、ここで算出される機械角θ０は、既に説明した様に、回転盤１４の面ブレ等によって誤差が発生することがある。
【００８２】
図１４は、本実施形態に係る角度検出装置１００が算出する機械角θ０の一例を示す。図１４の横軸は、回転盤１４の実際の機械角θ（回転角）を示し、縦軸は（１）式によって算出される機械角θ０の最上位から６ビットまでの算出結果を示す。図１４から、算出された機械角θ０は、複数のビット値を連結して生成したものではないので、最下位ビット（最上位から６番目のビット）に近いビット値の誤差は含むものの、最上位から３番目および４番目のビット間にビット値の飛びは生じ得ない。
【００８３】
そこで、基準角度算出部１３０は、（数１）式の機械角θ０の最上位から少なくとも６ビットまでを第１基準角度情報として採用する。即ち、第２構成例の角度検出装置１００は、図１１の角度情報に対して、図１４の角度情報を基準として、ビット値の飛びを判定する。生成部１２０は、次式を用いて、６ビットの第１基準角度情報を算出してよい。
（数５）
ＩＮＴ（２ｍ＋ｎ・θ０／２π）
【００８４】
このように、基準角度算出部１３０は、第１検出信号の位相角および第２検出信号の位相角に基づいて、第１桁範囲を示すｍおよび第２桁範囲を示すｎを含む第１基準角度情報を算出してよい。なお、基準角度算出部１３０は、機械角θ０の値を生成部１２０から受け取ってもよい。ここで、第１基準角度情報が「０１１０００」と算出されたとする。
【００８５】
次に、補正部１４０は、出力用角度情報の上位桁を補正する（Ｓ６４０）。補正部１４０は、出力用角度情報および第１基準角度情報の差が第１閾値以上であることを条件として、出力用角度情報における第１桁範囲の角度情報をインクリメントまたはデクリメントすることにより差を減少させる。第１閾値は、第１桁範囲の最下位桁の重みの１／２に相当する値でよい。例えば、３ビットの上位桁および３ビットの中位桁からなる６ビットの出力用角度情報を補正する場合、第１閾値は２ｎ−１＝４でよい。
【００８６】
即ち、補正部１４０は、出力用角度情報および第１基準角度情報の差が４よりも大きい場合、ビット値の飛びが発生したものとして、上位桁の最下位ビットから１だけ減少させる。また、補正部１４０は、出力用角度情報および第１基準角度情報の差が４よりも小さい場合、ビット値の飛びが発生したものとして、上位桁の最下位ビットを１だけ増加させる。
【００８７】
例えば、出力用角度情報「０１１１１１」および第１基準角度情報「０１１０００」の差は、「０００１１１」となり、４よりも大きい。この場合、補正部１４０は、出力用角度情報から８だけ引いた「０１０１１１」を、補正後の出力用角度情報として出力する。このように、出力用角度情報は、上位桁の最下位桁が１となった値の１／２である第１閾値よりも大きいビット値の飛びを含むことがある。そこで、補正部１４０は、出力用角度情報および第１基準角度情報の差の絶対値が当該第１閾値よりも大きいか否かに応じて、ビット値の飛びがあるか否かを判断できる。
【００８８】
また、当該ビット値の飛びは、上位桁の最下位桁が１となった値程度なので、補正部１４０は、上位桁の最下位桁をインクリメントまたはデクリメントすることで、当該ビット値の飛びを補正することができる。以上のように、第２の構成例の角度検出装置１００は、上位桁および中位桁の間のビット値の飛びを補正することができる。
【００８９】
そして、生成部１２０は、補正した上位桁および下位桁を用いて、出力用角度情報を生成する（Ｓ６５０）。Ｓ６５０の動作は、図９で説明したＳ５４０の動作と略同一なので、ここでは説明を省略する。これにより、上位桁および下位桁の間のビット値の飛びを低減させた出力用角度情報を生成することができる。なお、このようなビット値の飛びは、上位桁および中位桁の切り換わりだけでなく、中位桁および下位桁の切り換わり近辺でも生じることがある。
【００９０】
図１５は、本実施形態に係る角度検出装置１００が出力する出力用角度情報の一例を示す。図１５の横軸は、回転盤１４の実際の機械角θ（回転角）を示し、縦軸は出力用角度情報の１８ビットの算出結果を示す。上位桁および中位桁の間のビット値の飛びと同様に、中位桁および下位桁の間にビット値の飛びが発生していることがわかる。
【００９１】
そこで、角度検出装置１００は、当該ビット値の飛びを補正するべく、第２基準角度情報を算出する（Ｓ６６０）。基準角度算出部１３０は、第１検出信号および第３検出信号に基づいて、回転軸１２の角度値の第２桁範囲および第２桁範囲の下位側に接する第３桁範囲を含む第２基準角度情報を算出する。即ち、基準角度算出部１３０は、（数３）式と同様に、回転盤１４のセグメント機械角θ'を第１検出信号および第３検出信号の差分から算出する。
【００９２】
なお、ここで算出される機械角θ'は、既に説明した様に、回転盤１４の面ブレ等によって誤差が発生することがある。しかしながら、算出されたセグメント機械角θ'は、複数のビット値を連結して生成したものではないので、最下位ビットに近いビット値の誤差は含むものの、最上位から６番目および７番目のビット間にビット値の飛びは生じ得ない。
【００９３】
そこで、基準角度算出部１３０は、（数３）式のセグメント機械角θ'から算出される中位桁および下位桁を含む１５ビットの情報を、第２基準角度情報として採用する。生成部１２０は、次式を用いて、１５ビットの第２基準角度情報を算出してよい。なお、基準角度算出部１３０は、セグメント機械角θ'の値を生成部１２０から受け取ってもよい。ここで、第２基準角度情報が「１１０１１１００１０１１１０１」と算出されたとする。
（数６）
ＩＮＴ（２ｍ・（２ｎ−１）・θ'／２π）
【００９４】
なお、基準角度算出部１３０は、上位桁の補正が終了している場合は、補正された上位桁の角度情報を更に追加した１８ビットの角度情報を、第２基準角度情報としてもよい。例えば、基準角度算出部１３０は、「０１０１１０１１１００１０１１１０１」を第２基準角度情報としてよい。
【００９５】
次に、補正部１４０は、出力用角度情報の中位桁を補正する（Ｓ６７０）。補正部１４０は、出力用角度情報における第２桁範囲および第３桁範囲の部分と、第２基準角度情報との差に基づいて、出力用角度情報における第２桁範囲の角度情報を補正する。補正部１４０は、出力用角度情報における第２桁範囲および第３桁範囲の部分と、第２基準角度情報との差が第２閾値以上であることを条件として、前記出力用角度情報における第２桁範囲の角度情報をインクリメントまたはデクリメントして差を減少させる。
【００９６】
ここで、第２閾値は、第２桁範囲の最下位桁の重みの１／２に相当する値でよい。例えば、３ビットの中位桁および１２ビットの下位桁からなる１５ビットの出力用角度情報を補正する場合、第２閾値は２１２−１でよい。即ち、補正部１４０は、上位桁の場合と同様に、出力用角度情報および第２基準角度情報の差が第２閾値よりも大きい場合、ビット値の飛びが発生したものとして、中位桁の最下位ビットから１だけ減少させる。また、補正部１４０は、出力用角度情報および第１基準角度情報の差が第２閾値よりも小さい場合、ビット値の飛びが発生したものとして、中位桁の最下位ビットを１だけ増加させる。
【００９７】
例えば、出力用角度情報「１１１００１００１０１１１０１」および第２基準角度情報「１１０１１１００１０１１１０１」の差は、「０００１１００００００００００」となり、２１１よりも大きい。この場合、補正部１４０は、中位桁の最下位ビットから１だけ引いた「１１０００１００１０１１１０１」を、補正後の出力用角度情報とする。補正部１４０は、補正後の上位桁と合わせた「０１０１１０００１００１０１１１０１」を、出力用角度情報として出力してよい。
【００９８】
図１６は、本実施形態に係る第２の構成例の角度検出装置１００が補正した出力用角度情報の一例を示す。図１６の横軸は、回転盤１４の実際の機械角θ（回転角）を示し、縦軸は出力用角度情報の補正結果を示す。図１６は、図１１および図１５に示したビット値の飛びに対して、補正部１４０の補正を実行した場合のシミュレーション結果の一例を示す。図１６より、いずれのビット値の飛びも低減できていることがわかる。
【００９９】
以上の本実施形態に係る角度検出装置１００は、ビット値の飛びを低減しつつ、異なる数に分割した複数のセグメントの電気角に基づいて、より確からしい出力用角度情報を算出する。したがって、角度検出装置１００は、回転盤１４の回転方向とは垂直方向に１００μｍ程度のブレが生じても、検出精度の悪化を低減させることができる。
【０１００】
以上の本実施形態に係る角度検出装置１００は、図１に示す検出部８０等から複数の検出信号を取得する例を説明したが、これに限定されることはない。例えば、角度検出装置１００は、検出部８０を更に備える構成であってもよい。また、本実施形態に係る角度検出装置１００は、図７に示すように、スリット周期の異なる複数のスリットを回転盤１４に形成する例を説明した。ここで、回転盤１４は、よりスリット周期の短い（スリットの数の多い）スリット列をより外周に配置してもよい。
【０１０１】
例えば、最もスリットの数が多い第１スリット列を回転軸１２から最も離間させ、第２スリット列を第１スリット列よりも回転軸１２に近い内側に配置させ、そして第３リット列を第２リット列の更に内側に配置させる。この場合、各スリット列と、回転軸１２との間の距離は、各スリット列に含まれるスリットの数に応じた距離にしてよい。これにより、回転盤１４は、回転軸１２の中心から放射状に複数のスリットを配置することができる。即ち、各スリット列のスリットは、回転軸１２に向かう方向において、隣接するスリットと略同一の座標にすることができる。この場合、各スリット列に対応する３つの磁気センサ４０は、回転軸１２に向かう方向において、直線状上に配置することができる。
【０１０２】
また、本実施形態に係る角度検出装置１００は、回転盤１４が複数のスリットを有する例を説明したが、スリットに限定されることはない。回転盤１４の回転角に応じて、磁場発生部３０からの磁場を変動させ、当該変動が磁気センサ４０によって検出できる程度であれば、スリットでなくてもよい。例えば、回転盤１４は、穴部、凹部、および／または凸部等が形成されてもよい。
【０１０３】
これに代えて、回転盤１４は、平歯車、はすば歯車、やまば歯車、かさ歯車、内歯車、冠歯車、ねじ歯車、ウォームギヤ、スプロケット、および、ラックまたはピニオン等の歯車でよい。この場合、回転盤１４は、複数のスリット列に相当するように、直径の異なる複数の歯車が組み合わされてよい。また、磁気センサ４０は、歯車の歯面に対向するように配置されてよい。
【０１０４】
図１７は、本発明の複数の態様が全体的又は部分的に具現化されうるコンピュータ１２００の例を示す。コンピュータ１２００にインストールされたプログラムは、コンピュータ１２００に、本発明の実施形態に係る装置に関連付けられるオペレーション又は当該装置の１又は複数の「部」として機能させ、又は当該オペレーション又は当該１又は複数の「部」を実行させることができ、及び／又はコンピュータ１２００に、本発明の実施形態に係るプロセス又は当該プロセスの段階を実行させることができる。このようなプログラムは、コンピュータ１２００に、本明細書に記載のフローチャート及びブロック図のブロックのうちのいくつか又はすべてに関連付けられた特定のオペレーションを実行させるべく、ＣＰＵ１２１２によって実行されてよい。当該機能は、ＦＰＧＡで実装してもよい。
【０１０５】
本実施形態によるコンピュータ１２００は、ＣＰＵ１２１２、ＲＡＭ１２１４、グラフィックコントローラ１２１６、及びディスプレイデバイス１２１８を含み、これらはホストコントローラ１２１０によって相互に接続される。コンピュータ１２００はまた、通信インターフェース１２２２、ハードディスクドライブ１２２４、ＤＶＤ−ＲＯＭドライブ１２２６、及びＩＣカードドライブのような入出力ユニットを含み、これらは入出力コントローラ１２２０を介してホストコントローラ１２１０に接続される。コンピュータはまた、ＲＯＭ１２３０及びキーボード１２４２のようなレガシの入出力ユニットを含み、これらは入出力チップ１２４０を介して入出力コントローラ１２２０に接続される。
【０１０６】
ＣＰＵ１２１２は、ＲＯＭ１２３０及びＲＡＭ１２１４内に格納されたプログラムに従い動作し、これにより各ユニットを制御する。グラフィックコントローラ１２１６は、ＲＡＭ１２１４内に提供されるフレームバッファ等又は当該グラフィックコントローラ１２１６自体の中に、ＣＰＵ１２１２によって生成されるイメージデータを取得し、イメージデータがディスプレイデバイス１２１８上に表示させる。
【０１０７】
通信インターフェース１２２２は、ネットワークを介して他の電子デバイスと通信する。ハードディスクドライブ１２２４は、コンピュータ１２００内のＣＰＵ１２１２によって使用されるプログラム及びデータを格納する。ＤＶＤ−ＲＯＭドライブ１２２６は、プログラム又はデータをＤＶＤ−ＲＯＭ１２０１から読み取り、ハードディスクドライブ１２２４にＲＡＭ１２１４を介してプログラム又はデータを提供する。ＩＣカードドライブは、プログラム及びデータをＩＣカードから読み取り、及び／又はプログラム及びデータをＩＣカードに書き込む。
【０１０８】
ＲＯＭ１２３０は、内部に、アクティブ化時にコンピュータ１２００によって実行されるブートプログラム等、及び／又はコンピュータ１２００のハードウェアに依存するプログラムを格納する。入出力チップ１２４０はまた、様々な入出力ユニットをパラレルポート、シリアルポート、キーボードポート、マウスポート等を介して、入出力コントローラ１２２０に接続してよい。
【０１０９】
プログラムが、ＤＶＤ−ＲＯＭ１２０１又はＩＣカードのようなコンピュータ可読記憶媒体によって提供される。プログラムは、コンピュータ可読記憶媒体から読み取られ、コンピュータ可読記憶媒体の例でもあるハードディスクドライブ１２２４、ＲＡＭ１２１４、又はＲＯＭ１２３０にインストールされ、ＣＰＵ１２１２によって実行される。これらのプログラム内に記述される情報処理は、コンピュータ１２００に読み取られ、プログラムと、上記様々なタイプのハードウェアリソースとの間の連携をもたらす。装置又は方法が、コンピュータ１２００の使用に従い情報のオペレーション又は処理を実現することによって構成されてよい。
【０１１０】
例えば、通信がコンピュータ１２００及び外部デバイス間で実行される場合、ＣＰＵ１２１２は、ＲＡＭ１２１４にロードされた通信プログラムを実行し、通信プログラムに記述された処理に基づいて、通信インターフェース１２２２に対し、通信処理を命令してよい。通信インターフェース１２２２は、ＣＰＵ１２１２の制御の下、ＲＡＭ１２１４、ハードディスクドライブ１２２４、ＤＶＤ−ＲＯＭ１２０１、又はＩＣカードのような記録媒体内に提供される送信バッファ領域に格納された送信データを読み取り、読み取られた送信データをネットワークに送信し、又はネットワークから受信した受信データを記録媒体上に提供される受信バッファ領域等に書き込む。
【０１１１】
また、ＣＰＵ１２１２は、ハードディスクドライブ１２２４、ＤＶＤ−ＲＯＭドライブ１２２６（ＤＶＤ−ＲＯＭ１２０１）、ＩＣカード等のような外部記録媒体に格納されたファイル又はデータベースの全部又は必要な部分がＲＡＭ１２１４に読み取られるようにし、ＲＡＭ１２１４上のデータに対し様々なタイプの処理を実行してよい。ＣＰＵ１２１２は次に、処理されたデータを外部記録媒体にライトバックしてよい。
【０１１２】
様々なタイプのプログラム、データ、テーブル、及びデータベースのような、様々なタイプの情報が、情報処理されるべく、記録媒体に格納されてよい。ＣＰＵ１２１２は、ＲＡＭ１２１４から読み取られたデータに対し、本開示の随所に記載され、プログラムの命令シーケンスによって指定される様々なタイプのオペレーション、情報処理、条件判断、条件分岐、無条件分岐、情報の検索／置換等を含む、様々なタイプの処理を実行してよく、結果をＲＡＭ１２１４に対しライトバックする。また、ＣＰＵ１２１２は、記録媒体内のファイル、データベース等における情報を検索してよい。例えば、各々が第２の属性の属性値に関連付けられた第１の属性の属性値を有する複数のエントリが記録媒体内に格納される場合、ＣＰＵ１２１２は、当該複数のエントリの中から、第１の属性の属性値が指定されている条件に一致するエントリを検索し、当該エントリ内に格納された第２の属性の属性値を読み取り、これにより予め定められた条件を満たす第１の属性に関連付けられた第２の属性の属性値を取得してよい。
【０１１３】
以上の説明によるプログラム又はソフトウェアモジュールは、コンピュータ１２００上又はコンピュータ１２００近傍のコンピュータ可読記憶媒体に格納されてよい。また、専用通信ネットワーク又はインターネットに接続されたサーバシステム内に提供されるハードディスク又はＲＡＭのような記録媒体が、コンピュータ可読記憶媒体として使用可能であり、これにより、プログラムをコンピュータ１２００にネットワークを介して提供する。
【０１１４】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【０１１５】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【０１１６】
１０  回転体、１２  回転軸、１４  回転盤、２０  基板、３０  磁場発生部、４０  磁気センサ、４２  電源、５０  スリット、５２  第１スリット、５４  第２スリット、６０  スリット、７０  スリット、８０  検出部、１００  角度検出装置、１１０  取得部、１２０  生成部、１３０  基準角度算出部、１４０  補正部、２１０  第１感磁部、２１２  第１磁気抵抗素子、２１４  第３磁気抵抗素子、２５０  第１端子、３１０  第２感磁部、３１２  第２磁気抵抗素子、３１４  第４磁気抵抗素子、３５０  第２端子、１２００  コンピュータ、１２０１  ＤＶＤ−ＲＯＭ、１２１０  ホストコントローラ、１２１２  ＣＰＵ、１２１４  ＲＡＭ、１２１６  グラフィックコントローラ、１２１８  ディスプレイデバイス、１２２０  入出力コントローラ、１２２２  通信インターフェース、１２２４  ハードディスクドライブ、１２２６  ＤＶＤ−ＲＯＭドライブ、１２３０  ＲＯＭ、１２４０  入出力チップ、１２４２  キーボード
【図１】
2019074397.tif 000003
【図２】
2019074397.tif 000004
【図３】
2019074397.tif 000005
【図４】
2019074397.tif 000006
【図５】
2019074397.tif 000007
【図６】
2019074397.tif 000008
【図７】
2019074397.tif 000009
【図８】
2019074397.tif 000010
【図９】
2019074397.tif 000011
【図１０】
2019074397.tif 000012
【図１１】
2019074397.tif 000013
【図１２】
2019074397.tif 000014
【図１３】
2019074397.tif 000015
【図１４】
2019074397.tif 000016
【図１５】
2019074397.tif 000017
【図１６】
2019074397.tif 000018
【図１７】
2019074397.tif 000019