(57)【要約】【課題】ロボット、搬送装置、物品等の破損防止を効率的に実現することのできる作業ロボットシステムおよび作業ロボットを提供する。【解決手段】この作業ロボットシステムは、搬送装置２によって搬送される物品１００の対象部１０１に対して作業を行う作業ロボット１０および作業ロボット制御部２０と、所定位置に配置され、搬送装置２によって搬送される物品１００の検出対象Ｏの位置を検出するためのセンサ５０と、力制御を行う際に用いられる力検出部３２と、を備え、作業ロボット制御部２０が、作業ロボット１０による作業が行われる時に、センサ５０の検出結果に基づいた作業ロボット１０の制御を行いながら、力制御を行う。【選択図】図１
2019188508.tif 000002
【特許請求の範囲】
【請求項１】
物品を搬送する搬送装置と、
前記搬送装置によって搬送される前記物品の対象部に対して所定の作業を行う作業ロボットと、
前記作業ロボットを制御する作業ロボット制御部と、
所定位置に配置され、前記搬送装置によって搬送されている前記物品における前記対象部又は前記対象部に対して位置が変化しない検出対象の位置を検出するために用いられるセンサと、
前記作業ロボットに支持された部品又はツールと前記物品との接触によって生ずる力を検出する力検出部と、を備え、
前記作業ロボット制御部が、前記作業ロボットによる前記所定の作業が行われる時に、検出される前記対象部又は前記検出対象の位置に基づく前記作業ロボットの制御を行いながら、前記力検出部の検出値に基づいた力制御を行う、作業ロボットシステム。
【請求項２】
前記作業ロボット制御部が、前記作業ロボットによって支持されている前記部品又は前記ツールを前記センサの前記検出結果を用いて前記対象部に追随させながら、前記力検出部の検出値を用いて前記力制御を行う、請求項１に記載の作業ロボットシステム。
【請求項３】
前記搬送装置上の前記物品の少なくとも位置を検出する検出部を備え、
前記作業ロボット制御部が、前記検出部の検出結果に基づいて、前記作業ロボットの前記部品又は前記ツールを前記対象部に近付ける、請求項１又は２に記載の作業ロボットシステム。
【請求項４】
前記対象部又は前記検出対象の検出位置が、所定の基準を超えて変動する時に、前記作業ロボット制御部および前記搬送装置の少なくとも一方が異常対応作動を行う、請求項１又は２に記載の作業ロボットシステム。
【請求項５】
搬送装置によって搬送される物品の対象部に対して所定の作業を行うアームと、
前記アームを制御する作業ロボット制御部と、
前記アームに支持された部品又はツールと前記物品との接触によって生ずる力を検出する力検出部と、を備えた作業ロボットであって、
前記作業ロボット制御部が、前記搬送装置によって移動している前記対象部又は前記対象部に対して位置が変化しない検出対象の位置を検出するために用いられるセンサを有する計測装置から、前記位置に関するデータを受付け、
前記作業ロボット制御部が、前記アームによる前記所定の作業が行われる時に、前記位置に関するデータを用いた前記アームの制御を行いながら、前記力検出部の検出値に基づいた力制御を行う、作業ロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は作業ロボットシステムおよび作業ロボットに関する。
【背景技術】
【０００２】
従来、搬送装置によって搬送される物品に部品を組み付ける時には、搬送装置を停止させる場合が多かった。特に、車のボディ等の大きな物品に部品を精密に組み付ける時には、搬送装置による物品の搬送を停止する必要があった。これが作業効率の低下に帰結する場合もあった。
【０００３】
一方、ロボットと、物体を搬送する搬送装置と、搬送装置に沿って設けられたレールと、レールに沿ってロボットを移動させる移動装置とを備えた生産ラインが知られている（例えば、特許文献１参照。）。この生産ラインでは、搬送装置によって物体が搬送されている時に、ロボットは物体の欠陥検査および研磨を行う。また、欠陥検査および研磨が行われる時に、搬送装置による物体の搬送速度と同じ速度で、移動装置がロボットをレールに沿って移動させる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平０８−７２７６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
前記生産システムでは、欠陥検査および研磨を行っているだけである。一方、ロボットと物体とが干渉し得る作業が行われる場合は、ロボット、搬送装置、物品等の破損防止の目的で、ロボットの力制御を行う必要が生ずる。しかし、搬送装置によって移動している物品は予測できない挙動を行う可能性があるので、力制御の制御周期を極めて短くし、または、感度を高めないと、前記の破損防止を実現することは難しい。
【０００６】
しかし、ロボットはロボットの制御周期でしか反応できないため、結果的に力制御の制御周期はロボットの制御周期よりも短くできない。つまり、ロボット自体の性能を変更しない限り、前記の破損防止を実現することが難しいケースがあった。また、力制御の感度を高くすると、ロボットの発振が発生する可能性が高まる。また、物品が予測できない挙動を行う場合、連続するいくつかの制御周期の期間に力制御が行われても、ロボットと物体との接触が改善されない状態も生じ得る。この時もロボットの発振が発生する可能性が高まる。
【０００７】
本発明は、前述の事情に鑑みてなされている。本発明の目的の一つは、ロボット、搬送装置、物品等の破損防止を効率的に実現することのできる作業ロボットシステムおよび作業ロボットの提供を目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明は以下の手段を採用する。
本発明の第１態様の作業ロボットシステムは、物品を搬送する搬送装置と、前記搬送装置によって搬送される前記物品の対象部に対して所定の作業を行う作業ロボットと、前記作業ロボットを制御する作業ロボット制御部と、所定位置に配置され、前記搬送装置によって搬送されている前記物品における前記対象部又は前記対象部に対して位置が変化しない検出対象の位置を検出するために用いられるセンサと、前記作業ロボットに支持された部品又はツールと前記物品との接触によって生ずる力を検出する力検出部と、を備え、前記作業ロボット制御部が、前記作業ロボットによる前記所定の作業が行われる時に、検出される前記対象部又は前記検出対象の位置に基づく前記作業ロボットの制御を行いながら、前記力検出部の検出値に基づいた力制御を行う。
【０００９】
上記態様では、センサが所定位置に配置され、物品における対象部又は検出対象の位置が検出される。そして、このように検出される対象部又は検出対象の位置を用いて作業ロボットが制御される。このため、力制御が無い状態であっても、作業ロボット制御部は、作業ロボットに支持された部品又はツールと物品との位置関係を認識でき、両者の接触有無を認識できる場合もある。例えば、搬送装置による物品の移動量が大きく変動する搬送装置の異常も、作業ロボット制御部は力制御が無い状態において認識できる。このため、力制御の制御周期を無理に短くせずに、作業ロボット、搬送装置、物品等の破損防止を実現できるようになり、作業ロボットの発振の発生も抑制される。
【００１０】
ここで、作業ロボットの先端部、又は、作業ロボットと異なるロボットの先端部によってセンサが支持され、ロボットがセンサの位置および姿勢を搬送装置による搬送に応じて変化させる方が、センサの検出データを用いた対象部の位置の検出の精度が向上するという考えもある。しかし、センサをロボットの先端部によって支持すると、センサの位置および姿勢が、ロボットのキャリブレーションの精度やロボットのたわみの影響やロボットの絶対精度等により、完全に正確でない場合が多い。これに対し、本実施形態では、センサが所定位置に配置されている。このため、センサをロボットの先端部によって支持する場合と比較し、センサの検出データを用いた対象部の位置の検出の精度が向上する。
【００１１】
また、部品又はツールと共にセンサが作業ロボットの先端部に支持される場合、センサの検出範囲が部品又はツールによって遮られる場合がある。部品又はツールが物品に接触する時に、センサによって対象部又はその近傍を検出できなくなる場合もある。前記態様では、作業ロボットにセンサが支持されていない。このため、センサの検出範囲が部品又はツールによって遮られる可能性が低減される。
【００１２】
また、部品又はツールと共にセンサが作業ロボットの先端部に支持される場合、ツール又は作業ロボットの洗浄や修理等を行う際に、作業ロボットからセンサを取外す必要がある。この場合、センサを作業ロボットに再度取り付ける際に、センサのキャリブレーションを行う必要がある。前記態様では、作業ロボットにセンサが支持されていないので、センサのキャリブレーションの手間を低減又は無くすことができる。
【００１３】
上記態様において、好ましくは、前記作業ロボット制御部が、前記作業ロボットによって支持されている前記部品又は前記ツールを前記センサの前記検出結果を用いて前記対象部に追随させながら、前記力検出部の検出値を用いて前記力制御を行う。
【００１４】
このように、センサの検出結果を用いることによって、作業ロボット制御部が作業ロボットの部品又はツールを対象部に追随させる。このため、作業ロボット制御部は、作業ロボットが所定の作業を行う時に、搬送装置によって搬送される物品の対象部に対して、作業ロボットに支持された部品又はツールの位置および姿勢を正確に制御できる。これは、力制御の制御周期を短くせずに、または、感度を高めずに、作業ロボット、搬送装置、物品等の破損防止を実現するために有利であり、作業ロボットの発振の発生を抑制するためにも有利である。
【００１５】
上記態様において、好ましくは、前記搬送装置上の前記物品の少なくとも位置を検出する検出部を備え、前記作業ロボット制御部が、前記検出部の検出結果に基づいて、前記作業ロボットの前記部品又は前記ツールを前記対象部に近付ける。なお、近付ける際に、作業ロボットは前記対象部の姿勢に合わせて前記部品又は前記ツールの姿勢を変えても良い。
検出部の検出結果に基づいてこのように作業ロボットが作動すると、作業の効率が向上する。
【００１６】
上記態様において、好ましくは、前記対象部又は前記検出対象の検出位置が、所定の基準を超えて変動する時に、前記作業ロボット制御部および前記搬送装置の少なくとも一方が異常対応作動を行う。
【００１７】
当該態様では、前述のように作業ロボットに支持された部品又はツールと物品との位置関係が認識されている状態において、作業ロボット制御部および前記搬送装置の少なくとも一方がさらに、センサの検出結果に基づいて異常対応作動を行う。当該構成は、作業ロボット、搬送装置、物品等の破損防止の確実な実現を図る時に有利であり、作業ロボットの発振の発生を抑制するためにも有利である。
【００１８】
本発明の第２態様は、搬送装置によって搬送される物品の対象部に対して所定の作業を行うアームと、前記アームを制御する作業ロボット制御部と、前記アームに支持された部品又はツールと前記物品との接触によって生ずる力を検出する力検出部と、を備えた作業ロボットであって、前記作業ロボット制御部が、前記搬送装置によって移動している前記対象部又は前記対象部に対して位置が変化しない検出対象の位置を検出するために用いられるセンサを有する計測装置から、前記位置に関するデータを受付け、前記作業ロボット制御部が、前記アームによる前記所定の作業が行われる時に、前記位置に関するデータを用いた前記アームの制御を行いながら、前記力検出部の検出値に基づいた力制御を行う。
【発明の効果】
【００１９】
本発明によれば、ロボット、搬送装置、物品等の破損防止を効率的に実現することができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の一実施形態の作業ロボットシステムの構成を示す図である。
【図２】本実施形態の作業ロボットシステムの作業ロボット制御装置のブロック図である。
【図３】本実施形態の計測ロボットシステムのセンサによって撮像される画像データの例である。
【図４】本実施形態の制御システムの構成の他の例を示す図である。
【図５】本実施形態の作業ロボットおよび計測装置の制御装置の処理の例を示すフローチャートである。
【図６】本実施形態の物品の対象部および部品の取付部の平面図である。
【図７】本実施形態の作業ロボットシステムにおけるトラッキング制御の座標系を説明する図である。
【図８】本実施形態の作業ロボットシステムの変形例の構成を示す図である。
【発明を実施するための形態】
【００２１】
本発明の第１実施形態に係る作業ロボットシステムについて、図面を用いながら以下説明する。
本実施形態の作業ロボットシステムは、図１に示されるように、作業対象である物品１００を搬送する搬送装置２と、搬送装置２によって搬送される物品１００の対象部１０１に対して所定の作業を行う作業ロボット１０と、作業ロボット１０が有する作業ロボット制御装置２０と、検出部としての検出装置４０とを備えている。
【００２２】
検出装置４０は、物品１００が所定位置まで搬送されてきたことを検出する。検出装置４０が、搬送装置２によって搬送される物品１００の対象部１０１の位置および姿勢を特定できるデータを取得してもよい。検出装置４０として、このような機能を有する装置は全て利用することができる。本実施形態では検出装置４０は光電センサである。この場合、検出装置４０は、その設置位置まで物品１００が搬送されてきたことを検出する。検出装置４０の検出結果は各制御装置に送信されても良いし、後述の上位制御装置８０に送信されても良い。
【００２３】
物品１００は特定の種類の物に限定されないが、本実施形態では、一例として、物品１００は車のボディである。搬送装置２はモータ２ａによって複数のローラ３のうち数本を駆動することによって物品１００を搬送するものであり、本実施形態では搬送装置２は図１における右側に向かって物品１００を搬送する。なお、モータ２ａは作動位置検出装置２ｂを備えていても良い。作動位置検出装置２ｂはモータ２ａの出力軸の回転位置および回転量を逐次検出する。作動位置検出装置２ｂは例えばエンコーダであり、作動位置検出装置２ｂの検出値は作業ロボット制御装置２０に送信される。
【００２４】
対象部１０１は、物品１００において、作業ロボット１０が所定の作業を行う部分である。本実施形態では、所定の作業として、作業ロボット１０のハンド３０が部品１１０を持上げ、作業ロボット１０は部品１１０の取付部１１１を対象部１０１に取付ける。これにより、例えば、部品１１０の取付部１１１から下方に延びるシャフト１１１ａが、物品１００の対象部１０１に設けられた孔１０１ａに嵌合する。
なお、物品１００が搬送装置２によって移動している状態において、作業ロボット１０は部品１１０の取付部１１１を対象部１０１に取付ける。
【００２５】
作業ロボット１０は特定の種類のロボットに限定されないが、本実施形態の作業ロボット１０は、複数の可動部をそれぞれ駆動する複数のサーボモータ１１を備えている（図２参照）。なお、複数の可動部によって作業ロボット１０のアーム１０ａが構成されている。各サーボモータ１１はその作動位置を検出するための作動位置検出装置を有し、作動位置検出装置は一例としてエンコーダである。作動位置検出装置の検出値は作業ロボット制御装置２０に送信される。
【００２６】
作業ロボット１０のアーム１０ａの先端部にはハンド３０が取付けられている。本実施形態のハンド３０は複数の爪による把持によって部品１１０を支持するが、磁力、空気の吸引、またはそれらを組み合わせたもの等を用いて部品１１０を支持するハンドを用いることも可能である。
ハンド３０は爪を駆動するサーボモータ３１を備えている（図２参照）。サーボモータ３１はその作動位置を検出するための作動位置検出装置を有し、作動位置検出装置は一例としてエンコーダである。作動位置検出装置の検出値は作業ロボット制御装置２０に送信される。
なお、各サーボモータ１１，３１として、回転モータ、直動モータ等の各種のサーボモータが用いられ得る。
【００２７】
作業ロボット１０のアーム１０ａの先端部には力検出部としての力センサ３２が取付けられている。力センサ３２は、例えば、図１に示す力センサ座標系２０２のｘ軸方向、ｙ軸方向、およびｚ軸方向の力を検出し、ｘ軸周り、ｙ軸周り、およびｚ軸周りの力も検出する。
本実施形態では、搬送装置２の搬送方向と図１の基準座標系２０１のＸ軸方向が一致しており、鉛直方向と図１のＺ軸方向とが一致しており、図１のＹ軸方向は搬送装置２の幅方向と一致するように取る。
【００２８】
力センサ３２は、ハンド３０又はハンド３０によって把持された部品１１０に加わる力の方向および力の程度を検出できるものであればよい。このため、本実施形態では力センサ３２が作業ロボット１０とハンド３０との間に設けられているが、力センサ３２はハンド３０内に設けられていてもよいし、作業ロボット１０内に設けられていてもよい。
【００２９】
作業ロボット制御装置２０は、図２に示されるように、ＣＰＵ、ＲＡＭ等を有する作業ロボット制御部２１と、表示装置２２と、不揮発性ストレージ、ＲＯＭ等を有する記憶部２３と、作業ロボット１０のサーボモータ１１にそれぞれ対応している複数のサーボ制御器２４と、ハンド３０のサーボモータ３１に対応しているサーボ制御器２５と、作業ロボット制御装置２０に接続された入力部２６とを備えている。つまり、作業ロボット制御装置２０は、作業ロボット１０のアーム１０ａおよびハンド３０を制御するものである。入力部２６は、一例では、オペレータが持ち運べる操作盤等の入力装置である。入力部２６が作業ロボット制御装置２０と無線通信を行う場合もある。
【００３０】
本実施形態の作業ロボットシステムは、図１に示されるように、複数の計測装置６０を備えている。各計測装置６０は、センサ５０を有する。本実施形態では２つの計測装置６０が用いられる。計測装置６０は１つであってもよい。
【００３１】
複数の計測装置６０のセンサ５０はそれぞれ所定の位置に配置されている。本実施形態では、図１に示されるように、２つの計測装置６０のセンサ５０はＸ軸方向に間隔をおいて配置されており、２つのセンサ５０はそれぞれスタンド５１又はフレーム５２によって所定位置に位置決めされている。スタンド５１によって支持されたセンサ５０は物体１００の側方に配置されており、フレーム５２によって支持されたセンサ５０は物体１００の上方に配置されている。
【００３２】
センサ５０は、二次元カメラ、三次元カメラ、三次元距離センサ等である。本実施形態のセンサ５０は二次元カメラであり、各センサ５０は画像データを作業ロボット制御装置２０に逐次送信する。後述のように、作業ロボット制御部２１は、画像データ中の検出対象Ｏの位置および姿勢を検出できる。
【００３３】
基準座標系２０１の設定時には、作業ロボット１０の先端部に設けられた設定ツールが搬送装置２上のある位置に設置されたキャリブレーション治具の複数の所定箇所を触る。これにより、基準座標系２０１が設定される。本実施形態では、基準座標系２０１のＸ軸、Ｙ軸、およびＺ軸の延びる方向は図１に示されるＸ軸、Ｙ軸、およびＺ軸の延びる方向と一致しており、基準座標系２０１の位置、即ち原点位置は、キャリブレーション治具上の所定の位置となる。
また、前記キャリブレーション治具を作業ロボットの既知の位置に取付け、２つのセンサ５０の前に移動させ、２つのセンサ５０がそれぞれ前記キャリブレーション治具の画像データを得て、作業ロボット１０の基準座標系２０１とセンサ５０の位置姿勢（センサ座標系２０３，２０４）とを関連付ける。もしくは２つのセンサ５０から見える既知の位置に前記キャリブレーション治具を設置し、２つのセンサ５０がそれぞれ前記キャリブレーション治具の画像データを得て、作業ロボット１０の基準座標系２０１とセンサ５０の位置姿勢（センサ座標系２０３，２０４）とを関連付けてもよい。
なお、基準座標系設定時にキャリブレーション治具とは別の治具を用いても良い。
【００３４】
作業ロボット制御装置２０の記憶部２３にはシステムプログラム２３ａが格納されており、システムプログラム２３ａは作業ロボット制御装置２０の基本機能を担っている。また、記憶部２３には作業動作プログラム２３ｂが格納されている。また、記憶部２３には、力制御プログラム２３ｃと、計測プログラム２３ｄとが格納されている。
【００３５】
作業ロボット制御部２１は、プログラム２３ａ，２３ｄに基づいて、センサ５０の検出データを用いて、対象部１０１の位置又は移動量をモニタする。また、作業ロボット制御部２１は、プログラム２３ａ，２３ｂ，２３ｃに基づいて、物体１００に対する所定の作業を行うための制御指令を各サーボ制御器２４，２５に送信する。これによって、作業ロボット１０およびハンド３０が物体１００に対して所定の作業を行う。
【００３６】
なお、図４に示されるように、作業ロボット制御装置２０および各計測装置５０は上位制御装置８０に接続されても良い。上位制御装置８０は、プロセッサと、ＲＡＭ、ハードディスク等の記憶部と、入力部と、送受信部とを有するコンピュータである。作業ロボット１０の稼働状態、各計測装置６０の稼働状態等は、上位制御装置８０に送信される。センサ５０および計測制御装置７０によってモニタされる対象部１０１の位置および移動量のデータと、これらに関する後述のデータも、上位制御装置８０に逐次送信される。また、前記データは上位制御装置８０から作業ロボット制御装置２０に逐次送信される。また、上位制御装置８０が受付けるその他のデータも、上位制御装置８０から作業ロボット制御装置２０に送信される。
なお上位制御装置８０がない場合は、各々の制御装置が直接やり取りを行う。
【００３７】
作業ロボット１０が物体１００に対して所定の作業を行う際の作業ロボット制御部２１の処理を図５のフローチャートを参照しながら説明する。なお、以下の制御は、搬送装置２によって物品１００が搬送されている状態で行われる。
【００３８】
先ず、検出装置４０による物品１００の検出信号を受信すると（ステップＳ１−１）、作業ロボット制御部２１は、作業動作プログラム２３ｂに基づき、ハンド３０によって把持された部品１１０を対象部１０１に近付けるための制御指令を各サーボ制御器２４に送信する（ステップＳ１−２）。
ステップＳ１−２の制御を行うために、作業ロボット制御部２１は、物品１００内における対象部１０１や検出対象Ｏに対するロボットの位置のデータ等を用いる。なお、ここであらかじめ指定されたおおよその搬送装置２の搬送速度を用いてロボットの位置を補正しても良いし、もしくは作動位置検出装置２ｂによって得られる搬送装置２の搬送速度を使ってロボットの位置を補正しても良い。
【００３９】
また、作業ロボット制御部２１は、計測プログラム２３ｄに基づき、センサ５０の検出データの処理を開始する（ステップＳ１−３）。本実施形態では２つのセンサ５０用にそれぞれ検出対象Ｏが準備されており、２つの検出対象Ｏのうちの一方は物体１００の側面に設けられたマークであり、他方は物体１００の上面に設けられたマークである（図１）。
検出対象Ｏは対象部１０１に対する位置および姿勢が変化しないものであればよい。
【００４０】
続いて、センサ５０の画角内に検出対象Ｏが存在するようになると（ステップＳ１−４）、作業ロボット制御部２１が、計測プログラム２３ｄに基づき、第１の処理として、検出対象Ｏの計測に基づく対象部１０１の位置座標および姿勢の補正データの導出と、補正データを用いた作業動作プログラム２３ｂの補正を行い（ステップＳ１−５）、同時に又は第１の処理の後すぐに、第２の処理として、検出対象Ｏの位置および移動速度を検出するための制御を開始し（ステップＳ１−６）、また、基準座標系２０１の移動のための制御を開始する（ステップＳ１−７）。
【００４１】
（第１の処理）
作業ロボット制御部２１は、センサ５０の画像データを用いて、基準座標系２０１における検出対象Ｏの位置、又は、位置および姿勢を検出する。そして、作業ロボット制御部２１は、予め教示されている基準と実際の検出結果との相対関係から第１の処理の補正データを求める。各検出対象Ｏは対象部１０１に対して位置および姿勢が変化しないので、対象部１０１の補正データとして前記補正データを用いることが可能である。
【００４２】
作業ロボット制御部２１は、求められた位置座標および姿勢の補正データを用いて、作業動作プログラム２３ｂを補正する。なお、位置座標のみを補正することも可能であり、姿勢のみを補正することも可能である。これにより、後述の制御によってハンド３０が支持された部品１１０のシャフト１１１ａを対象部１０１の孔１０１ａに嵌合する際に（図６）、当該嵌合の精度を向上することができる。
【００４３】
（第２の処理）
第２の処理としてステップＳ１−６およびＳ１−７を行うために、例えば下記の制御を用いることが可能である。本実施形態では、下記の制御は位置ベース法と称される。それ以外の制御を用いてステップＳ１−６およびＳ１−７を行うことも勿論可能である。本実施形態では、下記制御において、センサ５０の検出データから検出対象Ｏの位置が検出されるが、センサ５０の検出データから検出対象Ｏの位置および姿勢が検出されてもよい。
【００４４】
位置ベース法の制御は、センサ５０の検出データとして逐次得られる画像データを用いて、固定された基準座標系２０１上における物品１００の特徴形状および／又は特徴点の位置を逐次検出する。本実施形態では、対象部１０１に対して位置および姿勢が変化しない検出対象Ｏの位置の検出結果に基づき、物品１００の対象部１０１の位置が逐次検出される。なお、同時に対象部１０１の姿勢が逐次検出されてもよい。そして、作業ロボット制御部２１は、当該基準座標系２０１上の時間の経過により移動する検出位置同士の差（例えば、現在の検出位置と過去のある時点の検出位置との差）に基づいて、基準座標系２０１を逐次移動させる。
【００４５】
ここで、第１の処理では、センサ５０の検出範囲内に入ってくる検出対象Ｏの位置を検出するために、検出範囲の全域について画像処理を行う必要があるが、第２の処理では、検出対象Ｏの大凡の位置を特定することができるので、検出範囲の一部について画像処理を行い、これにより処理速度の向上を図ることが可能である。
【００４６】
本実施形態では、位置ベース法の制御が行われる時に、センサ５０の画角内に検出対象Ｏが常に配置される。
【００４７】
なお、物体１００の上方に配置されたセンサ５０から見て、検出対象ＯがＸ軸方向およびＹ軸方向に移動する時は、基準座標系２０１もＸ軸方向およびＹ軸方向に移動される。物体１００の側方に配置されたセンサ５０から見て、検出対象ＯがＸ軸方向およびＺ軸方向に移動する時は、基準座標系２０１もＸ軸方向およびＺ軸方向に移動される。なお、２つの検出対象Ｏの位置がＺ軸方向、Ｙ軸方向等に延びる軸線周りに回転している時は、基準座標系２０１の姿勢もこれら軸線周りに回転される。
【００４８】
このように、検出対象Ｏの位置の移動に伴って基準座標系２０１の設定位置、例えば原点位置を遂次移動させる場合は、作業ロボット制御部２１は作業動作プログラム２３ｂを補正せずに作業ロボット１０を制御できる。
【００４９】
上記制御において、作業ロボット制御部２１は、例えば図７に示されるように、２つの検出対象Ｏの位置ｐ１１，ｐ２１がそれぞれ位置ｐ１２，ｐ２２、・・・に移動する場合、最小二乗法等でフィッティングすることにより、２つの検出対象Ｏの移動速度をそれぞれ計算する。または、２つの検出対象Ｏの移動速度を平均することによって、平均の移動速度が計算される。求められた移動速度に時間を掛けたものが移動量となる。
この移動量を使って基準座標系２０１を移動させるための設定位置を補間しても良い。
【００５０】
また、２つの検出対象Ｏの基準座標系２０１における中心位置を、２つの検出対象Ｏの検出位置として用いることも可能である。３つ以上の検出対象Ｏがある場合は、３つ以上の検出対象Ｏの重心位置がこれら検出対象Ｏの検出位置として用いられ得る。複数の検出対象Ｏの中心位置又は重心位置を用いることにより、物品１００の検出誤差の影響等を低減することが可能となる。
【００５１】
そして、作業ロボット制御部２１は、作業動作プログラム２３ｂに基づき、部品１１０のシャフト１１１ａを対象部１０１の孔１０１ａに嵌合するための制御指令の各サーボ制御器２４への送信を開始する（ステップＳ１−８）。
ここで、本実施形態の作業動作プログラム２３ｂは、基準座標系２０１において部品１１０のシャフト１１１ａの位置および姿勢を順次変更するものである。
【００５２】
基準座標系２０１の設定位置がセンサ５０の検出結果に応じて逐次調整されるこの制御では、搬送装置２によって物品１００の対象部１０１は移動しているが、基準座標系２０１からは対象部１０１は停止しているように見える。
【００５３】
このように制御されている状態において、作業ロボット制御部２１は、力制御プログラム２３ｃに基づいた力制御を開始する（ステップＳ１−９）。力制御として、周知の力制御を用いることが可能である。本実施形態では、力センサ３２によって検出される力から逃げる方向に作業ロボット１０が部品１１０を移動させる。その移動量は力センサ３２の検出値に応じて作業ロボット制御部２１が決定する。
【００５４】
例えば、ハンド３０によって把持された部品１１０のシャフト１１１ａと物品１００の孔１０１ａとが嵌合し始めた状況で、搬送装置２による搬送方向と反対方向の力が力センサ３２によって検出されると、作業ロボット１０は追随しながら搬送方向と反対方向に部品１１０を僅かに移動させて検出される力から逃げる。
【００５５】
続いて、作業ロボット制御部２１は、センサ５０に対する検出対象Ｏの位置が所定の基準を超えて変動する時に（ステップＳ１−１０）、第１の異常対応作動を行う（ステップＳ１−１１）。所定の基準を超えた変動は、画像データ内における検出対象Ｏの大きな移動、画像データ内における検出対象Ｏの所定速度よりも早い移動、検出対象Ｏの意図しないタイミングでの消失等である。電力供給が安定していない場合、モータ２ａの回転速度が急激に低下する場合もあり、モータ２ａの回転速度が大きく変動する場合もある。これらの場合に、センサ５０に対する検出対象Ｏの位置が前記所定の基準を超えて変動することになる。
なおステップＳ１−１０、Ｓ１−１１は嵌合動作（ステップＳ１−８）の開始前に行われても良い。
【００５６】
第１の異常対応作動として、作業ロボット制御部２１は、力制御の制御周期を短くする作動または感度を高める作動、嵌合の進行を停止する作動、嵌合作業を中止する作動等を行う。力制御の制御周期を短くし、または、感度を高めると、部品１１０に加わる力に対して作業ロボット１０をより敏感に移動させることが可能となる。本実施形態では、作業ロボット制御部２１は、嵌合作業を中止、退避する作動、搬送装置を停止させる、またはそれらを組み合わせた作動等を行う。
【００５７】
また、作業ロボット制御部２１は、力センサ３２の検出値が所定の基準値を超える時に（ステップＳ１−１２）、第２の異常対応作動を行う（ステップＳ１−１３）。力センサ３２の検出値が所定の基準値を超える時は、部品１１０、物品１００等に異常な力が加わっている可能性が高い。このため、作業ロボット制御部２１は、第２の異常対応作動として、作業ロボット１０を退避、停止させる作動、力センサ３２によって検出された力の方向から逃げる方向に作業ロボット１０を低速で移動させる作動、搬送装置２を停止させる作動、ハンド３０を部品１１０から離す作動、またはそれらを組み合わせた作動等を行う。本実施形態では、作業ロボット制御部２１は、作業ロボット１０と搬送装置２を停止させる作動を行う。
【００５８】
一方、作業ロボット制御部２１は、嵌合作業が完了したか否かを判断し（ステップＳ１−１４）、嵌合作業が完了している場合は、作業ロボット１０およびハンド３０に制御指令を送る（ステップＳ１−１５）。これにより、ハンド３０が部品１１０から離れ、ハンド３０が作業ロボット１０によって待機位置又は次の部品１１０がストックされている場所に移動する。
【００５９】
ステップＳ１−６によって得られる検出対象Ｏの移動速度は、２つのセンサ５０によって検出対象Ｏの位置を検出できなくなった場合でも使うことができる。例えば、作業ロボット制御部２１は、直前に検出された２つの検出対象Ｏの位置と、検出対象Ｏが見えなくなる前に計算された移動速度とを用いて、基準座標系２０１の設定位置を変更することができる。
【００６０】
なお、作業ロボット１０の先端部に加工ツールが支持され、搬送装置２によって搬送される物品１００に作業ロボット１０が所定の作業として加工を行ってもよい。この場合、加工ツールは、ドリル、フライス、ドリルタップ、バリ取り工具、その他の工具等である。この場合でも、ステップＳ１−２において加工ツールが対象部１０１に近付けられ、ステップＳ１−９において加工ツールと対象部１０１との接触に応じて力制御が行われること等により、前述と同様の効果が達成される。
【００６１】
また、他の制御装置が、ステップＳ１−５、ステップＳ１−６における物品１００の特徴形状および／又は特徴点の位置の検出等を適宜行ってもよい。
また、第２の処理において検出対象Ｏの位置の逐次検出を行う際に、第１の処理の補正データを求めることも可能である。この場合、第１の処理（ステップＳ１−４）が不要となる。
【００６２】
このように、本実施形態では、センサ５０が所定位置に配置され、センサ５０の検出データを用いて物品１００における対象部１０１の位置が逐次検出される。そして、このように逐次検出される対象部１０１の位置を用いて作業ロボット１０が制御される。このため、力制御が無い状態であっても、作業ロボット制御部２０は、作業ロボット１０に支持された部品１１０又はツールと物品１００との位置関係を認識でき、両者の接触有無を認識できる場合もある。例えば、搬送装置２による物品１００の移動量が大きく変動する搬送装置２の異常も、作業ロボット制御部２０は力制御が無い状態において認識できる。このため、力制御の制御周期を無理に短くせずに、作業ロボット１０、搬送装置２、物品１００等の破損防止を実現できるようになり、作業ロボット１０の発振の発生も抑制される。
【００６３】
ここで、作業ロボット１０の先端部、又は、作業ロボット１０と異なるロボットの先端部によってセンサ５０が支持され、ロボットがセンサ５０の位置および姿勢を搬送装置２による搬送に応じて変化させる方が、センサ５０の検出データを用いた対象部１０１の位置の検出の精度が向上するという考えもある。しかし、センサ５０をロボットの先端部によって支持すると、センサ５０の位置および姿勢が、ロボットのキャリブレーションの精度やロボットのたわみの影響やロボットの絶対精度等により、完全に正確でない場合が多い。これに対し、本実施形態では、センサ５０がスタンド５１、フレーム５２等の支持部材によって所定位置に配置されている。このため、センサ５０をロボットの先端部によって支持する場合と比較し、センサ５０の検出データを用いた対象部１０１の位置の検出の精度が向上する。
【００６４】
なお、ロボットの先端部に支持されたセンサ５０と、スタンド５１、フレーム５２等の支持部材によって所定位置に配置されたセンサ５０とを、併用することも可能である。例えば、本実施形態において、フレーム５２によって支持されているセンサ５０を作業ロボット１０と異なるロボットによって支持することができる。この場合、ロボットによって、そのセンサ５０の位置および姿勢を搬送装置２による搬送に応じて変化させることが可能である。搬送装置２によって搬送される物品１００にＸ軸方向の移動速度の変動、Ｚ軸方向の振動等が生ずる可能性がある場合、スタンド５１によって支持されたセンサ５０を用いて、対象部１０１に生ずる移動速度の変動、振動等を正確に検出することができる。つまり、スタンド５１によって支持されたセンサ５０があることにより、ロボット５０によって支持されたセンサ５０を用いた対象部１０１の位置の検出が補強される。
【００６５】
また、部品１１０又はツールと共にセンサ５０が作業ロボット１０の先端部に支持される場合、センサ５０の画角（検出範囲）が部品１１０又はツールによって遮られる場合がある。部品１１０又はツールが物品１００に接触する時に、センサ５０によって対象部１０１又はその近傍を検出できなくなる場合もある。本実施形態では、作業ロボット１０にセンサ５０が支持されていない。このため、センサ５０の検出範囲が部品１１０又はツールによって遮られる可能性が低減され、部品１１０又はツールが物品１００に接触する時のセンサによる対象部１０１又はその近傍の検出状態も改善され得る。
【００６６】
また、部品１１０又はツールと共にセンサ５０が作業ロボット１０の先端部に支持される場合、ツール又は作業ロボット１０の洗浄や修理等を行う際に、作業ロボット１０からセンサ５０を取外す必要がある。この場合、センサ５０を作業ロボット１０に再度取り付ける際に、センサ５０のキャリブレーションを行う必要がある。本実施形態では、作業ロボット１０にセンサ５０が支持されていないので、センサ５０のキャリブレーションの手間を低減又は無くすことができる。
【００６７】
また、本実施形態では、センサ５０の検出結果を用いることによって、作業ロボット制御部２０が作業ロボット１０の部品１１０又はツールを対象部１０１に追随させる。このため、作業ロボット制御部２０は、作業ロボット１０が所定の作業を行う時に、搬送装置２によって搬送される物品１００の対象部１０１に対して、作業ロボット１０に支持された部品１１０又はツールの位置および姿勢を正確に制御できる。これは、力制御の制御周期を短くせずに、または、感度を高めずに、作業ロボット１０、搬送装置２、物品１００等の破損防止を実現するために有利であり、作業ロボット１０の発振の発生を抑制するためにも有利である。
【００６８】
また、本実施形態では、対象部１０１に対して位置が変化しない検出対象Ｏをセンサ５０によって検出することによって、対象部１０１の位置が逐次検出される。このため、部品１１０やツールによって対象部１０１が覆われる場合であっても、対象部１０１の位置を逐次検出することができ、これは作業ロボット１０による作業の精度を向上するために極めて有利である。
【００６９】
また、本実施形態では、搬送装置２上の物品１００の少なくとも位置を検出する検出装置４０を備え、作業ロボット制御部２０が、検出装置４０の検出結果に基づいて、作業ロボット１０の部品１１０又はツールを対象部１０１に近付ける。なお近付ける際に、作業ロボットは前記対象部の姿勢に合わせて前記部品１１０又は前記ツールの姿勢を変えてもよい。
【００７０】
検出装置４０の検出結果に基づいてこのように作業ロボット１０が作動すると、作業の効率が向上する。この時、作業ロボット制御部２１が、作動位置検出装置２ｂの検出結果も用いて、作業ロボット１０に支持された部品１１０を対象部１０１に近付けることにより、上記制御がより正確になる。
【００７１】
また、本実施形態では、対象部１０１又は検出対象Ｏのセンサ５０から見た位置が、所定の基準を超えて変動する時に、作業ロボット制御部２０が異常対応作動を行う。
【００７２】
当該構成では、作業ロボット１０に支持された部品１１０又はツールと物品１００との位置関係が認識されている状態において、作業ロボット制御部２０がさらに、センサ５０の検出結果に基づいて異常対応作動を行う。当該構成は、作業ロボット１０、搬送装置２、物品１００等の破損防止の確実な実現を図る時に有利であり、作業ロボット１０の発振の発生を抑制するためにも有利である。
【００７３】
本実施形態では検出装置４０は光電センサであるが、検出装置４０は、搬送装置２の上方、側方、又は下方に配置された二次元カメラ、三次元カメラ、三次元距離センサ、ライン光を対象物に照射して形状を測定するセンサ等であってもよい。検出装置４０が二次元カメラである場合、作業ロボット制御部２１は、検出装置４０の検出結果である画像データに基づき、搬送装置２によって搬送される物品１００の対象部１０１の位置を認識でき、姿勢を認識できる場合もある。このため、作業ロボット制御部２１は、ステップＳ１−２において、部品１１０のシャフト１１１ａを対象部１０１の穴１０１ａにより正確に近付けることができる。
【００７４】
また、搬送装置２として、物品１００を曲線的なルートに沿って搬送する搬送装置を用いることも可能であり、物品１００を曲がりくねったルートに沿って搬送する搬送装置を用いることも可能である。これらの場合でも、作業ロボット制御部２１は、センサ５０の検出結果を用いて、作業ロボット１０によって支持された部品１１０を対象部１０１に追随させることができる。また、ステップＳ１−１０おいてセンサ５０に対する検出対象Ｏの位置が所定の基準を超えて変動する時に、ステップＳ１−１１において作業ロボット制御部２１が第１の異常対応動作を行うことができる。つまり、前記搬送装置を用いた場合でも、前述と同様の効果が達成される。
なおステップＳ１−１０、Ｓ１−１１は嵌合動作（ステップＳ１−８）の開始前に行われても良い。
【００７５】
なお、ステップＳ１−６の位置の取得は、センサ５０によって撮像された画像データに基づいて計算される。このため、センサ５０の撮像周期によって位置の取得周期が影響される。これに対し、センサ５０の撮像データに基づいて逐次得られる位置を補間することも可能である。例えば、作業ロボット制御部２１は、連続する複数の位置の検出結果を用いて位置および移動量の変動の傾向を特定する。そして、作業ロボット制御部７１は、特定された傾向に沿って、検出位置と検出位置の間に補間位置を設定することができる。
【００７６】
ステップＳ１−１１において、作業ロボット制御部２１は、第１の異常対応作動として、搬送装置２のモータ２ａの停止、搬送装置２のモータ２ａの減速等をおこなってもよい。
【００７７】
本実施形態では、作業ロボット１０の先端部に力センサ３２が取付けられている。一方、ハンド３０内部、ロボット１０内部、搬送装置２と物体１００との間、物体１００の内部等に、力センサ３２を配置することも可能である。この場合でも、力センサ３２の検出値に基づく力制御を行うことが可能であり、前述と同様の効果が達成される。
【００７８】
また、フレーム５２の代わりに、センサ５０を移動させる移動装置６１を用いてもよい。例えば、図８に示されるように、移動装置６１は、Ｘ軸方向に延びるレール６３と、レール６３に支持されたスライダ６４と、スライダ６４をレール６３に沿って移動させるサーボモータ６５およびボールねじ６５ａとを有する。この場合、移動装置６１は、前記位置ベース法の制御を行う時に、センサ５０の位置および姿勢を固定することができる。
【００７９】
なお、本実施形態では、２つのセンサ５０は、物体１００の上面および側面に設けられた検出対象Ｏをそれぞれ検出する。これに対し、物体１００の背面の検出対象Ｏを検出するセンサ５０を設けることも可能である。この場合、対象１０１の三次元的な位置姿勢を検出できる。
【００８０】
なお、本実施形態において、一方のセンサ５０の検出が何らかの原因で行われない時に、他方のセンサ５０の検出データだけを用いて前述の位置ベース法の制御が行われてもよい。また、センサ５０が搬送装置２の搬送方向に並んでおり、位置ベース法の制御に用いられるセンサ５０が順次切り替えられてもよい。
【００８１】
なお、２つのセンサ５０によってそれぞれ検出対象Ｏを検出する代わりに、両方又は何れか一方のセンサ５０によって対象部１０１を検出する場合、作業ロボット制御部２１は、周知の画像処理を適用することにより、例えば図３の画像データを用いて、２つの対象部１０１の少なくともどちらか一方の位置を特定できる。また、作業ロボット制御部２１は、図３の画像データ中の対象部１０１の特徴形状又は複数の特徴点に基づいて、対象部１０１の姿勢を特定できる。
【００８２】
また、第２の処理の一部であるステップＳ１−７において、基準座標系２０１の移動を行う代わりに、動作プログラム２３ｂの補正を行ってもよい。この場合、作業ロボット制御部２１は、基準座標系２０１上の基準位置と実際の位置（検出位置）との差に基づいて、基準座標２０１系に対して予め教示されている動作プログラム２３ｂの教示点を逐次補正する。この場合でも前述と同様の作用効果を奏する。
【符号の説明】
【００８３】
２  搬送装置
２ａ  モータ
３  ローラ
１０  作業ロボット
１０ａ  アーム
１１  サーボモータ
２０  作業ロボット制御装置
２１  作業ロボット制御部
２２  表示装置
２３  記憶部
２３ａ  システムプログラム
２３ｂ  作業動作プログラム
２３ｃ  力制御プログラム
２３ｄ  計測プログラム
３０  ハンド
３２  力センサ（力検出部）
４０  検出装置（検出部）
５０  センサ
６０  計測装置
６３  レール
６４  スライダ
６５  サーボモータ
１００  物品
１０１  対象部
１０１ａ  孔
１１０  部品
１１１  取付部
１１１ａ  シャフト
【図１】
2019188508.tif 000003
【図２】
2019188508.tif 000004
【図３】
2019188508.tif 000005
【図４】
2019188508.tif 000006
【図５】
2019188508.tif 000007
【図６】
2019188508.tif 000008
【図７】
2019188508.tif 000009
【図８】
2019188508.tif 000010