(57)【特許請求の範囲】
【請求項１】
複数の駆動軸の駆動源ごとに位置決めデータを記憶する記憶手段と、
自動運転の種類と各ユニットの位置決め位置とを定めるとともに、自動運転の種類別に各ユニットの位置決め位置に応じて、各ユニットに従属することなく同期動作させる複数の駆動軸の駆動源を読み出しグループに設定して設定内容をテーブルに記憶させる設定手段と、
前記複数の駆動軸の位置決めデータを、前記読み出しグループとは異なる複数の駆動軸の駆動源を一つのグループとする書き込みグループごとに、前記記憶手段に書き込む書き込み手段と、
自動運転の際に、自動運転の種類別に各ユニットの位置決め位置に応じて、前記読み出しグループの単位を前記テーブルから読み出す読み出し手段と、
前記読み出された読み出しグループの単位で前記記憶手段から前記位置決めデータを読み出し、前記各駆動軸の駆動源を同期動作させる制御手段と、
前記読み出しグループとして設定された複数の駆動軸のうちの個々の駆動軸の駆動源ごとに設けられたエンコーダーからの位置情報の出力と、読み出した前記位置決めデータとを比較することで各駆動軸の駆動源ごとに動作の終了を判断する判断手段と、
前記判断手段によって前記動作が終了と判断された駆動軸の駆動源を同期動作の前記読み出しグループから解除する解除手段と、を有し、
先行する同期動作のために前記読み出し手段によって前記テーブルから読み出される第１の読み出しグループに設定された複数の駆動軸の駆動源のすべてが完了する前に、当該第１の読み出しグループに設定された複数の駆動軸の駆動源のうちの一部の駆動源が同期動作の読み出しグループの同期動作から解除された場合であって、前記先行する同期動作に後続する同期動作のために前記読み出し手段によって前記テーブルから読み出された第２の読み出しグループに設定される全ての駆動軸の駆動源が新たな動作を受け付け可能な状態となっており、かつ前記先行する同期動作から解除された駆動軸の駆動源が当該第２の読み出しグループに設定されている場合には、前記先行する同期動作のための第１の読み出しグループに設定された複数の駆動軸の駆動源のすべての動作が完了する前であっても前記後続する同期動作を開始するように前記制御手段が制御することを特徴とする機械の制御装置。
【請求項２】
前記書き込み手段は、前記位置決め位置を教示する際に、前記ユニットごとの複数の区同軸の駆動源を書き込みグループとすることを特徴とする請求項１に記載の機械の制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、機械の制御装置に関し、詳しくは、生産ラインなどで用いられている複数の機械を制御するための制御装置に関する。
【０００２】
【従来の技術】
工場の生産ラインにおいて、複数の機械が同期、共同して作業が行われている光景は、近年よく見掛けるものである。
【０００３】
従来、複数の機械を同期させて動作される場合、個々の機械ごとにその動作を記憶し、各機械が同期して動作するように個々の機械に記憶された動作を同期信号を受け渡すことによりタイミングを取って動作させている。
【０００４】
例えば、いづれも３軸の動作系をもつ２つのＮＣユニットを同期させて動作させる場合、従来は、それぞれのユニットごとに別々に教示が行われ、かつ、各ユニットごとにそのユニットが持っている駆動軸の位置決めデータを記憶しており、互いのユニットがインターロック信号などの同期信号を受け渡すか、または、両ユニットを制御する制御装置から同期信号を両ユニットに出力することで、両ユニットが同期して動くようにしている。
【０００５】
【発明が解決しようとする課題】
このように従来の機械の制御では、２つまたはそれ以上の機械を同期させて動作させようとした場合、互いの同期信号のやり取りや制御装置から出力される同期信号により動作しているため、この同期信号のかけ忘れや、出力時期の相違などによって機械の同期がとれなくなってしまうと言った問題があった。また、位置決めデータ自体が、各ユニットごとに記憶されているため、仮に同期信号のかけ忘れがあった場合に、一つのユニット内に記憶されているデータを見ても、どこで他の機械と同期させるように同期信号を出せばよいか分からず、メンテナンスが難しいと言った問題もあった。
【０００６】
そこで、本発明の目的は、複数の駆動軸をもつ機械を確実に同期させて動作させることができる機械の制御装置を提供することである。
【０００７】
【課題を解決するための手段】
本発明の目的は、下記する手段により達成される。
【０００８】
（１）複数の駆動軸の駆動源ごとに位置決めデータを記憶する記憶手段と、自動運転の種類と各ユニットの位置決め位置とを定めるとともに、自動運転の種類別に各ユニットの位置決め位置に応じて、各ユニットに従属することなく同期動作させる複数の駆動軸の駆動源を読み出しグループに設定して設定内容をテーブルに記憶させる設定手段と、前記複数の駆動軸の位置決めデータを、前記読み出しグループとは異なる複数の駆動軸の駆動源を一つのグループとする書き込みグループごとに、前記記憶手段に書き込む書き込み手段と、自動運転の際に、自動運転の種類別に各ユニットの位置決め位置に応じて、前記読み出しグループの単位を前記テーブルから読み出す読み出し手段と、前記読み出された読み出しグループの単位で前記記憶手段から前記位置決めデータを読み出し、前記各駆動軸の駆動源を同期動作させる制御手段と、前記読み出しグループとして設定された複数の駆動軸のうちの個々の駆動軸の駆動源ごとに設けられたエンコーダーからの位置情報の出力と、読み出した前記位置決めデータとを比較することで各駆動軸の駆動源ごとに動作の終了を判断する判断手段と、前記判断手段によって前記動作が終了と判断された駆動軸の駆動源を同期動作の前記読み出しグループから解除する解除手段と、を有し、先行する同期動作のために前記読み出し手段によって前記テーブルから読み出される第１の読み出しグループに設定された複数の駆動軸の駆動源のすべてが完了する前に、当該第１の読み出しグループに設定された複数の駆動軸の駆動源のうちの一部の駆動源が同期動作の読み出しグループの同期動作から解除された場合であって、前記先行する同期動作に後続する同期動作のために前記読み出し手段によって前記テーブルから読み出された第２の読み出しグループに設定される全ての駆動軸の駆動源が新たな動作を受け付け可能な状態となっており、かつ前記先行する同期動作から解除された駆動軸の駆動源が当該第２の読み出しグループに設定されている場合には、前記先行する同期動作のための第１の読み出しグループに設定された複数の駆動軸の駆動源のすべての動作が完了する前であっても、前記後続する同期動作を開始するように前記制御手段が制御することを特徴とする機械の制御装置。
【００１０】
（２）前記書き込み手段は、前記位置決め位置を教示する際に、前記ユニットごとの複数の駆動軸の駆動源を書き込みグループとすることを特徴とする。
【００１２】
【発明の効果】
本発明によれば、請求項ごとに以下のような効果を奏する。
【００１３】
請求項１記載の本発明は、自動運転の種類と各ユニットの位置決め位置とを定めるとともに、自動運転の種類別に各ユニットの位置決め位置に応じて、各ユニットに従属することなく同期動作させる複数の駆動軸の駆動源を読み出しグループに設定して設定内容をテーブルに記憶させる設定手段、自動運転の際に、自動運転の種類別に各ユニットの位置決め位置に応じて、前記読み出しグループの単位を前記テーブルから読み出す読み出し手段と、前記読み出された読み出しグループの単位で前記記憶手段から前記位置決めデータを読み出し、前記各駆動軸の駆動源を同期動作させる制御手段を有するので、自動運転の種類別に各ユニットの位置決め位置に応じて、同期させて動かす駆動軸の駆動源が読み出しグループとして設定される。したがって、自動運転の種類別に各ユニットの位置決め位置に応じて同期させて動作させる必要のある駆動軸の駆動源が、ユニットに対する従属性をなくしてグループとして設定されることで、同期信号を受け渡すことなく、自動運転の種類別に確実に同期させることができる。また、自動運転の種類別に各ユニットの位置決め位置に応じてグループとして設定されることによってどの駆動軸の駆動源が同期して動くのかが判別できるようになり、メンテナンスが容易になる。
また、前記読み出しグループとは異なるグループとした書き込みグループにより位置決めデータを記憶手段に書き込む書き込み手段を有することとしたので、教示動作においては、同期させて動作させる各駆動軸の駆動源を同期動作のときとは別に教示することができる。
さらに、各駆動軸の駆動源ごとに動作の終了を判断する判断手段と、前記判断手段によって前記動作が終了と判断された駆動軸の駆動源を同期動作の前記読み出しグループから解除する解除手段と、を有し、先行する同期動作のために前記読み出し手段によって前記テーブルから読み出される第１の読み出しグループに設定された複数の駆動軸の駆動源のすべてが完了する前に、当該第１の読み出しグループに設定された複数の駆動軸の駆動源のうちの一部の駆動源が同期動作の読み出しグループの同期動作から解除された場合であって、前記先行する同期動作に後続する同期動作のために前記読み出し手段によって前記テーブルから読み出された第２の読み出しグループに設定される全ての駆動軸の駆動源が新たな動作を受け付け可能な状態となっており、かつ前記先行する同期動作から解除された駆動軸の駆動源が当該第２の読み出しグループに設定されている場合には、前記先行する同期動作のための第１の読み出しグループに設定された複数の駆動軸の駆動源のすべての動作が完了する前であっても、前記後続する同期動作を開始するように前記制御手段が制御するので、次の動作において他のグループ分けが行なわれている駆動軸の駆動源の場合、先に動作が終了すれば、その時点で他のグループとして動作させることが可能となる。
【００１５】
請求項２記載の本発明では、前記書き込み手段は、位置決め位置を教示する際に、前記ユニットごとの複数の駆動軸の駆動源を前記書き込みグループとするものであるので、位置決め位置の教示においては、ユニットごとに駆動軸を駆動する駆動源を書き込みグループとして、当該書き込みグループごとに、前記位置決めデータを前記記憶手段に書き込む。したがって、位置決め位置の教示においては、ユニット単位での教示を行うことができる。一方、自動運転の際には、自動運転の種類別に各ユニットの位置決め位置に応じて、各ユニットに従属することなく同期動作させる複数の駆動軸の駆動源が読み出しグループとして設定される。したがって、同期させて動作させる必要のある駆動軸の駆動源が、自動運転の種類別に各ユニットの位置決め位置に応じて、ユニットに対する従属性をなくして読み出しグループとして設定されるので、確実に同期させることができる。
【００１７】
【発明の実施の形態】
以下、添付した図面を参照して、本発明の一実施の形態を説明する。
【００１８】
図１は本発明の制御装置を適用したＮＣ機械を制御するためのシステム構成を示すブロック図であり、図２は、このシステムの制御装置であるコントローラ内部の構成を示すブロック図であり、図３は、本実施の形態において制御対象であるＮＣ機械の概略構成を示す図面である。なお、各図において、同一部材には同一符号を付した。
【００１９】
まず、図１を参照して、本実施の形態におけるＮＣ機械のシステムを説明する。このシステムは、ＮＣ機械の動作を制御するコントローラ１と、コントローラ１からの指示を電気信号に変換し、実際にモータを駆動するために、各モータごとに設けられているアンプ１１〜１６、各駆動軸の駆動源であるモータ２１〜２６、および各モータに設けられているエンコーダ３１〜３６よりなる。また、コントローラ１には、後述する教示運転を行うための入力装置である教示ペンダント６５と自動運転の指示を出すＰＬＣ６６が接続されている。
【００２０】
コントローラ１は、概略、図２に示すように、所定のプログラムによりＮＣ機械の制御を司るＣＰＵ５１、プログラムや予め決められた定数などを記憶したＲＯＭ５２、ＣＰＵ５１のワークエリアや一時記憶として使用されるＲＡＭ５３、各駆動軸ごとの位置決めデータやグループ化のパラメータなどを記憶するフラッシュメモリ５４、各アンプ１１〜１６へ制御信号を出力し、後述する教示ペンダント６５やＰＬＣ６６、およびエンコーダ１１〜１６からの信号を受信するＩ／Ｏインターフェース（Ｉ／Ｆ）５５よりなる。
【００２１】
ＮＣ機械は、図３に示すように、本実施の形態では、互いに独立して動作させることができる２つのユニットである。各ユニットは共に３軸構成である。すなわち、一方の第１ユニット１０１は、Ｘ，Ｙ，Ｚ方向に移動可能とするために、各駆動軸ごとのモータ２１、２２、および２３を有する。他方の第２ユニット１０２も、同じくＸ，Ｙ，Ｚ方向に移動可能とするために、各駆動軸ごとのモータ２４、２５、および２６を有する。
【００２２】
このシステムにおいては、ユニットの各駆動軸を動作させる各モータは、システム内においてユニットごとの従属性をなくして管理されており、第１ユニット１０１のモータ２１〜２３は第１から第３モータとして、第２ユニット１０２のモータ２４〜２６は第４から第６モータとして管理している。
【００２３】
そして、各モータは、図４に示すパラメータテーブルによりグループ化して管理しており、位置決めデータの書き込み時と、動作させるときのデータの読み出し時にそれぞれ各モータをグループ化して記憶している。このパラメータテーブルはフラッシュメモリ５４に記憶される。なお、パラメータテーブルは、フラッシュメモリに限らず、例えば読み出しを速くする目的には、ＲＡＭに記憶してもよいし、あるいはハードディスクに記憶しておいて、自動運転の直前でＲＡＭに読み込むようにしてもよい。
【００２４】
ここでは、データの書き込み時には、位置決め位置が第１位置のとき第１から第３モータをグループ化したグループＡと、第４から第６モータをグループ化したグループＢとして、各グループごとにフラッシュメモリ５４に位置決めデータを書き込んでいる。同様に第２位置のときもグループＡとＢとして、さらに以降第ｎ位置まで同様にして、フラッシュメモリ５４に位置決めデータをグループ化した各モータごとに書き込んでいる。書き込まれた位置データは各モータ単位で記憶される。
【００２５】
一方、データの読み出しは、第１自動運転と、第２自動運転で異なり、第１自動運転では、位置決め位置が第１位置〜第ｎ位置まで全て、第１から第６モータを１グループ化したグループＣとしている。
【００２６】
一方、第２自動運転では、第１位置を第１から第４モータを１グループとしたグループＦと、第５および第６モータを１グループとしたグループＤとし、第２位置から第ｎ位置は第１から第６モータまでをグループ化したグループＣとしている。
【００２７】
そして、各自動運転では、各グループごとにそのグループ内の各モータの位置データを読み出して、各モータに対し動作指示を与える。この結果、同期して動作させる必要のある位置決め動作に対しては、その同期させる必要のある運転グループ、すなわち位置決めデータの読み出しグループを設定しておくことで、同期信号のやり取りなどを行うことなく、各モータの動作を同期させることができる。
【００２８】
なお、グループ構成については、予め規定しておくことが好ましく、本実施の形態では、先の説明から分かるように、グループＡを第１から第３モータ、グループＢを第４から第６モータ、グループＣを第１から第６モータ、グループＤを第１から第４モータ、グループＥを第５と第６モータをグループ化したものである。もちろん、このようなグループ分けは同期させる必要に応じて任意に決定することができる。
【００２９】
次に、このシステムにおける教示運転、すなわち、記憶手段であるフラッシュメモリ５４への位置決めデータの書き込む手順を説明する。図５は教示運転の手順を説明するためのフローチャートである。
【００３０】
まず、教示ペンダント６５からどの位置（第１位置、第２位置など）の位置決め動作であるかと、教示するユニット、および位置決め位置の座標を入力する（教示データ入力、Ｓ１）。例えば、第１ユニット１０１に対する第１の位置決め位置の座標が入力される。
【００３１】
この座標入力を受けたコントローラ１は、入力された座標を目標座標として、指定されたユニットを動作させる信号を各アンプへ出力する（Ｓ２）。例えば第１ユニット１０１のモータ２１〜２３である第１から第３モータを目標座標方向へ駆動する。
【００３２】
これにより、各モータが動くことで、各モータに取り付けられているエンコーダから現在位置フィードバック信号が出力されるので、コントローラ１はこれを受信する（Ｓ３）。例えばモータ２１〜２３が動くことで、エンコーダ３１〜３３から位置フィードバック信号がコントローラ１へ出力される。
【００３３】
コントローラ１では、エンコーダ出力と目標座標を比較して、各モータの位置が目標座標位置に達したか否かを判断し（Ｓ４）、達していなければモータの駆動を継続し、達した場合には各モータの駆動を停止する（Ｓ５）。
【００３４】
そして、教示ペンダント６５から記憶指令と共に、記憶するグループが入力されて、コントローラ１が、入力されたグループの構成に従って各モータの現在位置をそのときの位置決めデータとして記憶する（Ｓ６）。例えば第１ユニットに対する第１位置の位置決めの場合は、グループＡ、すなわち第１から第３モータがグループとして設定されているので、第１から第３モータの現在位置を第１位置の位置決めデータとして各モータごとに記憶する。なお、書き込みグループの設定は、予め決めておいてもよいし、また、この位置決めデータの書き込みの段階でグループ化して、教示ペンダント６５から指示するようにしてもよい。
【００３５】
そして、教示ペンダント６５から、全ての位置決め位置の教示が終了した旨の入力があれば（Ｓ７，Ｙｅｓ）、続いて、読み出しグループの設定を行う（Ｓ８）。ここでは、自動運転の際に同期させて動かす必要のある駆動軸をグループ化する。本実施の形態では、前述した図４に示したように、第１自動運転と第２自動運転の二つの自動運転について、各位置決め位置ごとにグループ化を行っている。
【００３６】
なお、教示運転の方法については、上記のような手順に限定されるものではなく、この他、例えば教示ペンダントから手動遠隔操縦により各ユニット個別に、または同時に動作させて、位置決め位置まで来た時点で、そのときに位置決め位置として記憶させたい駆動軸のモータをグループ化し、このグループに属するモータの現在位置を書き込むようにしてもよい。
【００３７】
次に、自動運転の手順について説明する。図６は、自動運転の手順を説明するためのフローチャートである。
【００３８】
まず、ライン全体を制御しているＰＬＣ６６において、自動運転の種別、ここでは第１自動運転か第２自動運転かが指令（不図示）された後、ＰＬＣ６６から位置決め指令がコントローラ１に出力される（Ｓ１１）。この位置決め指令は、例えば第１位置、第２位置などの位置決め位置が指令されるものである。
【００３９】
位置決め位置を受けとったコントローラ１では、その位置決め位置におけるグループ設定をフラッシュメモリ５４から読み出す（Ｓ１２）。例えば先のステップＳ１において第１位置が指令されていれば、図４に示したパラメータテーブルから、第１自動運転における第１位置のグループを読み出す。したがって、この場合、動作対象として第１から第６モータが一つのグループ（グループＣ）であることが認識される。
【００４０】
続いて、読み出したグループを構成している各モータの全てが、前の動作を終了しているか否かを判断する（Ｓ１３）。ここで、前の動作とは、例えば今回の位置決め位置が第２位置であった場合には、このステップにおける前の動作とは第１位置への移動である。
【００４１】
このステップＳ１３において、動作指令の出たグループ内の全てのモータが前の動作を完了していなければ、グループ内の全てのモータの動作が完了するのを待ち、動作指令の出たグループ内の全てのモータが前の動作を完了すれば、このグループを構成している各モータにおける、今回の動作指令の位置決めデータを読み込む（Ｓ１４）。そして、各モータのアンプに対して、一斉に動作信号を出力する（Ｓ１５）。
【００４２】
この動作信号によって各モータが動作し、エンコーダから現在位置のフィードバック信号が出力されるので、コントローラ１はこれを受信する（Ｓ１６）。コントローラ１は、続いて、このエンコーダからの出力と、先程読み込んだ各モータごとの位置決めデータとを比較して、各モータごとに、この動作において設定されている位置決め位置に達したか否かを判断する（Ｓ１７）。ここで重要なのは、位置決め位置に達しか否かを、グループ全体としてではなく、各モータごとに判断していることである。このようにすることで、次の動作指令のときには他のグループに属するモータの場合、先に動作が終了すれば他のグループとして動作させることが可能となるのである。
【００４３】
ステップＳ１７の判断の結果、動作の終了したモータについては、グループ化を解除し（Ｓ１８）、また、全てのモータについて動作が終了したならば（Ｓ１９）、この位置決め動作が完了したことをＰＬＣ６６に出力して（Ｓ２０）、処理を終了する。一方、ステップＳ１７において位置決め位置に達したモータがなければそのまま、ステップＳ１５に戻り各モータへの動作信号出力を継続する。同様に、ステップＳ１９において位置決め位置に達していないモータについては動作信号出力を継続する。
【００４４】
以上のように本実施の形態によれば、位置決め位置の教示においては、ユニットごとに駆動軸を駆動するモータをグループ化することで、ユニット単位での教示動作を行うことができ、一方、自動運転の際には、同期させて動作させる必要のある駆動軸のモータを、ユニットに対する従属性をなくしてグループ化することで、確実に同期させることができる。また、本実施の形態では個々のモータごとに動作を終了した時点で、グループ化を解除するため、次の動作にいち早く移行することができる。さらに、本実施の形態では、パラメータテーブルによって、各駆動軸のモータがどの様にグループ化されているかが一目で分かるようになっているので、どの駆動軸が同期して動くかがよく分かりメンテナンスが容易になる。
【００４５】
以上本実施の形態を説明したが、本発明はこの実施の形態に限定されるものではなく、例えば２台のユニットの制御に限らず、３台、４台、あるいはさらにそれ以上の数のユニットにおける複数の駆動軸をグループ化してもよい。また、駆動軸を動かすための駆動源をここではモータとしたが、本発明を適用するに当たっては、モータによって駆動される駆動軸に限らず、例えばピストンシリンダでもよく、そして、モータとピストンシリンダなど、種類の異なる駆動源を一つのグループとしてもよい。
【図面の簡単な説明】
【図１】  本発明を適用した実施の形態におけるシステム構成を示す図面である。
【図２】  上記システムにおいて用いられているコントローラの概略構成を示すブロック図である。
【図３】  上記システムにおいて用いられているＮＣ機械の概略構成を示す図面である。
【図４】  上記システムにおいて用いられているグループ化のパラメータテーブルを示す図表である。
【図５】  教示運転の手順を示すフローチャートである。
【図６】  自動運転の手順を示すフローチャートである。
【符号の説明】
１…コントローラ
１１〜１６…アンプ
２１〜２６…モータ
３１〜３６…エンコーダ
５１…ＣＰＵ
５２…ＲＯＭ
５３…ＲＡＭ
５４…フラッシュメモリ
５５…インターフェース
６５…教示ペンダント
６６…ＰＬＣ
【図１】
0004112781.tif 000002
【図２】
0004112781.tif 000003
【図３】
0004112781.tif 000004
【図４】
0004112781.tif 000005
【図５】
0004112781.tif 000006
【図６】
0004112781.tif 000007