(57)【要約】【課題】ロボットのツールを物品に正確に追随させることができる追随ロボットおよび作業ロボットシステムを提供する。【解決手段】この追随ロボット１０は、アーム１０ａと、アーム１０ａに設けられた１つ又は複数の視覚センサ５０と、アーム１０ａに設けられた視覚センサ５０を追随対象に追随させるための目標データとして追随対象の少なくとも位置および姿勢に関する第１の特徴量を記憶している記憶部と、視覚センサ５０によって得られる画像を用いて追随対象の少なくとも位置および姿勢に関する第２の特徴量を検出する特徴量検出手段と、第２の特徴量と第１の特徴量との差異に基づきアーム１０ａの移動指令を算出する移動量計算手段と、移動指令に基づいてアーム１０ａを移動させる移動指令手段と、を備える。【選択図】図１
2020116687.tif 000002
【特許請求の範囲】
【請求項１】
可動のアームと、
前記アームに設けられた１つ又は複数の視覚センサと、
前記アームに設けられた前記視覚センサを追随対象に追随させるための目標データとして前記追随対象の少なくとも位置および姿勢に関する第１の特徴量を記憶している記憶部と、
前記視覚センサによって得られる画像を用いて前記追随対象の現在の少なくとも位置および姿勢に関する第２の特徴量を検出する特徴量検出手段と、
前記第２の特徴量と前記第１の特徴量との差異に基づき前記アームの移動指令を算出する移動量計算手段と、
前記移動指令に基づいて前記アームを移動させる移動指令手段と、を備え、
前記移動量計算手段および前記移動指令手段が、前記視覚センサを前記追随対象に追随させる間、前記移動指令の算出および前記移動指令に基づく前記アームの移動を繰り返し、
前記移動指令が、前記第２の特徴量としての前記追随対象の姿勢と前記第１の特徴量としての前記追随対象の姿勢との差異を減ずる又は無くすものである、追随ロボット。
【請求項２】
前記移動量計算手段が、少なくともフィードフォワード制御を用いて前記移動指令を調整する、請求項１に記載の追随ロボット。
【請求項３】
前記移動量計算手段が、前記アームの機械的特性により定められるパラメータに基づいて前記移動指令を調整する、請求項１〜２の何れかに記載の追随ロボット。
【請求項４】
前記第２の特徴量の検出が行われる前に、制御部が、前記視覚センサ又は他のセンサにより得られたデータを用いて、前記追随対象が前記視覚センサの検出範囲における所定の範囲内又は前記検出範囲内に入れるための作業前移動指令を算出し、
前記アームを前記追随対象に追随させる追随動作の前に、前記移動指令手段が前記作業前移動指令に基づいて前記アームを移動させる、請求項１〜３の何れかに記載の追随ロボット。
【請求項５】
前記特徴量検出手段が、前記視覚センサよって得られる画像内の第１の範囲において前記第２の特徴量を検出する広範囲検出処理を行い、その後に前記視覚センサよって得られる画像内の前記第１の範囲よりも狭い第２の範囲において前記第２の特徴量を検出する狭範囲検出処理を行う、請求項１〜４の何れかに記載の追随ロボット。
【請求項６】
物品を搬送する搬送装置と、
請求項１から５の何れかに記載の追随ロボットと、を備え、
前記追随ロボットの前記視覚センサが前記追随対象に追随している状態で前記追随ロボットが前記物品に所定の作業を行う、又は、前記追随ロボットの前記視覚センサを前記追随対象に追随させる前記移動指令の情報又は当該移動指令の算出に用いられた情報を用いながら他のロボットである作業ロボットが前記物品に前記所定の作業を行う、作業ロボットシステム。
【請求項７】
前記所定の作業を行う前記追随ロボットによって支持されている部品又はツールが前記物品と接触することによって生ずる力、又は、前記作業ロボットによって支持されている部品又はツールが前記物品と接触することによって生ずる力を検出する力検出部をさらに備え、
前記所定の作業を行う前記追随ロボット又は前記作業ロボットの制御装置が、前記力検出部の検出値を用いる前記所定の作業が行われる時に、前記追随ロボット又は前記作業ロボットを前記物品に追随させる、請求項６に記載の作業ロボットシステム。
【請求項８】
前記第２の特徴量が所定の基準を超えて変動する時に、前記所定の作業を行う前記追随ロボット又は前記作業ロボットの制御装置および前記搬送装置の少なくとも一方が異常対応作動を行う、請求項６又は７に記載の作業ロボットシステム。
【請求項９】
前記追随対象が前記物品の一部である、請求項６〜８の何れかに記載の作業ロボットシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は追随ロボットおよび作業ロボットシステムに関する。
【背景技術】
【０００２】
従来、ロボットと、物品を搬送する搬送装置と、搬送装置に沿って設けられたレールと、レールに沿ってロボットを移動させる移動装置とを備えた生産ラインが知られている（例えば、特許文献１参照。）。この生産ラインでは、搬送装置によって物品が搬送されている時に、ロボットが物品の欠陥検査および研磨を行う。また、欠陥検査および研磨が行われる時に、搬送装置による物品の搬送速度と同じ速度で、移動装置がロボットをレールに沿って移動させる。
また、ロボットの先端部の位置および姿勢を動かない目標位置に正確に合わせる技術が知られている（例えば、特許文献２参照。）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平０８−７２７６４号公報
【特許文献２】特開２０１７−１７０５９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
前記生産ラインでは、欠陥検査および研磨を行っているだけである。これに対し、例えばロボットと物品とが干渉し得る作業が行われる場合は、ロボット、搬送装置、物品等の破損防止の対策が必要になる。しかし、搬送装置によって移動している物品は振動等の予測できない挙動を行う可能性があるので、前記の破損防止を実現することは難しい。
【０００５】
前述の事情に鑑み、ロボットのツールを物品に正確に追随させることができる追随ロボットおよび作業ロボットシステムの提供が望まれる。
【課題を解決するための手段】
【０００６】
本開示の第１の態様は、可動のアームと、前記アームに設けられた１つ又は複数の視覚センサと、前記アームに設けられた前記視覚センサを追随対象に追随させるための目標データとして前記追随対象の少なくとも位置および姿勢に関する第１の特徴量を記憶している記憶部と、前記視覚センサによって得られる画像を用いて前記追随対象の現在の少なくとも位置および姿勢に関する第２の特徴量を検出する特徴量検出手段と、前記第２の特徴量と前記第１の特徴量との差異に基づき前記アームの移動指令を算出する移動量計算手段と、前記移動指令に基づいて前記アームを移動させる移動指令手段と、を備え、前記移動量計算手段および前記移動指令手段が、前記視覚センサを前記追随対象に追随させる間、前記移動指令の算出および前記移動指令に基づく前記アームの移動を繰り返し、前記移動指令が、前記第２の特徴量としての前記追随対象の姿勢と前記第１の特徴量としての前記追随対象の姿勢との差異を減ずる又は無くす追随ロボットである。
【０００７】
本開示の第２の態様は、物品を搬送する搬送装置と、前記追随ロボットと、を備え、前記追随ロボットの前記視覚センサが前記追随対象に追随している状態で前記追随ロボットが前記物品に所定の作業を行う、又は、前記追随ロボットの前記視覚センサを前記追随対象に追随させる前記移動指令の情報又は当該移動指令の算出に用いられた情報を用いながら他のロボットである作業ロボットが前記物品に前記所定の作業を行う、作業ロボットシステムである。
【図面の簡単な説明】
【０００８】
【図１】一実施形態の作業ロボットシステムの概略構成図である。
【図２】本実施形態の作業ロボットシステムの制御装置のブロック図である。
【図３】本実施形態の作業ロボットシステムの視覚センサによって撮像される画像データの例である。
【図４】本実施形態の作業ロボットシステムの制御部の作動を示すフローチャートである。
【図５】本実施形態の変形例の作業ロボットシステムの概略構成図である。
【発明を実施するための形態】
【０００９】
一実施形態に係る作業ロボットシステム１について、図面を用いながら以下説明する。
本実施形態の作業ロボットシステム１は、図１に示されるように、作業対象である物品１００を搬送する搬送装置２と、搬送装置２によって搬送される物品１００の作業対象部１０１に対して所定の作業を行うロボット（追随ロボット）１０と、ロボット１０を制御する制御装置２０と、検出部としての検出装置４０と、ロボット１０に取付けられた視覚センサ５０とを備えている。
【００１０】
検出装置４０は、物品１００が所定位置まで搬送されてきたことを検出する。検出装置４０として、このような機能を有する装置は全て利用することができる。本実施形態では検出装置４０は光電センサであるが、視覚センサ５０によって物品１００が所定位置まで搬送されてきたことを検出してもよい。
【００１１】
物品１００は特定の種類の物に限定されない。本実施形態では、一例として、物品１００は車のボディである。搬送装置２はモータ２ａによって複数のローラ３のうち数本を駆動することによって物品１００を搬送するものであり、本実施形態では搬送装置２は図１における右側に向かって物品１００を搬送する。
【００１２】
作業対象部１０１は、物品１００において、ロボット１０が所定の作業を行う部分である。本実施形態では、所定の作業として、ロボット１０のハンド（ツール）３０が部品１１０を持上げ、ロボット１０は部品１１０の取付部１１１を作業対象部１０１に取付ける。これにより、例えば、部品１１０の取付部１１１から下方に延びるシャフト１１１ａが、物品１００の作業対象部１０１に設けられた孔１０１ａに嵌合する。
なお、物品１００が搬送装置２によって移動している状態において、ロボット１０は部品１１０の取付部１１１を作業対象部１０１に取付ける。
【００１３】
ロボット１０は特定の種類に限定されないが、本実施形態のロボット１０の可動であるアーム１０ａは、複数の可動部をそれぞれ駆動する複数のサーボモータ１１を備えている（図２参照）。各サーボモータ１１はその作動位置を検出するための作動位置検出装置を有し、作動位置検出装置は一例としてエンコーダである。作動位置検出装置の検出値は制御装置２０に送信される。
【００１４】
アーム１０ａの先端部にはハンド３０が取付けられている。本実施形態のハンド３０は複数の爪による把持によって部品１１０を支持するが、磁力、空気の吸引等を用いて部品１１０を支持するハンドを用いることも可能である。
ハンド３０は爪を駆動するサーボモータ３１を備えている（図２参照）。サーボモータ３１はその作動位置を検出するための作動位置検出装置を有し、作動位置検出装置は一例としてエンコーダである。作動位置検出装置の検出値は制御装置２０に送信される。
なお、各サーボモータ１１，３１として、回転モータ、直動モータ等の各種のサーボモータが用いられ得る。
【００１５】
ロボット１０の先端部には力センサ（力検出部）３２が取付けられている。力センサ３２は、例えば、図３に示すＸ軸方向、Ｙ軸方向、およびＺ軸方向と、Ｘ軸周り、Ｙ軸周り、およびＺ軸周りの力またはモーメントを計測する。力センサ３２は、ハンド３０又はハンド３０によって把持された部品１１０に加わる力の方向および力の程度を検出できるものであればよい。このため、本実施形態では力センサ３２がロボット１０とハンド３０との間に設けられているが、力センサ３２はハンド３０内に設けられていてもよい。
【００１６】
アーム１０ａの先端部には視覚センサ５０が取付けられている。一例では、視覚センサ５０は、ロボット１０の手首フランジにフレーム５０ａを用いて取付けられている。本実施形態では視覚センサ５０は二次元カメラである。本実施形態の視覚センサ５０は、作業対象部１０１と相対的に位置および姿勢が変化しない追随対象１０２が画角の所定の範囲に入るように、図３に示されるような画像データを逐次取得する。
本実施形態では追随対象１０２は図３に斜線で示された上面部であるが、作業対象部１０１と相対的に位置および姿勢が変化しない他の部分を用いることも可能である。
なお、視覚センサ５０は、ハンド３０等のツールに取付けられてもよい。また、視覚センサ５０は、ハンド３０等のツールと相対位置および姿勢が変化しないロボット１０の他の場所に取付けられてもよい。
【００１７】
視覚センサ５０は画像データを制御装置２０に逐次送信する。画像データは追随対象１０２の位置および姿勢を特定できるデータである。画像データが制御装置２０以外の検出器によって処理され、当該処理後データに基づき追随対象１０２の位置および姿勢が特定されてもよい。
【００１８】
追随対象１０２は、物品１００において所定の形状を有する部分、所定のマークが設けられた部分等である。これらの場合、画像データは、画像上で前記部分の位置および姿勢を判別できるデータである。
【００１９】
画像をベースとする一例では、視覚センサ５０において追随対象１０２が画像データ（検出範囲）の目標位置や姿勢、サイズに配置されると、アーム１０ａに取付けられたハンド３０の位置および姿勢が物品１００に対する所定の作業に必要な位置および姿勢となる。位置をベースとする例では、アーム１０ａに取付けられたハンド３０の位置および姿勢と視覚センサ５０の位置および姿勢とがキャリブレーションによって対応付けられている場合は、画像データに基づき制御装置２０がロボット１０の座標系における追随対象１０２の位置および姿勢を認識し、制御装置２０がアーム１０ａに設けられたハンド３０を前記所定の作業に必要な位置および姿勢に移動させることができる。本実施形態では、部品１１０の取付部１１１のシャフト１１１ａを物品１００の作業対象部１０１に設けられた孔１０１ａに嵌合できる状態となる。なお、物品１００は搬送装置２上で揺動する場合がある。例えば、搬送装置２の複数のローラ３が完全な平面上に配置されていない場合、物品１００は揺動する。物品１００が大きい場合、物品１００の下端側の僅かな揺れが作業対象部１０１の大きな揺れに繋がる場合もある。このため、アーム１０ａに設けられたハンド３０の姿勢調整は重要である。
【００２０】
画像をベースとする一例では、視覚センサ５０の画像データ上での追随対象１０２の位置や姿勢、サイズの変化と、ロボット１０の座標系の位置および姿勢の変化とは、制御装置２０内において予め関係付けられている。
【００２１】
制御装置２０は、図２に示されるように、ＣＰＵ、ＲＡＭ等を有する制御部２１と、表示装置２２と、不揮発性ストレージ、ＲＯＭ等を有する記憶部２３と、ロボット１０のサーボモータ１１にそれぞれ対応している複数のサーボ制御器２４と、ハンド３０のサーボモータ３１に対応しているサーボ制御器２５と、制御装置２０に接続された入力部２６とを備えている。一例では、入力部２６はオペレータが持ち運べる操作盤等の入力装置である。入力部２６が制御装置２０と無線通信を行う場合もある。
【００２２】
記憶部２３にはシステムプログラム２３ａが格納されており、システムプログラム２３ａは制御装置２０の基本機能を担っている。また、記憶部２３には動作プログラム２３ｂが格納されている。また、記憶部２３には、追随制御プログラム（移動指令手段）２３ｃと、力制御プログラム２３ｄと、特徴量検出プログラム（特徴量検出手段）２３ｅと、移動量計算プログラム（移動量計算手段）２３ｆと、が格納されている。
【００２３】
制御部２１は、これらのプログラムに基づいて、物品１００に対する所定の作業を行うための移動指令を各サーボ制御器２４，２５に送信する。これによって、ロボット１０およびハンド３０が物品１００に対して所定の作業を行う。この際の制御部２１の動作を図４のフローチャートを参照しながら説明する。
【００２４】
先ず、検出装置４０によって物品１００が検出されると（ステップＳ１−１）、制御部２１は、動作プログラム２３ｂに基づいたロボット１０およびハンド３０への作業前移動指令の送信を開始する（ステップＳ１−２）。これにより、ロボット１０は、ハンド３０によって把持された部品１１０のシャフト１１１ａを作業対象部１０１の孔１０１ａに近付ける。この時、制御部２１は、搬送装置２の搬送速度、物品１００内における作業対象部１０１の位置のデータ等を用いても良い。また、後述のステップＳ１−４の後で、動作プログラム２３ｂに基づいて、部品１１０のシャフト１１１ａが物品１００の孔１０１ａに嵌合される。なお、ステップＳ１−１において、検出装置４０の代わりに視覚センサ５０によって物品１００が検出されてもよい。
【００２５】
ステップＳ１−２のロボット１０の制御により、部品１１０が所定の作業（嵌合）の準備位置および姿勢に到達する。これにより、視覚センサ５０の画角（検出範囲）内、又は、画角の所定範囲内に追随対象１０２が存在するようになると（ステップＳ１−３）、制御部２１は、追随制御プログラム２３ｃ、特徴量検出プログラム２３ｅ、および移動量計算プログラム２３ｆに基づいた制御を開始する（ステップＳ１−４）。ステップＳ１−４では、例えば以下の制御が行われる。なお、以下の制御では、視覚センサ５０の画像データに基づき追随対象１０２の少なくとも位置および姿勢が検出され、検出された位置および姿勢に基づいて制御部２１がアーム１０ａに取付けられた視覚センサ５０の位置および姿勢を追随対象１０２に追随させる。ここで、視覚センサ５０はハンド３０に対する位置および姿勢が固定されているので、視覚センサ５０の画像データの目標位置および姿勢に追随対象１０２が常に配置される態様で、ロボット１０のハンド３０が物品１００に追随する。
このような制御は、例えば以下の制御によって実現される。
【００２６】
当該制御では、記憶部２３には、画像データ内において追随対象１０２が配置されるべき目標位置および目標姿勢、目標サイズが、第１の特徴量として格納されている。目標サイズは例えば、特徴を輪郭とした場合の輪郭の大きさである。
制御部２１は、特徴量検出プログラム２３ｅに基づき、第２の特徴量の検出として、視覚センサ５０によって逐次得られる画像データ上で追随対象１０２の位置、姿勢、およびサイズを検出する。
【００２７】
例えば、制御部２１は、記憶部２３に格納されている追随対象１０２のモデルを射影変換しながら、射影変換されたモデルと画像データ上の追随対象１０２とのマッチング検索を行うことにより、追随対象１０２の位置および姿勢を検出する。当該モデルはＣＡＤデータ等を用いて作成されても良いし、実際の対象から作成されても良い。作業対象部１０１と追随対象１０２との相対位置および相対姿勢は固定されているので、追随対象１０２の位置および姿勢に基づき、制御部２１はアーム１０ａの先端部と追随対象１０２との相対位置および相対姿勢を得ることができる。
【００２８】
制御部２１は、移動量計算プログラム２３ｆに基づき、画像データ内における追随対象１０２の位置、姿勢、およびサイズを第１の特徴量に一致させるための移動指令を算出する。
算出された移動指令は、画像データ内における追随対象１０２の位置、姿勢、およびサイズと第１の特徴量との差異を無くす又は低減するためのものである。算出された移動指令は、例えば、アーム１０ａに取付けられたハンド３０の位置をＸ軸方向、Ｙ軸方向、およびＺ軸方向に変化させ、ハンド３０の姿勢をＸ軸周り、Ｙ軸周り、およびＺ軸周りに変化させるものである。
【００２９】
なお、前記制御において、制御部２１がさらに、アーム１０ａの機械的特性により定められるパラメータに基づいて、算出された移動指令を調整してもよい。例えば、アーム１０ａの全体又は一部の剛性、各可動部の剛性、ハンド３０の重量、部品１１０の重量、ハンド３０および部品１１０の重量等によってアーム１０ａが受けるモーメント等が、前記機械的性質に含まれる。また、アーム１０ａの可動部である関節の角度に応じてアーム１０ａの撓み量、方向等が変化するので、アーム１０ａの各可動部の状態も前記機械的性質に含まれる。
【００３０】
つまり、移動指令によってアーム１０ａの姿勢が変化する場合、当該姿勢変化に応じて、ハンド３０および部品１１０の重量等によってアーム１０ａが受けるモーメント、アーム１０ａの各可動部の状態等が変化する。このため、移動指令がこれらの機械的特性を考慮して調整されると、ハンド３０を物品１００にさらに正確に追随させることができる。
【００３１】
制御部２１は、連続する複数の画像データを用いて、第２の特徴量の変化の傾向を得ることができる。例えば、視覚センサ５０の画像データ上における追随対象１０２の位置、姿勢、およびサイズが目標データである第１の特徴量に徐々に近付いている時に、連続する複数の画像データから、追随対象１０２に対する視覚センサ５０の相対位置および相対姿勢の変化の傾向が捉えられる。
【００３２】
前記相対位置および前記相対姿勢の変化の傾向がある場合、制御部２１が、移動量計算プログラム２３ｆに基づき、前記傾向に基づくフィードフォワード制御を用いて移動指令を調整してもよい。例えば、移動量の変化から平均速度を求めて、その基本速度をフィードフォワード制御として与えても良い。フィードフォワード制御を用いることにより対象との相対速度をある程度一定に保った状態で、ずれ分をフィードバック制御することが可能となる。もしフィードフォワードを用いないと画像の特徴同士が一致した際にロボットの移動速度が０になってしまう瞬間が発生し得る。この場合、減速、加速が頻発してしまう可能性があるが、フィードフォワード制御を用いることでそのような減速、加速を防ぐことができる。なおフィードフォワードをかける補正データには、移動平均等の周知のフィルタリング処理、スムージング処理等が施されていることが好ましい。これにより、外乱による物品１００の位置および姿勢の変化、搬送装置２の精度に由来する物品１００の揺れ、オーバーシュートの可能性、電気的ノイズ等が捉えられると、制御部２１は外乱による変化又は搬送装置２の精度に由来する揺れへの適切な対応、オーバーシュートの低減、電気的ノイズの除去等が可能となる。
なお、フィードフォワード制御に与える基本速度等の入力値は、外部の計測器で計測したものをもとにユーザが任意に入力しても良い。
また、減速機のたわみ(ねじれ)を考慮したロボットモデルを作成して、アームの振動を推定してフィードバックすることによりアームの振動を軽減しても良い。
【００３３】
また、制御部２１は、前記相対位置および前記相対姿勢の変化の傾向等を用いて、第２の特徴量の検出結果を補間してもよい。このため、第２の特徴量の取得周期が視覚センサ５０の撮像周期と同様に長くなる場合でも、検出結果の補間を行うことにより、取得周期の間の第２の特徴量の推定、将来の第２の特徴量の推定等が可能となる。
【００３４】
上記制御によって、制御部２１は、アーム１０ａのハンド３０を作業対象部１０１に追随させる。これにより、部品１１０の取付部１１１のシャフト１１１ａの位置および姿勢と作業対象部１０１の孔１０１ａの位置および姿勢とが一致する。
【００３５】
ここで、前述のように、視覚センサ５０の画像データ上での追随対象１０２の位置、姿勢、およびサイズの変化とロボット１０の座標系の位置および姿勢の変化とは、制御装置２０内において関係付けられている。このため、視覚センサ５０が追随対象１０２に追随している時にロボット１０の座標系が搬送装置２の搬送方向に移動し、座標系の位置および姿勢が搬送装置２による物品１００の移動と一致させることができる。この状況では、搬送装置２によって物品１００の作業対象部１０１は移動しているが、制御部２１から見ると座標系内において作業対象部１０１がほぼ停止して見えることになる。
【００３６】
このように制御されている状態において、制御部２１は、力制御プログラム２３ｄに基づいた力制御を開始する（ステップＳ１−５）。力制御として、周知の力制御を用いることが可能である。本実施形態では、力センサ３２によって検出される力から逃げる方向にロボット１０が部品１１０を移動させる。その移動量は力センサ３２の検出値に応じて制御部２１が決定する。
【００３７】
例えば、ハンド３０によって把持された部品１１０のシャフト１１１ａと物品１００の孔１０１ａとが嵌合し始めた状況で、搬送装置２による搬送方向と反対方向の力が力センサ３２によって検出されると、制御部２１は部品１１０を搬送方向と反対方向に僅かに移動させて検出される力から逃げる。
【００３８】
続いて、制御部２１は、視覚センサ５０の画像データに基づき逐次検出される第２の特徴量が所定の基準を超えて変動する時に（ステップＳ１−６）、第１の異常対応作動を行う（ステップＳ１−７）。所定の基準を超えた変動は、画像データ内における追随対象１０２の大きな移動、画像データ内における追随対象１０２の所定速度よりも早い移動等である。電力供給が安定していない場合、モータ２ａの回転速度が急激に低下する場合等があり、モータ２ａの回転速度が大きく変動する場合もある。これらの場合に、アーム１０ａの先端部に対する追随対象１０２の位置が前記所定の基準を超えて変動することになる。
【００３９】
第１の異常対応作動として、制御部２１は、力制御の制御周期を短くする作動または感度を高める作動、嵌合の進行を停止する作動、嵌合作業を中止する作動、嵌合方向とは逆方向に退避する作動、搬送を停止させる作動、またはそれらを組み合わせた作動等を行う。力制御の制御周期が短くし、または、感度を高めると、部品１１０に加わる力に対してロボット１０をより敏感に移動させることが可能となる。本実施形態では、制御部２１は、嵌合作業を中止する作動、嵌合方向とは逆方向に退避する作動、搬送装置を停止させる、またはそれらを組み合わせた作動等を行う。
【００４０】
また、制御部２１は、力センサ３２の検出値が所定の基準値を超える時に（ステップＳ１−８）、第２の異常対応作動を行う（ステップＳ１−９）。力センサ３２の検出値が所定の基準値を超える時は、部品１１０、物品１００等に異常な力が加わっている可能性が高い。このため、制御部２１は、第２の異常対応作動として、ロボット１０を停止させる作動、力センサ３２によって検出された力の方向から逃げる方向にロボット１０を移動させる作動、搬送装置を停止させる作動、嵌合方向とは逆方向に退避する作動、搬送を停止させる作動、またはそれらを組み合わせた作動等を行う。本実施形態では、制御部２１は、ロボット１０を停止させる作動を行う。
【００４１】
一方、制御部２１は、嵌合作業が完了したか否かを判断(例えば、Ｚ方向の進行距離が所定値を超えたかどうかを判断)し（ステップＳ１−１０）、嵌合作業が完了している場合は、アーム１０ａおよびハンド３０に所定の移動指令や作動指令を送る（ステップＳ１−１１）。これにより、ハンド３０が部品１１０を放して部品１１０から遠ざかり、ハンド３０がアーム１０ａによって待機位置又は次の部品１１０がストックされている場所に移動する。
【００４２】
なお、上記実施形態において、制御部２１が特徴量検出プログラム２３ｅに基づき、画像データ内の第１の範囲において第２の特徴量を検出する広範囲検出処理を行い、その後に得られる画像データ内の第２の範囲において狭範囲検出処理を行ってもよい。狭範囲検出処理は、第１の範囲よりも狭い第２の範囲において第２の特徴量を検出する処理である。例えば、第１の特徴量と第２の特徴量との差異が大きい時は広範囲検出処理が行われ、第１の特徴量と第２の特徴量との差異が所定値以下になると狭範囲検出処理が行われる。これにより、第１の特徴量と第２の特徴量との差異が小さくなった時に、処理速度の向上、処理精度の向上等を図ることが可能になる。
当該処理とは別に、又は、当該処理と共に、制御部２１が特徴量検出プログラム２３ｅに基づき、画像データ内において検出された追随対象１０２を含むエリアを第２の特徴量の検出範囲として設定してもよい。例えば、検出された追随対象１０２の輪郭に接する外接長方形を設定すると共に外接長方形を所定の倍率で拡大することによって、検出範囲を設定できる。そして、画像データ内における追随対象１０２の大きさ（サイズ）、視覚センサ５０と追随対象１０２との距離等に応じて、前記倍率を変更してもよい。例えば、視覚センサ５０と追随対象１０２が近付くと、画像データ内における追随対象１０２の画像上の移動量が大きくなるので、前記倍率を大きくする。これにより、追随対象１０２の位置および姿勢の検出が効率的且つ正確になる。  
【００４３】
また、図５に示されるように、ツールであるハンド３０が別のロボットである作業ロボット６０に取付けられていてもよい。この場合、作業ロボット６０のアーム６０ａおよびハンド３０は制御装置７０によって制御される。一例では、制御装置７０は制御装置２０と同様の構成を有し、アーム６０ａもアーム１０ａと同様の構成を有する。視覚センサ５０の座標系の位置および方向とロボット６０の座標系の位置および方向とは、制御装置７０内において関係付けられている。制御部２１が視覚センサ５０を追随対象１０２に追随させている状態で、制御装置７０はロボット６０の座標系においてロボット６０を動作させる。視覚センサ５０の座標系の位置および姿勢に応じてロボット６０の座標系の位置および姿勢が変化するので、制御装置７０はロボット６０の座標系に基づき設定された動作プログラム２３ｂを用いて作業を行うことができる。
【００４４】
この場合でも、前述のように制御装置２０が視覚センサ５０の位置および姿勢を追随対象１０２に追随させている時に、当該移動指令の情報、第２の検出量と第１の検出量との差異の情報等に基づいて、ロボット６０の座標系の位置および姿勢を作業対象部１０１に追随させることができる。このため、ロボット６０が動作プログラム２３ｂに基づいて部品１１０のシャフト１１１ａを物品１００の孔１０１ａに嵌合する作業を行う時に、ロボット６０のハンド３０が物品１００に追随する。
なお、制御装置２０および制御装置７０が生産管理システム等の上位制御システムに接続されており、制御装置２０と制御装置７０との間での前記情報の受け渡しが上位制御システムを介して行われてもよい。
【００４５】
なお、ロボット６０の代わりに、搬送装置２０の上方に搬送装置２０に沿って設けられたレールと、レールに移動可能に取付けられた可動アームとを有するロボットを用いることも可能である。この場合、可動アームの先端部に視覚センサ５０が取付けられ、可動アームはその先端部および視覚センサ５０の姿勢を例えばＸ軸周りおよびＹ軸周りに変更可能である。可動アームがその先端部および視覚センサ５０の位置をＹ軸方向に移動可能であることが好ましいが、可動アームがその先端部および視覚センサ５０の位置をＹ軸方向に自由に移動できなくてもよい。
【００４６】
この場合でも、可動アームに取付けられた視覚センサ５０の位置および姿勢を追随対象１０２に追随させることが可能である。なお、可動アームの先端部がＹ軸方向に自由に移動しない場合でも、第２の特徴量と第１の特徴量との差異に基づき、可動アームに取付けられた視覚センサ５０のＸ軸方向の位置と、Ｘ軸およびＹ軸周りの姿勢とを、追随対象１０２に追随させることができる。当該追随ができれば、画像データ中において追随対象１０２がＹ軸方向に移動する場合があっても、その移動量を検出して前述と同様の作用効果を得ることができる。
【００４７】
なお、第２の特徴量として、追随対象１０２の形状等が追加で検出されてもよい。この場合、記憶部２３に追随対象１０２の形状等に関する第１の特徴量が格納される。追随対象１０２の形状は、アーム１０ａと追随対象１０２との距離や角度に対応して変化するので、追随制御がより正確に行われるようになる。
【００４８】
なお、複数の視覚センサ５０が用いられ、複数の視覚センサ５０を複数の追随対象１０２にそれぞれ追随させることも可能である。この場合、複数の視覚センサ５０によって得られる複数の画像データ中の各々の所定位置に追随対象１０２が配置された時に、アーム１０ａに取付けられたハンド３０が物品１００の作業対象部１０１に対して所定の位置および姿勢に配置されたと判断することも可能である。
【００４９】
このように、本実施形態のロボット１０は、アーム１０ａに設けられた１つ又は複数の視覚センサ５０と、アーム１０ａに設けられた視覚センサ５０を追随対象１０２に追随させるための目標データとして第１の特徴量を記憶している記憶部２３と、を備える。そして、本実施形態では、視覚センサ５０よって得られる画像を用いて追随対象１０２の現在の少なくとも位置および姿勢に関する第２の特徴量が検出される。そして、第２の特徴量と第１の特徴量との差異に基づきアーム１０ａの移動指令が算出される。また、視覚センサ５０を追随対象１０２に追随させる間、移動指令の算出および移動指令に基づくアームの移動が繰り返される。このため、搬送装置２によって搬送される物品１００に対するハンド３０の相対位置および相対姿勢を徐々に目標データに近付けることができる。これは、搬送装置２によって搬送されている物品１００にロボット１０のアーム１０ａの動作を正確に沿わせるために有用である。
【００５０】
また、本実施形態では、第１の特徴量として、追随対象１０２のモデルを有する。物品１００の特徴部が追随対象１０２である場合、制御部２１は、視覚センサ５０によって得られる画像データ中の特徴部と射影変換されたモデルとのマッチング検索を行うことによって、画像データ中の特徴部の位置および姿勢（第２の特徴量）を得ることができる。当該構成は、搬送装置２によって搬送される物品１００の追随対象１０２に対する視覚センサ５０の相対位置および相対姿勢を目標データに正確に近付けるために有用である。なお、特徴部は物品１００の表面に設けられた図形であってもよい。
【００５１】
また、本実施形態では、少なくともフィードフォワード制御を用いて移動指令が調整される。当該構成では、フィードフォワード制御によって、搬送装置２による物品１００の移動傾向等を考慮した制御が行われ、これは物品１００の追随対象１０２に対する視覚センサ５０の相対位置および相対姿勢を目標データに素早く正確に近付けるために有用である。
【００５２】
また、本実施形態では、第２の特徴量の検出が行われる前に、制御部２１が、視覚センサ５０又は他のセンサ４０により得られたデータを用いて、追随対象１０２を視覚センサ５０の検出範囲内に入れるための作業前移動指令を算出する。このため、アーム１０ａの追随制御が行われる前に、視覚センサ５０が短時間で追随に必要な位置に配置される。
【００５３】
また、本実施形態の作業ロボットシステムは、搬送装置２と、ロボット１０と、を備え、ロボット１０に設けられた視覚センサ５０が追随対象１０２に追随している状態でロボット１０が物品１００に所定の作業を行う。または、本実施形態の作業ロボットシステムは、ロボット１０に設けられた視覚センサ５０を追随対象１０２に追随させる移動指令の情報又は移動指令の算出に用いられた情報を用いながら、作業ロボット６０が物品１００に所定の作業を行う。作業ロボット６０を用いる場合、視覚センサ５０から離れた場所で物品１００に所定の作業を行うことが可能である。なお、複数の作業ロボット６０が前記情報を用いて物品１００に所定の作業を行ってもよい。
【００５４】
また、本実施形態の作業ロボットシステムは、ロボット１０によって支持されている部品１１０又はハンド３０が物品１００と接触することによって生ずる力、又は、作業ロボット６０によって支持されている部品１１０又はハンド３０が物品１００と接触することによって生ずる力を検出する力センサ３２をさらに備える。また、ロボット１０又は作業ロボット６０の制御装置２０，７０が、所定の作業が行われる時に、力センサ３２の検出値も用いながら、ロボット１０又は作業ロボット６０に設けられたハンド３０を前記物品に追随させる。
力センサ３２の検出値も追随制御に用いられるので、追随制御の精度をより向上することができる。ここで、物品１００に対するハンド３０の相対姿勢と力センサ３２の検出値との対応付けが難しい場合があるが、本実施形態では当該相対姿勢が修正されるので、追随制御の精度が効果的に向上する。
【００５５】
また、本実施形態の作業ロボットシステムは、第２の特徴量が所定の基準を超えて変動する時に、所定の作業を行うロボット１０又は作業ロボット６０の制御装置２０，７０および搬送装置２の少なくとも一方が異常対応作動を行う。これにより、追随制御が行われている時のロボット１０，６０、物品１００、および部品１１０の損傷を効果的に防止することができる。
【００５６】
また、本実施形態の作業ロボットシステムでは、追随対象１０２が物品１００の一部である。当該構成では、物品１００における追随対象１０２の位置が固定されており、これは追随制御の精度をより向上するために有用である。
【００５７】
また、ロボット１０又は作業ロボット６０の先端部に加工ツールが支持され、搬送装置２によって搬送される物品１００にロボット１０又は作業ロボット６０が所定の作業として加工を行ってもよい。この場合、加工ツールは、ドリル、フライス、ドリルタップ、バリ取り工具、その他の工具等である。この場合でも、ステップＳ１−２において加工ツールが作業対象部１０１に近付けられ、前述の追随制御が行われ、加工ツールと作業対象部１０１との接触に応じて力制御が行われること等により、前述と同様の効果が達成される。また、加工ツールは、溶接ガン、溶接トーチ等でもよい。
【００５８】
また、搬送装置２として、物品１００を曲線的なルートに沿って搬送する搬送装置を用いることも可能であり、物品１００を曲がりくねったルートに沿って搬送する搬送装置を用いることも可能である。これらの場合でも、制御部２１は、視覚センサ５０の検出結果を用いて、ロボット１０又は作業ロボット６０の先端部を作業対象部１０１に追随させることができる。また、ステップＳ１−６においてロボット１０に対する作業対象部１０１の位置が所定の基準を超えて変動する時に、ステップＳ１−７において制御部２１が第１の異常対応動作を行うことができる。このため、前記搬送装置を用いた場合でも、前述と同様の効果が達成される。
【００５９】
また、搬送装置２の代わりに、他のロボット、ＡＧＶ（Automated Guided Vehicle）が物品１００を移動させてもよい。この場合でも前述と同様の作用効果が達成され得る。さらに、物品１００が自動車、自動車のフレーム等の場合は、所定の作業が行われる物品１００がそのエンジン、車輪等によって移動してもよい。これらの場合、他のロボット、エンジン、車輪等が搬送装置として機能する。
【００６０】
また、搬送装置２の代わりに、物品１００が重力によって滑り落ちる、転がり落ちる、又は落下するシューターによって、物品１００を搬送してもよい。この場合、傾斜しているシューターを加振装置によって振動させ、これによりシューター上の物品１００の移動を円滑にすることも可能である。これらの場合、シューター、加振装置等が搬送装置として機能し、シューターによって移動している物品１００がロボット３０に取付けられたツールによって取出される。
【００６１】
本実施形態では、ロボット１０又は作業ロボット６０の先端部に力センサ３２が取付けられている。一方、搬送装置２と物品１００との間、物品１００の内部等に、力センサ３２を配置することも可能である。この場合でも、力センサ３２の検出値に基づく力制御を行うことが可能であり、前述と同様の効果が達成される。
また、視覚センサ５０がロボット１０又は作業ロボット６０における手首フランジ以外の部分に取付けられてもよい。
【００６２】
なお、視覚センサ５０がステレオカメラであってもよい。この場合、一対のカメラによって追随対象１０２の距離画像データを得ることが可能で、当該画像データと対応する立体的なモデルとを用いて追随対象１０２の位置および姿勢が特定される。
【００６３】
本実施形態では視覚センサ５０が追随する対象とロボット１０の作業対象とが異なるが、視覚センサ５０が追随する対象とロボット１０の作業対象が同じであってもよい。例えば、ロボット１０のツールと作業対象との若干の位置ずれが許容される場合、ツールによる作業時に追随する対象が視覚センサ５０から常に見えている場合等は、追随する対象と作業対象とを同一とすることができる。
【００６４】
なお、前記実施形態では、視覚センサ５０の画像データ上で追随対象１０２の位置、姿勢、およびサイズを目標位置に配置し、これによりツールであるハンド３０の位置および姿勢を、物品１００に対する所定の作業に必要な位置および姿勢に配置する。これに対し、視覚センサ５０の画像データ上で追随対象１０２の位置および姿勢を目標位置に配置し、これによりロボット１０に取付けられたツールの位置および姿勢を所定の作業に必要な位置および姿勢に配置してもよい。例えば、レーザ溶接、レーザ加工、シール剤塗布等のツールと物品との距離が殆ど変化しない作業の場合、ツールと物品との距離が変化しても行える作業の場合等は、第１の特徴量としてのサイズの情報および第２の特徴量としてのサイズの情報は使わなくてもよい。
【符号の説明】
【００６５】
１  作業ロボットシステム
２  搬送装置
２ａ  モータ
３  ローラ
１０  ロボット（追随ロボット）
１１  サーボモータ
２０  制御装置
２１  制御部
２２  表示装置
２３  記憶部
２３ａ  システムプログラム
２３ｂ  動作プログラム
２３ｃ  追随制御プログラム（移動指令手段）
２３ｄ  力制御プログラム
２３ｅ  特徴量検出プログラム（特徴量検出手段）
２３ｆ  移動量計算プログラム（移動量計算手段）
２４  サーボ制御器
２５  サーボ制御器
２６  入力部
３０  ハンド
３１  サーボモータ
３２  力センサ（力検出部）
４０  検出装置
５０  視覚センサ
１００  物品
１０１  作業対象部
１０１ａ  孔
１０２  追随対象
１１０  部品
１１１  取付部
１１１ａ  シャフト
【図１】
2020116687.tif 000003
【図２】
2020116687.tif 000004
【図３】
2020116687.tif 000005
【図４】
2020116687.tif 000006
【図５】
2020116687.tif 000007