説明

電気機械装置及びロボット

【課題】簡便な方法で電気機械装置の移動量や位置を検知する。
【解決手段】電気機械装置10あって、電磁コイル100と、ローター磁石200と、前記ローター磁石の電気角を検知するためのn個(nは2以上の整数)の磁気センサー300と、前記磁気センサーと前記原点センサーの出力を用いて、前記被駆動部材の現在位置を検知するための位置検知部760と、を備え、各磁気センサーは、前記電気機械装置の電気角2πを周期とした曲線状波形を有するセンサー出力信号を生成し、前記n個の磁気センサーはそれぞれ電気角でπの整数倍以外の位相差のセンサー出力信号を生成するように配置され、前記位置検知部は、前記n個の磁気センサーからの前記センサー出力信号を用いて、前記ローター磁石の移動量を算出する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電動モーターの回転位置制御に関する。
【背景技術】
【0002】
エンコーダーの出力を用いて駆動を制御する電機機械装置(電動モーター、発電機)が知られている(例えば特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2010−207019号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、エンコーダーは、電動モーターに外付けされるので、モーターシステム全体の小型化や、エンコーダーの駆動負荷が必要になる点等において不利であった。また、絶対位置が判るアブソリュート型エンコーダーは高価であった。
【0005】
本発明は、上記課題の少なくとも1つを解決し、簡便な方法で電動モーターなどの電気機械装置の移動量や位置を検知することを目的とする。
【課題を解決するための手段】
【0006】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【0007】
[適用例1]
電気機械装置であって、電磁コイルと、ローター磁石と、前記ローター磁石の電気角を検知するためのn個(nは2以上の整数)の磁気センサーと、前記磁気センサーの出力を用いて、前記ローター磁石の位置を検知するための位置検知部と、を備え、各磁気センサーは、前記電気機械装置の電気角2πを周期とした曲線状波形を有するセンサー出力信号を生成し、前記n個の磁気センサーはそれぞれ電気角でπの整数倍以外の位相差のセンサー出力信号を生成するように配置され、前記位置検知部は、前記n個の磁気センサーからの前記センサー出力信号を用いて、移動前の位置である起点からの前記ローター磁石の移動量を算出する、電気機械装置。
この適用例によれば、容易にローター磁石の移動量を算出することができる。
【0008】
[適用例2]
適用例1に記載の電気機械装置において、前記磁気センサーは、前記ローター磁石からの磁束密度量を、アナログであるセンサー信号として出力する、電気機械装置。
【0009】
[適用例3]
適用例1または2に記載の電気機械装置において、前記位置検出部は、前記磁気センサーが前記起点からの前記ローター磁石の移動にともなって前記センサー出力信号に発生した周期数m(mは整数)を数え、前記周期数mと、前記起点と、移動後の前記センサー出力信号の大きさと、を用いて前記ローター磁石の移動量を算出する、電気機械装置。
この適用例によれば、周期数mと、移動前後の前記センサー出力信号の大きさと、を用いて前記ローター磁石の移動量を容易に算出することができる。
【0010】
[適用例4]
適用例3に記載の電気機械装置において、前記位置検出部は、前記起点における前記センサー出力信号の大きさから、前記起点から前記周期数mが最初に変化するまでの前記ローター磁石の移動量であるオフセットθoffsetを算出し、前記周期数mに基づいて前記ローター磁石の第1の移動量mθoを算出し、移動後の前記センサー出力信号の大きさから、前記周期数mを経過した後の前記ローター磁石の第2の移動量Δθを算出し、前記第1の移動量mθoと、前記第2の移動量Δθとを加えた値(mθo+Δθ)と前記オフセットθoffsetとを用いて、前記起点からの前記ローター磁石の移動量を算出する、電気機械装置。
この適用例によれば、周期数mに依存する第1の移動量と、各周期内の移動量である第2にの移動量を加えてローター磁石の移動量を容易に算出することが出来る。
【0011】
[適用例5]
適用例4に記載の電気機械装置において、前記位置検出部は、前記センサー出力信号を三角波信号に変換し、前記三角波信号の値を用いて前記周期数mを経過した後の前記ローター磁石の第2の移動量Δθを算出する、電気機械装置。
この適用例によれば、センサー出力信号が飽和する場合であっても容易に第2の移動量Δθを算出することができる。
【0012】
[適用例6]
適用例4に記載の電気機械装置において、前記位置検出部は、前記センサー出力信号を正弦波信号に変換し、前記正弦波信号の値を用いて前記周期数mを経過した後の前記ローター磁石の第2の移動量Δθを算出する、電気機械装置。
この適用例によれば、センサー出力信号が飽和する場合であっても容易に第2の移動量Δθを算出することができる。
【0013】
[適用例7]
適用例1〜6のいずれか一つに記載の電気機械装置において、前記複数の磁気センサーのうちの1つの磁気センサーは、前記起点において、前記センサー出力信号の極小値と極大値との中間値を出力する、電気機械装置。
この適用例によれば、起点のオフセットθoffsetをゼロとすることが出来る。
【0014】
[適用例8]
適用例1〜7のいずれか一つに記載の電気機械装置において、前記磁気センサーの数nは2であり、前記磁気センサーは、電気角でπ/2の位相差の出力信号を生成するように配置されている、電気機械装置。
この適用例によれば、一方の磁気センサーのセンサー出力信号が、極大値または極小値のとき、他方の磁気センサー出力信号は、極小値と極大値との中間値を出力するので、第2の移動量Δθを容易に算出することができる。
【0015】
[適用例9]
適用例1〜8のいずれか一つに記載の電気機械装置において、前記磁気センサーは、温度補償機能を備えている、電気機械装置。
この適用例によれば、電気機械装置の温度による磁気センサーのセンサー信号への影響を抑制することができる。
【0016】
[適用例10]
適用例1〜9のいずれか一つに記載の電気機械装置において、前記電気機械装置は、原点を検知する原点センサーを有する非駆動部材を駆動する装置であり、前記位置検知部は、前記n個の磁気センサーからの前記センサー出力信号を用いて、前記原点からの前記ローター磁石の移動量を算出する電気機械装置。
この適用例によれば、被駆動部材の原点からの移動量、すなわち、被駆動部材の絶対位置を容易に求めることが出来る。
【0017】
[適用例11]
ロボットであって、基部と、運動部と、前記基部と前記運動部とが、あらかじめ定められた位置にあるときに原点信号を発生する原点センサーと、前記基部と前記運動部との関節部に配置され、前記運動部を前記基部に対して相対的に移動させる電気機械装置と、を備え、前記電気機械装置は、適用例1〜10のいずれか一つに記載の電気機械装置である、ロボット。
【0018】
本発明は、種々の形態で実現することが可能であり、例えば、電気機械装置の他、その電気機械装置を用いたロボット、ロボットアーム等様々な形態で実現することができる。
【図面の簡単な説明】
【0019】
【図1】第1の実施例にかかるロボットアームの構成を示す説明図である。
【図2】ロボットのモーターシステムの構成を示す説明図である。
【図3】モーターを詳しく説明する説明図である。
【図4A】ロボットアームをz方向から見たときの原点センサーの構成を示す説明図である。
【図4B】原点位置においてロボットアームをy方向から見たときの説明図である。
【図4C】原点から離れた位置においてロボットアームをy方向から見たときの説明図である。
【図5】現在位置検知回路700の構成を示す説明図である。
【図6A】パルス生成回路710を示す。
【図6B】パルス生成回路715を示す。
【図7A】A相+微分回路の一例を示す説明図である。
【図7B】A相−微分回路の一例を示す説明図である。
【図8】電気角検知回路760の構成を示す説明図である。
【図9A】三角波生成回路の一例を示す説明図である。
【図9B】三角波生成回路の一例を示す説明図である。
【図10】AD変換回路770の一例を示す説明図である。
【図11】CPU781が検索する電気角マップ782の一例を示す説明図である。
【図12】電気角検知回路における各信号のタイミングチャートを示す説明図である。
【図13】現在位置検知回路におけるタイミングチャートである。
【図14】ロボットの動作フローチャートを示す説明図である。
【図15】第2の実施例における電気角検知回路における各信号のタイミングチャートを示す説明図である。
【発明を実施するための形態】
【0020】
[第1の実施例]
図1は、第1の実施例にかかるロボットアームの構成を示す説明図である。図1(A)は、ロボットアーム1000を図に示したz方向から見たときの図であり、図1(B)は、ロボットアーム1000を図に示したy方向から見たときの図である。図1(C)は、ロボットアームが曲がったときの状態をy方向から見たときの図である。ロボットアーム1000は、基部31と、運動部32と、モーター10と、傘歯車41、42と、傘歯車支持板44と、を備える。モーター10は、基部31と運動部32とを繋ぐ関節部に配置されている。モーター10は、回転軸230を備えており、回転軸230は、傘歯車41に接続されている。傘歯車42は回転軸43を備えている。傘歯車42は、傘歯車41と噛み合うとともに、運動部32に接続されている。傘歯車42の回転軸43は、傘歯車支持板44に接続されており、傘歯車支持板44は、基部31と接続されている。傘歯車42は、回転軸43を軸に回転するが、基部31に対して、移動しない。回転軸43は、モーター10の回転軸230と直交している。このロボットアーム1000は、モーター10が回転すると傘歯車41が回転し、傘歯車41が回転すると噛み合いにより傘歯車42が回転軸43を中心に回転し、傘歯車42が回転すると運動部32が基部31に対し回転軸43周りに回動する。
【0021】
図2は、ロボットのモーターシステムの構成を示す説明図である。モーターシステムは、モーター10と、制御部400と、PWM駆動回路500と、現在位置検知回路700と、原点センサー600と、を備える。モーター10は、電磁コイル100と、ローター磁石200と、磁気センサー300と、を備える。電磁コイル100に周期的な交流電流を印可すると、ローター磁石200が移動(回転運動)し、回転軸230(図1)を回転させて、ロボットアーム1000の運動部32を回動させる。磁気センサー300は、2つあり、ローター磁石200からの磁束密度量に応じたアナログ信号であるセンサー信号SSA、SSBを出力する。なお、センサー信号SSA、SSBの値は、電気角2πを周期とした信号である。磁気センサー300としては、例えばホールセンサーを用いることができる。磁気センサー300は、温度補償機能を備えていてもよい。原点センサー600は、ロボットアーム100に配置され、原点検知信号SPSを発生させる。原点検知信号は、ロボットアーム1000が原点位置にある時にパスルが生じる信号である。
【0022】
図3は、モーターを詳しく説明する説明図である。モーター10は、ステーター15と、ローター20とを備える。ローター20は、回転軸230と、ローター磁石200と、磁石バックヨーク215と、を備える。ローター20の中心に回転軸230がある。ローター磁石200は複数あり、回転軸230を中心とする同心円筒状に円周沿って配置されている。ローター磁石200の磁化の方向は、回転軸230を中心とする放射方向であり、ローター磁石200は、磁束が中心方向を向くローター磁石と、外側方向を向くローター磁石とが、円周に沿って交互に配置されている。磁石バックヨーク215は、ローター磁石200の回転軸230側に配置されている。なお、磁石バックヨーク215は、無くてもよい。
【0023】
ステーター15は、電磁コイル100と、コイルバックヨーク115と、磁気センサー300と、回路基板310と、を備える。電磁コイル100は、ローター磁石200と対向するように、円筒形に配置されている。本実施例では、電磁コイル100を、2相備えている。コイルバックヨーク115は、電磁コイル100のローター磁石200と反対側に配置されている。ステーター15は、磁気センサー300を、電磁コイル100の各相に対応して2個備える。2つの磁気センサー300は、周期が電気角で2πのセンサー信号SSA、SSBを発生する。センサー信号SSAとSSBは、互いに位相がπ/2ずれるように配置されている。センサー信号SSAとSSBは、電磁コイル100を駆動するための制御信号を生成するために用いられる。
【0024】
なお、電磁コイル100は、2相以外の単相、あるいは3相であってもよい。電磁コイル100が単相の場合、磁気センサー300の数は1個となる。しかし、磁気センサー300を1個しか無い場合、回転方向の検知が困難である。そのため、電磁コイル100が単相の場合であっても、ステーター15は、磁気センサー300を2個備えることが好ましい。この場合、2つのセンサー信号は、互いに位相がπ/2ずれるように配置されていることが好ましい。また、電磁コイル100が3相の場合、磁気センサー300は、各相に対応して3個必要となるが、ステーター15は、3相のうちの2相の電磁コイル100に対応する2個の磁気センサー300のみを備える構成であってもよい。3相の場合、2つの磁気センサー300の出力から、残りの1つの磁気センサー300の出力を演算により算出することができるからである。
【0025】
図4Aは、ロボットアームをz方向から見たときの原点センサーの構成を示す説明図である。図4Bは、原点位置においてロボットアームをy方向から見たときの説明図である。図4Cは、原点から離れた位置においてロボットアームをy方向から見たときの説明図である。ロボットアーム1000は、原点センサー600を備える。原点センサー600は、発光部620と、受光部630と、反射板640と、を有している。なお、図4A〜4Cでは、図が見難くなるため、図1に示したモーター10や、傘歯車41、42、回転軸230、43の記載を省略している。発光部620と、受光部630とは、基部31に配置され、反射板640は、運動部32に配置されている。なお、図4Aにおいては、受光部630は、発光部620の陰に隠れているため、見えていない。また、本実施例では、基部31と運動部32とが一直線になる状態を原点としている。
【0026】
原点では、図4Bに示すように、発光部620から照射された光は、反射板640で反射し、受光部630に照射される。そして、受光部630は、原点検知信号SPSをHとする。一方、モーター10(図1)が駆動して、運動部32が原点から回動した場合、図4Cに示すように、発光部620から反射板640に照射され、反射した反射光は、受光部630に当たらない。したがって、受光部630は、反射光を受光できず、原点検知信号SPSはHとならない。
【0027】
図2の現在位置検知回路700は、ローター磁石200の現在位置を検知する。現在位置検知回路700は、磁気センサー300からのセンサー信号SSA、SSBと、原点センサーからの原点検知信号SPSと、オフセットθoffsetと、を用いて、ローター磁石200の現在位置情報θxを算出する。ここで、オフセットθoffsetは、ローター磁石200の移動後にセンサー信号SSBが最初に極小になる位相(センサー信号SSAが増加する領域の位相であって、かつ、VDD/2となる位相)と、原点検知信号SPSが生じる位相との差である。なお、センサー信号SSBが最初に極小になる位相と、原点検知信号SPSが生じる位相と、を合わせれば、オフセットθoffsetをゼロとすることができる。
【0028】
図5は、現在位置検知回路700の構成を示す説明図である。現在位置検知回路700は、2πカウント回路705と、電気角検知回路760と、合成回路790と、を備える。センサー信号SSA、SSBは、上述したように、電気角2πを周期とする出力信号である。2πカウント回路705は、原点からの、この電気角2πの周期の数をカウントし、このカウント値に基づく第1の移動量θE2πを算出する。電気角2πの周期の数をCNTとすると、θE2π=2π×CNTとなる。電気角検知回路760は、センサー信号SSBが極小になる位相から、現在の位置までの第2の移動量Δθx(0≦Δθx<2π)を算出する。合成回路790は、第1の移動量θE2πと、第2の移動量Δθxと、オフセットθoffsetと、を加算し、ローター磁石200の原点からの移動量(回転量)を算出する。
【0029】
2πカウント回路705は、パルス生成回路710、715と、A相+微分回路720と、A相−微分回路725と、パルスカウンター回路730と、を備える。パルス生成回路710、715は、いわゆるAD変換回路であり、判定値を閾値として、センサー信号SSA、SSBの値が判定値以上のときHを出力し、判定値未満のときLを出力する。なお、この判定値は、Hの期間とLの期間の長さが同じになるような値に設定することが好ましい。
【0030】
図6Aは、パルス生成回路710を示し、図6Bは、パルス生成回路715を示す。パルス生成回路710、715は、入力信号が異なるだけで同じ回路であるので、パルス生成回路710を用いて説明する。パルス生成回路710はオペアンプ回路711を備える。オペアンプ回路の一方の入力にはセンサー信号SSAが入力され、他方の入力には抵抗分割により設定された判定電圧(判定値)が入力されている。センサー信号SSA≧判定電圧のとき、オペアンプ回路711の出力ESAはHとなり、センサー信号SSA<判定電圧のとき、オペアンプ回路711の出力ESAはLとなる。
【0031】
図5のA相+微分回路720は、ローター20(図2など)が正方向に回転する時にパスルを発生させる回路であり、A相−微分回路725は、ローター20が逆方向に回転するときにパルスを発生させる回路である。
【0032】
図7Aは、A相+微分回路の一例を示す説明図である。A相+微分回路720は、NAND回路721と、インバーター回路722と、NOR回路723と、を備える。パルス生成回路710(図6A)の出力ESAは、NAND回路721の2つの入力の一方の入力aaに入力されている。また、出力ESAは、インバーター回路722に入力され、インバーター回路722の出力は、NAND回路721の2つの入力の他方の入力abに入力されている。NOR回路723の2つの入力には、NAND回路721の出力acと、パルス生成回路715(図6B)の出力ESBが入力されている。NOR回路723の出力は加算信号ESAD1である。
【0033】
出力ESAが遷移しない状態では、NAND回路721の入力aaとabは、いずれかがHのとき、他方はLとなる関係にあるので、NAND回路721の出力acはHである。出力ESAが遷移する状態を考える。出力ESAがLからHに遷移するとき、NAND回路721の入力aaはLからHに遷移する。一方、NAND回路721の入力abは、HからLに遷移する。このとき、NAND回路721の入力abは、インバーター回路722があるため、NAND回路721の入力aaの遷移に比べて若干遅れて遷移する。その結果、NAND回路721の入力aaとabとがいずれもHとなる期間が一瞬生じ、NAND回路721の出力acは一瞬Lとなる。このとき、出力ESBがLであれば、加算信号ESAD1は、一瞬だけHとなる。なお、出力ESBがLであれば、NAND回路721の出力acは一瞬Lとなっても、加算信号ESAD1は、Lのままである。一方、出力ESAがHからLに遷移するとき、NAND回路721の入力aaはHからLに遷移し、NAND回路721の入力abは、少し遅れてLからHに遷移する。このときは、NAND回路721の入力aaとabとがいずれもHとなる期間が生じないため、NAND回路721の出力acがLとなることはない。したがって、加算信号ESAD1は、Lのままである。すなわち、このA相+微分回路720は、出力ESBがLであって、出力ESAがLからHに遷移するときに、加算信号ESAD1にHのパルスを生じさせる。
【0034】
図7Bは、A相−微分回路の一例を示す説明図である。A相+微分回路720は、NAND回路721を備えていたが、A相−微分回路725では、NAND回路721の代わりにOR回路726を備える点が異なる。A相−微分回路725の出力は、減算信号ESAD2である。このOR回路726では、出力ESAがHからLに遷移するとき、入力baはHからLに遷移し、入力bbは、少し遅れてLからHに遷移する。このときは、OR回路726の入力baとbbとが共にLとなる期間が一瞬生じるため、OR回路726の出力bcは、一瞬Lとなる。このとき、出力ESBがLであれば、減算信号ESAD2は、一瞬だけHとなる。なお、なお、出力ESBがLであれば、OR回路726の出力bcは一瞬Lとなっても、減算信号ESAD2は、Lのままである。一方、出力ESAがLからHに遷移するとき、OR回路726の入力baとbbとがいずれもLとなる期間が生じないため、OR回路726の出力bcがLとなることはない。したがって、減算信号ESAD2は、Lのままである。すなわち、このA相−微分回路725は、出力ESBがLであって、出力ESAがHからLに遷移するときに、減算信号ESAD2にHのパルスを生じさせる。加算信号ESAD1にHのパルスが生じるか、減算信号ESAD2にHのパルスが生じるか、により、ローター20(図3)の回転方向が正方向か、逆方向か、を判断することが出来る。なお、正回転の時に加算信号ESAD1にHのパルスが生じる位相と、逆回転の時に減算信号ESAD2にHのパルスが生じる位相は同じ位相であることが好ましい。加算信号ESAD1あるいは減算信号ESAD2は、次に説明するパルスカウンター回路730のカウンター値CNTを上げ下げするために用いられるため、位相がずれていると、カウンター値CNTの上げ下げのタイミングが異なってしまうからである。
【0035】
図5のパルスカウンター回路730は、加算信号ESAD1にHのパルスが生じたときにカウンター値CNTを1つ上げ、減算信号ESAD2にHのパルスが生じたときにカウンター値CNTを1つ下げる。なお、カウンター値CNTが変化するタイミングは、センサー信号SSA,SSBとの関係では、センサー信号SSBが極小になる位相である。カウンター値CNTは、原点からのセンサー信号SSA(SSB)の電気角2πの数に相当する。例えば、カウンター値CNTがmのとき、現在位置は、原点から(2π×m+Δθx+θoffset)の位置にあることになる。ここで電気角Δθx(0≦Δθx<2π)は、カウンター値CNTが増加するときに現在のカウンター値mとなった位置から現在位置までのローター20(図3)の移動量(回転量)である。次に、電気角Δθxを算出する電気角検知回路760について説明する。
【0036】
図8は、電気角検知回路760の構成を示す説明図である。ここで、図8(A)は、センサー信号SSA、SSBが正弦波などの飽和しない波形である場合の回路例であり、図8(B)は、センサー信号SSA、SSBが飽和する場合にも適用可能な回路例である。図8(A)に示す電気角検知回路760は、AD変換回路770、775と、電気角決定回路780と、を備えており、センサー信号SSA、SSBが、直接AD変換回路770、775に入力されている。一方、図8(B)に示す電気角検知回路760は、図8(A)に示す電気角検知回路760のAD変換回路770、775の前段に、パルス生成回路761、766と、三角波生成回路762、767と、を備える点が異なっている。具体的には、後述するが、センサー信号SSA、SSBが飽和する場合、センサー信号SSA、SSBを直接AD変換回路770、775に入力されると、同じデジタル値SSAD、SSBDに対応する電気角が複数存在することになり、電気角が一意に決定できない場合がありえる。そのため、パルス生成回路761、766と、三角波生成回路762、767と、を備えている。以下、図8(B)の電気角決定回路760を例にとり、説明する。
【0037】
パルス生成回路761、766はセンサー信号SSA、SSBをパルス波信号SSAP、SSBPに変換する。三角波生成回路762、767は、パルス波信号SSAP、SSBPを三角波信号SSAT、SSBTに変換する。AD変換回路770、775は、三角波信号SSAT、SSBTをAD変換してデジタル信号SSAD、SSBDを生成する。電気角決定回路780は、CPU781と、電気角マップ782と、を備えており、CPU781は、デジタル信号SSAD、SSBDとを用いて、電気角マップ782を検索し、電気角Δθxを取得する。なお、三角波は、直線なので、CPU781は、デジタル信号SSAD、SSBDから演算によりΔθxを算出してもよい。
【0038】
パルス生成回路761、766は、図6A、図6Bで説明したパルス生成回路710、715と同じ構成でよい。したがって、パルス生成回路761、766の代わりに、パルス生成回路710、715を兼用させて、パルス生成回路710、715の出力を三角波生成回路762、767の出力としてもよい。
【0039】
図9A、図9Bは、三角波生成回路の一例を示す説明図である。三角波生成回路762、767として、積分回路を用いることができる。三角波生成回路762、767は同じ回路であるので、三角波生成回路762を例にとり説明する。三角波生成回路762は、オペアンプ763と、抵抗Rと、コンデンサCと、を備える。三角波生成回路762の一方の入力(−)には、抵抗Rを介してパルス生成回路761の出力信号SSADが入力されている。三角波生成回路762の他方の入力(+)には、グランド電位が入力されている。三角波生成回路の出力である出力信号SSAT(三角波信号SSAT)は、コンデンサCを介して、三角波生成回路762の一方の入力(−)に接続されている。かかる構成の場合、三角波生成回路の出力信号SSATの電位VSSATは、パルス波信号SSAPの電位をVSSAPとすると、次の式(1)(2)で示される。
【数1】

【数2】

電位VSSAPは、HかLの2値であるので、電位VSSATは、三角波形状となる。
【0040】
図10は、AD変換回路770の一例を示す説明図である。AD変換回路770は、直列に接続されたn個(nは2以上の自然数)の抵抗R1〜Rnと(n―1)個の比較器771と、デコーダー774と、を備える。抵抗R1〜Rnは、同じ抵抗値を有しており、電圧VDDをn等分する。各抵抗の接続点(n−1個)は、比較器771の一方の入力に入力されている。比較器771の一方の他方の入力には、三角波生成回路の出力である三角波信号SSATが入力されている。比較器771は、抵抗の接続点の電位(「判定電位」と呼ぶ)と、三角波信号SSATの電位とを比較し、三角波信号SSATの電位が判定電位以上の場合Hを出力し、三角波信号SSATの電位が判定電位未満の場合には、Lを出力する。デコーダー774には、各比較器771の出力が入力されている。デコーダー774は、これらを合成してmビットのデジタル信号SSADを出力する。なお、比較器771や抵抗は、デジタル信号SSADの出力ビット数に依存し、例えば、デジタル信号SSADが10ビットであれば、比較器771は1024個必要であり、抵抗は1025個必要である。AD変換器775についても、AD変換器771と同様の構成を備えており、出力信号SSBTを入力として、デジタル信号SSBDを出力する。
【0041】
図11は、CPU781が検索する電気角マップ782の一例を示す説明図である。ここでは、デジタル信号SSAD、SSBDの最大値を10V、最小値を0Vとしている。デジタル信号SSAD、SSBDの値が定まれば、CPU781は、電気角マップ782を検索する事により、電気角Δθxを容易に取得することができる。例えば、SSADの値が6.67の場合、電気角Δθxの値としては30°と150°の2つが考えられるが、SSBDが、1.67であれば電気角Δθxは30°に一意に決まり、SSBDが8.33であれば電気角Δθxは150°に一意に決まる。
【0042】
なお、図8(B)において、センサー信号SSA、SSBからパルス波信号SSAP、SSBPを生成し、該パルス波信号SSAP、SSBPから三角波信号SSAT、SSBTを生成し、該三角波信号SSAT、SSBTからデジタル信号SSAD、SSBDを生成しているのは、以下の理由による。すなわち、磁気センサー300が出力するセンサー信号SSA、SSBは、必ずしも正弦波をシフトした信号ではなく、磁気センサー300の位置によっては、センサー信号SSA、SSBが極大部分で飽和し、あるいは極小部分でほぼゼロになる(以下「飽和等する」と呼ぶ。)場合もある。センサー信号SSA、SSBは、飽和等していなければ、極大点、極小点を除き、センサー信号の値と電気角は1対2で対応する。なお極大点では、1対1である。したがって、センサー信号SSA、SSBの値が判れば、電気角を求めることが出来る。しかし、センサー信号SSA、SSBが飽和等する場合には、センサー信号SSA、SSBの値と電気角は1対m(mは2超の値)で対応するので、電気角を1つに決めることが出来ない場合があり得る。このようなセンサー信号SSA、SSBが飽和等する場合であっても、図8(B)に示すように変換することにより、電気角Δθxを容易に求めることが出来る。
【0043】
本実施例では、三角波生成回路762、767を用い、出力信号SSAD、SSBDから三角波信号SSAT、SSBTを生成しているが、三角波生成回路762、767の代わりにサインコンバーター回路を用い、三角波の代わりに正弦波信号SSAS、SSBSを生成し、正弦波の値に対応した電気角マップを用いてもよい。
【0044】
なお、センサー信号SSA、SSBが飽和しないように磁気センサー300を配置すれば、図8(A)に示すように、センサー信号SSA、SSBを直接AD変換回路770、775に入力し、デジタル信号SSAD、SSBDを生成してもよい。かかる場合、電気角マップ772は、このデジタル信号SSAD、SSBDと電気角Δθxの関係を示すマップとなる。
【0045】
また、一般に、AD変換回路は回路規模が大きくなるので、B相用の三角波生成回路767とAD変換器775とを備えない構成であってもよい。かかる場合、センサー信号SSAの極大点、極小点以外は、デジタル信号SSADの値に対して2つの位相の値が考えられる。この場合、パルス生成回路766の出力信号SSBPが、Hか、Lか、により、どちらの位相かを判断することができる。なお、センサー信号SSA、SSBは、位相が電気角でπ/2ずれていることが好ましい。
【0046】
図12は、電気角検知回路における各信号のタイミングチャートを示す説明図である。ここでは、三角波信号SSAT、SSBTに加えて正弦波信号SSAS、SSBSを記載している。
【0047】
図13は、現在位置検知回路におけるタイミングチャートである。ここで図に示したSPは原点(Start Point)を示し、PPは現在位置(Present Point)を示している。オフセットθoffsetは、モーター10が正方向に回転し、原点検知信号SPSがHとなった後、最初に加算信号ESAD1がHとなるまでの位相を示す。本実施例では、最初に加算信号ESAD1がHとなったときに、カウンター値CNTが0となるようにパルスカウンター回路730(図5)が設定されている。パルスカウンター回路730は、モーター10が正方向に回転し、加算信号ESAD1がHとなるごとに、カウンター値CNTを1つずつ増加させていく。図13の例では、現在位置PPのとき、カウンター値CNTは2となっている。3つ目の加算信号ESAD1がHとなってから現在位置PPまでの位相(電気角Δθx)は、図8〜10で説明したように算出することができる。したがって、原点SPから現在位置PPまでの移動量(回転量)Δθは、θoffset+2π×CNT+Δθxで求めることが出来る。なお、モーター10が逆方向に回転するときは、減算信号ESAD2により、カウンター値CNTを1つずつ減少させていく。
【0048】
図14は、ロボットアームの動作フローチャートを示す説明図である。 図14のステップS100においてロボットアーム1000は、目的位置(目的位置の位置情報を「目的位置情報θr」と呼ぶ。)への動作指令を受けると、制御部400(図2)は、処理をステップS110に移行し、モーター10の現在位置の位相θx(以下、「現在位置情報θx」とも呼ぶ。)を有しているか判断する。ここで、現在位置情報θxとは、原点(基準点)に対してモーター10がどれくらい回転しているかを示す情報であり、基部31に対して運動部32がどの程度回動しているかを示す情報である。ここで、現在位置情報θxは、θx=θoffset+2π×CNT+Δθxで示されるが、このうち、オフセットθoffsetはモーター10の設計段階で既知であり、電気角Δθxは、制御部400は、現在のセンサー出力SSA、SSBから容易に取得することができる。したがって、制御部400は、カウンター値CNTがいくつであるか判れば現在位置情報θxが判る。なお、この現在位置情報θxは、モーター10の電気角で表した値なので、制御部400は、現在位置情報θxを機械角に換算して、原点からの運動部32の移動角度を算出する。なお、原点位置検知回路700は、2π×CNTの代わりに機械角CNT×θoで算出し、電気角マップ782も、電気角ではなく機械角を算出するように構成しておいてもよい。
【0049】
制御部400は、モーター10の現在位置情報θxを有していない場合には、ステップS120に処理を移行し、モーター10を正方向または逆方向に回転させてモーター10の原点SPを探索する。原点SPとは、原点検知信号SPSがHとなる点であり、ロボットアーム1000の動作の基準となる点である。なお、原点SPにおける基部31と、運動部32との状態は、ロボットアーム1000の設計により様々に決めることができる。例えば、原点SPとしては、例えば、基部31と、運動部32とが一直線になる状態や、を原点SPとしてもよい。また、基部31に対し、運動部32が一直線状態から最も大きく回動した状態を原点SPとしてもよい。
【0050】
ステップS130では、制御部400は、現在位置情報θxあるいは原点SPの位置を基準として、目的方向に移動させるように、モーター10を駆動させる。制御部400は、目的位置情報θrから現在位置情報θxを引いたθr−θxが0よりも大きければ、正方向にモーター10を駆動させ、0よりも小さければ逆方向に駆動させる。制御部400は、目的方向に動かすための駆動信号DRSをPWM駆動回路500(図2)に対し送る。PWM駆動回路500は、駆動信号DRVを用いて電磁コイル100を駆動する。
【0051】
制御部400は、モーター10を駆動させるとともに、ステップS140において、ローター20の現在位置情報θxを取得する。そして、制御部400は、目的位置情報θrと現在位置情報θxとを比較する。制御部400は、θr=θxとなり、モーター10のローター20が目的位置に達したことを検知すると(ステップS150)、処理をステップS160に移行し、PWM駆動回路500に対し、モーター10の駆動を停止させる。
【0052】
以上、第1の実施例においては、原点検知信号SPSを生成する原点センサーと、センサー信号SSA、SSBを用いて現在位置情報θxを算出する現在位置検知回路700とを備えているので、エンコーダーを備えなくても、現在位置を容易に取得し、モーター10を駆動制御する事が出来る。
【0053】
また、現在位置情報θxは、制御部は、2πカウント回路705(図5)からのカウンター値CNTと、電気角検知回路760からの電気角Δθxとから、容易に求めることが出来る。
【0054】
本実施例によれば、センサー信号SSA、SSBがπ/2だけずれているので、電気角を容易に取得することができる。
【0055】
[第2の実施例]
図15は、第2の実施例における電気角検知回路における各信号のタイミングチャートを示す説明図である。第1の実施例は2相モーターであったのに対し、第2の実施例は3相(U相、V相、W相)モーターである。第2の実施例では、U相、V相にのみ磁気センサーを備えている。U相、V相の磁気センサーは、2π/3の位相差のセンサー信号SSU、SSWを生成する。ここでは、センサー信号SSU、SSVは正弦波とする。正弦波でない場合には、第1の実施例でしめしたように波形変換を行い、最期にサインコンバーター回路を用いることで容易に正弦波を生成することができる。
【0056】
図15に示したセンサー信号SSWは、センサー信号SSU、SSVから算出したものである。センサー信号SSU、SSVの極小値をゼロ、極大値をVDDとすると、SSU+SSV+SSW=(3/2)×VDDとなる。したがって、センサー信号SSU、SSVが判ると、残りのセンサー信号SSWは、容易に算出することができる。
【0057】
次に、3つのセンサー信号を用いて、UVWの3相をABの2相に変換する。具体的には、以下の式(3)に示す行列演算を行うことにより、センサー信号SSU〜SSWから2相変換後のセンサー信号SSA、SSBを算出することができる。
【数3】

【0058】
制御部400は、2相変換後のセンサー出力SSA、SSBを算出した後は、第1の実施例と同様の処理を行うことにより、ローター20の現在位置を検知し、目的位置GPに向かってモーター10を制御することが出来る。このように3相モーターであっても、2相モーターと同様に、制御部400は現在位置情報θxを取得し、モーター10の動作を制御することができる。
【0059】
上記実施例では、原点からの回転量を求める例として説明したが、制御部400が、現在位置(起点)からの相対回転量を求める場合にも適用することが出来る。すなわち、制御部400は、起点及び現在位置の電気角Δθxを上述した方法で算出することができる。カウンター値CNTは不明であるが、制御部は、現在位置のカウンター値CNT2をゼロとする。カウンター値CNT2は、カウンター値CNTと同じタイミングで値が上下する。制御部400は、移動前後のカウンター値CNT2の差分と、移動前後の電気角Δθxの差分を用いることにより、相対移動量を容易に算出することができる。なお、この場合、起点におけるΔθxと、2πと、の差がθoffsetに相当すると考えることが出来る。このθoffsetは、起点からカウンター値CNT2が最初に変化するまでの移動量である。なお、起点において、センサー出力信号SSAが、極小値と極大値との中間値を出力する状態であれば、θoffsetをゼロとすることができる。また、第2の実施例における起点を、第1の実施例の原点とすれば、ローター20の相対移動量とローター20の位置とを対応させることができる。
【0060】
以上、いくつかの実施例に基づいて本発明の実施の形態について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得るとともに、本発明にはその等価物が含まれることはもちろんである。
【符号の説明】
【0061】
10…モーター
15…ステーター
20…ローター
31…基部
32…運動部
41、42…傘歯車
43…回転軸
44…傘歯車支持板
100…電磁コイル
115…コイルバックヨーク
200…ローター磁石
215…磁石バックヨーク
230…回転軸
300…磁気センサー
310…回路基板
400…制御部
600…原点センサー
620…発光部
630…受光部
640…反射板
700…現在位置検知回路
710…パルス生成回路
711…オペアンプ回路
715…パルス生成回路
720…微分回路
722…インバーター回路
730…パルスカウンター回路
760…電気角検知回路
761、766…パルス生成回路
762、767…三角波生成回路
763…オペアンプ
770、775…AD変換回路
771…比較器
774…デコーダー
780…電気角決定回路
781…CPU
782…電気角マップ
790…合成回路
1000…ロボットアーム
θoffset…オフセット
θx…現在位置情報
θr…目的位置情報
Δθx…電気角
ESAD1…加算信号
ESAD2…減算信号
SSA、SSB…センサー信号
SSAP、SSBP…パルス波信号
SSAT、SSBT…三角波信号
SSAD、SSBD…デジタル号
SSAS、SSBS…正弦波信号
R、R1…抵抗
C…コンデンサ
VSSAT…電位
VSSAP…電位
GP…目的位置
PP…現在位置
SP…原点
aa…入力
ba…入力
ab…入力
bb…入力
ac…出力
bc…出力
VDD…電圧
ESA、ESB…出力
CNT、CNT2…カウンター値
SPS…原点検知信号
DRS…駆動信号
DRV…駆動信号
SSU…センサー信号
SSV…センサー信号
SSW…センサー信号

【特許請求の範囲】
【請求項1】
電気機械装置であって、
電磁コイルと、
ローター磁石と、
前記ローター磁石の電気角を検知するためのn個(nは2以上の整数)の磁気センサーと、
前記磁気センサーの出力を用いて、前記ローター磁石の位置を検知するための位置検知部と、
を備え、
各磁気センサーは、前記電気機械装置の電気角2πを周期とした曲線状波形を有するセンサー出力信号を生成し、
前記n個の磁気センサーはそれぞれ電気角でπの整数倍以外の位相差のセンサー出力信号を生成するように配置され、
前記位置検知部は、前記n個の磁気センサーからの前記センサー出力信号を用いて、移動前の位置である起点からの前記ローター磁石の移動量を算出する、電気機械装置。
【請求項2】
請求項1に記載の電気機械装置において、
前記磁気センサーは、前記ローター磁石からの磁束密度量を、アナログであるセンサー信号として出力する、電気機械装置。
【請求項3】
請求項1または2に記載の電気機械装置において、
前記位置検出部は、前記磁気センサーが前記起点からの前記ローター磁石の移動にともなって前記センサー出力信号に発生した周期数m(mは整数)を数え、前記周期数mと、前記起点と、移動後の前記センサー出力信号の大きさと、を用いて前記ローター磁石の移動量を算出する、電気機械装置。
【請求項4】
請求項3に記載の電気機械装置において、
前記位置検出部は、
前記起点における前記センサー出力信号の大きさから、前記起点から前記周期数mが最初に変化するまでの前記ローター磁石の移動量であるオフセットθoffsetを算出し、
前記周期数mに基づいて前記ローター磁石の第1の移動量mθoを算出し、
移動後の前記センサー出力信号の大きさから、前記周期数mを経過した後の前記ローター磁石の第2の移動量Δθを算出し、
前記第1の移動量mθoと、前記第2の移動量Δθとを加えた値(mθo+Δθ)と前記オフセットθoffsetとを用いて、前記起点からの前記ローター磁石の移動量を算出する、電気機械装置。
【請求項5】
請求項4に記載の電気機械装置において、
前記位置検出部は、前記センサー出力信号を三角波信号に変換し、前記三角波信号の値を用いて前記周期数mを経過した後の前記ローター磁石の第2の移動量Δθを算出する、電気機械装置。
【請求項6】
請求項4に記載の電気機械装置において、
前記位置検出部は、前記センサー出力信号を正弦波信号に変換し、前記正弦波信号の値を用いて前記周期数mを経過した後の前記ローター磁石の第2の移動量Δθを算出する、電気機械装置。
【請求項7】
請求項1〜6のいずれか一項に記載の電気機械装置において、
前記複数の磁気センサーのうちの1つの磁気センサーは、前記起点において、前記センサー出力信号の極小値と極大値との中間値を出力する、
電気機械装置。
【請求項8】
請求項1〜7のいずれか一項に記載の電気機械装置において、
前記磁気センサーの数nは2であり、前記磁気センサーは、電気角でπ/2の位相差の出力信号を生成するように配置されている、電気機械装置。
【請求項9】
請求項1〜8のいずれか一項に記載の電気機械装置において、
前記磁気センサーは、温度補償機能を備えている、電気機械装置。
【請求項10】
請求項1〜9のいずれか一項に記載の電気機械装置において、
前記電気機械装置は、原点を検知する原点センサーを有する非駆動部材を駆動する装置であり、
前記位置検知部は、前記n個の磁気センサーからの前記センサー出力信号を用いて、前記原点からの前記ローター磁石の移動量を算出する電気機械装置。
【請求項11】
ロボットであって、
基部と、
運動部と、
前記基部と前記運動部とが、あらかじめ定められた位置にあるときに原点信号を発生する原点センサーと、
前記基部と前記運動部との関節部に配置され、前記運動部を前記基部に対して相対的に移動させる電気機械装置と、
を備え、
前記電気機械装置は、請求項1〜10のいずれか一項に記載の電気機械装置である、ロボット。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4A】
image rotate

【図4B】
image rotate

【図4C】
image rotate

【図5】
image rotate

【図6A】
image rotate

【図6B】
image rotate

【図7A】
image rotate

【図7B】
image rotate

【図8】
image rotate

【図9A】
image rotate

【図9B】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate


【公開番号】特開2012−152015(P2012−152015A)
【公開日】平成24年8月9日(2012.8.9)
【国際特許分類】
【出願番号】特願2011−8761(P2011−8761)
【出願日】平成23年1月19日(2011.1.19)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】