(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0011】
以下、添付図面を参照して、本願の開示するロボットシステム、ロボット制御装置および被加工物の製造方法を詳細に説明する。なお、以下に示す実施形態によりこの発明が限定されるものではない。また、以下では、被加工物をワークと記載する。また、以下では、ロボットがワークに対してネジ締め作業を行う場合について主に説明するが、作業内容は、ネジ締めに限らず、塗装や溶接等であってもよい。
【0012】
また、「ロボットの先端」という記載は、ロボットの先端という意味のみではなく、ロボットに取り付けたエンドエフェクタの先端、あるいは、エンドエフェクタが把持する物の先端の意味も含むものとする。
【0013】
また、以下に示す実施形態では、「直交」、「垂直」、「平行」、「鉛直」あるいは「水平」といった表現を用いるが、厳密に「直交」、「垂直」、「平行」、「鉛直」あるいは「水平」であることを要しない。すなわち、上記した各表現は、製造精度、設置精度などのずれを許容するものとする。
【0014】
まず、実施形態に係るロボットシステム1について
図1を用いて説明する。
図1は実施形態に係るロボットシステム1の模式図である。なお、
図1には、ロボットシステム1を上方からみた模式図を示している。また、
図1では、説明をわかりやすくするために、鉛直上向きが正方向であるZ軸、ワークWの搬送方向が正方向であるX軸を含む3次元の直交座標系を図示している。かかる直交座標系は、以下の説明で用いる他の図面においても示す場合がある。
【0015】
図1に示すように、ロボットシステム1は、搬送装置10と、カメラ11と、ロボット20と、ロボット制御装置30とを備える。搬送装置10は、ベルトコンベアなどの装置であり、たとえば、ベルトに載置されたワークWを搬送する。カメラ11は、搬送装置10の上方に設置され、搬送中のワークWを継続的に撮像するビデオカメラ等の装置である。また、カメラ11は、撮像結果に基づき、ワークWの搬送速度Vを随時算出するものとする。なお、カメラ11は搬送速度を取得する取得部11に相当する。
【0016】
ロボット20は、ワークWに予め定められた複数の作業位置Pに対して所定の作業を行う。ここで、かかる作業としては、ネジ穴に対してネジを締め込むネジ締め作業がある。なお、ワークWにおける作業位置Pは搬送速度Vで移動するので、ネジ締め作業を行うには、ロボット20も作業位置Pの移動に追従する必要がある。このように、ワークWの移動に追従する必要のある作業を、以下では、「第1の作業」と記載することとする。なお、ロボット20の構成例については、
図3を用いて後述する。
【0017】
ロボット制御装置30は、ロボット20の動作を制御する、いわゆるロボットコントローラである。ここで、ロボット制御装置30は、カメラ11が算出した搬送速度Vに基づき、ロボット20の動作速度を補正する。したがって、ワークWの搬送速度Vが既定の速度から変動した場合や、搬送速度Vに脈動などの速度ぶれがある場合であっても、ロボット20は、搬送中のワークWに高精度に追従することが可能となるので、作業精度を高精度に保つことができる。
【0018】
このように、ワークWを静止させて作業を行うのではなく、ワークWの搬送速度Vに応じてロボット20の動作速度を調整しつつ、搬送中のワークWに作業を行うことで、ワークWの静止に伴う時間のロスを防止することができる。したがって、ワークWに対するトータルの作業時間を低減させることが可能となる。
【0019】
なお、ロボット制御装置30は、ワークWを静止させた状態で、ロボット20に動作の教示を行うことで教示データを予め生成し、搬送速度Vに応じて教示データの再生速度を変化させるが、この点については
図4〜
図6を用いて後述する。また、ロボットシステム1は、複数台のロボット20を備えることとしてもよいが、この点については、
図7を用いて後述する。
【0020】
なお、
図1では、カメラ11を用いてワークWの搬送速度Vを算出する場合を示したが、搬送装置10を駆動するモータなどのアクチュエータにおけるエンコーダの出力に基づいて搬送速度Vを算出することとしてもよい。また、カメラ11で搬送速度Vを算出するのではなく、カメラ11から撮像画像を取得したロボット制御装置30が、搬送速度Vを算出することとしてもよい。
【0021】
次に、ロボット制御装置30の構成について
図2を用いて説明する。
図2は、ロボット制御装置30のブロック図である。
図2に示すように、ロボット制御装置30は、カメラ11およびロボット20にそれぞれ接続されている。また、ロボット制御装置30は、制御部31と、記憶部32とを備える。
【0022】
制御部31は、取得部31aと、補正部31bと、動作制御部31cとを備える。記憶部32は、教示データ32aを記憶する。なお、
図1には、説明を簡略化するために、1台のロボット制御装置30を示したが、ロボット20にそれぞれ対応するロボット制御装置30を用いることとしてもよい。この場合、各制御装置を束ねる上位の制御装置を設けることとしてもよい。
【0023】
ここで、ロボット制御装置30は、たとえば、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)、入出力ポートなどを有するコンピュータや各種の回路を含む。
【0024】
コンピュータのCPUは、たとえば、ROMに記憶されたプログラムを読み出して実行することによって、制御部31の取得部31a、補正部31bおよび動作制御部31cとして機能する。
【0025】
また、取得部31a、補正部31bおよび動作制御部31cの少なくともいずれか一つまたは全部をASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等のハードウェアで構成することもできる。
【0026】
また、記憶部32は、たとえば、RAMやHDDに対応する。RAMやHDDは、教示データ32aを記憶することができる。なお、ロボット制御装置30は、有線や無線のネットワークで接続された他のコンピュータや可搬型記録媒体を介して上記したプログラムや各種情報を取得することとしてもよい。さらに、上記したように、ロボット制御装置30を複数台の相互に通信可能な装置として構成してもよく、上位または下位の装置と通信可能な階層式の装置として構成してもよい。
【0027】
制御部31は、ロボット20の動作制御を行う。なお、ロボット制御装置30が複数台で構成される場合には、制御部31は、ロボット制御装置30間の同期をとる処理を併せて行うこととしてもよい。
【0028】
取得部31aは、ワークWの搬送速度V(
図1参照)を継続的に取得する。そして、取得部31aは、取得した搬送速度Vを補正部31bへ出力する。なお、
図2では、搬送速度Vを外部装置であるカメラ11から取得する場合について示したが、カメラ11から受け取った画像データに基づいて取得部31aが搬送速度Vを算出することとしてもよい。
【0029】
補正部31bは、取得部31aから受け取った搬送速度Vに基づき、教示データ32aに基づいて動作するロボット20の動作速度を補正する。ここで、教示データ32aは、ロボット20へ動作を教示するティーチング段階で作成され、ロボット20の動作経路を規定するプログラムである「ジョブ」を含んだ情報である。
【0030】
補正部31bは、たとえば、教示データ32aの再生速度を変化させることで、ロボット20の動作速度を補正する。なお、教示データ32aの生成、教示データ32aの再生速度の詳細については、
図4〜
図6を用いて後述する。また、補正部31bは、搬送速度Vに基づき、搬送中のワークWの位置を算出する処理をあわせて行う。
【0031】
動作制御部31cは、補正部31bによって再生速度が調整された教示データ32aに基づいてロボット20を動作させる。動作制御部31cは、ロボット20の動力源であるモータ等のアクチュエータにおけるエンコーダ値を用いつつフィードバック制御を行うなどしてロボット20の動作精度を向上させる。
【0032】
次に、ロボット20の構成例について、
図3を用いて説明する。
図3は、ロボット20の構成を示す側面図である。
図3に示すように、ロボット20は、鉛直軸A0〜第6軸A6の7軸を有するいわゆる垂直多関節ロボットである。また、ロボット20は、基端側から先端側へ向けて、ベース部Bと、旋回部Sと、第1アーム21と、第2アーム22と、第3アーム23と、第4アーム24と、手首部25とを備える。
【0033】
ベース部Bは、床などの
接置面100に固定される。旋回部Sは、ベース部Bに支持され、
接置面100と垂直な鉛直軸A0まわりに旋回する。第1アーム21は、基端側が旋回部Sに支持され、鉛直軸A0と垂直な第1軸A1まわりに旋回する。第2アーム22は、基端側が第1アーム21の先端側に支持され、第1軸A1と平行な第2軸A2まわりに旋回する。
【0034】
第3アーム23は、基端側が第2アーム22の先端側に支持され、第2軸A2と平行な第3軸A3まわりに旋回する。第4アーム24は、基端側が第3アーム23の先端側に支持され、第3軸A3と垂直な第4軸A4まわりに回転する。手首部25は、基端部25aと、先端部25bとを含む。基端部25aは、基端側が第4アーム24の先端側に支持され、第4軸A4と直交する第5軸A5まわりに旋回する。
【0035】
先端部25bは、基端側が基端部25aの先端側に支持され、第5軸A5と直交する第6軸A6まわりに旋回する。また、先端部25bの先端側には、ネジ締め装置などのエンドエフェクタEEが交換可能に取り付けられる。なお、エンドエフェクタEEとしては、ネジ締め装置以外に、シール装置、塗装装置、スポット溶接装置、アーク溶接装置等を用いることができる。
【0036】
なお、第3アーム23、第4アーム24および手首部25を中空にすることとしてもよい。このようにすることで、エンドエフェクタEE用のケーブル等を、かかる中空に挿通することができる。したがって、ケーブル等をロボット20の外装に沿って配策する必要がないので、ロボット20の可動範囲を広げることができる。
【0037】
次に、
図2に示した教示データ32aの生成処理について、
図4を用いて説明する。
図4は、ワークWを静止させた状態での教示を示す説明図である。なお、
図4では、5つの作業位置P(作業位置P1〜作業位置P5)をワークW上に設ける場合を例示しているが、作業位置Pの個数は任意の個数とすることができる。また、
図4では、作業前の準備位置Psと、作業後の準備位置Peとを例示しているが、これらの準備位置については省略しても構わない。
【0038】
図4に示すように、教示データ32a(
図2参照)は、ワークWを静止させた状態で、ロボット20に動作経路を教示することで生成される。具体的には、ロボット20は、
図4に示した姿勢から、エンドエフェクトEE(
図3参照)の先端が、準備位置Ps、作業位置P1、作業位置P2、作業位置P3、作業位置P4、作業位置P5および準備位置Peを経由して最初の姿勢に戻るように、教示される。
【0039】
ここで、作業位置P1〜作業位置P5のそれぞれで、ネジ締め作業等の上記した「第1作業」を行う場合、それぞれの作業位置Pで所定時間(たとえば、ネジ締め開始から完了までに要する時間)留まる必要がある。このため、教示データ32aには、ロボット20が各作業位置Pに留まる時間も含まれる。
【0040】
また、
図4に示したロボット20の姿勢から、準備位置Ps、作業位置P1、作業位置P2、作業位置P3、作業位置P4、作業位置P5および準備位置Peを経由し、最初の姿勢に戻るまでの所要時間である「Ts」が教示データ32aに記録される。かかる所要時間(Ts)は、
図5を用いて後述する補正処理に用いられる。
【0041】
なお、教示データ32aの生成は、
図2に示したロボット制御装置30の制御部31が行うこととしてもよいし、外部装置が生成した教示データ32aを記憶部32に記憶することとしてもよい。
【0042】
また、
図4では、1台のロボット20を例示したが、たとえば、2台のロボット20がそれぞれ作業可能な位置にワークWを静止させ、各ロボット20の動作をそれぞれ教示することとしてもよい。
【0043】
次に、
図2に示した補正部31bが実行する補正処理を説明するために、移動中のワークWに対するロボット20の作業について
図5を用いて説明する。
図5は、移動中のワークWに対する作業を示す説明図である。なお、
図5以降では、
図4に示した準備位置Psおよび準備位置Peの記載を省略することとする。
【0044】
図5に示すように、ロボット20は、搬送方向に沿う幅がL1である動作範囲M1内で作業を行うように規定されている。ロボット20は、最初の作業位置である作業位置P1が動作範囲M1に到達すると作業位置P1に対する作業を開始する。なお、
図5には、作業開始位置に到達したワークWを実線で示している。
【0045】
引き続き、ロボット20は、作業位置P2〜作業位置P5の作業を行い、最後の作業位置である作業位置P5が動作範囲M1から出る直前に作業位置P5に対する作業を完了する。なお、
図5には、作業終了位置に到達したワークWを破線で示している。
【0046】
ここで、ロボット20が動作範囲M1内でワークWに対する作業を開始してから作業を完了するまでの最大の時間をTmとし、ワークWにおける最初の作業位置P1から最後の作業位置P5までの距離をW1とすると、Tmは、式「Tm=(W1+L1)/V」であらわされる。
【0047】
このように、搬送速度Vで搬送中のワークWに対して動作範囲M1内で作業を完了させるための時間は「Tm」であり、一方、静止状態のワークWに対する作業を完了させるための時間は上記したように「Ts」である。
【0048】
したがって、ワークWの静止時に生成された教示データ32aを、式「k=Tm/Ts」であらわされるk倍で再生すれば、搬送速度Vで搬送中のワークWに対してロボット20の動作範囲M1内で作業を完了させることができる。
図2に示した補正部31bは、このようにして、教示データ32aの再生速度を決定する。なお、上記した「k」を以下では「オーバライド比率」と呼ぶことがある。
【0049】
そして、補正部31b(
図2参照)は、ワークWの搬送速度Vを継続的に受け取り、搬送速度Vの変化に応じて教示データ32aの再生速度を変化させていく。このようにすることで、搬送速度Vが変化した場合であっても、ロボット20は、動作範囲M1内でワークWに対する作業を完了することができる。
【0050】
次に、
図2に示した補正部31bが実行する補正処理について
図6を用いてさらに詳細に説明する。
図6は、補正処理の詳細を示す説明図である。なお、
図6には、搬送速度Vが0の場合(すなわち、ワークWが静止した状態)と、搬送速度が0以外の場合(すなわち、ワークWが移動している状態)とを示している。
【0051】
ワークWが静止した状態で、各作業位置で行う上記した第1作業に要する時間がT1であり、各作業位置へ移動するための時間が、Ta、TbおよびTcであるとする。この場合、ワークWの移動中には、補正部31b(
図2参照)は、各移動時間が、式「k=Tm/Ts」であらわされるk倍となるように教示データ32aを再生する。
【0052】
一方、補正部31bは、第1作業の作業時間であるT1についてはk倍しない。これは、第1作業では、ワークWが静止中であっても、移動中であっても予め定められた所定の時間にわたって各作業位置に留まるように制御する必要があるためである。このようにすることで、ロボット20は、第1作業の作業精度を保持しつつ、
図5に示した動作範囲M1内でワークWに対する作業を完了させることができる。
【0053】
なお、本実施形態では、第1作業として、ワークW上の所定の位置に所定時間にわたって静止させる作業について説明する。しかしながら、これに限らず、第1作業は、ワークWに対する相対速度を所定時間にわたって一定とする作業であってもよい。かかる作業としては、たとえば、ワークWに対して線状に溶接を行うアーク溶接作業や、ワークWに対して線状にシール剤を吐出するシール作業をあげることができる。
【0054】
次に、複数台のロボット20を搬送方向に沿って複数配置する場合について
図7を用いて説明する。
図7は、複数のロボット20を配置した場合の説明図である。
図7に示したように、ロボット20を搬送方向に沿って複数配置することで、複数のロボット20でワークWに対する作業を分担することができ、搬送されるワークWに対する作業性を向上させることができる。なお、
図7では、2台のロボット20を搬送方向に沿って配置した場合について例示しているが、ロボット20の台数については、任意の数とすることができる。
【0055】
また、
図7では、ロボット20−1、ロボット20−2のように、複数のロボット20を区別するため各符号にハイフン付きの数字を付加している。また、ワークWにおける作業位置P1〜P5についても、同様に、ハイフン付きの数字を付加している。
【0056】
図7に示したように、ロボット20−1と、ロボット20−2とは、搬送方向について動作範囲M1と、動作範囲M2とが重複しないようにそれぞれ設置される。なお、
図7では、動作範囲M1と、動作範囲M2との間に隙間がある場合を例示しているが、かかる隙間を省略してもよい。つまり、各動作範囲が搬送方向について重複しなければよい。また、
図7では、各動作範囲を矩形としているが、動作範囲を矩形に限定するものではない。搬送方向について重複範囲を有しなければ、各動作範囲は任意の形状でよい。
【0057】
ロボット20−1は、動作範囲M1内でワークWに対する作業が完了する動作速度で動作し、ロボット20−2は、動作範囲M2内でワークWに対する作業が完了する動作速度で動作する。つまり、ロボット20間のインタロックが不要となり、ロボット20の待ち時間が発生しない。
【0058】
このようにすることで、搬送されるワークWに対する作業性を高めることができる。具体的には、ロボット20の台数が多くなった場合に、ロボット20の台数に比例して生産性を向上させることができる。つまり、ロボット20の台数と搬送速度Vに比例した生産性を実現することができる。また、ワークWに設定する作業位置Pの各ロボット20への割り振り方の自由度が増すという効果も得ることができる。
【0059】
ここで、ロボット20−1について、最初の作業位置P1−1から最後の作業位置P5−1までの距離をW1とすると、ロボット20−1が動作範囲M1内でワークWに対する作業を完了する所要時間であるTmは、上記したように、式「Tm=(W1+L1)/V」であらわされる。
【0060】
また、ロボット20−2について、最初の作業位置P1−2から最後の作業位置P5−2までの距離をW2とすると、ロボット20−2が動作範囲M2内でワークWに対する作業を完了する所要時間であるTmは、式「Tm=(W2+L2)/V」であらわされる。
【0061】
つまり、ロボット20がn台配置される場合、n番目のロボットであるロボット20−nについて、最初の作業位置P1−nから最後の作業位置P5−nまでの距離をWnとすると、ロボット20−nが動作範囲Mn内でワークWに対する作業を完了する所要時間であるTmは、式「Tm=(Wn+Ln)/V」であらわされる。
【0062】
このように、複数台のロボット20が配置される場合であっても、
図5に示した場合と同様の手順で、各ロボット20の所要時間であるTmを算出することができる。したがって、各ロボット20について、式「k=Tm/Ts」であらわされるk倍で各ロボット20に対応する教示データ32aを再生することで、ワークWの搬送速度Vが変化してもワークWに対する作業精度をそれぞれ保持することができる。
【0063】
なお、
図7では、ロボット20−1に対応する作業位置と、ロボット20−2に対応する作業位置とが同数である場合を例示したが、作業位置の個数は、ロボット20ごとに異なる数で構わない。
【0064】
ところで、ロボットシステム1は、ワークWの位置ずれおよび姿勢ずれの影響を排除することもできる。そこで、以下では、この点について、
図8Aおよび
図8Bを用いて説明する。
図8Aは、ワークWの位置ずれを示す説明図であり、
図8Bは、ワークWの姿勢ずれを示す説明図である。
【0065】
なお、ワークWの位置ずれや姿勢ずれは、
図2に示したカメラ11で検出することとしてもよいし、カメラ11から受け取った画像データに基づいてロボット制御装置30の制御部31が検出することとしてもよい。この場合、
図2に示した取得部31aがかかる検出処理を行うこととしてもよく、カメラ11と補正部31bとの間に取得部31aと並列に設ける検出部で、かかる検出処理を行うこととしてもよい。また、補正部31bがかかる検出処理を行うこととしてもよい。
【0066】
図8Aに示すように、ワークWは、搬送方向について、ずれ量dXだけ位置ずれしたり、搬送方向と垂直な水平方向について、ずれ量dYだけ位置ずれしたりすることがある。なお、
図8Aには、正規の位置にあるワークWから、位置ずれしたワークWsを破線で示している。
【0067】
図8Bに示すように、ワークWは、搬送方向についてdθxだけ姿勢ずれすることがある。なお、
図8Bには、正規の姿勢のワークWから、姿勢ずれしたワークWsを破線で示している。また、
図8Bには搬送方向(X軸方向)についての姿勢ずれを例示しているが、同図に示すY軸方向についてdθyだけ姿勢ずれしたり、Z軸方向についてdθzだけ姿勢ずれしたりすることがある。これらの姿勢ずれについても搬送方向の姿勢ずれと同様に補正の対象とすることができる。
【0068】
上記した検出部は、カメラ11から受け取った画像データに基づき、正規位置からの位置ずれを検出する。また、上記した検出部は、カメラ11から受け取った画像データに基づき、正規姿勢からの姿勢ずれを検出する。なお、位置ずれについては、搬送装置10(
図1参照)の搬送面における目印に基づいて検出してもよいし、搬送速度Vに基づいて仮想的な正規位置を随時算出し、算出した正規位置との比較で検出してもよい。
【0069】
また、姿勢ずれについては、上方からみた正規姿勢のワークWの輪郭と、画像データにおけるワークWの輪郭とを比較することで検出することができる。なお、本実施形態では、カメラ11による撮像結果に基づいて位置ずれや姿勢ずれを検出する場合について説明するが、搬送装置10に配列した複数の光学センサなどのセンサの出力に基づいて位置ずれや姿勢ずれを検出することとしてもよい。
【0070】
図2に示した補正部31bは、このようにして検出されたワークWの位置ずれや姿勢ずれに基づき、教示データ32aを補正することで、ワークWの位置ずれや姿勢ずれの影響を排除する。したがって、ロボットシステム1は、ワークWの位置ずれや姿勢ずれに関わらず、作業精度を保つことができる。
【0071】
次に、ロボット制御装置30が実行する処理手順について
図9を用いて説明する。なお、
図9は、
図4〜
図6に示したように、ロボット20が1台である場合に対応するが、ロボット20が複数である場合には、各ロボット20について並列に
図9に示した処理を実行することとすればよい。
【0072】
また、
図4に示した静止教示によって、教示データ32aは、既に生成されており、
図4を用いて説明した静止教示における作業時間であるTsも既に算出されているものとする。
【0073】
図9に示すように、カメラ11は、ワークWの搬送速度Vを取得する(ステップS101)。搬送速度Vを取得部31a経由で受け取った補正部31bは、搬送速度Vで搬送されるワークWに対してロボット20が動作範囲M1内で作業可能な時間であるTmを式「Tm=(W1+L1)/V」を用いて算出する(ステップS102)。また、補正部31bは、オーバライド比率を示すkを式「k=Tm/Ts」を用いて算出する(ステップS103)。
【0074】
つづいて、補正部31bは、ワークWが作業開始位置に到着したか否かを判定する(ステップS104)。そして、ワークWが作業開始位置に到着した場合には(ステップS104,Yes)、動作制御部31cは、ステップS103で算出したオーバライド比率で教示データ32aの再生を開始する(ステップS105)。なお、ステップS104の判定条件を満たさなかった場合には(ステップS104,No)、ステップS104の判定処理を繰り返す。
【0075】
つづいて、補正部31bは、搬送速度Vに変化があるか否かを判定し(ステップS106)、搬送速度Vに変化がある場合には(ステップS106,Yes)、変化後の搬送速度Vに基づいて再生速度を補正する(ステップS107)。なお、ステップS106の判定条件を満たさなかった場合には(ステップS106,No)、ステップS107の処理を行うことなくステップS108の処理へ進む。
【0076】
つづいて、補正部31bは、ワークWに対する作業が終了したか否かを判定し(ステップS108)、ワークWに対する作業が終了した場合には(ステップS108,Yes)、処理を終了する。なお、ステップS108の判定条件を満たさなかった場合には(ステップS108,No)、ステップS106以降の処理を繰り返す。
【0077】
上述してきたように、実施形態に係るロボットシステム1は、搬送装置10と、ロボット20と、取得部11と、ロボット制御装置30とを備える。搬送装置10は、ワークWを搬送する。ロボット20は、搬送中のワークWに対して作業を行う。取得部11は、ワークWの搬送速度Vを取得する。ロボット制御装置30は、ロボット20の動作を制御する。また、ロボット制御装置30は、取得部11によって取得された搬送速度Vに基づいてロボット20の動作速度を補正する補正部31bを備える。
【0078】
このように、実施形態に係るロボットシステム1によれば、搬送中のワークWの搬送速度Vが変化した場合であっても、取得した搬送速度Vに基づいてロボット20の動作速度を補正する。したがって、ロボットシステム1は、搬送速度Vが変化してもワークWに対する作業精度を高精度に保つことができる。
【0079】
また、実施形態に係るロボットシステム1は、ワークWに対する相対速度を所定時間にわたって一定とする第1の作業を行う。したがって、相対速度が0、すなわち、ワークWの同じ位置に対する作業であるネジ締め作業やスポット溶接作業を、搬送速度Vの変化に関わらず高精度に行うことができる。また、相対速度が0以外、すなわち、ワークWに対して0以外の一定の相対速度を保つ作業であるアーク溶接作業やシール作業を、搬送速度Vの変化に関わらず高精度に行うことができる。
【0080】
また、上述した実施形態では、ロボットシステム1が、カメラ11を用いて搬送速度Vを取得する場合を例示したが、他の手法で搬送速度Vを取得してもよい。この点について、
図10Aおよび
図10Bを用いて説明する。
【0081】
図10Aは、ロボットシステム1の変形例その1を示す模式図であり、
図10Bは、ロボットシステム1の変形例その2を示す模式図である。なお、
図10Aおよび
図10Bでは、
図1と共通する構成要素には同一の符号を付し、重複する説明については省略するか簡単な説明にとどめることとする。
【0082】
図10Aに示すように、ロボットシステム1aは、カメラ11(
図1参照)の代わりに搬送装置10を駆動するモータなどのアクチュエータのエンコーダ11aを用いて搬送速度Vを取得する点で、
図1に示したロボットシステム1とは異なる。
【0083】
エンコーダ11aは、出力値をロボット制御装置30へ出力し、ロボット制御装置30の取得部31a(
図2参照)は、受け取った出力値から搬送速度Vを算出する。このように、搬送装置10のエンコーダ11aを利用することで、ロボットシステム1aのコストを低下させることができる。なお、エンコーダ11a側で搬送速度Vを算出することとしてもよい。
【0084】
なお、
図10Aには、1台のロボット制御装置30と、1台のロボット20を例示した。しかしながら、これに限らず、エンコーダ11aの配下に複数台のロボット制御装置30を接続し、各ロボット制御装置30の配下に1台以上のロボット20をそれぞれ接続することとしてもよい。
【0085】
図10Bに示すように、ロボットシステム1bは、エンコーダ11aと、ロボット制御装置30との間に搬送速度算出装置200を備える点で、
図10Aに示したロボットシステム1aとは異なる。
【0086】
搬送速度算出装置200は、エンコーダ11aから受け取った出力値から搬送速度Vを算出する。そして、算出した搬送速度Vをロボット制御装置30へ出力する。このようにすることで、ロボット制御装置30の処理負荷を低減することができる。
【0087】
なお、
図10Bには、1台のロボット制御装置30と、1台のロボット20を例示した。しかしながら、これに限らず、搬送速度算出装置200の配下に複数台のロボット制御装置30を接続し、各ロボット制御装置30の配下に1台以上のロボット20をそれぞれ接続することとしてもよい。
【0088】
なお、
図1に示したロボットシステム1においても、カメラ11の配下に、撮像データに基づいて搬送速度Vを算出する、カメラ11とは独立した装置を接続し、かかる装置の配下に1台または複数台のロボット制御装置30を接続することとしてもよい。
【0089】
また、上述した実施形態では、ロボット20を7軸のロボットとする例を示したが、ロボット20を8軸以上のロボットとしてもよく、6軸以下のロボットとしてもよい。
【0090】
さらなる効果や変形例は、当業者によって容易に導き出すことができる。このため、本発明のより広範な態様は、以上のように表しかつ記述した特定の詳細および代表的な実施例に限定されるものではない。したがって、添付の特許請求の範囲およびその均等物によって定義される総括的な発明の概念の精神または範囲から逸脱することなく、様々な変更が可能である。