説明

モータ駆動制御装置

【課題】制御入力の飽和による制御性能劣化や制御系の不安定化を確実に防止できるモータ駆動制御装置を得ること。
【解決手段】参照位置偏差算出部4aは制御入力計算部7の出力と入力との関係に基づいて、制御入力hが参照制御入力bに一致するための参照位置偏差dを算出する。位置補正量算出部5aは参照位置偏差dの絶対値が位置偏差eの絶対値よりも小さい場合、位置補正量fを位置偏差eが前記参照位置偏差dと一致するように算出して出力し、参照位置偏差dの絶対値が位置偏差eの絶対値よりも大きい場合は、前記位置補正量fをゼロにして出力する。指令値整形部6aは位置偏差eから位置補正量fを引き算して生成した修正位置偏差gを制御入力計算部7の入力信号とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、工作機械を駆動するのに使用されるサーボモータなどを駆動制御するモータ駆動制御装置に関する。
【背景技術】
【0002】
一般に、サーボモータなどを駆動制御するモータ駆動制御装置では、モータの保護を目的として、入力可能な制御入力に制限を設けているので、制御入力制限を超えるような移動指令を与えると、制御入力の飽和が生じた際に出力応答にオーバーシュートを生じるワインドアップ現象により、制御性能劣化や制御系の不安定化を引き起こすことがある。そのため、従来では、この性能劣化の防止対策として、例えば、特許文献1に開示されているような制御入力制限に対する飽和対策を講じる必要があった。
【0003】
すなわち、特許文献1では、モータへの制御入力に制限を有する制御対象に対して、速度指令に一定の制限を設けることで、積分出力が過大になることを防止し、制御入力の飽和を防止する技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特許第3994208号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記特許文献1に記載の技術では、位置指令に対して速度指令に制限を設けることで制御入力が過剰にならないようにする対策を実施しているので、モータ速度が制限速度未満となる状態での飽和対策を行うことができなかった。
【0006】
また、制御入力制限と制限速度との関係が明確でないため、発生しうる制御入力の飽和を全て網羅できるように制限速度を設定しようとすると、小さな制限速度を設定する必要があり、移動時間が長くなる原因になっていた。
【0007】
本発明は、上記に鑑みてなされたものであって、制御入力の飽和による制御性能劣化や制御系の不安定化を確実に防止できるモータ駆動制御装置を得ることを目的とする。
【課題を解決するための手段】
【0008】
上述した課題を解決し、目的を達成するために、本発明は、位置指令に基づき駆動制御するモータへの制御入力に制限を設けたモータ駆動制御装置において、少なくとも参照制御入力を入力とし、前記制御入力を算出する制御入力算出部の出力と入力との関係に基づいて、前記制御入力が前記参照制御入力に一致するための参照位置偏差を算出する参照位置偏差算出部と、前記位置指令と前記モータの検出された位置検出値との差分である位置偏差の絶対値と前記参照位置偏差の絶対値とを比較し、前記参照位置偏差の絶対値が前記位置偏差の絶対値よりも小さい場合は、前記位置偏差を補正する位置補正量を該位置偏差が前記参照位置偏差と一致するように算出して出力し、前記参照位置偏差の絶対値が前記位置偏差の絶対値よりも大きい場合は、前記位置偏差を補正する位置補正量をゼロにして出力する位置補正量算出部と、前記位置偏差から前記位置補正量を引き算して生成した修正位置補正量を前記制御入力算出部の入力信号とする指令値整形部とを備えたことを特徴とする。
【発明の効果】
【0009】
本発明によれば、制御入力制限を考慮に入れたモータ駆動制御が実行可能となるので、制御入力の飽和による制御性能劣化や制御系の不安定化を確実に防止できるという効果を奏する。
【図面の簡単な説明】
【0010】
【図1】図1は、本発明の実施の形態1によるモータ駆動制御装置の構成を示すブロック図である。
【図2】図2は、本発明の実施の形態2によるモータ駆動制御装置の構成を示すブロック図である。
【図3】図3は、本発明の実施の形態3によるモータ駆動制御装置の構成を示すブロック図である。
【図4】図4は、本発明の実施の形態4によるモータ駆動制御装置の構成を示すブロック図である。
【図5】図5は、本発明の実施の形態5によるモータ駆動制御装置の構成を示すブロック図である。
【図6】図6は、本発明の実施の形態6によるモータ駆動制御装置の構成を示すブロック図である。
【図7】図7は、本発明の実施の形態7によるモータ駆動制御装置の構成を示すブロック図である。
【図8】図8は、本発明の実施の形態8によるモータ駆動制御装置の構成を示すブロック図である。
【図9】図9は、本発明の実施の形態9によるモータ駆動制御装置の構成を示すブロック図である。
【発明を実施するための形態】
【0011】
以下に、本発明にかかるモータ駆動制御装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態により本発明が限定されるものではない。
【0012】
実施の形態1.
図1は、本発明の実施の形態1によるモータ駆動制御装置の構成を示すブロック図である。図1において、本実施の形態1によるモータ駆動制御装置1aは、位置指令生成装置2が出力する位置指令aに基づき、サーボモータ(以降、単に「モータ」という)3を制御入力制限の範囲内で駆動制御する構成として、参照位置偏差算出部4と、位置補正量算出部5aと、指令値整形部6aと、制御入力計算部7と、制御入力制限部8とを備えている。モータ3には、駆動位置を検出する位置検出器9が取り付けられている。
【0013】
以下、これらの各要素の構成と動作について説明する。まず、制御入力制限部8は、モータ3などのアクチュエータや機械系(例えば、減速器の許容力)の特性に応じて設定された制御入力制限値に基づき、制御入力計算部7からの制御入力hに制限をかけるためのフィルタであり、制御入力hが、所定の制御入力制限値を超える場合に、制御入力hを所定の制御入力制限値でクランプし、その所定の制御入力制限値でクランプした制限後制御入力iをモータ3への駆動信号として出力する。
【0014】
なお、制御入力制限値としては、モータ特性に応じて予め設定しておいた固定制限値とする場合でもよく、制御対象のフィードバック情報から逐次計算した値を制限値とする場合でもよい。また、予め複数用意した制御入力制限値をモータの加減速状態に応じて、選択する場合でもよい。さらに、モータ3の加速度が正の場合には、正の値の制御入力制限を用い、加速度が負の場合には、負の値の制御入力制限を用いる場合でもよい。
【0015】
制御入力計算部7は、指令値整形部6aが出力する修正位置偏差gに基づき、モータ3への制御入力hを算出する。この制御入力計算部7は、従来、一般に用いられているフィードバック補償器(フィードバック制御器)で構成されている。具体的には、例えば、比例補償器(P補償器)や、比例積分補償器(PI補償器)で構成されている。
【0016】
つまり、制御入力計算部7は、モータ3への制御入力hを、位置偏差(修正位置偏差g)に対し、積分演算、微分演算、四則演算を施して計算する。したがって、制御入力hの計算方法は、特定されるものではなく、任意である。また、制御入力計算部7は、内部にマイナーループ(インナーループ)を有する制御系で構成されていてもよく、位置制御系の内側に速度制御系を入れ子にした制御系で構成されていてもよい。
【0017】
さて、参照位置偏差算出部4には、図1では、位置指令生成装置2が出力する位置指令aと、参照制御入力bと、位置検出器9が出力する位置検出値cとが入力されるとしてあるが、後述するように、参照制御入力bは基本的に必要であるのに対し、位置指令aと位置検出値cとは、制御入力計算部7での計算方法(内部構造)によって、不要である場合と必要である場合とがある。
【0018】
ここで、参照位置偏差算出部4に入力される参照制御入力bは、参照位置偏差dを計算するための設定値であり、制御入力制限部8で使用する制御入力制限値と同じ値、或いは制御入力制限値を定数倍した値である。なお、参照制御入力bとして用いる制御入力制限値は、予め複数用意した制御入力制限値をモータ3の加減速状態に応じて選択する場合の制御入力制限値でもよく、また、モータ3の回転方向に応じて使用する制御入力制限値の符号を切り替えて使用する場合の制御入力制限値でもよい。
【0019】
参照位置偏差算出部4は、少なくとも所定の参照制御入力bに基づき、制御入力計算部7が算出した制御入力hに対する位置偏差(修正位置偏差g)の関係式を用いて、制御入力hが所定の参照制御入力bに一致するための位置偏差量である参照位置偏差dの算出を行う。
【0020】
つまり、制御入力計算部7が修正位置偏差gから制御入力hを計算するのに対し、参照位置偏差算出部4では、参照制御入力(制御入力計算部の出力信号)から参照位置偏差(制御入力計算部の入力信号)の計算を行うものである。したがって、参照位置偏差算出部4は、制御入力計算部7が積分特性やインナーループ(マイナーループ)を有する場合には、積分特性の影響やマイナーループの影響を考慮した上で、参照制御入力bから参照位置偏差dの計算を行うことになる。
【0021】
以下に、参照位置偏差算出の一例を3つ示す。
(1)例えば、制御入力計算部7が比例補償器(P補償器)である場合は、参照位置偏差算出部4は、参照制御入力bのみを用いて参照位置偏差dの算出を行うことができる。この場合の制御入力計算部7の入出力関係は、制御入力U、比例ゲインKP、位置偏差DRPを用いて次の式(1)となる。
U=KP×DRP …(1)
【0022】
このとき、制御入力Uが参照制御入力TLMTに一致するための位置偏差である参照位置偏差DRP’は、制御入力計算部7の入力である修正位置偏差gに等しいので、制御入力計算部7の出力である制御入力Uを比例ゲインKPで除算することで、算出することが可能であり、次の式(2)となる。
DRP’=TLMT/KP …(2)
【0023】
(2)また、制御入力計算部7が比例積分補償器(PI補償器)である場合は、参照位置偏差算出部4は、参照制御入力bと位置指令aと位置検出値cとを用いて参照位置偏差dの算出を行う。この場合の制御入力計算部7の入出力関係は、制御入力U、比例ゲインKP、位置偏差DRP、積分ゲインKI、位置偏差DRPの時間積分値(累積値)DRP2を用いて次の式(3)となる。
U=KP×DRP+KI×DRP2 …(3)
【0024】
このとき、制御入力Uが参照制御入力TLMTに一致するための位置偏差DRP’は、後述するように制御入力計算部7の入力である修正位置偏差gに等しいので、制御入力計算部7の出力である制御入力Uから、比例積分補償器における積分成分(位置偏差信号を積分し、積分ゲインを乗じた値)を差し引いて、計算することが可能であり、次の式(4)となる。
DRP’=(TLMT―KPI×DRP2)/KP …(4)
ここで、DRP2は、位置指令aと位置検出値cとの差(位置偏差)を時間積分(累積)することで計算可能となる値である。
【0025】
(3)また、制御入力計算部7が、位置制御系と速度制御系とを有し、それぞれの補償器(制御器)が位置比例補償器(位置P補償器)と速度比例積分補償器(速度PI補償器)とで構成される場合は、参照位置偏差算出部4は、参照制御入力bと位置指令aと位置検出値cとを用いて参照位置偏差dの算出を行う。この場合の制御入力計算部7の入出力関係は、制御入力U、速度比例ゲインKV、比例ゲインKP、位置偏差DRP、速度検出値VFB、速度積分ゲインKI、速度偏差VDRPの時間積分値(累積値)VDRP2を用いて、次の式(5)となる。
U=KV×(KP×DRP―VFB)+KI×VDRP2 …(5)
【0026】
このとき、制御入力Uが参照制御入力TLMTに一致するための位置偏差DRP’は、後述するように制御入力計算部7の入力である修正位置偏差gと等しいので、制御入力計算部7の出力である制御入力Uから、速度制御器の積分成分と速度検出値を考慮に入れ、次の式(6)で演算可能である。
DRP’=((TLMT―KI×VDRP2)/KV+VFB)/KP …(6)
【0027】
ここで、速度偏差VDRPは、次の式(7)の関係式で表わすことができる。また、速度偏差累積値VDRP2は、式(7)の時間積分により算出することが可能である。そして、速度検出値VFBは、位置検出値cの時間微分により算出することが可能である。
VDRP=(KP×DRP―VFB) …(7)
【0028】
なお、参照位置偏差算出部4で必要となる情報(位置偏差累積値や速度検出値、速度偏差累積値など)は、参照位置偏差算出部4内部の演算で生成する方法でもよく、制御入力計算部7の内部信号を用いる方法でもよい。
【0029】
次に、指令値整形部6aは、2つの減算器11a,11bを備えている。減算器11aは、位置指令生成装置2が出力する位置指令aから位置検出器9が検出した位置検出値cを引き算して位置偏差eを出力する。減算器11bは、減算器11aが算出した位置偏差eから位置補正量算出部5aが算出した位置補正量fを引き算して修正位置偏差gを出力する。このように、指令値整形部6aは、位置指令aと位置検出値cとに基づいて位置偏差eを算出し、その算出した位置偏差eに位置補正量fを加味した修正位置偏差gを出力する。
【0030】
次に、位置補正量算出部5aには、参照位置偏差算出部4から参照位置偏差dが入力され、指令値整形部6aから位置偏差eが入力される。位置補正量算出部5aは、位置偏差eを用いて制御入力hを計算し、併せて、参照位置偏差dと位置偏差eの各絶対値の大小比較を行う。位置補正量算出部5aは、その比較の結果、参照位置偏差dの絶対値が位置偏差eの絶対値よりも小さい場合には、計算した制御入力hは制御入力制限を受けると判断し、参照位置偏差dの絶対値が位置偏差eの絶対値よりも大きい場合には、計算した制御入力hは制御入力制限を受けないと判断する。
【0031】
そして、位置補正量算出部5aは、その判断結果に応じて、位置偏差eを補正するための位置補正量fを次のように算出する。すなわち、位置補正量算出部5aは、参照位置偏差dの絶対値が位置偏差eの絶対値よりも小さい場合には、位置偏差eが参照位置偏差dに一致するように位置補正量fを算出する。つまり、位置偏差eから参照位置偏差dを引き算した値を位置補正量fとする。これによって、計算した制御入力hが制御入力制限を受ける場合は、指令値整形部6aの減算器11bから、参照位置偏差dに一致させた修正位置偏差gを出力することで、事前に制御入力飽和を回避することができる。
【0032】
一方、位置補正量算出部5aは、参照位置偏差dの絶対値が位置偏差eの絶対値よりも大きい場合には、位置補正量fを値0にする。これによって、計算した制御入力hが制御入力制限を受けない場合は、指令値整形部6aの減算器11bから、通常通りに実際の位置偏差eに一致させた修正位置偏差gを出力することができる。
【0033】
以上のように動作する参照位置偏差算出部4aと位置補正量算出部5aと指令値整形部6aとの協働によって、制御入力hが制限を受けることを事前に予測できると、参照制御入力bと、既知の情報である制御入力計算部7の情報(制御入力hと位置偏差(修正位置偏差g)との関係)と、位置指令aと、位置検出値cとを用いて、制御入力hを参照制御入力bに一致させて、実位置偏差(位置ドループ、実位置ドループ)を修正することが行われる。特に、参照制御入力bと制御入力制限とを同一の値とする場合、制御入力hが制御入力制限値を越えないように位置偏差eを修正することが行われる。これによって、制御入力飽和を未然に防止することが可能となり、不安定化することなく、モータ3の駆動制御を行うことができる。
【0034】
つまり、本実施の形態1によれば、モータへの制御入力に制限を設けたモータ駆動制御装置において、制御入力が制限を受けることを事前に予測して、制御入力の制限を考慮に入れたモータ駆動制御が実行可能となるので、ワインドアップ現象の発生を未然に防止することができ、制御入力飽和による性能劣化や不安定化を確実に防ぐことができる。
【0035】
実施の形態2.
図2は、本発明の実施の形態2によるモータ駆動制御装置の構成を示すブロック図である。なお、図2では、図1(実施の形態1)に示した構成要素と同一ないしは同等である構成要素には同一の符号が付されている。ここでは、本実施の形態2に関わる部分を中心に説明する。
【0036】
図2に示すように、本実施の形態2によるモータ駆動制御装置1bは、図1(実施の形態1)に示した構成において、符号を変えた位置補正量算出部5bおよび指令値整形部6bが設けられている。
【0037】
指令値整形部6bは、2つの減算器12a,12bを備えているが、それぞれの減算内容は、指令値整形部6aと異なっている。減算器12aは、位置指令生成装置2が出力する位置指令aから位置補正量算出部5bが出力する位置補正量fを引き算して修正位置指令jを出力する。減算器12bは、減算器12aが出力する修正位置指令jから位置検出器9が出力する位置検出値cを引き算して修正位置偏差gを出力する。このように、指令値整形部6bは、位置指令aから位置補正量fを減算して位置指令の補正を行い、その補正した修正位置指令jから位置検出値cを減算して修正位置偏差gを出力する。
【0038】
位置補正量算出部5bには、位置指令生成装置2が出力する位置指令aと参照位置偏差算出部4が出力する参照位置偏差dと位置検出器9が出力する位置検出値cとが入力される。つまり、位置補正量算出部5bは、位置補正量算出部5aとは異なり、位置偏差を内部で算出して、位置補正量fを算出する。
【0039】
すなわち、位置補正量算出部5bは、位置指令aと位置検出値cとの差分を取って位置偏差を求め、その算出した位置偏差を用いて制御入力hを計算し、併せて、その算出した位置偏差と参照位置偏差dとの各絶対値の大小比較を行う。比較の結果、参照位置偏差dの絶対値が算出した位置偏差の絶対値よりも小さい場合には、計算した制御入力hは制御入力制限を受けると判断し、参照位置偏差dの絶対値が算出した位置偏差の絶対値よりも大きい場合には、計算した制御入力hは制御入力制限を受けないと判断する。
【0040】
そして、位置補正量算出部5aは、参照位置偏差dの絶対値が算出した位置偏差の絶対値よりも小さい場合には、位置偏差から位置検出値cを引き算した値が参照位置偏差dに一致するように位置補正量fを算出する。これによって、計算した制御入力hが制御入力制限を受ける場合は、指令値整形部6bでは、位置指令aから位置補正量fを差し引いた修正位置指令jから、位置検出値cを引き算するので、参照位置偏差dに一致した修正位置偏差gが出力される。
【0041】
一方、位置補正量算出部5は、参照位置偏差dの絶対値が算出した位置偏差の絶対値よりも大きい場合には、位置補正量fを値0にする。これによって、計算した制御入力hが制御入力制限を受けない場合は、指令値整形部6bでは、減算器12aが修正位置指令jとして位置指令aを出力するので、減算器12bから、算出した実際の位置偏差が修正位置偏差gとして出力される。
【0042】
したがって、本実施の形態2でも、実施の形態1と同様の動作が行われるので、同様にモータへの制御入力に制限を設けたモータ駆動制御装置において、制御入力が制限を受けることを事前に予測して、制御入力の制限を考慮に入れたモータ駆動制御が実行可能となるので、ワインドアップ現象の発生を未然に防止することができ、制御入力飽和による性能劣化や不安定化を確実に防ぐことができる。
【0043】
加えて、本実施の形態2では、指令値整形部は、位置指令から修正位置指令を算出する部分と、修正位置指令と位置検出値との差分を計算してフィードバック処理する部分とに分離できる構成であるので、モータの制御入力を考慮に入れた指令値整形を数値制御装置(NC)やモーションコントローラなどの位置指令生成装置で行うことが可能となる。
【0044】
実施の形態3.
図3は、本発明の実施の形態3によるモータ駆動制御装置の構成を示すブロック図である。なお、図3では、図1(実施の形態1)に示した構成要素と同一ないしは同等である構成要素には同一の符号が付されている。ここでは、本実施の形態3に関わる部分を中心に説明する。
【0045】
図3に示すように、本実施の形態3によるモータ駆動制御装置1cは、図1(実施の形態1)に示した構成において、位置補正量算出部5aおよび指令値整形部6aに代えて修正位置選択部15aが設けられ、減算器16が追加して設けられている。
【0046】
減算器16は、位置指令生成装置2が出力する位置指令aから位置検出器9が検出した位置検出値cを引き算して位置偏差eを出力する。
【0047】
修正位置選択部15aは、減算器16が算出した位置偏差eと参照位置偏差算出部4aが算出した参照位置偏差dとを入力とし、修正位置偏差gを出力する。修正位置偏差選択部15aは、位置偏差eを用いて制御入力hを計算し、計算した制御入力が制御入力制限を受けないと判断した場合は、位置偏差eを修正位置偏差gとして出力する。一方、修正位置選択部15aは、計算した制御入力が制御入力制限を受けると判断した場合は、参照位置偏差dと位置偏差eのうち、絶対値が小さい方に切り替えて出力することで、制御入力制限を回避する。
【0048】
したがって、本実施の形態3でも、実施の形態1と同様の動作が行われるので、同様にモータへの制御入力に制限を設けたモータ駆動制御装置において、制御入力が制限を受けることを事前に予測して、制御入力の制限を考慮に入れたモータ駆動制御が実行可能となるので、ワインドアップ現象の発生を未然に防止することができ、制御入力飽和による性能劣化や不安定化を確実に防ぐことができる。
【0049】
実施の形態4.
図4は、本発明の実施の形態4によるモータ駆動制御装置の構成を示すブロック図である。なお、図4では、図3(実施の形態3)に示した構成要素と同一ないしは同等である構成要素には同一の符号が付されている。ここでは、本実施の形態4に関わる部分を中心に説明する。
【0050】
実施の形態1〜3では、制御入力計算部7の入出力関係を用いて、制御入力hが制御入力制限とならないような位置偏差(修正位置偏差g)を算出し制御入力hの飽和防止を行う場合について説明したが、本実施の形態4と後述する実施の形態5では、制御入力計算部7が制御系に位置制御系を有し、モータ速度を速度指令に従うように動作させる場合について説明する。
【0051】
本実施の形態4における位置指令生成装置2は、位置制御系に対して速度指令を出力する場合、指令速度Fと位置制御系の制御周期TSとを用いて、単位制御周期当たりの位置指令増分値FDTを次の式(8)によって計算し、計算した位置指令増分値FDTの累積値を位置指令aとして本実施の形態4によるモータ駆動制御装置1dへ出力する。
FDT=F×TS …(8)
なお、位置指令aは、単位時間当たりの位置指令増分値FDTに少なくとも1回以上、所定の時定数を用いた移動平均処理を施したものでもよい。
【0052】
さて、図4に示すように、本実施の形態4によるモータ駆動制御装置1dは、図3(実施の形態3)に示した構成において、符号を変えた修正位置選択部15bが設けられ、また、位置補正量更新部17aと減算器18とが追加して設けられている。
【0053】
減算器18は、減算器16にて算出された位置偏差eから位置補正量更新部17aにて算出された更新後位置補正量mを引き算して補正後位置偏差kを出力する。補正後位置偏差kは、修正位置選択部15bと位置補正量更新部17aとに入力される。
【0054】
修正位置選択部15bは、参照位置偏差dと補正後位置偏差kを用いて、図3に示した修正位置選択部15aと同様の方法で、修正位置偏差gを算出する。
【0055】
位置補正量更新部17aは、更新後位置補正量mの前回値に補正後位置偏差kと修正位置偏差gとの差分を加算して更新後位置補正量mを出力する。なお、更新後位置補正量mの算出方法としては、モータ3の加速度が正の場合には、補正後位置偏差kと修正位置偏差gとの差分が正の場合のみ累積する場合でもよく、モータ3の加速度が負の場合には、補正後位置偏差kと修正位置偏差gとの差分が負の場合のみ累積する場合でもよい。
【0056】
ここで、位置偏差eから更新後位置補正量mを差し引いて補正後位置偏差kを求めるということは、モータ3の最大制御入力でも追従することができない移動分を逐次放棄(無視)していることを示している。これは、現時点で位置偏差が過大な状態であっても、過去に位置補正を行った位置補正量が累積された分だけ、現時点での位置偏差を小さく見積もっていること(つまり補正後の位置偏差を計算していること)と等価となる。これによって、現時点における位置指令増分と位置検出値の増分との関係で位置補正量を計算することが可能となる。
【0057】
したがって、位置制御系を有する制御系に対して速度指令を行う場合、従来技術では、
加速中(または減速中)に位置の補正を受けると、速度検出値が指令速度に到達した時点でも位置偏差が過大状態のままになり、速度検出値がオーバーシュートしてしまい、ワインドアップ現象を招来するという問題があったが、本実施の形態4によれば、速度検出値が速度指令値に到達した時点で位置偏差が過大となることを防ぐことができ、オーバーシュートやワインドアップ現象の発生を防止することが可能となる。
【0058】
実施の形態5.
図5は、本発明の実施の形態5によるモータ駆動制御装置の構成を示すブロック図である。なお、図5では、図1(実施の形態1)に示した構成要素と同一ないしは同等である構成要素には同一の符号が付されている。ここでは、本実施の形態5に関わる部分を中心に説明する。
【0059】
本実施の形態5における位置指令生成装置2も、実施の形態4における位置指令生成装置2と同様に、位置制御系に対して速度指令を出力する場合、指令速度Fと位置制御系の制御周期TSとを用いて、単位制御周期当たりの位置指令増分値FDTを前記式(8)によって計算し、計算した位置指令増分値FDTの累積値を位置指令aとして本実施の形態5によるモータ駆動制御装置1eへ出力する。
【0060】
さて、図5に示すように、本実施の形態5によるモータ駆動制御装置1eは、図1(実施の形態1)に示した構成において、符号を変えた位置補正量算出部5cが設けられ、また、位置補正量更新部17bと減算器18とが追加して設けられている。
【0061】
減算器18は、指令値整形部6aの減算器11にて算出された位置偏差eから位置補正量更新部17bにて算出された更新後位置補正量mを引き算して補正後位置偏差kを出力する。補正後位置偏差kは、位置補正量算出部5cに入力される。
【0062】
位置補正量算出部5cは、参照位置偏差dと補正後位置偏差kとを用いて、図1に示した位置補正量算出部5aと同様の方法で、位置補正量fを算出する。
【0063】
位置補正量更新部17bは、位置補正量fを更新後位置補正量mの前回値に加算して更新後位置補正量mを算出する。
【0064】
指令値整形部6aでは、減算器11bから、位置偏差eと更新後位置補正量mとの差分が修正位置偏差gとして出力される。
【0065】
この構成によっても、実施の形態4と同様に、位置偏差eから更新後位置補正量mを差し引いて補正後位置偏差kを求めることで、モータ3の最大制御入力でも追従することができない移動分を逐次放棄(無視)している。したがって、現時点における位置指令増分と位置検出値の増分との関係で位置補正量を算出することができるので、位置制御系を有する制御系に対して速度指令を行う場合、速度検出値が速度指令値に到達した時点で位置偏差が過大となることを防ぐことができ、オーバーシュートやワインドアップ現象の発生を防止することが可能となる。
【0066】
実施の形態6.
図6は、本発明の実施の形態6によるモータ駆動制御装置の構成を示すブロック図である。なお、図6では、図4(実施の形態4)に示した構成要素と同一ないしは同等である構成要素には同一の符号が付されている。ここでは、本実施の形態6に関わる部分を中心に説明する。
【0067】
本実施の形態6では、図4(実施の形態4)にて説明した位置補正量の更新によって位置指令と位置検出値との間に生じたずれを解消する場合ついて説明する。
【0068】
図6に示すように、本実施の形態6によるモータ駆動制御装置1fは、図4(実施の形態4)に示した構成において、符号を変えた位置補正量更新部17cと減算器20とが設けられ、一回転内位置補正部19が追加して設けられている。
【0069】
減算器20は、減算器16にて算出された位置偏差eから一回転内位置補正部19にて算出された一回転内位置補正後位置補正量nを引き算して補正後位置偏差kを出力する。補正後位置偏差kは、修正位置選択部15bと位置補正量更新部17cとに入力される。
【0070】
位置補正量更新部17cは、補正後位置偏差kから修正位置偏差gを減算した値に、一回転内位置補正部19が出力する一回転内位置補正後位置補正量nの前回値を加算して更新後位置補正量mを算出する。更新後位置補正量mは、一回転内位置補正部19に入力される。
【0071】
一回転内位置補正部19は、更新後位置補正量mについて次の(1)〜(3)の処理を行って一回転内位置補正後位置補正量nを算出する。
(1)一回転内位置補正部19は、更新後位置補正量mの一回転内(一回転未満)の位置補正量を、正規化する、多回転分の更新後位置補正量を放棄(無視)する、多回転分の位置補正量を加減算する、などによって算出する。
(2)次に、一回転内位置補正部19は、更新後位置補正量mが前回値に一致する場合で、かつ、正規化した位置補正量が0以外の場合は、補正後位置偏差kと参照位置偏差dとの差分を上限として、正規化した位置補正量を一回転内位置補正後位置補正量nとして出力する。なお、一回転内位置補正後位置補正量nは、各軸共通の所定時定数により移動平均処理を施した値となるように算出する場合でもよい。
(3)また、一回転内位置補正部19は、更新後位置補正量mから(1)にて算出した一回転内位置補正量を減算し、それを一回転内位置補正後位置補正量nとして出力する。
【0072】
これによって、モータ3の位置検出値cと位置指令aの各一回転位置が一致するように補正できるので、図4(実施の形態4)にて説明した位置補正量の更新によって位置指令と位置検出値との間にずれが生じないようにすることができる。
【0073】
このように、本実施の形態6によれば、制御入力が制限範囲を超過することなく、位置指令と位置検出値の各一回転内位置を一致させることができるので、位置ずれすることなく位置決めすることが可能となる。一例として、工具交換の際に必要とされる割り出し動作(オリエント動作)を行うことが可能となる。
【0074】
実施の形態7.
図7は、本発明の実施の形態7によるモータ駆動制御装置の構成を示すブロック図である。なお、図7では、図5(実施の形態5)に示した構成要素と同一ないしは同等である構成要素には同一の符号が付されている。ここでは、本実施の形態7に関わる部分を中心に説明する。
【0075】
本実施の形態7では、図5(実施の形態5)にて示した位置補正量の更新によって位置指令と位置検出値との間に生じたずれを解消する場合ついて説明する。
【0076】
図7に示すように、本実施の形態7によるモータ駆動制御装置1gは、図5(実施の形態5)に示した構成において、符号を変えた位置補正量更新部17dと減算器20とが設けられ、一回転内位置補正部19が追加して設けられている。
【0077】
減算器20は、指令値整形部6aの減算器11aにて算出された位置偏差eから一回転内位置補正部19にて算出された一回転内位置補正後位置補正量nを引き算して補正後位置偏差kを出力する。補正後位置偏差kは、位置補正量算出部5cと位置補正量更新部17dとに入力される。
【0078】
位置補正量更新部17dは、位置補正量fを一回転内位置補正部19が出力する一回転内位置補正後位置補正量nの前回値に加算して更新後位置補正量mを算出する。更新後位置補正量mは、一回転内位置補正部19に入力される。
【0079】
一回転内位置補正部19は、更新後位置補正量mについて図6(実施の形態6)に示した(1)〜(3)の処理を行って一回転内位置補正後位置補正量nを算出する。
【0080】
これによって、モータ3の位置検出値cと位置指令aの各一回転位置が一致するように補正できるので、図5(実施の形態5)にて説明した位置補正量の更新によって位置指令と位置検出値との間にずれが生じないようにすることができる。
【0081】
このように、本実施の形態7によれば、実施の形態6と同様に、制御入力が制限範囲を超過することなく、位置指令と位置検出値の各一回転内位置を一致させることができるので、位置ずれすることなく位置決めすることが可能となる。同様に、工具交換の際に必要とされる割り出し動作(オリエント動作)を行うことが可能となる。
【0082】
実施の形態8.
本実施の形態8では、実施の形態1〜7において、通信遅れなどの無駄時間が存在する場合や制御周期が異なる場合の補正方法について説明する。ここでは、説明の便宜から、図2(実施の形態2)に示したモータ駆動制御装置1bを用いて通信遅れなどの無駄時間が存在する場合の補正方法について説明する。
【0083】
すなわち、前記したように、モータ駆動制御装置1bでの指令値整形部6bは、位置指令から修正位置指令を算出する部分と、修正位置指令と位置検出値とを計算してフィードバック処理する部分とに分離できる構成である。
【0084】
そこで、モータ駆動制御装置1bの処理の一部(指令値整形処理、位置補正量の減算処理)を数値制御装置(NC)やモーションコントローラなどの位置指令生成装置で行い、残りの処理(フィードバック処理)をアンプなどのモータ駆動制御装置で行う場合に、位置指令生成装置2とモータ駆動制御装置1bとの間に通信遅れが存在する場合の補正方法について説明する。
【0085】
図8は、本発明の実施の形態8によるモータ駆動制御装置の構成を示すブロック図である。なお、図8では、図2(実施の形態2)に示した構成要素と同一ないしは同等である構成要素には同一の符号が付されている。ここでは、本実施の形態8に関わる部分を中心に説明する。
【0086】
図8に示す本実施の形態8によるモータ駆動制御装置1hでは、図2(実施の形態2)に示した構成において、位置検出器2と位置補正量算出部5b及び参照位置偏差算出部4aとの間に無駄時間が存在するとして無駄時間補正部21が設けられ、減算器11aが算出する修正位置指令jに無駄時間が存在するとして減算器11bとの間に無駄時間補正部22が設けられている。
【0087】
無駄時間補正部21,22は、それぞれ通信経路上に配置されるもので、同様の動作を行う。すなわち、無駄時間補正部21は、次の式(9)に示すように、位置検出値PFBに、モータ3の速度VFB(位置検出値PFBの微分値)と補正時間TCとの乗算値を加算し、無駄時間補正後位置検出値PFB’(図8に示す無駄時間補正後位置検出値p)を出力する。
PFB’=PFB+VFB×TC …(9)
【0088】
なお、位置検出値PFBが無駄時間TDを含む信号の場合、補正時間TCを無駄時間TDとして式(9)を計算することで無駄時間に対する補正を行うことができる。また、位置検出値PFBが離散値の場合、モータ3の速度VFBは、位置検出値PFBの差分値であるので、次の式(10)で計算することができる。
VFB(t)=PFB(t)―PFB(t−1) …(10)
なお、式(10)において、tは制御系の補間周期を定数倍した時刻とする。
【0089】
無駄時間補正部22も、修正位置指令jに対して、上記の無駄時間補正を行うことで、修正位置指令jを補正した無駄時間補正後修正位置指令rを出力することができる。
【0090】
このように、本実施の形態8によれば、位置検出値が無駄時間分遅れた状態で、位置補正量算出部5bが位置偏差を算出し、参照位置偏差算出部4aが参照位置偏差dを算出する場合でも、無駄時間の影響を小さくすることが可能となり、制御入力制限に対し正確な指令値整形が可能となる。
【0091】
また、補正時間TCを推定時間TEとすることで、修正位置指令を予測することが可能となる。なお、本実施の形態8にて説明した無駄時間補正方法は、無駄時間の存在箇所を限定するものではなく、モータ駆動制御装置内外に無駄時間を含む場合についても適用可能とするものである。
【0092】
実施の形態9.
実施の形態1〜8では、制御入力計算部7をフィードバック補償器として、制御入力が制御入力制限以下となるように、位置偏差を修正する方法について説明した。本実施の形態9では、フィードバック制御の範疇に限定しない位置補正方法について説明する。
【0093】
図9は、本発明の実施の形態9によるモータ駆動制御装置の構成を示すブロック図である。なお、図9では、図1(実施の形態1)に示した構成要素と同一ないしは同等である構成要素には同一の符号が付されている。ここでは、本実施の形態9に関わる部分を中心に説明する。
【0094】
図9に示す本実施の形態9によるモータ駆動制御装置1iでは、図1(実施の形態1)に示した構成において、符号を変えた参照位置偏差算出部4bと、同じく符号を変えた制御入力計算部7bとが設けられている。
【0095】
参照位置偏差算出部4bは、フィードフォワード補償器27を内蔵し、予めフィードフォワード補償器27に位置指令aに基づきフィードフォワード制御入力を算出させて用意しておく。そして、算出したフィードフォワード制御入力を参照制御入力bから差し引いた値と位置検出値cとを用いて参照位置偏差dを計算する。
【0096】
制御入力計算部7bは、フィードバック補償器23と、フィードフォワード補償器24と、加算器25とを備えている。フィードバック補償器23は、修正位置偏差gに基づきフィードバック制御入力を算出し、フィードフォワード補償器24は、位置指令aに基づきフィードフォワード制御入力を算出する。そして、加算器25にて、フィードバック制御入力とフィードフォワード制御入力とを加算し、その加算結果を、モータ3への制御入力として出力する。なお、参照位置偏差算出部4bが内蔵するフィードフォワード補償器27は、フィードフォワード補償器24と同一の構成である。
【0097】
以上は、2自由度制御を用いた説明であるが、フィードフォワード補償器24にて算出された制御入力(フィードフォワード制御入力)を、フィードバック補償器23にて算出された制御入力(フィードバック制御入力)に対する補正値(制御入力補正値)とみなすことができる。
【0098】
ここで、制御入力補正値は、2自由度制御のフィードフォワード制御入力に限定するものではなく、機械の特性に応じて制御入力補正量を算出する各種補正機能(駆動系摺動面で発生する摩擦の影響をなくすための補正、重力の影響に対する補正など)で算出される補正量などでもよい。また、制御入力補正量は、2種類以上の複数の補正機能や制御方法を組み合わせる場合でもよい。
【0099】
このように、本実施の形態9によれば、制御入力計算部では、フィードバック補償器から算出された制御入力(フィードバック制御入力)に制御入力補正値(フィードフォワード制御入力)を加算して、モータへ出力するので、フィードバック制御の範疇に限定しない位置補正を行うことができる。
【産業上の利用可能性】
【0100】
以上のように、本発明にかかるモータ駆動制御装置は、制御入力の飽和による制御性能劣化や制御系の不安定化を確実に防止できるモータ駆動制御装置として有用である。
【符号の説明】
【0101】
1a,1b,1c,1d,1e,1f,1g,1h,1i モータ駆動制御装置
2 位置指令生成装置
3 モータ(サーボモータ)
4a,4b 参照位置偏差算出部
5a,5b,5c 位置補正量算出部
6a,6b 指令値整形部
7 制御入力計算部
8 制御入力制限部
9 位置検出器
15a,15b 修正位置偏差選択部
16,18,20 減算器
17a,17b 位置補正量更新部
19 一回転内位置補正部
21,22 無駄時間補正部
23 フィードバック補償器
24,27 フィードフォワード補償器
25 加算器

