(57)【特許請求の範囲】
【請求項１】
ｎ（ｎは４以上の正の整数）本の軸を個別に駆動制御するｎ台のステッピングモータをそれぞれ個別に制御するためのｎ台のドライブ回路のうちの１台以上の前記ドライバ回路と、通信機能を有し且つ前記１台以上のドライブ回路に駆動信号を与える中央演算処理装置とを備え、マスター局となる上位コントローラからシリアル通信により送信されてくる動作指令を受信すると、該動作指令に基づいて状態確認処理及びドライブ処理を実行し、前記動作指令に応じた成功応答を報知する成功応答信号を生成するｍ（ｎ以下の正の整数）台のコントロールユニットと、
前記ｍ台のコントロールユニットのｍ台の前記中央演算処理装置を並列接続して、ｍ台の前記中央演算処理装置を前記上位コントローラからの動作指令が送信されるバスにシリアル通信可能に接続するスレーブ局内通信回路とを備えて構成されて、前記マスター局に対するスレーブ局となる多軸駆動用ドライバであって、
前記ｍ台の中央演算処理装置は、それぞれ入力された前記動作指令を判定する判定ルーチンとして同じものを有しており、
前記スレーブ局内通信回路は、前記上位コントローラと前記ｍ台のコントロールユニットの前記ｍ台の中央演算処理装置との間での送受信を可能にするように構成されており、
前記ｍ台の中央演算処理装置のうち予め定めた１台の前記中央演算処理装置が前記他のｍ−１台の前記中央演算処理装置が制御する軸の有無を確認する確認装置と定められ、
前記上位コントローラから１軸のみについての前記動作指令が送信されてきたときには、前記１軸を制御する１台の前記中央演算処理装置が前記成功応答信号を前記上位コントローラに送信し、
前記上位コントローラから複数軸についての動作指令が送信されてきたときには、前記確認装置として機能する前記１台の前記中央演算処理装置が他の前記中央演算処理装置が制御する軸があることを確認することを条件として他の前記中央演算処理装置を代表して前記成功応答信号を前記上位コントローラに送信することを特徴とする多軸駆動用ドライバ。
【請求項２】
前記複数軸についての動作指令に前記確認装置として機能する前記１台の前記中央演算処理装置への指令が含まれているときには、該１台の中央演算処理装置が前記成功応答信号を前記上位コントローラに送信し、
前記複数軸についての動作指令に前記確認装置として機能する前記１台の中央演算処理装置への指令が含まれていないときには、前記他の中央演算処理装置のいずれか１台でも制御する軸があることを前記１台の中央演算処理装置が確認してから前記成功応答信号を前記上位コントローラに送信することを特徴とする請求項１に記載の多軸駆動用ドライバ。
【請求項３】
１台の前記中央演算処理装置が２台の前記ドライバ回路に前記駆動信号をそれぞれ与えるように構成されている請求項１に記載の多軸駆動用ドライバ。
【請求項４】
前記スレーブ局内通信回路は、１台以上の新たなコントロールユニットが後から接続可能に構成されている請求項１に記載の多軸駆動用ドライバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の軸を複数のステッピングモータで駆動するための多軸駆動用ドライバに関するものである。
【背景技術】
【０００２】
特開平１１−２９９２９１号公報（特許文献１）には、上位コントローラとシリアル通信とを用いて信号の送受信を行う多軸モータ制御装置が開示されている。この装置では、上位コントローラからの指令に基づき全軸分の位置ループ処理及び速度ループ処理を含む制御を行う１台のマルチドライブコントロールユニットを設けている。そして各軸のモータに対応して、マルチドライブコントロールユニットからの電流指令に基づき電流ループ処理及びモータの駆動を含む処理を行う複数のサーボアンプユニットを設けている。
【０００３】
また従来、多軸駆動ドライバを構成する場合には、一つのドライバに対して１軸もしくは２軸のコントロールユニットまたはステッピングドライバ（スレーブ局）を並列に接続して、多軸として制御していた。
【特許文献１】特開平１１−２９９２９１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、前者の従来技術のようにマルチドライブコントロールユニットを設けても、信号の処理に時間がかかる問題が生じる。
【０００５】
また後者の従来技術のように、１軸または２軸に対して個別に動作するコントロールユニットを設けてこれらをスレーブ局とした場合には、設置スペースを多くとってしまう問題、複数軸分のスレーブアドレス番号を用いる必要がある問題、そして各軸の動作開始タイミングにズレが生じてしまう問題があった。
【０００６】
本発明の目的は、多軸駆動用ドライバを一つのスレーブ局とすることができ、また全てのコントロールユニットに対して同時に動作指令を与えることができ、しかも状態確認をすることができる多軸駆動用ドライバを提供することにある。
【課題を解決するための手段】
【０００７】
本発明の多軸駆動用ドライバは、ｎ（ｎは４以上の正の整数）本の軸を個別に駆動制御するｎ台のステッピングモータをそれぞれ個別に制御するものである。本発明の多軸駆動用ドライバは、ｍ（ｎ以下の正の整数）台のコントロールユニットと、スレーブ局内通信回路とを備えている。ｍ台のコントロールユニットは、それぞれｎ本の軸を個別に駆動制御するｎ台のステッピングモータをそれぞれ個別に制御するためのｎ台のドライブ回路のうちの１台以上のドライバ回路と、通信機能を有し且つ１台以上のドライブ回路に駆動信号を与える中央演算処理装置とを備えている。そしてｍ台のコントロールユニットのｍ台の中央演算処理装置は、それぞれ入力された動作指令を判定する判定ルーチンとして同じものを有している。そしてｍ台の中央演算処理装置は、マスター局となる上位コントローラからシリアル通信により送信されてくる動作指令を受信すると、該動作指令に基づいて状態確認処理及びドライブ処理を実行し、動作指令に応じた成功応答を報知する成功応答信号を生成する機能を有する。そしてスレーブ局内通信回路は、ｍ台のコントロールユニットのｍ台の中央演算処理装置を並列接続して、ｍ台の中央演算処理装置を上位コントローラからの動作指令が送信されるバスにシリアル通信可能に接続する。本発明の多軸駆動用ドライバは、マスター局（上位コントローラ）に対するスレーブ局となるものである。
【０００８】
本発明の多軸駆動用ドライバでは、スレーブ局内通信回路が、並列接続されたｍ台の中央演算処理装置と上位コントローラとの間での送受信を可能にするように構成されている。そしてｍ台の中央演算処理装置のうち予め定めた１台の前記中央演算処理装置が他のｍ−１台の中央演算処理装置が制御する軸の有無を確認する確認装置と定めている。本発明では、上位コントローラから１軸のみについての動作指令が送信されてきたときには、１軸を制御する１台の中央演算処理装置が成功応答信号を上位コントローラに送信する。また上位コントローラから複数軸についての動作指令が送信されてきたときには、確認装置として機能する１台の中央演算処理装置が他の中央演算処理装置を代表して成功応答信号を上位コントローラに送信する。これは、ｍ台の中央演算処理装置は、それぞれ入力された動作指令を判定する判定ルーチンとして同じものを有しているため、確認装置として機能する１台の中央演算処理装置が動作指令の判定を行えば、他の中央演算処理装置でも動作指令の判定を行ったと推定できるためである。
【０００９】
本発明では、上位コントローラから複数軸についての動作指令が送信されてきたときには、スレーブ局内通信回路を通して各コントロールユニットに同時に動作指令がそれぞれ与える。この場合において、各コントロールユニットは成功応答信号を個別に上位コントローラに送信することはない。本発明では、この場合に、確認装置として機能する１台の中央演算処理装置が、上位コントローラから動作指令が送信されたときに、他の中央演算処理装置を代表して成功応答信号を上位コントローラに返信する。また上位コントローラから１軸のみについての動作指令が送信されてきたときには、確認装置として機能する１台の中央演算処理装置による返信に固執せずに、その１軸を制御する１台の中央演算処理装置が成功応答信号を上位コントローラに送信する。このように動作指令を同時に各コントロールユニットに与え、また確認装置として機能する１台の中央演算処理装置が他を代表して成功応答信号を上位コントローラに返信し、さらに１軸だけを制御する場合には、その１軸を制御する１台の中央演算処理装置から返信をするように構成すると、各軸の制御応答時間を従来よりも短くすることができて、しかも上位コントローラとの間の通信速度を速めることができる。
【００１０】
なお本発明においては、例えば、複数軸についての動作指令に確認装置として機能する１台の中央演算処理装置への指令が含まれているときには、該１台の中央演算処理装置が成功応答信号を上位コントローラに送信する。そして複数軸についての動作指令に確認装置として機能する１台の中央演算処理装置への指令が含まれていないときには、他の中央演算処理装置のいずれか１台でも制御するまたは有効な軸があることを確認装置として機能する１台の中央演算処理装置が確認し、成功応答信号を上位コントローラに送信することができる。本願明細書において、制御するまたは有効な軸があることを確認装置として機能する１台の中央演算処理装置が確認することとは、物理的にモータに対して駆動する軸が接続されているかどうかの有り無しを接続設定指令、または動作指令実行時（図３）に確認装置として機能する中央演算処理装置が判断することを意味する。そして仮に、存在していない（または増設されていない）中央処理演算装置が制御の対象とする軸に対しての接続指令が動作指令に含まれている場合には、確認装置として機能する中央演算処理装置は、その接続指令の返信を強制的に「無し」の指令に置き換える機能を有している。このようにすると確認装置として機能する１台の中央演算処理装置への指令が動作指令に含まれていない場合でも、この１台の中央演算処理装置は、他の中央演算処理装置が制御する軸を有しているか否かを確認しているため、その確認していることに基づいて確認装置として機能する１台の中央演算処理装置が代表して成功応答信号を上位コントローラに返信すれば、制御応答時間を従来よりも短くすることができて、しかも上位コントローラとの間の通信速度を速めることができる。
【００１１】
１台の中央演算処理装置が、何台のドライバ回路に駆動信号を与えるのかは、中央演算処理装置の演算速度に応じて任意に定めることができる。しかし１台の中央演算処理装置で２台のドライバ回路に駆動信号をそれぞれ与えるように構成するのが、現状においては、総合的な信号処理の時間短縮に寄与している。
【００１２】
またスレーブ局内通信回路は、１台以上の新たなコントロールユニットを後から接続可能に構成するのが好ましい。このようにすることでコントロールユニットの増設を簡単に行うことができる。
【発明の効果】
【００１３】
本発明によれば、動作指令を同時に各コントロールユニットに与えることができ、また確認装置として機能する１台の中央演算処理装置が他を代表して成功応答信号を上位コントローラに返信し、さらに１軸だけを制御する場合には、その１軸を制御する１台の中央演算処理装置から返信をする。そのため各軸の制御応答時間を従来よりも短くすることができて、しかも上位コントローラとの間の通信速度を速めることができる利点が得られる。
【発明を実施するための最良の形態】
【００１４】
以下、図面を参照して本発明の多軸駆動用ドライバの実施の形態の一例を詳細に説明する。図１は、本実施の形態の多軸駆動用ドライバ１の構成を概略的に示すブロック図である。また図２は、図１の実施の形態を実現する場合に用いられるソフトウエアのアルゴリズムを示すフローチャートである。以下図１の説明と一緒に図２に示したフローチャートについても説明する。
【００１５】
図１の多軸駆動用ドライバ１は、制御の対象となる２０本［概念としてはｎ（ｎは４以上の正の整数）本］の軸（工作機械等のスピンドル）を個別に駆動制御する２０台のステッピングモータＭ１〜Ｍ２０をそれぞれ個別に制御するものである。多軸駆動用ドライバ１は、マスター局となる上位コントローラ３のスレーブ局となっている。この多軸駆動用ドライバは１、１０台［概念としてはｍ（ｎ以下の正の整数）台］のコントロールユニットＣＵ１〜ＣＵ１０と、スレーブ局内通信回路２とを備えている。１０台のコントロールユニットＣＵ１〜ＣＵ１０は、それぞれ２０本の軸を個別に駆動制御する２０台のステッピングモータＭ１〜Ｍ２０をそれぞれ個別に制御するための２０台のドライブ回路（図示せず）のうちから選択された２台のドライバ回路と、通信機能を有し且つ２台のドライブ回路に駆動信号を与える中央演算処理装置ＣＰＵ１〜ＣＰＵ１０とを備えている。なお図示しないが、コントロールユニットＣＵ１〜ＣＵ１０の内部に配置された２台ずつのドライブ回路は、パワートランジスタ等の電力素子を含んで構成されて、ステッピングモータの励磁巻線に励磁電流を供給する構造を有している。
【００１６】
１０台のコントロールユニットＣＵ１〜ＣＵ１０は、マスター局となる上位コントローラ３からバス５を介してシリアル通信により送信されてくる動作指令を受信すると（図２のステップＳＴ１〜ＳＴ３）、この動作指令に基づいて状態確認処理（受信パケット処理及び受信コマンド処理）を確認する。コントロールユニットＣＵ１〜ＣＵ１０のそれぞれは、動作指令に応じ処理を実行したことを即ち成功応答を報知する成功応答信号を生成する機能を有している。本実施の形態のスレーブ局内通信回路２は、上位コントローラ３が接続されたバス５に接続されて、１０台のコントロールユニットＣＵ１〜ＣＵ１０の１０台の中央演算処理装置ＣＰＵ１〜ＣＰＵ１０と上位コントローラ３との間でシリアル通信を可能にするように構成されている。
【００１７】
本実施の形態では、マスター局となる上位コントローラ３とバス５を介して接続される多軸駆動用ドライバ１との間のシリアル通信を、規格であるＲＳ−４８５通信を用いて行う。そのためスレーブ局内通信回路２は、ＲＳ−４８５用のシリアルインターフェース４を備えている。このシリアルインターフェース４は、バス５で伝送されるＲＳ−４８５通信のTｘD、RxD信号を、中央演算処理装置ＣＰＵ１〜ＣＰＵ１０が受け取れる調歩同期信号のTｘD、RxD信号（動作指令）に変換して、送受信を行う。
【００１８】
スレーブ局内通信回路２は、１０台の中央演算処理装置ＣＰＵ１〜ＣＰＵ１０を並列接続する。そしてスレーブ局内通信回路２は、上位コントローラ３と並列接続された１０台の中央演算処理装置ＣＰＵ１〜ＣＰＵ１０との間での送受信を可能にするように構成されている。本実施の形態では、１０台の中央演算処理装置ＣＰＵ１〜ＣＰＵ１０のうち予め定めた１台の中央演算処理装置ＣＰＵ１が、他の９台の中央演算処理装置ＣＰＵ２〜ＣＰＵ１０がそれぞれ制御する軸を有しているか否かの確認（軸を動かすようになっているかの確認）をする確認装置と定めている。
【００１９】
図３は、１台のコントローラユニットＣＵ１内の１台の中央演算処理装置ＣＰＵ１と他のコントローラユニットＣＵ２乃至ＣＵ１０内の中央演算処理装置ＣＰＵ２〜ＣＰＵ１０との間の情報伝達路の関係を示している。この情報伝達路は、後述するベースボードＤ１に対して増設ボートＤ２〜Ｄ４が増設されて接続されたかどうかの状態を認識するためと、各ＣＰＵが制御する軸を有しているか（正常に動作可能か）の判断をコントローラユニットＣＵ１が行うために用いられている。即ちこの情報伝達路は、スレーブ局内通信回路２とバス５とを介して接続される上位コントローラ３とは別の信号線として設けてあり、中央演算装置ＣＰＵ２〜ＣＰＵ１０が正常に動作していることと軸の有無を伝達している。すなわち中央演算処理装置ＣＰＵ２〜ＣＰＵ１０の情報は、モータ接続状態コマンド実行時に、中央演算処理装置ＣＰＵ１から上位コントローラにシリアルインターフェース４を経由して伝達されている。実際に確認は、中央演算処理装置ＣＰＵ１が実行する。図３の情報伝達路を実現するために、図１に示したスレーブ局内通信回路２とは異なるラインでコントローラユニットＣＵ１の中央演算処理装置ＣＰＵ１に中央演算処理装置ＣＰＵ２〜ＣＰＵ１０を接続している。本実施の形態では、この情報伝達路を利用して、中央演算処理装置ＣＰＵ２〜ＣＰＵ１０がそれぞれ制御する軸を有しているか否かの情報が、中央演算処理装置ＣＰＵ１に伝達されている。なお１軸だけを指定する動作指令もあるため、各中央演算処理装置はそれぞれが制御する軸ごとにも自分の軸に対して、制御する軸があるか否かを判断する機能即ち軸の有効・無効状態を判断する機能を持っている。中央演算処理装置ＣＰＵ１は、中央演算処理装置ＣＰＵ２〜ＣＰＵ１０がそれぞれ制御する軸を有しているか否かを確認しており、動作指令により中央演算処理装置ＣＰＵ１が指定されていない場合でも、他の中央演算処理装置ＣＰＵ２〜ＣＰＵ１０が指定され且つ指定された中央演算処理装置が制御する軸を有している場合には、代表して上位コントローラ３に成功応答信号を送信する。すなわち中央演算処理装置ＣＰＵ１は、中央演算処理装置ＣＰＵ２〜ＣＰＵ１０の動作状態が正常かどうかの確認と軸の接続状態の確認を行う。そして中央演算処理装置ＣＰＵ１は、代表して上位コントローラ３に成功応答信号を送信する。なお動作指令で指定されている全ての中央演算処理装置から、それぞれの中央演算処理装置が制御する軸を有している（指定先の軸が有効である）ことを確認するための情報が中央演算処理装置ＣＰＵ１に与えられている。本実施の形態では、中央演算処理装置ＣＰＵ１自身で成功判定をした場合と、少なくとも他の１つの中央演算処理装置が制御する軸を有している（指定先の軸が有効である）ことを確認後、中央演算処理装置ＣＰＵ１は成功応答信号を上位コントローラ３に送信する。このようにしても実際の制御では、中央演算処理装置ＣＰＵ１と全てのＣＰＵが同じ判定ルーチンを通ることを前提にしているため、特に問題となることはない。
【００２０】
すなわち動作指令で中央演算処理装置ＣＰＵ１が指定されている場合には、同じ判定ルーチンを有する他の中央演算処理装置でも動作指令が判定されたものと推定して、中央演算処理装置ＣＰＵ１が代表して上位コントローラ３に成功応答信号を送信する。このように中央演算処理装置ＣＰＵ１が他の中央演算処理装置ＣＰＵ１を代表して成功応答信号を出力したとしても、すべての中央演算処理装置ＣＰＵ１〜ＣＰＵ１０が同じ判定ルーチンを有している場合には、大きな問題は生じない。なお動作指令により、１軸だけの制御が指定されているときには、その１軸を制御する中央演算処理装置が成功応答指令を出力する。これは１軸だけの場合には、中央演算処理装置ＣＰＵ１が代表して上位コントローラ３に成功応答信号を送信するメリットがないためである。
【００２１】
なお本実施の形態では、中央演算処理装置ＣＰＵ１〜ＣＰＵ４が一枚の基板に実装されて１つのベースドライバＤ１を構成している。このベースドライバＤ１により、８台のステッピングモータＭ１乃至Ｍ８を駆動する。またこの例では中央演算処理装置ＣＰＵ５及びＣＰＵ６が別の基板に実装されて第１の増設ドライバＤ２を構成しており、中央演算処理装置ＣＰＵ７及びＣＰＵ８が別の基板に実装されて第２の増設ドライバＤ３を構成しており、中央演算処理装置ＣＰＵ９及びＣＰＵ１０が別の基板に実装されて第３の増設ドライバＤ４を構成している。本実施の形態では、これら第１乃至第３の増設ドライバＤ２乃至Ｄ４を用いて最大２０軸までの多軸駆動用ドライバ１として利用できる。多軸駆動用ドライバ１には、ＲＳ−４８５通信の１つのスレーブアドレス番号が付与される。したがってスレーブアドレス番号を節約することができる。また本実施の形態では、１つのスレーブ局（多軸駆動用ドライバ１）内で２０本の軸を制御するコントロールユニットＣＵ１〜ＣＵ１０の中央演算処理装置ＣＰＵ１〜ＣＰＵ１０に対して指令を行うために、２軸のためのドライブ回路（図示せず）に与える駆動信号を１つの中央演算処理装置で処理する。またＲＳ−４８５通信により、上位コントローラ３から送信される動作指令では、並列接続された中央演算処理装置ＣＰＵ１〜ＣＰＵ１０のそれぞれに対して与える信号をシリアル通信で並列接続している。すなわち並列接続された中央演算処理装置ＣＰＵ１〜ＣＰＵ１０に、同時に動作信号が入力されたときに、各中央演算処理装置が同時に信号を受信できるように、各中央演算処理装置への動作指令がシリアルにつながっている。よって本実施の形態では、このように並列処理を行うことで信号処理の効率化を図っている。
【００２２】
コントロールユニットＣＵ１〜ＣＵ１０の中央演算処理装置ＣＰＵ１〜ＣＰＵ１０は、それぞれ独立して動作する。そのためにＲＳ−４８５通信のスレーブ局アドレスの他に、中央演算処理装置ＣＰＵ１〜ＣＰＵ１０毎にアドレス番号を割り振って、内部アドレスとしている。
【００２３】
本実施の形態では、図２のステップＳＴ４に示すように、上位コントローラ３から動作指令が送信されると、ステップＳＴ４において１軸のみの指定か、全軸の指定かが各中央演算処理装置ＣＰＵ１〜ＣＰＵ１０において判定される。１軸（１つのモータ）のみについての動作指令が送信されてきたときには、ステップＳＴ５へと進んで、受信した中央演算処理装置が担当する軸があるか否か（中央演算処理装置が制御する軸を有しているか否か）が判定される。その中央演算処理装置に担当軸（制御を担当するモータ）が設定されていなければ、ステップＳＴ９へと進んで受信データがクリアされる。そしてステップＳＴ５でその中央演算処理装置に担当軸（担当モータ）がある場合には、ステップＳＴ６へと進んで、動作指令によって指定されている軸（モータ）が有効か否か（制御する軸があるか否か）が判定され、有効でなければステップＳＴ９へと進み、有効であればステップＳＴ７へと進んでその動作指令（コマンド）が実行される。そして次にステップＳＴ８へと進んで、その中央演算処理装置が成功応答信号を作成して上位コントローラ３へ成功応答信号を送信する。最後に、各中央演算処理装置は、ステップＳＴ９で受信データをクリアする。
【００２４】
また上位コントローラ３から複数軸についての動作指令（図２の例では全軸を指定する動作指令）が送信されたときには、各中央演算処理装置ＣＰＵ１〜ＣＰＵ１０はそれぞれ動作指令の中に全軸指定が入っているかをステップＳＴ４で判定されると、ステップＳＴ１０へと進む。動作指令に中央演算処理装置ＣＰＵ１のアドレス番号が含まれている場合には、ステップＳＴ１１へと進んで、動作指令によって指定される軸（モータＭ１またはＭ２）が有効か（動作可能か）が判定され、動作可能であればステップＳＴ１２で動作指令が実行される。その後ステップＳＴ８で中央演算処理装置ＣＰＵ１が成功応答信号を作成して上位コントローラ３へ成功応答信号を送信する。この場合、ステップＳＴ８では、その他の中央演算処理装置が動作指令を実行しても、その他の中央演算処理装置から成功応答信号を上位コントローラ３に送信することは行われない。
【００２５】
ステップＳＴ１０で動作指令に中央演算処理装置ＣＰＵ１のアドレス番号が含まれていない場合には、ステップＳＴ１４へと進む。そしてステップＳＴ１４では、動作指令に含まれている中央演算処理装置のアドレス番号を確認し、そのアドレス番号に対応する中央演算処理装置が担当する軸（モータ）のうち動作指令によって指定されている軸があるか否か（有効か否か）の確認が中央演算処理装置ＣＰＵ２〜１０によってなされる。指定されている複数の軸が有効であればステップＳＴ１５で動作指令（コマンド）が実行される。ステップＳＴ１５で動作指令が実行されるとステップＳＴ９へと進み、中央演算処理装置ＣＰＵ１以外の中央演算処理装置では受信データ（成功応答信号）は作成されずクリアされる。この場合でも、同時に動作指令を受信している中央演算処理装置ＣＰＵ１は、ステップＳＴ１１で中央演算処理装置ＣＰＵ１が制御する軸が無効と判定されても、ステップＳＴ１３で他の中央演算処理装置が制御する軸が１つ以上あることを確認した場合には、ステップＳＴ８へと進み、中央演算処理装置ＣＰＵ１は成功応答信号を出力する。すなわち、中央演算処理装置ＣＰＵ１は他の中央演算処理装置と直前まで同じ実行ルーチンを通り、他の中央演算処理装置が制御する軸があり、接続状態と動作状態が正常であることを確認し、他の軸の動作が実行可能であると仮定して成功応答を出力する。従来のように、ＲＳ−４８５通信で各軸に対して全軸の動作開始指令を行った場合、通信が各コントロールユニットで順次処理されていくため、通信速度によって各軸の動作開始タイミングにズレが生じる。しかしながら本実施の形態のように、全てのコントロールユニットを並列接続してすべてのコントロールユニットに同時に動作指令を与えるようにし、各コントロールユニットで同時に処理を実行できるようにすると、１制御周期以内（６２．５μsec）以内の遅れで、各軸の動作を開始することが可能となる。ステップＳＴ８では、中央演算処理装置ＣＰＵ１は他の中央演算処理装置ＣＰＵ２〜１０の接続状態と正常に動作しているかの判断を、中央演算処理装置ＣＰＵ１に対して他の中央演算処理装置ＣＰＵ２〜１０から入力される状態信号（入力信号）で確認し、成功応答信号を上位コントローラ３に送信する。すなわち、成功応答信号は、確認装置として機能する１台の中央演算処理装置ＣＰＵ１が他の中央演算処理装置を代表して上位コントローラ３に送信する。
【００２６】
上記の実施の形態では、接続状態を設定するコマンドを送信した場合でも、各軸の状態を把握している中央演算処理ＣＰＵ１が応答を返す。また本実施の形態では、接続状態を設定するコマンドにより、各軸に対して、軸の「有り」、「無し」（モータに駆動する軸が接続されているか否か）を指定することもできるようになっている。なお「無し」の指定を受けた軸に対応する中央演算処理装置は、いずれの場合であっても通信の応答を返しないものとしている。さらに増設ドライバＤ２，Ｄ３及びＤ４は、前述のようにベースドライバＤ１から切り離すことができる。そして増設ドライバが切り離されると、当然にして増設ドライバは無応答となる。
【００２７】
このように本実施の形態では、上位コントローラ３には、いずれにしても１つの成功応答信号だけが返信される。このようにすると各軸の制御応答時間を従来よりも短くすることができて、しかも上位コントローラとの間の通信速度を速めることができる。また信号の衝突が発生する可能性が低くなって、信号処理が早くなる。なお本実施の形態の多軸駆動用ドライバを使用する場合には、上位コントローラ３は１つの成功応答信号が返信されてきたことを成功と判断して、次の処理を実行するように構成されている。
【００２８】
上記実施の形態では、上位コントローラ３は、１軸指定かまたは全軸指定になるように動作指令を出力している。これは判定を簡単にするためである。しかしながら全軸指定ではない複数軸指定であってもよいのは勿論である。その場合には、ステップＳＴ４で複数軸指定の場合には、ステップＳＴ１０へ進むようにすればよい。
【００２９】
図４（Ａ）乃至（Ｃ）は、本実施の形態の多軸駆動用ドライバをハードウエア化した場合の装置の平面図、正面図及び右側面図である。これらの図において、基板ＳＢ上にはベースドライバＤ１と増設ドライバＤ２，Ｄ３及びＤ４が実装されている。増設ドライバＤ２，Ｄ３及びＤ４は任意に増設可能なものであり（装着・脱着が可能なものであり）、基本はベースドライバＤ１を備えた構成である。このように１枚の基板ＳＢ上に増設ドライバＤ２，Ｄ３及びＤ４を増設可能に設けるようにすると、設計の自由度が高くなり、汎用性が増す利点が得られる。
【００３０】
上記実施の形態では、１台の中央演算処理装置に対して、２台のドライバ回路（２台のステッピングモータ）を設けえている。しかし何台のドライバ回路を１台の中央演算処理装置で対象とするかは、中央演算処理装置の演算速度に応じて任意に定めることができる。
【００３１】
上記の実施の形態によれば、中央演算処理装置ＣＰＵ１でその他の中央演算処理装置ＣＰＵ２乃至ＣＰＵ８の接続状態が判断できるため、上位コントローラ３から多軸駆動用ドライバ内の接続状態や、各軸の有り、無し（コントローラユニット、モータの有無）を１命令で設定したり、判定することができる。
【図面の簡単な説明】
【００３２】
【図１】本実施の形態の多軸駆動用ドライバの構成を概略的に示すブロック図である。
【図２】図１の実施の形態を実現する場合に用いられるソフトウエアのアルゴリズムを示すフローチャートである。
【図３】コントローラユニット相互を接続する通信回路の関係を示す図である。
【図４】（Ａ）乃至（Ｃ）は、本実施の形態の多軸駆動用ドライバをハードウエア化した場合の装置の平面図、正面図及び右側面図である。
【符号の説明】
【００３３】
１  多軸駆動用ドライバ
２  スレーブ局内通信回路
３  上位コントローラ
５  バス
ＣＵ１〜ＣＵ１０  コントロールユニット
ＣＰＵ１〜ＣＰＵ１０  中央演算処理装置
【図１】
0004953997.tif 000002
【図２】
0004953997.tif 000003
【図３】
0004953997.tif 000004
【図４】
0004953997.tif 000005