(57)【特許請求の範囲】
【請求項１】
モータの位置、速度フィードバックを有し、マイクロプロセッサにより位置、速度の自動制御を行う上位制御部と、モータへの供給電流のフィードバックを有し、前記マイクロプロセッサとは別のマイクロプロセッサにより電流の自動制御を行う電力供給部とから構成され、前記上位制御部と電力供給部との間はシリアル通信を用いて制御情報を交換することによりモータの制御を行う交流モータ制御装置において、上位制御部が位置、速度制御周期に同期して電流供給部への制御情報をシリアル通信を用いて送出し、電力供給部は該シリアル通信信号の受信タイミングと電流制御周期の開始との時間差を監視し、この時間差が一定範囲内となるように電流制御周期を調整し、位置、速度制御周期と同期させることを特徴とするモータ制御装置。
【請求項２】
モータの位置、速度フィードバックを有し、マイクロプロセッサにより位置、速度の自動制御を行う上位制御部と、モータへの供給電流のフィードバックを有し、前記マイクロプロセッサとは別のマイクロプロセッサにより電流の自動制御を行う電力供給部とから構成され、前記上位制御部と電力供給部との間はシリアル通信により制御情報を交換することによりモータの制御を行う交流モータの制御装置において、電力供給部が電流制御周期に同期して上位制御部への制御情報をシリアル通信を用いて送出し、上位制御部は該シリアル通信信号の受信タイミングと位置、速度制御周期の開始との時間差を監視し、この時間差が一定範囲内となるように位置、速度制御周期を調整し、電流制御周期と同期させることを特徴とするモータ制御装置。
【請求項３】
請求項１に記載のモータ制御装置において、前記上位制御部はカウンタ回路内に遅延回路を有し、前記電力供給部はカウンタ回路内にラッチ回路を有し、
該遅延回路は、前記上位制御部で行う位置制御処理と速度制御処理が完了するまでの時間を遅れ時間として出力し、位置、速度制御を起動する割り込みに対して一定時間遅れて通信を行い、
前記ラッチ回路は、電流制御周期を生成するためのカウント値をラッチすることでシリアル通信信号の受信タイミングと電流制御周期の開始との時間差を監視することを特徴とするモータ制御装置。
【請求項４】
請求項２に記載のモータ制御装置において、前記電力供給部はカウンタ回路内に遅延回路を有し、前記上位制御部はカウンタ回路内にラッチ回路を有し、
該遅延回路は、前記電力供給部で行う電流制御処理が完了するまでの時間を遅れ時間として出力し、電流制御を起動する割り込みに対して一定時間遅れて通信を行い、
前記ラッチ回路は、位置、速度制御周期を生成するためのカウント値をラッチすることでシリアル通信信号の受信タイミングと位置、制御制御周期の開始との時間差を監視することを特徴とするモータ制御装置。
【請求項５】
請求項１〜４のいずれかに記載のモータ制御装置において、シリアル通信の開始時間に一定の許容範囲を持たせたことを特徴とするモータ制御装置。
【請求項６】
請求項５に記載のモータ制御装置において、シリアル通信の開始時のカウント値が前記許容範囲の下限値より小さい場合には電流制御周期を短くし、前記許容範囲の上限値よりも大きい場合には電流制御周期を長くすることを特徴とするモータ制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は交流モータを駆動する制御装置に係り、特に、モータの電流を検出して電流を制御する電流制御ループを内側に持ち、モータの位置、速度を検出して位置、速度を制御する位置、速度制御ループを外側に持って、モータの位置や速度を制御するのに好適な交流モータの制御装置およびその制御周期の同期方式に関する。
【０００２】
【従来の技術】
図１にＡＣサーボモータの位置制御装置の概略制御ブロック図を示す。ここで１は本制御装置を示し、４は制御対象のＡＣサーボモータ、５は位置、速度を検出するためにモータに取り付けられたエンコーダを示す。
【０００３】
まず、この制御装置１には位置指令θrefが与えられ、これとエンコーダ５からの信号を基に位置カウンタ回路１２で検出された位置フィードバック値θfが比較器６で比較される。この結果である位置偏差は位置制御部７に入力され、速度指令Ｎrefとなって出力される。これは更にエンコーダ５からの信号を基に速度検出回路１１で検出された速度フィードバック値Ｎfと比較器８で比較され、この偏差が速度制御部９に入力される。速度制御部９の出力は電流指令Ｉrefとなって次に電流検出器１７および電流検出回路１８を介して得られる電流フィードバック値Ｉfと比較器１３で比較され、この偏差が電流制御部１４の入力となる。電流制御部１４の出力はＰＷＭ制御部１５でＰＷＭ信号となりパワー素子１６に与えられ、この結果としてモータ４への電流が供給されてモータ４が制御される。
【０００４】
なお、永久磁石式のＡＣサーボモータではモータの磁極位置が必要になるため、エンコーダ５からの信号を基に磁極位置演算回路１０において磁極位置が求められ、この信号は電流制御部１４に入力されて制御に使用される。
【０００５】
以上は、ＡＣサーボモータを位置制御装置として使用した場合の概略説明であるが、位置制御部７を用いずに速度指令Ｎrefを外部からの指令とすることで、速度制御装置として使用することもできる。
【０００６】
上記の装置は、近年の半導体技術の発達により、高性能なマイクロプロセッサを用いてそのほとんどの部分がソフトウェアによるディジタル制御で行われる。この場合制御性能の大幅な向上、およびパワー部と外部インタフェースを持つ制御部の電源系の分離を目的として２つのマイクロプロセッサを用いて制御することがある。これらのプロセッサの役割分担としては、図２に示すように、位置制御部７や速度制御部９を含む上位制御部２と、電流検出部１８を含めて電流制御部１４やパワー素子１６を持つ電力供給部３とに分けることが考えられる。このハードウェア構成を図２を用いて以下に説明する。
【０００７】
まず、それぞれの部分で制御の中心となるのが２１−１、２１−２のマイクロプロセッサＭＰＵである。
【０００８】
なお、図において上位制御部と電力供給部で同様の機能を持つ回路ブロックは、それぞれ−１、−２の添字を用いて示すものとする。但し以下の説明で−１、−２に共通な事項についての説明のときは添字−１、−２を省略する。
【０００９】
これらのＭＰＵはそれぞれの発振器２２からのクロック信号で動作するが、位置制御、速度制御および電流制御については一定の周期で各制御ソフトウェアを動作させる必要がある。そこで、発振器２２の信号からのクロック信号を基に２３のカウンタ回路により必要な制御周期を生成し、ＭＰＵ２１に制御ソフトウェアを起動するための割込信号として与える。また、それぞれのＭＰＵ間での制御情報のやりとりは、２４の通信インタフェースを用いてシリアル通信を介して行う。ここで、通常、上位制御部２と電力供給部３で電源系が異なるためそれぞれのＭＰＵ間で絶縁が必要となるが、この絶縁回路を最小化することを目的として上記シリアル通信を用いるものである。
【００１０】
これらの回路の他に上位制御部２では、外部からの指令信号などのインタフェースとなる上位Ｉ／Ｆ部２５、エンコーダからの信号を入力するエンコーダ信号入力回路２６などがある。
【００１１】
次に２３のカウンタ回路について図３を用いて説明する。この回路では発振器２２からのクロック信号をカウントするカウンタ回路３１、必要な制御周期をクロックパルス数として記憶しておくための制御周期レジスタ３２がある。これらのカウンタ３１、レジスタ３２の値は比較器３３で常に比較されており、それぞれの値が一致した場合には合致信号を出力する。この合致信号はカウンタをクリアするのと同時にフリップフロップ３４をセットして、この出力がＭＰＵの割込信号となってＭＰＵの制御ソフトウェアを起動するようになる。また、制御ソフトウェアでは割込を発生したフリップフロップ３４をクリアして次の制御周期の割込に備えるようにしなければならない。
【００１２】
以上がハードウェア構成の概要であるが、周辺回路まで含んだマイクロプロセッサを用いてもよい。
【００１３】
次に本構成のＡＣサーボモータ制御装置での各制御処理のタイミングについて図４を用いて説明する。前述の通り、上位制御部２には一定の制御周期（ＴASRとする）で割込が入り、これによって制御ソフトウェアが起動するようになっているが、ここでまず位置制御が起動する。位置制御処理が終了するとその結果である速度指令Ｎrefを引き渡して速度処理が起動し、次いで速度制御処理が終了するとその結果である電流指令Ｉrefを電力供給部に転送すべくシリアル通信が開始されるようになっている。次に電力供給部においては一定の制御周期（ＴACRとする）で電流制御処理が起動するようになっている。ただし、電流制御処理に必要な電流指令Ｉrefは前述の通り上位制御部からシリアル通信によって転送されるようになっているため、現電流制御処理が起動するより前に受信した電流指令を使用することになる。ここで図４からもわかるよに、上位制御部２と電力供給部３とが独立したタイミングで処理を行っているために、シリアル通信から電流制御処理の起動までの時間は一定ではなく常に変化することになる。言い換えれば速度制御処理から電流制御処理開始までの時間は一定しないということになる。また、１回の速度制御処理から得られる電流指令で何回かの電流制御処理が行われるが、この回数もタイミングにより一定にならず、例えば図のように電流指令▲１▼に対しては電流制御が４回、電流指令▲２▼に対しては電流制御が５回行われるというようなことになる。なおここでは説明しないが、モータのディジタル制御においては１回の速度制御周期に対して４〜６回の電流制御を行うのが一般的である。
【００１４】
【発明が解決しようとする課題】
上記のように上位の制御処理と下位の制御処理との時間差（位相差）が一定せず、またそれぞれの制御回数の比率も一定しないと、特に制御応答を上げたような場合、制御特性に影響して不安定になる場合がある。また、お互いの制御周期の位相差の変化も、ある周波数を持つため、この周波数成分が制御特性に現れてくる恐れもある。
【００１５】
本発明は上記のような問題を解決し、独立なマイクロプロセッサで実行する制御処理を同期させることで高い制御性能を有するモータの制御装置を提供することを目的としている。
【００１６】
【課題を解決するための手段】
上記目的はまず、上位制御部の制御周期が電力供給部の制御周期の整数倍となるように各制御周期を設定して、さらに２つのマイクロプロセッサ間の制御情報伝送のためのシリアル通信と制御処理の開始との時間差を監視し、これが一定となるように制御周期に変更を加えるような手段を設けることにより達成できる。
【００１７】
【発明の実施の形態】
以下、本発明の実施例を図を用いて説明する。
【００１８】
まず本発明の装置の全体構成であるが、これは図１、図２で説明した通りである。従来方式と異なるのはまず図２のカウンタ回路２３の内容であり、これを図５を用いて説明する。
【００１９】
本発明では異なるマイクロプロセッサ間の処理の同期をとるために、お互いのインタフェースであるシリアル通信のタイミングを軸として、これにそれぞれの処理を同期させる方式をとる。このためにまずシリアル通信の主局として動作する上位制御部２では位置、速度制御を起動する割込に対して正確に一定時間遅れて通信を行うようにしなければならない。これを実現するのが遅延回路５１であり、制御処理の起動割込タイミング信号から一定の遅れを持って通信インタフェースを起動するようになっている。ここで遅延回路５１の遅れ時間であるが、これは上位制御部２で行う位置制御処理と速度制御処理が完了するまでの時間となるが、通常の制御処理では指令値や制御対象の状態による処理時間のばらつきがほとんどないため、遅れ時間を確定することは容易である。
【００２０】
一方シリアル通信の従局として動作する電力供給部３では電流制御処理を起動する割込信号の発生時間とシリアル通信の開始時間との差を監視しなければならない。このため、シリアル通信開始時に通信インタフェース２４−２より受信開始信号を出力し、この信号によって制御周期を生成するためのカウンタ３１−２のカウント値をラッチ回路５２でラッチするようにしている。ラッチされたデータはそのまま上記時間差を表すデータであるため、ＭＰＵ２１−２に取り込んで後述する制御周期の調整に用いる。
【００２１】
次に各制御処理のタイミングについて図６を用いて説明する。
【００２２】
ここではまず上位制御部２と電力供給部３での制御周期の関係について説明する。
【００２３】
本実施例においては上位制御部２での位置制御、速度制御の周期をＴASR、電力供給部３の電流制御の周期をＴACRとした場合、
ＴASR＝４×ＴACR
となるように設定する。
【００２４】
このような関係とするためにはそれぞれの発振器の周波数を考慮してそれぞれの制御周期レジスタ（図５の３２）を設定すればよい。このように制御周期を合わせることで短時間であればそれぞれの制御周期の同期もとることができる。しかし制御周期生成のベースとなる発振器は必ず誤差をもっているため、継続して同期を保つことはできず、各制御周期の位相差を調整する手段が必要になる。この手段のハードウェアについては図５で説明した通りであるが、この動作タイミングについて説明する。
【００２５】
図６からわかるように、上位制御部２が行うシリアル通信は上位制御部２の制御処理開始割込からＴdelayの遅れをもって起動される。電力供給部３では、このシリアル通信の開始時間は前述のようにカウンタのカウント値として検知することができるが、これが次の電流制御処理の開始に対して、シリアル通信に要する時間だけ前になるように電流制御周期を調整してやれば最も遅れの少ない制御ができることになる。ただしこれも各種変動要素を考慮して通信完了が電流制御処理に間に合わなくなるようなことがないように設定しなければならない。また、図６に示してあるように、制御周期の調整機能を安定に動作させる意味からシリアル通信開始時間には一定の許容範囲を持たせてやる。
【００２６】
こうした制御周期の調整を実現するためのアルゴリズムを図７に示し、以下に説明する。
【００２７】
ここではまずシリアル通信開始時間の検出値をＴP、この開始時間の許容値の範囲をＴPmin〜ＴPmaxとする。ただし、これらの時間は前述のカウンタのカウント値をそのまま用いるものとする。
【００２８】
また、図７のフローで示す処理はシリアル通信の周期毎で実行するものとする。本フローでは通信開始時間が電流制御周期内で早くなった場合には電流制御周期が遅れたものと判断して、電流制御周期をΔＴだけ短くする。
【００２９】
また、逆に通信開始時間が電流制御周期内で遅くなった場合には電流制御周期が早くなったものと判断して、電流制御周期をΔＴだけ長くするものである。制御周期の変更は、制御処理起動の割込を発生するカウンタ回路の制御周期レジスタ３２−２の値を変更することで可能となる。また、ΔＴも本カウント値にして最小の１としておけば本調整機能が安定に動作する。
【００３０】
以上、本実施例では上位制御部２と電力供給部３との間のシリアル通信において、上位制御部２が主局、電力供給部３が従局となる場合について説明してきた。通常のモータ制御装置ではこのような関係となるのが一般的であるが、逆の場合、すなわち電力供給部３が主局、上位制御部２が従局となるような構成も可能である。このような場合にもこれまで説明した方式と同様の方式をとることができ、具体的には以下のようになる。
【００３１】
まずシリアル通信の主局である電力供給部３が電流制御周期に同期してシリアル通信を開始する。これに対し従局の上位制御部２は位置、速度制御周期内での通信開始時間を監視し、これが一定の許容範囲内に入るように位置、速度制御処理の周期を調整する。なおこの場合には、制御周期に対してシリアル通信の起動を行う遅延回路を電力供給部３に、通信開始の時間を検知するためのラッチ回路を上位制御部２に設ける必要がある。
【００３２】
【発明の効果】
本発明の装置を用いることで、モータの位置制御、速度制御、電流制御の各周期を同期させることができ、制御応答が高く、特性のよいモータの制御が可能となる。
【図面の簡単な説明】
【図１】本発明が適用される具体的一実施例としてのＡＣサーボモータの位置制御装置の概略制御ブロック図である。
【図２】本発明が適用される具体的一実施例としてのモータ制御装置のハードウェア構成を示すブロック図である。
【図３】従来におけるカウンタ回路の詳細を示すための図である。
【図４】従来における各制御処理のタイミング図である。
【図５】本発明によるカウンタ回路の一実施例を示すための図である。
【図６】本発明による一実施例の図５の各制御処理のタイミング図である。
【図７】本発明による一実施例における制御周期調整のアルゴリズムを示すフローチャートである。
【符号の説明】
１…モータ制御装置、２…上位制御部、３…電力供給部、４…モータ、５…エンコーダ、６…比較器、７…位置制御部、８…比較器、９…速度制御部、10…磁極位置演算回路、11…速度演算回路、12…位置カウンタ回路、13…比較器、14…電流制御部、15…ＰＷＭ制御部、16…パワー素子、17…電流検出器、18…電流検出回路、21…マイクロプロセッサ（ＭＰＵ）、22…発振器、23…カウンタ回路、24…通信インタフェース、25…上位インタフェース、31…カウンタ、32…制御周期レジスタ、33…比較器、34…フリップフロップ、51…遅延回路、52…ラッチ回路。
（添字−１，−２は省略）
【図１】
0004491083.tif 000002
【図２】
0004491083.tif 000003
【図３】
0004491083.tif 000004
【図４】
0004491083.tif 000005
【図５】
0004491083.tif 000006
【図６】
0004491083.tif 000007
【図７】
0004491083.tif 000008