(57)【要約】【課題】可動部が急激に加減速された場合又は姿勢が変更された場合でも可動部に加わる外力を正しく検出し、当該外力に基づいて位置決め作業を行う。【解決手段】固定部１１及び可動部１２を有するアクチュエータ１と、固定部１１に対する可動部１２の位置を検出する位置検出部４と、固定部１１の加速度を検出する加速度検出部５と、検出された位置と基準位置Ｐｒとの差分に対してゲインを調整し、当該調整結果である電流指令値Ｉｒｐ及び検出された加速度に基づいてアクチュエータ１に対する駆動電流Ｉａを出力するアクチュエータ制御部６１と、電流指令値Ｉｒｐ、又は、検出された加速度及び出力された駆動電流Ｉａの電流値に基づいて可動部１２に加わる外力Ｆを検出する外力検出部６２と、検出された外力Ｆに基づいてアクチュエータ制御部６１を制御する作業制御部７とを備えた。【選択図】図１
2019093527.tif 000002
【特許請求の範囲】
【請求項１】
固定部、及び当該固定部に対して変位可能な可動部を有するアクチュエータと、
前記固定部に対する前記可動部の位置を検出する位置検出部と、
前記固定部の加速度を検出する加速度検出部と、
前記位置検出部により検出された位置と基準位置との差分に対してゲインを調整し、当該調整結果である電流指令値及び前記加速度検出部により検出された加速度に基づいて前記アクチュエータに対する駆動電流を出力するアクチュエータ制御部と、
前記アクチュエータ制御部において得られた電流指令値、又は、前記加速度検出部により検出された加速度及び前記アクチュエータ制御部により出力された駆動電流の電流値に基づいて、前記可動部に加わる外力を検出する外力検出部と、
前記外力検出部により検出された外力に基づいて前記アクチュエータ制御部を制御する作業制御部と
を備えた位置決め装置。
【請求項２】
平行な２つの面により物体を把持可能な把持部、及び、当該２つの面に対して垂直な面により当該物体を押付け可能な押付け部を有し、前記可動部に取付けられたエンドエフェクタを備え、
前記作業制御部は、
前記把持部により物体を第１の力で３次元空間における第１の軸方向で把持させる第１の位置決め制御部と、
前記第１の位置決め制御部による処理後、前記押付け部が前記把持部により把持された物体に第２の力で接触するまで、前記エンドエフェクタを３次元空間における第２の軸方向に移動させる第２の位置決め制御部と、
前記第２の位置決め制御部による処理後、前記可動部に加わる外力に基づいて前記エンドエフェクタの物体への接触力を制御しつつ、当該物体をスライドさせるように、当該エンドエフェクタを３次元空間における第３の軸方向に移動させる第３の位置決め制御部とを有する
ことを特徴とする請求項１記載の位置決め装置。
【請求項３】
物体を押付け可能な押付け部を有し、前記可動部に取付けられたエンドエフェクタを備え、
前記作業制御部は、
前記押付け部が物体に第１の力で接触するまで、前記エンドエフェクタを３次元空間における第１の軸方向に移動させる第１の位置決め制御部と、
前記第１の位置決め制御部による処理後、前記可動部に加わる外力に基づいて前記エンドエフェクタの物体への接触力を制御しつつ、当該物体をスライドさせるように、当該エンドエフェクタを３次元空間における第２の軸方向及び第３の軸方向に移動させる第２の位置決め制御部とを有する
ことを特徴とする請求項１記載の位置決め装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、位置決め作業を行う位置決め装置に関する。
【背景技術】
【０００２】
従来から、組立て、押付け又は研磨等の作業を行う作業装置では、産業用ロボット（以下、ロボットと称す）等が多く用いられている。このロボットには、アームの先端にハンド等のエンドエフェクタが取付けられており、物体（部品又はワーク）を把持することで作業を行う。
【０００３】
一方、ロボットの動作は、一般的に、位置制御によりコントロールされる。そのため、物体の寸法誤差又は把持位置誤差等により、予めプログラムされた目標位置と実際の位置とが異なる場合、物体が他の物体と接触した際に大きな外力が発生し、物体に傷又は破損が発生する恐れがある。
【０００４】
その対策として、物体の位置誤差により発生する力を吸収する冶具（いわゆる「バッファ」）を別途設置する場合がある。しかしながら、このバッファは、物体の形状又は材料毎に要求される特性が異なるため、物体の種類の数だけ異なるバッファを用意する必要があり、都度設計となる。そのため、コストが増大し、且つ装置が大型化するという課題がある。
【０００５】
それに対し、ロボットとエンドエフェクタとの間に力センサを設置し、物体の接触時に過大な外力が発生しそうになると力センサの検出結果をロボットにフィードバックし、過大な外力が発生しないようにする方法もある。この場合には、バッファが不要となる。しかしながら、力センサは高価である。
【０００６】
また、力センサを用いた場合には、以下に述べる理由により、作業時間の短縮が難しいという課題がある。
【０００７】
すなわち、物体が他の物体と接触する位置に誤差がある場合、接触時に過大な外力が発生したことを検出して停止指令を出すが、可動部が大きくて重く且つ減速機構を有するロボットは急には止まれない。
また、接触時に発生する外力は、慣性による衝撃力と接触時にロボットが発生している力との和となる。ここで、慣性による衝撃力は、物体及びロボット可動部の質量と移動速度との積に比例する。しかしながら、ロボットは大きくて重い機構を有しているため、慣性による衝撃力を小さくするためには、接触直前の移動速度を遅くする必要がある。
【０００８】
また、過大な外力が発生したことを検出して停止指令を出してもロボットは急には止まれないため、停止指令が出た時点から急激に減速しても接触位置からずれた位置で停止し、物体を押し潰してしまう。そして、位置の行き過ぎ量は移動速度に比例するため、物体を他の物体に近づける速度を遅くせざるを得ない。
【０００９】
上記の理由により、物体が他の物体と接触する可能性のある領域では、ロボットの移動速度を十分落とす必要がある。しかしながら、サイクルタイムを短くするため、物体を移送する速度は速くする必要がある。その結果、接触領域の近傍で速度を急激に落とすことになる。
【００１０】
しかしながら、エンドエフェクタは力センサの先に取付けられている。そのため、ロボットが急激に減速した場合には、エンドエフェクタの質量による影響で、力センサには負方向の加速度に比例した力が発生する。
ところが、上記加速度に比例した力と物体の接触により発生する外力とを区別することは難しく、区別するためにはロボットの減速時間を大幅に長くせざるを得ない。
【００１１】
また、力センサを用いた場合には、以下に述べる理由により、重力による影響をリアルタイムに補償し難いという課題がある。
【００１２】
すなわち、組立て、押付け又は研磨等の作業を行う場合にロボットが取りうる姿勢は常に一定ではなく、作業の状態に応じて変化させる場合が多い。例えば、曲面をトレースしながら研磨を行う作業では、姿勢を連続して変化させる必要がある。
しかしながら、上記の通り、エンドエフェクタは力センサの先に取付けられているため、ロボットの姿勢が水平ではない場合、力センサには重力加速度による影響でロボットの姿勢とエンドエフェクタの質量に応じた力が発生する。
【００１３】
一方、重力加速度の影響を補償する重力補償手段として、例えば特許文献１に開示された方法が挙げられる。この特許文献１では、予めオフラインで姿勢に応じた重力の影響により力覚センサに発生する力を学習しておく。そして、実際の作業時に発生する力から学習した力を差し引くことで、作業力を算出している。しかしながら、この方法では、物体が変わる度に学習を行う必要がある。また、学習は物体との接触前に行う必要があり、ロボットが連続して姿勢を変えるような場合には重力補償はできない。
【００１４】
なお上記では、可動部に加わる外力として、物体と他の物体とが接触した際に発生する力を示したが、これに限らず、エンドエフェクタと物体とが接触した際に発生する力についても同様である。
【先行技術文献】
【特許文献】
【００１５】
【特許文献１】特開２０１２−１１５９１２号公報
【発明の概要】
【発明が解決しようとする課題】
【００１６】
上記の通り、ロボットと力センサを用いて組立て等の作業を行う場合、作業時間が長くなる。一方、作業時間を短くしようとすると物体を傷付け、押し潰し、接触を正しく検出できなくなる。また、重力補償をリアルタイムで行うことも難しい。このように、力センサを用いた場合には、ロボットが急激に加減速した場合又は姿勢が変更した場合に、外力を正しく検出できないという課題がある。この課題は、部品等の位置決め作業を行う位置決め装置においても同様であり、改善が求められている。
【００１７】
この発明は、上記のような課題を解決するためになされたもので、可動部が急激に加減速された場合又は姿勢が変更された場合でも可動部に加わる外力を正しく検出でき、当該外力に基づいて位置決め作業を行うことができる位置決め装置を提供することを目的としている。
【課題を解決するための手段】
【００１８】
この発明に係る位置決め装置は、固定部、及び当該固定部に対して変位可能な可動部を有するアクチュエータと、固定部に対する可動部の位置を検出する位置検出部と、固定部の加速度を検出する加速度検出部と、位置検出部により検出された位置と基準位置との差分に対してゲインを調整し、当該調整結果である電流指令値及び加速度検出部により検出された加速度に基づいてアクチュエータに対する駆動電流を出力するアクチュエータ制御部と、アクチュエータ制御部において得られた電流指令値、又は、加速度検出部により検出された加速度及びアクチュエータ制御部により出力された駆動電流の電流値に基づいて、可動部に加わる外力を検出する外力検出部と、外力検出部により検出された外力に基づいてアクチュエータ制御部を制御する作業制御部とを備えたことを特徴とする。
【発明の効果】
【００１９】
この発明によれば、上記のように構成したので、可動部が急激に加減速された場合又は姿勢が変更された場合でも可動部に加わる外力を正しく検出でき、当該外力に基づいて位置決め作業を行うことができる。
【図面の簡単な説明】
【００２０】
【図１】この発明の実施の形態１に係る位置決め装置の構成例を示す図である。
【図２】この発明の実施の形態１におけるエンドエフェクタの構成例を示す図である。
【図３】この発明の実施の形態１における外力検出制御部の構成例を示す図である。
【図４】この発明の実施の形態１におけるゲイン調整部の構成例を示す図である。
【図５】この発明の実施の形態１における作業制御部の構成例を示す図である。
【図６】この発明の実施の形態１に係る位置決め装置で用いるコネクタの構成例を示す図である。
【図７】この発明の実施の形態１に係る位置決め装置によるコネクタの位置決め作業の一例を示すフローチャートである。
【図８】図８Ａ〜図８Ｃは、この発明の実施の形態１に係る位置決め装置によるコネクタの位置決め作業の一例を示す図である。
【発明を実施するための形態】
【００２１】
以下、この発明の実施の形態について図面を参照しながら詳細に説明する。
実施の形態１．
図１はこの発明の実施の形態１に係る位置決め装置の構成例を示す図である。
位置決め装置は、物体５０を位置決めする位置決め作業を行う装置である。この位置決め装置は、図１に示すように、アクチュエータ１、エンドエフェクタ２、移動部３、位置検出部４、加速度検出部５、外力検出制御部６及び作業制御部７を備えている。また、外力検出制御部６は、アクチュエータ制御部６１及び外力検出部６２から構成される。
【００２２】
アクチュエータ１は、固定部１１、及び当該固定部１１に対して変位可能な可動部１２を有し、磁界に置かれたコイルに電流が供給されることで固定部１１に対して可動部１２を直動方向又は回転方向に変位可能とする。このアクチュエータ１は、移動部３に取付けられており、全体が移送され、また、姿勢が変更される。なお、可動部１２又はエンドエフェクタ２が複数方向の自由度を持ち、アクチュエータ１全体の移送及び姿勢の変更が不要である場合、移動部３はなくてもよい。以下では、移動部３を使用する場合を記述する。
【００２３】
エンドエフェクタ２は、可動部１２に取付けられ、物体５０を３次元空間における少なくとも１つの軸方向に対して位置決め可能な機構である。図１，２では、エンドエフェクタ２として、物体５０を把持可能であり、物体５０を３次元空間における２つの軸方向に対して位置決め可能なグリッパ（ハンド）が用いられている。このエンドエフェクタ２は、平行（略平行の意味を含む）な２つの面により物体５０を把持可能な把持部２１、及び、当該２つの面に対して垂直（略垂直の意味を含む）な面により当該物体５０を押付け可能な押付け部２２を有している。
【００２４】
また、エンドエフェクタ２は、把持部２１により物体５０の把持を行う場合に、把持部２１に加わる外力を検知し、当該外力に基づいて把持部２１による把持力を制御する機能を有している。具体的には、エンドエフェクタ２は、把持部２１を駆動するモータに供給される電流値から把持部２１に加わる外力を検知する。
【００２５】
移動部３は、アクチュエータ１を移動（移送及び姿勢変更）する。図１では、移動部３として、先端にアクチュエータ１（固定部１１）が取付けられ、アクチュエータ１を移動可能なロボットを示している。
【００２６】
位置検出部４は、アクチュエータ１に設けられ、固定部１１に対する可動部１２の位置（相対位置）を検出する。この位置検出部４により検出された位置を示す信号（位置信号）は、アクチュエータ制御部６１に出力される。
【００２７】
加速度検出部５は、固定部１１に設けられ、固定部１１の加速度を検出する。この際、加速度検出部５は、固定部１１の重力加速度αｇ及び移動加速度α１のうちの一方、又は両方が加算された加速度（αｇ＋α１）を検出する。図３では、加速度検出部５が加速度（αｇ＋α１）を検出する場合を示している。この加速度検出部５により検出された加速度を示す信号（加速度信号）は、アクチュエータ制御部６１に出力される。
【００２８】
アクチュエータ制御部６１は、位置検出部４により検出された位置と基準位置Ｐｒとの差分に対してゲイン（ループゲイン）を調整し、当該調整結果である電流指令値Ｉｒｐ及び加速度検出部５により検出された加速度に基づいてアクチュエータ１に対する駆動電流Ｉａを出力する。
【００２９】
外力検出部６２は、アクチュエータ制御部６１において得られた電流指令値Ｉｒｐ、又は、加速度検出部５により検出された加速度及びアクチュエータ制御部６１により出力された駆動電流Ｉａの電流値に基づいて、可動部１２に加わる外力（反力）Ｆを検出する。
アクチュエータ制御部６１及び外力検出部６２の構成例については後述する。
【００３０】
作業制御部７は、位置決め装置による位置決め作業を実現する。この際、作業制御部７は、外力検出部６２により検出された外力Ｆに基づいて、アクチュエータ制御部６１、エンドエフェクタ２及び移動部３を制御することで、位置決め作業を実現する。なお、作業制御部７は、基準位置Ｐｒ又はゲインの変更を行うことでアクチュエータ制御部６１を制御する。また、作業制御部７は、外力検出部６２により検出された外力Ｆに加え、位置検出部４により検出された位置、加速度検出部５により検出された加速度、及び作業制御部７で管理している時間等も考慮して、上記位置決め作業を実現してもよい。この作業制御部７の構成例については後述する。
【００３１】
次に、外力検出制御部６の構成例について、図３を参照しながら説明する。なお図３では、アクチュエータ１、エンドエフェクタ２、位置検出部４及び加速度検出部５も図示している。
外力検出制御部６は、図３に示すように、位置速度変換部６３、減算器６４、ゲイン調整部６５、質量推定部６６、加速度補償部６７、加減算器６８、定電流制御部６９、及び外力検出部６２を有している。なお図３に示す外力検出制御部６において、外力検出部６２を除く機能部（位置速度変換部６３、減算器６４、ゲイン調整部６５、質量推定部６６、加速度補償部６７、加減算器６８及び定電流制御部６９）は、アクチュエータ制御部６１を構成する。
【００３２】
位置速度変換部６３は、位置検出部４により検出された位置を微分して速度に変換する。この速度は、固定部１１に対する可動部１２の速度（相対速度）を示す。この位置速度変換部６３により変換された速度を示す信号（速度信号）は、加減算器６８に出力される。
【００３３】
減算器６４は、基準位置Ｐｒから位置検出部４により検出された位置を減算する。この減算器６４による減算結果を示す信号は、ゲイン調整部６５に出力される。
【００３４】
ゲイン調整部６５は、減算器６４による減算結果（位置偏差）に対してゲインを調整し、電流指令値Ｉｒｐを出力する。ゲインは、アクチュエータ１におけるコンプライアンスの値であり、コンプライアンスは、バネ定数の逆数であり、固さ柔らかさを示す指標である。また、ゲイン調整部６５において、上記位置偏差と電流指令値Ｉｒｐとの関係を示す関数は線形でもよいし非線形でもよい。このゲイン調整部６５は、図３，４に示すように、ループゲイン測定部６５１、ゲイン交点制御部６５２及び可変ゲイン調整部６５３を有している。
【００３５】
ループゲイン測定部６５１は、減算器６４から出力された信号のゲインを測定する。この際、ループゲイン測定部６５１は、図４に示すように、減算器６４から出力された信号に、発振器６５４によりゲインが１倍（０ｄＢ）となるべき基準となる周波数、すなわちゲイン交点に設定された基準となる周波数の正弦波を、加算器６５５を介して加算する。このループゲイン測定部６５１による正弦波の加算前後の信号は、ゲイン交点制御部６５２に出力される。
【００３６】
ゲイン交点制御部６５２は、図４に示すように、比較器６５６によりループゲイン測定部６５１による正弦波の加算前後の信号での振幅比を比較する。このゲイン交点制御部６５２による比較結果を示す信号は、可変ゲイン調整部６５３に出力される。
【００３７】
可変ゲイン調整部６５３は、ゲイン交点制御部６５２により比較された振幅比の倍率が１となるように、当該振幅比の倍率の逆数を調整値とし、減算器６４から出力された信号のゲインを調整する。すなわち、可変ゲイン調整部６５３は、ループゲイン測定部６５１による正弦波の加算前の信号の振幅レベルＥａに対して当該正弦波の加算後の信号の振幅レベルＥｂが高い場合（Ｅａ＜Ｅｂ）には調整値を大きくし、当該正弦波の加算前の信号の振幅レベルＥａに対して当該正弦波の加算後の信号の振幅レベルＥｂが低い場合（Ｅａ＞Ｅｂ）には調整値を小さくすることで、ゲインが１倍となるように調整する。この可変ゲイン調整部６５３によりゲインが調整された信号は、加減算器６８に電流指令値Ｉｒｐとして出力される。また、可変ゲイン調整部６５３によるゲインの調整値を示す信号は、質量推定部６６に出力される。
【００３８】
なお、発振器６５４でゲインが１倍となるべき基準となる周波数の正弦波を加算するのは、ゲインが１倍となる周波数においてＥａ／Ｅｂ＝１となるため、Ｅａ／Ｅｂ＝１となるようにゲインを調整することで、ゲイン交点を常に１に維持できるためである。
【００３９】
また、減算器６４及びゲイン調整部６５は、位置検出部４により検出された位置と基準位置Ｐｒとの差分に基づく電流指令値Ｉｒｐを出力する位置制御手段（位相制御ループ）を構成する。
【００４０】
質量推定部６６は、可変ゲイン調整部６５３によるゲインの調整値から、可動部１２側の質量を推定する。すなわち、質量推定部６６は、ゲインの調整値の変化と質量の変化とが比例する原理を利用する。ここで、可動部１２側の質量とは、エンドエフェクタ２が物体５０を保持していない場合には、可動部１２の質量Ｍ１とエンドエフェクタ２の質量Ｍ２とが加算された質量（Ｍ１＋Ｍ２）であり、エンドエフェクタ２が物体５０を保持している場合には、可動部１２の質量Ｍ１とエンドエフェクタ２の質量Ｍ２と物体５０の質量Ｍ３とが加算された質量（Ｍ１＋Ｍ２＋Ｍ３）である。なお図３では、質量推定部６６が、可動部１２の質量Ｍ１とエンドエフェクタ２の質量Ｍ２とが加算された質量（Ｍ１＋Ｍ２）を推定する場合を示している。
例えば、可動部１２側の質量が規定値の２倍になったとすると、ゲインはその逆数倍の１／２となっており、Ｅａ／Ｅｂ＝１／２となる。これに対して、ゲインを１倍とするため、可変ゲイン調整部６５３は２倍の調整値でゲインを調整する。そして、質量推定部６６は、この可変ゲイン調整部６５３の調整値から、可動部１２側の質量が規定値の２倍に変化したと推定できる。
この質量推定部６６により推定された質量を示す信号は、加速度補償部６７に出力される。
【００４１】
なお上記では、質量推定部６６により可動部１２側の質量を推定する場合を示したが、これに限らず、他の方法を用いて可動部１２側の質量を取得してもよい。
【００４２】
加速度補償部６７は、外乱トルクを補正するための加速度補償値Ｉｒｃを出力する。この加速度補償部６７は、乗算器６７１及び係数乗算部６７２を有している。
【００４３】
乗算器６７１は、加速度検出部５により検出された加速度と、質量推定部６６により推定された質量とを乗算する。この乗算器６７１による乗算結果を示す信号は、係数乗算部６７２及び外力検出部６２に出力される。
【００４４】
係数乗算部６７２は、乗算器６７１による乗算結果に係数（１／Ｋｔ）を乗算する。なお、Ｋｔは、アクチュエータ１が発生する推力と駆動電流Ｉａとの比を表したトルク定数である。この係数乗算部６７２による乗算結果を示す信号は、加減算器６８に加速度補償値Ｉｒｃとして出力される。
【００４５】
加減算器６８は、ゲイン調整部６５から出力された電流指令値Ｉｒｐに対し、加速度補償部６７から出力された加速度補償値Ｉｒｃを加算し、位置速度変換部６３から出力された速度信号を減算する。この加減算器６８による加減算結果を示す信号は、定電流制御部６９に電流指令値Ｉｒとして出力される。
【００４６】
定電流制御部６９は、アクチュエータ１を駆動する駆動電流Ｉａを電流指令値Ｉｒに一致させるように制御する。この定電流制御部６９は、減算器６９１、駆動ドライバ６９２及び電流検出部６９３を有している。
【００４７】
減算器６９１は、加減算器６８から出力された電流指令値Ｉｒから、電流検出部６９３により検出された駆動電流Ｉａの電流値を減算する。この減算器６９１による減算結果を示す信号は、駆動ドライバ６９２に出力される。
【００４８】
駆動ドライバ６９２は、減算器６９１による減算結果に応じた駆動電流Ｉａを発生する。この駆動ドライバ６９２により発生された駆動電流Ｉａは、電流検出部６９３を介してアクチュエータ１に出力される。
【００４９】
電流検出部６９３は、駆動ドライバ６９２により発生された駆動電流Ｉａの電流値を検出する。この電流検出部６９３により検出された電流値を示す信号は、減算器６９１に出力される。
【００５０】
外力検出部６２は、アクチュエータ制御部６１において得られた電流指令値Ｉｒｐ、又は、加速度検出部５により検出された加速度及びアクチュエータ制御部６１により出力された駆動電流Ｉａの電流値に基づいて、可動部１２に加わる外力Ｆを検出する。具体的には、外力検出部６２は、電流指令値Ｉｒｐ、又は、駆動電流Ｉａの電流値から加速度補償値Ｉｒｃを減算した結果に基づいて、可動部１２に加わる外力Ｆを検出する。なお、可動部１２に加わる外力Ｆとしては、エンドエフェクタ２が物体５０と接触した際に発生する力、及び、エンドエフェクタ２により保持された物体５０が他の物体と接触した際に発生する力が挙げられる。また図３では、外力検出部６２が、加速度検出部５により検出された加速度及びアクチュエータ制御部６１により出力された駆動電流Ｉａの電流値に基づいて可動部１２に加わる外力Ｆを検出する場合を示している。図３に示す外力検出部６２は、係数乗算部６２１、減算器６２２及び係数乗算部６２３を有している。
【００５１】
係数乗算部６２１は、加速度補償部６７の乗算器６７１による乗算結果に係数（１／Ｋｔ）を乗算する。この係数乗算部６２１による乗算結果を示す信号は、減算器６２２に出力される。
【００５２】
減算器６２２は、定電流制御部６９により発生された駆動電流Ｉａの電流値から、係数乗算部６２１による乗算結果を減算する。この減算器６２２による減算結果を示す信号は、係数乗算部６２３に出力される。
【００５３】
係数乗算部６２３は、減算器６２２による減算結果に係数（Ｋｔ）を乗算することで、外力Ｆを得る。この係数乗算部６２３により得られた外力Ｆを示す信号は、作業制御部７に出力される。
【００５４】
なお、外力検出部６２が、アクチュエータ制御部６１において得られた電流指令値Ｉｒｐに基づいて可動部１２に加わる外力Ｆを検出する場合には、係数乗算部を有する。この係数乗算部は、ゲイン調整部６５から出力された電流指令値Ｉｒｐに係数（Ｋｔ）を乗算することで、外力Ｆを得る。そして、この係数乗算部により得られた外力Ｆを示す信号は、作業制御部７に出力される。
【００５５】
次に、作業制御部７の構成例について、図５を参照しながら説明する。
作業制御部７は、図５に示すように、第１の位置決め制御部７１、第２の位置決め制御部７２及び第３の位置決め制御部７３を有している。
【００５６】
第１の位置決め制御部７１は、把持部２１により物体５０を力（第１の力）Ｆ１で３次元空間における第１の軸方向で把持させる。力Ｆ１は、物体５０を第１の軸方向に対して位置決め可能な力であり、エンドエフェクタ２及び物体５０を破損しない程度に十分に弱い力である。
【００５７】
第２の位置決め制御部７２は、第１の位置決め制御部７１による処理後、押付け部２２が把持部２１により把持された物体５０に力（第２の力）Ｆ２で接触するまで、エンドエフェクタ２を３次元空間における第２の軸方向に移動させる。力Ｆ２は、物体５０を第２の軸方向に対して位置決め可能な力であり、エンドエフェクタ２及び物体５０を破損しない程度に十分に弱い力である。
【００５８】
第３の位置決め制御部７３は、第２の位置決め制御部７２による処理後、可動部１２に加わる外力Ｆに基づいてエンドエフェクタ２の物体５０への接触力を制御しつつ、当該物体５０をスライドさせるように、当該エンドエフェクタ２を３次元空間における第３の軸方向に移動させる。この際、第３の位置決め制御部７３は、物体５０をスライド可能な力（把持部２１の把持力及び押付け部２２の押付け力）を維持するように制御を行う。
【００５９】
次に、外力検出制御部６の動作原理について説明する。なお以下では、アクチュエータ１として、発生した推力がエンドエフェクタ２に直接伝わるダイレクトドライブ形式のリニアアクチュエータを用い、固定部１１に対して可動部１２を直動させるものとする。このアクチュエータ１は、定電流制御部６９が電流指令値Ｉｒに応じて発生した駆動電流Ｉａにより駆動する。
【００６０】
一方、位置検出部４は、固定部１１に対する可動部１２の直動方向における位置を検出する。
また、位置速度変換部６３は、位置検出部４により検出された位置を微分して速度に変換する。この速度は、固定部１１に対する可動部１２の速度を示す。
【００６１】
また、加速度検出部５は、固定部１１の直動方向における加速度を検出する。以下では、加速度検出部５は、固定部１１の直動方向成分における移動加速度α１と、固定部１１の直動方向成分における重力加速度αｇとが加算された加速度（α１＋αｇ）を検出するものとする。
【００６２】
また、位置検出部４により検出された位置は、減算器６４で基準位置Ｐｒと比較され、その差分がゲイン調整部６５を介して電流指令値Ｉｒを構成する要素の一つである電流指令値Ｉｒｐとして加減算器６８に与えられる。
【００６３】
電流指令値Ｉｒは、電流指令値Ｉｒｐの他、外乱トルクを補正するための加速度補償値Ｉｒｃで構成され、次式（１）で表される。
Ｉｒ＝Ｉｒｐ＋Ｉｒｃ                                  （１）
【００６４】
なお、位置を単純にフィードバックすると制御系が不安定となる。そのため、実際には、位置速度変換部６３からの速度信号をマイナーループとして加減算器６８のマイナス出力に加えて安定化を行っているが、以下では省略する。
【００６５】
また、ゲイン調整部６５では、位置制御ループのゲインを変えることで、アクチュエータ１におけるコンプライアンスの値を変化させることができる。
【００６６】
ここで、駆動電流Ｉａに着目すると、外乱トルクがない場合には電流値は零になるが、外乱トルクがある場合にはそれに比例して電流値も変化する。
一般的な外乱トルクとしては、作業時にエンドエフェクタ２から受ける反力Ｆ、重力加速度αｇ及び移動加速度α１により発生する力、減速器のロストルク等が考えられる。ここで、アクチュエータ１はダイレクトドライブ形式のリニアアクチュエータであるため、減速器は持たず、ロストルクは考慮する必要は少ない。したがって、駆動電流Ｉａは、作業時にエンドエフェクタ２から受ける反力Ｆ、重力加速度αｇ及び移動加速度α１により発生する力に比例した値となる。なお以下では、反力Ｆは、エンドエフェクタ２が物体５０に接触した際に発生する力であるとする。
【００６７】
ここで、アクチュエータ１の駆動電流Ｉａ、作業時にエンドエフェクタ２から受ける反力Ｆ、固定部１１の直動方向成分における移動加速度α１、固定部１１の直動方向成分における重力加速度αｇ、可動部１２の質量Ｍ１、及び、エンドエフェクタ２の質量Ｍ２から、次式（２）の関係が成り立つ。
Ｆ＋（α１＋αｇ）・（Ｍ１＋Ｍ２）＝Ｋｔ・Ｉｒ＝Ｋｔ・（Ｉｒｐ＋Ｉｒｃ）
（２）
なお、Ｋｔはアクチュエータ１が発生する推力と駆動電流Ｉａとの比を表したトルク定数である。
【００６８】
また、式（２）において外乱トルクを補正するための加速度補償値Ｉｒｃを次式（３）のように設定する。
（α１＋αｇ）・（Ｍ１＋Ｍ２）＝Ｋｔ・Ｉｒｃ      （３）
【００６９】
式（３）のように加速度補償値Ｉｒｃを設定した場合、式（２）からα１，αｇ，Ｍ１，Ｍ２の項が消え、次式（４）のように整理される。
Ｆ＝Ｋｔ・Ｉｒｐ                                        （４）
【００７０】
このように、外乱トルクを補正するための加速度補償値Ｉｒｃを式（３）のように設定すると、作業時にエンドエフェクタ２から受ける反力Ｆと電流指令値Ｉｒｐは、比例関係になることがわかる。
【００７１】
これは、作業時にエンドエフェクタ２から受ける反力Ｆが零、つまりエンドエフェクタ２が物体５０と接触していない場合、基準位置Ｐｒと実際の位置の差分に基づく電流指令値Ｉｒｐも零、つまり位置が変位しないことを意味している。
そして、エンドエフェクタ２が物体５０と接触した際に生じる反力Ｆは、電流指令値Ｉｒｐを監視することで知ることができる。
【００７２】
そして、式（４）には、固定部１１の直動方向成分における移動加速度α１、固定部１１の直動方向成分における重力加速度αｇ、可動部１２の質量Ｍ１、エンドエフェクタ２の質量Ｍ２の項目が含まれていない。
つまり、ロボットが急激に移動又は停止を行い移動加速度α１が発生した場合、及び、ロボットが連続して姿勢を変更し重力加速度αｇが変化した場合でも、アクチュエータ１の可動部１２はゆれることなく反力Ｆを正しく検出できる。
そして、コンプライアンスの値も自由に設定できる。
【００７３】
なお、上述したように、エンドエフェクタ２が物体５０と急激に衝突する等して発生する反力Ｆは、電流指令値Ｉｒｐを監視することで知ることができる。また、アクチュエータ１には、反力Ｆと拮抗するように誘導電流が発生するため、駆動電流Ｉａから反力Ｆを検出することもできる。
しかしながら、位置制御ループにおいて、反力Ｆに対する電流指令値Ｉｒｐの応答は一般的に速くない。一方、反力Ｆに対する駆動電流Ｉａの応答は、可動部１２が移動することにより発生する誘導電流によるものであるため、比較的速い。そこで、電流指令値Ｉｒｐを直接監視するのではなく、駆動電流Ｉａを監視することで反力Ｆの検出を行う。
【００７４】
ここで、式（２）は以下の通りである。
Ｆ＋（α１＋αｇ）・（Ｍ１＋Ｍ２）＝Ｋｔ・Ｉｒ＝Ｋｔ・（Ｉｒｐ＋Ｉｒｃ）
（２）
【００７５】
一方、駆動電流Ｉａは次式（５）で表せる。
Ｉａ＝Ｉｒ＝Ｉｒｐ＋Ｉｒｃ                              （５）
【００７６】
よって、式（２），（５）から下式（６）が得られる。
Ｆ＋（α１＋αｇ）・（Ｍ１＋Ｍ２）＝Ｋｔ・Ｉａ      （６）
【００７７】
そして、式（６）の両辺から、式（３）の左辺である（（α１＋αｇ）・（Ｍ１＋Ｍ２））を減算して整理すると、下式（７）が得られる。
Ｆ＝Ｋｔ・（Ｉａ−（α１＋αｇ）・（Ｍ１＋Ｍ２）／Ｋｔ）      （７）
【００７８】
この式（７）に示されるように、駆動電流Ｉａから加速度補償値（α１＋αｇ）・（Ｍ１＋Ｍ２）／Ｋｔを差し引いてトルク定数Ｋｔをかけることで、反力Ｆを求めることができる。
【００７９】
次に、外力検出制御部６による効果について説明する。
ロボットの動作は、一般的に、位置制御によりコントロールされる。そのため、物体５０の寸法誤差又は把持位置誤差等により、予めプログラムされた目標位置と実際の位置が異なる場合、エンドエフェクタ２が物体５０と接触した際に大きな外力Ｆが発生し、物体５０に傷又は破損が発生する恐れがある。
【００８０】
その対策として、ロボットとエンドエフェクタ２との間に力センサを設置し、エンドエフェクタ２と物体５０との接触時に過大な外力Ｆが発生しそうになると力センサの検出結果をロボットにフィードバックし、過大な外力Ｆが発生しないようにする方法が考えられる。
【００８１】
しかしながら、過大な外力Ｆが発生したことを検出して停止指令を出してもロボットは急には止まれないため、停止指令が出た時点から急激に減速しても接触位置からずれた位置で停止してしまい、物体５０を押し潰してしまう。そして、位置の行き過ぎ量は移動速度に比例するため、エンドエフェクタ２を物体５０に近付ける速度を遅くせざるを得ない。
【００８２】
上記の理由により、エンドエフェクタ２が物体５０と接触する可能性のある領域では、ロボットの移動速度を十分落とす必要がある。しかしながら、サイクルタイムを短くするため、エンドエフェクタ２を移動する速度は速くする必要がある。その結果、接触領域の近傍で速度を急激に落とすことになる。
【００８３】
一方、実施の形態１では、ロボット（移動部３）の先端にアクチュエータ１を取付け、また、外力検出制御部６は、アクチュエータ１が急激に移動又は停止されて移動加速度α１が発生した場合、及び、アクチュエータ１の姿勢が変更されて重力加速度αｇが変化した場合でも、可動部１２に加わる反力Ｆを正しく検出でき、また、コンプライアンス値を任意に変えられる。そのため、ロボットが急に止まれない点は同じだが、位置の行き過ぎにより物体５０を押し潰してしまうことはない。よって、エンドエフェクタ２を物体５０に近づける速度を極端に遅くする必要がなく、また、安全に作業できる。
【００８４】
また、ロボットとエンドエフェクタ２との間に力センサを設置した場合、ロボットが急激に減速すると、エンドエフェクタ２の質量Ｍ２による影響で、力センサには負方向の加速度に比例した力が発生する。
ところが、上記加速度に比例した力とエンドエフェクタ２の物体５０との接触により発生する外力Ｆとを区別することは難しく、区別するためにはロボットの減速時間を大幅に長くせざるを得ない。
【００８５】
一方、外力検出制御部６では、アクチュエータ１が急激に加減速された場合でも正しく外力Ｆを検出でき、接触時にのみ外力Ｆを検出するため、アクチュエータ１の減速時間を長くする必要はない。
【００８６】
また、力センサを用いた場合には、重力による影響をリアルタイムに補償し難いという課題もある。
すなわち、位置決め作業を行う場合にロボットが取りうる姿勢は常に一定ではなく、作業の状態に応じて変化させる場合が多い。
しかしながら、ロボットとエンドエフェクタ２との間に力センサを設置した場合には、ロボットの姿勢が水平ではないと、力センサには重力加速度αｇによる影響でロボットの姿勢とエンドエフェクタ２の質量Ｍ２に応じた力が発生する。
【００８７】
一方、外力検出制御部６では、アクチュエータ１の姿勢が変更されて重力加速度αｇが変化した場合でも外力Ｆを正しく検出できるため、重力による影響をリアルタイムに補償できる。
【００８８】
次に、作業制御部７の動作例について、図６〜８を参照しながら説明する。以下では、位置決め装置が、コネクタ５１の位置決め作業を行う場合を示す。
なお、図６に示すように、コネクタ５１は、相手側のコネクタが接続されるコネクタ接続部５１１、及び、ケーブルが接続されるケーブル接続部５１２を有している。図６では、コネクタ接続部５１１及びケーブル接続部５１２は矩形状に構成されている。
そして、図８Ａに示すように、このコネクタ５１は、ケーブル接続部５１２が冶具５２の開口部５２１に収容されている。なおこの状態では、コネクタ５１の位置決めはされていない。冶具５２は、位置決め装置とともにコネクタ５１の位置決めを行うための部材である。冶具５２は、図８に示すように、開口部５２１が形成される面５２２が水平（略水平の意味を含む）に構成されている。また、開口部５２１は、ケーブル接続部５１２及びコネクタ接続部５１１を収納可能とする大きさに構成されている。コネクタ５１の傾きを規制する際には開口部５２１の大きさによって規制してもよい。また、開口部５２１の深さは、コネクタ５１を位置決めする工程を通して、把持部２１と冶具５２が干渉しない範囲とする。また、冶具５２には、ケーブル接続部５１２が開口部５２１に収納された状態において、コネクタ接続部５１１の側面のうちの一面が当接可能な壁部５２３が設けられている。また、コネクタ５１のケーブル接続部５１２の底面及び冶具５２の開口部５２１の底面は表面が滑らかに構成され、コネクタ５１を冶具５２に対してスライド可能に構成されている。
【００８９】
そして、作業制御部７は、外力検出制御部６により検出された外力Ｆ等に基づいて、アクチュエータ制御部６１、エンドエフェクタ２及び移動部３を制御することで、上記位置決め作業を行う。なお、作業制御部７は、基準位置Ｐｒ又はゲインの変更を行うことでアクチュエータ制御部６１を制御する。ここで、ゲイン調整部６５は位置偏差に基づいて電流指令値Ｉｒｐを出力しているが、上記ゲインの変更とは、上記位置偏差と電流指令値Ｉｒｐとの関係の変更を意味している。また、上記関係の変更には、線形又は非線形の傾きの変更も含まれる。
【００９０】
位置決め装置によるコネクタ５１の位置決め作業では、まず、図７、図８Ａに示すように、第１の位置決め制御部７１は、把持部２１によりコネクタ５１を力Ｆ１で３次元空間における第１の軸方向（図８ではＹ軸方向）で把持させる（ステップＳＴ１）。力Ｆ１は、コネクタ５１を第１の軸方向に対して位置決め可能な力であり、エンドエフェクタ２及びコネクタ５１を破損しない程度に十分に弱い力である。このように、エンドエフェクタ２の把持部２１によりコネクタ５１を左右から挟み込むことで、コネクタ５１が冶具５２の開口部５２１に斜めに収容されていたとしても、３次元空間における第１の軸方向に対する位置決めを行うことができる。
【００９１】
次いで、図７、図８Ｂに示すように、第２の位置決め制御部７２は、押付け部２２が把持部２１により把持されたコネクタ５１に力Ｆ２で接触するまで、エンドエフェクタ２を３次元空間における第２の軸方向（図８ではＺ軸方向）に移動させる（ステップＳＴ２）。力Ｆ２は、コネクタ５１を第２の軸方向に対して位置決め可能な力であり、エンドエフェクタ２及びコネクタ５１を破損しない程度に十分に弱い力である。このように、押付け部２２によりコネクタ５１を第２の軸方向に押すことで、コネクタ接続部５１１が押付け部２２と冶具５２の面５２２との間で挟み込まれ、３次元空間における第２の軸方向に対する位置決めを行うことができる。またこの際、アクチュエータ１は微小な力でコネクタ５１の押付けを行うため、エンドエフェクタ２及びコネクタ５１の破損を回避できる。
【００９２】
次いで、図７、図８Ｃに示すように、第３の位置決め制御部７３は、外力Ｆに基づいてエンドエフェクタ２のコネクタ５１への接触力を制御しつつ、当該コネクタ５１をスライドさせるように、当該エンドエフェクタ２を３次元空間における第３の軸方向（図８ではＸ軸方向）に移動させる（ステップＳＴ３）。この際、把持部２１による把持力及び押付け部２２による押下力は微小な力であるため、この力を維持するように制御することで、エンドエフェクタ２をコネクタ５１に接触させたままコネクタ５１を冶具５２に対してずらす（滑らせる）ことが可能である。これにより、コネクタ接続部５１１の側面が冶具５２の壁部５２３に当接し、３次元空間における第３の軸方向に対する位置決めを行うことができる。
【００９３】
以上の動作により、コネクタ５１又はアクチュエータ１を壊さず、且つ作業速度を落とさずに、コネクタ５１に対する位置決め作業が実施できる。また、位置決め装置によりコネクタ５１の把持、押付け及びスライドを行うことで、冶具５２の構成を簡易化することが可能となる。
また図８に示すエンドエフェクタ２では、コネクタ５１の位置決めが完了した後、把持しているコネクタ５１をそのままピックアップすることが可能であり、次の作業へ移行することができる。
【００９４】
なお上記では、エンドエフェクタ２として、物体５０を３次元空間における２つの軸方向に対して位置決め可能な機構を用いた場合を示した。しかしながら、これに限らず、エンドエフェクタ２として、物体５０を３次元空間における１つの軸方向に対して位置決め可能な機構を用いてもよい。この場合、エンドエフェクタ２は、物体５０を押付け可能な押付け部２２ｂを有している。
またこの場合、冶具５２には、上記壁部５２３に加え、当該壁部５２３に対して垂直（略垂直の意味を含む）であり、ケーブル接続部５１２が開口部５２１に収納された状態において、コネクタ接続部５１１の側面のうちの他の一面が当接可能な第２の壁部５２４が設けられている。
【００９５】
またこの場合、作業制御部７は、第１の位置決め制御部７１ｂ及び第２の位置決め制御部７２ｂを有する。
第１の位置決め制御部７１ｂは、押付け部２２ｂが物体５０に力（第１の力）Ｆ１’で接触するまで、エンドエフェクタ２を３次元空間における第１の軸方向に移動させる。力Ｆ１’は、物体５０を第１の軸方向に対して位置決め可能な力であり、エンドエフェクタ２及び物体５０を破損しない程度に十分に弱い力である。
第２の位置決め制御部７２ｂは、第１の位置決め制御部７１ｂによる処理後、可動部１２に加わる外力Ｆに基づいてエンドエフェクタ２の物体５０への接触力を制御しつつ、当該物体５０をスライドさせるように、当該エンドエフェクタ２を３次元空間における第２の軸方向及び第３の軸方向に移動させる。この際、第２の位置決め制御部７２ｂは、物体５０をスライド可能な力（押付け部２２ｂの押付け力）を維持するように制御を行う。
【００９６】
この構成を用いてコネクタ５１の位置決めを行う場合、まず、第１の位置決め制御部７１ｂは、押付け部２２ｂがコネクタ５１に力Ｆ１’で接触するまで、エンドエフェクタ２を３次元空間における第１の軸方向（例えばＺ軸方向）に移動させる。力Ｆ１’は、コネクタ５１を第１の軸方向に対して位置決め可能な力であり、エンドエフェクタ２及びコネクタ５１を破損しない程度に十分に弱い力である。このように、押付け部２２ｂによりコネクタ５１を第１の軸方向に押すことで、コネクタ接続部５１１が押付け部２２ｂと冶具５２の面５２２との間で挟み込まれ、３次元空間における第１の軸方向に対する位置決めを行うことができる。またこの際、アクチュエータ１は微小な力でコネクタ５１の押付けを行うため、エンドエフェクタ２及びコネクタ５１の破損を回避できる。
【００９７】
次いで、第２の位置決め制御部７２ｂは、外力Ｆに基づいてエンドエフェクタ２のコネクタ５１への接触力を制御しつつ、当該コネクタ５１をスライドさせるように、当該エンドエフェクタ２を３次元空間における第２の軸方向及び第３の軸方向（例えばＸ軸方向及びＹ軸方向）に移動させる。この際、押付け部２２ｂによる押下力は微小な力であるため、この力を維持するように制御することで、エンドエフェクタ２をコネクタ５１に接触させたままコネクタ５１を冶具５２に対してずらす（滑らせる）ことが可能である。これにより、コネクタ接続部５１１の側面が冶具５２の壁部５２３及び第２の壁部５２４に当接し、３次元空間における第２の軸方向及び第３の軸方向に対する位置決めを行うことができる。
【００９８】
なお上記では、可動部１２を直動方向に変位可能とするアクチュエータ１を用いた場合を示した。しかしながら、これに限らず、加速度検出部５が角加速度を検出可能であれば、可動部１２を回転方向に変位可能とするアクチュエータ１を用いることもできる。
【００９９】
また上記では、移動部３がロボットである場合を示した。しかしながら、これに限らず、移動部３として、直動機構又は回転機構を用いてもよい。
【０１００】
以上のように、この実施の形態１によれば、固定部１１及び可動部１２を有するアクチュエータ１と、固定部１１に対する可動部１２の位置を検出する位置検出部４と、固定部１１の加速度を検出する加速度検出部５と、位置検出部４により検出された位置と基準位置Ｐｒとの差分に対してゲインを調整し、当該調整結果である電流指令値Ｉｒｐ及び加速度検出部５により検出された加速度に基づいてアクチュエータ１に対する駆動電流Ｉａを出力するアクチュエータ制御部６１と、アクチュエータ制御部６１において得られた電流指令値Ｉｒｐ、又は、加速度検出部５により検出された加速度及びアクチュエータ制御部６１により出力された駆動電流Ｉａの電流値に基づいて可動部１２に加わる外力Ｆを検出する外力検出部６２と、外力検出部６２により検出された外力Ｆに基づいてアクチュエータ制御部６１を制御する作業制御部７とを備えたので、可動部１２が急激に加減速された場合又は姿勢が変更された場合でも可動部１２に加わる外力Ｆを正しく検出でき、当該外力Ｆに基づいて位置決め作業を行うことができる。
【０１０１】
なお、本願発明はその発明の範囲内において、実施の形態の任意の構成要素の変形、もしくは実施の形態の任意の構成要素の省略が可能である。
【符号の説明】
【０１０２】
１  アクチュエータ
２  エンドエフェクタ
３  移動部
４  位置検出部
５  加速度検出部
６  外力検出制御部
７  作業制御部
１１  固定部
１２  可動部
２１  把持部
２２，２２ｂ  押付け部
６１  アクチュエータ制御部
６２  外力検出部
６３  位置速度変換部
６４  減算器
６５  ゲイン調整部
６６  質量推定部
６７  加速度補償部
６８  加減算器
６９  定電流制御部
７１，７１ｂ  第１の位置決め制御部
７２，７２ｂ  第２の位置決め制御部
７３  第３の位置決め制御部
５０  物体
５１  コネクタ
５２  冶具
５１１  コネクタ接続部
５１１  ケーブル接続部
５２１  開口部
５２２  面
５２３  壁部
５２４  第２の壁部
６２１  係数乗算部
６２２  減算器
６２３  係数乗算部
６５１  ループゲイン測定部
６５２  ゲイン交点制御部
６５３  可変ゲイン調整部
６５４  発振器
６５５  加算器
６５６  比較器
６７１  乗算器
６７２  係数乗算部
６９１  減算器
６９２  駆動ドライバ
６９３  電流検出部
【図１】
2019093527.tif 000003
【図２】
2019093527.tif 000004
【図３】
2019093527.tif 000005
【図４】
2019093527.tif 000006
【図５】
2019093527.tif 000007
【図６】
2019093527.tif 000008
【図７】
2019093527.tif 000009
【図８】
2019093527.tif 000010
【手続補正書】
【提出日】平成30年11月2日(2018.11.2)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００３９
【補正方法】変更
【補正の内容】
【００３９】
また、減算器６４及びゲイン調整部６５は、位置検出部４により検出された位置と基準位置Ｐｒとの差分に基づく電流指令値Ｉｒｐを出力する位置制御手段（位置制御ループ）を構成する。