(57)【特許請求の範囲】
【請求項１】
多軸を駆動する複数の電動アクチュエータと、
上記複数の電動アクチュエータに対応して設けられ、各軸の電動アクチュエータの送り量を設定する送り量計数値メモリと、
電動アクチュエータを加速、減速、停止または定速運転させるためのコマンド列を記憶したコマンドパターンメモリと、
上記各軸の電動アクチュエータが現在、加速、減速、停止もしくは定速運転中であるかと、送り量計数値メモリの計数値に応じて、所定の周期で上記コマンドパターンメモリからの読み出しアドレスを制御するとともに、上記コマンドパターンメモリから、全電動アクチュエータの軸数分に相当した回数、コマンドを読み出して、各軸の電動アクチュエータに送出し、各軸の電動アクチュエータが単位パルス駆動される毎に送り量計数値メモリから駆動パルスに相当した値を減算する制御手段と、
上記送出されたコマンドをデコードし、コマンドの内容に応じて各軸の電動アクチュエータを駆動する駆動手段とを備えた
ことを特徴とする多軸位置決め装置。
【請求項２】
多軸を駆動する複数の電動アクチュエータと、
上記複数の電動アクチュエータに対応して設けられ、各軸の電動アクチュエータの送り量を設定する送り量計数値メモリと、
上記複数の電動アクチュエータに対応して設けられ、各軸の電動アクチュエータの減速開始送り量を設定する減速開始送り量計数値メモリと、
各電動アクチュエータが現在、加速、減速、停止もしくは定速運転中であるかを記憶するコマンド生成管理フラグメモリと、
電動アクチュエータを加速、減速、停止または、定速運転させるためのコマンド列を記憶したコマンドパターンメモリと、
複数の電動アクチュエータに対応して設けられ、上記コマンドパターンメモリの読み出しアドレスを格納するポインタメモリと、
各軸の電動アクチュエータのコマンドを格納するコマンドメモリと、
上記各軸の電動アクチュエータのコマンド生成管理フラグメモリの内容と、送り量計数値メモリ、減速開始送り量計数値メモリの計数値に応じて、
所定の周期で、上記コマンド生成管理フラグメモリの内容を書き換えるとともに、各電動アクチュエータのポインタメモリのアドレスを設定もしくは増減し、上記コマンドパターンメモリからポインタメモリが指定するアドレスのコマンドを読み出して上記コマンドメモリに格納し、各軸の電動アクチュエータが単位パルス駆動される毎に送り量計数値メモリから駆動パルスに相当した値を減算する処理手段と、
全電動アクチュエータの軸数分に相当した回数、コマンドメモリから各軸の電動アクチュエータのコマンドを読み出して、各電動アクチュエータに送出する制御手段と、
上記送出されたコマンドをデコードし、コマンドの内容に応じて各軸の電動アクチュエータを駆動する駆動手段とを備えた
ことを特徴とする多軸位置決め装置。
【請求項３】
コマンドメモリから読み出されたコマンドを保持するマスタコマンド・シフトレジスタと、
各軸の電動アクチュエータに対応して設けられ、各軸の駆動手段へのコマンドを保持するスレーブコマンド・シフトレジスタと、
マスタコマンド・シフトレジスタと各軸のスレーブコマンド・シフトレジスタとを直列に接続する信号ラインとを備え、
前記制御手段は、マスタコマンド・シフトレジスタにシフトクロックを供給して、マスタコマンド・シフトレジスタに保持されたコマンドを各軸のスレーブコマンド・シフトレジスタに送出する
ことを特徴とする請求項２の多軸位置決め装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、複数の電動アクチュエータの位置決めを行う多軸位置決め装置に関する。
【０００２】
【従来の技術】
複数の電動アクチュエータを設け、該複数の電動アクチュエータにパルス列を供給して、多軸位置決めする装置がロボット、数値制御装置、製図装置等の各種の技術分野で用いられる。
上記のように、パルス列によって、複数の電動アクチュエータの位置決めを行う場合、通常、軸数分のパルス列発生回路と軸数分の駆動回路を設けておき、位置設定装置からの位置指令によって各パルス列発生回路から所定のパルス列を発生させて各電動アクチュエータを位置決めしている。
【０００３】
【発明が解決しようとする課題】
上記した従来技術は、電動アクチュエータの軸数分のパルス列発生回路を必要とし、軸数が増大すると、それに応じてパルス列発生回路の数も多くなるといった問題がある。
本発明は上記した従来技術の問題点を考慮してなされたものであって、本発明の目的は、単一のコマンド生成手段と、このコマンドを各軸の電動アクチュエータに送出する単一の制御手段とにより複数の電動アクチュエータへのパルス列発生を行い、多軸の電動アクチュエータを位置決めすることができる多軸位置決め装置を提供することを目的とする。
【０００５】
【課題を解決するための手段】
前記課題を解決するため、本発明の請求項１の発明は、多軸を駆動する複数の電動アクチュエータと、上記複数の電動アクチュエータに対応して設けられ、各軸の電動アクチュエータの送り量を設定する送り量計数値メモリと、電動アクチュエータを加速、減速、停止または定速運転させるためのコマンド列を記憶したコマンドパターンメモリと、上記各軸の電動アクチュエータが現在、加速、減速、停止もしくは定速運転中であるかと、送り量計数値メモリの計数値に応じて、所定の周期で上記コマンドパターンメモリからの読み出しアドレスを制御するとともに、上記コマンドパターンメモリから全電動アクチュエータの軸数分に相当した回数、コマンドを読み出して、各軸の電動アクチュエータに送出し、各軸の電動アクチュエータが単位パルス駆動される毎に送り量計数値メモリから駆動パルスに相当した値を減算する制御手段と、上記送出されたコマンドをデコードし、コマンドの内容に応じて各軸の電動アクチュエータを駆動する駆動手段とから多軸位置決め装置を構成したものである。
【０００６】
本発明の請求項２の発明は、多軸を駆動する複数の電動アクチュエータと、上記複数の電動アクチュエータに対応して設けられ、各軸の電動アクチュエータの送り量を設定する送り量計数値メモリと、上記複数の電動アクチュエータに対応して設けられ、各軸の電動アクチュエータの減速開始送り量を設定する減速開始送り量計数値メモリと、各電動アクチュエータが現在、加速、減速、停止もしくは定速運転中であるかを記憶するコマンド生成管理フラグメモリと、電動アクチュエータを加速、減速、停止または、定速運転させるためのコマンド列を記憶したコマンドパターンメモリと、複数の電動アクチュエータに対応して設けられ、上記コマンドパターンメモリの読み出しアドレスを格納するポインタメモリと、各軸の電動アクチュエータのコマンドを格納するコマンドメモリと、上記各軸の電動アクチュエータのコマンド生成管理フラグメモリの内容と、送り量計数値メモリ、減速開始送り量計数値メモリの計数値に応じて、所定の周期で、上記コマンド生成管理フラグメモリの内容を書き換えるとともに、各電動アクチュエータのポインタメモリのアドレスを設定もしくは増減し、上記コマンドパターンメモリからポインタメモリが指定するアドレスのコマンドを読み出して上記コマンドメモリに格納し、各軸の電動アクチュエータが単位パルス駆動される毎に送り量計数値メモリから駆動パルスに相当した値を減算する処理手段と、全電動アクチュエータの軸数分に相当した回数、コマンドメモリから各軸の電動アクチュエータのコマンドを読み出して、各電動アクチュエータに送出する制御手段と、上記送出されたコマンドをデコードし、コマンドの内容に応じて各軸の電動アクチュエータを駆動する駆動手段とから多軸位置決め装置を構成したものである。
【０００８】
本発明の請求項３の発明は、請求項２の発明において、コマンドメモリから読み出されたコマンドを保持するマスタコマンド・シフトレジスタと、各軸の電動アクチュエータに対応して設けられ、各軸の駆動手段へのコマンドを保持するスレーブコマンド・シフトレジスタと、マスタコマンド・シフトレジスタと各軸のスレーブコマンド・シフトレジスタとを直列に接続する信号ラインとを設け、前記制御手段が、マスタコマンド・シフトレジスタにシフトクロックを供給して、マスタコマンド・シフトレジスタに保持されたコマンドを各軸のスレーブコマンド・シフトレジスタに送出するように構成したものである。
【０００９】
【作用】
一般にパルス列により電動アクチュエータの位置決めを行う場合、電動アクチュエータの位置は、電動アクチュエータの駆動回路に入力するパルス列のパルス数により定まり、また、電動アクチュエータの送り速度はパルス列のパルス周波数により定まる。
【００１０】
ここで、パルス周波数はパルス周期の逆数であり、パルス周期を制御することでも、電動アクチュエータの送り速度を制御することができる。
そこで、一定時間Ｔ毎に「パルスを発生しない」コマンドと、「パルスを発生する」コマンドのどちらかを実行するようにしておき、ｎ回の「パルスを発生しない」コマンドと、一回の「パルスを発生する」コマンドを繰り返し実行することにより、パルス周期（ｎ＋１）・Ｔのパルス列を発生させることができる。
【００１１】
そして、このパルス列を電動アクチュエータの駆動回路に入力し、上記ｎの値を変更することにより、電動アクチュエータの送り速度を制御することができる。また、時間Ｔの間に複数の電動アクチュエータに対してコマンドを生成するようにすれば、複数の電動アクチュエータの送り速度を制御することができる。
すなわち、位置決めを行うためのパルス列はコマンドとして符号化できるので、複数の電動アクチュエータ分のコマンドを生成する手段と、このコマンドを全電動アクチュエータの軸数分に相当した回数、各電動アクチュエータに送出する手段と、一定時間毎にコマンドをパルス列に再生する手段を設けることにより、電動アクチュエータの軸数分のパルス列発生回路を設けることなく複数の電動アクチュエータに位置決めを行うことができる。
【００１２】
本発明は上記原理に基づき多軸位置決め装置を構成したものであり、本発明の請求項１，２の発明においては、上記のように、所定の周期で、各軸の電動アクチュエータが加速、減速、停止もしくは定速運転中であるかを判別し、各軸の電動アクチュエータの運転モードに応じて「パルスを発生するコマンド」もしくは「パルスを発生しないコマンド」を生成し、生成されたコマンドを全電動アクチュエータの軸数分に相当した回数、生成されたコマンドを読み出して、各軸の電動アクチュエータに送出し、コマンドをデコードし、コマンドの内容に応じて各軸の電動アクチュエータを駆動するようにしたので、単一のコマンド生成手段と単一のコマンド送出手段とにより複数の電動アクチュエータの位置決めを実現することができる。
【００１３】
また、電動アクチュエータを加速、減速、停止または定速運転させるためのコマンド列を記憶したコマンドパターンメモリを設け、該コマンドパターン・メモリからコマンド列を読み出して、各軸の電動アクチュエータに送出することにより、電動アクチュエータへ供給されるコマンド列を容易に生成することができる。
【００１５】
また、請求項３の発明のように、マスタコマンド・シフトレジスタと、スレーブコマンド・シフトレジスタと、マスタコマンド・シフトレジスタと各軸のスレーブコマンド・シフトレジスタとを直列に接続する信号ラインとを設け、マスタコマンド・シフトレジスタにシフトクロックを供給して、マスタコマンド・シフトレジスタに保持されたコマンドを各軸のスレーブコマンド・シフトレジスタに送出することにより、簡単な構成の回路で、各軸の電動アクチュエータにコマンドを送出することができる。
【００１６】
【実施例】
図１は本発明の実施例のブロック図である。同図において、１はマイクロコンピュータ等の処理装置であり、プログラムメモリ１−１に記憶されるプログラムを実行して、多軸電動アクチュエータを制御する。
２はコマンド生成軸番号レジスタであり、後述するように該レジスタ２で指示される軸番号のコマンドが生成される。
【００１７】
３はデータメモリであり、コマンド生成管理フラグメモリ３−１、送り量計数値メモリ３−２、減速開始送り量計数値メモリ３−３、コマンドパターン・ポインタ・メモリ３−４から構成されており、上記コマンド生成管理フラグメモリ３−１、送り量計数値メモリ３−２、減速開始送り量計数値メモリ３−３、コマンドパターン・ポインタメモリ３−４は各軸の電動アクチュエータにそれぞれ対応した格納領域を備えている。
【００１８】
送り量計数値メモリ３−２は各軸の電動アクチュエータの全送り量を格納するメモリであり、各軸分の格納領域を備え、電動アクチュエータが駆動される毎に送り量計数値メモリ３−２の計数値が減算されていき、送り量計数値メモリ３−２の計数値が０になると電動アクチュエータは停止する。したがって、上記送り量計数値メモリ３−２に各軸の電動アクチュエータの送り量を設定しておくことにより、各軸の電動アクチュエータを所望量駆動することができる。
【００１９】
また、減速開始送り量計数値メモリ３−３は電動アクチュエータの減速開始送り量を格納するメモリであり、全送り量から減速時送り量を減じた送り量、または、全送り量の１／２の送り量が各軸に対応した格納領域に格納され、電動アクチュエータが駆動される毎に減速開始送り量計数値メモリ３−２の計数値が減算されていき、減速開始送り量計数値メモリ３−２の計数値が０になると、電動アクチュエータは減速を開始する。
【００２０】
４はコマンドパターン・メモリであり、コマンドパターン・メモリ４には電動アクチュエータを加減速／定速運転、およびその停止を維持するコマンドパターンが記憶されている。５はファーストイン・ファーストアウト機能を持つコマンドメモリ、６は分配制御回路であり、コマンド・ストローブ信号ＳＴＢとシフトクロックＳＣＫを出力する。
【００２１】
７はマスタコマンド・シフトレジスタであって、シフトクロックＳＣＫが入力されるとコマンドメモリ５に記憶されたコマンドコードの直列信号ＳＤ１を出力する。
８−１，８−２，…，８−ｎはそれぞれスレーブコマンド・シフトレジスタである。
【００２２】
スレーブコマンド・シフトレジスタ８−１は上記直列信号ＳＤ１が入力される毎に順次シフトして出力側に直列信号ＳＤ２を出力する。以下同様に、スレーブコマンド・シフトレジスタ８−ｎ以外のスレーブコマンド・シフトレジスタ８−２，８−３，…８−ｎ−１はそれぞれ直列信号ＳＤ２，…，ＳＤｎ−１が入力される毎にシフトして、直列信号ＳＤ３，…ＳＤｎを出力する。
【００２３】
９−１，９−２，…，９−ｎはそれぞれコマンド・デコーダ、１０−１，１０−２，…，１０−ｎはそれぞれ電動アクチュエータの駆動回路、Ａ−１，Ａ−２，…，Ａ−ｎはそれぞれ電動アクチュエータである。なお、電動アクチュエータの軸番号は、電動アクチュエータＡ−１が軸番号ｎ−１、Ａ−２が軸番号ｎ−２，…，Ａ−ｎが軸番号０に対応する。
【００２４】
図２は本実施例におけるコマンドコードを示す図であり、コマンドＮは「パルスを発生しない」コマンド、コマンドＲは「パルス発生を繰り返す」コマンド、コマンドＰは「パルスを発生する」コマンドであり、前記コマンド・デコーダ９−１，９−２，…，９−ｎは、コマンドＰが入力されると電動アクチュエータを駆動するパルスを出力し、コマンドＮ，Ｒが入力されたときは電動アクチュエータ駆動するパルスを出力しない。
【００２５】
図３は図１に示したコマンドパターン・メモリ４が記憶しているコマンドコード列の一例を示す図であり、同図中のＰＰ１，ＰＰ２，ＰＰ３はコマンドパターン・メモリ４のアドレスを示し、それぞれコマンドコード列ＣＰ１，ＣＰ２およびＣＰ３の先頭アドレスである。
同図において、領域ＣＰ１のコマンドは電動アクチュエータが停止中に読み出されるコマンドであり、単一のコマンドＮ（駆動パルスを出力しないコマンド）から構成される。
【００２６】
領域ＣＰ２のコマンド列は電動アクチュエータが加速中／減速中に読み出されるコマンド列であり、アドレスが増加するにしたがってコマンドＰ（駆動パルスを出力するコマンド）の割合が増加する。そして、加速時には、領域ＣＰ２のコマンドが昇順（上から下の方向）に順次読み出されて電動アクチュエータが加速され、減速時には、降順（下から上の方向）にコマンドが読み出されて電動アクチュエータは減速される。
【００２７】
領域ＣＰ３のコマンド列は電動アクチュエータが定速運転中に読み出されるコマンド列であり、単一の「パルスを発生する」コマンドＰを含むコマンド列からなり、定速運転中は、アドレスＰＰ３からコマンドＰ→コマンドＮ→コマンドＲ→コマンドＰ（アドレスＰＰ３）→コマンドＮ→，…の順序でコマンドが読み出され、電動アクチュエータは定速で駆動される。
【００２８】
図４は電動アクチュエータの動作とコマンドコードとの関係を説明する図であり、例えば、電動アクチュエータが停止状態から加速して定速運転状態に移行する場合には、同図に示すように、領域ＣＰ１→領域ＣＰ２→領域ＣＰ３のコマンド列が順次読み出され実行され、また、電動アクチュエータが定速運転状態から減速して停止状態に移行する場合には、領域ＣＰ３→領域ＣＰ２→領域ＣＰ１のコマンド列が順次読み出され実行される。
【００２９】
さらに、電動アクチュエータが停止状態から加速した後、減速して停止する場合には、同図に示すように領域ＣＰ１→ＣＰ２→ＣＰ１のコマンド列が順次読み出され実行される。
なお、図４は一軸の電動アクチュエータの動作を示しているが、実際には後述するように、複数軸の電動アクチュエータにコマンドコードが一つずつ送出（以下では分配ともいう）され、各軸の電動アクチュエータは、各軸のコマンド生成管理フラグメモリ３−１、送り量計数値メモリ３−２、減速開始送り量計数値メモリ３−３、コマンドパターン・ポインタメモリ３−４の内容に応じて、それぞれ停止、加速、減速、定速運転を行う。
【００３０】
図５，図６は本実施例のコマンド生成フェイズにおける処理を示すフローチャートであり、同図を参照しながら本実施例の動作を説明する。
本実施例の多軸位置決め装置は、一定の周期Ｔで起動されるコマンド生成フェイズにおいて、各軸の電動アクチュエータへのコマンド（前記したコマンドＮ，Ｒ，またはＰ）を生成して前記コマンドメモリ５に格納し、次にコマンド分配フェイズにおいて、コマンドメモリ５に格納されたコマンドを各軸の電動アクチュエータのスレーブコマンド・シフトレジスタ８−１〜８−ｎに分配する。
【００３１】
そして、スレーブコマンド・シフトレジスタ８−１〜８−ｎに保持されたコマンドコードをコマンド・デコーダ９−１〜９−１ｎでデコードして、コマンドコードの内容に応じて各軸の電動アクチュエータＡ−１〜Ａ−ｎを動作させる。
なお、上記電動アクチュエータの動作は、コマンド生成フェイズと同時に行われ、コマンドが生成されてコマンドメモリ５に格納されている間に、スレーブコマンド・シフトレジスタ８−１〜８−ｎに保持されたコマンドコードがデコードされて各電動アクチュエータＡ−１〜Ａ−ｎが動作する。
【００３２】
以下、各フェイズにおける動作を説明する。
（１）  コマンド生成フェイズ
送り量計数値メモリ３−２、減速開始送り量計数値メモリ３−３に、各軸の電動アクチュエータの送り量および減速を開始する送り量がセットされる。
処理装置１は、一定時間毎に入力される割り込み等により、プログラムメモリ１−１に記憶されるプログラムに従い、コマンド生成フェイズを実行する。
【００３３】
コマンド生成フェイズにおいて、まずコマンド生成軸レジスタ２が保持する電動アクチュエータの軸番号をｋ＝０にセットする（図５のステップＳ１）。
次に、コマンド生成管理フラグメモリ３−１の内、軸番号ｋ＝０のコマンド生成管理フラグメモリの内容を検査し（ステップＳ２）、コマンド生成管理フラグの内容に応じて次のような処理を行う。
（ａ）  コマンド生成管理フラグの内容が停止中の場合
軸番号０の電動アクチュエータが停止中のときは、送り量計数値メモリ３−２に格納された該電動アクチュエータの送り量計数値が０であるか否かを判別する（ステップＳ３）。
【００３４】
送り量計数値が０の場合には、図６のステップＳ１３にいき、コマンドパターン・ポインタメモリ３−４により指定されるコマンドパターン・メモリ４のアドレスからコマンドコードを読み出し、コマンドメモリ５に格納する。
電動アクチュエータが停止中の場合には、後述するように、コマンドパターン・ポインタメモリ３−４はコマンドパターン・メモリ４のアドレスＰＰ１（図３参照）をポイントしており、送り量計数値が０のとき電動アクチュエータは停止状態を維持する。
【００３５】
また、上記電動アクチュエータの送り量計数値が０でない場合には、上記電動アクチュエータのコマンド生成管理フラグを停止中から加速・定速中に変更し（ステップＳ４）、上記電動アクチュエータに対応したコマンドパターン・ポインタメモリ３−４のポインタ値を、加減速パターンの先頭アドレスＰＰ２（図３参照）にする。そして、図６のステップＳ１３にいき、コマンドパターン・ポインタメモリ３−４により指定されるコマンドパターン・メモリ４のアドレス（ＰＰ２）からコマンドコードを読み出し、コマンドメモリ５に格納する。
【００３６】
すなわち、軸番号０の電動アクチュエータが停止中の際、送り量計数値メモリ３−２の送り量計数値が０以外の値になった場合は、上記電動アクチュエータを加速状態に移行させるため、コマンドパターン・ポインタメモリ３−４のポインタ値を加減速パターンの先頭アドレスＰＰ２にセットし、以後、後述するように減速開始送り量計数値が０になるまで、コマンドパターン・ポインタメモリ３−４のアドレス値を＋１ずつ加算していき（定速運転中は前記したように領域ＣＰ３内を循環する）、上記電動アクチュエータを加速・定速運転する。
(b) コマンド生成管理フラグの内容が加速・定速中の場合
減速開始送り量計数値メモリ３−３に格納された軸番号０の電動アクチュエータの減速開始送り量計数値が０であるか否かを判別し（ステップＳ６）、減速開始送り量計数値が０でない場合には、図６のステップＳ１３にいき、コマンドパターン・ポインタメモリ３−４により指定されるコマンドパターン・メモリ４のアドレスからコマンドコードを読み出し、コマンドメモリ５に格納する。
【００３７】
すなわち、コマンド生成管理フラグの内容が加速・定速中でかつ減速開始送り量計数値が０でない場合には、後述するように、コマンドパターン・ポインタメモリ３−４はコマンドパターン・メモリ４の領域ＣＰ２もしくは領域ＣＰ３のどれかのアドレスをポイントしており、軸番号０の電動アクチュエータは加速・定速運転を継続する。
【００３８】
また、上記電動アクチュエータの減速開始送り量計数値が０の場合には、上記電動アクチュエータのコマンド生成管理フラグを加速・定速中から減速中に変更するとともに（ステップＳ７）、コマンドパターン・ポインタメモリ３−４から１を減じ（ステップＳ８）、図６のステップＳ１３にいき、コマンドパターン・ポインタメモリ３−４により指定されるコマンドパターン・メモリ４のアドレスからコマンドコードを読み出し、コマンドメモリ５に格納する。
【００３９】
そして、以後、後述するように送り量計数値メモリ３−２に格納された該電動アクチュエータの送り量計数値が０になるまで、コマンドパターン・ポインタメモリ３−４のアドレス値を−１ずつ減算していき、上記電動アクチュエータを減速させる。
（ｃ）  コマンド生成管理フラグの内容が減速中の場合
送り量計数値メモリ３−２に格納された軸番号０の電動アクチュエータの送り量計数値が０であるか否かを判別し（ステップＳ９）、送り量計数値が０でない場合には、図６のステップＳ１３にいき、コマンドパターン・ポインタメモリ３−４により指定されるコマンドパターン・メモリ４のアドレスからコマンドコードを読み出し、コマンドメモリ５に格納する。
【００４０】
軸番号０の電動アクチュエータが減速中でかつ送り量計数値が０でない場合には、後述するように、コマンドパターン・ポインタメモリ３−４はコマンドパターン・メモリ４の領域ＣＰ２のどれかのアドレスをポンイトしており、上記軸番号０の電動アクチュエータは減速動作を継続する。
また、上記電動アクチュエータの送り量計数値が０の場合には、上記電動アクチュエータのコマンド生成管理フラグを減速中から停止中に変更し（ステップＳ１０）、上記電動アクチュエータに対応したコマンドパターン・ポインタメモリ３−４のポインタ値を、停止維持のための先頭アドレスＰＰ１（図３参照）にする（ステップＳ１１）。
【００４１】
そして、図６のステップＳ１３にいき、コマンドパターン・ポインタメモリ３−４により指定されるコマンドパターン・メモリ４のアドレス（ＰＰ１）からコマンドコードを読み出し、コマンドメモリ５に格納する。
すなわち、軸番号０の電動アクチュエータが減速中に、送り量計数値メモリ３−２の送り量計数値が０になった場合は、上記電動アクチュエータを停止状態に維持させるため、コマンドパターン・ポインタメモリ３−４のポインタ値をアドレスＰＰ１にセットし、以後、送り量計数値が０以外の値になるまで、上記電動アクチュエータの停止を維持する。
【００４２】
以上のように、コマンド生成管理フラグの内容、送り量計数値、減速開始送り量計数値に応じて、コマンド生成管理フラグの内容を書き換え、コマンドパターン・メモリ４からコマンドを読み出してコマンドメモリ５に格納した後、図６のステップＳ１４に行き、再度、軸番号０のコマンド生成管理フラグの内容を検査する。そして、コマンド生成管理フラグの内容に応じて次のような処理を行う。
（ｄ）  コマンド生成管理フラグが減速中のとき
軸番号０のコマンド生成管理フラグの内容が減速中の場合には、ステップＳ１５に行き、コマンドパターン・メモリ４から読み出されたコマンドコードを調べる（この場合、コマンドコードは図３の領域ＣＰ２から読み出される）。
【００４３】
そして、コマンドコードがＮの場合には、コマンドパターン・ポインタメモリ３−４のポインタ値を−１する（ステップＳ１７）。また、コマンドコードがＰの場合には、コマンドパターン・ポインタメモリ３−４のポインタ値を−１し、送り量計数値メモリ３−２の計数値を−１する（ステップＳ１６）。
（ｅ）  コマンド生成管理フラグが加速・定速中のとき
軸番号０のコマンド生成管理フラグの内容が加速・定速中の場合には、ステップＳ１８に行き、コマンドパターン・メモリ４から読み出されたコマンドコードを調べる（この場合、コマンドコードは図３の領域ＣＰ２，ＣＰ３から読み出される）。
【００４４】
そして、コマンドコードがＮの場合には、コマンドパターン・ポインタメモリ３−４のポインタ値を＋１する（ステップＳ１９）。また、コマンドコードがＲの場合には、コマンドパターン・ポインタメモリ３−４のポインタ値をＰＰ３（定速中の先頭アドレス）にする（ステップＳ２０）。
コマンドコードがＰの場合には、コマンドパターン・ポインタメモリ３−４のポインタ値を＋１し、送り量計数値メモリ３−２の計数値を−１し、さらに、減速開始送り量計数値メモリ３−３の計数値を−１する（ステップＳ２１）。
（ｆ）  コマンド生成管理フラグが停止中のとき
コマンドパターン・ポインタメモリ３−４のポインタ値、送り量計数値メモリ３−２の計数値、減速開始送り量計数値メモリ３−３の計数値を変更しない。
【００４５】
以上のように、コマンド生成管理フラグの内容と読み出したコマンドコードに応じて、コマンドパターン・ポインタメモリ３−４のポインタ値、送り量計数値メモリ３−２の計数値、減速開始送り量計数値メモリ３−３の計数値に１を加減算したのち、ステップＳ２２に行き、軸番号ｋが電動アクチュエータの軸数の上限値ｎ−１を越えたか否かを判別する。
【００４６】
そして、軸番号ｋが電動アクチュエータの軸数の上限値ｎ−１に達していない場合には、図５のステップＳ１２に行き、軸番号ｋに１を加えて、図５のステップＳ２に戻って、ｋ＝ｎ−１になるまで上記処理を繰り返す。
軸番号ｋが電動アクチュエータの軸数の上限値ｎ−１を越えると、コマンド生成軸番号レジスタ２をクリアして（ステップＳ２３）、コマンド生成フェイズを終了する。
【００４７】
その結果、軸番号０〜ｎ−１の電動アクチュエータについて、コマンドパターン・メモリ４からコマンドコードが順番に読み出されコマンドメモリ５に格納される。コマンドメモリ５は前記したようにファーストイン・ファーストアウトメモリであり、各軸番号のコマンドコードは軸番号順に格納される。
（２）  コマンド分配フェイズ
コマンド生成フェイズにおいて、各軸のコマンドコードがコマンドメモリ５に格納されると、分配制御回路６はコマンドコードをコマンドメモリ５から読み出す。
【００４８】
コマンドメモリ５は上記したようにファーストイン・ファーストアウト・メモリであり、コマンドコードは格納された順に読み出され、マスタコマンド・シフトレジスタ７に保持される。
マスタコマンド・シフトレジスタ７に軸番号０のコマンドコードが保持されると、分配制御回路６はコマンドコードのビット数と同数のシフトクロック信号ＳＣＫを発生する。
【００４９】
シフトクロック信号ＳＣＫはマスタコマンド・シフトレジスタ７と各スレーブコマンド・シフトレジスタ８−１〜８−ｎに入力されており、シフトクロックＳＣＫに同期して、マスタコマンド・シフトレジスタ７と各スレーブコマンド・シフトレジスタ８−１〜８−ｎでシフト動作が行われるので、軸番号０のコマンドコードは直列信号ＳＤ１として送出されて、スレーブコマンド・シフトレジスタ８−１に保持される。
【００５０】
上記のように、分配制御回路６が全電動アクチュエータの軸数分に相当した回数、コマンドコードの読み出しとシフトクロックＳＣＫの発生を行うと、各スレーブコマンド・シフトレジスタ８−１〜８−ｎには、それぞれの軸番号ｎ−１〜０の電動アクチュエータのコマンドコードが保持される。
（３）  電動アクチュエータの駆動
コマンド生成フェイズの実行開始時に、処理装置１が分配制御回路６を介してコマンドストローブ信号ＳＴＢを出力すると、各コマンドデコーダ９−１〜９−ｎはコマンドストローブ信号ＳＴＢに同期して、スレーブコマンド・シフトレジスタ８−１〜８−ｎが保持しているコマンドコードをデコードする。
【００５１】
コマンドコードが「パルスを発生する」コマンドＰの場合には、パルスが駆動回路１０−１〜１０−ｎに出力され、電動アクチュエータは単位パルス分駆動される。
コマンドコードが「パルス発生しない」コマンドＮあるいは「パルス発生を繰り返す」コマンドＲの場合には、パルスは発生せず、電動アクチュエータは駆動されない。
【００５２】
上記動作を時間Ｔ毎に繰り返すことにより、各電動アクチュエータＡ−１〜Ａ−ｎはコマンドコードに応じた動作を行い、電動アクチュエータＡ−１〜Ａ−ｎの位置決めが実現される。
なお、本実施例では１方向の位置決めについて説明しているが、コマンド生成管理フラグを正方向用、逆方向用にそれぞれ設け、さらに「パルスを発生する」コマンドの代わりに、「正方向のパルスを発生する」コマンドと「逆方向のパルスを発生する」コマンドを設けることにより、両方向の位置決めを実現することができる。
【００５３】
【発明の効果】
以上説明したように、本発明においては、以下の効果を得ることができる。
（１）単一のコマンドを生成する手段と、単一のコマンドを分配する手段を設け、所定の周期で、各軸の電動アクチュエータが加速、減速、停止もしくは定速運転中であるかを判別し、加速、減速、停止もしくは定速運転中であるかに応じて「パルスを発生するコマンド」もしくは「パルスを発生しないコマンド」を生成し、生成されたコマンドを各軸の電動アクチュエータに分配して、コマンドをデコードし、コマンドの内容に応じて各軸の電動アクチュエータを駆動するようにしたので、単一のコマンド生成手段と単一のコマンド分配手段とにより複数の電動アクチュエータの位置決めを実現することができる。
このため、電動アクチュエータの軸数が増大しても、コマンド生成手段とコマンド分配手段とを構成する回路を増大させる必要がなく、１軸あたりの位置決め装置の実装スペースと費用を低減化することができる。
（２）電動アクチュエータを加速、減速、停止および／または定速運転させるためのコマンド列を記憶したコマンドパターンメモリを設け、該コマンドパターン・メモリからコマンド列を読み出して、各軸の電動アクチュエータに分配することにより、電動アクチュエータへ供給されるコマンド列を容易に生成することができる。
（３）各軸のコマンドをコマンドメモリに格納している間に、各軸の電動アクチュエータを駆動することにより、コマンドの分配周期を短縮することができ、各軸の電動アクチュエータの駆動周期を短くすることができる。
（４）コマンドメモリとしてファーストイン・ファーストアウト・メモリを用いることにより、生成されたコマンド順に各軸の電動アクチュエータにコマンドを分配することができ、コマンドを生成するフェイズとコマンドを分配するフェイズを独立して動作させることができるとともに、コマンドを分配する手段の構成を簡単化することができる。
（５）マスタコマンド・シフトレジスタと、スレーブコマンド・シフトレジスタと、マスタコマンド・シフトレジスタと各軸のスレーブコマンド・シフトレジスタとを直列に接続する信号ラインとを設け、マスタコマンド・シフトレジスタにシフトクロックを供給して、マスタコマンド・シフトレジスタに保持されたコマンドを各軸のスレーブコマンド・シフトレジスタに分配することにより、簡単な構成の回路で、各軸の電動アクチュエータにコマンドを分配することができる。
【００５４】
このため、電動アクチュエータの軸数が増大しても、コマンド生成手段とコマンド分配手段とを構成する回路を増大させる必要がなく、１軸あたりの位置決め装置の実装スペースと費用を低減化することができる。
（２）電動アクチュエータを加速、減速、停止および／または定速運転させるためのコマンド列を記憶したコマンドパターンメモリを設け、該コマンドパターン・メモリからコマンド列を読み出して、各軸の電動アクチュエータに分配することにより、電動アクチュエータへ供給されるコマンド列を容易に生成することができる。
（３）全軸の電動アクチュエータのコマンドをコマンドメモリに格納した後に、コマンドメモリに格納されたコマンドを各軸に分配し、各軸のコマンドをコマンドメモリに格納している間に、各軸の電動アクチュエータを駆動することにより、コマンドの分配周期を短縮することができ、各軸の電動アクチュエータの駆動周期を短くすることができる。
（４）コマンドメモリとしてファーストイン・ファーストアウト・メモリを用いることにより、生成されたコマンド順に各軸の電動アクチュエータにコマンドを分配することができ、コマンドを生成するフェイズとコマンドを分配するフェイズを独立して動作させることができるとともに、コマンドを分配する手段の構成を簡単化することができる。
（５）マスタコマンド・シフトレジスタと、スレーブコマンド・シフトレジスタと、マスタコマンド・シフトレジスタと各軸のスレーブコマンド・シフトレジスタとを直列に接続する信号ラインとを設け、マスタコマンド・シフトレジスタにシフトクロックを供給して、マスタコマンド・シフトレジスタに保持されたコマンドを各軸のスレーブコマンド・シフトレジスタに分配することにより、簡単な構成の回路で、各軸の電動アクチュエータにコマンドを分配することができる。
【図面の簡単な説明】
【図１】本発明の１実施例の多軸位置決め装置のブロック図である。
【図２】本発明の実施例におけるコマンドコードの一例を示す図である。
【図３】本実施例におけるコマンド列の一例を示す図である。
【図４】コマンド列と電動アクチュエータの動作の関係を示す図である。
【図５】コマンド生成フェイズにおける処理内容を示すフローチャートである。
【図６】コマンド生成フェイズにおける処理内容を示すフローチャートである。
【符号の説明】
１      処理装置
１ａ    プログラムメモリ
２      コマンド生成軸番号レジスタ
３      データメモリ
３−１  コマンド生成管理フラグメモリ
３−２  送り量計数値メモリ
３−３  減速開始送り量計数値メモリ
３−４  コマンドパターン・ポインタメモリ
４      コマンドパターン・メモリ
５      コマンドメモリ
６      分配制御回路
７      マスタコマンド・シフトレジスタ
８−１，…，８−ｎ        スレーブコマンド・シフトレジスタ
９−１，…，９−ｎ        コマンドデコーダ
１０−１，…，１０−ｎ    駆動回路
Ａ−１，…，Ａ−ｎ        電動アクチュエータ
ＳＴＢ  コマンドストローブ信号
ＳＣＫ  シフトクロック
ＳＤ１，…，ＳＤｎ          直列信号
【図１】
0003604189.tif 000002
【図２】
0003604189.tif 000003
【図３】
0003604189.tif 000004
【図４】
0003604189.tif 000005
【図５】
0003604189.tif 000006
【図６】
0003604189.tif 000007