(57)【特許請求の範囲】
【請求項１】
互いに直交する複数の搬送軸を駆動させる駆動制御装置において、基準となる搬送軸の駆動に関連付けて他の搬送軸を駆動させる駆動制御装置における直線補間方法であって、
前記複数の搬送軸の駆動量の指令値に基づいて、該搬送軸の中から基準軸を選択し該基準軸の速度を設定する第一ステップと、
前記基準軸の速度に基づいて、該基準軸の速度と前記他の搬送軸の速度との比が夫々の前記基準軸の駆動量の指令値と前記他の搬送軸の駆動量の指令値の比になるように、前記他の搬送軸の速度を設定する第二ステップと、
前記設定された速度に基づいて前記基準軸及び他の搬送軸を駆動させ、所定の周期毎に、該基準軸及び前記他の搬送軸の累積の移動量を検出する第三ステップと、
前記基準軸の実際に移動した移動量に対して前記基準軸の駆動量の指令値と前記他の搬送軸の駆動量の指令値の比を掛け算して前記他の搬送軸の移動量の理論値を演算する第四ステップと、
前記他の搬送軸の実際に移動した移動量と前記理論値との差を検出し、算出された差を打ち消すように、該他の搬送軸の速度を、予め定められた所定量毎に増減する第五ステップと、
を備えていることを特徴とする駆動制御装置における直線補間方法。
【請求項２】
前記基準軸と前記他の搬送軸との加速及び減速の際の速度比が該基準軸と該他の搬送軸との駆動量の指令値の比になるように、該他の搬送軸の速度を設定することを特徴とする請求項１に記載の駆動制御装置における直線補間方法。
【請求項３】
前記基準軸は、前記駆動量の指令値の最も大きい搬送軸が選択され、該駆動量の指令値毎に選択される、
ことを特徴とする請求項１又は請求項２に記載の駆動制御装置における直線補間方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、駆動制御装置における、基準軸の駆動に追従させて他の搬送軸を補間動作させる直線補間方法に関する。
【背景技術】
【０００２】
従来、例えばＮＣマシン等の工作機械において、被搬送物を所定の位置に移動させるために、互いに直交する複数の搬送軸とこれらの搬送軸を駆動する複数の駆動モータとを有し、基準の搬送軸（以下、基準軸という。）の駆動に追従するように他の搬送軸（以下、他軸という。）を駆動させ、夫々の搬送軸に沿って被搬送物を駆動させる駆動制御装置を備えているものがある。
【０００３】
また、基準軸の駆動に他軸を追従させる際に、基準軸及び他軸の駆動量を表す指令信号と基準軸の速度を表す指令信号に基づき、先ず基準軸を駆動させ、次いで、基準軸の駆動量に応じて他軸を駆動させる補間方法が知られている。この際、基準軸及び他軸の駆動量の指令値に基づいて、基準軸の駆動量に対する他軸の駆動量のベクトル（勾配）を予め設定し、次いで、基準軸を所定の速度で駆動させ、次いで、所定の周期毎に、各搬送軸の実際の駆動量を検出して実際に駆動した基準軸と他軸との駆動量のベクトルを演算し、次いで、実際に駆動した駆動量のベクトルが予め設定された駆動量のベクトルに合うように、他軸の速度を演算して設定する補間方法が知られている（例えば、特許文献１参照）。
【特許文献１】特開２００２−２１５２１２
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の補間方法によれば、所定の周期毎に、基準軸に対する他軸の駆動量のベクトルを演算し、予め設定されたベクトルに合うように他軸の駆動速度を演算して設定するので、補間処理を行うための処理時間が長くなって、処理時間を短縮するためには高速演算プロセッサ集積回路が必要になり、延いては、補間処理に要するハードウェア全体が複雑になり、生産性を損なう虞があった。
【０００５】
そこで、本発明は、補間処理に要するハードウェアを簡素化できて補間処理を速やかに行うことができると共に、基準軸に対して他軸を精度良く追従させることができる駆動制御装置の直線補間方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
かかる目的を達成するためになされた請求項１に記載の発明は、互いに直交する複数の搬送軸を駆動させる駆動制御装置において、基準となる搬送軸の駆動に関連付けて他の搬送軸を駆動させる駆動制御装置における直線補間方法であって、前記複数の搬送軸の駆動量の指令値に基づいて、該搬送軸の中から基準軸を選択し該基準軸の速度を設定する第一ステップと、前記基準軸の速度に基づいて、該基準軸の速度と前記他の搬送軸の速度との比が夫々の基準軸の駆動量の指令値と他の搬送軸の駆動量の指令値の比になるように、前記他の搬送軸の速度を設定する第二ステップと、前記設定された速度に基づいて前記基準軸及び他の搬送軸を駆動させ、所定の周期毎に、該基準軸及び前記他の搬送軸の累積の移動量を検出する第三ステップと、前記基準軸の実際に移動した移動量に対して前記基準軸の駆動量の指令値と前記他の搬送軸の駆動量の指令値の比を掛け算して前記他の搬送軸の移動量の理論値を演算する第四ステップと、前記他の搬送軸の実際に移動した移動量と前記理論値との差を検出し、算出された差を打ち消すように、該他の搬送軸の速度を、予め定められた所定量毎に増減する第五ステップと、
を備えていることを特徴とする。
【０００７】
請求項１に記載の駆動制御装置における直線補間方法によれば、各搬送軸の駆動量の指令値に基づいて、基準軸を選択し該基準軸の速度を設定する第一ステップと、基準軸の速度に基づいて、基準軸の速度と他の搬送軸（以下、他軸という。）の速度との比が夫々の基準軸の駆動量の指令値と他の搬送軸の駆動量の指令値の比になるように、他軸の速度を設定する第二ステップと、設定された速度に基づいて基準軸及び他軸を駆動させ、所定の周期毎に、基準軸及び他軸の累積の移動量を検出する第三ステップと、基準軸の実際に移動した移動量に対して基準軸の駆動量の指令値と他の搬送軸の駆動量の指令値の比を掛け算して他軸の移動量の理論値を演算する第四ステップと、他軸の実際に移動した移動量と理論値との差を検出し、算出された差を打ち消すように、他軸の速度を、予め定められた所定量毎に増減する第五ステップと、を備えているので、従来例の補間方法に比べ、補間処理に要する演算時間を短縮できると共に生産性を向上できる。
【０００８】
つまり、請求項１に記載の駆動制御装置における直線補間方法によれば、所定の周期毎に、累積の移動量を検出し、他軸の実際に移動した移動量が理論値に合うように、予め定められた所定量を増減して他軸の速度を補正するので、所定の周期毎に基準軸に対する他軸の駆動量の勾配を演算して他軸の駆動速度を演算して設定する従来の方法に較べ、補間処理に要する演算時間を短縮でき、延いては、従来例に記述した高速演算プロセッサが不要になり、補間処理のためのハードウェアを簡素化できる。
【０００９】
次に、請求項２に記載の発明は、請求項１に記載の駆動制御装置における直線補間方法において、前記基準軸と前記他の搬送軸との加速及び減速の際の速度比が該基準軸と該他の搬送軸との駆動量の指令値の比になるように、該他の搬送軸の速度を設定することを特徴とする。
【００１０】
請求項２に記載の駆動制御装置における直線補間方法によれば、基準軸と他の搬送軸（以下、他軸という。）との加速及び減速の際の速度比が基準軸と他軸との駆動量の指令値の比になるように、他軸の速度を設定するので、基準軸及び他軸が目的の速度に達するまでの時間を合わせることができ、目標位置に至る移動経路のずれを低減できる。
【００１１】
次に、請求項３に記載の発明は、請求項１又は請求項２に記載の駆動制御装置において、前記基準軸が、前記駆動量の指令値の最も大きい搬送軸が選択され、駆動量の指令値毎に選択される、ことを特徴とする。
【００１２】
請求項３に記載の駆動制御装置における直線補間方法によれば、前記基準軸が、前記駆動量の指令値の最も大きい搬送軸が選択され、駆動量の指令値毎に選択されるので、常に、駆動量の最も大きい搬送軸の駆動に対して他の搬送軸を追従させることができ、精度良く補間を行うことができる。
【発明の効果】
【００１３】
本発明の駆動制御装置における直線補間方法は、所定の周期毎に、基準軸及び他軸の累積の移動量を検出し、他軸の実際に移動した移動量が理論値に合うように、予め定められた所定量を増減して他軸の速度を補正するので、従来例に記述した高速演算プロセッサが不要になり、補間処理に要するハードウェアを簡素化できて補間処理を速やかに行うことができると共に、基準軸に対して他軸を精度良く追従させることができる。
【００１４】
また、本発明の駆動制御装置における直線補間方法は、基準軸と他軸との加速率及び減速率の比が、基準軸と他軸との駆動量の指令値の比になるように、他軸の速度を設定するので、基準軸及び他軸が一定の速度に達するまでの時間を合わせることができ、移動経路のずれを低減できる。
【００１５】
また、本発明の駆動制御装置における直線補間方法は、前記基準軸が、前記駆動量の指令値の最も大きい搬送軸が選択され、駆動量の指令値毎選択されるので、常に、駆動量の最も大きい搬送軸の駆動に対して他の搬送軸を追従させることができ、精度良く補間を行うことができる。
【発明を実施するための最良の形態】
【００１６】
次に、本発明の一実施例の駆動制御装置における直線補間方法を図を用いて説明する。本実施例の駆動制御装置は、被搬送物を互いに直交する３方向に搬送させるためのＸ軸、Ｙ軸、Ｚ軸と、被搬送物を回転させるＷ軸とを、基準軸に関連付けて駆動制御する。図１は、本実施例の駆動制御装置の制御系を表すブロック図、図２から図５は、本実施例の駆動制御装置における直線補間方法の手順を表すフローチャート、図６は、本実施例の駆動制御装置の直線補間方法における、原点ＰＯから目標位置Ｐ１まで駆動する際のＸ軸及びＹ軸の補間動作例を表す説明図である。
【００１７】
図１に表したように、本実施例における高速パルスの生成装置１は、オペレータからの操作信号をＭＰＵ（中央演算処理ユニット）１に入力するインターフェース２、インターフェース２から入力された操作信号に基づきＲＯＭ及びＲＡＭと協働して各機能部の実行を処理するＭＰＵ１、Ｘ軸を駆動するＸ軸駆動パルス生成部３、Ｙ軸を駆動するＹ軸駆動パルス生成部４、Ｚ軸を駆動するＺ軸駆動パルス生成部５、Ｗ軸を駆動するＷ軸駆動パルス生成部６等を備えている。
【００１８】
ＭＰＵ１は、インターフェース２を介して入力されたＸ、Ｙ、Ｚ、Ｗ軸の駆動量の指令値Ｘｐ、Ｙｐ、Ｚｐ、Ｗｐに基づいて、駆動量の値が最も大きい軸を基準軸として設定する基準軸設定部３０、基準軸の速度Ｖと他軸（Ｘ軸、Ｙ軸、Ｚ軸、Ｗ軸の内、基準軸を除く軸である。）の速度が基準軸の駆動量と他軸の駆動量との比に合うように、他軸の速度を演算する他軸速度演算部３１、パルス計数回路１９〜２２を介して検出した基準軸の駆動量を表すパルス数に基づいて、他軸の駆動量を表すパルス数の理論値を演算する他軸駆動量の理論値演算部３２、パルス計数回路１９〜２２を介して検出した他軸の駆動量を表すパルス数と理論値演算部３２で算出した理論値とを比較し、他軸に対する速度補正の要否を判定する他軸速度補正判定部３３、等によって構成されている。
【００１９】
また、ＭＰＵ１は、インターフェース２を介して入力されたＸ、Ｙ、Ｚ、Ｗ軸の夫々の駆動量Ｘｐ、Ｙｐ、Ｚｐ、Ｗｐに基づいて、パルス出力回路１５〜１８に、駆動量に応じたパルス数の出力を指令する。
【００２０】
次に、駆動パルス生成部３〜６は、所定の周波数でクロック信号を連続して発振する原発振器７〜１０、原発振器７〜１０から出力されたクロック信号をＭＰＵ１から入力された速度指令信号Ｖｘ、Ｖｙ、Ｖｚ、Ｖｗに基づき所定のパルス電圧及びデューティ比に設定してパルス出力回路１５〜１８に出力する速度制御回路１１〜１４、ＭＰＵ１から入力されたパルス数指令信号に基づき駆動モータの駆動量に応じたパルス数の駆動パルス列をモータ駆動回路２３〜２６に出力するパルス出力回路１５〜１８、パルス出力回路１５〜１８から出力されたパルス列のパルス数を計数するパルス計数回路１９〜２２等を備えている。本実施例では、原発振器の発振周波数が４ＭＨｚである。
【００２１】
速度制御回路１１〜１４は、分周器とマルチプライア（掛算器）で構成され、原発振器７〜１０から入力されたパルス列を、ＭＰＵ１からの速度指令信号Ｖｘ、Ｖｙ、Ｖｚ、Ｖｗに基づいて分周及び掛け算して速度変化させ、速度変化させたパルス列をパルス出力回路１５〜１８に出力する。本実施例では、マルチプライアの設定範囲が、（１／４０９６）×（０〜４０９６）、分周器の設定範囲が、（１／１）〜（１／６５５３５）、指令パルス数設定範囲が１〜９９９９９９９９、各軸の速度設定範囲が１〜２ＭＨｚである。
【００２２】
また、パルス出力回路１５〜１８は、ＭＰＵ１からの指令に基づいて、駆動モータの回転方向をＣＷ（時計回り）及びＣＣＷ（反時計回り）の何れかを設定し、モータ駆動回路２３〜２６に、駆動モータを駆動させる駆動パルス列を出力する。
【００２３】
また、パルス計数回路１９〜２２は、パルス出力回路１５〜１８を介して入力されたパルス数を計数してＭＰＵ１に入力し、ＭＰＵ１からの指令（図示略）に基づき、計数したパルス数が駆動量Ｘｐ、Ｙｐ、Ｚｐ、Ｗｐのパルス数（駆動量の指令値である）と等しくなった際に、パルス出力回路１５〜１８にパルス出力の停止を指令する信号を入力する。詳しくは、パルス計数回路１９〜２２には、パルス出力回路１５〜１８のパルスの出力及び停止と関連付けられた起動フラグ（図示略）が備えられ、この起動フラグが、ＭＰＵ１からの指令に基づいて、パルス出力回路１５〜１８がパルスを出力すると同時にＯＮし、パルス計数回路１９〜２２を介して検出したパルス数が所定の駆動量に達した際にＯＦＦされ、このＯＦＦ信号がパルス出力回路１５〜１８に入力され、パルス出力回路１５〜１８のパルス出力を停止させる。
【００２４】
次に、ＭＰＵ１がインターフェース２から入力されたオペレータの操作信号を受けて、モータ駆動回路２３〜２６に駆動パルス列を出力するまでの手順を、図２から図５に基づき説明する。この処理手順は、図示されないＲＯＭにそのプログラムが備えられ、ＭＰＵ１がそのプログラムを使用して各処理を実行する。
【００２５】
この手順は、インターフェース２を介して、起動信号がＭＰＵ１に入力された際にスタートする。
【００２６】
次いで、Ｓ１０１（Ｓはステップを表す）において、ＲＯＭ及びＲＡＭ（図示略）に記憶されている過去の位置決めデータ（所謂、各搬送軸の駆動量を表すデータである。）及び各搬送軸の速度データを初期化し、その後Ｓ１０２に移る。
【００２７】
次いで、Ｓ１０２において、インターフェース２を介して入力された搬送軸（Ｘ軸、Ｙ軸、Ｚ軸、Ｗ軸）の位置決めデータＸｐ、Ｙｐ、Ｚｐ、Ｗｐを読み込み、その後Ｓ１０３に移る。
【００２８】
次いで、Ｓ１０３において、基準軸設定部３０を介して、位置決めデータの最も大きい搬送軸を基準軸に設定する。尚、本発明における第一ステップは、Ｓ１０３によってその機能が発現される。
【００２９】
次いで、Ｓ１０４において、基準軸の速度Ｖ、基準軸が停止状態から駆動する際の加速率α、基準軸が一定の速度での駆動状態から停止する際の減速率β等を、ＲＯＭから取得する。基準軸の速度Ｖ及び加速率α、減速率βは、オペレータによって予め設定され、ＲＯＭに記憶されている。本実施例では、基準軸をＸ軸とし、基準軸の速度ＶをＸ軸の速度Ｖｘに置き換え、以下の説明をする。
【００３０】
次いで、Ｓ１０５において、ＲＯＭに記憶されている演算式を用い、他軸（Ｙ軸、Ｚ軸Ｗ軸）の速度Ｓｎを算出する。他軸の速度Ｓｎの演算式は、Ｓｎ＝Ｖｘ・（他軸の位置決データ）／（基準軸の位置決データ）、であって、Ｙ軸の速度Ｓｎｙ＝Ｖｘ・Ｙｐ／Ｘｐで算出し、Ｚ軸の速度Ｓｎｚ＝Ｖｘ・Ｚｐ／Ｘｐで算出し、Ｗ軸の速度Ｓｎｗ＝Ｖｘ・Ｗｐ／Ｘｐで算出する。尚、本発明の第二ステップは、Ｓ１０５によってその機能が発現される。
【００３１】
次いで、Ｓ１０６において、速度制御回路１１〜１４における分周器の分周比Ｄｎを、Ｄｎ＝（原発振器の発振周波数）／（各軸の速度）、の演算式を用いて算出する。
【００３２】
次いで、Ｓ１０７において、Ｓ１０５で算出された他軸（Ｙ軸、Ｚ軸、Ｗ軸）の速度Ｓｎ（Ｓｎｙ、Ｓｎｚ、Ｓｎｗ）の値（絶対値）を予め定められた所定値６５５３５より大きいか否かを判定し、Ｓｎが所定値より大きくない（Ｎｏ）場合にはＳ１０９に移る。一方、Ｓ１０７において、Ｓｎが所定値より大きい（Ｙｅｓ）の場合には、Ｓ１０８に移り、Ｓ１０８において、その軸のＳｎを所定値６５５３５に置き換える。本実施例では、速度制御回路１１〜１４における分周器を１６ビット構成のハードウェアで構成しているので、その分周比の最大値を、（２の１６乗）−１＝６５５３５にしている。
【００３３】
次いで、Ｓ１０９において、Ｓ１０２で読み込みした各軸の位置決めデータＸｐ、Ｙｐ、Ｚｐ、Ｗｐ毎の駆動量を表すパルス数を、パルス計数回路１９〜２２に入力する。
【００３４】
次いで、Ｓ１１０において、Ｓ１０９で設定された駆動量の指令パルス数Ｘｐ、Ｙｐ、Ｚｐ、Ｗｐが０より大きいか否か（所謂、正であるか負であるか）を判定し、０より大きくない（Ｎｏ）の場合には、Ｓ１１２に移り、パルス出力回路１５、１６、１７、１８における駆動モータの回転方向をＣＣＷ（反時計回り）に設定し、その後Ｓ１１３に移る。一方、Ｓ１１０において、０より大きい（Ｙｅｓ）の場合には、Ｓ１１１に移り、パルス出力回路１５、１６、１７、１８における駆動モータの回転方向をＣＷ（時計回り）に設定し、その後Ｓ１１３に移る。
【００３５】
次いで、Ｓ１１３において、速度制御回路１１〜１４におけるマルチプライア（掛け算器）の値Ｍを１に設定して（所謂、前述したマルチプライアの設定範囲（１／４０９６）×（０〜４０９６）において、（１／４０９６）×（１）が設定される）Ｓ１１４に移り、Ｓ１１４において、Ｘ軸（基準軸）の駆動パルス列をパルス出力回路１５から出力させる。
【００３６】
次いで、Ｓ１１５において、パルス出力回路１５からの駆動パルス列の出力と同時に、パルス計数回路１９〜２２における起動フラグをＯＮする。
【００３７】
次いで、Ｓ１１６に移り、１ｍｓｅｃ．毎の周期で割り込み処理を行う。次に、図４、図５を用いて、割り込み処理の手順を説明する。まず、Ｓ２０１において起動フラグがＯＮされているか否かを判定し、起動フラグがＯＮされていない（Ｎｏ）場合には、Ｓ２０２に移り割り込み処理を終了する。一方、Ｓ２０１において起動フラグがＯＮされている場合にはＳ２０３に移る。
【００３８】
次いで、Ｓ２０３において、Ｘ軸（基準軸）の駆動量が減速ポイントを過ぎたか否か判定し、減速ポイントを過ぎた（Ｙｅｓ）場合には、Ｓ２０４に移り、Ｓ１０４で取得した減速率βでＸ軸の速度を減算し、その後Ｓ２０７に移る。一方、Ｓ２０３において、減速ポイントを過ぎていない（Ｎｏ）場合には、Ｓ２０５に移る。この際、減速ポイントは、一定の速度での駆動から停止に移る際の減速位置を表すものであって、基準軸の駆動量Ｘｐに関連付けて予め定められている。
【００３９】
次いで、Ｓ２０５において、Ｘ軸（基準軸）の速度値が上限速度値（Ｓ１０４で取得した速度Ｖである。）より小さいか否かを判定し、小さい（Ｙｅｓ）場合には、Ｓ２０６に移り、Ｓ１０４で取得した加速率αでＸ軸の速度を加算し、その後Ｓ２０７に移る。一方Ｓ２０５において、Ｘ軸（基準軸）の速度値が上限速度値（Ｓ１０４で取得した速度Ｖである。）より小さくない（Ｎｏ）場合には、Ｓ２０７に移る。
【００４０】
次いで、Ｓ２０７において、Ｘ軸（基準軸）の速度値が上限速度値（Ｓ１０４で取得した速度Ｖである。）より大きい又は等しいか否かを判定し、大きい又は等しい（Ｙｅｓ）場合には、Ｓ２０８に移り、Ｘ軸の速度をＳ１０４で取得した速度Ｖとし、その後Ｓ２０９に移る。一方、Ｓ２０７において、Ｘ軸の速度値が上限速度値より小さい（Ｎｏ）場合には、Ｓ２０９に移る。
【００４１】
次いで、Ｓ２０９において、Ｘ軸（基準軸）の速度値が０より小さい又は等しいか否かを判定し、小さい又は等しい（Ｙｅｓ）場合には、Ｓ２１０に移り、Ｘ軸の速度を１（１は、速度制御できる最小値である。）にする。一方、Ｓ２０９において、Ｘ軸（基準軸）の速度値が０より大きい（Ｎｏ）場合には、Ｓ２１１に移る。
【００４２】
次いで、Ｓ２１１において、Ｘ軸（基準軸）の速度制御回路１１に、Ｓ２０４、Ｓ２０６、Ｓ２０８、Ｓ２１０で設定したＸ軸の速度値を速度指令信号Ｖｘとして入力し、その後Ｓ２１２に移る。
【００４３】
次いで、Ｓ２１２において、パルス出力回路１５〜１８から出力された各軸の駆動量を表す出力パルス数をパルス計数回路１９〜２２を介して検出し、その後、Ｓ２１３に移る。尚、本発明における第三ステップは、Ｓ２１２によってその機能が発現される。
【００４４】
次いで、Ｓ２１３において、検出したＸ軸（基準軸）の駆動量のパルス数（Ｘｐｆ）に基づいて、他軸（Ｙ軸、Ｚ軸、Ｗ軸）のフィードバックされるべく理論値を、理論値演算部３２を用いて算出する。この際、Ｙ軸の理論値（Ｙｐｆ）を、（Ｙｐｆ）＝（Ｘｐｆ）・（Ｙｐ／Ｘｐ）の演算式で算出し、Ｚ軸の理論値（Ｚｐｆ）を、（Ｚｐｆ）＝（Ｘｐｆ）・（Ｚｐ／Ｘｐ）の演算式で算出し、Ｗ軸の理論値（Ｗｐｆ）を、（Ｗｐｆ）＝（Ｘｐｆ）・（Ｗｐ／Ｘｐ）の演算式で算出する。尚、本発明における第四ステップは、Ｓ２１３によってその機能が発現される。
【００４５】
次いで、Ｓ２１４において、他軸（Ｙ軸、Ｚ軸、Ｗ軸）の速度を、Ｘ軸の位置決めデータと他軸の位置決めデータとの比と、Ｓ２１１で設定したＸ軸（基準軸）の速度（Ｖｘｆ）とより算出する。この際、Ｙ軸の速度（Ｖｙｆ）を、（Ｖｙｆ）＝（Ｖｘｆ）・（Ｙｐ／Ｘｐ）の演算式で算出し、Ｚ軸の速度（Ｖｚｆ）を、（Ｖｚｆ）＝（Ｖｘｆ）・（Ｚｐ／Ｘｐ）の演算式で算出し、Ｗ軸の速度（Ｖｗｆ）を、（Ｖｗｆ）＝（Ｖｘｆ）・（Ｗｐ／Ｘｐ）の演算式で算出する。
【００４６】
次いで、Ｓ２１５において、Ｓ２１３で算出した他軸の駆動量の理論値がＳ２１２でフィードバックした駆動量に対して小さいか否かを判定し、小さい（Ｙｅｓ）場合には、Ｓ２１６に移り、他軸の速度をＳ２１４で算出された速度（Ｖｙｆ）、（Ｖｚｆ）、（Ｖｗｆ）に、速度補正値を１減算し、その後Ｓ２１７に移る。一方、Ｓ２１５において、小さくない（Ｎｏ）場合には、Ｓ２１７に移る。
【００４７】
次いで、Ｓ２１７において、Ｓ２１３で算出した他軸の駆動量の理論値がＳ２１２でフィードバックした駆動量に対して等しいか否かを判定し、等しい（Ｙｅｓ）場合には、Ｓ２１８に移り、他軸の速度をＳ２１４で算出された速度（Ｖｙｆ）、（Ｖｚｆ）、（Ｖｗｆ）の速度補正値を０とし、その後Ｓ２１９に移る。一方、Ｓ２１７において、等しくない（Ｎｏ）場合には、Ｓ２１９に移る。
【００４８】
次いで、Ｓ２１９において、Ｓ２１３で算出した他軸の駆動量の理論値がＳ２１２でフィードバックした駆動量に対して大きいか否かを判定し、大きい（Ｙｅｓ）場合には、Ｓ２２０に移り、他軸の速度をＳ２１４で算出された速度（Ｖｙｆ）、（Ｖｚｆ）、（Ｖｗｆ）に速度補正値を１加算し、その後Ｓ２２１に移る。一方、Ｓ２１９において、大きくない（Ｎｏ）場合には、Ｓ２２１に移る。
【００４９】
次いで、Ｓ２２１において、他軸（Ｙ軸、Ｚ軸、Ｗ軸）の速度制御回路１２、１３、１４に、Ｓ２１６、Ｓ２１８、Ｓ２２０で設定した速度補正値をＳ２１４で求められた他軸の速度に加算した速度指令信号（Ｖｙ、Ｖｚ、Ｖｗ）として入力し、その後ＥＮＤし、図３のＳ１１７に移る。尚、本発明における第五ステップは、Ｓ２１５からＳ２２１によってその機能が発現される。
【００５０】
次いで、Ｓ１１７において、全軸（Ｘ軸、Ｙ軸、Ｚ軸、Ｗ軸）が、パルス計数回路を介して検出した駆動量が、Ｓ１０２で読み込みした駆動量の指令値に対して一致したか否かを判定し、一致していない場合にはＳ１１６に移り、一致するまで１ｍｓｅｃ．毎にＳ２０１からＳ２２１の割り込み処理を繰り返す。一方、Ｓ１１７において、全軸が一致した場合には、駆動フラグをＯＦＦし、本手順を終了する。
【００５１】
そして、前述の手順により、本実施例の駆動制御装置における補間方法は、例えば図６に表したように、Ｘ軸及びＹ軸の目標位置Ｐ１へ被搬送物を駆動させる際に、Ｓ１０１において、Ｘ軸の駆動量を表すデータＸｐ（６０００）と、Ｙ軸の駆動量を表すデータＹｐが読み込まれ、Ｓ１０３において、Ｘ軸が基準軸に設定され、Ｓ１０４からＳ１０９において、所定周期（１ｍｓｅｃ．）毎に、Ｘ軸の駆動に合わせてＹ軸が追従するように補間する。また、Ｓ１０５において、Ｘ軸の駆動量（６０００）とＹ軸の駆動量（２０００）の比率が、Ｘ軸の速度とＹ軸の速度の比になるように、Ｙ軸の速度を設定し、Ｓ１１６において、所定の周期毎にＸ軸及びＹ軸の実際の駆動量を検出してＹ軸の速度を補正し、実際の移動曲線が理想の移動曲線に合うように、Ｙ軸の駆動を補間する。
【００５２】
以下に、前記の構成を有する実施例の、駆動制御装置における直線補間方法の
作用効果を記載する。
【００５３】
実施例に記載した駆動制御装置の直線補間方法によれば、各軸の駆動量の指令値Ｘｐ、Ｙｐ、Ｚｐ、Ｗｐに基づいて、基準軸を選択し基準軸の速度を設定する第一ステップ（Ｓ１０３）と、基準軸の速度に基づいて、基準軸の速度と他軸の速度との比が夫々の駆動量の指令値の比になるように、他軸の速度Ｓｎを設定する第二ステップ（Ｓ１０５）と、設定された速度に基づいて基準軸及び他軸を駆動させ、所定の周期毎に、基準軸及び他軸の累積の移動量を検出する第三ステップ（Ｓ２１２）と、基準軸の移動量に対して比率を掛け算して他軸の移動量の理論値を演算する第四ステップ（Ｓ２１３）と、他軸の実際に移動した移動量と理論値との差を検出し、算出された差を打ち消すように、他軸の速度を、予め定められた所定量毎に増減する第五ステップ（Ｓ２１５からＳ２２１）と、を備えているので、従来の補間方法に比べ、補間処理に要する演算時間を短縮できると共に、補間処理に要するハードウェアを簡素化でき、生産性を向上できる。
【００５４】
つまり、本実施例の駆動制御装置における直線補間方法によれば、Ｓ１１６のように、所定の周期１ｍｓｅｃ．毎に、累積の移動量を検出し、他軸の実際に移動した移動量が理論値に合うように、予め定められた所定量を増減して他軸の速度を補正するので、従来例に記述した高速演算プロセッサが不要になり、補間処理に要するハードウェアを簡素化できて補間処理を速やかに行うことができると共に、基準軸に対して他軸を精度良く追従させることができる。
【００５５】
また、本実施例の駆動制御装置における直線補間方法によれば、Ｓ２１４のように、基準軸と他軸との加速及び減速の際の速度比が、基準軸と他軸との駆動量の指令値の比になるように、他軸の速度を設定するので、基準軸及び他軸が目的の速度に達するまでの時間を合わせることができ、移動経路のずれを低減できる。また、本発明の駆動制御装置における直線補間方法は、基準軸が、駆動量の指令値の最も大きい搬送軸が選択され、駆動量の指令値毎選択されるので、常に、駆動量の最も大きい搬送軸の駆動に対して他の搬送軸を追従させることができ、精度良く補間を行うことができる。
【００５６】
以上、本発明の一実施例について説明したが、本発明は、前記実施例に限定されるものではなく、種々の態様をとることができる。例えば、本実施例では、Ｓ２１６及びＳ２２０における速度補正値を１としたが、１に限定されるものでなく他の数値でもよく、更には、各軸が減速範囲及び加速範囲にある際に小さな数値を設定し、各軸が一定の速度範囲にある際には大きな数値を設定してもよい。また、本実施例において、Ｓ１１６の割り込み処理の周期を１ｍｓｅｃとしたが、周期を他の数値にしたり、各軸の駆動範囲に応じて周期を変えてもよい。
【図面の簡単な説明】
【００５７】
【図１】本発明の一実施例の、駆動制御装置の制御系を表すブロック図である。
【図２】同実施例の駆動制御装置における直線補間方法の手順の一部を表すフローチャートである。
【図３】同実施例の駆動制御装置における直線補間方法の手順の一部を表すフローチャートである。
【図４】図３中の割り込み処理の手順の一部を表すフローチャートである。
【図５】図３中の割り込み処理の手順の一部を表すフローチャートである。
【図６】本実施例の駆動制御装置の直線補間方法における、原点ＰＯから目標位置Ｐ１まで駆動する際のＸ軸及びＹ軸の補間動作を表す説明図である。
【符号の説明】
【００５８】
１…ＭＰＵ（中央演算処理ユニット）、２…インターフェース、３…Ｘ軸駆動パルス生成部、４…Ｙ軸駆動パルス生成部、５…Ｚ軸駆動パルス生成部、６…Ｗ軸駆動パルス生成部、７，８，９，１０…原発振器、１１，１２，１３，１４…速度制御回路、１５，１６，１７，１８…パルス出力回路、１９，２０，２１，２２…パルス計数回路、２３…Ｘ軸モータ駆動回路、２４…Ｙ軸モータ駆動回路、２５…Ｚ軸モータ駆動回路、２６…Ｗ軸モータ駆動回路、３０…基準軸設定部、３１…他軸速度演算部、３２…理論値演算部、３３…他軸速度補正判定部。
【図１】
0004508969.tif 000002
【図２】
0004508969.tif 000003
【図３】
0004508969.tif 000004
【図４】
0004508969.tif 000005
【図５】
0004508969.tif 000006
【図６】
0004508969.tif 000007