特許第5896166号(P5896166)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 村田機械株式会社の特許一覧

特許5896166磁気式の位置センサと移動体及び移動体システム
<>
  • 特許5896166-磁気式の位置センサと移動体及び移動体システム 図000002
  • 特許5896166-磁気式の位置センサと移動体及び移動体システム 図000003
  • 特許5896166-磁気式の位置センサと移動体及び移動体システム 図000004
  • 特許5896166-磁気式の位置センサと移動体及び移動体システム 図000005
  • 特許5896166-磁気式の位置センサと移動体及び移動体システム 図000006
  • 特許5896166-磁気式の位置センサと移動体及び移動体システム 図000007
  • 特許5896166-磁気式の位置センサと移動体及び移動体システム 図000008
  • 特許5896166-磁気式の位置センサと移動体及び移動体システム 図000009
  • 特許5896166-磁気式の位置センサと移動体及び移動体システム 図000010
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5896166
(24)【登録日】2016年3月11日
(45)【発行日】2016年3月30日
(54)【発明の名称】磁気式の位置センサと移動体及び移動体システム
(51)【国際特許分類】
   G01D 5/14 20060101AFI20160317BHJP
【FI】
   G01D5/14 H
【請求項の数】7
【全頁数】15
(21)【出願番号】特願2013-53993(P2013-53993)
(22)【出願日】2013年3月15日
(65)【公開番号】特開2014-178283(P2014-178283A)
(43)【公開日】2014年9月25日
【審査請求日】2014年6月24日
(73)【特許権者】
【識別番号】000006297
【氏名又は名称】村田機械株式会社
(74)【代理人】
【識別番号】100086830
【弁理士】
【氏名又は名称】塩入 明
(74)【代理人】
【識別番号】100096046
【弁理士】
【氏名又は名称】塩入 みか
(72)【発明者】
【氏名】清水 哲也
(72)【発明者】
【氏名】花香 敏
(72)【発明者】
【氏名】太田 龍男
(72)【発明者】
【氏名】寺田 将吾
【審査官】 眞岩 久恵
(56)【参考文献】
【文献】 特開2002−022403(JP,A)
【文献】 特開2000−231443(JP,A)
【文献】 特開平11−143623(JP,A)
【文献】 特開平07−281813(JP,A)
【文献】 特開2012−198048(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G01D 5/00−5/252
G01D 5/39−5/62
(57)【特許請求の範囲】
【請求項1】
複数個の磁気検出素子を直線上に配列したアレイにより、一対の磁極からの磁束密度がアレイの長手方向に垂直な平面内で0となる0クロッシングポイントを検出するようにした磁気式の位置センサにおいて、
前記磁気検出素子は磁束密度の方向が反転すると、出力の極性が変化する素子であり、
前記アレイでは、磁気検出素子のピッチをa、kを2以上の整数として、k×aが1個の磁極の長さ以下となるように、磁気検出素子が配列され、
かつ、前記直線の左右一方向に沿って、前記アレイから磁気検出素子の出力をk個毎に読み出し、読み出した出力から、前記一対の磁極の内で前記一方向に沿って下流側の磁極を検出している最初の磁気検出素子を検出すると、前記最初の磁気検出素子と、前記最初の磁気検出素子から前記一方向に沿ってk個上流側の磁気検出素子との間に0クロッシングポイントの概略位置があるものとして、0クロッシングポイントの概略位置を検出する0クロッシングポイント概略検出部と、
前記最初の磁気検出素子と前記k個上流側の磁気検出素子との間のk−1個の磁気検出素子の出力を読み出し、読み出した出力と、前記最初の磁気検出素子の出力、及び前記k個上流側の磁気検出素子の出力とから、0クロッシングポイントの位置を検出する位置検出部、とを備えていることを特徴とする磁気式の位置センサ。
【請求項2】
検出対象の磁極が存在しない環境での前記アレイの各磁気検出素子からの出力を補正データとして記憶する不揮発性のメモリと、
各磁気検出素子の出力と前記不揮発性メモリ中の補正データとの差分を求めるための補正部、とをさらに備えることを特徴とする、請求項1の磁気式の位置センサ。
【請求項3】
複数個の磁気検出素子を直線上に配列したアレイにより、一対の磁極からの磁束密度がアレイの長手方向に垂直な平面内で0となる0クロッシングポイントを検出するようにした磁気式の位置センサと、リニアモータとを備えて、前記磁気式の位置センサにより前記リニアモータを制御する移動体において、
前記磁気式の位置センサでは、
前記磁気検出素子は、磁束密度の方向が反転すると、出力の極性が変化する素子であり、 前記アレイでは、磁気検出素子のピッチをa、kを2以上の整数として、k×aが1個の磁極の長さ以下となるように、磁気検出素子が配列され、
かつ、前記直線の左右一方向に沿って、前記アレイから磁気検出素子の出力をk個毎に読み出し、読み出した出力から、前記一対の磁極の内で前記一方向に沿って下流側の磁極を検出している最初の磁気検出素子を検出すると、前記最初の磁気検出素子と、前記最初の磁気検出素子から前記一方向に沿ってk個上流側の磁気検出素子との間に0クロッシングポイントの概略位置があるものとして、0クロッシングポイントの概略位置を検出する0クロッシングポイント概略検出部と、
前記最初の磁気検出素子と前記k個上流側の磁気検出素子との間のk−1個の磁気検出素子の出力を読み出し、読み出した出力と、前記最初の磁気検出素子の出力、及び前記k個上流側の磁気検出素子の出力とから、0クロッシングポイントの位置を検出する位置検出部、とを備えていることを特徴とする、移動体。
【請求項4】
前記位置検出部は、0クロッシングポイントの両側の隣接した2個の磁気検出素子の出力から、0クロッシングポイントの位置を検出するように構成されていることを特徴とする、請求項3の移動体。
【請求項5】
前記位置検出部は、磁気検出素子のピッチaを、前記2個の磁気検出素子の出力の比により内分した値を、前記2個の磁気検出素子のいずれかの位置に加算もしくは減算することにより、0クロッシングポイントの位置Pを求めるように構成されていることを特徴とする、請求項4の移動体。
【請求項6】
前記磁気式の位置センサは、0クロッシングポイントの両側の隣接した2個の磁気検出素子のアドレスを記憶するレジスタをさらに備え、次に位置を検出する際に、記憶した2個のアドレスの間に0クロッシングポイントが有れば、前記隣接した2個の磁気検出素子の出力により0クロッシングポイントを求め、無ければ前記0クロッシングポイント概略検出部により0クロッシングポイントの概略位置を検出すると共に、前記位置検出部により0クロッシングポイントの位置を検出するように構成されていることを特徴とする、請求項5の移動体。
【請求項7】
複数個の磁気検出素子を直線上に配列したアレイにより、一対の磁極からの磁束密度がアレイの長手方向に垂直な平面内で0となる0クロッシングポイントを検出するようにした磁気式の位置センサと、リニアモータとを備えて、前記磁気式の位置センサにより前記リニアモータを制御する移動体システムにおいて、
前記磁気式の位置センサでは、
前記磁気検出素子は、磁束密度の方向が反転すると、出力の極性が変化する素子であり、 リニアモータ用の磁石列中の一対の磁極からの磁束密度に対する0クロッシングポイントを検出するために、前記アレイでは、磁気検出素子のピッチをa、kを2以上の整数として、k×aが1個の磁極の長さ以下となるように、磁気検出素子が配列され、
かつ、前記直線の左右一方向に沿って、前記アレイから磁気検出素子の出力をk個毎に読み出し、読み出した出力から、前記一対の磁極の内で前記一方向に沿って下流側の磁極を検出している最初の磁気検出素子を検出すると、前記最初の磁気検出素子と、前記最初の磁気検出素子から前記一方向に沿ってk個上流側の磁気検出素子との間に0クロッシングポイントの概略位置があるものとして、0クロッシングポイントの概略位置を検出する0クロッシングポイント概略検出部と、
前記最初の磁気検出素子と前記k個上流側の磁気検出素子との間のk−1個の磁気検出素子の出力を読み出し、読み出した出力と、前記最初の磁気検出素子の出力、及び前記k個上流側の磁気検出素子の出力とから、0クロッシングポイントの位置を検出する位置検出部、とを備えていることを特徴とする、移動体システム。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は磁気式の位置センサに関し、特に短周期でかつ正確に位置を検出できる磁気式の位置センサに関する。
【背景技術】
【0002】
出願人は、コイルアレイにより磁石等の磁気マークを検出する、磁気式の位置センサを開発した(例えば特許文献1 特開2008-209393)。この位置センサでは、磁極の表面に平行にコイルアレイを配置すると、コイルアレイの長手方向に沿ってsin波状に磁束密度が変化することを前提としている。しかしながら実際には、コイルアレイと磁極表面との間隔にはバラツキがある。そして標準的な間隔から外れると、磁束密度の強度はsin波から外れて三角波あるいは台形波に近くなり、検出誤差の原因となる。
【0003】
上記の位置センサの他の問題として、高速で、即ち短い繰り返し周期で、位置を検出することが難しい点がある。上記の位置センサでは、コイルアレイに交流を加え、コイルに加わる電圧、電流等の位相が0となる点で位置を検出する。コイル電流の周波数を大きくするのは難しいので、交流の周波数により、時間当たりの検出回数が制限される。
【0004】
コイルの代わりにホール素子等の磁気検出素子を用いる位置センサとして、特許文献2(特開2007-178158)のものが知られている。この位置センサでは、磁気検出素子のアレイにより磁石対からの磁束密度を検出し、磁束密度が0となる点、即ち一対の磁石の中間点を検出する。この点を0クロッシングポイントと呼ぶと、0クロッシングポイントの両側で磁気検出素子の出力は符号が反転し、かつ磁束密度はほぼ直線状に変化する。そこで0クロッシングポイント付近の磁気検出素子の出力分布を近似する直線を最小2乗法により求め、直線の値が0となる点を0クロッシングポイントとする。0クロッシングポイントを正確に求め、かつある程度の測定レンジを持つためには、多数の磁気検出素子をアレイに並べる必要がある。しかし多数の磁気検出素子の出力を走査して、0クロッシングポイントの位置を求めるには、処理時間を要する。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2008-209393
【特許文献2】特開2007-178158
【発明の概要】
【発明が解決しようとする課題】
【0006】
この発明の課題は、0クロッシングポイントの位置をより短時間で求めることができるようにし、時間当たりの位置の検出回数を増すことにある。
【課題を解決するための手段】
【0007】
この発明は、複数個の磁気検出素子を直線上に配列したアレイにより、一対の磁極からの磁束密度がアレイの長手方向に垂直な平面内で0となる0クロッシングポイントを検出するようにした磁気式の位置センサにおいて、
前記磁気検出素子は磁束密度の方向が反転すると、出力の極性が変化する素子であり、
前記アレイでは、磁気検出素子のピッチをa、kを2以上の整数として、k×aが1個の磁極の長さ以下となるように、磁気検出素子が配列され、
かつ、前記直線の左右一方向に沿って、前記アレイから磁気検出素子の出力をk個毎に読み出し、読み出した出力から、前記一対の磁極の内で前記一方向に沿って下流側の磁極を検出している最初の磁気検出素子を検出すると、前記最初の磁気検出素子と、前記最初の磁気検出素子から前記一方向に沿ってk個上流側の磁気検出素子との間に0クロッシングポイントの概略位置があるものとして、0クロッシングポイントの概略位置を検出する0クロッシングポイント概略検出部と、
前記最初の磁気検出素子と前記k個上流側の磁気検出素子との間のk−1個の磁気検出素子の出力を読み出し、読み出した出力と、前記最初の磁気検出素子の出力、及び前記k個上流側の磁気検出素子の出力とから、0クロッシングポイントの位置を検出する位置検出部、とを備えていることを特徴とする。
【0008】
このようにすると、アレイの全ての磁気検出素子の出力を走査するのではなく、k個毎に出力を走査すればよいので、走査する素子の数を減らし、より高速で0クロッシングポイントの概略位置を求めることができる。なお毎回k個毎に走査する必要はなく、前回のデータから0クロッシングポイントの概略位置を推定できる場合、推定位置を用いればよい。
【0009】
好ましくは磁気式の位置センサは、検出対象の磁極が存在しない環境での前記アレイの各磁気検出素子からの出力を補正データとして記憶する不揮発性のメモリと、各磁気検出素子の出力と前記不揮発性メモリ中の補正データとの差分を求めるための補正部、とをさらに備える。
【0010】
磁気検出素子には、外部からの磁界がなくても出力が0にならないものがある。そこでこのような出力のオフセット誤差を求めて、補正データを不揮発性メモリに記憶すると、オフセット誤差の影響を小さくできる。例えば図8はオフセット誤差の補正前の検出誤差、図7はオフセット誤差の補正後の検出誤差である。
【0011】
この発明では、前記0クロッシングポイント概略検出部は、前記直線の左右一方向に沿ってk個毎に磁気検出素子の出力を読み出し、前記一対の磁極の内で下流側の磁極を検出することにより、0クロッシングポイントの概略位置を検出するように構成されている。
【0012】
一対の磁極の内でどちらが上流でどちらが下流にあるかが位置センサにとって既知とすると、例えば上流側から下流側へk個毎に磁気検出素子の出力の極性を読み出し、下流側の磁極を検出する。するとその位置からk個上流側の磁気検出素子までの間に、0クロッシングポイントが有り、高速で0クロッシングポイントの概略位置を求めることができる。
【0013】
またこの発明は、複数個の磁気検出素子を直線上に配列したアレイにより、一対の磁極からの磁束密度がアレイの長手方向に垂直な平面内で0となる0クロッシングポイントを検出するようにした磁気式の位置センサと、リニアモータとを備えて、前記磁気式の位置センサにより前記リニアモータを制御する移動体において、
前記磁気式の位置センサでは、
前記磁気検出素子は、磁束密度の方向が反転すると、出力の極性が変化する素子であり、 前記アレイでは、磁気検出素子のピッチをa、kを2以上の整数として、k×aが1個の磁極の長さ以下となるように、磁気検出素子が配列され、
かつ、前記直線の左右一方向に沿って、前記アレイから磁気検出素子の出力をk個毎に読み出し、読み出した出力から、前記一対の磁極の内で前記一方向に沿って下流側の磁極を検出している最初の磁気検出素子を検出すると、前記最初の磁気検出素子と、前記最初の磁気検出素子から前記一方向に沿ってk個上流側の磁気検出素子との間に0クロッシングポイントの概略位置があるものとして、0クロッシングポイントの概略位置を検出する0クロッシングポイント概略検出部と、
前記最初の磁気検出素子と前記k個上流側の磁気検出素子との間のk−1個の磁気検出素子の出力を読み出し、読み出した出力と、前記最初の磁気検出素子の出力、及び前記k個上流側の磁気検出素子の出力とから、0クロッシングポイントの位置を検出する位置検出部、とを備えている。
【0014】
この発明では、磁気式の位置センサにより高速でかつ正確に位置を検出し、リニアモータを制御できる。
【0015】
この発明はまた、複数個の磁気検出素子を直線上に配列したアレイにより、一対の磁極からの磁束密度がアレイの長手方向に垂直な平面内で0となる0クロッシングポイントを検出するようにした磁気式の位置センサと、リニアモータとを備えて、前記磁気式の位置センサにより前記リニアモータを制御する移動体システムにおいて、
前記磁気式の位置センサでは、
前記磁気検出素子は、磁束密度の方向が反転すると、出力の極性が変化する素子であり、 リニアモータ用の磁石列中の一対の磁極からの磁束密度に対する0クロッシングポイントを検出するために、前記アレイでは、磁気検出素子のピッチをa、kを2以上の整数として、k×aが1個の磁極の長さ以下となるように、磁気検出素子が配列され、
かつ、前記直線の左右一方向に沿って、前記アレイから磁気検出素子の出力をk個毎に読み出し、読み出した出力から、前記一対の磁極の内で前記一方向に沿って下流側の磁極を検出している最初の磁気検出素子を検出すると、前記最初の磁気検出素子と、前記最初の磁気検出素子から前記一方向に沿ってk個上流側の磁気検出素子との間に0クロッシングポイントの概略位置があるものとして、0クロッシングポイントの概略位置を検出する0クロッシングポイント概略検出部と、
前記最初の磁気検出素子と前記k個上流側の磁気検出素子との間のk−1個の磁気検出素子の出力を読み出し、読み出した出力と、前記最初の磁気検出素子の出力、及び前記k個上流側の磁気検出素子の出力とから、0クロッシングポイントの位置を検出する位置検出部、とを備えている。
【0016】
このようにすると、リニアモータ用の磁石列を被検出用の磁極に兼用できる。
【0017】
好ましくは、前記位置検出部は、0クロッシングポイントの両側の隣接した2個の磁気検出素子の出力から、0クロッシングポイントの位置を検出するように構成されている。このようにすると、計算量が少ないので短時間で0クロッシングポイントを検出でき、しかも0クロッシングポイントを正確に検出できる。
【0018】
好ましくは、前記位置検出部は、磁気検出素子のピッチaを、前記2個の磁気検出素子の出力の比により内分した値を、前記2個の磁気検出素子のいずれかの位置に加算もしくは減算することにより、0クロッシングポイントの位置Pを求めるように構成されている。ピッチaを内分し、2個の磁気検出素子のいずれかの位置に加算あるいは減算するので、計算量が少ない。
【0019】
好ましくは、前記磁気式の位置センサは、0クロッシングポイントの両側の隣接した2個の磁気検出素子のアドレスを記憶するレジスタをさらに備え、次に位置を検出する際に、記憶した2個のアドレスの間に0クロッシングポイントが有れば、前記隣接した2個の磁気検出素子の出力により0クロッシングポイントを求め、無ければ前記0クロッシングポイント概略検出部により0クロッシングポイントの概略位置を検出すると共に、前記位置検出部により0クロッシングポイントの位置を検出するように構成されている。前回の検出からの移動体の移動距離が小さく、0クロッシングポイントの両側の磁気検出素子が同じ場合、概略位置の検出を省略できる。
【図面の簡単な説明】
【0020】
図1】実施例でのホール素子アレイの配置を模式的に示す図
図2】実施例での信号処理回路のブロック図
図3図2の処理部の構成を示すブロック図
図4】実施例での位置検出アルゴリズムを示すフローチャート
図5】実施例での位置の算出原理を示す図
図6】磁極表面からの距離と磁束密度とを示す図
図7】ホール素子のオフセット補正後の位置センサの誤差を示す図
図8】ホール素子のオフセット補正前の位置センサの誤差を示す図
図9】変形例での位置検出アルゴリズムを示すフローチャート
【発明を実施するための形態】
【0021】
以下に本発明を実施するための最適実施例を示す。この発明の範囲は、特許請求の範囲の記載に基づき、明細書の記載とこの分野での周知技術とを参酌し、当業者の理解に従って定められるべきである。
【実施例】
【0022】
図1図8に、実施例での磁気式の位置センサ2とその特性を示す。各図において、4はホール素子アレイで、5,6は個々のホール素子である。この発明ではk個毎にホール素子の出力を走査し、0クロッシングポイントの概略位置を検出する。kの値は例えば2,4,6,8,12等で、実施例ではk=4として説明する。そして走査時に出力を読み出すホール素子(k個毎に配置)を6で表し、他のホール素子を5で表す。ホール素子アレイ4の全長は例えば50mm〜500mm程度で、合計で例えば数十個〜数百個のホール素子5,6を1直線上に配列する。各ホール素子には直流電源8から電流を加え、ホール起電力を出力として取り出す。
【0023】
10は磁石対で、一対の磁極11,12が、表面がホール素子アレイと平行に向き合うように間隔を置いて配置されている。磁極は、図1の左側(+X側)にN極11、右側(−X側)にS極12が配置され、周囲を鋼板等のヨーク14で囲って、磁石対10の取り付けに用いると共に、外部磁界を遮断する。磁極11,12は極性が逆で、磁力が等しく、磁極11,12の中間を通って、ホール素子アレイ4の長手方向に垂直な面内では、X軸に垂直な磁束密度は0となる。そしてこの面とホール素子アレイ4との交点が0クロッシングポイントである。この明細書では、ホール素子アレイ4に平行な方向をX軸とし、図1の左側を+X、右側を−Xとする。0クロッシングポイントの周囲での位置を表すため、磁極11の+X側の端部を+180°、磁極12の−X側の端部を-180°とする位相を用いる。またホール素子アレイ4内でのホール素子5,6の番号をホール素子のアドレスとし、ホール素子アレイ4内での位置を表すために用いる。アドレスは+X側が先頭で小さく、−X側が末尾で大きいものとする。
【0024】
実施例では、ホール素子アレイ4等の磁気式位置センサ2が移動体に搭載され、磁石対10等の被検出用の磁気マークが地上側に固定されているものとする。そして1対の磁極11,12の代わりに、多数個の磁極を、1個毎に極性が反転するように、配列しても良い。また常時位置を検出できるように、ホール素子アレイ4の検出レンジよりも短い間隔で磁石対10を繰り返し配置しても良い。この場合に、磁石対10の間隔が一定である必要はない。また特定のレンジが重要な場合、例えば工作機械で工具等を精密送りするレンジ、あるいは何らかの位置決めを行うレンジ等を検出する場合、磁石対10をそのレンジにのみ配置しても良い。また実施例とは逆に、磁気式位置センサ2を地上側に固定し、磁気マークを移動体に搭載しても良い。さらに磁石対10の代わりに、リニアモータ用の磁石の列等を磁気マークとして検出しても良い。この明細書では、ホール素子アレイ4とその駆動回路とを磁気式の位置センサ2とし、磁石対10等は位置センサ2の外部にあるものとする。
【0025】
図2に磁気式の位置センサ2の駆動回路を示す。マルチプレクサ18はアンプ20へ接続するホール素子5,6を切り換え、アンプ20はホール起電力を増幅すると共に積分フィルタ等により起電力中の高周波成分を除去する。ADコンバータ22は例えば1MHz以上の高速ADコンバータで、8-16ビット程度の分解能で、その出力を処理部16が記憶する。また処理部16は、ADコンバータの出力からホール素子5,6毎に固有の補正値を引き算し、引き算後の出力から0クロッシングポイントを検出する。この補正値は、磁石対10からの磁界がない状態でのホール素子の出力で、不揮発性のメモリから成る補正テーブル24に記憶する。
【0026】
処理部16の詳細を図3に示す。クロック発生部25はホール起電力の読み出しからメモリ34への記憶までのタイミング信号を発生し、この信号に従ってマルチプレクサ18を切り換え、アドレス制御部26,30がデータの読み出しと書き込みのアドレスを発生する。アドレス制御部26はADコンバータ22の信号をメモリ28へ書き込む際のアドレスを発生し、アドレス制御部30は補正テーブル24からの読み出しアドレスと、メモリ34への書き込みアドレスとを発生する。差分部32はADコンバータ22の出力から、同じホール素子に対する補正テーブル24のデータ(補正用起電力)を引き算する。以上の処理により、ホール素子5,6毎のオフセット(外部磁界がない環境でのホール起電力)を補正した起電力を、ホール素子5,6の起電力が例えば100KHz以上の周期で更新されるように、メモリ34へ書き込む。
【0027】
コア部36はCPU38とレジスタ39、あるいは他のキャッシュメモリと、プログラムメモリ40とを備え、プログラムの内容は図4に示す。プログラム駆動のCPU38の代わりに、デジタルシグナルプロセッサ、ゲートアレイ等の他の演算素子を用いても良い。コア部36を機能ブロックとして図3の下側に示すと、0クロッシングポイント概略検出部44は0クロッシングポイントの両側のホール素子のアドレスを求め、位置検出部45は0クロッシングポイントの左右の各1素子〜各4素子の出力から、0クロッシングポイントの正確な位置を検出する。
【0028】
ホール素子5,6のアドレスと実際の位置との間の誤差等を除くため、好ましくはリニアリティ補正部42を設ける。リニアリティ補正部42は、コア部36が求めた位置を、誤差を補正済みの位置へ変換するための変換表、あるいはホール素子5,6のアドレス毎の位置のオフセットのテーブルとオフセットを除くための加減算回路、等で構成する。
【0029】
図4図5に位置検出のアルゴリズムを示す。ホール素子5,6は外部磁界が無い場合でも起電力を生じることがあり、ノイズとなる磁界がない環境でホール素子からの出力(ADコンバータ22の出力)を不揮発性メモリから成る補正テーブル24へ書き込む(ステップ1)。また地磁気等の常時存在する外部磁界は遮断する必要がない。
【0030】
図2図3のマルチプレクサ18〜差分部32は、各ホール素子5,6の出力をオフセット補正し、メモリ34へ書き込むサイクルを実行する。コア部36はステップS3〜S5を、メモリ34への書き込みサイクルと同じ時間内に実行する。ステップ3では、ホール素子6の出力のみを走査し、言い換えるとk個毎に出力を走査し、左側の素子がn極からの磁束密度を受け(記号n)、右側の素子がs極からの磁束密度を受けて(記号s)、ホール素子の対を検出する。例えば+X側にN極11が−X側にS極12が有り、+X側から−X側へk個毎に磁気検出素子6の出力を読み出す。磁気検出素子(ホール素子)の出力が始めてs(S極12を検出)となった際に、そのk個上流側のホール素子は必ずN極11を検出している。このことは、k個のホール素子のスパン(ホール素子のピッチをaとして、k×a)が1個の磁極の長さ以下であれば、成り立つ。そこで0クロッシングポイントは、出力が始めてsとなったホール素子とそのk個上流のホール素子との間にあることが分かる。走査の方向は−X側から+X側向きでも良く、また0クロッシングポイントの概略位置を推定できる場合、推定位置の上流あるいは下流の一方から他方へと走査すればよい。ステップ4で、このペアの間の3個の素子の出力、及び条件によってペアの外側の1個の素子の出力とを読み出し、出力の極性が(n,s)の順となる2素子、あるいは極性が(n,n,s,s)の順となる4素子等、適宜の個数の素子を抽出する。これらの素子の出力を(n-1,s+1)、あるいは(n-2,n-1,s+1,s+2)とする。また前記の2素子は、0クロッシングポイントに最近接した2素子である。
【0031】
ステップ5で、0クロッシングポイントの左側の素子の出力(n-1)と、右側の素子の出力(s+1)と、2素子の出力の和T=|n-1|+|s+1|とを求める。なお出力は起電力の絶対値である。0クロッシングポイントの位置をPとし、例えば出力がn-1のホール素子の位置をPn-1、ホール素子のピッチをaとすると、0クロッシングポイントの位置Pは
P=−|n-1|/(|n-1|+|s+1|)×a+Pn-1 で与えられる。ここで先頭の−は、図1の左側を+Xと定めたためである。なおホール素子の位置はそのアドレスから判明し、P=+|s+1|/(|n-1|+|s+1|)×a+Ps+1 等としても良い。0クロッシングポイントの両側の隣接した2素子を用いると、位置を正確にかつ少ない演算量で検出できるが、それには限らない。例えば前記の例では、出力がn-2の素子と出力がs+1の素子等を用いても良い。また例えば4個の素子の出力を求める場合、4個の素子の出力に合致する直線を求め、この直線で出力が0となる点を0クロッシングポイントとしても良い。
【0032】
図5に0クロッシングポイントの付近での、ホール素子の出力を示す。0クロッシングポイントは磁石対での一対の磁極から対称な位置にあり、ホール素子アレイと磁石対との距離が変動し、磁束密度の強度分布が変動しても影響を受けない。また磁束密度は0クロッシングポイントの両側の位相が±30°程度の範囲でほぼ直線状に変化する。そして磁束密度が直線状に変化する範囲のホール素子、特に0クロッシングポイントに最近接した2個のホール素子、あるいは0クロッシングポイントに最近接の4個のホール素子等を抽出し、0クロッシングポイントの位置を求める。さらに、磁束密度の比を用いるので、磁束密度の強弱が変動し、またホール素子の起電力が周囲温度等により変動しても、影響は小さい。
【0033】
図6図8にデータを示す。図6は磁極表面からの距離による磁束密度の変化を示し、距離が大きすぎても小さすぎても、磁束密度の分布はsin波から外れてくる。ここで磁束密度が左側でn,右側でsとなる点は0クロッシングポイントのみである。そしてk個毎にホール素子の出力を抽出する場合、k個のホール素子の配列長さ、即ちaをホール素子のピッチとして、a×kがホール素子アレイの長手方向での1個の磁極の長さ以下であれば、0クロッシングポイントを見逃すことがない。なお磁石をほぼ隙間なく交互に繰り返して配置する場合も同様にk個毎にホール素子の出力を抽出する。その場合は、磁束密度がnからsへ変化することのみでなく、sからnへ変化することも検出できる。
【0034】
図7はホール起電力のオフセットを補正した際の誤差を、図8はオフセットを補正しなかった際の誤差を示し、いずれも基準となる信頼性の高いセンサからの誤差を示す。なおいずれも、磁極とホール素子アレイとの間隔が5mmの位置で求めたデータにより、リニアリティを補正データした。オフセット補正により誤差は1/2〜1/3に減少した。
【0035】
図9に変形例の位置検出アルゴリズムを示し、図4と同じステップは同じ符号で表す。図4のステップ2〜5を実行する際に、適宜のタイミングで0クロッシングポイントの両側のホール素子のアドレスをレジスタに記憶する。次の位置の検出では、記憶したアドレスの対の間に0クロッシングポイントがあるか否かを確認し(ステップ7)、有ればステップ3の走査を省略でき、無ければステップ3の走査を実行する。このアルゴリズムは、前回の0クロッシングポイントから今回の0クロッシングポイントを推定するもので、推定の手法は適宜に変更できる。例えば0クロッシングポイントの左右各2素子等の範囲で0クロッシングポイントを探索しても良い。また図1の状況で右側の磁石対10bが検出レンジに入り、元の磁石対10が検出レンジから外れると、ステップ7の次にステップ3を実行する。
【0036】
実施例では以下の効果が得られる。
1) k個毎のホール素子6のホール起電力を走査して、0クロッシングポイントの概略位置を求めるので、全てのホール素子5,6を走査するよりも時間を要しない。特にk個毎にホール素子の出力を走査し、始めてS極あるいはN極を検出するホール素子を抽出した時に走査を打ち切ると、処理時間をさらに短縮できる。
2) 出力の比を用いるため、コア部36で最も時間を要する除算は1回で足り、時間を要しない。
3) ホール素子の起電力のオフセットを補正するので、正確な位置検出ができる。
4) 0クロッシングポイントを検出するので、磁石列からの磁束密度がsin波状か三角波状か台形状か等の影響を受けない。
5) 出力の比を用いるので、磁石列から受ける磁束密度の強弱、ホール素子5,6の温度係数等の影響を小さくできる。
【0037】
実施例では、ホール素子5,6を用いたが、磁束密度の方向と磁束密度の強弱を検出でき、かつコイルではない、他のホール素子を用いても良い。実施例ではk=4の例を説明したが、k=2,6,8,12等でも良く、k個分のホール素子の配列長さが、磁石1個の長さ(ホール素子アレイの長手方向に沿った長さ)以下であることが好ましい。また0クロッシングポイントの左右各1素子の出力を用いたが、左右各2素子、あるいは左右各4素子等でも良い。検出の精度が低くても良い場合、補正テーブル24とリニアリティ補正部42は不要である。極端な高速性が要求される場合、0クロッシングポイントの推定位置付近のホール素子の出力のみをメモリ34へ書き込んでも良い。
【符号の説明】
【0038】
2 磁気式の位置センサ
4 ホール素子アレイ
5,6 ホール素子
8 直流電源
10 磁石対
11 N極
12 S極
14 ヨーク
16 処理部
18 マルチプレクサ
20 アンプ
22 ADコンバータ
24 補正テーブル
25 クロック発生部
26,30 アドレス制御部
28 メモリ
32 差分部
34 メモリ
36 コア部
38 CPU
39 レジスタ
40 プログラムメモリ
42 リニアリティ補正部
44 0クロッシングポイント概略検出部
45 位置検出部
図1
図2
図3
図4
図5
図9
図6
図7
図8