(57)【要約】【課題】加工機械およびロボットの内部時計を基準時計に一致させることが必須ではなく、干渉チェック装置のような専用の同期用装置を用いずに加工機械にロボットを高精度に追従させることができる加工システムを提供する。【解決手段】この加工システムは、加工機械１０と、加工プログラムに沿って加工機械１０の加工テーブル１１を移動させる数値制御装置２０と、加工テーブル１１上のワークＷに対し処理を行うロボット３０と、ロボット制御装置４０とを備え、数値制御装置２０が、加工テーブル１１の現在の位置座標と、加工プログラムを先読みし加減速補間することにより算出される先行時間における加工テーブル１１の先読位置座標と、対応する時間情報を、ロボット制御装置４０に送信するように構成され、ロボット制御装置４０が、数値制御装置２０から受信する前記現在の位置座標および前記先読位置座標と前記時間情報を用いて、ロボット３０の先端が加工テーブル１１の移動に追従するようにロボット３０を制御する。【選択図】図１
2019086823.tif 000002
【特許請求の範囲】
【請求項１】
加工テーブル上に位置決めされたワークを加工する加工機械と、
加工プログラムを格納しており、該加工プログラムに沿って前記加工テーブルを移動させる数値制御装置と、
前記加工機械で加工される前記ワークに対し所定の処理を行うロボットと、
該ロボットを制御するロボット制御装置とを備え、
前記数値制御装置が、前記加工テーブルの移動中に、前記加工テーブルの現在の位置座標を得ると共に、前記加工プログラムを先読みし加減速補間することにより先行時間における前記加工テーブルの先読位置座標を算出し、前記現在の位置座標および前記先読位置座標と前記位置座標の各々に対応する時間情報とを前記ロボット制御装置に送信するように構成され、
前記ロボット制御装置が、前記数値制御装置から受信する前記現在の位置座標および前記先読位置座標と前記時間情報とを用いて、前記ロボットの先端が前記加工テーブルの移動に追従するように前記ロボットを制御する加工システム。
【請求項２】
前記加工テーブルが、その上に複数の前記ワークが位置決めされるように構成され、
前記ロボット制御装置が、前記加工テーブル上の前記複数のワークの互いの位置関係を示すワーク相対位置情報も用いて、前記ロボットの前記先端が前記加工テーブルの移動に追従するように前記ロボットを制御する請求項１に記載の加工システム。
【請求項３】
前記ロボットが、その先端に取付けられたツールを用いて、前記加工テーブルの移動に追従しながら前記加工機械によって加工が行われている前記ワークに対し所定の作業を行うものである請求項１に記載の加工システム。
【請求項４】
前記ロボット制御装置が、前記加工機械による前記ワークに対する加工が完了した後であって、前記加工テーブルが動いている状態で、前記ロボットの前記先端が前記加工テーブルの移動に追従するように前記ロボットを制御する請求項１〜３の何れかに記載の加工システム。
【請求項５】
前記ロボット制御装置が、前記数値制御装置から受信する前記現在の位置座標および前記先読位置座標と、前記位置座標の各々に対応する前記時間情報に加え、過去に受信済みの前記位置座標および前記時間情報を用いて、前記ロボットの先端が前記加工テーブルの移動に追従するように前記ロボットを制御する請求項１に記載の加工システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は加工システムに関し、より具体的には、加工機械とロボットとを用いる加工システムに関する。
【背景技術】
【０００２】
このような加工システムとして、数値制御装置において加工プログラムを先読みし補間計算を行うことにより得られる加工機械の先読移動データと、ロボット制御装置が把握しているロボットの状態データとが干渉チェック装置に送信され、干渉チェック装置が加工機械とロボットとの干渉のチェックを行うように構成されたものが知られている（例えば、特許文献１参照。）。
【０００３】
また、内部時計を有する数値制御装置と、内部時計を有するロボット制御装置と、基準時計とを備え、加工機械とロボットとを同期させる加工システムも知られている（例えば、特許文献２参照。）。当該加工システムでは、数値制御装置およびロボット制御装置がそれぞれの内部時計を基準時計に一致させるように作動する一方、数値制御装置およびロボット制御装置の内部時計を基準時計に合わせられない時は、基準時計を数値制御装置およびロボット制御装置の内部時計に合わせるように構成されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１７−１６２２８号公報
【特許文献２】特開２００９−２７９６０８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
前者の加工システムでは、加工機械とロボットとの干渉のチェックを行うために、干渉チェック装置等の専用の装置が必要になる。これは、加工機械とロボットとが非同期で動作しており、非同期であることにより生ずる両者のずれを常に監視する必要があるためである。
【０００６】
後者の加工システムでは、数値制御装置およびロボット制御装置の内部時計と基準時計とを一致させなければ、加工機械とロボットとを同期させることができないので、内部時計と基準時計とを一致させる処理を常に行う必要があり、内部時計と基準時計とが一致しなくなった時に加工システムを停止する必要がある。
【０００７】
本発明は、このような事情に鑑みてなされたものであって、加工機械およびロボットの内部時計を基準時計に一致させることが必須ではなく、干渉チェック装置のような専用の同期用装置を用いずに加工機械にロボットを高精度に追従させることができる加工システムの提供を目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明は以下の手段を採用する。
本発明の一態様は、加工テーブル上に位置決めされたワークを加工する加工機械と、加工プログラムを格納しており、該加工プログラムに沿って前記加工テーブルを移動させる数値制御装置と、前記加工機械で加工される前記ワークに対し所定の処理を行うロボットと、該ロボットを制御するロボット制御装置とを備え、前記数値制御装置が、前記加工テーブルの移動中に、前記加工テーブルの現在の位置座標を得ると共に、前記加工プログラムを先読みし加減速補間することにより先行時間における前記加工テーブルの先読位置座標を算出し、前記現在の位置座標および前記先読位置座標と前記位置座標の各々に対応する時間情報とを前記ロボット制御装置に送信するように構成され、前記ロボット制御装置が、前記数値制御装置から受信する前記現在の位置座標および前記先読位置座標と前記時間情報とを用いて、前記ロボットの先端が前記加工テーブルの移動に追従するように前記ロボットを制御するものである。
【０００９】
前記態様では、数値制御装置が加工テーブルの現在の位置座標および先読位置座標をロボット制御装置に送信し、ロボット制御装置は受信した加工テーブルの現在の位置座標および先読位置座標を用いて、ロボットの先端が加工テーブルの移動に追従するようにロボットを制御する。加工テーブルの現在の位置の取得は多くの数値制御装置が通常行うことであり、加工テーブルの先読位置座標の計算も加工を行う上で多くの数値制御装置が通常行うことである。このため、数値制御装置側の処理の増加を抑制することができる。なお、加工テーブルの現在の位置座標に関しては、目標位置またはセンサで計測した位置のどちらを用いてもよい。
【００１０】
一方、ロボット制御装置は、数値制御装置が加工テーブルの移動の制御に用いる前記現在の位置座標および前記先読位置座標に応じて、ロボットの先端の動作軌跡の算出およびキネマティクス関連演算を行い当該動作軌跡を実現するための各関節軸モータの回転角度を計算する。このため、ロボットの追従制御を高精度に実現することが可能となる。また、数値制御装置からは位置座標に加えて時間情報が送信されるため、ロボット制御装置側で位置座標の時間変化を考慮でき、数値制御装置とロボット制御装置が異なる制御周期であっても、ロボットの追従制御を行うことが可能である。
【００１１】
上記態様において、好ましくは、前記加工テーブルが、その上に複数の前記ワークが位置決めされるように構成され、前記ロボット制御装置が、前記加工テーブル上の前記複数のワークの互いの位置関係を示すワーク相対位置情報も用いて、前記ロボットの前記先端が前記加工テーブルの移動に追従するように前記ロボットを制御するように構成されている。
【００１２】
ここで、加工テーブル上の複数のワークのそれぞれに同じ加工が行われる場合は、数値制御装置において、複数のワークのそれぞれに加工プログラムを設定せずに、１つの加工プログラムを用いて複数のワークを加工することがある。この時、数値制御装置は各ワークの加工のために同一の加工プログラムを読み込むと共に、ワークの位置に応じた加工テーブルの位置のシフトを行う。
【００１３】
上記構成では、前記シフトの量に対応するワーク相対位置情報を用いて、ロボットの先端が加工テーブルの移動に追従するように前記ロボットが制御されるので、数値制御装置側の処理の増加を抑制する上で有利である。
【００１４】
上記態様において、好ましくは、前記ロボットが、その先端に取付けられたツールを用いて、前記加工テーブルの移動に追従しながら前記加工機械によって加工が行われている前記ワークに対し所定の作業を行うものである。
このように構成すると、加工テーブルを停止させずに加工テーブルの移動を継続したままロボットによる所定の作業を並列で行えるためサイクルタイムを短縮することができ、生産効率を向上する上で有利である。
【００１５】
上記態様において、好ましくは、前記ロボット制御装置が、前記加工機械による前記ワークに対する加工が完了した後であって、前記加工テーブルが動いている状態で、前記ロボットの前記先端が前記加工テーブルの移動に追従するように前記ロボットを制御するように構成されている。
【００１６】
このように構成すると、加工テーブル上に１つのワークが位置決めされ、当該ワークに対する加工機械による加工が完了したが、加工テーブルが動いている状態において、加工テーブルを停止させずに、加工テーブルの移動を継続したまま例えばロボットによって当該ワークの取出作業を行うことできるので、サイクルタイムを短縮する上で有利である。
【００１７】
上記態様において、好ましくは、前記ロボット制御装置が、前記数値制御装置から受信する前記現在の位置座標および前記先読位置座標と、前記位置座標の各々に対応する前記時間情報に加え、過去に受信済みの前記位置座標および前記時間情報を用いて、前記ロボットの先端が前記加工テーブルの移動に追従するように前記ロボットを制御する。
【００１８】
当該構成では、ロボット制御装置が、現在の位置座標および前記先読位置座標と、その時間情報に加え、過去に受信済みの位置座標とその時間情報も用いるので、加工テーブルに追従のためのロボットの先端の動作軌跡の算出精度を向上することが可能となり、ロボットの追従制御を高精度に実現する上で有利である。
【発明の効果】
【００１９】
本発明によれば、加工機械およびロボットの内部時計を基準時計に一致させることが必須ではなく、干渉チェック装置のような専用の同期用装置を用いずに加工機械にロボットを高精度に追従させることができ、加工テーブルを停止させずに、加工テーブルの移動を継続したまま加工テーブル上でロボットに所定の作業を行わせることを可能とし、サイクルタイムを短縮する上で有利である。
【図面の簡単な説明】
【００２０】
【図１】本発明の一実施形態の加工システムの概略正面図である。
【図２】本実施形態の加工システムの加工機械の要部斜視図である。
【図３】本実施形態の加工システムの数値制御装置のブロック図である。
【図４】本実施形態の数値制御装置が計算する補間データの例である。
【図５】本実施形態の数値制御装置が計算する補間データの例である。
【図６】本実施形態の加工システムのロボット制御装置のブロック図である。
【図７】本実施形態のロボット制御装置の制御の例を示すフローチャートである。
【図８】本実施形態のロボット制御装置の制御の例を示すフローチャートである。
【図９】本実施形態のロボット制御装置が計算する補間データの例である。
【発明を実施するための形態】
【００２１】
本発明の第１の実施形態に係る加工システムを図面を参照して以下に説明する。
この加工システムは、図１に示すように、加工テーブル１１に保持されたワークＷを加工するＮＣ工作機械等の加工機械１０と、加工プログラム２３ｂ（図３参照）を格納しており、加工プログラム２３ｂに沿って加工テーブル１０を移動させる数値制御装置２０と、加工機械１０で加工されるワークＷに対し所定の処理を行うロボット３０と、ロボット３０を制御するロボット制御装置４０とを備えている。
【００２２】
加工機械１０は、加工テーブル１１と、加工テーブル１１をＸ方向（水平方向）と、Ｘ方向と直角なＹ方向（水平方向）に移動させるテーブル移動装置１２と、加工テーブル１１の上方に配置され、フライス、ドリル等の加工ツールＴを保持すると共に加工用に駆動するツール駆動装置１３とを有する。加工テーブル１１は周知の構造を有し、加工テーブル１１の上面には直接又は治具等を介してワークＷが位置決め又は固定される。本実施形態では、加工テーブル１１上のＸ方向に並ぶ２箇所にそれぞれワークＷが位置決めされるようになっている。
【００２３】
テーブル移動装置１２は、加工機械１０の本体１０ａに固定され、Ｘ方向に延びるレール１２ａと、レール１２ａによりＸ方向に移動可能に支持された移動テーブル１２ｂと、移動テーブル１２ｂ上に設けられＹ方向に延びるレール１２ｃとを有し、レール１２ｃ上に加工テーブル１１がＹ方向に移動可能に支持されている。テーブル移動装置１２はさらに、移動テーブル１２ｂをＸ方向に移動するためのモータ、エンコーダ、ボールねじ等を有するＸ方向駆動装置１２ｄと、加工テーブル１１を移動テーブル１２ｂに対しＹ方向に移動するためのモータ、エンコーダ、ボールねじ等を有するＹ方向駆動装置１２ｅとを有する。なお、テーブル移動装置１２が加工テーブル１１をＺ方向（鉛直方向）にも移動させるように構成されていてもよい。
【００２４】
Ｘ方向駆動装置１２ｄ、Ｙ方向駆動装置１２ｅ、およびツール駆動装置１３は数値制御装置２０に接続され、数値制御装置２０により制御される。
数値制御装置２０は、図３に示すように、例えば、ＣＰＵ、ＲＡＭ等を有する制御部２１と、表示装置２２と、不揮発性ストレージ、ＲＯＭ等を有する記憶装置２３と、タッチパネル、入力キー等を有する入力装置２４とを備えている。入力装置２４は数値制御装置２０と無線通信するように構成されていてもよい。
【００２５】
記憶装置２３にはシステムプログラム２３ａが格納されており、システムプログラム２３ａが数値制御装置２０の基本機能を担っている。また、記憶装置２３には、加工機械１０のＸ方向駆動装置１２ｄ、Ｙ方向駆動装置１２ｅ、およびツール駆動装置１３を制御して加工を行うための加工プログラム２３ｂが少なくとも１つ格納されている。
【００２６】
加工プログラム２３ｂは、例えば、加工ツールＴの回転等を制御しながらＣＡＤデータ等に基づく加工軌跡に沿ってツール駆動装置１３に保持された加工ツールＴと加工テーブル１１に保持されたワークＷとを相対的に移動させる指令の集合である。本実施形態では、ワークＷに図２に示すような加工軌跡Ｌ１で加工を行う場合、加工テーブル１１が加工ツールＴに対しＸ方向およびＹ方向にＬ２の軌跡で移動する。
【００２７】
記憶装置２３には加工制御プログラム２３ｃも格納されている。制御部２１は加工制御プログラム２３ｃに基づき作動し、先ず、現在の加工テーブル１１の位置情報（現在位置座標情報）を得ると共に、その取得時間を得る。加工テーブル１１の位置は、例えば、Ｘ方向駆動装置１２ｄおよびＹ方向駆動装置１２ｅのエンコーダの検出データ等に基づき得られる。
【００２８】
また、制御部２１は加工制御プログラム２３ｃに基づき作動し、加工プログラム２３ｂの指令を複数ブロック先まで先読みし、当該複数の指令に含まれる各加工軌跡の加工起点、加工終点、加工方法（直線、曲線等）、加工深度等の情報を得て、当該情報に基づき、加工起点と加工終点との間の加工詳細情報を算出する。当該加工詳細情報には、各加工軌跡について算出される情報であって、複数の所定の先行時間のそれぞれにおける加工起点と加工終点との間の加工テーブル１１の移動位置（目標位置）の情報（先読位置座標情報）が含まれる（補間処理）。
【００２９】
前記複数の所定の先行時間は、例えば、現在の時間Ｔｋから見て数ｍｍ秒ごとに設定された先行する時間Ｔｋ＋１、Ｔｋ＋２、・・・である。例えば、図４および図５に示すように、Ｘ方向およびＹ方向のそれぞれについて所定の先行時間ごとに移動位置を求める。
【００３０】
各加工軌跡における加工起点と加工終点との間の所定の先行時間ごとの移動位置を算出する時、加工軌跡、加工深度等に応じた加工ツールＴとワークＷとの相対速度が算出され、前記所定の先行時間ごとの移動位置は当該相対速度が反映されたものとなる（加減速補間）。つまり、相対速度が小さい時は隣接する移動位置間の移動量が小さくなる。
【００３１】
記憶装置２３には補間データ送信プログラム２３ｄも格納されている。制御部２１は補間データ送信プログラム２３ｄに基づき作動し、算出された加工詳細情報のうち前記先読位置座標情報と、前記先読位置座標情報に含まれる複数の先読位置座標（加工テーブル１１の移動位置）のそれぞれに対応する時間情報（対応先行時間情報）と、現在の加工テーブル１１の位置である現在位置座標情報と、その取得時間の情報とを、ロボット制御装置４０に所定時間おきに送信するように構成されている。
【００３２】
本実施形態では、最新の現在位置座標情報と共に、その前の複数回分の現在位置座標情報も、その取得時間の情報とともに送信される。また、数値制御装置２０が加工詳細情報を算出する周期（補間周期）ごとに前記送信が行われる。なお、現在時間の情報の送信は省くことも可能である。
【００３３】
ロボット３０は、その先端に取付けられたツールにより、加工機械１０の加工テーブル１１上のワークＷの取出作業、ワークＷの取付作業、ワークＷへの加工、バリ取り作業、加工面の検査、加工機械１０内の清掃作業等の所定の作業を行うものである。ロボット３０は、複数のアーム部材および関節を備えると共に、複数の関節をそれぞれ駆動する複数のサーボモータ３１を備えている（図６参照）。各サーボモータ３１として、回転モータ、直動モータ等の各種のサーボモータを用いることが可能である。各サーボモータ３１はその作動位置を検出するエンコーダ等の作動位置検出装置を内蔵しており、作動位置検出装置の検出値がロボット制御装置４０に送信される。
【００３４】
ロボット３０の先端部にはツール３２が取付けられ、ツール３２により前記所定の作業が行われる。本実施形態では、ロボット３０は加工テーブル１１からのワークＷの取出作業を行うように構成され、ツール３２としてワークＷを把持するための保持装置であるチャック、吸着装置等がロボット３０の先端部に取付けられている。
【００３５】
ロボット制御装置４０は、図６に示すように、例えば、ＣＰＵ、ＲＡＭ等を有するロボット制御部４１と、表示装置４２と、不揮発性ストレージ、ＲＯＭ等を有する記憶装置４３と、ロボット３０のサーボモータ３１にそれぞれ対応するように設けられた複数のサーボ制御器４４と、ロボット制御装置４０に接続されると共に操作者が持ち運び可能な教示操作盤４５とを備えている。教示操作盤４５はロボット制御装置４０と無線通信するように構成されていてもよい。
【００３６】
記憶装置４３にはシステムプログラム４３ａが格納されており、システムプログラム４３ａがロボット制御装置４０の基本機能を担っている。また、記憶装置４３には動作プログラム４３ｂが少なくとも１つ格納されている。
【００３７】
ロボット制御部４１はシステムプログラム４３ａにより作動し、ワークＷの取出作業を行う際には、記憶装置４３に格納されている動作プログラム４３ｂおよび追従プログラム４３ｃを読み出してＲＡＭに一時的に格納し、読み出した動作プログラム４３ｂおよび追従プログラム４３ｃに沿って各サーボ制御器４４に制御信号を送り、これによりロボット３０の各サーボモータ３１のサーボアンプを制御すると共に、エアシリンダ等のツール３２の駆動装置３２ａ（図６参照）に制御信号を送る。
【００３８】
ロボット制御装置４０は、ロボット３０に設定されているロボット座標系を認識している。また、ロボット制御装置４０は、加工機械１０に設定されている加工機械座標系や、ロボット座標系と加工機械座標系との座標対応関係も認識している。例えば、ロボット３０の先端にキャリブレーションツールを取付けると共に、原点位置に配置された加工テーブル１１上の第１の孔にキャリブレーションツールを挿入し、また、第１の孔からＸ方向にずれた加工テーブル１１上の第２の孔にもキャリブレーションツールを挿入することにより、ロボット制御装置４０が加工機械座標系や座標対応関係を認識することができる。
【００３９】
加工テーブル１１上に２つのワークＷが位置決めされ、一方のワークＷに対し加工ツールＴによる加工が行われている間に、ロボット制御装置４０が他方のワークＷの取出作業をロボット３０に行わせる。換言すると、ロボット制御装置４０は、他のワークＷの加工のために加工テーブル１１がＸ方向およびＹ方向に移動している状態で、他方のワークＷの取出作業をロボット３０に行わせる。
【００４０】
この時のロボット制御部４１の動作プログラム４３ｂおよび追従プログラム４３ｃに基づく処理の一例を、図７を参照しながら説明する。ここで、加工テーブル１１上において、一方のワークＷ（以下、第１ワークＷと称する。）は原点位置に位置決めされ、他方のワークＷ（以下、第２ワークＷと称する。）は原点位置からＸ軸方向に所定距離、例えば２００ｍｍ離れた位置に位置決めされており、加工テーブル１１上の第１ワークＷと第２ワークＷとの相対位置（ワーク相対位置情報）が数値制御装置２０からロボット制御装置４０に送信され、ロボット制御装置４０の記憶装置４３に保存されている。
【００４１】
第２ワークＷの加工が完了し、第１ワークＷの加工が開始され、当該ワーク加工情報を通知する通知信号と第２ワークＷの交換を要求する交換要求信号とを、ロボット制御部４１が制御部２１から受信すると（Ｓ１−１）、ロボット制御部４１は動作プログラム４３ｂに基づきロボット３０の先端部を第２ワークＷ側に移動させる（Ｓ１−２）。
【００４２】
ロボット３０の先端部と加工テーブル１１との距離が所定値よりも小さくなると（Ｓ１−３）、ロボット制御部４１は追従プログラム４３ｃによりロボット３０の先端部を加工テーブル１１の動きに追従させるための追従データ（後述）の作成を開始する（Ｓ１−４）。そして、ロボット制御部４１は、作成した追従データと動作プログラム４３ｂとを用いて、加工テーブル１１の動きにロボット３０の先端部が追従している状態で、ロボット３０の先端部のツール３２が第２ワークＷを把持可能な位置に配置されるように、各サーボ制御器４４への制御信号の送信を開始する（Ｓ１−５）。
【００４３】
そして、ツール３２が第２ワークＷを把持可能な位置に配置された時、つまり、ツール３２の位置と目標位置との差の絶対値が所定値より小さくなった時（Ｓ１−６）、ロボット制御部４１は、加工テーブル１１の動きにロボット３０の先端部が追従している状態で、ツール３２によって第２ワークＷが把持されるように、駆動装置３２ａに制御信号を送信する（Ｓ１−７）。続いて、ロボット制御部４１は、加工テーブル１１の動きにロボット３０の先端部が追従している状態で、把持した第２ワークＷが取出されるように、各サーボ制御器４４に制御信号を送る（Ｓ１−８）。
【００４４】
例えば、前記ステップＳ１−５〜Ｓ１−８において、ロボット３０の先端部のＸ方向およびＹ方向の動きは追従データに基づいて制御され、ロボット３０の先端部のＺ方向の動きおよびツール３２の動きは動作プログラム４３ｂに基づいて制御される。また、ロボット３０の先端部と加工テーブル１１との距離が所定値以上になると（Ｓ１−９）、動作プログラム４３ｂのみ用いた制御となる（Ｓ１−１０）。これにより、把持した第２ワークＷが所定のワーク保管場所に置かれる。
なお、第１ワークＷの加工が完了し、第２ワークＷの加工が開始された後は、前述の第２ワークＷが取出される場合と同様に、第１のワークＷがロボット３０により取出される。
【００４５】
例えば動作プログラム４３ｂは、加工テーブル１１が停止している状態で、ロボット３０の先端部を加工テーブル１１側に移動し、加工テーブル１１上のワークＷをツール３２により把持し、把持したワークＷを加工機械１０から取出すように作成されている。このため、上記のように、ワークＷに近付いた時に動作プログラム４３ｂと追従データとを用いることにより、ロボット３０の先端部が加工テーブル１１の動きに追従しながら、ロボット３０の先端部のツール３２によりワークＷが把持され、把持したワークＷが加工機械１０から取出される。
【００４６】
前記追従データを作成する際に追従プログラム４３ｃに基づき動作するロボット制御部４１の処理の一例を図８を参照しながら説明する。
先ず、前記ステップＳ１−３でＹＥＳと判定されると（Ｓ２−１）、数値制御装置２０から送信される現在位置座標情報、その取得時間の情報、および先読位置座標情報、対応先行時間情報に基づき、ロボット制御部４１は、その補間周期で、現在時間ｔｋのテーブル位置を計算すると共に（Ｓ２−２）、ロボット制御部４１の補間周期における先行時間ｔｋ＋１、ｔｋ＋２・・・におけるテーブル位置の補間データを計算する（Ｓ２−３）。本実施形態のロボット制御部４１の補間周期は数値制御装置２０の制御部２１の補間周期よりも長いが、これに限定されることはない。
【００４７】
加工テーブル１１のＸ方向における位置の計算例を図９に示す。図９において、取得時間Ｔｋにおける加工テーブル１１のＸ方向の位置は、数値制御装置２０から送信された最新の現在位置座標情報およびその取得時間に基づきプロットされたものである。送信処理、受信処理等にかかる時間があるため、ロボット制御部４１における現在時間ｔｋに対し、取得時間Ｔｋは過去の時間となる。現在時間にｔｋに対する取得時間Ｔｋの遅れ量を例えばある一定の時間として設定することも可能である。
【００４８】
図９では、１回前の取得時間Ｔｋ−１における位置と、２回前の取得時間Ｔｋ−２における位置もプロットされている。
一方、先読位置座標情報に基づき、加工テーブル１１の先行時間Ｔｋ＋１，Ｔｋ＋２，Ｔｋ＋３におけるＸ方向の位置も図９にプロットされている。
【００４９】
取得時間Ｔｋ，Ｔｋ−１，Ｔｋ−２の加工テーブル１１の位置情報と、先行時間Ｔｋ＋１，Ｔｋ＋２，Ｔｋ＋３における加工テーブル１１の位置情報とを用いて、例えば近似曲線等を作成することにより現在時間ｔｋにおける加工テーブル１１のＸ方向の位置を計算することができる。同様に過去の時間ｔｋ−１，ｔｋ−２におけるＸ方向の位置を計算することもできる。
一方、現在時間ｔｋに対し先行する時間ｔｋ＋１、ｔｋ＋２の前記近似曲線等の位置を、ロボット制御用に先行時間ｔｋ＋１、ｔｋ＋２の補間データとすることができる。このように過去の時間に加え、先行時間を含んだ位置情報から補間データを算出することで高精度な追従データを作成することができる。
上記処理はＸ方向についてのものであるが、Ｙ方向についても同様に処理される。
【００５０】
続いて、ロボット制御部４１は、現在時間ｔｋにおける加工テーブル１１の位置、先行時間ｔｋ＋１、ｔｋ＋２の補間データを、ロボット座標系に適合するよう補正する（Ｓ２−４）。例えば、ロボット制御部４１は、現在時間ｔｋにおける加工テーブル１１の位置と、先行時間ｔｋ＋１、ｔｋ＋２の補間データを、ロボット座標系と加工機械座標系との座標対応関係に応じた分だけ変更し、また、前記ワーク相対位置を用いて、取出し対象が第２ワークＷであることに応じた分だけ変更する。本実施形態では、第２ワークＷは第１ワーク１に対し加工テーブル１１上でＸ方向に２００ｍｍ離れた位置に位置決めされているので、取出対象が第２ワークＷであることに応じた補正は、Ｘ方向への２００ｍｍの追加となる。
【００５１】
これにより、ロボット制御部４１は、周知のロボット制御則を用いて、前記ステップＳ１−５〜Ｓ１−８においてロボット３０の先端部のＸ方向およびＹ方向の位置を制御する。この時、ステップＳ２−４でロボット座標系に適合するように補正された加工テーブル１１の現在時間ｔｋにおける位置および先行時間ｔｋ＋１、ｔｋ＋２における補間データを用いて、ロボット３０はその先端部が加工テーブル１１上の第２ワークＷに追従するように制御される。
【００５２】
続いて、前記ステップＳ１−９でＹＥＳと判定されると（Ｓ２−５）、追従データの作成を停止する（Ｓ２−６）。
【００５３】
このように、本実施形態によれば、数値制御装置２０が加工テーブル１１の現在の位置座標および先読位置座標をロボット制御装置４０に送信し、ロボット制御装置４０は受信した加工テーブル１１の現在の位置座標および先読位置座標を用いて、ロボット３０の先端が加工テーブル１１の移動に追従するようにロボット３０を制御する。加工テーブル１１の現在の位置座標の取得は多くの数値制御装置２０が通常行うことであり、加工テーブル１１の先読位置座標の計算も加工を行う上で多くの数値制御装置２０が通常行うことである。このため、数値制御装置２０側の処理の増加を抑制することができる。
【００５４】
一方、ロボット制御装置４０は、数値制御装置２０が加工テーブル１１の移動の制御に用いる現在の位置座標および先読位置座標に応じて、ロボット３０の先端の動作軌跡の算出およびキネマティクス関連演算を行い当該動作軌跡を実現するための各関節軸のサーボモータ３１の目標回転角度を計算する。このため、ロボット３０の追従制御を高精度に実現することが可能となる。また、数値制御装置２０とロボット制御装置４０が異なる制御周期であっても、ロボット３０の追従制御を高精度に行うことが可能である。
【００５５】
また、本実施形態では、加工テーブル１１は、その上に複数のワークＷが位置決めされるように構成され、ロボット制御装置４０は、加工テーブル１１上の複数のワークＷの互いの位置関係を示すワーク相対位置情報も用いて、ロボット３０の先端が加工テーブル１１の移動に追従するようにロボット３０を制御する。
【００５６】
ここで、加工テーブル１１上の複数のワークＷのそれぞれに同じ加工が行われる場合は、数値制御装置２０において、複数のワークＷのそれぞれに加工プログラム２３ｂを設定せずに、１つの加工プログラム２３ｂを用いて複数のワークＷを加工することがある。この時、数値制御装置２０は各ワークＷの加工のために同一の加工プログラム２３ｂを読み込むと共に、ワークＷの位置に応じた加工テーブル１１の位置のシフトを行う。
【００５７】
この構成では、前記シフトの量に対応するワーク相対位置情報を用いて、ロボット３０の先端が加工テーブル１１の移動に追従するようにロボット３０が制御されるので、数値制御装置２０側の処理の増加を抑制する上で有利である。
【００５８】
本実施形態では、複数のワークＷが加工テーブル１１上に位置決めされるものを示した。これに対し、加工テーブル１１上に１つのワークＷのみが位置決めされるように構成されていても良い。この場合、例えば、ロボット３０がその先端に取付けられたツール３２を用いて加工テーブル１１の移動に追従しながら加工機械１０によって加工が行われているワークＷに対し所定の作業を行うように構成されていてもよい。このように構成すると、加工テーブル１１の移動を停止させずに、加工テーブル１１の移動を継続したままロボット３０に所定の作業を行わせることができ、サイクルタイムを短縮することができ、生産効率を向上する上で有利である。
【００５９】
また、加工機械１０によるワークＷに対する加工が完了した後であって、加工テーブル１１が動いている状態で、ロボット３０の先端が加工テーブル１１の移動に追従するようにロボット制御装置４０によってロボット３０を制御することも可能である。
【００６０】
このように構成すると、加工テーブル１１上に１つのワークＷが位置決めされ、ワークＷに対する加工機械１０による加工が完了したが、加工テーブル１１が動いている状態において、例えばロボット３０によってワークＷの取出作業を行うことができるので、加工テーブル１１の移動を停止させずに、加工テーブル１１の移動を継続したままロボット３０にワークＷの取出作業を行わせることができ、サイクルタイムを短縮する上で有利である。
【００６１】
なお、本実施形態において、取得時間等の制御部２１の時間として、数値制御装置２０の補間周期ごとにカウントされる制御部２１のカウンタの値を用いてもよく、ロボット制御部４１の時間として、ロボット制御装置４０の補間周期ごとにカウントされるロボット制御部４１のカウンタの値を用いてもよい。
【００６２】
また、テーブル移動装置１２が、加工テーブル１１をＸ軸周りおよびＹ軸周りに回転するように構成されていてもよい。この場合、数値制御装置２０は、Ｘ軸周りおよびＹ軸周りの加工テーブル１１の回転位置についても、Ｘ方向およびＹ方向と同様の現在位置座標情報および先読位置座標情報をロボット制御装置４０に送信し、ロボット制御装置４０はこれら情報も用いてロボット３０の先端部を加工テーブル１１に追従させる。
【００６３】
さらに、テーブル移動装置１２が、加工テーブル１１をＺ方向にも移動するように構成されていてもよい。この場合、数値制御装置２０は、Ｚ方向の加工テーブル１１の位置についても、Ｘ方向およびＹ方向と同様の現在位置座標情報および先読位置座標情報をロボット制御装置４０に送信し、ロボット制御装置４０はこれら情報も用いてロボット３０の先端部を加工テーブル１１に追従させる。
【００６４】
なお、加工機械１０は、ＮＣ工作機械でなくても、数値制御装置２０により動きが制御される加工テーブル１１を有するものであればよい。
【符号の説明】
【００６５】
１０  加工機械
１１  加工テーブル
１２  テーブル移動装置
１３  ツール駆動装置
２０  数値制御装置
２１  制御部
２３  記憶装置
２３ａ  システムプログラム
２３ｂ  加工プログラム
２３ｃ  加工制御プログラム
２３ｄ  補間データ送信プログラム
３０  ロボット
３１  サーボモータ
３２  ツール
３２ａ  駆動装置
４０  ロボット制御装置
４１  ロボット制御部
４３  記憶装置
４３ａ  システムプログラム
４３ｂ  動作プログラム
４３ｃ  追従プログラム
４４  サーボ制御器
Ｔ  加工ツール
Ｗ  ワーク
Ｌ１  加工軌跡
Ｌ２  軌跡
【図１】
2019086823.tif 000003
【図２】
2019086823.tif 000004
【図３】
2019086823.tif 000005
【図４】
2019086823.tif 000006
【図５】
2019086823.tif 000007
【図６】
2019086823.tif 000008
【図７】
2019086823.tif 000009
【図８】
2019086823.tif 000010
【図９】
2019086823.tif 000011