以下、発明を実施するための形態(以下、実施形態という)につき図面を参照しつつ詳細に説明する。なお、下記の実施形態により本発明が限定されるものではない。また、下記実施形態における構成要素には、当業者が容易に想定できるもの、実質的に同一のもの、いわゆる均等の範囲のものが含まれる。さらに、下記実施形態で開示した構成要素は適宜組み合わせることが可能である。
(実施形態1)
図1は、実施形態1に係るモータ制御システムを説明するための説明図である。図1に示すように、実施形態1に係るモータ制御システム1000は、モータMと、モータMの回転と同期して回転し、かつ第1磁気トラック2A及び第2磁気トラック2Bを有する回転体100と、第1検出器200Aと、第2検出器200Bと、モータ駆動回路300と、上位制御装置500と、報知部600とを備える。
第1検出器200Aは、センサ部3と、位相検出部5と、位相差検出部6と、角度算出部7と、信号生成部8と、記憶部10と、第1出力ポートP1Aとを備える。また、信号生成部8は、第1信号生成部8Aを有する。第2検出器200Bは、センサ部3と、位相検出部5と、位相差検出部6と、角度算出部7と、信号生成部8と、記憶部10と、第1出力ポートP1Bとを備える。また、信号生成部8は、第1信号生成部8Aを有する。センサ部3は、第1センサ部として第1磁気センサ3Aと、第2磁気センサ部として第2磁気センサ3Bとを有する。位相検出部5は、第1位相検出部5Aと、第2位相検出部5Bとを有する。以下、本実施形態は、第1検出器200Aについて、説明するが、第2検出器200Bについては、第1検出器200Aと同じ構成であるので、同じ構成には同じ符号を用いて詳細な説明は、適宜省略する。
モータMは、駆動対象である回転体100に直接回転力を伝達する装置であり、例えばダイレクトドライブ(以下、DD)モータである。DDモータは、駆動対象に直接回転力を伝達するため、摩擦損失が少なく回転効率を高めることができる。モータMは、回転軸Xを中心に、回転体100を回転させる。
上位制御装置500は、コンピュータであり、例えば、CPUと、ROMと、RAMと、内部記憶部と、入力インターフェースと、出力インターフェースと、を含んでいる。CPU、ROM、RAM及び記憶部505は、内部バスで接続されている。ROMには、BIOS等のプログラムが記憶されている。CPUは、演算手段であり、RAMをワークエリアとして使用しながらROMや記憶部505に記憶されているプログラムを実行することにより、図1に示す回転算出部501、角度比較部502、モータ指令値算出部503、自己診断部504を含む種々の機能を実現する。
モータ駆動回路300は、モータ指令値算出部503のモータ指令値に応じて、モータMを駆動する。
報知部600は、表示パネルへの表示、光、音、振動の少なくとも1つにより、異常を報知する。報知部600は、例えば、電子ブザー、発光ダイオード、振動モータのいずれか1つを備える。
本実施形態において、第1検出器200Aは、例えば、1つのICチップに集積化されている。これにより、モータ制御システム1000を構成する部品点数の低減、第1磁気センサ3Aと第2磁気センサ3Bとの間の位置精度の向上、製造コストや組立コストの低減等を図ることができ、小型且つ安価なモータ制御システム1000を実現可能である。なお、例えば記憶部10は、第1検出器200Aの外部にあってもよい。これにより、第1検出器200Aの更なる小型化及び低コスト化を実現することができる。第2検出器200Bについては、第1検出器200Aと同じである。
図2は、実施形態1に係るモータ制御システムの回転体を説明するための説明図である。図3は、図2に示す回転体の各磁気トラックを説明するための説明図である。図4は、図2に示す回転体の各磁気トラックの他の例を示す図である。図5は、実施形態1に係る磁気トラックに対する第1検出器及び第2検出器の配置例を示す図である。図6は、実施形態1に係るモータ制御システムの図5に示すIV−IV断面図である。図7は、実施形態1に係るモータ制御システムの各磁気センサを説明するための説明図である。
図2及び図3に示すように、実施形態1の回転体100は、N極とS極とからなる磁極対2A1が等間隔に並ぶ第1磁気トラック2Aと、磁極対2B1が等間隔に並ぶ第2磁気トラック2Bとが、回転体100の回転軸Xを軸心とする同心のリング状に、径方向に並び設けられている。実施形態1の第1磁気トラック2A及び第2磁気トラック2Bは、例えば回転体100の軸方向の一方の端面にある硬磁性体が、周方向に等間隔でN極及びS極に交互に着磁されることで得られる。具体的に、第1磁気トラック2A及び第2磁気トラック2Bは、例えば図に網がけしてある部分がN極、網がけのない部分がS極といったように、周方向に異なる磁極が交互に等間隔で配されている。図3に示す例において、第1磁気トラック2Aは、12対の磁極対2A1を有している。また、第2磁気トラック2Bは、8対の磁極対2B1を有している。
なお、本実施形態において、第1磁気トラック2Aの磁極対2A1の数と第2磁気トラック2Bの磁極対2B1の数との関係は、図3に示す例に限るものではない。図4に示すように、第1磁気トラック2Aは、32対の磁極対2A1を有していてもよい。また、第2磁気トラック2Bは、31対の磁極対2B1を有していてもよい。すなわち、第1磁気トラック2Aの磁極対2A1の数をP(Pは自然数)としたとき、第2磁気トラック2Bの磁極対2B1の数はP−1となっていてもよい。また、図示しないが、第1磁気トラック2Aの磁極対2A1の数をPとしたとき、第2磁気トラック2Bの磁極対2B1の数はP+1となっていてもよい。第1磁気トラック2Aの磁極対2A1の数がPであり、第2磁気トラック2Bの磁極対2B1の数がP−1(又は、P+1)の場合、回転体100におけるA点の数は1つとなる。
回転体100の端面にある硬磁性体は、必要な磁束密度に応じて、例えば、ネオジム磁石、フェライト磁石、サマリウムコバルト磁石等から構成することが可能である。なお、回転体100自体が硬磁性体であってもよい。
本実施形態では、第1磁気トラック2A及び第2磁気トラック2Bが回転体100の軸方向の一方の端面にあるアキシャル型の構成としている。このような構成とすることで、モータ制御システム1000を軸方向に薄くすることができ、また、中空穴を大きくすることができる。これにより、例えば、内輪回転型や外輪回転型の軸受に適用する、あるいは、中空穴に機器のケーブルを配線する構造に適用することが容易となる。モータ制御システム1000を適用する機器の設計の自由度を高めることができる。
図5及び図6に示すように、実施形態1の第1検出器200Aは、磁気トラック2が設けられた回転体100とギャップを介してアキシャル方向に対向して設けられている。磁気トラック2は、第1磁気トラック2A及び第2磁気トラック2Bを有している。第2検出器200Bは、第1検出器200Aとは異なる位置で、回転体100とギャップを介してアキシャル方向に対向して取り付けられている。より具体的には、第1検出器200Aの第1磁気センサ3Aは、第1磁気トラック2Aに対向し、第1磁気トラック2Aの磁界を検知する。第1検出器200Aの第2磁気センサ3Bは、第2磁気トラック2Bに対向し、第2磁気トラック2Bの磁界を検知する。第1検出器200Aは、回転体100とは同期回転しない固定部位に設けられている。
図7に示すように、第1磁気センサ3Aは、2つの磁気センサ素子3A1、3A2を備える。磁気センサ素子3A1、3A2は、第1磁気トラック2Aの1つの磁極対2A1のピッチを1周期として、電気角で90°の位相差を有するように、磁極対2A1の並び方向に離して配置されている。また、第2磁気センサ3Bは、2つの磁気センサ素子3B1、3B2を備える。磁気センサ素子3B1、3B2は、第2磁気トラック2Bの1つの磁極対2B1のピッチを1周期として、電気角で90°の位相差を有するように、磁極対2B1の並び方向に離して配置されている。
磁気センサ素子3A1、3A2及び磁気センサ素子3B1、3B2としては、例えば、ホール素子、磁気抵抗効果(MR(Magneto Resistance effect))センサなどの磁気センサ素子を用いることができる。磁気抵抗効果センサとしては、AMR(Anisotropic Magneto Resistance)素子、GMR(Giant Magneto Resistance)センサ、TMR(Tunnel Magneto Resistance)センサなどを用いることができる。
第1磁気センサ3Aは、磁極対2A1内の位相に応じた正弦波の信号である第1sin信号sinθ1及び磁極対2A1内の位相に応じた余弦波の信号である第1cos信号cosθ1を出力する。また、第2磁気センサ3Bは、磁極対2B1内の位相に応じた正弦波の信号である第2sin信号sinθ2及び磁極対2B1内の位相に応じた余弦波の信号である第2cos信号cosθ2を出力する。
図1に示すように、第1磁気センサ3Aから出力された第1sin信号sinθ1及び第1cos信号cosθ1は、第1位相検出部5Aに入力される。また、第2磁気センサ3Bから出力された第2sin信号sinθ2及び第2cos信号cosθ2は、第2位相検出部5Bに入力される。
図8は、実施形態1に係るモータ制御システムの各部波形例を示す図である。図8の(a)は、第1磁気トラック2Aの磁極パターンを示している。図8の(b)は、第2磁気トラック2Bの磁極パターンの一例を示している。図8の(c)は、磁気センサ素子3A1から第1位相検出部5Aに入力される第1sin信号sinθ1の波形を示している。図8の(d)は、磁気センサ素子3A2から第1位相検出部5Aに入力される第1cos信号cosθ1の波形を示している。図8の(e)は、磁気センサ素子3B1から第2位相検出部5Bに入力される第2sin信号sinθ2の波形を示している。図8の(f)は、磁気センサ素子3B2から第2位相検出部5Bに入力される第2cos信号cosθ2の波形を示している。図8の(g)は、第1位相検出部5Aから出力される検出位相信号θ1の波形を示している。図8の(h)は、第2位相検出部5Bから出力される検出位相信号θ2の波形を示している。図8の(i)は、位相差検出部6から出力される位相差信号の波形を示している。
図8に示す例では、第1磁気トラック2Aの3つの磁極対2A1からなるa点からb点の区間に対し、第2磁気トラック2Bの2つの磁極対2B1が対応している。すなわち、a点とb点とで、第1磁気センサ3Aの検出信号の位相と第2磁気センサ3Bの検出信号の位相とが一致する。この場合、a点を基準としたb点までの任意位置における絶対角度を検出することができる。このように、第1磁気センサ3Aの検出信号の位相と第2磁気センサ3Bの検出信号の位相とが一致する2点間の絶対角度を検出することができる。
図3に示した例では、第1磁気トラック2Aの磁極対2A1の数を12、第2磁気トラック2Bの磁極対2B1の数を8とし、A点において第1磁気トラック2Aの磁極位相と第2磁気トラック2Bの磁極位相とが一致している。図3において、回転体100におけるA点の数は4つある。回転体100の周方向で隣り合う一対のA点間が、図8に示すa点からb点までの区間に相当する。第1検出器200Aは、第1磁気センサ3Aの検出信号の位相と第2磁気センサ3Bの検出信号の位相とが一致するA点を原点位置として、回転体100の絶対角度を検出することができる。また、第1検出器200Aは、回転体100が90°回転する毎にA点を1回検出する。第1検出器200Aは、A点の検出数をカウントすることで、回転体100の絶対角度を90°以上の範囲でも検出することができる。
また、図4に示した例では、第1磁気トラック2Aの磁極対2A1の数を32(P=32)、第2磁気トラック2Bの磁極対2B1の数を31(P−1=31)とし、A点において第1磁気トラック2Aの磁極位相と第2磁気トラック2Bの磁極位相とが一致している。図4に示す例では、第1検出器200Aは、第1磁気センサ3Aの検出信号の位相と第2磁気センサ3Bの検出信号の位相とが一致するA点を原点位置として、回転体100の全周における絶対角度を検出することができる。また、第1検出器200Aは、回転体100が360°回転する毎にA点を1回検出する。第1検出器200Aは、A点の検出数をカウントすることで、回転体100の絶対角度を360°以上の範囲でも検出することができる。
第1位相検出部5Aは、図8の(c)(d)に例示した入力信号に基づき、図8の(g)に例示した検出位相信号θ1を出力する。具体的には、第1位相検出部5Aは、第1sin信号sinθ1及び第1cos信号cosθ1から磁極対2A1内の位相(θ1=arctan(sinθ1/cosθ1))を算出する。第2位相検出部5Bは、図8の(e)(f)に例示した入力信号に基づき、図8の(h)に例示した検出位相信号θ2を出力する。具体的には、第2位相検出部5Bは、第2sin信号sinθ2及び第2cos信号cosθ2から磁極対2B1内の位相(θ2=arctan(sinθ2/cosθ2))を算出する。
位相差検出部6は、第1位相検出部5A及び第2位相検出部5Bから出力された各検出位相信号θ1、θ2に基づき、図8の(i)に例示した位相差信号を出力する。
角度算出部7は、位相差検出部6で求められた位相差を、予め設定された計算パラメータに従い絶対角度へ換算する処理を行う。角度算出部7で用いられる計算パラメータは、記憶部10に記憶されている。
第1信号生成部8Aは、角度算出部7が出力する絶対角度の情報を、第1出力ポートP1Aを介して上位制御装置500に出力する。図9は、シリアル信号の送信形態を説明するための説明図である。第1信号は、図9に示すようなシリアル信号である。シリアル信号SA、SBには、角度算出部7が出力する絶対角度の情報が含まれている。シリアル信号SCには、モータ制御システム1000に対して、原点であるA点(図3、図4参照)などのステータスに関する情報が含まれている。また、シリアル信号SDには、ビットチェック用の情報が含まれている。
記憶部10には、角度算出部7で用いられる計算パラメータの他に、第1磁気トラック2Aの磁極対2A1の数、第2磁気トラック2Bの磁極対2B1の数、絶対角度基準位置等、モータ制御システム1000の動作に必要な情報が記憶されている。記憶部10としては、例えば、不揮発性メモリが例示される。なお、記憶部10に記憶された計算パラメータや、モータ制御システム1000の動作に必要な情報は、例えば、後述の上位制御装置500から更新可能な構成としてもよい。これにより、モータ制御システム1000の使用状況に応じた設定が可能となる。
図10は、実施形態1に係るモータ制御システムにおける異常処理を説明するためのフローチャートである。図11は、実施形態1のモータ制御システムにおいて、第1検出器及び第1検出器の自己診断を説明するための説明図である。図10に示すように、モータ制御システム1000は、第1検出器200Aが検出した第1回転角度、第2検出器200Bが検出した第2回転角度を算出する(ステップST11)。
具体的には、図1に示す回転算出部501は、第1信号生成部8Aからの第1信号を復号し、第1検出器200Aが検出した回転体100の絶対角度を第1回転角度として記憶部505に記憶する。同様に、図1に示す回転算出部501は、第1信号生成部8Aからの第1信号を復号し、第2検出器200Bが検出した回転体100の絶対角度を第2回転角度として記憶部505に記憶する。
角度比較部502は、記憶部505に記憶された第1回転角度と、第2回転角度との角度差Δθを算出する(ステップST12)。例えば、図5に示すように、回転軸Xの周りに、第1検出器200Aと、第2検出器200Bとが機械角で180°の関係で配置されている場合、角度差Δθが理想的には絶対角度180°になる。しかしながら、角度差Δθには、第1磁気トラック2A、第2磁気トラック2Bに対する第1磁気センサ3A、第2磁気センサ3Bの物理的な位置の誤差、回転体100の偏心等によって検出値に誤差などが含まれることが考えられる。
そこで、図11に示すように、自己診断部504において、角度差Δθと、上限閾値Th1又は下限閾値Th2とを比較し監視する。上限閾値Th1及び下限閾値Th2は、記憶部505に予め記憶されている。角度差Δθが、上限閾値Th1又は下限閾値Th2を超えない場合、自己診断部504は、角度差Δθと、上限閾値Th1又は下限閾値Th2との比較を継続する(ステップST13、No)。
角度差Δθが、上限閾値Th1又は下限閾値Th2を超える場合、自己診断部504は、処理をステップST14に進める(ステップST13、Yes)。
モータ制御システム1000は、異常処理を実行する(ステップST14)。自己診断部504は、異常処理として、異常情報を報知部600に出力し、報知部600が、表示パネルへの表示、光、音、振動の少なくとも1つにより、異常を報知する。
又は、自己診断部504は、異常処理として、異常情報をモータ指令値算出部503へ出力し、モータ指令値算出部503がモータMの回転速度又は回転トルクを徐々に低下させるようにモータ指令値を出力する。その結果、モータMは、回転を停止する。さらに、自己診断部504は、異常処理として、異常情報を報知部600に出力し、報知部600が、表示パネルへの表示、光、音、振動の少なくとも1つにより、異常を報知するようにしてもよい。
あるいは、自己診断部504は、異常処理として、異常情報をモータ指令値算出部503へ出力し、モータ指令値算出部503が所定の回転工程が終了した後、モータMの回転速度又は回転トルクを徐々に低下させるようにモータ指令値を出力する。その結果、モータMは、回転を停止する。さらに、自己診断部504は、異常処理として、異常情報を報知部600に出力し、報知部600が、表示パネルへの表示、光、音、振動の少なくとも1つにより、異常を報知するようにしてもよい。
(実施形態2)
図12は、実施形態2に係るモータ制御システムを説明するための説明図である。上述した実施形態と同じ構成要素には、同じ符号を付して、説明を省略する。図12に示すように、実施形態2に係るモータ制御システム1000は、モータMと、回転体100と、第1検出器200Aと、第2検出器200Bと、モータ駆動回路300と、信号処理部400と、上位制御装置500と、報知部600とを備える。実施形態2において、上位制御装置500には、実施形態1の角度比較部502がなく、角度比較部41が信号処理部400にある。
信号処理部400は、信号生成部8及び角度比較部41を備える。信号処理部400が信号生成部8を備えているので、実施形態2の第1検出器200A及び第2検出器200Bには、信号生成部8がない。
角度比較部41は、第1検出器200Aの角度算出部7からの第1回転角度と、第2検出器200Bの角度算出部7からの第2回転角度との角度差Δθと、図11に示す、上限閾値Th1又は下限閾値Th2とを比較する。角度差Δθが、上限閾値Th1又は下限閾値Th2を超えない場合、自己診断情報Datとして正常の情報を信号生成部8に出力する。角度差Δθが、上限閾値Th1又は下限閾値Th2を超える場合、自己診断情報Datとして異常の情報を信号生成部8に出力する。
信号生成部8において、第1信号生成部8Aが、第1検出器200Aの角度算出部7が出力する絶対角度の情報を、図9に示すシリアル信号SA、SBにする。信号生成部8は、自己診断情報Datの情報を図9に示すシリアル信号SCに含むように変換する。信号生成部8は、第1出力ポートP1Aを介して上位制御装置500に出力する。
図13は、実施形態2に係るモータ制御システムにおける異常処理を説明するためのフローチャートである。図13に示すように、自己診断部504において、シリアル信号の自己診断情報に異常のステータス情報がない場合、自己診断部504は、シリアル信号の監視を継続する(ステップST21、No)。実施形態2において、シリアル信号の自己診断情報に異常のステータス情報がない場合とは、正常の情報がある場合である。
図13に示すように、自己診断部504において、シリアル信号の自己診断情報に異常のステータス情報がある場合、自己診断部504は、処理をステップST22に進める(ステップST21、Yes)。
モータ制御システム1000は、異常処理を実行する(ステップST22)。異常処理の内容は、実施形態1と同様であるので、詳細な説明を省略する。
実施形態2のモータ制御システム1000は、シリアル信号の自己診断情報における異常のステータス情報の有無で、異常処理を実行できる。これにより、上位制御装置500の演算負荷が小さくなり、第1検出器200A又は第2検出器200Bの異常時に、異常処理の開始遅延の時間を短くすることができる。
(実施形態3)
図14は、実施形態3に係るモータ制御システムを説明するための説明図である。上述した実施形態と同じ構成要素には、同じ符号を付して、説明を省略する。図14に示すように、実施形態3に係るモータ制御システム1000は、モータMと、回転体100と、第1検出器200Aと、第2検出器200Bと、モータ駆動回路300と、信号処理部400と、上位制御装置500と、報知部600とを備える。実施形態3において、上位制御装置500には、実施形態1の角度比較部502がなく、第1信号の角度比較部42及び第2信号の角度比較部44が信号処理部400にある。
実施形態3において、第1検出器200A及び第2検出器200Bの信号生成部8は、それぞれ、第1信号生成部8Aと、第2信号生成部8Bとを備える。
図15は、実施形態3に係るモータ制御システムの各部波形例を示す図である。図15の(a)は、第1磁気トラック2Aの磁極パターンを示している。図15の(b)は、第2磁気トラック2Bの磁極パターンの一例を示している。図15の(c)は、磁気センサ素子3A1から第1位相検出部5Aに入力される第1sin信号sinθ1の波形を示している。図15の(d)は、磁気センサ素子3A2から第1位相検出部5Aに入力される第1cos信号cosθ1の波形を示している。図15の(e)は、磁気センサ素子3B1から第2位相検出部5Bに入力される第2sin信号sinθ2の波形を示している。図15の(f)は、磁気センサ素子3B2から第2位相検出部5Bに入力される第2cos信号cosθ2の波形を示している。図15の(g)は、第1位相検出部5Aから出力される検出位相信号θ1の波形を示している。図15の(h)は、第2位相検出部5Bから出力される検出位相信号θ2の波形を示している。図15の(i)は、位相差検出部6から出力される位相差信号の波形を示している。
図15の(j)は、第1sin信号sinθ1を、H(正)又はL(負)で2値化したA相(θ1)信号のパルス波形を示している。図15の(k)は、第1cos信号cosθ1を、H(正)又はL(負)で2値化したB相(θ1)信号のパルス波形を示している。図15の(l)は、Z相(θ1)信号のパルス波形を示している。Z相(θ1)信号は、位相差信号が示す位相差がゼロとなるタイミングでH(正)となり、B相(θ1)信号が立ち下がるタイミングでL(負)となる。
図15の(m)は、A相(θ1)信号、B相(θ1)信号及びZ相(θ1)信号に対応するシリアル信号SAを示している。シリアル信号SAは、A相(θ1)信号、B相(θ1)信号及びZ相(θ1)信号のH、Lの組み合わせや、位相差信号が示す位相差の大きさに対応して、12通りのシリアル信号SA0からSA11を有する。A相(θ1)信号、B相(θ1)信号及びZ相(θ1)信号は第2信号生成部8Bで生成される。シリアル信号SA0からSA11は第1信号生成部8Aで生成される。シリアル信号SA0からSA11は、それぞれ4ビットのシリアルデータで構成される。
図15において、第1磁気トラック2Aの3つの磁極対2A1からなるa点からb点の区間に対し、第2磁気トラック2Bの2つの磁極対2B1が対応している。すなわち、a点とb点とで、第1磁気センサ3Aの検出信号の位相と第2磁気センサ3Bの検出信号の位相とが一致する。この場合、a点を基準としたb点までの任意位置における絶対角度を検出することができる。このように、第1磁気センサ3Aの検出信号の位相と第2磁気センサ3Bの検出信号の位相とが一致する2点間の絶対角度を検出することができる。
第1位相検出部5A(図14参照)は、図15の(c)(d)に例示した入力信号に基づき、図15の(g)に例示した検出位相信号を出力する。具体的には、第1位相検出部5Aは、第1sin信号sinθ1及び第1cos信号cosθ1から磁極対2A1内の位相(θ1=arctan(sinθ1/cosθ1))を算出する。これにより、温度ドリフトの影響が小さくなり、検出精度が向上する。第2位相検出部5Bは、図15の(e)(f)に例示した入力信号に基づき、図15の(h)に例示した検出位相信号を出力する。具体的には、第2位相検出部5Bは、第2sin信号sinθ2及び第2cos信号cosθ2から磁極対2B1内の位相(θ2=arctan(sinθ2/cosθ2))を算出する。これにより、温度ドリフトの影響が小さくなり、検出精度が向上する。
位相差検出部6(図14参照)は、第1位相検出部5A及び第2位相検出部5Bから出力された各検出位相信号θ1、θ2に基づき、図15の(i)に例示した位相差信号を出力する。
角度算出部7は、位相差検出部6で求められた位相差を、予め設定された計算パラメータに従い絶対角度へ換算する処理を行う。角度算出部7で用いられる計算パラメータは、記憶部10に記憶されている。
上述したように、図14に示すように、信号生成部8は、第1信号生成部8Aと、第2信号生成部8Bとを有する。第2信号生成部8Bは、角度算出部7で算出された絶対角度に関する情報(以下、「絶対角度情報」とも言う)として、例えば、互いに90度位相の異なるA相信号及びB相信号と、原点位置を示すZ相信号とで構成されるABZ信号を生成する。そして、第2信号生成部8Bは、生成したABZ信号をそれぞれ出力する。
第1信号生成部8Aは、図15の(m)に示したシリアル信号SA0からSA11を、第1出力ポートP1A、P1Bを介して信号処理部400の第3信号生成部45及び第1信号の角度比較部42に出力する。本実施形態では、シリアル信号が第1信号である。
第2信号生成部8Bは、図15に示したA相(θ1)信号、B相(θ1)信号及びZ相(θ1)信号を含むABZ信号を、第2出力ポートP2A、P2Bを介して信号処理部400のカウンタ43に出力する。本実施形態では、ABZ信号が第2信号である。
図16は、実施形態3に係るモータ制御システムの各部波形に基づいて生成されるABZ信号及びシリアル信号の例を示す図である。図16に示すように、シリアル信号SA0からSA11は、例えば、4bitのシリアルデータで構成される。図16のシリアルデータは、A相(θ1)及びB相(θ1)の立ち上がり、立ち下がりのタイミング毎にインクリメントされる。シリアルデータは、第1磁気センサ3A及び第2磁気センサ3Bが、原点であるA点(図3、図4参照)を検出してからの回転体100(図3、図4参照)の回転角度に対応している。図16に示すように、シリアルデータは、第1磁気センサ3A及び第2磁気センサ3Bが原点を検出するたびにゼロにリセットされる。図16のABZ信号は、A相(θ1)のH、Lのレベルと、B相(θ1)のH、Lのレベルと、Z相(θ1)のH、Lのレベルとの組み合わせで構成される。カウント値(m)は、A相(θ1)のH、Lのレベル、又は、B相(θ1)のH、Lのレベルが切り替わるタイミングをカウントした値である。カウント値(m)は、例えばカウンタ43が生成する。
図17は、実施形態3に係るモータ制御システムの各部波形例を示す図である。図17の(a)から(j)は、図15の(a)から(j)と同じ波形を示している。図17の(j)は、第1sin信号sinθ2を、H(正)又はL(負)で2値化したA相(θ2)信号のパルス波形を示している。図17の(k)は、第1cos信号cosθ2を、H(正)又はL(負)で2値化したB相(θ2)信号のパルス波形を示している。図17の(l)は、Z相(θ2)信号のパルス波形を示している。Z相(θ2)信号は、位相差信号が示す位相差がゼロとなるタイミングでH(正)となり、B相(θ2)信号が立ち下がるタイミングでL(負)となる。
図17の(m)は、A相(θ2)信号、B相(θ2)信号及びZ相(θ2)信号に対応するシリアル信号SBを示している。シリアル信号SBは、A相(θ2)信号、B相(θ2)信号及びZ相(θ2)信号のH、Lの組み合わせや、位相差信号が示す位相差の大きさに対応して、8通りのシリアル信号SB0からSB7を有する。A相(θ2)信号、B相(θ2)信号及びZ相(θ2)信号は第2信号生成部8Bで生成される。シリアル信号SB0からSB7は第1信号生成部8Aで生成される。シリアル信号SB0からSB7は、それぞれ4ビットのシリアルデータで構成される。
図18は、実施形態3に係るモータ制御システムの各部波形に基づいて生成されるABZ信号及びシリアル信号の例を示す図である。図18に示すように、シリアル信号SB0からSB7も、例えば、4bitのシリアルデータで構成される。図18のシリアルデータは、A相(θ2)及びB相(θ2)の立ち上がり、立ち下がりのタイミング毎にインクリメントされる。シリアルデータは、第1磁気センサ3A及び第2磁気センサ3Bが、原点であるA点(図3、図4参照)を検出してからの回転体100(図3、図4参照)の回転角度に対応している。図19に示すように、シリアルデータは、第1磁気センサ3A及び第2磁気センサ3Bが原点を検出するたびにゼロにリセットされる。図18のABZ信号は、A相(θ2)のH、Lのレベルと、B相(θ2)のH、Lのレベルと、Z相(θ2)のH、Lのレベルとの組み合わせで構成される。カウント値(m)は、A相(θ2)のH、Lのレベル、又は、B相(θ2)のH、Lのレベルが切り替わるタイミングをカウントした値である。カウント値(m)は、例えばカウンタ43が生成する。
図9に示すように、第1信号生成部8Aは、シリアル信号SA、SBに、シリアル信号SC、SDを添付して送信する。シリアル信号SCには、モータ制御システム1000のステータスに関する情報が含まれている。例えば、シリアル信号SCには、原点であるA点(図3、図4参照)の情報が含まれている。また、シリアル信号SDには、ビットチェック用の情報が含まれている。
第1信号の角度比較部42は、信号線を介して第1出力ポートP1A、P1Bに接続されている。このように、第1信号の角度比較部42には、第1出力ポートP1A、P1Bから出力されたシリアル信号が入力される。
また、第1信号の角度比較部42は、同一期間に入力されたシリアル信号に基づく、第1検出器200Aの角度算出部7からの第1回転角度と、第2検出器200Bの角度算出部7からの第2回転角度との角度差Δθと、図11に示す、上限閾値Th1又は下限閾値Th2とを比較する。角度差Δθが、上限閾値Th1又は下限閾値Th2を超えない場合、自己診断情報Dat1として正常の情報を第3信号生成部45に出力する。角度差Δθが、上限閾値Th1又は下限閾値Th2を超える場合、自己診断情報Dat1として異常の情報を第3信号生成部45に出力する。
カウンタ43には、第2出力ポートP2A、P2Bから出力されたABZ信号が入力される。カウンタ43は、入力されたABZ信号のZ相(θ1)信号(つまり、原点)を検出してカウントする。また、カウンタ43は、入力されたABZ信号について、A相(θ1)信号のLからHへの立ち上がりと、A相(θ1)信号のHからLへの立ち下がりと、B相(θ1)信号のLからHへの立ち上がりと、B相(θ1)信号のHからLへの立ち下がりとを検出してカウントする。
例えば、Z相(θ1)信号についてのカウント値をnとする。A相(θ1)信号及びB相(θ1)信号についてのカウント値をmとする。カウンタ43は、原点を検出するたびに、カウント値mをゼロにリセットする。カウンタ43が原点を検出してから次の原点を検出するまでの間、カウント値mは回転体100の回転角度に応じて段階的にカウントされる。このため、カウント値m、nは、回転体100の絶対角度情報を含む。カウンタ43は、カウント値m、nを2進数の信号に変換して、第2信号の角度比較部44に出力する。
また、第2信号の角度比較部44には、カウンタ43からABZ信号のカウント値m、nが入力される。第2信号の角度比較部44は、同一期間に入力されたカウント値m同士を比較して、カウント値mとが予め定められた相対関係と一致するか否かを判断する。例えば、図3に示したような第1磁気トラック2Aの磁極対2A1の数と第2磁気トラック2Bの磁極対2B1の数との関係にある場合、カウンタ43が生成したカウント値mとが一致する場合、自己診断情報Dat2として正常の情報を第3信号生成部45に出力する。また、図3に示したような第1磁気トラック2Aの磁極対2A1の数と第2磁気トラック2Bの磁極対2B1の数との関係にある場合、カウンタ43が生成したカウント値mとが一致しない場合、自己診断情報Dat2として異常の情報を第3信号生成部45に出力する。
第3信号生成部45は、自己診断情報Dat1、Dat2の情報をシリアル信号に含むように変換する。第3信号生成部45は、第3出力ポートP3を介して上位制御装置500に出力する。
図13に示すように、自己診断部504において、シリアル信号の自己診断情報Dat1に異常のステータス情報がない場合、自己診断部504は、シリアル信号の監視を継続する(ステップST21、No)。実施形態3において、シリアル信号の自己診断情報に異常のステータス情報がない場合とは、正常の情報がある場合である。
図13に示すように、自己診断部504において、シリアル信号の自己診断情報Dat1に異常のステータス情報がある場合、自己診断部504は、処理をステップST22に進める(ステップST21、Yes)。
モータ制御システム1000は、異常処理を実行する(ステップST22)。異常処理の内容は、実施形態1と同様としてもよい。
実施形態3の自己診断部504は、自己診断情報Dat1及び自己診断情報Dat2を同時に受け取ることができる。自己診断情報Dat1が異常のステータス情報であるが、自己診断情報Dat2が正常のステータス情報である場合、第1検出器200A及び第2検出器200Bの第1信号生成部8A、第1信号の角度比較部42、及びこれらを接続する信号線の異常である信号処理異常と推定される。自己診断部504は、異常処理として、信号処理異常の情報を報知部600に出力し、報知部600が、表示パネルへの表示、光、音、振動の少なくとも1つにより、信号処理異常を報知する。
自己診断情報Dat1及び自己診断情報Dat2が両方とも異常のステータス情報である場合、第1検出器200A又は第2検出器200B自体の故障と推定される。自己診断部504は、異常処理として、第1検出器200A又は第2検出器200B自体の故障の情報を報知部600に出力し、報知部600が、表示パネルへの表示、光、音、振動の少なくとも1つにより、信号処理異常を報知する。
実施形態3のモータ制御システム1000は、シリアル信号の自己診断情報Dat1、Dat2における異常のステータス情報の有無で、異常処理を実行できる。これにより、上位制御装置500の演算負荷が小さくなり、第1検出器200A又は第2検出器200Bの異常時に、異常処理の開始遅延の時間を短くすることができる。
(変形例)
図19は、実施形態3の変形例において、磁気トラックに対する第1検出器及び第2検出器の配置例を示す図である。図20は、実施形態3の変形例に係るモータ制御システムを説明するための説明図である。上述した実施形態と同じ構成要素には、同じ符号を付して、説明を省略する。
図19に示すように、回転軸Xの周りに、2つの第1検出器200Aと、2つの第2検出器200Bとが第1磁気トラック2A及び第2磁気トラック2Bが設けられた回転体100とギャップを介してアキシャル方向に対向して設けられている。回転軸Xの周りに、第1検出器200Aと、第2検出器200Bとが機械角で180°の関係で配置されている。第1検出器200Aと、第2検出器200Bとが機械角で、回転軸Xの周りに、等分配置されていれば、回転軸Xの周りに配置される角度に限定されない。
図20に示すように、モータ制御システム1000は、第1検出器200A及び第2検出器200Bの一方の組と、第1検出器200A及び第2検出器200Bの他方の組とが、信号処理部400に接続されている。第1検出器200A及び第2検出器200Bの構成は、実施形態3と同様であるので、図示を省略する。
回転体100の偏心による誤差成分は、回転軸Xの周りに、第1検出器200Aと、第2検出器200Bとが機械角で180°の関係で配置されていることで、相殺される成分が多い。そこで、上位制御装置500において、回転算出部501は、第1検出器200Aからの第1回転角度と、第2検出器200Bからの第2回転角度との平均値を基準として、回転角度を算出し、この回転角度に基づいて、モータ指令値算出部503がモータ指令値を算出する。これにより、モータMの制御精度を高めることができる。
モータ制御システム1000において、自己診断部504は、第1検出器200A及び第2検出器200Bの一方の組のシリアル信号の自己診断情報に異常のステータス情報があった場合、第1検出器200A及び第2検出器200Bの他方の組のシリアル信号の自己診断情報に異常のステータス情報がない場合、異常処理を実行しない。このため、モータ制御システム1000は、機能継続性が高まり、モータMの駆動中止の頻度を下げることができる。