(57)【特許請求の範囲】
【請求項１】
多軸用の複数のモータを補間動作させる多軸補間制御装置において、多軸間で補間動作を実現するのに必要な複数のモータの単位時間毎の速度のデータがパルス長のデータとして予めモータ毎に順次記録されたメモリ部と、複数のモータを当該速度で各々駆動させるためにメモリ部から読み出されたデータに対応したパルス長を有したパルス信号を各々生成するパルス信号生成部と、基準クロックを計数するとともに当該計数結果が単位時間を示す毎にリセットする単位時間カウンタと、パルス信号生成部の後段に各々設けられており且つ単位時間カウンタのリセットのタイミングに応じて当該パルス信号生成部から出力された各パルス信号を各々リセットするパルス信号同期処理部と、単位時間カウンタのリセットのタイミングに応じてメモリ部の読み出しアドレスを順次変化させる読み出しアドレス制御部とを具備し、前記パルス信号生成部は、基準クロックを計数する基準クロックカウンタと、メモリ部から読み出されたデータと基準クロックカウンタの計数値とを大小比較し当該比較結果を前記パルス信号として出力する比較部とを有しており、前記計数値が前記データと等しくなったタイミングで基準クロックカウンタをリセットする構成となっていることを特徴とする多軸補間制御装置。
【請求項２】
前記メモリ部に複数種の単位時間毎の速度のデータがパルス長のデータとして予めモータ毎に順次記録されており且つ制御用コンピュータの指令に従って動作する場合の請求項１記載の多軸補間制御装置において、前記単位時間カウンタについて、制御用コンピュータにより単位時間の設定値が変更可能になっている一方、前記読み出しアドレス制御部について、前記メモリ部の読み出しアドレスを制御用コンピュータの指令に従って切り替え、これにより当該指令に応じた種類の単位時間当たりの速度のデータをモータ毎に順次読み出すことが可能になっていることを特徴とする多軸補間制御装置。
【発明の詳細な説明】
【０００１】
【発明が属する技術分野】
本発明は工作機械等に利用される装置であって、多軸用の複数のモータを補間動作させる多軸補間制御装置に関する。
【０００２】
【従来の技術】
ＮＣマシン等においては、テーブル等を自由自在に移動させるために多軸用のモータが備えられている。例えば、Ｘ−Ｙテーブル用のＸ軸用、Ｙ軸用モータとしてステッピングモータが用いられている場合、図５に示すような多軸補間制御装置により同モータの補間動作が行われている。
【０００３】
同装置は、ＮＣマシン等の制御用コンピュータ７から出力された制御信号（Ｘ−Ｙテーブル等を移動させるパターンを示した動作パラメータ）に基づいてＸ軸、Ｙ軸の動作量を演算する補間演算機能を有したモータコントローラ５と、モータコントローラ５により求められたＸ軸、Ｙ軸の動作量に応じたＸ軸用、Ｙ軸用のパルス信号を生成してＸ軸用、Ｙ軸用モータ３、４に各々出力するＸ軸、Ｙ軸パルスジェネレータ６ｘ、６ｙから構成されている。
【０００４】
例えば、制御用コンピュータ７から出力された制御信号がＸ−Ｙテーブル等を円弧移動させる動作パラメータであったとすると、この動作パラメータに基づいてＸ−Ｙテーブル等を円弧移動させるのに必要なＸ軸、Ｙ軸の動作量をモータコントローラ５が各々演算し、演算されたＸ軸、Ｙ軸の動作量に対応したパルス長を有したＸ軸用、Ｙ軸用パルス信号をＸ軸、Ｙ軸パルスジェネレータ６ｘ、６ｙが各々生成するようになっている。このような多軸補間制御装置によりＸ軸用、Ｙ軸用モータ３、４が補間動作されることから、図外のＸ−Ｙテーブルが制御用コンピュータ７の指令通りに円弧移動することになる。
【０００５】
【発明が解消しようとする課題】
しかしながら、上記従来例による場合、Ｘ−Ｙテーブル等を複雑なパターンで移動させるにはモータコントローラ５内の演算が複雑となり、これに伴って演算時間も長くなる。場合によっては、高速演算プロセッサ等を用いることが必要になる。また、補間動作すべきモータの数が多くなると、ソフトウエアだけでなく、ハードウエア全体が複雑になり大幅なコスト高になる。
【０００６】
本発明は上記した背景の下で創作されたものであり、その目的とするところは、演算を行うことなく多軸用の複数のモータの補間動作を実現することが可能な多軸補間制御装置を提供することにある。
【０００７】
【課題を解消するための手段】
本発明に係る多軸補間制御装置は、多軸用の複数のモータを補間動作させる多軸補間制御装置において、多軸間で補間動作を実現するのに必要な複数のモータの単位時間毎の速度のデータがパルス長のデータとして予めモータ毎に順次記録されたメモリ部と、複数のモータを当該速度で各々駆動させるためにメモリ部から読み出されたデータに対応したパルス長を有したパルス信号を各々生成するパルス信号生成部と、基準クロックを計数するとともに当該計数結果が単位時間を示す毎にリセットする単位時間カウンタと、パルス信号生成部の後段に各々設けられており且つ単位時間カウンタのリセットのタイミングに応じて当該パルス信号生成部から出力された各パルス信号を各々リセットするパルス信号同期処理部と、メモリ部上のデータをモータ毎に順次読み出すために単位時間カウンタのリセットのタイミングに応じてメモリ部の読み出しアドレスを順次変化させる読み出しアドレス制御部とを具備している。
【０００８】
パルス信号生成部に関しては、基準クロックを計数する基準クロックカウンタと、メモリ部から読み出されたデータと基準クロックカウンタの計数値とを大小比較し当該比較結果を前記パルス信号として出力する比較部とを有し、前記計数値が前記データと等しくなったタイミングで基準クロックカウンタをリセットする構成となっているものを用いる。
【０００９】
メモリ部に複数種の単位時間毎の速度のデータがパルス長のデータとして予めモータ毎に順次記録されており且つ制御用コンピュータの指令に従って動作する場合、単位時間カウンタについて、制御用コンピュータにより単位時間の設定値が変更可能になっている一方、読み出しアドレス制御部について、メモリ部の読み出しアドレスを制御用コンピュータの指令に従って切り替え、これにより当該指令に応じた種類の速度のデータをモータ毎に順次読み出すことが可能になっている構成のものを用いると良い。
【００１０】
【発明の実施するための最良の形態】
以下、本発明の実施の形態を図面を参照して説明する。図１は多軸補間制御装置のブロック図、図２は同装置のメモリ部のデータの内容を説明するための図であってＸ軸用モータを動作させるためのパルス信号の部分波形図、図３は同装置のメモリ部にデータとして記録されるパルス長の設定方法について説明するための図であってパルス信号のタイミングチャート、図４は同装置のメモリ部にデータとして記録されるパルス長の設定方法について説明するための別のパルス信号のタイミングチャートである。
【００１１】
ここに掲げる多軸補間制御装置１は、ＮＣマシンの制御用コンピュータ２とステッピングモータであるＸ軸用、Ｙ軸用モータ３、４との間に備えられる装置であって、ＮＣマシンのＸ−Ｙテーブル（図示せず）に連結されたＸ軸用、Ｙ軸用モータ３、４を補間動作させる基本構成となっている。ここではＸ−Ｙテーブルを複数種のパターン（例えば、円弧動作、直線移動等）で動かせているので、同装置１は制御用コンピュータ２の指令に従って動作するようになっている。
【００１２】
同装置１は、Ｘ軸用、Ｙ軸用モータ３、４を単位時間Ｔ毎に所定速度で各々動作させるためのパルス長のデータが予め各々記録されたメモリ部１０と、メモリ部１０から出力されたデータｘ、ｙに応じたパルス長を有したパルス信号Ｐｘ、Ｐｙを各々順次生成するとともにＸ軸用、Ｙ軸用モータ３、４に向けて各々出力するパルス信号生成部２０ｘ、２０ｙと、基準クロックを計数するとともに計数結果が単位時間Ｔを示す毎にリセットする単位時間カウンタ３０と、パルス出力信号生成部２０ｘ、２０ｙの後段に各々設けられており且つ単位時間カウンタ３０のリセットのタイミングに応じてパルス信号生成部２０ｘ、２０ｙから出力されたパルス信号Ｐｘ、Ｐｙを各々リセットするパルス信号同期処理部４０ｘ、４０ｙと、単位時間カウンタ３０のリセットのタイミングに応じてメモリ部１０の読み出しアドレスを順次変化させる読み出しアドレス制御部５０とを具備している。
【００１３】
メモリ部１０としてはここではＥＰＲＯＭを用いている。図２はＸ軸用モータ３を単位時間Ｔ毎に所定速度で各々動作させるためのパルス信号Ｐｘの波形を示している。パルス信号Ｐｘは単位時間Ｔにおいて同一パルス長のパルスが所定数含められた信号となっている。ここではパルスの半周期の時間を示すデータｘ（図中ではデータｎ）がパルス長のデータとしてメモリ部１０に記録されている。メモリ部１０にはＸ軸用モータ３用のパルス長のデータが単位時間Ｔ毎に記録されている。パルス信号Ｐｙのパルス長のデータについても全く同様にしてメモリ部１０に記録されている。要するに、パルス信号Ｐｘ、Ｐｙのパルス長のデータは単位時間Ｔ毎のＸ軸用、Ｙ軸用モータ３、４の速度を各々示している。なお、パルス長の設定方法について後述する。
【００１４】
このようなパルス信号Ｐｘ、Ｐｙのパルス長のデータはＸ−Ｙテーブルを動かせるパターン（円弧動作、直線移動等）の種類毎にメモリ部１０に記録されている。パルス長のデータを基礎付ける単位時間Ｔはパターンの種類に応じて設定されている。なお、円弧動作用のデータについての単位時間Ｔ１とし、直線動作用のデータについての単位時間をＴ２とする。
【００１５】
パルス信号生成部２０ｘは、基準クロック（ｔ≪Ｔ）を計数する基準クロックカウンタ２０１ｘと、メモリ部１０から出力されたデータｘと基準クロックカウンタ２０１ｘの計数値Ａ１とを大小比較し当該比較結果をパルス信号Ｐｘとして出力する比較部２０２ｘとを有しており、計数値Ａ１がデータｘと等しくなったタイミングで基準クロックカウンタ２０１ｘをリセットする構成となっている。メモリ部１０の容量を考慮し、図２に示すパルスの半周期の時間を示すデータをメモリ部１０に記録するようにした関係上、計数値Ａ１がデータｘと等しくなったタイミングで比較部２０２ｘの出力をローレベルからハイレベル又はハイレベルからローレベルに反転させている。上記した内容はパルス信号生成部２０ｙについても全く同様である。なお、基準クロックカウンタ２０１ｘ、２０１ｙは単位時間カウンタ３０と同時にカウントを開始するようになっている。
【００１６】
単位時間カウンタ３０はパルス信号生成部２０ｘと似通った構成となっており、基準クロックの計数値が予め設定された単位時間Ｔに等しくなると、計数値をリセットするとともにこれをリセット信号ＲＳＴとして出力するようになっている。なお、単位時間カウンタ３０における単位時間Ｔの設定値は制御用コンピュータ２により任意に書き換え可能になっている。
【００１７】
パルス信号同期処理部４０ｘとしてはここではフリップフロップを用いている。パルス信号同期処理部４０ｘには、パルス信号生成部２０ｘから出力されたパルス信号Ｐｘ及び単位時間カウンタ３０から出力されたリセット信号ＲＳＴが入力されている。即ち、リセット信号ＲＳＴが非アクティブであるときにはパルス信号Ｐｘをそのまま出力させるが、リセット信号ＲＳＴがアクティブになると、パルス信号Ｐｘを強制的にリセットするようになっている。上記した内容はパルス信号同期処理部４０ｙについても全く同様である。
【００１８】
読み出しアドレス制御部５０はメモリ部１０の読み出しアドレスを生成するレジスタ回路であって、単位時間カウンタ３０から出力されたリセット信号ＲＳＴ及び制御用コンピュータ２から出力された指令データが入力されている。即ち、リセット信号ＲＳＴがアクティブとなる度に、読み出しアドレスが順次カウントアップされるようになっている。その結果、メモリ部１０から出力されるパルス信号Ｐｘ、Ｐｙのパルス長のデータはリセット信号ＲＳＴがアクティブとなる度に次のデータに移行することになる。
【００１９】
メモリ部１０には円弧移動用、直線移動用等のパルス長のデータがその種類毎に記録されていることについては上述した。これらのパルス長のデータの読み出しは、制御用コンピュータ２からの指令により読み出しアドレス制御部５０を通じてその種類毎に切り替えられるようになっている。
【００２０】
ここでメモリ部１０にデータとして記録すべきパルス長の設定方法について図３及び図４を参照して説明する。まず、図３（ａ）に示すように、パルス信号Ｐｘ、Ｐｙにおいて単位時間Ｔ内のパルス数が異なる場合、そのパルス周波数が同一であるときには、少ないパルス数の方、ここではパルス信号Ｐｘの全てのパルスが先に出力されてしまうことになる。よって、パルス信号Ｐｘとパルス信号ｐｙとは単位時間Ｔの始めにおいて同期がとれているものの、その終わりにおいて同期がとれておらず、その結果、Ｘ軸用、Ｙ軸用モータ３、４、ひいてはＸ軸、Ｙ軸が補間された状態にならない。
【００２１】
そこで、図３（ｂ）に示すように、パルス信号Ｐｘ、Ｐｙが単位時間Ｔ内において均等に出力されるようにパルス長を単位時間Ｔとパルス数によって修正する。具体的には、Ｘ軸用、Ｙ軸用モータ３、４において、単位時間Ｔ当たりに出力される最大のパルス数をＸとし、そのときのパルス長をｍとする。所望のパルス数がＹであったとすると、その所望のパルス数でのパルス長ｎは、ｎ＝（Ｘ／Ｙ）ｍとなる。このｎのパルス長でパルス信号Ｐｘ、Ｐｙを出力すれば、パルス信号Ｐｘ、Ｐｙが単位時間Ｔ内の均等に割り振られて出力される。
【００２２】
このような方法でパルス信号Ｐｘのパルス長が設定されると、パルス信号Ｐｘとパルス信号Ｐｙとは単位時間Ｔの始めにおいてだけでなく、その終わりにおいても同期がとれることになり、その結果、Ｘ軸用、Ｙ軸用モータ３、４、ひいてはＸ軸、Ｙ軸が補間された状態となる。
【００２３】
なお、上記演算で端数が出る場合には、図４に示すようにパルス信号Ｐｘ又はＰｙが単位時間Ｔで立ち下がらないことから、これを防ぐために、パルス信号Ｐｘ又はＰｙが単位時間Ｔで立ち下がるようにパルス長を修正して増分しておくと良い。
【００２４】
このようにパルス信号Ｐｘとパルス信号Ｐｙとの間で単位時間Ｔの初め及び終わりにおいて同期がとれるように両信号のパルス長を設定することが必要である。このように設定された両信号のパルス長のデータが単位時間Ｔ毎にメモリ部１０に予め記録するようにしている。メモリ部１０に予め記録された、Ｘ軸用、Ｙ軸用モータ３、４を単位時間Ｔ毎に所定速度で各々動作させるためのパルス長のデータとはこのように設定されたデータを指している。
【００２５】
以上のように構成された多軸補間制御装置１の動作について説明する。同装置１が通電されると、単位時間カウンタ３０及び基準クロックカウンタ２０１ｘ、２０１ｙが同時にカウントを開始する。
【００２６】
そして、制御用コンピュータ２から出力された指令がＸ−Ｙテーブルを円弧動作させる場合、読み出しアドレス制御部５０により当該指令に応じたパターンのデータｘ、ｙがメモリ部１０から各々出力される。この場合、制御用コンピュータ２により単位時間カウンタ３０における単位時間Ｔの設定値がＴ１に書き換えられる。
【００２７】
基準クロックカウンタ２０１ｘの計数値Ａ１がデータｘに等しくなると、比較部２０２ｘの出力の論理が反転すると同時に、基準クロックカウンタ２０１ｘがリセットされ、その後、基準クロックカウンタ２０１ｘの計数値Ａ１がデータｘに等しくなると、比較部２０２ｘの出力の論理が更に反転する。この結果、パルスの半周期がデータｘであるパルス信号Ｐｘが生成される。以後はこの繰り返しであり、単位時間カウンタ３０のリセット信号ＲＳＴがアクティブになるまでパルス信号Ｐｘが連続して生成され、パルス信号同期処理部４０ｘを介してＸ軸用モータ３に出力される。
【００２８】
一方、単位時間カウンタ３０の計数値が単位時間Ｔ１に等しくなると、リセット信号ＲＳＴがアクティブになり、パルス信号同期処理部４０ｘによりパルス信号Ｐｘがリセットされる。リセット信号ＲＳＴがアクティブになると、メモリ部１０の読み出しアドレスがカウントアップされ、次のデータｘ’がメモリ部１０から出力される。以後は上記と全く同様である。
【００２９】
上記した内容はパルス信号Ｐｘであるが、パルス信号Ｐｙについても全く同様である。その結果、パルス信号Ｐｘ、Ｐｙとの関係については図３（ｂ）に示すようになる。このように単位時間Ｔ１毎に同期したパルス信号Ｐｘ、ＰｙがＸ軸用、Ｙ軸用モータ３、４に各々出力されるので、Ｘ軸用、Ｙ軸用モータ３、４、ひいてはＸ軸、Ｙ軸が補間動作され、結果として、所望の円弧動作が実現されることになる。
【００３０】
また、制御用コンピュータ２から出力された指令がＸ−Ｙテーブルを直線移動させる場合、読み出しアドレス制御部５０により当該指令に応じたパターンのデータｘ、ｙがメモリ部１０から各々出力される。この場合、制御用コンピュータ２により単位時間カウンタ３０における単位時間Ｔの設定値がＴ２に書き換えられる。その後は上記と全く同様の動作となり、単位時間Ｔ２毎に同期したパルス信号Ｐｘ、ＰｙがＸ軸用、Ｙ軸用モータ３、４に各々出力されるので、Ｘ軸用、Ｙ軸用モータ３、４、ひいてはＸ軸、Ｙ軸が補間動作され、結果として、所望の直線移動が実現されることになる。制御用コンピュータ２から出力された指令が上記以外である場合も全く同様である。
【００３１】
よって、従来例による場合とは異なり、演算を行うことなく、Ｘ軸用、Ｙ軸用モータ３、４の補間動作を実現することが可能になる。また、メモリ部１０に記録されたデータｘ、ｙを同じ比率で倍にすることにより、Ｘ−Ｙテーブルの拡大縮小動作を簡単に実現することが可能となる。更に、Ｘ−Ｙテーブルを複雑なパターンで移動させるときであっても、そのためのデータをメモリ部１０に用意しておくだけで良く、極めて簡単に実現することが可能である。
【００３２】
上記実施形態においては２軸について説明したが、これ以上の多軸であっても同様に適用可能である。この場合、基準クロックカウンタについては各軸毎に必要であるが、単位時間カウンタについては補間する一群について１つのみで良いことになる。このような３軸以上の場合であっても、補間動作のための特別な演算を行う必要がない以上、ハードウエア自体が大幅に複雑にならず、装置の高性能化及び低コスト化を図ることが可能になる。また、ＮＣマシンだけに適用されず、プリンタ等にも同様に適用可能である。更に、制御用コンピュータの下で動作させるのではなく、多軸補間制御装置の単独で多軸用モータの補間動作を行うような形態をとってもかまわない。
【００３３】
なお、本発明に係る多軸補間制御装置は上記実施形態に限定されず、メモリ部等については同一機能を有する限り、どのような種類又は構成のものを用いてもかまわない。パルスにより動作し得る限りモータの種類についても限定されず、ステッピングモータの代わりに直流モータ等を用いてかまわない。
【００３４】
【発明の効果】
以上、本発明に係る多軸補間制御装置による場合、複数のモータを駆動させるさせるためのパルス信号をモータ毎に生成する一方、そのパルス信号のパルス長を予めメモリ部に記録された多軸間で補間動作を実現するのに必要な複数のモータの単位時間毎の速度のデータに従って各々可変にする構成となっているので、演算を行うことなく多軸用の複数のモータの補間動作を実現させることが可能になった。従来例による場合とは異なり、演算を行うことが不要である以上、たとえ補間動作すべきモータの数が多いときであっても、ハードウエア全体が非常にシンプルとなり、大幅な低コスト化を図ることが可能になる。しかもＸ−Ｙテーブル等を複雑なパターンで移動させるときであっても、そのためのデータをメモリ部に用意しておくだけで良く、極めて簡単に実現することが可能になる。よって、同装置の低コスト化及び高性能化を図る上で大きな意義がある。
【図面の簡単な説明】
【図１】本発明の実施の形態を説明するための図であって、多軸補間制御装置のブロック図である。
【図２】同装置のメモリ部のデータの内容を説明するための図であってＸ軸用モータを動作させるためのパルス信号の部分波形図である。
【図３】同装置のメモリ部にデータとして記録されるパルス長の設定方法について説明するための図であってパルス信号のタイミングチャートである。
【図４】同装置のメモリ部にデータとして記録されるパルス長の設定方法について説明するための別のパルス信号のタイミングチャートである。
【図５】従来例を説明するための図であって、多軸補間制御装置のブロック図である。
【符号の説明】
１  多軸補間制御装置
１０    メモリ部
２０ｘ、２０ｙ    パルス信号生成部
３０  単位時間カウンタ
４０ｘ、４０ｙ  パルス信号同期処理部
５０  読み出しアドレス制御部
２、３  Ｘ軸用、Ｙ軸用モータ
【図１】
0003640909.tif 000002
【図２】
0003640909.tif 000003
【図３】
0003640909.tif 000004
【図４】
0003640909.tif 000005
【図５】
0003640909.tif 000006