以下、本発明に係るモータ制御装置及びモータ制御装置の制御パラメータ算出装置の実施形態を添付の図面を参照しながら説明する。
(実施の形態1)
図1は本発明に係る、モータ制御装置の制御パラメータ算出装置を含むシステムの全体構成図である。モータ制御装置の制御パラメータ算出装置13はコンピュータからなり、所定の制御プログラムを実行することにより以下に説明する機能を実現する(以下の実施形態においても同じ)。その制御プログラムはROM、CD−ROM、DVD―ROM等の情報記録媒体や通信回線を通じて提供され得る。制御パラメータ算出装置13はディスプレイ14に接続されている。
制御パラメータ算出装置13はモータ駆動装置5に接続され、所定の情報を入力し、その情報に基づいて制御パラメータを算出する。
モータ駆動装置はモータ1を駆動する。モータ1には、それにより駆動される負荷2が接続されている。さらに、モータ1には位置検出器3が接続されており、位置検出器3は、モータ1の回転子位置θmを検出し、出力する。モータ1、負荷2、位置検出器3、モータ1と負荷2の連結部分およびモータ1と位置検出器3の連結部分により、機械系4が構成される。
モータ駆動装置5は、速度検出器6、位置制御器7、速度制御器8、スイッチ9、トルク制御器11及び周波数特性測定用トルク指令作成器12を備える。速度算出器6は位置検出器3の出力である回転子位置θmを入力し、モータ1の速度vmを算出し出力する。
ここで、モータ駆動装置5がモータ1を位置制御する時の動作を説明する。
モータ1を位置制御する時は、スイッチ9をa)の方に切り替えられる。位置指令θrが入力されると、モータ位置θmとの差分が位置制御器7に入力される。位置制御器7は位置指令θrとモータ位置θmとが一致するよう速度指令vrを算出し、出力する。位置制御器7は、例えば、位置比例ゲインをKpとして次式に示す比例演算を行う。
速度制御器8は、位置制御器7からの速度指令vrと、速度算出器6からのモータ速度vmとの差分を入力し、速度指令vrとモータ速度vmとが一致するよう第1のトルク指令τr1を算出し、出力する。速度制御器8は、例えば、速度比例ゲインをKvとして(数3)に示す比例演算を行う。
トルク制御器11は第1のトルク指令τr1を入力し、第1のトルク指令τr1を電流指令に変換し、電流指令とモータ1に流れる電流とが一致するよう電流制御を行うことによりモータ1を駆動する。
ここで、位置制御器7及び速度制御器8における位置比例ゲインKpと速度比例ゲインKvの関係について説明する。
機械系4の総イナーシャをJaとし、機械特性が剛体とほぼ等しいとする。この時、速度制御器8の制御パラメータである速度応答周波数ωv[rad/s]を用いて、速度比例ゲインKv、位置比例ゲインKpを(数4)、(数5)で与えると、位置フィードバックループの閉ループ伝達関数は(数6)のように重根を持ち、オーバーシュートのない良好な応答となる。
すなわち、速度応答周波数ωvを算出できれば、(数4)、(数5)を用いることによりオーバーシュートのない良好な応答位置比例ゲインKpと速度比例ゲインKvを算出できることが分かる。そこで、本実施形態では、モータ制御装置の制御パラメータとして速度応答周波数ωvを算出する。
次に、モータ制御装置の制御パラメータである速度応答周波数ωvの算出について説明する。
まず、スイッチ9をb)の方に切り替える。この状態で、周波数特性測定用トルク指令作成器12は、例えばM系列信号など複数の周波数成分を含む第1のトルク指令τr1を出力し、モータ1を駆動する。その時の第1のトルク指令τ1とモータ速度vmが、制御パラメータ算出装置13に入力される。制御パラメータ算出装置13では、図2に示すフローチャートのプログラムが実行され、モータ制御装置の制御パラメータとして速度応答周波数ωvを算出する。以下、図2のフローチャートに示す処理について説明する。
まず、入力した第1のトルク指令τ1とモータ速度vmをサンプリングし、第1のトルク指令τ1からモータ速度vMまでの周波数特性を算出して得る(ステップS1)。以下このようにして求めた周波数特性を「負荷周波数特性」と呼ぶ。負荷周波数特性は、例えば、サンプリングした第1のトルク指令τr1およびモータ速度vMをそれぞれフーリエ変換し、モータ速度vmのフーリエ変換結果から算出されるゲイン特性および位相特性から、第1のトルク指令τr1のフーリエ変換結果から算出されるゲイン特性および位相特性をそれぞれ減じて得る。
次に、位相余裕α[deg]を用いて、得られた負荷周波数特性の位相が−180+α[deg]以下の周波数領域における最大ゲインGmax[dB]を算出する(ステップ2)。位相余裕α[deg]は0[deg]以上の所定の値に設定する。
そして、最大ゲインGmax[dB]に基づいて速度応答周波数ωvを算出する(ステップ3)。
ここで、上記のステップS2、S3の処理を具体的に説明する。
ナイキストの安定定理より、フィードバック系の一巡伝達関数の周波数特性において、位相が−180[deg]以下となる周波数領域でゲインが0[dB]以下ならば安定が保証される。図3に、図1で示す構成において速度フィードバックループ部に関する構成要素のみを示す。第1のトルク指令τr1の入力点からモータ速度vmの出力点までの伝達関数をH1(s)とする。速度制御器8は(数3)で示す比例演算を行うとすると、速度制御器8の伝達関数はKvとなる。従って、図3に示す速度フィードバックループ部の一巡伝達関数は(数7)で表される。
図4に、第1のトルク指令τr1の入力点からモータ速度vmの出力点までの伝達関数H1(s)の周波数特性を示す。図4(a)はゲイン特性、(b)は位相特性である。この時、速度フィードバックループ部の一巡伝達関数の周波数特性は、位相特性(図4(b)参照)はH1(s)の位相特性と変わらず、ゲイン特性(図4(a)参照)はKvによって全体が上下に変化する。
そこで、まず、ステップS1で得られた周波数特性H1(s)において、位相余裕α[deg]を用いて、位相が−180+α[deg]以下となる周波数領域を求める。図4においては区間Aと区間Bが、この周波数領域となる。そしてその区間における最大ゲインGmax[dB]を求める。このように、最大ゲインGmaxを求める区間を必要最低限の領域としているため、位相が−180+α[deg]となる最も低い周波数より高い領域を用いる場合よりも処理時間を短縮できる。
また、前述したように、一巡伝達関数のゲイン特性はKvによって上下するが(数7参照)、正であるゲイン余裕β[dB]を用いて、次式(数8)を満たすようにKvを求めれば、速度フィードバックループの一巡伝達関数の周波数特性において、位相が−180+α[deg]以下となる周波数領域でゲインが−β[dB]以下となり安定性は保証される。
Kvが大きいほど速度フィードバックの応答性も高いので、(数8)を満たす最大値をKvとして算出する。Kvの算出式を(数9)に示す。
また、機械系4の総イナーシャをJaとすると、速度制御器7の制御パラメータである速度応答周波数ωv[rad/s]は、(数4)を変形した(数10)で算出できる。
なお、機械系4の総イナーシャJaはステップS1で得られた負荷周波数特性の低域でのゲインから計算できる。あるいは、前もって測定しておいた値を用いてもよい。
以上のようにして算出された速度応答周波数ωvを、制御パラメータ算出装置13に接続されたディスプレイ14に表示する(ステップS4)。図5に表示例を示す。ディスプレイ14には算出された速度応答周波数ωvだけでなく、周波数特性等もあわせて表示してもよい。
なお、本実施形態では、位置制御装置に対して速度応答周波数の算出を行ったが、速度制御装置に対して行うとしても同様の効果が得られる。
また、本実施形態において、第1のトルク指令τr1に対して所定のフィルタ処理を行い第2のトルク指令を出力するフィルタをトルク制御器11の前段に挿入してもよい。このフィルタはローパスフィルタやノッチフィルタを含んでもよい。このとき、第1のトルク指令入力点からモータ速度出力点までの周波数特性の代わりに、第2のトルク指令入力点からモータ速度出力点までの周波数特性を算出し、その算出した周波数特性にフィルタ部の周波数特性を加算したものを用いてもよい。このとき、ステップS1において、第2のトルク指令入力点からモータ速度出力点までの周波数特性を算出してもよく、または、入力してもよい。
以上のようにして、モータ制御装置の制御パラメータ設定において、安定性が保証できる最大の速度応答周波数ωvを短時間で知ることができる。そして、求めた最大の速度応答周波数ωvと、(数4)、(数5)とを用いて速度比例ゲインKv、位置比例ゲインKpを決定することにより、安定性が保証され、かつ応答性よい設定を実現できる。
以上に説明した本実施形態の制御パラメータ算出装置のモータ制御装置への適用例を図6に示す。図6に示すモータ制御装置51は、図1に示すモータ駆動装置の構成要素に加え、さらに、制御パラメータ調整部15を備えている。制御パラメータ調整部15はコンピュータからなり、図1に示す制御パラメータ算出装置13と同様の機能を有しており、さらに、算出した速度応答周波数ωvに基づいて速度比例ゲインKvおよび位置比例ゲインKpを例えば(数4)、(数5)を用いて調整する機能を有している。
(実施の形態2)
本発明に係る制御パラメータ算出装置の第2の実施形態を示す。図7に、第2の実施形態における、モータ制御装置の制御パラメータ算出装置を含むシステムの全体構成を示す。本実施形態のモータ駆動装置5bは図1に示す構成に加えて、スイッチ9とトルク制御器11の間に第1のフィルタ部10をさらに備えている。第1のフィルタ部10は、第1のトルク指令τr1を入力し、所定のフィルタ処理を行った後、第2のトルク指令τr2を出力する。トルク制御器11は第2のトルク指令τr2にしたがいモータ1を駆動する。
本実施形態の制御パラメータ算出装置13bは、負荷周波数特性から得られる共振周波数に基づいてノッチフィルタの設定パターンを複数算出し、各設定パターンにおいて算出される安定な速度応答周波数のうち最大の速度応答周波数を算出する。これにより、モータ制御装置の制御パラメータ設定において、安定性が保証できる最大の速度応答周波数ωvを短時間で知ることができるとともに、最適なノッチフィルタの設定パターンも認識できる。
本実施形態の制御パラメータ算出装置13bが実行する処理を図8に示すフローチャートを用いて説明する。
まず、入力した第1のトルク指令τr1とモータ速度vmをサンプリングし、第1のトルク指令τr1の入力点からモータ速度vmの出力点までの負荷周波数特性を算出して得る(ステップS11)。負荷周波数特性の算出方法は実施の形態1で示したとおりである。なお、上記サンプリングは第1のフィルタ部10にノッチフィルタが含まれていない状態で行う。
ステップS11で得られた負荷周波数特性のゲイン特性から共振周波数を算出し、算出した共振周波数を減衰周波数とするノッチフィルタの設定パターンを算出する(ステップS12)。共振周波数の算出は、負荷周波数特性のゲイン特性の変曲点を探索する方法などで得ることができる。ノッチフィルタはその中心周波数(減衰周波数)を共振周波数に合わせ速度制御ループ(具体的にはフィルタ部10)内に配置することにより、共振周波数におけるゲインピークを抑圧することができるので、制御の応答性を上げることが可能となる。ノッチフィルタの設定パターンの算出では、最大いくつのノッチフィルタを同時に付加(配置)できるかを予め設定しておき、どのような付加パターンがあるかを求める。なお、付加パターンにはノッチフィルタを付加しない場合も含める。図9に、最大2個のノッチフィルタが付加可能であり、3つの共振周波数fp1、fp2、f3が算出された場合に算出される設定パターンを示す。この場合、図9に示すように、ノッチフィルタが付加されない場合(1とおり)、ノッチフィルタが1個付加される場合(3とおり)、ノッチフィルタが2個付加される場合(3とおり)の7とおりの設定パターンが求められる。
次に、全ての設定パターンに対し、各設定パターンのノッチフィルタを付加した場合について、最大の速度応答周波数ωvを求める(ステップS13〜S16)。
具体的には、最初に、未だ速度応答周波数ωvが求められていない設定パターンがあるかどうかを判断する(ステップS13)。未だ速度応答周波数ωvが求められていない設定パターンがない場合はステップS17へ進む。
未だ速度応答周波数ωvが求められていない設定パターンがある場合、その設定パターンの中から1つを選択し、選択した設定パターンのノッチフィルタの周波数特性を負荷周波数特性に加算して周波数特性(以下「制御対象周波数特性」と呼ぶ。)を算出する(ステップS14)。例えば、選択された設定パターンが図9に示すNo.5のパターンの場合、中心周波数をfp1としたノッチフィルタの周波数特性と、中心周波数をfp2としたノッチフィルタの周波数特性とを、ステップS11で求めた負荷周波数特性に加算して制御対象周波数特性を算出する。
次に、0[deg]以上の所定値である位相余裕α[deg]を用いて、得られた制御対象周波数特性の位相が−180+α[deg]以下となる周波数領域における、制御対象周波数特性のゲインの最大値(最大ゲイン)Gmax[dB]を算出する(ステップS15)。算出した最大ゲインGmax[dB]に基づいて速度応答周波数ωvを算出し、選択された設定パターンと関連づけて記憶しておく(ステップS16)。実施の形態1で説明したとおり、ナイキストの安定定理より、フィードバック系の一巡伝達関数の周波数特性において、位相が−180[deg]以下となる周波数領域でゲインが0[dB]以下ならば安定は保証される。よって、本実施形態では、基本的に実施の形態1のステップS2およびステップS3と同様の処理を行っている。実施の形態1と異なるのは、負荷周波数特性の代わりに制御対象周波数特性を用いる点と、算出された速度応答周波数ωvに選択された設定パターンを関連づける点である。全ての設定パターンについて速度応答周波数ωvを算出するまで、ステップS13からステップS16までの処理を繰り返す。
全ての設定パターンについて速度応答周波数ωvが算出されると、その中で最大となる速度応答周波数ωvを求め、速度応答周波数ωvの最大値と、速度応答周波数ωvの最大値と関連づけられた設定パターンとをディスプレイ14に表示する(ステップS17)。
以上のように、ステップS13からステップS16までの処理を繰り返すことにより算出された各設定パターンに対する速度応答周波数ωvの中で最大値を求め、この最大値に関連づけられている設定パターンの情報とともにディスプレイ14に表示する。表示例を図5に示す。ディスプレイ14には算出された速度応答周波数ωv、設定パターンの減衰周波数だけでなく、周波数特性等をともに表示してもよい。
これにより、モータ制御装置の制御パラメータ設定において、安定性が保証できる最大の速度応答周波数ωvを短時間で得られ、(数4)、(数5)を用いて安定性が保証され、かつ応答性よい設定を得ることができる。さらに同時に最適なノッチフィルタの設定も可能となる。
また、本実施の形態では、位置制御装置に対して速度応答周波数の算出を行ったが、速度制御装置に対して行っても同様の効果が得られる。
以上に説明した本実施形態の制御パラメータ算出装置のモータ制御装置への適用例を図10に示す。図10に示すモータ制御装置51bは、図7に示すモータ駆動装置5bの構成要素に加え、さらに制御パラメータ調整部15bを備えている。制御パラメータ調整15bは、図7に示す制御パラメータ算出装置13bと同様の機能を有している。制御パラメータ調整部15bは、さらに、算出した速度応答周波数ωvの最大値に基づいて速度比例ゲインKvおよび位置比例ゲインKpを例えば(数4)、(数5)を用いて調整し、速度応答周波数ωvの最大値に関連づけられた設定パターンに応じたノッチフィルタを第1のフィルタ部10等の速度フィードバックループ内に付加する。
(実施の形態3)
本発明に係る制御パラメータ算出装置の第3の実施形態を示す。本実施形態の制御パラメータ算出装置は、位置閉ループの周波数特性を用いて、応答が滑らかな速度応答周波数を算出する。また、周波数特性から得られる共振周波数に基づいてノッチフィルタの設定パターンを算出し、各設定パターンにおいて算出される応答が滑らかな速度応答周波数のうち、最大値を算出し関連づけられた設定パターンとともにディスプレイに表示する。これにより、モータ制御装置の制御パラメータ設定において、応答が滑らかな最大の速度応答周波数を短時間で知ることができ、同時にノッチフィルタの設定も知ることができる。
本実施形態における、モータ制御装置の制御パラメータ算出装置を含むシステムの全体構成図は図7と同じである。
本実施形態の制御パラメータ算出装置の処理を図11に示すフローチャートを用いて説明する。なお、ステップS22からステップS24は、図8に示すステップS12からステップS14と同様の処理を行っている。
最初に、ステップS21において、実施の形態2で説明したステップS11の処理に加え、さらに、算出された負荷周波数特性から反共振周波数と粘性係数を算出する。具体的には以下の処理を行う。まず入力した第1のトルク指令τr1とモータ速度vmをサンプリングし、第1のトルク指令τr1の入力点からモータ速度vmの出力点までの負荷周波数特性を算出して得る。なお、上記サンプリングは第1のフィルタ部10にノッチフィルタが含まれていない状態で行う。次に、算出した負荷周波数特性から第1のフィルタ部10に設定されたフィルタの周波数特性を減じて機械系4の周波数特性を求める。機械系4の周波数特性のゲイン変曲点から反共振周波数を算出し、算出した反共振周波数におけるゲインの深さから粘性係数を算出する。機械系4の伝達関数が(数11)で表される時、反共振周波数の粘性係数は(数11)のdzi(n=1、2…)である。
(数11)において、Jaは機械系の総イナーシャ、ωziは反共振周波数、ωpiは共振周波数、da、dpiはそれぞれ別の粘性係数である。
次に、ステップS21で得られた負荷周波数特性のゲイン特性から共振周波数を算出し、算出した共振周波数を反共振周波数とするノッチフィルタの設定パターンを算出する(ステップS22)。
次に、全ての設定パターンに対し、各設定パターンのノッチフィルタをフィルタ部10に付加した場合について、位置閉ループ周波数特性に基づいて速度応答周波数ωvを求める(ステップS23〜S25)。
具体的には、最初に、未だ速度応答周波数ωvが求められていない設定パターンがあるかどうかを判断する(ステップS23)。未だ速度応答周波数ωvが求められていない設定パターンがない場合はステップS26へ進む。
未だ速度応答周波数ωvが求められていない設定パターンがある場合、設定パターンの中から1つを選択し、選択した設定パターンに対して制御対象周波数特性を算出する(ステップS24)。
次に、位置閉ループ周波数特性に基づいて速度応答周波数ωvを算出し、設定パターンと関連づけて記憶する(ステップS25)。ステップS25の詳細については後述する。
設定パターンで未選択のものがなくなるまでステップS23からステップS25までの処理を繰り返す。全ての設定パターンについて速度応答周波数が求められると、各設定パターンに対して求められた速度応答周波数のうち最大値を求め、その速度応答周波数の最大値と、それに関連づけられている設定パターンの情報とをディスプレイ14に表示する(ステップS26)。表示例を図5に示す。ディスプレイ14には算出された速度応答周波数の最大値、関連づけられている設定パターンの減衰周波数だけでなく、周波数特性等をともに表示してもよい。
以下、ステップS25の処理の詳細について説明する。
まず、位置閉ループ周波数特性の算出について説明する。速度応答周波数が設定されれば、位置比例ゲインKp、速度比例ゲインKvを、実施の形態1で説明した(数4)および(数5)等で算出できる。この時、制御対象周波数特性の伝達関数をH2(s)とすると、速度開ループの伝達関数H3(s)、速度閉ループの伝達関数H4(s)、位置開ループの伝達関数H5(s)、位置閉ループの伝達関数H6(s)は、それぞれ次式で算出できる。
ステップS24が終わった時点で得られている制御対象周波数特性は伝達関数としては得られていないので、ゲインと位相から複素平面のベクトルに変換した後、(数12)から(数15)を用いて演算し、再びゲインと位相データへと変換することにより位置閉ループの周波数特性を算出する。
次に速度応答周波数ωvの算出について詳細を説明する。
まず、一次遅れ要素の伝達関数および二次要素の伝達関数の周波数特性とインディシャル応答について説明する。(数16)で示す一次遅れ要素の伝達関数の、周波数特性のゲイン特性を図12に、インディシャル応答を図13に示す。
(数16)の特性根、すなわち分母式=0の解は実根の−ω1である。インディシャル応答は図13に示すようにオーバーシュートのない滑らかなものである。
次に、(数17)で示す二次要素の伝達関数の、周波数特性のゲイン特性を図14に、インディシャル応答を図14に示す。
(数17)において、ζは0から1の間の値とする。(数17)の特性根は複素根である次式である。
ここでjは虚数単位である。インディシャル応答は図15に示すように振動的になりオーバーシュートを生じる。ζが0に近いほど図14におけるゲインの盛り上がり部分も大きくなり、図15におけるオーバーシュートの振幅も大きくなる。
さて、制御理論より位置制御系の過渡応答特性は、位置閉ループの特性根によって決まる。つまり、過渡応答特性に対して、特性根を複素平面上にプロットした時、最も虚軸に近い根の影響が大きい。それが実根であれば応答はオーバーシュートのない滑らかなものになり、複素根であれば応答は振動的でオーバーシュートを生じる。簡単な例として、位置閉ループの伝達関数HC(s)が(数19)で示された一次の伝達関数と二次の伝達関数の積であるとする。
(数19)において、ζは0から1の間の値である。ここで、ω1<ω2の場合とω1>ω2の場合のインディシャル応答をそれぞれ図16に示す。ω1<ω2の場合の応答を実線で、ω1>ω2の場合の応答を破線で示す。ω1<ω2の場合(実線)、特性根のうち実根の方が複素平面上で虚軸に近く応答に最も影響を与えるため、応答は滑らかであり、ω1>ω2の場合(破線)、特性根のうち複素根の方が複素平面上で虚軸に近く応答に最も影響を与えるため、応答は振動的でありオーバーシュートを生じる。また、一次遅れ要素と二次要素の積なので、伝達関数HC(s)の周波数特性のゲイン特性は各々の周波数特性のゲイン特性の和になる。従って、ω1<ω2の場合の周波数特性のゲイン特性は図17に示すように、ω1>ω2の場合の周波数特性のゲイン特性は図18に示すようになる。両図の大きな違いは最大ゲインが、図17では0dBを超えておらず、図18では0dBを超えていることである。よって振動的な応答になるか否かは、周波数特性のゲイン特性から判断することができる。
位置閉ループの伝達関数がより高次の場合、応答に対する影響は特性根による影響が重なり、より複雑になる。この場合、位置閉ループの周波数応答を、位置制御系の応答に対し最も影響を与える成分とその他の成分に分ける。そして、最も影響を与える成分が滑らかな応答をする一次遅れ要素であり、その他の成分が振動的にならなければ、両者の影響を合わせても振動的な応答にはならない。
従って、位置閉ループの周波数特性のゲイン特性から、位置制御系の応答に対し最も影響を与える成分としてゲインが−3dBになる周波数をカットオフとする一次遅れ要素のゲイン特性を減じ、さらに分子に相当するゲイン特性を減じて得られるゲイン特性の最大ゲインを調べることにより、位置制御系の応答がオーバーシュートを生じるか否かを判断できる。
ステップS25の処理の詳細を図19に示すフローチャートを用いて説明する。
まず、速度応答周波数ωxの初期値を設定する(ステップS251)。これは小さい値に設定する。
速度応答周波数ωxに基づいて、位置比例ゲインKp、速度比例ゲインKvを算出する(ステップS252)。例えば前述の(数4)、(数5)を用いて算出する。続いて前述の方法で、位置閉ループの周波数特性を算出する(ステップS253)。
位置閉ループの周波数特性のゲイン特性においてゲインが−3dBになる最低周波数を算出し、その周波数をカットオフとする一次遅れ要素のゲイン特性を、位置閉ループ周波数特性のゲイン特性から減算する(ステップS254)。例えば、図20(a)に示す位置閉ループ周波数特性のゲイン特性が算出されている場合、−3dBとなる最低周波数はωcである。この周波数をカットオフとする一次遅れ要素のゲイン特性を減算すると図120(b)に示すゲイン特性が得られる。
次に、ステップS254で得られた周波数特性のゲイン特性から反共振周波数特性のゲイン特性を減ずる(ステップS255)。ここで反共振周波数特性は、機械系4の伝達関数の分子のみの周波数特性を指す。機械系4の伝達関数は(数20)で表されるとする。
(数20)において、Jaは機械系の総イナーシャ、ωziは反共振周波数、ωpiは共振周波数、da、dzi、dpiはそれぞれ粘性係数である。この伝達関数に対し速度制御器8、位置制御器7が、それぞれ(数4)、(数5)で与えられるゲインを有する比例制御を行うとすると、位置閉ループの伝達関数は(数21)で示すものとなる。
(数20)と(数21)を比較すると分子は同じである。従って、機械系4の伝達関数における分子に相当する周波数特性を求めれば、位置閉ループの周波数特性の伝達関数における分子に相当する周波数特性を求めていることと等しくなる、(数20)の分子の周波数特性は反共振周波数ωziと粘性係数dziが分かれば求められる。これらは前述のステップS21ですでに求められている。
次に、ステップS255で得られたゲイン特性の最大ゲインが所定値を超えたかどうかを調べる(ステップS256)。設定した速度応答周波数ωxが低い場合は位置制御系の応答性が低いので滑らかな応答となり最大ゲインは0dBとなる。一方、速度応答周波数ωxが高すぎると振動的な応答になるので最大ゲインは正の値となる。所定値を0dB近傍の正の値に設定し、最大ゲインが所定値を超えたら、1つ前に設定した速度応答周波数ωxが滑らかな応答が得られる最大の速度応答周波数ωxであると判断し、ステップS258へ進む。ステップS255で得られた周波数特性の最大ゲインが所定値を超えていない場合はステップS257へ進む。
ステップS257では、速度応答周波数設定値ωxを所定値だけ増加させてステップS252へ戻る。増加幅が大きすぎると、次のサイクルのステップS256で算出される最大ゲインが一気に所定値を超えてしまうので徐々に上げていくのが望ましい。
最後に、ステップS256で滑らかな応答が得られる最大の速度応答周波数であると判断された速度応答周波数ωxを、ステップ24で選択された設定パターンに関連づけて記憶する(ステップS258)。
以上のように、本実施形態の制御パラメータ算出装置により、モータ制御装置の制御パラメータ設定において、応答が滑らかである最大の速度応答周波数ωvを短時間で知ることができ、さらに、(数4)、(数5)を用いて安定性が保証され、かつ応答性よい設定を実現できる。同時に最適なノッチフィルタも設定できる。
また、応答の判断に周波数特性のゲイン特性を用いることにより、特性根の算出を必要としない。従って、負荷周波数特性や機械周波数特性の伝達関数を算出する必要がないため計算量を減らすことができる。さらに、周波数特性のゲイン特性を用いることにより、伝達関数を用いた場合に生じる極−零点消去の影響を考慮する必要なく特性根の状態を判断できる。極−零点消去とは、伝達関数において分子=0の解と特性方程式の根の間で近いものが存在し、お互いをうち消し合う状態のことを指す。この場合、消去される特性方程式の根は虚軸に近くても応答への影響は小さい。周波数特性のゲイン特性には極−零点消去がされた状態が現れるので特に考慮する必要はない。
また、本実施形態の制御パラメータ算出装置も、前述の実施形態と同様、モータ制御装置に適用することができる。モータ制御装置は例えば図10に示すような構成で実現できる。この場合、制御パラメータ調整部15bがステップS21からステップS25の処理を行い、算出された速度応答周波数ωvの最大値に基づいて速度比例ゲインKvおよび位置比例ゲインKpを調整し、算出された速度応答周波数ωvの最大値に関連づけられた設定パターンに応じたノッチフィルタを第1のフィルタ部10等の速度フィードバックループ内に付加するようにする。
(実施の形態4)
本発明に係る制御パラメータ算出装置の第4の実施形態を示す。本実施形態においては、速度開ループの周波数特性と位置閉ループの周波数特性を用いて安定で応答が滑らかな速度応答周波数を算出する。また、周波数特性から得られる共振周波数に基づいてノッチフィルタの設定パターンを算出し、各設定パターンにおいて算出される安定で応答が滑らかな速度応答周波数のうち、最大値を算出し関連づけられた設定パターンとともにディスプレイ部に表示する。これにより、ユーザはモータ制御装置の制御パラメータ設定において、安定が保証されかつ応答が滑らかになる最大の速度応答周波数を短時間で知ることができ、同時にノッチフィルタの設定も知ることができる。
本実施形態における、モータ制御装置の制御パラメータ算出装置を含むシステムの全体構成図は図7と同じである。
本実施形態の制御パラメータ算出装置の処理を図21に示すフローチャートを用いて説明する。なお、ステップS31からステップS34は、図11に示すステップS21からステップS24と同様の処理を行っている。
最初に、トルク指令とモータ速度をサンプリングし、負荷周波数特性を算出し、さらに、負荷周波数特性から反共振周波数と粘性係数を算出する(ステップS31)。負荷周波数特性のゲイン特性から共振周波数を算出し、算出した共振周波数に基づきノッチフィルタの設定パターンを算出する(ステップS32)。
その後、各設定パターンについて、位置閉ループ特性に基づいて速度応答周波数を算出する(ステップS33〜S37)。
具体的には、設定パターンを1つ選択し、制御対象周波数特性を算出する(ステップS34)。そして、0[deg]以上の所定値である位相余裕α[deg]を用いて、得られた負荷周波数特性の位相が−180+α[deg]以下の周波数領域における最大ゲインGmax[dB]を算出する(ステップS35)。次に、最大ゲインGmax[dB]に基づいて第1の速度応答周波数ωv1を算出する(ステップS36)。
位置閉ループ周波数特性に基づいて第2の速度応答周波数ωv2を算出し、設定パターンと関連づけて記憶する(ステップS37)。ステップS37の処理の詳細は後述する。
設定パターンで選択されていないものがなくなるまでステップS33からステップS37までの処理を繰り返す。全ての設定パターンについて第2の速度応答周波数ωv2が算出されると、各設定パターン毎に得られた第2の速度応答周波数ωv2のうち最大値を求め、その速度応答周波数の最大値とともに、それに関連づけられている設定パターンの情報をディスプレイ14に表示する。例えば、図5に示すように表示される。ディスプレイ14には算出された速度応答周波数ωv2の最大値、関連づけられている設定パターンの減衰周波数だけでなく、周波数特性や、発振限界速度応答周波数として途中で算出される第1の速度応答周波数ωv1をともに表示してもよい。
ステップ37の処理の詳細を図22に示すフローチャートを用いて説明する。
まず、速度応答周波数ωxの初期値を設定する(ステップS371)。本処理で算出する第2の速度応答周波数ωv2は、十分低い周波数ωv0から安定性の保証された第1の速度応答周波数ωv1までの範囲から算出すれば十分であるので、速度応答周波数ωxの初期値は、前述の範囲の上下限値の平均値を与えるものとする。即ち次式で設定する。
そして、ステップS372からステップS375は、実施の形態3で説明した図19のステップS252からステップS255と同様である。これらの処理により、位置閉ループの周波数特性から、位置閉ループの周波数特性のゲイン特性においてゲインが−3dBになる最低周波数をカットオフとする一次遅れ要素のゲイン特性と、反共振周波数特性のゲイン特性とを減じた周波数特性を得る。
次に、ステップ375で得られたゲイン特性においてゲインが最大となる値(最大ゲイン)が所定の収束条件に合致したか否かを判断する。具体的には、収束条件として、最大ゲインが予め設定しておいた0dB近傍にある正の所定範囲内に含まれるか否かを判断する。最大ゲインが所定範囲内に含まれたときに、収束したと判断する。
合致しなかった場合は、最大ゲインに応じて速度応答周波数ωxを変更し(ステップS377)、収束条件に合致するまで、上記処理ステップ372〜ステップ377を繰り返す。
速度応答周波数ωxの変更は、変更範囲の上下限値を設定しておき、その上限値と下限値の間で2分法に基づいて変更される。最大ゲインが予め設定しておいた0dB近傍の正の所定範囲よりも小さい場合、速度応答周波数の変更範囲の下限値を現在設定されている速度応答周波数にする。最大ゲインが予め設定しておいた0dB近傍の正の所定範囲よりも大きい場合、速度応答周波数の変更範囲の上限値を現在設定されている速度応答周波数にする。そして速度応答周波数ωxを変更範囲の上限値と下限値の平均値とする。このように、2分法に基づいて速度応答周波数ωvを変化させることにより、その探索範囲は狭くなっていくので、やがて収束する。
収束条件に合致すると、収束したと判断された時点の速度応答周波数ωxを第2の速度応答周波数ωv2とし、第2の速度応答周波数ωv2を、それに関連する設定パターンに関連づけて記憶する(ステップS378)。
以上のように本実施形態によれば、モータ制御装置の制御パラメータ設定において、応答が滑らかである最大の速度応答周波数を短時間で知ることができ、さらに、(数4)、(数5)を用いて安定性が保証され、かつ応答性よい設定をできる。同時に最適なノッチフィルタも試行錯誤することなく設定できる。
また、ステップS33からステップS37の処理において、探索範囲を2分法で収束させていくので計算量を減らすことができる。
また、本実施の形態では、位置制御装置に対して速度応答周波数の算出を行ったが、速度制御装置に対して行うとしても同様の効果が得られる。速度制御装置の場合、ステップS37では位置閉ループの代わりに速度閉ループの周波数特性を用いる。
また、本実施形態の制御パラメータ算出装置も、前述の実施形態と同様、モータ制御装置に適用することができる。モータ制御装置は例えば図10に示すような構成で実現できる。この場合、制御パラメータ調整部15bがステップS31からステップS37の動作を行い、算出された速度応答周波数ωvの最大値に基づいて速度比例ゲインKvおよび位置比例ゲインKpを調整し、算出された速度応答周波数ωvの最大値に関連づけられた設定パターンに応じたノッチフィルタを第1のフィルタ部10などの速度フィードバックループ内に付加するようにする。
(実施の形態5)
本発明に係る制御パラメータ算出装置の第5の実施形態を示す。本実施形態では、トルクフィルタカットオフ周波数と速度応答周波数の関係が所定条件を満たすようにする。これにより、モータ制御装置の制御パラメータ設定において、検出速度の最小分解能に起因する音や振動を抑制できるトルクフィルタカットオフ周波数を知ることができる。また、安定が保証されかつ応答が滑らかになる最大の速度応答周波数を短時間で知ることができ、同時に好適なノッチフィルタの設定も得られる。
図23に、第5の実施形態における、モータ制御装置の制御パラメータ算出装置を含むシステムの全体構成を示す。実施形態2で示したものと同じ機能を有するものは同じ番号を付している。図23に示すように、本実施形態では、モータ駆動装置52が第1のフィルタ部10の代わりに第2のフィルタ部20を備えている。
第2のフィルタ部20は、少なくとも1つの1次のローパスフィルタを有し、第1のトルク指令τr1が入力され第2のトルク指令τr2を出力する。以下、この1次のローパスフィルタを「トルクフィルタ」と呼ぶ。トルクフィルタはトルク制御器11に入力される第2のトルク指令τr2のノイズ成分を抑圧することができ、微振動や音の発生を抑制する効果がある。カットオフ周波数をωtfとした時のトルクフィルタの周波数特性を図24に示す。
本実施形態の制御パラメータ算出装置13cの処理について図25に示すフローチャートを用いて説明する。
最初に、トルク指令とモータ速度に基づき負荷周波数特性、反共振周波数及び粘性係数を求める(ステップS41)。具体的には、入力された第1のトルク指令τr1とモータ速度vmをサンプリングし、第1のトルク指令τr1の入力点からモータ速度vmの出力点までの周波数特性を算出して得る。なお、上記サンプリングは第2のフィルタ部20にノッチフィルタが含まれていない状態で行う。以下、このようにして求めた周波数特性を「第1の負荷周波数特性」と呼ぶ。第1の負荷周波数特性の算出は、例えば、サンプリングした第1のトルク指令τr1およびモータ速度vmをそれぞれフーリエ変換し、モータ速度vmのフーリエ変換結果から算出されるゲイン特性および位相特性から、第1のトルク指令τr1のフーリエ変換結果から算出されるゲイン特性および位相特性を減ずることによって得られる。さらに、第1の負荷周波数特性から反共振周波数と粘性係数を算出する。これは例えば、第1の負荷周波数特性から、第1のトルク指令τr1とモータ速度vmをサンプリングした時に第2のフィルタ部20に設定されたフィルタの周波数特性を減じて機械系4の周波数特性を求め、得られた周波数特性のゲイン変曲点から反共振周波数を算出し、算出された反共振周波数におけるゲインの深さから粘性係数を算出する。
次に、ステップS41で得られた第1の負荷周波数特性から共振周波数を算出し、共振周波数に応じたノッチフィルタの設定パターンを算出する(ステップS42)。共振周波数の算出においては、第1の負荷周波数特性のゲイン特性から変曲点を探索するなどの方法で得ることができる。設定パターンの算出は、最大いくつのノッチフィルタを同時に付加できるかを予め設定しておき、ノッチフィルタを付加しない場合も含めどのような付加のパターンがあるかを求める。
トルクフィルタのカットオフ周波数ωtfを設定し、第2の負荷周波数特性を算出する(ステップS43)。トルクフィルタのカットオフ周波数ωtfの設定は、トルクフィルタカットオフ周波数のテーブルを事前に作成しておき、そのテーブルのエントリ順に選択していく。そして、第1の負荷周波数特性から、第1のトルク指令τr1とモータ速度vmをサンプリングした時に第2のフィルタ部20に設定されたフィルタの周波数特性を減じて機械系4の周波数特性を求め、求めた機械系4の周波数特性に、カットオフ周波数がωtfであるトルクフィルタの周波数特性を加算して第2の周波数特性を算出する。
次に、安定で応答の滑らかとなる第3の速度応答周波数を算出し、設定パターンと関連づけて記憶する(ステップS44)。この処理では、例えば実施の形態4で説明した図21のステップ33からステップ37と同様の処理を行う。すなわち、各設定パターンに対して算出された速度応答周波数のうち最大値を求め、その最大値を第3の最大速度応答周波数ωv3とし、それに関連する設定パターンとともに記憶する。
次に、設定されているトルクフィルタのカットオフ周波数ωtfに基づいて、第3の最大速度応答周波数ωv3を修正する(ステップS45)。
トルクフィルタは前述した通り、トルク制御器11に入力される第2のトルク指令τr2のノイズ成分を抑圧することができ、微振動や音の発生を抑制する効果がある。しかし、カットオフ周波数ωtfを下げてノイズ抑制効果を上げすぎると、図24(b)に示したトルクフィルタの位相特性により、第2の周波数特性における位相が−180[deg]以下になる周波数域が低域へ広がる。これにより、速度比例ゲインを十分上げられなくなる。従って、ノイズ抑制効果と位相特性の悪化とのバランスをとらないと速度応答周波数を十分高くできない。
図26はトルクフィルタ(第2のフィルタ部20)を含む速度制御ブロック図である。モータをイナーシャJの剛体とする。トルク制御器11は十分応答性がありトルク指令通りのモータ電流を流せるものとする。速度制御器8は比例制御するものとし速度応答周波数をωvとする。速度比例ゲインKvは、J×ωvで与えるとすると、演算遅れを無視すれば、図24で示した速度制御系の閉ループ伝達関数は(数23)で示される。
特性方程式は2次式である。従って図26に示す速度制御系の応答を滑らかなものとするには特性根が2つとも実解となればよい。そのための条件は二次方程式の判別式を解くことによって(数24)が得られる。
(数24)より、速度応答周波数がトルクフィルタカットオフ周波数の1/4以下であれば応答が滑らかなものとなることが分かる。つまり、トルクフィルタカットオフ周波数は速度応答周波数の4倍以上となるのが好ましい。
一方、トルクフィルタによるノイズ抑制については以下のように考える。図24に示す速度制御系において、速度算出器6がサンプリング周期ごとに位置検出器3からの位置情報をサンプリングし、この周期時間での位置変化からモータ速度を算出する場合、位置検出器3の最小分解能とサンプリング周期が存在するため、算出されるモータ速度には最小の速度分解能δωが存在する。今、停止指令、即ち速度指令=0が入力されている時、位置がわずかに変化し速度算出器6がモータ速度δωを算出したとする。この時、速度制御器8から出力される第1のトルク指令τr1は次式で表される。
これが大きなトルク指令変化であるとトルク制御器11で制御するモータ電流も大きな変化となり微振動や音の発生原因になる。これをトルクフィルタによって変化を抑制することにより最小の速度分解能δω分の変化に対する音の発生を抑えることができる。図27に示すように、振幅が1のインパルス信号が入力された場合にトルクフィルタによって最大振幅A(ωtf)がどの程度になるかを予め求めておく。このとき、(数25)のインパルス入力に対するトルクフィルタ通過後のトルク指令τr2は次式で表される。
上式のトルク指令値τr2は、速度算出器6の最小分解能分の入力変化に対するトルクフィルタの出力変化を意味し、この値が所定値以下になっていれば、速度算出器6の出力の変動に対してモータ電流変化も小さくなり微振動や音の発生を抑制できる。すなわち、本実施形態では、速度算出器6の最小分解能分の変化に対するトルク指令値τr2の変化が所定値以下となるような速度応答周波数を求める。所定値は実験的に求められる。所定値をτxとすると、トルク指令τr2の変化が所定値以下となるためには、速度応答周波数ωvは次式を満たせばよい。
よって、ステップS45では、第3の速度応答周波数ωv3が(数24)と(数27)の両方を満たす場合は、第3の速度応答周波数ωv3を修正しない。一方、第3の速度応答周波数ωv3が(数24)と(数27)の少なくともいずれかを満たさない場合は、速度応答周波数ωvのみを変数として(数24)と(数27)の両方を満たす速度応答周波数ωvのうちの最大値を新たな第3の速度応答周波数ωv3として修正する。そして、その速度応答周波数に対してトルクフィルタカットオフ周波数も関連づけておく。
その後、トルクフィルタカットオフ周波数のテーブル中で未選択のものがないかチェックする(ステップS46)。未選択のものがある場合は、未選択のトルクフィルタカットオフ周波数の中から次のトルクフィルタカットオフ周波数を選択し(ステップS47)、上記処理を繰り返す(ステップS43〜ステップS47)。
テーブル中の全てのトルクフィルタカットオフ周波数について第3の速度応答周波数が求められると、それらのうち最大値となるものを算出し、その最大値を、それに関連する設定パターンおよびトルクフィルタカットオフ周波数とともにディスプレイ14に表示する(ステップS48、図5参照)。ディスプレイ14には算出された速度応答周波数の最大値、関連づけられている設定パターンの減衰周波数、トルクフィルタカットオフ周波数だけでなく、周波数特性や、発振限界速度応答周波数として途中で算出される第1の速度応答周波数ωv1をともに表示してもよい。また、トルクフィルタのカットオフ周波数は逆数を計算し時定数として表示してもよい。
以上のように本実施形態の制御パラメータ算出装置13cによれば、モータ制御装置の制御パラメータ設定において、応答が滑らかである最大の速度応答周波数を短時間で知ることができ、さらに、(数4)、(数5)を用いて安定性が保証され、かつ応答性よい設定を実現できる。同時にノッチフィルタも試行錯誤することなく設定できる。また、検出速度の最小分解能に起因する音や振動を抑制できるトルクフィルタカットオフ周波数をも設定できる。
また、本実施の形態では、位置制御装置に対して速度応答周波数の算出を行ったが、速度制御装置に対して行うとしても同様の効果が得られる。速度制御装置の場合、ステップ44では位置閉ループの代わりに速度閉ループの周波数特性を用いる。
また、本実施形態の制御パラメータ算出装置13cも、前述の実施形態と同様、モータ制御装置に適用することができる。モータ制御装置は例えば図28に示すような構成で実現できる。この場合、モータ制御装置53は制御パラメータ調整部15cを備え、制御パラメータ調整部15cがステップ41からステップ47の動作を行い、算出された速度応答周波数ωvの最大値に基づいて速度比例ゲインKvおよび位置比例ゲインKpを調整し、算出された速度応答周波数ωvの最大値に関連する設定パターンに応じたノッチフィルタを第2のフィルタ部20等の速度フィードバックループ内へ付加するとともに、トルクフィルタカットオフ周波数の調整をする。
なお、前述の実施形態では、負荷周波数特性を算出するために、第1のトルク指令とモータ速度をサンプリングし、フーリエ変換したが、フーリエ変換後のデータを入力して負荷周波数特性を算出するようにしてもよい。または事前に計算済みの負荷周波数特性を入力するようにしてもよい。
また、実施の形態2ないし5において、第1のフィルタ部10または第2のフィルタ部にノッチフィルタが含まれない状態で第1のトルク指令とモータ速度をサンプリングし、フーリエ変換し、負荷周波数特性を算出するとしたが、第1のフィルタ部10または第2のフィルタ部にノッチフィルタを含んだ状態で第1のトルク指令とモータ速度をサンプリングし、フーリエ変換し周波数特性を算出し、含まれているノッチフィルタの周波数特性を減じたものを負荷周波数特性として算出してもよい。
また、最終的に算出した速度応答周波数は、記憶手段に記憶したり、通信回線を通じて出力したりしてもよい。
また、ディスプレイ14と制御パラメータ算出装置13は無線通信回線を介してデータをやりとりしてもよい。
また、前述の実施形態において、フローチャートで示した各機能はプログラムにより実現されるとして説明したが、これらの機能をハードウェアで実現してもよい。