(57)【要約】【課題】制御入力の飽和による制御性能劣化や制御系の不安定化を確実に防止できるモータ駆動制御装置を得ること。【解決手段】参照位置偏差算出部４ａは制御入力計算部７の出力と入力との関係に基づいて、制御入力ｈが参照制御入力ｂに一致するための参照位置偏差ｄを算出する。位置補正量算出部５ａは参照位置偏差ｄの絶対値が位置偏差ｅの絶対値よりも小さい場合、位置補正量ｆを位置偏差ｅが前記参照位置偏差ｄと一致するように算出して出力し、参照位置偏差ｄの絶対値が位置偏差ｅの絶対値よりも大きい場合は、前記位置補正量ｆをゼロにして出力する。指令値整形部６ａは位置偏差ｅから位置補正量ｆを引き算して生成した修正位置偏差ｇを制御入力計算部７の入力信号とする。【選択図】図１
2010178509.tif 000002
【特許請求の範囲】
【請求項１】
位置指令に基づき駆動制御するモータへの制御入力に制限を設けたモータ駆動制御装置において、
少なくとも参照制御入力を入力とし、前記制御入力を算出する制御入力算出部の出力と入力との関係に基づいて、前記制御入力が前記参照制御入力に一致するための参照位置偏差を算出する参照位置偏差算出部と、
前記位置指令と前記モータの検出された位置検出値との差分である位置偏差の絶対値と前記参照位置偏差の絶対値とを比較し、前記参照位置偏差の絶対値が前記位置偏差の絶対値よりも小さい場合は、前記位置偏差を補正する位置補正量を該位置偏差が前記参照位置偏差と一致するように算出して出力し、前記参照位置偏差の絶対値が前記位置偏差の絶対値よりも大きい場合は、前記位置偏差を補正する位置補正量をゼロにして出力する位置補正量算出部と、
前記位置偏差から前記位置補正量を引き算して生成した修正位置偏差を前記制御入力算出部の入力信号とする指令値整形部と、
を備えたことを特徴とするモータ駆動制御装置。
【請求項２】
出力である更新後位置補正量の前回値に前記位置補正量を加算して更新後位置補正量を算出する位置補正量更新部をさらに備え、
前記位置補正量算出部は、前記位置偏差に代えて、前記位置偏差から前記更新後位置補正量を減じた補正後位置偏差とし、
前記指令値整形部は、前記修正位置偏差を前記位置偏差から前記更新後位置補正量を減じた値として出力する、
ことを特徴とする請求項１に記載のモータ駆動制御装置。
【請求項３】
位置指令に基づき駆動制御するモータへの制御入力に制限を設けたモータ駆動制御装置において、
少なくとも参照制御入力を入力とし、前記制御入力を算出する制御入力算出部の出力と入力との関係に基づいて、前記制御入力が前記参照制御入力に一致するための参照位置偏差を算出する参照位置偏差算出部と、
前記位置指令と前記モータの検出された位置検出値との差分である位置偏差と前記参照位置偏差とのうち、絶対値の小さい方を前記制御入力算出部の入力信号する修正位置偏差として選択する修正位置選択部と、
を備えたことを特徴とするモータ駆動制御装置。
【請求項４】
出力である更新後位置補正量の前回値に、前記位置偏差から前記更新後位置補正量を減じた補正後位置偏差と前記修正位置偏差との差分を加算して更新後位置補正量を算出する位置補正量更新部をさらに備え、
前記位置補正量選択部は、前記位置偏差に代えて、前記補正後位置偏差とする、
ことを特徴とする請求項３に記載のモータ駆動制御装置。
【請求項５】
前記更新後位置補正量から一回転分の位置補正量を加減算することで一回転未満の位置補正量を求め、該一回転未満の位置補正量を前記更新後位置補正量から減算して一回転内位置補正後位置補正量を出力する一回転内位置補正部をさらに備え、
前記位置補正量更新部は、前記更新後位置補正量の前回値に代えて、前記一回転内位置補正後位置補正量とし、
前記補正後位置偏差を前記位置偏差から前記一回転内位置補正後位置補正量を減算した値とする
ことを特徴とする請求項２または４に記載のモータ駆動制御装置。
【請求項６】
前記一回転内位置補正部は、
前記更新後位置補正量が前回値に一致する場合、かつ、一回転未満の位置補正量が０以外の場合、前記補正後位置偏差と前記参照位置偏差との差分を上限として、前記更新後位置補正量から前記一回転内位置補正後位置補正量を減算する
ことを特徴とする請求項５に記載のモータ駆動制御装置。
【請求項７】
前記指令値整形部は、
前記位置指令から前記位置補正量を差し引いた値を修正位置指令とし、前記修正位指令から前記位置検出値を差し引くことで前記修正位置偏差を出力する
ことを特徴とする請求項１または２に記載のモータ駆動制御装置。
【請求項８】
前記位置検出値に第一の補正時間を乗算した値と前記位置検出値とを加算して前記位置検出値を時間補正し、
前記修正位置指令に第二の補正時間を乗算した値と前記修正位置指令とを加算して前記修正位置指令を時間補正する
ことを特徴とする請求項７に記載のモータ駆動制御装置。
【請求項９】
前記制御入力計算部が、前記修正位置偏差に基づきフィードバック制御入力を算出するフィードバック補償器の出力と、前記位置指令に基づきフィードフォワード制御入力を算出するフィードフォワード補償器の出力との和を前記制御入力として出力する場合、
前記参照位置偏差算出部は、前記参照制御入力から内蔵するフィードフォワード補償器の出力を減算した値と前記位置検出値とに基づいて前記参照位置偏差を計算する
ことを特徴とする請求項１〜８のいずれか一つに記載のモータ駆動制御装置。
【請求項１０】
前記参照制御入力は、前記制御入力に対する制限値または該制限値の倍数値であることを特徴とする請求項１〜９のいずれか一つに記載のモータ駆動制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工作機械を駆動するのに使用されるサーボモータなどを駆動制御するモータ駆動制御装置に関する。
【背景技術】
【０００２】
一般に、サーボモータなどを駆動制御するモータ駆動制御装置では、モータの保護を目的として、入力可能な制御入力に制限を設けているので、制御入力制限を超えるような移動指令を与えると、制御入力の飽和が生じた際に出力応答にオーバーシュートを生じるワインドアップ現象により、制御性能劣化や制御系の不安定化を引き起こすことがある。そのため、従来では、この性能劣化の防止対策として、例えば、特許文献１に開示されているような制御入力制限に対する飽和対策を講じる必要があった。
【０００３】
すなわち、特許文献１では、モータへの制御入力に制限を有する制御対象に対して、速度指令に一定の制限を設けることで、積分出力が過大になることを防止し、制御入力の飽和を防止する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第３９９４２０８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記特許文献１に記載の技術では、位置指令に対して速度指令に制限を設けることで制御入力が過剰にならないようにする対策を実施しているので、モータ速度が制限速度未満となる状態での飽和対策を行うことができなかった。
【０００６】
また、制御入力制限と制限速度との関係が明確でないため、発生しうる制御入力の飽和を全て網羅できるように制限速度を設定しようとすると、小さな制限速度を設定する必要があり、移動時間が長くなる原因になっていた。
【０００７】
本発明は、上記に鑑みてなされたものであって、制御入力の飽和による制御性能劣化や制御系の不安定化を確実に防止できるモータ駆動制御装置を得ることを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明は、位置指令に基づき駆動制御するモータへの制御入力に制限を設けたモータ駆動制御装置において、少なくとも参照制御入力を入力とし、前記制御入力を算出する制御入力算出部の出力と入力との関係に基づいて、前記制御入力が前記参照制御入力に一致するための参照位置偏差を算出する参照位置偏差算出部と、前記位置指令と前記モータの検出された位置検出値との差分である位置偏差の絶対値と前記参照位置偏差の絶対値とを比較し、前記参照位置偏差の絶対値が前記位置偏差の絶対値よりも小さい場合は、前記位置偏差を補正する位置補正量を該位置偏差が前記参照位置偏差と一致するように算出して出力し、前記参照位置偏差の絶対値が前記位置偏差の絶対値よりも大きい場合は、前記位置偏差を補正する位置補正量をゼロにして出力する位置補正量算出部と、前記位置偏差から前記位置補正量を引き算して生成した修正位置補正量を前記制御入力算出部の入力信号とする指令値整形部とを備えたことを特徴とする。
【発明の効果】
【０００９】
本発明によれば、制御入力制限を考慮に入れたモータ駆動制御が実行可能となるので、制御入力の飽和による制御性能劣化や制御系の不安定化を確実に防止できるという効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】図１は、本発明の実施の形態１によるモータ駆動制御装置の構成を示すブロック図である。
【図２】図２は、本発明の実施の形態２によるモータ駆動制御装置の構成を示すブロック図である。
【図３】図３は、本発明の実施の形態３によるモータ駆動制御装置の構成を示すブロック図である。
【図４】図４は、本発明の実施の形態４によるモータ駆動制御装置の構成を示すブロック図である。
【図５】図５は、本発明の実施の形態５によるモータ駆動制御装置の構成を示すブロック図である。
【図６】図６は、本発明の実施の形態６によるモータ駆動制御装置の構成を示すブロック図である。
【図７】図７は、本発明の実施の形態７によるモータ駆動制御装置の構成を示すブロック図である。
【図８】図８は、本発明の実施の形態８によるモータ駆動制御装置の構成を示すブロック図である。
【図９】図９は、本発明の実施の形態９によるモータ駆動制御装置の構成を示すブロック図である。
【発明を実施するための形態】
【００１１】
以下に、本発明にかかるモータ駆動制御装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態により本発明が限定されるものではない。
【００１２】
実施の形態１．
図１は、本発明の実施の形態１によるモータ駆動制御装置の構成を示すブロック図である。図１において、本実施の形態１によるモータ駆動制御装置１ａは、位置指令生成装置２が出力する位置指令ａに基づき、サーボモータ（以降、単に「モータ」という）３を制御入力制限の範囲内で駆動制御する構成として、参照位置偏差算出部４と、位置補正量算出部５ａと、指令値整形部６ａと、制御入力計算部７と、制御入力制限部８とを備えている。モータ３には、駆動位置を検出する位置検出器９が取り付けられている。
【００１３】
以下、これらの各要素の構成と動作について説明する。まず、制御入力制限部８は、モータ３などのアクチュエータや機械系（例えば、減速器の許容力）の特性に応じて設定された制御入力制限値に基づき、制御入力計算部７からの制御入力ｈに制限をかけるためのフィルタであり、制御入力ｈが、所定の制御入力制限値を超える場合に、制御入力ｈを所定の制御入力制限値でクランプし、その所定の制御入力制限値でクランプした制限後制御入力ｉをモータ３への駆動信号として出力する。
【００１４】
なお、制御入力制限値としては、モータ特性に応じて予め設定しておいた固定制限値とする場合でもよく、制御対象のフィードバック情報から逐次計算した値を制限値とする場合でもよい。また、予め複数用意した制御入力制限値をモータの加減速状態に応じて、選択する場合でもよい。さらに、モータ３の加速度が正の場合には、正の値の制御入力制限を用い、加速度が負の場合には、負の値の制御入力制限を用いる場合でもよい。
【００１５】
制御入力計算部７は、指令値整形部６ａが出力する修正位置偏差ｇに基づき、モータ３への制御入力ｈを算出する。この制御入力計算部７は、従来、一般に用いられているフィードバック補償器（フィードバック制御器）で構成されている。具体的には、例えば、比例補償器（Ｐ補償器）や、比例積分補償器（ＰＩ補償器）で構成されている。
【００１６】
つまり、制御入力計算部７は、モータ３への制御入力ｈを、位置偏差（修正位置偏差ｇ）に対し、積分演算、微分演算、四則演算を施して計算する。したがって、制御入力ｈの計算方法は、特定されるものではなく、任意である。また、制御入力計算部７は、内部にマイナーループ（インナーループ）を有する制御系で構成されていてもよく、位置制御系の内側に速度制御系を入れ子にした制御系で構成されていてもよい。
【００１７】
さて、参照位置偏差算出部４には、図１では、位置指令生成装置２が出力する位置指令ａと、参照制御入力ｂと、位置検出器９が出力する位置検出値ｃとが入力されるとしてあるが、後述するように、参照制御入力ｂは基本的に必要であるのに対し、位置指令ａと位置検出値ｃとは、制御入力計算部７での計算方法（内部構造）によって、不要である場合と必要である場合とがある。
【００１８】
ここで、参照位置偏差算出部４に入力される参照制御入力ｂは、参照位置偏差ｄを計算するための設定値であり、制御入力制限部８で使用する制御入力制限値と同じ値、或いは制御入力制限値を定数倍した値である。なお、参照制御入力ｂとして用いる制御入力制限値は、予め複数用意した制御入力制限値をモータ３の加減速状態に応じて選択する場合の制御入力制限値でもよく、また、モータ３の回転方向に応じて使用する制御入力制限値の符号を切り替えて使用する場合の制御入力制限値でもよい。
【００１９】
参照位置偏差算出部４は、少なくとも所定の参照制御入力ｂに基づき、制御入力計算部７が算出した制御入力ｈに対する位置偏差（修正位置偏差ｇ）の関係式を用いて、制御入力ｈが所定の参照制御入力ｂに一致するための位置偏差量である参照位置偏差ｄの算出を行う。
【００２０】
つまり、制御入力計算部７が修正位置偏差ｇから制御入力ｈを計算するのに対し、参照位置偏差算出部４では、参照制御入力（制御入力計算部の出力信号）から参照位置偏差（制御入力計算部の入力信号）の計算を行うものである。したがって、参照位置偏差算出部４は、制御入力計算部７が積分特性やインナーループ（マイナーループ）を有する場合には、積分特性の影響やマイナーループの影響を考慮した上で、参照制御入力ｂから参照位置偏差ｄの計算を行うことになる。
【００２１】
以下に、参照位置偏差算出の一例を３つ示す。
（１）例えば、制御入力計算部７が比例補償器（Ｐ補償器）である場合は、参照位置偏差算出部４は、参照制御入力ｂのみを用いて参照位置偏差ｄの算出を行うことができる。この場合の制御入力計算部７の入出力関係は、制御入力Ｕ、比例ゲインＫＰ、位置偏差ＤＲＰを用いて次の式（１）となる。
Ｕ＝ＫＰ×ＤＲＰ    …（１）
【００２２】
このとき、制御入力Ｕが参照制御入力ＴＬＭＴに一致するための位置偏差である参照位置偏差ＤＲＰ’は、制御入力計算部７の入力である修正位置偏差ｇに等しいので、制御入力計算部７の出力である制御入力Ｕを比例ゲインＫＰで除算することで、算出することが可能であり、次の式（２）となる。
ＤＲＰ’＝ＴＬＭＴ／ＫＰ    …（２）
【００２３】
（２）また、制御入力計算部７が比例積分補償器（ＰＩ補償器）である場合は、参照位置偏差算出部４は、参照制御入力ｂと位置指令ａと位置検出値ｃとを用いて参照位置偏差ｄの算出を行う。この場合の制御入力計算部７の入出力関係は、制御入力Ｕ、比例ゲインＫＰ、位置偏差ＤＲＰ、積分ゲインＫＩ、位置偏差ＤＲＰの時間積分値（累積値）ＤＲＰ２を用いて次の式（３）となる。
Ｕ＝ＫＰ×ＤＲＰ＋ＫＩ×ＤＲＰ２    …（３）
【００２４】
このとき、制御入力Ｕが参照制御入力ＴＬＭＴに一致するための位置偏差ＤＲＰ’は、後述するように制御入力計算部７の入力である修正位置偏差ｇに等しいので、制御入力計算部７の出力である制御入力Ｕから、比例積分補償器における積分成分（位置偏差信号を積分し、積分ゲインを乗じた値）を差し引いて、計算することが可能であり、次の式（４）となる。
ＤＲＰ’＝（ＴＬＭＴ―ＫＰＩ×ＤＲＰ２）／ＫＰ    …（４）
ここで、ＤＲＰ２は、位置指令ａと位置検出値ｃとの差（位置偏差）を時間積分（累積）することで計算可能となる値である。
【００２５】
（３）また、制御入力計算部７が、位置制御系と速度制御系とを有し、それぞれの補償器（制御器）が位置比例補償器（位置Ｐ補償器）と速度比例積分補償器（速度ＰＩ補償器）とで構成される場合は、参照位置偏差算出部４は、参照制御入力ｂと位置指令ａと位置検出値ｃとを用いて参照位置偏差ｄの算出を行う。この場合の制御入力計算部７の入出力関係は、制御入力Ｕ、速度比例ゲインＫＶ、比例ゲインＫＰ、位置偏差ＤＲＰ、速度検出値ＶＦＢ、速度積分ゲインＫＩ、速度偏差ＶＤＲＰの時間積分値（累積値）ＶＤＲＰ２を用いて、次の式（５）となる。
Ｕ＝ＫＶ×（ＫＰ×ＤＲＰ―ＶＦＢ）＋ＫＩ×ＶＤＲＰ２    …（５）
【００２６】
このとき、制御入力Ｕが参照制御入力ＴＬＭＴに一致するための位置偏差ＤＲＰ’は、後述するように制御入力計算部７の入力である修正位置偏差ｇと等しいので、制御入力計算部７の出力である制御入力Ｕから、速度制御器の積分成分と速度検出値を考慮に入れ、次の式（６）で演算可能である。
ＤＲＰ’＝（（ＴＬＭＴ―ＫＩ×ＶＤＲＰ２）／ＫＶ＋ＶＦＢ）／ＫＰ  …（６）
【００２７】
ここで、速度偏差ＶＤＲＰは、次の式（７）の関係式で表わすことができる。また、速度偏差累積値ＶＤＲＰ２は、式（７）の時間積分により算出することが可能である。そして、速度検出値ＶＦＢは、位置検出値ｃの時間微分により算出することが可能である。
ＶＤＲＰ＝（ＫＰ×ＤＲＰ―ＶＦＢ）    …（７）
【００２８】
なお、参照位置偏差算出部４で必要となる情報（位置偏差累積値や速度検出値、速度偏差累積値など）は、参照位置偏差算出部４内部の演算で生成する方法でもよく、制御入力計算部７の内部信号を用いる方法でもよい。
【００２９】
次に、指令値整形部６ａは、２つの減算器１１ａ，１１ｂを備えている。減算器１１ａは、位置指令生成装置２が出力する位置指令ａから位置検出器９が検出した位置検出値ｃを引き算して位置偏差ｅを出力する。減算器１１ｂは、減算器１１ａが算出した位置偏差ｅから位置補正量算出部５ａが算出した位置補正量ｆを引き算して修正位置偏差ｇを出力する。このように、指令値整形部６ａは、位置指令ａと位置検出値ｃとに基づいて位置偏差ｅを算出し、その算出した位置偏差ｅに位置補正量ｆを加味した修正位置偏差ｇを出力する。
【００３０】
次に、位置補正量算出部５ａには、参照位置偏差算出部４から参照位置偏差ｄが入力され、指令値整形部６ａから位置偏差ｅが入力される。位置補正量算出部５ａは、位置偏差ｅを用いて制御入力ｈを計算し、併せて、参照位置偏差ｄと位置偏差ｅの各絶対値の大小比較を行う。位置補正量算出部５ａは、その比較の結果、参照位置偏差ｄの絶対値が位置偏差ｅの絶対値よりも小さい場合には、計算した制御入力ｈは制御入力制限を受けると判断し、参照位置偏差ｄの絶対値が位置偏差ｅの絶対値よりも大きい場合には、計算した制御入力ｈは制御入力制限を受けないと判断する。
【００３１】
そして、位置補正量算出部５ａは、その判断結果に応じて、位置偏差ｅを補正するための位置補正量ｆを次のように算出する。すなわち、位置補正量算出部５ａは、参照位置偏差ｄの絶対値が位置偏差ｅの絶対値よりも小さい場合には、位置偏差ｅが参照位置偏差ｄに一致するように位置補正量ｆを算出する。つまり、位置偏差ｅから参照位置偏差ｄを引き算した値を位置補正量ｆとする。これによって、計算した制御入力ｈが制御入力制限を受ける場合は、指令値整形部６ａの減算器１１ｂから、参照位置偏差ｄに一致させた修正位置偏差ｇを出力することで、事前に制御入力飽和を回避することができる。
【００３２】
一方、位置補正量算出部５ａは、参照位置偏差ｄの絶対値が位置偏差ｅの絶対値よりも大きい場合には、位置補正量ｆを値０にする。これによって、計算した制御入力ｈが制御入力制限を受けない場合は、指令値整形部６ａの減算器１１ｂから、通常通りに実際の位置偏差ｅに一致させた修正位置偏差ｇを出力することができる。
【００３３】
以上のように動作する参照位置偏差算出部４ａと位置補正量算出部５ａと指令値整形部６ａとの協働によって、制御入力ｈが制限を受けることを事前に予測できると、参照制御入力ｂと、既知の情報である制御入力計算部７の情報（制御入力ｈと位置偏差（修正位置偏差ｇ）との関係）と、位置指令ａと、位置検出値ｃとを用いて、制御入力ｈを参照制御入力ｂに一致させて、実位置偏差（位置ドループ、実位置ドループ）を修正することが行われる。特に、参照制御入力ｂと制御入力制限とを同一の値とする場合、制御入力ｈが制御入力制限値を越えないように位置偏差ｅを修正することが行われる。これによって、制御入力飽和を未然に防止することが可能となり、不安定化することなく、モータ３の駆動制御を行うことができる。
【００３４】
つまり、本実施の形態１によれば、モータへの制御入力に制限を設けたモータ駆動制御装置において、制御入力が制限を受けることを事前に予測して、制御入力の制限を考慮に入れたモータ駆動制御が実行可能となるので、ワインドアップ現象の発生を未然に防止することができ、制御入力飽和による性能劣化や不安定化を確実に防ぐことができる。
【００３５】
実施の形態２．
図２は、本発明の実施の形態２によるモータ駆動制御装置の構成を示すブロック図である。なお、図２では、図１（実施の形態１）に示した構成要素と同一ないしは同等である構成要素には同一の符号が付されている。ここでは、本実施の形態２に関わる部分を中心に説明する。
【００３６】
図２に示すように、本実施の形態２によるモータ駆動制御装置１ｂは、図１（実施の形態１）に示した構成において、符号を変えた位置補正量算出部５ｂおよび指令値整形部６ｂが設けられている。
【００３７】
指令値整形部６ｂは、２つの減算器１２ａ，１２ｂを備えているが、それぞれの減算内容は、指令値整形部６ａと異なっている。減算器１２ａは、位置指令生成装置２が出力する位置指令ａから位置補正量算出部５ｂが出力する位置補正量ｆを引き算して修正位置指令ｊを出力する。減算器１２ｂは、減算器１２ａが出力する修正位置指令ｊから位置検出器９が出力する位置検出値ｃを引き算して修正位置偏差ｇを出力する。このように、指令値整形部６ｂは、位置指令ａから位置補正量ｆを減算して位置指令の補正を行い、その補正した修正位置指令ｊから位置検出値ｃを減算して修正位置偏差ｇを出力する。
【００３８】
位置補正量算出部５ｂには、位置指令生成装置２が出力する位置指令ａと参照位置偏差算出部４が出力する参照位置偏差ｄと位置検出器９が出力する位置検出値ｃとが入力される。つまり、位置補正量算出部５ｂは、位置補正量算出部５ａとは異なり、位置偏差を内部で算出して、位置補正量ｆを算出する。
【００３９】
すなわち、位置補正量算出部５ｂは、位置指令ａと位置検出値ｃとの差分を取って位置偏差を求め、その算出した位置偏差を用いて制御入力ｈを計算し、併せて、その算出した位置偏差と参照位置偏差ｄとの各絶対値の大小比較を行う。比較の結果、参照位置偏差ｄの絶対値が算出した位置偏差の絶対値よりも小さい場合には、計算した制御入力ｈは制御入力制限を受けると判断し、参照位置偏差ｄの絶対値が算出した位置偏差の絶対値よりも大きい場合には、計算した制御入力ｈは制御入力制限を受けないと判断する。
【００４０】
そして、位置補正量算出部５ａは、参照位置偏差ｄの絶対値が算出した位置偏差の絶対値よりも小さい場合には、位置偏差から位置検出値ｃを引き算した値が参照位置偏差ｄに一致するように位置補正量ｆを算出する。これによって、計算した制御入力ｈが制御入力制限を受ける場合は、指令値整形部６ｂでは、位置指令ａから位置補正量ｆを差し引いた修正位置指令ｊから、位置検出値ｃを引き算するので、参照位置偏差ｄに一致した修正位置偏差ｇが出力される。
【００４１】
一方、位置補正量算出部５は、参照位置偏差ｄの絶対値が算出した位置偏差の絶対値よりも大きい場合には、位置補正量ｆを値０にする。これによって、計算した制御入力ｈが制御入力制限を受けない場合は、指令値整形部６ｂでは、減算器１２ａが修正位置指令ｊとして位置指令ａを出力するので、減算器１２ｂから、算出した実際の位置偏差が修正位置偏差ｇとして出力される。
【００４２】
したがって、本実施の形態２でも、実施の形態１と同様の動作が行われるので、同様にモータへの制御入力に制限を設けたモータ駆動制御装置において、制御入力が制限を受けることを事前に予測して、制御入力の制限を考慮に入れたモータ駆動制御が実行可能となるので、ワインドアップ現象の発生を未然に防止することができ、制御入力飽和による性能劣化や不安定化を確実に防ぐことができる。
【００４３】
加えて、本実施の形態２では、指令値整形部は、位置指令から修正位置指令を算出する部分と、修正位置指令と位置検出値との差分を計算してフィードバック処理する部分とに分離できる構成であるので、モータの制御入力を考慮に入れた指令値整形を数値制御装置（ＮＣ）やモーションコントローラなどの位置指令生成装置で行うことが可能となる。
【００４４】
実施の形態３．
図３は、本発明の実施の形態３によるモータ駆動制御装置の構成を示すブロック図である。なお、図３では、図１（実施の形態１）に示した構成要素と同一ないしは同等である構成要素には同一の符号が付されている。ここでは、本実施の形態３に関わる部分を中心に説明する。
【００４５】
図３に示すように、本実施の形態３によるモータ駆動制御装置１ｃは、図１（実施の形態１）に示した構成において、位置補正量算出部５ａおよび指令値整形部６ａに代えて修正位置選択部１５ａが設けられ、減算器１６が追加して設けられている。
【００４６】
減算器１６は、位置指令生成装置２が出力する位置指令ａから位置検出器９が検出した位置検出値ｃを引き算して位置偏差ｅを出力する。
【００４７】
修正位置選択部１５ａは、減算器１６が算出した位置偏差ｅと参照位置偏差算出部４ａが算出した参照位置偏差ｄとを入力とし、修正位置偏差ｇを出力する。修正位置偏差選択部１５ａは、位置偏差ｅを用いて制御入力ｈを計算し、計算した制御入力が制御入力制限を受けないと判断した場合は、位置偏差ｅを修正位置偏差ｇとして出力する。一方、修正位置選択部１５ａは、計算した制御入力が制御入力制限を受けると判断した場合は、参照位置偏差ｄと位置偏差ｅのうち、絶対値が小さい方に切り替えて出力することで、制御入力制限を回避する。
【００４８】
したがって、本実施の形態３でも、実施の形態１と同様の動作が行われるので、同様にモータへの制御入力に制限を設けたモータ駆動制御装置において、制御入力が制限を受けることを事前に予測して、制御入力の制限を考慮に入れたモータ駆動制御が実行可能となるので、ワインドアップ現象の発生を未然に防止することができ、制御入力飽和による性能劣化や不安定化を確実に防ぐことができる。
【００４９】
実施の形態４．
図４は、本発明の実施の形態４によるモータ駆動制御装置の構成を示すブロック図である。なお、図４では、図３（実施の形態３）に示した構成要素と同一ないしは同等である構成要素には同一の符号が付されている。ここでは、本実施の形態４に関わる部分を中心に説明する。
【００５０】
実施の形態１〜３では、制御入力計算部７の入出力関係を用いて、制御入力ｈが制御入力制限とならないような位置偏差（修正位置偏差ｇ）を算出し制御入力ｈの飽和防止を行う場合について説明したが、本実施の形態４と後述する実施の形態５では、制御入力計算部７が制御系に位置制御系を有し、モータ速度を速度指令に従うように動作させる場合について説明する。
【００５１】
本実施の形態４における位置指令生成装置２は、位置制御系に対して速度指令を出力する場合、指令速度Ｆと位置制御系の制御周期ＴＳとを用いて、単位制御周期当たりの位置指令増分値ＦＤＴを次の式（８）によって計算し、計算した位置指令増分値ＦＤＴの累積値を位置指令ａとして本実施の形態４によるモータ駆動制御装置１ｄへ出力する。
ＦＤＴ＝Ｆ×ＴＳ    …（８）
なお、位置指令ａは、単位時間当たりの位置指令増分値ＦＤＴに少なくとも１回以上、所定の時定数を用いた移動平均処理を施したものでもよい。
【００５２】
さて、図４に示すように、本実施の形態４によるモータ駆動制御装置１ｄは、図３（実施の形態３）に示した構成において、符号を変えた修正位置選択部１５ｂが設けられ、また、位置補正量更新部１７ａと減算器１８とが追加して設けられている。
【００５３】
減算器１８は、減算器１６にて算出された位置偏差ｅから位置補正量更新部１７ａにて算出された更新後位置補正量ｍを引き算して補正後位置偏差ｋを出力する。補正後位置偏差ｋは、修正位置選択部１５ｂと位置補正量更新部１７ａとに入力される。
【００５４】
修正位置選択部１５ｂは、参照位置偏差ｄと補正後位置偏差ｋを用いて、図３に示した修正位置選択部１５ａと同様の方法で、修正位置偏差ｇを算出する。
【００５５】
位置補正量更新部１７ａは、更新後位置補正量ｍの前回値に補正後位置偏差ｋと修正位置偏差ｇとの差分を加算して更新後位置補正量ｍを出力する。なお、更新後位置補正量ｍの算出方法としては、モータ３の加速度が正の場合には、補正後位置偏差ｋと修正位置偏差ｇとの差分が正の場合のみ累積する場合でもよく、モータ３の加速度が負の場合には、補正後位置偏差ｋと修正位置偏差ｇとの差分が負の場合のみ累積する場合でもよい。
【００５６】
ここで、位置偏差ｅから更新後位置補正量ｍを差し引いて補正後位置偏差ｋを求めるということは、モータ３の最大制御入力でも追従することができない移動分を逐次放棄（無視）していることを示している。これは、現時点で位置偏差が過大な状態であっても、過去に位置補正を行った位置補正量が累積された分だけ、現時点での位置偏差を小さく見積もっていること（つまり補正後の位置偏差を計算していること）と等価となる。これによって、現時点における位置指令増分と位置検出値の増分との関係で位置補正量を計算することが可能となる。
【００５７】
したがって、位置制御系を有する制御系に対して速度指令を行う場合、従来技術では、
加速中（または減速中）に位置の補正を受けると、速度検出値が指令速度に到達した時点でも位置偏差が過大状態のままになり、速度検出値がオーバーシュートしてしまい、ワインドアップ現象を招来するという問題があったが、本実施の形態４によれば、速度検出値が速度指令値に到達した時点で位置偏差が過大となることを防ぐことができ、オーバーシュートやワインドアップ現象の発生を防止することが可能となる。
【００５８】
実施の形態５．
図５は、本発明の実施の形態５によるモータ駆動制御装置の構成を示すブロック図である。なお、図５では、図１（実施の形態１）に示した構成要素と同一ないしは同等である構成要素には同一の符号が付されている。ここでは、本実施の形態５に関わる部分を中心に説明する。
【００５９】
本実施の形態５における位置指令生成装置２も、実施の形態４における位置指令生成装置２と同様に、位置制御系に対して速度指令を出力する場合、指令速度Ｆと位置制御系の制御周期ＴＳとを用いて、単位制御周期当たりの位置指令増分値ＦＤＴを前記式（８）によって計算し、計算した位置指令増分値ＦＤＴの累積値を位置指令ａとして本実施の形態５によるモータ駆動制御装置１ｅへ出力する。
【００６０】
さて、図５に示すように、本実施の形態５によるモータ駆動制御装置１ｅは、図１（実施の形態１）に示した構成において、符号を変えた位置補正量算出部５ｃが設けられ、また、位置補正量更新部１７ｂと減算器１８とが追加して設けられている。
【００６１】
減算器１８は、指令値整形部６ａの減算器１１にて算出された位置偏差ｅから位置補正量更新部１７ｂにて算出された更新後位置補正量ｍを引き算して補正後位置偏差ｋを出力する。補正後位置偏差ｋは、位置補正量算出部５ｃに入力される。
【００６２】
位置補正量算出部５ｃは、参照位置偏差ｄと補正後位置偏差ｋとを用いて、図１に示した位置補正量算出部５ａと同様の方法で、位置補正量ｆを算出する。
【００６３】
位置補正量更新部１７ｂは、位置補正量ｆを更新後位置補正量ｍの前回値に加算して更新後位置補正量ｍを算出する。
【００６４】
指令値整形部６ａでは、減算器１１ｂから、位置偏差ｅと更新後位置補正量ｍとの差分が修正位置偏差ｇとして出力される。
【００６５】
この構成によっても、実施の形態４と同様に、位置偏差ｅから更新後位置補正量ｍを差し引いて補正後位置偏差ｋを求めることで、モータ３の最大制御入力でも追従することができない移動分を逐次放棄（無視）している。したがって、現時点における位置指令増分と位置検出値の増分との関係で位置補正量を算出することができるので、位置制御系を有する制御系に対して速度指令を行う場合、速度検出値が速度指令値に到達した時点で位置偏差が過大となることを防ぐことができ、オーバーシュートやワインドアップ現象の発生を防止することが可能となる。
【００６６】
実施の形態６．
図６は、本発明の実施の形態６によるモータ駆動制御装置の構成を示すブロック図である。なお、図６では、図４（実施の形態４）に示した構成要素と同一ないしは同等である構成要素には同一の符号が付されている。ここでは、本実施の形態６に関わる部分を中心に説明する。
【００６７】
本実施の形態６では、図４（実施の形態４）にて説明した位置補正量の更新によって位置指令と位置検出値との間に生じたずれを解消する場合ついて説明する。
【００６８】
図６に示すように、本実施の形態６によるモータ駆動制御装置１ｆは、図４（実施の形態４）に示した構成において、符号を変えた位置補正量更新部１７ｃと減算器２０とが設けられ、一回転内位置補正部１９が追加して設けられている。
【００６９】
減算器２０は、減算器１６にて算出された位置偏差ｅから一回転内位置補正部１９にて算出された一回転内位置補正後位置補正量ｎを引き算して補正後位置偏差ｋを出力する。補正後位置偏差ｋは、修正位置選択部１５ｂと位置補正量更新部１７ｃとに入力される。
【００７０】
位置補正量更新部１７ｃは、補正後位置偏差ｋから修正位置偏差ｇを減算した値に、一回転内位置補正部１９が出力する一回転内位置補正後位置補正量ｎの前回値を加算して更新後位置補正量ｍを算出する。更新後位置補正量ｍは、一回転内位置補正部１９に入力される。
【００７１】
一回転内位置補正部１９は、更新後位置補正量ｍについて次の（１）〜（３）の処理を行って一回転内位置補正後位置補正量ｎを算出する。
（１）一回転内位置補正部１９は、更新後位置補正量ｍの一回転内（一回転未満）の位置補正量を、正規化する、多回転分の更新後位置補正量を放棄（無視）する、多回転分の位置補正量を加減算する、などによって算出する。
（２）次に、一回転内位置補正部１９は、更新後位置補正量ｍが前回値に一致する場合で、かつ、正規化した位置補正量が０以外の場合は、補正後位置偏差ｋと参照位置偏差ｄとの差分を上限として、正規化した位置補正量を一回転内位置補正後位置補正量ｎとして出力する。なお、一回転内位置補正後位置補正量ｎは、各軸共通の所定時定数により移動平均処理を施した値となるように算出する場合でもよい。
（３）また、一回転内位置補正部１９は、更新後位置補正量ｍから（１）にて算出した一回転内位置補正量を減算し、それを一回転内位置補正後位置補正量ｎとして出力する。
【００７２】
これによって、モータ３の位置検出値ｃと位置指令ａの各一回転位置が一致するように補正できるので、図４（実施の形態４）にて説明した位置補正量の更新によって位置指令と位置検出値との間にずれが生じないようにすることができる。
【００７３】
このように、本実施の形態６によれば、制御入力が制限範囲を超過することなく、位置指令と位置検出値の各一回転内位置を一致させることができるので、位置ずれすることなく位置決めすることが可能となる。一例として、工具交換の際に必要とされる割り出し動作（オリエント動作）を行うことが可能となる。
【００７４】
実施の形態７．
図７は、本発明の実施の形態７によるモータ駆動制御装置の構成を示すブロック図である。なお、図７では、図５（実施の形態５）に示した構成要素と同一ないしは同等である構成要素には同一の符号が付されている。ここでは、本実施の形態７に関わる部分を中心に説明する。
【００７５】
本実施の形態７では、図５（実施の形態５）にて示した位置補正量の更新によって位置指令と位置検出値との間に生じたずれを解消する場合ついて説明する。
【００７６】
図７に示すように、本実施の形態７によるモータ駆動制御装置１ｇは、図５（実施の形態５）に示した構成において、符号を変えた位置補正量更新部１７ｄと減算器２０とが設けられ、一回転内位置補正部１９が追加して設けられている。
【００７７】
減算器２０は、指令値整形部６ａの減算器１１ａにて算出された位置偏差ｅから一回転内位置補正部１９にて算出された一回転内位置補正後位置補正量ｎを引き算して補正後位置偏差ｋを出力する。補正後位置偏差ｋは、位置補正量算出部５ｃと位置補正量更新部１７ｄとに入力される。
【００７８】
位置補正量更新部１７ｄは、位置補正量ｆを一回転内位置補正部１９が出力する一回転内位置補正後位置補正量ｎの前回値に加算して更新後位置補正量ｍを算出する。更新後位置補正量ｍは、一回転内位置補正部１９に入力される。
【００７９】
一回転内位置補正部１９は、更新後位置補正量ｍについて図６（実施の形態６）に示した（１）〜（３）の処理を行って一回転内位置補正後位置補正量ｎを算出する。
【００８０】
これによって、モータ３の位置検出値ｃと位置指令ａの各一回転位置が一致するように補正できるので、図５（実施の形態５）にて説明した位置補正量の更新によって位置指令と位置検出値との間にずれが生じないようにすることができる。
【００８１】
このように、本実施の形態７によれば、実施の形態６と同様に、制御入力が制限範囲を超過することなく、位置指令と位置検出値の各一回転内位置を一致させることができるので、位置ずれすることなく位置決めすることが可能となる。同様に、工具交換の際に必要とされる割り出し動作（オリエント動作）を行うことが可能となる。
【００８２】
実施の形態８．
本実施の形態８では、実施の形態１〜７において、通信遅れなどの無駄時間が存在する場合や制御周期が異なる場合の補正方法について説明する。ここでは、説明の便宜から、図２（実施の形態２）に示したモータ駆動制御装置１ｂを用いて通信遅れなどの無駄時間が存在する場合の補正方法について説明する。
【００８３】
すなわち、前記したように、モータ駆動制御装置１ｂでの指令値整形部６ｂは、位置指令から修正位置指令を算出する部分と、修正位置指令と位置検出値とを計算してフィードバック処理する部分とに分離できる構成である。
【００８４】
そこで、モータ駆動制御装置１ｂの処理の一部（指令値整形処理、位置補正量の減算処理）を数値制御装置（NC）やモーションコントローラなどの位置指令生成装置で行い、残りの処理（フィードバック処理）をアンプなどのモータ駆動制御装置で行う場合に、位置指令生成装置２とモータ駆動制御装置１ｂとの間に通信遅れが存在する場合の補正方法について説明する。
【００８５】
図８は、本発明の実施の形態８によるモータ駆動制御装置の構成を示すブロック図である。なお、図８では、図２（実施の形態２）に示した構成要素と同一ないしは同等である構成要素には同一の符号が付されている。ここでは、本実施の形態８に関わる部分を中心に説明する。
【００８６】
図８に示す本実施の形態８によるモータ駆動制御装置１ｈでは、図２（実施の形態２）に示した構成において、位置検出器２と位置補正量算出部５ｂ及び参照位置偏差算出部４ａとの間に無駄時間が存在するとして無駄時間補正部２１が設けられ、減算器１１ａが算出する修正位置指令ｊに無駄時間が存在するとして減算器１１ｂとの間に無駄時間補正部２２が設けられている。
【００８７】
無駄時間補正部２１，２２は、それぞれ通信経路上に配置されるもので、同様の動作を行う。すなわち、無駄時間補正部２１は、次の式（９）に示すように、位置検出値ＰＦＢに、モータ３の速度ＶＦＢ（位置検出値ＰＦＢの微分値）と補正時間ＴＣとの乗算値を加算し、無駄時間補正後位置検出値ＰＦＢ’（図８に示す無駄時間補正後位置検出値ｐ）を出力する。
ＰＦＢ’＝ＰＦＢ＋ＶＦＢ×ＴＣ    …（９）
【００８８】
なお、位置検出値ＰＦＢが無駄時間ＴＤを含む信号の場合、補正時間ＴＣを無駄時間ＴＤとして式（９）を計算することで無駄時間に対する補正を行うことができる。また、位置検出値ＰＦＢが離散値の場合、モータ３の速度ＶＦＢは、位置検出値ＰＦＢの差分値であるので、次の式（１０）で計算することができる。
ＶＦＢ（ｔ）＝ＰＦＢ（ｔ）―ＰＦＢ（ｔ−１）    …（１０）
なお、式（１０）において、ｔは制御系の補間周期を定数倍した時刻とする。
【００８９】
無駄時間補正部２２も、修正位置指令ｊに対して、上記の無駄時間補正を行うことで、修正位置指令ｊを補正した無駄時間補正後修正位置指令ｒを出力することができる。
【００９０】
このように、本実施の形態８によれば、位置検出値が無駄時間分遅れた状態で、位置補正量算出部５ｂが位置偏差を算出し、参照位置偏差算出部４ａが参照位置偏差ｄを算出する場合でも、無駄時間の影響を小さくすることが可能となり、制御入力制限に対し正確な指令値整形が可能となる。
【００９１】
また、補正時間ＴＣを推定時間ＴＥとすることで、修正位置指令を予測することが可能となる。なお、本実施の形態８にて説明した無駄時間補正方法は、無駄時間の存在箇所を限定するものではなく、モータ駆動制御装置内外に無駄時間を含む場合についても適用可能とするものである。
【００９２】
実施の形態９．
実施の形態１〜８では、制御入力計算部７をフィードバック補償器として、制御入力が制御入力制限以下となるように、位置偏差を修正する方法について説明した。本実施の形態９では、フィードバック制御の範疇に限定しない位置補正方法について説明する。
【００９３】
図９は、本発明の実施の形態９によるモータ駆動制御装置の構成を示すブロック図である。なお、図９では、図１（実施の形態１）に示した構成要素と同一ないしは同等である構成要素には同一の符号が付されている。ここでは、本実施の形態９に関わる部分を中心に説明する。
【００９４】
図９に示す本実施の形態９によるモータ駆動制御装置１ｉでは、図１（実施の形態１）に示した構成において、符号を変えた参照位置偏差算出部４ｂと、同じく符号を変えた制御入力計算部７ｂとが設けられている。
【００９５】
参照位置偏差算出部４ｂは、フィードフォワード補償器２７を内蔵し、予めフィードフォワード補償器２７に位置指令ａに基づきフィードフォワード制御入力を算出させて用意しておく。そして、算出したフィードフォワード制御入力を参照制御入力ｂから差し引いた値と位置検出値ｃとを用いて参照位置偏差ｄを計算する。
【００９６】
制御入力計算部７ｂは、フィードバック補償器２３と、フィードフォワード補償器２４と、加算器２５とを備えている。フィードバック補償器２３は、修正位置偏差ｇに基づきフィードバック制御入力を算出し、フィードフォワード補償器２４は、位置指令ａに基づきフィードフォワード制御入力を算出する。そして、加算器２５にて、フィードバック制御入力とフィードフォワード制御入力とを加算し、その加算結果を、モータ３への制御入力として出力する。なお、参照位置偏差算出部４ｂが内蔵するフィードフォワード補償器２７は、フィードフォワード補償器２４と同一の構成である。
【００９７】
以上は、２自由度制御を用いた説明であるが、フィードフォワード補償器２４にて算出された制御入力（フィードフォワード制御入力）を、フィードバック補償器２３にて算出された制御入力（フィードバック制御入力）に対する補正値（制御入力補正値）とみなすことができる。
【００９８】
ここで、制御入力補正値は、２自由度制御のフィードフォワード制御入力に限定するものではなく、機械の特性に応じて制御入力補正量を算出する各種補正機能（駆動系摺動面で発生する摩擦の影響をなくすための補正、重力の影響に対する補正など）で算出される補正量などでもよい。また、制御入力補正量は、２種類以上の複数の補正機能や制御方法を組み合わせる場合でもよい。
【００９９】
このように、本実施の形態９によれば、制御入力計算部では、フィードバック補償器から算出された制御入力（フィードバック制御入力）に制御入力補正値（フィードフォワード制御入力）を加算して、モータへ出力するので、フィードバック制御の範疇に限定しない位置補正を行うことができる。
【産業上の利用可能性】
【０１００】
以上のように、本発明にかかるモータ駆動制御装置は、制御入力の飽和による制御性能劣化や制御系の不安定化を確実に防止できるモータ駆動制御装置として有用である。
【符号の説明】
【０１０１】
１ａ，１ｂ，１ｃ，１ｄ，１ｅ，１ｆ，１ｇ，１ｈ，１ｉ  モータ駆動制御装置
２  位置指令生成装置
３  モータ（サーボモータ）
４ａ，４ｂ  参照位置偏差算出部
５ａ，５ｂ，５ｃ  位置補正量算出部
６ａ，６ｂ  指令値整形部
７  制御入力計算部
８  制御入力制限部
９  位置検出器
１５ａ，１５ｂ  修正位置偏差選択部
１６，１８，２０  減算器
１７ａ，１７ｂ  位置補正量更新部
１９  一回転内位置補正部
２１，２２  無駄時間補正部
２３  フィードバック補償器
２４，２７  フィードフォワード補償器
２５  加算器
【図１】
2010178509.tif 000003
【図２】
2010178509.tif 000004
【図３】
2010178509.tif 000005
【図４】
2010178509.tif 000006
【図５】
2010178509.tif 000007
【図６】
2010178509.tif 000008
【図７】
2010178509.tif 000009
【図８】
2010178509.tif 000010
【図９】
2010178509.tif 000011