(57)【要約】【課題】ロボットの基準となる座標系が変更された場合に、位置パラメータの補正にかかる作業者の工数を削減することができる。【解決手段】ロボットの動作プログラムをオフラインで生成するオフラインプログラミング装置であって、ロボットの基準となる座標系が変更された場合に、変更前の座標系に基づいて生成された位置パラメータを、変更前の座標系及び変更後の座標系に基づいて、変更前後における位置パラメータの絶対位置が等しくなるように自動的に補正するオフラインプログラミング装置を提供する。【選択図】図４
2018114576.tif 000002
【特許請求の範囲】
【請求項１】
ロボットの動作プログラムをオフラインで生成するオフラインプログラミング装置であって、
前記ロボットの基準となる座標系が変更された場合に、変更前の座標系に基づいて生成された位置パラメータを、前記変更前の座標系及び変更後の座標系に基づいて、変更前後における前記位置パラメータの絶対位置が等しくなるように自動的に補正するオフラインプログラミング装置。
【請求項２】
ロボットの動作プログラムをオフラインで生成するオフラインプログラミング装置であって、
前記ロボットの基準となる座標系が変更された場合に、変更前の座標系を変更後の座標系に変換する変換行列を算出する行列算出部と、
前記変換行列が適用される位置パラメータを選択するパラメータ選択部と、
選択された前記位置パラメータに対して前記変換行列を適用して補正するパラメータ補正部と、
を備えるオフラインプログラミング装置。
【請求項３】
前記ロボットの機種変更時に、前記ロボットの基準となる前記座標系が変更される請求項１又は２に記載のオフラインプログラミング装置。
【請求項４】
前記位置パラメータには、前記動作プログラムで参照される位置データが含まれる請求項１から３のいずれか一項に記載のオフラインプログラミング装置。
【請求項５】
ロボットの動作プログラムをオフラインで生成するオフラインプログラミング装置における位置パラメータ補正方法であって、
前記ロボットの基準となる座標系が変更された場合に、変更前の座標系に基づいて生成された位置パラメータを、前記変更前の座標系及び変更後の座標系に基づいて、変更前後における前記位置パラメータの絶対位置が等しくなるように自動的に補正する位置パラメータ補正方法。
【請求項６】
ロボットの動作プログラムをオフラインで生成するオフラインプログラミング装置における位置パラメータ補正方法であって、
前記ロボットの基準となる座標系が変更された場合に、変更前の座標系を変更後の座標系に変換する変換行列を算出する工程と、
前記変換行列が適用される位置パラメータを選択する工程と、
選択された前記位置パラメータに対して前記変換行列を適用して補正する工程と、
を備える位置パラメータ補正方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットの動作プログラムをオフラインで生成するオフラインプログラミング装置及び位置パラメータ補正方法に関する。
【背景技術】
【０００２】
従来、オフラインプログラミング装置においては、予め設定された基準座標系を基準として、プログラムが作成されることが知られている（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平３−２５１３７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、現実的には、ある基準座標系を基準として作成されたプログラムを、別の基準座標系を基準として動作させたい場合がある。
例えば、オフラインプログラミング装置上でロボットシステムを検討している段階において、採用したロボットでは到達できない点がある場合やサイクルタイムを短縮したい場合には、ロボットの設置場所の変更やロボットの機種変更が行われる。ロボットの動作プログラムやユーザによって定義されるユーザ座標系の基準となる基準座標系が、ロボットに固定された座標系、すなわち、ロボット座標系である場合には、このようなロボットの設置場所の変更やロボットの機種変更にともなって基準座標系の位置が変わる。そのため、動作プログラムに含まれる教示点やユーザ座標系のような位置パラメータを基準座標系の位置に応じて手動で補正する必要があった。
【０００５】
より具体的には、例えば、図６に示されるロボットＡからロボットＢに機種変更が行われたと仮定する。ロボットＡの基準座標系の原点ＯＡは、ワールド座標系（地上に固定された座標系）でＺ＝４５０ｍｍの位置にあり、ロボットＢの基準座標系の原点ＯＢは、ワールド座標系でＺ＝５２５ｍｍの位置にあるものとする。機種変更前のロボットＡの基準座標系の原点ＯＡのワールド座標系におけるＸＹ位置と、機種変更後のロボットＢの基準座標系の原点ＯＢのワールド座標系におけるＸＹ位置とが一致するように機種変更時にロボットＢを設置したとしても、ロボットＢの基準座標系の原点ＯＢのワールド座標系におけるＺ位置は、ロボットＡの基準座標系の原点ＯＡのワールド座標系におけるＺ位置よりも７５ｍｍ上方にある。そのため、ロボットＡで動作させていた動作プログラムをロボットＢでそのまま実行すると、意図した位置よりも７５ｍｍ上方にシフトした位置でロボットが動作してしまう。そのため、手動で動作プログラム内の教示点を補正する必要がある。
【０００６】
また、ロボットＡの基準座標系を基準としてユーザ座標系が設定されていた場合には、同様に、手動で、ユーザ座標系を補正する必要がある。
このような位置パラメータの補正作業には多くの工数を要するため、ユーザにとっての大きな負担となっていた。
【０００７】
本発明は、上述した事情に鑑みてなされたものであって、ロボットの基準となる座標系が変更された場合に、位置パラメータの補正にかかるユーザの工数を削減することができるオフラインプログラミング装置及び位置パラメータ補正方法を提供することを目的としている。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明は以下の手段を提供する。
本発明の第一の態様は、ロボットの動作プログラムをオフラインで生成するオフラインプログラミング装置であって、前記ロボットの基準となる座標系が変更された場合に、変更前の座標系に基づいて生成された位置パラメータを、前記変更前の座標系及び変更後の座標系に基づいて、変更前後における前記位置パラメータの絶対位置が等しくなるように自動的に補正するオフラインプログラミング装置である。
【０００９】
この構成によれば、ロボットの基準となる座標系が変更された場合に、変更前の座標系に基づいて生成された位置パラメータが、変更前及び変更後の座標系に基づいて、変更前後における位置パラメータの絶対位置が等しくなるように自動的に補正されるので、位置パラメータの補正作業にかかるユーザの工数を削減することができる。
【００１０】
なお、位置パラメータは、位置に関するパラメータを意味し、ロボットの動作プログラムにおける教示点等の位置座標データ、ユーザによって定義されるユーザ座標系に含まれる位置座標データ等を含む。
また、絶対位置とは、地上に固定された座標系であるワールド座標系から見た場合の位置として定義される。
【００１１】
本発明の第二の態様は、ロボットの動作プログラムをオフラインで生成するオフラインプログラミング装置であって、前記ロボットの基準となる座標系が変更された場合に、変更前の座標系を変更後の座標系に変換する変換行列を算出する行列算出部と、前記変換行列が適用される位置パラメータを選択するパラメータ選択部と、選択された前記位置パラメータに対して前記変換行列を適用して補正するパラメータ補正部と、を備えるオフラインプログラミング装置である。
【００１２】
この構成によれば、ロボットの基準となる座標系が変更された場合に、行列算出部によって、変更前の座標系を変更後の座標系に変換する変換行列が算出される。また、パラメータ選択部によって、変換行列が適用される位置パラメータが選択される。そして、パラメータ補正部によって、選択された位置パラメータに対して変換行列が適用されて、位置パラメータの補正が行われる。
【００１３】
このようにすることで、ロボットの基準となる座標系が変更された場合に、変更前後における位置パラメータの絶対位置が等しくなるように自動的に補正されるので、位置パラメータの補正作業にかかるユーザの工数を削減することができる。
【００１４】
上記いずれかの態様に係るオフラインプログラミング装置において、前記ロボットの機種変更時に、前記ロボットの基準となる前記座標系が変更される構成であってもよい。
【００１５】
上記いずれかの態様に係るオフラインプログラミング装置において、前記位置パラメータには、前記動作プログラムで参照される位置データが含まれる構成であってもよい。
【００１６】
本発明の第三の態様は、ロボットの動作プログラムをオフラインで生成するオフラインプログラミング装置における位置パラメータ補正方法であって、前記ロボットの基準となる座標系が変更された場合に、変更前の座標系に基づいて生成された位置パラメータを、前記変更前の座標系及び変更後の座標系に基づいて、変更前後における前記位置パラメータの絶対位置が等しくなるように自動的に補正する位置パラメータ補正方法である。
【００１７】
本発明の第四の態様は、ロボットの動作プログラムをオフラインで生成するオフラインプログラミング装置における位置パラメータ補正方法であって、前記ロボットの基準となる座標系が変更された場合に、変更前の座標系を変更後の座標系に変換する変換行列を算出する工程と、前記変換行列が適用される位置パラメータを選択する工程と、選択された前記位置パラメータに対して前記変換行列を適用して補正する工程と、を備える位置パラメータ補正方法である。
【発明の効果】
【００１８】
本発明によれば、ロボットの基準となる座標系が変更された場合に、動作プログラムの補正作業にかかるユーザの工数を削減することができるという効果を奏する。
【図面の簡単な説明】
【００１９】
【図１】本発明の第一の実施形態に係るオフラインプログラミング装置の概略構成を示す図である。
【図２】本発明の第二の実施形態に係るオフラインプログラミング装置の概略構成を示す図である。
【図３】本発明の第三の実施形態に係るオフラインプログラミング装置の概略構成を示す図である。
【図４】本発明の第四の実施形態に係るオフラインプログラミング装置の概略構成を示す図である。
【図５】図１に記載のオフラインプログラミング装置で実行される処理を示すフローチャートである。
【図６】異なるロボットに夫々設定された基準座標系を説明する図である。
【発明を実施するための形態】
【００２０】
本発明に係る幾つかの実施形態では、図１から図４に示されるように、記憶部１１と、行列算出部１３と、パラメータ補正部１５と、を備えている。本発明に係る幾つかの実施形態では、図１及び図３に示されるように、記憶部１１、行列算出部１３及びパラメータ補正部１５に加えて、パラメータ選択部１４を備えている。図２に示される例示的な実施形態では、記憶部１１、行列算出部１３及びパラメータ補正部１５に加えて、機種変更部１２を備えている。図３に示される例示的な実施形態では、記憶部１１、行列算出部１３及びパラメータ補正部１５に加えて、パラメータ選択部１４を備えている。
以下、本発明の第一の実施形態に係るオフラインプログラミング装置１について、図面を参照して詳細に説明する。
【００２１】
本実施形態のオフラインプログラミング装置１は、互いにバスを介して接続された、不図示の、ＣＰＵ(Central  Processing  Unit）と、ＲＯＭ（Read  Only  Memory）、ＲＡＭ（Random  Access  Memory）等の主記憶装置と、ＨＤＤ（Hard  Disk  Drive）等の補助記憶装置と、キーボード、マウス、タッチパネル等の入力装置と、モニタ等の出力装置と、ロボット制御装置等の外部機器との間で種々のデータのやりとりを行う外部インタフェース等を備えている。すなわち、本実施形態のオフラインプログラミング装置１は、コンピュータを備えている。補助記憶装置には、各種プログラムが格納されており、ＣＰＵが補助記憶装置からプログラムをＲＡＭ等の主記憶装置に読み出し、実行することにより、種々の処理が実現される。
【００２２】
図１に示されるように、本実施形態に係るオフラインプログラミング装置１は、ＣＰＵによって実行される機能ブロックとして、記憶部１１と、機種変更部１２と、行列算出部１３と、パラメータ選択部１４と、パラメータ補正部１５と、を備えている。
【００２３】
機種変更部１２は、記憶部１１と、行列算出部１３とに接続されている。行列算出部１３は、記憶部１１と、機種変更部１２と、パラメータ選択部１４と、パラメータ補正部１５とに接続されている。パラメータ選択部１４は、記憶部１１と、行列算出部１３と、パラメータ補正部１５とに接続されている。パラメータ補正部１５は、記憶部１１と、行列算出部１３と、パラメータ選択部１４とに接続されている。
【００２４】
記憶部１１は、上述の主記憶装置や補助記憶装置の一部によって構成されており、ロボットの機種毎に設定された基準座標系、ユーザによって定義されたユーザ座標系、ロボットの動作プログラム（以下、ロボットプログラムという。）等を格納するように構成されている。なお、基準座標系は、例えば、図６に示されるように、ロボットの第１軸である旋回軸の中心と、ロボットの第２軸である回転軸の中心を含む水平面との交点を原点として設定される。
【００２５】
機種変更部１２は、ユーザからの機種変更指令を受けて、記憶部１１に格納されたロボットプログラムを実行するロボットの機種を変更するとともに、行列算出部１３に対して機種変更があった旨を通知するように構成されている。
【００２６】
行列算出部１３は、機種変更部１２からの通知を受けて、記憶部１１に格納されている機種変更前のロボットの機種に設定された基準座標系と、機種変更部１２によって記憶部１１に格納された機種変更後のロボットの機種に設定された基準座標系とに基づいて、同次変換のための変換行列を算出するように構成されている。また、行列算出部１３は、変換行列を算出した旨をパラメータ選択部１４に通知するとともに、算出した変換行列をパラメータ補正部１５に送信するように構成されている。
【００２７】
パラメータ選択部１４は、行列算出部１３からの通知を受けて、記憶部１１に格納されたロボットプログラム及びユーザ座標系のリストの一覧をモニタに表示し、どのロボットプログラム又はユーザ座標系に含まれる位置データ等の位置パラメータに対して、行列算出部１３で算出された変換行列を適用するかをユーザに選択させるように構成されている。また、パラメータ選択部１４は、ユーザによって選択されたロボットプログラム及び又はユーザ座標系をパラメータ補正部１５に通知するように構成されている。
【００２８】
パラメータ補正部１５は、パラメータ選択部１４において選択されたロボットプログラムの教示点及び又はユーザ座標系といった位置パラメータに対して、行列算出部１３で算出された変換行列を適用し、機種変更前のロボットの基準座標系を基準とする位置パラメータが、機種変更後のロボットの基準座標系を基準とする位置パラメータになるように、位置パラメータを補正するように構成されている。すなわち、機種変更前後における位置パラメータの絶対位置が等しくなるように、位置パラメータを自動的に補正するように構成されている。また、パラメータ補正部１５は、補正された位置パラメータを含むロボットプログラム及び又はユーザ座標系を記憶部１１に格納するように構成されている。
【００２９】
次に、上記構成を備えるオフラインプログラミング装置１において実行される本実施形態の位置パラメータ補正方法について、図１及び図５を参照しながら説明する。以下では、図６に示されるロボットＡをロボットＢに機種変更した場合を例として説明する。
【００３０】
まず、機種変更部１２において、ユーザから入力されたロボットＡをロボットＢに機種変更するという機種変更指令によって、記憶部１１に格納されているロボットプログラムを実行する主体がロボットＡからロボットＢに変更される（図５のステップＳ１）。
【００３１】
なお、ユーザからの機種変更指令は、どのような形式でなされても構わないが、例えば、オフラインプログラミング装置上において、ユーザが「ロボット機種変更」ボタンを押すとロボットの機種が列挙されたリストが表示され、ユーザが変更後のロボットの機種を選択して「ＯＫ」ボタンを押すとロボットの機種が変更されるようにすると好適である。
【００３２】
次に、行列算出部１３において、機種変更部１２から、ロボットＡからロボットＢに機種変更された旨の通知を受けると、記憶部１１に格納された機種変更前のロボットＡの基準座標系ΣＡと、記憶部１１に格納された機種変更後のロボットＢの基準座標系ΣＢとが異なる座標系であるか否かが判断される（図５のステップＳ２）。基準座標系ΣＡと基準座標系ΣＢとが等しい座標系であると判断された場合には処理を終了する。
【００３３】
基準座標系ΣＡと基準座標系ΣＢとが異なる座標系であると判断された場合には、行列算出部１３において、基準座標系ΣＢから基準座標系ΣＡへの変換行列ＢＴＡが算出される（図５のステップＳ３）。図６に示される例の場合、変換行列ＢＴＡは、式（１）により表される。
【００３４】
【数１】
2018114576.tif 000003
ここで、基準座標系ΣＢに対する基準座標系ΣＡの回転行列をＢＲＡ、基準座標系ΣＢに対する基準座標系ΣＡの位置ベクトルをＢＰＡとしている。
【００３５】
次に、変換行列ＢＴＡが算出された旨の通知を受けると、パラメータ選択部１４において、ユーザによって、算出された変換行列ＢＴＡを適用するロボットプログラムやユーザ座標系が選択される（図５のステップＳ４）。
【００３６】
このように、ユーザに変換行列ＢＴＡを適用すべきロボットプログラムやユーザ座標系を明示的に選択させることにより、変換行列ＢＴＡを適用すべきでない位置パラメータに変換行列ＢＴＡが適用されてしまうことを防ぐことができる。例えば、機種変更前のロボットであるロボットＡの基準座標系を基準として決められていない位置パラメータに対しては変換行列ＢＴＡを適用すべきでないため、このような位置パラメータを含むロボットプログラム及びユーザ座標系については選択しないようにする。
【００３７】
なお、ユーザに対して位置パラメータを選択させる際には、モニタ上にロボットプログラム及びユーザ座標系のリストを表示し、それらの中から補正対象となるロボットプログラム又はユーザ座標系を選択させるようにすると好適である。あるいは、位置パラメータの補正を行うか否かをまずユーザに問い合わせ、ユーザから補正を行う旨の応答があった場合に、上記リストを表示し、ユーザから補正を行わない旨の応答があった場合には処理を終了させることとしてもよい。
【００３８】
次に、パラメータ補正部１５において、パラメータ選択部１４において選択されたロボットプログラム及びユーザ座標系に含まれる位置パラメータに対して、行列算出部１３で算出された変換行列ＢＴＡが適用されることにより、位置パラメータの補正が行われる（図５のステップＳ５）。具体的には、式（２）に示されるように、基準座標系ΣＡから見てベクトルＡｒで表現される点に変換行列ＢＴＡが乗算されることにより、基準座標系ΣＢから見たベクトルＢｒで表現された点が得られる。
【００３９】
【数２】
2018114576.tif 000004
このように、本実施形態によれば、ユーザによって選択されたロボットプログラムに含まれる教示点及びユーザ座標系等の位置パラメータを自動的に変換することができるので、位置パラメータの補正にかかるユーザの工数を削減することができる。
【００４０】
以上、本発明の第一の実施形態について図面を参照して詳述してきたが、具体的な構成はこれらの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【００４１】
上述の第一の実施形態では、機種変更時に基準座標系が変更される場合を例として挙げたが、これに限定されない。例えば、機種変更せずに、同種のロボットの設置位置のみが変更される場合には、ユーザからの機種変更指令の代わりに、図３に示される第三の実施形態又は図４に示される第四の実施形態のように、ユーザからの基準座標系変更指令を行列算出部１３が直接受けて、当該基準座標系変更指令に基づいて変換行列を計算する構成であってもよい。この場合、基準座標系変更指令には、変更前の基準座標系と変更後の基準座標系との相対的な位置関係が含まれていてもよい。
【００４２】
また、上述の第一の実施形態では、パラメータ選択部１４を備える構成としたが、変換行列を適用すべき位置パラメータを含むロボットプログラムやユーザ座標系が予め決まっている場合、すなわち、変更される前の基準座標系に基づいて生成された位置パラメータが既知である場合には、図２に示される第二の実施形態や図４に示される第４の実施形態のように、パラメータ選択部１４を具備しない構成であってもよい。この場合、パラメータ補正部１５において、変更される前の基準座標系に基づいて生成された位置パラメータの全てに対して、変換行列が適用されてもよい。
【符号の説明】
【００４３】
１  オフラインプログラミング装置
１１  記憶部
１２  機種変更部
１３  行列算出部
１４  パラメータ選択部
１５  パラメータ補正部
【図１】
2018114576.tif 000005
【図２】
2018114576.tif 000006
【図３】
2018114576.tif 000007
【図４】
2018114576.tif 000008
【図５】
2018114576.tif 000009
【図６】
2018114576.tif 000010