JP7305113B2 - Motor control device, motor device and machine learning device - Google Patents
Motor control device, motor device and machine learning device Download PDFInfo
- Publication number
- JP7305113B2 JP7305113B2 JP2019101737A JP2019101737A JP7305113B2 JP 7305113 B2 JP7305113 B2 JP 7305113B2 JP 2019101737 A JP2019101737 A JP 2019101737A JP 2019101737 A JP2019101737 A JP 2019101737A JP 7305113 B2 JP7305113 B2 JP 7305113B2
- Authority
- JP
- Japan
- Prior art keywords
- motor
- torque
- value
- output shaft
- state
- 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.)
- Active
Links
Images
Landscapes
- Control Of Electric Motors In General (AREA)
Description
特許法第30条第2項適用 http://www.symbion.co.jp/arena/rsj2018/index.html 平成30年9月5日 第36回日本ロボット学会学術講演会 中部大学春日井キャンパス(愛知県春日井市松本町1200)平成30年9月6日(開催期間:平成30年9月5日~平成30年9月7日) メカトロニクス制御研究会 予稿集 発行日 平成30年9月26日 メカトロニクス制御研究会 自動車会館2階小会議室(東京都千代田区九段南4-8-13)平成30年9月26日 SAMCON2019(The 5th IEEJ International Workshop on Sensing,Actuation,Motion Control,and Optimization)予稿集USB 発行日 平成31年3月4日 SAMCON2019(The 5th IEEJ International Workshop on Sensing,Actuation,Motion Control,and Optimization)千葉大学 西千葉キャンパス(千葉県千葉市稲毛区弥生町1-33)平成31年3月6日(開催期間:平成31年3月4日~平成31年3月6日)Application of
本発明は、モータ制御装置、モータ装置および機械学習装置に関する。 The present invention relates to a motor control device, a motor device and a machine learning device.
従来のモータ制御装置では、出力軸に摩擦力が作用して起きる外乱を推定して抑制するために外乱オブザーバが用いられてきたが、摩擦による外乱の補償は多くの場合不完全である。例えば、モータ出力軸が静止摩擦につかまって極低速状態となり、さらに力を加えてゆくと急激に回転が速くなることで、回転速度が滑らかでなくなる(スティック-スリップ現象)ことがある。言い換えると、出力軸に作用するクーロン摩擦力が大きくなると回転が極低速状態となり、その後、最大摩擦力を超える力が加わると負の勾配特性を有する粘性摩擦力により急激に回転が速くなる。 In conventional motor control devices, a disturbance observer has been used to estimate and suppress disturbance caused by frictional force acting on the output shaft, but compensation for disturbance due to friction is incomplete in many cases. For example, the motor output shaft is gripped by static friction and becomes extremely low speed, and when further force is applied, the rotation speed suddenly increases, resulting in a non-smooth rotation speed (stick-slip phenomenon). In other words, when the Coulomb frictional force acting on the output shaft increases, the rotation becomes extremely low speed, and when a force exceeding the maximum frictional force is applied, the rotation speeds up rapidly due to the viscous frictional force having a negative gradient characteristic.
スティック時にクーロン摩擦特性が変化することで生じる過渡状態では、摩擦特性の推定誤差や外乱の非線形特性により外乱オブザーバによる補償が不完全となり、負の勾配特性を有する粘性摩擦力によるスリップ時には、回転が急激に速くなることで外乱オブザーバの推定に遅れが生じる。その結果、モータにより関節駆動されるロボット・アームがガタガタ振動し、アーム先端の動きが滑らかでなくなる。 In the transient state caused by the change of the Coulomb friction characteristics when sticking, the compensation by the disturbance observer becomes incomplete due to the estimation error of the friction characteristics and the non-linear characteristics of the disturbance. A sudden increase in speed causes a delay in the estimation of the disturbance observer. As a result, the robot arm, which is articulated by the motor, vibrates jerkily, and the movement of the tip of the arm is not smooth.
この問題に対処するために、特許文献1に記載された制御装置では、まず、減速機の動摩擦トルク同定を行い、この動摩擦トルクを補償するフィードフォワード制御を行うことで、残留摩擦を補償するために必要なトルクセンサの要求バンド幅を低減する。その上で、静止摩擦トルク等の補償には、要求バンド幅の小さい安価なトルクセンサと外乱オブザーバを用いる。また、特許文献2記載のモータ制御装置では、摩擦損失補償を行う仕組みとして、同様の補償制御を行っており、特許文献3では、ACサーボモータの制御系において、制御対象が静止状態から動き出したときにスティック・スリップ現象が発生することのない高精度な位置制御方法を開示している。
In order to deal with this problem, the control device described in
しかしながら、上記特許文献1乃至3に記載された手法では、クーロン摩擦や粘性摩擦に起因する外乱を適切に補償できるか否かは、摩擦特性(摩擦の外乱モデル)や摩擦トルクを記述する物理量の推定精度および関連する制御係数の設定値の好適性に依存している。摩擦特性や摩擦トルクを記述する物理量を高精度に推定できない場合には、クーロン摩擦および粘性摩擦に起因する外乱の補償も不完全となる。
However, in the methods described in
本発明に係る幾つかの実施形態では、上述した問題点に鑑み、摩擦特性の高精度なモデリングおよび関連する物理量の高精度な同定を必要とせずに、モータの出力軸に作用する摩擦力の推定とこれによる外乱の補償を適切に行うことができるモータ制御装置、モータ装置および機械学習装置を提供することを目的とする。 In view of the above-mentioned problems, some embodiments of the present invention provide methods for determining the frictional force acting on the output shaft of a motor without the need for highly accurate modeling of frictional characteristics and accurate identification of related physical quantities. An object of the present invention is to provide a motor control device, a motor device, and a machine learning device that can appropriately perform estimation and compensation for disturbance caused by the estimation.
本発明のモータ制御装置は、制御対象となるモータへの電流指令値、前記モータの回転速度および前記モータに減速機構を介して接続された出力軸のねじりトルクの測定値を制御入力として受け取り、前記モータの出力軸に作用する摩擦トルクによる外乱を抑制する外乱オブザーバ装置を備え、前記外乱オブザーバ装置は、前記制御入力に基づいて前記摩擦トルクを補償するトルク補償値を算出する補償値算出部を有し、前記補償値算出部の特性を表す感度関数が前記モータの前記回転速度に基づいて設定される。 The motor control device of the present invention receives, as control inputs, a current command value for a motor to be controlled, a rotational speed of the motor, and a measured torsional torque of an output shaft connected to the motor via a speed reduction mechanism, A disturbance observer device that suppresses disturbance due to frictional torque acting on the output shaft of the motor is provided, and the disturbance observer device includes a compensation value calculation unit that calculates a torque compensation value that compensates for the frictional torque based on the control input. A sensitivity function representing characteristics of the compensation value calculator is set based on the rotational speed of the motor.
本発明のモータ装置は、モータと、前記モータに減速機構を介して接続された出力軸と、前記出力軸に生じるねじりトルクを測定するトルクセンサと、前記モータの角度位置を検出するロータリ・エンコーダと、上記のモータ制御装置とを備える。 A motor device according to the present invention comprises a motor, an output shaft connected to the motor via a speed reduction mechanism, a torque sensor for measuring torsional torque generated in the output shaft, and a rotary encoder for detecting the angular position of the motor. and the motor control device described above.
本発明の機械学習装置は、上記のモータ制御装置に対する機械学習装置であって、前記モータの状態を、環境の現在状態を表す回転速度、トルク値、モータ電流およびモータ温度のうちの少なくとも一つを含んだ状態変数として観測する状態観測部と、前記モータの回転状態を示す速度波形データに基づいた判定データを取得する判定データ生成部と、前記状態変数と前記判定データとを用いて、前記モータの回転状態と、前記モータへの外乱補償特性を記述する特性係数、スイッチ切り替え閾値および高周波成分算出要素のフィルタ特性係数のうちの少なくとも一つを含む制御パラメータとを関連付けて学習する学習部と、前記学習部による学習結果に基づき、前記制御パラメータを設定する意思決定部とを有する。 A machine learning device according to the present invention is a machine learning device for the motor control device described above, wherein the state of the motor is at least one of a rotation speed, a torque value, a motor current, and a motor temperature, which represent the current state of the environment. a state observation unit that observes as a state variable including a state variable, a determination data generation unit that acquires determination data based on speed waveform data that indicates the rotation state of the motor, and the state variable and the determination data, the a learning unit that associates and learns a rotation state of the motor and a control parameter including at least one of a characteristic coefficient describing a disturbance compensation characteristic to the motor, a switch switching threshold value, and a filter characteristic coefficient of a high-frequency component calculation element; and a decision making section for setting the control parameters based on the learning result of the learning section.
以上より、本発明によれば、摩擦特性の高精度なモデリングおよび関連する物理量の高精度な同定を必要とせずに、モータの出力軸に作用する摩擦力の推定とこれによる外乱の補償を適切に行うことが可能なモータ制御装置、モータ制御方法および機械学習装置を実現することができる。 As described above, according to the present invention, it is possible to appropriately estimate the frictional force acting on the output shaft of the motor and compensate for the disturbance caused by this, without requiring high-precision modeling of the friction characteristics and high-precision identification of related physical quantities. It is possible to realize a motor control device, a motor control method, and a machine learning device capable of performing
<1>第1の実施形態
(1-1)本発明の第1の実施形態に係る制御対象モータおよびモータ制御装置の構成
以下、図面を参照しながら、本発明の第1の実施形態に係るモータ制御装置について説明する。図1に示すように、第1実施形態のモータ装置1は、モータ2と、モータ2の出力軸(図示しない)の一端に接続された減速装置3と、モータ2の出力軸の他端に接続されたロータリ・エンコーダ4と、モータ2、減速装置3及びロータリ・エンコーダ4とそれぞれ配線7a、7b、7cを介して接続されたモータ制御装置5を備えている。
<1> First Embodiment (1-1) Configurations of Controlled Motor and Motor Control Device According to First Embodiment of the Present Invention Hereinafter, the first embodiment of the present invention will be described with reference to the drawings. A motor control device will be described. As shown in FIG. 1, the
モータ2は、配線7aを介してモータ制御装置5に接続されている。モータ制御装置5から配線7aを介してモータ2に電流が供給されると、供給された電流の大きさに応じてモータ2は出力軸を回転させ、ねじりトルクを出力軸に発生させ、これによって減速装置3が駆動される。減速装置3は、出力軸6とトルクセンサ8と減速機構10とを備えている。減速機構10は、一端がモータ2の出力軸に接続され、他端が出力軸6に接続され、モータ2の出力軸の回転速度とねじりトルクの大きさとを減速比に応じて変換する。減速機構10がモータ2によって駆動されると、出力軸6が回転し、出力軸6にねじりトルクが発生する。出力軸6の先端には、ロボットのアームのような負荷が機械的に接続され、出力軸6に生じたねじりトルクによって負荷が駆動される。
The
トルクセンサ8は、出力軸6に設置されている。トルクセンサ8は、出力軸6に生じたねじりトルクを測定する。トルクセンサ8は、ねじりトルクの測定値を出力値として出力する。ロータリ・エンコーダ4は、モータ2の出力軸の位置、すなわち、所定の基準点からの出力軸の角度位置を検出し、電気信号に変換して出力する。モータ制御装置5は、配線7aを介してモータ2に電流を供給する。モータ制御装置5は、トルクセンサ8の出力値を、配線7bを介して受け取る。モータ制御装置5は、配線7cを介してロータリ・エンコーダ4から出力されたモータ2の角度位置を受け取る。
A
モータ制御装置5は、トルク指令値や速度指令値などの種々の指令値に基づいて、モータ2が指令値に追従するように制御する。本実施形態では、モータ制御装置5はモータ2のねじりトルクを制御する場合を例として説明する。モータ制御装置5は、トルク指令値が入力されると、減速装置3の出力軸6に発生するねじりトルクがトルク指令値に追従するように、モータ2を制御する。すなわち、モータ制御装置5は、トルク指令値とトルクセンサ8の出力値とに基づいて算出した電流指令値をモータ2に出力してモータ2を駆動して、ねじりトルクの大きさを制御する。ここでは、電流指令値をモータ2に出力するということは、電流指令値に応じた直流電流をモータ2に供給することを意味している。
The
ここで、減速装置3の構造についてさらに説明する。図2に示すように、減速装置3は、出力軸6と、トルクセンサ8と、減速機構10と、出力軸6の一部及び減速機構10を収容する筐体12と、出力軸6を筐体12に対して回転自在に支持するベアリング13と、ベアリング13上に設けられた軸カバー14と、を備えている。
Here, the structure of the
減速機構10は、波動歯車機構であり、モータ2の出力軸2aの先端に接続されたウエーブジェネレータ10aと、薄肉の金属でカップ形状に形成されて弾性を有し、当該カップの開口部10dの外側面にギア歯(図示せず)が設けられたフレクスプライン10bと、当該フレクスプライン10bのギア歯と噛み合うギア歯(図示せず)が内側面に設けられたサーキュラスプライン10cと、を備えている。ウエーブジェネレータ10aは、モータ2の筐体(図示せず)に固定されたベアリング16に支持された出力軸2aの先端に、ねじ11dによって固定されている。ウエーブジェネレータ10aはフレクスプライン10bに挿入されている。
The
フレクスプライン10bの底部15近傍にある出力軸6と筐体12との間の空間には、オイルシール25が設けられている。オイルシール25は、筐体12に固定されていると共に、出力軸6に接触しており、出力軸6と筐体12との間の空間をシールし、減速機構10側のオイルがトルクセンサ8側に飛散するのを防いでいる。出力軸6は、円柱形状をしており、減速機構10に接続された一端が筐体12に収容されており、他端が負荷を取り付けられるように筐体12から突出している。
An
出力軸6は、径が他の部分よりも小さく形成された起歪部6aと、起歪部6aよりもモータ2側に形成され、出力軸6から鍔状にせりだした円板形状の鍔部6bとを有している。起歪部6aには、歪ゲージ18が貼着されている。鍔部6bには、基板19が基板固定支柱30によって固定されている。基板19はリング状の円板である。基板19は、第1基板19aと第2基板19bとでなり、第1基板19aの表面には歪ゲージ18に結線されたトルク検出回路29が設けられている。
The
トルク検出回路29は、出力軸6に配置された歪ゲージ18の抵抗変化を検出する抵抗変化検出回路(図2には不図示)を備える。さらに、トルク検出回路29は、抵抗変化検出回路の出力信号に基づいてねじりトルクの測定値を算出するCPUと、整流回路と、安定化回路と(いずれも図2には不図示)を備え、歪ゲージ18に生じた抵抗変化から出力軸6に生じるねじりトルクを算出し送信部27へ送出する。第2基板19bの表面には、トルク検出回路29に結線され、トルク検出回路29から送出されたねじりトルク測定値の信号を無線で送信する送信部27が設けられている。
The
筐体12に固定された筐体基板24には、送信部27から送信された光信号を受信する受信部28が送信部27と対向する位置に設けられており、送信部27及び受信部28間で赤外線通信などの無線通信ができるようになされている。受信部28の出力は配線7b(図2には不図示)に接続されており、モータ制御装置5にねじりトルクの測定値に対応した信号を出力値として送出する。さらに、出力軸6には、例えばフェライトシートなどの磁性体シートでなり、出力軸6の側面を覆う2次側コア21aと、2次側コア21aの表面に例えば銅線などの導電性の線材を巻回して形成された2次コイル21bと、を備える受電部21が設けられている。
A
筐体基板24には、受電部21と対向する位置にコアホルダ23が固定されている。コアホルダ23は、送電部22を保持している。送電部22は、直方体形状の部材と、当該部材の長軸方向の両端で直方体の表面に垂直に同じ方向に突出した突部とを有する形状(断面形状がコ字型)をしており、例えばフェライトなどの磁性体で作られている1次側コア22aと、1次側コア22aの2つの突部間に例えば銅線などの導電性の線材を直方体形状の部材に巻回して形成された1次コイル22bと、を備えている。
A
送電部22は、モータ制御装置5から供給された交流電流を1次コイル22bに流し、1次コイル22bに交流磁界を発生させ、受電部21の2次コイル21bに電流を誘起する。よって、2次コイル21bが1次コイル22bから非接触で電力を受電できる。受電部21は、2次コイル21bに誘起された交流電流をトルク検出回路29に供給する。トルク検出回路29は、供給された交流電圧を整流回路と安定化回路とによって直流電圧へと変換し、抵抗変化検出回路などに供給する。
The
出力軸6を筐体12に対して回転自在に支持するベアリング13は、接続部26を介して筐体12に設けられている。接続部26は、中心に穴が形成されており、当該穴内に出力軸6の鍔部6bが配置され、接続部26の穴の内側面26aと鍔部6bとが所定の間隔を空けて対向するように、筐体12に固定されている。ベアリング13は、クロスローラベアリングであり、外輪13aと、内輪13bと、円筒形状のコロ13cとを備え、外輪13aが接続部26に固定され、内輪13bがねじ11cによって鍔部6bに固定されることで、出力軸6が筐体12に対して自在に回転できるように出力軸6を支持している。
A bearing 13 that rotatably supports the
軸カバー14は、ねじ11eによってベアリング13の外輪13aに固定されており、中心に穴が形成されている。当該穴は、軸カバー14をベアリング13に固定したとき、穴の内側面と出力軸6とが接触しない程度の大きさに形成されている。トルクセンサ8は、上述の歪ゲージ18とトルク検出回路29と送信部27と受信部28と復調回路と受電部21と送電部22とで構成されている。トルクセンサ8の構成は、出力軸6に生じたねじりトルクτsを測定できれば、特に限定されない。
The
次に、図3および図4を参照しながら、第1の実施形態に係るモータ制御装置5の構成について説明する。以下で説明するモータ制御装置5の構成はあくまで一例であり、適宜変更してもよい。図3に示すモータ制御装置5は、内部の構成モジュールとして、プロセッサ510、記憶部520、加減算器530、電流指令出力インターフェース540、第1インターフェース回路561および第2インターフェース回路562を含んで構成され、これらは、バス560によって通信可能に相互接続されている。
Next, the configuration of the
本実施形態では、上述のように、モータ制御装置5は、モータ2に接続された減速機構10の出力軸6に発生させるねじりトルクτsを制御するように構成されている。モータ制御装置5は、外乱オブザーバ装置50(図4を参照)として動作するようにプログラミングされたプロセッサ510と、摩擦トルクによる外乱の推定値と制御目標値との和からモータ2への電流指令値iq
ref(図4)を算出してプロセッサ510(外乱オブザーバ装置50)に入力する加減算器530と、プロセッサ(外乱オブザーバ装置50)とデータ通信可能に接続され、複数の異なる制御パラメータγk(1≦k≦K)を記憶する記憶部520とを備えている。電流指令値iq
refは、モータ駆動電流としてモータ2に供給される電力である。
In this embodiment, as described above, the
さらに、モータ制御装置5は、第1インターフェース回路561および第2インターフェース回路562を有し、バス560を介して上記の各構成要素と接続されている。第1インターフェース回路561は、配線7bを介して図1に示すトルクセンサ8からトルク測定値のデータを含む信号を受信する。第2インターフェース回路562は、配線7cを介して図1に示すロータリ・エンコーダ4からモータ2の出力軸2aの角度位置を表すデータを信号として受信する。
Furthermore, the
プロセッサ510は、トルクセンサ8からトルク測定値のデータを受信し、ロータリ・エンコーダ4からモータ2の出力軸2aの角度位置を表すデータを受信する。その上で、プロセッサ510は、受信したこれらのデータを入力として用いて、モータ2に出力する電流指令の値を計算し、加減算器530を介して電流指令出力インターフェース540に出力する。また、プロセッサ510は、モータ2の制御に必要なその他の演算を実行し、図示しない他の出力インターフェースを介して制御出力として出力するようにしてもよい。
The
本実施形態では、記憶部520から読み出した外乱オブザーバ・プログラム521をプロセッサ510が読み込んで実行することで、外乱オブザーバ装置50が実現されている。なお、外乱オブザーバ装置50は、専用に設計されたプロセッサによって実現されてもよく、複数のプロセッサや回路の集合体として構成されてもよい。
In this embodiment, the
また、本実施形態では、外乱オブザーバ・プログラム521を実行中のプロセッサ510は、記憶部520に記憶された外乱補償制御の演算に必要なデータを読み出し、摩擦トルクによる外乱を推定して抑制するための補償制御を行うように構成されている。
Further, in the present embodiment, the
本実施形態では、演算に用いるデータとして、モータ2の回転速度ωmからモータ2の出力トルクτmを推定するのに用いる疑似的な慣性モーメントJm(データ522a)と、モータ2と出力軸6の間に介装された減速機構10の減速比Rg(データ522b)と、負荷Lおよびモータ2の運動学モデルを記述する動力学特性パラメータ(522c、522f)と、外乱オブザーバ装置50の周波数応答を所望の応答特性に近づけるように設定されるフィルタ係数および利得係数(データ522d)と、摩擦トルクに起因する非線形制御特性をモデル化する非線形特性パラメータ(データ522e)が記憶部520に記憶されている。
In this embodiment, the data used for calculation are the pseudo moment of inertia J m (
本発明の幾つかの実施形態では、図4に示すモータ制御装置5は、図7を用いて後述するスティック-スリップ現象により摩擦トルクがモータ2の出力軸2aに作用し、これに起因する外乱を外乱オブザーバ装置50が抑制するように構成される。
In some embodiments of the present invention, the
そこで、以下、図5を参照しながらスティック-スリップ現象によりモータ2の出力軸2aに作用する摩擦トルクについて詳しく述べる。スティック-スリップ現象とは、強い非線形性を持つ摩擦外乱によって引き起こされる現象である。スティック-スリップ現象は、摩擦係数が急激かつ非常に大きくなりモータ2の出力軸2aが静止摩擦につかまって極低速状態となるスティック現象と、さらに力を加えてゆくと正の値の摩擦係数が急に負の値に符号反転し、急激に回転が速くなるスリップ現象とが組み合わさって生じる現象である。スティック-スリップ現象が生じると回転速度及び回転加速度が滑らかでなくなる。
Therefore, the friction torque acting on the
以下、上述したスティック現象とスリップ現象について図5(A)および図5(B)に示す具体例を用いて説明する。図5(A)に示す曲線グラフは、モータ2の回転速度ωmを横軸とし、モータ2の出力軸2aに作用する摩擦トルクの大きさを縦軸とし、回転速度ωmの変化に応じた摩擦トルクの変化をプロットしたものである。また、図5(B)に示す曲線グラフは、経過時間tを横軸とし、モータ2の回転速度ωmを縦軸とし、時間tの経過に伴って回転速度ωmがどのように変化するかをプロットしたものである。
The above-described stick phenomenon and slip phenomenon will be described below using specific examples shown in FIGS. 5(A) and 5(B). In the curve graph shown in FIG. 5A, the horizontal axis represents the rotation speed ωm of the
図5(A)に示す回転速度領域VR(2)は、図5(B)に示す時間区間Ph(1)に対応し、時間区間Ph(1)内では、モータ2の回転速度ωmは領域VR(2)内にある。図5(A)および図5(B)に示すように、モータ2の回転速度ωmが領域VR(2)内にある間は、スティック現象が生じ、モータ2の出力軸2aが静止摩擦につかまって極低速状態となっており、出力軸6に作用している摩擦トルクにおいてクーロン摩擦成分が支配的となっている。
The rotational speed region VR(2) shown in FIG. 5(A) corresponds to the time interval Ph(1) shown in FIG. 5(B) . It is in region VR(2). As shown in FIGS. 5A and 5B, while the rotation speed ωm of the
これに対し、図5(A)に示す回転速度領域VR(1)は、図5(B)に示す時間区間Ph(2)に対応し、時間区間Ph(2)内では、モータ2の回転速度ωmは領域VR(1)内にある。図5(A)および図5(B)に示すように、モータ2の回転速度ωmが回転速度ωslipを境にして回転速度ωmが急激に上昇しており、スリップ現象が生じていることがわかる。この急激な回転速度ωmの上昇は、回転トルクが増加していって領域VR(2)で作用していた静止摩擦を乗り越えたことで、出力軸6に作用している摩擦トルクにおいてクーロン摩擦成分に代わって粘性摩擦成分が支配的となったことを示している。
On the other hand, the rotation speed region VR(1) shown in FIG. 5A corresponds to the time interval Ph(2) shown in FIG. Velocity ω m is within region VR(1). As shown in FIGS. 5(A) and 5(B), the rotation speed ωm of the
この急激な変化は、例えば、図2に示すオイルシール25とモータ2の出力軸2aとの間の摩擦によって引き起こされた非線形摩擦効果が増大することで生じる。スティック-スリップ現象により生じた摩擦トルクがモータ2の出力軸2aに外乱として作用している期間中は、モータ2の回転速度ωmおよび回転加速度ωm’は滑らかに変化せず、不規則に歪んだ波形を示す。このようなスティック-スリップ現象が発生すると、回転が滑らかではなく不規則に変化する状態にあるモータ2から出力軸6に取り付けられた負荷に出力軸6を介してトルクが伝わる。その結果、負荷Lにおいても高周波成分を含む振動が発生し好ましくない。
This rapid change is caused by, for example, an increase in the nonlinear frictional effect caused by the friction between the
(1-2)本発明の第1の実施形態に係る外乱オブザーバ装置の構成と動作
本実施形態では、SVMNC(Sensitivity-variable Motor-side Normalization Compensator)を外乱オブザーバ装置に用いることで、スティック-スリップ現象の影響を効果的に低減させるようにしている。SVNMCは、モータの出力軸が受けるねじりトルクとモータの電流指令値とモータの回転速度とに基づいて外乱を補償するトルク補償値を算出する装置であり、SVMNC55aの特性を表す後述の感度関数がモータ2の回転速度ωmに基づいて設定されるように構成されている。そして、図4に示す本実施形態の外乱オブザーバ装置50では、補償値演算部としてのSVMNC55aが上記の制御入力に基づいて摩擦トルクτdmを補償するトルク補償値を算出し、トルク補償値が制御目標値である電流ictrlにフィードバックされるように構成している。本実施形態では、このように外乱オブザーバ装置50を構成することで、スティック-スリップ現象を抑制するようにしている。
(1-2) Configuration and operation of the disturbance observer device according to the first embodiment of the present invention In this embodiment, by using a SVMNC (Sensitivity-variable Motor-side Normalization Compensator) in the disturbance observer device, stick-slip The effect of the phenomenon is effectively reduced. The SVNMC is a device that calculates a torque compensation value for compensating for disturbance based on the torsional torque received by the motor output shaft, the motor current command value, and the motor rotation speed. It is configured to be set based on the rotation speed ω m of the
以下では、図4に示すブロック線図を用いて、外乱オブザーバ装置50の構成をより詳細に説明する。図4のブロック線図は、制御系全体を示す図であり、モータ2を運動学モデル20、減速装置3を運動学モデル90として表している。また、外乱オブザーバ装置50も同様にモデル化されて表されている。なお、モータ2及び減速装置3は、出力軸6が弾性を有していたり、減速機構10のギア歯が弾性結合していたりするなどのために、所定の共振周波数で振動する機械共振系である。そのため、図4では、モータ2及び減速装置3を二慣性共振系の近似化モデルを用いて表している。
The configuration of the
まずは、モータ2をモデル化した運動学モデル20について説明する。モータ2は、Ktをゲインに有する乗算器20dと、1/Jmをゲインに有する乗算器20eと、非線形特性を有する摩擦トルクをモデル化した外乱要素20gと、減算器20cと、加算器20fと、2つの積分器20a、20bとで構成される。図中の、Ktはトルク定数であり、Jmはモータ2の慣性モーメントであり、sはラプラス演算子である。
First, the
運動学モデル20では、電流指令値iq
refと、減速装置3からモータ2の出力軸2a(図2)が受けるトルクの値であるトルク応答値とがモータ2に入力され、出力軸2aの回転速度ωmと出力軸2aの回転角度を表す角度位置θmとがモータ2から出力されるように表されている。
In the
モータ2に入力された電流指令値iq
refは、乗算器20dにおいてトルク定数Ktを乗算され、電流指令値iq
refに応じたトルク値τrefに変換される。当該トルク値τrefは、減算器20cにおいて、後述するモータ2の外乱トルクτdisを減算される。このようにして減算器20cでは、出力軸2aに生じる出力トルク値τrefが等価的に算出される。
A current command value i q ref input to the
出力トルク値は、乗算器20eに入力され、モータ2の出力軸2aの慣性モーメントJmの逆数を乗算される。乗算器20eでは、出力軸2aに生じる加速度を表す回転加速度
回転速度ωmは積分器20aに入力されて積分される。積分器20aでは、角度位置θmが等価的に算出される。一方で、回転速度ωmには非線形特性を持った外乱要素20gが適用され、この外乱は、スティック-スリップ現象によりモータ2の出力軸2aに作用する摩擦力に対応する。回転速度ωmに非線形特性の外乱要素20gが適用されて得られた摩擦トルクτdmは、加算器20fに入力され、前述のトルク応答値と加算される。加算器20fでは、モータ2に生じる外乱トルクτdisが等価的に算出される。
The rotation speed ω m is input to the
以上のように、電流指令値iq
refと、減速装置3からのトルク応答値とに基づいて回転速度ωmと角度位置θmとが算出され、モータ2から出力される。モータ2から出力された回転速度ωmは、図4に示す外乱オブザーバ装置50の中のSVMNC55aに入力される。モータ2から出力された回転速度ωmを入力として受け取ったSVMNC55aを含む外乱オブザーバ装置50では、スティック-スリップ現象による非線形な摩擦トルクτdmを抑制可能な外乱補償演算を行う。
As described above, the rotation speed ω m and the angular position θ m are calculated based on the current command value i q ref and the torque response value from the
次に、減速装置3をモデル化した運動学モデル90について説明する。運動学モデル90では、出力軸6と減速機構10とがモデル化されており、紙面上段の点線で囲まれた領域が出力軸6に対応する運動学モデルであり、紙面下段の点線で囲まれた領域が減速機構10に対応する運動学モデルである。減速装置3の減速機構10に対応する運動学モデルは、減速機構10の減速比Rgの逆数をゲインに有する乗算器90d、90eと、減算器90hと、ばね定数Ksをゲインとして有する乗算器90gと積分器90fとで構成される。一方、出力軸6に対応する運動学モデルは、減算器90iと、出力軸6の慣性モーメントJlの逆数をゲインとして有する乗算器90aと、積分器90b、90cとで構成される。二慣性共振系の近似化モデルでは、減速装置3の出力軸6に生じるねじりトルクτsが、出力軸2a及び出力軸6の速度差により生じるねじり角と、モータ2及び減速装置3間の機械共振振動に依存して定まるばね定数Ksとの積としてモデル化される。そのため、減速装置3の運動学モデル90では、ねじりトルクを等価的に算出するため、出力軸2aの回転速度ωmと減速装置3の出力軸6の回転速度ωlとが減速機構10に入力されるように表されている。
Next, a kinematic model 90 that models the
また、減速装置3の運動学モデル90では、ねじりトルクτsが、出力軸6側と、帯域がLs(s)であるトルクセンサ8とに出力され、前述のトルク応答値がモータ2に出力されるように表されている。減速機構10へ入力された回転速度ωmは、乗算器90eで減速比Rgの逆数を乗算される。これは出力軸2aの回転が減速機構10で減速されることを表している。乗算器90eでは、回転速度ωmが減速機構10で減速後の回転速度、すなわち、出力軸6側での回転速度に変換される。
Further, in the kinematic model 90 of the
減算器90hでは、回転速度ωmから乗算器90eにて減速比Rgの逆数を乗算されて減速後の値に変換されたものから回転速度ωlが減算され、出力軸2aと出力軸6との速度差が算出される。減算器90hの出力は、積分器90fに入力され、積分されるのに続いて乗算器90gによりばね定数Ksを乗算される。積分器90fでは、出力軸2aと出力軸6との速度差を積分することで出力軸2aと出力軸6とのねじり角θsが算出され、当該積分結果にばね定数Ksが乗算されてねじりトルクτsが等価的に算出される。
The
算出されたねじりトルクτsは、減速機構10から、トルクセンサ8と出力軸6側とに出力される。またねじりトルクτsは乗算器90dに入力されて減速比Rgの逆数を乗算される。乗算器90dは、ねじりトルクτsをモータ2側の値に変換し、トルク応答値を算出する。トルク応答値は、減速機構10からモータ2へ入力される。ねじりトルクτsを入力されたトルクセンサ8は、ねじりトルクτsの測定値として、出力値τsを外乱オブザーバ装置50に出力する。なお、運動学モデル90では、減速装置3からトルクセンサ8へねじりトルクτsが出力されるように表されているが、実際には、出力軸6に設けられたトルクセンサ8で出力軸6に発生したねじりトルクτsを検出している。
The calculated torsional torque τs is output from the
出力軸6は、減算器90iと、出力軸6の慣性モーメントJlの逆数をゲインとして有する乗算器90aと、積分器90b、90cとを有し、ねじりトルクτsと、出力軸6の外乱トルクτl
extが出力軸6に入力され、出力軸6の回転速度を表す回転速度ωlと出力軸6の回転角度を表す角度位置θlとが出力軸6から出力されるように表されている。出力軸6に入力されたねじりトルクτsは、減算器90iで出力軸6に入力された外乱トルクτl
extを減算される。減算器90iでは、ねじりトルクτsから外乱トルクτl
ext成分が除かれ、出力軸6に生じる出力トルク値が算出される。
The
出力トルク値は、乗算器90aに入力され、出力軸6の慣性モーメントJlの逆数を乗算される。乗算器90aでは、出力軸6に生じる加速度を表す回転加速度
次に、外乱オブザーバ装置50の構成と動作について説明する。まず、外乱オブザーバ装置50の概要について説明する。外乱オブザーバ装置50は、トルクセンサ8からねじりトルクτsの測定値を制御入力として受信する。また、外乱オブザーバ装置50は、モータ制御装置5から回転速度ωmを制御入力として受信する。さらに、外乱オブザーバ装置50は、モータ2の電流指令値iq
refを制御入力として受け取る。なお、回転速度ωmは、モータ制御装置5が、ロータリ・エンコーダ4からモータ2の出力軸2aの角度位置θmを表すデータを周期的に受信し、時間あたりの角度位置θmの変化率を求めることで得られる。また、ロータリ・エンコーダ4が角度位置θmを表すデータをアナログ信号として出力し、モータ制御装置5が当該アナログ信号を例えば微分器などを用いて微分することで、回転速度ωmを算出するようにしてもよい。図4では、便宜的に、モータ2の回転速度ωmがモータ2から外乱オブザーバ装置50のSVMNC55aに直接入力されるように示されている。
Next, the configuration and operation of the
外乱オブザーバ装置50は、ねじりトルクτsと回転速度ωmと電流指令値iq
refとに基づいて、摩擦トルクτdmによる外乱を補償する補償トルク(トルク補償値ともいう)を算出する。外乱オブザーバ装置50は、算出したトルク補償値を電流値に変換して加減算器530に出力し、制御目標値である電流ictrlにフィードバックする。本実施形態では、電流ictrlに外乱オブザーバ装置50の出力がフィードバックされて電流指令値iq
refが算出される。これにより、モータ2の出力軸2aに生じた摩擦トルクτdmが補償され、外乱が抑制される。
The
次いで、外乱オブザーバ装置50の構成について説明する。外乱オブザーバ装置50は、摩擦トルクτdmによる外乱を抑制するための制御計算を実行するSVMNC55a、加算器50a、利得要素50b、50c、50dおよび加算器50eを備える。利得要素50cは、ねじりトルクτsの測定値を受信し、減速機構10の減速比Rgの逆数に等しい利得を乗じてモータ2側のトルク値に変換してSVMNC55aに制御入力として出力する。利得要素50dは、モータ2から入力された電流指令値iq
refにトルク定数に相当する利得係数Kmを乗じてトルク値に変換し、SVMNC55aに制御入力として出力する。
Next, the configuration of the
SVMNC55aは、ねじりトルクτsをモータ2側のトルク値に変換した値と、電流指令値iq
refをトルク値に変換した値とモータ2の回転速度ωmとに基づいて、摩擦トルクτdmを補償するトルク補償値を定常成分と過渡成分とに分けて算出し、算出結果を別々に出力するように構成される。特に、トルク補償値の過渡成分に関しては、対応する高次の応答特性関数を表す多項式の各々の次数について、トルク補償値の1次成分、2次成分、・・・、N次成分を別々に出力するように構成される。
The
SVMNC55aでは、まず、モータ2側の力学モデルに基づいて摩擦トルクτdmの理論値が次式によって算出される。
τdm=Km・iq
ref-τs/Rg+Jmn・ωm・s
ここで、Jmnはモータ2のイナーシャである。三項目はモータ2のイナーシャJmnにモータ2の回転速度ωmの微分値、すなわち回転加速度ωm’をかけた値に相当する項であり、モータ2の出力軸2aに生じたトルクに相当する値である。
In the
τ dm = K m ·i q ref −τs/R g +J mn ·ω m ·s
where J mn is the inertia of
その後、SVMNC55aでは、算出した摩擦トルクτdmの理論値が高次のローパスフィルタに通されることで、トルク補償値が算出される。高次のローパスフィルタは、その特性がモータ2の回転速度ωmに応じて可変となるように設計されている。このように、補償値算出部としてのSVMNC55aは、上記の3つの制御入力に基づいて摩擦トルクτdmの理論値を算出し、算出された摩擦トルクτdmの理論値をフィルタするフィルタとして構成されている。図4に示すモデルでは、SVMNC55aの出力は、摩擦トルクτdmと高次のローパスフィルタの伝達関数の積となる。フィルタの特性は感度関数として表される。本実施形態では、このローパスフィルタが3次のローパスフィルタであり、感度関数が下記の式に設計されている。
ここで、α1(ωm)、α2(ωm)、α3(ωm)はモータ2の回転速度ωmに依存する係数であり、図6に示すスイッチングパターンによって定められる値である。図6は、横軸がモータ2の回転速度ωmであり、縦軸がα1(ωm)、α2(ωm)、α3(ωm)(図6ではα1、α2、α3と表記)の値であり、回転速度ωmに応じたα1(ωm)、α2(ωm)、α3(ωm)の値を示すグラフである。スイッチングパターンでは、α1(ωm)、α2(ωm)、α3(ωm)の値がモータ2の回転速度ωmに応じて定められるようになっている。このスイッチングパターンは、事前に観測したスリップ-スティック現象などに基づいて適宜設定できる。
Here, α 1 (ω m ), α 2 (ω m ), and α 3 (ω m ) are coefficients dependent on the rotation speed ω m of the
回転速度ωmに応じてα1(ωm)、α2(ωm)、α3(ωm)の値が変わり、パラメータφ0、φ1、φ2の値も変わるので、感度関数も変わる。このように、回転速度ωmに応じてローパスフィルタの感度(特性)を変えることができる。なお、上記の感度関数を有するローパスフィルタの伝達関数は、例えば、α1(ωm)=α2(ωm)=α3(ωm)=1の場合、下記式で表される。
外乱オブザーバ装置50は、可変利得要素59(a)、59(b)、59(c)をさらに備えている。可変利得要素59(a)は可変利得α1(ωm)を有し、可変利得要素59(b)は可変利得α2(ωm)を有し、可変利得要素59(c)は可変利得α3(ωm)を有している。可変利得α1(ωm)、α2(ωm)、α3(ωm)の値は、モータ2の回転速度ωmに基づいて変えることができる。可変利得要素59(a)は、SVMNC55aで算出された摩擦トルクτdmのトルク補償値の1次成分が入力され、可変利得要素59(b)は、トルク補償値の2次成分が入力され、可変利得要素59(c)は、トルク補償値の3次成分が入力される。可変利得要素59(a)、59(b)、59(c)は、入力されたトルク補償値(トルク補償値の1次成分、2次成分および3次成分)に、各々が有する可変利得α1(ωm)、α2(ωm)、α3(ωm)を乗算する。可変利得要素59(a)、59(b)、59(c)は、利得を乗算された摩擦トルクτdmの過渡成分のトルク補償値を加算器50eにそれぞれ出力する。なお、可変利得要素59(a)、59(b)、59(c)の可変利得α1(ωm)、α2(ωm)、α3(ωm)は、図6に示すスイッチングパターンを用い、回転速度ωmに基づいて設定される。
The
加算器50eは、3つの摩擦トルクτdmの過渡成分を加算し、合計値を加算器50aに出力する。加算器50aにはSVMNC55aから摩擦トルクτdmの定常成分も入力されており、加算器50aは、摩擦トルクτdmの定常成分(0次成分)と、摩擦トルクτdmの過渡成分の合計値とを加算し、利得要素50bに出力する。利得要素50bは、加算器50aから受信した出力に、トルク定数に相当する利得係数Kmの逆数に等しい利得を乗じてトルク値を電流値に変換し、トルク補償指令信号として加減算器530に出力する。加減算器530は、制御目標値である電流ictrlにトルク補償指令信号を加算する。このように、トルク補償指令信号が制御目標値である電流ictrlに加算されることで、外乱が抑えられ、スティック-スリップ現象が抑制される。
The
なお、α1(ωm)=α2(ωm)=α3(ωm)=0の速度領域では、過渡成分に乗算されるすべてのゲインが0であるので、定常成分のみからトルク補償指令信号が算出される。α1(ωm)=1、α2(ωm)=α3(ωm)=0の速度領域では、定常成分と1次成分との和からトルク補償指令信号が算出される。α1(ωm)=α2(ωm)=1、α3(ωm)=0の速度領域では、定常成分と1次成分と2次成分との和からトルク補償指令信号が算出される。α1(ωm)=α2(ωm)=α3(ωm)=1の速度領域では、定常成分と1次成分と2次成分と3次成分との和からトルク補償指令信号が算出される。 In the speed region of α 1 (ω m )=α 2 (ω m )=α 3 (ω m )=0, all the gains multiplied by the transient component are 0. A command signal is calculated. In the speed region where α 1 (ω m )=1 and α 2 (ω m )=α 3 (ω m )=0, the torque compensation command signal is calculated from the sum of the steady component and the primary component. In the speed region of α 1 (ω m )=α 2 (ω m )=1 and α 3 (ω m )=0, the torque compensation command signal is calculated from the sum of the steady component, primary component and secondary component. be. In the speed region of α 1 (ω m )=α 2 (ω m )=α 3 (ω m )=1, the torque compensation command signal is obtained from the sum of the stationary component, the primary component, the secondary component, and the tertiary component. Calculated.
以上より、第1の実施形態に係る外乱オブザーバ装置50によれば、モータ2の回転速度ωmに応じて感度関数の特性を変えて摩擦トルクτdmのトルク補償値を算出するので、クーロン摩擦や粘性摩擦がモータ2の出力軸2aに作用することにより生じた過渡的な外乱(スティック-スリップ現象)を動的に抑制できる。よって、摩擦特性の高精度なモデリングおよび関連する物理量の高精度な同定を必要とせずに、モータ2の出力軸2aに作用する摩擦力の推定とこれによる外乱の補償を適切に行うことができるモータ制御装置5を実現することができる。
As described above, according to the
(1-3)第1の実施形態に係る外乱オブザーバによる外乱抑制効果の評価
次に、第1の実施形態に係る外乱オブザーバ装置50による外乱抑制効果について検討する。以下では、従来の外乱抑制方式であるZOMNC(Zero-order MNC)を用いた外乱抑制方式を比較対象として、外乱オブザーバ装置50を評価する。ZOMNCは、摩擦外乱をステップ関数として近似して設計したMNCであり、摩擦トルクτdmの定常成分(ゼロ次成分)からトルク補償値を算出する。ここでは、図4に示すモデルをSVMNC及びZOMNCの両方でシミュレーションし、シミュレーションにより得られたモータ2の回転速度ωmと回転加速度ωm’の過渡特性を比較することで、外乱抑制効果を評価した。図7にシミュレーション結果を示す。図7の紙面上部のグラフが回転加速度ωm’の結果であり、横軸が時間、縦軸が回転加速度ωm’を表す。図7の紙面下部のグラフが回転速度ωmの結果であり、横軸が時間、縦軸が回転速度ωmを示す。図7のグラフでは、点線がSVMNCの結果であり、実線がZOMNCの結果である。
(1-3) Evaluation of disturbance suppression effect by disturbance observer according to first embodiment Next, the disturbance suppression effect by the
ZOMNCでは、モータ2の回転速度ωmの波形は、図のSV(A)およびSV(B)の領域に示すような不規則に歪んだ形であった。図7のSV(A)およびSV(B)の領域に対応するSV(1)およびSV(2)の領域にみられるように、モータ2の回転速度ωmがほぼゼロとなった後に急激に変化しており、スティック-スリップ現象が生じていることがわかる。また、回転加速度ωm’についても、図7のPK(A)およびPK(B)の領域に示すように、モータ2の回転速度ωmの急激な変化に対応するピークがみられ、スティック-スリップ現象が生じていることが確認できる。
In ZOMNC, the waveform of the rotational speed ω m of the
一方で、SVMNCでは、モータ2の回転速度ωmの波形はZOMNCの波形より滑らかになっており、ZOMNCにおいてスティック-スリップ現象が見られた図7のSV(1)およびSV(2)の領域においても、スティック-スリップ現象が生じていないことが確認できる。このように、第1の実施形態の外乱オブザーバはスティック-スリップ現象を抑制できることが確認できた。
On the other hand, in the SVMNC, the waveform of the rotational speed ω m of the
<2>第2の実施形態
以下、図4と同じ構成には同じ番号を付した図8を参照しながら、本発明の第2の実施形態に係るモータ制御装置について説明する。第2の実施形態のモータ制御装置は、第1の実施形態のモータ制御装置に対して、モータ2の回転速度ωmに基づいて算出した正の高周波ダンピング項を制御目標値である電流ictrlにフィードバックすることで、モータ2の回転速度ωm及び回転加速度ωm’の高周波成分を除去し、スティック-スリップ現象をより抑制できるようにしたものである。第2の実施形態のモータ制御装置は、高周波ダンピング項演算部57と、高周波ダンピング項演算部57の出力を制御目標値である電流ictrlにフィードバックするか否かを切り替える切り替えスイッチSW(1)とを有している点で、第1の実施形態のモータ制御装置と異なる。他の構成は第1の実施形態のモータ制御装置と同じであるので説明を省略する。
<2> Second Embodiment Hereinafter, a motor control device according to a second embodiment of the present invention will be described with reference to FIG. 8 in which the same numbers are assigned to the same configurations as in FIG. Unlike the motor control device of the first embodiment, the motor control device of the second embodiment adds a positive high-frequency damping term calculated based on the rotation speed ω m of the
高周波ダンピング項演算部57は、ゲインがKνの利得要素57aと、高周波成分算出要素57bとを備えている。高周波成分算出要素57bは、モータ2の回転速度ωmが入力され、当該回転速度ωmに基づいて、モータ2の回転速度及び回転加速度の高周波成分を除去するために、高周波ダンピング項として制御目標値にフィードバックする高周波成分を算出する。本実施形態では、高周波成分算出要素57bは、伝達関数がs/(s+gdmp)のハイパスフィルタとして構成されており、回転速度ωmをハイパスフィルタに通して利得要素57aに出力する。図8に示すモデル上では、モータ2の回転速度ωmとハイパスフィルタの伝達関数s/(s+gdmp)との積が算出される。なお、gdmpは、ハイパスフィルタの帯域である。利得要素57aは、高周波成分算出要素57bの出力を、ゲインKν倍して高周波ダンピング項を算出する。このようにして、高周波ダンピング項演算部57は、高周波ダンピング項τHFD=Kν・s/(s+gdmp)・ωmを算出する。算出された高周波ダンピング項τHFDは、利得要素57aから切り替えスイッチSW(1)に出力される。
The high-frequency damping
切り替えスイッチSW(1)は、モータ2の回転速度ωmに基づいて高周波ダンピング項τHFDを加減算器530(2)に出力するか否か切り替える。切り替えスイッチSW(1)は、モータ2の回転速度の絶対値|ωm|が所定のスイッチ切り替え閾値ωthld以上の場合、オン状態にされて加減算器530(2)に接続され、高周波ダンピング項τHFDを加減算器530(2)に出力する。一方、切り替えスイッチSW(1)は、モータ2の回転速度の絶対値|ωm|が所定のスイッチ切り替え閾値ωthldより小さい場合、オフ状態にされて加減算器530(2)との接続が切断され、高周波ダンピング項τHFDを加減算器530(2)に出力できなくされる。スイッチ切り替え閾値ωthldは、スティック-スリップ現象の観察から実験的に適宜決められる値である。加減算器530(2)は、制御目標値である電流ictrlから高周波ダンピング項τHFDを減算して制御目標値を補正し、減算結果(補正された制御目標値)を加減算器530(1)に出力する。加減算器530(1)では、加減算器530(2)から入力された電流(補正された制御目標値)と外乱オブザーバ装置50で算出されたトルク補償指令信号とが加算されて電流指令値Iq
refが算出される。
A switch SW(1) switches whether or not to output the high-frequency damping term τ HFD to the adder/subtractor 530(2) based on the rotational speed ω m of the
以下、図9を参照しながら、第2の実施形態に係る外乱抑制方式による外乱抑制効果をシミュレーションおよび実験により評価した結果について検討する。以下、第2の実施形態に従って実施される外乱抑制方式を「SVMNC+HFdamping」と略記する。ここでは、第1の実施形態で行ったシミュレーションのモデルに、高周波ダンピング項演算部57を追加したモデルを用いてシミュレーションし、得られた結果を、第1実施形態のSVMNCのシミュレーション結果と比較した。その結果を図9に示す。図9では。SVMNC+HFdampingは一点鎖線で表されている。
The results of evaluating the disturbance suppression effect of the disturbance suppression method according to the second embodiment through simulations and experiments will be discussed below with reference to FIG. 9 . Hereinafter, the disturbance suppression method implemented according to the second embodiment is abbreviated as "SVMNC+HF damping". Here, a simulation is performed using a model obtained by adding a high-frequency damping
図9に示すように、SVMNC+HFdampingの波形がSVMNCの波形と比較してなだらかになっており、高周波成分が除去されて、よりスティック-スリップ現象が抑制されていることが確認できる。 As shown in FIG. 9, the SVMNC+HF damping waveform is smoother than the SVMNC waveform, and it can be confirmed that the high frequency components are removed and the stick-slip phenomenon is further suppressed.
高周波成分の除去効果をより検証するために、上記のシミュレーション結果を用いてモータ2の回転加速度ωm’応答の周波数解析を行った。周波数解析は7~8secの加速度応答1サイクルのデータを高速フーリエ変換することで行った。その結果を図10と図11に示す。図10は横軸を周波数とし、図11では横軸を高調波の次数とし、縦軸は両図とも回転加速度ωm’として示している。図10中の実線の内、線が太く5Hz付近に大きなピークがある方がZOMNCの結果である。図10において、SVMNCとSVMNC+HFdampingを比較すると、特に周波数が高い領域(10Hzから15Hzの領域)でSVMNC+HFdampingの方が、この領域の周波数成分の回転加速度が低く、高周波成分が抑制されていることがわかる。また、図11を見ると、ほぼすべての高調波で、SVMNCよりもSVMNC+HFdampingの方が回転加速度が低く、高周波成分が抑制されていることがわかる。
In order to further verify the effect of removing high-frequency components, frequency analysis of the rotational acceleration ω m ′ response of the
このことは、THD(Total Harmonic Distortion:全高調波歪)の計算結果からもわかる。THDの計算結果を表1に示す。表1に示すように、SVMNCよりもSVMNC+HFdampingの方がTHDが低くて非線形性が低く、より高周波成分が除去されていることがわかる。
<3>第3の実施形態
以下、図4と同じ構成には同じ番号を付した図12を参照しながら、本発明の第3の実施形態に係るモータ制御装置について説明する。第3の実施形態のモータ制御装置は、第1の実施形態のモータ制御装置とは、補償値演算部としてのSTMNC55bを備える点で異なる。第3の実施形態のモータ制御装置の外乱オブザーバ装置60のSTMNC55bは、2次系として構成され、モータ2の回転速度ωmに基づいて感度関数を設定される。他の構成は第1の実施形態のモータ制御装置と同じなので、説明を省略する。
<3> Third Embodiment Hereinafter, a motor control device according to a third embodiment of the present invention will be described with reference to FIG. 12 in which the same numbers are assigned to the same configurations as in FIG. The motor control device of the third embodiment differs from the motor control device of the first embodiment in that it includes an
STMNC55bは、第1の実施形態と同様に、ねじりトルクτsをモータ2側のトルク値に変換した値と、電流指令値iq
refをトルク値に変換した値と、モータ2の回転速度ωmとに基づいて、摩擦トルクτdmを算出する。STMNC55bは、算出した摩擦トルクτdmを下記の式で表される感度関数を有する2次のローパスフィルタに通すことで、摩擦トルクτdmの補償値を算出する。
この感度関数は、図6のスイッチングパターンにおいて、α1=α2=0となるモータ2の回転速度ωmの速度領域では、
このように、第3の実施形態のSTMNC55bは、モータ2の回転速度ωmに基づいて感度関数を切り替えることができる。STMNC55bは、算出したトルク補償値の0次成分と1次成分と2次成分とをそれぞれ別々に出力する。0次成分は直接、1次成分は利得要素61で可変利得α1(ωm)を乗算されて、2次成分は利得要素62で可変利得α2(ωm)を乗算されて加算器50fに入力される。α1(ωm)、α2(ωm)は、図6のスイッチングパターンによってモータ2の回転速度ωmに基づいて定められる値である。
Thus, the
以上から、第3の実施形態のモータ制御装置は、第1実施形態のモータ制御装置と同様に、制御対象となるモータ2への電流指令値iq
ref、モータ2の回転速度ωmおよび2モータに減速機構10を介して接続された出力軸6のねじりトルクτsの測定値を制御入力として受け取り、モータ2の出力軸2aに作用する摩擦トルクτdmによる外乱を抑制する外乱オブザーバ装置60を備え、外乱オブザーバ装置60が、上記制御入力に基づいて摩擦トルクτdmを補償するトルク補償値を算出する補償値算出部(STMNC55b)を有し、STMNC55bの特性を表す感度関数がモータ2の回転速度ωmに基づいて設定されるので、第1の実施形態と同様の効果を奏する。さらに、第3の実施形態のモータ制御装置は、第1の実施形態のモータ制御装置に対して外乱オブザーバ装置60の感度関数が簡便であるというメリットを有する。よって、第3の実施形態のモータ制御装置は、外乱オブザーバ装置60での演算が第1の実施形態の外乱オブザーバ装置50よりも比較的容易であり、計算負荷が軽い。そのため、第3の実施形態のモータ制御装置を、高性能の演算装置を用いなくても実装でき、安価に構成できる。さらに、第3の実施形態のモータ制御装置は、極やスイッチングパターンなどの設計すべきパラメータが少なく、感度関数を容易に設計できる。特に、モータ制御装置の設計において経験等によって設定した実際のモータ2や減速装置3のパラメータが、上述の運動学モデル20、90におけるモータ2や減速装置3のパラメータと当初より適合していた場合には、設計の試行回数を少なくできる。加えて、後述の強化学習により感度関数の制御パラメータの設計をする場合も第1実施形態の外乱オブザーバ装置50と比較して計算負荷が軽く、安価な構成で強化学習を行うことができる。なお、第2の実施形態で説明した高周波ダンピング項演算部を、第3の実施形態のモータ制御装置に組み込むこともできる。
As described above, the motor control device of the third embodiment, like the motor control device of the first embodiment, provides the current command value i q ref to the
<4>第4の実施形態
第4の実施形態のモータ制御装置は、制御パラメータとしてのスイッチ切り替え閾値ωthid、モータ2への外乱補償特性を記述する特性係数、高周波成分算出要素57bのフィルタ特性係数、および利得要素57aのゲインKνなどの内の少なくとも一つ以上を機械学習により設定する機械学習装置を備えている点で、第1~第3の実施形態と異なる。モータへの外乱補償特性を記述する特性係数としては、例えば、極g0、g1、g2、g3、帯域(極)gdm、可変利得α1(ωm)、α2(ωm)、α3(ωm)などがあげられ、高周波成分算出要素のフィルタ特性係数としては、帯域gdmpなどがあげられる。以下では、機械学習装置を中心に説明する。また、外乱オブザーバ装置50の可変利得α1(ωm)、α2(ωm)、α3(ωm)を機械学習する場合を例として説明する。なお、可変利得α1(ωm)、α2(ωm)、α3(ωm)はモータ2の回転速度ωmに依存して決まる値であるので、機械学習により設定するのは、可変利得α1(ωm)、α2(ωm)、α3(ωm)の回転速度ωm依存性(回転速度ωmに基づいて可変利得の値を算出すための関数)の特性や上述のスイッチングパターンの波形の形状などである。
<4> Fourth Embodiment A motor control device according to a fourth embodiment includes a switch switching threshold ω thid as a control parameter, a characteristic coefficient describing a disturbance compensation characteristic to the
図13は、第4の実施形態による機械学習装置140を備えるモータ制御装置5の概略的な機能ブロック図である。機械学習装置140は、状態観測部181と、判定データ生成部182と、学習部141と、意思決定部と148とを備える。状態観測部181は、モータ2の状態を、環境の現在状態を表す状態変数Sとして観測する。状態観測部181は、状態変数Sとして、モータ2の回転速度ωm(S1)、トルク値(S2)、モータ電流(S3)およびモータ温度(S4)などを観測する。状態観測部181は、これらすべての状態変数Sを観測してもよく、これらの状態変数Sの内の少なくとも一つを観測してもよい。また、状態観測部181は、上記以外のモータ2に関連する物理量を状態変数Sとして観測してもよい。
FIG. 13 is a schematic functional block diagram of a
本実施形態では、状態観測部181は、上記の状態変数S1、S2、S3を外乱オブザーバ装置50から取得し、モータ温度(S4)をモータ2の筐体に設けた図示しない温度検出器から取得している。ここで、モータ2の回転速度ωm(S1)は、ロータリ・エンコーダ4から出力された角度位置に基づいてモータ制御装置5で算出され、外乱オブザーバ装置50に入力される値である。そのため、状態観測部181は、モータ2の回転速度ωmをモータ制御装置5から取得してもよい。さらに、状態観測部181は、ロータリ・エンコーダ4から角度位置を取得し、モータ2の回転速度ωmを算出してもよい。また、トルク値(S2)は、トルクセンサ8で測定したねじりトルクτsである。そのため、状態観測部181は、トルクセンサ8からトルク値としてねじりトルクτsを取得してもよい。なお、トルク値は、ねじりトルクτsに減速比の逆数をかけてモータ2側のトルク値に変換した値であってもよい。モータ電流(S3)は、モータ2の電流指令値iq
refである。電流指令値iq
refはモータ制御装置5で算出されるので、状態観測部181は、モータ制御装置5からモータ電流として電流指令値iq
refを取得してもよい。また、状態変数S1、S2、S3、S4は、後述の速度波形データと同じ期間の時系列データであってもよい。
In this embodiment, the
判定データ生成部182は、モータ2の回転状態を示す速度波形データに基づく判定データDを生成する。判定データDは、状態変数Sの下で制御パラメータ(本実施形態の場合は、可変利得α1(ωm)、α2(ωm)、α3(ωm)の少なくとも一つ)を変えた場合の結果を表す指標である。判定データ生成部182は、外乱オブザーバ装置50からモータ2の回転速度ωmを取得し、回転速度ωmの時系列データである速度波形データを生成する。なお、速度波形データの期間(時系列データの収集期間)は、速度波形データ中にスティック-スリップ現象が少なくとも1回は現れる期間とするのが好ましい。例えば、モータ2の速度波形が正弦波状に周期的に変動している場合は、速度波形データの期間を当該正弦波の1周期の半分の期間とするのが好ましい。
The
判定データ生成部182は、判定データDとして、可変利得α1(ωm)、α2(ωm)、α3(ωm)の少なくとも一つを変えた際の、モータ2の回転状態の適否、すなわち、速度波形データにおいて摩擦トルクτdmによる影響(スティック-スリップ現象)を抑制できているか否かに対する適否判定値D1を用いることができる。例えば、適否判定値D1は、判定データ生成部182が生成した速度波形データと、スティック-スリップ現象が生じていないときの速度波形データとの差分を算出し、差分の絶対値の総和が所定閾値以上のときを不適とし、所定閾値より小さいときを適するとすることで算出できる。なお、本実施形態では、判定データ生成部182が速度波形データをそのまま用いて判定データDを生成しているが、判定データ生成部182は、速度波形データを加工して判定データDを生成してもよい。例えば、回転速度ωmを微分して回転加速度を算出し、速度波形データを加速度波形データに加工し、加速度波形データから判定データDを生成するようにしてもよい。また、速度波形データからTHDを計算し、算出したTHDに基づいてモータ2の回転状態の適否を判定するようにしてもよい。
The determination
学習部に141対して判定データDと同時に入力される状態変数Sは、学習部141による学習周期で考えた場合、判定データDが取得された1学習周期前のデータに基づくものとなる。このように、機械学習装置140が学習を進める間、環境においては、状態変数Sの取得、後述の意思決定部148による可変利得α1(ωm)、α2(ωm)、α3(ωm)の再設定(変更)、変更後の可変利得α1(ωm)、α2(ωm)、α3(ωm)を用いて算出したトルク補償値による摩擦トルクτdmの制御、変更後の速度波形データ生成、判定データDの生成が繰り返し実施される。
The state variable S input to the
学習部141は、状態変数Sと判定データDとを用いて、モータ2の回転状態と、制御パラメータとしての可変利得α1(ωm)、α2(ωm)、α3(ωm)の少なくとも一つとを関連付けて学習する。学習部141は、機械学習と総称される任意の学習アルゴリズムにしたがって学習する。学習アルゴリズムの例については後述する。学習部141は、前述した状態変数Sと判定データDとを含むデータ集合に基づく学習を反復実行することができる。上記学習中、状態変数Sは、上記したように1学習周期前に取得されたモータ2の回転速度ωm(S1)、トルク値(S2)、モータ電流(S3)およびモータ温度(S4)とし、判定データDは、制御パラメータの変更が為された状態での今回の学習周期における速度波形データに基づく適否判定結果とする。
The
このような学習サイクルを繰り返すことにより、可変利得α1(ωm)、α2(ωm)、α3(ωm)の少なくとも一つとモータ2の回転状態との相関性を暗示する特徴が次第に明らかになっていく。学習アルゴリズムの開始時には可変利得α1(ωm)、α2(ωm)、α3(ωm)の少なくとも一つとモータ2の回転状態との相関性は実質的に未知であるが、学習部141は、学習を進めるに従い徐々に相関性についての特徴を見出し、相関性を解釈していく。可変利得α1(ωm)、α2(ωm)、α3(ωm)の少なくとも一つとモータ2の回転状態との相関性がある程度信頼できる水準まで解釈されると、学習部141が反復出力する学習結果は、現在状態(つまり摩擦トルクτdmによるスリップ-スティック現象が生じている状態)に対して、可変利得α1(ωm)、α2(ωm)、α3(ωm)の少なくとも一つをどのように設定すべきかという行動(つまり意思決定)を行うために使用できるものとなる。つまり学習部141は、学習アルゴリズムの進行に伴い、上記相関性を最適解に徐々に近づけることができる。
By repeating such a learning cycle, at least one of the variable gains α 1 (ω m ), α 2 (ω m ), α 3 (ω m ) and the rotation state of the
意思決定部148は、外乱オブザーバ装置50に設定されている制御パラメータ(本実施形態では、可変利得α1(ωm)、α2(ωm)、α3(ωm)の少なくとも一つ)を、学習部141による学習結果に基づいて算出された制御パラメータに設定する。また、意思決定部148は、学習時に、制御パラメータとモータ2の回転状態とを関連付ける学習をするために、外乱オブザーバ装置50の制御パラメータを適宜設定する。このような機械学習装置140は、例えば図3に示したプロセッサ510の一機能として構成してもよく、図3に示す記憶部520に記憶されたプロセッサ510を機能させるためのソフトウェアとして構成してもよい。また機械学習装置140は、モータ制御装置5と一体に設けてもよく、モータ制御装置5とは別の筐体に設けてもよい。
The decision-
機械学習装置140は、モータ制御装置5に対する機械学習装置であって、モータ2の状態を、環境の現在状態を表す回転速度(S1)、トルク値(S2)、モータ電流(S3)およびモータ温度(S4)のうちの少なくとも一つを含んだ状態変数Sとして観測する状態観測部181と、モータ2の回転状態を示す速度波形データに基づいた判定データDを取得する判定データ生成部182と、状態変数Sと判定データDとを用いて、モータ2の回転状態と、可変利得α1(ωm)、α2(ωm)、α3(ωm)(制御パラメータ)の少なくとも一つとを関連付けて学習する学習部141と、学習部141による学習結果に基づき、可変利得α1(ωm)、α2(ωm)、α3(ωm)を設定する意思決定部148とを有している。
The
よって機械学習装置140は、学習部141の学習結果を用いることで、モータ2の出力軸2aに生じた摩擦トルクτdm(スティック-スリップ現象)の大きさに応じた、制御パラメータを、演算や目算によらずに自動的に、しかも正確に求めることができるようになる。そして、制御パラメータを、演算や目算によらずに自動的に求めることができれば、制御パラメータを迅速かつ適切に決定することができる。したがって、制御パラメータの設定を効率よく行うことができる。さらに、機械学習装置140は、モータ2の使用によりオイルの量やオイルの粘性が変化するなどして摩擦トルクτdmが変化し、モータ2に働く摩擦トルクτdmの特性が変わった場合も、機械学習装置140により自動で適切にパラメータを再設定でき、自動でスティック-スリップ現象を抑制できるようにできるので有用である。
Therefore, the
上記構成を有する機械学習装置140では、学習部141が実行する学習アルゴリズムは特に限定されず、機械学習として公知の学習アルゴリズムを採用できる。ここで、学習アルゴリズムの一例として強化学習を説明する。強化学習は、学習対象が存在する環境の現在状態(つまり入力)を観測するとともに現在状態で所定の行動(つまり出力)を実行し、その行動に対し何らかの報酬を与えるというサイクルを試行錯誤的に反復して、報酬の総計が最大化されるような方策(機械学習装置140では制御パラメータの変更量)を最適解として学習する手法である。
In the
機械学習装置140において強化学習を行う場合、図13に示すように、学習部141は報酬演算部141aと行動価値関数更新部141bとをさらに備えるように構成される。報酬演算部141aは、制御パラメータを変更した結果に対する報酬Rを演算する。報酬Rは、制御パラメータ変更後のモータ2の回転状態の適否判定結果(状態変数Sが取得された次の学習周期で用いられる判定データDに相当)に関連する報酬である。行動価値関数更新部141bは、算出された報酬Rに基づいて、行動価値関数Qを更新する。行動価値関数Qは、制御パラメータの変更の価値を表す関数である。学習部141は、行動価値関数更新部141bによって行動価値関数Qの更新を繰り返して、報酬Rが最も多く得られる制御パラメータを学習する。
When reinforcement learning is performed in the
学習部141が実行する強化学習のアルゴリズムの一例を説明する。この例によるアルゴリズムは、Q学習(Q-learning)として知られるものであって、行動主体の状態sと、その状態sで行動主体が選択し得る行動aとを独立変数として、状態sで行動aを選択した場合の行動の価値を表す行動価値関数Q(s,a)を学習する手法である。状態sで行動価値関数Qが最も高くなる行動aを選択することが最適解となる。状態sと行動aとの相関性が未知の状態でQ学習を開始し、任意の状態sで種々の行動aを選択する試行錯誤を繰り返すことで、行動価値関数Qを反復して更新し、最適解に近付ける。ここで、状態sで行動aを選択した結果として環境(つまり状態s)が変化したときに、その変化に応じた報酬(つまり行動aの重み付け)rが得られるように構成し、より高い報酬rが得られる行動aを選択するように学習を誘導することで、行動価値関数Qを比較的短時間で最適解に近付けることができる。行動価値関数Qの更新式は、一般に下記の式のように表すことができる。
An example of a reinforcement learning algorithm executed by the
ここで、st及びatはそれぞれ時刻tにおける状態及び行動であり、行動atにより状態はst+1に変化する。rt+1は、状態がstからst+1に変化したことで得られる報酬である。maxQの項は、時刻t+1で最大の行動価値関数Qになる(と時刻tで考えられている)行動aを行ったときのQを意味する。α及びγはそれぞれ学習係数及び割引率であり、0<α≦1、0<γ≦1で任意設定される。 Here, st and at are the state and action at time t, respectively, and the state changes to st+1 by the action at. rt+1 is the reward obtained by changing the state from st to st+1. The term maxQ means Q when the action a that becomes the maximum action-value function Q at time t+1 (considered at time t) is performed. α and γ are a learning coefficient and a discount rate, respectively, and are arbitrarily set within 0<α≦1 and 0<γ≦1.
学習部141がQ学習を実行する場合、状態観測部181が観測した状態変数S及び判定データ生成部182が生成した判定データDは、更新式の状態sに該当し、現在状態(つまり現在のモータ2の回転状態)に対して制御パラメータをどのように設定するべきかという行動は、更新式の行動aに該当し、報酬演算部141aが求める報酬Rは、更新式の報酬rに該当する。よって行動価値関数更新部141bは、現在状態に対する制御パラメータの変更の価値を表す行動価値関数Qを、報酬Rを用いたQ学習により繰り返し更新する。
When the
報酬演算部141aは、例えば、新たに制御パラメータを設定した後に、設定した制御パラメータによりトルク補償値を算出してモータ2の出力軸2aに生じた摩擦トルクτdmを抑制する制御を行ったときに、報酬Rを算出する。具体的には、報酬演算部141aは、モータ2の回転状態の適否判定結果が「適」と判定された場合に正(プラス)の報酬Rを算出し、モータ2の回転状態の適否判定結果が「否」と判定された場合に負(マイナス)の報酬Rを算出する。正負の報酬Rの絶対値は、互いに同一であってもよいし異なっていてもよい。また、判定の条件として、判定データDに含まれる複数の値を組み合わせて判定するようにしても良い。
For example, after setting a new control parameter, the
また、モータ2の回転状態の適否判定結果を、「適」及び「否」の二通りだけでなく複数段階に設定することができる。例えば、モータ2の回転状態の適否判定に用いた上述の「差分の総和」をVとし、モータ2の回転状態の許容範囲の最大値をVmaxとした場合、差分の総和Vが、0≦V<Vmax/5のときは報酬R=5を与え、Vmax/5≦V<Vmax/2のときは報酬R=2を与え、Vmax/2≦V≦Vmaxのときは報酬R=1を与えるような構成とすることができる。さらに、学習の初期段階はVmaxを比較的大きく設定し、学習が進行するにつれてVmaxを縮小する構成とすることもできる。
Moreover, the propriety determination result of the rotation state of the
行動価値関数更新部141bは、状態変数Sと判定データDと制御パラメータと報酬Rとを、行動価値関数Qで表される行動価値(例えば数値で表される)と関連付けて整理した行動価値テーブルを持つことができる。この場合、行動価値関数更新部141bが行動価値関数Qを更新するという行為は、行動価値関数更新部141bが行動価値テーブルを更新するという行為と同義である。Q学習の開始時には環境の現在状態(モータ2の回転状態)と制御パラメータの相関性は未知であるから、行動価値テーブルにおいては、種々の制御パラメータと状態変数Sと判定データDと報酬Rとが、無作為に定めた行動価値の値(行動価値関数Q)と関連付けた形態で用意されている。なお報酬演算部141aは、判定データDが分かればこれに対応する報酬Rを直ちに算出でき、算出した報酬Rの値が行動価値テーブルに書き込まれる。
The action value
モータ2の回転状態の適否判定結果に応じた報酬Rを用いてQ学習を進めると、より高い報酬Rが得られる行動を選択する方向へ学習が誘導され、選択した行動を現在状態で実行した結果として変化する環境の状態(つまり判定データD)に応じて、現在状態で行う行動についての行動価値の値(行動価値関数Q)が書き換えられて行動価値テーブルが更新される。この更新を繰り返すことにより、行動価値テーブルに表示される行動価値の値(行動価値関数Q)は、適正な行動ほど大きな値となるように書き換えられる。このようにして、未知であった環境の現在状態(モータ2の回転状態)とそれに対する行動(制御パラメータの設定)との相関性が徐々に明らかになる。つまり行動価値テーブルの更新により、モータ2の回転状態と、制御パラメータとの関係が最適解に徐々に近づけられる。
When the Q-learning is advanced using the reward R according to the determination result of the propriety of the rotation state of the
ここで、Q学習では、すべての状態行動ペア(s,a)についてのQ(s,a)のテーブルを作成して、学習を行う方法がある。しかし、すべての状態行動ペアのQ(s,a)の値を求めるには状態数が多すぎて、Q学習が収束するのに多くの時間を要してしまう場合がある。そこで、ニューラル・ネットワークを利用して強化学習するようにしてもよい。具体的には、行動価値関数Qを適当なニューラル・ネットワークを用いて構成し、ニューラル・ネットワークのパラメータを調整することにより行動価値関数Q(s,a)の値を算出するようにする。ニューラル・ネットワークを利用することにより、Q学習が収束するのに要する時間を短くすることが可能となる。 Here, in Q-learning, there is a method of learning by creating a table of Q(s, a) for all state-action pairs (s, a). However, the number of states is too large to obtain the values of Q(s, a) for all state-action pairs, and it may take a long time for Q-learning to converge. Therefore, a neural network may be used for reinforcement learning. Specifically, the action-value function Q is configured using an appropriate neural network, and the value of the action-value function Q(s, a) is calculated by adjusting the parameters of the neural network. By using a neural network, it is possible to shorten the time required for Q-learning to converge.
また、機械学習装置140が教師なしで機械学習を行う場合について説明してきたが、機械学習装置140が、教師有りの機械学習を行うこともできる。教師あり学習では、入力とそれに対応する出力との既知のデータセット、いわゆる教師データが予め大量に機械学習装置140に与えられ、機械学習装置140がこの教師データから入力と出力との相関性を暗示する特徴を識別して、新たな入力に対する出力を推定するための相関性モデル、例えばここではモータ2の回転状態と制御パラメータの関連性を学習する。
Moreover, although the case where the
より具体的には、機械学習装置140の学習部141は、予め与えられた大量の教師データから、制御パラメータおよび状態変数Sとモータ2の回転状態(判定データD)との相関性特徴を識別する演算を行う。次に、学習部141は、予め識別しておいた相関性特徴と、制御パラメータ、状態変数S及び判定データDから最適なモータ2の回転状態を導く相関性モデルとの誤差を計算する。その後、学習部141は、この誤差を縮小するように相関性モデルを更新する。そして学習部141は、相関性モデルの更新を繰り返すことによって状態変数Sにおいて最適なモータ2の回転状態を導く最適な制御パラメータを学習する。そして、学習により導出した制御パラメータが設定される。
More specifically, the
相関性モデルの初期値は、例えば、制御パラメータ及び状態変数Sと判定データDとの相関性を単純化して表現したものであり、教師あり学習の開始前に学習部141に与えられる。教師データは、例えば、過去に上述の強化学習や人手によって試行錯誤的に行う制御パラメータの設定、シミュレーションを用いた制御パラメータの設定などにより得た状態変数S、制御パラメータ及び判定データDのデータセットによって構成される。学習部141は、状態変数S、制御パラメータと、判定データDとの相関性を暗示する相関性特徴を識別し、この相関性特徴と、現在の状態における制御パラメータと状態変数S及び判定データDに対応する相関性モデルとの誤差を求める。さらに学習部141は、例えば予め定めた更新ルールにしたがい、誤差が小さくなる方向へ相関性モデルを更新する。
The initial value of the correlation model is, for example, a simplified expression of the correlation between the control parameter/state variable S and the judgment data D, and is given to the
相関性モデルの初期値が与えられた後、更新後の相関性モデルにしたがってトルク補償値を算出して摩擦トルクτdmを抑制する制御が行われる。学習部141は、この制御により変化した状態変数S及び判定データDを用いて、変更した制御パラメータ、変化した状態変数S及び判定データDに対応する相関性モデルと、教師データから求めた相関性特徴との誤差を求める。そして、学習部141は、この誤差に基づき、再び相関性モデルを更新する。これを繰り返して、未知であったモータ2の回転状態とそれに対する適切な制御パラメータとの相関性が徐々に明らかになる。相関性モデルの更新により、モータ2の回転状態と制御パラメータとの関係が最適解に徐々に近づく。教師あり学習を進める際に、例えばニューラル・ネットワークを用いても良い。
After the initial value of the correlation model is given, the torque compensation value is calculated according to the updated correlation model to control the friction torque τdm . The
2 モータ
3 減速装置
4 ロータリ・エンコーダ
5 モータ制御装置
6 出力軸
8 トルクセンサ
10 減速機構
20、90 運動学モデル
20a 積分器
20b 積分器
20c 減算器
20d 乗算器
20e 乗算器
20f 加算器
20g 外乱要素
50、60 外乱オブザーバ装置
50a 加算器
50b 利得要素
50c 利得要素
50d 利得要素
50e 加算器
55a SVMNC(補償値算出部)
55b STMNC(補償値算出部)
59(a)、59(b)、59(c)可変利得要素
2
55b STMNC (compensation value calculation unit)
59(a), 59(b), 59(c) variable gain elements
Claims (9)
前記外乱オブザーバ装置は、前記制御入力に基づいて前記摩擦トルクを補償するトルク補償値を算出する補償値算出部を有し、
前記補償値算出部の特性を表す感度関数が前記モータの前記回転速度に基づいて設定され、
前記モータの前記回転速度に基づいて、前記感度関数が、0次の感度関数、1次の感度関数又は2次の感度関数のいずれかに切り替わる
モータ制御装置。 A current command value to a motor to be controlled, a rotation speed of the motor, and a measured value of torsional torque of an output shaft connected to the motor via a speed reduction mechanism are received as control inputs, and act on the output shaft of the motor. Equipped with a disturbance observer device that suppresses disturbance due to friction torque,
The disturbance observer device has a compensation value calculation unit that calculates a torque compensation value for compensating the friction torque based on the control input,
a sensitivity function representing characteristics of the compensation value calculation unit is set based on the rotational speed of the motor ;
The sensitivity function switches to either a zero-order sensitivity function, a first-order sensitivity function, or a second-order sensitivity function based on the rotational speed of the motor.
motor controller.
前記外乱オブザーバ装置は、前記制御入力に基づいて前記摩擦トルクを補償するトルク補償値を算出する補償値算出部を有し、
前記補償値算出部の特性を表す感度関数が前記モータの前記回転速度に基づいて設定され、
前記モータの前記回転速度に基づいて、前記感度関数が、0次の感度関数、1次の感度関数又は高次の感度関数のいずれかに切り替わる
モータ制御装置。 A current command value for a motor to be controlled, a rotation speed of the motor, and a measured value of torsional torque of an output shaft connected to the motor via a reduction mechanism are received as control inputs, and act on the output shaft of the motor. Equipped with a disturbance observer device that suppresses disturbance due to friction torque,
The disturbance observer device has a compensation value calculation unit that calculates a torque compensation value for compensating the friction torque based on the control input,
a sensitivity function representing a characteristic of the compensation value calculator is set based on the rotational speed of the motor;
The sensitivity function switches to either a zero-order sensitivity function, a first-order sensitivity function, or a higher-order sensitivity function based on the rotational speed of the motor.
motor controller.
前記感度関数が前記フィルタの感度関数である
請求項1又は2に記載のモータ制御装置。 The compensation value calculation unit is configured as a filter for filtering the theoretical value of the friction torque calculated based on the control input,
The motor control device according to claim 1 or 2, wherein the sensitivity function is the sensitivity function of the filter.
請求項1~3のいずれか1項に記載のモータ制御装置。 The motor control device according to any one of claims 1 to 3 , wherein the sensitivity function has a single root design pole.
請求項1~4のいずれか1項に記載のモータ制御装置。 5. Any one of claims 1 to 4, wherein the disturbance observer device comprises a high-frequency damping term calculation unit that calculates a high-frequency damping term for removing high-frequency components generated in the motor based on the rotation speed of the motor. A motor controller according to any one of the preceding claims.
前記モータに減速機構を介して接続された出力軸と、
前記出力軸に生じるねじりトルクを測定するトルクセンサと、
前記モータの角度位置を検出するロータリ・エンコーダと、
請求項1~5のいずれか1項に記載のモータ制御装置と
を備えるモータ装置。 a motor;
an output shaft connected to the motor via a reduction mechanism;
a torque sensor for measuring torsional torque generated on the output shaft;
a rotary encoder for detecting the angular position of the motor;
A motor device comprising the motor control device according to any one of claims 1 to 5.
前記モータの状態を、環境の現在状態を表す前記回転速度、トルク値、モータ電流およびモータ温度のうちの少なくとも一つを含んだ状態変数として観測する状態観測部と、
前記モータの回転状態を示す速度波形データに基づいた判定データを取得する判定データ生成部と、
前記状態変数と前記判定データとを用いて、前記モータの回転状態と、前記モータへの外乱補償特性を記述する特性係数、スイッチ切り替え閾値および高周波成分算出要素のフィルタ特性係数のうちの少なくとも一つを含む制御パラメータとを関連付けて学習する学習部と、
前記学習部による学習結果に基づき、前記制御パラメータを設定する意思決定部とを有する
機械学習装置。 A current command value to a motor to be controlled, a rotation speed of the motor, and a measured value of torsional torque of an output shaft connected to the motor via a speed reduction mechanism are received as control inputs, and act on the output shaft of the motor. A disturbance observer device for suppressing disturbance due to frictional torque is provided, the disturbance observer device has a compensation value calculation unit for calculating a torque compensation value for compensating the frictional torque based on the control input, and the compensation value calculation unit A machine learning device for a motor control device in which a sensitivity function representing the characteristics of is set based on the rotational speed of the motor ,
a state observation unit that observes the state of the motor as a state variable including at least one of the rotational speed, torque value, motor current, and motor temperature representing the current state of the environment;
a determination data generation unit that acquires determination data based on speed waveform data that indicates the rotation state of the motor;
At least one of a characteristic coefficient describing a rotation state of the motor and a disturbance compensation characteristic to the motor, a switch switching threshold value, and a filter characteristic coefficient of a high-frequency component calculation element, using the state variable and the determination data. a learning unit that learns in association with control parameters including
A machine learning device, comprising: a decision making section that sets the control parameter based on a learning result of the learning section.
前記制御パラメータを変更した結果に対する報酬を演算する報酬演算部と、
前記報酬に基づいて、行動価値関数を更新する行動価値関数更新部と、を含み、
前記行動価値関数更新部によって前記行動価値関数の更新を繰り返して、前記報酬が最も多く得られる前記制御パラメータを学習する
請求項7に記載の機械学習装置。 The learning unit
a reward calculation unit that calculates a reward for the result of changing the control parameter;
an action-value function updating unit that updates the action-value function based on the reward;
8. The machine learning device according to claim 7, wherein the action-value function updating unit repeats updating of the action-value function to learn the control parameter that provides the largest reward.
前記制御パラメータと前記状態変数と前記判定データとから前記モータの前記回転状態を導く相関性モデルと予め用意された教師データから識別される相関性特徴との誤差を計算し、
前記誤差を小さくするように前記相関性モデルを更新する
請求項7に記載の機械学習装置。 The learning unit
calculating an error between a correlation model that derives the rotation state of the motor from the control parameters, the state variables, and the determination data and a correlation feature identified from teacher data prepared in advance;
The machine learning device according to claim 7, wherein said correlation model is updated so as to reduce said error.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019101737A JP7305113B2 (en) | 2019-05-30 | 2019-05-30 | Motor control device, motor device and machine learning device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019101737A JP7305113B2 (en) | 2019-05-30 | 2019-05-30 | Motor control device, motor device and machine learning device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020198657A JP2020198657A (en) | 2020-12-10 |
JP7305113B2 true JP7305113B2 (en) | 2023-07-10 |
Family
ID=73648273
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019101737A Active JP7305113B2 (en) | 2019-05-30 | 2019-05-30 | Motor control device, motor device and machine learning device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7305113B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2023058203A1 (en) | 2021-10-07 | 2023-04-13 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000168600A (en) | 1998-12-01 | 2000-06-20 | Mitsubishi Electric Corp | Motor-driven power steering control device |
JP2001231280A (en) | 2000-02-10 | 2001-08-24 | Tamagawa Seiki Co Ltd | Method and apparatus for controlling position |
JP2013254257A (en) | 2012-06-05 | 2013-12-19 | Juki Corp | Control apparatus of positioning device and electronic component mounting device |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0974783A (en) * | 1995-08-31 | 1997-03-18 | Nec Corp | Control apparatus for motor |
JP6305283B2 (en) * | 2014-09-09 | 2018-04-04 | 本田技研工業株式会社 | Power system control system |
JP2017034936A (en) * | 2015-08-05 | 2017-02-09 | 国立大学法人長岡技術科学大学 | Motor control apparatus, motor device, and motor control method |
JP6538766B2 (en) * | 2017-07-18 | 2019-07-03 | ファナック株式会社 | Machine learning apparatus, servo motor control apparatus, servo motor control system, and machine learning method |
-
2019
- 2019-05-30 JP JP2019101737A patent/JP7305113B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000168600A (en) | 1998-12-01 | 2000-06-20 | Mitsubishi Electric Corp | Motor-driven power steering control device |
JP2001231280A (en) | 2000-02-10 | 2001-08-24 | Tamagawa Seiki Co Ltd | Method and apparatus for controlling position |
JP2013254257A (en) | 2012-06-05 | 2013-12-19 | Juki Corp | Control apparatus of positioning device and electronic component mounting device |
Also Published As
Publication number | Publication date |
---|---|
JP2020198657A (en) | 2020-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5209810B1 (en) | Motor control device with function to estimate inertia, friction coefficient and spring constant at the same time | |
JP6490127B2 (en) | Machine learning device, servo control device, servo control system, and machine learning method | |
US9242374B2 (en) | Robotic control apparatus | |
Kobayashi et al. | An analysis of parameter variations of disturbance observer for motion control | |
Katsura et al. | Force servoing by flexible manipulator based on resonance ratio control | |
Wolf et al. | Extending a dynamic friction model with nonlinear viscous and thermal dependency for a motor and harmonic drive gear | |
KR101597084B1 (en) | Motor drive device | |
JP6097174B2 (en) | Robot controller | |
KR101223669B1 (en) | Engine bench system control system | |
Phuong et al. | Disturbance observer and Kalman filter based motion control realization | |
JP6517567B2 (en) | Servo motor control device and collision detection method | |
EP2571159A2 (en) | Motor control apparatus | |
US20130234642A1 (en) | Motor control device | |
Garrido et al. | DC servomechanism parameter identification: A closed loop input error approach | |
Garrido et al. | An algebraic recursive method for parameter identification of a servo model | |
JP5694428B2 (en) | Motor control device that suppresses natural vibration | |
CN111103849A (en) | Output device, control device, and learning parameter output method | |
Madsen et al. | Adaptive feedforward control of a collaborative industrial robot manipulator using a novel extension of the Generalized Maxwell-Slip friction model | |
WO2017203987A1 (en) | Parameter identification device, motor control system, parameter identification method, and program | |
JP7305113B2 (en) | Motor control device, motor device and machine learning device | |
CN107016208A (en) | A kind of industrial robot external force method of estimation based on shake control | |
JP2004260891A (en) | Motor control device and method therefor | |
JP5441944B2 (en) | Motor control device | |
CN110569767A (en) | Motion parameter identification method, system, equipment and computer readable storage medium | |
EP4081374A1 (en) | Method of obtaining vibrational properties of robot arm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A80 | Written request to apply exceptions to lack of novelty of invention |
Free format text: JAPANESE INTERMEDIATE CODE: A80 Effective date: 20190627 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20191028 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220525 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230328 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230329 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230523 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20230606 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230619 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7305113 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |