JP2023135486A - モータ制御装置、モータ制御方法、及び、アブソリュートエンコーダ - Google Patents
モータ制御装置、モータ制御方法、及び、アブソリュートエンコーダ Download PDFInfo
- Publication number
- JP2023135486A JP2023135486A JP2022040730A JP2022040730A JP2023135486A JP 2023135486 A JP2023135486 A JP 2023135486A JP 2022040730 A JP2022040730 A JP 2022040730A JP 2022040730 A JP2022040730 A JP 2022040730A JP 2023135486 A JP2023135486 A JP 2023135486A
- Authority
- JP
- Japan
- Prior art keywords
- offset parameter
- offset
- angle
- angular deviation
- motor control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 18
- 238000004364 calculation method Methods 0.000 claims abstract description 71
- 238000013139 quantization Methods 0.000 claims abstract description 53
- 238000012545 processing Methods 0.000 description 43
- 238000004891 communication Methods 0.000 description 38
- 239000000758 substrate Substances 0.000 description 13
- 238000010586 diagram Methods 0.000 description 12
- 239000011347 resin Substances 0.000 description 10
- 229920005989 resin Polymers 0.000 description 10
- 230000008569 process Effects 0.000 description 9
- 239000000463 material Substances 0.000 description 8
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 6
- 229930182556 Polyacetal Natural products 0.000 description 5
- 238000012937 correction Methods 0.000 description 5
- 229920006324 polyoxymethylene Polymers 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 4
- 239000007769 metal material Substances 0.000 description 4
- 230000005856 abnormality Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 229910000838 Al alloy Inorganic materials 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000696 magnetic material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000005476 soldering Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Landscapes
- Transmission And Conversion Of Sensor Element Output (AREA)
Abstract
【課題】アブソリュートエンコーダにおける最大角度偏差を小さくするためのオフセット値の算出に用いられるパラメータを高精度に記憶する。【解決手段】回転体の角度を示す角度情報と前記回転体を回転させる角度を示す目標位置との偏差を示す角度偏差データに基づいて、前記回転体の角度偏差を小さくするオフセット値の算出に用いられるオフセットパラメータを算出するオフセットパラメータ算出部と、前記オフセットパラメータの記憶に用いられる記憶容量の大きさと、前記オフセットパラメータの値域と、に基づいて前記オフセットパラメータを量子化する量子化部と、を備える。【選択図】図1
Description
本発明は、モータ制御装置、モータ制御方法、及び、アブソリュートエンコーダに関する。
モータ制御装置は、モータの制御を行うために用いられる各種のパラメータを記憶領域に記憶している。
なお、モータ制御装置において、各種のパラメータの記憶領域を確保するために、ビットシフトを行う技術が知られている(例えば、特許文献1または特許文献2参照。)。
ところで、各種のモータ制御装置において、モータの回転軸の絶対的な位置又は角度を検出するために、アブソリュート型のエンコーダ(以下「アブソリュートエンコーダ」という。)が用いられている。アブソリュートエンコーダは、起動時の回転軸の位置(角度)を基準にして、その基準からの回転量で回転軸の位置を検出する。アブソリュートエンコーダは、製造ばらつき等によって、検出される回転軸の位置(角度)と実際の回転軸の位置との間に誤差(以下「角度偏差」という。)が含まれることがある。また、一般に、アブソリュートエンコーダは、起動時の回転軸の位置(以下「起動位置」)を基準、すなわちゼロ点として、その後の回転軸の位置を検出する。このとき、ゼロ点における角度偏差は検出上0[deg]とみなされる。このため、アブソリュートエンコーダにおいて、回転軸の起動位置によって回転軸の角度偏差の基準が異なるため、全角度範囲における角度偏差のうち、その絶対値が最大のもの(以下「最大角度偏差」という。)が変動する。モータの制御において、アブソリュートエンコーダが検出する回転軸の角度偏差が許容値を超えると、モータの脱調や意図しない急加減速などの不具合が発生することがある。このため、モータの制御に用いられるアブソリュートエンコーダは、全角度において角度偏差が許容を超えないことが求められる。アブソリュートエンコーダが検出する角度の最大角度偏差を小さくするために、補正値(以下「オフセット値」という。)を算出方法が提案されている。
しかしながら、オフセット値の算出に用いられる値(パラメータ)は、小数点以下の値を含むため、これらのパラメータを高精度に記憶するためには、大きな記憶領域が必要であった。
本発明は、上述の課題を一例とするものであり、アブソリュートエンコーダにおける最大角度偏差を小さくするためのオフセット値の算出に用いられるパラメータを高精度に記憶する技術を提供することを目的とする。
上記目的を達成するために、本発明に係るモータ制御装置は、回転体の角度を示す角度情報と前記回転体を回転させる角度を示す目標位置との偏差を示す角度偏差データに基づいて、前記回転体の角度偏差を小さくするオフセット値の算出に用いられるパラメータを算出するパラメータ算出部と、前記パラメータの記憶に用いられる記憶容量の大きさと、前記パラメータの値域と、に基づいて前記パラメータを量子化する量子化部と、を備える。
本発明に係るモータ制御装置によれば、アブソリュートエンコーダにおける最大角度偏差を小さくするためのオフセット値の算出に用いられるパラメータを高精度に記憶することができる。
以下、本発明の実施の形態に係るモータ制御装置、モータ制御方法、モータ制御プログラム、及び、アブソリュートエンコーダについて図面を参照しながら説明する。
以下に説明する各実施の形態、変形例では、同一又は同等の構成要素、部材には、同一の符号を付するものとし、適宜重複した説明は省略する。また、各図面における部材の寸法は、理解を容易にするために適宜拡大、縮小して示される。また、各図面において実施の形態を説明する上で重要ではない部材の一部は省略して表示する。また、図面において歯車は歯部形状を省略して示す。また、第1、第2などの序数を含む用語は多様な構成要素を説明するために用いられるが、この用語は一つの構成要素を他の構成要素から区別する目的でのみ用いられ、この用語によって構成要素が限定されるものではない。なお、本実施の形態により本発明が限定されるものではない。
[第1の実施の形態]
本発明の第1の実施の形態に係るモータ制御装置、モータ制御方法、及び、モータ制御プログラムについて説明する。
本発明の第1の実施の形態に係るモータ制御装置、モータ制御方法、及び、モータ制御プログラムについて説明する。
図1は、本発明の実施の形態に係るモータ制御装置100及びアブソリュートエンコーダ200の機能的構成を概略的に示すブロック図である。図2は、アブソリュートエンコーダ200の構成を概略的に示す斜視図である。図3は、アブソリュートエンコーダ200の構成を、ケース4を除いた状態で概略的に示す斜視図である。図3では、アブソリュートエンコーダ200の角度センサ支持基板5が透過されて示される。図4は、アブソリュートエンコーダ200の構成を、角度センサ支持基板5を除いた状態で概略的に示す平面図である。図5は、角度センサ支持基板5を下側から見た平面図である。図6は、アブソリュートエンコーダ200のA-A断面図である。
[アブソリュートエンコーダの構成]
まず、図2から図6に示したアブソリュートエンコーダ200のハードウエア構成について説明する。
まず、図2から図6に示したアブソリュートエンコーダ200のハードウエア構成について説明する。
本実施の形態においては、説明の便宜上、アブソリュートエンコーダ200についてXYZ直交座標系をもとに説明する。X軸方向は水平な左右方向に対応し、Y軸方向は水平な前後方向に対応し、Z軸方向は鉛直な上下方向に対応する。Y軸方向及びZ軸方向は夫々X軸方向に直交する。本実施の形態において、X軸方向を左側或いは右側と、Y軸方向を前側或いは後側と、Z軸方向を上側或いは下側ともいう。図2に示すアブソリュートエンコーダ200の姿勢において、X軸方向における手前側が左側であり、X軸方向における奥側が右側である。また、図2に示すアブソリュートエンコーダ200の姿勢において、Y軸方向における手前側が前側であり、Y軸方向における奥側が後側である。また、図2に示すアブソリュートエンコーダ200の姿勢において、Z軸方向における上側が上側であり、Z軸方向における下側が下側である。Z軸方向で上側から視た状態を平面視と、Y軸方向で前側から視た状態を正面視と、X軸方向で左側から視た状態を側面視という。このような方向の表記はアブソリュートエンコーダ200の使用姿勢を制限するものではなく、アブソリュートエンコーダ200は任意の姿勢で使用され得る。
アブソリュートエンコーダ200は、例えば、モータ1の主軸1aの複数回転にわたる回転角度を特定して出力するアブソリュート型のロータリエンコーダである。
アブソリュートエンコーダ200は内部構造を収容する中空角筒状のケース4を備えている。シールドプレート7は、矩形の板状部材である。シールドプレート7は、ネジによって、外壁部4aの上側の端部に固定されることでケース4を閉蓋する。
モータ1は、一例として、ステッピングモータやDCブラシレスモータであってもよい。一例として、モータ1は波動歯車装置等の減速機構を介して産業用等のロボットを駆動する駆動源として適用されるモータであってもよい。モータ1の主軸1aは上下方向の両側がモータのケースから突出している。
図3及び図5に示すように、角度センサ支持基板5は、平面視で略矩形状を有し、上下方向に薄い板状のプリント配線基板である。図3及び図4に示すように、コネクタ6は、角度センサ支持基板5に接続されており、アブソリュートエンコーダ200と図1に示したモータ制御装置100とを接続するためのものである。
図2から図4に示すように、アブソリュートエンコーダ200は、第1ウォームギア部11(第1駆動歯車)を有する主軸ギア10を含んでいる。また、アブソリュートエンコーダ200は、第1ウォームホイール部21(第1従動歯車)、第2ウォームギア部22(第2駆動歯車)及び第3ウォームギア部28(第3駆動歯車)を有する第1中間ギア20を含んでいる。また、アブソリュートエンコーダ200は、第3ウォームホイール部31(第3従動歯車)及び第1平歯車部32(第4駆動歯車)を有する第2中間ギア30を含んでいる。また、アブソリュートエンコーダ200は、第2ウォームホイール部41(第2従動歯車)を有する第1副軸ギア40と、第2平歯車部51(第3従動歯車)を有する第2副軸ギア50とを含んでいる。また、アブソリュートエンコーダ200は、第1マグネット231と、第1マグネット231に対応する第1センサ221と、第2マグネット232と、第2マグネット232に対応する第2センサ222と、第3マグネット233と、第3マグネット233に対応する第3センサ223と、マイコン210とを含んでいる。
図4、及び図6に示すように、モータ1の主軸1aは、モータ1の出力軸であり、アブソリュートエンコーダ200に回転力を伝達する入力軸である。主軸ギア10は、モータ1の主軸1aに固定されており、主軸1aと一体にモータ1の軸受部材によって回転可能に支持されている。第1ウォームギア部11は、モータ1の主軸1aの回転に従って回転するように、主軸ギア10の外周に設けられている。主軸ギア10において、第1ウォームギア部11は、その中心軸が主軸1aの中心軸と一致又は略一致するように設けられている。主軸ギア10は、樹脂材料や金属材料など種々の材料から形成することができる。主軸ギア10は、例えばポリアセタール樹脂から形成されている。
図3、及び図4に示すように、第1中間ギア20は、主軸ギア10の回転を、第1副軸ギア40及び第2中間ギア30に伝えるギア部である。第1中間ギア20は、軸23によってギアベース部3に略平行に伸びる回転軸線の周りに軸支されている。第1中間ギア20は、その回転軸線の方向に延伸する略円筒形状の部材である。第1中間ギア20は、第1ウォームホイール部21と、第2ウォームギア部22と、第3ウォームギア部28とを含み、内部に貫通孔が形成され、この貫通孔に軸23が挿通されている。この軸23をギアベース部3に設けられた第1中間ギア軸支部27に挿通することで、第1中間ギア20が軸支されている。第1ウォームホイール部21、第2ウォームギア部22、及び第3ウォームギア部28は、この順で互いに離れた位置に配置される。第1中間ギア20は、樹脂材料や金属材料など種々の材料から形成することができる。第1中間ギア20は、ポリアセタール樹脂から形成されている。
図4に示すように、第1ウォームホイール部21は第1中間ギア20の外周に設けられている。第1ウォームホイール部21は、第1ウォームギア部11と噛み合い、第1ウォームギア部11の回転に従って回転するように設けられている。第1ウォームホイール部21と第1ウォームギア部11との軸角は90°又は略90°に設定されている。
第2ウォームギア部22は、第1ウォームホイール部21とともに第1中間ギア20の外周に設けられており、第1ウォームホイール部21の回転に伴って回転するようになっている。第1中間ギア20において、第2ウォームギア部22は、その中心軸が第1ウォームホイール部21の中心軸と一致又は略一致するように設けられている。
図4に示すように、第3ウォームギア部28は第1中間ギア20の外周に設けられており、第1ウォームホイール部21の回転に伴って回転するようになっている。第1中間ギア20において、第3ウォームギア部28は、その中心軸が第1ウォームホイール部21の中心軸と一致又は略一致するように設けられている。
図4に示すように、第1副軸ギア40は、主軸1aの回転に従い、減速されて第2マグネット232と一体となって回転する。第1副軸ギア40は、ギアベース部3から略垂直に突出する軸により軸支され、第2ウォームホイール部41と、第2マグネット232を保持する保持部と、を含む平面視で略円形状の部材である。第1副軸ギア40は、樹脂材料や金属材料など種々の材料から形成することができる。第1副軸ギア40は、ポリアセタール樹脂から形成されている。
第2ウォームホイール部41は、第1副軸ギア40の外周に設けられており、第2ウォームギア部22と噛み合い、第2ウォームギア部22の回転に従って回転するように設けられている。第2ウォームホイール部41と第2ウォームギア部22との軸角は90°又は略90°に設定されている。第2ウォームホイール部41の回転軸線は、第1ウォームギア部11の回転軸線と平行又は略平行に設けられている。
図4に示すように、第2中間ギア30は、主軸1aの回転に従って回転し、主軸1aの回転を減速して第2副軸ギア50に伝える円盤状のギア部である。第2中間ギア30は、第2ウォームギア部22と、第2副軸ギア50に設けられる第2平歯車部51との間に設けられる。第2平歯車部51は、第1平歯車部32と噛み合う。第2中間ギア30は、第1中間ギア20の第3ウォームギア部28と噛み合う第3ウォームホイール部31と、第2平歯車部51を駆動する第1平歯車部32とを有する。第2中間ギア30は、例えば、ポリアセタール樹脂で形成されている。第2中間ギア30は、平面視で略円形状の部材である。第2中間ギア30は、ギアベース部3に軸支されている。
第3ウォームホイール部31は、第2中間ギア30の外周に設けられており、第3ウォームギア部28と噛み合い、第3ウォームギア部28の回転に従って回転するように設けられている。第1平歯車部32は、第2中間ギア30の外周にその中心軸が第3ウォームホイール部31の中心軸と一致又は略一致するように設けられている。第1平歯車部32は、第2平歯車部51と噛み合い、第3ウォームホイール部31の回転に従って回転するように設けられている。第3ウォームホイール部31及び第1平歯車部32の回転軸線は、第1ウォームギア部11の回転軸線と平行又は略平行に設けられている。
第2副軸ギア50は、主軸1aの回転に従って回転し、主軸1aの回転を減速して第3マグネット233に伝える、平面視で円形状のギア部である。第2副軸ギア50は、ギアベース部3から略垂直に伸びる回転軸線周りに軸支されている。第2副軸ギア50は、第2平歯車部51と、第3マグネット233を保持する磁石保持部とを含む。
第2平歯車部51は、第2副軸ギア50の外周にその中心軸が第1平歯車部32の中心軸と一致又は略一致するように設けられている。第2平歯車部51は、第1平歯車部32と噛み合い、第3ウォームホイール部31の回転に従って回転するように設けられている。第2平歯車部51の回転軸線は、第1平歯車部32の回転軸線と平行又は略平行に設けられている。第2副軸ギア50は、樹脂材料や金属材料など種々の材料から形成することができる。第2副軸ギア50は、ポリアセタール樹脂から形成されている。
ここで、第1ウォームホイール部21が第1ウォームギア部11に噛み合うために、第1ウォームホイール部21が第1ウォームギア部11に向かう方向を第1噛み合い方向P1(図4の矢印P1方向)とする。同様に、第2ウォームギア部22が第2ウォームホイール部41に噛み合うために、第2ウォームギア部22が第2ウォームホイール部41に向かう方向を第2噛み合い方向P2(図4の矢印P2方向)とする。さらに、第3ウォームギア部28が第3ウォームホイール部31に噛み合うために、第3ウォームギア部28が第3ウォームホイール部31に向かう方向を第3噛み合い方向P3(図4の矢印P3方向)とする。本実施の形態においては、第1噛み合い方向P1、第2噛み合い方向P2、及び第3噛み合い方向P3は共に水平面(XY平面)に沿う方向となっている。
第1マグネット231は、主軸ギア10の上面に双方の中心軸が一致又は略一致するように固定される。第1マグネット231は、ホルダ部16を介して主軸ギア10の中心軸に設けられているマグネット支持部17に支持されている。ホルダ部16は、アルミニウム合金などの非磁性体により形成されている。ホルダ部16の内周面は、第1マグネット231の径方向における外周面に接してこの外周面を保持するように、第1マグネット231の外径や外周面の形状に対応して、例えば、環状に形成されている。また、マグネット支持部17の内周面は、ホルダ部16の外周面に接するように、ホルダ部16の外径や外周面の形状に対応して、例えば、環状に形成されている。第1マグネット231は、主軸ギア10の回転軸線に対して垂直な方向に並んだ2極の磁極を有している。
図3及び図5に示すように、第1センサ221は、主軸ギア10の回転角度を検知するために、その下面が隙間を介して第1マグネット231の上面に上下方向に対向するように、角度センサ支持基板5の下面5aに設けられる。一例として、第1センサ221は、アブソリュートエンコーダ200の後述するギアベース部3に配設された基板支柱110によって支持されている角度センサ支持基板5に固定されている。
第2マグネット232は、第1副軸ギア40の上面に双方の中心軸が一致又は略一致するように固定されている。第2マグネット232は、第1副軸ギア40の回転軸線に対して垂直な方向に並んだ2極の磁極を有している。図3に示すように、第2センサ222は、第1副軸ギア40の回転角度を検知するために、その下面が隙間を介して第2マグネット232の上面に上下方向に対向するように設けられる。一例として、第2センサ222は、第1センサ221が固定された角度センサ支持基板5に、第1センサ221が固定される面と同一の面において固定されている。
第3マグネット233は、第2副軸ギア50の上面に双方の中心軸が一致又は略一致するように固定されている。第3マグネット233は、第2副軸ギア50の回転軸線に対して垂直な方向に並んだ2極の磁極を有している。図3に示すように、第3センサ223は、第2副軸ギア50の回転角度を検知するために、その下面が隙間を介して第3マグネット233の上面に上下方向に対向するように設けられる。一例として、第3センサ223は、アブソリュートエンコーダ200の後述するギアベース部3に配設された基板支柱110によって支持されている角度センサ支持基板5に固定されている。
[アブソリュートエンコーダによる角度情報の出力処理]
次に、アブソリュートエンコーダ200における、主軸1aの角度情報の出力処理について説明する。図1に示すように、アブソリュートエンコーダ200は、マイコン210、第1センサ221、第2センサ222、第3センサ223、第1マグネット231、第2マグネット232、及び第3マグネット233を備える。
次に、アブソリュートエンコーダ200における、主軸1aの角度情報の出力処理について説明する。図1に示すように、アブソリュートエンコーダ200は、マイコン210、第1センサ221、第2センサ222、第3センサ223、第1マグネット231、第2マグネット232、及び第3マグネット233を備える。
第1マグネット231、第2マグネット232、及び第3マグネット233は、後述する主軸ギア10、第1副軸ギア40、及び、第2副軸ギア50の回転角度を検出するための永久磁石である。
第1センサ221は、第1マグネット231の磁極を検知し、検知した磁界の強さに応じた電圧値をマイコン210に出力する。マイコン210は、入力された電圧値に基づいて第1マグネット231の回転角度を特定することにより、主軸ギア10の回転角度、つまり主軸1aの回転角度を特定する。主軸1aの回転角度の分解能は第1センサ221の分解能に対応する。マイコン210は、特定された第1副軸ギア40の回転角度及び特定された主軸1aの回転角度に基づいて主軸1aの回転角度を特定し、これを出力する。マイコン210は、一例としてモータ1の主軸1aの回転角度をデジタル信号として出力するようにしてもよい。
第2センサ222は、第2ウォームホイール部41の回転角度、すなわち第1副軸ギア40の回転角度を検知する。第2センサ222は、第2マグネット232の磁極を検知し、検知した磁界の強さに応じた電圧値をマイコン210に出力する。マイコン210は、入力された電圧値に基づいて第2マグネット232の回転角度、つまり第1副軸ギア40の回転角度を特定する。
第3センサ223は、第2平歯車部51の回転角度、すなわち第2副軸ギア50の回転角度を検知する。第3センサ223は、第3マグネット233の磁極を検知し、検知した磁界の強さに応じた電圧値をマイコン210に出力する。マイコン210は、入力された電圧値に基づいて第3マグネット233の回転角度、つまり第2副軸ギア50の回転角度を特定する。
マイコン210は、アブソリュートエンコーダ200に設けられたマイクロコントローラである。マイコン210は、プログラムを実行することにより、各機能部として動作する。マイコン210は、第1センサ221から入力された磁界の強さに応じた電圧値に基づいて第1マグネット231の回転角度を特定することにより、主軸ギア10の回転角度、つまり主軸1aの回転角度を特定する。主軸1aの回転角度の分解能は第1センサ221の分解能に対応する。マイコン210は、特定された第1副軸ギア40の回転角度及び特定された主軸1aの回転角度に基づいて主軸1aの回転角度を特定し、これを出力する。マイコン210は、一例としてモータ1の主軸1aの回転角度をデジタル信号として出力するようにしてもよい。
第1センサ221~第3センサ223には比較的分解能が高い磁気式角度センサを使用してもよい。磁気式角度センサは、例えば、それぞれの回転体の軸方向において、第1マグネット231~第3マグネット233の磁極を含む端面と、一定の隙間を介して対向配置される。アブソリュートエンコーダ200において、第1センサ221~第3センサ223に用いられる磁気式角度センサの構成には限定されない。例えば、磁気式角度センサは、それぞれの回転体の外周方向において、第1マグネット231~第3マグネット233のそれぞれの磁極を含む端面と、一定の隙間を介して対向配置される構成であってもよい。磁気式角度センサは、第1マグネット231~第3マグネット233の磁極の回転に基づいて変動する磁界の強さを物理量として検出することで、対向する回転体の回転角度を特定してデジタル信号を出力する。磁気式角度センサは、一例として、磁極を検知する検知素子と、この検知素子の出力に基づいてデジタル信号を出力する演算回路と、を含む。検知素子は、例えばホールエレメントやGMR(Giant Magneto Resistive)エレメントなどの磁界検知要素を複数(例えば4つ)含んでもよい。なお、第1センサ221~第3センサ223は磁界の向き(ベクトル)を物理量として検出するように構成されても良い。
マイコン210は、例えば複数の検知素子の出力の差や比をキーとしてルックアップテーブルを用いてテーブル処理によって回転角度を特定するようにしてもよい。この検知素子と演算回路とは一つのICチップ上に集積されてもよい。このICチップは薄型の直方体形状の外形を有する樹脂中に埋め込まれてもよい。第1センサ221~第3センサ223は、不図示の配線部材を介して検知した各回転体の回転角度に対応するデジタル信号である角度信号をマイコン210に出力する。例えば、第1センサ221~第3センサ223は各回転体の回転角度を複数ビット(例えば7ビット)のデジタル信号として出力する。
マイコン210は、はんだ付けや接着などの方法により、角度センサ支持基板5に固定されている。マイコン210は、CPU(Central Processing Unit)で構成され、第1センサ221~第3センサ223のそれぞれから出力される回転角度を表すデジタル信号を取得し、主軸ギア10の回転角度を演算する。
図1に示すマイコン210の各ブロックは、マイコン210としてのCPUがプログラムを実行することによって実現されるファンクション(機能)を表したものである。図1に示すように、マイコン210は、角度情報生成部211、及び、通信部212を備える。マイコン210の各ブロックは、ハードウエア的には、コンピュータのCPUやRAM(Random Access Memory)をはじめとする素子や機械装置で実現でき、ソフトウエア的にはコンピュータプログラム等によって実現される。ここでは、それらの連携によって実現される機能ブロックを描いている。従って、これらの機能ブロックはハードウエア、ソフトウエアの組み合わせによっていろいろなかたちで実現できることは、本明細書に触れた当業者には理解されるところである。
角度情報生成部211は、第1センサ221から出力される電圧値に基づいて、主軸ギア10、つまり、主軸1aの回転角度を示す情報(以下「角度情報」という。)を生成する。角度情報生成部211は、第2センサ222から出力される電圧値に基づいて、第1副軸ギア40の角度情報を生成する。角度情報生成部211は、第3センサ223で検知される電圧値に基づいて、第2副軸ギア50の回転角度を示す角度情報である角度情報を生成する。
通信部212は、モータ1の制御を行うモータ制御装置100に対して、角度情報生成部211が生成した角度情報を出力する。
[モータ制御装置]
モータ制御装置100は、アブソリュートエンコーダ200から出力された回転角度に基づいてモータ1の動作制御を行う。図1に示すように、モータ制御装置100は、アブソリュートエンコーダ200から取得したモータ1の主軸1aの複数回転にわたる角度情報と、外部機器から取得したモータ1の駆動指令とに基づいて、モータ1の駆動電流を制御する。
モータ制御装置100は、アブソリュートエンコーダ200から出力された回転角度に基づいてモータ1の動作制御を行う。図1に示すように、モータ制御装置100は、アブソリュートエンコーダ200から取得したモータ1の主軸1aの複数回転にわたる角度情報と、外部機器から取得したモータ1の駆動指令とに基づいて、モータ1の駆動電流を制御する。
しかしながら、アブソリュートエンコーダ200によって特定される回転角度には、主軸1aの位置(角度)に応じた固有の角度偏差が含まれる。固有の角度偏差は、アブソリュートエンコーダ200毎に異なる。固有の角度偏差はアブソリュートエンコーダ200の製造ばらつきによって生じる。製造ばらつきは、例えば歯車などの部品の組み立て、アブソリュートエンコーダ200において回転軸の位置検出に用いられる第1マグネット231~第3マグネット233や第1センサ221~第3センサ223の位置関係等の製造工程で含まれるばらつきである。
図7は、アブソリュートエンコーダ200における主軸1aの1回転における角度偏差の一例を示すグラフである。図7に示す角度偏差の波形Ar1において、横軸が主軸1aの回転角度を示し、縦軸が回転体の一例である主軸1aを回転させることで生成された角度によって示される角度と、主軸1aの実際の角度と、の角度偏差を示す。アブソリュートエンコーダ200において、主軸1aの角度偏差は、主軸1aの1回転(360°)に亘る。
アブソリュートエンコーダ200は、起動時のモータ1の主軸1aの起動位置を基準(ゼロ点)として、その後の主軸1aの位置を検出する。図7に示した角度偏差の波形Ar1において、主軸1aの基準は、0[deg]である。図7に示した角度偏差の波形Ar1において、主軸1aの1回転における最大角度偏差は、0.224[deg]である。
図8は、アブソリュートエンコーダ200において、主軸1aの基準が72[deg]である場合における、角度偏差の波形Ar2の一例を示すグラフである。図8において、横軸は主軸1aの回転角度を示す。また、図8において、縦軸は主軸1aの回転角度に対応する角度偏差の値を示す。図8には、主軸1aの基準が72[deg]の角度偏差の波形Ar2とともに、比較のために図7に示した基準が0[deg]の角度偏差の波形Ar1を示している。角度偏差の波形Ar2において、最大角度偏差は、0.160[deg]である。図7に示すように、アブソリュートエンコーダ200において、基準が0[deg]の角度偏差の波形Ar1と、基準が72[deg]の角度偏差Ar2とを比較すると、起動位置の相違により0.064[deg]の最大角度偏差の差異が生じる。つまり、アブソリュートエンコーダ200において、主軸1aの起動位置によって主軸1aの基準となる角度偏差の値が異なる。このため、アブソリュートエンコーダ200において、主軸1aの起動位置が異なる場合、最大角度偏差が変動することが考えられる。
回転式のアブソリュートエンコーダは、主軸1aが1回転することにより生じる角度偏差は、主軸1aが1回転することで元に戻る周期性を有する。従って、主軸1aの角度偏差成分は、フーリエ変換を行うことにより、その大きさ(振幅)を算出することができる。そこで、アブソリュートエンコーダ200において、マイコン210によって実現されるオフセット値算出部122が、起動時の主軸1aの角度情報と、角度偏差に基づいて算出される所定の係数(例えば、フーリエ係数)とから、最大角度偏差が最小となるようにオフセット値を決定する。このような処理を行うことにより、アブソリュートエンコーダ200は、起動時の主軸1aの位置によらず角度情報の最大角度偏差を抑制することができる。
図9は、主軸1aの基準が0[deg]である場合における補正後の角度偏差の波形Ar3を示すグラフである。図9に示すように、補正後の角度偏差の波形Ar3の最大角度偏差は0.137[deg]である。補正後の角度偏差の波形Ar3の最大角度偏差は、図10に示した角度偏差の波形Ar1の最大角度偏差(0.224[deg])と比較して抑制されている。
図10は、主軸1aの基準が72[deg]である場合における補正後の角度偏差の波形Ar4を示すグラフである。図10に示すように、補正後の角度偏差の波形Ar4の最大角度偏差は0.137[deg]である。補正後の角度偏差の波形Ar4の最大角度偏差は、図8に示した角度偏差の波形Ar2の最大角度偏差(0.160[deg])と比較して抑制されている。
モータ制御装置100では、以上のように角度偏差の最大値を抑制するために、オフセット値の算出処理を実行する。
モータ制御装置100は、第1通信部101、第2通信部102、演算部103、モータ駆動回路104を備える。
第1通信部101は、不図示の外部機器と通信する。第1通信部101は、外部機器が出力したモータ1の駆動指令を取得する。第1通信部101は、取得したモータ1の駆動指令を演算部103により実現される駆動指令取得部111に出力する。
第2通信部102は、アブソリュートエンコーダ200と通信する。第2通信部102は、アブソリュートエンコーダ200が出力したモータ1の主軸1aの角度情報を取得する。第2通信部102は、取得した主軸1aの角度情報を演算部103により実現される位置制御部112、速度取得部113、角度偏差データ生成部117、及び、オフセット処理部123に出力する。
演算部103は、駆動指令取得部111、位置制御部112、速度取得部113、速度制御部114、電流制御部115、制御信号生成部116、角度偏差データ生成部117、オフセットパラメータ算出部118、量子化部119、記憶部120、オフセットパラメータ復元部121、オフセット値算出部122、及び、オフセット処理部123の機能を実現する。図1に示す演算部103の各ブロックは、演算部103のCPUがプログラムを実行することによって実現されるファンクション(機能)を表したものである。演算部103の各ブロックは、ハードウエア的には、コンピュータのCPUやRAM(Random Access Memory)をはじめとする素子や機械装置で実現でき、ソフトウエア的にはコンピュータプログラム等によって実現される。ここでは、それらの連携によって実現される機能ブロックを描いている。従って、これらの機能ブロックはハードウエア、ソフトウエアの組み合わせによっていろいろなかたちで実現できることは、本明細書に触れた当業者には理解されるところである。
駆動指令取得部111は、第1通信部101が取得したモータ1の駆動指令を取得し、位置制御部112に出力する。駆動指令は、例えばモータ1の動作における主軸1aの位置(角度)を指令する情報である。なお、本実施形態において、駆動指令は外部から入力されるものとして説明するが、モータ制御装置100内部で生成されるように構成されてもよい。
位置制御部112は、駆動指令取得部111から取得したモータ1の駆動指令、及び、第2通信部102から取得した角度情報に基づいて、モータ1の主軸1aの目標となる位置(目標位置)を算出する。位置制御部112は、算出した主軸1aの目標位置を速度制御部114に出力する。位置制御部112は、主軸1aの目標位置を角度偏差データ生成部117に出力する。
速度取得部113は、第2通信部102から取得した角度情報に基づいて、モータ1の主軸1aの回転速度を取得する。速度取得部113は、取得した主軸1aの回転速度を速度制御部114に出力する。
速度制御部114は、位置制御部112から取得した主軸1aの目標位置、及び、速度取得部113から取得した主軸1aの回転速度に基づいて、主軸1aの目標速度を制御する。速度制御部114は、主軸1aの目標速度を電流制御部115に出力する。
電流制御部115は、速度制御部114から取得した主軸1aの目標速度に基づいて、モータ1の駆動電流の目標値(目標電流)を制御する。電流制御部115は、目標電流を制御信号生成部116に出力する。
制御信号生成部116は、電流制御部115から取得した目標電流に応じて、モータ駆動回路104を制御する制御信号を生成する。制御信号生成部116は、制御信号をモータ駆動回路104に出力する。
角度偏差データ生成部117は、第2通信部102から取得した角度情報、及び、位置制御部112から取得した目標位置、に基づいて、アブソリュートエンコーダ200の起動時に検出された主軸1aの角度情報における角度偏差データを生成する。角度偏差データは、回転体の角度を示す角度情報と回転体を回転させる角度を示す目標位置との偏差を示す。
オフセットパラメータ算出部118は、角度偏差データに基づいて、回転体の角度偏差を小さくするオフセット値の算出に用いられる係数であるオフセットパラメータを算出する。オフセットパラメータは、例えば、角度偏差データをフーリエ変換することにより得られるフーリエ係数である。オフセットパラメータ算出部118は、算出したオフセットパラメータを量子化部119に出力する。
オフセットパラメータ算出部118は、角度偏差データ生成部117が生成した角度偏差データから、主軸1aの角度情報のサイン成分のフーリエ係数Fsn、及び、コサイン成分のフーリエ係数Fcnを算出する。オフセット値算出部122は、例えば、記憶部120の記憶領域にフーリエ係数Fsn及びフーリエ係数Fcnを記憶させておき、角度情報に対応するオフセット値を特定してもよい。
量子化部119は、オフセットパラメータの記憶に用いられる記憶容量の大きさと、オフセットパラメータの値域と、に基づいて、オフセットパラメータ算出部118から取得したオフセットパラメータを量子化する。具体的には、量子化部119は、オフセットパラメータを記憶するために確保されたビット数と、ビットシフト可能な数と、に基づいて決定される離散値によりオフセットパラメータを量子化する。また、量子化部119は、オフセットパラメータを記憶するために確保されたビット数のうち、オフセットパラメータの整数値の記憶に必要なビット数を最上位のビット側にビットシフトしてオフセットパラメータを量子化する。ビットシフト可能なビット数は、オフセットパラメータを記憶するために確保されたビット数から、オフセットパラメータの整数値の記憶に必要なビット数を減ずることにより求められる。量子化部119は、量子化したオフセットパラメータを記憶部120に記憶する。
量子化部119が実行するオフセットパラメータの量子化処理について、詳細に説明する。オフセット値算出部122が実行するオフセット値の算出処理に用いられるオフセットパラメータは、小数点を有する数値である。このため、モータ制御装置100において、オフセットパラメータを高精度で記憶する場合には、記憶部120に大きな記憶領域が必要である。例えば、回転軸の一回転に相当する角度(+-0~360°)の整数値を記憶するには10ビットの記憶領域が必要である。オフセットパラメータの小数点以下の数値を記憶部120に記憶するためには、さらに多くのビット数が必要である。
例えば、回転軸の一回転に相当する角度を小数点第3位まで(+-0~360.000°)記憶するには、
log2(360000*2)=19.45
から、最低20ビットの記憶領域が必要である。
log2(360000*2)=19.45
から、最低20ビットの記憶領域が必要である。
オフセットパラメータの整数値は非常に小さいので、整数領域を表す値域は小さくてよい。このため、整数領域を記憶するために10ビットも不要である。モータ制御装置100において、量子化部119は、オフセットパラメータの整数領域の記憶に用いられないビット数を小数点の記憶に活用することにより、記憶部120におけるオフセットパラメータの記憶領域を圧縮(量子化)する。
量子化部119は、必要ない整数値域を表すビットを左ビットシフトすることで、小数領域用のビットを確保する。つまり、量子化部119は、オフセットパラメータがとりうる整数値域を表せるだけのビット数を確保するように、オフセットパラメータを量子化する。
図11は、オフセットパラメータに用いられるビットの値域における割り当ての一例を示す図である。
図11において、左端のビットB1は、正負の符号を示す符号ビットB1である。このため、図11において、オフセットパラメータの数値の記憶には、符号ビットB1を除く9ビットを用いることができる。
ところで、オフセットパラメータの整数値が±0~2未満の範囲の場合に、整数値の記憶に用いられるビット数は、図11における右端のビットB2の2ビットである。このため、オフセットパラメータの数値の記憶に割り当てられるビット数のうち、ビットB3の7ビット分が整数値の記憶に用いられない。従って、モータ制御装置100において、整数値の記憶に必要なビット数を確保して量子化して、整数値の記憶に用いられないビットB3を小数値の記憶領域に用いることができれば、記憶部120の記憶容量を節約することができる。
量子化部119において、ビットシフト可能なビット数は、オフセットパラメータを記憶するために確保されたビット数から、整数値の記憶に必要なビット数を減ずることで求められる。オフセットパラメータを記憶するために確保されたビット数は、データ型の種類やモータ制御装置100における演算部103のシステム設計等により、予め定められる。
整数値の記憶に必要なビット数は、モータ1の構造によって求められる。モータ1が基本ステップ数が100のステッピングモータである場合を一例として、オフセットパラメータの整数値の記憶に必要なビット数を求める。角度偏差は、360/(極数*2)から、+-1.8degの範囲で生じる。角度偏差が、基本ステップ数から想定し得る数値を超える場合には、モータ1の脱調や、アブソリュートエンコーダ200の故障など、角度偏差以外の異常があるということが自明である。
オフセットパラメータは、上述したように角度偏差データのフーリエ係数である。フーリエ係数のサイン及びコサインの各成分の数値は、角度偏差の数値を超えることはない。オフセットパラメータの数値も、角度偏差の数値を超えることはない。このため、オフセットパラメータの数値も、±1.8degの範囲に収まる。従って、各オフセットパラメータの整数値を記憶するために必要なビット数は、符号ビットを含めて3ビットである。
以上より、オフセットパラメータを記憶するために確保されたビット数が10ビットである場合に、ビットシフト可能なビット数は、10-3=7ビットである。
従って、量子化部119は、整数値の記憶に用いられるビットB2を、7ビット分左ビットシフトすればよい。
モータ1が電気角72[deg]のサーボモータである場合を別の一例として、オフセットパラメータの整数値の記憶に必要なビット数を求める。モータ1が電気角72[deg]のサーボモータである場合、角度偏差は、構造的に最大で±36[deg]未満の範囲で生じる。この場合に、仮にこれ以上の角度偏差が検出された場合には、アブソリュートエンコーダ200の検出誤差以外の異常(断線や欠相など)があると判断できる。
従って、モータ1が電気角72[deg]のサーボモータである場合には、検出角度偏差が最大で±36[deg]を示し、角度偏差が例えばsinθ成分のみで表される場合、sinθの振幅が取りうる最大の絶対値である36[deg]をパラメータの値域とすればよいので、必要な値域は36[deg]である。この場合、
360/36=10,log210=3.32…
から、ビットシフト可能なビット数は3である。
360/36=10,log210=3.32…
から、ビットシフト可能なビット数は3である。
図12は、ビットシフト後のオフセットパラメータに用いられるビットの値域における割り当ての一例を示す図である。図11と同様に、図12において、左端のビットB1が、正負の符号を示す符号ビットB1であり、整数値の記憶に用いられるビット数が、符号ビットB1の右隣のビットB2である。図12において、ビットB2の右隣のビットB4が、ビットシフトによりオフセットパラメータの小数値の記憶に用いることが可能になった7ビットである。
量子化部119は、1ビットあたりの離散値を算出して、オフセットパラメータを量子化する。具体的には、量子化部119は、式(1)に基づいて、1ビットあたりの離散値Dを求める。式(1)において、Nがオフセットパラメータ記憶のために確保されたビット数、Mがビットシフト可能なビット数、である。
360/2(N-1+M)=D・・・式(1)
量子化部119は、下記の式(2)で示すように、オフセットパラメータFを1ビットあたりの離散値Dで除算することで、量子化されたオフセットパラメータQを得る。
F/D=Q・・・式(2)
図11に示したように、正負の符号を示す符号ビットB1を除いて9ビットをオフセットパラメータの数値の記憶に用いることができる例において、ビットシフトしない場合に、1ビットあたりの離散値は、式(1)から、
360/29=360/512=0.703…
から、0.7[deg/digit]と求められる。
360/29=360/512=0.703…
から、0.7[deg/digit]と求められる。
オフセットパラメータ算出部118が算出したオフセットパラメータFが+0.5[deg]であるとして、式(2)により、四捨五入で量子化したオフセットパラメータQを算出すると、
Q=0.5/0.703=0.711…
から、Qの近似値が1[digit]となる。
Q=0.5/0.703=0.711…
から、Qの近似値が1[digit]となる。
量子化したオフセットパラメータQの近似値(1[digit])を復号すると、
1*0.703=0.703...[deg]
1*0.703=0.703...[deg]
上述したように、算出されたオフセットパラメータは0.5[deg]である。このため、ビットシフトを行わないでオフセットパラメータを量子化した場合、桁落ちによる誤差は、
0.711-0.5=0.211[deg]となる。
0.711-0.5=0.211[deg]となる。
一方、図11の例について、ビットシフトする場合に、4桁を左ビットシフトすると、1digitあたりの分解能が24=16倍になる。
式(1)より、オフセットパラメータの1ビットあたりの離散値Dは、
D-=360/2(9+4)=720/16384=0.0439…
から、Dの近似値が0.044[deg/digit]となる。
D-=360/2(9+4)=720/16384=0.0439…
から、Dの近似値が0.044[deg/digit]となる。
この記憶領域にオフセットパラメータF+0.5[deg]を式(2)により四捨五入で量子化してQを得ると、
Q=0.5/0.044=11.389…
から、Qの近似値が11[digit]となる。
Q=0.5/0.044=11.389…
から、Qの近似値が11[digit]となる。
この量子化したオフセットパラメータQを復号すると、
0.044*11=0.484[deg]となる。
0.044*11=0.484[deg]となる。
以上より、ビットシフトを行った場合における、オフセットパラメータを量子化した場合、桁落ちによる誤差は、
0.484-0.5=-0.016、となる。
0.484-0.5=-0.016、となる。
記憶部120は、オフセット値の算出に必要な情報を記憶する。記憶部120に記憶される情報は、例えば、各種のプログラム、オフセットパラメータの量子化に必要な情報(例えば、記憶部120においてオフセットパラメータに割り当て可能なビット数、モータ1の構造に関する情報)、量子化部119により量子化されたオフセットパラメータ、離散値などである。
オフセットパラメータ復元部121は、量子化されたオフセットパラメータを復元する。オフセットパラメータ復元部121は、1ビットあたりの離散値と、量子化されたオフセットパラメータを乗算することで、量子化されたオフセットパラメータからオフセットパラメータを復元することができる。
オフセット値算出部122は、復元されたオフセットパラメータと、角度偏差データと、に基づいて、オフセット値を算出する。
オフセット値算出部122は、オフセットパラメータ算出部118により算出されたフーリエ係数Fsn及びフーリエ係数Fcnから、周期nの偏差成分のオフセット値(以下「オフセット値Ofsn」という。)を算出する。オフセット値Ofsnは、式(3)で求めることができる。なお、フーリエ係数Fsn,Fcnの値は、個々のアブソリュートエンコーダ200によって異なる。
オフセット値算出部122は、オフセット値Ofsnの算出が角度偏差に含まれている周期の数(例えば、n=N)に到達したか否かを判定する。オフセット値Ofsnを算出した周期の数がNに到達していない場合に、オフセット値算出部122は、周期の数Nに到達するまでオフセット値Ofsnの算出を繰り返す。
オフセット値Ofsnを算出した周期の数がNに到達した場合に、オフセット値算出部122は、式(4)を用いて算出した各周期(n=1,2,・・・N)の偏差成分のオフセット値の総和、すなわち、主軸1aの1回転に含まれる角度偏差を補正するのに用いるオフセット値Ofsを算出する。オフセット値Ofsの算出後、オフセット値算出部122は、オフセット値の決定処理を終了する。
オフセット処理部123は、算出されたオフセット値と第2通信部102から取得した角度情報とに基づいて、オフセット処理後の角度情報を算出する。オフセット処理部123は、算出されたオフセット処理後の角度情報を位置制御部112に出力する。
図11は、モータ制御装置100におけるオフセットパラメータの量子化処理の一例を示すフローチャートである。以上説明したモータ制御装置100における量子化部119による処理の一例をフローチャートにより示す。
量子化部119は、オフセットパラメータ算出部118からオフセットパラメータを取得する(ステップS101)。
量子化部119は、取得したオフセットパラメータからオフセットパラメータの記憶に用いられるビット数を取得する(ステップS102)。
量子化部119は、取得したオフセットパラメータのうち、整数値の記憶に用いられるビット数を取得する(ステップS103)
量子化部119は、オフセットパラメータの記憶に用いられるビット数のうち、ビットシフト可能なビット数を算出する(ステップS104)。
量子化部119は、1ビットあたりの離散値を算出する(ステップS105)。
量子化部119は、ステップS103~ステップS105の算出結果に基づいて、オフセットパラメータを量子化する(ステップS106)。
量子化部119は、量子化されたオフセットパラメータを記憶部120に記憶する(ステップS107)。
図12は、モータ制御装置100におけるオフセットパラメータの復元処理の一例を示すフローチャートである。以上説明したモータ制御装置100におけるオフセットパラメータ復元部121による処理の一例をフローチャートにより示す。
オフセットパラメータ復元部121は、量子化されたオフセットパラメータを記憶部120から取得する(ステップS201)。
オフセットパラメータ復元部121は、1ビットあたりの離散値を取得する(ステップS202)。
オフセットパラメータ復元部121は、量子化されたオフセットパラメータと離散値とに基づいて、オフセットパラメータを復元する(ステップS203)。
以上説明したように、モータ1の構造によって最大角度偏差がおおよそ定まるため、本実施の形態におけるモータ制御装置100によれば、ビットシフト可能なビット数を定量的に決めることができる。
また、本実施の形態におけるモータ制御装置100では、例えば、エンコーダの許容角度偏差など、構造上の制限や、通常エンコーダに求められる角度の精度を考慮して定められる値域に基づいて、整数値の記憶に用いられるビット数をシフトし小数値の記憶に用いられるビット数を確保する。このため、本実施の形態におけるモータ制御装置100によれば、アブソリュートエンコーダにおける最大角度偏差を小さくするためのオフセット値の算出に用いられるパラメータを高精度に記憶することができる。
また、本実施の形態におけるモータ制御装置100では、例えば、エンコーダの許容角度偏差など、構造上の制限や、通常エンコーダに求められる角度の精度を考慮して定められる値域に基づいて、整数値の記憶に用いられるビット数をシフトし小数値の記憶に用いられるビット数を確保する。このため、本実施の形態におけるモータ制御装置100によれば、アブソリュートエンコーダにおける最大角度偏差を小さくするためのオフセット値の算出に用いられるパラメータを高精度に記憶することができる。
[第2の実施の形態]
本発明の第2の実施の形態に係るモータ制御装置及びアブソリュートエンコーダについて説明する。以下、上述の第1の実施の形態に係るモータ制御装置100及びアブソリュートエンコーダ200と同一の又は類似する機能を有する構成に対しては同一の符号を付してその説明を省略し、異なる構成についてのみ説明する。
本発明の第2の実施の形態に係るモータ制御装置及びアブソリュートエンコーダについて説明する。以下、上述の第1の実施の形態に係るモータ制御装置100及びアブソリュートエンコーダ200と同一の又は類似する機能を有する構成に対しては同一の符号を付してその説明を省略し、異なる構成についてのみ説明する。
図15は、第2の実施の形態に係るモータ制御装置100B及びアブソリュートエンコーダ200Bの機能的構成を概略的に示すブロック図である。図15に示すように、モータ制御装置100Bは、演算部103により実現される機能に、オフセットパラメータ復元部121、オフセット値算出部122、及び、オフセット処理部123が含まれない点が、モータ制御装置100と相違する。モータ制御装置100の演算部103により実現されるオフセットパラメータ復元部121、オフセット値算出部122、及び、オフセット処理部123の機能は、アブソリュートエンコーダ200Bが備えるマイコン210により、オフセットパラメータ復元部224、オフセット値算出部225、及びオフセット処理部226として実現される。
モータ制御装置100Bにおいて、第1通信部101及びモータ駆動回路104の機能は、モータ制御装置100と同様である。モータ制御装置100Bの演算部103により実現される、駆動指令取得部111、位置制御部112、速度取得部113、速度制御部114、電流制御部115、制御信号生成部116、角度偏差データ生成部117、オフセットパラメータ算出部118、及び記憶部120の機能は、モータ制御装置100と同様である。
量子化部119は、図13に示したオフセットパラメータの量子化処理を行う。量子化部119は、量子化したオフセットパラメータを第2通信部102に出力する。第2通信部102は、量子化したオフセットパラメータをアブソリュートエンコーダ200Bの通信部212に出力する。
アブソリュートエンコーダ200Bの通信部212は、取得した量子化されたオフセットパラメータを記憶部220に記憶させる。
オフセットパラメータ復元部224は、オフセットパラメータ復元部121と同様に、図14に示したオフセットパラメータの復元処理を行う。
オフセット値算出部225は、オフセット値算出部122と同様に、復元されたオフセットパラメータと、角度偏差データと、に基づいて、オフセット値を算出する。オフセット値算出部225は、算出したオフセット値をオフセット処理部226に出力する。
オフセット処理部226は、オフセット処理部123と同様に、算出されたオフセット値と角度情報生成部211から取得した角度情報とに基づいて、オフセット処理後の角度情報を算出する。オフセット処理部226は、算出されたオフセット処理後の角度情報を通信部212に出力する。通信部212は、オフセット処理後の角度情報をモータ制御装置100Bに出力する。
以上説明した第2の実施の形態におけるモータ制御装置100B及びアブソリュートエンコーダ200Bによれば、先に説明したモータ制御装置100と同様に、アブソリュートエンコーダにおける最大角度偏差を小さくするためのオフセット値の算出に用いられるパラメータを高精度に記憶することができる。
[第3の実施の形態]
本発明の第3の実施の形態に係るモータ制御装置、アブソリュートエンコーダについて説明する。以下、上述の第1、第2の実施の形態に係るモータ制御装置100,100B及びアブソリュートエンコーダ200,200Bと同一の又は類似する機能を有する構成に対しては同一の符号を付してその説明を省略し、異なる構成についてのみ説明する。
本発明の第3の実施の形態に係るモータ制御装置、アブソリュートエンコーダについて説明する。以下、上述の第1、第2の実施の形態に係るモータ制御装置100,100B及びアブソリュートエンコーダ200,200Bと同一の又は類似する機能を有する構成に対しては同一の符号を付してその説明を省略し、異なる構成についてのみ説明する。
図16は、第3の実施の形態に係るモータ制御装置100C及びアブソリュートエンコーダ200Cの機能的構成を概略的に示すブロック図である。図16に示すように、モータ制御装置100Cは、演算部103により実現される機能に、角度偏差データ生成部117、オフセットパラメータ算出部118、量子化部119、記憶部120、オフセットパラメータ復元部121、オフセット値算出部122、及び、オフセット処理部123が含まれない点が、モータ制御装置100と相違する。モータ制御装置100Cに含まれない上述の機能部は、アブソリュートエンコーダ200Cが備えるマイコン210により、角度偏差データ生成部217、オフセットパラメータ算出部218、量子化部219、オフセットパラメータ復元部224、オフセット値算出部225、及びオフセット処理部226として実現される。
モータ制御装置100Cの第2通信部102は、位置制御部112から取得した目標位置をアブソリュートエンコーダ200Cの通信部212に出力する。アブソリュートエンコーダ200Cの通信部212は、目標位置を角度偏差データ生成部217に出力する。
角度偏差データ生成部217は、角度情報生成部211から取得した角度情報、及び、通信部212から取得した目標位置、に基づいて、アブソリュートエンコーダ200Cの起動時に検出された主軸1aの角度情報における角度偏差データを生成する。角度偏差データ生成部217は、生成した角度偏差データをオフセットパラメータ算出部218に出力する。
オフセットパラメータ算出部218は、オフセットパラメータ算出部118と同様に、角度偏差データに基づいて、回転体の角度偏差を小さくするオフセット値の算出に用いられる係数であるオフセットパラメータを算出する。オフセットパラメータ算出部218は、算出したオフセットパラメータを量子化部219に出力する。
量子化部219は、量子化部119と同様に、オフセットパラメータの記憶に用いられる記憶容量の大きさと、オフセットパラメータの値域と、に基づいて、オフセットパラメータ算出部218から取得したオフセットパラメータを量子化する。量子化部219によるオフセットパラメータの量子化処理は、図13に示した通りである。量子化部219は、量子化したオフセットパラメータを記憶部220に記憶する。
オフセットパラメータ復元部224は、オフセットパラメータ復元部121と同様に、図14に示したオフセットパラメータの復元処理を行う。
オフセット値算出部225は、オフセット値算出部122と同様に、復元されたオフセットパラメータと、角度偏差データと、に基づいて、オフセット値を算出する。オフセット値算出部225は、算出したオフセット値をオフセット処理部226に出力する。
オフセット処理部226は、オフセット処理部123と同様に、算出されたオフセット値と角度情報生成部211から取得した角度情報とに基づいて、オフセット処理後の角度情報を算出する。オフセット処理部226は、算出されたオフセット処理後の角度情報を通信部212に出力する。通信部212は、オフセット処理後の角度情報をモータ制御装置100に出力する。
以上説明した第3の実施の形態におけるアブソリュートエンコーダ200Cによれば、先に説明したモータ制御装置100と同様に、アブソリュートエンコーダにおける最大角度偏差を小さくするためのオフセット値の算出に用いられるパラメータを高精度に記憶することができる。
[第4の実施の形態]
本発明の第4の実施の形態に係るモータ制御装置、アブソリュートエンコーダについて説明する。以下、上述の第1~第3の実施の形態に係るモータ制御装置100,100B,100C及びアブソリュートエンコーダ200,200B,200Cと同一の又は類似する機能を有する構成に対しては同一の符号を付してその説明を省略し、異なる構成についてのみ説明する。
本発明の第4の実施の形態に係るモータ制御装置、アブソリュートエンコーダについて説明する。以下、上述の第1~第3の実施の形態に係るモータ制御装置100,100B,100C及びアブソリュートエンコーダ200,200B,200Cと同一の又は類似する機能を有する構成に対しては同一の符号を付してその説明を省略し、異なる構成についてのみ説明する。
図17は、第4の実施の形態に係るモータ制御装置100D及びアブソリュートエンコーダ200Dの機能的構成を概略的に示すブロック図である。図17に示すように、モータ制御装置100Dは、演算部103により実現される機能に、角度偏差データ生成部117、オフセットパラメータ算出部118、及び、量子化部119が含まれない点が、モータ制御装置100と相違する。モータ制御装置100Dに含まれない上述の機能部は、アブソリュートエンコーダ200Dが備えるマイコン210により、角度偏差データ生成部217、オフセットパラメータ算出部218、及び、量子化部219として実現される。
モータ制御装置100Dの第2通信部102は、位置制御部112から取得した目標位置をアブソリュートエンコーダ200Dの通信部212に出力する。アブソリュートエンコーダ200Dの通信部212は、目標位置を角度偏差データ生成部217に出力する。
角度偏差データ生成部217は、角度情報生成部211から取得した角度情報、及び、通信部212から取得した目標位置、に基づいて、アブソリュートエンコーダ200Dの起動時に検出された主軸1aの角度情報における角度偏差データを生成する。角度偏差データ生成部217は、生成した角度偏差データをオフセットパラメータ算出部218に出力する。
オフセットパラメータ算出部218は、オフセットパラメータ算出部118と同様に、角度偏差データに基づいて、回転体の角度偏差を小さくするオフセット値の算出に用いられる係数であるオフセットパラメータを算出する。オフセットパラメータ算出部218は、算出したオフセットパラメータを量子化部219に出力する。
量子化部219は、量子化部119と同様に、オフセットパラメータの記憶に用いられる記憶容量の大きさと、オフセットパラメータの値域と、に基づいて、オフセットパラメータ算出部218から取得したオフセットパラメータを量子化する。量子化部219によるオフセットパラメータの量子化処理は、図13に示した通りである。量子化部219は、量子化したオフセットパラメータを記憶部220に記憶する。
通信部212は、記憶部120に記憶されている量子化したオフセットパラメータをモータ制御装置100Dの第2通信部102に出力する。第2通信部102は、量子化したオフセットパラメータを記憶部120に記憶させる。
オフセットパラメータ復元部121は、図14に示したオフセットパラメータの復元処理を行う。
オフセット値算出部122は、復元されたオフセットパラメータと、角度偏差データと、に基づいて、オフセット値を算出する。オフセット値算出部122は、算出したオフセット値をオフセット処理部123に出力する。
オフセット処理部123は、算出されたオフセット値と角度情報生成部211から取得した角度情報とに基づいて、オフセット処理後の角度情報を算出する。オフセット処理部123は、算出されたオフセット処理後の角度情報を位置制御部112に出力する。
以上説明した第4の実施の形態におけるモータ制御装置100D及びアブソリュートエンコーダ200Dによれば、先に説明したモータ制御装置100と同様に、アブソリュートエンコーダにおける最大角度偏差を小さくするためのオフセット値の算出に用いられるパラメータを高精度に記憶することができる。
その他、当業者は、従来公知の知見に従い、本発明を適宜改変することができる。かかる改変によってもなお本発明の構成を具備する限り、勿論、本発明の範疇に含まれるものである。
例えば、上述した実施の形態では、用いる回転体の角度を表す値をいずれも角度値(±360[deg])で表したが、本発明は弧度値(±2π[rad])で表す場合においても同様に適用可能である。
1…モータ、1a…主軸、3…ギアベース部、4…ケース、4a…外壁部、5…角度センサ支持基板、5a…下面、6…コネクタ、7…シールドプレート、10…主軸ギア、11…第1ウォームギア部、16…ホルダ部、17…マグネット支持部、20…第1中間ギア、21…第1ウォームホイール部、22…第2ウォームギア部、23…軸、27…第1中間ギア軸支部、28…第3ウォームギア部、30…第2中間ギア、31…第3ウォームホイール部、32…第1平歯車部、40…第1副軸ギア、41…第2ウォームホイール部、50…第2副軸ギア、51…第2平歯車部、100,100B,100C,100D…モータ制御装置、101…第1通信部、102…第2通信部、103…演算部、104…モータ駆動回路、110…基板支柱、111…駆動指令取得部、112…位置制御部、113…速度取得部、114…速度制御部、115…電流制御部、116…制御信号生成部、117、217…角度偏差データ生成部、118,218…オフセットパラメータ算出部、119,219…量子化部、120,220…記憶部、121,224…オフセットパラメータ復元部、122,225…オフセット値算出部、123,226…オフセット処理部、200,200B,200C,200D…アブソリュートエンコーダ、210…マイコン、211…角度情報生成部、212…通信部、221…第1センサ、222…第2センサ、223…第3センサ、231…第1マグネット、232…第2マグネット、233…第3マグネット
Claims (7)
- 回転体の角度を示す角度情報と前記回転体を回転させる角度を示す目標位置との偏差を示す角度偏差データに基づいて、前記回転体の角度偏差を小さくするオフセット値の算出に用いられるオフセットパラメータを算出するオフセットパラメータ算出部と、
前記オフセットパラメータの記憶に用いられる記憶容量の大きさと、前記オフセットパラメータの値域と、に基づいて前記オフセットパラメータを量子化する量子化部と、
を備える、モータ制御装置。 - 前記量子化部は、前記オフセットパラメータを記憶するために確保されたビット数と、ビットシフト可能な数と、に基づいて決定される離散値により前記オフセットパラメータを量子化する、
請求項1に記載のモータ制御装置。 - ビットシフト可能なビット数は、前記オフセットパラメータを記憶するために確保されたビット数から、前記オフセットパラメータの整数値の記憶に必要なビット数を減ずることにより求められる、
請求項1または2に記載のモータ制御装置。 - 量子化された前記オフセットパラメータを復元する復元部を備える、
請求項1から3のいずれか1項に記載のモータ制御装置。 - 前記量子化部は、前記オフセットパラメータを記憶するために確保されたビット数のうち、前記オフセットパラメータの整数値の記憶に必要なビット数を最上位のビット側にビットシフトして前記オフセットパラメータを量子化する、
請求項1から4のいずれか1項に記載のモータ制御装置。 - 回転体の角度を示す角度情報と前記回転体を回転させる角度を示す目標位置との偏差を示す角度偏差データに基づいて、前記回転体の角度偏差を小さくするオフセット値の算出に用いられるオフセットパラメータを算出するステップと、
前記オフセットパラメータの記憶に用いられる記憶容量の大きさと、前記オフセットパラメータの値域と、に基づいて前記オフセットパラメータを量子化するステップと、
をコンピュータが実行する、モータ制御方法。 - 回転体の回転に応じて変動する磁界の強さを示す信号に基づいて、前記回転体の角度を示す角度情報を生成する角度情報生成部と、
前記角度情報と、前記回転体を回転させる角度を示す目標位置と、の偏差を示す角度偏差データを生成する角度偏差データ生成部と、
前記角度偏差データに基づいて、前記回転体の角度偏差を小さくするオフセット値の算出に用いられるオフセットパラメータを算出するオフセットパラメータ算出部と、
前記オフセットパラメータの記憶に用いられる記憶容量の大きさと、前記オフセットパラメータの値域と、に基づいて前記オフセットパラメータを量子化する量子化部と、
を備える、アブソリュートエンコーダ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022040730A JP2023135486A (ja) | 2022-03-15 | 2022-03-15 | モータ制御装置、モータ制御方法、及び、アブソリュートエンコーダ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022040730A JP2023135486A (ja) | 2022-03-15 | 2022-03-15 | モータ制御装置、モータ制御方法、及び、アブソリュートエンコーダ |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023135486A true JP2023135486A (ja) | 2023-09-28 |
Family
ID=88144331
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022040730A Pending JP2023135486A (ja) | 2022-03-15 | 2022-03-15 | モータ制御装置、モータ制御方法、及び、アブソリュートエンコーダ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2023135486A (ja) |
-
2022
- 2022-03-15 JP JP2022040730A patent/JP2023135486A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110869708B (zh) | 绝对编码器 | |
CN111108346B (zh) | 角度检测装置、旋转量指定单元及旋转驱动单元 | |
CN110023719B (zh) | 绝对编码器、确定旋转量的方法 | |
EP2873945B1 (en) | Device and method for detecting multi-turn absolute rotation angle | |
JP2007518110A (ja) | 操舵用途のための統合型の非接触式トルク及び絶対位置センサー | |
KR20040058208A (ko) | 다회전식 인코더 | |
CN107860404B (zh) | 旋转编码器及旋转编码器的绝对角度位置检测方法 | |
US11913784B2 (en) | Reduction mechanism and absolute encoder | |
JP2015114209A (ja) | エンコーダー及び電気機械装置 | |
CN210780430U (zh) | 减速电机及包含其的机器人 | |
WO2022244472A1 (ja) | アブソリュートエンコーダ、アブソリュートエンコーダの角度誤差補正装置、及び、アブソリュートエンコーダの角度誤差補正方法 | |
US20220155051A1 (en) | Absolute encoder | |
JP2023135486A (ja) | モータ制御装置、モータ制御方法、及び、アブソリュートエンコーダ | |
US20220163317A1 (en) | Absolute encoder | |
US11041708B2 (en) | Angle sensing device | |
JP7441061B2 (ja) | アブソリュートエンコーダ、アブソリュートエンコーダの角度誤差情報出力プログラム、アブソリュートエンコーダの角度誤差情報出力方法 | |
JP7441099B2 (ja) | アブソリュートエンコーダ | |
WO2022209747A1 (ja) | アブソリュートエンコーダ | |
JP6966143B1 (ja) | バッテリレス対応のロータリーエンコーダ及びそれを用いたサーボ制御装置 | |
JP2019190872A (ja) | エンコーダ | |
JP2024027726A (ja) | アブソリュートエンコーダ、アブソリュートエンコーダの角度偏差補正装置、及び、アブソリュートエンコーダの角度偏差補正方法 | |
JP2022184555A (ja) | 回転角度検出装置及び回転角度の導出方法 | |
JP2011027537A (ja) | 回転位置検出器 | |
JP2024065033A (ja) | アブソリュートエンコーダ、アブソリュートエンコーダの角度偏差補正装置、及び、アブソリュートエンコーダの角度偏差補正方法 | |
JP2012088276A (ja) | 回転検出器 |