(57)【要約】【課題】ロボットの通過位置が加工位置であるか退避位置であるかを簡単に設定することができ、ロボットの教示作業に必要な時間を短縮することが可能なロボット教示システムを提供する。【解決手段】ロボット教示システム１０は、ロボット１１と、ロボットコントローラ１２と、ツール１３と、制御部２０とを備えている。制御部２０は、加工対象Ｗの図面データ２５を読み込む図面データ読込部２１と、通過位置データ２６、加工位置データ２７、および退避位置データ２８を入力するための入力部２２と、ロボット１１の通過位置を設定する通過位置設定部２４とを有している。通過位置編集部３０は、ロボット１１の通過位置が加工位置であるかまたは退避位置であるかを設定する。プログラム作成部３１は、移動プログラム３２を作成し、出力部３３により移動プログラム３２がロボットコントローラ１２へ送信される。【選択図】図１
2010179388.tif 000002
【特許請求の範囲】
【請求項１】
加工対象に対して加工作業を行うロボットを教示するロボット教示システムにおいて、
ロボットと、
ロボットに接続されたロボットコントローラと、
ロボットに取付られたツールと、
ロボットコントローラに接続され、ロボットコントローラを制御する制御部とを備え、
制御部は、
加工対象の図面データを読み込む図面データ読込部と、
ロボットの通過位置に関する通過位置データを入力するとともに、通過位置データの中から通過位置が加工対象の加工位置であることを示す加工位置データおよび通過位置が障害物を避けるための退避位置であることを示す退避位置データを入力するための入力部と、
図面データ読込部により読み込まれた図面データと、入力部により入力された通過位置データとに基づいて、ロボットの通過位置を設定する通過位置設定部と、
通過位置設定部により設定されたロボットの通過位置と、入力部により入力された加工位置データおよび退避位置データとに基づいて、ロボットの通過位置が加工位置であるかまたは退避位置であるかを設定する通過位置編集部と、
通過位置設定部により設定されたロボットの通過位置と、通過位置編集部で設定された加工位置および退避位置の情報とに基づいて、ロボットの移動プログラムを作成するプログラム作成部と、
プログラム作成部で作成された移動プログラムをロボットコントローラへ送信する出力部とを有することを特徴とするロボット教示システム。
【請求項２】
制御部に、ロボットの通過位置、加工対象の加工位置、および障害物を避けるための退避位置を表示するための表示部が接続されていることを特徴とする請求項１記載のロボット教示システム。
【請求項３】
表示部において、加工位置および退避位置は互いに異なる色で表示されることを特徴とする請求項２記載のロボット教示システム。
【請求項４】
プログラム作成部は、入力部により入力される通過位置の順番に対応してロボットが移動するように移動プログラムを作成することを特徴とする請求項１乃至３のいずれか一項記載のロボット教示システム。
【請求項５】
ツールおよびロボットコントローラに接続されたツールコントローラを更に備え、
ツールコントローラは、ロボットコントローラからの制御信号によって制御されることを特徴とする請求項１乃至４のいずれか一項記載のロボット教示システム。
【請求項６】
プログラム作成部は、ロボットの通過位置のうち加工対象の加工位置に設定された通過位置においてロボットが加工作業を行うように移動プログラムを作成することを特徴とする請求項１乃至５のいずれか一項記載のロボット教示システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、加工対象に対して加工作業を行うロボットを教示（ティーチング）するロボット教示システムに係り、とりわけロボットの教示作業に必要な時間を短縮することが可能なロボット教示システムに関する。
【背景技術】
【０００２】
一般に、半田付け、ねじ締め等の作業をロボットに行わせる場合、予め各作業に対応するツールをロボット先端に取付け、その後ロボットに各作業位置を教示する。この場合、ロボットを手動で実際に操作して位置決めを行い、各作業位置を１箇所ずつロボットに教示する必要がある。
【０００３】
このように、ロボットの教示作業には時間がかかっている。このため、ロボットの教示作業に必要な時間を短縮するため、ロボットを実際に動作させることなくオフラインで教示作業を行うこと（オフラインティーチング）が求められている。
【０００４】
このようなオフラインティーチングを行うためのシステムも存在する。しかしながら、従来のオフラインティーチングシステムにおいては、ある教示位置から次の教示位置へロボットが直線的に移動できず障害物を避ける必要がある場合に、経路の詳細な教示ができず、無駄な移動が必要であったりして、効率的にロボットプログラムを作成することは難しい。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１１−１８８７７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明はこのような点を考慮してなされたものであり、ロボットの通過位置が加工位置であるか退避位置であるかを簡単に設定することができ、ロボットの教示作業に必要な時間を短縮することが可能なロボット教示システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、加工対象に対して加工作業を行うロボットを教示するロボット教示システムにおいて、ロボットと、ロボットに接続されたロボットコントローラと、ロボットに取付られたツールと、ロボットコントローラに接続され、ロボットコントローラを制御する制御部とを備え、制御部は、加工対象の図面データを読み込む図面データ読込部と、ロボットの通過位置に関する通過位置データを入力するとともに、通過位置データの中から通過位置が加工対象の加工位置であることを示す加工位置データおよび通過位置が障害物を避けるための退避位置であることを示す退避位置データを入力するための入力部と、図面データ読込部により読み込まれた図面データと、入力部により入力された通過位置データとに基づいて、ロボットの通過位置を設定する通過位置設定部と、通過位置設定部により設定されたロボットの通過位置と、入力部により入力された加工位置データおよび退避位置データとに基づいて、ロボットの通過位置が加工位置であるかまたは退避位置であるかを設定する通過位置編集部と、通過位置設定部により設定されたロボットの通過位置と、通過位置編集部で設定された加工位置および退避位置の情報とに基づいて、ロボットの移動プログラムを作成するプログラム作成部と、プログラム作成部で作成された移動プログラムをロボットコントローラへ送信する出力部とを有することを特徴とするロボット教示システムである。
【０００８】
本発明は、制御部に、ロボットの通過位置、加工対象の加工位置、および障害物を避けるための退避位置を表示するための表示部が接続されていることを特徴とするロボット教示システムである。
【０００９】
本発明は、表示部において、加工位置および退避位置は互いに異なる色で表示されることを特徴とするロボット教示システムである。
【００１０】
本発明は、プログラム作成部は、入力部により入力される通過位置の順番に対応してロボットが移動するように移動プログラムを作成することを特徴とするロボット教示システムである。
【００１１】
本発明は、ツールおよびロボットコントローラに接続されたツールコントローラを更に備え、ツールコントローラは、ロボットコントローラからの制御信号によって制御されることを特徴とするロボット教示システムである。
【００１２】
本発明は、プログラム作成部は、ロボットの通過位置のうち加工対象の加工位置に設定された通過位置においてロボットが加工作業を行うように移動プログラムを作成することを特徴とするロボット教示システムである。
【発明の効果】
【００１３】
本発明によれば、ロボットを手動で操作することなく、図面データに基づいて加工対象に対するロボットの教示作業を行うことができる。とりわけロボットの通過位置が加工位置であるか退避位置であるかを簡単に設定することができるので、教示作業に必要な時間を短縮することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明によるロボット教示システムの一実施の形態を示す全体構成図。
【図２】本発明によるロボット教示システムにおいて、表示部に表示される画面を示す図。
【図３】本発明によるロボット教示システムにおいて、各通過位置が加工位置であるか退避位置であるかをユーザーに選択させる画面を示す図。
【図４】プログラム作成部における移動プログラムの作成方法を示すフロー図。
【発明を実施するための形態】
【００１５】
以下、本発明の一実施の形態について、図１乃至図４を参照して説明する。ここで、図１乃至図４は、本発明の一実施の形態を示す図である。
【００１６】
まず、図１により、本実施の形態によるロボット教示システムの概略について説明する。図１に示すように、ロボット教示システム１０は、ロボット１１と、ロボット１１に接続されるとともに、ロボット１１を手動で操作する際に用いられるプログラミングペンダント１５が設けられたロボットコントローラ１２と、ロボット１１に取付られたツール１３と、ロボットコントローラ１２に接続されるとともにツール１３に接続されたツールコントローラ１４とを備えている。
【００１７】
このうちロボット１１は、ワーク（加工対象）Ｗに対して加工作業を行うロボットであり、例えば直交ロボット、スカラロボット、垂直多関節ロボット等からなっている。またワークＷは、例えばプリント基板、電子部品等からなっているが、ロボット１１により作業が行われるものであれば特に限定されない。
【００１８】
ツール１３は、例えば半田付け用ツール、ねじ締め用ツール、溶接用ツール、および塗装用ツール等、ワークＷに対して所定の作業を行う手段からなっている。一方、ツールコントローラ１４は、ロボットコントローラ１２からの制御信号によって各ツール１３を制御可能となっている。
【００１９】
また図１に示すように、ロボットコントローラ１２には、このロボットコントローラ１２を制御する例えばコンピュータからなる制御部２０が接続されている。以下、この制御部２０の構成について説明する。
【００２０】
制御部２０は、ワークＷの図面データ２５を読み込む図面データ読込部２１と、ロボット１１の通過位置に関する通過位置データ２６を入力するとともに、通過位置データ２６の中から通過位置がワークＷの加工位置であることを示す加工位置データ２７および通過位置が障害物を避けるための退避位置であることを示す退避位置データ２８を入力するための入力部２２とを有している。
【００２１】
また制御部２０に、ロボット１１の通過位置、ワークＷの加工位置、および障害物を避けるための退避位置を視覚的に表示するための表示部２９が接続されている。この表示部２９としては、液晶モニタ等、従来公知の表示手段を用いることができる。
【００２２】
図面データ読込部２１には、ワークＷの図面データ２５を記憶する記憶部２３が接続されている。図面データ読込部２１は、この記憶部２３から図面データ２５を読み込むとともに、このようにして読み込んだ図面データ２５を表示部２９に表示する機能を有している。
【００２３】
記憶部２３としては、磁気ディスク、フロッピーディスク（登録商標）、ハードディスク、光ディスク（ＣＤ−ＲＯＭ、ＣＤ−ＲおよびＤＶＤ等）、光磁気ディスク（ＭＯ等）または半導体メモリ等からなり、図面データ２５を記憶することができるものであれば、制御部２０内部に位置しているか外部に位置しているかは問わない。また図面データ２５としては、例えばＤＸＦファイル等のＣＡＤデータ、あるいはガーバーデータ等のＣＡＭデータが挙げられる。さらに入力部２２としては、例えばマウス、キーボード等、ユーザーが上記各データ（通過位置データ２６、加工位置データ２７、および退避位置データ２８）を入力するために使用可能な入力手段が挙げられる。
【００２４】
ここで、入力部２２により入力されるデータのうち、通過位置データ２６とは、ロボット１１が加工作業を行う際にロボット１１が通過する通過位置に関するデータである。具体的には、ロボット１１が加工作業を開始してから終了するまでの間に通過する複数の通過位置（教示点）の座標と、これらの通過位置をロボット１１が通過する通過順序とを含んでいる。
【００２５】
また加工位置データ２７とは、前記複数の通過位置（教示点）のうち、ロボット１１がワークＷに対して個々の加工作業を行う位置（加工位置）を指定するデータである。さらに退避位置データ２８とは、前記複数の通過位置（教示点）のうち、ロボット１１がワークＷに対して個々の加工作業を行うことがなく、単に障害物を避けるために設定された位置（退避位置）を指定するデータである。本実施の形態において、通過位置は、加工位置または退避位置のいずれかからなっているが、これ以外にも、例えばロボット１１が一定時間待機する待機位置等、ロボット１１が他の動作をするための位置を設けても良い。また加工位置は、ねじ締め用加工位置、半田付け用加工位置等、互いに異なる複数種類の加工位置から構成されていても良い。
【００２６】
一方、図面データ読込部２１には、通過位置設定部２４が接続されている。通過位置設定部２４は、図面データ読込部２１により読み込まれた図面データ２５と、入力部２２により入力された通過位置データ２６とに基づいて、ロボット１１の通過位置を設定するものである。すなわち、通過位置設定部２４は、ユーザーにより入力された通過位置データ２６と図面データ読込部２１により読み込まれた図面データ２５とを対応付けることにより、加工作業を行う際にロボット１１が通過する通過位置と通過順序とを設定する。また通過位置設定部２４は、この通過位置および通過順序を表示部２９に表示する機能も有している。
【００２７】
また、通過位置設定部２４には、通過位置編集部３０が接続されている。通過位置編集部３０は、通過位置設定部２４により設定されたロボット１１の通過位置と、入力部２２により入力された加工位置データ２７および退避位置データ２８とに基づいて、ロボット１１の通過位置が加工位置であるかまたは退避位置であるかを設定する。すなわち、表示部２９の表示内容に基づいて、ユーザーがある通過位置を加工位置に指定した場合、通過位置編集部３０は当該通過位置を加工位置として設定する。同様に、ユーザーがある通過位置を退避位置に指定した場合、通過位置編集部３０は、当該通過位置を退避位置として設定する。また通過位置編集部３０は、このようにして設定された加工位置および退避位置の情報を表示部２９に表示する機能も有している。
【００２８】
さらに、通過位置編集部３０にはプログラム作成部３１が接続されている。このプログラム作成部３１は、通過位置設定部２４により設定されたロボット１１の通過位置と、通過位置編集部３０で設定された加工位置および退避位置の情報とに基づいて、ロボット１１の移動プログラム３２を作成するものである。すなわちプログラム作成部３１は、ロボット１１の通過位置および通過順序の情報に基づき、これら各通過位置を所定の通過順序で通過する移動プログラム３２を作成する。
【００２９】
このようにして移動プログラム３２を作成する際、プログラム作成部３１は、ロボット１１の通過位置のうちワークＷの加工位置に設定された通過位置においてロボット１１が加工作業を行うように自動的に移動プログラムを作成する。他方、ロボット１１の通過位置のうち退避位置に設定された通過位置については、ロボット１１が当該通過位置（退避位置）をそのまま通過して次の通過位置に進めるように自動的に移動プログラムを作成する。
【００３０】
さらにまた、プログラム作成部３１には、プログラム作成部３１で作成された移動プログラム３２をロボットコントローラ１２へ送信する出力部３３が接続されている。
【００３１】
次に、このような構成からなる本実施の形態の作用について説明する。具体的には、ロボット１１がプリント基板からなるワークＷに対して半田付けを行う場合を例にとって、図２（ａ）〜（ｃ）を用いて説明する。ここで図２（ａ）〜（ｃ）は、表示部２９に表示された図面データ２５の画面を示している。なお、以下において、便宜上、ロボット１１に取付られたツール１３がプリント基板表面に沿って二次元的に動く場合を想定する。
【００３２】
まず、ユーザーが入力部２２を操作することにより、記憶部２３から図面データ読込部２１にワークＷの図面データ２５が読み込まれる。図面データ読込部２１は、このようにして読み込んだ図面データ２５を表示部２９に表示する（図２（ａ））。なお、図２（ａ）に示す表示部２９の画面中、符号Ｒおよび符号Ｃは電子部品を示し、白丸印（Ｓ1〜Ｓ5）は、はんだ付け作業を行う箇所を示している。
【００３３】
次に、ユーザーは、入力部２２を操作することにより、通過位置データ２６を入力する。この際、通過位置設定部２４は、図面データ読込部２１により読み込まれた図面データ２５と、このようにして入力された通過位置データ２６とに基づいて、ロボット１１の通過位置および通過順序を設定する。
【００３４】
すなわち図２（ｂ）に示すように、例えば入力部２２がマウスからなる場合、ユーザーは、表示部２９を参照しながらポインタ３５を移動する。そしてロボット１１が通過する通過位置（教示点）毎にかつロボット１１が通過する順番に従って、マウスを左クリックする。この際、ユーザーは、ロボット１１が電子部品Ｃ（障害物）に干渉しないように、電子部品Ｃを避ける位置に通過位置Ｐ1、Ｐ2を設定しておく。次に通過位置設定部２４は、（１）Ｓ1、（２）Ｓ2、（３）Ｓ3、（４）Ｓ4、（５）Ｐ1、（６）Ｐ2、（７）Ｓ5の順に、ロボット１１の通過位置および通過順序を設定する。また通過位置設定部２４は、ロボット１１の通過位置および通過順序を表示部２９に表示する（図２（ｂ）の丸囲み数字および矢印参照）。なお、通過位置データ２６は、ロボット１１の通過位置Ｓ1、Ｓ2、Ｓ3、Ｓ4、Ｐ1、Ｐ2、Ｓ5の各座標、およびこれらの通過位置を通過する通過順序のデータを含んでいる。
【００３５】
次に、ユーザーは、入力部２２を操作することにより、加工位置データ２７および退避位置データ２８を入力する。この際、通過位置編集部３０は、通過位置設定部２４により設定されたロボット１１の通過位置と、このようにして入力された加工位置データ２７および退避位置データ２８に基づいて、ロボット１１の通過位置が加工位置であるかまたは退避位置であるかを設定する。
【００３６】
すなわち図２（ｃ）に示すように、例えば入力部２２がマウスからなる場合、ユーザーは、表示部２９を参照しながらポインタ３５を移動し、各通過位置（教示点）毎に、この通過位置が加工位置であるか退避位置であるかを設定する。具体的には、ユーザーは、ロボット１１の各通過位置Ｓ1、Ｓ2、Ｓ3、Ｓ4、Ｐ1、Ｐ2、Ｓ5にポインタ３５を合わせ、マウスを右クリックする。このとき、表示部２９には各通過位置が加工位置であるか退避位置であるかをユーザーに選択させる画面が表示される（図３参照）。続いて、ユーザーは、入力部２２を操作する（例えばマウスを左クリックする）ことにより、各通過位置がそれぞれ加工位置であるか退避位置であるかを指定する。
【００３７】
このユーザーによる指定に基づき、通過位置編集部３０は、ロボットの通過位置が加工位置であるかまたは退避位置であるかを設定する。また通過位置編集部３０は、加工位置および退避位置を表示部２９に表示する。この場合、表示部２９において、加工位置および退避位置は互いに異なる色で表示されることが好ましい。なお、図２（ｃ）においては、加工位置（Ｓ1、Ｓ2、Ｓ3、Ｓ4、Ｓ5）を黒丸印で表示するとともに、退避位置（Ｐ1、Ｐ2）を斜線入り丸印で表示している。
【００３８】
続いて、プログラム作成部３１は、通過位置設定部２４により設定されたロボット１１の通過位置と、通過位置編集部３０で設定された加工位置および退避位置の情報とに基づいて、ロボット１１の移動プログラム３２を作成する。なお、この移動プログラム３２は、ロボットコントローラ１２が直接読み取り可能な言語形式で記述される。
【００３９】
すなわち図２（ａ）〜（ｃ）において、プログラム作成部３１は、ロボット１１が通過位置Ｓ1、Ｓ2、Ｓ3、Ｓ4、Ｐ1、Ｐ2、Ｓ5をこの順番に通過する移動プログラム３２を作成する。この際、プログラム作成部３１は、ロボット１１が加工位置（Ｓ1、Ｓ2、Ｓ3、Ｓ4、Ｓ5）に到達した際、この加工位置で加工作業（例えば半田付け、ねじ締め等）を行う加工作業用プログラムを作成する。
【００４０】
この加工作業用プログラムの一例としては以下のようなものが挙げられる。すなわち、まずロボット１１が加工位置に到達すると、ロボット１１はワークＷに接近し、この状態で一時停止する。次いでロボットコントローラ１２からツールコントローラ１４に対して制御信号を送信する。これによりツール１３がワークＷに対して所定の加工作業を行い、この間ロボット１１は待機している。加工作業が終了した後、ツールコントローラ１４からロボットコントローラ１２に対して信号が送信され、この信号を受けて、ロボット１１はワークＷから離間するとともに、次の通過位置に向けて進行する。
【００４１】
他方、プログラム作成部３１は、ロボット１１が退避位置（Ｐ1、Ｐ2）に到達した場合、ロボット１１は当該退避位置をそのまま通過して次の通過位置に進む通過用プログラムを作成する。
【００４２】
次に、図４により、プログラム作成部３１における移動プログラム３２の作成フローについて更に説明する。
【００４３】
まず、プログラム作成部３１は、全ての通過位置を通過するプログラムが作成されたか否かを判断する（ステップＳ０１）。
【００４４】
これが肯定される（Ｙ）場合、プログラムは完成しているので、プログラムの作成を終了し、作成中のプログラムが移動プログラム３２となる。他方、これが否定される（Ｎ）場合、プログラム作成部３１は、ロボット１１が次の通過位置へ移動する通過用プログラム（Ｐ０１）を作成し、これを現在作成中のプログラムの最後尾に追加する。（ステップＳ０２）。
【００４５】
次に、プログラム作成部３１は、当該次の通過位置が加工位置であるか否かを判断する（ステップＳ０３）。
【００４６】
これが否定される（Ｎ）場合、前記ステップ０１に戻って、引き続き各ステップを繰り返す。他方、これが肯定される（Ｙ）場合、プログラム作成部３１は、上述したような加工作業用プログラム（Ｐ０２）を作成し、これを現在作成中のプログラムの最後尾に追加する（ステップＳ０４）。その後、前記ステップ０１に戻って、引き続き各ステップを繰り返す。
【００４７】
このようにして移動プログラム３２が完成した場合、出力部３３は、作成された移動プログラム３２をロボットコントローラ１２へ送信する。
【００４８】
このようにして、ユーザーがプログラミングペンダント１５を手動で操作することなく、ロボット１１の教示作業をオフラインで完了することができる。オフラインでの教示作業が終了した後、ロボットコントローラ１２は、移動プログラム３２に沿ってロボット１１を動作させる。
【００４９】
このように、本実施の形態によれば、ロボット１１を手動で操作することなく、図面データ２５に基づいてワークＷに対するロボット１１の教示作業を行うことができる。とりわけロボット１１の通過位置が加工位置であるか退避位置であるかを簡単に設定することができるので、教示作業に必要な時間を短縮することができる
【００５０】
また、本実施の形態によれば、表示部２９において、加工位置および退避位置は互いに異なる色で表示されるので、表示された通過位置が加工位置であるか退避位置であるかを視覚的に認識しやすくなっている。
【００５１】
さらに、本実施の形態によれば、プログラム作成部３１は、入力部２２により入力される通過位置の順番に対応してロボット１１が移動するように移動プログラム３２を作成する。また、プログラム作成部３１は、ロボット１１の通過位置のうちワークＷの加工位置に設定された通過位置において、ロボットが加工作業を行うように自動的に移動プログラムを作成する。このことにより、移動プログラム３２を作成する際、ユーザーの操作負担を軽減することができる。
【符号の説明】
【００５２】
１０        ロボット教示システム
１１        ロボット
１２        ロボットコントローラ
１３        ツール
１４        ツールコントローラ
１５        プログラミングペンダント
２０        制御部
２１        図面データ読込部
２２        入力部
２３        記憶部
２４        通過位置設定部
２５        図面データ
２６        通過位置データ
２７        加工位置データ
２８        退避位置データ
２９        表示部
３０        通過位置編集部
３１        プログラム作成部
３２        移動プログラム
３３        出力部
３５        ポインタ
【図１】
2010179388.tif 000003
【図２】
2010179388.tif 000004
【図３】
2010179388.tif 000005
【図４】
2010179388.tif 000006