【実施例】
【0013】
図1〜
図9に実施例とその変形とを示す。
図1は、実施例の同期制御装置の構成を示し、M1,M2は制御対象のサーボ制御形のモータで、2は目標位置発生装置で、例えば時間の関数として2つの目標位置xr,yrを発生する。なおx,y,z等の記号は直交座標系等での座標を表すのではなく、モータM1側の位置をx、モータM2側の位置をyとして表している。また添字rは目標値であることを表している。ここでは目標位置xr,yrに従ってモータM1,M2が動作するように制御するが、目標位置ではなく目標速度又は目標トルクに従ってモータM1,M2が動作するように制御しても良い。加減算器20で目標位置xrと実際の位置xとの誤差exを求め、PID制御器4に入力して操作量としての出力uxを得る。同様に、加減算器21で目標位置yrと実際の位置yとの誤差eyを求め、PID制御器5に入力して操作量としての出力uyを得る。PID制御器4,5は
良く知られたものである。また制御対象はモータに限らず、空気圧機器、油圧機器、内燃エンジン等でも良い。
【0014】
誤差ex、eyの偏差α(α=ex−ey)を加減算器30で求め、同期制御器10に入力して出力βを求め、加減算器40で出力uxと出力βを加算した操作量vxによりモータM1を制御する。同様に加減算器41で出力uxから出力βを減算した操作量vyによりモータM2を制御する。なお45はモータM1を制御する電流増幅器、46はモータM2を制御する電流増幅器である。また位置x,yはモータM1,M2のエンコーダ等により求めても、レーザ距離計等の位置センサ又はリニアスケールにより求めても良い。
【0015】
図2に同期制御器10の構造を示し、積分器32は偏差αを積分し、微分器33は偏差αを微分する。増幅器34で偏差αの積分値に比例する操作量を発生させ、増幅器35で偏差αに比例する操作量を発生させ、増幅器36で偏差αの微分値に比例する操作量を発生させる。加減算器37でこれらの出力を加算し、同期制御器10の出力βとする。また反転増幅器38でβの符号を逆転し、−βを出力する。なお実施例ではアナログ回路等で制御器10を実現するように説明しているが、これは説明を簡単にするためで、マイクロコンピュータ、DSP(デジタルシグナルプロセッサ)等により、制御器10と加減算器20,21等を実現しても良い。
ただし実施例では、積分器32と増幅器34は設けない。
【0016】
図2とはやや異なるが、偏差αに比例する出力と偏差αの微分値に比例する出力とを加算する。
偏差αに比例する出力と、微分値に比例する出力と、積分値に比例する出力とを加算しても良いが、このようなものは特許請求の範囲には含まれない。また
図1および
図2で、PID制御器4、5の制御ゲインを大きくして同期制御器10のゲイン(すなわち増幅器34〜36のゲイン)を小さくすると、モータM1,M2の同期よりも、モータM1,M2が各々の目標位置xr,yrに忠実に動作することを重視する制御となる。逆に、PID制御器4、5の制御ゲインを小さくして同期制御器10のゲイン(すなわち増幅器34〜36のゲイン)を大きくすると同期を重視する制御となる。さらに増幅器34のゲインを大きくすると、モータM1,M2の出力間のオフセットを小さくでき、増幅器35のゲインを大きくすると、偏差αを解消するための比例制御が強くなる。また増幅器36のゲインを大きくすると、偏差αの変化率に基づく同期制御が強くなる。
【0017】
図3は実施例での制御を行列により表し、sはラプラス変換でのパラメータである。各行列での非対角項は、モータM1,M2の同期制御、即ち誤差ex,ey間の偏差αを小さくするための制御ゲインを表す。対角項は、モータM1,M2間の同期ではなく、誤差ex,ey自体を小さくするための制御ゲインを表す。またモータM1,M2が同じで、モータM1とモータM2とが対象物に対し対称に配置されている場合、各行列は対称行列として、Kpxy=Kpyx,
Kdxy=Kdyx とし、さらに Kixy=Kiyx=0 とすることが好ましい。Kixy=Kiyx=0とするのは、同じモータM1,M2が対象物に対し対称に配置されているので、両者間に何らかの定常的な外力が働かない限り、定常的な偏差(オフセット)は元々小さいからである。
【0018】
例えば、対象物の左右両側にそれぞれ第1、第2の部材が設けられ、モータM1が第1の部材を、モータM2が第2の部材を駆動し、対象物が所定の軌跡に沿って移動することが重要な場合がある。この場合、軌跡からの偏差に前記の偏差αが対応する。このような場合への
参考例を
図4に示す。なおこの場合、モータM1,M2は一般に同じモータではない。またモータM1,M2が対象物から受ける抗力、対象物の慣性等も共通ではないので、別個の同期制御器10,10'を設ける。さらに誤差ex,eyの大きさを適当に正規化するため、例えば増幅器24で誤差eyを増幅する。
図4の
参考例を
図3行列により考えると、各行列は非対称行列で、各行列の4個の成分は全て異なる。他の点では、
図4の
参考例は
図1,
図2の実施例と同等である。
ただし図4の参考例は特許請求の範囲には含まれない。
【0019】
図5は3個のモータM1,M2,M3を同期制御する変形例を示し、4個以上のモータを制御する場合も同様である。モータM1,M2は
図1と同様に制御し、モータM3に対し、加減算器22で目標位置zrと実際の位置zとの偏差を求め、PID制御器6等の制御器により誤差ezを解消するように出力uzを発生させる。αxy=ex−ey,αyz=ey−ez,αzx=ez−exの3種類の偏差を解消するための出力βxy,βyz,βzxを同期制御器10,11,12で発生させる。出力βxy,βyz,βzxを加減算器40',41',42'で出力ux.uy,uzと加減算した操作量vx,vy,vzにより、電流増幅器45〜47を介してモータM1,M2,M3を制御する。なお同期制御器11,12の構造は同期制御器10と同様である。またモータM1,M2,M3が同じではない場合等は、
図4で2個の同期制御器10,10'を設けているように、各同期制御器10,11,12に代えて各々2個の同期制御器を設け、かつ誤差ex,ey,ezの大きさを適当に正規化して偏差を求めると良い。
【0020】
図6に、
図1,
図2の実施例での同期制御方法を示す。ステップ1で、目標位置発生器から目標位置xr,yr等を出力する(ステップ1)。目標位置xr,yrは、動作の開始時から終了時までのデータを予め作成し、1制御周期毎にxr,yrを各1データずつ出力しても良い。あるいは各制御周期毎に、その都度、目標位置xr,yrを発生させても良い。また目標位置の代わりに目標速度又は目標トルクを出力しても良い。
【0021】
ステップ2で、目標位置xr,yrと実際の位置x,yとの誤差ex,eyに基づき、PID制御等により、操作量ux,uyを発生させる。そしてステップ3で、偏差α(α=ex-ey)に基づき、PD制御あるいは比例制御等により操作量βを発生させる。ux+βによりモータM1を、uy−βによりモータM2を制御する(ステップ4)。以上のステップを動作が終了するまで繰り返す(ステップ5)。
【0022】
図8に、
図1の実施例による制御結果を示し、同じモータM1,M2により別々ではあるが同等の負荷を駆動した。
図7の位置指令に従ってモータM1.M2を動作させ、モータM2にのみ外乱を加えた。同期制御器10を設けない際の制御結果を非同期制御とし、実施例での制御を同期制御とする。同期制御でも非同期制御でも、Kpxx=Kpyy=3.76,Kixx=Kipyy=5,Kdxx=Kdyy=0.135とした。同期制御では非対角項として、Kpxy=Kpyx=-1.23,Kdxy=Kdyx=-0.12,Kixy=Kiyx=0 とし、非同期制御では非対角項の値は全て0である。同期制御では偏差αの絶対値の最大値が非同期制御の場合の約2/3に減少し、モータM2側の誤差の絶対値の最大値も、非同期制御よりも小さくなった。
【0023】
図9の実験では、
図8の実験に用いたのと同じ系で、モータM2のみに周期的な外乱(時刻1秒目〜8秒目)を加えた。制御ゲインは
図8の場合と同一である。同期制御では、モータM1がモータM2に同期するように、言い換えるとモータM2と同じ誤差を持つように動作し、偏差は非同期制御よりも小さくなっている。
【0024】
実施例には以下の特徴がある。
1) 複数個のモータを同期制御できる。Kpxy,Kdxy等の同期制御用のゲインをチューニングすることにより、個々のモータを指令に忠実に動作させるか、複数個のモータ間の偏差を小さくするかを調整できる。
2) 制御の手法に汎用性があり、任意の対象に適用できる。
3) 3個以上のモータの同期制御にも容易に拡張できる。
4) 油圧、空気圧、内燃エンジン等のモータ以外の駆動系にも適用できる。
5) 同じ特性の2個のモータを対象物に対し対称に配置する場合、積分ゲインでの非対角項は0にでき、比例ゲインと微分ゲインでの非対角項は Kpxy=Kpyx,Kdxy=Kdyx と単純化できる。
6) PID制御器4,5,6等はPD制御器その他任意の制御器に変更でき、ベースとなる非同期制御の部分は制御方式を選ばない。