図面 (/)
概要
背景
ロボット、工作機械、射出成形機、及びプレス機械といった各種機械の駆動機構において、移動対象とする被駆動体が大型で、その移動軸を駆動するサーボモータが1つでは、加減速ができない場合や、モータの駆動軸に接続された伝達機構の機械要素と被駆動体との間のバックラッシが大きいために被駆動体を安定した状態で移動させることができない場合に、タンデム制御を利用することが従来から行われている。
かかるタンデム制御では、移動指令を複数のサーボモータに対して与え、1つの被駆動体を複数のサーボモータで駆動する。これにより、大型の被駆動体を駆動させることや、被駆動体を安定した状態で移動させることが可能となる。
このようなタンデム制御では、複数のサーボモータの内の何れか1つが、伝達機構に連結されたマスター軸としての役割を果たす駆動軸を有するメインのサーボモータ(以下、適宜「マスター側サーボモータ」と呼ぶ。)として機能し、その他のサーボモータが、伝達機構に連結されたスレーブ軸としての役割を果たす駆動軸を有するサブのサーボモータ(以下、適宜「スレーブ側サーボモータ)と呼ぶ。)として機能する。
この場合に、マスター側及びスレーブ側のそれぞれのサーボモータにおいて加減速を繰り返していると、各サーボモータにおける速度フィードバックの取り込みのタイミングの差等が原因で、各サーボモータの速度制御部の積分要素の積分値が互いに乖離することがある。このように各サーボモータの積分値が互いに乖離してしまうと、これに起因してサーボモータの制御性が悪化したり、過大なトルク指令がなされてサーボモータがオーバヒートしたりするおそれがある。
この問題を解決するための技術が、特許文献1に開示されている。特許文献1に開示の技術では、スレーブ側の速度積分器の積分値を、マスター側の速度積分器の積分値と一致させるように制御をする。具体的には、マスター側サーボモータに対する速度指令値とマスター側サーボモータの速度との差分である速度偏差の積分値を用いて、マスター側サーボモータに対するトルク指令値のみならずスレーブ側サーボモータに対するトルク指令値をも生成する。このようにすることにより、上述した各サーボモータ間での積分値の乖離という問題を解消することができる。
しかしながら、このようにマスター側及びスレーブ側の速度積分器それぞれの積分値を常に一致させると、スレーブ側サーボモータを主に駆動するとき、すなわち、マスター側サーボモータの加速度が負の値であるときのサーボモータに対する位置指令値とサーボモータの位置との間の位置偏差が大きくなり、サーボモータの制御に対して悪影響が及ぼされ、制御が不安定となる。
この点を鑑みて、更に改良された技術が特許文献2に開示されている。特許文献2に開示の技術では、スレーブ側サーボモータを主に駆動するときに生じる上記問題を解消するために、加速方向に応じて、マスター側及びスレーブ側の速度積分器の何れかを選択し、選択した速度積分器の積分値を、他方の速度積分器の積分値に一致させる。すなわち、加速方向に応じて、積分値のコピー元をマスター側とするかスレーブ側とするかを切り替える。
これにより、スレーブ側サーボモータを主に駆動するときには、マスター側サーボモータの速度積分器の積分値を、スレーブ側サーボモータの速度積分器の積分値と一致させることができ、特許文献1に記載の構成から生じる上記問題を解消することができる。
概要
被駆動体に対する制御性を保ちつつ、速度積分器の積分値を調整することが可能な、サーボモータ制御装置を提供すること。一つの被駆動体をマスター軸のモータ及びスレーブ軸のモータで駆動するための制御を行なうサーボ制御装置が、前記マスター軸の速度偏差の積分値と前記スレーブ軸の速度偏差の積分値との差分を算出する差分算出手段と、前記差分をローパスフィルタでフィルタ処理するフィルタ手段と、前記フィルタ処理の処理結果を、前記スレーブ軸の速度偏差の積分値に加算する加算手段と、を備え、前記マスター軸では該マスター軸の速度偏差の積分値を用いて該マスター軸のモータを駆動するための電流指令を算出し、前記スレーブ軸では前記加算手段による加算後の積分値を用いて該スレーブ軸のモータを駆動するための前記電流指令を算出する。
目的
本発明は、被駆動体に対する制御性を保ちつつ、速度積分器の積分値を調整することが可能な、サーボモータ制御装置を提供する
効果
実績
- 技術文献被引用数
- 0件
- 牽制数
- 0件
この技術が所属する分野
(分野番号表示ON)※整理標準化データをもとに当社作成
請求項1
一つの被駆動体をマスター軸のモータ及びスレーブ軸のモータで駆動するための制御を行なうサーボ制御装置において、前記マスター軸の速度偏差の積分値と前記スレーブ軸の速度偏差の積分値との差分を算出する差分算出手段と、前記差分をローパスフィルタでフィルタ処理するフィルタ手段と、前記フィルタ処理の処理結果を、前記スレーブ軸の速度偏差の積分値に加算する加算手段と、を備え、前記マスター軸では該マスター軸の速度偏差の積分値を用いて該マスター軸のモータを駆動するための電流指令を算出し、前記スレーブ軸では前記加算手段による加算後の積分値を用いて該スレーブ軸のモータを駆動するための前記電流指令を算出することを特徴とするサーボ制御装置。
請求項2
前記マスター軸のモータに対応するマスター軸制御手段であって、マスター軸及びスレーブ軸で共通の速度指令と、自制御手段に対応するマスター軸のモータの速度フィードバックとに基づいて、自制御手段に対応するマスター軸のモータの速度偏差を算出すると共に、該算出した速度偏差に比例ゲインを乗じた値と、該算出した速度偏差を積分した積分値に積分ゲインを乗じた値との和を、自制御手段に対応するマスター軸を駆動するための電流指令として算出するマスター軸制御手段と、前記スレーブ軸のモータに対応するスレーブ軸制御手段であって、前記マスター軸及びスレーブ軸で共通の速度指令と、自制御手段に対応するスレーブ軸のモータの速度フィードバックとに基づいて、自制御手段に対応するスレーブ軸のモータの速度偏差を算出すると共に、該算出した速度偏差に比例ゲインを乗じた値と、前記加算手段による加算後の積分値に積分ゲインを乗じた値との和を、自制御手段に対応するスレーブ軸を駆動するための電流指令として算出するスレーブ軸制御手段と、を更に備えることを特徴とする請求項1に記載のサーボ制御装置。
請求項3
前記スレーブ軸をN軸(Nは2以上の自然数)備えると共に、該N軸のスレーブ軸に対応して、前記差分算出手段、前記フィルタ手段、及び前記加算手段をそれぞれN個備え、前記N個の前記差分算出手段のそれぞれが、前記マスター軸の前記積分値と、自差分算出手段に対応するスレーブ軸の前記積分値との差分を算出し、前記N個のフィルタ手段のそれぞれが、自フィルタ手段に対応するスレーブ軸の前記差分をローパスフィルタでフィルタ処理し、前記N個の加算手段のそれぞれが、自加算手段に対応するスレーブ軸の前記フィルタ処理の処理結果を、自加算手段に対応するスレーブ軸の前記積分値に加算する、ことにより前記N軸のスレーブ軸それぞれにおいて、自スレーブ軸に対応する前記加算手段による加算後の積分値を用いて自スレーブ軸のモータを駆動するための電流指令の算出を行うことを特徴とする請求項1又は2に記載のサーボ制御装置。
請求項4
前記マスター軸及び前記スレーブ軸間の機械的結合剛性を推定する推定手段を更に備え、該推定手段の推定結果に基づいて、前記ローパスフィルタの遮断周波数を調整することを特徴とする請求項1乃至3の何れか1項に記載のサーボ制御装置。
請求項5
前記ローパスフィルタの遮断周波数を、マスター軸とスレーブ軸間の機械的結合剛性が高い場合に高くなるように調整し、マスター軸とスレーブ軸間の機械的結合剛性が低い場合に低くなるように調整することを特徴とする請求項4に記載のサーボ制御装置。
技術分野
背景技術
0002
ロボット、工作機械、射出成形機、及びプレス機械といった各種機械の駆動機構において、移動対象とする被駆動体が大型で、その移動軸を駆動するサーボモータが1つでは、加減速ができない場合や、モータの駆動軸に接続された伝達機構の機械要素と被駆動体との間のバックラッシが大きいために被駆動体を安定した状態で移動させることができない場合に、タンデム制御を利用することが従来から行われている。
かかるタンデム制御では、移動指令を複数のサーボモータに対して与え、1つの被駆動体を複数のサーボモータで駆動する。これにより、大型の被駆動体を駆動させることや、被駆動体を安定した状態で移動させることが可能となる。
0003
このようなタンデム制御では、複数のサーボモータの内の何れか1つが、伝達機構に連結されたマスター軸としての役割を果たす駆動軸を有するメインのサーボモータ(以下、適宜「マスター側サーボモータ」と呼ぶ。)として機能し、その他のサーボモータが、伝達機構に連結されたスレーブ軸としての役割を果たす駆動軸を有するサブのサーボモータ(以下、適宜「スレーブ側サーボモータ)と呼ぶ。)として機能する。
この場合に、マスター側及びスレーブ側のそれぞれのサーボモータにおいて加減速を繰り返していると、各サーボモータにおける速度フィードバックの取り込みのタイミングの差等が原因で、各サーボモータの速度制御部の積分要素の積分値が互いに乖離することがある。このように各サーボモータの積分値が互いに乖離してしまうと、これに起因してサーボモータの制御性が悪化したり、過大なトルク指令がなされてサーボモータがオーバヒートしたりするおそれがある。
0004
この問題を解決するための技術が、特許文献1に開示されている。特許文献1に開示の技術では、スレーブ側の速度積分器の積分値を、マスター側の速度積分器の積分値と一致させるように制御をする。具体的には、マスター側サーボモータに対する速度指令値とマスター側サーボモータの速度との差分である速度偏差の積分値を用いて、マスター側サーボモータに対するトルク指令値のみならずスレーブ側サーボモータに対するトルク指令値をも生成する。このようにすることにより、上述した各サーボモータ間での積分値の乖離という問題を解消することができる。
しかしながら、このようにマスター側及びスレーブ側の速度積分器それぞれの積分値を常に一致させると、スレーブ側サーボモータを主に駆動するとき、すなわち、マスター側サーボモータの加速度が負の値であるときのサーボモータに対する位置指令値とサーボモータの位置との間の位置偏差が大きくなり、サーボモータの制御に対して悪影響が及ぼされ、制御が不安定となる。
0005
この点を鑑みて、更に改良された技術が特許文献2に開示されている。特許文献2に開示の技術では、スレーブ側サーボモータを主に駆動するときに生じる上記問題を解消するために、加速方向に応じて、マスター側及びスレーブ側の速度積分器の何れかを選択し、選択した速度積分器の積分値を、他方の速度積分器の積分値に一致させる。すなわち、加速方向に応じて、積分値のコピー元をマスター側とするかスレーブ側とするかを切り替える。
これにより、スレーブ側サーボモータを主に駆動するときには、マスター側サーボモータの速度積分器の積分値を、スレーブ側サーボモータの速度積分器の積分値と一致させることができ、特許文献1に記載の構成から生じる上記問題を解消することができる。
先行技術
0006
特許第3537416号公報
特許第5642848号公報
特開2009−83074号公報
発明が解決しようとする課題
0007
上述したように、特許文献2に開示の技術等を利用するにより、加速方向に応じて、マスター側及びスレーブ側それぞれの速度積分器の積分値を常に一致させることが可能となる。
しかしながら、加減速の速い動きを行っているにも関わらず、積分値を常に一致させてしまうと、マスター側及びスレーブ側の両軸と被駆動体との機械的結合剛性が低い場合には、被駆動体が弾性変形することにより、被駆動体に「たわみ」や「ねじれ」といった問題が生じ、被駆動体を適切に制御することができなくなるため問題となる。
0008
そこで、本発明は、被駆動体に対する制御性を保ちつつ、速度積分器の積分値を調整することが可能な、サーボモータ制御装置を提供することを目的とする。
課題を解決するための手段
0009
本発明によれば、一つの被駆動体をマスター軸のモータ及びスレーブ軸のモータで駆動するための制御を行なうサーボ制御装置において、前記マスター軸の速度偏差の積分値と前記スレーブ軸の速度偏差の積分値との差分を算出する差分算出手段と、前記差分をローパスフィルタでフィルタ処理するフィルタ手段と、前記フィルタ処理の処理結果を、前記スレーブ軸の速度偏差の積分値に加算する加算手段と、を備え、前記マスター軸では該マスター軸の速度偏差の積分値を用いて該マスター軸のモータを駆動するための電流指令を算出し、前記スレーブ軸では前記加算手段による加算後の積分値を用いて該スレーブ軸のモータを駆動するための前記電流指令を算出することを特徴とするサーボ制御装置が提供される。
0010
更に好適には、前記マスター軸のモータに対応するマスター軸制御手段であって、マスター軸及びスレーブ軸で共通の速度指令と、自制御手段に対応するマスター軸のモータの速度フィードバックとに基づいて、自制御手段に対応するマスター軸のモータの速度偏差を算出すると共に、該算出した速度偏差に比例ゲインを乗じた値と、該算出した速度偏差を積分した積分値に積分ゲインを乗じた値との和を、自制御手段に対応するマスター軸を駆動するための電流指令として算出するマスター軸制御手段と、前記スレーブ軸のモータに対応するスレーブ軸制御手段であって、前記マスター軸及びスレーブ軸で共通の速度指令と、自制御手段に対応するスレーブ軸のモータの速度フィードバックとに基づいて、自制御手段に対応するスレーブ軸のモータの速度偏差を算出すると共に、該算出した速度偏差に比例ゲインを乗じた値と、前記加算手段による加算後の積分値に積分ゲインを乗じた値との和を、自制御手段に対応するスレーブ軸を駆動するための電流指令として算出するスレーブ軸制御手段と、を更に備えるサーボ制御装置とするとよい。
0011
更に好適には、前記スレーブ軸をN軸(Nは2以上の自然数)備えると共に、該N軸のスレーブ軸に対応して、前記差分算出手段、前記フィルタ手段、及び前記加算手段をそれぞれN個備え、前記N個の前記差分算出手段のそれぞれが、前記マスター軸の前記積分値と、自差分算出手段に対応するスレーブ軸の前記積分値との差分を算出し、前記N個のフィルタ手段のそれぞれが、自フィルタ手段に対応するスレーブ軸の前記差分をローパスフィルタでフィルタ処理し、前記N個の加算手段のそれぞれが、自加算手段に対応するスレーブ軸の前記フィルタ処理の処理結果を、自加算手段に対応するスレーブ軸の前記積分値に加算する、ことにより前記N軸のスレーブ軸それぞれにおいて、自スレーブ軸に対応する前記加算手段による加算後の積分値を用いて自スレーブ軸のモータを駆動するための電流指令の算出を行うサーボ制御装置とするとよい。
0012
更に好適には、前記マスター軸及び前記スレーブ軸間の機械的結合剛性を推定する推定手段を更に備え、該推定手段の推定結果に基づいて、前記ローパスフィルタの遮断周波数を調整するサーボ制御装置とするとよい。
0013
更に好適には、前記ローパスフィルタの遮断周波数を、マスター軸とスレーブ軸間の機械的結合剛性が高い場合に高くなるように調整し、マスター軸とスレーブ軸間の機械的結合剛性が低い場合に低くなるように調整するサーボ制御装置とするとよい。
発明の効果
0014
本発明によれば、被駆動体に対する制御性を保ちつつ、速度積分器の積分値を調整することが可能となる。
図面の簡単な説明
0015
本発明の第1の実施形態全体の構成を示すブロック図である。
本発明の第1の実施形態における速度制御部の構成を示すブロック図である。
本発明の各実施形態におけるマスター軸の動作を示すフローチャートである。
本発明の各実施形態におけるスレーブ軸の動作を示すフローチャートである。
本発明の第2の実施形態全体の構成を示すブロック図である。
本発明の第2の実施形態における速度制御部の構成を示すブロック図である。
本発明の第3の実施形態全体の構成を示すブロック図である。
本発明の第3の実施形態における速度制御部の構成を示すブロック図である。
実施例
0016
以下、本発明の実施形態について図面を参照して説明をする。以下では、本発明の実施形態の一例として3つの実施形態について説明を行う。
3つの実施形態の概略であるが、第1の実施形態は、1つのマスター軸と、1つのスレーブ軸とにより1つの被駆動体を駆動させる実施形態である。
また、第2の実施形態は、スレーブ軸の数を増加させ、1つのマスター軸と、複数のスレーブ軸とにより1つの被駆動体を駆動させる実施形態である。
更に、第3の実施形態は、マスター側及びスレーブ側の両軸と被駆動体との機械的結合剛性を推定し、推定結果に基づいてローパスフィルタを調整する機能を追加した実施形態である。
0017
<第1の実施形態>
まず、第1の実施形態について説明を行う。図1に示すように本実施形態は、上位制御装置1、位置制御部2、速度制御部100、第1電流制御部3−1、第1電流増幅器4−1、第1速度検出器5−1、第1サーボモータ6−1、第1伝達機構7−1、第2電流制御部3−2、第2電流増幅器4−2、第2速度検出器5−2、第2サーボモータ6−2、第2伝達機構7−2、被駆動体8及び位置検出器9を備える。
0018
本実施形態では、第1サーボモータ6−1及び第2サーボモータ6−2の2つのサーボモータによって1つの被駆動体8を駆動する駆動機構のタンデム制御を行う。また、これに伴い、速度制御部100において、本実施形態特有の処理を行うことにより、被駆動体に対する制御性を保ちつつ、スレーブ軸の速度積分器の積分値を修正する。なお、以下の説明では、第1サーボモータ6−1をマスター側サーボモータとして扱い、第2サーボモータ6−2をスレーブ側サーボモータとして扱う。
0019
上位制御装置1は、動作プログラム等に基づいて所定周期毎に各軸サーボモータに対して位置指令、あるいは位置指令の差分である移動指令MCMDを位置制御部2に対して出力する。
本実施形態では、第1サーボモータ6−1及び第2サーボモータ6−2に対してタンデム制御を行い、これら2つのサーボモータに対する位置指令、あるいは移動指令MCMDとしては同一の値の指令がなされる。
位置制御部2よりも後段の各部は、この位置指令、あるいは移動指令MCMDを読みとり、所定周期毎に、位置制御、速度制御、及び電流制御を行い、第1電流増幅器4−1や第2電流増幅器4−2を介して、第1サーボモータ6−1及び第2サーボモータ6−2を駆動する。なお、上位制御装置1は、例えば、数値制御装置(CNC:Computer Numerical Control)により実現することができる。また、以下の説明では、上位制御装置1から、位置指令が出力されるものとする。
0020
上位制御装置1と位置制御部2の間には減算器が配置され、この減算器により、上位制御装置1が出力した位置指令から、後述の位置検出器9が検出した位置フィードバック量(図中では、フィードバック量を単に「FB」と表記する。)が減算される。そして、減算器は、減算後の値を位置制御部2に対して出力する。ここで、かかる減算後の値は、位置偏差量となる。そして、位置制御部2は、この位置偏差量を処理して速度指令を生成し、生成した速度指令を速度制御部100に対して出力する。この際、出力された速度指令は分岐され、速度制御部100内のマスター軸側の速度制御部分と、スレーブ軸側の速度制御部分の、それぞれに入力される。
このように、本実施形態では、マスター軸側及びスレーブ軸側の双方について共通の速度指令を出力することとしているので、位置検出器9を1つのみ配置し、この1つの位置検出器9が検出した1つの位置フィードバック量により減算を行なう。ただし、これは、位置検出器9の数を1つだけとすることに限定する趣旨ではなく、任意の用途のために、位置検出器9を複数配置するようにしてもよい。
0021
速度制御部100は、位置制御部2から速度指令を受け取り、速度指令から、後述の第1速度検出器5−1で検出された第1速度フィードバック量を差し引いた速度偏差量に基づいて、比例演算や積分演算を行なうといった速度ループ処理によりマスター軸側の電流指令である第1電流指令を出力する。同様に、速度制御部100は、位置制御部2から速度指令を受け取り、速度指令から、後述の第2速度検出器5−2で検出された第2速度フィードバック量を差し引いた速度偏差量に基づいて、比例演算や積分演算を行なうといった速度ループ処理によりスレーブ軸側の電流指令である第2電流指令を出力する。なお、電流指令は、トルク指令と呼ばれることもある。
また、速度制御部100は、このような速度ループ処理に加えて、本実施形態特有の処理を行なうことにより、スレーブ軸側の積算値を調整する。この点は、本実施形態の要旨の1つであるので、図1を参照した本説明を終了した後に、図2の機能ブロック図と、図3及び図4のフローチャートとを参照して詳細に説明する。
0022
速度制御部100と、第1電流制御部3−1及び第2電流制御部3−2それぞれの間には減算器が配置され、この減算器により、第1電流指令や第2電流指令から、各サーボモータのモータ電流を検出するセンサ(図示を省略する。)からの電流フィードバック量が減算される。
具体的には、第1電流指令から、第1サーボモータ6−1のモータ電流である第1電流フィードバック量が減算される。そして、減算器は、減算後の値を第1電流御部3−1に対して出力する。
また、同様にして第2電流指令から、第2サーボモータ6−2のモータ電流である第2電流フィードバック量が減算される。そして、減算器は、減算後の値を第2電流制御部3−2に対して出力する。
ここで、これら減算後の値は、それぞれが電流偏差量となる。そして、第1電流制御部3−1は、受け取った電流偏差量を処理して第1電圧指令を生成し、生成した第1電圧指令を第1電流増幅器4−1に対して出力する。
また、同様にして、そして、第2電流制御部3−2は、受け取った電流偏差量を処理して第2電圧指令を生成し、生成した第2電圧指令を第2電流増幅器4−2に対して出力する。
0023
第1電流増幅器4−1は、受け取った第1電圧指令に基づいて、第1サーボモータ6−1を駆動する駆動電流を形成し、この駆動電流により第1サーボモータ6−1を駆動させる。また、同様にして、第2電流増幅器4−2は、受け取った第2電圧指令に基づいて、第2サーボモータ6−2を駆動する駆動電流を形成し、この駆動電流により第2サーボモータ6−2を駆動させる。
0024
ここで、第1サーボモータ6−1に接続された第1伝達機構7−1と、第2サーボモータ6−2に接続された第2伝達機構7−2とは被駆動体8と接続されており、被駆動体8は、これら2つのモータの出力トルクの合力によって駆動する。例えば、第1伝達機構7−1と、第2伝達機構7−2をポールねじにより実現し、このポールねじと被駆動体8に取り付けられているボールナットと螺合することにより、被駆動体8との接続を実現することができる。
また、第1サーボモータ6−1及び第2サーボモータ6−2のそれぞれは、例えば、ロータとステータのうちのいずれか一方に永久磁石が設けられた回転型サーボモータ、ステータとスライダのうちのいずれか一方に永久磁石が設けられたリニアサーボモータ、ステータとバイブレータのうちのいずれか一方に永久磁石が設けられた振動型サーボモータ、永久磁石を使用しない誘導モータ等によって実現することができる。
また、被駆動体8は、例えば、工作機械のテーブル、産業用ロボットのアーム等によって実現することができる。
0025
他方、第1サーボモータ6−1には、第1速度検出器5−1が取り付けられており、第1速度検出器5−1が検出した第1速度フィードバック量が、速度制御部100のマスター軸側の速度制御部分に対して出力される。更に、同様に、第2サーボモータ6−2には、第2速度検出器5−2が取り付けられており、第2速度検出器5−2が検出した第2速度フィードバック量が、速度制御部200のスレーブ軸側の速度制御部分に対して出力される。
0026
位置検出器9は、第1サーボモータ6−1側の被駆動体8の位置を検出できるように配置される。かかる位置検出器9は被駆動体8に取り付けられてもよい。ただし、剛性等の条件によっては被駆動体8には取り付けず、第1サーボモータ6−1の出力軸に設置されるようにしてもよい。
すなわち、位置検出器9は、被駆動体の移動を直接検出するように被駆動体に取り付けられる場合もあり、モータの出力軸等に取り付けられ、モータの回転位置を検出することによって被駆動体の位置を検出する場合もある。更に、この位置検出器9を、例えばリニアスケールで構成するようにしてもよく、ロータリエンコーダで構成するようにしてもよい。
0027
以上、図1を参照して説明した構成により、上位制御装置1からの位置指令、あるいは移動指令MCMDを読みとり、所定周期毎に、位置制御、速度制御、及び電流制御を行い、第1電流増幅器4−1や第2電流増幅器4−2を介して、第1サーボモータ6−1及び第2サーボモータ6−2を駆動することが可能となる。
0028
次に、速度制御部100の構成及び速度制御部100での処理について、図2の機能ブロック図と、図3及び図4のフローチャートとを参照して説明を行なう。
ここで、図2に示すように、速度制御部100は、マスター軸側の速度制御部分として、減算器11、積分器12、比例ゲインの増幅器13、積分ゲインの増幅器14及び加算器15を備える。また、速度制御部100は、スレーブ軸側の速度制御部分として、減算器21、積分器22、比例ゲインの増幅器23、積分ゲインの増幅器24及び加算器25を備える。更に、速度制御部100は、スレーブ軸側の積分値を調整するための構成として、減算器31、ローパスフィルタ32及び加算器33を備える。速度制御部100は、PI制御を行なうことにより、電流指令を生成する。
0029
次に、これら各構成要素の処理の内、マスター軸側の速度制御部分の動作について図3を参照して説明をする。
0030
まず、減算器11において速度指令値から第1速度フィードバック量を減算することによりマスター軸側の速度偏差を算出する。そして、減算器11は、算出したマスター軸側の速度偏差を積分器12及び比例ゲインの増幅器13に対して出力する(ステップS11)。
0031
次に、比例ゲインの増幅器13は、入力されたマスター軸側の速度偏差と、この速度偏差を増幅するための比例ゲインとの積を算出し、算出結果を加算器15に対して出力する(ステップS12)。比例ゲインの値は、予め比例ゲインの増幅器13に設定されているものとする。
0032
他方で、積分器12は、入力されたマスター軸側の速度偏差に基づいて積分を行なうことにより、マスター軸側の速度偏差の積分値を算出する。算出したマスター軸側の速度偏差の積分値は、積分ゲインの増幅器14及び減算器31に対して出力する(ステップS13)。
0033
次に、積分ゲインの増幅器14は、入力されたマスター軸側の速度偏差の積分値と、この積分値を増幅するための積分ゲインとの積を算出し、算出結果を加算器15に対して出力する(ステップS14)。積分ゲインの値は、予め積分ゲインの増幅器14に設定されているものとする。
なお、図示の都合上、ステップS12を行った後に、ステップS13及びステップS14が行なわれるように記載されているが、実際には、ステップS12と、ステップS13及びステップS14は、同じタイミングで並行して行なわれる。
0034
加算器15は、入力された、マスター軸側の速度偏差と比例ゲインの積と、マスター軸側の速度偏差の積分値と積分ゲインの積とを加算することにより、第1電流指令を生成する。そして、加算器15は、生成した第1電流指令を第1電流制御部3−1に対して出力する(ステップS15)。出力された第1電流指令は、上述したように第1電流制御部3−1との間にある減算器により、第1電流フィードバック量が減算された後に、第1電流制御部3−1に入力される。
0036
まず、減算器21において速度指令値から第2速度フィードバック量を減算することによりマスター軸側の速度偏差を算出する。そして、積分器22は、算出したマスター軸側の速度偏差を積分器22及び比例ゲインの増幅器23に対して出力する(ステップS21)。なお、位置制御部2の説明の際にも述べたが、減算器11に入力される速度指令と、減算器21に入力される速度指令は同じものである。
0037
次に、比例ゲインの増幅器23は、入力されたスレーブ軸側の速度偏差と、この速度偏差を増幅するための比例ゲインとの積を算出し、算出結果を加算器25に対して出力する(ステップS22)。比例ゲインの値は、予め比例ゲインの増幅器23に設定されているものとする。
0038
他方で、積分器22は、入力されたスレーブ軸側の速度偏差に基づいて積分を行なうことにより、スレーブ軸側の速度偏差の積分値を算出する。算出したスレーブ軸側の速度偏差の積分値は、積分ゲインの増幅器24及び減算器31に対して出力する(ステップS23)。
減算器31は、積分器12から入力されたマスター軸の積分値から、積分器22から入力されたスレーブ軸の積分値を減算することにより、積分値の差分を算出して、算出した積分値の差分をローパスフィルタ32に対して出力する(ステップS24)。
0039
ローパスフィルタ32は、入力された積分値の差分が、自身の時定数により定まる遮断周波数より低い周波数であれば通過させ、遮断周波数より高い周波数であれば減衰させるというフィルタ処理を行なう。そして、フィルタ処理の処理結果を加算器33に出力する(ステップS25)。
0040
ここで、ローパスフィルタ32の時定数により定まる遮断周波数は、スレーブ軸とマスター軸間の、第1伝達機構7−1、第2伝達機構7−2及び被駆動体8を介した機械的結合剛性(以下、適宜「機械的結合剛性」と呼ぶ。)に基づいて定めるようにするとよい。例えば、かかる機械的結合剛性が高い場合は遮断周波数も高くなるようにするとよく、これに比較してかかる機械的結合剛性が低い場合は遮断周波数も低くなるようにするとよい。これは、所望の遮断周波数となる時定数のローパスフィルタ32を利用することにより実現できる。また、このようにするのではなく、所望の遮断周波数となる時定数になるように、時定数を調整する調整器を備えたローパスフィルタ32を利用するようにしてもよい。
0041
次に、加算器33は、ローパスフィルタ32から入力されたフィルタ処理の処理結果と、積分器22から入力されたスレーブ軸側の速度偏差の積分値とを加算することにより、調整後の積分値を算出する。算出した調整後の積分値は積分ゲインの増幅器24に出力する(ステップS26)。
0042
そして、積分ゲインの増幅器24は、入力された調整後の積分値と、この積分値を増幅するための積分ゲインとの積を算出し、算出結果を加算器25に対して出力する(ステップS27)。積分ゲインの値は、予め積分ゲインの増幅器24に設定されているものとする。
なお、図示の都合上、ステップS22を行った後に、ステップS23からステップS26までが行なわれるように記載されているが、実際には、ステップS22と、ステップS23からステップS26までは、同じタイミングで並行して行なわれる。
0043
加算器25は、入力された、スレーブ軸側の速度偏差と比例ゲインの積と、調整後の積分値と積分ゲインの積とを加算することにより、第2電流指令を生成する。そして、加算器25は、生成した第2電流指令を第2電流制御部3−2に対して出力する(ステップS28)。出力された第2電流指令は、上述したように第2電流制御部3−2との間にある減算器により、第2電流フィードバック量が減算された後に、第2電流制御部3−2に入力される。
なお、図3及び図4に示した各ステップは、所定周期毎に繰り返し実行される。
0044
このような処理を行なうことにより、本実施形態では、スレーブ軸側の積分値をマスター軸側の積分値に一致させることが可能となる。
もっとも、本実施形態では、特許文献1や特許文献2に開示の技術のように、常にスレーブ軸側の積分値をマスター軸側の積分値に一致させる訳ではない。この点について以下に説明をする。
ローパスフィルタ32の説明で述べたように、ローパスフィルタ32に入力された積分値の差分が、遮断周波数より低い周波数であれば、この積分値の差分はローパスフィルタ32を通過する。よって、この積算値の差分は加算器33において、積分器22から入力されるスレーブ軸側の積分値に加算される。すなわち、スレーブ軸側の積分値が調整され、マスター軸側の積分値と一致する積分値となる。
一方で、ローパスフィルタ32に入力された積分値の差分が、遮断周波数より高い周波数であれば、この積分値の差分はローパスフィルタ32により減衰する。よって、この積算値の差分は加算器33において、積分器22から入力されるスレーブ軸側の積分値には加算されない。すなわち、スレーブ軸側の積分値は調整されず、マスター軸側の積分値と異なる積分値となる。
0045
ここで、第1サーボモータ6−1や第2サーボモータ6−2を駆動させることにより加減速等の速い動きで被駆動体8が駆動している場合のような、マスター軸側の積分値とスレーブ軸側の積分値の差分が大きくなるような場合に、スレーブ軸側の積分値を調整してマスター軸側の積分値と一致する積分値としてしまうと、特にスレーブ軸とマスター軸間の機械的結合剛性が低い場合に、被駆動体8に「ねじれ」等が発生して制御性が悪化する可能性がある。そのため、本実施形態では、ローパスフィルタ32を利用することにより、マスター軸側の積分値とスレーブ軸側の積分値の差分が大きいような場合には、積分器22が出力するスレーブ軸側の積分値を調整せず、積分器22が出力するスレーブ軸側の積分値に基づいて第2電流指令を生成する。これにより、機械的結合剛性が低い場合に、被駆動体8に「ねじれ」等が発生して制御性が悪化することが防止できる。
一方で、第1サーボモータ6−1や第2サーボモータ6−2をゆっくりと駆動させている場合や、第1サーボモータ6−1や第2サーボモータ6−2を停止させた場合のような、マスター軸側の積分値とスレーブ軸側の積分値の差分が小さくなるような場合に、スレーブ軸側の積分値を調整してマスター軸側の積分値と一致する積分値とする。これにより、スレーブ軸側の積分値を調整してマスター軸側の積分値の乖離を抑制し、積分値が乖離した場合に生じてしまうトルク指令の増大という問題を防止することができる。
また、上述したようにスレーブ軸とマスター軸間の機械的結合剛性に応じてローパスフィルタ32の遮断周波数を決定することにより、「ねじれ」が発生しない範囲において、スレーブ軸側の積分値を調整してマスター軸側の積分値と一致させることができる。
従って、本実施形態では、スレーブ軸側の積分値を調整してマスター軸側の積分値と一致することができると共に、常にスレーブ軸側の積分値を調整してマスター軸側の積分値と一致する積分値としてしまうと「ねじれ」等が発生してしまうという弊害を防止することが可能となる、という効果を奏する。
0046
<第2の実施形態>
次に、上述した第1の実施形態を変形した第2の実施形態について図面を参照して説明する。ここで、第1の実施形態では、1つのマスター軸と、1つのスレーブ軸とにより1つの被駆動体を駆動させていた。一方で、第2の実施形態では、スレーブ軸の数をN軸(Nは2以上の自然数である。)に増加させ、1つのマスター軸と、N軸のスレーブ軸により1つの被駆動体を駆動させる点で相違する。
なお、その他の基本的な構成や処理において第1の実施形態と、第2の実施形態は共通する。そこで、以下の説明では、第1の実施形態との相違点についてもっぱら説明を行い、相違点についての説明は、第1の実施形態と重複するため省略する。
0047
図5を参照すると、本実施形態は、マスター軸に対応する第1電流制御部3−1、第1電流増幅器4−1、第1速度検出器5−1、第1サーボモータ6−1、及び第1伝達機構7−1に加えて、N軸のスレーブ軸に対応する数だけこれらの構成要素を備える。図中には、第M電流制御部3−M(M=N+1である。)、第M電流増幅器4−M、第M速度検出器5−M、第Mサーボモータ6−M、及び第M伝達機構7−Mを図示する。
また、これに対応して速度制御部100が、速度制御部101に置き換わっている。また、速度制御部101には、第1速度フィードバック量に加えて、第2速度フィードバック量から第M速度フィードバック量までが入力される。
0048
次に、図6を参照して速度制御部101の構成について説明を行なう。図6に示すように、本実施形態の速度制御部101は、マスター軸側の速度制御部分に加えて、N軸分のスレーブ軸に対応したスレーブ軸側の速度制御部分を備える。図中には、スレーブ軸側の速度制御部分として、減算器M1、積分器M2、比例ゲインの増幅器M3、積分ゲインの増幅器M4及び加算器M5を図示する。また、これに対応して、速度制御部101は、スレーブ軸側の積分値を調整するための構成として、減算器31、ローパスフィルタ32及び加算器33をN個備える。つまり、N軸のスレーブ軸のそれぞれについて、減算器31、ローパスフィルタ32及び加算器33を備える。
0049
これにより、各スレーブ軸側の速度制御部分では、自スレーブ軸の速度偏差に比例ゲインを乗じることができる。また、自スレーブ軸の速度偏差とマスター軸の速度偏差との差分を、自スレーブ軸の速度偏差に加算した後に積分ゲインを乗じることができる。そして、これら乗じた後の値を合算して電流指令を算出することができる。
すなわち、N軸のスレーブ軸のそれぞれが、他のスレーブ軸ではなく、自スレーブ軸の速度偏差に基づいた電流指令を算出することができる。これにより、本実施形態では、各スレーブ軸それぞれで、各スレーブ軸それぞれに適した制御を行なうことが可能となる、という効果を奏する。
0050
<第3の実施形態>
次に、第3の実施形態について図面を参照して説明する。なお、以下では、第1の実施形態を変形して第3の実施形態とした場合について説明するが、上述した第2の実施形態のスレーブ軸をN軸とした構成を変形して第3の実施形態とするようにしてもよい。
ここで、本実施形態は、スレーブ軸とマスター軸間の、第1伝達機構7−1、第2伝達機構7−2及び被駆動体8を介した機械的結合剛性を推定し、この推定結果に基づいてローパスフィルタの時定数により定まる遮断周波数を調整する機能を追加した実施形態である。
なお、その他の基本的な構成や処理において本実施形態は、第1の実施形態や第2の実施形態と共通する。そこで、以下の説明では、第1の実施形態や第2の実施形態との相違点についてもっぱら説明を行い、相違点についての説明は、第1の実施形態や第2の実施形態の説明と重複するため省略する。
0051
図7を参照すると、本実施形態では、スレーブ軸とマスター軸間の機械的結合剛性を推定するために、位置検出器9がマスター軸側のみならずスレーブ軸側にも設けられる。具体的には、図中に示すように、マスター軸側の位置検出器9として第1位置検出器9−1が設けられ、マスター軸側の位置検出器9として第2位置検出器9−2が設けられる。なお、第1位置検出器9−1及び第2位置検出器9−2の機能は、位置検出器9と同様である。また、速度制御部100は、スレーブ軸とマスター軸間の機械的結合剛性の推定を行なう機能を追加した速度制御部102に置き換わっている。更に、第1位置検出器9−1及び第2位置検出器9−2がそれぞれ検出する2つの位置フィードバック量に対応するように、マスター軸側の位置制御部2として第1位置制御部2−1が設けられ、スレーブ軸側の位置制御部2として第2位置制御部2−2が設けられる。なお、第1位置制御部2−1及び第2位置制御部2−2の機能は、位置制御部2と同様である。
0052
そして、スレーブ軸とマスター軸間の機械的結合剛性を推定するために、第1位置検出器9−1によって検出された位置フィードバック量は、第1位置フィードバック量として、速度制御部102内のマスター軸側の速度制御部分に入力される。また、第2位置検出器9−2によって検出された位置フィードバック量は、第2位置フィードバック量として、速度制御部102内のマスター軸側の速度制御部分に入力される。
0053
また、上位制御装置1からは、第1位置制御部2−1及び第2位置制御部2−2に対して共通の位置指令が与えられるが、上位制御装置1と第1位置制御部2−1及び第2位置制御部2−2の間それぞれには減算器が配置され、この減算器により、上位制御装置1が出力した位置指令から、それぞれの位置フィードバック量が減算される。そして、各減算器は、減算後の値を第1位置制御部2−1と第2位置制御部2−2に対して出力する。
具体的には、マスター軸側の減算器は、位置指令から第1位置フィードバック量を減算した値を第1位置制御部2−1に対して出力する。また、スレーブ軸側の減算器は、位置指令から第2位置フィードバック量を減算した値を第2位置制御部2−2に対して出力する。ここで、かかる減算後の値は、それぞれ、マスター軸側の位置偏差量と、スレーブ軸側の位置偏差量となる。
そして、第1位置制御部2−1及び第2位置制御部2−2は、それぞれ自身が受け取った位置偏差量を処理して、それぞれの速度指令を生成し、生成した速度指令を速度制御部100に対して出力する。具体的には、第1位置制御部2−1が出力した速度指令は第1速度指令として、速度制御部102内のマスター軸側の速度制御部分に入力される。また、第2位置制御部2−2が出力した速度指令は第2速度指令として、速度制御部102内のスレーブ軸側の速度制御部分に入力される。
0054
なお、図7に示す構成にするのではなく、本実施形態においても、マスター軸側及びスレーブ軸側の速度指令を共通とするようにしてもよい。つまり、第1位置制御部2−1と第2位置制御部2−2を設けるのではなく、第1の実施形態や第2の実施形態と同様に、位置制御部2を1つ設ける。そして、位置制御部2に、上位制御装置1が出力した位置指令から第1位置フィードバック量又は第2フィードバック量の何れか一方を減算した値のみが入力されるようにして、マスター軸側及びスレーブ軸側の速度指令を共通とするようにしてもよい。
0055
次に、図8を参照して速度制御部102の構成について説明を行なう。図8に示すように、速度制御部102は、速度制御部100の構成に加えて、剛性推定調整部40と、電流指令切替器41を更に備える。
剛性推定調整部40は、スレーブ軸とマスター軸間の機械的結合剛性を推定し、推定した機械的結合剛性に基づいてローパスフィルタ32の時定数により定まる遮断周波数を調整する。
電流指令切替器41は、速度制御部102が第1電流制御部3−1に出力する第1電流指令を、加算器15が出力する位置制御用第1電流指令と、剛性推定調整部40が出力する剛性推定用第1電流指令の何れにするかを切り替えるためのスイッチである。また、電流指令切替器41は、同様に、速度制御部102が第2電流制御部3−2に出力する第2電流指令を、加算器25が出力する位置制御用第2電流指令と、剛性推定調整部40が出力する剛性推定用第4電流指令の何れにするかを切り替える。
0056
なお、位置制御用第1電流指令は、実施形態1や実施形態2における第1電流指令と同じものであるが、剛性推定調整部40が出力する剛性推定用第1電流指令と区別するために、便宜上「位置制御用」の文言を付す。位置制御用第2電流指令は、実施形態1や実施形態2における第2電流指令と同じものであるが、同様の理由で、便宜上「位置制御用」の文言を付す。
0057
次に、剛性推定調整部40によるスレーブ軸とマスター軸間の機械的結合剛性の推定方法について説明する。剛性推定調整部40は、スレーブ軸とマスター軸間の機械的結合剛性として、例えば、ねじれ剛性を推定する。この点、ねじれ剛性の推定方法は、例えば、特許文献3に記載されている方法で行うことができる。
0058
具体的には、剛性推定調整部40は、位置制御を遮断して剛性推定を行なうために、電流指令切替器41を切り替えて、位置制御用第1電流指令や位置制御用第2電流指令ではなく、剛性推定用第1電流指令と剛性推定用第2電流指令が出力されるようにする。ここで、剛性推定用第1電流指令と剛性推定用第2電流指令は、被駆動体8にねじれが生じるようにするための電流指令であり、例えば、特定周波数の正弦波状の測定トルクを、電流指令としたものである。
そして、剛性推定用第1電流指令と剛性推定用第2電流指令6−1により、第1サーボモータ及び第2サーボモータ6−2が駆動すると、これに応じて被駆動体8が駆動すると共に、被駆動体8にねじれが生じる。
この場合に、第1位置検出器9−1及び第2位置検出器9−2により検出された、第1位置フィードバック量及び第2位置フィードバック量が剛性推定調整部40に入力される。
0059
剛性推定調整部40は、第1位置フィードバック量と第2位置フィードバック量との差分値に基づいて算出した被駆動体8のねじれ角と、剛性推定用第1電流指令及び剛性推定用第2電流指令それぞれの値とに基づいて、被駆動体8のねじれ剛性値を推定する。そして、推定したねじれ剛性値基づいてローパスフィルタ32の時定数により定まる遮断周波数を調整する。ここで、調整の基準であるが、実施形態1の説明でも述べたように、例えば、かかる機械的結合剛性が高い場合は遮断周波数も高くなるようにするとよく、これに比較してかかる機械的結合剛性が低い場合は遮断周波数も低くなるようにするとよい。
0060
これにより、本実施形態では、推定した、ねじれ剛性等の機械的結合剛性に基づいて、遮断周波数を調整することができる。そのため、本実施形態では、遮断周波数の値が不適切であり、スレーブ軸の積分値をマスター軸の積分値に一致させるとねじれが生じてしまうことを防止することが可能となる、という効果を奏する。
0061
以上、本発明の実施形態について説明をした。上述した実施形態は、本発明の好適な実施形態ではあるが、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。
0062
また、以上説明した各実施形態は、ハードウェア、ソフトウェア又はこれらの組合せにより実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。ハードウェアで構成する場合、各実施形態の一部又は全部を、例えば、LSI(Large Scale Integrated circuit)、ASIC(Application Specific IntegratedCircuit)、ゲートアレイ、FPGA(Field Programmable Gate Array)等の集積回路(IC)で構成することができる。
0063
また、各実施形態の一部又は全部をソフトウェアとハードウェアの組み合わせで構成する場合、フローチャートで示されるサーボ制御装置の動作の全部又は一部を記述したプログラムを記憶した、ハードディスク、ROM等の記憶部、演算に必要なデータを記憶するDRAM、CPU、及び各部を接続するバスで構成されたコンピュータにおいて、演算に必要な情報をDRAMに記憶し、CPUで当該プログラムを動作させることで実現することができる。
プログラムは、様々なタイプのコンピュータ可読媒体(computer readable medium)を用いて格納され、コンピュータに供給することができる。コンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。コンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む
0064
1上位制御装置
2位置制御部
2−1 第1位置制御部
2−2 第2位置制御部
3−1 第1電流制御部
3−2 第2電流制御部
3−M 第M電流制御部
4−1 第1電流増幅器
4−2 第2電流増幅器
4−M 第M電流増幅器
5−1 第1速度検出器
5−2 第2速度検出器
5−M 第M速度検出器
6−1 第1サーボモータ
6−2 第2サーボモータ
6−M 第Mサーボモータ
7−1 第1伝達機構
7−2 第2伝達機構
7−M 第M伝達機構
8被駆動体
9位置検出器
11、21、31、M1減算器
12、22、M2積分器
13、23、M3比例ゲインの増幅器
14、24、M4積分ゲインの増幅器
15、25、M5、33加算器
32ローパスフィルタ
40剛性推定調整部
41電流指令切替器
100、101、102速度制御部