(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-02
(45)【発行日】2024-12-10
(54)【発明の名称】制御装置、溶接システム及びプログラム
(51)【国際特許分類】
B23K 9/073 20060101AFI20241203BHJP
B23K 9/067 20060101ALI20241203BHJP
B23K 9/127 20060101ALN20241203BHJP
【FI】
B23K9/073
B23K9/067
B23K9/127 509E
(21)【出願番号】P 2023538203
(86)(22)【出願日】2021-07-30
(86)【国際出願番号】 JP2021028486
(87)【国際公開番号】W WO2023007746
(87)【国際公開日】2023-02-02
【審査請求日】2024-02-06
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】100106002
【氏名又は名称】正林 真之
(74)【代理人】
【識別番号】100165157
【氏名又は名称】芝 哲央
(74)【代理人】
【識別番号】100160794
【氏名又は名称】星野 寛明
(72)【発明者】
【氏名】吉田 茂夫
(72)【発明者】
【氏名】柏木 彩志
【審査官】山下 浩平
(56)【参考文献】
【文献】特開2012-206167(JP,A)
【文献】特開2005-279687(JP,A)
【文献】特開2012-066288(JP,A)
【文献】中国特許出願公開第106695071(CN,A)
(58)【調査した分野】(Int.Cl.,DB名)
B23K 9/00 - 10/02
(57)【特許請求の範囲】
【請求項1】
アーク溶接機に対する溶接の開始を指示する第1の情報を出力し、前記アーク溶接機によるアークの発生を示す第2の情報の入力を受ける入出力部と、
前記第1の情報の出力から、前記第2の情報の入力までの時間を計測する計測部と、
複数回計測された前記時間のうち
、第1の閾値以下である前記時間の数又は割合が第2の閾値以上である場合
、所定の処理を行う
処理部と、
を備える制御装置。
【請求項2】
アーク溶接機に対する溶接の開始を指示する第1の情報を出力し、前記アーク溶接機によるアークの発生を示す第2の情報の入力を受ける入出力部と、
前記第1の情報の出力から、前記第2の情報の入力までの時間を計測する計測部と、
前記
時間の平均値、中央値、最小値又は最大値
が第1の閾値以下である
場合、所定の処理を行う処理部と、
を備える制御装置。
【請求項3】
アーク溶接機に対する溶接の開始を指示する第1の情報を出力し、前記アーク溶接機によるアークの発生を示す第2の情報の入力を受ける入出力部と、
前記第1の情報の出力から、前記第2の情報の入力までの時間を計測する計測部と、
前記時間又は前記時間の統計量が第1の閾値以下である場合、所定の処理を行う処理部と、を備え
前記処理部は、前記所定の処理として、前記溶接の開始位置を決定するプログラムを修正することを示す報知を行う
、制御装置。
【請求項4】
アーク溶接機に対する溶接の開始を指示する第1の情報を出力し、前記アーク溶接機によるアークの発生を示す第2の情報の入力を受ける入出力部と、
前記第1の情報の出力から、前記第2の情報の入力までの時間を計測する計測部と、
前記時間又は前記時間の統計量が第1の閾値以下である場合、所定の処理を行う処理部と、を備え
前記処理部は、前記所定の処理として、前記溶接の開始位置を決定するプログラムを変更して、前記開始位置を溶接対象物から遠ざける
、制御装置。
【請求項5】
制御装置及びアーク溶接機を含み、
前記制御装置は、
アーク溶接機に対する溶接の開始を指示する第1の情報を出力し、前記アーク溶接機によるアークの発生を示す第2の情報の入力を受ける入出力部と、
前記第1の情報の出力から、前記第2の情報の入力までの時間を計測する計測部と、
複数回計測された前記時間
のうち、第1の閾値以下である
前記時間の数又は割合が第2の閾値以上である場合、所定の処理を行う処理部と、を備え、
前記アーク溶接機は、
前記第1の情報の入力を受けてアークを発生させる発生部と、
前記発生部によってアークが発生された場合に前記第2の情報を出力する出力部と、を備える、溶接システム。
【請求項6】
制御装置及びアーク溶接機を含み、
前記制御装置は、
アーク溶接機に対する溶接の開始を指示する第1の情報を出力し、前記アーク溶接機によるアークの発生を示す第2の情報の入力を受ける入出力部と、
前記第1の情報の出力から、前記第2の情報の入力までの時間を計測する計測部と、
前記時間の
平均値、中央値、最小値又は最大値が第1の閾値以下である場合、所定の処理を行う処理部と、を備え、
前記アーク溶接機は、
前記第1の情報の入力を受けてアークを発生させる発生部と、
前記発生部によってアークが発生された場合に前記第2の情報を出力する出力部と、を備える、溶接システム。
【請求項7】
制御装置及びアーク溶接機を含み、
前記制御装置は、
アーク溶接機に対する溶接の開始を指示する第1の情報を出力し、前記アーク溶接機によるアークの発生を示す第2の情報の入力を受ける入出力部と、
前記第1の情報の出力から、前記第2の情報の入力までの時間を計測する計測部と、
前記時間又は前記時間の統計量が第1の閾値以下である場合、所定の処理を行う処理部と、を備え、
前記処理部は、前記所定の処理として、前記溶接の開始位置を決定するプログラムを修正することを示す報知を行い、
前記アーク溶接機は、
前記第1の情報の入力を受けてアークを発生させる発生部と、
前記発生部によってアークが発生された場合に前記第2の情報を出力する出力部と、を備える、溶接システム。
【請求項8】
制御装置及びアーク溶接機を含み、
前記制御装置は、
アーク溶接機に対する溶接の開始を指示する第1の情報を出力し、前記アーク溶接機によるアークの発生を示す第2の情報の入力を受ける入出力部と、
前記第1の情報の出力から、前記第2の情報の入力までの時間を計測する計測部と、
前記時間又は前記時間の統計量が第1の閾値以下である場合、所定の処理を行う処理部と、を備え、
前記処理部は、前記所定の処理として、前記溶接の開始位置を決定するプログラムを変更して、前記開始位置を溶接対象物から遠ざけ、
前記アーク溶接機は、
前記第1の情報の入力を受けてアークを発生させる発生部と、
前記発生部によってアークが発生された場合に前記第2の情報を出力する出力部と、を備える、溶接システム。
【請求項9】
入出力部を備える制御装置が備えるプロセッサーを、
アーク溶接機に対する溶接の開始を指示する第1の情報を出力し、前記アーク溶接機によるアークの発生を示す第2の情報の入力を受けるように入出力部を制御する入出力制御部と、
前記第1の情報の出力から、前記第2の情報の入力までの時間を計測する計測部と、
複数回計測された前記時間
のうち、第1の閾値以下である
前記時間の数又は割合が第2の閾値以上である場合、所定の処理を行う処理部と、して機能させるプログラム。
【請求項10】
入出力部を備える制御装置が備えるプロセッサーを、
アーク溶接機に対する溶接の開始を指示する第1の情報を出力し、前記アーク溶接機によるアークの発生を示す第2の情報の入力を受けるように入出力部を制御する入出力制御部と、
前記第1の情報の出力から、前記第2の情報の入力までの時間を計測する計測部と、
前記時間の
平均値、中央値、最小値又は最大値が第1の閾値以下である場合、所定の処理を行う処理部と、して機能させるプログラム。
【請求項11】
入出力部を備える制御装置が備えるプロセッサーを、
アーク溶接機に対する溶接の開始を指示する第1の情報を出力し、前記アーク溶接機によるアークの発生を示す第2の情報の入力を受けるように入出力部を制御する入出力制御部と、
前記第1の情報の出力から、前記第2の情報の入力までの時間を計測する計測部と、
前記時間又は前記時間の統計量が第1の閾値以下である場合、所定の処理を行う処理部と、して機能させ
、
前記処理部は、前記所定の処理として、前記溶接の開始位置を決定するプログラムを修正することを示す報知を行うプログラム。
【請求項12】
入出力部を備える制御装置が備えるプロセッサーを、
アーク溶接機に対する溶接の開始を指示する第1の情報を出力し、前記アーク溶接機によるアークの発生を示す第2の情報の入力を受けるように入出力部を制御する入出力制御部と、
前記第1の情報の出力から、前記第2の情報の入力までの時間を計測する計測部と、
前記時間又は前記時間の統計量が第1の閾値以下である場合、所定の処理を行う処理部と、して機能させ
、
前記処理部は、前記所定の処理として、前記溶接の開始位置を決定するプログラムを変更して、前記開始位置を溶接対象物から遠ざけるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、制御装置、溶接システム及びプログラムに関する。
【背景技術】
【0002】
アーク溶接機は、ワイヤーがワークに接触した状態で溶接起動を開始(以下、「ワイヤーがワークに接触した状態での溶接起動の開始」を「タッチスタート」という。)すると、スタート不良やチップ溶着が起こりやすく、溶接品質を低下させる要因として知られている。この回避策として、タッチスタートと判定した場合、その溶接箇所の前の溶接終了時に、ワイヤーを逆走させてタッチスタートを回避する方法が知られている(特許文献1)。しかしながら、この手法では、所望のチップ-ワーク間距離が得られない場合でも、そのまま溶接を続けることになり、溶接品質の低下を回避できているとはいえない。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
従来よりも溶接品質を向上させることができる制御装置が望まれている。
【課題を解決するための手段】
【0005】
本開示の制御装置は、入出力部、計測部及び処理部を備える。入出力部は、アーク溶接機に対する溶接の開始を指示する第1の情報を出力し、前記アーク溶接機によるアークの発生を示す第2の情報の入力を受ける。計測部は、前記第1の情報の出力から、前記第2の情報の入力までの時間を計測する。処理部は、複数回計測された前記時間のうち、第1の閾値以下である前記時間の数又は割合が第2の閾値以上である場合、所定の処理を行う。
【発明の効果】
【0006】
本開示の制御装置は、従来よりも溶接品質を向上させることができる。
【図面の簡単な説明】
【0007】
【
図1】実施形態に係る溶接システム及び当該溶接システムに含まれる構成要素の要部構成の一例を示すブロック図。
【
図2】
図1中のロボット制御装置のプロセッサーによる処理の一例を示すフローチャート。
【発明を実施するための形態】
【0008】
以下、実施形態に係る溶接システムについて図面を用いて説明する。なお、以下の実施形態の説明に用いる各図面は、各部の縮尺を適宜変更している場合がある。また、以下の実施形態の説明に用いる各図面は、説明のため、構成を省略して示している場合がある。また、各図面及び本明細書中において、同一の符号は同様の要素を示す。
図1は、実施形態に係る溶接システム1及び溶接システム1に含まれる構成要素の要部構成の一例を示すブロック図である。溶接システム1は、ロボットアームを用いてアーク溶接するシステムである。溶接システム1は、一例として、ロボット制御装置100、溶接ロボット200、アーク溶接機300及び教示装置400を含む。
【0009】
ロボット制御装置100は、溶接ロボット200を制御する装置である。ロボット制御装置100は、一例として、プロセッサー110、ROM(read-only memory)120、RAM(random-access memory)130、補助記憶装置140、通信インターフェース150、制御インターフェース160及び溶接インターフェース170を含む。そして、バス180などが、これら各部を接続する。
【0010】
プロセッサー110は、ロボット制御装置100の動作に必要な演算及び制御などの処理を行うコンピューターの中枢部分であり、各種演算及び処理などを行う。プロセッサー110は、例えば、CPU(central processing unit)、MPU(micro processing unit)、SoC(system on a chip)、DSP(digital signal processor)、GPU(graphics processing unit)、ASIC(application specific integrated circuit)、PLD(programmable logic device)又はFPGA(field-programmable gate array)などである。あるいは、プロセッサー110は、これらのうちの複数を組み合わせたものである。また、プロセッサー110は、これらにハードウェアアクセラレーターなどを組み合わせたものあってもよい。プロセッサー110は、ROM120又は補助記憶装置140などに記憶されたファームウェア、システムソフトウェア及びアプリケーションソフトウェアなどのプログラムに基づいて、ロボット制御装置100の各種の機能を実現するべく各部を制御する。また、プロセッサー110は、当該プログラムに基づいて後述する処理を実行する。なお、当該プログラムの一部又は全部は、プロセッサー110の回路内に組み込まれていてもよい。
【0011】
ROM120及びRAM130は、プロセッサー110を中枢としたコンピューターの主記憶装置である。
ROM120は、専らデータの読み出しに用いられる不揮発性メモリである。ROM120は、上記のプログラムのうち、例えばファームウェアなどを記憶する。また、ROM120は、プロセッサー110が各種の処理を行う上で使用するデータなども記憶する。
RAM130は、データの読み書きに用いられるメモリである。RAM130は、プロセッサー110が各種の処理を行う上で一時的に使用するデータを記憶するワークエリアなどとして利用される。RAM130は、典型的には揮発性メモリである。
【0012】
補助記憶装置140は、プロセッサー110を中枢としたコンピューターの補助記憶装置である。補助記憶装置140は、例えばEEPROM(electric erasable programmable read-only memory)、HDD(hard disk drive)又はフラッシュメモリなどである。補助記憶装置140は、上記のプログラムのうち、例えば、システムソフトウェア及びアプリケーションソフトウェアなどを記憶する。また、補助記憶装置140は、プロセッサー110が各種の処理を行う上で使用するデータ、プロセッサー110での処理によって生成されたデータ及び各種の設定値などを記憶する。
【0013】
また、補助記憶装置140は、溶接ロボット200を動作させるためのプログラム(以下「ロボットプログラム」という。)を記憶する。ロボットプログラムは、アーク溶接の開始位置及び駆動部210の動作などを決定するものである。
【0014】
また、補助記憶装置140は、ロボット制御装置100の動作に関する設定(以下「動作設定」という。)を記憶する。動作設定は、例えば、報知処理を実行するか否かを示す設定、修正処理を実行するか否かを示す設定、各閾値の値及び距離D1の値を示す設定を含む。報知処理、修正処理、各閾値及び距離D1については後述する。
【0015】
通信インターフェース150は、ロボット制御装置100が教示装置400及びその他の装置などと通信するためのインターフェースである。当該通信は、有線であっても無線であってもよい。
【0016】
制御インターフェース160は、ロボット制御装置100が溶接ロボット200と通信するためのインターフェースである。当該通信は、有線であっても無線であってもよい。ロボット制御装置100は、制御インターフェース160を介して溶接ロボット200を制御する。
【0017】
溶接インターフェース170は、ロボット制御装置100がアーク溶接機300と通信するためのインターフェースである。当該通信は、有線であっても無線であってもよい。ロボット制御装置100は、溶接インターフェース170を介してアーク溶接機300を制御する。
【0018】
バス180は、コントロールバス、アドレスバス及びデータバスなどを含み、ロボット制御装置100の各部で授受される信号を伝送する。
【0019】
溶接ロボット200は、溶接対象物OBに対してアーク溶接を行うロボットなどの装置である。溶接ロボット200は、例えば、ロボットアームなどを用いて、溶接トーチ230及び溶接対象物OBの少なくともいずれかを移動させることで、溶接トーチ230と溶接対象物OBの相対位置を変化させる。これにより、溶接ロボット200は、溶接対象物OBの所望の位置に対する溶接を行う。溶接ロボット200は、一例として、駆動部210、ワイヤー送給機220及び溶接トーチ230を含む。なお、溶接ロボット200は、アーク溶接機300の機能の一部又は全部を備えていても良い。
【0020】
駆動部210は、例えば、サーボモーターなどのモーターなどを動力として駆動する部分である。駆動部210は例えばロボットアームなどを含む。
【0021】
ワイヤー送給機220は、ワイヤー供給源から溶接ワイヤーを溶接トーチ230へ送給する。また、ワイヤー送給機220は、アシストガス供給源から溶接トーチ230へのアシストガスの供給路に配置される電磁弁の開閉制御を行う。
【0022】
溶接トーチ230は、アーク溶接を行うために設けられる先端部の器具である。溶接トーチ230は、ワイヤー送給機220によって筒内に溶接ワイヤーが送給される。溶接トーチ230は、アーク溶接機300から供給される電力を溶接ワイヤーに供給する。また、溶接トーチ230は、例えば、シールドガスを噴出する機構を備える。
【0023】
アーク溶接機300は、アーク溶接に要する電力を溶接トーチ230などに供給する電源としての機能を有する。また、アーク溶接機300は、ワークへの通電を検知する信号を受け取り、それを他の装置に通知するなどの機能を備える。なお、アーク溶接機300は、溶接ロボット200の機能の一部を備えていても良い。
【0024】
教示装置400は、ロボットプログラムを作成するための装置である。ロボットプログラムの作成は、オンラインティーチング、オフラインティーチング、ダイレクトティーチング又はその他のプログラム作成方法のいずれであってもよい。教示装置400は、例えば、オンラインティーチングを行うことができるティーチングペンダントである。教示装置400は、例えば、オフラインティーチング用のソフトウェアを実行するPC(personal computer)などの装置などである。なお、ロボット制御装置100が教示装置400の機能の一部又は全部を備えていてもよい。また、溶接ロボット200が教示装置400の機能の一部又は全部を備えていてもよい。
【0025】
教示装置400は、一例として、プロセッサー410、ROM420、RAM430、補助記憶装置440、通信インターフェース450、入力デバイス460及び表示デバイス470を含む。そして、バス480などが、これら各部を接続する。
【0026】
プロセッサー410は、教示装置400の動作に必要な演算及び制御などの処理を行うコンピューターの中枢部分であり、各種演算及び処理などを行う。プロセッサー410は、例えば、CPU、MPU、SoC、DSP、GPU、ASIC、PLD又はFPGAなどである。あるいは、プロセッサー410は、これらのうちの複数を組み合わせたものである。また、プロセッサー410は、これらにハードウェアアクセラレーターなどを組み合わせたものあってもよい。プロセッサー410は、ROM420又は補助記憶装置440などに記憶されたファームウェア、システムソフトウェア及びアプリケーションソフトウェアなどのプログラムに基づいて、教示装置400の各種の機能を実現するべく各部を制御する。また、プロセッサー410は、当該プログラムに基づいて後述する処理を実行する。なお、当該プログラムの一部又は全部は、プロセッサー410の回路内に組み込まれていてもよい。
【0027】
ROM420及びRAM430は、プロセッサー410を中枢としたコンピューターの主記憶装置である。
ROM420は、専らデータの読み出しに用いられる不揮発性メモリである。ROM420は、上記のプログラムのうち、例えばファームウェアなどを記憶する。また、ROM420は、プロセッサー410が各種の処理を行う上で使用するデータなども記憶する。
RAM430は、データの読み書きに用いられるメモリである。RAM430は、プロセッサー410が各種の処理を行う上で一時的に使用するデータを記憶するワークエリアなどとして利用される。RAM430は、典型的には揮発性メモリである。
【0028】
補助記憶装置440は、プロセッサー410を中枢としたコンピューターの補助記憶装置である。補助記憶装置440は、例えばEEPROM、HDD又はフラッシュメモリなどである。補助記憶装置440は、上記のプログラムのうち、例えば、システムソフトウェア及びアプリケーションソフトウェアなどを記憶する。また、補助記憶装置440は、プロセッサー410が各種の処理を行う上で使用するデータ、プロセッサー410での処理によって生成されたデータ及び各種の設定値などを記憶する。
【0029】
通信インターフェース450は、教示装置400がロボット制御装置100などと通信するためのインターフェースである。当該通信は、有線であっても無線であってもよい。
【0030】
入力デバイス460は、教示装置400の操作者による操作を受け付ける。入力デバイス460は、例えば、キーボード、キーパッド、タッチパッド、マウス又はコントローラーなどである。また、入力デバイス460は、音声入力用のデバイスであってもよい。
【0031】
表示デバイス470は、教示装置400の操作者に各種情報を通知するための画面を表示する。表示デバイス470は、例えば、液晶ディスプレイ又は有機EL(electro-luminescence)ディスプレイなどのディスプレイである。また、入力デバイス460及び表示デバイス470としては、タッチパネルを用いることもできる。すなわち、タッチパネルが備える表示パネルを表示デバイス470として、タッチパネルが備えるタッチパッドを入力デバイス460として用いることができる。
【0032】
バス480は、コントロールバス、アドレスバス及びデータバスなどを含み、教示装置400の各部で授受される信号を伝送する。
【0033】
以下、実施形態に係る溶接システム1の動作を
図2などに基づいて説明する。なお、以下の動作説明における処理の内容は一例であって、同様な結果を得ることが可能な様々な処理を適宜に利用できる。
図2は、ロボット制御装置100のプロセッサー110による処理の一例を示すフローチャートである。プロセッサー110は、例えば、ROM120又は補助記憶装置140などに記憶されたプログラムに基づいて、
図2の処理を実行する。プロセッサー110は、例えば、ロボット制御装置100の起動にともなって、
図2に示す処理を開始する。
【0034】
ステップST11においてプロセッサー110は、動作設定を変更するか否かを判定する。例えば、プロセッサー110は、動作設定を変更することを指示する入力があった場合に、動作設定を変更すると判定する。当該入力は、例えば、教示装置400の操作者による操作入力に基づく。当該入力は、例えば、通信インターフェース150を介して入力される。プロセッサー110は、動作設定を変更すると判定しないならば、ステップST11においてNoと判定して、処理はステップST12へと進む。
【0035】
ステップST12においてプロセッサー110は、新しくロボットプログラムを追加するか否かを判定する。例えば、プロセッサー110は、ロボットプログラムを追加することを指示する入力があった場合に、ロボットプログラムを追加すると判定する。当該入力は、例えば、教示装置400の操作者による操作入力に基づく。当該入力は、例えば、通信インターフェース150を介して入力される。プロセッサー110は、ロボットプログラムを追加すると判定しないならば、ステップST12においてNoと判定して、処理はステップST13へと進む。
【0036】
ステップST13においてプロセッサー110は、溶接を開始するか否かを判定する。例えば、プロセッサー110は、溶接を開始するように指示する入力があった場合に、動作溶接を開始すると判定する。当該入力は、例えば、教示装置400の操作者による操作入力に基づく。当該入力は、例えば、通信インターフェース150を介して入力される。プロセッサー110は、溶接を開始すると判定しないならば、ステップST13においてNoと判定して、処理はステップST14へと進む。
【0037】
ステップST14においてプロセッサー110は、記憶済みのロボットプログラムを変更するか否かを判定する。例えば、プロセッサー110は、ロボットプログラムを変更するように指示する入力があった場合に、動作溶接を開始すると判定する。当該入力は、例えば、教示装置400の操作者による操作入力に基づく。当該入力は、例えば、通信インターフェース150を介して入力される。プロセッサー110は、ロボットプログラムを変更すると判定しないならば、ステップST14においてNoと判定して、処理はステップST11へと戻る。かくして、プロセッサー110は、設定を変更するか、ロボットプログラムを追加するか、溶接を開始するか、記憶済みのロボットプログラムを変更すると判定するまでステップST11~ステップST14を繰り返す待受状態となる。
【0038】
プロセッサー110は、ステップST11~ステップST14の待受状態にあるときに設定を変更すると判定するならば、ステップST11においてYesと判定して、処理はステップST15へと進む。
ステップST15においてプロセッサー110は、動作設定の変更内容を指示する入力に基づき動作設定を変更する。当該入力は、例えば、教示装置400の操作者による操作入力に基づく。当該入力は、例えば、通信インターフェース150を介して入力される。プロセッサー110は、例えば、動作設定の変更のために、補助記憶装置140に記憶された動作設定を書き換える。ステップST15の処理の後、処理はステップST11へと戻る。
【0039】
プロセッサー110は、ステップST11~ステップST14の待受状態にあるときに新しくロボットプログラムを追加すると判定するならば、ステップST12においてYesと判定して、処理はステップST16へと進む。
ステップST16においてプロセッサー110は、教示装置400を用いて各種のプログラム作成方法によって作成されたロボットプログラムを補助記憶装置140に記憶する。なお、プロセッサー110は、プログラムIDと関連付けてロボットプログラムを記憶する。プログラムID(identifier)は、ロボットプログラムごとにユニークな識別情報である。ステップST16の処理の後、処理はステップST11へと戻る。
【0040】
プロセッサー110は、ステップST11~ステップST14の待受状態にあるときに溶接を開始すると判定するならば、ステップST13においてYesと判定して、処理はステップST17へと進む。
ステップST17においてプロセッサー110は、補助記憶装置140に記憶されたいずれかのロボットプログラムの実行を開始する。ここで実行を開始されるロボットプログラムを以下「実行プログラム」という。プロセッサー110は、実行プログラムに基づき溶接ロボット200及びアーク溶接機300を制御する。なお、プロセッサー110は、どのロボットプログラムを実行するかを、例えば、実行するロボットプログラムを選択する入力に基づき決定する。当該入力は、例えば、教示装置400の操作者による操作入力に基づく。当該入力は、例えば、通信インターフェース150を介して入力される。
【0041】
ステップST18においてプロセッサー110は、実行プログラムに基づきアーク溶接の開始位置に溶接トーチ230を移動させる。
【0042】
ステップST19においてプロセッサー110は、溶接の起動開始を示す溶接起動指令を溶接インターフェース170から出力する。出力された溶接起動指令は、アーク溶接機300に入力する。アーク溶接機300は、溶接起動指令の入力を受けたことに応じて出力する。溶接トーチ230と溶接対象物OBとの間にアークを発生させる。アーク溶接機300は、アークが発生したならば、アークが発生したことを示す発生通知を出力する。当該発生通知は、アーク溶接機300からロボット制御装置100の溶接インターフェース170に入力される。なお、プロセッサー110は、溶接起動指令の出力からの経過時間が分かるように、溶接起動指令を出力した時刻T1をRAM130などに記憶する。
【0043】
なお、溶接起動指令は、溶接の開始を指示する第1の情報の一例である。また、発生通知は、アーク溶接機300によるアークの発生を示す第2の情報の一例である。したがって、溶接インターフェース170は、入出力部の一例である。また、溶接インターフェース170を制御するプロセッサー110は、入出力制御部の一例である。
また、アーク溶接機300は、溶接起動指令の入力を受けたことに応じてアークを発生させることで、発生部の一例として機能する。また、アーク溶接機300は、アークが発生した場合にアークが発生したことを示す発生通知を出力することで、出力部の一例として機能する。
【0044】
ステップST20においてプロセッサー110は、溶接起動指令の出力から発生通知の入力までの時間ΔTを計測する。プロセッサー110は、例えば、発生通知が溶接インターフェース170に入力された時刻T2をRAM130などに記憶する。そして、プロセッサー110は、時刻T2から時刻T1を引くことで時間ΔTを求める。
時間ΔTは、溶接起動指令の出力から発生通知の入力までの時間の一例である。したがって、プロセッサー110は、ステップST20の処理を行うことで、当該時間を計測する計測部の一例として機能する。
【0045】
ステップST21においてプロセッサー110は、時間ΔTの計測結果を、実行プログラムのプログラムID(以下「実行ID」という。)に関連付けて補助記憶装置140に記憶する。
【0046】
ステップST22においてプロセッサー110は、報知処理を実行するか否かを判定する。報知処理は、タッチスタートが発生する可能性があることなどを教示装置400の操作者などに報知するための処理である。プロセッサー110は、例えば、実行IDに関連付けられて補助記憶装置に記憶された時間ΔTが所定の条件(以下「警告条件」という。)を満たし、且つ動作設定が報知処理を行う設定になっている場合に、報知処理を実行すると判定する。警告条件の例として(A1)~(A7)を以下に示す。
(A1)実行IDに関連付けられている時間ΔTのうち、閾値TH11以下である時間ΔTの数が閾値TH12以上であること。なお、閾値TH12の値は、1でもよい。
(A2)実行IDに関連付けられている時間ΔTの数に対する閾値TH11以下である時間ΔTの数の割合が閾値TH13以上であること。
(A3)実行IDに関連付けられている時間ΔTの平均値が閾値TH14以下であること。
(A4)実行IDに関連付けられている時間ΔTの中央値が閾値TH15以下であること。
(A5)実行IDに関連付けられている時間ΔTの最小値が閾値TH16以下であること。
(A6)実行IDに関連付けられている時間ΔTの最大値が閾値TH17以下であること。
(A7)実行IDに関連付けられている時間ΔTのうち最新の時間ΔTが閾値TH18以下であること。
【0047】
警告条件は、(A1)~(A7)の条件を組み合わせた条件でもよい。また、警告条件は、平均値、中央値、最小値及び最大値以外の統計量を用いた条件でもよい。
【0048】
なお、プロセッサー110は、実行IDに関連付けられている時間ΔTのうち、最新のものから順に所定の数だけを抜き出して、警告条件を満たしているか否かを判定してもよい。ただし、プロセッサー110は、実行IDに関連付けられている時間ΔTの数が所定の数に満たない場合は、例えば、実行IDに関連付けられている時間ΔTを全て用いて警告条件を満たしているか否かを判定する。また、プロセッサー110は、現在時刻から所定の期間内に計測された時間ΔTのみを抜き出して、警告条件を満たしているか否かを判定してもよい。また、プロセッサー110は、外れ値を除外して警告条件を満たしているか否かを判定してもよい。プロセッサー110は、外れ値を除外する方法として、例えば、公知の方法などを用いる。また、プロセッサー110は、実行IDに関連付けられている時間ΔTの数が閾値TH19以上である場合にのみ警告条件を満たしているか否かを判定してもよい。
【0049】
なお、閾値TH11及び閾値TH14~閾値TH18のそれぞれは、第1の閾値の一例である。また、閾値TH12及び閾値TH13のそれぞれは、第2の閾値の一例である。
【0050】
プロセッサー110は、報知処理を実行すると判定するならば、ステップST22においてYesと判定して、処理はステップST23へと進む。
【0051】
ステップST23においてプロセッサー110は、報知処理を実行する。プロセッサー110は、報知処理として、例えば、教示装置400に、表示デバイス470に警告画面を表示させるように指示する。
【0052】
教示装置400のプロセッサー410は、当該指示に応じて、警告画面に対応した画像を生成する。そして、プロセッサー410は、生成したこの画像を表示するように表示デバイス470に対して指示する。表示の指示を受けて表示デバイス470は、警告画面を表示する。
【0053】
警告画面は、例えば、タッチスタートが発生している可能性があること、タッチスタートが発生しやすい状態であること、又はタッチスタートが発生する可能性があることなどを示す画像を含む。なお、文字なども画像の一種である。また、警告画面は、例えば、溶接トーチ230を溶接対象物OBから離すなどの教示位置の修正を行うことを促す画像を含む。また、警告画面は、どのロボットプログラミングが報知処理の対象となっているか分かるように実行IDを示す画像を含む。
【0054】
また、プロセッサー110は、報知処理として、警告画面に含まれる内容と同様の内容の音声を、教示装置400が備えるスピーカーなどから出力させてもよい。また、プロセッサー110は、その他の方法により警告画面に含まれる内容と同様の内容を報知してもよい。
【0055】
なお、警告処理は、所定の処理の一例である。したがって、プロセッサー110は、ステップST22及びステップST23の処理を行うことで、時間が第1の閾値以下である場合、所定の処理を行う処理部の一例として機能する。
【0056】
ステップST23の処理の後、処理はステップST24へと進む。また、プロセッサー110は、報知処理を実行しないと判定するならば、ステップST22においてNoと判定して、処理はステップST24へと進む。
【0057】
ステップST24においてプロセッサー110は、実行プログラムに基づき溶接ロボット200を制御して、溶接対象物へのアーク溶接を実行する。
【0058】
ステップST25においてプロセッサー110は、修正処理を実行するか否かを判定する。修正処理は、タッチスタートの発生を防ぐために実行プログラムの教示位置を修正する処理である。プロセッサー110は、例えば、実行IDに関連付けられて補助記憶装置に記憶された時間ΔTが所定の条件(以下「修正条件」という。)を満たし、且つ動作設定が修正処理を行う設定になっている場合に、修正処理を実行すると判定する。修正条件の例として(B1)~(B7)を以下に示す。
(B1)実行IDに関連付けられている時間ΔTのうち、閾値TH21以下である時間ΔTの数が閾値TH22以上であること。なお、閾値TH22の値は、1でもよい。
(B2)実行IDに関連付けられている時間ΔTの数に対する閾値TH21以下である時間ΔTの数の割合が閾値TH23以上であること。
(B3)実行IDに関連付けられている時間ΔTの平均値が閾値TH24以下であること。
(B4)実行IDに関連付けられている時間ΔTの中央値が閾値TH25以下であること。
(B5)実行IDに関連付けられている時間ΔTの最小値が閾値TH26以下であること。
(B6)実行IDに関連付けられている時間ΔTの最大値が閾値TH27以下であること。
(B7)実行IDに関連付けられている時間ΔTのうち最新の時間ΔTが閾値TH28以下であること。
【0059】
修正条件は、(B1)~(B7)の条件を組み合わせた条件でもよい。また、修正条件は、平均値、中央値、最小値及び最大値以外の統計量を用いた条件でもよい。なお、警告条件と修正条件は同一の条件であってもよい。
【0060】
なお、プロセッサー110は、実行IDに関連付けられている時間ΔTのうち、最新のものから順に所定の数だけを抜き出して、修正条件を満たしているか否かを判定してもよい。ただし、プロセッサー110は、実行IDに関連付けられている時間ΔTの数が所定の数に満たない場合は、例えば、実行IDに関連付けられている時間ΔTを全て用いて修正条件を満たしているか否かを判定する。また、プロセッサー110は、現在時刻から所定の期間内に計測された時間ΔTのみを抜き出して、修正条件を満たしているか否かを判定してもよい。また、プロセッサー110は、外れ値を除外して修正条件を満たしているか否かを判定してもよい。プロセッサー110は、外れ値を除外する方法として、例えば、公知の方法などを用いる。また、プロセッサー110は、実行IDに関連付けられている時間ΔTの数が閾値TH29以上である場合にのみ修正条件を満たしているか否かを判定してもよい。
【0061】
なお、閾値TH21及び閾値TH24~閾値TH28のそれぞれは、第1の閾値の一例である。また、閾値TH22及び閾値TH23のそれぞれは、第2の閾値の一例である。
【0062】
プロセッサー110は、修正処理を実行しないと判定するならば、ステップST25においてNoと判定して、処理はステップST11へと戻る。これに対して、プロセッサー110は、修正処理を実行すると判定するならば、ステップST25においてYesと判定して、処理はステップST26へと進む。
【0063】
ステップST26においてプロセッサー110は、修正処理を実行する。例えば、プロセッサー110は、補助記憶装置140に記憶された実行プログラムを書き換えて、修正プログラムにおけるアーク溶接の開始位置を所定の距離D1だけ溶接対象物OBから離す。
【0064】
なお、修正処理は、所定の処理の一例である。したがって、プロセッサー110は、ステップST25及びステップST26の処理を行うことで、時間が第1の閾値以下である場合、所定の処理を行う処理部の一例として機能する。
【0065】
ステップST27においてプロセッサー110は、実行プログラムを対象とするリセット処理を行う。すなわち、プロセッサー110は、実行IDに関連付けて記憶された時間ΔTを、警告条件及び修正条件の判定に用いられないようにする。例えば、プロセッサー110は、実行IDに関連付けられた時間ΔTを全て削除する。ステップST27の処理の後、処理はステップST11へと戻る。
【0066】
教示装置400の操作者などは、例えば、警告画面を見るなど、報知処理に基づく報知を受けて、ロボットプログラムを修正する。操作者などは、ロボットプログラムを修正するために、例えば、入力デバイス460を操作して、ロボットプログラムを変更することを指示する入力を行う。当該入力は、例えば、通信インターフェース150を介してロボット制御装置100に入力される。
【0067】
プロセッサー110は、ステップST11~ステップST14の待受状態にあるときにロボットプログラムを変更すると判定するならば、ステップST14においてYesと判定して、処理はステップST28へと進む。
ステップST28においてプロセッサー110は、ロボットプログラムの変更内容を指示する入力に基づきロボットプログラムを変更する。当該入力は、例えば、教示装置400の操作者による操作入力に基づく。当該入力は、例えば、通信インターフェース150を介して入力される。なお、ここで変更されるロボットプログラムは、報知処理の対象となったロボットプログラムに限らない。
【0068】
ステップST29においてプロセッサー110は、ステップST28において変更されたロボットプログラムについて、アーク溶接の開始位置が変更されたか否かを判定する。プロセッサー110は、開始位置が変更されていないならば、ステップST29においてNoと判定して、処理はステップST11へと戻る。対して、プロセッサー110は、開始位置が変更されたならば、ステップST29においてYesと判定して、処理はステップST30へと進む。
【0069】
ステップST30においてプロセッサー110は、ステップST28において変更されたロボットプログラムを対象とするリセット処理を行う。すなわち、プロセッサー110は、当該ロボットプログラムのプログラムIDに関連付けて記憶された時間ΔTを、警告条件及び修正条件の判定に用いられないようにする。例えば、プロセッサー110は、当該プログラムIDに関連付けられた時間ΔTを全て削除する。ステップST30の処理の後、処理はステップST11へと戻る。
【0070】
実施形態の溶接システム1によれば、ロボット制御装置100は、溶接起動指令の出力から発生通知の入力までの時間ΔT又は時間ΔTの統計量が所定の閾値以下である場合、警告処理又は修正処理などの所定の処理を実行する。これにより、ロボット制御装置100は、タッチスタートの発生を防ぐことに繋がり、従来よりも溶接品質を向上させることができる。
【0071】
また、実施形態の溶接システム1によれば、ロボット制御装置100は、所定の閾値以下である時間Δの数が所定の数以上である場合に、所定の処理を実行する。これにより、実施形態の溶接システム1は、時間ΔTが外れ値であった場合などにおいて、1回だけの時間ΔTの計測結果で所定の処理を行ってしまうことを防ぐことができる。
【0072】
また、実施形態の溶接システム1によれば、ロボット制御装置100は、時間ΔTの統計量として例えば、平均値、中央値、最小値又は最大値を用いることができる。これにより、実施形態のロボット制御装置100は、タッチスタートが発生しやすい場合に所定の処理を実行することができる可能性がある。
【0073】
また、実施形態の溶接システム1によれば、ロボット制御装置100は、所定の処理として警告処理を行う。これにより、ロボット制御装置100は、タッチスタートの発生を抑えるようにプログラムの修正をロボット制御装置100の操作者などに促すことができる。
【0074】
また、実施形態の溶接システム1によれば、ロボット制御装置100は、所定の処理として、ロボットプログラムを変更して溶接の開始位置を遠ざける。これにより、ロボット制御装置100は、タッチスタートが発生する可能性を低減させることができる。
【0075】
また、実施形態の溶接システム1によれば、ロボット制御装置100は、開始位置を変更した場合にリセット処理を行う。これにより、ロボット制御装置100は、警告条件及び修正条件において、開始位置の変更前の時間ΔTのデータが使われないようにする。
【0076】
上記の実施形態は、以下のような変形も可能である。
プロセッサー110は、開始位置が変更されていなくてもロボットプログラムが変更されたならばリセット処理を行ってもよい。
【0077】
溶接ロボット200は、溶接ワイヤー以外の溶加材を用いるものであってもよい。
【0078】
実施形態のアーク溶接機は、ロボットアームを備えないものであってもよい。
【0079】
プロセッサー110又はプロセッサー410は、上記実施形態においてプログラムによって実現する処理の一部又は全部を、回路のハードウェア構成によって実現するものであってもよい。
【0080】
実施形態の処理を実現するプログラムは、例えば装置に記憶された状態で譲渡される。しかしながら、当該装置は、当該プログラムが記憶されない状態で譲渡されてもよい。そして、当該プログラムが別途に譲渡され、当該装置へと書き込まれてもよい。このときのプログラムの譲渡は、例えば、リムーバブルな記憶媒体に記録して、あるいはインターネット又はLAN(local area network)などのネットワークを介したダウンロードによって実現できる。
【0081】
以上、本発明の実施形態を説明したが、例として示したものであり、本発明の範囲を限定するものではない。本発明の実施形態は、本発明の要旨を逸脱しない範囲において種々の態様で実施可能である。
【符号の説明】
【0082】
1 溶接システム
100 ロボット制御装置
110,410 プロセッサー
120,420 ROM
130,430 RAM
140,440 補助記憶装置
150,450 通信インターフェース
160 制御インターフェース
170 溶接インターフェース
180,480 バス
200 溶接ロボット
210 駆動部
220 ワイヤー送給機
230 溶接トーチ
300 アーク溶接機
400 教示装置
460 入力デバイス
470 表示デバイス
OB 溶接対象物