【特許請求の範囲】
【請求項1】
位置指令に基づき駆動制御するモータへの制御入力に制限を設けたモータ駆動制御装置において、
少なくとも参照制御入力を入力とし、前記制御入力を算出する制御入力算出部の出力と入力との関係に基づいて、前記制御入力が前記参照制御入力に一致するための参照位置偏差を算出する参照位置偏差算出部と、
前記位置指令と前記モータの検出された位置検出値との差分である位置偏差の絶対値と前記参照位置偏差の絶対値とを比較し、前記参照位置偏差の絶対値が前記位置偏差の絶対値よりも小さい場合は、前記位置偏差を補正する位置補正量を該位置偏差が前記参照位置偏差と一致するように算出して出力し、前記参照位置偏差の絶対値が前記位置偏差の絶対値よりも大きい場合は、前記位置偏差を補正する位置補正量をゼロにして出力する位置補正量算出部と、
前記位置偏差から前記位置補正量を引き算して生成した修正位置偏差を前記制御入力算出部の入力信号とする指令値整形部と、
を備えたことを特徴とするモータ駆動制御装置。
【請求項2】
出力である更新後位置補正量の前回値に前記位置補正量を加算して更新後位置補正量を算出する位置補正量更新部をさらに備え、
前記位置補正量算出部は、前記位置偏差に代えて、前記位置偏差から前記更新後位置補正量を減じた補正後位置偏差とし、
前記指令値整形部は、前記修正位置偏差を前記位置偏差から前記更新後位置補正量を減じた値として出力する、
ことを特徴とする請求項1に記載のモータ駆動制御装置。
【請求項3】
位置指令に基づき駆動制御するモータへの制御入力に制限を設けたモータ駆動制御装置において、
少なくとも参照制御入力を入力とし、前記制御入力を算出する制御入力算出部の出力と入力との関係に基づいて、前記制御入力が前記参照制御入力に一致するための参照位置偏差を算出する参照位置偏差算出部と、
前記位置指令と前記モータの検出された位置検出値との差分である位置偏差と前記参照位置偏差とのうち、絶対値の小さい方を前記制御入力算出部の入力信号する修正位置偏差として選択する修正位置選択部と、
を備えたことを特徴とするモータ駆動制御装置。
【請求項4】
出力である更新後位置補正量の前回値に、前記位置偏差から前記更新後位置補正量を減じた補正後位置偏差と前記修正位置偏差との差分を加算して更新後位置補正量を算出する位置補正量更新部をさらに備え、
前記位置補正量選択部は、前記位置偏差に代えて、前記補正後位置偏差とする、
ことを特徴とする請求項3に記載のモータ駆動制御装置。
【請求項5】
前記更新後位置補正量から一回転分の位置補正量を加減算することで一回転未満の位置補正量を求め、該一回転未満の位置補正量を前記更新後位置補正量から減算して一回転内位置補正後位置補正量を出力する一回転内位置補正部をさらに備え、
前記位置補正量更新部は、前記更新後位置補正量の前回値に代えて、前記一回転内位置補正後位置補正量とし、
前記補正後位置偏差を前記位置偏差から前記一回転内位置補正後位置補正量を減算した値とする
ことを特徴とする請求項2または4に記載のモータ駆動制御装置。
【請求項6】
前記一回転内位置補正部は、
前記更新後位置補正量が前回値に一致する場合、かつ、一回転未満の位置補正量が0以外の場合、前記補正後位置偏差と前記参照位置偏差との差分を上限として、前記更新後位置補正量から前記一回転内位置補正後位置補正量を減算する
ことを特徴とする請求項5に記載のモータ駆動制御装置。
【請求項7】
前記指令値整形部は、
前記位置指令から前記位置補正量を差し引いた値を修正位置指令とし、前記修正位指令から前記位置検出値を差し引くことで前記修正位置偏差を出力する
ことを特徴とする請求項1または2に記載のモータ駆動制御装置。
【請求項8】
前記位置検出値に第一の補正時間を乗算した値と前記位置検出値とを加算して前記位置検出値を時間補正し、
前記修正位置指令に第二の補正時間を乗算した値と前記修正位置指令とを加算して前記修正位置指令を時間補正する
ことを特徴とする請求項7に記載のモータ駆動制御装置。
【請求項9】
前記制御入力計算部が、前記修正位置偏差に基づきフィードバック制御入力を算出するフィードバック補償器の出力と、前記位置指令に基づきフィードフォワード制御入力を算出するフィードフォワード補償器の出力との和を前記制御入力として出力する場合、
前記参照位置偏差算出部は、前記参照制御入力から内蔵するフィードフォワード補償器の出力を減算した値と前記位置検出値とに基づいて前記参照位置偏差を計算する
ことを特徴とする請求項1〜8のいずれか一つに記載のモータ駆動制御装置。
【請求項10】
前記参照制御入力は、前記制御入力に対する制限値または該制限値の倍数値であることを特徴とする請求項1〜9のいずれか一つに記載のモータ駆動制御装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2010−178509(P2010−178509A)
【公開日】平成22年8月12日(2010.8.12)
【国際特許分類】
【出願番号】特願2009−18617(P2009−18617)
【出願日】平成21年1月29日(2009.1.29)
【出願人】(000006013)三菱電機株式会社 (33,312)
【Fターム(参考)】