(57)【要約】【課題】ロボットコントローラとレーザ発振器との間にＩ／Ｏインタフェースが介在することによる信号の遅れを補償して、ロボットハンドがレーザ照射位置の始端または終端に来たとき、これに合致したタイミングでレーザ発振器を起動または停止させるレーザ溶接方法および装置を提供する。【解決手段】移動中のロボットハンド１の現在位置情報に基づいて、ロボットハンド１が予めプログラミングされたレーザ照射位置の始端または終端に到達する時間軸上の溶接開始位置Ｐ１または溶接終了位置Ｐ２を予測する手段１３と、前記溶接開始位置Ｐ１または溶接終了位置Ｐ２の直前に発生される計算上の最初のＩ／Ｏリフレッシュタイミングから前記予測された溶接開始位置Ｐ１または溶接終了位置Ｐ２までの時間軸上のズレ量をタイミング値ＴｓまたはＴｅとして算出する手段１４と、このタイミング値ＴｓまたはＴｅをＩ／Ｏインタフェースを通してレーザ発振器４に与える手段とを設ける。【選択図】図１
2007237202.tif 000002
【特許請求の範囲】
【請求項１】
レーザ発振器に接続された溶接用の光学ヘッドをロボットハンドに装着し、このロボットハンドを移動させながら、ロボットハンドの予めプログラミングされたレーザ照射位置にてＩ／Ｏインターフェースを通してレーザ発振器を起動し、レーザ光による溶接を行うレーザ溶接方法において、
移動するロボットハンドの現在位置情報に基づいて、ロボットハンドが前記レーザ照射位置の始端に到達する時間軸上の溶接開始位置を予測し、
前記溶接開始位置の直前に発生される計算上の最初のＩ／Ｏリフレッシュタイミングから前記予測された溶接開始位置までの時間軸上のズレ量をタイミング値として算出し、
前記タイミング値を前記レーザ発振器に与えることを特徴とするレーザ溶接方法。
【請求項２】
レーザ発振器が発振起動指令を受けてからレーザ発振器の出力が溶着可能な所定の溶接開始レベルになるまでのレーザ出力遅れ時間を算出し、
算出されたレーザ出力遅れ時間を、前記ズレ量に加味して全体系としてのタイミングのズレを補償することを特徴とする請求項１に記載のレーザ溶接方法。
【請求項３】
移動するロボットハンドの現在位置情報に基づいて、ロボットハンドが前記レーザ照射位置の終端に到達する時間軸上の溶接終了位置を予測し、
現時刻の後に到来する計算上の最初のＩ／Ｏリフレッシュタイミングから前記予測された溶接終了位置までの時間軸上のズレ量をタイミング値として算出し、
前記タイミング値を前記レーザ発振器に与えることを特徴とする請求項１または２に記載のレーザ溶接方法。
【請求項４】
ロボットハンドに装着された光学ヘッドから溶接用のレーザ光を出射させるレーザ発振器と、前記ロボットハンドの位置情報を取り込みつつロボットハンドをレーザ照射位置へ移動制御すると共に、Ｉ／Ｏインターフェースを介して前記レーザ発振器にレーザ起動発振タイミングを与えるロボットコントローラとを有するレーザ溶接装置において、
前記ロボットコントローラが、移動中のロボットハンドの現在位置情報に基づいて、ロボットハンドが予めプログラミングされたレーザ照射位置の始端に到達する時間軸上の溶接開始位置を予測する手段と、
前記溶接開始位置の直前に発生される計算上の最初のＩ／Ｏリフレッシュタイミングから前記予測された溶接開始位置までの時間軸上のズレ量をタイミング値として算出する手段と、
前記タイミング値を前記レーザ発振器に与える手段と、を有することを特徴とするレーザ溶接装置。
【請求項５】
前記時間軸上の溶接開始位置を予測する手段が、現時刻の後に到来する計算上の２回目のＩ／Ｏリフレッシュタイミングまでにロボットハンドが予めプログラミングされたレーザ照射位置の始端に到達する時間軸上の位置を溶接開始位置として予測することを特徴とする請求項４に記載のレーザ溶接装置。
【請求項６】
レーザ発振器が発振起動指令を受けてからレーザ発振器の出力が溶着可能な所定の溶接開始レベルになるまでのレーザ出力遅れ時間を算出する手段と、
算出されたレーザ出力遅れ時間を、前記ズレ量に加味して全体系としてのタイミングのズレを補償する手段とを有することを特徴とする請求項４または５に記載のレーザ溶接装置。
【請求項７】
前記ロボットコントローラが、移動中のロボットハンドの現在位置情報に基づいて、ロボットハンドが予めプログラミングされたレーザ照射位置の終端に到達する時間軸上の溶接終了位置を予測する手段と、
前記溶接終了位置の直前に発生される計算上の最初のＩ／Ｏリフレッシュタイミングから前記予測された溶接終了位置までの時間軸上のズレ量をタイミング値として算出する手段と、
前記タイミング値を前記レーザ発振器に与える手段と、を有することを特徴とする請求項４〜６のいずれかに記載のレーザ溶接装置。
【請求項８】
前記時間軸上の溶接終了位置を予測する手段が、現時刻の後に到来する計算上の２回目のＩ／Ｏリフレッシュタイミングまでにロボットハンドが予めプログラミングされたレーザ照射位置の終端に到達する時間軸上の位置を溶接終了位置として予測することを特徴とする請求項７に記載のレーザ溶接装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットハンドが予めプログラミングされたレーザ照射位置の始端または終端に来たとき、これに合致したタイミングでレーザ発振器を起動または停止させ、レーザ光を用いて溶接するレーザ溶接方法および装置に関する。
【背景技術】
【０００２】
一般に、自動車車体（ボディ）の内板部材と外板部材とを溶接する際には、抵抗スポット溶接ロボットが用いられている。しかし、この抵抗スポット溶接ロボットでは、溶接ガンを構成する溶接チップをボディに接触させて作業を行う。このため、溶接作業の迅速化を図ることに限界がある。
【０００３】
そこで、従来、溶接部位から離れた所からレーザ光を用いて溶接するリモートレーザ溶接方法が提案されている（下記特許文献１参照）。
【０００４】
この従来技術では、ロボットハンドに、溶接用のレーザ光を出射する光学ヘッドを装着し、これを光ファイバにてレーザ発振器に接続すると共に、その光学ヘッドの内部に、レーザ光を溶接部位の形状に沿って走査する光偏向光学系（スキャナ）を内蔵する。そして、ロボットコントローラの制御の下で、ロボットハンドを溶接部位近傍にて通過するように移動させつつ、上記光学ヘッドの光偏向光学系を作動させてレーザ光の出射角度を変位させることにより、レーザ光を走査して、所望の溶接作業を行う。このリモートレーザ溶接方法によれば、線状のシーム溶接ができる他、断続的に存在する複数の溶接部位に対しても、ロボットハンドを移動させながら高速に溶接作業を行うことができる。
【０００５】
しかしながら、上記構成においては、ロボットコントローラとレーザ発振器が別体となっているため、レーザ発振器の起動または停止タイミングを指示するのに、たとえばシリアル通信やＩ／Ｏ処理によるなんらかの通信手段を必要としている。このため、シリアル通信やＩ／Ｏ処理にかかる時間が必要になり、ｍｓ単位で制御が必要なレーザ発振器の起動または停止タイミングにズレが生じることになる。
【０００６】
例を挙げると、シリアル通信により接続した場合は、（１）ロボットコントローラの持つＣＰＵが通信処理を行うのに要する時間、（２）実際に信号が伝送するに要する時間、（３）レーザ発振器が行っているポーリングのロス時間、（４）実際の受信時間、（５）受信データの処理時間など、がかかることになり、結果として数ｍｓ〜１０数ｍｓ程度の遅れとバラツキが生じることになる。勿論、一部の高速なプロトコルを用いれば、この時間を１ｍｓ以内で処理することも可能であるが、市販されている全てのロボットシステムが対応している訳ではなく、汎用の装置として構築することができないことから機器が増え、設備の複雑化や、メンテナンスの困難化を招いてしまう。
【０００７】
そこで、全てのロボットシステムに備えられているＩ／Ｏインタフェースで処理する場合を考えると、次のようになる。すなわち、ロボットコントローラがレーザ発振ポイントにあることを認識し、コントローラ内のＩ／Ｏインタフェースを通してレーザ発振器の起動命令を出力しようとした場合、Ｉ／Ｏインタフェースの状態を一定時間でリフレッシュ（更新）する処理が採られているため、最大でそのＩ／Ｏリフレッシュ間隔分だけ出力タイミングがずれることになる。実際には８ｍｓ〜１０ｍｓ程度のＩ／Ｏリフレッシュ間隔であることが多いため、ロボットの移動速度にもよるが、たとえばＩ／Ｏリフレッシュ間隔を８ｍｓ、ロボットの移動速度を６００ｍｍ／ｓとすると、最大６ｍｍの溶接位置ズレを生じることになり、さらに毎回このズレ量がばらついてしまう。
【０００８】
同様に、レーザ発振器が停止命令により出力を溶着レベル以下に落とすレーザＯＦＦタイミングについても、Ｉ／Ｏリフレッシュの間隔を最大とするズレが生じることになり、望まない溶接ビードを形成することになってしまっている。
【特許文献１】特開２００５−１７７８６２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
本発明は、上述した問題点を解決するためになされたもので、その目的とするところは、ロボットコントローラとレーザ発振器との間にＩ／Ｏインタフェースが介在することによる信号の遅れを補償して、ロボットハンドがレーザ照射位置の始端または終端に来たとき、これに合致したタイミングでレーザ発振器を起動または停止させることにある。
【００１０】
また本発明の他の目的は、レーザ発振器自体の立ち上がりの遅れによるレーザ照射タイミングのずれをなくすことにある。
【課題を解決するための手段】
【００１１】
かかる目的を達成するために、本発明では、レーザ発振器に接続された溶接用の光学ヘッドをロボットハンドに装着し、このロボットハンドを移動させながら、ロボットハンドの予めプログラミングされたレーザ照射位置にてＩ／Ｏインターフェースを通してレーザ発振器を起動し、レーザ光による溶接を行うレーザ溶接方法において、移動するロボットハンドの現在位置情報に基づいて、ロボットハンドが前記レーザ照射位置の始端に到達する時間軸上の溶接開始位置を予測し、前記溶接開始位置の直前に発生される計算上の最初のＩ／Ｏリフレッシュタイミングから前記予測された溶接開始位置までの時間軸上のズレ量をタイミング値として算出し、このタイミング値を前記レーザ発振器に与える。
【００１２】
また本発明では、レーザ発振器が発振起動指令を受けてからレーザ発振器の出力が溶着可能な所定の溶接開始レベルになるまでのレーザ出力遅れ時間を算出し、算出されたレーザ出力遅れ時間を、前記ズレ量に加味して全体系としてのタイミングのズレを補償する。
【００１３】
また本発明では、移動するロボットハンドの現在位置情報に基づいて、ロボットハンドが前記レーザ照射位置の終端に到達する時間軸上の溶接終了位置を予測し、現時刻の後に到来する計算上の最初のＩ／Ｏリフレッシュタイミングから前記予測された溶接終了位置までの時間軸上のズレ量をタイミング値として算出し、前記タイミング値を前記レーザ発振器に与える。
【発明の効果】
【００１４】
本発明では、Ｉ／Ｏインターフェースが介在することによるレーザ光の照射開始タイミングまたは照射終了タイミングのズレが補償され、ロボットハンドの照射位置がシーム溶接部位の始端または終端に来たとき、これに正確に合致したタイミングで、レーザ発振器の起動または停止が行われる。したがって、本発明によれば、実際のレーザ照射位置がシーム溶接部位から外れることなく、ロボットハンドを移動させながら高速にレーザ溶接を行うことができる。
【００１５】
また本発明では、レーザ発振器自体の立ち上がりの遅れをなくして、全体系として正確なレーザ照射タイミングを得ることができる。
【発明を実施するための最良の形態】
【００１６】
以下、図面を参照して、本発明に係る実施形態を説明する。
【００１７】
＜第１の実施形態＞
図１に、本発明の実施形態に係るレーザ溶接装置の概要を、ブロック線図にて示す。このレーザ溶接装置は、ロボットハンド１の先端に装着された光学ヘッド２を備えており、この光学ヘッド２が光ファイバケーブル３にてレーザ発振器４と接続され、光学ヘッド２から溶接用のレーザ光を出射させる構造となっている。なお、光学ヘッド２の内部には必要に応じて光偏向光学系（スキャナ）が設けられる。
【００１８】
ロボットハンド１は６軸のモータなどの周知のモータ５により駆動されるロボットハンドであり、このロボットハンド１に対する制御系としてロボットコントローラ６が設けられている。またレーザ発振器４は、その内部にレーザの起動発振を制御するレーザ出力制御系７を備えており、Ｉ／Ｏユニット８を介して上記ロボットコントローラ６と接続されている。
【００１９】
ロボットコントローラ６は、モータ５に付属されるエンコーダ９からロボットハンド１の現在位置情報を受けつつ、予めプログラミングされたレーザ照射位置へロボットハンド１を移動させるモータ制御部１０を含んでいる。またロボットコントローラ６は、レーザ発振器４のレーザ出力制御系７に対して、レーザ発振器４の起動または停止を指令するレーザ制御部１１を有している。これらに対する制御を規律するため、Ｉ／Ｏユニット８は内部にリフレッシュサイクル信号発生手段１２を有しており、約８ｍｓ毎にリフレッシュタイミングＴを発生する。このリフレッシュタイミングＴにより、ロボットコントローラ６のモータ制御部１０およびＩ／Ｏユニット８の内容が更新され、ロボットハンド１の位置およびレーザ光の照射タイミングが更新される。
【００２０】
上記構成だけの場合、溶接動作は次のようになる。図２において、（ａ）は、ロボットハンド１が予めプログラミングされたレーザ照射位置の始端から終端までを通過する時間軸上の位置、すなわち溶接開始位置Ｐ１から溶接終了位置Ｐ２までを示す。図２（ｂ）はＩ／Ｏリフレッシュサイクル信号のタイミングを示す。このＩ／ＯリフレッシュタイミングＴに同期して、図２（ｃ）に示すようにレーザ発振器４が起動（ＯＮ）しまたは停止（ＯＦＦ）する。溶接開始位置Ｐ１または溶接終了位置Ｐ２は、このＩ／ＯリフレッシュタイミングＴの間隔内のいずれかの時点で生起する。このため、図２（ｃ）に示すように、レーザ発振器４が起動または停止する時点（レーザ起動タイミング、レーザ停止タイミング）が、溶接開始位置Ｐ１または溶接終了位置Ｐ２から時間長さα１またはα２だけずれることになる。
【００２１】
そこで図１に示すように、ロボットコントローラ６のレーザ制御部１１に、溶接開始／終了位置予測手段１３、タイミング値算出手段１４、タイミング値決定手段１５を付加する。これらは、溶接の開始と終了に関して、それぞれ次のように機能する。図３に、これによる出力タイミングの調整原理を示す。
【００２２】
溶接の開始に関しては、まず溶接開始／終了位置予測手段１３が、ロボットハンド１が予めプログラミングされたレーザ照射位置（溶接部位）を読み込み、移動中のロボットハンド１の現在位置情報に基づいて、ロボットハンド１が予めプログラミングされたレーザ照射位置の始端に到達する時間軸上の溶接開始位置Ｐ１（図３（ａ）参照）を予測する。具体的には、図３（ｃ）に示すように、現時刻ｔ０の後に到来する計算上の２回目のＩ／ＯリフレッシュタイミングＴ２までにロボットハンド１が予めプログラミングされたレーザ照射位置の始端に到達する時間軸上の位置を、溶接開始位置Ｐ１として予測する。これらの機能は、ロボットコントローラ６の制御ロジック上に、オブザーバ（論理的制御モデル）により構築し、時々刻々、ロボットハンド１の在るべき位置を計算処理させることで得られる。
【００２３】
次に、タイミング値算出手段１４が、上記溶接開始位置Ｐ１の直前に発生される計算上の最初のＩ／ＯリフレッシュタイミングＴ１（図３（ｂ）参照）から上記の予測された溶接開始位置までの時間軸上のズレ量α１（時間長さ）をレーザ起動タイミング値Ｔｓとして算出する。そして、このレーザ起動タイミング値Ｔｓを、タイミング値決定手段１５およびＩ／Ｏユニット８を通してレーザ発振器４のレーザ出力制御系７に与えることにより、Ｉ／Ｏインターフェースが介在することによるレーザ発振器４の照射開始タイミングのズレを補償する。
【００２４】
他方、溶接の終了に関しては、まず溶接開始／終了位置予測手段１３が、移動中のロボットハンド１の現在位置情報に基づいて、ロボットハンド１が予めプログラミングされたレーザ照射位置の終端に到達する時間軸上の溶接終了位置Ｐ２（図３（ａ）参照）を予測する。具体的には、図３（ｃ）に示すように、現時刻ｔ０の後に到来する計算上の２回目のＩ／ＯリフレッシュタイミングＴ２までにロボットハンド１が予めプログラミングされたレーザ照射位置の終端に到達する時間軸上の位置を、溶接終了位置Ｐ２として予測する。これらの機能は、ロボットコントローラ６の制御ロジック上に構築したオブザーバ（論理的制御モデル）により、時々刻々、ロボットハンド１の在るべき位置を計算処理することで得られる。
【００２５】
次に、タイミング値算出手段１４が、上記溶接終了位置Ｐ２の直前に発生される計算上の最初のＩ／ＯリフレッシュタイミングＴ１（図３（ｂ）参照）から上記の予測された溶接終了位置Ｐ２までの時間軸上のズレ量α２（時間長さ）をレーザ停止タイミング値Ｔｅとして算出する。そして、このレーザ停止タイミング値Ｔｅを、タイミング値決定手段１５およびＩ／Ｏインターフェースを通してレーザ発振器４のレーザ出力制御系７に与えることにより、Ｉ／Ｏインターフェースが介在することによるレーザ発振器４の照射終了タイミングのズレを補償する。
【００２６】
＜第２の実施形態＞
図４に、レーザ発振器４の出力パターンを示す。レーザ発振器４は、通常、励起状態の出力レベルＬ１にあり、時刻ｔ１でレーザ起動指令を受けた後、一旦出力がゼロまで落ちてから、発振器内のパラメータで定まる傾きに従って、出力が上昇して行く。そして、時刻ｔ２で溶着可能な所定の溶接開始レベル（閾値）Ｌ２に達し、その後、さらに上昇して所望出力レベルＬ３となる。
【００２７】
従って、レーザ発振器４が発振起動指令を受けてから、レーザ発振器４の出力が図４中に点線で示した溶接開始出力レベルＬ２に上がるまで、時刻ｔ１〜ｔ２で示すレーザ発振器４側でレーザ出力遅れ時間Δｔが発生することになる。そこで、この第２の実施形態では、このレーザ発振器４のレーザ出力遅れ時間Δｔを、ロボットコントローラ６でレーザ起動タイミング処理ロジックにおり込み、関わる制御機器の遅れを全て制御的に補償する。
【００２８】
具体的には、図１に示すように、レーザ発振器４が発振起動指令を受けてからレーザ発振器４の出力が溶着可能な所定の溶接開始レベルになるまでのレーザ出力遅れ時間Δｔを算出する手段（レーザ出力遅れ時間算出手段１６）を設け、その算出されたレーザ出力遅れ時間Δｔを、上記タイミング値決定手段１５に送り、そこで上記ズレ量に加味することにより、全体系としてのタイミングのズレを補償する。
【００２９】
これを図５において説明すると、まず溶接開始／終了位置予測手段１３が、ロボットハンド１が予めプログラミングされたレーザ照射位置の始端に到達する時間軸上の溶接開始位置Ｐ１（図５（ａ）参照）を予測する。具体的には、図５（ｃ）に示すように、現時刻ｔ０の後に到来する計算上の２回目のＩ／ＯリフレッシュタイミングＴ２までにロボットハンド１が予めプログラミングされたレーザ照射位置の始端に到達する時間軸上の位置を溶接開始位置Ｐ１として予測する。
【００３０】
次に、タイミング値算出手段１４が、上記溶接開始位置Ｐ１の直前に発生される計算上の最初のＩ／ＯリフレッシュタイミングＴ１（図５（ｂ）参照）から上記の予測された溶接開始位置までの時間軸上のズレ量α１をタイミング値Ｔｓとして算出する。そして、タイミング値決定手段１５が、このタイミング値Ｔｓをレーザ発振器４のレーザ出力制御系７に与えることにより、Ｉ／Ｏインターフェースが介在することによるレーザ発振器４の照射開始タイミングのズレを補償する。このときタイミング値決定手段１５は、レーザ出力遅れ時間算出手段１６により算出されたレーザ出力遅れ時間Δｔも受領し、上記タイミング値Ｔｓに加味（減算）することにより、レーザ発振タイミングをΔｔだけ前倒して、調整されたタイミング値Ｔｓ１として出力し、全体系としてのタイミングのズレを補償する。
【００３１】
＜具体例１＞
上記第１の実施形態の具体例１について説明する。図６は、この具体例１のレーザ溶接装置の構成を示す概略図、図７および図８はそのレーザ溶接時の発振起動指令／停止指令のタイミング調整処理を示した図である。
【００３２】
図６に示すように、ロボットコントローラ６の制御ロジック上に、オブザーバ１７（論理的制御モデル）を組み込む。オブザーバ１７は特開平５−１２２９７０号公報（モータ制御装置）にあるように、既存の技術である。
【００３３】
図６において、ロボットコントローラ６のモータ制御部１０はサーボ演算部１８から成る。レーザ制御部１１は、溶接開始／終了位置予測手段１３の構成要素として、フィードフォワード演算部１９が前置された指定タイミングでのロボットハンドの位置推定演算部２０と、その推定されたロボットハンド１の位置が溶接開始位置または溶接終了位置に来るかどうかを判定する判定部２１をと有する。またレーザ制御部１１は、Ｉ／Ｏインターフェースが介在することによる遅れを考慮して、上記溶接開始位置または溶接終了位置の到来に対し、正確に合致したタイミング値を算出するタイミング値算出手段１４を有する。タイミング値決定手段１５は、この具体例１の場合、特には設けられていない。
【００３４】
図７を参照しながら、レーザ溶接時の発振起動指令のタイミング調整処理について説明する。
【００３５】
（１）まず、ロボットコントローラ６の制御ロジック上に構築したオブザーバ１７（論理的制御モデル）により、時々刻々、ロボットハンド１の在るべき位置を計算処理させる。
【００３６】
（２）ロボットコントローラ６内にＩ／Ｏ処理のリフレッシュサイクル信号を取り込み、現時刻から２回後のＩ／Ｏリフレッシュ（例として８ｍｓ毎）までに、プログラミングされた溶接開始位置Ｐ１に到達するかを、制御ロジックに組み込まれた判断ロジックで判断する。
【００３７】
すなわち、図７のフローにおいて、位置推定演算部２０は、まずロボットプログラムを先読みすることにより、レーザ溶接命令の内容からプログラミングされた溶接開始位置Ｐ１を読み取る（ステップＳ１）。次に、位置推定演算部２０は、リフレッシュサイクル信号発生手段１２からＩ／Ｏリフレッシュタイミングを取り込み（ステップＳ２）、２回後のＩ／ＯリフレッシュタイミングＴ２を算出し（ステップＳ３）、このＩ／ＯリフレッシュタイミングＴ２でのロボットハンド１の推定位置を算出する（ステップＳ４）。そして、判定部２１は、このロボットハンド１の推定位置に関し、溶接開始位置Ｐ１を通過するかどうか判定する（ステップＳ２〜Ｓ５）。
【００３８】
溶接開始位置Ｐ１を通過する場合（ステップＳ５でＹＥＳ）、現時刻から２回後のＩ／ＯリフレッシュタイミングＴ２（図３参照）までの間に、溶接開始位置Ｐ１が到来すると予測されたことになる。
【００３９】
（３）上記判定部２１で、ロボットハンド１が溶接開始位置Ｐ１に至ると判断した場合、タイミング値算出手段１４は、現時刻の１回後のＩ／ＯリフレッシュタイミングＴ１からのレーザ起動イミングＴｓを算出する。つまり、溶接開始位置Ｐ１の直前に発生される計算上の最初のＩ／ＯリフレッシュタイミングＴ１から上記予測された溶接開始位置Ｐ１までの時間軸上のズレ量α１（時間長さ）をレーザ起動タイミング値Ｔｓとして算出する（図３参照）。このタイミング値Ｔｓは、Ｉ／Ｏリフレッシュタイミングが８ｍｓ間隔で生起するので、最小で０ｍｓ、最大で８ｍｓの値となる。
【００４０】
図７のフローに従って説明すると、タイミング値算出手段１４は、１回後のＩ／ＯリフレッシュタイミングＴ１を算出し（ステップＳ６）、オブザーバ１７にてこのリフレッシュタイミングＴ１からのレーザ起動タイミングＴｓを算出する（ステップＳ７）。
【００４１】
（４）算出したレーザ起動タイミング値Ｔｓ（時間長さ）を、Ｉ／Ｏ信号に３ビット（または４ビット）でデコードし（ステップＳ８）、そのデコード情報をＩ／Ｏユニット８に出力する（ステップＳ９）。
【００４２】
レーザ発振器４のレーザ出力制御系７は、このデコードされたレーザ起動タイミング値Ｔｓを受信し、このタイミングにてレーザ発振器４を起動して、レーザ溶接を開始させる。所定のレーザ溶接が実施されない場合（ステップＳ１０でＮＯ）、異常処理として、例えば強制停止処理を行う（ステップＳ１１）。レーザ溶接が正常に行われた場合（ステップＳ１０でＹＥＳ）、Ｉ／Ｏユニット８への出力をクリアーして処理を終了する（ステップＳ１２）。
【００４３】
（５）次に、図８を参照しながら、レーザ溶接時の発振停止指令のタイミング（レーザ停止タイミング）の調整処理について説明する。
【００４４】
図８のステップＳ２１において、位置推定演算部２０が、ロボットプログラムを先読みすることにより、レーザ溶接命令の内容からプログラミングされた溶接終了位置Ｐ２を読み取る（ステップＳ２１）。次に、位置推定演算部２０は、リフレッシュサイクル信号発生手段１２からＩ／Ｏリフレッシュタイミングを取り込み（ステップＳ２２）、２回後のＩ／ＯリフレッシュタイミングＴ２を算出し（ステップＳ２３）、このＩ／ＯリフレッシュタイミングＴ２でのロボットハンド１の推定位置を算出する（ステップＳ２４）。そして、判定部２１は、ロボットハンド１が溶接終了位置Ｐ２を通過するかどうか判定する（ステップＳ２２〜Ｓ２５）。
【００４５】
上記判定部２１で、ロボットハンド１が溶接終了位置Ｐ２に到達すると判断された場合（ステップＳ２５でＹＥＳ）、タイミング値算出手段１４は、１回後のＩ／ＯリフレッシュタイミングＴ１を算出し（ステップＳ２６）、オブザーバ１７にてこのリフレッシュタイミングＴ１から上記溶接終了位置までの時間軸上のズレ量（時間長さ）α２をタイミング値（レーザ停止タイミングＴｅ）として算出する（ステップＳ２７）。
【００４６】
算出したレーザ停止タイミングＴｅ（時間長さ）を、Ｉ／Ｏ信号に３ビット（または４ビット）でデコードし（ステップＳ２８）、そのデコード情報をＩ／Ｏユニット８に出力する（ステップＳ２９）。
【００４７】
このデコードされたレーザ停止タイミングＴｅをレーザ発振器４のレーザ出力制御系７が受信し、このタイミングにてレーザ発振器４が停止して、レーザ溶接が終了となる。レーザ溶接が正常に終了しない場合（ステップＳ３０でＮＯ）、異常処理として、例えば強制停止処理を行う（ステップＳ３１）。レーザ溶接が正常に終了した場合（ステップＳ３０でＹＥＳ）、Ｉ／Ｏユニット８への出力をクリアーして処理を終了する（ステップＳ３２）。
【００４８】
上記の如く構成したレーザ溶接装置の長所は、ロボットコントローラ６に制御ロジックを追加するのみで、特にハードウェハとして新たな構成機器を追加せずとも、従来システムの課題であったレーザ起動タイミングのズレを解消できることにある。
【００４９】
＜具体例２＞
上記第２の実施形態の具体例２について説明する。図９は、この具体例２のレーザ溶接装置の構成を示す概略図、図１０はそのレーザ溶接時の発振起動指令のタイミング調整処理を示した図である。
【００５０】
この具体例２のレーザ溶接装置は、レーザ制御部１１、Ｉ／Ｏユニット８の他に、上記レーザ出力遅れ時間算出手段１６としての遅れ補正部２２を、ロボットコントローラ６が有する点で、具体例１のレーザ溶接装置と相違する。この遅れ補正部２２は、ロボットコントローラ６内に予め準備されたパラメータテーブル２３から、レーザ発振器４の設定パラメータであるゼロレベル復帰時間などの溶接機データや、出力上昇時の傾き、出力値といった溶接データを読み込むパラメータテーブル読み込み部２４と、レーザ発振器４が発振起動指令を受けてから出力が一旦ゼロレベルとなるまでのゼロレベル復帰時間を読み込むゼロレベル復帰時間読み込み部２５と、出力が一旦ゼロレベルとなってから溶接（溶着）開始レベルＬ２（図４参照）に到達するまでの時間を算出する溶接開始出力到達時間算出部２６と、これらの時間を積算して時間の補正量を算出する発振器遅れ時間積算部２７とを有する。
【００５１】
次に、この具体例２のレーザ溶接装置の動作について説明する。
【００５２】
（１）まず、レーザ発振器４の設定パラメータであるゼロレベル復帰時間などの溶接機データや、出力上昇時の傾き、出力値といった溶接データを、ロボットプログラムに入力させる。
【００５３】
（２）ロボットコントローラ６のパラメータテーブル読み込み部２４は、再生しているプログラムにレーザ溶接用のコマンド（専用コマンドを作成する）があった場合、パラメータテーブル２３を参照してパラメータを確認する。このパラメータは事前に登録されたパターンを読み出す形で、詳細の設定データを認識しているが、直接、パラメータ値を書き込む方式とすることもできる。すなわち、ロボットコントローラ６に事前にパラメータ登録してもよいし、レーザ溶接用の専用コマンドのパラメータとして、ロボットプログラムに与えてもよい。
【００５４】
（３）ロボットコントローラ６のゼロレベル復帰時間読み込み部２５は、これらのパラメータのうちから、上記ゼロレベル復帰時間（レーザ発振器独自の励起〜ゼロ出力までの処理時間）を読み込む。また溶接開始出力到達時間算出部２６は、出力が一旦ゼロレベルとなってから溶接（溶着）開始レベルＬ２（図４参照）に到達するまでの時間（溶接開始出力到達時間）を算出する。そして、発振器遅れ時間積算部２７は、これらのゼロレベル復帰時間と溶接開始出力到達時間を積算して、レーザ起動指令から溶接（溶着）開始レベルＬ２に達するまでにかかる出力の遅れ時間Δｔ（図４参照）を算出し、これを本レーザ発振器独自の出力特性でのズレに対応する時間的な補正量とする。
【００５５】
（４）この補正量を、レーザ制御部１１におけるＩ／Ｏ処理のズレ補償ロジックのうちのタイミング値算出手段１４に入力する。タイミング値算出手段１４は、これを受けて、補正量だけレーザ発振器４に対する発信起動指令のタイミングを早める。すなわち、レーザ発振器４で遅れる分、前倒しで発信起動指令を出力し、制御系全体でのタイミングのズレを補償する。
【００５６】
図１０に、上記レーザ発振器４自体の遅れに対するタイミング調整処理の手順を示す。
【００５７】
図１０のフローにおいて、ロボットコントローラ６は、まずロボットプログラムを先読みすることにより、レーザ溶接命令の内容からプログラミングされた溶接開始位置Ｐ１を読み取ると共に、レーザ溶接専用のコマンドからパラメータを読み取る（ステップＳ４１）。次に、パラメータテーブル読み込み部２４が、パラメータテーブル２３の内容を読み込む（ステップＳ４２）。
【００５８】
レーザ溶接専用のコマンドは、従来のプログラムに追加されるものであり、例えば、「［溶接機データ］［溶接データ］［ワークデータ］［Ｉ／Ｏでコード情報］」から成るものとし、［］内には、設定されたパラメータテーブル２３の番号値を入力する。ここでワークデータとＩ／Ｏデコード情報は機種固定で、溶接条件として別途設定する。
【００５９】
パラメータテーブル２３としては、例えば以下のようなパラメータテーブルをロボットコントローラ６内に準備する。（ａ）溶接機データとして、レーザ発振器メーカ、発振器種類（ＣＯ2レーザなど）、機器の最高出力、励起出力値、ゼロレベル復帰時間。（ｂ）溶接データとして、出力値、傾き、溶接（溶着）開始出力、溶接パターン（S字、丸、直線、半径、長さなど）、溶接速度。（ｃ）ワークデータとして、材質、板圧、隙間、許容溶接最大速度。（ｄ）Ｉ／Ｏでコード情報として、Ｉ／Ｏアドレス情報、占有デコードビット数（３〜４ビット）。
【００６０】
なお、ここでは、パラメータを設定テーブルから読み出す形態としているが、パラメータを直接レーザ溶接専用コマンドに記述させることもできる。この場合は、例えば「［ゼロレベル復帰時間］［出力］［傾き］［溶接（溶着）開始出力］［溶接パターン］［溶接速度］」とする。この場合も［］内には、設定されたパラメータテーブル２３の番号値を入力する。
【００６１】
次に、遅れ補正部２２が、上述した発振器の遅れ時間（ゼロレベル復帰時間＋溶接開始出力到達時間）Δｔ（図５参照）を算出する（ステップＳ４３）。
【００６２】
次に、位置推定演算部２０は、リフレッシュサイクル信号発生手段１２からＩ／Ｏリフレッシュタイミングを取り込み（ステップＳ４４）、２回後のＩ／ＯリフレッシュタイミングＴ２を算出し（ステップＳ４５）、このＩ／ＯリフレッシュタイミングＴ２でのロボットハンド１の推定位置を算出する（ステップＳ４６）。そして、判定部２１は、このロボットハンド１の推定位置に関し、溶接開始位置Ｐ１を通過するかどうか判定する（ステップＳ４４〜Ｓ４７）。
【００６３】
ロボットハンド１が溶接開始位置Ｐ１を通過する場合（ステップＳ４７でＹＥＳ）、タイミング値算出手段１４は、１回後のＩ／ＯリフレッシュタイミングＴ１を算出し（ステップＳ４８）、オブザーバ１７にてこのリフレッシュタイミングＴ１からのズレ量α１（時間長さ）をレーザ起動タイミングＴｓとして算出する（ステップＳ４９）。
【００６４】
次に、上記ズレ量α１（時間長さ）に上記の遅れ時間Δｔ（ゼロレベル復帰時間＋溶接開始出力到達時間）を加味（減算）し（ステップＳ５０）、全体系としてのタイミング値ｔｓ１（図５（ｃ）参照）を算出する。
【００６５】
算出したタイミング値Ｔｓ１（時間長さ）を、Ｉ／Ｏ信号に３ビット（または４ビット）でデコードし（ステップＳ５１）、そのデコード情報をＩ／Ｏユニット８に出力する（ステップＳ５２）。
【００６６】
通常は、このデコードされたタイミング値Ｔｓをレーザ発振器４のレーザ出力制御系７が受信し、このタイミングにてレーザ発振器４が起動して、レーザ溶接が開始される。所定のレーザ溶接が実施されない場合（ステップＳ５３でＮＯ）、異常処理として、例えば停止処理を行う（ステップＳ５４）。レーザ溶接が正常に行われた場合（ステップＳ５３でＹＥＳ）、Ｉ／Ｏユニット８への出力をクリアーして処理を終了する（ステップＳ５５）。
【００６７】
以上述べたように、本発明では、全てのロボットシステムに備えられているＩ／Ｏシステムに着目し、これを通過することによるレーザ発振起動指令および停止指令のタイミング遅れをなくす。このため、ロボットコントローラ６とレーザ発振器４を一体化したかのような処理能力が実現される。また、発振器自体の出力の立ち上がり遅れについても、これを補償し、レーザ溶接装置の制御系全体としてのタイミングズレをなくすことができる。
【００６８】
上記実施形態においては、ロボットハンド１に光学ヘッド２を装着した形態を前提として説明した。この光学ヘッド２は位置固定のものでもよいが、より高速なレーザ溶接を可能にするため、光学ヘッド２内に、レーザ光を溶接部位の形状に沿って走査する光偏向光学系（スキャナ）を内蔵させ、目的の溶接形状をスキャナによりトレースし、溶接を実行する形態とすることもできる。その理由として、本発明では、ロボットハンドが移動中に、レーザ発振器の起動または停止のタイミングを計算処理して結論を得ていれば足り、結果としてレーザ光の照射がレーザ照射位置にて遅れなく始まれば良いからである。
【図面の簡単な説明】
【００６９】
【図１】本発明のレーザ溶接装置の構成を示すブロック線図である。
【図２】従来のレーザ溶接装置において生じるレーザ起動タイミングのズレの説明に供する図である。
【図３】本発明の第１の実施形態に係るレーザ溶接装置において、レーザ起動タイミングとレーザ停止タイミングのそれぞれのズレを補償する原理説明に供する図である。
【図４】本発明の第２の実施形態において、前提とするレーザ発振器自体の出力特性を示す図である。
【図５】本発明の第２の実施形態において、レーザ発振器自体の出力遅れを補償する原理の説明に供する図である。
【図６】本発明の第１の実施形態に係るレーザ溶接装置の具体例を示すブロック図である。
【図７】図６のレーザ溶接装置における発振器起動指令のタイミング調整処理を示すフロー図である。
【図８】図６のレーザ溶接装置における発振器停止指令のタイミング調整処理を示すフロー図である。
【図９】本発明の第２の実施形態に係るレーザ溶接装置の具体例を示すブロック図である。
【図１０】図９のレーザ溶接装置における発振器自体の出力遅れを補償するタイミング調整処理を示すフロー図である。
【符号の説明】
【００７０】
１    ロボットハンド、
２    光学ヘッド、
３    光ファイバケーブル、
４    レーザ発振器、
５    モータ、
６    ロボットコントローラ、
７    レーザ出力制御系、
８    Ｉ／Ｏユニット、
９    エンコーダ、
１０    モータ制御部、
１１    レーザ制御部、
１２    リフレッシュサイクル信号発生手段、
１３    溶接開始／終了位置予測手段、
１４    タイミング値算出手段、
１５    タイミング値決定手段、
１６    レーザ出力遅れ時間算出手段、
１７    オブザーバ、
１８    サーボ演算部、
１９    フィードフォワード演算部、
２０    位置推定演算部、
２１    判定部、
２２    補正部、
２３    パラメータテーブル、
２４    パラメータテーブル読み込み部、
２５    ゼロレベル復帰時間読み込み部、
２６    溶接開始出力到達時間算出部、
２７    発振器遅れ時間積算部。
【図１】
2007237202.tif 000003
【図２】
2007237202.tif 000004
【図３】
2007237202.tif 000005
【図４】
2007237202.tif 000006
【図５】
2007237202.tif 000007
【図６】
2007237202.tif 000008
【図７】
2007237202.tif 000009
【図８】
2007237202.tif 000010
【図９】
2007237202.tif 000011
【図１０】
2007237202.tif 000012