(57)【要約】  ロボットアーム（１００）に、ロボットアームに取り付けられた手先効果部（１０２）と分離した構造をしている把持部（１０３）を設け、把持部（１０３）を人が把持して移動させることで、ロボットアーム（１００）を把持部（１０３）に追従して移動させる。また、把持部（１０３）に接触センサ（１０５）を備え、接触センサ（１０５）の検出結果に応じて追従制御の方法を切り替える。
2012101956.tif 000002
【特許請求の範囲】
【請求項１】
人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアームの制御装置であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を取得する相対位置情報取得部と、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を求める追従制御部と、
前記把持部が他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物との接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を出力する追従制御切替制御部と
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを移動制御する制御部とを備えるとともに、
前記追従制御切替制御部は、
前記把持部が他の物との接触の有無の情報を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を検出する把持検出部と、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を出力する追従制御切替部とを備える、のロボットアーム。
【請求項２】
前記把持検出部は、前記人の把持の有無の情報に加えて、把持開始からの経過時間も把持情報として検出する一方、
前記把持部に対する前記人の把持の有無の情報と前記把持開始からの経過時間と、追従速度を決定する制御係係数の情報とが関連付けられた関連情報を取得する制御係数情報取得部と、
前記把持検出部で検出した把持情報と前記制御係数情報取得部で取得した前記関連情報とを基に、追従速度を決定する制御係数を決定する制御係数情報決定部とをさらに備え、
前記把持部を前記人が把持した直後の所定の一定時間は、前記制御係数情報取得部で取得した前記制御係数に基づいて追従制御の追従速度を、他の時間の追従速度よりも遅くするように制御する請求項１に記載のロボットアーム。
【請求項３】
前記把持検出部は、前記人の把持の有無の情報に加えて、前記把持部を前記人が把持する位置も把持情報として検出する一方、
前記把持部に対する前記人の把持の有無の情報と前記把持部を前記人が把持する位置と、追従速度を決定する制御係係数の情報とが関連付けられた関連情報を取得する制御係数情報取得部と、
前記把持検出部で検出した把持情報と前記制御係数情報取得部で取得した前記関連情報とを基に、追従速度を決定する制御係数を決定する制御係数情報決定部とをさらに備え、
前記把持部を前記人が把持する位置に応じて、前記制御係数情報取得部で取得した前記制御係数に基づいて追従制御の追従速度を変化させるように制御する請求項１に記載のロボットアーム。
【請求項４】
前記追従制御切替制御部は、
前記把持部に外部から加えられた力の大きさを取得する力情報取得部を備えて、
前記把持検出部は、前記力情報取得部で取得した力情報を基に、前記把持部に対する前記人の把持の有無の情報を検出し、さらに前記把持部を前記人が把持する力の大きさも把持情報として検出する一方、
前記把持部に対する前記人の把持の有無の情報と、前記把持部を前記人が把持する力の大きさと、追従速度を決定する制御係数とが関連付けられた関連情報を取得する制御係数情報取得部と、
前記把持検出部で検出した把持情報と前記制御係数情報取得部で取得した前記関連情報とを基に、追従速度を決定する制御係数を決定する制御係数情報決定部とを備えて、
前記把持部を前記人が把持する力の大きさに応じて、前記制御係数情報取得部で取得した前記制御係数に基づいて追従制御の追従速度を変化させるように制御する請求項１に記載のロボットアーム。
【請求項５】
前記追従制御切替制御部は、
前記把持部に対する前記手先効果部の接触の有無を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部と前記手先効果部とが接触した場合のみ追従制御を停止し、前記把持部と前記手先効果部とが接触していない場合は追従制御を行う、追従制御情報を出力する追従制御切替部とを備える請求項１に記載のロボットアーム。
【請求項６】
請求項１〜５のいずれか１つに記載のロボットアームを備えるロボット。
【請求項７】
人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアームの制御方法であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を相対位置情報取得部で取得し、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を追従制御部で求め、
前記把持部が他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物との接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を追従制御切替制御部で出力し
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを制御部で移動制御するとともに、
前記追従制御切替制御部において前記追従制御情報を出力するとき、
前記把持部が他の物との接触の有無の情報を接触情報取得部で取得し、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を把持検出部で検出し、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を追従制御切替部で出力する、ロボットアームの制御方法。
【請求項８】
人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアーム制御プログラムであって、
コンピュータに、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を相対位置情報取得部で取得するステップと、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を追従制御部で求めるステップと、
前記把持部が他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物との接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を追従制御切替制御部で出力するステップと
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを制御部で移動制御するステップとを実行させるとともに、
前記追従制御切替制御部において前記追従制御情報を出力するステップでは、
前記把持部が他の物との接触の有無の情報を接触情報取得部で取得するステップと、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を把持検出部で検出するステップと、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を追従制御切替部で出力するステップと、を実行させるための、ロボットアーム制御プログラム。
【請求項９】
人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアーム用集積電子回路であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を取得する相対位置情報取得部と、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を求める追従制御部と、
前記把持部が他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物との接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を出力する追従制御切替制御部と
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを移動制御する制御部とを備えるとともに、
前記追従制御切替制御部は、
前記把持部が他の物との接触の有無の情報を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を検出する把持検出部と、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を出力する追従制御切替部とを備える、ロボットアーム用集積電子回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットの動作を生成し、教示又は協調搬送などの所望の作業を行うためのロボットアームの制御装置及び制御方法、ロボットアームの制御装置を有するロボット、ロボットアーム制御プログラム、並びに、集積電子回路に関する。
【背景技術】
【０００２】
近年、製造現場では多品種少量生産のためモデルチェンジが頻繁に起こる。セル生産が盛んに行われている近年の製造現場において、ネジ締め作業若しくは部品の嵌合作業、装着作業、フレキシブル基板などの挿入作業、又は、研磨作業などをロボットにより自動化するためには、多種多様な部品又は作業手順に柔軟に対応する必要がある。部品が変わるごとに組み立てる位置又は向きなどが変わり、作業を行う順番も変わるので、それらの変化に対応する必要がある。また、フレキシブル基板の挿入作業などのように柔軟物を取り扱う作業などは、作業が複雑であり、依然として人手中心で行っている。人は、柔軟物が対象物に接触し、柔軟物がたわむ際の手に伝わる反力によって、柔軟物のたわみ具合又は位置を推測し。それによって、複雑な作業を行うことができる。【０００３】
これに対して、ロボットにおいては、試行ごとにたわみ方又は位置などが変わる柔軟物の力情報又は位置情報を定式化できないため、得られる反力に応じた複雑な作業を行うことは非常に困難である。以上の課題を解決し、そのような人手中心で行っている作業をロボットにより自動化する需要は大きい。【０００４】
そこで、従来、ティーチングペンダント又はプログラミングを用いて、ロボットに作業を教示する方法が用いられている。しかしながら、それらの方法により教示を行うと、教示工数が非常に増える。また、ロボットの複数の関節を同時に動かすような、複雑な動きが必要な作業は、教示できないこともある。【０００５】
以上のように、ティーチングペンダント又はプログラミングを用いる方法では限界がある。【０００６】
このため、従来は、ロボットを触って教示するダイレクトティーチングを用いて簡単に教示する方法が用いられている。ダイレクトティーチングでは、直感的な操作ができること、又は、ロボットが対象物に接触した際に、物理的な反力を作業する人が感じることによって、反力に応じた操作ができることなどの長所がある。一方で、ロボット自体が重い場合は、人がロボットを支えることができずロボットの操作ができないこと、又は、ロボット自体が重いためロボットが対象物に接触した際の物理的な反力を人が感じられないこと、又は、ロボットを人が触っているのでロボットが暴走すると危険であることなどの短所も併せ持つ。このように操作性が悪いロボットに対して教示を行う際に、そのロボットの操作性を改善することは非常に重要である。同様に、ロボットに触った際の安全性の確保も重要である。【０００７】
ダイレクトティーチングに関して、第１のロボットアームの手先先端部にバネで取り付けられた第２のロボットアームを持つ構成が考えられている。２つのロボットアームを持つ構成をすることによって、従来の１つのロボットアームのみの構成と比較して、より精密なダイレクトティーチングを可能とする(特許文献１参照）。【０００８】
また、保持部材の動きを水平方向に限定し、外部環境（保持している対象物の変位量又は力情報）を検出しインピーダンス制御を行うことによって、比較的重い対象物を保持した場合においても小さな力で保持部材を変位させることができる方法が用いられている(特許文献２参照）。【０００９】
一方で、製品の運搬作業又は重い部品の嵌合作業において、ティーチングペンダント又はプログラミングを用いる方法では複雑であるためにロボットでは実現できない場合、二人の作業者によって作業が行われていた。そのような作業を、ロボットを用いて、作業者の労力を軽減することは非常に望まれている。このような作業を自動化する場合、ダイレクトティーチングでは、製品が重くて作業者がロボットに教示することができない。そこで、ロボットが把持した重い製品を作業者と協調して運搬する協調搬送という方法を用いる。【００１０】
協調搬送に関して、小さい操作力で協調搬送できるようにロボットにアシスト力を発生させることが考えられている。このアシスト力の値は、以下のようにして求める。すなわち、ロボットの関節角度と、手先位置と、ロボットと協調作業する作業者が対象物に加える力とをそれぞれ検出し、それらの値より作業者の手先粘性係数と、弾性係数と、作業者の手先自然長位置とをそれぞれ推定し、それらの値に基づいて、アシスト力の値を求める（特許文献３参照）。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開平４−１６４５８４号公報
【特許文献２】特開２００６−２４７７８７号公報
【特許文献３】特開２００７−７６８０７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
特許文献１においては、手先の先端部に取り付けられたロボットアームはバネで取り付けられているため、バネの弾性力の影響を受けるので、操作性に課題が残る。また、第２のロボットアームと第１のロボットアームが連動して動かないため、作業領域の広い作業を行う場合には、第１のロボットアームを動かした後に第２のロボットアームを動かさなければならないので、作業工数が増えてしまう。【００１３】
特許文献２においては、保持部材の動きは水平方向にのみ限定されており、他の方向には動かすことが困難である。また、保持部材とロボットアームは接触しており、保持部材の重力又は接触の摩擦力の影響を受けるので、操作性に課題が残る。【００１４】
特許文献３においては、ロボットがアシスト力を発生しているものの、推定値の誤差によって対象物又はロボットの重さを人が感じることとなり、操作性の課題が残る。また、力センサを用いる必要があり、大きなコストがかかってしまう。【００１５】
そこで、本発明者らは、ロボットアームにおいて、ロボットアームの操作時に人が把持する把持部をロボットアーム本体から機構的に分離するような構造を発明した。この構造では、ロボットアーム本体と把持部との相対位置を所定の閾値の範囲内に収まるようにロボットアームの追従制御を行うことによって、人が把持部を操作するときはロボットアーム本体の慣性の影響を排除でき、操作性が非常に良くなるものである。【００１６】
しかしながら、この構造では、人が把持部を把持していない場合においては、把持部は地面に衝突するまで下に落ちるので、それに伴ってロボットアームも追従し、下に下がり続けてしまう。これでは、人が把持部を把持していない場合に、ロボットアームが下に動き続けて危険である。また、人が把持部を把持し追従制御を開始するときと追従制御を終了するときとに、把持部とロボットアームとの相対位置が大きい場合には、その大きい相対位置に対してロボットアームが追従するためロボットアームが急激に移動することとなるので、ロボットアームが人に当たると非常に危険である。また一方で、人が把持部を急激に移動させると、ロボットアームは追従することができず、ロボットアームがどのような振る舞いを起こすかわからない状態となる。【００１７】
本発明の目的は、このような課題に鑑みてなされたものであり、協調搬送又は直接操作などの作業を行う際のロボットアームに対する操作性を改善することができ、ロボットアームを容易に動かすことができ、安全性の高いロボットアームの制御装置及び制御方法、ロボット、ロボットアーム制御プログラム、並びに、集積電子回路を提供することにある。
【課題を解決するための手段】
【００１８】
上記の目的を達成するために、本発明は以下のように構成する。【００１９】
本発明の第１態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアームの制御装置であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を取得する相対位置情報取得部と、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を求める追従制御部と、
前記把持部が他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物との接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を出力する追従制御切替制御部と
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを移動制御する制御部とを備えるとともに、
前記追従制御切替制御部は、
前記把持部が他の物との接触の有無の情報を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を検出する把持検出部と、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を出力する追従制御切替部とを備える、ロボットアームを提供する。【００２０】
本発明の別の態様によれば、前記記載のロボットアームを備えるロボットを提供する。【００２１】
本発明のまた別の態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアームの制御方法であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を相対位置情報取得部で取得し、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を追従制御部で求め、
前記把持部が他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物との接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を追従制御切替制御部で出力し
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを制御部で移動制御するとともに、
前記追従制御切替制御部において前記追従制御情報を出力するとき、
前記把持部が他の物との接触の有無の情報を接触情報取得部で取得し、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を把持検出部で検出し、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を追従制御切替部で出力する、ロボットアームの制御方法を提供する。【００２２】
本発明のさらに別の態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアーム制御プログラムであって、
コンピュータに、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を相対位置情報取得部で取得するステップと、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を追従制御部で求めるステップと、
前記把持部が他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物との接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を追従制御切替制御部で出力するステップと
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを制御部で移動制御するステップとを実行させるとともに、
前記追従制御切替制御部において前記追従制御情報を出力するステップでは、
前記把持部が他の物との接触の有無の情報を接触情報取得部で取得するステップと、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を把持検出部で検出するステップと、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を追従制御切替部で出力するステップと、を実行させるための、ロボットアーム制御プログラムを提供する。【００２３】
本発明のさらに別の態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアーム用集積電子回路であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を取得する相対位置情報取得部と、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を求める追従制御部と、
前記把持部が他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物との接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を出力する追従制御切替制御部と
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを移動制御する制御部とを備えるとともに、
前記追従制御切替制御部は、
前記把持部が他の物との接触の有無の情報を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を検出する把持検出部と、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を出力する追従制御切替部とを備える、ロボットアーム用集積電子回路を提供する。
【発明の効果】
【００２４】
本発明のロボットアームの制御装置及び制御方法、ロボット、ロボットアーム制御プログラム、並びに、集積電子回路によれば、ロボットアーム本体に取り付けられた手先効果部と人が把持する把持部とが機構的に分離しており、人が把持部を操作することによってロボットアームを操作することができる。その結果、操作時に、把持部に対するロボットアーム本体の慣性の影響を除去でき、操作性を非常に良くすることができる。また、ロボットアームと機構的に分離した把持部が他の物と接触した場合においては、追従制御の方法を切り替えることによって、安全性を向上させることができる。
【図面の簡単な説明】
【００２５】
本発明のこれらと他の目的と特徴は、添付された図面についての好ましい実施形態に関連した次の記述から明らかになる。この図面においては、
【図１】図１は、本発明の第１実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの構成図であり、
【図２Ａ】図２Ａは、本発明の第１実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの平面図であり、
【図２Ｂ】図２Ｂは、本の第１実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとを示す図２Ａ中のＡ−Ａ線の断面図であり、
【図２Ｃ】図２Ｃは、本発明の第１実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとを示す図２Ａ中のＢ−Ｂ線の断面図であり、
【図３Ａ】図３Ａは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３Ｂ】図３Ｂは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３Ｃ】図３Ｃは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３Ｄ】図３Ｄは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３Ｅ】図３Ｅは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３Ｆ】図３Ｆは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３Ｇ】図３Ｇは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３Ｈ】図３Ｈは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３Ｉ】図３Ｉは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３Ｊ】図３Ｊは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３Ｋ】図３Ｋは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの平面図であり、
【図３Ｌ】図３Ｌは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの平面図であり、
【図４Ａ】図４Ａは、本発明の第１実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサと、緩衝材の平面図であり、
【図４Ｂ】図４Ｂは、本発明の第１実施形態のロボットにおける手先効果部、把持部、接触センサ、緩衝材の側面図であり、
【図４Ｃ】図４Ｃは、本発明の第１実施形態のロボットにおける接触時の手先効果部と、把持部と、相対位置センサと、接触センサと、緩衝材の平面図であり、
【図４Ｄ】図４Ｄは、本発明の第１実施形態のロボットにおける接触時の手先効果部、把持部、接触センサ、緩衝材の側面図であり、
【図５】図５は、本発明の第１実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの図１と異なる構成図であり、
【図６】図６は、本発明の第１実施形態のロボットにおけるロボットアームのブロック図であり、
【図７】図７は、本発明の第１実施形態のロボットにおける接触情報の説明図であり、
【図８】図８は、本発明の第１実施形態のロボットにおける人の手の把持位置の説明図であり、
【図９Ａ】図９Ａは、本発明の第１実施形態のロボットにおける人の手の把持時間の説明図であり、
【図９Ｂ】図９Ｂは、本発明の第１実施形態のロボットにおける人の手の把持時間の説明図であり、
【図９Ｃ】図９Ｃは、本発明の第１実施形態のロボットにおける人の手の把持時間の説明図であり、
【図１０】図１０は、本発明の第１実施形態のロボットにおけるロボットアームの説明図であり、
【図１１Ａ】図１１Ａは、本発明の第１実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図１１Ｂ】図１１Ｂは、本発明の第１実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図１１Ｃ】図１１Ｃは、本発明の第１実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図１１Ｄ】図１１Ｄは、本発明の第１実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図１１Ｅ】図１１Ｅは、本発明の第１実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図１２Ａ】図１２Ａは、本発明の第１実施形態のロボットにおける人の手が把持していない場合の説明図であり、
【図１２Ｂ】図１２Ｂは、本発明の第１実施形態のロボットにおける人の手の把持していない場合の説明図であり、
【図１２Ｃ】図１２Ｃは、本発明の第１実施形態のロボットにおける人の手の把持していない場合の説明図であり、
【図１２Ｄ】図１２Ｄは、本発明の第１実施形態のロボットにおける人の手の把持していない場合の説明図であり、
【図１３】図１３は、本発明の第１実施形態のロボットにおける相対位置情報、接触情報を取得してから追従制御を行うまでの処理の流れを示すフローチャートであり、
【図１４Ａ】図１４Ａは、本発明の第１実施形態のロボットにおけるロボットアームを用いた協調搬送の開始時の説明図であり、
【図１４Ｂ】図１４Ｂは、本発明の第１実施形態のロボットにおけるロボットアームを用いた協調搬送の開始時の説明図であり、
【図１４Ｃ】図１４Ｃは、本発明の第１実施形態のロボットにおけるロボットアームを用いた協調搬送の開始時の説明図であり、
【図１５】図１５は、本発明の第１実施形態のロボットにおけるロボットアームを用いた協調搬送の時間と速度の関係の説明図であり、
【図１６】図１６は、本発明の第２実施形態のロボットにおけるロボットアームのブロック図であり、
【図１７】図１７は、本発明の第２実施形態のロボットにおける追従制御切替部の係数情報の決定方法の説明図であり、
【図１８Ａ】図１８Ａは、本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図１８Ｂ】図１８Ｂは、本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図１８Ｃ】図１８Ｃは、本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図１８Ｄ】図１８Ｄは、本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図１８Ｅ】図１８Ｅは、本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図１９】図１９は、本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であって、図１９の（Ａ）は本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の時間と係数の関係の説明図、図１９の（Ｂ）は本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の時間と速度の関係の説明図であり、
【図２０】図２０は、本発明の第２実施形態のロボットにおける相対位置情報、接触情報を取得してから追従制御を行うまでの処理の流れを示すフローチャートであり、
【図２１Ａ】図２１Ａは、本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の終了時の説明図であり、
【図２１Ｂ】図２１Ｂは、本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の終了時の説明図であり、
【図２１Ｃ】図２１Ｃは、本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の終了時の説明図であり、
【図２２Ａ】図２２Ａは、本発明の第３実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの平面図であり、
【図２２Ｂ】図２２Ｂは、本発明の第３実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図２２Ｃ】図２２Ｃは、本発明の第３実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図２３Ａ】図２３Ａは、本発明の第３実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの図２２Ａと異なる平面図であり、
【図２３Ｂ】図２３Ｂは、本発明の第３実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの図２２Ｂと異なる断面図であり、
【図２３Ｃ】図２３Ｃは、本発明の第３実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの図２２Ｃと異なる断面図であり、
【図２４】図２４は、本発明の第３実施形態のロボットにおけるロボットアームのブロック図であり、
【図２５】図２５は、本発明の第３実施形態のロボットにおける追従制御切替部における係数情報の決定方法の説明図であり、
【図２６Ａ】図２６Ａは、本発明の第３実施形態のロボットにおける把持部の把持方法の説明図であり、
【図２６Ｂ】図２６Ｂは、本発明の第３実施形態のロボットにおける把持部の把持方法の説明図であり、
【図２７Ａ】図２７Ａは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図２７Ｂ】図２７Ｂは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図２７Ｃ】図２７Ｃは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図２７Ｄ】図２７Ｄは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図２７Ｅ】図２７Ｅは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図２７Ｆ】図２７Ｆは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図２７Ｇ】図２７Ｇは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図２７Ｈ】図２７Ｈは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送における把持方法の説明図であり、
【図２７Ｉ】図２７Ｉは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送における把持方法の説明図であり、
【図２７Ｊ】図２７Ｊは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送における把持方法の説明図であり、
【図２７Ｋ】図２７Ｋは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送における把持方法の説明図であり、
【図２７Ｌ】図２７Ｌは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送における把持方法の説明図であり、
【図２７Ｍ】図２７Ｍは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送における把持方法の説明図であり、
【図２７Ｎ】図２７Ｎは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送における把持方法の説明図であり、
【図２８】図２８は、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であって、図２８の（Ａ）は本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送の時間と係数の関係の説明図、図２８の（Ｂ）は本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送の時間と速度の関係の説明図であり、
【図２９】図２９は、本発明の第３実施形態のロボットにおける相対位置情報、接触情報を取得してから追従制御を行うまでの処理の流れを示すフローチャートであり、
【図３０Ａ】図３０Ａは、本発明の第４実施形態のロボットにおける手先効果部、把持部、相対位置センサ、力センサの平面図であり、
【図３０Ｂ】図３０Ｂは、本発明の第４実施形態のロボットにおける手先効果部、把持部、相対位置センサ、力センサの断面図であり、
【図３０Ｃ】図３０Ｃは、本発明の第４実施形態のロボットにおける手先効果部、把持部、相対位置センサ、力センサの断面図であり、
【図３１】図３１は、本発明の第４実施形態のロボットにおけるロボットアームのブロック図であり、
【図３２】図３２は、本発明の第４実施形態のロボットにおける力情報の説明図であり、
【図３３】図３３は、本発明の第４実施形態のロボットにおける追従制御切替部における係数情報の決定方法の説明図であり、
【図３４Ａ】図３４Ａは、本発明の第４実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図３４Ｂ】図３４Ｂは、本発明の第４実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図３４Ｃ】図３４Ｃは、本発明の第４実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図３４Ｄ】図３４Ｄは、本発明の第４実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図３４Ｅ】図３４Ｅは、本発明の第４実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図３４Ｆ】図３４Ｆは、本発明の第４実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図３４Ｇ】図３４Ｇは、本発明の第４実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図３５】図３５は、本発明の第４実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であって、図３５の（Ａ），（Ｂ），（Ｃ）は、それぞれ、本発明の第４実施形態のロボットにおけるロボットアームを用いた協調搬送の時間と係数の関係と、時間と速度の関係と、時間と力の大きさの関係との説明図であり、
【図３６】図３６は、本発明の第４実施形態のロボットにおける相対位置情報、力情報を取得してから追従制御を行うまでの処理の流れを示すフローチャートであり、
【図３７】図３７は、本発明の第５実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの構成図であり、
【図３８Ａ】図３８Ａは、本発明の第５実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの平面図であり、
【図３８Ｂ】図３８Ｂは、本発明の第５実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３８Ｃ】図３８Ｃは、本発明の第５実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３９】図３９は、本発明の第５実施形態のロボットにおけるロボットアームのブロック図であり、
【図４０Ａ】図４０Ａは、本発明の第５実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図４０Ｂ】図４０Ｂは、本発明の第５実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図４０Ｃ】図４０Ｃは、本発明の第５実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図４１】図４１は、本発明の第５実施形態のロボットにおける相対位置情報、接触情報を取得してから追従制御を行うまでの処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００２６】
以下に、本発明にかかる実施の形態を図面に基づいて詳細に説明する。
【００２７】
以下、図面を参照して本発明における実施形態を詳細に説明する前に、本発明の種々の態様について説明する。
【００２８】
本発明の第１態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアームの制御装置であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を取得する相対位置情報取得部と、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を求める追従制御部と、
前記把持部が他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物との接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を出力する追従制御切替制御部と
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを移動制御する制御部とを備えるとともに、
前記追従制御切替制御部は、
前記把持部が他の物との接触の有無の情報を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を検出する把持検出部と、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を出力する追従制御切替部とを備える、ロボットアームを提供する。
【００２９】
本発明の第２態様によれば、前記把持検出部は、前記人の把持の有無の情報に加えて、把持開始からの経過時間も把持情報として検出する一方、
前記把持部に対する前記人の把持の有無の情報と前記把持開始からの経過時間と、追従速度を決定する制御係係数の情報とが関連付けられた関連情報を取得する制御係数情報取得部と、
前記把持検出部で検出した把持情報と前記制御係数情報取得部で取得した前記関連情報とを基に、追従速度を決定する制御係数を決定する制御係数情報決定部とをさらに備え、
前記把持部を前記人が把持した直後の所定の一定時間は、前記制御係数情報取得部で取得した前記制御係数に基づいて追従制御の追従速度を、他の時間の追従速度よりも遅くするように制御する第１の態様に記載のロボットアームを提供する。
【００３０】
本発明の第３態様によれば、前記把持検出部は、前記人の把持の有無の情報に加えて、前記把持部を前記人が把持する位置も把持情報として検出する一方、
前記把持部に対する前記人の把持の有無の情報と前記把持部を前記人が把持する位置と、追従速度を決定する制御係係数の情報とが関連付けられた関連情報を取得する制御係数情報取得部と、
前記把持検出部で検出した把持情報と前記制御係数情報取得部で取得した前記関連情報とを基に、追従速度を決定する制御係数を決定する制御係数情報決定部とをさらに備え、
前記把持部を前記人が把持する位置に応じて、前記制御係数情報取得部で取得した前記制御係数に基づいて追従制御の追従速度を変化させるように制御する第１の態様に記載のロボットアームを提供する。
【００３１】
本発明の第４態様によれば、前記追従制御切替制御部は、
前記把持部に外部から加えられた力の大きさを取得する力情報取得部を備えて、
前記把持検出部は、前記力情報取得部で取得した力情報を基に、前記把持部に対する前記人の把持の有無の情報を検出し、さらに前記把持部を前記人が把持する力の大きさも把持情報として検出する一方、
前記把持部に対する前記人の把持の有無の情報と、前記把持部を前記人が把持する力の大きさと、追従速度を決定する制御係数とが関連付けられた関連情報を取得する制御係数情報取得部と、
前記把持検出部で検出した把持情報と前記制御係数情報取得部で取得した前記関連情報とを基に、追従速度を決定する制御係数を決定する制御係数情報決定部とを備えて、
前記把持部を前記人が把持する力の大きさに応じて、前記制御係数情報取得部で取得した前記制御係数に基づいて追従制御の追従速度を変化させるように制御する第１の態様に記載のロボットアームを提供する。
【００３２】
本発明の第５態様によれば、前記追従制御切替制御部は、
前記把持部に対する前記手先効果部の接触の有無を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部と前記手先効果部とが接触した場合のみ追従制御を停止し、前記把持部と前記手先効果部とが接触していない場合は追従制御を行う、追従制御情報を出力する追従制御切替部とを備える第１の態様に記載のロボットアームを提供する。
【００３３】
本発明の第６態様によれば、第１〜５のいずれか１つの態様に記載のロボットアームを備えるロボットを提供する。
【００３４】
本発明の第７態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアームの制御方法であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を相対位置情報取得部で取得し、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を追従制御部で求め、
前記把持部が他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物との接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を追従制御切替制御部で出力し
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを制御部で移動制御するとともに、
前記追従制御切替制御部において前記追従制御情報を出力するとき、
前記把持部が他の物との接触の有無の情報を接触情報取得部で取得し、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を把持検出部で検出し、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を追従制御切替部で出力する、ロボットアームの制御方法を提供する。
【００３５】
本発明の第８態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアーム制御プログラムであって、
コンピュータに、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を相対位置情報取得部で取得するステップと、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を追従制御部で求めるステップと、
前記把持部が他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物との接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を追従制御切替制御部で出力するステップと
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを制御部で移動制御するステップとを実行させるとともに、
前記追従制御切替制御部において前記追従制御情報を出力するステップでは、
前記把持部が他の物との接触の有無の情報を接触情報取得部で取得するステップと、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を把持検出部で検出するステップと、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を追従制御切替部で出力するステップと、を実行させるための、ロボットアーム制御プログラムを提供する。
【００３６】
本発明の第９態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアーム用集積電子回路であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を取得する相対位置情報取得部と、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を求める追従制御部と、
前記把持部が他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物との接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を出力する追従制御切替制御部と
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを移動制御する制御部とを備えるとともに、
前記追従制御切替制御部は、
前記把持部が他の物との接触の有無の情報を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を検出する把持検出部と、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を出力する追従制御切替部とを備える、ロボットアーム用集積電子回路を提供する。
【００３７】
以下、本発明の実施の形態について、図面を参照しながら説明する。
【００３８】
（第１実施形態）
以下、本発明の第１実施形態におけるロボットについて説明する。
【００３９】
本発明の第１実施形態のロボットでは、ロボットアームの操作性を向上させるために、操作時に人が把持する把持部をロボットアーム本体と機構的に分離し、ロボットアーム本体は把持部の移動に追従する（詳細は後で説明する）。しかしながら、このように追従制御を行うことによって、人が把持部を把持していないときには、把持部が落下しロボットアームが下に下がってしまうという課題が生じる（詳細は後で説明する）。第１実施形態は、この課題への対応策を行うものである。
【００４０】
図１は、本発明の第１実施形態における、ロボットアーム１００を含むロボット６０１を示す。ロボットアーム１００は、ロボットアーム１００の本体の一例であるマニピュレータ１０１と、手先効果部１０２と、把持部１０３と、相対位置情報取得部の一例としての相対位置センサ１０４と、接触センサ１０５とを備える。ただし、具体的な接触センサを個々に説明する場合には、後述するように参照符号１０５Ａ〜１０５Ｅで示し、総称的に説明する場合には参照符号１０５で示す。ここで、ロボット６０１は、ロボットアーム１００と、ロボットアームの制御装置６０２とで構成されている。
【００４１】
マニピュレータ１０１は、複数の多関節機構を有し、関節軸（１０１ａ、１０１ｂ、１０１ｃ）を中心に各リンク１０１ｄ、１０１ｅが回転駆動する。マニピュレータ１０１の手先には、手先効果部１０２が取り付けられている。
【００４２】
手先効果部１０２は、複数の相対位置センサ１０４を内蔵しており、複数の相対位置センサ１０４により、手先効果部１０２に対する把持部１０３の相対位置（すなわち、相対位置の情報、言い換えれば、測定値又は計測値）を測定する機能を有する。手先効果部１０２は、マニピュレータ１０１の手先に、位置が変わらないように固定されており、固定された位置からの把持部１０３の相対位置を測定する。本第１実施形態では、６個の相対センサ１０４を用いて、相対位置を測定する（詳細については後述する）。
【００４３】
把持部１０３は、人が作業を行う際に手で把持するための部分であり、手先効果部１０２と分離した構造となっている。
【００４４】
相対位置センサ１０４は、手先効果部１０２に対する把持部１０３の相対位置を検出するセンサである。ここで、Δｒは、Δｘ〜Δγの総称を意味する。ここでは、取得された前記相対位置の情報が所定６個の相対センサ１０４を用いる（詳細については後述する）。
【００４５】
接触センサ１０５は、把持部１０３の外側に取り付けられて把持部１０３の外部の対象物と把持部１０３との接触を検出するセンサである。ここでは、５個の接触センサ１０５を用いる（詳細については後述する）。
【００４６】
以下、手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ１０５とについて図２Ａ〜図２Ｃを用いて詳しく説明する。
【００４７】
図２Ａは、平面が正方形の直方体状の手先効果部１０２と、四角形の箱体状の把持部１０３と、相対位置センサ１０４と、接触センサ１０５との平面図であり、図２Ａの表面にマニピュレータ１０１の手先が連結される。図２Ｂは、手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ１０５との図２Ａ中のＡ−Ａ線の断面図であり、矢印２Ｂから見た断面図である。図２Ｃは、手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ１０５との図２Ａ中のＢ−Ｂ線の断面図であり、矢印２Ｃから見た断面図である。
【００４８】
なお、第１実施形態では、手先効果部１０２の形状は、図２に示す形状をしているが、長方形、多角形、若しくは、円形の平面を有する柱状の物体、又は、球体など、いかなる形状も可能である。
【００４９】
把持部１０３は、四角形の底面部１０３ａと、底面部１０３ａの各辺より立設した４個の四角形の側面部１０３ｂと、各側面部１０３ｂの中央部の上面に内向きに突出した脱落防止部材の一例としての突起部１０３ｃとを備える四角形の箱体状で構成されている。把持部１０３の内側には、底面部１０３ａと４個の側面部１０３ｂとにより、凹空間１０３ｄを有する箱形状を形成する。凹空間１０３ｄは、所定の隙間（空間）９０を有して手先効果部１０２を内部に配置できる空間を形成する。よって、底面部１０３ａと４個の側面部１０３ｂと４個の突起部１０３ｃとのそれぞれと手先効果部１０２のそれぞれ対向する面との間に、それぞれ隙間９０を保持可能としている。
【００５０】
突起部１０３ｃは、各側面部１０３ｂの底面部１０３ａと対向する部分に設けられた板部材であり、凹空間１０３ｄの内部に配置した手先効果部１０２が、図３Ａに示すように箱形状内部の凹空間１０３ｄから飛び出るのを防止する脱落防止部材の一例として機能する。
【００５１】
把持部１０３は、手先効果部１０２と分離した構造であり、手先効果部１０２とは別部材で構成されている。なお、把持部１０３の形状は、図２Ａ〜図２Ｃに示す形状をしているが、長方形、多角形、若しくは、円形の平面を有する箱状の物体、又は、球体など、いかなる形状も可能である。
【００５２】
各空間９０（Δｘ〜Δγ）について、図２Ａ〜図２Ｃを用いて説明する。
【００５３】
ここでは、図２Ａの横方向をｘ軸方向とし、縦方向をｙ軸方向とし、図２Ｂ及び図２Ｃの縦方向をｚ軸方向と定義している。すると、隙間９０のｘ軸方向の幅Δｘは、ｘ軸方向と直交するｙ軸方向沿いにそれぞれ配置されている、手先効果部１０２の側面部１０２ｂと把持部１０３の側面部１０３ｂとのｘ軸方向の隙間の間隔を示す。隙間９０のｙ軸方向の幅Δｙは、ｘ軸方向沿いにそれぞれ配置されている、手先効果部１０２の正面部１０２ａ又は裏面部１０２ｅと把持部１０３の側面部１０３ｂとのｙ軸方向の隙間の間隔を示す。隙間９０のｚ軸方向の幅Δｚは、ｚ軸方向と直交する方向沿いにそれぞれ配置されている、手先効果部１０２の底面部１０２ｃと把持部１０３の底面部１０３ａとのｚ軸方向の隙間の間隔を示す。隙間９０のα方向の幅Δαは、手先効果部１０２の底面部１０２ｃと把持部１０３の底面部１０３ａとのｘ軸まわりの回転方向αの隙間の間隔を示す。隙間９０のβ方向の幅Δβは、手先効果部１０２の底面部１０２ｃと把持部１０３の底面部１０３ａとのｙ軸まわりの回転方向βの隙間の間隔を示す。隙間９０のγ方向の幅Δγは、手先効果部１０２の正面部１０２aと把持部１０３の側面部１０３ｂとのｚ軸まわりの回転方向γの隙間の間隔を示す。
【００５４】
ここで、各軸（ｘ〜γ）について、図２Ａ〜図２Ｃを用いて説明する。ｘ軸は、手先効果部１０２の中心部１０２ｄから側面部１０２ｂに対して垂直に延びる軸であり、図２Ａ中の右方向を＋とする。ｙ軸は、手先効果部１０２の中心部１０２ｄから正面部１０２ａ又は裏面部１０２ｅに対して垂直に延びる軸であり、図２Ａ中の上方向を＋とする。ｚ軸は、手先効果部１０２の中心部１０２ｄから底面部１０２ｃに垂直に延びる軸であり、図２Ｂ中の上方向を＋とする。ｘ軸周りの回転αは、ｘ軸に対して右手の法則を適用させる。ｙ軸周りの回転βは、ｙ軸に対して右手の法則を適用させる。ｚ軸周りの回転γは、ｚ軸に対して右手の法則を適用させる。
【００５５】
図２Ａ〜図２Ｃの状態における手先効果部１０２と把持部１０３の間との隙間９０の間隔（ギャップ）Δｘ、Δｙ、Δｚは、それぞれ、具体的な一例として３ｍｍとなっており、その隙間分だけ把持部１０３をｘ軸方向、ｙ軸方向、又は、ｚ軸方向にそれぞれ動かすことができる。したがって、図２Ａ〜図２Ｃの状態においては、把持部１０３の可動範囲（手先効果部１０２と分離した範囲）は、ｘ、ｙ、ｚ軸に対して±３ｍｍとなる。また、把持部１０３の回転の可動範囲（Δα、Δβ、Δγ）は、α、β、γ方向に対して、それぞれ、一例として±３／１００ラジアンとなっている。把持部１０３の形状に関しては、手先効果部１０２と同様にいかなる形状も可能である。
【００５６】
また、把持部１０３を人が把持しない場合においても把持部１０３が手先効果部１０２から落下しないように、図２Ａ〜図２Ｃに示すように把持部１０３の４個の突起部１０３ｃが手先効果部１０３を囲む若しくは引っかかる形状となっているので、どの方向を向いても手先効果部１０２から落下しない構造となっている（図３Ａ〜図３Ｆ参照）。すなわち、図３Ａは、把持部１０３が手先効果部１０２に対して最も下方の位置に移動した場合に、４個の突起部１０３ｃが手先効果部１０２の上面１０２ｆに接触して脱落防止している状態を示している。図３Ｂは、把持部１０３と手先効果部１０２との位置関係が、図３Ａの状態とは上下逆さまとなり、把持部１０３の底面部１０３ａが手先効果部１０２の底面部１０２ｃに接触している状態を示している。図３Ｃは、把持部１０３と手先効果部１０２との位置関係が、図３Ａの状態から時計方向に９０度回転した状態であり、把持部１０３の側面部１０３ｂが手先効果部１０２の側面部１０２ｂに接触している状態を示している。図３Ｄは、把持部１０３と手先効果部１０２との位置関係が、図３Ａの状態から反時計方向に９０度回転した状態であり、把持部１０３の側面部１０３ｂが手先効果部１０２の側面部１０２ｂに接触している状態を示している。図３Ｅは、把持部１０３と手先効果部１０２との位置関係が、図３Ｃの状態から左右方向の軸周りに上方向に９０度回転した状態であり、把持部１０３の側面部１０３ｂが手先効果部１０２の裏面部１０２ｅに接触している状態を示している。図３Ｆは、把持部１０３と手先効果部１０２との位置関係が、図３Ｃの状態から左右方向の軸周りに上方向に図３Ｅとは逆に９０度回転した状態であり、把持部１０３の側面部１０３ｂが手先効果部１０２の表面部１０２ａに接触している状態を示している。
【００５７】
また、同様に、どの方向に回転しても、把持部１０３は手先効果部１０２から落下しない構造となっている（図３Ｇ〜図３Ｌ参照）。すなわち、図３Ｇ〜図３Ｊは、手先効果部１０２の側面部１０２ｂ又は表面部１０２ａ（裏面部１０２ｅ）のいずれもが、図３Ｇ〜図３Ｊにおいて、時計方向又は反時計方向に回転しても、右側の角度部又は左側の角度部が把持部１０３の突起部１０３ｃに接触して、把持部１０３は手先効果部１０２から落下しない状態を示している。図３Ｋ〜図３Ｌは、手先効果部１０２の上面１０２ｆが、図３Ｋ〜図３Ｌにおいて、時計方向又は反時計方向に回転しても、手先効果部１０２の角度部が把持部１０３の側面部１０３ｂに接触してあまり回転しないように規制され、かつ、手先効果部１０２の各辺の一部が把持部１０３の突起部１０３ｃに接触して、把持部１０３は手先効果部１０２から落下しない状態を示している。
【００５８】
なお、このように、手先効果部１０２と把持部１０３とが接触する際に、衝突を和らげる緩衝材４０１を手先効果部１０２に取り付けることも可能である（図４Ａ、図４Ｂ参照）。図４Ａ及び図４Ｂに示す通り、緩衝材４０１を手先効果部１０２の上下左右の各角部に取り付けた場合においても、図２Ａ〜図２Ｃで定義した隙間（Δｘ〜Δγ）の値は変わらない。図４Ｃ及び図４Ｄに緩衝材４０１と把持部１０３が接触した際の状態を示す。図４Ｃ及び図４Ｄより、緩衝材４０１を手先効果部１０２に取り付けることによって、緩衝材４０１のみが把持部１０３と接触しており、手先効果部１０２と把持部１０３とは直接接触していないことがわかる。
【００５９】
なお、図５に示すように、手先効果部１０２と把持部１０３との構成位置を入れ替えた構成でも使用することができる。すなわち、四角形の箱体状の手先効果部１０２Ｈの内部の空間内に平面が正方形の直方体状の把持部１０３Ｈを前記隙間と同じ隙間をあけて配置して構成することもできる。この場合、人が把持部１０３Ｈを把持しやすくするため、把持部１０３Ｈの底面部に取っ手部材１０３ｅを取り付ける必要がある。図５では、接触センサ１０５は、例えば、取っ手部材１０３ｅの周囲の４箇所に取り付けているが、これに限られるものではない。
【００６０】
相対位置センサ１０４は、手先効果部１０２に対する把持部１０３の相対位置Δｒを検出するセンサである。ここで、Δｒは、Δｘ〜Δγの総称を意味する。
【００６１】
ここで、相対位置Δｒは次式（１）により表され、各相対位置は図２Ａ〜図２Ｃに示す通りである。
【００６２】
【数１】
2012101956.tif 000003
図２Ａ〜図２Ｃに示すように、相対位置センサ１０４は手先効果部１０２に内蔵された構造になっており、具体的にはギャップセンサを用いている。すなわち、手先効果部１０２の正面部１０２ａの近傍内に、正面部１０２ａと平行にかつｘ軸方向沿いに丸棒状のギャップセンサｓｘ１を配置して、ギャップセンサｓｘ１の一端が手先効果部１０２の側面部１０２ｂに露出して、隙間９０のｘ軸方向の幅Δｘを計測している。手先効果部１０２の側面部１０２ｂの近傍内には、側面部１０２ｂと平行にかつｚ軸方向沿いに丸棒状のギャップセンサｓｚ３を配置して、ギャップセンサｓｚ３の一端が手先効果部１０２の底面部１０２ｃに露出して、隙間９０のｚ軸方向の幅Δｚを計測している。手先効果部１０２の裏面部１０２ｅの近傍内に、側面部１０２ｂと平行にかつｙ軸方向沿いにそれぞれ丸棒状の一対のギャップセンサｓｙ１、ｓｙ２を配置して、一対のギャップセンサｓｙ１、ｓｙ２の各一端が手先効果部１０２の裏面部１０２ｅに露出して、隙間９０のｙ軸方向の幅Δｙをそれぞれ計測している。手先効果部１０２の裏面部１０２ｅの近傍内には、側面部１０２ｂと平行にかつｚ軸方向沿いに丸棒状の一対のギャップセンサｓｚ２、ｓｚ３を配置して、一対のギャップセンサｓｚ２、ｓｚ３の各一端が手先効果部１０２の底面部１０２ｃに露出して、隙間９０のｚ軸方向の幅Δｚを計測している。
【００６３】
よって、隙間９０のｙ軸方向の幅Δｙは、２個のギャップセンサｓｙ１、ｓｙ２で計測された少なくとも２つの計測値ｙ１、ｙ２の平均を、後述する相対位置情報取得部６０７で算出して採用する。隙間９０のｚ軸方向の幅Δｚは、３個のギャップセンサｓｚ１、ｓｚ２、ｓｚ３で計測された少なくとも３つの計測値ｚ１、ｚ２、ｚ３の平均を、後述する相対位置情報取得部６０７で算出して採用する。なお、隙間９０のｘ軸方向の幅Δｘは、１個のギャップセンサｓｘで計測された少なくとも１つの計測値ｘ１をそのまま採用するか、１個のギャップセンサｓｘで複数回計測を行い、その平均値を、後述する相対位置情報取得部６０７で算出して採用する。幅Δｙ又は幅Δｚも、同様に、それぞれのギャップセンサで複数回計測を行い、それらの平均値をそれぞれｙ１、ｙ２、ｚ１、ｚ２、ｚ３とした上で、前記した平均値を算出して採用するようにしてもよい。よって、各計測値ｘ１、ｙ１、ｙ２、ｚ１、ｚ２、ｚ３を計算して得られた結果が幅Δｘ〜Δγとなる。
【００６４】
しかしながら、手先効果部１０２に対する把持部１０３の相対位置Δｒを検出する方法としては、ギャップセンサによる検出に代えて、カメラで手先効果部１０２に対する把持部１０３の画像を取得して相対位置Δｒを検出する方法など、他の方法を用いることも可能である。
【００６５】
ここでは、図２Ａ〜図２Ｃに示すギャップセンサを６個用いる方法について説明する。６個のギャップセンサｓｘ１、ｓｙ１、ｓｙ２、ｓｚ１、ｓｚ２、ｓｚ３を図２Ａ〜図２Ｃに示すように配置し、ｘｙｚのそれぞれの軸の手先効果部１０２と把持部１０３との隙間ｇを測定する（ギャップセンサｓｘ１、ｓｙ１、ｓｙ２、ｓｚ１、ｓｚ２、ｓｚ３のそれぞれの計測値（測定値）ｇから相対位置Δｒを導出する方法は後述する）。なお、隙間ｇは、ギャップセンサｓｘ１、ｓｙ１、ｓｙ２、ｓｚ１、ｓｚ２、ｓｚ３のそれぞれの計測値ｘ１、ｙ１、ｙ２、ｚ１、ｚ２、ｚ３の総称を意味する。ここで、隙間ｇは、次式（２）により表されて、それぞれのギャップセンサｓｘ１、ｓｙ１、ｓｙ２、ｓｚ１、ｓｚ２、ｓｚ３の計測値ｘ１、ｙ１、ｙ２、ｚ１、ｚ２、ｚ３を表し、隙間ｇは図２Ａ〜図２Ｃに示す通りである。なお、各計測値ｘ１、ｙ１、ｙ２、ｚ１、ｚ２、ｚ３だけでは回転方向が表現されていない。そこで、各計測値ｘ１、ｙ１、ｙ２、ｚ１、ｚ２、ｚ３を用いて並進方向と回転方向を求めた結果がΔｘ〜Δγとしている。よって、各計測値ｘ１、ｙ１、ｙ２、ｚ１、ｚ２、ｚ３はギャップセンサｓｘ１、ｓｙ１、ｓｙ２、ｓｚ１、ｓｚ２、ｓｚ３の計測値を表しただけのものである。それに対して、Δｘ〜Δγは各計測値を用いて並進方向と回転方向の相対位置を計算した結果、導出した値となる。
【００６６】
【数２】
2012101956.tif 000004
また、図２Ａ〜図２Ｃに示すように、ｙ軸方向のギャップセンサｓｙ１−ｓｙ２間の間隔ｐｙ１２、ｚ軸方向のギャップセンサｓｚ１−ｓｚ２間の間隔ｐｚ１２、ｚ軸方向のギャップセンサｓｚ２−ｓｚ３間の間隔ｐｚ２３は１００ｍｍとする。
【００６７】
接触センサ１０５は、把持部１０３の外側の４つの側面部１０３ｂの外面と底面部１０３ａの外面とにそれぞれ取り付けられ、外部との接触の有無を検出する。各接触センサ１０５の出力はデジタル信号であり、各接触センサ１０５は、「接触有り」の場合には「１」を出力し、「接触無し」の場合には「０」を出力する。検出した接触センサ１０５の出力は、入出力ＩＦ６０８に出力する。図２Ａ〜図２Ｃに示すように、各接触センサ１０５は１０５Ａ〜１０５Ｅの５箇所に取り付けられている。すなわち、接触センサ１０５Ａ〜１０５Ｄが４つの側面部１０３ｂの外面に取り付けられ、接触センサ１０５Ｅが底面部１０３ａの外面に取り付けられている。なお、ここでは、図２Ａ及び図２Ｂに示すように、接触センサ１０５を配置したが、接触センサ１０５の配置場所又は個数などは、把持部１０３と他の物体との接触の情報を取得できるならば、どのように選択しても構わない。
【００６８】
図６は、本発明の第１実施形態のロボットにおけるロボットアーム１００のブロック図を示す。図４において、ロボットアーム１００は、マニピュレータ１０１と、ロボットアーム１００の制御装置６０２とで構成されている。
【００６９】
ロボットアーム１００の制御装置６０２は、制御装置本体部６０３と、周辺装置６０４とで構成されている。制御装置本体部６０３は、制御部６０５と、追従制御部６０６と、相対位置情報取得部６０７と、追従制御切替制御部６００（接触情報取得部６１０と、把持検出部６１１と、追従制御切替部６１２）とで構成されている。周辺装置６０４は、入出力ＩＦ６０８と、モータドライバ６０９とで構成されている。入出力ＩＦ６０８には、制御装置６０２での制御動作のオン・オフスイッチも含まれている。追従制御切替制御部６００は、接触情報取得部６１０と、把持検出部６１１と、追従制御切替部６１２とで構成されて、把持部１０３が他の物と接触しているとき追従制御部６０６での追従制御を行う一方、把持部１０３が他の物との接触していないとき追従制御部６０６での追従制御を行わないように追従制御を切替える追従制御情報を出力するものである。それぞれの機能について、以下に説明する。
【００７０】
相対位置情報取得部６０７は、入出力ＩＦ６０８から取得したギャップセンサｓｘ１、ｓｙ１、ｓｙ２、ｓｚ１、ｓｚ２、ｓｚ３のそれぞれの計測値ｇを基に、手先効果部１０２に対する把持部１０３の相対位置Δｒを求める。求めた相対位置Δｒである相対位置情報を、相対位置情報取得部６０７から追従制御部６０６に出力する。ここで、ギャップセンサｓｙ１−ｓｙ２間の間隔と、ギャップセンサｓｚ１−ｓｚ２間の間隔と、ギャップセンサｓｚ２−ｓｚ３間の間隔とをそれぞれｐとし、ギャップセンサｓｘ１、ｓｙ１、ｓｙ２、ｓｚ１、ｓｚ２、ｓｚ３のそれぞれの計測値をｘ１、ｙ１、ｙ２、ｚ１、ｚ２、ｚ３とし、手先効果部１０２に対する把持部１０３の相対位置をΔｒとすると、Δｒは、相対位置情報取得部６０７により、次式（３）より求まる。
【００７１】
【数３】
2012101956.tif 000005
追従制御部６０６は、相対位置情報取得部６０７から取得した手先効果部１０２に対する把持部１０３の相対位置情報から、その相対位置情報が所定の閾値の範囲内に収まるような移動量を求める。求めた移動量の情報は、追従制御部６０６から制御部６０５に出力する。所定の閾値の範囲とは、ギャップセンサｓｙ１−ｓｙ２間の間隔と、ギャップセンサｓｚ１−ｓｚ２間の間隔と、ギャップセンサｓｚ２−ｓｚ３間の間隔とをそれぞれｐとするとき、定数（例えば、０．１）を掛けた範囲（−０．１ｐ〜０．１ｐ）とする。
【００７２】
また、追従制御部６０６による移動量の求め方を以下に説明する。手先効果部１０２に対する把持部１０３の相対位置をΔｒ（式（３）参照）とし、相対位置の目標値をΔｒｄとし、求める移動量をｙとすると、追従制御部６０６により、次式（４）より、移動量ｙは求まる（ここで、ｋは定数（例えば、１．０））。ただし、手先効果部１０２に対する把持部１０３の相対位置Δｒが閾値内に収まっている場合は、移動量ｙを０とする。定数ｋの値は、人がキーボード又はマウス又はタッチパネルなどの入力装置６０８ｄを使用して入出力ＩＦ６０８から入力される値によって決定される。
【００７３】
【数４】
2012101956.tif 000006
ただし、相対位置の目標値Δｒｄは次式（５）で表され、各ギャップセンサの値ｇが３ｍｍのときをΔｒｄ＝０と定め、ここでは、相対位置の目標値Δｒｄを０とする。また、式（４）中で使用されるΔｘｄ、Δｙｄ、Δｚｄ、Δαｄ、Δβｄ、Δγｄについて説明する。Δｘｄは、図２Ａ中のｘ軸に対する平行移動方向の相対位置Δｘの目標値である。Δｙｄは、図２Ａ中のｙ軸に対する平行移動方向の相対位置Δｙの目標値である。Δｚｄは、図２Ａ中のｚ軸に対する平行移動方向の相対位置Δｚの目標値である。Δαｄは、図２Ａ中のｘ軸に対する回転方向の相対位置Δαの目標値である。Δβｄは、図２Ａ中のｙ軸に対する回転方向の相対位置Δβの目標値である。Δγｄは、図２Ａ中のｚ軸に対する回転方向の相対位置Δγの目標値である。相対位置の目標値Δｒｄが０の場合は、Δｘｄ、Δｙｄ、Δｚｄ、Δαｄ、Δβｄ、Δγｄの値はいずれも０である。
【００７４】
【数５】
2012101956.tif 000007
接触情報取得部６１０には、入出力ＩＦ６０８から接触センサ１０５（１０５Ａ〜１０５Ｅ）の測定値と、入出力ＩＦ６０８に内蔵されたタイマーからの時間情報とが入力されて、把持部１０３と他の物との接触の有無の情報（接触情報）を取得する。接触情報取得部６１０では、入力された接触センサ１０５の測定値を接触情報とし、この接触情報を接触情報取得部６１０から把持検出部６１１に出力する。接触情報とは、図７に示すように、接触センサ１０５Ａ〜接触センサ１０５Ｅの接触の有無の情報である。図７では、「１」が「接触有り」を示し、「０」が「接触無し」を示している。
【００７５】
把持検出部６１１は、接触情報取得部６１０から接触情報が入力される。入出力ＩＦ６０８から把持検出部６１１にも、入出力ＩＦ６０８に内蔵されたタイマーからの時間情報が入力される。把持検出部６１１は、接触情報取得部６１０からの接触情報を基に、人が把持部１０３を把持しているかどうかを検出（判定）する把持判定部として機能し、「把持有り」または「把持無し」で表される把持情報を追従制御切替部６１２に出力する。ここで、把持情報としては、「把持有り」の場合は「１」を把持検出部６１１から追従制御切替部６１２に出力し、「把持無し」の場合は「０」を把持検出部６１１から追従制御切替部６１２に出力する。
【００７６】
把持情報において、人の把持が把持検出部６１１で検出される場合（「把持有り」として把持検出部６１１で検出する場合）は、次の２つの把持検出条件を満たすことである。
【００７７】
１つ目の把持検出条件は、互いに向かい合う２つの接触センサ１０５（接触センサ１０５Ａと接触センサ１０５Ｂ、又は、接触センサ１０５Ｃと接触センサ１０５Ｄ）が共に「接触有り」（出力が１）であること。これは、図８に示すように、人の手８０１で把持部１０３を把持するとき、人の手８０１の例えば親指８０１ｃが把持部１０３の下面側の接触センサ１０５Ａに接触するとともに、人差し指８０１ｂが把持部１０３の上面側の接触センサ１０５Ｂに接触して、親指８０１ｃと人差し指８０１ｂとの間で把持部１０３を把持するためである。このようにすることによって、把持部１０３の一面のみが地面と接している場合又は把持部１０３の一面のみが他の物体と接触している場合などに、人が把持部１０３を把持していると把持検出部６１１で誤検出することを防ぐことができる。なぜなら、１つの接触センサ１０５のみが「接触有り」であったとしても、他の接触センサ１０５が「接触無し」ならば、人が把持部１０３を把持したとは把持検出部６１１で検出しないためである。
【００７８】
２つ目の把持検出条件は、２つの接触センサ１０５のそれぞれが所定時間（例えば連続して２秒以上）の間、「接触有り」（接触センサ１０５からの出力が「１」）であること。これは、人が把持部１０３を把持する意図がなく、把持部１０３に人の手８０１又は他の物体をぶつけてしまった場合に、人が把持部１０３を把持していると把持検出部６１１で誤検出することを防ぐためである。
【００７９】
図９Ａ〜図９Ｃを用いて、２つ目の把持検出条件を満たす場合について説明する。図９Ａ〜図９Ｃは、横軸が時間（秒）を示し、縦軸は接触情報（例えば、接触センサ１０５Ａの情報）を示す。図９Ａは、接触している時間が５．１秒の時点と５．２秒の時点との間の０．１秒であり、２つ目の把持検出条件を満たさない。図９Ｂは、５秒の時点から接触を開始し、７秒の時点を経過して、接触している時間が２秒を超えている。よって、７秒の時点以降の時間は２つ目の把持検出条件を満たす。７秒の時点より以前の時間は２つ目の把持検出条件を満たさない。図９Ｃは、連続して接触している時間が５秒の時点から６秒の時点の間の１秒と、７秒の時点から８．５秒の時点の間の１．５秒であるので、それぞれ、２つ目の把持検出条件を満たさない。
【００８０】
以上の２つの把持検出条件を両方とも満たしたときに、把持検出部６１１は、把持情報として「把持有り」（出力が「１」）を把持検出部６１１から追従制御切替部６１２に出力する。１つでも把持検出条件を満たさない場合は、把持検出部６１１は、恥情報として「把持無し」（出力が「０」）を把持検出部６１１から追従制御切替部６１２に出力する。
【００８１】
追従制御切替部６１２は、把持検出部６１１からの把持情報に応じて「追従制御オン」又は「追従制御オフ」で表される追従制御情報を決定する。追従制御切替部６１２で決定した追従制御情報を、追従制御切替部６１２から制御部６０５に出力する。ここで、追従制御情報としては、「追従制御オン」の場合は「１」を出力し、「追従制御オフ」の場合は「０」を出力する。追従制御切替部６１２における追従制御情報の選択（切り替え）方法は、把持検出部６１１からの把持情報において、「把持有り」（出力が「１」）の情報があると、「追従制御オン」を追従制御切替部６１２で選択し、「把持無し」（出力が「０」）の情報であると、「追従制御オフ」を追従制御切替部６１２で選択する。よって、人が把持部１０３を把持したときのみ「追従制御オン」となり、人が把持部１０３を把持していないときは「追従制御オフ」となる。
【００８２】
制御部６０５は、入出力ＩＦ６０８に内蔵されたタイマーを利用して、ある一定時間毎（例えば、１ｍ秒毎）に、追従制御部６０６から制御部６０５に入力される移動量情報を入出力ＩＦ６０８に出力する。ここで、追従制御切替部６１２から入力される追従制御情報が、「追従制御オン」（出力が「１」）である場合は、移動量情報を制御部６０５から入出力ＩＦ６０８に出力するが、「追従制御オフ」（出力が「０」）である場合は、追従制御を停止する指令を制御部６０５から入出力ＩＦ６０８に出力する。
【００８３】
入出力ＩＦ６０８は、マニピュレータ１０１から取得したギャップセンサｓｘ１、ｓｙ１、ｓｙ２、ｓｚ１、ｓｚ２、ｓｚ３の計測値ｇと、入出力ＩＦ６０８に内蔵されたタイマーからの時間情報とを相対位置情報取得部６０７に出力する。
【００８４】
接触センサ１０５からの接触センサ１０５の計測値と、入出力ＩＦ６０８に内蔵されたタイマーからの時間情報とを、入出力ＩＦ６０８から接触情報取得部６１０に出力する。
【００８５】
また、制御部６０５から取得した移動量情報、もしくは、追従制御を停止する指令を、入出力ＩＦ６０８はモータドライバ６０９に出力する。
【００８６】
追従制御部６０６で使用する定数の値（閾値を導出する際の間隔ｐに掛ける定数、移動量を導出する際の式（４）の係数ｋ）が、人がキーボード又はマウス又はタッチパネルなどの入力装置６０８ｄを使用して入出力ＩＦ６０８に入力でき、入出力ＩＦ６０８に入力された値を、入出力ＩＦ６０８から追従制御部６０６に出力する。
【００８７】
モータドライバ６０９は、入出力ＩＦ６０８から取得した移動量情報を基に、マニピュレータ１０１を制御するために、マニピュレータ１０１のそれぞれのモータ１０１３への指令値をマニピュレータ１０１に出力する。また、入出力ＩＦ６０８から追従制御を停止する指令がモータドライバ６０９に入力された場合は、制御を停止するためのモータ１０１３への指令値をモータドライバ６０９からマニピュレータ１０１に出力する。
【００８８】
マニピュレータ１０１は、入出力ＩＦ６０８に内蔵されたタイマーを利用して、ある一定時間毎（例えば、１ｍ秒毎）に、マニピュレータ１０１の位置情報をマニピュレータ１０１の各エンコーダ１０１４から入出力ＩＦ６０８に出力する。また、相対位置センサ１０４（ギャップセンサｓｘ１、ｓｙ１、ｓｙ２、ｓｚ１、ｓｚ２、ｓｚ３）からのギャップセンサの計測値ｇも同様に、入出力ＩＦ６０８に内蔵されたタイマーを利用して、ある一定時間毎（例えば、１ｍ秒毎）に、ギャップセンサｓｘ１、ｓｙ１、ｓｙ２、ｓｚ１、ｓｚ２、ｓｚ３から入出力ＩＦ６０８に出力する。また、マニピュレータ１０１は、モータドライバ６０９からの指令値に従って制御される。詳細については、図１０を用いて説明する。マニピュレータ１０１は、合計６個の軸周りに回転可能として６自由度の多リンクマニピュレータを構成している。
【００８９】
図１０に示すように、マニピュレータ１０１は、一例として、多関節ロボットアームであって、具体的には６自由度の多リンクのマニピュレータである。マニピュレータ１０１は、手先効果部１０２と、手先効果部１０２が取り付けられている手首部１００１を先端１００２ａに有する前腕リンク１００２と、前腕リンク１００２の基端１００２ｂに回転可能に先端１００３ａが連結される上腕リンク１００３と、上腕リンク１００３の基端１００３ｂが回転可能に連結支持される台部１００４とを備えている。台部１００４は、一定位置に固定されているが、図示しないレールに移動可能に連結されていても良い。手首部１００１は、第４関節部１００８と、第５関節部１００９と、第６関節部１０１０との３つの回転軸を有しており、前腕リンク１００２に対する手先効果部１０２の相対的な姿勢（向き）を変化させることができる。すなわち、図１０において、第４関節部１００８は、手首部１００１に対する手先効果部１０２の横軸周りの相対的な姿勢を変化させることができる。第５関節部１００９は、手首部１００１に対する手先効果部１０２の、第４関節部１００８の横軸とは直交する縦軸周りの相対的な姿勢を変化させることができる。第６関節部１０１０は、手首部１００１に対する手先効果部１０２の、第４関節部１００８の横軸及び第５関節部１００９の縦軸とそれぞれ直交する横軸周りの相対的な姿勢を変化させることができる。前腕リンク１００２の他端１００２ｂは、上腕リンク１００３の先端１００３ａに対して第３関節部１００７周りに、すなわち、第４関節部１００８の横軸と平行な横軸周りに回転可能とする。上腕リンク１００３の他端１００３ｂは、台部１００４に対して第２関節部１００６周りに、すなわち、第４関節部１００８の横軸と平行な横軸周りに回転可能とする。さらに、台部１００４の上側可動部１００４ａは、台部１００４の下側固定部１００４ｂに対して第１関節部１００５周りに、すなわち、第５関節部１００９の縦軸と平行な縦軸周りに回転可能としている。
【００９０】
この結果、マニピュレータ１０１は、合計６個の軸周りに回転可能として前記６自由度の多リンクマニピュレータを構成している。
【００９１】
マニピュレータ１０１の各軸の回転部分を構成する各関節部には、関節部駆動用のモータ１０１３のような回転駆動装置と、モータ１０１３の回転軸の回転位相角（すなわち関節角）を検出して位置情報を出力するエンコーダ１０１４（実際には、マニピュレータ１０１の各関節部の内部に配設されている）とを備えている。モータ１０１３（実際には、マニピュレータ１０１の各関節部の内部に配設されている）は、各関節部を構成する一対の部材（例えば、回動側部材と、該回動側部材を支持する支持側部材）のうちの一方の部材に備えられる、モータドライバ６０９により駆動制御される。各関節部の一方の部材に備えられたモータ１０１３の回転軸が、各関節部の他方の部材に連結されて、前記回転軸を正逆回転させることにより、他方の部材を一方の部材に対して各軸周りに回転可能とする。
【００９２】
また、１０１１は台部１００４の下側固定部１００４ｂに対して相対的な位置関係が固定された絶対座標系であり、１０１２は手先効果部１０２に対して相対的な位置関係が固定された手先座標系である。絶対座標系１０１１から見た手先座標系１０１２の原点位置Ｏｅ（ｘ，ｙ，ｚ）をマニピュレータ１０１の手先位置、絶対座標系１０１１から見た手先座標系１０１２の姿勢をロール角とピッチ角とヨー角とで表現した（φ，θ，ψ）をマニピュレータ１０１の手先姿勢とし、手先位置及び姿勢ベクトルをベクトルｒ＝［ｘ，ｙ，ｚ，φ，θ，ψ］Ｔと定義する。よって、一例として、絶対座標系１０１１のｚ軸に対して第１関節部１００５の縦軸が平行であり、ｘ軸に対して第２関節部１００６の横軸が平行に位置可能とするのが好ましい。また、手先座標系１０１２のｘ軸に対して第６関節部１０１０の横軸が平行に位置可能であり、ｙ軸に対して第４関節部１００８の横軸が平行に位置可能であり、ｚ軸に対して第５関節部１００９の縦軸が平行に位置可能とするのが好ましい。なお、手先座標系１０１２のｘ軸に対しての回転角をヨー角ψとし、ｙ軸に対しての回転角をピッチ角θとし、ｚ軸に対しての回転角をロール角φとする。
【００９３】
さらに、マニピュレータ１０１の手先（例えば、先端１００２ａ）にはハンド１０１５を取り付けることができる。ハンド１０１５は、ハンド１０１５と手先効果部１０２とのなす角度が一定になるように手先効果部１０２と固定される。ハンド１０１５は、手先効果部１０２に対して着脱可能に固定され、手先効果部１０２に対する取り付け方によって、ハンド１０１５と手先効果部１０２との角度を自由に変えて固定することができる。また、ハンド１０１５には、ハンド開閉用のモータ１０１３ｈとエンコーダ７１４ｈとが取り付けられており、マニピュレータ１０１と同様に、ハンド１０１５の開閉を制御することができる。
【００９４】
図１１Ａ〜図１１Ｅは、マニピュレータ１０１と人とが協調して対象物（把持対象物）１１０１を搬送するときに、マニピュレータ１０１が追従する手順を示す。マニピュレータ１０１の手先部の例えば先端１００２ａにハンド１０１５を取り付け、ハンド１０１５で対象物１１０１を把持させる。その後、図１１Ａ→図１１Ｂ→図１１Ｃ→図１１Ｄ→図１１Ｅの順に状態が遷移する。
【００９５】
まず、図１１Ａの状態は、人の手８０１が把持部１０３を把持しておらず、マニピュレータ１０１は停止した状態である。
【００９６】
次いで、図１１Ｂの状態は、人の手８０１が把持部１０３を把持しており、把持検出部６１１で「把持有り」と検出され、マニピュレータ１０１は制御装置６０２により追従制御を行うことができる待機状態である。
【００９７】
次いで、図１１Ｃの状態は、人の手８０１が把持部１０３を移動させ、手先効果部１０２に対する把持部１０３の相対位置Δｒが閾値を超えた状態である。具体的には、図１１Ｃでは、人の手８０１が把持部１０３を図１１Ｃの右方向（矢印参照）に移動させ、手先効果部１０２に対する把持部１０３の相対位置Δｒ（特に、Δｚ）が閾値を超えた状態である。
【００９８】
次いで、図１１Ｄの状態は、手先効果部１０２に対する把持部１０３の相対位置Δｒが閾値内に収まるように、マニピュレータ１０１が制御装置６０２により追従制御を行っている状態である。具体的には、図１１Ｄでは、人の手８０１が把持部１０３を図１１Ｃの右方向（矢印参照）に移動させているので、手先効果部１０２に対する把持部１０３の相対位置Δｒが閾値内に収まるように、図１１Ｄの矢印方向にマニピュレータ１０１が制御装置６０２により追従制御を行って、点線から実線で示す位置に、対象物１１０１をマニピュレータ１０１で搬送している状態である。
【００９９】
次いで、図１１Ｅの状態は、人の手８０１が把持部１０３を把持しておらず、マニピュレータ１０１は停止した状態である。
【０１００】
以上のように、人の手８０１が把持部１０３を把持し移動させると、その移動量に応じてマニピュレータ１０１が制御装置６０２により把持部１０３に対して追従する動きが可能となる。手先効果部１０２と把持部１０３とは、分離した構造をしているので、人は把持部１０３を移動させるだけの力で、対象物１１０１をマニピュレータ１０１を利用して移動させることができる。
【０１０１】
しかしながら、手先効果部１０２と把持部１０３とが分離しており、それらの相対位置を閾値内に収めるように制御装置６０２によりマニピュレータ１０１が追従制御を行うので、人の手８０１が把持部１０３を把持していないときには、マニピュレータ１０１が地面に当たるまで下に下がり続けてしまうという課題が生じてしまう可能性がある。
【０１０２】
この課題を接触センサ１０５を用いない協調搬送の例である図１２Ａ〜図１２Ｄを用いて説明する。図１２Ａ→図１２Ｂ→図１２Ｃ→図１２Ｄの順に状態が遷移する。
【０１０３】
まず、図１２Ａの状態は、人の手８０１が把持部１０３を把持した状態で、協調搬送の作業を終了している。
【０１０４】
次いで、図１２Ｂの状態は、作業終了直後に、人の手８０１を把持部１０３から放した状態である。
【０１０５】
次いで、図１２Ｃの状態は、人の手８０１を把持部１０３から放したことによって、把持部１０３が重力の影響で下に落下している状態である。
【０１０６】
次いで、図１２Ｄの状態は、把持部１０３が落下したことによって、手先効果部１０２に対する把持部１０３の相対位置が大きくなるので、その相対位置を閾値内に収めるようにマニピュレータ１０１が下に追従している状態である。把持部１０３は重力の影響で地面に衝突するまで落下し続けるので、マニピュレータ１０１も地面に衝突するまで下に下がり続けてしまう。
【０１０７】
このような課題に対応するために、第１実施形態では、人の手８０１が把持部１０３を把持したときのみ、制御装置６０２によりマニピュレータ１０１が追従制御を行うようにしている。このような構成にすることによって、人の手８０１が把持部１０３を把持していない場合は、マニピュレータ１０１は制御装置６０２により追従制御を行わないので、マニピュレータ１０１が下に下がり続けるという課題を解消することができる。
【０１０８】
第１実施形態のロボット６０１におけるロボットアーム１００の制御装置６０２の操作手順を図１３のフローチャートを用いて説明する。
【０１０９】
ステップＳ１３０１では、相対位置情報取得部６０７において、手先効果部１０２に対する把持部１０３の相対位置情報を取得する。接触情報取得部６１０において、接触センサ１０５の外部からの接触情報を取得する。
【０１１０】
ステップＳ１３０２では、接触情報取得部６１０で取得した接触情報を基に人が把持部１０３を把持しているか、把持検出部６１１で検出する。把持検出部６１１で検出した結果を追従制御切替部６１２に出力する。人が把持部１０３を把持していると追従制御部６０６で検出した場合は、ステップＳ１３０３に進む。人が把持部１０３を把持していないと追従制御部６０６で検出した場合は、このフローを終了する。
【０１１１】
ステップＳ１３０３では、相対位置情報取得部６０７から取得した相対位置情報が所定の閾値の範囲内に収まっているか、追従制御部６０６で判定する。相対位置情報が閾値の範囲内に収まっていると追従制御部６０６で判定した場合は、このフローを終了する。相対位置情報が閾値の範囲内に収まっていないと追従制御部６０６で判定した場合は、ステップＳ１３０４に進む。
【０１１２】
ステップＳ１３０４では、追従制御部６０６で、閾値の範囲を超えている相対位置情報が閾値内に収まるような移動量を求める。追従制御部６０６で求めた移動量を、追従制御部６０６から制御部６０５に出力し、ステップＳ１３０５に進む。
【０１１３】
ステップＳ１３０５では、制御部６０５で、追従制御部６０６から取得した移動量を基に、マニピュレータ１０１を追従制御し、このフローを終了する。
【０１１４】
前記第１実施形態の構成によれば、人が把持する把持部１０３と手先効果部１０２とが機構的に分離され、把持部１０３を移動させたところにマニピュレータ１０１が追従することから、例えば、協調搬送、又は、ダイレクトティーチングなどの作業を行う際の操作性の悪いロボットアーム１００に対しても、人は軽い力でロボットアーム１００を容易に移動させることができ、人の負担を軽減することができる。したがって、ロボットアーム１００の操作性を改善することができる。また、接触情報取得部６１０で取得した接触情報を基に人が把持部１０３を把持しているか把持検出部６１１で検出することができて、人が把持部１０３を把持したと把持検出部６１１で検出した場合のみ、制御部６０５でマニピュレータ１０１の追従制御を行う。このため、人が把持部１０３を把持していない場合において、マニピュレータ１０１が地面に衝突するまで下に下がり続けるという危険性はなく、安全である。なお、人が把持部１０３を把持していないと把持検出部６１１で検出した場合は、追従制御無しで、制御部６０５でマニピュレータ１０１を移動動作制御する。追従制御を行っていた場合に、人が把持部１０３を把持していないと把持検出部６１１で検出した場合は、制御部６０５でマニピュレータ１０１の追従制御を停止したのち、追従制御無しで、制御部６０５でマニピュレータ１０１を移動動作制御する。
【０１１５】
（第２実施形態）
以下、本発明の第２実施形態におけるロボットについて説明する。
【０１１６】
第１実施形態では、人が把持部１０３を把持したときのみ、制御部６０５でマニピュレータ１０１の追従制御を行うことによって、人が把持部１０３を把持していない場合にマニピュレータ１０１が下に下がり続けるという課題を解消し、安全性を高めている。
【０１１７】
しかしながら、人が把持部１０３を把持し始めたときに、もし手先効果部１０２に対する把持部１０３の相対位置Δｒの値が０でない場合には、人が把持部１０３を把持した直後にマニピュレータ１０１が急激に移動して危険な状態となる可能性がある。すなわち、一方、追従制御開始時に相対位置Δｒが０でないときは、相対位置Δｒの大きさにかかわらず、追従制御開始直後に追従制御が急に行われることになり、危険な状態となる可能性が高い。これに対して、相対位置Δｒが０であれば、追従制御開始直後はゆっくり追従制御を行うため、前記したような危険な状態となる可能性が回避でき、安全性が高まる。この状態を図１４Ａ〜図１４Ｃを用いて説明する。
【０１１８】
図１４Ａ〜図１４Ｃは、人とマニピュレータ１０１とが協調して対象物１１０１を搬送するときに、マニピュレータ１０１が追従する手順を示す。図１４Ａ→図１４Ｂ→図１４Ｃの順に状態が遷移する。
【０１１９】
まず、図１４Ａの状態は、人の手８０１が把持部１０３を把持しておらず、マニピュレータ１０１は停止した状態である。このとき、把持部１０３は手先効果部１０２に引っかかっている。言い換えれば、図１４Ａの把持部１０３の上側の側面部１０３ｂと、上側の側面部１０３ｂに対向する手先効果部１０２の側面部１０２ｂとが接触して、上側の側面部１０３ｂと側面部１０２ｂとの隙間９０の間隔が０となっている。逆に、図１４Ａの把持部１０３の下側の側面部１０３ｂと、下側の側面部１０３ｂに対向する手先効果部１０２の側面部１０２ｂとの間隔が大きくあいている。この結果、下側の側面部１０３ｂと側面部１０２ｂとの隙間９０の間隔が、初期位置（手先効果部１０２に対して把持部１０３が均等な間隔を維持する位置）の隙間間隔（幅Δｘ又は幅Δｙ）の２倍の間隔寸法となっている。
【０１２０】
次いで、図１４Ｂの状態は、人の手８０１が把持部１０３を把持し、把持検出部６１１で「把持有り」が検出された瞬間であって、制御部６０５でマニピュレータ１０１は追従制御を行うことができる待機状態である。
【０１２１】
次いで、図１４Ｃの状態は、人の手８０１の把持が検出された直後であって、手先効果部１０２に対する把持部１０３の相対位置Δｒの値が０でないので、制御部６０５の制御動作によりマニピュレータ１０１が急激に移動している状態である。
【０１２２】
このときの時間とマニピュレータ１０１の手先位置の速度の関係を図１５に示す。図１５のグラフの横軸は時間（秒）を示し、縦軸は速度を示す。グラフ上の太線が、時間に対する速度を示す。また、横軸の下には、その時間におけるマニピュレータの状態が示してある。図１５より、人の手８０１が把持部１０３を把持して、把持検出部６１１で「把持有り」が検出された直後にマニピュレータ１０１の手先位置の速度が急激に速くなっていることがわかる。
【０１２３】
以上のように、人が把持部１０３を把持し始めたときに手先効果部１０２に対する把持部１０３の相対位置Δｒの値が０でないと、把持が検出された直後にマニピュレータ１０１が急激に移動して危険な状態となる可能性がある。そこで、第２実施形態では、この課題への対応策を行う。
【０１２４】
図１６は、本発明の第２実施形態のロボット６０１におけるロボットアーム１００のブロック図を示す。本発明の第２実施形態のロボット６０１におけるマニピュレータ１０１と、制御部６０５と、相対位置情報取得部６０７と、モータドライバ６０９と、接触情報取得部６１０と、把持検出部６１１と、追従制御切替部６１２とは第１実施形態と同様であるので、共通の参照符号を付して共通部分の説明は省略し、異なる部分（制御係数情報決定部１６０１と制御係数情報取得部１６０２となど）についてのみ、以下、詳細に説明する。
【０１２５】
制御係数情報決定部１６０１は、把持検出部６１１からの把持情報に応じて係数情報を求め、求めた係数情報を追従制御部１６０３に出力する。ここで、係数情報とは、式（４）における係数（制御係数）ｋの値を表す。制御係数情報決定部１６０１においては、式（４）より、係数ｋの値が大きくなると、マニピュレータ１０１の追従制御時の一定時間毎（例えば、１ｍ秒毎）における移動量が大きくなる。一方、係数ｋの値が小さくなると、マニピュレータ１０１の追従制御時の一定時間毎における移動量が小さくなる。係数情報の決定方法は、まず、人が把持部１０３を把持しているかどうかを把持検出部６１１で検出する。そして、人が把持部１０３を把持していると把持検出部６１１で検出した場合は、人が把持部１０３を把持し始めてからの経過時間を、入出力ＩＦ１６０４に内蔵されたタイマーからの時間情報に基づき制御係数情報決定部１６０１で取得する。その取得した経過時間によって、係数情報を制御係数情報決定部１６０１で決定する。
【０１２６】
これについて、具体的な値の決定方法を図１７を用いて説明する。ここで、図１７に示すデータベースは、把持部１０３に対する人の把持の有無の情報と把持開始からの経過時間と制御係数の情報（例えば制御係数の値）とが関連付けられた関連情報を制御係数情報取得部１６０２で取得して、制御係数情報取得部１６０２内の内部記憶部に記憶されたものである。具体的には、人が把持部１０３を把持していない場合は、係数ｋの値を０．０とする。人が把持部１０３を把持している場合において、人が把持部１０３を把持し始めてからの経過時間がある任意の時間（経過時間用閾値）（例えば、３秒）未満のときは係数ｋの値を０．５とし、それ以降の経過時間では係数ｋの値を１．０とする。すなわち、人が把持部１０３を把持し始めてからある一定時間までの時間帯（経過時間用閾値未満の時間帯）の移動量を、それ以外の時間帯（正常動作時の時間帯）の移動量よりも少なく、例えば半分以下程度にしている。これは、人が把持部１０３を把持し始めてからある一定時間までの時間帯では、ロボットアームが、急激に動かない程度に、低速で追従制御を行うようにすることを意味している。任意の時間（経過時間用閾値）の決定方法は、人がキーボード又はマウス又はタッチパネルなどの入力装置１６０４ｄを使用して入出力ＩＦ１６０４から制御係数情報取得部１６０２に入力される値によって決定される。また、それぞれの状態における係数ｋの値についても、人がキーボード又はマウス又はタッチパネルなどの入力装置１６０４ｄを使用して入出力ＩＦ１６０４から制御係数情報取得部１６０２に入力される値によって決定される。また、前述したように、人が把持部１０３を把持し始めてからの経過時間は、入出力ＩＦ１６０４に内蔵されたタイマーを利用して制御係数情報決定部１６０１で測定する。このように、人が把持部１０３を把持し始めてからある一定時間までの時間帯（経過時間用閾値未満の時間帯）の移動量を、それ以外の時間帯（正常動作時の時間帯）の移動量よりも少なくなるように、係数情報を制御係数情報決定部１６０１で決定するように構成している。このように構成することによって、人が把持部１０３を把持し始めた直後にマニピュレータ１０１が急激に移動することを防ぐことができる。
【０１２７】
追従制御部１６０３は、式（４）における係数ｋの値の決定方法について、第１実施形態においては入出力ＩＦ６０８から入力される値によって決定していたが、第２実施形態では制御係数情報決定部１６０１から入力される係数情報によって決定する。
【０１２８】
入出力ＩＦ１６０４は、第１実施形態で述べた機能に加えて、制御係数情報取得部１６０２で係数ｋの値を、図１７のデータベースで記憶された数値のいずれかに切り替えるための、人が把持部１０３を把持し始めてからの経過時間を、入出力ＩＦ１６０４を用いて人が入力できる。入力された時間を、入出力ＩＦ１６０４から制御係数情報取得部１６０２に出力する。また、図１７における、それぞれの状態の係数ｋの値を、人がキーボード又はマウス又はタッチパネルなどの入力装置１６０４ｄを使用して入出力ＩＦ１６０４に入力でき、入出力ＩＦ１６０４に入力された係数ｋの値を入出力ＩＦ１６０４から制御係数情報取得部１６０２に出力する。
【０１２９】
図１８Ａ〜図１８Ｅは、人とマニピュレータ１０１とで協調して対象物１１０１を搬送するときに、マニピュレータ１０１が追従する手順を示す。マニピュレータ１０１の手先部の例えば先端１００２ａにハンド１０１５を取り付け、ハンド１０１５で対象物１１０１を把持させる。その後、図１８Ａ→図１８Ｂ→図１８Ｃ→図１８Ｄ→図１８Ｅの順に状態が遷移する。
【０１３０】
まず、図１８Ａの状態は、人の手８０１が把持部１０３を把持しておらず、マニピュレータ１０１は停止した状態である。このとき、把持部１０３は手先効果部１０２に引っかかっている。言い換えれば、図１８Ａの把持部１０３の上側の側面部１０３ｂと、上側の側面部１０３ｂに対向する手先効果部１０２の側面部１０２ｂとが接触して、上側の側面部１０３ｂと側面部１０２ｂとの隙間９０の間隔が０となっている。逆に、図１８Ａの把持部１０３の下側の側面部１０３ｂと、下側の側面部１０３ｂに対向する手先効果部１０２の側面部１０２ｂとの間隔が大きくあいている。
【０１３１】
次いで、図１８Ｂの状態は、人の手８０１が把持部１０３を把持し、把持検出部６１１で「把持有り」が検出された瞬間であって、マニピュレータ１０１は制御装置６０２により追従制御を行うことができる待機状態である。
【０１３２】
次いで、図１８Ｃの状態は、人の手８０１の把持が検出された直後であって、マニピュレータ１０１が、制御装置６０２により、追従制御をゆっくり行っている状態である。
【０１３３】
次いで、図１８Ｄの状態は、人の手８０１の把持が検出され始めてから３秒以上経過したときであり、マニピュレータ１０１が、制御装置６０２により、追従制御を素早く行っている状態である。
【０１３４】
次いで、図１８Ｅの状態は、人の手８０１が把持部１０３を把持しておらず、マニピュレータ１０１は停止した状態である。
【０１３５】
図１９の上側のグラフ（Ａ）は、図１８Ａ〜図１８Ｅにおける時間と係数ｋの値との関係を示している。横軸は、時間（秒）を表し、縦軸は係数ｋの値を表す。グラフ上の太線が、時間に対する係数ｋの値を示す。図１９の下側のグラフ（Ｂ）は、図１８Ａ〜図１８Ｅにおける時間とマニピュレータ１０１の手先位置の速度との関係を示している。横軸は、時間（秒）を表し、縦軸はマニピュレータ１０１の手先位置の速度を表す。グラフ上の太線が、時間に対する速度を示す。また、横軸の下には、その時間におけるマニピュレータの状態が示してある。図１９のグラフ（Ａ）及び図１９のグラフ（Ｂ）から、人による把持部１０３の把持が検出された直後の３秒間は、マニピュレータ１０１がゆっくりと追従制御を行っていることがわかる。図１５と比較しても、人による把持部１０３の把持が検出された直後のマニピュレータ１０１の手先位置の速度が小さいことがわかる。
【０１３６】
第２実施形態のロボット６０１におけるロボットアーム１００の制御装置６０２の操作手順を図２０のフローチャートを用いて説明する。
【０１３７】
ステップＳ１３０１では、相対位置情報取得部６０７において、手先効果部１０２に対する把持部１０３の相対位置情報を取得する。接触情報取得部６１０において、入出力ＩＦ１６０４を介して接触センサ１０５の外部からの接触情報を取得する。
【０１３８】
ステップＳ１３０２では、接触情報取得部６１０から取得した接触情報を基に、人が把持部１０３を把持しているか、把持検出部６１１で検出する。把持検出部６１１で検出した結果を、追従制御切替部６１２と、制御係数情報決定部１６０１とに出力する。人が把持部１０３を把持していると把持検出部６１１で検出した場合は、ステップＳ１３０３に進む。人が把持部１０３を把持していないと把持検出部６１１で検出した場合は、このフローを終了する。
【０１３９】
ステップＳ１３０３では、相対位置情報取得部６０７から取得した相対位置情報が所定の閾値の範囲内に収まっているか、追従制御部６０６で判定する。相対位置情報が閾値の範囲内に収まっていると追従制御部６０６で判定した場合は、このフローを終了する。相対位置情報が閾値の範囲内に収まっていないと追従制御部６０６で判定した場合は、ステップＳ２００１に進む。
【０１４０】
ステップＳ２００１では、把持検出部６１１から取得した把持情報を基に人の把持が検出され始めてから３秒以上経過したか、制御係数情報決定部１６０１で判定する。人の把持が検出され始めてから３秒以上経過したと制御係数情報決定部１６０１で判定した場合は、ステップＳ２００２に進む。人の把持が検出され始めてから３秒以上経過していないと制御係数情報決定部１６０１で判定した場合は、ステップＳ２００３に進む。
【０１４１】
ステップＳ２００２では、制御係数情報決定部１６０１において、式（４）における移動量に関する係数ｋの値を１．０とし、ステップＳ１３０４に進む。
【０１４２】
ステップＳ２００３では、制御係数情報決定部１６０１において、式（４）における移動量に関する係数ｋの値を０．５とし、ステップＳ１３０４に進む。
【０１４３】
ステップＳ１３０４では、追従制御部６０６で、閾値の範囲を超えている相対位置情報が閾値内に収まるような移動量を求める。追従制御部６０６で求めた移動量を、追従制御部６０６から制御部６０５に出力し、ステップＳ１３０５に進む。
【０１４４】
ステップＳ１３０５では、制御部６０５で、追従制御部６０６から取得した移動量を基に、マニピュレータ１０１を追従制御し、このフローを終了する。
【０１４５】
第２実施形態によれば、第１実施形態での作用効果に加えて、人が把持部１０３を把持し始めてからある一定時間の間において、マニピュレータ１０１が追従制御をゆっくり行うことによって、追従制御開始時にマニピュレータ１０１が急激に移動することを防ぐことができ、安全性を向上できる。
【０１４６】
（第３実施形態）
以下、本発明の第３実施形態におけるロボットについて説明する。
【０１４７】
第２実施形態では、人が把持部１０３を把持し始めてからある一定時間の間において、制御装置６０２によりマニピュレータ１０１が追従制御をゆっくり行うことによって、追従制御開始時の安全性を高めている。
【０１４８】
しかしながら、追従制御終了時には、把持部１０３が落下して手先効果部１０２に勢いよく衝突してしまう可能性がある。
【０１４９】
この状態を図２１Ａ〜図２１Ｃを用いて説明する。図２１Ａ〜図２１Ｃは、人とマニピュレータ１０１とが協調して対象物１１０１を搬送するときに、マニピュレータ１０１が追従する手順を示す。図２１Ａ→図２１Ｂ→図２１Ｃの順に状態が遷移する。
【０１５０】
まず、図２１Ａの状態は、人の手８０１が把持部１０３を把持し、マニピュレータ１０１が追従制御を行っている状態である。
【０１５１】
次いで、図２１Ｂの状態は、人の手８０１が把持部１０３を放した瞬間であって、マニピュレータ１０１は停止した状態である。
【０１５２】
次いで、図２１Ｃの状態は、人の手８０１が把持部１０３を放した直後であって、把持部１０３が落下して把持部１０３が手先効果部１０２に勢いよく衝突している状態である。
【０１５３】
以上のように、人が把持部１０３を放したときに、手先効果部１０２に対する把持部１０３の相対位置Δｒが０でない場合には、把持部１０３が落下し手先効果部１０２に勢いよく衝突する可能性がある。そこで、第３実施形態では、この課題への対応策を行う。すなわち、一方、追従制御開始時に相対位置Δｒが０でないときは、相対位置Δｒの大きさにかかわらず、人の手８０１が把持部１０３を放した直後に把持部１０３が落下し手先効果部１０２に勢いよく衝突することになり、危険な状態となる可能性が高い。これに対して、相対位置Δｒが０であれば、人の手８０１が把持部１０３を放した直後にはゆっくり追従制御を行うため、前記したような危険な状態となる可能性が回避でき、安全性が高まる。
【０１５４】
図２２Ａは、本発明の第３実施形態のロボット６０１における手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ１０５との平面図である。図２２Ｂは、本発明の第３実施形態のロボットにおける手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ１０５との図２２Ａ中のＡ−Ａ線の断面図であり、矢印２２Ｂから見た断面図である。図２２Ｃは、本発明の第３実施形態のロボットにおける手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ１０５との図２２Ａ中のＢ−Ｂ線の断面図であり、矢印２２Ｃから見た断面図である。図２Ａ〜図２Ｃとの違いは、接触センサ１０５Ｆ〜接触センサ１０５Ｉを図２２Ａ〜図２２Ｃに示すように追加したことである。また、接触センサ１０５Ｆ〜接触センサ１０５Ｉを追加する際に、図２３Ａ〜図２３Ｃに示す構成をとることも可能である。言い換えれば、図２Ａ〜図２Ｃでは、把持部１０３の長方形の各側面部１０３ｂに１つの長方形板状の接触センサ１０５を配置する代わりに、図２２Ａ〜図２２Ｃでは、把持部１０３の長方形の各側面部１０３ｂに、長手方向沿いに２つの四角形板状の接触センサ１０５を隣接配置したものである。また、図２３Ａ〜図２３Ｃでは、把持部１０３の長方形の各側面部１０３ｂに、幅方向沿いに２つの四角形板状の接触センサ１０５を隣接配置したものである。なお、図２３Ａにおいて、接触センサ１０５Ｈと接触センサ１０５Ｉは、それぞれ、接触センサ１０５Ｂと接触センサ１０５Ｄとに重なった位置（図２３Ａの紙面貫通方向の奥側の位置）に配置されている。
【０１５５】
図２４は、本発明の第３実施形態のロボット６０１におけるロボットアーム１００のブロック図を示す。本発明の第３実施形態のロボット６０１におけるマニピュレータ１０１と、制御部６０５と、相対位置情報取得部６０７と、モータドライバ６０９と、接触情報取得部６１０と、把持検出部６１１と、追従制御切替部６１２と、追従制御部１６０３と、入出力ＩＦ１６０４とは第２実施形態と同様であるので、共通の参照符号を付して共通部分の説明は省略し、異なる部分についてのみ、以下、詳細に説明する。
【０１５６】
制御係数情報決定部２４０１は、把持検出部６１１から入力される把持情報によって係数情報を決定する。ここでの係数情報は、制御係数情報決定部１６０１と同様に、式（４）における係数ｋの値を表す。式（４）より、係数ｋの値が大きくなると、マニピュレータ１０１の追従制御時の一定時間毎（例えば、１ｍ秒毎）における移動量が大きくなる。一方、係数ｋの値が小さくなると、マニピュレータ１０１の追従制御時の一定時間毎における移動量が小さくなる。係数情報の決定方法は、まず、人が把持部１０３を把持しているかどうかを把持検出部６１１で検出する。そして、人が把持部１０３を把持していると把持検出部６１１で検出した場合は、把持検出部６１１から入力される図７で表される把持情報に関して、「接触有り」の接触センサ１０５の位置によって係数の値を変更する。具体的な値の決定方法を図２５を用いて説明する。ここで、図２５に示すデータベースは、把持部１０３に対する人の把持の有無の情報と把持部１０３を人が把持する位置と制御係数の情報（例えば制御係数の値）とが関連付けられた関連情報を制御係数情報取得部２４０２で取得して、制御係数情報取得部２４０２内の内部記憶部に記憶されたものである。なお、図２５において、互いに向かい合っていない接触センサ１０５の組み合わせは、人が把持部１０３を把持していない場合とする。
【０１５７】
具体的には、人が把持部１０３を把持していない場合は、係数ｋの値を０．０とする。人が把持部１０３を把持している場合において、互いに向かい合う２つの接触センサ１０５（例えば、接触センサ１０５Ａと接触センサ１０５Ｂ、又は、接触センサ１０５Ｃと接触センサ１０５Ｄ、又は、接触センサ１０５Ｆと接触センサ１０５Ｇ、又は、接触センサ１０５Ｈと接触センサ１０５Ｉ）が共に「接触有り」（出力が１）でこれらの組み合わせの接触センサ１０５のみを把持している場合は、係数ｋの値を０．５とする。互いに向かい合う２つの接触センサ１０５と他の１つ以上の接触センサ１０５と共に「接触有り」（出力が１）でこれらの組み合わせの接触センサ１０５を把持している場合では、係数ｋの値を１．０とする。すなわち、互いに向かい合う２つの接触センサ１０５が「接触有り」（出力が１）の状態で人が把持部１０３の対向する２つの側面部１０３ｂを把持している場合の移動量を、前記互いに向かい合う２つの接触センサ１０５と他の１つ以上の接触センサ１０５と共に「接触有り」（出力が１）の状態で人が把持部１０３の対向する２つの側面部１０３ｂに加えて他の側面部１０３ｂを把持している場合の移動量よりも少なく、例えば半分以下程度にしている。これは、人が把持部１０３の対向する２つの側面部１０３ｂに加えて他の側面部１０３ｂを把持している場合から人が把持部１０３の対向する２つの側面部１０３ｂを把持している場合に移行したとき、ロボットアームが、急激に動かない程度に、低速で追従制御を行うようにすることを意味している。それぞれの状態における係数ｋの値については、人がキーボード又はマウス又はタッチパネルなどの入力装置１６０４ｄを使用して入出力ＩＦ１６０４から入力される値によって決定される。このように、人が把持部１０３の対向する２つの側面部１０３ｂを把持している場合の移動量を、人が把持部１０３の対向する２つの側面部１０３ｂに加えて他の側面部１０３ｂをも把持している場合の移動量よりも少なくなるように、係数情報を決定することによって、互いに向かい合う２つの接触センサ１０５のみを把持している場合には、制御装置６０２により、マニピュレータ１０１はゆっくり追従制御し、互いに向かい合う２つの接触センサ１０５と他の１つ以上の接触センサ１０５を把持している場合には、制御装置６０２により、マニピュレータ１０１は素早く追従制御する。このように係数を変化させる方法について、図２６Ａ及び図２６Ｂを用いて説明する。人の手８０１で把持部１０３を把持する場合において、指８０１ａが接触センサ１０５Ｃ及び接触センサ１０５Ｄのみにそれぞれ接触している場合は、制御装置６０２により、マニピュレータ１０１は追従制御をゆっくり行う（図２６Ａ参照）。人の手８０１で把持部１０３を把持する場合において、指８０１ａが接触センサ１０５Ｃ及び接触センサ１０５Ｄ及び接触センサ１０５Ｈにそれぞれ接触している場合は、制御装置６０２により、マニピュレータ１０１は追従制御を素早く行う（図２６Ｂ参照）。
【０１５８】
図２７Ａ〜図２７Ｇは、人とマニピュレータ１０１とで協調して対象物１１０１を搬送するときに、制御装置６０２により、マニピュレータ１０１が追従する手順を示す。マニピュレータ１０１の手先部の例えば先端１００２ａにハンド１０１５を取り付け、ハンド１０１５で対象物１１０１を把持させる。その後、図２７Ａ→図２７Ｂ→図２７Ｃ→図２７Ｄ→図２７Ｅ→図２７Ｆ→図２７Ｇの順に状態が遷移する。また、それぞれの状態における人の手８０１の把持部１０３に対する把持方法を、図２７Ｈ〜図２７Ｎに示す。
【０１５９】
まず、図２７Ａ及び図２７Ｈの状態は、人の手８０１が把持部１０３を把持しておらず、マニピュレータ１０１は停止した状態である。このとき、把持部１０３は手先効果部１０２に引っかかっている。言い換えれば、図２７Ａの把持部１０３の上側の側面部１０３ｂと、上側の側面部１０３ｂに対向する手先効果部１０２の側面部１０２ｂとが接触して、上側の側面部１０３ｂと側面部１０２ｂとの隙間９０の間隔が０となっている。逆に、図２７Ａの把持部１０３の下側の側面部１０３ｂと、下側の側面部１０３ｂに対向する手先効果部１０２の側面部１０２ｂとの間隔が大きくあいている。
【０１６０】
次いで、図２７Ｂ及び図２７Ｉの状態は、人の手８０１が把持部１０３の図２７Ｂの上下の対向する側面部１０３ｂ（直接的には、接触センサ１０５Ｇ及び接触センサ１０５Ｆ）を把持し、把持検出部６１１で「把持有り」が検出された瞬間であって、マニピュレータ１０１は、制御装置６０２により追従制御を行うことができる待機状態である。
【０１６１】
次いで、図２７Ｃ及び図２７Ｊの状態は、人の手８０１の把持が検出された直後であって、人の手８０１の指８０１ａが、対向する２つの接触センサ１０５Ｇ及び接触センサ１０５Ｆに接触してこれらを把持しているので、制御装置６０２により、マニピュレータ１０１が追従制御をゆっくり行っている状態である。
【０１６２】
次いで、図２７Ｄ及び図２７Ｋの状態は、人の手８０１が把持部１０３を把持し、制御装置６０２により、マニピュレータ１０１が追従制御しているときである。すなわち、人の手８０１の指８０１ａが、対向する２つの接触センサ１０５Ｇ及び接触センサ１０５Ｆに加えて接触センサ１０５Ｂをも把持しているので、マニピュレータ１０１が、制御装置６０２により、追従制御を素早く行っている状態である。
【０１６３】
次いで、図２７Ｅ及び図２７Ｌの状態は、追従制御を終了する前の状態であって、人の手８０１の指８０１ａが、対向する２つの接触センサ１０５Ｇ及び接触センサ１０５Ｆを把持しているので、マニピュレータ１０１が、制御装置６０２により、追従制御をゆっくり行っている。
【０１６４】
次いで、図２７Ｆ及び図２７Ｍの状態は、追従制御を終了する直前の状態であって、人の手８０１の指８０１ａが、対向する２つの接触センサ１０５Ｇ及び接触センサ１０５Ｆを把持しているので、マニピュレータ１０１が、制御装置６０２により、追従制御をゆっくり行っている。このとき、マニピュレータ１０１は、制御装置６０２により、追従制御をゆっくり行っているので、把持部１０３は手先効果部１０２に緩やかに接触する。
【０１６５】
次いで、図２７Ｇ及び図２７Ｎの状態は、人の手８０１が把持部１０３を把持しておらず、マニピュレータ１０１は停止した状態である。
【０１６６】
図２８の上側のグラフ（Ａ）は、図２７Ａ〜図２７Ｇにおける時間と係数ｋの値との関係を示している。横軸は、時間（秒）を表し、縦軸は係数ｋの値を表す。グラフ（Ａ）上の太線が、時間に対する係数ｋの値を示す。図２８の下側のグラフ（Ｂ）は、図２７Ａ〜図２７Ｇにおける時間と速度との関係を示している。横軸は、時間（秒）を表し、縦軸は速度（ｍ／秒）表す。グラフ（Ｂ）上の太線が、時間に対する速度を示す。また、横軸の下には、その時間におけるマニピュレータ１０１の状態が示してある。図２８の上側のグラフ（Ａ）及び図２８の下側のグラフ（Ｂ）から、追従制御開始時及び追従制御終了時において、人の手８０１による把持部１０３の把持位置を変えることによって、マニピュレータ１０１がゆっくりと追従制御を行っていることがわかる。図２８の上側のグラフ（Ａ）及び図２８の下側のグラフ（Ｂ）と、図１９のグラフ（Ａ）と図１９のグラフ（Ｂ）とを比較しても、図２８の方が、追従制御終了時のマニピュレータ１０１の手先位置の速度が小さくなっていることがわかる。
【０１６７】
第３実施形態のロボット６０１におけるロボットアーム１００の制御装置６０２の操作手順を図２９のフローチャートを用いて説明する。
【０１６８】
ステップＳ１３０１では、相対位置情報取得部６０７において、手先効果部１０２に対する把持部１０３の相対位置情報を取得する。接触情報取得部６１０において、入出力ＩＦ１６０４を介して接触センサ１０５の外部からの接触情報を取得する。
【０１６９】
ステップＳ１３０２では、接触情報取得部６１０から取得した接触情報を基に人が把持部１０３を把持しているか、把持検出部６１１で検出する。把持検出部６１１で検出した結果を、把持検出部６１１から、追従制御切替部６１２と、制御係数情報決定部２４０１とに出力する。人が把持部１０３を把持していると把持検出部６１１で検出した場合は、ステップＳ１３０３に進む。人が把持部１０３を把持していないと把持検出部６１１で検出した場合は、このフローを終了する。
【０１７０】
ステップＳ１３０３では、相対位置情報取得部６０７から取得した相対位置情報が所定の閾値の範囲内に収まっているか、追従制御部６０６で判定する。相対位置情報が閾値の範囲内に収まっていると追従制御部６０６で判定した場合は、このフローを終了する。相対位置情報が閾値の範囲内に収まっていないと追従制御部６０６で判定した場合は、ステップＳ２９０１に進む。
【０１７１】
ステップＳ２９０１では、把持検出部６１１から取得した把持情報を基に、人が、互いに向かい合う２つの接触センサ１０５のみを把持したか、互いに向かい合う２つの接触センサ１０５と他の１つ以上の接触センサ１０５を把持したかを、制御係数情報決定部２４０１で判定する。互いに向かい合う２つの接触センサ１０５のみを把持したと制御係数情報決定部２４０１で判定した場合は、ステップＳ２００３に進む。互いに向かい合う２つの接触センサ１０５と他の１つ以上の接触センサ１０５を把持したと制御係数情報決定部２４０１で判定した場合は、ステップＳ２００２に進む。
【０１７２】
ステップＳ２００３では、制御係数情報決定部２４０１において、式（４）における移動量に関する係数ｋの値を０．５とし、ステップＳ１３０４に進む。
【０１７３】
ステップＳ２００２では、制御係数情報決定部２４０１において、式（４）における移動量に関する係数ｋの値を１．０とし、ステップＳ１３０４に進む。
【０１７４】
ステップＳ１３０４では、追従制御部６０６で、閾値の範囲を超えている相対位置情報が閾値内に収まるような移動量を求める。追従制御部６０６で求めた移動量を追従制御部６０から制御部６０５に出力し、ステップＳ１３０５に進む。
【０１７５】
ステップＳ１３０５では、制御部６０５で、追従制御部６０６から取得した移動量を基に、マニピュレータ１０１を追従制御し、このフローを終了する。
【０１７６】
第３実施形態によれば、第１実施形態での作用効果に加えて、人が把持部１０３を把持する位置に応じて、マニピュレータ１０１が追従制御をゆっくり行うことによって、追従制御開始時及び追従制御終了時において安全性を向上できる。また、人が把持する位置に応じて、マニピュレータ１０１は追従制御をゆっくり行ったり追従制御を素早く行うことができるので、人の意思によって追従制御の追従速度を変化させることができる。
【０１７７】
（第４実施形態）
以下、本発明の第４実施形態におけるロボットについて説明する。
【０１７８】
第３実施形態では、人が把持部１０３を把持する位置に応じて、制御装置６０２によりマニピュレータ１０１が追従制御をゆっくり行うことによって、追従制御開始時及び追従制御終了時の安全性を高めている。
【０１７９】
しかしながら、人が把持部１０３の把持位置を把持し直す必要があり、人又は作業内容によっては、把持し直し動作が煩雑であると感じる場合がある。そこで、第４実施形態では、第３実施形態で用いた把持位置を把持し直す方法と比べて、より容易な方法によって追従制御開始時及び追従制御終了時の安全性を高める。
【０１８０】
図３０Ａは、手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、力センサ３００１との平面図である。図３０Ｂは、手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、力センサ３００１との図３０Ａ中のＡ−Ａ線の断面図であり、矢印３０Ｂから見た断面図である。図３０Ｃは、手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、力センサ３００１との図３０Ａ中のＢ−Ｂ線の断面図であり、矢印３０Ｃから見た断面図である。第１、２、３実施形態では、接触センサ１０５を５個用いていたが、第４実施形態では、接触センサ１０５の代わりに、力センサ３００１を５個用いる。
【０１８１】
力センサ３００１は、把持部１０３の外側の４つの側面部１０３ｂと底面部１０３ａとにそれぞれ取り付けられ、外部から加えられた力の大きさを検出する。各力センサ３００１で検出した力の大きさは入出力ＩＦ１６０４に出力する。接触センサ１０５との違いは、接触センサ１０５では接触の有無のみが検出されたのに対して、力センサ３００１では、接触の際の加えられた力の大きさについても検出できることである。図３０Ａ〜図３０Ｃに示すように、力センサ３００１は、３００１Ａ〜３００１Ｅの５箇所に取り付けられている。すなわち、力センサ３００１Ａ〜３００１Ｄが４つの側面部１０３ｂの外面に取り付けられ、力センサ３００１Ｅが底面部１０３ａに取り付けられている。具体的な力センサを個々に説明する場合には、参照符号３００１Ａ〜３００１Ｅで示し、総称的に説明する場合には参照符号３００１で示す。また、力センサ３００１は、１つの軸に沿った方向の力のみを検出する力センサである。なお、ここでは、図３０Ａ〜図３０Ｃに示すように力センサ３００１を配置したが、力センサ３００１の配置場所又は個数などは、把持部１０３と他の物体との接触の際に把持部１０３に加えられた力の大きさを取得できるならば、どのように選択しても構わない。
【０１８２】
図３１は、本発明の第４実施形態のロボット６０１におけるロボットアーム１００のブロック図を示す。本発明の第４実施形態のロボット６０１におけるマニピュレータ１０１と、制御部６０５と、相対位置情報取得部６０７と、モータドライバ６０９と、追従制御切替部６１２と、追従制御部１６０３と、入出力ＩＦ１６０４とは、第２及び第３実施形態と同様であるので、共通の参照符号を付して共通部分の説明は省略し、異なる部分についてのみ、以下、詳細に説明する。
【０１８３】
力情報取得部３１０１には、入出力ＩＦ１６０４から力センサ３００１の測定値と、入出力ＩＦ１６０４に内蔵されたタイマーからの時間情報とが入力されて、把持部１０３に外部から加えられた力の大きさを取得する。力情報取得部３１０１に入力された力センサ３００１の測定値を力情報とし、力情報取得部３１０１から把持検出部３１０２に出力する。力情報とは、図３２に示すように、力センサ３００１Ａ〜力センサ３００１Ｅの力の大きさの情報である。
【０１８４】
なお、この実施形態では、追従制御切替制御部６００は、接触情報取得部６１０に代えて力情報取得部３１０１と、把持検出部６１１に対応する把持検出部３１０２と、追従制御切替部６１２とで構成されて、把持部１０３が他の物と接触しているとき追従制御部６０６での追従制御を行う一方、把持部１０３が他の物との接触していないとき追従制御部６０６での追従制御を行わないように追従制御を切替える追従制御情報を出力するものである。
【０１８５】
把持検出部３１０２は、力情報取得部３１０１から力情報が入力される。入出力ＩＦ１６０４から把持検出部３１０２に、入出力ＩＦ１６０４に内蔵されたタイマーからの時間情報が入力される。把持検出部３１０２は、力情報取得部３１０１からの力情報を基に、人が把持部１０３を把持しているかどうかを検出し、把持情報を把持検出部３１０２から追従制御切替部６１２に出力する。
【０１８６】
人の把持情報の検出方法は、次の２つの把持情報検出条件を満たすことである。１つ目の把持情報検出条件は、互いに向かい合う２つの力センサ３１０１（力センサ３１０１Ａと力センサ３１０１Ｂ、又は、力センサ３１０１Ｃと力センサ３１０１Ｄ）が共に力の大きさが０．３Ｎ以上であること。２つ目の把持情報検出条件は、力センサ３１０１で検出した力の大きさが所定の時間、所定の力（例えば連続して２秒以上の時間０．３Ｎ以上）であること。以上の２つの把持情報検出条件を満たしたときに、把持情報は「把持有り」（出力が「１」）を出力し、１つでも満たさない場合は「把持無し」（出力が「０」）を出力する。
【０１８７】
制御係数情報決定部３１０３は、人が把持部１０３を把持するときの力の大きさによって係数ｋの値を変化させる。ここでは、制御係数情報決定部３１０３において、把持する力が大きくなると、係数ｋの値を大きくする。一方、把持する力が小さくなると、係数ｋの値を小さくする。人が把持部１０３を把持していると把持検出部３１０２で検出した場合において、把持開始時と把持終了時に、人が把持部１０３を把持する力の大きさを、把持動作中（把持開始時と把持終了時と以外の動作中）の力の大きさよりも、小さくする。このように構成することによって、追従制御開始時と追従制御終了時において、制御装置６０２により、マニピュレータ１０１が、把持動作中の素早い追従制御よりも遅い、ゆっくりとして追従制御を行うことが可能となる。
【０１８８】
これについて、具体的に、図３３を用いて説明する。ここで、図３３に示すデータベースは、把持部１０３に対する人の把持の有無の情報と把持部１０３を人が把持する力の大きさと制御係数の情報（例えば制御係数の値）とが関連付けられた関連情報を制御係数情報取得部３１０４で取得して、制御係数情報取得部３１０４内の内部記憶部に記憶されている。人が把持部１０３を把持していない場合は、係数ｋの値を０．０とする。人が把持部１０３を把持している場合において、力情報取得部３１０１からの力情報が、任意の力（力情報閾値）の大きさ（例えば、２．０Ｎ）未満のときは係数ｋの値を０．５とし、力情報取得部３１０１からの力情報が、それ以上の力の大きさのときは係数ｋの値を１．０とする。すなわち、力情報取得部３１０１からの力情報が力情報閾値未満の場合の移動量を、力情報取得部３１０１からの力情報が力情報閾値以上の場合の移動量よりも少なく、例えば半分以下程度にしている。これは、力情報が力情報閾値以上の場合から力情報が力情報閾値未満の場合から力情報が力情報閾値以上の場合に移行したときに、ロボットアームが、急激に動かない程度に、低速で追従制御を行うようにすることを意味している。任意の力（力情報閾値）の大きさの決定方法は、人がキーボード又はマウス又はタッチパネルなどの入力装置１６０４ｄを使用して入出力ＩＦ１６０４から入力される値によって決定される。また、それぞれの状態における係数ｋの値についても、人がキーボード又はマウス又はタッチパネルなどの入力装置１６０４ｄを使用して入出力ＩＦ１６０４から入力される値によって決定される。
【０１８９】
図３４Ａ〜図３４Ｇは、人とマニピュレータ１０１とが協調して対象物１１０１を搬送するときに、制御装置６０２により、マニピュレータ１０１が追従する手順を示す。マニピュレータ１０１の手先部の例えば先端１００２ａにハンド１０１５を取り付け、ハンド１０１５で対象物１１０１を把持させる。その後、図３４Ａ→図３４Ｂ→図３４Ｃ→図３４Ｄ→図３４Ｅ→図３４Ｆ→図３４Ｇの順に状態が遷移する。
【０１９０】
まず、図３４Ａの状態は、人の手８０１が把持部１０３を把持しておらず、マニピュレータ１０１は停止した状態である。このとき、把持部１０３は手先効果部１０２に引っかかっている。言い換えれば、図３４Ａの把持部１０３の上側の側面部１０３ｂと、上側の側面部１０３ｂに対向する手先効果部１０２の側面部１０２ｂとが接触して、上側の側面部１０３ｂと側面部１０２ｂとの隙間９０の間隔が０となっている。逆に、図３４Ａの把持部１０３の下側の側面部１０３ｂと、下側の側面部１０３ｂに対向する手先効果部１０２の側面部１０２ｂとの間隔が大きくあいている。
【０１９１】
次いで、図３４Ｂの状態は、人の手８０１が把持部１０３の図３４Ｂの上下の対向する側面部１０３ｂ（直接的には、力センサ３００１Ｂと力センサ３００１Ａ）を把持し、把持検出部３１０２で「把持有り」が検出された瞬間であって、マニピュレータ１０１は、制御装置６０２により追従制御を行うことができる待機状態である。
【０１９２】
次いで、図３４Ｃの状態は、人の手８０１の把持が検出された直後であって、人の手８０１の指８０１ａが、図３４Ｃの上下に対向する２つの力センサ３００１Ｂと力センサ３００１Ａに接触してこれらを把持する力の大きさを小さくすることにより、制御装置６０２により、マニピュレータ１０１が追従制御をゆっくり行っている状態である。
【０１９３】
次いで、図３４Ｄの状態は、人の手８０１が把持部１０３を把持し、制御装置６０２により、マニピュレータ１０１が追従制御しているときである。すなわち、人の手８０１の指８０１ａが、対向する２つの力センサ３００１Ｂと力センサ３００１Ａを把持する力の大きさを、図３４Ｃの状態よりも大きくすることによって、制御装置６０２により、マニピュレータ１０１が追従制御を素早く行っている状態である。
【０１９４】
次いで、図３４Ｅの状態は、追従制御を終了する前の状態であって、人の手８０１の指８０１ａが、対向する２つの力センサ３００１Ｂと力センサ３００１Ａを把持する力の大きさを、図３４Ｄの状態よりも小さくすることによって、制御装置６０２により、マニピュレータ１０１が、図３４Ｃの追従制御よりも遅く、追従制御をゆっくり行っている。
【０１９５】
次いで、図３４Ｆの状態は、追従制御を終了する直前の状態であって、人の手８０１の指８０１ａが、対向する２つの力センサ３００１Ｂと力センサ３００１Ａを把持する力の大きさが、図３４Ｅと同様に、図３４Ｄの状態よりも小さいので、制御装置６０２により、マニピュレータ１０１が追従制御をゆっくり行っている。このとき、制御装置６０２により、マニピュレータ１０１は追従制御をゆっくり行っているので、把持部１０３は手先効果部１０２に緩やかに接触する。
【０１９６】
次いで、図３４Ｇの状態は、人の手８０１が力センサ３００１に触れておらず、マニピュレータ１０１は停止した状態である。
【０１９７】
図３５の上段のグラフ（Ａ）は、図３４Ａ〜図３４Ｇにおける時間と係数ｋの値との関係を示している。横軸は、時間（秒）を表し、縦軸は係数ｋの値を表す。グラフ（Ａ）上の太線が、時間に対する係数ｋの値を示す。図３５の中段のグラフ（Ｂ）は、図３４Ａ〜図３４Ｇにおける時間と速度との関係を示している。横軸は、時間（秒）を表し、縦軸は速度（ｍ／秒）を表す。グラフ（Ｂ）上の太線が、時間に対する速度を示す。図３５の下段のグラフ（Ｃ）は、図３４Ａ〜図３４Ｇにおける時間と力の大きさとの関係を示している。横軸は、時間（秒）を表し、縦軸は力の大きさ（Ｎ）を表す。グラフ（Ｃ）上の太線が、時間に対する力情報取得部３１０１で取得した力情報の大きさを示す。また、横軸の下には、その時間におけるマニピュレータ１０１の状態が示してある。図３５の（Ａ）〜（Ｃ）から、追従制御開始時及び追従制御終了時において、人が把持部１０３を把持する力の大きさに応じて、マニピュレータ１０１がゆっくりと追従制御を行っていることがわかる。
【０１９８】
第４実施形態のロボット６０１におけるロボットアーム１００の制御装置６０２の操作手順を図３６のフローチャートを用いて説明する。
【０１９９】
ステップＳ３６０１では、相対位置情報取得部６０７において、手先効果部１０２に対する把持部１０３の相対位置情報を取得する。力情報取得部３１０１において、入出力ＩＦ１６０４を介して力センサ３００１に外部から加えられた力情報を取得する。
【０２００】
ステップＳ１３０２では、力情報取得部３１０１から取得した力情報を基に人が把持部１０３を把持しているか、把持検出部３１０２で検出する。把持検出部３１０２で検出した結果を、把持検出部６１１から、追従制御切替部６１２と、制御係数情報決定部３１０３とに出力する。人が把持部１０３を把持していると把持検出部３１０２で検出した場合は、ステップＳ１３０３に進む。人が把持部１０３を把持していないと把持検出部３１０２で検出した場合は、このフローを終了する。
【０２０１】
ステップＳ１３０３では、相対位置情報取得部６０７から取得した相対位置情報が所定の閾値の範囲内に収まっているか、追従制御部６０６で判定する。相対位置情報が閾値の範囲内に収まっていると追従制御部６０６で判定した場合は、このフローを終了する。相対位置情報が閾値の範囲内に収まっていないと追従制御部６０６で判定した場合は、ステップＳ３６０２に進む。
【０２０２】
ステップＳ３６０２では、力情報取得部３１０１から取得した力情報を基に、人が把持部１０３を把持する力の大きさが２．０Ｎ以上かを、制御係数情報決定部３１０３で判定する。人が把持部１０３を把持する力の大きさが２．０Ｎ以上であると制御係数情報決定部３１０３で判定した場合は、ステップＳ２００２に進む。人が把持部１０３を把持する力の大きさが２．０Ｎ以上でないと制御係数情報決定部３１０３で判定した場合は、ステップＳ２００３に進む。
【０２０３】
ステップＳ２００２では、制御係数情報決定部３１０３において、式（４）における移動量に関する係数ｋの値を１．０とし、ステップＳ１３０４に進む。
【０２０４】
ステップＳ２００３では、制御係数情報決定部３１０３において、式（４）における移動量に関する係数ｋの値を０．５とし、ステップＳ１３０４に進む。
【０２０５】
ステップＳ１３０４では、追従制御部６０６で、閾値の範囲を超えている相対位置情報が閾値内に収まるような移動量を求める。追従制御部６０６で求めた移動量を追従制御部６０６から制御部６０５に出力し、ステップＳ１３０５に進む。
【０２０６】
ステップＳ１３０５では、制御部６０５で、追従制御部６０６から取得した移動量を基に、マニピュレータ１０１を追従制御し、このフローを終了する。
【０２０７】
第４実施形態によれば、第１実施形態での作用効果に加えて、人が把持部１０３を把持する力の大きさに応じて、マニピュレータ１０１が追従制御をゆっくり行うことによって、追従制御開始時及び追従制御終了時において、第３実施形態で用いた把持位置を把持し直す方法と比べて、より容易な方法で安全性を向上できる。
【０２０８】
（第５実施形態）
以下、本発明の第５実施形態におけるロボットについて説明する。
【０２０９】
人が把持部１０３を把持し、急激に移動させたときに、マニピュレータ１０１の追従速度では追従することができない場合がある。つまり、人の手８０１が把持部１０３を一定時間毎（例えば、１ｍ秒毎）に移動させた移動量が、マニピュレータ１０１が一定時間毎に移動できる移動量を超えた場合である。このような場合には、マニピュレータ１０１がどのような振る舞いを起こすかわからず、暴走する危険性もあり、大変危険である。そこで、第５実施形態では、この課題への対応策を行う。
【０２１０】
図３７は、本発明の第５実施形態のロボットにおけるマニピュレータ１０１と、手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ３７０１との構成図である。マニピュレータ１０１の手先には、手先効果部１０２が取り付けられている。把持部１０３は人が作業を行う際に把持するための部分であり、手先効果部１０２と分離した構造となっている。相対位置センサ１０４は、手先効果部１０２に対する把持部１０３の相対位置を検出するセンサである。
【０２１１】
接触センサ３７０１は、把持部１０３の内側の側面部及び底面部にそれぞれ取り付けられて、手先効果部１０２との接触を検出するセンサである。ここでは、５個の接触センサ３７０１を用いる（詳細については後述する）。
【０２１２】
手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ３７０１とについて、図３８を用いて詳しく説明する。
【０２１３】
図３８Ａは、手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ３７０１との平面図である。図３８Ｂは、手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ３７０１との図３８Ａ中のＡ−Ａ線の断面図であり、矢印３８Ｂから見た断面図である。図３８Ｃは、手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ３７０１との図３８Ａ中のＢ−Ｂ線の断面図であり、矢印３８Ｃから見た断面図である。手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ３７０１との機能は、第１〜４実施形態と同様である。
【０２１４】
第１〜４実施形態との違いは、接触センサ３７０１の取り付け位置である。第１〜４実施形態では、把持部１０３の外側に取り付けられて、把持部１０３の外部の対象物と把持部１０３との接触を検出していたのに対して、第５実施形態では、把持部１０３の内側に取り付けられて、把持部１０３と手先効果部１０２との接触を検出する。
【０２１５】
接触センサ３７０１は、把持部１０３の内側に取り付けられ、手先効果部１０２との接触の有無を検出する。各接触センサ３７０１の出力はデジタル信号であり、「接触有り」の場合には「１」を出力し、「接触無し」の場合には「０」を出力する。各接触センサ３７０１で検出した接触情報は、入出力ＩＦ６０８に出力する。図３８Ａ〜図３８Ｃに示すように、接触センサ３７０１は３７０１Ａ〜３７０１Ｅの５箇所に取り付けられている。すなわち、接触センサ３７０１Ａ〜３７０１Ｄが４つの側面部１０３ｂの内面に取り付けられ、接触センサ３７０１Ｅが底面部１０３ａの内面に取り付けられている。具体的な接触センサを個々に説明する場合には、後述するように参照符号３７０１Ａ〜３７０１Ｅで示し、総称的に説明する場合には参照符号３７０１で示す。なお、ここでは、図３８Ａ及び図３８Ｂに示すように、接触センサ３７０１を配置したが、接触センサ３７０１の配置場所又は個数などは、把持部１０３と手先効果部１０２との接触の情報を取得できるならば、どのように選択しても構わない。
【０２１６】
第５実施形態では、図３９のブロック図を用いる。本発明の第５実施形態のロボット６０１におけるマニピュレータ１０１と、制御部６０５と、追従制御部６０６と、相対位置情報取得部６０７と、入出力ＩＦ６０８と、モータドライバ６０９と、接触情報取得部６１０とは、第１実施形態と同様であるので、共通の参照符号を付して共通部分の説明は省略し、異なる部分についてのみ、以下、詳細に説明する。
【０２１７】
まず、追従制御切替制御部６００は、接触情報取得部６１０と、追従制御切替部３９０１とで構成されて、接触情報取得部６１０で取得した、把持部１０３に対する手先効果部１０２の接触の情報を基に、把持部１０３と手先効果部１０２とが接触した場合のみ追従制御を停止し、把持部１０３と手先効果部１０２とが接触していない場合は追従制御を行う、追従制御情報を出力するものである。
【０２１８】
追従制御切替部３９０１は、接触情報取得部６１０からの接触情報に応じて追従制御情報を決定し、決定した追従制御情報を追従制御切替部３９０１から制御部６０５に出力する。追従制御切替部３９０１における追従制御情報の選択方法は、接触情報取得部６１０からの接触情報において１箇所でも「接触有り」（出力が「１」）の情報があると、「追従制御オフ」を選択し、全ての箇所で「接触無し」（出力が「０」）の情報であると、「追従制御オン」を選択する。よって、把持部１０３が手先効果部１０２と接触したと追従制御切替部３９０１で決定したときのみ「追従制御オフ」となり、把持部１０３が手先効果部１０２と接触していないと追従制御切替部３９０１で決定したときは「追従制御オン」となる。なお、「追従制御オン」の選択方法について、ここでは、１箇所でも接触した場合としたが、２箇所以上接触した場合又は予め定めた箇所に接触した場合などのように、他の接触方法を用いることも可能である。
【０２１９】
図４０Ａ〜図４０Ｃは、人とマニピュレータ１０１とで協調して対象物１１０１を搬送するときに、マニピュレータ１０１が追従する手順を示す。マニピュレータ１０１の手先部の例えば先端１００２ａにハンド１０１５を取り付け、ハンド１０１５で対象物１１０１を把持させる。その後、図４０Ａ→図４０Ｂ→図４０Ｃの順に状態が遷移する。
【０２２０】
まず、図４０Ａの状態は、人の手８０１が把持部１０３を移動させ、マニピュレータ１０１が追従制御を行っている状態である。
【０２２１】
次いで、図４０Ｂの状態は、人の手８０１が把持部１０３を急激に移動させ、把持部１０３が手先効果部１０２と接触している状態である。この状態は、人の手８０１が把持部１０３を一定時間毎（例えば、１ｍ秒毎）に移動させた移動量が、制御装置６０２によりマニピュレータ１０１が一定時間毎に移動できる移動量を超え、追従制御が把持部１０３の移動に対して遅れる場合に発生する。
【０２２２】
次いで、図４０Ｃの状態は、手先効果部１０２が接触センサ３７０１と接触し、マニピュレータ１０１が停止している状態である。
【０２２３】
第５実施形態のロボット６０１におけるロボットアーム１００の制御装置６０２の操作手順を図４１のフローチャートを用いて説明する。
【０２２４】
ステップＳ１３０１では、相対位置情報取得部６０７において、手先効果部１０２に対する把持部１０３の相対位置情報を取得する。接触情報取得部６１０において、接触センサ３７０１の手先効果部１０２に対する接触情報を取得する。
【０２２５】
ステップＳ４１０１では、接触情報取得部６１０から取得した接触情報を基に、手先効果部１０２が接触センサ１０５と接触しているか、追従制御切替部３９０１で判定する。手先効果部１０２が接触センサ３７０１と接触していると追従制御切替部３９０１で判定した場合は、このフローを終了する。手先効果部１０２が接触センサ３７０１と接触していないと追従制御切替部３９０１で判定した場合は、ステップＳ１３０３に進む。
【０２２６】
ステップＳ１３０３では、相対位置情報取得部６０７から取得した相対位置情報が所定の閾値の範囲内に収まっているか、追従制御部６０６で判定する。相対位置情報が閾値の範囲内に収まっていると追従制御部６０６で判定した場合は、このフローを終了する。相対位置情報が閾値の範囲内に収まっていないと追従制御部６０６で判定した場合は、ステップＳ１３０４に進む。
【０２２７】
ステップＳ１３０４では、追従制御部６０６で、閾値の範囲を超えている相対位置情報が閾値内に収まるような移動量を求める。追従制御部６０６で求めた移動量を、追従制御部６０６から制御部６０５に出力し、ステップＳ１３０５に進む。
【０２２８】
ステップＳ１３０５では、制御部６０５で、追従制御部６０６から取得した移動量を基に、マニピュレータ１０１を追従制御し、このフローを終了する。
【０２２９】
第５実施形態によれば、第１実施形態での作用効果に加えて、人が把持部１０３を急激に移動させた場合、マニピュレータ１０１の追従制御が遅れ、マニピュレータ１０１が暴走する危険性がある。そこで、把持部１０３が手先効果部１０２と接触した場合はマニピュレータ１０１を停止させるように制御装置６０２で制御することによって、その危険性を防ぎ、安全性を高めることができる。
【０２３０】
なお、上記様々な実施形態のうちの任意の実施形態を適宜組み合わせることにより、それぞれの有する効果を奏するようにすることができる。
【０２３１】
なお、上記様々な実施形態又は変形例のうちの任意の実施形態又は変形例を適宜組み合わせることにより、それぞれの有する効果を奏するようにすることができる。
【産業上の利用可能性】
【０２３２】
本発明は、産業用ロボット又は生産設備などにおける可動機構のロボットアームの制御装置及び制御方法、ロボット、ロボットアーム制御プログラム、並びに、集積電子回路として有用である。また、産業用ロボットに限らず、家庭用ロボットのロボットアームの制御装置及び制御方法、ロボット、ロボットアーム制御プログラム、並びに、集積電子回路として適用される可能性がある。【０２３３】
本発明は、添付図面を参照しながら好ましい実施形態に関連して充分に記載されているが、この技術の熟練した人々にとっては種々の変形又は修正は明白である。そのような変形又は修正は、添付した請求の範囲による本発明の範囲から外れない限りにおいて、その中に含まれると理解されるべきである。
【図１】
2012101956.tif 000008
【図２Ａ】
2012101956.tif 000009
【図２Ｂ】
2012101956.tif 000010
【図２Ｃ】
2012101956.tif 000011
【図３Ａ】
2012101956.tif 000012
【図３Ｂ】
2012101956.tif 000013
【図３Ｃ】
2012101956.tif 000014
【図３Ｄ】
2012101956.tif 000015
【図３Ｅ】
2012101956.tif 000016
【図３Ｆ】
2012101956.tif 000017
【図３Ｇ】
2012101956.tif 000018
【図３Ｈ】
2012101956.tif 000019
【図３Ｉ】
2012101956.tif 000020
【図３Ｊ】
2012101956.tif 000021
【図３Ｋ】
2012101956.tif 000022
【図３Ｌ】
2012101956.tif 000023
【図４Ａ】
2012101956.tif 000024
【図４Ｂ】
2012101956.tif 000025
【図４Ｃ】
2012101956.tif 000026
【図４Ｄ】
2012101956.tif 000027
【図５】
2012101956.tif 000028
【図６】
2012101956.tif 000029
【図７】
2012101956.tif 000030
【図８】
2012101956.tif 000031
【図９Ａ】
2012101956.tif 000032
【図９Ｂ】
2012101956.tif 000033
【図９Ｃ】
2012101956.tif 000034
【図１０】
2012101956.tif 000035
【図１１Ａ】
2012101956.tif 000036
【図１１Ｂ】
2012101956.tif 000037
【図１１Ｃ】
2012101956.tif 000038
【図１１Ｄ】
2012101956.tif 000039
【図１１Ｅ】
2012101956.tif 000040
【図１２Ａ】
2012101956.tif 000041
【図１２Ｂ】
2012101956.tif 000042
【図１２Ｃ】
2012101956.tif 000043
【図１２Ｄ】
2012101956.tif 000044
【図１３】
2012101956.tif 000045
【図１４Ａ】
2012101956.tif 000046
【図１４Ｂ】
2012101956.tif 000047
【図１４Ｃ】
2012101956.tif 000048
【図１５】
2012101956.tif 000049
【図１６】
2012101956.tif 000050
【図１７】
2012101956.tif 000051
【図１８Ａ】
2012101956.tif 000052
【図１８Ｂ】
2012101956.tif 000053
【図１８Ｃ】
2012101956.tif 000054
【図１８Ｄ】
2012101956.tif 000055
【図１８Ｅ】
2012101956.tif 000056
【図１９】
2012101956.tif 000057
【図２０】
2012101956.tif 000058
【図２１Ａ】
2012101956.tif 000059
【図２１Ｂ】
2012101956.tif 000060
【図２１Ｃ】
2012101956.tif 000061
【図２２Ａ】
2012101956.tif 000062
【図２２Ｂ】
2012101956.tif 000063
【図２２Ｃ】
2012101956.tif 000064
【図２３Ａ】
2012101956.tif 000065
【図２３Ｂ】
2012101956.tif 000066
【図２３Ｃ】
2012101956.tif 000067
【図２４】
2012101956.tif 000068
【図２５】
2012101956.tif 000069
【図２６Ａ】
2012101956.tif 000070
【図２６Ｂ】
2012101956.tif 000071
【図２７Ａ】
2012101956.tif 000072
【図２７Ｂ】
2012101956.tif 000073
【図２７Ｃ】
2012101956.tif 000074
【図２７Ｄ】
2012101956.tif 000075
【図２７Ｅ】
2012101956.tif 000076
【図２７Ｆ】
2012101956.tif 000077
【図２７Ｇ】
2012101956.tif 000078
【図２７Ｈ】
2012101956.tif 000079
【図２７Ｉ】
2012101956.tif 000080
【図２７Ｊ】
2012101956.tif 000081
【図２７Ｋ】
2012101956.tif 000082
【図２７Ｌ】
2012101956.tif 000083
【図２７Ｍ】
2012101956.tif 000084
【図２７Ｎ】
2012101956.tif 000085
【図２８】
2012101956.tif 000086
【図２９】
2012101956.tif 000087
【図３０Ａ】
2012101956.tif 000088
【図３０Ｂ】
2012101956.tif 000089
【図３０Ｃ】
2012101956.tif 000090
【図３１】
2012101956.tif 000091
【図３２】
2012101956.tif 000092
【図３３】
2012101956.tif 000093
【図３４Ａ】
2012101956.tif 000094
【図３４Ｂ】
2012101956.tif 000095
【図３４Ｃ】
2012101956.tif 000096
【図３４Ｄ】
2012101956.tif 000097
【図３４Ｅ】
2012101956.tif 000098
【図３４Ｆ】
2012101956.tif 000099
【図３４Ｇ】
2012101956.tif 000100
【図３５】
2012101956.tif 000101
【図３６】
2012101956.tif 000102
【図３７】
2012101956.tif 000103
【図３８Ａ】
2012101956.tif 000104
【図３８Ｂ】
2012101956.tif 000105
【図３８Ｃ】
2012101956.tif 000106
【図３９】
2012101956.tif 000107
【図４０Ａ】
2012101956.tif 000108
【図４０Ｂ】
2012101956.tif 000109
【図４０Ｃ】
2012101956.tif 000110
【図４１】
2012101956.tif 000111
【手続補正書】
【提出日】平成24年7月12日(2012.7.12)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアームの制御装置であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を取得する相対位置情報取得部と、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を求める追従制御部と、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を出力する追従制御切替制御部と
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを移動制御する制御部とを備えるとともに、
前記追従制御切替制御部は、
前記把持部と他の物との接触の有無の情報を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無の情報と前記人が把持する位置又は力の大きさの情報を示す把持情報を検出する把持検出部と、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持する位置又は力の大きさに応じて追従速度を変更する、追従制御情報を出力する追従制御切替部とを備える、のロボットアーム。
【請求項２】
前記把持検出部は、前記人の把持の有無の情報に加えて、把持開始からの経過時間も把持情報として検出する一方、
前記把持部に対する前記人の把持の有無の情報と前記把持開始からの経過時間と、追従速度を決定する制御係数の情報とが関連付けられた関連情報を取得する制御係数情報取得部と、
前記把持検出部で検出した把持情報と前記制御係数情報取得部で取得した前記関連情報とを基に、追従速度を決定する制御係数を決定する制御係数情報決定部とをさらに備え、
前記把持部を前記人が把持した直後の所定の一定時間は、前記制御係数情報取得部で取得した前記制御係数に基づいて、追従制御の追従速度を他の時間の追従速度よりも遅くするように制御する請求項１に記載のロボットアーム。
【請求項３】
前記把持検出部は、前記人の把持の有無の情報に加えて、前記把持部を前記人が把持する位置も把持情報として検出する一方、
前記把持部に対する前記人の把持の有無の情報と前記把持部を前記人が把持する位置と、追従速度を決定する制御係数の情報とが関連付けられた関連情報を取得する制御係数情報取得部と、
前記把持検出部で検出した把持情報と前記制御係数情報取得部で取得した前記関連情報とを基に、追従速度を決定する制御係数を決定する制御係数情報決定部とをさらに備え、
前記把持部を前記人が把持する位置に応じて、前記制御係数情報取得部で取得した前記制御係数に基づいて追従制御の追従速度を変化させるように制御する請求項１に記載のロボットアーム。
【請求項４】
前記追従制御切替制御部は、
前記把持部に外部から加えられた力の大きさを取得する力情報取得部を備えて、
前記把持検出部は、前記力情報取得部で取得した力情報を基に、前記把持部に対する前記人の把持の有無の情報を検出し、さらに前記把持部を前記人が把持する力の大きさも把持情報として検出する一方、
前記把持部に対する前記人の把持の有無の情報と、前記把持部を前記人が把持する力の大きさと、追従速度を決定する制御係数とが関連付けられた関連情報を取得する制御係数情報取得部と、
前記把持検出部で検出した把持情報と前記制御係数情報取得部で取得した前記関連情報とを基に、追従速度を決定する制御係数を決定する制御係数情報決定部とを備えて、
前記把持部を前記人が把持する力の大きさに応じて、前記制御係数情報取得部で取得した前記制御係数に基づいて追従制御の追従速度を変化させるように制御する請求項１に記載のロボットアーム。
【請求項５】
前記追従制御切替制御部は、
前記把持部に対する前記手先効果部の接触の有無を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部と前記手先効果部とが接触した場合のみ追従制御を停止し、前記把持部と前記手先効果部とが接触していない場合は追従制御を行う、追従制御情報を出力する追従制御切替部とを備える
請求項１に記載のロボットアーム。
【請求項６】
請求項１〜５のいずれか１つに記載のロボットアームを備えるロボット。
【請求項７】
人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアームの制御方法であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を相対位置情報取得部で取得し、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を追従制御部で求め、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を追従制御切替制御部で出力し
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを制御部で移動制御するとともに、
前記追従制御切替制御部において前記追従制御情報を出力するとき、
前記把持部と他の物との接触の有無の情報を接触情報取得部で取得し、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無の情報と前記人が把持する位置又は力の大きさの情報を示す把持情報を把持検出部で検出し、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持する位置又は力の大きさに応じて追従速度を変更する、追従制御情報を追従制御切替部で出力する、ロボットアームの制御方法。
【請求項８】
人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアーム制御プログラムであって、
コンピュータに、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を相対位置情報取得部で取得するステップと、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を追従制御部で求めるステップと、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を追従制御切替制御部で出力するステップと
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを制御部で移動制御するステップとを実行させるとともに、
前記追従制御切替制御部において前記追従制御情報を出力するステップでは、
前記把持部と他の物との接触の有無の情報を接触情報取得部で取得するステップと、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無の情報と前記人が把持する位置又は力の大きさの情報を示す把持情報を把持検出部で検出するステップと、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持する位置又は力の大きさに応じて追従速度を変更する、追従制御情報を追従制御切替部で出力するステップと、を実行させるための、ロボットアーム制御プログラム。
【請求項９】
人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアーム用集積電子回路であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を取得する相対位置情報取得部と、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を求める追従制御部と、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を出力する追従制御切替制御部と
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを移動制御する制御部とを備えるとともに、
前記追従制御切替制御部は、
前記把持部と他の物との接触の有無の情報を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無の情報と前記人が把持する位置又は力の大きさの情報を示す把持情報を検出する把持検出部と、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持する位置又は力の大きさに応じて追従速度を変更する、追従制御情報を出力する追従制御切替部とを備える、ロボットアーム用集積電子回路。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００５
【補正方法】変更
【補正の内容】
【０００５】
グラム、並びに、集積電子回路を提供することにある。
課題を解決するための手段
［００１８］
上記の目的を達成するために、本発明は以下のように構成する。
［００１９］
本発明の第１態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアームの制御装置であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を取得する相対位置情報取得部と、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を求める追従制御部と、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を出力する追従制御切替制御部と
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを移動制御する制御部とを備えるとともに、
前記追従制御切替制御部は、
前記把持部と他の物との接触の有無の情報を取得する接触情報取得部と
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を検出する把持検出部と、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を出力する追従制御切替部とを備える、ロボットアームを提供する。
［００２０］
本発明の別の態様によれば、前記記載のロボットアームを備えるロボットを提供する。
［００２１］
本発明のまた別の態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアームの制御方法であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を相対位置情報取得部で取得し、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を追従制御部で求め、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を追従制御切替制御部で出力し
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを制御部で移動制御するとともに、
前記追従制御切替制御部において前記追従制御情報を出力するとき、
前記把持部と他の物との接触の有無の情報を接触情報取得部で取得し、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を把持検出部で検出し、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を追従制御切替部で出力する、ロボットアームの制御方法を提供する。
［００２２］
本発明のさらに別の態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアーム制御プログラムであって、
コンピュータに、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を相対位置情報取得部で取得するステップと、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を追従制御部で求めるステップと、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を追従制御切
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
替制御部で出力するステップと、
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを制御部で移動制御するステップとを実行させるとともに、
前記追従制御切替制御部において前記追従制御情報を出力するステップでは、
前記把持部と他の物との接触の有無の情報を接触情報取得部で取得するステップと、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を把持検出部で検出するステップと、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を追従制御切替部で出力するステップと、を実行させるための、ロボットアーム制御プログラムを提供する。
［００２３］
本発明のさらに別の態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアーム用集積電子回路であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を取得する相対位置情報取得部と、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】変更
【補正の内容】
【０００９】
の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を求める追従制御部と、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を出力する追従制御切替制御部と
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを移動制御する制御部とを備えるとともに、
前記追従制御切替制御部は、
前記把持部と他の物との接触の有無の情報を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を検出する把持検出部と、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を出力する追従制御切替部とを備える、ロボットアーム用集積電子回路を提供する。
発明の効果
［００２４］
本発明のロボットアームの制御装置及び制御方法、ロボット、ロボットアーム制御プログラム、並びに、集積電子回路によれば、ロボットアーム本体に取り付けられた手先効果部と人が把持する把持部とが機構的に分離しており、人が把持部を操作することによってロボットアームを操作することができる。その結果、操作時に、把持部に対するロボットアーム本体の慣性の影響を除去でき、操作性を非常に良くすることができる。また、ロボットアー
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００１８
【補正方法】変更
【補正の内容】
【００１８】
［図４０Ａ］図４０Ａは、本発明の第５実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
［図４０Ｂ］図４０Ｂは、本発明の第５実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
［図４０Ｃ］図４０Ｃは、本発明の第５実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
［図４１］図４１は、本発明の第５実施形態のロボットにおける相対位置情報、接触情報を取得してから追従制御を行うまでの処理の流れを示すフローチャートである。
発明を実施するための形態
［００２６］
以下に、本発明にかかる実施の形態を図面に基づいて詳細に説明する。
［００２７］
以下、図面を参照して本発明における実施形態を詳細に説明する前に、本発明の種々の態様について説明する。
［００２８］
本発明の第１態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアームの制御装置であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を取得する相対位置情報取得部と、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を求める追従制御部と、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を出力する追
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００１９
【補正方法】変更
【補正の内容】
【００１９】
従制御切替制御部と、
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを移動制御する制御部とを備えるとともに、
前記追従制御切替制御部は、
前記把持部と他の物との接触の有無の情報を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を検出する把持検出部と、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を出力する追従制御切替部とを備える、ロボットアームを提供する。
［００２９］
本発明の第２態様によれば、前記把持検出部は、前記人の把持の有無の情報に加えて、把持開始からの経過時間も把持情報として検出する一方、
前記把持部に対する前記人の把持の有無の情報と前記把持開始からの経過時間と、追従速度を決定する制御係数の情報とが関連付けられた関連情報を取得する制御係数情報取得部と、
前記把持検出部で検出した把持情報と前記制御係数情報取得部で取得した前記関連情報とを基に、追従速度を決定する制御係数を決定する制御係数情報決定部とをさらに備え、
前記把持部を前記人が把持した直後の所定の一定時間は、前記制御係数情報取得部で取得した前記制御係数に基づいて、追従制御の追従速度を他の時間の追従速度よりも遅くするように制御する第１の態様に記載のロボットア
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００２０
【補正方法】変更
【補正の内容】
【００２０】
ームを提供する。
［００３０］
本発明の第３態様によれば、前記把持検出部は、前記人の把持の有無の情報に加えて、前記把持部を前記人が把持する位置も把持情報として検出する一方、
前記把持部に対する前記人の把持の有無の情報と前記把持部を前記人が把持する位置と、追従速度を決定する制御係数の情報とが関連付けられた関連情報を取得する制御係数情報取得部と、
前記把持検出部で検出した把持情報と前記制御係数情報取得部で取得した前記関連情報とを基に、追従速度を決定する制御係数を決定する制御係数情報決定部とをさらに備え、
前記把持部を前記人が把持する位置に応じて、前記制御係数情報取得部で取得した前記制御係数に基づいて追従制御の追従速度を変化させるように制御する第１の態様に記載のロボットアームを提供する。
［００３１］
本発明の第４態様によれば、前記追従制御切替制御部は、
前記把持部に外部から加えられた力の大きさを取得する力情報取得部を備えて、
前記把持検出部は、前記力情報取得部で取得した力情報を基に、前記把持部に対する前記人の把持の有無の情報を検出し、さらに前記把持部を前記人が把持する力の大きさも把持情報として検出する一方、
前記把持部に対する前記人の把持の有無の情報と、前記把持部を前記人が把持する力の大きさと、追従速度を決定する制御係数とが関連付けられた関連情報を取得する制御係数情報取得部と、
前記把持検出部で検出した把持情報と前記制御係数情報取得部で取得した前記関連情報とを基に、追従速度を決定する制御係数を決定する制御係数情報決定部とを備えて、
前記把持部を前記人が把持する力の大きさに応じて、前記制御係数情報取得部で取得した前記制御係数に基づいて追従制御の追従速度を変化させるように制御する第１の態様に記載のロボットアームを提供する。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００２１
【補正方法】変更
【補正の内容】
【００２１】
［００３２］
本発明の第５態様によれば、前記追従制御切替制御部は、
前記把持部に対する前記手先効果部の接触の有無を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部と前記手先効果部とが接触した場合のみ追従制御を停止し、前記把持部と前記手先効果部とが接触していない場合は追従制御を行う、追従制御情報を出力する追従制御切替部とを備える第１の態様に記載のロボットアームを提供する。
［００３３］
本発明の第６態様によれば、第１〜５のいずれか１つの態様に記載のロボットアームを備えるロボットを提供する。
［００３４］
本発明の第７態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアームの制御方法であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を相対位置情報取得部で取得し、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を追従制御部で求め、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を追従制御切替制御部で出力し
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアーム
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】００２２
【補正方法】変更
【補正の内容】
【００２２】
の移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを制御部で移動制御するとともに、
前記追従制御切替制御部において前記追従制御情報を出力するとき、
前記把持部と他の物との接触の有無の情報を接触情報取得部で取得し、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を把持検出部で検出し、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を追従制御切替部で出力する、ロボットアームの制御方法を提供する。
［００３５］
本発明の第８態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアーム制御プログラムであって、
コンピュータに、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を相対位置情報取得部で取得するステップと、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を追従制御部で求めるステップと、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部で
【手続補正１２】
【補正対象書類名】明細書
【補正対象項目名】００２３
【補正方法】変更
【補正の内容】
【００２３】
の追従制御を行わないように追従制御を切替える追従制御情報を追従制御切替制御部で出力するステップと
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを制御部で移動制御するステップとを実行させるとともに、
前記追従制御切替制御部において前記追従制御情報を出力するステップでは、
前記把持部と他の物との接触の有無の情報を接触情報取得部で取得するステップと、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を把持検出部で検出するステップと、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を追従制御切替部で出力するステップと、を実行させるための、ロボットアーム制御プログラムを提供する。
［００３６］
本発明の第９態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアーム用集積電子回路であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を取得する相対位置情報取得部と、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の
【手続補正１３】
【補正対象書類名】明細書
【補正対象項目名】００２４
【補正方法】変更
【補正の内容】
【００２４】
範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を求める追従制御部と、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を出力する追従制御切替制御部と
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを移動制御する制御部とを備えるとともに、
前記追従制御切替制御部は、
前記把持部と他の物との接触の有無の情報を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を検出する把持検出部と、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を出力する追従制御切替部とを備える、ロボットアーム用集積電子回路を提供する。
［００３７］
以下、本発明の実施の形態について、図面を参照しながら説明する。
［００３８］
（第１実施形態）
以下、本発明の第１実施形態におけるロボットについて説明する。
［００３９］
本発明の第１実施形態のロボットでは、ロボットアームの操作性を向上させるために、操作時に人が把持する把持部をロボットアーム本体と機構的に分離し、ロボットアーム本体は把持部の移動に追従する（詳細は後で説明す
【手続補正１４】
【補正対象書類名】明細書
【補正対象項目名】００３３
【補正方法】変更
【補正の内容】
【００３３】
Ａ〜１０５Ｅの５箇所に取り付けられている。すなわち、接触センサ１０５Ａ〜１０５Ｄが４つの側面部１０３ｂの外面に取り付けられ、接触センサ１０５Ｅが底面部１０３ａの外面に取り付けられている。なお、ここでは、図２Ａ及び図２Ｂに示すように、接触センサ１０５を配置したが、接触センサ１０５の配置場所又は個数などは、把持部１０３と他の物体との接触の情報を取得できるならば、どのように選択しても構わない。
［００６８］
図６は、本発明の第１実施形態のロボットにおけるロボットアーム１００のブロック図を示す。図４において、ロボットアーム１００は、マニピュレータ１０１と、ロボットアーム１００の制御装置６０２とで構成されている。
［００６９］
ロボットアーム１００の制御装置６０２は、制御装置本体部６０３と、周辺装置６０４とで構成されている。制御装置本体部６０３は、制御部６０５と、追従制御部６０６と、相対位置情報取得部６０７と、追従制御切替制御部６００（接触情報取得部６１０と、把持検出部６１１と、追従制御切替部６１２）とで構成されている。周辺装置６０４は、入出力ＩＦ６０８と、モータドライバ６０９とで構成されている。入出力ＩＦ６０８には、制御装置６０２での制御動作のオン・オフスイッチも含まれている。追従制御切替制御部６００は、接触情報取得部６１０と、把持検出部６１１と、追従制御切替部６１２とで構成されて、把持部１０３が他の物と接触しているとき追従制御部６０６での追従制御を行う一方、把持部１０３が他の物と接触していないとき追従制御部６０６での追従制御を行わないように追従制御を切替える追従制御情報を出力するものである。それぞれの機能について、以下に説明する。
［００７０］
相対位置情報取得部６０７は、入出力ＩＦ６０８から取得したギャップセンサｓｘ１、ｓｙ１、ｓｙ２、ｓｚ１、ｓｚ２、ｓｚ３のそれぞれの計測値ｇを基に、手先効果部１０２に対する把持部１０３の相対位置Δｒを求める。求めた相対位置Δｒである相対位置情報を、相対位置情報取得部６０７から追従制御部６０６に出力する。ここで、ギャップセンサｓｙ１−ｓｙ２間の間隔と、ギャ
【手続補正１５】
【補正対象書類名】明細書
【補正対象項目名】００３５
【補正方法】変更
【補正の内容】
【００３５】
ただし、相対位置の目標値Δｒｄは次式（５）で表され、各ギャップセンサの値ｇが３ｍｍのときをΔｒｄ＝０と定め、ここでは、相対位置の目標値Δｒｄを０とする。また、式（４）中で使用されるΔｘｄ、Δｙｄ、Δｚｄ、Δαｄ、Δβｄ、Δγｄについて説明する。Δｘｄは、図２Ａ中のｘ軸に対する平行移動方向の相対位置Δｘの目標値である。Δｙｄは、図２Ａ中のｙ軸に対する平行移動方向の相対位置Δｙの目標値である。Δｚｄは、図２Ａ中のｚ軸に対する平行移動方向の相対位置Δｚの目標値である。Δαｄは、図２Ａ中のｘ軸に対する回転方向の相対位置Δαの目標値である。Δβｄは、図２Ａ中のｙ軸に対する回転方向の相対位置Δβの目標値である。Δγｄは、図２Ａ中のｚ軸に対する回転方向の相対位置Δγの目標値である。相対位置の目標値Δｒｄが０の場合は、Δｘｄ、Δｙｄ、Δｚｄ、Δαｄ、Δβｄ、Δγｄの値はいずれも０である。
［００７４］
［数５］
2012101956.tif 000112
接触情報取得部６１０には、入出力ＩＦ６０８から接触センサ１０５（１０５Ａ〜１０５Ｅ）の測定値と、入出力ＩＦ６０８に内蔵されたタイマーからの時間情報とが入力されて、把持部１０３と他の物との接触の有無の情報（接触情報）を取得する。接触情報取得部６１０では、入力された接触センサ１０５の測定値を接触情報とし、この接触情報を接触情報取得部６１０から把持検出部６１１に出力する。接触情報とは、図７に示すように、接触センサ１０５Ａ〜接触センサ１０５Ｅの接触の有無の情報である。図７では、「１」が「接触有り」を示し、「０」が「接触無し」を示している。
［００７５］
把持検出部６１１には、接触情報取得部６１０から接触情報が入力される。入出力ＩＦ６０８から把持検出部６１１にも、入出力ＩＦ６０８に内蔵されたタイマーからの時間情報が入力される。把持検出部６１１は、接触情報取
【手続補正１６】
【補正対象書類名】明細書
【補正対象項目名】００３７
【補正方法】変更
【補正の内容】
【００３７】
ぐためである。
［００７９］
図９Ａ〜図９Ｃを用いて、２つ目の把持検出条件を満たす場合について説明する。図９Ａ〜図９Ｃは、横軸が時間（秒）を示し、縦軸は接触情報（例えば、接触センサ１０５Ａの情報）を示す。図９Ａは、接触している時間が５．１秒の時点と５．２秒の時点との間の０．１秒であり、２つ目の把持検出条件を満たさない。図９Ｂは、５秒の時点から接触を開始し、７秒の時点を経過して、接触している時間が２秒を超えている。よって、７秒の時点以降の時間は２つ目の把持検出条件を満たす。７秒の時点より以前の時間は２つ目の把持検出条件を満たさない。図９Ｃは、連続して接触している時間が５秒の時点から６秒の時点の間の１秒と、７秒の時点から８．５秒の時点の間の１．５秒であるので、それぞれ、２つ目の把持検出条件を満たさない。
［００８０］
以上の２つの把持検出条件を両方とも満たしたときに、把持検出部６１１は、把持情報として「把持有り」（出力が「１」）を把持検出部６１１から追従制御切替部６１２に出力する。１つでも把持検出条件を満たさない場合は、把持検出部６１１は、把持情報として「把持無し」（出力が「０」）を把持検出部６１１から追従制御切替部６１２に出力する。
［００８１］
追従制御切替部６１２は、把持検出部６１１からの把持情報に応じて「追従制御オン」又は「追従制御オフ」で表される追従制御情報を決定する。追従制御切替部６１２で決定した追従制御情報を、追従制御切替部６１２から制御部６０５に出力する。ここで、追従制御情報としては、「追従制御オン」の場合は「１」を出力し、「追従制御オフ」の場合は「０」を出力する。追従制御切替部６１２における追従制御情報の選択（切り替え）方法は、把持検出部６１１からの把持情報において、「把持有り」（出力が「１」）の情報があると、「追従制御オン」を追従制御切替部６１２で選択し、「把持無し」（出力が「０」）の情報であると、「追従制御オフ」を追従制御切替部６１２で選択する。よって、人が把持部１０３を把持したときのみ「追従制御オン」となり、人が把持部１０３を把持していないときは「追従制御オフ」となる。
【手続補正１７】
【補正対象書類名】明細書
【補正対象項目名】００４５
【補正方法】変更
【補正の内容】
【００４５】
た場合は、追従制御無しで、制御部６０５でマニピュレータ１０１を移動動作制御する。追従制御を行っていた場合に、人が把持部１０３を把持していないと把持検出部６１１で検出した場合は、制御部６０５でマニピュレータ１０１の追従制御を停止したのち、追従制御無しで、制御部６０５でマニピュレータ１０１を移動動作制御する。
［０１１５］
（第２実施形態）
以下、本発明の第２実施形態におけるロボットについて説明する。
［０１１６］
第１実施形態では、人が把持部１０３を把持したときのみ、制御部６０５でマニピュレータ１０１の追従制御を行うことによって、人が把持部１０３を把持していない場合にマニピュレータ１０１が下に下がり続けるという課題を解消し、安全性を高めている。
［０１１７］
しかしながら、人が把持部１０３を把持し始めたときに、もし手先効果部１０２に対する把持部１０３の相対位置Δｒの値が０でない場合には、人が把持部１０３を把持した直後にマニピュレータ１０１が急激に移動して危険な状態となる可能性がある。すなわち、追従制御開始時に相対位置Δｒが０でないときは、相対位置Δｒの大きさにかかわらず、追従制御開始直後に追従制御が急に行われることになり、危険な状態となる可能性が高い。これに対して、第２実施形態では、相対位置Δｒが０であっても、追従制御開始直後はゆっくり追従制御を行うように構成することで、前記したような危険な状態となる可能性が回避でき、安全性が高まる。この状態を図１４Ａ〜図１４Ｃを用いて説明する。
［０１１８］
図１４Ａ〜図１４Ｃは、人とマニピュレータ１０１とが協調して対象物１１０１を搬送するときに、マニピュレータ１０１が追従する手順を示す。図１４Ａ→図１４Ｂ→図１４Ｃの順に状態が遷移する。
［０１１９］
まず、図１４Ａの状態は、人の手８０１が把持部１０３を把持しておらず、マニピュレータ１０１は停止した状態である。このとき、把持部１０３は手先効果部１０２に引っかかっている。言い換えれば、図１４Ａの把持部１０３の上側の側面部１０３ｂと、上側の側面部１０３ｂに対向する手先効果部１０２の側面部１０２ｂとが接触して、上側の側面部１０３ｂと側面部１
【手続補正１８】
【補正対象書類名】明細書
【補正対象項目名】００５２
【補正方法】変更
【補正の内容】
【００５２】
間において、制御装置６０２によりマニピュレータ１０１が追従制御をゆっくり行うことによって、追従制御開始時の安全性を高めている。
［０１４８］
しかしながら、追従制御終了時には、把持部１０３が落下して手先効果部１０２に勢いよく衝突してしまう可能性がある。
［０１４９］
この状態を図２１Ａ〜図２１Ｃを用いて説明する。図２１Ａ〜図２１Ｃは、人とマニピュレータ１０１とが協調して対象物１１０１を搬送するときに、マニピュレータ１０１が追従する手順を示す。図２１Ａ→図２１Ｂ→図２１Ｃの順に状態が遷移する。
［０１５０］
まず、図２１Ａの状態は、人の手８０１が把持部１０３を把持し、マニピュレータ１０１が追従制御を行っている状態である。
［０１５１］
次いで、図２１Ｂの状態は、人の手８０１が把持部１０３を放した瞬間であって、マニピュレータ１０１は停止した状態である。
［０１５２］
次いで、図２１Ｃの状態は、人の手８０１が把持部１０３を放した直後であって、把持部１０３が落下して把持部１０３が手先効果部１０２に勢いよく衝突している状態である。
［０１５３］
以上のように、人が把持部１０３を放したときに、手先効果部１０２に対する把持部１０３の相対位置Δｒが０でない場合には、把持部１０３が落下し手先効果部１０２に勢いよく衝突する可能性がある。そこで、第３実施形態では、この課題への対応策を行う。すなわち、追従制御開始時に相対位置Δｒが０でないときは、相対位置Δｒの大きさにかかわらず、人の手８０１が把持部１０３を放した直後に把持部１０３が落下し手先効果部１０２に勢いよく衝突することになり、危険な状態となる可能性が高い。これに対して、第３実施形態では、相対位置Δｒが０であれば、人の手８０１が把持部１０３を放した直後にはゆっくり追従制御を行うため、前記したような危険な状態となる可能性が回避でき、安全性が高まる。
［０１５４］
図２２Ａは、本発明の第３実施形態のロボット６０１における手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ１０５との平面図である。図２２Ｂは、本発明の第３実施形態のロボットにおける手
【手続補正１９】
【補正対象書類名】明細書
【補正対象項目名】００５９
【補正方法】変更
【補正の内容】
【００５９】
［０１７３］
ステップＳ２００２では、制御係数情報決定部２４０１において、式（４）における移動量に関する係数ｋの値を１．０とし、ステップＳ１３０４に進む。
［０１７４］
ステップＳ１３０４では、追従制御部６０６で、閾値の範囲を超えている相対位置情報が閾値内に収まるような移動量を求める。追従制御部６０６で求めた移動量を追従制御部６０から制御部６０５に出力し、ステップＳ１３０５に進む。
［０１７５］
ステップＳ１３０５では、制御部６０５で、追従制御部６０６から取得した移動量を基に、マニピュレータ１０１を追従制御し、このフローを終了する。
［０１７６］
第３実施形態によれば、第１実施形態での作用効果に加えて、人が把持部１０３を把持する位置に応じて、マニピュレータ１０１が追従制御をゆっくり行うことによって、追従制御開始時及び追従制御終了時において安全性を向上できる。また、人が把持する位置に応じて、マニピュレータ１０１が追従制御をゆっくり行ったり、追従制御を素早く行ったりすることができるので、人の意思によって追従制御の追従速度を変化させることができる。
［０１７７］
（第４実施形態）
以下、本発明の第４実施形態におけるロボットについて説明する。
［０１７８］
第３実施形態では、人が把持部１０３を把持する位置に応じて、制御装置６０２によりマニピュレータ１０１が追従制御をゆっくり行うことによって、追従制御開始時及び追従制御終了時の安全性を高めている。
［０１７９］
しかしながら、人が把持部１０３の把持位置を把持し直す必要があり、人又は作業内容によっては、把持し直し動作が煩雑であると感じる場合がある。そこで、第４実施形態では、第３実施形態で用いた把持位置を把持し直す方法と比べて、より容易な方法によって追従制御開始時及び追従制御終了時の安全性を高める。
［０１８０］
図３０Ａは、手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、力センサ３００１との平面図である。図３０Ｂは、手先効果部１０２
【手続補正２０】
【補正対象書類名】明細書
【補正対象項目名】００６１
【補正方法】変更
【補正の内容】
【００６１】
共通の参照符号を付して共通部分の説明は省略し、異なる部分についてのみ、以下、詳細に説明する。
［０１８３］
力情報取得部３１０１には、入出力ＩＦ１６０４から力センサ３００１の測定値と、入出力ＩＦ１６０４に内蔵されたタイマーからの時間情報とが入力されて、把持部１０３に外部から加えられた力の大きさを取得する。力情報取得部３１０１に入力された力センサ３００１の測定値を力情報とし、力情報取得部３１０１から把持検出部３１０２に出力する。力情報とは、図３２に示すように、力センサ３００１Ａ〜力センサ３００１Ｅの力の大きさの情報である。
［０１８４］
なお、この実施形態では、追従制御切替制御部６００は、接触情報取得部６１０に代えて力情報取得部３１０１と、把持検出部６１１に対応する把持検出部３１０２と、追従制御切替部６１２とで構成されて、把持部１０３が手先効果部以外の他の物と接触しているとき追従制御部６０６での追従制御を行う一方、把持部１０３が他の物と接触していないとき追従制御部６０６での追従制御を行わないように追従制御を切替える追従制御情報を出力するものである。
［０１８５］
把持検出部３１０２は、力情報取得部３１０１から力情報が入力される。入出力ＩＦ１６０４から把持検出部３１０２に、入出力ＩＦ１６０４に内蔵されたタイマーからの時間情報が入力される。把持検出部３１０２は、力情報取得部３１０１からの力情報を基に、人が把持部１０３を把持しているかどうかを検出し、把持情報を把持検出部３１０２から追従制御切替部６１２に出力する。
［０１８６］
人の把持情報の検出方法は、次の２つの把持情報検出条件を満たすことである。１つ目の把持情報検出条件は、互いに向かい合う２つの力センサ３１０１（力センサ３１０１Ａと力センサ３１０１Ｂ、又は、力センサ３１０１Ｃと力センサ３１０１Ｄ）が共に力の大きさが０．３Ｎ以上であること。２つ目の把持情報検出条件は、力センサ３１０１で検出した力の大きさが所定の時間、所定の力（例えば連続して２秒以上の時間０．３Ｎ以上）であること。以上の２つの把持情報検出条件を満たしたときに、把持情報は「把持有
【手続補正２１】
【補正対象書類名】明細書
【補正対象項目名】００６２
【補正方法】変更
【補正の内容】
【００６２】
り」（出力が「１」）を出力し、１つでも満たさない場合は「把持無し」（出力が「０」）を出力する。
［０１８７］
制御係数情報決定部３１０３は、人が把持部１０３を把持するときの力の大きさによって係数ｋの値を変化させる。ここでは、制御係数情報決定部３１０３において、把持する力が大きくなると、係数ｋの値を大きくする。一方、把持する力が小さくなると、係数ｋの値を小さくする。人が把持部１０３を把持していると把持検出部３１０２で検出した場合において、把持開始時と把持終了時に、人が把持部１０３を把持する力の大きさを、把持動作中（把持開始時と把持終了時と以外の動作中）の力の大きさよりも、小さくする。このように構成することによって、追従制御開始時と追従制御終了時において、制御装置６０２により、マニピュレータ１０１が、把持動作中の素早い追従制御よりも遅い、ゆっくりとして追従制御を行うことが可能となる。
［０１８８］
これについて、具体的に、図３３を用いて説明する。ここで、図３３に示すデータベースは、把持部１０３に対する人の把持の有無の情報と把持部１０３を人が把持する力の大きさと制御係数の情報（例えば制御係数の値）とが関連付けられた関連情報を制御係数情報取得部３１０４で取得して、制御係数情報取得部３１０４内の内部記憶部に記憶されている。人が把持部１０３を把持していない場合は、係数ｋの値を０．０とする。人が把持部１０３を把持している場合において、力情報取得部３１０１からの力情報が、任意の力（力情報閾値）の大きさ（例えば、２．０Ｎ）未満のときは係数ｋの値を０．５とし、力情報取得部３１０１からの力情報が、それ以上の力の大きさのときは係数ｋの値を１．０とする。すなわち、力情報取得部３１０１からの力情報が力情報閾値未満の場合の移動量を、力情報取得部３１０１からの力情報が力情報閾値以上の場合の移動量よりも少なく、例えば半分以下程度にしている。これは、力情報が力情報閾値以上の場合から力情報が力情報閾値未満の場合に移行したとき、及び、力情報が力情報閾値未満の場合から力情報が力情報閾値以上の場合に移行したときに、ロボットアームが、急激に動かない程度に、低速で追従制御を行うようにするこ
【手続補正書】
【提出日】平成24年10月4日(2012.10.4)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットの動作を生成し、教示又は協調搬送などの所望の作業を行うためのロボットアームの制御装置及び制御方法、ロボットアームの制御装置を有するロボット、ロボットアーム制御プログラム、並びに、集積電子回路に関する。
【背景技術】
【０００２】
近年、製造現場では多品種少量生産のためモデルチェンジが頻繁に起こる。セル生産が盛んに行われている近年の製造現場において、ネジ締め作業若しくは部品の嵌合作業、装着作業、フレキシブル基板などの挿入作業、又は、研磨作業などをロボットにより自動化するためには、多種多様な部品又は作業手順に柔軟に対応する必要がある。部品が変わるごとに組み立てる位置又は向きなどが変わり、作業を行う順番も変わるので、それらの変化に対応する必要がある。また、フレキシブル基板の挿入作業などのように柔軟物を取り扱う作業などは、作業が複雑であり、依然として人手中心で行っている。人は、柔軟物が対象物に接触し、柔軟物がたわむ際の手に伝わる反力によって、柔軟物のたわみ具合又は位置を推測し。それによって、複雑な作業を行うことができる。
【０００３】
これに対して、ロボットにおいては、試行ごとにたわみ方又は位置などが変わる柔軟物の力情報又は位置情報を定式化できないため、得られる反力に応じた複雑な作業を行うことは非常に困難である。以上の課題を解決し、そのような人手中心で行っている作業をロボットにより自動化する需要は大きい。
【０００４】
そこで、従来、ティーチングペンダント又はプログラミングを用いて、ロボットに作業を教示する方法が用いられている。しかしながら、それらの方法により教示を行うと、教示工数が非常に増える。また、ロボットの複数の関節を同時に動かすような、複雑な動きが必要な作業は、教示できないこともある。
【０００５】
以上のように、ティーチングペンダント又はプログラミングを用いる方法では限界がある。
【０００６】
このため、従来は、ロボットを触って教示するダイレクトティーチングを用いて簡単に教示する方法が用いられている。ダイレクトティーチングでは、直感的な操作ができること、又は、ロボットが対象物に接触した際に、物理的な反力を作業する人が感じることによって、反力に応じた操作ができることなどの長所がある。一方で、ロボット自体が重い場合は、人がロボットを支えることができずロボットの操作ができないこと、又は、ロボット自体が重いためロボットが対象物に接触した際の物理的な反力を人が感じられないこと、又は、ロボットを人が触っているのでロボットが暴走すると危険であることなどの短所も併せ持つ。このように操作性が悪いロボットに対して教示を行う際に、そのロボットの操作性を改善することは非常に重要である。同様に、ロボットに触った際の安全性の確保も重要である。
【０００７】
ダイレクトティーチングに関して、第１のロボットアームの手先先端部にバネで取り付けられた第２のロボットアームを持つ構成が考えられている。２つのロボットアームを持つ構成をすることによって、従来の１つのロボットアームのみの構成と比較して、より精密なダイレクトティーチングを可能とする(特許文献１参照）。
【０００８】
また、保持部材の動きを水平方向に限定し、外部環境（保持している対象物の変位量又は力情報）を検出しインピーダンス制御を行うことによって、比較的重い対象物を保持した場合においても小さな力で保持部材を変位させることができる方法が用いられている(特許文献２参照）。
【０００９】
一方で、製品の運搬作業又は重い部品の嵌合作業において、ティーチングペンダント又はプログラミングを用いる方法では複雑であるためにロボットでは実現できない場合、二人の作業者によって作業が行われていた。そのような作業を、ロボットを用いて、作業者の労力を軽減することは非常に望まれている。このような作業を自動化する場合、ダイレクトティーチングでは、製品が重くて作業者がロボットに教示することができない。そこで、ロボットが把持した重い製品を作業者と協調して運搬する協調搬送という方法を用いる。
【００１０】
協調搬送に関して、小さい操作力で協調搬送できるようにロボットにアシスト力を発生させることが考えられている。このアシスト力の値は、以下のようにして求める。すなわち、ロボットの関節角度と、手先位置と、ロボットと協調作業する作業者が対象物に加える力とをそれぞれ検出し、それらの値より作業者の手先粘性係数と、弾性係数と、作業者の手先自然長位置とをそれぞれ推定し、それらの値に基づいて、アシスト力の値を求める（特許文献３参照）。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開平４−１６４５８４号公報
【特許文献２】特開２００６−２４７７８７号公報
【特許文献３】特開２００７−７６８０７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
特許文献１においては、手先の先端部に取り付けられたロボットアームはバネで取り付けられているため、バネの弾性力の影響を受けるので、操作性に課題が残る。また、第２のロボットアームと第１のロボットアームが連動して動かないため、作業領域の広い作業を行う場合には、第１のロボットアームを動かした後に第２のロボットアームを動かさなければならないので、作業工数が増えてしまう。
【００１３】
特許文献２においては、保持部材の動きは水平方向にのみ限定されており、他の方向には動かすことが困難である。また、保持部材とロボットアームは接触しており、保持部材の重力又は接触の摩擦力の影響を受けるので、操作性に課題が残る。
【００１４】
特許文献３においては、ロボットがアシスト力を発生しているものの、推定値の誤差によって対象物又はロボットの重さを人が感じることとなり、操作性の課題が残る。また、力センサを用いる必要があり、大きなコストがかかってしまう。
【００１５】
そこで、本発明者らは、ロボットアームにおいて、ロボットアームの操作時に人が把持する把持部をロボットアーム本体から機構的に分離するような構造を発明した。この構造では、ロボットアーム本体と把持部との相対位置を所定の閾値の範囲内に収まるようにロボットアームの追従制御を行うことによって、人が把持部を操作するときはロボットアーム本体の慣性の影響を排除でき、操作性が非常に良くなるものである。
【００１６】
しかしながら、この構造では、人が把持部を把持していない場合においては、把持部は地面に衝突するまで下に落ちるので、それに伴ってロボットアームも追従し、下に下がり続けてしまう。これでは、人が把持部を把持していない場合に、ロボットアームが下に動き続けて危険である。また、人が把持部を把持し追従制御を開始するときと追従制御を終了するときとに、把持部とロボットアームとの相対位置が大きい場合には、その大きい相対位置に対してロボットアームが追従するためロボットアームが急激に移動することとなるので、ロボットアームが人に当たると非常に危険である。また一方で、人が把持部を急激に移動させると、ロボットアームは追従することができず、ロボットアームがどのような振る舞いを起こすかわからない状態となる。
【００１７】
本発明の目的は、このような課題に鑑みてなされたものであり、協調搬送又は直接操作などの作業を行う際のロボットアームに対する操作性を改善することができ、ロボットアームを容易に動かすことができ、安全性の高いロボットアームの制御装置及び制御方法、ロボット、ロボットアーム制御プログラム、並びに、集積電子回路を提供することにある。
【課題を解決するための手段】
【００１８】
上記の目的を達成するために、本発明は以下のように構成する。
【００１９】
本発明の第１態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアームの制御装置であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を取得する相対位置情報取得部と、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を求める追従制御部と、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を出力する追従制御切替制御部と
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを移動制御する制御部とを備えるとともに、
前記追従制御切替制御部は、
前記把持部と他の物との接触の有無の情報を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を検出する把持検出部と、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を出力する追従制御切替部とを備える、ロボットアームを提供する。
【００２０】
本発明の別の態様によれば、前記記載のロボットアームを備えるロボットを提供する。
【００２１】
本発明のまた別の態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアームの制御方法であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を相対位置情報取得部で取得し、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を追従制御部で求め、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を追従制御切替制御部で出力し
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを制御部で移動制御するとともに、
前記追従制御切替制御部において前記追従制御情報を出力するとき、
前記把持部と他の物との接触の有無の情報を接触情報取得部で取得し、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を把持検出部で検出し、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を追従制御切替部で出力する、ロボットアームの制御方法を提供する。
【００２２】
本発明のさらに別の態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアーム制御プログラムであって、
コンピュータに、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を相対位置情報取得部で取得するステップと、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を追従制御部で求めるステップと、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を追従制御切替制御部で出力するステップと、
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを制御部で移動制御するステップとを実行させるとともに、
前記追従制御切替制御部において前記追従制御情報を出力するステップでは、
前記把持部と他の物との接触の有無の情報を接触情報取得部で取得するステップと、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を把持検出部で検出するステップと、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を追従制御切替部で出力するステップと、を実行させるための、ロボットアーム制御プログラムを提供する。
【００２３】
本発明のさらに別の態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアーム用集積電子回路であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を取得する相対位置情報取得部と、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を求める追従制御部と、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を出力する追従制御切替制御部と
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを移動制御する制御部とを備えるとともに、
前記追従制御切替制御部は、
前記把持部と他の物との接触の有無の情報を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を検出する把持検出部と、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を出力する追従制御切替部とを備える、ロボットアーム用集積電子回路を提供する。
【発明の効果】
【００２４】
本発明のロボットアームの制御装置及び制御方法、ロボット、ロボットアーム制御プログラム、並びに、集積電子回路によれば、ロボットアーム本体に取り付けられた手先効果部と人が把持する把持部とが機構的に分離しており、人が把持部を操作することによってロボットアームを操作することができる。その結果、操作時に、把持部に対するロボットアーム本体の慣性の影響を除去でき、操作性を非常に良くすることができる。また、ロボットアームと機構的に分離した把持部が他の物と接触した場合においては、追従制御の方法を切り替えることによって、安全性を向上させることができる。
【図面の簡単な説明】
【００２５】
本発明のこれらと他の目的と特徴は、添付された図面についての好ましい実施形態に関連した次の記述から明らかになる。この図面においては、
【図１】図１は、本発明の第１実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの構成図であり、
【図２Ａ】図２Ａは、本発明の第１実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの平面図であり、
【図２Ｂ】図２Ｂは、本の第１実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとを示す図２Ａ中のＡ−Ａ線の断面図であり、
【図２Ｃ】図２Ｃは、本発明の第１実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとを示す図２Ａ中のＢ−Ｂ線の断面図であり、
【図３Ａ】図３Ａは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３Ｂ】図３Ｂは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３Ｃ】図３Ｃは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３Ｄ】図３Ｄは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３Ｅ】図３Ｅは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３Ｆ】図３Ｆは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３Ｇ】図３Ｇは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３Ｈ】図３Ｈは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３Ｉ】図３Ｉは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３Ｊ】図３Ｊは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３Ｋ】図３Ｋは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの平面図であり、
【図３Ｌ】図３Ｌは、本発明の第１実施形態のロボットにおける落下時の手先効果部と、把持部と、相対位置センサと、接触センサとの平面図であり、
【図４Ａ】図４Ａは、本発明の第１実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサと、緩衝材の平面図であり、
【図４Ｂ】図４Ｂは、本発明の第１実施形態のロボットにおける手先効果部、把持部、接触センサ、緩衝材の側面図であり、
【図４Ｃ】図４Ｃは、本発明の第１実施形態のロボットにおける接触時の手先効果部と、把持部と、相対位置センサと、接触センサと、緩衝材の平面図であり、
【図４Ｄ】図４Ｄは、本発明の第１実施形態のロボットにおける接触時の手先効果部、把持部、接触センサ、緩衝材の側面図であり、
【図５】図５は、本発明の第１実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの図１と異なる構成図であり、
【図６】図６は、本発明の第１実施形態のロボットにおけるロボットアームのブロック図であり、
【図７】図７は、本発明の第１実施形態のロボットにおける接触情報の説明図であり、
【図８】図８は、本発明の第１実施形態のロボットにおける人の手の把持位置の説明図であり、
【図９Ａ】図９Ａは、本発明の第１実施形態のロボットにおける人の手の把持時間の説明図であり、
【図９Ｂ】図９Ｂは、本発明の第１実施形態のロボットにおける人の手の把持時間の説明図であり、
【図９Ｃ】図９Ｃは、本発明の第１実施形態のロボットにおける人の手の把持時間の説明図であり、
【図１０】図１０は、本発明の第１実施形態のロボットにおけるロボットアームの説明図であり、
【図１１Ａ】図１１Ａは、本発明の第１実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図１１Ｂ】図１１Ｂは、本発明の第１実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図１１Ｃ】図１１Ｃは、本発明の第１実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図１１Ｄ】図１１Ｄは、本発明の第１実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図１１Ｅ】図１１Ｅは、本発明の第１実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図１２Ａ】図１２Ａは、本発明の第１実施形態のロボットにおける人の手が把持していない場合の説明図であり、
【図１２Ｂ】図１２Ｂは、本発明の第１実施形態のロボットにおける人の手の把持していない場合の説明図であり、
【図１２Ｃ】図１２Ｃは、本発明の第１実施形態のロボットにおける人の手の把持していない場合の説明図であり、
【図１２Ｄ】図１２Ｄは、本発明の第１実施形態のロボットにおける人の手の把持していない場合の説明図であり、
【図１３】図１３は、本発明の第１実施形態のロボットにおける相対位置情報、接触情報を取得してから追従制御を行うまでの処理の流れを示すフローチャートであり、
【図１４Ａ】図１４Ａは、本発明の第１実施形態のロボットにおけるロボットアームを用いた協調搬送の開始時の説明図であり、
【図１４Ｂ】図１４Ｂは、本発明の第１実施形態のロボットにおけるロボットアームを用いた協調搬送の開始時の説明図であり、
【図１４Ｃ】図１４Ｃは、本発明の第１実施形態のロボットにおけるロボットアームを用いた協調搬送の開始時の説明図であり、
【図１５】図１５は、本発明の第１実施形態のロボットにおけるロボットアームを用いた協調搬送の時間と速度の関係の説明図であり、
【図１６】図１６は、本発明の第２実施形態のロボットにおけるロボットアームのブロック図であり、
【図１７】図１７は、本発明の第２実施形態のロボットにおける追従制御切替部の係数情報の決定方法の説明図であり、
【図１８Ａ】図１８Ａは、本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図１８Ｂ】図１８Ｂは、本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図１８Ｃ】図１８Ｃは、本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図１８Ｄ】図１８Ｄは、本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図１８Ｅ】図１８Ｅは、本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図１９】図１９は、本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であって、図１９の（Ａ）は本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の時間と係数の関係の説明図、図１９の（Ｂ）は本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の時間と速度の関係の説明図であり、
【図２０】図２０は、本発明の第２実施形態のロボットにおける相対位置情報、接触情報を取得してから追従制御を行うまでの処理の流れを示すフローチャートであり、
【図２１Ａ】図２１Ａは、本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の終了時の説明図であり、
【図２１Ｂ】図２１Ｂは、本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の終了時の説明図であり、
【図２１Ｃ】図２１Ｃは、本発明の第２実施形態のロボットにおけるロボットアームを用いた協調搬送の終了時の説明図であり、
【図２２Ａ】図２２Ａは、本発明の第３実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの平面図であり、
【図２２Ｂ】図２２Ｂは、本発明の第３実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図２２Ｃ】図２２Ｃは、本発明の第３実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図２３Ａ】図２３Ａは、本発明の第３実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの図２２Ａと異なる平面図であり、
【図２３Ｂ】図２３Ｂは、本発明の第３実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの図２２Ｂと異なる断面図であり、
【図２３Ｃ】図２３Ｃは、本発明の第３実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの図２２Ｃと異なる断面図であり、
【図２４】図２４は、本発明の第３実施形態のロボットにおけるロボットアームのブロック図であり、
【図２５】図２５は、本発明の第３実施形態のロボットにおける追従制御切替部における係数情報の決定方法の説明図であり、
【図２６Ａ】図２６Ａは、本発明の第３実施形態のロボットにおける把持部の把持方法の説明図であり、
【図２６Ｂ】図２６Ｂは、本発明の第３実施形態のロボットにおける把持部の把持方法の説明図であり、
【図２７Ａ】図２７Ａは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図２７Ｂ】図２７Ｂは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図２７Ｃ】図２７Ｃは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図２７Ｄ】図２７Ｄは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図２７Ｅ】図２７Ｅは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図２７Ｆ】図２７Ｆは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図２７Ｇ】図２７Ｇは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図２７Ｈ】図２７Ｈは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送における把持方法の説明図であり、
【図２７Ｉ】図２７Ｉは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送における把持方法の説明図であり、
【図２７Ｊ】図２７Ｊは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送における把持方法の説明図であり、
【図２７Ｋ】図２７Ｋは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送における把持方法の説明図であり、
【図２７Ｌ】図２７Ｌは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送における把持方法の説明図であり、
【図２７Ｍ】図２７Ｍは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送における把持方法の説明図であり、
【図２７Ｎ】図２７Ｎは、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送における把持方法の説明図であり、
【図２８】図２８は、本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であって、図２８の（Ａ）は本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送の時間と係数の関係の説明図、図２８の（Ｂ）は本発明の第３実施形態のロボットにおけるロボットアームを用いた協調搬送の時間と速度の関係の説明図であり、
【図２９】図２９は、本発明の第３実施形態のロボットにおける相対位置情報、接触情報を取得してから追従制御を行うまでの処理の流れを示すフローチャートであり、
【図３０Ａ】図３０Ａは、本発明の第４実施形態のロボットにおける手先効果部、把持部、相対位置センサ、力センサの平面図であり、
【図３０Ｂ】図３０Ｂは、本発明の第４実施形態のロボットにおける手先効果部、把持部、相対位置センサ、力センサの断面図であり、
【図３０Ｃ】図３０Ｃは、本発明の第４実施形態のロボットにおける手先効果部、把持部、相対位置センサ、力センサの断面図であり、
【図３１】図３１は、本発明の第４実施形態のロボットにおけるロボットアームのブロック図であり、
【図３２】図３２は、本発明の第４実施形態のロボットにおける力情報の説明図であり、
【図３３】図３３は、本発明の第４実施形態のロボットにおける追従制御切替部における係数情報の決定方法の説明図であり、
【図３４Ａ】図３４Ａは、本発明の第４実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図３４Ｂ】図３４Ｂは、本発明の第４実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図３４Ｃ】図３４Ｃは、本発明の第４実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図３４Ｄ】図３４Ｄは、本発明の第４実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図３４Ｅ】図３４Ｅは、本発明の第４実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図３４Ｆ】図３４Ｆは、本発明の第４実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図３４Ｇ】図３４Ｇは、本発明の第４実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図３５】図３５は、本発明の第４実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であって、図３５の（Ａ），（Ｂ），（Ｃ）は、それぞれ、本発明の第４実施形態のロボットにおけるロボットアームを用いた協調搬送の時間と係数の関係と、時間と速度の関係と、時間と力の大きさの関係との説明図であり、
【図３６】図３６は、本発明の第４実施形態のロボットにおける相対位置情報、力情報を取得してから追従制御を行うまでの処理の流れを示すフローチャートであり、
【図３７】図３７は、本発明の第５実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの構成図であり、
【図３８Ａ】図３８Ａは、本発明の第５実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの平面図であり、
【図３８Ｂ】図３８Ｂは、本発明の第５実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３８Ｃ】図３８Ｃは、本発明の第５実施形態のロボットにおける手先効果部と、把持部と、相対位置センサと、接触センサとの断面図であり、
【図３９】図３９は、本発明の第５実施形態のロボットにおけるロボットアームのブロック図であり、
【図４０Ａ】図４０Ａは、本発明の第５実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図４０Ｂ】図４０Ｂは、本発明の第５実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図４０Ｃ】図４０Ｃは、本発明の第５実施形態のロボットにおけるロボットアームを用いた協調搬送の説明図であり、
【図４１】図４１は、本発明の第５実施形態のロボットにおける相対位置情報、接触情報を取得してから追従制御を行うまでの処理の流れを示すフローチャートである。発明を実施するための形態
【００２６】
以下に、本発明にかかる実施の形態を図面に基づいて詳細に説明する。
【００２７】
以下、図面を参照して本発明における実施形態を詳細に説明する前に、本発明の種々の態様について説明する。
【００２８】
本発明の第１態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアームの制御装置であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を取得する相対位置情報取得部と、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を求める追従制御部と、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を出力する追従制御切替制御部と、
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを移動制御する制御部とを備えるとともに、
前記追従制御切替制御部は、
前記把持部と他の物との接触の有無の情報を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を検出する把持検出部と、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を出力する追従制御切替部とを備える、ロボットアームを提供する。
【００２９】
本発明の第２態様によれば、前記把持検出部は、前記人の把持の有無の情報に加えて、把持開始からの経過時間も把持情報として検出する一方、
前記把持部に対する前記人の把持の有無の情報と前記把持開始からの経過時間と、追従速度を決定する制御係数の情報とが関連付けられた関連情報を取得する制御係数情報取得部と、
前記把持検出部で検出した把持情報と前記制御係数情報取得部で取得した前記関連情報とを基に、追従速度を決定する制御係数を決定する制御係数情報決定部とをさらに備え、
前記把持部を前記人が把持した直後の所定の一定時間は、前記制御係数情報取得部で取得した前記制御係数に基づいて、追従制御の追従速度を他の時間の追従速度よりも遅くするように制御する第１の態様に記載のロボットアームを提供する。
【００３０】
本発明の第３態様によれば、前記把持検出部は、前記人の把持の有無の情報に加えて、前記把持部を前記人が把持する位置も把持情報として検出する一方、
前記把持部に対する前記人の把持の有無の情報と前記把持部を前記人が把持する位置と、追従速度を決定する制御係数の情報とが関連付けられた関連情報を取得する制御係数情報取得部と、
前記把持検出部で検出した把持情報と前記制御係数情報取得部で取得した前記関連情報とを基に、追従速度を決定する制御係数を決定する制御係数情報決定部とをさらに備え、
前記把持部を前記人が把持する位置に応じて、前記制御係数情報取得部で取得した前記制御係数に基づいて追従制御の追従速度を変化させるように制御する第１の態様に記載のロボットアームを提供する。
【００３１】
本発明の第４態様によれば、前記追従制御切替制御部は、
前記把持部に外部から加えられた力の大きさを取得する力情報取得部を備えて、
前記把持検出部は、前記力情報取得部で取得した力情報を基に、前記把持部に対する前記人の把持の有無の情報を検出し、さらに前記把持部を前記人が把持する力の大きさも把持情報として検出する一方、
前記把持部に対する前記人の把持の有無の情報と、前記把持部を前記人が把持する力の大きさと、追従速度を決定する制御係数とが関連付けられた関連情報を取得する制御係数情報取得部と、
前記把持検出部で検出した把持情報と前記制御係数情報取得部で取得した前記関連情報とを基に、追従速度を決定する制御係数を決定する制御係数情報決定部とを備えて、
前記把持部を前記人が把持する力の大きさに応じて、前記制御係数情報取得部で取得した前記制御係数に基づいて追従制御の追従速度を変化させるように制御する第１の態様に記載のロボットアームを提供する。
【００３２】
本発明の第５態様によれば、前記追従制御切替制御部は、
前記把持部に対する前記手先効果部の接触の有無を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部と前記手先効果部とが接触した場合のみ追従制御を停止し、前記把持部と前記手先効果部とが接触していない場合は追従制御を行う、追従制御情報を出力する追従制御切替部とを備える第１の態様に記載のロボットアームを提供する。
【００３３】
本発明の第６態様によれば、第１〜５のいずれか１つの態様に記載のロボットアームを備えるロボットを提供する。
【００３４】
本発明の第７態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアームの制御方法であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を相対位置情報取得部で取得し、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を追従制御部で求め、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を追従制御切替制御部で出力し
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを制御部で移動制御するとともに、
前記追従制御切替制御部において前記追従制御情報を出力するとき、
前記把持部と他の物との接触の有無の情報を接触情報取得部で取得し、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を把持検出部で検出し、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を追従制御切替部で出力する、ロボットアームの制御方法を提供する。
【００３５】
本発明の第８態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアーム制御プログラムであって、
コンピュータに、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を相対位置情報取得部で取得するステップと、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を追従制御部で求めるステップと、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を追従制御切替制御部で出力するステップと
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを制御部で移動制御するステップとを実行させるとともに、
前記追従制御切替制御部において前記追従制御情報を出力するステップでは、
前記把持部と他の物との接触の有無の情報を接触情報取得部で取得するステップと、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を把持検出部で検出するステップと、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を追従制御切替部で出力するステップと、を実行させるための、ロボットアーム制御プログラムを提供する。
【００３６】
本発明の第９態様によれば、人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアーム用集積電子回路であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を取得する相対位置情報取得部と、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を求める追従制御部と、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を出力する追従制御切替制御部と
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを移動制御する制御部とを備えるとともに、
前記追従制御切替制御部は、
前記把持部と他の物との接触の有無の情報を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無を示す把持情報を検出する把持検出部と、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持した場合のみ追従制御を行い、前記把持部を前記人が把持していない場合は追従制御を停止する、追従制御情報を出力する追従制御切替部とを備える、ロボットアーム用集積電子回路を提供する。
【００３７】
以下、本発明の実施の形態について、図面を参照しながら説明する。
【００３８】
（第１実施形態）
以下、本発明の第１実施形態におけるロボットについて説明する。
【００３９】
本発明の第１実施形態のロボットでは、ロボットアームの操作性を向上させるために、操作時に人が把持する把持部をロボットアーム本体と機構的に分離し、ロボットアーム本体は把持部の移動に追従する（詳細は後で説明する）。しかしながら、このように追従制御を行うことによって、人が把持部を把持していないときには、把持部が落下しロボットアームが下に下がってしまうという課題が生じる（詳細は後で説明する）。第１実施形態は、この課題への対応策を行うものである。
【００４０】
図１は、本発明の第１実施形態における、ロボットアーム１００を含むロボット６０１を示す。ロボットアーム１００は、ロボットアーム１００の本体の一例であるマニピュレータ１０１と、手先効果部１０２と、把持部１０３と、相対位置情報取得部の一例としての相対位置センサ１０４と、接触センサ１０５とを備える。ただし、具体的な接触センサを個々に説明する場合には、後述するように参照符号１０５Ａ〜１０５Ｅで示し、総称的に説明する場合には参照符号１０５で示す。ここで、ロボット６０１は、ロボットアーム１００と、ロボットアームの制御装置６０２とで構成されている。
【００４１】
マニピュレータ１０１は、複数の多関節機構を有し、関節軸（１０１ａ、１０１ｂ、１０１ｃ）を中心に各リンク１０１ｄ、１０１ｅが回転駆動する。マニピュレータ１０１の手先には、手先効果部１０２が取り付けられている。
【００４２】
手先効果部１０２は、複数の相対位置センサ１０４を内蔵しており、複数の相対位置センサ１０４により、手先効果部１０２に対する把持部１０３の相対位置（すなわち、相対位置の情報、言い換えれば、測定値又は計測値）を測定する機能を有する。手先効果部１０２は、マニピュレータ１０１の手先に、位置が変わらないように固定されており、固定された位置からの把持部１０３の相対位置を測定する。本第１実施形態では、６個の相対センサ１０４を用いて、相対位置を測定する（詳細については後述する）。
【００４３】
把持部１０３は、人が作業を行う際に手で把持するための部分であり、手先効果部１０２と分離した構造となっている。
【００４４】
相対位置センサ１０４は、手先効果部１０２に対する把持部１０３の相対位置を検出するセンサである。ここで、Δｒは、Δｘ〜Δγの総称を意味する。ここでは、取得された前記相対位置の情報が所定６個の相対センサ１０４を用いる（詳細については後述する）。
【００４５】
接触センサ１０５は、把持部１０３の外側に取り付けられて把持部１０３の外部の対象物と把持部１０３との接触を検出するセンサである。ここでは、５個の接触センサ１０５を用いる（詳細については後述する）。
【００４６】
以下、手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ１０５とについて図２Ａ〜図２Ｃを用いて詳しく説明する。
【００４７】
図２Ａは、平面が正方形の直方体状の手先効果部１０２と、四角形の箱体状の把持部１０３と、相対位置センサ１０４と、接触センサ１０５との平面図であり、図２Ａの表面にマニピュレータ１０１の手先が連結される。図２Ｂは、手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ１０５との図２Ａ中のＡ−Ａ線の断面図であり、矢印２Ｂから見た断面図である。図２Ｃは、手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ１０５との図２Ａ中のＢ−Ｂ線の断面図であり、矢印２Ｃから見た断面図である。
【００４８】
なお、第１実施形態では、手先効果部１０２の形状は、図２に示す形状をしているが、長方形、多角形、若しくは、円形の平面を有する柱状の物体、又は、球体など、いかなる形状も可能である。
【００４９】
把持部１０３は、四角形の底面部１０３ａと、底面部１０３ａの各辺より立設した４個の四角形の側面部１０３ｂと、各側面部１０３ｂの中央部の上面に内向きに突出した脱落防止部材の一例としての突起部１０３ｃとを備える四角形の箱体状で構成されている。把持部１０３の内側には、底面部１０３ａと４個の側面部１０３ｂとにより、凹空間１０３ｄを有する箱形状を形成する。凹空間１０３ｄは、所定の隙間（空間）９０を有して手先効果部１０２を内部に配置できる空間を形成する。よって、底面部１０３ａと４個の側面部１０３ｂと４個の突起部１０３ｃとのそれぞれと手先効果部１０２のそれぞれ対向する面との間に、それぞれ隙間９０を保持可能としている。
【００５０】
突起部１０３ｃは、各側面部１０３ｂの底面部１０３ａと対向する部分に設けられた板部材であり、凹空間１０３ｄの内部に配置した手先効果部１０２が、図３Ａに示すように箱形状内部の凹空間１０３ｄから飛び出るのを防止する脱落防止部材の一例として機能する。
【００５１】
把持部１０３は、手先効果部１０２と分離した構造であり、手先効果部１０２とは別部材で構成されている。なお、把持部１０３の形状は、図２Ａ〜図２Ｃに示す形状をしているが、長方形、多角形、若しくは、円形の平面を有する箱状の物体、又は、球体など、いかなる形状も可能である。
【００５２】
各空間９０（Δｘ〜Δγ）について、図２Ａ〜図２Ｃを用いて説明する。
【００５３】
ここでは、図２Ａの横方向をｘ軸方向とし、縦方向をｙ軸方向とし、図２Ｂ及び図２Ｃの縦方向をｚ軸方向と定義している。すると、隙間９０のｘ軸方向の幅Δｘは、ｘ軸方向と直交するｙ軸方向沿いにそれぞれ配置されている、手先効果部１０２の側面部１０２ｂと把持部１０３の側面部１０３ｂとのｘ軸方向の隙間の間隔を示す。隙間９０のｙ軸方向の幅Δｙは、ｘ軸方向沿いにそれぞれ配置されている、手先効果部１０２の正面部１０２ａ又は裏面部１０２ｅと把持部１０３の側面部１０３ｂとのｙ軸方向の隙間の間隔を示す。隙間９０のｚ軸方向の幅Δｚは、ｚ軸方向と直交する方向沿いにそれぞれ配置されている、手先効果部１０２の底面部１０２ｃと把持部１０３の底面部１０３ａとのｚ軸方向の隙間の間隔を示す。隙間９０のα方向の幅Δαは、手先効果部１０２の底面部１０２ｃと把持部１０３の底面部１０３ａとのｘ軸まわりの回転方向αの隙間の間隔を示す。隙間９０のβ方向の幅Δβは、手先効果部１０２の底面部１０２ｃと把持部１０３の底面部１０３ａとのｙ軸まわりの回転方向βの隙間の間隔を示す。隙間９０のγ方向の幅Δγは、手先効果部１０２の正面部１０２aと把持部１０３の側面部１０３ｂとのｚ軸まわりの回転方向γの隙間の間隔を示す。
【００５４】
ここで、各軸（ｘ〜γ）について、図２Ａ〜図２Ｃを用いて説明する。ｘ軸は、手先効果部１０２の中心部１０２ｄから側面部１０２ｂに対して垂直に延びる軸であり、図２Ａ中の右方向を＋とする。ｙ軸は、手先効果部１０２の中心部１０２ｄから正面部１０２ａ又は裏面部１０２ｅに対して垂直に延びる軸であり、図２Ａ中の上方向を＋とする。ｚ軸は、手先効果部１０２の中心部１０２ｄから底面部１０２ｃに垂直に延びる軸であり、図２Ｂ中の上方向を＋とする。ｘ軸周りの回転αは、ｘ軸に対して右手の法則を適用させる。ｙ軸周りの回転βは、ｙ軸に対して右手の法則を適用させる。ｚ軸周りの回転γは、ｚ軸に対して右手の法則を適用させる。
【００５５】
図２Ａ〜図２Ｃの状態における手先効果部１０２と把持部１０３の間との隙間９０の間隔（ギャップ）Δｘ、Δｙ、Δｚは、それぞれ、具体的な一例として３ｍｍとなっており、その隙間分だけ把持部１０３をｘ軸方向、ｙ軸方向、又は、ｚ軸方向にそれぞれ動かすことができる。したがって、図２Ａ〜図２Ｃの状態においては、把持部１０３の可動範囲（手先効果部１０２と分離した範囲）は、ｘ、ｙ、ｚ軸に対して±３ｍｍとなる。また、把持部１０３の回転の可動範囲（Δα、Δβ、Δγ）は、α、β、γ方向に対して、それぞれ、一例として±３／１００ラジアンとなっている。把持部１０３の形状に関しては、手先効果部１０２と同様にいかなる形状も可能である。
【００５６】
また、把持部１０３を人が把持しない場合においても把持部１０３が手先効果部１０２から落下しないように、図２Ａ〜図２Ｃに示すように把持部１０３の４個の突起部１０３ｃが手先効果部１０３を囲む若しくは引っかかる形状となっているので、どの方向を向いても手先効果部１０２から落下しない構造となっている（図３Ａ〜図３Ｆ参照）。すなわち、図３Ａは、把持部１０３が手先効果部１０２に対して最も下方の位置に移動した場合に、４個の突起部１０３ｃが手先効果部１０２の上面１０２ｆに接触して脱落防止している状態を示している。図３Ｂは、把持部１０３と手先効果部１０２との位置関係が、図３Ａの状態とは上下逆さまとなり、把持部１０３の底面部１０３ａが手先効果部１０２の底面部１０２ｃに接触している状態を示している。図３Ｃは、把持部１０３と手先効果部１０２との位置関係が、図３Ａの状態から時計方向に９０度回転した状態であり、把持部１０３の側面部１０３ｂが手先効果部１０２の側面部１０２ｂに接触している状態を示している。図３Ｄは、把持部１０３と手先効果部１０２との位置関係が、図３Ａの状態から反時計方向に９０度回転した状態であり、把持部１０３の側面部１０３ｂが手先効果部１０２の側面部１０２ｂに接触している状態を示している。図３Ｅは、把持部１０３と手先効果部１０２との位置関係が、図３Ｃの状態から左右方向の軸周りに上方向に９０度回転した状態であり、把持部１０３の側面部１０３ｂが手先効果部１０２の裏面部１０２ｅに接触している状態を示している。図３Ｆは、把持部１０３と手先効果部１０２との位置関係が、図３Ｃの状態から左右方向の軸周りに上方向に図３Ｅとは逆に９０度回転した状態であり、把持部１０３の側面部１０３ｂが手先効果部１０２の表面部１０２ａに接触している状態を示している。
【００５７】
また、同様に、どの方向に回転しても、把持部１０３は手先効果部１０２から落下しない構造となっている（図３Ｇ〜図３Ｌ参照）。すなわち、図３Ｇ〜図３Ｊは、手先効果部１０２の側面部１０２ｂ又は表面部１０２ａ（裏面部１０２ｅ）のいずれもが、図３Ｇ〜図３Ｊにおいて、時計方向又は反時計方向に回転しても、右側の角度部又は左側の角度部が把持部１０３の突起部１０３ｃに接触して、把持部１０３は手先効果部１０２から落下しない状態を示している。図３Ｋ〜図３Ｌは、手先効果部１０２の上面１０２ｆが、図３Ｋ〜図３Ｌにおいて、時計方向又は反時計方向に回転しても、手先効果部１０２の角度部が把持部１０３の側面部１０３ｂに接触してあまり回転しないように規制され、かつ、手先効果部１０２の各辺の一部が把持部１０３の突起部１０３ｃに接触して、把持部１０３は手先効果部１０２から落下しない状態を示している。
【００５８】
なお、このように、手先効果部１０２と把持部１０３とが接触する際に、衝突を和らげる緩衝材４０１を手先効果部１０２に取り付けることも可能である（図４Ａ、図４Ｂ参照）。図４Ａ及び図４Ｂに示す通り、緩衝材４０１を手先効果部１０２の上下左右の各角部に取り付けた場合においても、図２Ａ〜図２Ｃで定義した隙間（Δｘ〜Δγ）の値は変わらない。図４Ｃ及び図４Ｄに緩衝材４０１と把持部１０３が接触した際の状態を示す。図４Ｃ及び図４Ｄより、緩衝材４０１を手先効果部１０２に取り付けることによって、緩衝材４０１のみが把持部１０３と接触しており、手先効果部１０２と把持部１０３とは直接接触していないことがわかる。
【００５９】
なお、図５に示すように、手先効果部１０２と把持部１０３との構成位置を入れ替えた構成でも使用することができる。すなわち、四角形の箱体状の手先効果部１０２Ｈの内部の空間内に平面が正方形の直方体状の把持部１０３Ｈを前記隙間と同じ隙間をあけて配置して構成することもできる。この場合、人が把持部１０３Ｈを把持しやすくするため、把持部１０３Ｈの底面部に取っ手部材１０３ｅを取り付ける必要がある。図５では、接触センサ１０５は、例えば、取っ手部材１０３ｅの周囲の４箇所に取り付けているが、これに限られるものではない。
【００６０】
相対位置センサ１０４は、手先効果部１０２に対する把持部１０３の相対位置Δｒを検出するセンサである。ここで、Δｒは、Δｘ〜Δγの総称を意味する。
【００６１】
ここで、相対位置Δｒは次式（１）により表され、各相対位置は図２Ａ〜図２Ｃに示す通りである。
【００６２】
【数１】
2012101956.tif 000113
図２Ａ〜図２Ｃに示すように、相対位置センサ１０４は手先効果部１０２に内蔵された構造になっており、具体的にはギャップセンサを用いている。すなわち、手先効果部１０２の正面部１０２ａの近傍内に、正面部１０２ａと平行にかつｘ軸方向沿いに丸棒状のギャップセンサｓｘ１を配置して、ギャップセンサｓｘ１の一端が手先効果部１０２の側面部１０２ｂに露出して、隙間９０のｘ軸方向の幅Δｘを計測している。手先効果部１０２の側面部１０２ｂの近傍内には、側面部１０２ｂと平行にかつｚ軸方向沿いに丸棒状のギャップセンサｓｚ３を配置して、ギャップセンサｓｚ３の一端が手先効果部１０２の底面部１０２ｃに露出して、隙間９０のｚ軸方向の幅Δｚを計測している。手先効果部１０２の裏面部１０２ｅの近傍内に、側面部１０２ｂと平行にかつｙ軸方向沿いにそれぞれ丸棒状の一対のギャップセンサｓｙ１、ｓｙ２を配置して、一対のギャップセンサｓｙ１、ｓｙ２の各一端が手先効果部１０２の裏面部１０２ｅに露出して、隙間９０のｙ軸方向の幅Δｙをそれぞれ計測している。手先効果部１０２の裏面部１０２ｅの近傍内には、側面部１０２ｂと平行にかつｚ軸方向沿いに丸棒状の一対のギャップセンサｓｚ２、ｓｚ３を配置して、一対のギャップセンサｓｚ２、ｓｚ３の各一端が手先効果部１０２の底面部１０２ｃに露出して、隙間９０のｚ軸方向の幅Δｚを計測している。
【００６３】
よって、隙間９０のｙ軸方向の幅Δｙは、２個のギャップセンサｓｙ１、ｓｙ２で計測された少なくとも２つの計測値ｙ１、ｙ２の平均を、後述する相対位置情報取得部６０７で算出して採用する。隙間９０のｚ軸方向の幅Δｚは、３個のギャップセンサｓｚ１、ｓｚ２、ｓｚ３で計測された少なくとも３つの計測値ｚ１、ｚ２、ｚ３の平均を、後述する相対位置情報取得部６０７で算出して採用する。なお、隙間９０のｘ軸方向の幅Δｘは、１個のギャップセンサｓｘで計測された少なくとも１つの計測値ｘ１をそのまま採用するか、１個のギャップセンサｓｘで複数回計測を行い、その平均値を、後述する相対位置情報取得部６０７で算出して採用する。幅Δｙ又は幅Δｚも、同様に、それぞれのギャップセンサで複数回計測を行い、それらの平均値をそれぞれｙ１、ｙ２、ｚ１、ｚ２、ｚ３とした上で、前記した平均値を算出して採用するようにしてもよい。よって、各計測値ｘ１、ｙ１、ｙ２、ｚ１、ｚ２、ｚ３を計算して得られた結果が幅Δｘ〜Δγとなる。
【００６４】
しかしながら、手先効果部１０２に対する把持部１０３の相対位置Δｒを検出する方法としては、ギャップセンサによる検出に代えて、カメラで手先効果部１０２に対する把持部１０３の画像を取得して相対位置Δｒを検出する方法など、他の方法を用いることも可能である。
【００６５】
ここでは、図２Ａ〜図２Ｃに示すギャップセンサを６個用いる方法について説明する。６個のギャップセンサｓｘ１、ｓｙ１、ｓｙ２、ｓｚ１、ｓｚ２、ｓｚ３を図２Ａ〜図２Ｃに示すように配置し、ｘｙｚのそれぞれの軸の手先効果部１０２と把持部１０３との隙間ｇを測定する（ギャップセンサｓｘ１、ｓｙ１、ｓｙ２、ｓｚ１、ｓｚ２、ｓｚ３のそれぞれの計測値（測定値）ｇから相対位置Δｒを導出する方法は後述する）。なお、隙間ｇは、ギャップセンサｓｘ１、ｓｙ１、ｓｙ２、ｓｚ１、ｓｚ２、ｓｚ３のそれぞれの計測値ｘ１、ｙ１、ｙ２、ｚ１、ｚ２、ｚ３の総称を意味する。ここで、隙間ｇは、次式（２）により表されて、それぞれのギャップセンサｓｘ１、ｓｙ１、ｓｙ２、ｓｚ１、ｓｚ２、ｓｚ３の計測値ｘ１、ｙ１、ｙ２、ｚ１、ｚ２、ｚ３を表し、隙間ｇは図２Ａ〜図２Ｃに示す通りである。なお、各計測値ｘ１、ｙ１、ｙ２、ｚ１、ｚ２、ｚ３だけでは回転方向が表現されていない。そこで、各計測値ｘ１、ｙ１、ｙ２、ｚ１、ｚ２、ｚ３を用いて並進方向と回転方向を求めた結果がΔｘ〜Δγとしている。よって、各計測値ｘ１、ｙ１、ｙ２、ｚ１、ｚ２、ｚ３はギャップセンサｓｘ１、ｓｙ１、ｓｙ２、ｓｚ１、ｓｚ２、ｓｚ３の計測値を表しただけのものである。それに対して、Δｘ〜Δγは各計測値を用いて並進方向と回転方向の相対位置を計算した結果、導出した値となる。
【００６６】
【数２】
2012101956.tif 000114
また、図２Ａ〜図２Ｃに示すように、ｙ軸方向のギャップセンサｓｙ１−ｓｙ２間の間隔ｐｙ１２、ｚ軸方向のギャップセンサｓｚ１−ｓｚ２間の間隔ｐｚ１２、ｚ軸方向のギャップセンサｓｚ２−ｓｚ３間の間隔ｐｚ２３は１００ｍｍとする。
【００６７】
接触センサ１０５は、把持部１０３の外側の４つの側面部１０３ｂの外面と底面部１０３ａの外面とにそれぞれ取り付けられ、外部との接触の有無を検出する。各接触センサ１０５の出力はデジタル信号であり、各接触センサ１０５は、「接触有り」の場合には「１」を出力し、「接触無し」の場合には「０」を出力する。検出した接触センサ１０５の出力は、入出力ＩＦ６０８に出力する。図２Ａ〜図２Ｃに示すように、各接触センサ１０５は１０５Ａ〜１０５Ｅの５箇所に取り付けられている。すなわち、接触センサ１０５Ａ〜１０５Ｄが４つの側面部１０３ｂの外面に取り付けられ、接触センサ１０５Ｅが底面部１０３ａの外面に取り付けられている。なお、ここでは、図２Ａ及び図２Ｂに示すように、接触センサ１０５を配置したが、接触センサ１０５の配置場所又は個数などは、把持部１０３と他の物体との接触の情報を取得できるならば、どのように選択しても構わない。
【００６８】
図６は、本発明の第１実施形態のロボットにおけるロボットアーム１００のブロック図を示す。図４において、ロボットアーム１００は、マニピュレータ１０１と、ロボットアーム１００の制御装置６０２とで構成されている。
【００６９】
ロボットアーム１００の制御装置６０２は、制御装置本体部６０３と、周辺装置６０４とで構成されている。制御装置本体部６０３は、制御部６０５と、追従制御部６０６と、相対位置情報取得部６０７と、追従制御切替制御部６００（接触情報取得部６１０と、把持検出部６１１と、追従制御切替部６１２）とで構成されている。周辺装置６０４は、入出力ＩＦ６０８と、モータドライバ６０９とで構成されている。入出力ＩＦ６０８には、制御装置６０２での制御動作のオン・オフスイッチも含まれている。追従制御切替制御部６００は、接触情報取得部６１０と、把持検出部６１１と、追従制御切替部６１２とで構成されて、把持部１０３が他の物と接触しているとき追従制御部６０６での追従制御を行う一方、把持部１０３が他の物と接触していないとき追従制御部６０６での追従制御を行わないように追従制御を切替える追従制御情報を出力するものである。それぞれの機能について、以下に説明する。
【００７０】
相対位置情報取得部６０７は、入出力ＩＦ６０８から取得したギャップセンサｓｘ１、ｓｙ１、ｓｙ２、ｓｚ１、ｓｚ２、ｓｚ３のそれぞれの計測値ｇを基に、手先効果部１０２に対する把持部１０３の相対位置Δｒを求める。求めた相対位置Δｒである相対位置情報を、相対位置情報取得部６０７から追従制御部６０６に出力する。ここで、ギャップセンサｓｙ１−ｓｙ２間の間隔と、ギャップセンサｓｚ１−ｓｚ２間の間隔と、ギャップセンサｓｚ２−ｓｚ３間の間隔とをそれぞれｐとし、ギャップセンサｓｘ１、ｓｙ１、ｓｙ２、ｓｚ１、ｓｚ２、ｓｚ３のそれぞれの計測値をｘ１、ｙ１、ｙ２、ｚ１、ｚ２、ｚ３とし、手先効果部１０２に対する把持部１０３の相対位置をΔｒとすると、Δｒは、相対位置情報取得部６０７により、次式（３）より求まる。
【００７１】
【数３】
2012101956.tif 000115
追従制御部６０６は、相対位置情報取得部６０７から取得した手先効果部１０２に対する把持部１０３の相対位置情報から、その相対位置情報が所定の閾値の範囲内に収まるような移動量を求める。求めた移動量の情報は、追従制御部６０６から制御部６０５に出力する。所定の閾値の範囲とは、ギャップセンサｓｙ１−ｓｙ２間の間隔と、ギャップセンサｓｚ１−ｓｚ２間の間隔と、ギャップセンサｓｚ２−ｓｚ３間の間隔とをそれぞれｐとするとき、定数（例えば、０．１）を掛けた範囲（−０．１ｐ〜０．１ｐ）とする。
【００７２】
また、追従制御部６０６による移動量の求め方を以下に説明する。手先効果部１０２に対する把持部１０３の相対位置をΔｒ（式（３）参照）とし、相対位置の目標値をΔｒｄとし、求める移動量をｙとすると、追従制御部６０６により、次式（４）より、移動量ｙは求まる（ここで、ｋは定数（例えば、１．０））。ただし、手先効果部１０２に対する把持部１０３の相対位置Δｒが閾値内に収まっている場合は、移動量ｙを０とする。定数ｋの値は、人がキーボード又はマウス又はタッチパネルなどの入力装置６０８ｄを使用して入出力ＩＦ６０８から入力される値によって決定される。
【００７３】
【数４】
2012101956.tif 000116
ただし、相対位置の目標値Δｒｄは次式（５）で表され、各ギャップセンサの値ｇが３ｍｍのときをΔｒｄ＝０と定め、ここでは、相対位置の目標値Δｒｄを０とする。また、式（４）中で使用されるΔｘｄ、Δｙｄ、Δｚｄ、Δαｄ、Δβｄ、Δγｄについて説明する。Δｘｄは、図２Ａ中のｘ軸に対する平行移動方向の相対位置Δｘの目標値である。Δｙｄは、図２Ａ中のｙ軸に対する平行移動方向の相対位置Δｙの目標値である。Δｚｄは、図２Ａ中のｚ軸に対する平行移動方向の相対位置Δｚの目標値である。Δαｄは、図２Ａ中のｘ軸に対する回転方向の相対位置Δαの目標値である。Δβｄは、図２Ａ中のｙ軸に対する回転方向の相対位置Δβの目標値である。Δγｄは、図２Ａ中のｚ軸に対する回転方向の相対位置Δγの目標値である。相対位置の目標値Δｒｄが０の場合は、Δｘｄ、Δｙｄ、Δｚｄ、Δαｄ、Δβｄ、Δγｄの値はいずれも０である。
【００７４】
【数５】
2012101956.tif 000117
接触情報取得部６１０には、入出力ＩＦ６０８から接触センサ１０５（１０５Ａ〜１０５Ｅ）の測定値と、入出力ＩＦ６０８に内蔵されたタイマーからの時間情報とが入力されて、把持部１０３と他の物との接触の有無の情報（接触情報）を取得する。接触情報取得部６１０では、入力された接触センサ１０５の測定値を接触情報とし、この接触情報を接触情報取得部６１０から把持検出部６１１に出力する。接触情報とは、図７に示すように、接触センサ１０５Ａ〜接触センサ１０５Ｅの接触の有無の情報である。図７では、「１」が「接触有り」を示し、「０」が「接触無し」を示している。
【００７５】
把持検出部６１１には、接触情報取得部６１０から接触情報が入力される。入出力ＩＦ６０８から把持検出部６１１にも、入出力ＩＦ６０８に内蔵されたタイマーからの時間情報が入力される。把持検出部６１１は、接触情報取得部６１０からの接触情報を基に、人が把持部１０３を把持しているかどうかを検出（判定）する把持判定部として機能し、「把持有り」または「把持無し」で表される把持情報を追従制御切替部６１２に出力する。ここで、把持情報としては、「把持有り」の場合は「１」を把持検出部６１１から追従制御切替部６１２に出力し、「把持無し」の場合は「０」を把持検出部６１１から追従制御切替部６１２に出力する。
【００７６】
把持情報において、人の把持が把持検出部６１１で検出される場合（「把持有り」として把持検出部６１１で検出する場合）は、次の２つの把持検出条件を満たすことである。
【００７７】
１つ目の把持検出条件は、互いに向かい合う２つの接触センサ１０５（接触センサ１０５Ａと接触センサ１０５Ｂ、又は、接触センサ１０５Ｃと接触センサ１０５Ｄ）が共に「接触有り」（出力が１）であること。これは、図８に示すように、人の手８０１で把持部１０３を把持するとき、人の手８０１の例えば親指８０１ｃが把持部１０３の下面側の接触センサ１０５Ａに接触するとともに、人差し指８０１ｂが把持部１０３の上面側の接触センサ１０５Ｂに接触して、親指８０１ｃと人差し指８０１ｂとの間で把持部１０３を把持するためである。このようにすることによって、把持部１０３の一面のみが地面と接している場合又は把持部１０３の一面のみが他の物体と接触している場合などに、人が把持部１０３を把持していると把持検出部６１１で誤検出することを防ぐことができる。なぜなら、１つの接触センサ１０５のみが「接触有り」であったとしても、他の接触センサ１０５が「接触無し」ならば、人が把持部１０３を把持したとは把持検出部６１１で検出しないためである。
【００７８】
２つ目の把持検出条件は、２つの接触センサ１０５のそれぞれが所定時間（例えば連続して２秒以上）の間、「接触有り」（接触センサ１０５からの出力が「１」）であること。これは、人が把持部１０３を把持する意図がなく、把持部１０３に人の手８０１又は他の物体をぶつけてしまった場合に、人が把持部１０３を把持していると把持検出部６１１で誤検出することを防ぐためである。
【００７９】
図９Ａ〜図９Ｃを用いて、２つ目の把持検出条件を満たす場合について説明する。図９Ａ〜図９Ｃは、横軸が時間（秒）を示し、縦軸は接触情報（例えば、接触センサ１０５Ａの情報）を示す。図９Ａは、接触している時間が５．１秒の時点と５．２秒の時点との間の０．１秒であり、２つ目の把持検出条件を満たさない。図９Ｂは、５秒の時点から接触を開始し、７秒の時点を経過して、接触している時間が２秒を超えている。よって、７秒の時点以降の時間は２つ目の把持検出条件を満たす。７秒の時点より以前の時間は２つ目の把持検出条件を満たさない。図９Ｃは、連続して接触している時間が５秒の時点から６秒の時点の間の１秒と、７秒の時点から８．５秒の時点の間の１．５秒であるので、それぞれ、２つ目の把持検出条件を満たさない。
【００８０】
以上の２つの把持検出条件を両方とも満たしたときに、把持検出部６１１は、把持情報として「把持有り」（出力が「１」）を把持検出部６１１から追従制御切替部６１２に出力する。１つでも把持検出条件を満たさない場合は、把持検出部６１１は、把持情報として「把持無し」（出力が「０」）を把持検出部６１１から追従制御切替部６１２に出力する。
【００８１】
追従制御切替部６１２は、把持検出部６１１からの把持情報に応じて「追従制御オン」又は「追従制御オフ」で表される追従制御情報を決定する。追従制御切替部６１２で決定した追従制御情報を、追従制御切替部６１２から制御部６０５に出力する。ここで、追従制御情報としては、「追従制御オン」の場合は「１」を出力し、「追従制御オフ」の場合は「０」を出力する。追従制御切替部６１２における追従制御情報の選択（切り替え）方法は、把持検出部６１１からの把持情報において、「把持有り」（出力が「１」）の情報があると、「追従制御オン」を追従制御切替部６１２で選択し、「把持無し」（出力が「０」）の情報であると、「追従制御オフ」を追従制御切替部６１２で選択する。よって、人が把持部１０３を把持したときのみ「追従制御オン」となり、人が把持部１０３を把持していないときは「追従制御オフ」となる。
【００８２】
制御部６０５は、入出力ＩＦ６０８に内蔵されたタイマーを利用して、ある一定時間毎（例えば、１ｍ秒毎）に、追従制御部６０６から制御部６０５に入力される移動量情報を入出力ＩＦ６０８に出力する。ここで、追従制御切替部６１２から入力される追従制御情報が、「追従制御オン」（出力が「１」）である場合は、移動量情報を制御部６０５から入出力ＩＦ６０８に出力するが、「追従制御オフ」（出力が「０」）である場合は、追従制御を停止する指令を制御部６０５から入出力ＩＦ６０８に出力する。
【００８３】
入出力ＩＦ６０８は、マニピュレータ１０１から取得したギャップセンサｓｘ１、ｓｙ１、ｓｙ２、ｓｚ１、ｓｚ２、ｓｚ３の計測値ｇと、入出力ＩＦ６０８に内蔵されたタイマーからの時間情報とを相対位置情報取得部６０７に出力する。
【００８４】
接触センサ１０５からの接触センサ１０５の計測値と、入出力ＩＦ６０８に内蔵されたタイマーからの時間情報とを、入出力ＩＦ６０８から接触情報取得部６１０に出力する。
【００８５】
また、制御部６０５から取得した移動量情報、もしくは、追従制御を停止する指令を、入出力ＩＦ６０８はモータドライバ６０９に出力する。
【００８６】
追従制御部６０６で使用する定数の値（閾値を導出する際の間隔ｐに掛ける定数、移動量を導出する際の式（４）の係数ｋ）が、人がキーボード又はマウス又はタッチパネルなどの入力装置６０８ｄを使用して入出力ＩＦ６０８に入力でき、入出力ＩＦ６０８に入力された値を、入出力ＩＦ６０８から追従制御部６０６に出力する。
【００８７】
モータドライバ６０９は、入出力ＩＦ６０８から取得した移動量情報を基に、マニピュレータ１０１を制御するために、マニピュレータ１０１のそれぞれのモータ１０１３への指令値をマニピュレータ１０１に出力する。また、入出力ＩＦ６０８から追従制御を停止する指令がモータドライバ６０９に入力された場合は、制御を停止するためのモータ１０１３への指令値をモータドライバ６０９からマニピュレータ１０１に出力する。
【００８８】
マニピュレータ１０１は、入出力ＩＦ６０８に内蔵されたタイマーを利用して、ある一定時間毎（例えば、１ｍ秒毎）に、マニピュレータ１０１の位置情報をマニピュレータ１０１の各エンコーダ１０１４から入出力ＩＦ６０８に出力する。また、相対位置センサ１０４（ギャップセンサｓｘ１、ｓｙ１、ｓｙ２、ｓｚ１、ｓｚ２、ｓｚ３）からのギャップセンサの計測値ｇも同様に、入出力ＩＦ６０８に内蔵されたタイマーを利用して、ある一定時間毎（例えば、１ｍ秒毎）に、ギャップセンサｓｘ１、ｓｙ１、ｓｙ２、ｓｚ１、ｓｚ２、ｓｚ３から入出力ＩＦ６０８に出力する。また、マニピュレータ１０１は、モータドライバ６０９からの指令値に従って制御される。詳細については、図１０を用いて説明する。マニピュレータ１０１は、合計６個の軸周りに回転可能として６自由度の多リンクマニピュレータを構成している。
【００８９】
図１０に示すように、マニピュレータ１０１は、一例として、多関節ロボットアームであって、具体的には６自由度の多リンクのマニピュレータである。マニピュレータ１０１は、手先効果部１０２と、手先効果部１０２が取り付けられている手首部１００１を先端１００２ａに有する前腕リンク１００２と、前腕リンク１００２の基端１００２ｂに回転可能に先端１００３ａが連結される上腕リンク１００３と、上腕リンク１００３の基端１００３ｂが回転可能に連結支持される台部１００４とを備えている。台部１００４は、一定位置に固定されているが、図示しないレールに移動可能に連結されていても良い。手首部１００１は、第４関節部１００８と、第５関節部１００９と、第６関節部１０１０との３つの回転軸を有しており、前腕リンク１００２に対する手先効果部１０２の相対的な姿勢（向き）を変化させることができる。すなわち、図１０において、第４関節部１００８は、手首部１００１に対する手先効果部１０２の横軸周りの相対的な姿勢を変化させることができる。第５関節部１００９は、手首部１００１に対する手先効果部１０２の、第４関節部１００８の横軸とは直交する縦軸周りの相対的な姿勢を変化させることができる。第６関節部１０１０は、手首部１００１に対する手先効果部１０２の、第４関節部１００８の横軸及び第５関節部１００９の縦軸とそれぞれ直交する横軸周りの相対的な姿勢を変化させることができる。前腕リンク１００２の他端１００２ｂは、上腕リンク１００３の先端１００３ａに対して第３関節部１００７周りに、すなわち、第４関節部１００８の横軸と平行な横軸周りに回転可能とする。上腕リンク１００３の他端１００３ｂは、台部１００４に対して第２関節部１００６周りに、すなわち、第４関節部１００８の横軸と平行な横軸周りに回転可能とする。さらに、台部１００４の上側可動部１００４ａは、台部１００４の下側固定部１００４ｂに対して第１関節部１００５周りに、すなわち、第５関節部１００９の縦軸と平行な縦軸周りに回転可能としている。
【００９０】
この結果、マニピュレータ１０１は、合計６個の軸周りに回転可能として前記６自由度の多リンクマニピュレータを構成している。
【００９１】
マニピュレータ１０１の各軸の回転部分を構成する各関節部には、関節部駆動用のモータ１０１３のような回転駆動装置と、モータ１０１３の回転軸の回転位相角（すなわち関節角）を検出して位置情報を出力するエンコーダ１０１４（実際には、マニピュレータ１０１の各関節部の内部に配設されている）とを備えている。モータ１０１３（実際には、マニピュレータ１０１の各関節部の内部に配設されている）は、各関節部を構成する一対の部材（例えば、回動側部材と、該回動側部材を支持する支持側部材）のうちの一方の部材に備えられる、モータドライバ６０９により駆動制御される。各関節部の一方の部材に備えられたモータ１０１３の回転軸が、各関節部の他方の部材に連結されて、前記回転軸を正逆回転させることにより、他方の部材を一方の部材に対して各軸周りに回転可能とする。
【００９２】
また、１０１１は台部１００４の下側固定部１００４ｂに対して相対的な位置関係が固定された絶対座標系であり、１０１２は手先効果部１０２に対して相対的な位置関係が固定された手先座標系である。絶対座標系１０１１から見た手先座標系１０１２の原点位置Ｏｅ（ｘ，ｙ，ｚ）をマニピュレータ１０１の手先位置、絶対座標系１０１１から見た手先座標系１０１２の姿勢をロール角とピッチ角とヨー角とで表現した（φ，θ，ψ）をマニピュレータ１０１の手先姿勢とし、手先位置及び姿勢ベクトルをベクトルｒ＝［ｘ，ｙ，ｚ，φ，θ，ψ］Ｔと定義する。よって、一例として、絶対座標系１０１１のｚ軸に対して第１関節部１００５の縦軸が平行であり、ｘ軸に対して第２関節部１００６の横軸が平行に位置可能とするのが好ましい。また、手先座標系１０１２のｘ軸に対して第６関節部１０１０の横軸が平行に位置可能であり、ｙ軸に対して第４関節部１００８の横軸が平行に位置可能であり、ｚ軸に対して第５関節部１００９の縦軸が平行に位置可能とするのが好ましい。なお、手先座標系１０１２のｘ軸に対しての回転角をヨー角ψとし、ｙ軸に対しての回転角をピッチ角θとし、ｚ軸に対しての回転角をロール角φとする。
【００９３】
さらに、マニピュレータ１０１の手先（例えば、先端１００２ａ）にはハンド１０１５を取り付けることができる。ハンド１０１５は、ハンド１０１５と手先効果部１０２とのなす角度が一定になるように手先効果部１０２と固定される。ハンド１０１５は、手先効果部１０２に対して着脱可能に固定され、手先効果部１０２に対する取り付け方によって、ハンド１０１５と手先効果部１０２との角度を自由に変えて固定することができる。また、ハンド１０１５には、ハンド開閉用のモータ１０１３ｈとエンコーダ７１４ｈとが取り付けられており、マニピュレータ１０１と同様に、ハンド１０１５の開閉を制御することができる。
【００９４】
図１１Ａ〜図１１Ｅは、マニピュレータ１０１と人とが協調して対象物（把持対象物）１１０１を搬送するときに、マニピュレータ１０１が追従する手順を示す。マニピュレータ１０１の手先部の例えば先端１００２ａにハンド１０１５を取り付け、ハンド１０１５で対象物１１０１を把持させる。その後、図１１Ａ→図１１Ｂ→図１１Ｃ→図１１Ｄ→図１１Ｅの順に状態が遷移する。
【００９５】
まず、図１１Ａの状態は、人の手８０１が把持部１０３を把持しておらず、マニピュレータ１０１は停止した状態である。
【００９６】
次いで、図１１Ｂの状態は、人の手８０１が把持部１０３を把持しており、把持検出部６１１で「把持有り」と検出され、マニピュレータ１０１は制御装置６０２により追従制御を行うことができる待機状態である。
【００９７】
次いで、図１１Ｃの状態は、人の手８０１が把持部１０３を移動させ、手先効果部１０２に対する把持部１０３の相対位置Δｒが閾値を超えた状態である。具体的には、図１１Ｃでは、人の手８０１が把持部１０３を図１１Ｃの右方向（矢印参照）に移動させ、手先効果部１０２に対する把持部１０３の相対位置Δｒ（特に、Δｚ）が閾値を超えた状態である。
【００９８】
次いで、図１１Ｄの状態は、手先効果部１０２に対する把持部１０３の相対位置Δｒが閾値内に収まるように、マニピュレータ１０１が制御装置６０２により追従制御を行っている状態である。具体的には、図１１Ｄでは、人の手８０１が把持部１０３を図１１Ｃの右方向（矢印参照）に移動させているので、手先効果部１０２に対する把持部１０３の相対位置Δｒが閾値内に収まるように、図１１Ｄの矢印方向にマニピュレータ１０１が制御装置６０２により追従制御を行って、点線から実線で示す位置に、対象物１１０１をマニピュレータ１０１で搬送している状態である。
【００９９】
次いで、図１１Ｅの状態は、人の手８０１が把持部１０３を把持しておらず、マニピュレータ１０１は停止した状態である。
【０１００】
以上のように、人の手８０１が把持部１０３を把持し移動させると、その移動量に応じてマニピュレータ１０１が制御装置６０２により把持部１０３に対して追従する動きが可能となる。手先効果部１０２と把持部１０３とは、分離した構造をしているので、人は把持部１０３を移動させるだけの力で、対象物１１０１をマニピュレータ１０１を利用して移動させることができる。
【０１０１】
しかしながら、手先効果部１０２と把持部１０３とが分離しており、それらの相対位置を閾値内に収めるように制御装置６０２によりマニピュレータ１０１が追従制御を行うので、人の手８０１が把持部１０３を把持していないときには、マニピュレータ１０１が地面に当たるまで下に下がり続けてしまうという課題が生じてしまう可能性がある。
【０１０２】
この課題を接触センサ１０５を用いない協調搬送の例である図１２Ａ〜図１２Ｄを用いて説明する。図１２Ａ→図１２Ｂ→図１２Ｃ→図１２Ｄの順に状態が遷移する。
【０１０３】
まず、図１２Ａの状態は、人の手８０１が把持部１０３を把持した状態で、協調搬送の作業を終了している。
【０１０４】
次いで、図１２Ｂの状態は、作業終了直後に、人の手８０１を把持部１０３から放した状態である。
【０１０５】
次いで、図１２Ｃの状態は、人の手８０１を把持部１０３から放したことによって、把持部１０３が重力の影響で下に落下している状態である。
【０１０６】
次いで、図１２Ｄの状態は、把持部１０３が落下したことによって、手先効果部１０２に対する把持部１０３の相対位置が大きくなるので、その相対位置を閾値内に収めるようにマニピュレータ１０１が下に追従している状態である。把持部１０３は重力の影響で地面に衝突するまで落下し続けるので、マニピュレータ１０１も地面に衝突するまで下に下がり続けてしまう。
【０１０７】
このような課題に対応するために、第１実施形態では、人の手８０１が把持部１０３を把持したときのみ、制御装置６０２によりマニピュレータ１０１が追従制御を行うようにしている。このような構成にすることによって、人の手８０１が把持部１０３を把持していない場合は、マニピュレータ１０１は制御装置６０２により追従制御を行わないので、マニピュレータ１０１が下に下がり続けるという課題を解消することができる。
【０１０８】
第１実施形態のロボット６０１におけるロボットアーム１００の制御装置６０２の操作手順を図１３のフローチャートを用いて説明する。
【０１０９】
ステップＳ１３０１では、相対位置情報取得部６０７において、手先効果部１０２に対する把持部１０３の相対位置情報を取得する。接触情報取得部６１０において、接触センサ１０５の外部からの接触情報を取得する。
【０１１０】
ステップＳ１３０２では、接触情報取得部６１０で取得した接触情報を基に人が把持部１０３を把持しているか、把持検出部６１１で検出する。把持検出部６１１で検出した結果を追従制御切替部６１２に出力する。人が把持部１０３を把持していると追従制御部６０６で検出した場合は、ステップＳ１３０３に進む。人が把持部１０３を把持していないと追従制御部６０６で検出した場合は、このフローを終了する。
【０１１１】
ステップＳ１３０３では、相対位置情報取得部６０７から取得した相対位置情報が所定の閾値の範囲内に収まっているか、追従制御部６０６で判定する。相対位置情報が閾値の範囲内に収まっていると追従制御部６０６で判定した場合は、このフローを終了する。相対位置情報が閾値の範囲内に収まっていないと追従制御部６０６で判定した場合は、ステップＳ１３０４に進む。
【０１１２】
ステップＳ１３０４では、追従制御部６０６で、閾値の範囲を超えている相対位置情報が閾値内に収まるような移動量を求める。追従制御部６０６で求めた移動量を、追従制御部６０６から制御部６０５に出力し、ステップＳ１３０５に進む。
【０１１３】
ステップＳ１３０５では、制御部６０５で、追従制御部６０６から取得した移動量を基に、マニピュレータ１０１を追従制御し、このフローを終了する。
【０１１４】
前記第１実施形態の構成によれば、人が把持する把持部１０３と手先効果部１０２とが機構的に分離され、把持部１０３を移動させたところにマニピュレータ１０１が追従することから、例えば、協調搬送、又は、ダイレクトティーチングなどの作業を行う際の操作性の悪いロボットアーム１００に対しても、人は軽い力でロボットアーム１００を容易に移動させることができ、人の負担を軽減することができる。したがって、ロボットアーム１００の操作性を改善することができる。また、接触情報取得部６１０で取得した接触情報を基に人が把持部１０３を把持しているか把持検出部６１１で検出することができて、人が把持部１０３を把持したと把持検出部６１１で検出した場合のみ、制御部６０５でマニピュレータ１０１の追従制御を行う。このため、人が把持部１０３を把持していない場合において、マニピュレータ１０１が地面に衝突するまで下に下がり続けるという危険性はなく、安全である。なお、人が把持部１０３を把持していないと把持検出部６１１で検出した場合は、追従制御無しで、制御部６０５でマニピュレータ１０１を移動動作制御する。追従制御を行っていた場合に、人が把持部１０３を把持していないと把持検出部６１１で検出した場合は、制御部６０５でマニピュレータ１０１の追従制御を停止したのち、追従制御無しで、制御部６０５でマニピュレータ１０１を移動動作制御する。
【０１１５】
（第２実施形態）
以下、本発明の第２実施形態におけるロボットについて説明する。
【０１１６】
第１実施形態では、人が把持部１０３を把持したときのみ、制御部６０５でマニピュレータ１０１の追従制御を行うことによって、人が把持部１０３を把持していない場合にマニピュレータ１０１が下に下がり続けるという課題を解消し、安全性を高めている。
【０１１７】
しかしながら、人が把持部１０３を把持し始めたときに、もし手先効果部１０２に対する把持部１０３の相対位置Δｒの値が０でない場合には、人が把持部１０３を把持した直後にマニピュレータ１０１が急激に移動して危険な状態となる可能性がある。すなわち、追従制御開始時に相対位置Δｒが０でないときは、相対位置Δｒの大きさにかかわらず、追従制御開始直後に追従制御が急に行われることになり、危険な状態となる可能性が高い。これに対して、第２実施形態では、相対位置Δｒが０であっても、追従制御開始直後はゆっくり追従制御を行うように構成することで、前記したような危険な状態となる可能性が回避でき、安全性が高まる。この状態を図１４Ａ〜図１４Ｃを用いて説明する。
【０１１８】
図１４Ａ〜図１４Ｃは、人とマニピュレータ１０１とが協調して対象物１１０１を搬送するときに、マニピュレータ１０１が追従する手順を示す。図１４Ａ→図１４Ｂ→図１４Ｃの順に状態が遷移する。
【０１１９】
まず、図１４Ａの状態は、人の手８０１が把持部１０３を把持しておらず、マニピュレータ１０１は停止した状態である。このとき、把持部１０３は手先効果部１０２に引っかかっている。言い換えれば、図１４Ａの把持部１０３の上側の側面部１０３ｂと、上側の側面部１０３ｂに対向する手先効果部１０２の側面部１０２ｂとが接触して、上側の側面部１０３ｂと側面部１０２ｂとの隙間９０の間隔が０となっている。逆に、図１４Ａの把持部１０３の下側の側面部１０３ｂと、下側の側面部１０３ｂに対向する手先効果部１０２の側面部１０２ｂとの間隔が大きくあいている。この結果、下側の側面部１０３ｂと側面部１０２ｂとの隙間９０の間隔が、初期位置（手先効果部１０２に対して把持部１０３が均等な間隔を維持する位置）の隙間間隔（幅Δｘ又は幅Δｙ）の２倍の間隔寸法となっている。
【０１２０】
次いで、図１４Ｂの状態は、人の手８０１が把持部１０３を把持し、把持検出部６１１で「把持有り」が検出された瞬間であって、制御部６０５でマニピュレータ１０１は追従制御を行うことができる待機状態である。
【０１２１】
次いで、図１４Ｃの状態は、人の手８０１の把持が検出された直後であって、手先効果部１０２に対する把持部１０３の相対位置Δｒの値が０でないので、制御部６０５の制御動作によりマニピュレータ１０１が急激に移動している状態である。
【０１２２】
このときの時間とマニピュレータ１０１の手先位置の速度の関係を図１５に示す。図１５のグラフの横軸は時間（秒）を示し、縦軸は速度を示す。グラフ上の太線が、時間に対する速度を示す。また、横軸の下には、その時間におけるマニピュレータの状態が示してある。図１５より、人の手８０１が把持部１０３を把持して、把持検出部６１１で「把持有り」が検出された直後にマニピュレータ１０１の手先位置の速度が急激に速くなっていることがわかる。
【０１２３】
以上のように、人が把持部１０３を把持し始めたときに手先効果部１０２に対する把持部１０３の相対位置Δｒの値が０でないと、把持が検出された直後にマニピュレータ１０１が急激に移動して危険な状態となる可能性がある。そこで、第２実施形態では、この課題への対応策を行う。
【０１２４】
図１６は、本発明の第２実施形態のロボット６０１におけるロボットアーム１００のブロック図を示す。本発明の第２実施形態のロボット６０１におけるマニピュレータ１０１と、制御部６０５と、相対位置情報取得部６０７と、モータドライバ６０９と、接触情報取得部６１０と、把持検出部６１１と、追従制御切替部６１２とは第１実施形態と同様であるので、共通の参照符号を付して共通部分の説明は省略し、異なる部分（制御係数情報決定部１６０１と制御係数情報取得部１６０２となど）についてのみ、以下、詳細に説明する。
【０１２５】
制御係数情報決定部１６０１は、把持検出部６１１からの把持情報に応じて係数情報を求め、求めた係数情報を追従制御部１６０３に出力する。ここで、係数情報とは、式（４）における係数（制御係数）ｋの値を表す。制御係数情報決定部１６０１においては、式（４）より、係数ｋの値が大きくなると、マニピュレータ１０１の追従制御時の一定時間毎（例えば、１ｍ秒毎）における移動量が大きくなる。一方、係数ｋの値が小さくなると、マニピュレータ１０１の追従制御時の一定時間毎における移動量が小さくなる。係数情報の決定方法は、まず、人が把持部１０３を把持しているかどうかを把持検出部６１１で検出する。そして、人が把持部１０３を把持していると把持検出部６１１で検出した場合は、人が把持部１０３を把持し始めてからの経過時間を、入出力ＩＦ１６０４に内蔵されたタイマーからの時間情報に基づき制御係数情報決定部１６０１で取得する。その取得した経過時間によって、係数情報を制御係数情報決定部１６０１で決定する。
【０１２６】
これについて、具体的な値の決定方法を図１７を用いて説明する。ここで、図１７に示すデータベースは、把持部１０３に対する人の把持の有無の情報と把持開始からの経過時間と制御係数の情報（例えば制御係数の値）とが関連付けられた関連情報を制御係数情報取得部１６０２で取得して、制御係数情報取得部１６０２内の内部記憶部に記憶されたものである。具体的には、人が把持部１０３を把持していない場合は、係数ｋの値を０．０とする。人が把持部１０３を把持している場合において、人が把持部１０３を把持し始めてからの経過時間がある任意の時間（経過時間用閾値）（例えば、３秒）未満のときは係数ｋの値を０．５とし、それ以降の経過時間では係数ｋの値を１．０とする。すなわち、人が把持部１０３を把持し始めてからある一定時間までの時間帯（経過時間用閾値未満の時間帯）の移動量を、それ以外の時間帯（正常動作時の時間帯）の移動量よりも少なく、例えば半分以下程度にしている。これは、人が把持部１０３を把持し始めてからある一定時間までの時間帯では、ロボットアームが、急激に動かない程度に、低速で追従制御を行うようにすることを意味している。任意の時間（経過時間用閾値）の決定方法は、人がキーボード又はマウス又はタッチパネルなどの入力装置１６０４ｄを使用して入出力ＩＦ１６０４から制御係数情報取得部１６０２に入力される値によって決定される。また、それぞれの状態における係数ｋの値についても、人がキーボード又はマウス又はタッチパネルなどの入力装置１６０４ｄを使用して入出力ＩＦ１６０４から制御係数情報取得部１６０２に入力される値によって決定される。また、前述したように、人が把持部１０３を把持し始めてからの経過時間は、入出力ＩＦ１６０４に内蔵されたタイマーを利用して制御係数情報決定部１６０１で測定する。このように、人が把持部１０３を把持し始めてからある一定時間までの時間帯（経過時間用閾値未満の時間帯）の移動量を、それ以外の時間帯（正常動作時の時間帯）の移動量よりも少なくなるように、係数情報を制御係数情報決定部１６０１で決定するように構成している。このように構成することによって、人が把持部１０３を把持し始めた直後にマニピュレータ１０１が急激に移動することを防ぐことができる。
【０１２７】
追従制御部１６０３は、式（４）における係数ｋの値の決定方法について、第１実施形態においては入出力ＩＦ６０８から入力される値によって決定していたが、第２実施形態では制御係数情報決定部１６０１から入力される係数情報によって決定する。
【０１２８】
入出力ＩＦ１６０４は、第１実施形態で述べた機能に加えて、制御係数情報取得部１６０２で係数ｋの値を、図１７のデータベースで記憶された数値のいずれかに切り替えるための、人が把持部１０３を把持し始めてからの経過時間を、入出力ＩＦ１６０４を用いて人が入力できる。入力された時間を、入出力ＩＦ１６０４から制御係数情報取得部１６０２に出力する。また、図１７における、それぞれの状態の係数ｋの値を、人がキーボード又はマウス又はタッチパネルなどの入力装置１６０４ｄを使用して入出力ＩＦ１６０４に入力でき、入出力ＩＦ１６０４に入力された係数ｋの値を入出力ＩＦ１６０４から制御係数情報取得部１６０２に出力する。
【０１２９】
図１８Ａ〜図１８Ｅは、人とマニピュレータ１０１とで協調して対象物１１０１を搬送するときに、マニピュレータ１０１が追従する手順を示す。マニピュレータ１０１の手先部の例えば先端１００２ａにハンド１０１５を取り付け、ハンド１０１５で対象物１１０１を把持させる。その後、図１８Ａ→図１８Ｂ→図１８Ｃ→図１８Ｄ→図１８Ｅの順に状態が遷移する。
【０１３０】
まず、図１８Ａの状態は、人の手８０１が把持部１０３を把持しておらず、マニピュレータ１０１は停止した状態である。このとき、把持部１０３は手先効果部１０２に引っかかっている。言い換えれば、図１８Ａの把持部１０３の上側の側面部１０３ｂと、上側の側面部１０３ｂに対向する手先効果部１０２の側面部１０２ｂとが接触して、上側の側面部１０３ｂと側面部１０２ｂとの隙間９０の間隔が０となっている。逆に、図１８Ａの把持部１０３の下側の側面部１０３ｂと、下側の側面部１０３ｂに対向する手先効果部１０２の側面部１０２ｂとの間隔が大きくあいている。
【０１３１】
次いで、図１８Ｂの状態は、人の手８０１が把持部１０３を把持し、把持検出部６１１で「把持有り」が検出された瞬間であって、マニピュレータ１０１は制御装置６０２により追従制御を行うことができる待機状態である。
【０１３２】
次いで、図１８Ｃの状態は、人の手８０１の把持が検出された直後であって、マニピュレータ１０１が、制御装置６０２により、追従制御をゆっくり行っている状態である。
【０１３３】
次いで、図１８Ｄの状態は、人の手８０１の把持が検出され始めてから３秒以上経過したときであり、マニピュレータ１０１が、制御装置６０２により、追従制御を素早く行っている状態である。
【０１３４】
次いで、図１８Ｅの状態は、人の手８０１が把持部１０３を把持しておらず、マニピュレータ１０１は停止した状態である。
【０１３５】
図１９の上側のグラフ（Ａ）は、図１８Ａ〜図１８Ｅにおける時間と係数ｋの値との関係を示している。横軸は、時間（秒）を表し、縦軸は係数ｋの値を表す。グラフ上の太線が、時間に対する係数ｋの値を示す。図１９の下側のグラフ（Ｂ）は、図１８Ａ〜図１８Ｅにおける時間とマニピュレータ１０１の手先位置の速度との関係を示している。横軸は、時間（秒）を表し、縦軸はマニピュレータ１０１の手先位置の速度を表す。グラフ上の太線が、時間に対する速度を示す。また、横軸の下には、その時間におけるマニピュレータの状態が示してある。図１９のグラフ（Ａ）及び図１９のグラフ（Ｂ）から、人による把持部１０３の把持が検出された直後の３秒間は、マニピュレータ１０１がゆっくりと追従制御を行っていることがわかる。図１５と比較しても、人による把持部１０３の把持が検出された直後のマニピュレータ１０１の手先位置の速度が小さいことがわかる。
【０１３６】
第２実施形態のロボット６０１におけるロボットアーム１００の制御装置６０２の操作手順を図２０のフローチャートを用いて説明する。
【０１３７】
ステップＳ１３０１では、相対位置情報取得部６０７において、手先効果部１０２に対する把持部１０３の相対位置情報を取得する。接触情報取得部６１０において、入出力ＩＦ１６０４を介して接触センサ１０５の外部からの接触情報を取得する。
【０１３８】
ステップＳ１３０２では、接触情報取得部６１０から取得した接触情報を基に、人が把持部１０３を把持しているか、把持検出部６１１で検出する。把持検出部６１１で検出した結果を、追従制御切替部６１２と、制御係数情報決定部１６０１とに出力する。人が把持部１０３を把持していると把持検出部６１１で検出した場合は、ステップＳ１３０３に進む。人が把持部１０３を把持していないと把持検出部６１１で検出した場合は、このフローを終了する。
【０１３９】
ステップＳ１３０３では、相対位置情報取得部６０７から取得した相対位置情報が所定の閾値の範囲内に収まっているか、追従制御部６０６で判定する。相対位置情報が閾値の範囲内に収まっていると追従制御部６０６で判定した場合は、このフローを終了する。相対位置情報が閾値の範囲内に収まっていないと追従制御部６０６で判定した場合は、ステップＳ２００１に進む。
【０１４０】
ステップＳ２００１では、把持検出部６１１から取得した把持情報を基に人の把持が検出され始めてから３秒以上経過したか、制御係数情報決定部１６０１で判定する。人の把持が検出され始めてから３秒以上経過したと制御係数情報決定部１６０１で判定した場合は、ステップＳ２００２に進む。人の把持が検出され始めてから３秒以上経過していないと制御係数情報決定部１６０１で判定した場合は、ステップＳ２００３に進む。
【０１４１】
ステップＳ２００２では、制御係数情報決定部１６０１において、式（４）における移動量に関する係数ｋの値を１．０とし、ステップＳ１３０４に進む。
【０１４２】
ステップＳ２００３では、制御係数情報決定部１６０１において、式（４）における移動量に関する係数ｋの値を０．５とし、ステップＳ１３０４に進む。
【０１４３】
ステップＳ１３０４では、追従制御部６０６で、閾値の範囲を超えている相対位置情報が閾値内に収まるような移動量を求める。追従制御部６０６で求めた移動量を、追従制御部６０６から制御部６０５に出力し、ステップＳ１３０５に進む。
【０１４４】
ステップＳ１３０５では、制御部６０５で、追従制御部６０６から取得した移動量を基に、マニピュレータ１０１を追従制御し、このフローを終了する。
【０１４５】
第２実施形態によれば、第１実施形態での作用効果に加えて、人が把持部１０３を把持し始めてからある一定時間の間において、マニピュレータ１０１が追従制御をゆっくり行うことによって、追従制御開始時にマニピュレータ１０１が急激に移動することを防ぐことができ、安全性を向上できる。
【０１４６】
（第３実施形態）
以下、本発明の第３実施形態におけるロボットについて説明する。
【０１４７】
第２実施形態では、人が把持部１０３を把持し始めてからある一定時間の間において、制御装置６０２によりマニピュレータ１０１が追従制御をゆっくり行うことによって、追従制御開始時の安全性を高めている。
【０１４８】
しかしながら、追従制御終了時には、把持部１０３が落下して手先効果部１０２に勢いよく衝突してしまう可能性がある。
【０１４９】
この状態を図２１Ａ〜図２１Ｃを用いて説明する。図２１Ａ〜図２１Ｃは、人とマニピュレータ１０１とが協調して対象物１１０１を搬送するときに、マニピュレータ１０１が追従する手順を示す。図２１Ａ→図２１Ｂ→図２１Ｃの順に状態が遷移する。
【０１５０】
まず、図２１Ａの状態は、人の手８０１が把持部１０３を把持し、マニピュレータ１０１が追従制御を行っている状態である。
【０１５１】
次いで、図２１Ｂの状態は、人の手８０１が把持部１０３を放した瞬間であって、マニピュレータ１０１は停止した状態である。
【０１５２】
次いで、図２１Ｃの状態は、人の手８０１が把持部１０３を放した直後であって、把持部１０３が落下して把持部１０３が手先効果部１０２に勢いよく衝突している状態である。
【０１５３】
以上のように、人が把持部１０３を放したときに、手先効果部１０２に対する把持部１０３の相対位置Δｒが０でない場合には、把持部１０３が落下し手先効果部１０２に勢いよく衝突する可能性がある。そこで、第３実施形態では、この課題への対応策を行う。すなわち、追従制御開始時に相対位置Δｒが０でないときは、相対位置Δｒの大きさにかかわらず、人の手８０１が把持部１０３を放した直後に把持部１０３が落下し手先効果部１０２に勢いよく衝突することになり、危険な状態となる可能性が高い。これに対して、第３実施形態では、相対位置Δｒが０であれば、人の手８０１が把持部１０３を放した直後にはゆっくり追従制御を行うため、前記したような危険な状態となる可能性が回避でき、安全性が高まる。
【０１５４】
図２２Ａは、本発明の第３実施形態のロボット６０１における手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ１０５との平面図である。図２２Ｂは、本発明の第３実施形態のロボットにおける手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ１０５との図２２Ａ中のＡ−Ａ線の断面図であり、矢印２２Ｂから見た断面図である。図２２Ｃは、本発明の第３実施形態のロボットにおける手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ１０５との図２２Ａ中のＢ−Ｂ線の断面図であり、矢印２２Ｃから見た断面図である。図２Ａ〜図２Ｃとの違いは、接触センサ１０５Ｆ〜接触センサ１０５Ｉを図２２Ａ〜図２２Ｃに示すように追加したことである。また、接触センサ１０５Ｆ〜接触センサ１０５Ｉを追加する際に、図２３Ａ〜図２３Ｃに示す構成をとることも可能である。言い換えれば、図２Ａ〜図２Ｃでは、把持部１０３の長方形の各側面部１０３ｂに１つの長方形板状の接触センサ１０５を配置する代わりに、図２２Ａ〜図２２Ｃでは、把持部１０３の長方形の各側面部１０３ｂに、長手方向沿いに２つの四角形板状の接触センサ１０５を隣接配置したものである。また、図２３Ａ〜図２３Ｃでは、把持部１０３の長方形の各側面部１０３ｂに、幅方向沿いに２つの四角形板状の接触センサ１０５を隣接配置したものである。なお、図２３Ａにおいて、接触センサ１０５Ｈと接触センサ１０５Ｉは、それぞれ、接触センサ１０５Ｂと接触センサ１０５Ｄとに重なった位置（図２３Ａの紙面貫通方向の奥側の位置）に配置されている。
【０１５５】
図２４は、本発明の第３実施形態のロボット６０１におけるロボットアーム１００のブロック図を示す。本発明の第３実施形態のロボット６０１におけるマニピュレータ１０１と、制御部６０５と、相対位置情報取得部６０７と、モータドライバ６０９と、接触情報取得部６１０と、把持検出部６１１と、追従制御切替部６１２と、追従制御部１６０３と、入出力ＩＦ１６０４とは第２実施形態と同様であるので、共通の参照符号を付して共通部分の説明は省略し、異なる部分についてのみ、以下、詳細に説明する。
【０１５６】
制御係数情報決定部２４０１は、把持検出部６１１から入力される把持情報によって係数情報を決定する。ここでの係数情報は、制御係数情報決定部１６０１と同様に、式（４）における係数ｋの値を表す。式（４）より、係数ｋの値が大きくなると、マニピュレータ１０１の追従制御時の一定時間毎（例えば、１ｍ秒毎）における移動量が大きくなる。一方、係数ｋの値が小さくなると、マニピュレータ１０１の追従制御時の一定時間毎における移動量が小さくなる。係数情報の決定方法は、まず、人が把持部１０３を把持しているかどうかを把持検出部６１１で検出する。そして、人が把持部１０３を把持していると把持検出部６１１で検出した場合は、把持検出部６１１から入力される図７で表される把持情報に関して、「接触有り」の接触センサ１０５の位置によって係数の値を変更する。具体的な値の決定方法を図２５を用いて説明する。ここで、図２５に示すデータベースは、把持部１０３に対する人の把持の有無の情報と把持部１０３を人が把持する位置と制御係数の情報（例えば制御係数の値）とが関連付けられた関連情報を制御係数情報取得部２４０２で取得して、制御係数情報取得部２４０２内の内部記憶部に記憶されたものである。なお、図２５において、互いに向かい合っていない接触センサ１０５の組み合わせは、人が把持部１０３を把持していない場合とする。
【０１５７】
具体的には、人が把持部１０３を把持していない場合は、係数ｋの値を０．０とする。人が把持部１０３を把持している場合において、互いに向かい合う２つの接触センサ１０５（例えば、接触センサ１０５Ａと接触センサ１０５Ｂ、又は、接触センサ１０５Ｃと接触センサ１０５Ｄ、又は、接触センサ１０５Ｆと接触センサ１０５Ｇ、又は、接触センサ１０５Ｈと接触センサ１０５Ｉ）が共に「接触有り」（出力が１）でこれらの組み合わせの接触センサ１０５のみを把持している場合は、係数ｋの値を０．５とする。互いに向かい合う２つの接触センサ１０５と他の１つ以上の接触センサ１０５と共に「接触有り」（出力が１）でこれらの組み合わせの接触センサ１０５を把持している場合では、係数ｋの値を１．０とする。すなわち、互いに向かい合う２つの接触センサ１０５が「接触有り」（出力が１）の状態で人が把持部１０３の対向する２つの側面部１０３ｂを把持している場合の移動量を、前記互いに向かい合う２つの接触センサ１０５と他の１つ以上の接触センサ１０５と共に「接触有り」（出力が１）の状態で人が把持部１０３の対向する２つの側面部１０３ｂに加えて他の側面部１０３ｂを把持している場合の移動量よりも少なく、例えば半分以下程度にしている。これは、人が把持部１０３の対向する２つの側面部１０３ｂに加えて他の側面部１０３ｂを把持している場合から人が把持部１０３の対向する２つの側面部１０３ｂを把持している場合に移行したとき、ロボットアームが、急激に動かない程度に、低速で追従制御を行うようにすることを意味している。それぞれの状態における係数ｋの値については、人がキーボード又はマウス又はタッチパネルなどの入力装置１６０４ｄを使用して入出力ＩＦ１６０４から入力される値によって決定される。このように、人が把持部１０３の対向する２つの側面部１０３ｂを把持している場合の移動量を、人が把持部１０３の対向する２つの側面部１０３ｂに加えて他の側面部１０３ｂをも把持している場合の移動量よりも少なくなるように、係数情報を決定することによって、互いに向かい合う２つの接触センサ１０５のみを把持している場合には、制御装置６０２により、マニピュレータ１０１はゆっくり追従制御し、互いに向かい合う２つの接触センサ１０５と他の１つ以上の接触センサ１０５を把持している場合には、制御装置６０２により、マニピュレータ１０１は素早く追従制御する。このように係数を変化させる方法について、図２６Ａ及び図２６Ｂを用いて説明する。人の手８０１で把持部１０３を把持する場合において、指８０１ａが接触センサ１０５Ｃ及び接触センサ１０５Ｄのみにそれぞれ接触している場合は、制御装置６０２により、マニピュレータ１０１は追従制御をゆっくり行う（図２６Ａ参照）。人の手８０１で把持部１０３を把持する場合において、指８０１ａが接触センサ１０５Ｃ及び接触センサ１０５Ｄ及び接触センサ１０５Ｈにそれぞれ接触している場合は、制御装置６０２により、マニピュレータ１０１は追従制御を素早く行う（図２６Ｂ参照）。
【０１５８】
図２７Ａ〜図２７Ｇは、人とマニピュレータ１０１とで協調して対象物１１０１を搬送するときに、制御装置６０２により、マニピュレータ１０１が追従する手順を示す。マニピュレータ１０１の手先部の例えば先端１００２ａにハンド１０１５を取り付け、ハンド１０１５で対象物１１０１を把持させる。その後、図２７Ａ→図２７Ｂ→図２７Ｃ→図２７Ｄ→図２７Ｅ→図２７Ｆ→図２７Ｇの順に状態が遷移する。また、それぞれの状態における人の手８０１の把持部１０３に対する把持方法を、図２７Ｈ〜図２７Ｎに示す。
【０１５９】
まず、図２７Ａ及び図２７Ｈの状態は、人の手８０１が把持部１０３を把持しておらず、マニピュレータ１０１は停止した状態である。このとき、把持部１０３は手先効果部１０２に引っかかっている。言い換えれば、図２７Ａの把持部１０３の上側の側面部１０３ｂと、上側の側面部１０３ｂに対向する手先効果部１０２の側面部１０２ｂとが接触して、上側の側面部１０３ｂと側面部１０２ｂとの隙間９０の間隔が０となっている。逆に、図２７Ａの把持部１０３の下側の側面部１０３ｂと、下側の側面部１０３ｂに対向する手先効果部１０２の側面部１０２ｂとの間隔が大きくあいている。
【０１６０】
次いで、図２７Ｂ及び図２７Ｉの状態は、人の手８０１が把持部１０３の図２７Ｂの上下の対向する側面部１０３ｂ（直接的には、接触センサ１０５Ｇ及び接触センサ１０５Ｆ）を把持し、把持検出部６１１で「把持有り」が検出された瞬間であって、マニピュレータ１０１は、制御装置６０２により追従制御を行うことができる待機状態である。
【０１６１】
次いで、図２７Ｃ及び図２７Ｊの状態は、人の手８０１の把持が検出された直後であって、人の手８０１の指８０１ａが、対向する２つの接触センサ１０５Ｇ及び接触センサ１０５Ｆに接触してこれらを把持しているので、制御装置６０２により、マニピュレータ１０１が追従制御をゆっくり行っている状態である。
【０１６２】
次いで、図２７Ｄ及び図２７Ｋの状態は、人の手８０１が把持部１０３を把持し、制御装置６０２により、マニピュレータ１０１が追従制御しているときである。すなわち、人の手８０１の指８０１ａが、対向する２つの接触センサ１０５Ｇ及び接触センサ１０５Ｆに加えて接触センサ１０５Ｂをも把持しているので、マニピュレータ１０１が、制御装置６０２により、追従制御を素早く行っている状態である。
【０１６３】
次いで、図２７Ｅ及び図２７Ｌの状態は、追従制御を終了する前の状態であって、人の手８０１の指８０１ａが、対向する２つの接触センサ１０５Ｇ及び接触センサ１０５Ｆを把持しているので、マニピュレータ１０１が、制御装置６０２により、追従制御をゆっくり行っている。
【０１６４】
次いで、図２７Ｆ及び図２７Ｍの状態は、追従制御を終了する直前の状態であって、人の手８０１の指８０１ａが、対向する２つの接触センサ１０５Ｇ及び接触センサ１０５Ｆを把持しているので、マニピュレータ１０１が、制御装置６０２により、追従制御をゆっくり行っている。このとき、マニピュレータ１０１は、制御装置６０２により、追従制御をゆっくり行っているので、把持部１０３は手先効果部１０２に緩やかに接触する。
【０１６５】
次いで、図２７Ｇ及び図２７Ｎの状態は、人の手８０１が把持部１０３を把持しておらず、マニピュレータ１０１は停止した状態である。
【０１６６】
図２８の上側のグラフ（Ａ）は、図２７Ａ〜図２７Ｇにおける時間と係数ｋの値との関係を示している。横軸は、時間（秒）を表し、縦軸は係数ｋの値を表す。グラフ（Ａ）上の太線が、時間に対する係数ｋの値を示す。図２８の下側のグラフ（Ｂ）は、図２７Ａ〜図２７Ｇにおける時間と速度との関係を示している。横軸は、時間（秒）を表し、縦軸は速度（ｍ／秒）表す。グラフ（Ｂ）上の太線が、時間に対する速度を示す。また、横軸の下には、その時間におけるマニピュレータ１０１の状態が示してある。図２８の上側のグラフ（Ａ）及び図２８の下側のグラフ（Ｂ）から、追従制御開始時及び追従制御終了時において、人の手８０１による把持部１０３の把持位置を変えることによって、マニピュレータ１０１がゆっくりと追従制御を行っていることがわかる。図２８の上側のグラフ（Ａ）及び図２８の下側のグラフ（Ｂ）と、図１９のグラフ（Ａ）と図１９のグラフ（Ｂ）とを比較しても、図２８の方が、追従制御終了時のマニピュレータ１０１の手先位置の速度が小さくなっていることがわかる。
【０１６７】
第３実施形態のロボット６０１におけるロボットアーム１００の制御装置６０２の操作手順を図２９のフローチャートを用いて説明する。
【０１６８】
ステップＳ１３０１では、相対位置情報取得部６０７において、手先効果部１０２に対する把持部１０３の相対位置情報を取得する。接触情報取得部６１０において、入出力ＩＦ１６０４を介して接触センサ１０５の外部からの接触情報を取得する。
【０１６９】
ステップＳ１３０２では、接触情報取得部６１０から取得した接触情報を基に人が把持部１０３を把持しているか、把持検出部６１１で検出する。把持検出部６１１で検出した結果を、把持検出部６１１から、追従制御切替部６１２と、制御係数情報決定部２４０１とに出力する。人が把持部１０３を把持していると把持検出部６１１で検出した場合は、ステップＳ１３０３に進む。人が把持部１０３を把持していないと把持検出部６１１で検出した場合は、このフローを終了する。
【０１７０】
ステップＳ１３０３では、相対位置情報取得部６０７から取得した相対位置情報が所定の閾値の範囲内に収まっているか、追従制御部６０６で判定する。相対位置情報が閾値の範囲内に収まっていると追従制御部６０６で判定した場合は、このフローを終了する。相対位置情報が閾値の範囲内に収まっていないと追従制御部６０６で判定した場合は、ステップＳ２９０１に進む。
【０１７１】
ステップＳ２９０１では、把持検出部６１１から取得した把持情報を基に、人が、互いに向かい合う２つの接触センサ１０５のみを把持したか、互いに向かい合う２つの接触センサ１０５と他の１つ以上の接触センサ１０５を把持したかを、制御係数情報決定部２４０１で判定する。互いに向かい合う２つの接触センサ１０５のみを把持したと制御係数情報決定部２４０１で判定した場合は、ステップＳ２００３に進む。互いに向かい合う２つの接触センサ１０５と他の１つ以上の接触センサ１０５を把持したと制御係数情報決定部２４０１で判定した場合は、ステップＳ２００２に進む。
【０１７２】
ステップＳ２００３では、制御係数情報決定部２４０１において、式（４）における移動量に関する係数ｋの値を０．５とし、ステップＳ１３０４に進む。
【０１７３】
ステップＳ２００２では、制御係数情報決定部２４０１において、式（４）における移動量に関する係数ｋの値を１．０とし、ステップＳ１３０４に進む。
【０１７４】
ステップＳ１３０４では、追従制御部６０６で、閾値の範囲を超えている相対位置情報が閾値内に収まるような移動量を求める。追従制御部６０６で求めた移動量を追従制御部６０から制御部６０５に出力し、ステップＳ１３０５に進む。
【０１７５】
ステップＳ１３０５では、制御部６０５で、追従制御部６０６から取得した移動量を基に、マニピュレータ１０１を追従制御し、このフローを終了する。
【０１７６】
第３実施形態によれば、第１実施形態での作用効果に加えて、人が把持部１０３を把持する位置に応じて、マニピュレータ１０１が追従制御をゆっくり行うことによって、追従制御開始時及び追従制御終了時において安全性を向上できる。また、人が把持する位置に応じて、マニピュレータ１０１が追従制御をゆっくり行ったり、追従制御を素早く行ったりすることができるので、人の意思によって追従制御の追従速度を変化させることができる。
【０１７７】
（第４実施形態）
以下、本発明の第４実施形態におけるロボットについて説明する。
【０１７８】
第３実施形態では、人が把持部１０３を把持する位置に応じて、制御装置６０２によりマニピュレータ１０１が追従制御をゆっくり行うことによって、追従制御開始時及び追従制御終了時の安全性を高めている。
【０１７９】
しかしながら、人が把持部１０３の把持位置を把持し直す必要があり、人又は作業内容によっては、把持し直し動作が煩雑であると感じる場合がある。そこで、第４実施形態では、第３実施形態で用いた把持位置を把持し直す方法と比べて、より容易な方法によって追従制御開始時及び追従制御終了時の安全性を高める。
【０１８０】
図３０Ａは、手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、力センサ３００１との平面図である。図３０Ｂは、手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、力センサ３００１との図３０Ａ中のＡ−Ａ線の断面図であり、矢印３０Ｂから見た断面図である。図３０Ｃは、手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、力センサ３００１との図３０Ａ中のＢ−Ｂ線の断面図であり、矢印３０Ｃから見た断面図である。第１、２、３実施形態では、接触センサ１０５を５個用いていたが、第４実施形態では、接触センサ１０５の代わりに、力センサ３００１を５個用いる。
【０１８１】
力センサ３００１は、把持部１０３の外側の４つの側面部１０３ｂと底面部１０３ａとにそれぞれ取り付けられ、外部から加えられた力の大きさを検出する。各力センサ３００１で検出した力の大きさは入出力ＩＦ１６０４に出力する。接触センサ１０５との違いは、接触センサ１０５では接触の有無のみが検出されたのに対して、力センサ３００１では、接触の際の加えられた力の大きさについても検出できることである。図３０Ａ〜図３０Ｃに示すように、力センサ３００１は、３００１Ａ〜３００１Ｅの５箇所に取り付けられている。すなわち、力センサ３００１Ａ〜３００１Ｄが４つの側面部１０３ｂの外面に取り付けられ、力センサ３００１Ｅが底面部１０３ａに取り付けられている。具体的な力センサを個々に説明する場合には、参照符号３００１Ａ〜３００１Ｅで示し、総称的に説明する場合には参照符号３００１で示す。また、力センサ３００１は、１つの軸に沿った方向の力のみを検出する力センサである。なお、ここでは、図３０Ａ〜図３０Ｃに示すように力センサ３００１を配置したが、力センサ３００１の配置場所又は個数などは、把持部１０３と他の物体との接触の際に把持部１０３に加えられた力の大きさを取得できるならば、どのように選択しても構わない。
【０１８２】
図３１は、本発明の第４実施形態のロボット６０１におけるロボットアーム１００のブロック図を示す。本発明の第４実施形態のロボット６０１におけるマニピュレータ１０１と、制御部６０５と、相対位置情報取得部６０７と、モータドライバ６０９と、追従制御切替部６１２と、追従制御部１６０３と、入出力ＩＦ１６０４とは、第２及び第３実施形態と同様であるので、共通の参照符号を付して共通部分の説明は省略し、異なる部分についてのみ、以下、詳細に説明する。
【０１８３】
力情報取得部３１０１には、入出力ＩＦ１６０４から力センサ３００１の測定値と、入出力ＩＦ１６０４に内蔵されたタイマーからの時間情報とが入力されて、把持部１０３に外部から加えられた力の大きさを取得する。力情報取得部３１０１に入力された力センサ３００１の測定値を力情報とし、力情報取得部３１０１から把持検出部３１０２に出力する。力情報とは、図３２に示すように、力センサ３００１Ａ〜力センサ３００１Ｅの力の大きさの情報である。
【０１８４】
なお、この実施形態では、追従制御切替制御部６００は、接触情報取得部６１０に代えて力情報取得部３１０１と、把持検出部６１１に対応する把持検出部３１０２と、追従制御切替部６１２とで構成されて、把持部１０３が手先効果部以外の他の物と接触しているとき追従制御部６０６での追従制御を行う一方、把持部１０３が他の物と接触していないとき追従制御部６０６での追従制御を行わないように追従制御を切替える追従制御情報を出力するものである。
【０１８５】
把持検出部３１０２は、力情報取得部３１０１から力情報が入力される。入出力ＩＦ１６０４から把持検出部３１０２に、入出力ＩＦ１６０４に内蔵されたタイマーからの時間情報が入力される。把持検出部３１０２は、力情報取得部３１０１からの力情報を基に、人が把持部１０３を把持しているかどうかを検出し、把持情報を把持検出部３１０２から追従制御切替部６１２に出力する。
【０１８６】
人の把持情報の検出方法は、次の２つの把持情報検出条件を満たすことである。１つ目の把持情報検出条件は、互いに向かい合う２つの力センサ３１０１（力センサ３１０１Ａと力センサ３１０１Ｂ、又は、力センサ３１０１Ｃと力センサ３１０１Ｄ）が共に力の大きさが０．３Ｎ以上であること。２つ目の把持情報検出条件は、力センサ３１０１で検出した力の大きさが所定の時間、所定の力（例えば連続して２秒以上の時間０．３Ｎ以上）であること。以上の２つの把持情報検出条件を満たしたときに、把持情報は「把持有り」（出力が「１」）を出力し、１つでも満たさない場合は「把持無し」（出力が「０」）を出力する。
【０１８７】
制御係数情報決定部３１０３は、人が把持部１０３を把持するときの力の大きさによって係数ｋの値を変化させる。ここでは、制御係数情報決定部３１０３において、把持する力が大きくなると、係数ｋの値を大きくする。一方、把持する力が小さくなると、係数ｋの値を小さくする。人が把持部１０３を把持していると把持検出部３１０２で検出した場合において、把持開始時と把持終了時に、人が把持部１０３を把持する力の大きさを、把持動作中（把持開始時と把持終了時と以外の動作中）の力の大きさよりも、小さくする。このように構成することによって、追従制御開始時と追従制御終了時において、制御装置６０２により、マニピュレータ１０１が、把持動作中の素早い追従制御よりも遅い、ゆっくりとして追従制御を行うことが可能となる。
【０１８８】
これについて、具体的に、図３３を用いて説明する。ここで、図３３に示すデータベースは、把持部１０３に対する人の把持の有無の情報と把持部１０３を人が把持する力の大きさと制御係数の情報（例えば制御係数の値）とが関連付けられた関連情報を制御係数情報取得部３１０４で取得して、制御係数情報取得部３１０４内の内部記憶部に記憶されている。人が把持部１０３を把持していない場合は、係数ｋの値を０．０とする。人が把持部１０３を把持している場合において、力情報取得部３１０１からの力情報が、任意の力（力情報閾値）の大きさ（例えば、２．０Ｎ）未満のときは係数ｋの値を０．５とし、力情報取得部３１０１からの力情報が、それ以上の力の大きさのときは係数ｋの値を１．０とする。すなわち、力情報取得部３１０１からの力情報が力情報閾値未満の場合の移動量を、力情報取得部３１０１からの力情報が力情報閾値以上の場合の移動量よりも少なく、例えば半分以下程度にしている。これは、力情報が力情報閾値以上の場合から力情報が力情報閾値未満の場合に移行したとき、及び、力情報が力情報閾値未満の場合から力情報が力情報閾値以上の場合に移行したときに、ロボットアームが、急激に動かない程度に、低速で追従制御を行うようにすることを意味している。任意の力（力情報閾値）の大きさの決定方法は、人がキーボード又はマウス又はタッチパネルなどの入力装置１６０４ｄを使用して入出力ＩＦ１６０４から入力される値によって決定される。また、それぞれの状態における係数ｋの値についても、人がキーボード又はマウス又はタッチパネルなどの入力装置１６０４ｄを使用して入出力ＩＦ１６０４から入力される値によって決定される。
【０１８９】
図３４Ａ〜図３４Ｇは、人とマニピュレータ１０１とが協調して対象物１１０１を搬送するときに、制御装置６０２により、マニピュレータ１０１が追従する手順を示す。マニピュレータ１０１の手先部の例えば先端１００２ａにハンド１０１５を取り付け、ハンド１０１５で対象物１１０１を把持させる。その後、図３４Ａ→図３４Ｂ→図３４Ｃ→図３４Ｄ→図３４Ｅ→図３４Ｆ→図３４Ｇの順に状態が遷移する。
【０１９０】
まず、図３４Ａの状態は、人の手８０１が把持部１０３を把持しておらず、マニピュレータ１０１は停止した状態である。このとき、把持部１０３は手先効果部１０２に引っかかっている。言い換えれば、図３４Ａの把持部１０３の上側の側面部１０３ｂと、上側の側面部１０３ｂに対向する手先効果部１０２の側面部１０２ｂとが接触して、上側の側面部１０３ｂと側面部１０２ｂとの隙間９０の間隔が０となっている。逆に、図３４Ａの把持部１０３の下側の側面部１０３ｂと、下側の側面部１０３ｂに対向する手先効果部１０２の側面部１０２ｂとの間隔が大きくあいている。
【０１９１】
次いで、図３４Ｂの状態は、人の手８０１が把持部１０３の図３４Ｂの上下の対向する側面部１０３ｂ（直接的には、力センサ３００１Ｂと力センサ３００１Ａ）を把持し、把持検出部３１０２で「把持有り」が検出された瞬間であって、マニピュレータ１０１は、制御装置６０２により追従制御を行うことができる待機状態である。
【０１９２】
次いで、図３４Ｃの状態は、人の手８０１の把持が検出された直後であって、人の手８０１の指８０１ａが、図３４Ｃの上下に対向する２つの力センサ３００１Ｂと力センサ３００１Ａに接触してこれらを把持する力の大きさを小さくすることにより、制御装置６０２により、マニピュレータ１０１が追従制御をゆっくり行っている状態である。
【０１９３】
次いで、図３４Ｄの状態は、人の手８０１が把持部１０３を把持し、制御装置６０２により、マニピュレータ１０１が追従制御しているときである。すなわち、人の手８０１の指８０１ａが、対向する２つの力センサ３００１Ｂと力センサ３００１Ａを把持する力の大きさを、図３４Ｃの状態よりも大きくすることによって、制御装置６０２により、マニピュレータ１０１が追従制御を素早く行っている状態である。
【０１９４】
次いで、図３４Ｅの状態は、追従制御を終了する前の状態であって、人の手８０１の指８０１ａが、対向する２つの力センサ３００１Ｂと力センサ３００１Ａを把持する力の大きさを、図３４Ｄの状態よりも小さくすることによって、制御装置６０２により、マニピュレータ１０１が、図３４Ｃの追従制御よりも遅く、追従制御をゆっくり行っている。
【０１９５】
次いで、図３４Ｆの状態は、追従制御を終了する直前の状態であって、人の手８０１の指８０１ａが、対向する２つの力センサ３００１Ｂと力センサ３００１Ａを把持する力の大きさが、図３４Ｅと同様に、図３４Ｄの状態よりも小さいので、制御装置６０２により、マニピュレータ１０１が追従制御をゆっくり行っている。このとき、制御装置６０２により、マニピュレータ１０１は追従制御をゆっくり行っているので、把持部１０３は手先効果部１０２に緩やかに接触する。
【０１９６】
次いで、図３４Ｇの状態は、人の手８０１が力センサ３００１に触れておらず、マニピュレータ１０１は停止した状態である。
【０１９７】
図３５の上段のグラフ（Ａ）は、図３４Ａ〜図３４Ｇにおける時間と係数ｋの値との関係を示している。横軸は、時間（秒）を表し、縦軸は係数ｋの値を表す。グラフ（Ａ）上の太線が、時間に対する係数ｋの値を示す。図３５の中段のグラフ（Ｂ）は、図３４Ａ〜図３４Ｇにおける時間と速度との関係を示している。横軸は、時間（秒）を表し、縦軸は速度（ｍ／秒）を表す。グラフ（Ｂ）上の太線が、時間に対する速度を示す。図３５の下段のグラフ（Ｃ）は、図３４Ａ〜図３４Ｇにおける時間と力の大きさとの関係を示している。横軸は、時間（秒）を表し、縦軸は力の大きさ（Ｎ）を表す。グラフ（Ｃ）上の太線が、時間に対する力情報取得部３１０１で取得した力情報の大きさを示す。また、横軸の下には、その時間におけるマニピュレータ１０１の状態が示してある。図３５の（Ａ）〜（Ｃ）から、追従制御開始時及び追従制御終了時において、人が把持部１０３を把持する力の大きさに応じて、マニピュレータ１０１がゆっくりと追従制御を行っていることがわかる。
【０１９８】
第４実施形態のロボット６０１におけるロボットアーム１００の制御装置６０２の操作手順を図３６のフローチャートを用いて説明する。
【０１９９】
ステップＳ３６０１では、相対位置情報取得部６０７において、手先効果部１０２に対する把持部１０３の相対位置情報を取得する。力情報取得部３１０１において、入出力ＩＦ１６０４を介して力センサ３００１に外部から加えられた力情報を取得する。
【０２００】
ステップＳ１３０２では、力情報取得部３１０１から取得した力情報を基に人が把持部１０３を把持しているか、把持検出部３１０２で検出する。把持検出部３１０２で検出した結果を、把持検出部６１１から、追従制御切替部６１２と、制御係数情報決定部３１０３とに出力する。人が把持部１０３を把持していると把持検出部３１０２で検出した場合は、ステップＳ１３０３に進む。人が把持部１０３を把持していないと把持検出部３１０２で検出した場合は、このフローを終了する。
【０２０１】
ステップＳ１３０３では、相対位置情報取得部６０７から取得した相対位置情報が所定の閾値の範囲内に収まっているか、追従制御部６０６で判定する。相対位置情報が閾値の範囲内に収まっていると追従制御部６０６で判定した場合は、このフローを終了する。相対位置情報が閾値の範囲内に収まっていないと追従制御部６０６で判定した場合は、ステップＳ３６０２に進む。
【０２０２】
ステップＳ３６０２では、力情報取得部３１０１から取得した力情報を基に、人が把持部１０３を把持する力の大きさが２．０Ｎ以上かを、制御係数情報決定部３１０３で判定する。人が把持部１０３を把持する力の大きさが２．０Ｎ以上であると制御係数情報決定部３１０３で判定した場合は、ステップＳ２００２に進む。人が把持部１０３を把持する力の大きさが２．０Ｎ以上でないと制御係数情報決定部３１０３で判定した場合は、ステップＳ２００３に進む。
【０２０３】
ステップＳ２００２では、制御係数情報決定部３１０３において、式（４）における移動量に関する係数ｋの値を１．０とし、ステップＳ１３０４に進む。
【０２０４】
ステップＳ２００３では、制御係数情報決定部３１０３において、式（４）における移動量に関する係数ｋの値を０．５とし、ステップＳ１３０４に進む。
【０２０５】
ステップＳ１３０４では、追従制御部６０６で、閾値の範囲を超えている相対位置情報が閾値内に収まるような移動量を求める。追従制御部６０６で求めた移動量を追従制御部６０６から制御部６０５に出力し、ステップＳ１３０５に進む。
【０２０６】
ステップＳ１３０５では、制御部６０５で、追従制御部６０６から取得した移動量を基に、マニピュレータ１０１を追従制御し、このフローを終了する。
【０２０７】
第４実施形態によれば、第１実施形態での作用効果に加えて、人が把持部１０３を把持する力の大きさに応じて、マニピュレータ１０１が追従制御をゆっくり行うことによって、追従制御開始時及び追従制御終了時において、第３実施形態で用いた把持位置を把持し直す方法と比べて、より容易な方法で安全性を向上できる。
【０２０８】
（第５実施形態）
以下、本発明の第５実施形態におけるロボットについて説明する。
【０２０９】
人が把持部１０３を把持し、急激に移動させたときに、マニピュレータ１０１の追従速度では追従することができない場合がある。つまり、人の手８０１が把持部１０３を一定時間毎（例えば、１ｍ秒毎）に移動させた移動量が、マニピュレータ１０１が一定時間毎に移動できる移動量を超えた場合である。このような場合には、マニピュレータ１０１がどのような振る舞いを起こすかわからず、暴走する危険性もあり、大変危険である。そこで、第５実施形態では、この課題への対応策を行う。
【０２１０】
図３７は、本発明の第５実施形態のロボットにおけるマニピュレータ１０１と、手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ３７０１との構成図である。マニピュレータ１０１の手先には、手先効果部１０２が取り付けられている。把持部１０３は人が作業を行う際に把持するための部分であり、手先効果部１０２と分離した構造となっている。相対位置センサ１０４は、手先効果部１０２に対する把持部１０３の相対位置を検出するセンサである。
【０２１１】
接触センサ３７０１は、把持部１０３の内側の側面部及び底面部にそれぞれ取り付けられて、手先効果部１０２との接触を検出するセンサである。ここでは、５個の接触センサ３７０１を用いる（詳細については後述する）。
【０２１２】
手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ３７０１とについて、図３８を用いて詳しく説明する。
【０２１３】
図３８Ａは、手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ３７０１との平面図である。図３８Ｂは、手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ３７０１との図３８Ａ中のＡ−Ａ線の断面図であり、矢印３８Ｂから見た断面図である。図３８Ｃは、手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ３７０１との図３８Ａ中のＢ−Ｂ線の断面図であり、矢印３８Ｃから見た断面図である。手先効果部１０２と、把持部１０３と、相対位置センサ１０４と、接触センサ３７０１との機能は、第１〜４実施形態と同様である。
【０２１４】
第１〜４実施形態との違いは、接触センサ３７０１の取り付け位置である。第１〜４実施形態では、把持部１０３の外側に取り付けられて、把持部１０３の外部の対象物と把持部１０３との接触を検出していたのに対して、第５実施形態では、把持部１０３の内側に取り付けられて、把持部１０３と手先効果部１０２との接触を検出する。
【０２１５】
接触センサ３７０１は、把持部１０３の内側に取り付けられ、手先効果部１０２との接触の有無を検出する。各接触センサ３７０１の出力はデジタル信号であり、「接触有り」の場合には「１」を出力し、「接触無し」の場合には「０」を出力する。各接触センサ３７０１で検出した接触情報は、入出力ＩＦ６０８に出力する。図３８Ａ〜図３８Ｃに示すように、接触センサ３７０１は３７０１Ａ〜３７０１Ｅの５箇所に取り付けられている。すなわち、接触センサ３７０１Ａ〜３７０１Ｄが４つの側面部１０３ｂの内面に取り付けられ、接触センサ３７０１Ｅが底面部１０３ａの内面に取り付けられている。具体的な接触センサを個々に説明する場合には、後述するように参照符号３７０１Ａ〜３７０１Ｅで示し、総称的に説明する場合には参照符号３７０１で示す。なお、ここでは、図３８Ａ及び図３８Ｂに示すように、接触センサ３７０１を配置したが、接触センサ３７０１の配置場所又は個数などは、把持部１０３と手先効果部１０２との接触の情報を取得できるならば、どのように選択しても構わない。
【０２１６】
第５実施形態では、図３９のブロック図を用いる。本発明の第５実施形態のロボット６０１におけるマニピュレータ１０１と、制御部６０５と、追従制御部６０６と、相対位置情報取得部６０７と、入出力ＩＦ６０８と、モータドライバ６０９と、接触情報取得部６１０とは、第１実施形態と同様であるので、共通の参照符号を付して共通部分の説明は省略し、異なる部分についてのみ、以下、詳細に説明する。
【０２１７】
まず、追従制御切替制御部６００は、接触情報取得部６１０と、追従制御切替部３９０１とで構成されて、接触情報取得部６１０で取得した、把持部１０３に対する手先効果部１０２の接触の情報を基に、把持部１０３と手先効果部１０２とが接触した場合のみ追従制御を停止し、把持部１０３と手先効果部１０２とが接触していない場合は追従制御を行う、追従制御情報を出力するものである。
【０２１８】
追従制御切替部３９０１は、接触情報取得部６１０からの接触情報に応じて追従制御情報を決定し、決定した追従制御情報を追従制御切替部３９０１から制御部６０５に出力する。追従制御切替部３９０１における追従制御情報の選択方法は、接触情報取得部６１０からの接触情報において１箇所でも「接触有り」（出力が「１」）の情報があると、「追従制御オフ」を選択し、全ての箇所で「接触無し」（出力が「０」）の情報であると、「追従制御オン」を選択する。よって、把持部１０３が手先効果部１０２と接触したと追従制御切替部３９０１で決定したときのみ「追従制御オフ」となり、把持部１０３が手先効果部１０２と接触していないと追従制御切替部３９０１で決定したときは「追従制御オン」となる。なお、「追従制御オン」の選択方法について、ここでは、１箇所でも接触した場合としたが、２箇所以上接触した場合又は予め定めた箇所に接触した場合などのように、他の接触方法を用いることも可能である。
【０２１９】
図４０Ａ〜図４０Ｃは、人とマニピュレータ１０１とで協調して対象物１１０１を搬送するときに、マニピュレータ１０１が追従する手順を示す。マニピュレータ１０１の手先部の例えば先端１００２ａにハンド１０１５を取り付け、ハンド１０１５で対象物１１０１を把持させる。その後、図４０Ａ→図４０Ｂ→図４０Ｃの順に状態が遷移する。
【０２２０】
まず、図４０Ａの状態は、人の手８０１が把持部１０３を移動させ、マニピュレータ１０１が追従制御を行っている状態である。
【０２２１】
次いで、図４０Ｂの状態は、人の手８０１が把持部１０３を急激に移動させ、把持部１０３が手先効果部１０２と接触している状態である。この状態は、人の手８０１が把持部１０３を一定時間毎（例えば、１ｍ秒毎）に移動させた移動量が、制御装置６０２によりマニピュレータ１０１が一定時間毎に移動できる移動量を超え、追従制御が把持部１０３の移動に対して遅れる場合に発生する。
【０２２２】
次いで、図４０Ｃの状態は、手先効果部１０２が接触センサ３７０１と接触し、マニピュレータ１０１が停止している状態である。
【０２２３】
第５実施形態のロボット６０１におけるロボットアーム１００の制御装置６０２の操作手順を図４１のフローチャートを用いて説明する。
【０２２４】
ステップＳ１３０１では、相対位置情報取得部６０７において、手先効果部１０２に対する把持部１０３の相対位置情報を取得する。接触情報取得部６１０において、接触センサ３７０１の手先効果部１０２に対する接触情報を取得する。
【０２２５】
ステップＳ４１０１では、接触情報取得部６１０から取得した接触情報を基に、手先効果部１０２が接触センサ１０５と接触しているか、追従制御切替部３９０１で判定する。手先効果部１０２が接触センサ３７０１と接触していると追従制御切替部３９０１で判定した場合は、このフローを終了する。手先効果部１０２が接触センサ３７０１と接触していないと追従制御切替部３９０１で判定した場合は、ステップＳ１３０３に進む。
【０２２６】
ステップＳ１３０３では、相対位置情報取得部６０７から取得した相対位置情報が所定の閾値の範囲内に収まっているか、追従制御部６０６で判定する。相対位置情報が閾値の範囲内に収まっていると追従制御部６０６で判定した場合は、このフローを終了する。相対位置情報が閾値の範囲内に収まっていないと追従制御部６０６で判定した場合は、ステップＳ１３０４に進む。
【０２２７】
ステップＳ１３０４では、追従制御部６０６で、閾値の範囲を超えている相対位置情報が閾値内に収まるような移動量を求める。追従制御部６０６で求めた移動量を、追従制御部６０６から制御部６０５に出力し、ステップＳ１３０５に進む。
【０２２８】
ステップＳ１３０５では、制御部６０５で、追従制御部６０６から取得した移動量を基に、マニピュレータ１０１を追従制御し、このフローを終了する。
【０２２９】
第５実施形態によれば、第１実施形態での作用効果に加えて、人が把持部１０３を急激に移動させた場合、マニピュレータ１０１の追従制御が遅れ、マニピュレータ１０１が暴走する危険性がある。そこで、把持部１０３が手先効果部１０２と接触した場合はマニピュレータ１０１を停止させるように制御装置６０２で制御することによって、その危険性を防ぎ、安全性を高めることができる。
【０２３０】
なお、上記様々な実施形態のうちの任意の実施形態を適宜組み合わせることにより、それぞれの有する効果を奏するようにすることができる。
【０２３１】
なお、上記様々な実施形態又は変形例のうちの任意の実施形態又は変形例を適宜組み合わせることにより、それぞれの有する効果を奏するようにすることができる。
【産業上の利用可能性】
【０２３２】
本発明は、産業用ロボット又は生産設備などにおける可動機構のロボットアームの制御装置及び制御方法、ロボット、ロボットアーム制御プログラム、並びに、集積電子回路として有用である。また、産業用ロボットに限らず、家庭用ロボットのロボットアームの制御装置及び制御方法、ロボット、ロボットアーム制御プログラム、並びに、集積電子回路として適用される可能性がある。
【０２３３】
本発明は、添付図面を参照しながら好ましい実施形態に関連して充分に記載されているが、この技術の熟練した人々にとっては種々の変形又は修正は明白である。そのような変形又は修正は、添付した請求の範囲による本発明の範囲から外れない限りにおいて、その中に含まれると理解されるべきである。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアームの制御装置であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を取得する相対位置情報取得部と、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を求める追従制御部と、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を出力する追従制御切替制御部と
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを移動制御する制御部とを備えるとともに、
前記追従制御切替制御部は、
前記把持部と他の物との接触の有無の情報を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無の情報と前記人が把持する位置又は力の大きさの情報を示す把持情報を検出する把持検出部と、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持する位置又は力の大きさに応じて追従速度を変更する、追従制御情報を出力する追従制御切替部とを備える、のロボットアーム。
【請求項２】
前記把持検出部は、前記人の把持の有無の情報に加えて、把持開始からの経過時間も把持情報として検出する一方、
前記把持部に対する前記人の把持の有無の情報と前記把持開始からの経過時間と、追従速度を決定する制御係数の情報とが関連付けられた関連情報を取得する制御係数情報取得部と、
前記把持検出部で検出した把持情報と前記制御係数情報取得部で取得した前記関連情報とを基に、追従速度を決定する制御係数を決定する制御係数情報決定部とをさらに備え、
前記把持部を前記人が把持した直後の所定の一定時間は、前記制御係数情報取得部で取得した前記制御係数に基づいて、追従制御の追従速度を他の時間の追従速度よりも遅くするように制御する請求項１に記載のロボットアーム。
【請求項３】
前記把持検出部は、前記人の把持の有無の情報に加えて、前記把持部を前記人が把持する位置も把持情報として検出する一方、
前記把持部に対する前記人の把持の有無の情報と前記把持部を前記人が把持する位置と、追従速度を決定する制御係数の情報とが関連付けられた関連情報を取得する制御係数情報取得部と、
前記把持検出部で検出した把持情報と前記制御係数情報取得部で取得した前記関連情報とを基に、追従速度を決定する制御係数を決定する制御係数情報決定部とをさらに備え、
前記把持部を前記人が把持する位置に応じて、前記制御係数情報取得部で取得した前記制御係数に基づいて追従制御の追従速度を変化させるように制御する請求項１に記載のロボットアーム。
【請求項４】
前記追従制御切替制御部は、
前記把持部に外部から加えられた力の大きさを取得する力情報取得部を備えて、
前記把持検出部は、前記力情報取得部で取得した力情報を基に、前記把持部に対する前記人の把持の有無の情報を検出し、さらに前記把持部を前記人が把持する力の大きさも把持情報として検出する一方、
前記把持部に対する前記人の把持の有無の情報と、前記把持部を前記人が把持する力の大きさと、追従速度を決定する制御係数とが関連付けられた関連情報を取得する制御係数情報取得部と、
前記把持検出部で検出した把持情報と前記制御係数情報取得部で取得した前記関連情報とを基に、追従速度を決定する制御係数を決定する制御係数情報決定部とを備えて、
前記把持部を前記人が把持する力の大きさに応じて、前記制御係数情報取得部で取得した前記制御係数に基づいて追従制御の追従速度を変化させるように制御する請求項１に記載のロボットアーム。
【請求項５】
前記追従制御切替制御部は、
前記把持部に対する前記手先効果部の接触の有無を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部と前記手先効果部とが接触した場合のみ追従制御を停止し、前記把持部と前記手先効果部とが接触していない場合は追従制御を行う、追従制御情報を出力する追従制御切替部とを備える
請求項１に記載のロボットアーム。
【請求項６】
請求項１〜５のいずれか１つに記載のロボットアームを備えるロボット。
【請求項７】
人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアームの制御方法であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を相対位置情報取得部で取得し、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を追従制御部で求め、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を追従制御切替制御部で出力し
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを制御部で移動制御するとともに、
前記追従制御切替制御部において前記追従制御情報を出力するとき、
前記把持部と他の物との接触の有無の情報を接触情報取得部で取得し、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無の情報と前記人が把持する位置又は力の大きさの情報を示す把持情報を把持検出部で検出し、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持する位置又は力の大きさに応じて追従速度を変更する、追従制御情報を追従制御切替部で出力する、ロボットアームの制御方法。
【請求項８】
人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアーム制御プログラムであって、
コンピュータに、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を相対位置情報取得部で取得するステップと、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を追従制御部で求めるステップと、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を追従制御切替制御部で出力するステップと
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを制御部で移動制御するステップとを実行させるとともに、
前記追従制御切替制御部において前記追従制御情報を出力するステップでは、
前記把持部と他の物との接触の有無の情報を接触情報取得部で取得するステップと、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無の情報と前記人が把持する位置又は力の大きさの情報を示す把持情報を把持検出部で検出するステップと、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持する位置又は力の大きさに応じて追従速度を変更する、追従制御情報を追従制御切替部で出力するステップと、を実行させるための、ロボットアーム制御プログラム。
【請求項９】
人が触って操作して作業を行わせるロボットアームの本体に取り付けられた手先効果部と、前記手先効果部との間に所定間隔の隙間を形成しつつ前記手先効果部とは別に前記ロボットアームの本体に取り付けられて前記手先効果部に対して相対移動可能でかつ操作時に前記人が把持可能な把持部とを備える前記ロボットアームを動作制御する、ロボットアーム用集積電子回路であって、
前記操作時に前記手先効果部に対する前記把持部の相対位置の情報を取得する相対位置情報取得部と、
前記相対位置情報取得部で取得された前記相対位置の情報が所定の閾値の範囲内に収まるように、前記手先効果部と前記把持部の間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動させる追従制御用の前記ロボットアームの移動量を求める追従制御部と、
前記把持部が前記手先効果部以外の他の物と接触しているとき前記追従制御部での追従制御を行う一方、前記把持部が前記他の物と接触していないとき前記追従制御部での追従制御を行わないように追従制御を切替える追従制御情報を出力する追従制御切替制御部と
前記追従制御切替制御部からの前記追従制御情報に基づき、前記追従制御部での追従制御を行うときは、前記追従制御部で求めた前記ロボットアームの移動量に基づいて、前記手先効果部と前記把持部との間の前記隙間の間隔の変化量に応じて前記ロボットアームを移動制御する一方、前記追従制御部での追従制御を行わないときは、前記追従制御部で求めた前記ロボットアームの移動量とは無関係に、前記ロボットアームを移動制御する制御部とを備えるとともに、
前記追従制御切替制御部は、
前記把持部と他の物との接触の有無の情報を取得する接触情報取得部と、
前記接触情報取得部で取得した前記接触の情報を基に、前記把持部に対する前記人の把持の有無の情報と前記人が把持する位置又は力の大きさの情報を示す把持情報を検出する把持検出部と、
前記把持検出部で検出した把持情報を基に、前記把持部を前記人が把持する位置又は力の大きさに応じて追従速度を変更する、追従制御情報を出力する追従制御切替部とを備える、ロボットアーム用集積電子回路。
【国際調査報告】
2012101956.tif 000118
2012101956.tif 000119
2012101956.tif 000120
2012101956.tif 000121