JP2016078142A - ロボット装置の制御方法、およびロボット装置 - Google Patents
ロボット装置の制御方法、およびロボット装置 Download PDFInfo
- Publication number
- JP2016078142A JP2016078142A JP2014209768A JP2014209768A JP2016078142A JP 2016078142 A JP2016078142 A JP 2016078142A JP 2014209768 A JP2014209768 A JP 2014209768A JP 2014209768 A JP2014209768 A JP 2014209768A JP 2016078142 A JP2016078142 A JP 2016078142A
- Authority
- JP
- Japan
- Prior art keywords
- teaching
- robot
- robot arm
- reference position
- input
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Manipulator (AREA)
Abstract
【課題】教示データを作成する際にカメラなどの特別な装置を必要とせず、簡単安価な最低限の構成で教示点ないしその近傍位置を特定できるようにする。
【解決手段】ロボット装置は、ロボットアーム(103)と、このロボットアーム基準位置(P)の動作方向を入力可能な入力手段(202)を有する。ロボットアームの基準位置(P)が第1の位置(405)にある状態(S301)で、第1の位置から教示点(404)へ向かう第1の動作方向(406)を取得する(S302)。続いて、ロボットアームの基準位置(P)が第2の位置(407)にある状態(S304)で、第2の位置から教示点(404)へ向かう第2の動作方向(408)を取得する(S306)。そして、第1、第2の動作方向と、第1および第2の位置の間の距離に基づき、三角測量の原理により教示点の位置を特定する(S308)。
【選択図】図3
【解決手段】ロボット装置は、ロボットアーム(103)と、このロボットアーム基準位置(P)の動作方向を入力可能な入力手段(202)を有する。ロボットアームの基準位置(P)が第1の位置(405)にある状態(S301)で、第1の位置から教示点(404)へ向かう第1の動作方向(406)を取得する(S302)。続いて、ロボットアームの基準位置(P)が第2の位置(407)にある状態(S304)で、第2の位置から教示点(404)へ向かう第2の動作方向(408)を取得する(S306)。そして、第1、第2の動作方向と、第1および第2の位置の間の距離に基づき、三角測量の原理により教示点の位置を特定する(S308)。
【選択図】図3
Description
本発明は、ロボットアームと、ロボットアームの基準位置の動作方向を入力可能な入力手段と、ロボットアームの基準位置を教示点に向かって動作させる制御装置を有するロボット装置の制御方法、および当該のロボット装置に関するものである。
各種工業製品の生産現場で部品(ワーク)に対して組付け、溶接、塗装などの種々の操作にロボット装置が広く用いられている。ロボット装置に特定の動作を教示(ティーチング)する場合、ティーチングペンダントなどと呼ばれる教示装置が用いられる。ティーチングペンダントは、ディスプレイ、キーボード、あるいはさらにジョイスティック(あるいはタッチパッド)のような方向入力手段を組み合わせて構成される。また、パーソナルコンピュータ(PC)とほぼ同様のハードウェアアーキテクチャで構成されたロボット制御端末も教示装置として用いられることがある。
上記の教示装置を用いたロボットの教示操作は、現場で実際にロボット装置を動作させて教示を行われる他、例えば生産や作業の現場とは異なるオフライン環境でのオフライン教示でも用いられることがある。この種のオフライン教示では、現場で実際にロボット装置を動作させて教示を行うのではなく、既知のデータを用いてロボット装置を動作させるオフライン教示データを作成する。例えば、オフライン教示では、治具やワークの寸法および周辺装置の寸法等からなる作業環境データ、ロボットのアームの軸数、アーム軸間の長さ等のロボット機構データなどが必要である。
オフライン教示によって予め作成されたオフライン教示データをロボット制御装置(コントローラ)に記憶させることにより、そのオフライン教示データに基づいてロボット装置を動作させることができる。その際、例えば実際の現場でオフライン教示データを修正することも可能であり、これにより最適な教示データを得ることができる。
しかしながら、オフラインの教示環境では、実際には現場に設置してあるすべての治具やワークのオフライン教示データが存在しない場合がある。このような場合は、実際に現場でロボット装置を動作させながら新規に教示データを作成する必要がある。この場合、オペレータは、ティーチングペンダントなどの教示装置を用いてロボットアームの基準部位ないし基準位置(例えば先端位置)を教示点へ移動させる操作を行いながら教示データを作成する。この教示操作では、オペレータは教示点とロボットアーム先端の位置関係を常に確認しながら、教示装置を操作しロボットアーム先端を移動させなければならず、作業は熟練を要し、また煩雑である。
ロボットを動作させる現場においては、できるだけ容易な操作によって、新規に教示データを生成し、ロボット制御装置に記憶させ、例えば自動的に教示点まで移動できるのが望ましい。そこで、例えば、生産現場における教示を支援するために、カメラのような視覚系を配置する構成が知られている。例えば、下記の特許文献1のようにロボットアーム先端にステレオカメラを設置し、異なる二地点から教示点を撮像し、撮像した画像上の教示点をユーザに指定させ、教示点の位置を三角測量の原理で算出する構成が知られている。
上記特許文献1の構成によれば、例えば画面上の教示点を指定することにより、教示データを生成することができる。しかしながら、特許文献1の構成では、教示点を生成するのに、教示点周辺を撮像するためのカメラ、カメラで撮像した画像を表示するディスプレイなどのハードウェア資源が必要であり、コスト高になりがちな問題がある。
本発明の課題は、上記事情に鑑み、教示データを作成する際にカメラなどの特別な装置を必要とせず、簡単安価な最低限の構成で教示点ないしその近傍位置を特定できるようにすることにある。
上記課題を解決するため、本発明においては、ロボットアームと、前記ロボットアームの基準位置の動作方向を入力可能な入力手段と、前記ロボットアームの基準位置を教示点に向かって動作させることが可能な制御装置を有するロボット装置の制御方法ないしは当該のロボット装置において、前記制御装置は、前記ロボットアームの基準位置が第1の位置にある状態で、前記入力手段によって前記第1の位置から前記教示点へ向かう第1の動作方向を取得し、前記ロボットアームの基準位置が前記第1の位置とは異なる第2の位置にある状態で、前記入力手段によって前記第2の位置から前記教示点へ向かう第2の動作方向を取得し、前記第1の動作方向と、前記第2の動作方向と、前記第1の位置および前記第2の位置の間の距離に基づき、三角測量の原理により前記教示点の近傍位置を特定する構成を採用した。
上記構成によれば、教示装置などに設けたロボットアームの基準位置の動作方向を入力可能な入力手段により、少なくとも第1および第2の位置から第1および第2の動作方向を入力するだけで三角測量の原理により教示点の近傍位置を特定することができる。このため、教示データを作成する際にカメラなどの特別な装置を必要とせず、最低限の教示装置のみで教示点ないしその近傍位置を特定することができる、という優れた効果がある。
以下、添付図面に示す実施例を参照して本発明を実施するための形態につき説明する。以下に示す実施例はあくまでも一例であり、例えば細部の構成については本発明の趣旨を逸脱しない範囲において当業者が適宜変更することができる。
<ロボット装置の構成>
図1は、本発明を実施可能なロボット装置の概略構成を示している。図1のロボットアーム103は、例えば垂直6軸シリアルリンクのロボットアームである。ただし、ロボットアーム103のアーキテクチャはこの垂直6軸シリアルリンクに限定されるものではなく、また、ロボットアーム103は1台のみならず作業空間に複数配置されていてもよい。
図1は、本発明を実施可能なロボット装置の概略構成を示している。図1のロボットアーム103は、例えば垂直6軸シリアルリンクのロボットアームである。ただし、ロボットアーム103のアーキテクチャはこの垂直6軸シリアルリンクに限定されるものではなく、また、ロボットアーム103は1台のみならず作業空間に複数配置されていてもよい。
図1において、Pはロボットアーム103を動作させる場合の基準位置を概略的に示している。多くの場合、ロボットアーム103の教示に用いられる基準位置Pは、エンドエフェクタを装着するフランジ面の中心などに配置される。また、ロボットハンドなどのエンドエフェクタの回動軸は基準位置Pを通るよう配置される。ただし、図1ではロボットアーム103の先端にエンドエフェクタとして、例えばロボットハンドが装着されており、図示の都合上、基準位置Pはロボットハンドの中心に図示してある。なお、後述のレーザポインタやスポットライトのような輝点照射装置をロボットアーム103に配置する場合には、輝点照射装置は例えばこの基準位置Pの軸上に配置することができる。
ロボットアーム103の各関節軸の駆動源であるサーボモータにはこれら各軸の角度を検出するロータリエンコーダ(不図示)が設けられている。ロボットアーム103には、ロボットアーム103の動作を制御するロボット制御装置102がケーブルなどの接続手段を介して接続されている。なお、このロボット制御装置102の制御主体は後述のCPU1021である。ロボット制御装置102は、ロボットアーム103の各関節軸のロータリエンコーダからは各関節軸の角度を読み取ることができるよう構成される。そしてロボット制御装置102が、各関節軸の角度から座標変換を行うことにより、ロボット座標系におけるロボットアーム103のアームの先端の基準位置Pの3次元座標を算出することができる。このロボット座標系は、例えば、後述のロボット可動範囲401に対応するXY直交座標系(あるいはさらにZ軸を含む3次元座標系)に相当する。
ロボット制御装置102には、例えばティーチングペンダントのような教示装置101が接続されている。図2は教示装置101のユーザーインターフェースの構造を詳細に示している。図2に示すように、教示装置101には、LCDディスプレイなどから成る表示装置203、各種のファンクションキーから成るキーボード204、非常停止スイッチ205(あるいはデッドマンスイッチなど)が設けられる。本実施例の教示装置101では、さらにロボットアーム103の基準位置Pを動作方向を入力可能な入力手段として、ジョイスティック202が設けられている。オペレータ(402)は、このジョイスティック202を用いて、ロボットアーム103の基準位置Pを動作方向を手動入力することができる。
なお、ロボットアーム103の動作方向を手動で入力可能な入力手段は、後述するようにジョイスティック202以外の入力手段から構成されていてもよい。例えば、この入力手段は、教示装置101の表示装置203に重ねて配置されたタッチパネルなどから構成されていてもよい。また、ロボットアーム103の動作方向を手動入力する入力手段は必ずしも教示装置101に設ける必要はない。例えば、ロボットアーム103の動作方向を入力する入力手段(例えばジョイスティック)は、教示装置101やロボット制御装置102に何らかのインターフェース手段を介して外付けされていてもよい。また、その配置位置は、例えばロボットアーム103の基台(架台)など、任意の位置であってよい。
なお、図2のキーボード204のキー配置は、概略図示の図1とは必ずしも一致していない。また、表示装置203の部分は、表示パネルに上面にタッチ入力面を配置したタッチパネルとして構成することもできる。その場合には、表示パネルの表示を変更することによりキーボード204として配置すべき任意のキーをタッチパネル上にソフトウェア的に配置することもできる。このようなキーボード204、あるいはタッチパネルを用いたキー配置は、本発明を構成する必須構成ではなく、当業者が必要に応じて任意に変更することができる。
オペレータ(図4の402)は、教示装置101を用いてロボットアーム103の運転や設定などの各種機能を実行することができる。教示装置101のキーボード204やタッチパネル、ジョイスティック202の操作情報は、ケーブルなどの接続手段を介してロボット制御装置102に伝達される。なお、教示装置101とロボット制御装置102を接続する接続手段は、ケーブルなどによる有線接続手段のみならず、IEEE802.11や同802.15のような規格に基づく無線接続手段で構成されていてもよい。この点は、ロボットアーム103とロボット制御装置102の間の接続手段についても同様である。
例えば、ロボットアーム103の配置された生産現場において、ユーザ(オペレータ)は教示装置101を介してアームを特定の教示点に向かって動作させる教示操作を繰り返し行うことで、ロボット教示データを入力していくことができる。このようなロボットプログラミング過程は、「教示(ティーチング)」などと呼ばれる。
ロボット制御装置102は、教示操作に応じた動作をロボットアーム103に行わせながら、ロボット教示データを生成することができる。教示操作に応じてロボットアーム103に一連の動作を行わせるよう生成されたロボット教示データは、ロボット制御装置102のメモリ(例えば後述のRAM1023やフラッシュメモリ1025)の所定領域に格納される。
再び図1において、同図の下部には、ロボット制御装置102の制御系の概略構成をブロック図の様式で示してある。図示の通り、ロボット制御装置102は、教示装置101の教示操作に応じてロボットアーム103の基準位置Pの位置姿勢を制御するCPU1021を有する。このCPU1021により行われるロボットアーム103の基準位置Pの位置姿勢の制御には、例えば、上記のロボットアーム103の基準位置Pを特定の教示点に向かって動作させる制御が含まれる。
CPU1021にはシステムバスを介して、ROM1022、RAM1023のようなメモリデバイスが接続されている。さらに、CPU1021のシステムバスには、インターフェース1024が接続されている。このインターフェース1024は、教示装置101、およびロボットアーム103(あるいは外付けされたジョイスティックなどの入力手段)との通信インターフェースを含む。もちろん教示装置101、およびロボットアーム103との通信インターフェースは、上述の有線ないし無線接続手段の規格に準じて構成される。
あるいはさらに、インターフェース1024は、IEEE802.3のようなネットワークインターフェースを含むものであってよい。その場合、ネットワークインターフェースは、ROM1022などに格納される後述のロボット制御プログラムをインストールしたり、あるいは更新したりするプログラムデータを入出力する通信メディアとして用いることができる。あるいは、同ネットワークインターフェースは、ロボット制御装置102で生成したロボット教示データを外部のサーバに送信したり、あるいは他の制御端末から受信したりする通信メディアとして用いることもできる。
さらに、図1の構成ではCPU1021のシステムバスには、外部記憶装置として例えばフラッシュメモリ1025を接続してある。好ましくは、フラッシュメモリ1025は、例えばフラッシュメモリドライブを介して着脱できるよう構成される。フラッシュメモリ1025は、例えば、後述のロボット制御プログラムをインストールしたり、あるいは更新したりするプログラムデータを入出力するメディアとして用いることができる。また、フラッシュメモリ1025は、他のロボット装置や外部のサーバと教示データを授受するためのメディアとしても利用できる。なお、上記フラッシュメモリ1025のかわりに、外部記憶装置としてHDD、SSDのようなディスク装置を用いてもよい。その場合、これらのディスク装置も着脱式のデバイスによって構成されていて構わない。また、各種のメディア着脱式の光ディスク装置も外部記憶装置として用いることができる。ここで例示したような外部記憶装置もまた、後述のロボット制御プログラムをインストールしたり、あるいは更新したりするプログラムデータを入出力するメディア(コンピュータ読み取り可能な記録媒体)として用いることができる。
また、上記のROM1022、フラッシュメモリ1025のような記録メディアには、本発明のロボット制御方法を記述したCPU1021が読み取り、実行可能なロボット制御プログラムを格納することができる。この意味で、上記のROM1022、フラッシュメモリ1025のような記録メディアは、本発明のロボット制御プログラムを格納したコンピュータ読み取り可能な記録媒体に相当する。
<教示点入力制御>
次に上記構成において、ある特定のロボット動作において、ロボットアーム103の基準位置Pを動作させる目標位置として、特定の教示点(ティーチングポイント)を入力する入力制御につき説明する。
次に上記構成において、ある特定のロボット動作において、ロボットアーム103の基準位置Pを動作させる目標位置として、特定の教示点(ティーチングポイント)を入力する入力制御につき説明する。
本実施例においては、特許文献1のようなカメラ(視覚系)を用いることなく、上記の教示装置101(あるいはさらにジョイスティック202のような入力手段)のみを用いて教示点の入力制御を行う。
図3は、この教示点(ティーチングポイント)の入力制御の流れを示している。また、図4は、符号A〜Eによって図1のロボット装置における教示装置101を用いたオペレータ402(ユーザ)の教示操作と、ロボットアーム(103)の動作状態を示している。
図4において、ロボット可動範囲401はロボットアーム103の基準位置Pの水平(XY)方向の可動範囲を示している。このロボット可動範囲401は、例えばロボット装置の設置された(生産)現場の作業空間の床面上の所定範囲に相当する。
本実施例では、ロボットアーム103の基準位置Pを制御する3次元座標系(ロボット座標系)の直交するX軸およびY軸はロボット可動範囲401の辺縁に取られる。図4の例では、ロボット座標系のX、Y(あるいはさらにZ)の各座標軸の原点はロボット可動範囲401の右下の角に取られている。図4のロボット可動範囲401は、ロボットアーム103の基準位置Pが到達できる可動範囲と考えてよい。なお、ロボット可動範囲401は図4ではほぼ正方形に図示してあるが、ロボットアーム103の構成によっては必ずしも正方形とは限らない。
図4において、教示点404(黒丸で図示)は、例えばあるロボット動作において、オペレータ402がロボットアーム103の基準位置Pを到達させたい目標位置である。教示点404のないしその近傍位置(後述の教示近傍点)の位置(XY直交座標値)は、後述の入力制御によって特定され、ロボットアーム103を動作させる教示データに取り込まれる。
本実施例では、ロボット可動範囲401(XY平面)上の作業空間において、ある対象物の所定部位などに相当する教示点404の位置(XY座標)をカメラなどの撮像(視覚)系を必要とせず、できるだけ簡便な作業によって特定できるようにする。教示点404の位置には、ワークなどの対象物が実際に配置され、その教示点404に相当する所定部位は実際にロボット可動範囲401(XY平面)上の所定の高さ(Z座標)に存在していてもよい。
あるいは、後述の入力制御は、製造工程の都合などに応じて、ロボット教示を行うタイミングにおいて、対象物がまだ存在しない状態において、実施することもできる。例えば、教示点404は、ロボット可動範囲401(XY平面)に相当する床面上に仮に配置したマーカなどの物体や、同床面上に貼り付けたテープのような目印であってもよい。この場合には、教示点404の高さ(Z座標)は0である。
以下では、説明を容易にするため、例えば上記のごとく教示点404が床面上に配置ないし貼付された目印である場合などを想定し、教示点404の位置(XY座標)を特定する入力制御についてまず説明する。また、教示点404が0以外の高さ(Z座標)情報を持っている場合の入力制御については、その後に説明する。
さらに図4のA〜Dにおいて、第1の位置405と、第2の位置407がそれぞれ白丸で図示されている。これら第1の位置405と、第2の位置407は、第1の方向取得工程(図4のAおよびB)と、第2の方向取得工程(図4のCおよびD)において方向入力を開始する時のロボットアーム103の基準位置Pの位置(XY座標)である。これら、第1の位置405と、第2の位置407は第1の方向取得工程(図4のAおよびB)と、第2の方向取得工程(図4のCおよびD)を開始する時の起点の位置に相当する。なお、この時、アーム先端の基準位置Pは、実際には0以外の高さ(Z座標)の位置に存在していても構わない。
図4のA、および図4のCは、それぞれ第1の方向取得工程、および第2の方向取得工程の開始時の状態を示している。ここの初期状態から、オペレータ402は、教示装置101を用いて第1の方向取得工程、および第2の方向取得工程において、図4のB、および図4のDのように、基準位置Pが教示点404に向かうようロボットアーム103を動作させる。
この教示操作は、例えば教示装置101のジョイスティック202を用いて、目測によってロボットアーム103の基準位置Pを動作させたい方向を入力することによって行う。この時、例えば図4のBやDに示すように、現在位置(405、407)から右前方の教示点404に向かってロボットアーム103の基準位置Pを動作させたい場合、ジョイスティック202を右前方に倒す。
この時のジョイスティック202の操作方向と操作量(例えばスティックを倒す角度)は、ロボット制御装置102のCPU1021によって読み取られる。図4のBおよびDにおいて、ジョイスティック202の操作方向と操作量は、この操作に応じてロボットアーム103の基準位置Pを動作させる制御量として、インターフェース1024を介してCPU1021によって刻々と読み取られる。
例えば、CPU1021は、ジョイスティック202の操作方向と操作量を、例えばインターフェース1024の入力処理が準拠するクロック(ないしその分周周期)ごとに読み取ることができる。
そして、CPU1021は、ジョイスティック202の操作方向をその時点でロボットアーム103の基準位置Pを動作させる動作方向に対応づける。また、ジョイスティック202の操作量(例えばスティックを倒した角度)をその時点でロボットアーム103の基準位置Pを動作させる動作速度(あるいは制御周期内の移動量など)に対応づける。これにより、その時点でCPU1021は、ジョイスティック202の操作状態に応じてアームの各関節の駆動量(あるいはさらに駆動速度)を決定し、基準位置Pを移動させるようアームを駆動することができる。また、CPU1021は、このアーム制御に伴ない、例えばRAM1023上の所定メモリ領域に格納されたロボットアーム103の基準位置Pの現在位置の座標値(少なくともXY座標値、あるいはさらにZ座標値)のデータを更新することができる。
また、第1の方向取得工程(図4のA〜B)、および第2の方向取得工程(図4C〜D)において、オペレータ402は、ロボットアーム103(の基準位置P)の実際の動きを目視によって観察しながら、ジョイスティック202を操作する。本実施例では、ロボットアーム103(の基準位置P)の実際の動きに応じて、ジョイスティック202の操作方向(と操作量)を修正しながら操作を続行することを許容する。
このように実際にジョイスティック202の操作に応じてロボットアーム103の基準位置Pを移動させる動作それ自体によって、オペレータ402は、基準位置Pが教示点404に正しく向かっているかをモニタできる。また、オペレータ402は、必要に応じてジョイスティック202の操作を修正できる。
また、この第1の方向取得工程、および第2の方向取得工程のオペレータ402の操作は、好ましくは、ロボットアーム103の基準位置Pが教示点404上、あるいはその近傍に到達するまで続行させる。しかしながら、オペレータ402の任意の判断によって、例えば充分精度よく教示点404の方向に向かっている、と判断できた時点で、ロボットアーム103の基準位置Pを動作させる操作を停止することも許容する。
このようにして、第1の方向取得工程(図4のA〜B)、および第2の方向取得工程(図4C〜D)において、第1および第2の位置(405、407)から教示点404に向かう動作方向406、408をそれぞれオペレータ402に入力させる。そして、CPU1021は、第1の方向取得工程(図4のA〜B)、および第2の方向取得工程(図4C〜D)におけるジョイスティック202の操作に応じたアーム動作に応じて、動作方向406および408をそれぞれ入力する。
例えば、第1の方向取得工程(図4のA〜B)において取り込むべき動作方向406は、第1の位置405から、ジョイスティック202の操作が終了(従ってアーム動作が終了)した時点におけるアームの基準位置Pの位置を結ぶ線分の方向とする。同様に第2の方向取得工程(図4C〜D)において取り込むべき動作方向408は、第2の位置407から、ジョイスティック202の操作が終了(対応するアーム動作が終了)した時点におけるアームの基準位置Pの位置を結ぶ線分の方向とする。下記の教示(近傍)点の特定演算においては、教示(近傍)点に向かう2つの動作「方向」のみが重要である。従って、上記のように動作(操作)の起点および終点の2点間を結ぶ線分の方向を第1および第2の動作方向406、408として取得するのが最も簡単であり、また、それなりの精度を得ることができる。
なお、図4のA〜Bの第1の方向取得工程の開始点である第1の位置405から図4のC〜Dの第2の方向取得工程の開始点である第2の位置407への移動には種々の制御方法が考えられる。大まかにいって、第1の位置405から第2の位置407への移動はCPU1021の自動制御によって行う方法と、手動操作によって行う方法が考えられる。
例えば、図4のA〜Bの第1の方向取得工程の開始点である第1の位置405と、第2の方向取得工程の開始点である第2の位置407の座標をROM1022などに記憶させておくことが考えられる。この場合、第1の方向取得工程(図4のA〜B)から第2の方向取得工程(図4のC〜D)に遷移する際、基準位置Pを現在位置から、CPU1021はROM1022の格納情報により第2の位置407に自動的に移動させることができる。なお、第2の方向取得工程(図4のC〜D)に遷移する直前の基準位置Pの現在位置は、例えば第1の方向取得工程(図4のA〜B)の動作方向の入力が終了した位置である。
なお、第1の位置405および第2の位置407の座標値や、これら2点間の距離などを、例えば教示装置101のキーボード操作などに応じてオペレータ402が設定可能としておく構成でもよい。後述の演算から明らかなように、第1の位置405および第2の位置407の距離は、三角測量におけるいわゆる基線長に相当し、入力精度に影響する。従って、例えば第1の位置405および第2の位置407の距離(あるいは両者の座標)を設定可能とすることによって、入力精度に係る条件を所望に制御することができる。
また、CPU1021の自動制御で第2の位置407を決定する場合、第1の方向取得工程で取得した第1の動作方向406と直角な方向に向かって所定距離(例えば数cm〜数10cm程度)離れた位置を第2の位置407として選択してもよい。この制御によって、後述の演算で用いられる三角形(例えば図5の501−502−503)が直角三角形となり、例えば演算過程を簡略化できる可能性がある。
また、第1の位置405および第2の位置407へのロボットアーム103の基準位置Pの位置決め、あるいは第1の位置405から第2の位置407への移動をオペレータ402の手動操作によって行ってもよい。例えば、後述する教示点404を特定する演算手法から明らかなように、教示点404を特定する演算では、第1の位置405および第2の位置407の各座標値はそれぞれ固定の値である必要はない。
そこで、オペレータ402が教示装置101を手動操作することによって任意に第1の位置405および第2の位置407へのロボットアーム103の基準位置Pの位置決めを行うようにしてもよい。例えば、上記の第1の方向取得工程(図4のA〜B)、および第2の方向取得工程(図4のC〜D)の各操作を開始する際、それぞれ教示装置101のキー操作やジョイスティック202により基準位置Pを所望の第1ないし第2の位置に移動できるようにする。そして、これらの操作終了時に、CPU1021がロボットアーム103の基準位置Pを第1の位置405および第2の位置407として取り込めばよい。なお、第1および第2の位置405、407の間の距離は、仕様上の測定精度などに応じて、教示点までの距離がこの程度の場合は少なくともXXcm程度取ること、といった規約を取扱説明書などによってオペレータ402に周知させることとしてもよい。
図4のEは、第1の方向取得工程(図4のA〜B)、および第2の方向取得工程(図4C〜D)を終了した時点における、教示点404、第1の位置405および第2の位置407、動作方向406、および動作方向408の関係を示している。
第1の位置405および第2の位置407は、上述の自動制御ないし手動制御のいずれによって位置決めされているとしても、制御装置としてのCPU1021には既知であり、例えばRAM1023の所定アドレスに格納されている。また、この時点では、上述のようにして取得した動作方向406、および動作方向408も既知のデータとなっている。従って、CPU1021は、第1の位置405および第2の位置407を結ぶ線分を底辺とし、動作方向406、および動作方向408に延長した直線から成る三角形の頂点(409)の座標を三角測量(平面三角法)の原理に基づき特定することができる。この三角形の頂点(409)は、教示点404の近傍位置、すなわち、その近似の座標値を有する教示近傍点409として入力することができ、例えば教示装置101で教示中のロボット教示データ中に記録することができる。
ここで、図5を用いて、上記の教示近傍点409(図5においては503)の座標を三角測量の原理に基づき特定する演算につき説明する。図5は、この演算に係る図4のEにおける要部を抜き出して異なる参照符号により図示したものである。以下に、図4、および図5の参照符号の対応関係をコロンの前後に示す形式で記述する。
第1の位置405(図4):第1の位置501(図5)
第2の位置407(図4):第2の位置502(図5)
動作方向406(図4):動作方向504(図5)
動作方向408(図4):動作方向505(図5)
教示近傍点409(図4):教示近傍点503(図5)
第1の位置405(図4):第1の位置501(図5)
第2の位置407(図4):第2の位置502(図5)
動作方向406(図4):動作方向504(図5)
動作方向408(図4):動作方向505(図5)
教示近傍点409(図4):教示近傍点503(図5)
さらに、図5において、508は第1および第2の位置501、502を結ぶ線分である。また、506および507は、第1および第2の位置501、502からそれぞれ動作方向504、505に伸びる線分である。従って、三角測量の原理に従えば、教示点404(の近傍点)として特定すべき教示近傍点503は線分506および507の交わる三角形の頂点として求めることができる。
例えば、509は線分508と線分506のなす角、510は線分508と線分507のなす角とすると、例えば、正弦定理より線分507の長さを以下の式(1)のように求めることができる。
ここからさらに教示近傍点503を求めるには、例えば、次のような演算手法を用いる。例えば、第2の位置502の直交座標と、角510の角度値、および上記のようにして求めた線分507の長さから、教示近傍点503を求める。即ち、第2の位置502の直交座標から、角510の方向へ線分507の長さだけ移動した点のXY直交座標を求め、この値を教示近傍点503の座標値として算出することができる。
例えば、図5の例では、第2の位置502の直交座標値を(x502,y502)とすると、教示近傍点503のX座標値は(l507×cos(180°−∠510)+x502)と求めることができる。同様に教示近傍点503のY座標値は(l507×sin(180°−∠510)+y502)と求めることができる。
次に、図3を用いて、上述の教示点(教示近傍点)の入力処理を行う場合のCPU1021が実行する制御手順につき説明する。図3のフローチャートに示した制御手順は、CPU1021が実行する制御プログラムとして、例えばROM1022やフラッシュメモリ1025に格納しておくことができる。なお、以下の説明では、主に図4中の参照符号を用い、対応する図5の参照符号は括弧書きで示す。
図3のステップS301において、ロボット制御装置102のCPU1021は現在のロボットアーム103の基準位置P(の直交座標)を上述の第1の位置405(501)として例えばRAM1023の所定アドレスに記憶する。
次に、ステップS302で、オペレータ402は教示装置201のジョイスティック202を用いて、上述の如く現在の第1の位置405からロボットアーム103の基準位置Pを教示点404に向かって動作させる第1の動作方向406(504)を入力する。この教示操作およびロボット制御は、上述の通り、CPU1021がジョイスティック202の入力量(操作方向および操作量)を刻々と読み取りつつ、該入力量に従ってロボットアーム103を動作させることにより行われる。
次に、ステップS303で、CPU1021は、ステップS302の教示操作で確定した第1の動作方向406(504)を取得し、例えばRAM1023の所定アドレスに記憶する。この第1の動作方向406は、上述の通り、第1の位置405(起点)から教示装置201の操作(と対応するアームの動作)が終了した時点のアームの基準位置P(終点)を結ぶ線分の方向である。
図3のステップS304は、ロボットアーム103の基準位置Pを上記第1の位置405(501)と異なる第2の位置407(502)に移動させる。この移動制御は、上述の通り、CPU1021による自動制御またはオペレータ402の手動操作によって行うことができる。
次に、ステップS305において、CPU1021は、現在のロボットアーム103の基準位置P(の直交座標)を上述の第2の位置407(502)として例えばRAM1023の所定アドレスに記憶する。
次に、ステップS306で、オペレータ402は教示装置201のジョイスティック202を用いて、上述の如く現在の第2の位置407(502)からロボットアーム103の基準位置Pを教示点404に向かって動作させる第2の動作方向408を入力する。この教示操作およびロボット制御は、上述のステップS302と同様に実施される。
次に、ステップS307で、CPU1021は、ステップS306の教示操作で確定した第2の動作方向408(505)を取得し、例えばRAM1023の所定アドレスに記憶する。第2の動作方向408(505)は、上述の通り、第2の位置407(起点)から教示装置201の操作(と対応するアームの動作)が終了した時点のアームの基準位置P(終点)を結ぶ線分の方向である。
続いて、ステップS308において、CPU1021は、図4のEおよび図5で説明した上述の三角測量の原理に基づく特定演算を行い、教示近傍点(409、503)を特定し、その直交座標を取得する。
以上のように、本実施例によれば、教示装置201のジョイスティック202を用いて、実際に教示点(404)に向かってロボットアーム103の基準位置Pを動作させて、教示点(404)に向かう動作方向を少なくとも2つ入力する。まず、第1の方向取得工程では、第1の位置(405)から教示点(404)に向かう第1の動作方向(406)を取得する。続いて、第2の方向取得工程では、第2の位置(407)から教示点(404)に向かう第2の動作方向(408)を取得する。そして第1、第2の方向取得工程でそれぞれ入力された第1の動作方向(406)と、第2の動作方向(408)と、第1の位置および第2の位置の間の距離(図5の508)に基づき、三角測量の原理により教示近傍点(409、503)の位置を特定する。
特定された教示近傍点(409、503)は、例えば、教示装置201の表示装置203に表示したロボット可動範囲401に見立てた枠などの表示範囲内の対応する座標にドットなどを表示することにより、オペレータ402に認識させることができる。また、この際、特定済みの第1または第2の位置(405、407)、第1または第2の動作方向(406、408)などのうち、任意の情報をロボット可動範囲401に見立てた表示範囲内に表示出力することができる。これらの情報を表示装置203に表示出力する場合の表示の様式は、例えば図4のEにおいて、401をロボット可動範囲に見立てた表示範囲と読み換えた図示にほぼ相当する(ただし、教示点404は除く)。なお、教示近傍点(409、503)の表示は、後述するような輝点照射装置の輝点照射によって行なってもよい。
本実施例によれば、教示装置201のジョイスティック202により、実際に教示点(404)に向かってロボットアーム103の基準位置Pを動作させて、教示点に向かう動作方向を少なくとも2つ入力するだけで、教示点ないしその近傍点を特定できる。従って、教示点の教示操作をカメラなどの撮像(視覚)系を必要とせず、極めて簡便な作業によって特定することができる。従って、多大なハードウェア資源に関するコストを要さず、また、演算処理も低演算コストで実施することができる。
なお、本実施例によって特定される教示点(ないしその近傍点)のロボット座標系における直交XY座標値は、場合によってはそれ程の精度を得られない可能性もあるが、とりあえずざっくりと教示点を特定したい場合などに好適に実施できる。例えば、ロボット可動範囲401に相当する作業空間にワークなどの対象物が存在しないような状態で、ある教示点(単数に限られない)の直交XY座標を大まかに求め、ロボット教示データの作成工程を先に進めたい、などといった状況で好適に実施できる。
また、本実施例によれば、異なる起点(第1の位置および第2の位置)からそれぞれ第1および第2の動作方向を入力すればよく、ロボットアーム103の基準位置Pは必ずしも教示点の位置まできっかり移動する必要がない。また、従来の教示操作において、ある教示点への移動を行う場合、インチング制御、ステップ制御などのように微小量ずつ基準位置Pを教示点まで移動させる操作方式が用いられる。このような操作方式は操作が煩雑である上に、それ程高速にロボットアーム103の基準位置Pを移動させることができない。しかしながら、本実施例の動作方向入力では必ずしもこのような操作方式を必要としない。むしろ基準位置Pの動作方向入力をオペレータ402に認識させるには、ジョイスティック202の操作に応じて、連続的かつ比較的高速なロボット動作が適している場合がある。以上のような理由で、本実施例の第1および第2の動作方向の入力は高速に実施することができる。
即ち、本実施例によれば、教示装置のジョイスティックなどの方向を入力可能な入力手段を用いて、少なくとも第1および第2の位置から第1および第2の動作方向を入力するだけで三角測量の原理により教示点(の近傍位置)を特定することができる。このため、教示データを作成する際にカメラなどの特別な装置を必要とせず、最低限の簡単安価な構成のみを用いて、教示点ないしその近傍位置を特定することができる、という優れた効果がある。
なお、上述の基本構成に加えて、下記のような種々の付加的な構成、あるいは変形例がいくつか考えられる。以下、上述の基本構成に加え、あるいはその一部を変更して実施できるハードウェア構成や制御・演算例について説明する。以下では、図1、図2に示した基本的なハードウェアと、図3〜図5に示したXY座標系における教示点の入力制御に関しては特に断らない限り共通するものとする。
<教示点のZ軸座標値>
以上では、教示点404(ないしその近傍点)のロボット座標系におけるXY座標値を特定する方法について説明した。しかしながら、教示したい教示点404が、ロボット可動範囲401(図4)に配置された対象物の特定部位に対応し、0ではない高さ(Z軸座標値)を有する場合も考えられる。このような0ではない高さ(Z軸座標値)を有する教示点404を特定する手法は、次のように、いくつか考えられる。
以上では、教示点404(ないしその近傍点)のロボット座標系におけるXY座標値を特定する方法について説明した。しかしながら、教示したい教示点404が、ロボット可動範囲401(図4)に配置された対象物の特定部位に対応し、0ではない高さ(Z軸座標値)を有する場合も考えられる。このような0ではない高さ(Z軸座標値)を有する教示点404を特定する手法は、次のように、いくつか考えられる。
まず、実際に教示装置201に上下方向を動作方向を入力できる操作手段を確保し、上述の第1および第2の方向取得工程において、上下方向に関しても、ある高さにある教示点404に向かう動作方向を入力するハードウェア構成が考えられる。具体的には、例えば、教示装置201に少なくとも上下の2方向を入力できる第2のジョイスティック、あるいは操作レバーなどを配置する構成が考えられる。また、同様に操作できる教示装置201のキーボード204に例えばシーソー操作の可能なキーを設ける構造も考えられる。さらに、表示装置203がタッチパネルなどで構成される場合は、その入力面に対するいわゆるスワイプ操作によって上下の動作方向を入力することも考えられる。
そして、図4の第1および第2の方向取得工程において、オペレータ402による上記のジョイスティック202と、上記のような上下方向を入力する操作手段(以下、上下操作手段という)の同時操作を行わせる。このとき、CPU1021は、ジョイスティック202の操作に応じて、XY平面内におけるロボットアーム103の基準位置Pの移動を制御するとともに、上下操作手段に応じて、上下方向に関する基準位置Pの移動を制御する。
このような構成においても、上述の通り、CPU1021は、XY座標系における基準位置Pの現在位置を刻々と取得でき、また、同様に上下方向(Z座標系)に関する基準位置Pの現在の高さ(Z座標値)刻々と取得することができる。
そして、上述同様に、第1および第2の方向取得工程で、ジョイスティック202と、上下操作手段による操作が終了した時点で、起点と終点の位置から、XY直交座標系における第1の動作方向(406)および第2の動作方向(408)を取得する。また、上下方向に関しては、操作/動作の起点(図4の405、407)と、操作/動作の終点を結ぶ線分と、例えばその仰角(XY平面と平行な面に対する仰角)も取得することができる。
そして、教示近傍点503(図5)のXY座標を上述の演算手法に基づき特定するとともに、例えば、操作/動作の終点を結ぶ線分の仰角を用いて教示近傍点503(図5)の高さ(Z座標値)を求めることができる。例えば、ここで、図5において、それぞれ線分506または507を底辺とし、第1の位置501または第2の位置502を頂点としその角度を第1または第2の動作方向の入力時に特定した上記の仰角とした直角三角形の高さを考える。この直角三角形の高さは、教示近傍点503(図5)の高さ(Z座標値)に一致する。ただし、第1または第2の位置501、502が0ではない高さ(Z座標値)を有している場合は、その値をオフセットとして教示近傍点503のZ座標値に加算するものとする。
なお、上記の線分506または507を底辺、第1の位置501または第2の位置502を頂点とし、第1または第2の動作方向の入力時に特定した上記の仰角をその頂点角度とする2つの直角三角形の高さは入力誤差などによって正確に一致しない場合がある。これを考慮し、例えば、2つの直角三角形の高さの平均を用いて、教示点の高さ(Z座標値)を計算するようにしてもよい。また、上記の2つの直角三角形のいずれか1つの高さを用いるだけでも教示点の高さ(Z座標値)は算出することができる。
以上のようにして、教示点が0ではない高さ(Z座標値)を有している場合にも、その方向へロボットアーム103の基準位置Pを移動させ、その際の動作方向に基づき、教示点のXY直交座標のみならず高さ(Z座標値)も取得することができる。
また、教示点が0ではない高さ(Z座標値)を有しており、その高さを求める場合、より簡便な手法も考えられる。例えば、その一つとして、図3〜図5で最初に説明した教示作業および演算を行う前に、目測などによって教示点(404)の高さとロボットアーム103の基準位置Pを一致させておくという手法が考えられる。この場合、例えば目測などによって基準位置Pの高さ(Z座標値)を合わせた面内で、図3〜図5で説明した作業と対応するロボット動作、および演算を行う。そして、教示点のXY直交座標を上述同様に求めるとともに、教示点の高さ(Z座標値)としては、最初に目測などによって合わせた基準位置Pの高さ(Z座標値)を用いる。
以上のような手法により、教示点がロボット可動範囲401(図4)に対して0ではない高さを有している場合でも、図3〜図5で最初に説明した教示作業および演算処理を基本として教示点(ないしその近傍点)のZ座標値を取得することができる。
<輝点照射装置>
例えば図3のステップS308において、教示近傍点(409、503)のXY座標値を上述のようにして特定した場合、教示近傍点(409、503)にレーザポインタやスポットライトなどの輝点照射装置を用いて可視光の輝点を照射することができる。輝点照射装置の点灯/消灯は、インターフェース1024を介してCPU1021によって制御することができる。
例えば図3のステップS308において、教示近傍点(409、503)のXY座標値を上述のようにして特定した場合、教示近傍点(409、503)にレーザポインタやスポットライトなどの輝点照射装置を用いて可視光の輝点を照射することができる。輝点照射装置の点灯/消灯は、インターフェース1024を介してCPU1021によって制御することができる。
教示近傍点(409、503)のZ座標値を特定しない場合は、例えばロボット可動範囲401(図4)に対応する平面(例えば床面)上の教示近傍点(409、503)のXY座標に輝点を照射する。また、教示点に対応する特定部位を有する対象物(ワークなど)が配置されている場合は、上述のようにして教示近傍点(409、503)のZ座標値を特定し、当該の特定部位に輝点を照射してもよい。
輝点照射のためのレーザポインタやスポットライトなどの輝点照射装置は、例えば先に触れたように図1に示したロボットアームの基準位置P(図1)の軸上に配置することができる。輝点照射の光軸は好ましくは基準位置Pを通る軸と一致させるとよい。図1のような構成では、基準位置Pを通る軸は、ロボットハンドの回動中心軸と一致する。
このような構成によれば、特定のXY座標に輝点を照射するには、CPU1021は、例えばロボットハンドとともに輝点照射装置を垂直下方に向けた状態で、基準位置Pを当該のXY座標に移動させる制御を行うことができる。あるいは、基準位置Pを教示近傍点のXY座標に移動させず、遠方から輝点照射を行う場合、ロボットハンドとともに輝点照射装置の傾斜角度などを調整して当該XY座標に輝点照射を行う。このような輝点照射制御の場合は、ロボットハンドおよび輝点照射装置の傾斜角度と照射点の関係を予め校正しておく。
以上のような構成により、オペレータ(402)が視認可能な輝点により、第1および第2の方向入力に基づく演算により特定した教示近傍点(409、503)の位置を確認させることができる。
あるいはさらに、例えば図3のステップS308で教示近傍点(409、503)を特定し、その位置輝点照射を行なった後、オペレータ(402)に、教示近傍点(409、503)の位置を補正する操作を許容してもよい。
例えば、ロボットハンドとともに輝点照射装置(基準位置P)を垂直下方に向けた状態で、輝点照射を行っている場合には、教示装置201のジョイスティック202などによって、照射される輝点の位置を移動させる操作を受け付ける。そして、輝点の位置がオペレータ(402)が(本来)所望していた教示点404を照射するような基準位置Pにおいて、例えば教示装置201のキーボード204を用いて所定の決定操作を受け付ける。この決定操作には、例えばキーボード204に配置された[OK]や[Enter]キーのようなキーを用いることができる。CPU1021は、この決定操作が行なわれた時の基準位置PのXY座標値(あるいはさらにZ座標値)を補正済みの教示近傍点(409、503)の座標値として取得する。このようにして、第1、第2の動作方向入力によって、簡単かつ迅速に大まかな教示近傍点を求め、さらに輝点表示を利用してその位置を補正し、精度よく教示近傍点を特定することができる。
なお、レーザポインタやスポットライトなどの輝点照射装置は、ロボットアーム103に設ける必要はなく、他の輝点照射専用のロボットアームや、CPU1021がリモート制御可能な雲台などに設けられていてもよい。この場合の輝点照射制御は、輝点照射装置の位置が異なるだけで上述と同様である。
<方位検出手段の利用>
ロボットアーム103、特に基準位置Pの動作方向と、教示装置201に設けたジョイスティック202の操作方向の対応関係を精度良く保つために、方位検出手段を用いることが考えられる。近年のスマートフォン、携帯電話、パッド型のコンピュータなどにおいては、磁方位を検出できる方位検出手段として、電子(デジタル)コンパスのようなセンサデバイスが用いられている。
ロボットアーム103、特に基準位置Pの動作方向と、教示装置201に設けたジョイスティック202の操作方向の対応関係を精度良く保つために、方位検出手段を用いることが考えられる。近年のスマートフォン、携帯電話、パッド型のコンピュータなどにおいては、磁方位を検出できる方位検出手段として、電子(デジタル)コンパスのようなセンサデバイスが用いられている。
そこで、上記の電子(デジタル)コンパスのような方位検出手段をロボットアーム103、および教示装置201にそれぞれ搭載する。これら方位検出手段の出力は、図1のCPU1021が、インターフェース1024を介して、ロボットアーム103、および教示装置201からそれぞれ読み取ることができるよう構成する。
そして、例えば図3のステップS302、S306でロボットアーム103を動作させて第1の動作方向(図4の406)、第2の動作方向(408)を入力する際、ロボットアーム103と教示装置201の方位検出手段で検出される磁方位の情報を用いる。すなわち、CPU1021は、教示装置201に設けたジョイスティック202の操作方向に基づき、アームの基準位置Pの動作方向を決定する。このとき、例えば、ジョイスティック202の操作方向と、ロボットアーム103の基準位置Pの動作方向が同じ磁方位を向くように制御する。
このような制御を行うことにより、基準位置Pの動作方向と教示装置201に設けたジョイスティック202の操作方向の対応関係を精度良く保つことができる。従って、第1の動作方向(図4の406)、第2の動作方向(408)を精度よく入力することができ、教示点ないしその近傍点を特定する場合の精度を向上することができる。
<動作方向の入力手段>
以上に示した構成では、動作方向の入力手段として、教示装置201、ないし他の場所に配置したジョイスティック202を例示した。しかしながら、ジョイスティック202に限らず、異なる起点(第1の位置および第2の位置)からそれぞれ第1および第2の動作方向を入力できるものであれば、任意の入力手段を動作方向の入力手段として用いることができる。
以上に示した構成では、動作方向の入力手段として、教示装置201、ないし他の場所に配置したジョイスティック202を例示した。しかしながら、ジョイスティック202に限らず、異なる起点(第1の位置および第2の位置)からそれぞれ第1および第2の動作方向を入力できるものであれば、任意の入力手段を動作方向の入力手段として用いることができる。
例えば、表示装置203がタッチパネルなどで構成される場合は、その入力面に対するいわゆるスワイプ操作によって第1および第2の動作方向を入力することが考えられる。この場合、タッチパネルの入力面に、ロボット可動範囲401(図4)に相当する縦横比の入力範囲の枠などを表示する。そして、図3のステップS302およびS306において、オペレータ(402)に、その入力範囲内で直線的なスワイプ操作を行わせることにより、第1および第2の動作方向を入力させる。このような構成では、例えば、図4のBやDは、そのままタッチパネルの入力範囲(401)におけるスワイプ操作(406、408の矢印)の図示、と読んでも構わない。
なお、上記のようなタッチパネルを用いた入力方式では、少なくとも図3のステップS302およびS306の段階では、CPU1021には第1および第2の点(図4の405と407)の座標は既知となっている。このため、これら第1および第2の点(図4の405と407)の位置をロボット可動範囲401(図4)に対応させたタッチパネルの入力範囲中に表示してもよい。これにより、動作方向入力の起点である第1および第2の点(図4の405と407)の位置を明示的にオペレータ402に認識させることができる。
<実際のロボットアーム動作の省略>
以上では、図3のステップS302およびS306(あるいは図4のB、D)では、ジョイスティック202などの操作に応じて実際にその方向にロボットアーム103の基準位置Pを動作させることを考えた。
以上では、図3のステップS302およびS306(あるいは図4のB、D)では、ジョイスティック202などの操作に応じて実際にその方向にロボットアーム103の基準位置Pを動作させることを考えた。
しかしながら、原理的には、異なる起点(第1の位置および第2の位置)からそれぞれ第1および第2の動作方向を入力すれば、これら2つの動作方向から教示点(の近傍点)の座標は演算することができる。従って、実際には、必ずしも図3のステップS302およびS306(あるいは図4のB、D)では、ジョイスティック202などの操作に応じて実際にその方向にロボットアーム103の基準位置Pを動作させなくても構わない。
このように、実際のロボットアーム動作を省略する構成では、例えばジョイスティック202を短い時間倒すだけで、第1および第2の動作方向を入力することができる。また、第1および第2の動作方向は、上述のタッチパネル上のスワイプによる方式で入力することができ、この場合は、ロボット可動範囲401に見立てた入力範囲を用いるため、アーム動作を省略する方式により適している可能性がある。
特定された教示点は、直ちに教示装置201の表示装置203にロボット可動範囲401に見立てた枠などを表示し、その範囲内の対応する座標にドットなどを表示することにより、オペレータ402に認識させることができる。あるいはこのような教示近傍点(409、503)の表示は、上記の輝点照射装置の輝点照射によって行なってもよい。
以上のように実際のロボットアーム動作を省略する構成では、第1および第2の動作方向の入力をより短時間で繰り返し実行できる可能性がある。例えば、現場や作業工程の状況などによっては、大まかな教示点入力が多数回必要な場合も予想されるから、そのようなケースでは、実際のロボットアーム動作を省略する構成の方が適していることも考えられる。なお、実際のロボットアーム動作を行うか、あるいは省略するかについては、教示装置201を介した操作でロボット制御装置102に設定できるよう構成してもよい。
<他の変形例>
上述したように、第2の位置(図4のC)へのロボットアーム103の基準位置Pの位置決めは、オペレータ402の手動操作による場合と、CPU1021による自動制御による場合の2つが考えられる。このうち、CPU1021による自動制御によって第2の位置(図4のC)へのロボットアーム103の基準位置Pを位置決めする場合、既に入力済みの動作方向406(同B)とほぼ直角に近い方向にある第2の位置を用いるよう制御してもよい。これにより、例えば図5に示した教示近傍点503を演算するための三角形が直角三角形となり(角509が直角となる)、演算過程が容易になり、また、演算精度を向上できる可能性がある。
上述したように、第2の位置(図4のC)へのロボットアーム103の基準位置Pの位置決めは、オペレータ402の手動操作による場合と、CPU1021による自動制御による場合の2つが考えられる。このうち、CPU1021による自動制御によって第2の位置(図4のC)へのロボットアーム103の基準位置Pを位置決めする場合、既に入力済みの動作方向406(同B)とほぼ直角に近い方向にある第2の位置を用いるよう制御してもよい。これにより、例えば図5に示した教示近傍点503を演算するための三角形が直角三角形となり(角509が直角となる)、演算過程が容易になり、また、演算精度を向上できる可能性がある。
また、以上では、図5に示した演算に少なくとも必要な、第1および第2の位置から教示点に向かう第1および第2の動作方向を入力する構成を説明した。しかしながら、より精度を高めるために3つ以上の位置を起点とし、それぞれ3つ以上の動作方向を入力するようにしてもよい。この場合、例えば、3つ以上の複数の動作方向に相当する線分のうち2つを選び、図5と同様の三角測量による演算を行うことができる。そして、例えば、得られた2つ以上の教示近傍点の座標値の平均値を取ることによって、精度よく教示近傍点を特定することができる。
101…教示装置、102…ロボット制御装置、103…ロボットアーム、203…表示装置、204…キーボード、401…ロボット可動範囲、402…オペレータ、404…教示点、409、503…教示近傍点、1021…CPU、1022…ROM、1023…RAM、1025…フラッシュメモリ、P…基準位置
Claims (10)
- ロボットアームと、前記ロボットアームの基準位置の動作方向を入力可能な入力手段と、前記ロボットアームの基準位置を教示点に向かって動作させることが可能な制御装置を有するロボット装置の制御方法において、
前記制御装置は、
前記ロボットアームの基準位置が第1の位置にある状態で、前記入力手段によって前記第1の位置から前記教示点へ向かう第1の動作方向を取得する第1の方向取得工程と、
前記ロボットアームの基準位置が前記第1の位置とは異なる第2の位置にある状態で、前記入力手段によって前記第2の位置から前記教示点へ向かう第2の動作方向を取得する第2の方向取得工程と、
前記第1の方向取得工程で入力された前記第1の動作方向と、前記第2の方向取得工程で入力された前記第2の動作方向と、前記第1の位置および前記第2の位置の間の距離に基づき、三角測量の原理により前記教示点の近傍位置を特定する演算工程と、
を実行することを特徴とするロボット装置の制御方法。 - 請求項1に記載のロボット装置の制御方法において、前記制御装置は、前記第1の方向取得工程、および前記第2の方向取得工程において、前記入力手段を介して手動入力された前記第1の動作方向および前記第2の動作方向に向かって、前記ロボットアームの基準位置をそれぞれ動作させることを特徴とするロボット装置の制御方法。
- 請求項1または2に記載のロボット装置の制御方法において、前記ロボット装置は前記ロボットアームの動作を教示する教示装置を有し、前記入力手段が前記教示装置に設けられていることを特徴とするロボット装置の制御方法。
- 請求項3に記載のロボット装置の制御方法において、前記ロボットアームおよび前記教示装置にそれぞれ方位検出手段を設け、前記制御装置は、前記第1の方向取得工程、および前記第2の方向取得工程において、前記入力手段を介して手動入力された前記第1の動作方向および前記第2の動作方向に向かって、前記ロボットアームの基準位置をそれぞれ動作させるとともに、前記ロボットアームおよび前記教示装置にそれぞれ設けられた方位検出手段の出力に応じて前記入力手段を介して手動入力される前記第1の動作方向または前記第2の動作方向と、前記ロボットアームの基準位置を動作させる方向が一致するよう制御することを特徴とするロボット装置の制御方法。
- 請求項1から4のいずれか1項に記載のロボット装置の制御方法において、前記制御装置が、前記第1の方向取得工程に続き前記第2の方向取得工程に遷移する際、前記第1の位置から前記第2の位置の方向へ、前記第1の位置および前記第2の位置の間の距離だけ前記ロボットアームの基準位置を移動させることを特徴とするロボット装置の制御方法。
- 請求項1から5のいずれか1項に記載のロボット装置の制御方法において、前記制御装置は、前記第1の位置、前記第2の位置、前記第1の動作方向、前記第2の動作方向、または前記演算工程によって特定された教示点の近傍位置を表示装置により表示出力させることを特徴とするロボット装置の制御方法。
- 請求項1から6のいずれか1項に記載のロボット装置の制御方法において、前記ロボット装置は輝点照射装置を有し、前記制御装置は、前記演算工程によって特定された教示点の近傍位置に前記輝点照射装置によって輝点を照射することを特徴とするロボット装置の制御方法。
- 請求項1から7のいずれか1項に記載のロボット装置の制御方法を前記制御装置に実行させることを特徴とするロボット装置の制御プログラム。
- 請求項8に記載のロボット装置の制御プログラムを格納したことを特徴とするコンピュータ読み取り可能な記録媒体。
- ロボットアームと、前記ロボットアームの基準位置の動作方向を入力可能な入力手段と、前記ロボットアームの基準位置を教示点に向かって動作させる制御装置を有するロボット装置において、
前記制御装置は、
前記ロボットアームの基準位置が第1の位置にある状態で、前記入力手段によって前記第1の位置から前記教示点へ向かう第1の動作方向を取得し、
前記ロボットアームの基準位置が前記第1の位置とは異なる第2の位置にある状態で、前記入力手段によって前記第2の位置から前記教示点へ向かう第2の動作方向を取得し、
前記第1の動作方向と、前記第2の動作方向と、前記第1の位置および前記第2の位置の間の距離に基づき、三角測量の原理により前記教示点の近傍位置を特定することを特徴とするロボット装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014209768A JP2016078142A (ja) | 2014-10-14 | 2014-10-14 | ロボット装置の制御方法、およびロボット装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014209768A JP2016078142A (ja) | 2014-10-14 | 2014-10-14 | ロボット装置の制御方法、およびロボット装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016078142A true JP2016078142A (ja) | 2016-05-16 |
Family
ID=55957203
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014209768A Pending JP2016078142A (ja) | 2014-10-14 | 2014-10-14 | ロボット装置の制御方法、およびロボット装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2016078142A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109366468A (zh) * | 2018-12-14 | 2019-02-22 | 杭州崧智智能科技有限公司 | 一种机器人自动示教方法和自动示教系统 |
WO2019087738A1 (ja) * | 2017-10-31 | 2019-05-09 | 川崎重工業株式会社 | ロボットシステム |
US11454952B2 (en) | 2019-09-12 | 2022-09-27 | Mitsubishi Electric Corporation | Numerical control apparatus |
-
2014
- 2014-10-14 JP JP2014209768A patent/JP2016078142A/ja active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019087738A1 (ja) * | 2017-10-31 | 2019-05-09 | 川崎重工業株式会社 | ロボットシステム |
JP2019081239A (ja) * | 2017-10-31 | 2019-05-30 | 川崎重工業株式会社 | ロボットシステム |
JP7041492B2 (ja) | 2017-10-31 | 2022-03-24 | 川崎重工業株式会社 | ロボットシステム |
US11850758B2 (en) | 2017-10-31 | 2023-12-26 | Kawasaki Jukogyo Kabushiki Kaisha | System for correcting robot operations among simultaneously automatically operated robots |
CN109366468A (zh) * | 2018-12-14 | 2019-02-22 | 杭州崧智智能科技有限公司 | 一种机器人自动示教方法和自动示教系统 |
CN109366468B (zh) * | 2018-12-14 | 2023-10-31 | 崧智智能科技(苏州)有限公司 | 一种机器人自动示教方法和自动示教系统 |
US11454952B2 (en) | 2019-09-12 | 2022-09-27 | Mitsubishi Electric Corporation | Numerical control apparatus |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5526881B2 (ja) | ロボットシステム | |
US20210252713A1 (en) | External input device, robot system, control method of robot system, control program, and recording medium | |
CN109313417B (zh) | 帮助机器人定位 | |
US11565427B2 (en) | Robot system | |
JP5670416B2 (ja) | ロボットシステム表示装置 | |
US20180361593A1 (en) | Method and apparatus for robot path teaching | |
US20150377606A1 (en) | Projection system | |
US8872070B2 (en) | Offline teaching method | |
US20170336776A1 (en) | Robot motion program generating method and robot motion program generating apparatus | |
JP2018008347A (ja) | ロボットシステムおよび動作領域表示方法 | |
JP2018202514A (ja) | ロボットの教示のための情報を表示するロボットシステム | |
JP2016078142A (ja) | ロボット装置の制御方法、およびロボット装置 | |
JP6420537B2 (ja) | 多関節型三次元測定装置 | |
JP2018200278A (ja) | 位置計測装置の操作方法 | |
JP6457208B2 (ja) | ロボットへの動作指示システム及び動作指示方法 | |
JP7176148B1 (ja) | 溶接線検出システム | |
JP2016144852A (ja) | ロボットシステム | |
JPWO2018147359A1 (ja) | ロボット制御方法およびロボット | |
JP6435940B2 (ja) | ロボット操作装置、及びロボット操作プログラム | |
CN114342363A (zh) | 投影方法、投影装置以及投影系统 | |
EP4155037A1 (en) | Work program production system and work program production method | |
JP7195476B1 (ja) | 作業プログラム作成システム及び作業プログラム作成方法 | |
US20240066701A1 (en) | Simulation device using three-dimensional position information obtained from output from vision sensor | |
WO2022123850A1 (ja) | 制御装置、制御方法、プログラム | |
EP4166267A1 (en) | Welding line detection system |