(57)【特許請求の範囲】
【請求項１】
複数の軸を同期して動作させるための多軸同期制御装置であって、
前記複数の軸を同期して動作させるための同期指令を出力する同期指令出力手段と、
あらかじめ定められた範囲の数値を繰り返しカウントするカウンタと、
前記同期指令が出力された時に、前記カウンタの数値を読み込む読込手段と、
読み込んだカウンタの数値に、定められたオフセット値を加算して、同期させるべき複数の軸の起動タイミングとする起動タイミング生成手段と、
前記カウンタの数値が起動タイミングに相当する数値となったときに、同期させるべき複数の軸を一斉に起動させるとともに、起動後は、それらの軸の動作を前記カウンタの数値の推移に基づいて制御する制御手段と、
を有することを特徴とする多軸同期制御装置。
【請求項２】
前記カウンタは、前記同期指令出力手段から同期指令が出力された時に数値のカウントを開始することを特徴とする請求項１に記載の多軸同期制御装置。
【請求項３】
前記制御手段は、前記カウンタによってカウントされる数値の変化速度に応じて前記同期させるべき複数の軸の動作速度を制御することを特徴とする請求項１に記載の多軸同期制御装置。
【請求項４】
前記制御手段は、前記同期させるべきそれぞれの軸の動作速度を、前記カウンタによってカウントされる数値の変化速度に比例させて制御することを特徴とする請求項１に記載の多軸同期制御装置。
【請求項５】
複数の軸を同期して動作させるための多軸同期制御方法であって、
前記複数の軸を同期して動作させるための同期指令を出力する段階と、
あらかじめ定められた範囲の数値を繰り返しカウントする段階と、
前記同期指令が出力された時に、前記カウンタの数値を読み込む段階と、
読み込んだカウンタの数値に、定められたオフセット値を加算して、同期させるべき複数の軸の起動タイミングとする段階と、
前記カウンタの数値が起動タイミングに相当する数値となったときに、同期させるべき複数の軸を一斉に起動させるとともに、起動後は、それらの軸の動作を前記カウンタの数値の推移に基づいて制御する段階と、
を含むことを特徴とする多軸同期制御方法。
【請求項６】
複数の軸を同期して動作させるための多軸同期制御プログラムであって、
コンピュータを、
前記複数の軸を同期して動作させるための同期指令を出力する同期指令出力手段と、
あらかじめ定められた範囲の数値を繰り返しカウントするカウンタと、
前記同期指令が出力された時に、前記カウンタの数値を読み込む読込手段と、
読み込んだカウンタの数値に、定められたオフセット値を加算して、同期させるべき複数の軸の起動タイミングとする起動タイミング生成手段と、
前記カウンタの数値が起動タイミングに相当する数値となったときに、同期させるべき複数の軸を一斉に起動させるとともに、起動後は、それらの軸の動作を前記カウンタの数値の推移に基づいて制御する制御手段と、
して機能させるための多軸同期制御プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、多軸同期制御装置、多軸同期制御方法、および多軸同期制御プログラムに関する。
【０００２】
【従来の技術】
工作機械、位置決め装置、搬送装置などの生産設備の中には、複数のアクチュエータを同期させて動かし、複数のアクチュエータで１つの作業をするものがある。この生産設備は、通常はそれぞれのアクチュエータを個々に動作（非同期制御）させているが、複数のアクチュエータで１つの作業をしなければならないときには、複数のアクチュエータの同期を取って動作（同期制御）させている。
【０００３】
たとえば、Ｘ、Ｙ、Ｚの方向に個々に動くことができるアクチュエータを３台有してなる位置決め装置が２台並んで配置されている場合を想定する。これらの位置決め装置は、それぞれの位置決め装置に与えられる小さな部品の位置決めをする場合、それぞれの位置決め装置が別々に、その位置決め装置の３台のアクチュエータを動作して、与えられた部品の位置決めをする。一方、２台の位置決め装置が協同して位置決め作業を行わなければならない、非常に大きな部品の位置決めをする場合、これらの位置決め装置は、協同して動作しなければならないアクチュエータの同期を取って動作させ、その部品の位置決めをする。具体的には、その大きな部品をＸ軸方向に５００ｍｍ移動させるとすれば、一方の位置決め装置のＸ軸のアクチュエータと他方の位置決め装置のＸ軸のアクチュエータとをＸ軸方向に同じ速度で５００ｍｍ動かす。
【０００４】
複数のアクチュエータを同期させて動かす方法としては、従来２つの方法が知られている。その１つは、同期させる複数のアクチュエータを同時に起動させる方法であり、もう１つは、１つのアクチュエータの動きに他のアクチュエータを追従させて動かす方法である。
【０００５】
【発明が解決しようとする課題】
しかしながら、上述したような従来の方法では、次のような問題がある。
【０００６】
複数のアクチュエータを同時に起動させる方法の場合、アクチュエータを個々に動作させる非同期制御を行うときと、複数のアクチュエータの同期を取って動作させる同期制御を行うときとでは、それぞれ異なる制御をしなければならないので、制御の種類が多くなり制御が複雑化する。たとえば、「従来の技術」の項目で例示した位置決め装置の場合、個々のアクチュエータの動作を非同期制御するときの制御の対象は３つであり、Ｘ軸のアクチュエータの動作を同期制御するときの制御の対象は１つである。したがって、実際にはアクチュエータは３台しかないのに、制御の対象は４つになり、制御の内容としては４軸の位置決め装置と同じものになる。
【０００７】
１つのアクチュエータの動きに他のアクチュエータを追従させて動かす方法の場合、同期制御を開始する前に、どのアクチュエータを「親軸」とし、この「親軸」にどのアクチュエータを追従させるのかの設定（「親軸」と「子軸」の設定）をしなければならない。また、親軸と子軸との設定をしてしまうと、その関係を崩すことはできない。たとえば、ある制御を行うときに、一方のアクチュエータが親軸となり、他方のアクチュエータが子軸となるのが望ましいが、他の制御を行うときには、この親軸と子軸との関係を逆にしたほうが望ましいとしても、その関係を逆にして制御を行うことはできない。さらに、同期させる制御に入ろうとしても、親軸または子軸となる軸のいずれかが動作している間は同期させる制御に入ることができないので、生産設備を効率的に動作させることが難しくなる。
【０００８】
いずれの方法を採用している場合でも、非同期制御および同期制御の制御プログラムは、制御対象となる装置構成に固有のものとなるので、その制御プログラムの共用は、まったく同一の装置構成のものでない限り不可能である。したがって、少しでも装置構成が異なるとまったく別の制御プログラムの開発を余儀なくされる。
【０００９】
本発明は、以上のような従来の問題点を解消するために成されたものであり、非同期制御と同期制御を同じような制御プログラムで実現することができ、親軸と子軸の関係を決めることなく同期制御をすることができ、さらに非同期制御と同期制御とをいつでも自由に切り換えることができ、生産設備を効率的に動作させることができる、多軸同期制御装置、多軸同期制御方法、および多軸同期制御プログラムの提供を目的とする。
【００１０】
【課題を解決するための手段】
上記の課題を解決し、本発明の上記目的を達成するために、請求項１に記載の多軸同期制御装置は、複数の軸を同期して動作させるための多軸同期制御装置であって、前記複数の軸を同期して動作させるための同期指令を出力する同期指令出力手段と、あらかじめ定められた範囲の数値を繰り返しカウントするカウンタと、前記同期指令が出力された時に、前記カウンタの数値を読み込む読込手段と、読み込んだカウンタの数値に、定められたオフセット値を加算して、同期させるべき複数の軸の起動タイミングとする起動タイミング生成手段と、前記カウンタの数値が起動タイミングに相当する数値となったときに、同期させるべき複数の軸を一斉に起動させるとともに、起動後は、それらの軸の動作を前記カウンタの数値の推移に基づいて制御する制御手段と、を有することを特徴とする。
【００１２】
請求項２に記載の多軸同期制御装置は、請求項１に記載の多軸同期制御装置において、前記カウンタは、前記同期指令出力手段から同期指令が出力された時に数値のカウントを開始することを特徴とする。
【００１３】
請求項３に記載の多軸同期制御装置は、請求項１に記載の多軸同期制御装置において、前記制御手段は、前記カウンタによってカウントされる数値の変化速度に応じて前記同期させるべき複数の軸の動作速度を制御することを特徴とする。
【００１４】
請求項４に記載の多軸同期制御装置は、請求項１に記載の多軸同期制御装置において、前記制御手段は、前記同期させるべきそれぞれの軸の動作速度を、前記カウンタによってカウントされる数値の変化速度に比例させて制御することを特徴とする。
【００１５】
請求項５に記載の多軸同期制御方法は、複数の軸を同期して動作させるための多軸同期制御方法であって、前記複数の軸を同期して動作させるための同期指令を出力する段階と、あらかじめ定められた範囲の数値を繰り返しカウントする段階と、前記同期指令が出力された時に、前記カウンタの数値を読み込む段階と、読み込んだカウンタの数値に、定められたオフセット値を加算して、同期させるべき複数の軸の起動タイミングとする段階と、前記カウンタの数値が起動タイミングに相当する数値となったときに、同期させるべき複数の軸を一斉に起動させるとともに、起動後は、それらの軸の動作を前記カウンタの数値の推移に基づいて制御する段階と、
を含むことを特徴とする
【００１６】
請求項６に記載の多軸同期制御プログラムは、複数の軸を同期して動作させるための多軸同期制御プログラムであって、コンピュータを、前記複数の軸を同期して動作させるための同期指令を出力する同期指令出力手段と、あらかじめ定められた範囲の数値を繰り返しカウントするカウンタと、前記同期指令が出力された時に、前記カウンタの数値を読み込む読込手段と、読み込んだカウンタの数値に、定められたオフセット値を加算して、同期させるべき複数の軸の起動タイミングとする起動タイミング生成手段と、前記カウンタの数値が起動タイミングに相当する数値となったときに、同期させるべき複数の軸を一斉に起動させるとともに、起動後は、それらの軸の動作を前記カウンタの数値の推移に基づいて制御する制御手段と、して機能させる。
【００１７】
【発明の効果】
以上のように構成された本発明によれば、複数の軸から見ると親軸と子軸との関係を決めることなく同期制御をすることができ、同期制御が行われているときであっても、各軸は各軸固有の移動量に基づいて動作を制御することができるようになった。
【００１８】
【発明の実施の形態】
以下添付した図面を参照して本発明の実施の形態を説明する。
【００１９】
図１に示した搬送装置は、本発明にかかる同期制御方法を用いて比較的大きな車体パネル２０を搬送させる搬送装置である。また、図２は、図１に示した搬送装置の制御系のブロック図である。
【００２０】
この搬送装置は３軸を有する２台の位置決め装置Ｍ１、Ｍ２からなり、車体パネル２０はＹ軸方向に移動された後、Ｚ方向に移動されるものとする。
【００２１】
位置決め装置Ｍ１、Ｍ２の動作は、コントローラ１によって総括的に制御される。サーボアンプ３００およびサーボアンプ３１０は、それぞれ３台のサーボアンプを内蔵する集約型のサーボアンプである。サーボアンプ３００には、サーボアンプ３０１〜３０３が内蔵され、サーボアンプ３１０には、サーボアンプ３０４〜３０６が内蔵される。
【００２２】
サーボアンプ３０１は、位置決め装置Ｍ１のＹ軸アクチュエータを駆動するモータ１０１を動作させる。同様に、サーボアンプ３０２は、Ｘ軸アクチュエータを駆動するモータ１０２を、サーボアンプ３０３は、Ｚ軸アクチュエータを駆動するモータ１０３を動作させる。また、サーボアンプ３０４は、位置決め装置Ｍ２のＹ軸アクチュエータを駆動するモータ１０４を動作させる。同様に、サーボアンプ３０５は、Ｘ軸アクチュエータを駆動するモータ１０５を、サーボアンプ３０６は、Ｚ軸アクチュエータを駆動するモータ１０６を動作させる。
【００２３】
それぞれの位置決め装置Ｍ１、Ｍ２には、３つのアクチュエータからなる１台のマニピュレータが備えられている。図１に示すように、位置決め装置Ｍ１のマニピュレータＭ０１には、アクチュエータＭ０１−１、Ｍ０１−２、Ｍ０１−３が備えられ、位置決め装置Ｍ２のマニピュレータＭ０２には、アクチュエータＭ０２−１、Ｍ０２−２、Ｍ０２−３が備えられている。それぞれのアクチュエータは、モータ、エンコーダ、サーボアンプで構成される。
【００２４】
アクチュエータＭ０１−１は、図示されていないハンドを駆動するモータ１０１、モータ１０１の回転量を検出するためのエンコーダ２０１、モータ１０１の回転を制御するためのサーボアンプ３０１から構成される。アクチュエータＭ０１−２、Ｍ０１−３、
Ｍ０２−１〜Ｍ０２−３の構成は、アクチュエータＭ０１−１とまったく同じ構成であるので、その説明は省略する。
【００２５】
コントローラ１は、本発明にかかる多軸同期制御装置の主要部を構成するものである。コントローラ１は、Ｉ／Ｏポート２、ＣＰＵ１１、カウンタ１２、メモリ１３を備えている。
【００２６】
Ｉ／Ｏポート２は、サーボアンプ３０１〜３０６との間で情報の授受をするためのインターフェースである。
【００２７】
ＣＰＵ１１は、本発明にかかる多軸同期制御プログラムを実行して、複数の軸の同期を総括的に制御するものである。
【００２８】
カウンタ１２は、本発明の仮想的な親軸を構成する役割を担うものであり、あらかじめ定められた範囲の数値、たとえば１〜１０００を繰り返しカウントするものである。
【００２９】
メモリ１３は、複数の軸のうち、同期して動作する軸がどの軸であるかを示す情報が記憶され、また、複数の軸の起動タイミングを生成するためのオフセット値が記憶され、さらに、ＣＰＵ１１から同期指令が出力された時に読み込んだカウンタの数値が記憶される。
【００３０】
つぎに、本発明にかかる多軸同期制御装置の動作を詳細に説明する。図３は、図１に示した搬送装置の動作の一例を示すフローチャートである。図４および図５は、多軸同期制御装置の詳細な動作を説明するためのラダー回路図である。なお、本実施の形態では、発明の内容をわかりやすく説明するためにラダー回路図を使用したが、実際にはこのラダー回路図に基づいて同期制御が行われているわけではない。
【００３１】
プログラムがスタートすると、ＣＰＵ１１は、仮想親軸起動の指令を出力し、カウンタ１２はこの指令に伴って一定の変化速度で数値をカウントし始める。これを図４のラダー図で示せば、「仮想親軸起動」の接点がＯＮし、仮想移動量カウントが開始されることに相当する。数値のカウントは、本実施の形態では１〜１０００に設定している。また、変化速度は、たとえば１秒間に５００に設定している。したがって、カウンタ１２は、１秒間に１〜５００までカウントし、つぎの１秒間で５０１〜１０００までカウントする。この１〜１０００までのカウントは、プログラムが終了するまで繰り返される（Ｓ１）。
【００３２】
つぎに、位置決め装置Ｍ１、Ｍ２は、車体パネル２０を受け取るために、各アクチュエータをあらかじめ定められている位置に設定する。具体的には、位置決め装置Ｍ１、Ｍ２のマニピュレータに設けられているクランプが所望の位置に来るように各アクチュエータを動かす。この場合は、位置決め装置Ｍ１、Ｍ２の同期を取る必要はないので、コントローラ１は、サーボアンプ３０１〜３０６を個別に制御する（Ｓ２）。
【００３３】
作業者は、位置決め装置Ｍ１、Ｍ２のマニピュレータに車体パネル２０をセットする。そして、位置決め装置Ｍ１、Ｍ２のマニピュレータは、車体パネル２０をしっかりとクランプする（Ｓ３）。
【００３４】
つぎに、位置決め装置Ｍ１、Ｍ２は、車体パネル２０をＹ方向に搬送する。このときは、位置決め装置Ｍ１のＹ軸アクチュエータＭ０１−１と位置決め装置Ｍ２のＹ軸アクチュエータＭ０２−１は同期して動く必要がある。したがって、コントローラ１は、つぎの同期制御を実施することになる。
【００３５】
ＣＰＵ１１は、メモリ１３に記憶されている、同期して動作する軸がどの軸であるかを示す情報を読み込んで、同期させるべき軸が、Ｙ軸アクチュエータＭ０１−１とＹ軸アクチュエータＭ０２−１であることを認識する。ＣＰＵ１１は、この認識に基づいて、Ｙ軸アクチュエータＭ０１−１を駆動するモータ１０１とＹ軸アクチュエータＭ０２−１を駆動するモータ１０４の回路に同期指令を出力する。この同期指令が出力されると、図４の「Ｍ０１起動指令」の接点と、図５の「Ｍ０２起動指令」の接点がＯＮし、Ｍ０１とＭ０２に起動がかかる。これによって「Ｍ０１起動」の接点と「Ｍ０２起動」の接点がすべてＯＮになる。
【００３６】
同時に、図４と図５の「同期指示」の接点がＯＮし、ＣＰＵ１１は、Ｙ軸アクチュエータＭ０１−１の同期データと、Ｙ軸アクチュエータＭ０２−１の同期データを作成する。これらの同期データは、仮想的に設けた親軸と同期を取りながら動かす、Ｙ軸アクチュエータＭ０１−１の移動量とＹ軸アクチュエータＭ０２−１の移動量である。たとえば、車体パネル２０をＹ方向に１０００ｍｍ移動するのであれば、それらの移動量は１０００ｍｍとなる。
【００３７】
ＣＰＵ１１は、この起動指令の出力と同時に、起動指令が出力された時点でのカウンタ１２数値を読み込む。たとえば、起動指令を出力した時にカウンタ１２の数値が２５０であればその２５０を読み込む。そして、ＣＰＵ１１は、読み込んだカウンタの数値に、メモリ１３に記憶されているオフセット値を加算し、起動タイミングを取るための数値を求める。上記の場合、オフセット値が１５０に設定してあるとすれば、起動タイミングを取るための数値は、２５０＋１５０＝４００となる。ＣＰＵ１１は、この数値を図４および図５の「同期カウント値」の接点にセットする。
【００３８】
カウンタ１２の数値が、起動指令が出力された時点の数値から起動タイミングを取るための数値に達すると、ＣＰＵ１１は、Ｙ軸アクチュエータＭ０１−１の移動量とＹ軸アクチュエータＭ０２−１の移動量とを求め、Ｙ軸アクチュエータＭ０１−１とＹ軸アクチュエータＭ０２−１とを一斉に動かす。たとえば、上記の場合、カウンタ１２の値が４００になったときに「同期カウント値」の接点がＯＮし、Ｙ軸アクチュエータＭ０１−１のモータ１０１とＹ軸アクチュエータＭ０２−１のモータ１０４に同時に電圧が印加され、両方のモータ１０１、１０４が回転する。
【００３９】
ＣＰＵ１１は、仮想的に設けた親軸を仮想的に動かすための単位時間あたりの仮想移動量を作成するとともに、Ｉ／Ｏポート２を介して、サーボアンプ３０１にＹ軸アクチュエータＭ０１−１の同期データを渡し、サーボアンプ３０４にＹ軸アクチュエータＭ０２−１の同期データを渡す。上記の場合、サーボアンプ３０１とサーボアンプ３０４に１０００ｍｍ移動分のパルス数を与える。
【００４０】
ここで、単位時間あたりの仮想移動量は、子軸となる、Ｙ軸アクチュエータＭ０１−１とＹ軸アクチュエータＭ０２−１との移動速度を決めるために用いられる。たとえば子軸の移動量＝仮想移動量であれば、子軸は親軸とは同一の速度で移動することになるが、子軸の移動量＝仮想移動量×２であれば、子軸は、親軸の速度の２倍の速度で移動する。単位時間あたりの仮想移動量は、カウンタ１２によってカウントされる数値の変化速度を変えることによって実現される。
【００４１】
サーボアンプ３０１およびサーボアンプ３０４は、与えられた同期データに基づいてモータ１０１およびモータ１０４を回転させる。モータ１０１およびモータ１０４が動くと、その回転量がエンコーダ２０１およびエンコーダ２０４からのパルスとしてサーボアンプ３０１およびサーボアンプ３０４にフィードバックされる。なお、モータ１０１とモータ１０４の同期データは同一であるので、Ｙ軸アクチュエータＭ０１−１とＹ軸アクチュエータＭ０２−１は同一の速度で同一の移動量だけ移動し、車体パネル２０が２台の位置決め装置Ｍ１、Ｍ２によって協同してＹ方向に搬送される（Ｓ４）。
【００４２】
このようにして車体パネル２０が所定の位置まで搬送されると、別のロボットが車体パネル２０に対して溶接作業を行う（Ｓ５）。
【００４３】
溶接作業が終了すると、今度は位置決め装置Ｍ１、Ｍ２は、車体パネル２０をＺ方向に搬送する。
【００４４】
このときは、位置決め装置Ｍ１のＺ軸アクチュエータＭ０１−３と位置決め装置Ｍ２のＺ軸アクチュエータＭ０２−３は同期して動く必要がある。したがって、コントローラ１は、つぎの同期制御を実施することになる。
【００４５】
ＣＰＵ１１は、メモリ１３に記憶されている、同期して動作する軸がどの軸であるかを示す情報を読み込んで、同期させるべき軸が、Ｚ軸アクチュエータＭ０１−３とＺ軸アクチュエータＭ０２−３であることを認識する。ＣＰＵ１１は、この認識に基づいて、モータ１０３とモータ１０５の回路に同期指令を出力する。この同期指令が出力されると、図４の「Ｍ０１起動指令」の接点と、図５の「Ｍ０２起動指令」の接点がＯＮし、Ｍ０１とＭ０２に起動がかかる。これによって「Ｍ０１起動」の接点と「Ｍ０２起動」の接点がすべてＯＮになる。
【００４６】
同時に、図４と図５の「同期指示」の接点がＯＮし、ＣＰＵ１１は、Ｚ軸アクチュエータＭ０１−３の同期データと、Ｚ軸アクチュエータＭ０２−３の同期データを作成する。たとえば、車体パネル２０をＺ方向に３００ｍｍ移動するのであれば、それらの移動量は３００ｍｍとなる。
【００４７】
ＣＰＵ１１は、この起動指令の出力と同時に、起動指令が出力された時点でのカウンタ１２数値を読み込む。たとえば、起動指令を出力した時にカウンタ１２の数値が２５０であればその９５０を読み込む。そして、ＣＰＵ１１は、読み込んだカウンタの数値に、メモリ１３に記憶されているオフセット値を加算し、起動タイミングを取るための数値を求める。上記の場合、オフセット値が１５０に設定してあるとすれば、起動タイミングを取るための数値は、９５０＋１５０−１０００＝１００となる。ＣＰＵ１１は、この数値を図４および図５の「同期カウント値」の接点にセットする。
【００４８】
カウンタ１２の数値が、起動指令が出力された時点の数値から起動タイミングを取るための数値に達すると、ＣＰＵ１１は、Ｙ軸アクチュエータＭ０１−３の移動量とＹ軸アクチュエータＭ０２−３の移動量とを求め、Ｙ軸アクチュエータＭ０１−３とＹ軸アクチュエータＭ０２−３とを一斉に動かす。たとえば、上記の場合、カウンタ１２の値が１００になったときに「同期カウント値」の接点がＯＮし、Ｚ軸アクチュエータＭ０１−３のモータ１０３とＺ軸アクチュエータＭ０２−３のモータ１０６に同時に電圧が印加され、両方のモータ１０３、１０６が回転する。
【００４９】
ＣＰＵ１１は、仮想的に設けた親軸を仮想的に動かすための単位時間あたりの仮想移動量を作成するとともに、Ｉ／Ｏポート２を介して、サーボアンプ３０３にＹ軸アクチュエータＭ０１−３の同期データを渡し、サーボアンプ３０６にＹ軸アクチュエータＭ０２−３の同期データを渡す。上記の場合、サーボアンプ３０３とサーボアンプ３０６に３００ｍｍ移動分のパルス数を与える。
【００５０】
サーボアンプ３０３およびサーボアンプ３０６は、与えられた同期データに基づいてモータ１０３およびモータ１０６を回転させる。モータ１０３およびモータ１０６が動くと、その回転量がエンコーダ２０３およびエンコーダ２０６からのパルスとしてサーボアンプ３０１およびサーボアンプ３０４にフィードバックされる。なお、モータ１０３とモータ１０６の同期データは同一であるので、Ｙ軸アクチュエータＭ０１−３とＹ軸アクチュエータＭ０２−３は同一の速度で同一の移動量だけ移動し、車体パネル２０が２台の位置決め装置Ｍ１、Ｍ２によって協同してＺ方向に搬送される（Ｓ６）。
【００５１】
このようにして車体パネル２０が所定の位置まで搬送されると、別の作業者が車体パネル２０を取り外す（Ｓ７）。
【００５２】
つぎに、位置決め装置Ｍ１、Ｍ２は、すべての軸を原位置に復帰させる。この場合は、位置決め装置Ｍ１、Ｍ２の同期を取る必要はないので、コントローラ１は、サーボアンプ３０１〜３０６を個別に制御する（Ｓ８）。
【００５３】
以上のように、本発明の多軸同期制御では、同期制御する場合には仮想的に設けた親軸に実際に存在する子軸を追従させるため、実際に存在する軸間での親子関係はなくなり、実際に存在する軸間で親軸と子軸の関係を決めることなく同期制御をすることができる。また、各軸は自由に同期する同期しないを選択することができるとともに、同期制御が行われている最中でも、各軸は、各軸の移動量に基づいて位置決めをすることができるようになる。
【００５４】
また、実際に存在する軸間で親軸と子軸との切り換えをする必要がなくなるので、非同期制御と同期制御を同じような制御プログラムで実現することができ、さらに非同期制御と同期制御とをいつでも自由に切り換えることができるようになる。
【００５５】
さらに、カウンタのオフセット値を変えることによって、同期制御の開始タイミングを自由に調整することができるので、非常に柔軟性に富んだ制御が可能になる。
【００５６】
本発明では、仮想的に設けた親軸に同期させる場合と同期させない場合とでの制御プログラムの相違は極僅かであるので、軸構成の異なる生産設備に対しても、既存の制御プログラムに多少の変更を加えるのみで、容易に対応することができる。
【００５７】
なお、本実施の形態では、カウンタ１２の起動タイミングをプログラムのスタート時点としたが、同期指令が出力された時点としても良い。
【図面の簡単な説明】
【図１】本発明にかかる同期制御方法を用いて比較的大きな車体パネルを搬送させる搬送装置である。
【図２】図１に示した搬送装置の制御系のブロック図である。
【図３】図１に示した搬送装置の動作の一例を示すフローチャートである。
【図４】多軸同期制御装置の詳細な動作を説明するためのラダー回路図である。
【図５】多軸同期制御装置の詳細な動作を説明するためのラダー回路図である。
【符号の説明】
１…コントローラ、
２…Ｉ／Ｏポート、
２０…車体パネル、
１０１〜１０６…モータ、
２０１〜２０６…エンコーダ、
３００〜３０６、３１０…サーボアンプ、
Ｍ１、Ｍ２…位置決め装置。
【図１】
0003873685.tif 000002
【図２】
0003873685.tif 000003
【図３】
0003873685.tif 000004
【図４】
0003873685.tif 000005
【図５】
0003873685.tif 000006