(57)【特許請求の範囲】
【請求項１】
被駆動体をサーボモータで駆動して制御するモータ制御装置であって、
加加速度、加速度、速度、および位置の理想的な指令波形を生成する理想波形生成部と、
前記理想的な波形を読み出し、目標指令位置、並びに、加加速度、加速度、速度、および位置の指令波形を再生成し、再生成された速度の指令波形を出力する指令波形生成部と、
前記再生成された速度の指令波形をアナログデータに変換するＤＡＣと、
前記アナログデータの制御に応じて駆動し実位置をエンコーダ信号として出力するサーボモータと、を有し、
１パルスの指令波形を出力する指令出力周期の回数をｎとした場合に、
前記指令波形生成部は、前記エンコーダ信号による実位置を前記目標指令位置から減じて偏差量を算出し、指令出力周期ｎ回で前記偏差量が０になるような前記偏差量を補償する加加速度加算波形を生成し、生成された前記加加速度加算波形を、前記前回の指令加加速度波形に加算して、指令出力周期ｎ回分の全ての指令加加速度波形を再生成し、さらに再生成された指令加加速度波形を前記前回の指令加速度波形に加算して指令出力周期ｎ回分の全ての指令加速度波形を再生成し、再生成された指令加速度波形を前記指令波形生成部が前回の指令出力タイミングで再生成した指令速度波形に加算して指令出力周期ｎ回分の全ての指令速度波形を再生成し、再生成された指令速度波形を前記指令波形生成部が前回の指令出力タイミングで再生成した指令位置波形に加算して指令出力周期ｎ回分の全ての指令位置波形を再生成する指令波形再生成処理部、および前記理想波形生成部で生成された前記理想的な指令波形と、前記再生成された指令加加速度波形、前記再生成された指令加速度波形、前記再生成された指令速度波形および前記再生成された指令位置波形とを保存する指令波形入出力部、
を備え、前記エンコーダ信号による実位置と前記目標指令位置との差である前記偏差量から前記加加速度加算波形を生成することを特徴とするモータ制御装置。
【請求項２】
請求項１記載のモータ制御装置において、
前記指令波形再生成処理部は、前記エンコーダ信号による実位置と前記目標指令位置との差である前記偏差量から前記加加速度加算波形を生成する加加速度加算波形生成部を有することを特徴とするモータ制御装置。
【請求項３】
請求項２記載のモータ制御装置において、
前記指令波形再生成処理部は、さらに、加加速度制限部を有し、前記再生成された指令加加速度波形が、所定の加加速度上限値超または加加速度下限値未満の場合にＮＧ情報を前記指令波形入出力部に出力し、
前記指令波形入出力部は、前記ＮＧ情報が入力された場合には、前記前回のタイミングで再生成された前記指令加加速度波形、前記指令加速度波形、前記指令速度波形、および前記指令位置波形を復元し、復元された前記指令加加速度波形、前記指令加速度波形、前記指令速度波形、および前記指令位置波形を、再生成した指令加加速度波形、指令加速度波形、指令速度波形、および指令位置波形とし、再生成された前記指令速度波形を前記ＤＡＣに出力することを特徴とするモータ制御装置。
【請求項４】
請求項２記載のモータ制御装置において、
前記指令波形再生成処理部は、さらに、前記再生成された指令加加速度波形が、所定の加加速度上限値超または加加速度下限値未満の場合にＮＧ情報を出力する加加速度制限部と、前記ＮＧ情報が入力された場合には、前記前回のタイミングで再生成された前記指令加加速度波形、前記指令加速度波形、前記指令速度波形、および前記指令位置波形を復元し前記指令波形入出力部に出力する指令波形復元部を有し、
前記指令波形入出力部は、復元された前記指令加加速度波形、前記指令加速度波形、前記指令速度波形、および前記指令位置波形を、再生成した指令加加速度波形、指令加速度波形、指令速度波形、および指令位置波形とし、再生成された前記指令速度波形を前記ＤＡＣに出力することを特徴とするモータ制御装置。
【請求項５】
請求項１乃至４のいずれかに記載のモータ制御装置において、
前記指令波形生成部は、再生成された前記指令加加速度波形、前記指令加速度波形、前記指令速度波形、および前記指令位置波形を前回のタイミングで再生成された指令波形として保存することを特徴とするモータ制御装置。
【請求項６】
被駆動体をサーボモータで駆動して制御するモータ制御装置のモータ制御方法であって、
加加速度、加速度、速度、および位置の理想的な指令波形を生成し、前記理想的な波形を読み出し、目標指令位置、並びに、加加速度、加速度、速度、および位置の指令波形を再生成し、再生成された速度の指令波形をアナログデータとして出力し、前記アナログデータの制御に応じて前記サーボモータを駆動し、実位置をエンコーダ信号として出力し、
１パルスの指令波形を出力する指令出力周期の回数をｎとした場合に、前記エンコーダ信号による実位置を前記目標指令位置から減じて偏差量を算出し、指令出力周期ｎ回で前記偏差量が０になるような前記偏差量を補償する加加速度加算波形を生成し、生成された前記加加速度加算波形を、前記指令波形生成部が前回の指令出力タイミングで再生成した指令加加速度波形に加算して、指令出力周期ｎ回分の全ての指令加加速度波形を再生成し、さらに再生成された指令加加速度波形を前記前回の指令出力タイミングで再生成した指令波形の中で前記指令出力周期ｎ回分手前からの指令加速度波形に加算して指令出力周期ｎ回分の全ての指令加速度波形を再生成し、再生成された指令加速度波形を前記前回の指令速度波形に加算して指令出力周期ｎ回分の全ての指令速度波形を再生成し、再生成された指令速度波形を前記前回の指令位置波形に加算して指令出力周期ｎ回分の全ての指令位置波形を再生成し、前記再生成された指令加加速度波形、前記再生成された指令加速度波形、前記再生成された指令速度波形および前記再生成された指令位置波形とを保存することを特徴とするモータ制御方法。
【請求項７】
請求項６記載のモータ制御方法において、
前記加加速度加算波形は、前記エンコーダ信号による実位置と前記目標指令位置との差である偏差量から生成することを特徴とするモータ制御方法。
【請求項８】
請求項７記載のモータ制御方法において、
前記再生成された指令加加速度波形が、所定の加加速度上限値超または加加速度下限値未満の場合にＮＧ情報を出力し、前記ＮＧ情報が入力された場合には、前記前回のタイミングで再生成された前記指令加加速度波形、前記指令加速度波形、前記指令速度波形、および前記指令位置波形を復元し、復元された前記指令加加速度波形、前記指令加速度波形、前記指令速度波形、および前記指令位置波形を、再生成された指令加加速度波形、指令加速度波形、指令速度波形、および指令位置波形とし、再生成された前記指令速度波形をアナログデータとして出力し、前記アナログデータの制御に応じて前記サーボモータを駆動することを特徴とするモータ制御方法。
【請求項９】
請求項６乃至８のいずれかに記載のモータ制御方法において、
前記再生成された前記指令加加速度波形、前記指令加速度波形、前記指令速度波形、および前記指令位置波形を前回のタイミングで再生成された指令波形として保存することを特徴とするモータ制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工作機械や産業機械において被駆動体であるワークを移動するために用いられるサーボモータを駆動する制御装置に係り、特に、ダイボンダ等の半導体製造装置のモータ制御装置およびモータ制御方法に関する。
【背景技術】
【０００２】
例えば、図１に示すように、従来のサーボモータの制御装置１００は、モーションコントローラからみるとオープンループ制御となっており、現在の指令位置と、モータ１３０から得られる実位置および実速度を使用して、サーボアンプ１２０（速度ループ制御部１２１および位置ループ制御部１２２）でのみ位置と速度の補償を行っている。即ち、目標位置速度が制御装置１００に与えられると、指令速度波形部１１０の出力波形１１１に応じて、指令パルス列生成部１１２は位置指令値を指令パルス列として順番にサーボアンプ１２０に出力する。サーボアンプ１２０は、入力された位置指令値に応答して、位置ループ制御部１２１および速度ループ制御部１２２がモータ１３０に制御信号を出力する。即ち、制御信号に応じてモータ１３０が回転し、回転に応じて、実位置および実速度が位置ループ制御部１２１および速度ループ制御部１２２に帰還して、帰還制御が行われる。
上述の従来技術では、高速でモータを動作させる場合に、サーボアンプ１２０内では今後の指令波形を把握することができない。このため、進行方向に対する振動や整定時間を容易に抑えることが困難であった。また、溜まりパルス（または、位置偏差パルス、または、エラーパルス）方式でのモータ制御となるため、同期制御等を行う際に理想的な軌跡で動作させることが困難であった。
【０００３】
しかし、従来から、サーボモータ制御においては、ワークやワークを支持するユニットに機械的衝撃を与えないように滑らかに加減速して、ワークを移動する必要がある。特許文献１には、目標位置、目標速度および加減速時間の指令値に基づき速度指令値を実時間で演算しながら速度および位置の制御を行うサーボモータにおいて、加減速時間を加速度の増加・一定・減少の３区間域に分け、各区間で一定になるように速度指令値を実時間で演算しつつ加減速するサーボモータの加減速制御方法が記載されている。また、特許文献２には、サーボモータに繰り返し周期的な位置指令を与えるコンピュータ数値制御装置から位置指令を受け、かつ位置検出器から被駆動体の位置を示す信号を受け、位置指令と被駆動体の位置との第１位置偏差を取得する手段から第１補正データを求め、第１位置偏差と第１補正データに基づき被駆動体を位置制御するサーボモータ駆動制御装置が記載されている。また、特許文献３には、指令周期毎に指定加速度に従って、位置指令の今回値と前回値の差である位置指令差分速度が前記指定速度に到達するまで加速する前記位置指令を作成する過程で、これ以上、位置指令差分速度を加速させると減速度で指定位置に減速停止できない場合は、減速度で指令位置に減速停止する位置指令差分速度となるように位置指令を作成し、さらに位置指令差分速度と位置決め時間の関係から形成される速度パターンの頂点における加加速度がプログラムにより予め与えられた加加速度制限値より大きくなる場合は、加加速度が加加速度制限値以下となるように位置指令を作成する位置指令作成方法および位置指令作成装置が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平３−３６９７７号公報
【特許文献２】特開２００７−３１６７０２号公報
【特許文献３】特開２００９−１８７５２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述の従来技術では、高速でモータを動作させる場合に、サーボアンプ１２０内では今後の指令波形を把握することができない。このため、被駆動体の進行方向に対する振動や整定時間を容易に抑えることが困難であった。また、溜まりパルス方式でのモータ制御となるため、同期制御等を行う際に理想的な軌跡で動作させることが困難であった。
本発明の目的は、上記のような問題に鑑み、動作中の進行方向に対する振動や偏差を抑えることにより、整定時間を短くすることが可能なモータ制御装置およびモータ制御方法を提供することある。
また、本発明により、理想的な軌跡でモータを動作させることができ、さらに、現在の位置を常にモニタリングすることができるため、複数の軸を同期させて動作させることが容易となる。
【課題を解決するための手段】
【０００６】
上述の目的を達成するため、本発明のモータ制御装置およびモータ制御方法は、進行方向に対する振動に大きく影響する加加速度データからの指令波形を生成する手段と、偏差量に応じて、常に加加速度制限しながら今後の指令波形を再生成するリアルタイム実位置制御を行う手段とを備え、これにより高速でモータが動作する際の進行方向に対する振動や偏差を抑え、整定時間短縮を実現する。
【０００７】
即ち、本発明のモータ制御装置は、被駆動体をサーボモータで駆動して制御するモータ制御装置であって、加加速度、加速度、速度、および位置の理想的な指令波形を生成する理想波形生成部と、前記理想的な波形を読み出し、目標指令位置、並びに、加加速度、加速度、速度、および位置の指令波形を再生成し、再生成された速度の指令波形を出力する指令波形生成部と、前記再生成された速度の指令波形をアナログデータに変換するＤＡＣと、前記アナログデータの制御に応じて駆動し実位置をエンコーダ信号として出力するサーボモータと、を有し、前記指令波形生成部は、前記エンコーダ信号による実位置と前記目標指令位置とに基づいて加加速度加算波形を生成し、生成された前記加加速度加算波形を、前記前回の指令加加速度波形に加算して、加加速度指令波形を再生成し、さらに指令加速度波形、指令速度波形、および指令位置波形を再生成する指令波形再生成処理部、および前記生成された理想的な指令波形と、前記再生成加加速度指令波形、指令加速度波形、指令速度波形および指令位置波形とを保存する前回指令波形入出力部、とを備えたものである。
また好ましくは、上記本発明のモータ制御装置において、前記指令波形再生成処理部は、前記エンコーダ信号による実位置と前記目標指令位置との差である偏差量から前記加加速度加算波形を生成する加加速度加算波形生成部を有するものである。
さらに好ましくは、上記本発明のモータ制御装置において、前記指令波形再生成処理部は、さらに、加加速度制限部を有し、前記再生成された指令加加速度波形が、所定の加加速度上限値超または加加速度下限値未満の場合にＮＧ情報を前記指令波形入出力部に出力し、前記指令波形入出力部は、前記ＮＧ情報が入力された場合には、前記前回のタイミングで再生成された前記指令加加速度波形、前記指令加速度波形、前記指令速度波形、および前記指令位置波形を復元し、復元された前記指令加加速度波形、前記指令加速度波形、前記指令速度波形、および前記指令位置波形を、再生成した指令加加速度波形、指令加速度波形、指令速度波形、および指令位置波形とし、再生成された前記指令速度波形を前記ＤＡＣに出力するものである。
さらに、好ましくは、上記発明のモータ制御装置において、前記指令波形再生成処理部は、さらに、前記再生成された指令加加速度波形が、所定の加加速度上限値超または加加速度下限値未満の場合にＮＧ情報を出力する加加速度制限部と、前記ＮＧ情報が入力された場合には、前記前回のタイミングで再生成された前記指令加加速度波形、前記指令加速度波形、前記指令速度波形、および前記指令位置波形を復元し前記指令波形入出力部に出力する指令波形復元部を有し、前記指令波形入出力部は、復元された前記指令加加速度波形、前記指令加速度波形、前記指令速度波形、および前記指令位置波形を、再生成した指令加加速度波形、指令加速度波形、指令速度波形、および指令位置波形とし、再生成された前記指令速度波形を前記ＤＡＣに出力するものである。
またさらに好ましくは、上記本発明のモータ制御装置において、前記指令波形生成部は、再生成された前記指令加加速度波形、前記指令加速度波形、前記指令速度波形、および前記指令位置波形を前回のタイミングで再生成された指令波形として保存するものである。
【０００８】
また即ち、本発明のモータ制御方法は、被駆動体をサーボモータで駆動して制御するモータ制御装置のモータ制御方法であって、加加速度、加速度、速度、および位置の理想的な指令波形を生成し、前記理想的な波形を読み出し、目標指令位置、並びに、加加速度、加速度、速度、および位置の指令波形を再生成し、再生成された速度の指令波形をアナログデータとして出力し、前記アナログデータの制御に応じて前記サーボモータを駆動し、実位置をエンコーダ信号として出力し、前記エンコーダ信号による実位置と前記目標指令位置とに基づいて加加速度加算波形を生成し、生成された前記加加速度加算波形を、前記指令波形生成部が前回のタイミングで再生成した指令加加速度波形に加算して、加加速度指令波形を再生成し、さらに指令加速度波形、指令速度波形、および指令位置波形を再生成するものである。
また好ましくは、上記本発明のモータ制御方法において、前記加加速度加算波形は、前記エンコーダ信号による実位置と前記目標指令位置との差である偏差量から生成するものである。
さらに好ましくは、上記本発明のモータ制御方法において、前記再生成された指令加加速度波形が、所定の加加速度上限値超または加加速度下限値未満の場合にＮＧ情報を出力し、前記ＮＧ情報が入力された場合には、前記前回のタイミングで再生成された前記指令加加速度波形、前記指令加速度波形、前記指令速度波形、および前記指令位置波形を復元し、復元された前記指令加加速度波形、前記指令加速度波形、前記指令速度波形、および前記指令位置波形を、再生成された指令加加速度波形、指令加速度波形、指令速度波形、および指令位置波形とし、再生成された前記指令速度波形をアナログデータとして出力し、前記アナログデータの制御に応じて前記サーボモータを駆動するものである。
またさらに好ましくは、上記本発明のモータ制御方法において、前記再生成された前記指令加加速度波形、前記指令加速度波形、前記指令速度波形、および前記指令位置波形を前回のタイミングで再生成された指令波形として保存するものである。
【発明の効果】
【０００９】
本発明によれば、高速でモータが動作する際の進行方向に対する振動や偏差を抑え、整定時間短縮を実現することができる。また、理想的な軌跡でモータを動作させることができ、さらに、現在の位置を常にモニタリングすることができるため、複数の軸を同期させて動作させることが容易となる。
【図面の簡単な説明】
【００１０】
【図１】従来の制御装置の構成を示すブロック図である。
【図２】本発明の制御装置の一実施例の基本的な原理を説明するためのブロック構成図である。
【図３】本発明のモータ制御装置のモーションコントローラにおける理想波形生成部で生成される理想的な指令波形の一実施例を説明するための図である。
【図４Ａ】本発明のモータ制御装置の一実施例の加加速度加算波形を説明するための図である。
【図４Ｂ】本発明のモータ制御装置の一実施例の構成を示すブロック図である。
【図４Ｃ】本発明のモータ制御装置の一実施例の構成を示すブロック図である。
【図５】本発明を実施した場合における偏差量が１パルス、２パルス、４パルス、８パルス、および１６パルスの場合それぞれの、補償用に加算される加加速度波形、加速度波形、および速度波形を示す図である。
【図６】本発明のモータ制御方法の動作の一実施例の手順を説明するためのフローチャートである。
【図７】本発明のモータ制御装置およびモータ制御方法の一実施例における加加速度上限下限確認処理動作を説明するための図である。
【図８】本発明のモータ制御装置およびモータ制御方法における補償用の加加速度波形算出後の再生成された指令波形の一実施例を示す図である。
【発明を実施するための形態】
【００１１】
図２は、本発明の制御装置の一実施例の基本的な原理を説明するためのブロック構成図である。２００は制御装置、２１０はモーションコントローラ、２１１は理想的な指令波形の生成処理を行う理想波形生成部、２１２は指令波形生成部、２１３はＤＡＣ（Digital to Analog Converter）、２２０はサーボアンプ、２２１は速度ループ制御部、１３０はサーボモータである。図１と同じ機器には同じ参照番号を付し、説明を省略した。
図２に示すように、本発明の制御装置２００は、モーションコントローラ２１０とサーボアンプ２２０とがクローズドループ制御となっている。従って、現在の指令位置と、モータ１３０から得られる実位置および実速度を使用して、サーボアンプ２２０の速度ループ制御部２２１で速度制御を行う。ただし、速度ループ制御部２２１は、その速度制御を、モーションコントローラ２１０がモータ１３０からの実速度および実位置を得て加加速度制限しながら、指令波形を再生成することによって行っている。なお、指令波形生成部２１２は、例えば、ＣＰＵ（Central Processing Unit）である。
【００１２】
例えば、図２において、目標位置速度が制御装置２００に与えられる。そして、指令波形生成部２１２には、サーボアンプ２２０を介して若しくはモータ１３０から直接、実位置および実速度がエンコーダ信号として逐次入力する。
モーションコントローラ２１０の理想波形生成部２１１は、出力信号の指令波形として、（ａ）加加速度波形、（ｂ）加速度波形、（ｃ）速度波形、（ｄ）位置波形をそれぞれ、指令波形生成部２１２に出力する。
指令波形生成部２１２は、理想波形生成部２１１から出力される出力信号波形と、モータ１３０から入力されるエンコーダ信号に応じて、加加速度制限しながら、今後の指令波形を再生成して、ＤＡＣ２１３に逐次出力する。例えば、指令波形生成部２１２は、（１）指令波形入出力処理、（２）エンコーダ信号カウント処理、および（３）指令波形再生処理を行う。
ＤＡＣ２１３は、入力されたデジタルの指令値をアナログ信号の速度指令値に変換して、サーボアンプ２２０の速度ループ制御部２２１に出力する。なお、エンコーダ信号は、エンコーダシグナルカウンタ（後述の図４Ｂ等）にて位置偏差量をパルスとして蓄積する。
【００１３】
サーボアンプ２２０の速度ループ制御部２２１は、モーションコントローラ２１０から入力される速度指令値と、モータ１３０から入力されるエンコーダ信号に応じて、モータ１３０の回転速度を制御する。
モータ１３０は、サーボアンプ２２０の速度ループ制御部２２１から入力される回転速度の制御に応じた回転速度で回転し、実位置および実速度をエンコーダ信号としてサーボアンプ２２０の速度ループ制御部２２１とモーションコントローラ２１０の指令波形生成部２１２に出力する。
なお、図２の実施例では、モータ１３０のカウント値（回転回数および回転角度）から被駆動体の実位置を算出し、算出された実位置をもとに実速度を算出している。しかし、被駆動体の位置を直接検出する位置検出装置を備え、当該位置検出装置が検出した位置を実位置とするようにしても良い。
【００１４】
次に、本発明のモータ制御装置およびモータ制御方法の一実施例をさらに説明する。
まず後述の図３に示すように、目標の加加速度ＪＤ、加速度ＡＤ、速度ＶＤ、および位置ＰＤから、理想的な指令波形を生成する。
次に、図４Ｂの制御ブロック図の処理で示すように、指令出力処理および指令波形再生成処理を行う。このとき、理想的な指令波形（例えば、理想的な加加速度波形）に、偏差量を加味した加加速度加算波形を加算するようにして、指令波形再生成処理が行われる。
【００１５】
図３は、本発明のモータ制御装置のモーションコントローラにおける理想波形生成部で生成される指令波形の一実施例を説明するための図である。図３（ａ）は指令加加速度波形、図３（ｂ）は指令加加速度波形から生成される指令加速度波形、図３（ｃ）は指令加速度波形から生成される指令速度波形、図３（ｄ）は指令加速度波形から生成される指令位置である。指令位置とは、被駆動体の移動先の位置である。なお、横軸は時間である。また、図３（ａ）〜図３（ｄ）において、Ｊｏｂｊは目標加加速度、Ａｏｂｊは目標加速度、Ｖｏｂｊは目標速度、Ｐｏｂｊは目標位置である。
図３（ａ）において、ｎは１パルスの指令波形を出力する指令出力周期の回数であり、８の倍数である。図３に示すように、被移動体を駆動するモータは、移動開始から最初の期間Ｔ１では徐々に加速され、中央部の期間Ｔ２では定速度（期間Ｔ２）で、最終移動位置に近付く期間Ｔ３では徐々に減速して停止するように加加速度制御される。
本実施例では、８の倍数であるとしたが、目標位置が正方向の場合に加加速度指令値が正値、負値、負値、正値と変化する波形、もしくは目標位置が正方向の場合に加加速度指令値が正値、負値、正値と変化する波形とすることもできる。
これは目標移動距離が短い場合に、加加速度指令値０の区間が無くなるからである。
【００１６】
まず図４Ｂでは、あらかじめ生成されている理想的な指令波形（加加速度ＪＤ、加速度ＡＤ、速度ＶＤ、および位置ＰＤ）を読み出す。図４Ｂは、本発明のモータ制御装置の一実施例の構成を示すブロック図で、本発明のモータ制御装置のモーションコントローラで生成される指令波形の一実施例を説明するための図である。また、図４Ａは、本発明のモータ制御装置の一実施例の加加速度加算波形を説明するための図である。
図４Ａにおいて、Ｋはパルス幅、ＪＣはパルス高さ、ｘはパルス番号（１≦ｘ≦ｎ、ｘおよびｎは自然数）である。
【００１７】
次に、図４Ｂにおいて、モーションコントローラ２１０の理想波形生成部２１１は、理想加加速度波形ＪＤ、理想加速度波形ＡＤ、理想速度波形ＶＤ、および理想位置波形ＰＤのパルスを、それぞれ理想的な指令波形として、指令波形生成部２１２の指令波形入出力部４１０に出力する。
なお、指令波形入出力部４１０は、前回の指令出力タイミングで再生成した指令加加速度波形ＪＤ’１〜ＪＤ’ｎと、前回の指令出力タイミングで再生成された指令波形の中で指令出力周期１回分手前からの指令加速度波形ＡＤ’０〜ＡＤ’ｎ、指令速度波形ＶＤ’０〜ＶＤ’ｎ、および指令位置波形ＰＤ’０〜ＰＤ’ｎを保存している。指令波形入出力部４１０は、指令波形生成部２１２の指令波形再生成処理部４２０の減算器４２１並びに加算器４２３、４２４、４２５および４２６に、目標指令位置ＰＤ’０並びにそれぞれ前回のタイミングで再生成した指令加加速度波形ＪＤ’１〜ＪＤ’ｎ、指令出力周期１回分手前からの指令加速度波形ＡＤ’０〜ＡＤ’ｎ−１、指令出力周期１回分手前からの指令速度波形ＶＤ’０〜ＶＤ’ｎ−１、および指令出力周期１回分手前からの指令位置波形ＰＤ’０〜ＰＤ’ｎ−１を出力する。
この時、指令波形生成部２１２のエンコーダシグナルカウンタ４３０は、モータ１３０のエンコーダカウント値から現在の実位置ＰＡ０を取得し、減算器４２１に出力する。
【００１８】
減算器４２１は、現在の目標指令位置ＰＤ’０から現在の実位置ＰＡ０を減じて偏差量Ｐｅｒｒを算出し、加加速度加算波形生成部４２２に出力する。
加加速度加算波形生成部４２２は、指令出力周期ｎ回で偏差量Ｐｅｒｒが将来的に“０”になるような加加速度波形Ｃ１〜Ｃｎを生成する。
例えば、加加速度波形Ｃ１〜Ｃｎは、次のような手順（１）〜（３）で生成する。なお、以下において、位置偏差目標補償量をＰ（ＰｅｒｒをＰとしてそのまま使用する）、指令出力周期をＴＣ、偏差量補償目標時間をＴＮ、偏差量補償目標指令出力周期をｎ回、加加速度波形の幅をＫ、加加速度加算波形の大きさをＪＣとして説明する。
【００１９】
｛手順（１）｝
まず、以下のように、加加速度波形の幅Ｋを算出する。
ＴＮ＞（ＴＣ×ｎ）から、加加速度加算波形の形状を固定するため、ｎは８の倍数とする。
即ち、ＴＮ＞（ＴＣ×８×Ｋ）とし、加加速度波形の幅Ｋは、
Ｋ＜（ＴＮ／（ＴＣ×８））とする。
【００２０】
｛手順（２）｝
次に、以下の式から、加加速度加算波形の大きさＪＣを算出する。
ＪＣ＝（１／８）×（Ｐ／Ｋ３×ＴＣ３）
【００２１】
｛手順（３）｝
次に、加加速度加算波形Ｃ１〜Ｃｎを生成する。
偏差量を補償するための加加速度加算波形Ｃ１〜Ｃｎは、下記のようになる。なお、ここで、ｘは、１〜ｎのｘ番目の波形を意味する。
ｘ／Ｋ≦１の時、Ｃｘ＝ＪＣ
ｘ／Ｋ≦２の時、Ｃｘ＝０
ｘ／Ｋ≦３の時、Ｃｘ＝−ＪＣ
ｘ／Ｋ≦４の時、Ｃｘ＝０
ｘ／Ｋ≦５の時、Ｃｘ＝−ＪＣ
ｘ／Ｋ≦６の時、Ｃｘ＝０
ｘ／Ｋ≦７の時、Ｃｘ＝ＪＣ
ｘ／Ｋ≦８の時、Ｃｘ＝０
【００２２】
例えば、Ｋ＝１の場合には、加加速度加算波形Ｃ１〜Ｃｎは、以下のようになる。
Ｃ１〜Ｃｎ＝｛ＪＣ，０，−ＪＣ，０，−ＪＣ，０，ＪＣ，０｝
即ち、Ｃ１＝ＪＣ、Ｃ２＝０、Ｃ３＝−ＪＣ、Ｃ４＝０、Ｃ５＝−ＪＣ、Ｃ６＝０．Ｃ７＝ＪＣ、Ｃ）＝０である。
【００２３】
図５に、偏差量Ｐを補償するための加加速度加算波形の実施例を示す。
図５は、本発明を実施した場合における偏差量が１パルス、２パルス、４パルス、８パルス、および１６パルスの場合それぞれの、補償用に加算される加加速度波形、加速度波形、および速度波形を示す図である。図５に示すように、偏差量が大きければ大きいほど、加加速度波形の高さＪＣが大きくなる。
【００２４】
次に、図４Ｂにおいて、加加速度加算波形生成部４２２は、加加速度加算波形Ｃ１〜Ｃｎを加算器４２３に出力する。加算器４２３は、加加速度加算波形Ｃ１〜Ｃｎと前回のタイミングで生成した指令加加速度波形ＪＤ’１〜ＪＤ’ｎとを加算して、指令出力周期ｎ回分の全ての指令加加速度波形ＪＤ’’１〜ＪＤ’’ｎを再生成し、加加速度制限部４２７と加算器４２４に出力する。
例えば、加算器４２３の出力は、ＪＤ’’１＝ＪＤ’１＋Ｃ１、ＪＤ’’２＝ＪＤ’２＋Ｃ２、ＪＤ’’３＝ＪＤ'３＋Ｃ３、〜、ＪＤ’’ｎ＝ＪＤ’ｎ＋Ｃｎとなる。
加算器４２４は、再生成された指令加加速度波形ＪＤ’’１〜ＪＤ’’ｎと前回のタイミングで生成した指令出力周期１回分手前からの指令加速度波形ＡＤ’０〜ＡＤ’ｎ−１とを加算して、指令出力周期ｎ回分の全ての指令加速度波形ＡＤ’’１〜ＡＤ’’ｎを再生成し、加算器４２５および加加速度制限部４２７に出力する。
例えば、加算器４２４の出力は、ＡＤ’’１＝ＡＤ’０＋ＪＤ’’１、ＡＤ’’２＝ＡＤ’１＋ＪＤ’’２、ＡＤ’’３＝ＡＤ’２＋ＪＤ’’３、〜、ＡＤ’’ｎ＝ＡＤ’（ｎ−１）＋ＪＤ’’ｎとなる。
加算器４２５は、再生成された指令加速度波形ＡＤ’’１〜ＡＤ’’ｎと前回のタイミングで生成した指令出力周期１回分手前からの指令速度波形ＶＤ’０〜ＶＤ’ｎ−１とを加算して、指令出力周期ｎ回分の全ての指令加速度波形ＶＤ’’１〜ＶＤ’’ｎを再生成し、加算器４２６および加加速度制限部４２７に出力する。
例えば、加算器４２５の出力は、ＶＤ’’１＝ＶＤ’０＋ＡＤ’’１、ＶＤ’’２＝ＶＤ’１＋ＡＤ’’２、ＶＤ’’３＝ＶＤ’２＋ＡＤ’’３、〜、ＶＤ’’ｎ＝ＶＤ’（ｎ−１）＋ＡＤ’’ｎとなる。
加算器４２６は、再生成された指令速度波形ＶＤ’’１〜ＶＤ’’ｎと前回のタイミングで生成した指令出力周期１回分手前からの指令位置波形ＰＤ’０〜ＰＤ’ｎ−１とを加算して、指令出力周期ｎ回分の全ての指令位置波形ＰＤ’’１〜ＰＤ’’ｎを再生成して加加速度制限部４２７に出力する。
例えば、加算器４２６の出力は、ＰＤ’’１＝ＰＤ’０＋ＶＤ’’１、ＰＤ’’２＝ＰＤ’１＋ＶＤ’’２、ＰＤ’’３＝ＰＤ’２＋ＶＤ’’３、〜、ＰＤ’’ｎ＝ＰＤ’（ｎ−１）＋ＶＤ’’ｎとなる。
【００２５】
加加速度制限部４２７は、再生成された指令加加速度波形ＪＤ’’１〜ＪＤ’’ｎが上限（または下限）を超えないかどうかを図７を用いて確認する。
図７は、本発明のモータ制御装置およびモータ制御方法の一実施例における加加速度上限下限確認処理動作を説明するための図である。
図７において、加加速度上限Ｊｍａｘおよび加加速度下限−Ｊｍａｘはあらかじめ定められている。
図７において、加算器４２３では、前回のタイミングで生成した指令加加速度波形ＪＤ’１〜ＪＤ’ｎに、破線円７０１内の加加速度加算波形が加算されている。即ち、加算波形パルスＣ１、Ｃ２、Ｃ３およびＣ４が太線で示された加加速度波形に加算されている（指令加加速度波形ＪＤ’’１〜ＪＤ’’ｎ）。
この場合、加加速度制限部４２７は、現在時刻でのパルス波形Ｃ１、Ｃ２、Ｃ３およびＣ４が上限Ｊｍａｘと下限−Ｊｍａｘの間にあるか否かを検出して、ＯＫかＮＧを判定し、出力を分岐している。例えば、現在時刻で波形Ｃ２が、上限Ｊｍａｘ未満であるか否かを検出する（ＪＤ’’１〜ＪＤ’’ｎ＜Ｊｍａｘ）。そして否（ＮＧ）であれば、指令波形復元部４２１０にＮＧ情報を出力する。またＯＫであれば、現在時刻での波形Ｃ２が、下限Ｊｍａｘ超であるか否かを検出する（−Ｊｍａｘ＜ＪＤ’’１〜ＪＤ’’ｎ）。そして否（ＮＧ）であれば、指令波形復元部４２１０にＮＧ情報を出力する。またＯＫであれば、加速度制限部４２８に指令加加速度波形ＪＤ’’１〜ＪＤ’’ｎ、指令加速度波形ＡＤ’’１〜ＡＤ’’ｎ、指令速度波形ＶＤ’’１〜ＶＤ’’ｎ、および指令位置波形ＰＤ’’１〜ＰＤ’’ｎを出力する。
【００２６】
次に、図４Ｂにおいて、加速度制限部４２８は、加加速度制限部４２７と同様に、現在時刻での加速度波形が、上限Ａｍａｘ未満であるか否かを検出する（ＡＤ’’１〜ＡＤ’’ｎ＜Ａｍａｘ）。そして否（ＮＧ）であれば、指令波形復元部４２１０にＮＧ情報を出力する。またＯＫであれば、現在時刻での波形が、下限Ａｍａｘ超であるか否かを検出する（−Ａｍａｘ＜ＡＤ’’１〜ＡＤ’’ｎ）。そして否（ＮＧ）であれば、指令波形復元部４２１０にＮＧ情報を出力する。またＯＫであれば、速度制限部４２９に指令加加速度波形ＪＤ’’１〜ＪＤ’’ｎ、指令加速度波形ＡＤ’’１〜ＡＤ’’ｎ、指令速度波形ＶＤ’’１〜ＶＤ’’ｎ、および指令位置波形ＰＤ’’１〜ＰＤ’’ｎを出力する。
【００２７】
さらに図４Ｂにおいて、速度制限部４２９は、加加速度制限部４２７と同様に、現在時刻での速度波形が、上限Ｖｍａｘ未満であるか否かを検出する（ＶＤ’’１〜ＶＤ’’ｎ＜Ｖｍａｘ）。そして否（ＮＧ）であれば、指令波形復元部４２１０にＮＧ情報を出力する。またＯＫであれば、現在時刻での波形が、下限Ｖｍａｘを超えるか否かを検出する（−Ｖｍａｘ＜ＶＤ’’１〜ＶＤ’’ｎ）。そして否（ＮＧ）であれば、指令波形復元部４２１０にＮＧ情報を出力する。またＯＫであれば、指令波形入出力部４１０に指令加加速度波形ＪＤ’’１〜ＪＤ’’ｎ、指令加速度波形ＡＤ’’１〜ＡＤ’’ｎ、指令速度波形ＶＤ’’１〜ＶＤ’’ｎ、および指令位置波形ＰＤ’’１〜ＰＤ’’ｎを出力する。
【００２８】
指令波形復元部４２１０は、ＮＧ情報が、加加速度制限部４２７、加速度制限部４２８、または速度制限部４２９のいずれかから入力された場合には、前回の指令波形を復元し、全偏差量の補正を次回指令出力時まで持ち越す（上限と下限の確認処理）。即ち、復元した前回の指令波形を指令波形入出力部４１０に出力する。
なお、上記実施例では、指令波形復元部４２１０が前回の指令波形を復元したが、ＮＧ情報を出力し、指令波形入出力部４１０がＮＧ情報に応じて、保存していた前回の指令波形を現在の指令波形とするようにしても良い。指令波形入出力部４１０が復元する場合の一実施例を図４Ｃに示す。
この後、図４Ｂおよび図４Ｃにおいて、再生成した指令波形ＪＤ’’１〜ＪＤ’’ｎ、ＡＤ’’１〜ＡＤ’’ｎ、ＶＤ’’１〜ＶＤ’’ｎ、およびＰＤ’’１〜ＰＤ’’ｎを新たな指令波形として保存する。
指令波形の速度指令値ＶＤ’’１は、指令波形入出力部４１０からＤＡＣ２１３に出力され、ＤＡＣ２１３は、アナログ変換した速度指令値をサーボアンプ２２０に出力する。
【００２９】
図４Ｂにおいて、ＤＡＣ２１３は、入力された速度指令値ＶＤ’’１をアナログ値に変換してサーボアンプ２２０に出力する。サーボアンプ２２０は、入力されたアナログデータに応じてモータ１３０を回転駆動し、かつモータ１３０の回転位置（および回転速度）をエンコーダ信号として、指令波形生成部２１２に出力する。
モータ１３０から出力されたエンコーダ信号は、指令波形生成部２１２のエンコーダシグナルカウンタ４３０に入力される。
エンコーダシグナルカウンタ４３０は、所定のサイクルでカウントしたカウント値ＰＡ０を指令波形再生成処理部４２０に出力する。
指令波形再生成処理部４２０では、加算器４２１が、その減算入力端子に、エンコーダシグナルカウンタ４３０が出力するカウント値ＰＡ０を入力する。
サーボアンプ２２０は、入力された速度指令値ＶＤ’’１に従ってモータ１３０を制御する。
【００３０】
全ての指令波形が再生成される様子を図８に示す。図８は、本発明のモータ制御装置およびモータ制御方法における補償用の加加速度波形算出後の、再生成された指令波形の一実施例を示す図である。横軸は時間、縦軸はそれぞれパルス高さを示す。一点鎖線はそれぞれ補償前の波形で、現在時刻から指令加加速度において補償用の加加速度波形が加算された期間Ｔｊの間に、実線で示された波形でモータ１３０が制御される。
この結果、モータ１３０が回転し、その回転によって、モータが高速で回転動作する際に、被駆動体の進行方向に対する振動や偏差を抑え、整定時間短縮を実現することができる。また、理想的な軌跡でモータを動作させることができ、さらに、現在の位置を常にモニタリングすることができるため、複数の軸を同期させて動作させることが容易となる。
なお、図８において、実位置波形が現在時刻よりも前からズレているように見える。これは、指令の波形に対して、現在時刻までのズレ（位置偏差）を示している。実際には、非常に短い指令出力周期の間隔で補正し続けているため、図８ほど顕著にズレが生じることはない。図８では、位置が補正される様子を強調して表現するために、現在時刻の実位置を指令波形から少しズレた位置にしてある。
【００３１】
図６は、本発明のモータ制御方法の動作の一実施例の手順を説明するためのフローチャートである。図６によって、指令出力周期タイミングで指令加加速度波形ＪＤ’’、指令加速度波形ＡＤ’’、指令速度波形ＶＤ’’、および指令位置波形ＰＤ’’を作成する手順を説明する。
ステップ６０１では、エンコーダカウント値から現在の実位置ＰＡ０を取得する。
ステップ６０２では、実位置ＰＡ０と現在の指令位置ＰＤ’０から偏差量Ｐｅｒｒを算出する。
ステップ６０３では、指令出力周期ｎ回で、偏差量Ｐｅｒｒが将来的に“０”になるような加加速度加算波形Ｃ１〜Ｃｎを生成する。
【００３２】
ステップ６０４では、加加速度加算波形Ｃ１〜Ｃｎを指令加加速度波形ＪＤ’１〜ＪＤ’ｎに加算して、指令出力周期ｎ回分の全ての指令加加速度波形ＪＤ’’１〜ＪＤ’’ｎを再生成する。
ステップ６０５では、指令出力周期１回分手前からの指令加速度波形ＡＤ’０〜ＡＤ’ｎ−１と再生成した指令加加速度波形ＪＤ’’１〜ＪＤ’’ｎから、指令出力周期ｎ回分の全ての指令加速度波形ＡＤ’’１〜ＡＤ’’ｎを再生成する。
ステップ６０６では、指令加速度波形ＡＤ’’１〜ＡＤ’’ｎの再生成（ステップ６０５）と同様な方法で指令速度波形ＶＤ’’１〜ＶＤ’’ｎを再生成する。
ステップ６０７では、指令加速度波形ＡＤ’’１〜ＡＤ’’ｎの再生成（ステップ６０５）、または指令速度波形ＶＤ’’１〜ＶＤ’’ｎの再生成（ステップ６０６）と同様な方法で指令位置波形ＰＤ’’１〜ＰＤ’’ｎを再生成する。
【００３３】
ステップ６０８では、再生成した加加速度波形ＪＤ’’１〜ＪＤ’’ｎが上限Ｊｍａｘを未満か否かを確認する。上限Ｊｍａｘを超える場合にはステップ６１２に処理を移行し、上限未満の場合にはステップ６０９に処理を移行する。
ステップ６０９では、再生成した加速度波形ＡＤ’’１〜ＡＤ’’ｎが上限Ａｍａｘを未満か否かを確認する。上限Ａｍａｘを超える場合にはステップ６１２に処理を移行し、上限未満の場合にはステップ６１０に処理を移行する。
ステップ６１０では、再生成した速度波形ＶＤ’’１〜ＶＤ’’ｎが上限Ｖｍａｘを未満か否かを確認する。上限Ｖｍａｘを超える場合にはステップ６１２に処理を移行し、上限未満の場合にはステップ６１１に処理を移行する。
【００３４】
ステップ６１１では、再生成した指令加加速度波形ＪＤ’’１〜ＪＤ’’ｎ、指令加速度波形ＡＤ’’１〜ＡＤ’’ｎ、指令速度波形ＶＤ’’１〜ＶＤ’’ｎ、および指令位置波形ＰＤ’’１〜ＰＤ’’ｎを新たな指令波形として保存する。
ステップ６１３では、次回の速度指令値ＶＤ’’１〜ＶＤ’’ｎをＤＡＣ３１２から出力させ、図６の処理を終了し、次の指令出力周期タイミングの動作に移行する。
【００３５】
ステップ６１２では、再生成指令波形を前回の指令波形で復元し、ステップ６１３に処理を移行する。即ち、指令加加速度波形ＪＤ’’１〜ＪＤ’’ｎとして、前回の指令加加速度波形ＪＤ’１〜ＪＤ’ｎを用いる。また、指令加速度波形ＡＤ’’１〜ＡＤ’’ｎとして、前回の指令加速度波形ＡＤ’１〜ＡＤ’ｎを用いる。またさらに、指令速度波形ＶＤ’’１〜ＶＤ’’ｎとして、前回の指令速度波形ＶＤ’１〜ＶＤ’ｎも用いる。またさらに、指令位置波形ＰＤ’’１〜ＰＤ’’ｎとして、前回の指令位置波形ＰＤ’１〜ＰＤ’ｎを用いる。
【００３６】
以上、本発明を実施例によって詳細に説明した。本発明は、回転するモータ以外のリニアモータにも適用することができる。具体的には、図２において、サーボアンプ２２０の速度ループ制御部２２１は、モーションコントローラ２１０から入力される速度指令値と、モータ１３０から入力されるエンコーダ信号に応じて、モータ１３０の移動速度を制御する。
モータ１３０は、サーボアンプ２２０の速度ループ制御部２２１から入力される移動速度の制御に応じた移動速度で移動し、実位置および実速度をエンコーダ信号としてサーボアンプ２２０の速度ループ制御部２２１とモーションコントローラ２１０の指令波形生成部２１２に出力する。
なお、図２の実施例では、モータ１３０のカウント値から被駆動体の実位置を算出し、算出された実位置をもとに実速度を算出している。しかし、被駆動体の位置を直接検出する位置検出装置を備え、当該位置検出装置が検出した位置を実位置とするようにしても良い。
【００３７】
例えば、図４Ｂにおいて、ＤＡＣ２１３は、入力された速度指令値ＶＤ’’１をアナログ値に変換してサーボアンプ２２０に出力する。サーボアンプ２２０は、入力されたアナログデータに応じてモータ１３０を駆動し、かつモータ１３０の移動位置（および移動速度）をエンコーダ信号として、指令波形生成部２１２に出力する。
モータ１３０から出力されたエンコーダ信号は、指令波形生成部２１２のエンコーダシグナルカウンタ４３０に入力される。
エンコーダシグナルカウンタ４３０は、所定のサイクルでカウントしたカウント値ＰＡ０を指令波形再生成処理部４２０に出力する。
指令波形再生成処理部４２０では、加算器４２１が、その減算入力端子に、エンコーダシグナルカウンタ４３０が出力するカウント値ＰＡ０を入力する。全ての指令波形が再生成される様子を図８に示す。図８は、本発明のモータ制御装置およびモータ制御方法における補償用の加加速度波形算出後の、再生成された指令波形の一実施例を示す図である。横軸は時間、縦軸はそれぞれパルス高さを示す。一点鎖線はそれぞれ補償前の波形で、現在時刻から指令加加速度において補償用の加加速度波形が加算された期間Ｔｊの間に、実線で示された波形でモータ１３０が制御される。
【００３８】
この結果、モータ１３０が移動し、その移動によって、モータが高速で移動動作する際に、被駆動体の進行方向に対する振動や偏差を抑え、整定時間短縮を実現することができる。また、理想的な軌跡でモータを動作させることができ、さらに、現在の位置を常にモニタリングすることができるため、複数の軸を同期させて動作させることが容易となる。
更に、エンコーダカウンタ機能を有するモータなどモータ全般にも適用することが可能である。
【００３９】
さらに、本発明は、上述の実施例に限定されるわけではなく、本発明が属する技術分野において、通常の知識を有する者であれば、本発明の思想と精神に基づいて、本発明を修正若しくは変更できる発明が含まれることは勿論である。
例えば、上記実施例では、指令波形入出力部は、速度指令値を出力してモータを制御していた。しかし、速度指令値の代わりに加速度指令値を出力してモータを制御しても良い。その結果、位置の制御だけでなく、荷重制御も可能となる。
【産業上の利用可能性】
【００４０】
本発明のサーボ制御装置およびサーボ制御方法は、ダイボンダ等の半導体製造装置で利用される。
【符号の説明】
【００４１】
１００：制御装置、  １１０：モーションコントローラ、  １１１：指令速度波形生成部、  １１２：指令パルス列生成部、  １２０：サーボアンプ、  １２１：位置ループ制御部、  １２２：速度ループ制御部、  １３０：サーボモータ、  ２００：制御装置、  ２１０：モーションコントローラ、  ２１１：理想波形生成部、  ２１２：指令波形生成部、  ２１３：ＤＡＣ、  ２２０：サーボアンプ、  ２２１：速度ループ制御部、  ４１０：指令波形入出力部、  ４２０：指令波形再生成処理部、  ４２１：減算器、  ４２２：加加速度加算波形生成部、  ４２３〜４２６：加算器、  ４２７：加加速度制限部、  ４２８：加速度制限部、  ４２９：速度制限部、  ４２１０：指令波形復元部、  ４３０：エンコーダシグナルカウンタ。
【図１】
0005320420.tif 000002
【図２】
0005320420.tif 000003
【図３】
0005320420.tif 000004
【図４Ａ】
0005320420.tif 000005
【図４Ｂ】
0005320420.tif 000006
【図４Ｃ】
0005320420.tif 000007
【図５】
0005320420.tif 000008
【図６】
0005320420.tif 000009
【図７】
0005320420.tif 000010
【図８】
0005320420.tif 000011