(57)【特許請求の範囲】
【請求項１】
車体にスポット溶接を行う一つのロボットのロボットプログラムを作成するロボットオフラインプログラミング装置において、
第一車体においてスポット溶接が行われる打点の打点位置情報および打点順序情報を記憶する第一記憶手段と、
第二車体においてスポット溶接が行われる打点の打点位置情報および前記第二車体の三次元モデルを記憶する第二記憶手段と、
前記第一記憶手段に記憶された前記第一車体の前記打点位置情報および前記打点順序情報と、前記第二記憶手段に記憶された前記第二車体の前記打点位置情報とに基づいて、前記第二車体の打点順序情報を決定する決定手段と、
前記第二車体の前記三次元モデルから定まる、前記第二車体の前記打点が行われる面に対して垂直な方向に前記スポット溶接の加圧が行われるように、前記ロボットの教示姿勢を前記第二車体の打点毎に調節すると共に、前記第二車体の前記打点順序情報から定まる打点の進行方向が前記第一車体の前記打点順序情報から定まる打点の進行方向と同じになるように、前記ロボットの教示姿勢を前記第二車体の打点毎に調節する調節手段と、
前記第二車体の前記打点位置情報および前記決定手段により決定された前記第二車体の前記打点順序情報に基づいて、前記第二車体をスポット溶接するための前記ロボットのロボットプログラムを作成するプログラム作成手段とを具備する、ロボットオフラインプログラミング装置。
【請求項２】
前記第二車体は、前記第一車体の後継車両または前記第一車体とは仕様の異なる同一車種の車両の車体である、請求項１に記載のロボットオフラインプログラミング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車体にスポット溶接を行う一つのロボットのロボットプログラムまたは複数のロボットのそれぞれのロボットプログラムを作成するロボットオフラインプログラミング装置に関する。
【背景技術】
【０００２】
従来より、産業用ロボットは、自動車工場などにおいてスポット溶接を自動車の車体に行うのに使用されている。スポット溶接は、一つのロボットにより行われる場合もあり、また、特許文献１に開示されるように複数のロボットが一つの車体に対してスポット溶接を行う場合もある。
【０００３】
ロボットが車体にスポット溶接を行う際には、スポット溶接を行う複数の場所を定めた打点位置情報、およびそれら打点の順序を定める打点順序情報が車体毎に作成される。さらに、複数のロボットが一つの車体にスポット溶接する場合には、複数のロボットのうちのいずれのロボットがスポット溶接を行うかを打点毎に定めた打点配分情報も作成される。そして、これら打点位置情報などに基づいてロボットのプログラムがオフラインで作成され、そのプログラムに基づいてロボットが稼働される。
【特許文献１】特許第２９８４２１８号明細書
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、スポット溶接を行う部位は自動車の車体に応じて異なるので、打点位置情報、打点順序情報および打点配分情報（以下、適宜「情報」と称する）は自動車の車種が変更される度にその車体毎に定める必要がある。
【０００５】
しかしながら、そのような情報の作成は、作業者が試行錯誤しながら行うことが多く、作業者の熟練度に応じて情報の内容が異なることもある。さらに、未熟な作業者により定められた情報を含むプログラムによりロボットを動作させた場合には、ロボットが車体および／または他のロボットに衝突する事態も生じうる。さらに、熟練した作業者が情報を作成する場合であっても、情報の決定にはかなりの時間を要するという課題もあった。
【０００６】
本発明はこのような事情に鑑みてなされたものであり、作業者の熟練度に依存することなしに、最適な情報を含むロボットのプログラムを短時間で作成することのできる、ロボットオフラインプログラミング装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
前述した目的を達成するために１番目の発明によれば、車体にスポット溶接を行う一つのロボットのロボットプログラムを作成するロボットオフラインプログラミング装置において、第一車体においてスポット溶接が行われる打点の打点位置情報および打点順序情報を記憶する第一記憶手段と、第二車体においてスポット溶接が行われる打点の打点位置情報および前記第二車体の三次元モデルを記憶する第二記憶手段と、前記第一記憶手段に記憶された前記第一車体の前記打点位置情報および前記打点順序情報と、前記第二記憶手段に記憶された前記第二車体の前記打点位置情報とに基づいて、前記第二車体の打点順序情報を決定する決定手段と、前記第二車体の前記三次元モデルから定まる、前記第二車体の前記打点が行われる面に対して垂直な方向に前記スポット溶接の加圧が行われるように、前記ロボットの教示姿勢を前記第二車体の打点毎に調節すると共に、前記第二車体の前記打点順序情報から定まる打点の進行方向が前記第一車体の前記打点順序情報から定まる打点の進行方向と同じになるように、前記ロボットの教示姿勢を前記第二車体の打点毎に調節する調節手段と、前記第二車体の前記打点位置情報および前記決定手段により決定された前記第二車体の前記打点順序情報に基づいて、前記第二車体をスポット溶接するための前記ロボットのロボットプログラムを作成するプログラム作成手段とを具備する、ロボットオフラインプログラミング装置が提供される。
【０００８】
すなわち１番目の発明においては、第一車体、例えば基準車体の打点位置情報および打点順序情報に基づいて第二車体、例えば新規車体の打点順序情報を定めている。従って、車体に衝突しないように予め定められた第一車体の最適な情報を第二車体の情報に反映させることができる。それゆえ、作業者の熟練度に依存することなしに、最適な情報を含むロボットのプログラムを短時間で作成することができ、またロボットが自動車の車体に衝突することも避けることができる。さらに、より良好なスポット溶接を行うことができる。さらに、スポット溶接の溶接ガンが車体および／または他のロボットに干渉しないのを確保できる。
【００１１】
２番目の発明によれば、１番目の発明において、前記第二車体は、前記第一車体の後継車両または前記第一車体とは仕様の異なる同一車種の車両の車体である。
すなわち２番目の発明においては、第二車体が第一車体の後継車両などである場合には、さらに短時間で最適なプログラムを作成することができる。
【発明を実施するための最良の形態】
【００１４】
以下、添付図面を参照して本発明の実施形態を説明する。以下の図面において同様の部材には同様の参照符号が付けられている。理解を容易にするために、これら図面は縮尺を適宜変更している。
図１は本発明の第一の実施形態に基づくオフラインプログラミング装置を含むスポット溶接システムの略図である。図１のスポット溶接システム１０においては、単一のロボット１１が溶接ガン１７により車体Ｂをスポット溶接可能に配置されている。車体Ｂは、同スポット溶接システム１０においてスポット溶接されるべき新規車体である。ロボット１１を制御する制御装置１５は、プログラミング装置２０に接続されている。
【００１５】
プログラミング装置２０はデジタルコンピュータであり、ＣＰＵ２１と記憶部３１とを主に含んでいる。また、プログラミング装置２０は、車体Ｂとロボット１１、１２を表示する表示部２５を備えている。
【００１６】
図示されるように、記憶部３１は基準車体用記憶部３２と新規車体用記憶部４２とを含んでいる。ここで、基準車体Ａは既に同スポット溶接システム１０において適切にスポット溶接されたことのある車体である。例えば新規車体Ｂは基準車体Ａの後継車両または基準車体とは仕様の異なる同一車種の車両の車体である。
【００１７】
基準車体用記憶部３２は基準車体Ａの打点位置情報３３および打点順序情報３４を含んでいる。打点位置情報３３は、基準車体Ａにおいてスポット溶接される場所、つまり打点のそれぞれの位置についての情報である。打点位置情報３３は、基準車体Ａの形状および基準車体Ａに要求される強度などに応じて定まる。
【００１８】
また、打点順序情報３４は、それら打点においてスポット溶接を行う順番についての情報である。基準車体Ａの打点順序情報３４は、図示されるスポット溶接システム１０にて基準車体Ａをスポット溶接する際に熟練した作業者によって作成されたものとする。言い換えれば、打点順序情報３４を含むロボットプログラムを実施した場合に、ロボット１１が基準車体Ａに干渉することなしに、スポット溶接が各打点において適切に行われるものとする。
【００１９】
これら打点位置情報３３および打点順序情報３４は過去に教示されたロボット１１、１２の教示プログラムの一部分であってもよく、また所定の定義ファイルの形態をなしていてもよい。
【００２０】
なお、新規車体用記憶部４２は、新規車体Ｂの形状および新規車体Ｂに要求される強度などに応じて定まる打点位置情報４３と、新規車体Ｂの三次元モデルとを含んでいる。打点位置情報４３は所定の定義ファイルの形態をなしているか、または新規車体Ｂの三次元モデルの点要素であってもよい。
【００２１】
ＣＰＵ２１は、基準車体Ａの打点位置情報３３および打点順序情報３４と新規車体Ｂの打点位置情報４３とに基づいて新規車体Ｂの打点順序情報を決定する決定手段２２としての役目を果たす。さらに、ＣＰＵ２１は、新規車体Ｂの打点位置情報４３および決定手段２２により決定された新規車体Ｂの打点順序情報に基づいて、ロボット１１のロボットプログラムをオフラインで作成するプログラム作成手段２３としての役目を果たす。さらに、ＣＰＵ２１はロボット１１の教示姿勢を新規車体Ｂの打点毎に調節する調節手段２４としての役目を果たす。
【００２２】
また、図２は本発明の第二の実施形態に基づくオフラインプログラミング装置を含むスポット溶接システムの略図である。図２のスポット溶接システム１０においては、溶接ガン１８を備えたロボット１２が追加されており、ロボット１２の制御装置１６がプログラミング装置２０に接続されている。第二の実施形態においては、二つのロボット１１、１２が協働して、新規車体Ｂをスポット溶接する。また、図２に示されるように、基準車体用記憶部３２は、複数の打点のそれぞれをロボット１１、１２のうちのいずれかに関連づける打点配分情報３５を含んでいる。
【００２３】
なお、図２においては二つのロボットが示されているが、さらに多数のロボットが協働してスポット溶接を行うようにしてもよい。その場合には、打点配分情報３５は各打点のそれぞれを複数のロボットのいずれかに関連づける。
【００２４】
なお、基準車体Ａの打点配分情報３５は、図示されるスポット溶接システム１０にて基準車体Ａをスポット溶接する際に熟練した作業者によって作成されたものとする。言い換えれば、打点順序情報３４および打点配分情報３５を含むロボットプログラムを実施した場合には、ロボット１１、１２が基準車体Ａに干渉することなしに、およびロボット１１、１２が互いに干渉することなしに、スポット溶接が適切に行われるものとする。
【００２５】
また、第二の実施形態においては、決定手段２２は、基準車体Ａの打点位置情報３３および打点順序情報３４と新規車体Ｂの打点位置情報３３とに基づいて、新規車体Ｂの打点順序情報および打点配分情報を決定する。また、プログラム作成手段２３は、新規車体Ｂの打点位置情報４３ならびに新規車体Ｂの打点順序情報および打点配分情報に基づいて、ロボット１１、１２のそれぞれのロボットプログラムを作成する。
【００２６】
図３は、本発明に基づくプログラミング装置２０の動作を示すフローチャートである。以下、図３を参照しつつ、本発明のプログラミング装置２０の動作を説明する。なお、以下においては、第一および第二の実施形態についてまとめて記載していることに注意されたい。
【００２７】
図３のステップ１０１においては、新規車体Ｂおよびロボット（第一の実施形態においては一つ、第二の実施形態においては複数）を表示部２５に表示してワークセルを作成する。次いで、ステップ１０２において新規車体用記憶部４２から新規車体Ｂの打点位置情報４３を取得し、ステップ１０３において基準車体用記憶部３２から打点位置情報３３および打点順序情報３４を取得する。第二の実施形態においては、基準車体用記憶部３２から打点配分情報３５をさらに取得する。
【００２８】
ここで、新規車体Ｂの打点位置情報４３に含まれる打点の総数をｎ（１≦ｎ）とする。そして、新規車体Ｂにおける複数の打点ｐのそれぞれについて以下の処理が行われる。はじめに、ステップ１０４において、現在の打点ｐ（ｉ）（１≦ｉ≦ｎ）の順番ｉが総数ｎになったか否かが判定される。打点ｐ（ｉ）が総数ｎに到達したと判定されない場合には、ステップ１０５に進む。一方、打点ｐ（ｉ）が総数ｎに到達したと判定された場合には全ての打点についての処理が行われたので、ステップ１０８に進む。
【００２９】
ステップ１０５においては、決定手段２２が基準車体Ａの打点位置情報３３と新規車体Ｂの打点位置情報４３とを比較する。新規車体Ｂが基準車体Ａの後継車両である場合には、新規車体Ｂおよび基準車体Ａの主要寸法は互いにほぼ等しく、また、新規車体Ｂにおける或る打点Ｐの位置は、基準車体Ａの或る打点ｐの位置に概ね等しい。決定手段２２は、新規車体Ｂの打点ｐ近傍に位置する基準車体Ａの打点Ｐを参照して、新規車体Ｂの打点順序情報および／または打点配分情報を決定する。
【００３０】
図４においては、基準車体Ａおよび新規車体Ｂが示されている。図４においては、前扉に対応する基準車体Ａの車室前方部Ａ１の打点が白色四角で示されており、後扉に対応する基準車体Ａの車室後方部Ａ２の打点が黒色円で示されている。白色四角は一方のロボット１１によりスポット溶接される打点であり、黒色円は他方のロボット１２によりスポット溶接される打点である。従って、これら白色四角および黒色円は、基準車体Ａの打点配分情報３５に相当する。
【００３１】
さらに、図４における矢印Ｓ１、Ｓ２は、それぞれ、車室前方部Ａ１における打点順序および車室後方部Ａ２における打点順序を示している。言い換えれば、矢印Ｓ１、Ｓ２は基準車体Ａの打点順序情報３４に相当する。
【００３２】
そして、そのような場合には、新規車体Ｂの車室前方部Ｂ１の打点におけるスポット溶接をロボット１２が行い、車室後方部Ｂ２の打点におけるスポット溶接をロボット１１が行うように、新規車体Ｂの車室前方部Ｂ１および車室後方部Ｂ２における打点配分情報が決定される。図示しないものの、新規車体Ｂの他の箇所についても同様に打点配分情報が決定される。
【００３３】
さらに、矢印Ｓ１と同方向になるように車室前方部Ｂ１の打点順序情報が決定され（図４における矢印Ｔ１を参照されたい）、矢印Ｓ２と同方向になるように車室後方部Ｂ２の打点順序情報が決定される（図４における矢印Ｔ２を参照されたい）。図示しないものの、新規車体Ｂの他の箇所についても同様に打点順序情報が決定される。
【００３４】
ところで、基準車体Ａの主要寸法と新規車体Ｂの主要寸法とが所定長さ以上異なっている場合には、基準車体Ａの形状を新規車体Ｂの形状にマッチングさせる座標変換行列を求めるのが好ましい。例えば、基準車体Ａの（長さ、幅、高さ）＝（Ｌ、Ｗ、Ｈ）とし、新規車体Ｂの（長さ、幅、高さ）＝（ｌ、ｗ、ｈ）とすると、基準車体Ａにおける或る打点Ｐ（ｉ）の位置（ｘ、ｙ、ｚ）は、以下の式（１）により位置（ｘ’、ｙ’、ｚ’）に変換される。この場合には、基準車体Ａの打点Ｐの位置が新規車体Ｂの打点ｐの位置に近づくこととなる。
【数１】
0005080369.tif 000002
【００３５】
このように基準車体Ａにおける打点を全て座標変換し、座標変換後の位置（ｘ’、ｙ’、ｚ’）のそれぞれと、新規車体Ｂの各打点とを比較して、前述したように新規車体Ｂの打点順序情報および／または打点配分情報を決定してもよい。この場合には、新規車体Ｂのより適切な打点順序情報および／または打点配分情報が求められるのが分かるであろう。
【００３６】
さらに、車体の前部、車室、後部について式（１）に示したのと同様な座標変換行列を作成して、それらを適用してもよい。この場合には、基準車体Ａの打点位置が新規車体Ｂの打点位置にさらに近づき、それにより、新規車体Ｂのより適切な打点順序情報および／または打点配分情報を決定することが可能である。あるいは、基準車体Ａおよび新規車体Ｂのそれぞれの画像からパターンマッチングアルゴリズムを使用して、座標変換行列を作成するようにしてもよい。これにより、新規車体Ｂの打点順序情報および／または打点配分情報はさらに適切になる。
【００３７】
次いで、図３のステップ１０６において、打点における溶接ガン１７、１８の打点姿勢が調節手段２４によって調節される。具体的には、新規車体Ｂの三次元モデル４４を新規車体用記憶部４２から読込む。次いで、或る打点ｐ近傍において該打点を含む所定面積の面を三次元モデルから抽出する。そして、その面に対して垂直方向に、溶接ガン１７（または溶接ガン１８）による加圧方向が一致するように打点姿勢が調節される。このような調節によって、その打点においては、より良好なスポット溶接を行うことが可能となる。
【００３８】
その後、ステップ１０７においては、ステップ１０６で得られた面に対して垂直な加圧方向を維持しつつ、調節手段２４は、新規車体Ｂの打点ｐの進行方向が該打点ｐ近傍に位置する基準車体Ａの打点Ｐにおける打点姿勢に一致するように調節する。
【００３９】
図５はプログラミング装置の動作をさらに詳細に示すフローチャートであり、図６は、新規車体の一部分を示す略図である。図６においては、新規車体Ｂの一部分が曲面として示されており、その上に新規車体Ｂの或る打点ｐが位置しているものとする。なお、新規車体Ｂの打点ｐの進行方向ベクトルをＸ２、進行方向ベクトルＸ２に対して垂直な加圧方向をＺ２とする。さらに、打点ｐの進行方向ベクトルＸ２および加圧方向Ｚ２が張る面をＣとする。
【００４０】
また、図６においては、新規車体Ｂの打点ｐに対応する基準車体Ａの打点Ｐが打点ｐの近傍に示されている。同様に、図６においては、基準車体Ａの打点Ｐの進行方向ベクトルをＸ１、進行方向ベクトルＸ１に対して垂直な加圧方向をＺ１とする。なお、進行方向ベクトルＸ１は、打点順序情報から分かる。
【００４１】
以下、図５および図６を参照して、図３のステップ１０３について説明する。はじめに、図５のステップ１０７ａにおいて、基準車体Ａの或る打点Ｐにおける進行方向ベクトルＸ１を十分な距離だけ延ばして、その先端を点Ｑとする。次いで、新規車体Ｂの打点ｐにおける姿勢を打点ｐ回りに回転させて、点Ｑが面Ｃ上に位置するようにする（ステップ１０７ｂ）。
【００４２】
これにより、ステップ１０６で得られた面に対して垂直な加圧方向を維持しつつ、調節手段２４は、新規車体Ｂの打点ｐの進行方向が、該打点ｐ近傍に位置する基準車体Ａの打点Ｐにおける打点姿勢に一致するように調節する。従って、溶接ガン１７、１８の姿勢は最適に維持される。その結果、スポット溶接システム１０を実際に稼働させたときに、溶接ガン１７、１８が新規車体Ｂまたは他のロボットに干渉するのを防止でき、また良好なスポット溶接を行うことも可能である。
【００４３】
図３から分かるように、ステップ１０７の処理が終了すると、ステップ１０４に戻って、次の打点ｐ（ｉ＋１）について同様な処理が行われ、基準車体Ａの打点順序情報および打点配分情報が決定される。そして、新規車体Ｂの全ての打点ｐ（１）〜ｐ（ｎ）についての情報が確定すると、ステップ１０８に進む。ステップ１０８においては、新規車体用記憶部４２に記憶された新規車体Ｂの打点位置情報４３、ステップ１０５にて決定された新規車体Ｂの打点順序情報および打点配分情報、ならびにステップ１０６、１０７にて調節された新規車体Ｂの各打点における打点姿勢に基づいて、プログラム作成手段２３がロボット１１（およびロボット１２）のロボットプログラムをオフラインで作成する。その後、作成されたプログラムに基づいて、ロボット１１、１２が動作され、新規車体Ｂに対してスポット溶接を実行する。
【００４４】
前述したように基準車体Ａの打点順序情報３４および打点配分情報３５は熟練した作業者によって予め定められた最適な情報である。そして、本発明のスポット溶接システム１０において作成された新規車体Ｂの打点順序情報および打点配分情報は、基準車体Ａの打点順序情報３４および打点配分情報３５を反映している。従って、新規車体Ｂのそのような打点順序情報および打点配分情報を含むプログラムによりロボット１１、１２を動作させて新規車体Ｂに対してスポット溶接した場合であっても、ロボット１１、１２は互いに干渉することはなく、また新規車体Ｂに干渉することもない。それゆえ、作業者の熟練度に依存することなしに、最適な情報を含むロボット１１、１２のプログラムを作成することが可能となる。さらに、作業者が試行錯誤する必要もないので、ロボット１１、１２のプログラムの作成は短時間で完了することが分かるであろう。
【図面の簡単な説明】
【００４５】
【図１】本発明の第一の実施形態に基づくオフラインプログラミング装置を含むスポット溶接システムの略図である。
【図２】本発明の第二の実施形態に基づくオフラインプログラミング装置を含むスポット溶接システムの略図である。
【図３】本発明に基づくプログラミング装置の動作を示すフローチャートである。
【図４】基準車体および新規車体を示す斜視図である。
【図５】プログラミング装置の動作をさらに詳細に示すフローチャートである。
【図６】新規車体の一部分を示す略図である。
【符号の説明】
【００４６】
１０    スポット溶接システム
１１、１２    ロボット
１５、１６    制御装置
１７、１８    溶接ガン
２０    プログラミング装置
２１    ＣＰＵ
２２    決定手段
２３    プログラム作成手段
２４    調節手段
２５    表示部
３１    記憶部
３２    基準車体用記憶部
３３    打点位置情報
３４    打点順序情報
３５    打点配分情報
４２    新規車体用記憶部
４３    打点位置情報
４４    三次元モデル
Ａ    基準車体（第一車体）
Ｂ    新規車体（第二車体）
【図１】
0005080369.tif 000003
【図２】
0005080369.tif 000004
【図３】
0005080369.tif 000005
【図４】
0005080369.tif 000006
【図５】
0005080369.tif 000007
【図６】
0005080369.tif 000008