(57)【要約】ロボットアーム制御装置であって、アームが把持している物体の特性に関する情報が記録された物体特性データベース(２)の情報に基づきアームの機械インピーダンス設定値を物体特性呼応インピーダンス設定手段(３)で設定し、設定した機械インピーダンス設定値に、アームの機械インピーダンスの値をインピーダンス制御手段(４)で制御する。
2007080733.tif 000002
【特許請求の範囲】
【請求項１】
ロボットアームの制御装置であって、  上記ロボットアームが運搬している物体の運搬特性に関する情報が記録された物体特性データベースと、  上記物体特性データベースの上記情報に基づき上記ロボットアームの機械インピーダンス設定値を設定する物体特性呼応インピーダンス設定手段と、  上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御するインピーダンス制御手段とを有する、ロボットアームの制御装置。
【請求項２】
上記ロボットアームが運搬している上記物体の運搬特性に関する情報を収集し、収集した上記物体の運搬特性に関する情報を上記物体特性データベースに記録する物体特性収集手段をさらに有する、請求項１に記載のロボットアームの制御装置。
【請求項３】
上記インピーダンス制御手段は、上記ロボットアームに人や物体が接触することを検知する接触検知手段を有し、上記ロボットアームが上記人や物体と接触した時に、上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御する、請求項１又は請求項２に記載のロボットアームの制御装置。
【請求項４】
上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記情報に基づき上記ロボットアームの手先の並進方向及び回転方向の６次元の方向の機械インピーダンス設定値を個別に設定する、請求項１又は請求項２に記載のロボットアームの制御装置。
【請求項５】
上記特性呼応インピーダンス設定手段は、上記手先の上記並進方向を低剛性とし上記回転方向を上記並進方向よりも高剛性とすることで上記ロボットアームが運搬している上記物体を水平に保つよう設定する、請求項４に記載のロボットアームの制御装置。
【請求項６】
上記物体特性データベースは上記ロボットアームが運搬している上記物体の物理特性情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記物理特性情報に基づき上記機械インピーダンス設定値を設定する、請求項１又は請求項２に記載のロボットアームの制御装置。
【請求項７】
上記物体特性データベースは上記ロボットアームが運搬している上記物体の属性情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記属性情報に基づき上記機械インピーダンス設定値を設定する、請求項１又は請求項２に記載のロボットアームの制御装置。
【請求項８】
上記物体特性データベースは、上記ロボットアームが運搬している上記物体の物理特性情報として上記ロボットアームが運搬している上記物体の重量情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記重量情報に基づき上記機械インピーダンス設定値を設定する、請求項６に記載のロボットアームの制御装置。
【請求項９】
上記物体特性データベースは上記物理特性情報として上記ロボットアームが運搬している上記物体の寸法情報を有し、上記特性呼応インピーダンス設定手段は、上記寸法情報に基づき上記機械インピーダンス設定値を設定する、請求項６に記載のロボットアームの制御装置。
【請求項１０】
上記物体特性データベースは上記物理特性情報として上記ロボットアームが運搬している上記物体の硬度情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記硬度情報に基づき上記機械インピーダンス設定値を設定する、請求項６に記載のロボットアームの制御装置。
【請求項１１】
上記物体特性データベースは上記物理特性情報として上記ロボットアームが運搬している上記物体の位置及び姿勢の拘束条件情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記位置及び姿勢の拘束条件情報に基づき上記機械インピーダンス設定値を設定する、請求項６に記載のロボットアームの制御装置。
【請求項１２】
上記物体特性データベースの有する物体の位置及び姿勢の拘束条件情報は、上記ロボットアームが同時に運搬した複数の物体の位置及び姿勢の相対関係に基づき設定された上記物体の位置及び姿勢の拘束条件情報である、請求項１１に記載のロボットアームの制御装置。
【請求項１３】
上記物体特性データベースの有する物体の位置及び姿勢の拘束条件情報は、上記運搬している物体の周囲環境情報に基づき設定された上記物体の位置及び姿勢の拘束条件情報である、請求項１１に記載のロボットアームの制御装置。
【請求項１４】
上記物体特性データベースは、上記物体の属性情報として上記運搬している物体の危険度情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記危険度情報に基づき上記機械インピーダンス設定値を設定する、請求項７に記載のロボットアームの制御装置。
【請求項１５】
上記物体特性データベースの有する危険度情報は、上記運搬している物体の周囲環境情報に基づき設定された危険度情報である、請求項１４に記載のロボットアームの制御装置。
【請求項１６】
上記物体特性データベースは、上記物体の属性情報として上記運搬している物体の重要度情報を有し、上記特性呼応インピーダンス設定手段は、物体特性データベースの上記重要度情報に基づき上記機械インピーダンス設定値を設定する、請求項７に記載のロボットアームの制御装置。
【請求項１７】
ロボットアームの制御方法であって、  上記ロボットアームが運搬している物体の運搬特性に関する情報に基づき上記ロボットアームの機械インピーダンス設定値を設定し、  上記設定された上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御する、ロボットアームの制御方法。
【請求項１８】
上記ロボットアームと、  上記ロボットアームを制御する請求項１，２，５，８〜１６のいずれか１つに記載のロボットアームの制御装置とを有する、ロボット。
【請求項１９】
コンピュータを、  ロボットアームが運搬している物体の運搬特性に関する情報に基づき上記ロボットアームの機械インピーダンス設定値を設定する物体特性呼応インピーダンス設定手段と、  上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御するインピーダンス制御手段として機能させるためのロボットアームの制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、家庭用ロボット等、人との物理的な接触の可能性のあるロボットのロボットアームを制御する、ロボットアームの制御装置及び制御方法、ロボットアームの制御装置を有するロボット、及びロボットアームの制御プログラムに関する。
【背景技術】
【０００２】  近年、ペットロボットなどの家庭用ロボットの開発が盛んに行われており、将来は家事支援ロボット等、より実用的な家庭用ロボットが実用化されるものと期待されている。家庭用ロボットは、家庭内に入り人間と共生する必要があるため、人間との物理的な接触が不可欠であり、安全性の面から、柔軟であることが必要とされる。【０００３】  こうした課題に対し、従来技術としては、特許文献１の特開平１０−３２９０７１号公報において、ロボットアームに加わった人間との接触力を検知し、アームに大きな力が加わった時には復元力を小さくし安全性を高め、アームに微少な力が加わっている時には復元力を大きくし動作精度を確保する制御装置を開示している。【０００４】
【特許文献１】特開平１０−３２９０７１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】  しかしながら、上記従来の制御装置では、ロボットアームに大きな力が加わった時には復元力を小さくするのみであるため、トレイをロボットアームで把持し、トレイの上に物体を載せている場合などに、ロボットアームと人間との接触でロボットアームが動くことでトレイが傾き、トレイの上に載せた物体を落下させてしまう危険がある。また、ロボットアームが硬い物体や角の尖った物体を把持しているときには、復元力を小さくするのみでは、人間との接触で硬い物体や角の尖った物体が動き、ロボットアームに接触した人間あるいは、付近にいる他の人間、あるいは、家具等の他の物体に衝突し、ダメージを与える危険がある。【０００６】  本発明の目的は、上記従来の制御装置の課題を解決し、ロボットアームと人間との接触が発生しても、人間へ接触のダメージを与えることなく、かつ、接触によりロボットアームが動いて、把持物体を落下させたり他の人間や他の物体に接触しダメージを与えることのない、安全なロボット制御を実現できる、ロボットアームの制御装置及び制御方法、ロボット、及びロボットアームの制御プログラムを提供することにある。
【課題を解決するための手段】
【０００７】  上記目的を達成するために、本発明は以下のように構成する。【０００８】  本発明の第１態様によれば、ロボットアームの制御装置であって、  上記ロボットアームが運搬している物体の運搬特性に関する情報が記録された物体特性データベースと、  上記物体特性データベースの上記情報に基づき上記ロボットアームの機械インピーダンス設定値を設定する物体特性呼応インピーダンス設定手段と、  上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御するインピーダンス制御手段とを有することを特徴とするロボットアームの制御装置を提供する。【０００９】  本発明の第１７態様によれば、ロボットアームの制御方法であって、  上記ロボットアームが運搬している物体の運搬特性に関する情報に基づき上記ロボットアームの機械インピーダンス設定値を設定し、  上記設定された上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御することを特徴とするロボットアームの制御方法を提供する。【００１０】  本発明の第１８態様によれば、上記ロボットアームと、  上記ロボットアームを制御する第１〜１６のいずれか１つの態様に記載のロボットアームの制御装置とを有することを特徴とするロボットを提供する。【００１１】  本発明の第１９態様によれば、コンピュータを、  ロボットアームが運搬している物体の運搬特性に関する情報に基づき上記ロボットアームの機械インピーダンス設定値を設定する物体特性呼応インピーダンス設定手段と、  上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御するインピーダンス制御手段として機能させるためのロボットアームの制御プログラムを提供する。
【発明の効果】
【００１２】  本発明のロボットアームの制御装置及びロボットアームの制御装置を有するロボットによれば、物体特性データベース、物体特性呼応インピーダンス設定手段、インピーダンス制御手段を有することにより、ロボットアームで運搬する物体の運搬特性に応じて、ロボットアームの機械インピーダンス設定値が適切に設定されるので、人間との接触が発生しても、人間へ接触のダメージを与えることなく、かつ、接触によりロボットアームが動いて、運搬する物体を落下させたり他の人間や他の物体に接触しダメージを与えることのない、安全なロボット制御が可能となる。【００１３】  また、本発明のロボットアームの制御方法及びプログラムによれば、上記ロボットアームが運搬している物体の運搬特性に関する情報に基づき上記ロボットアームの機械インピーダンス設定値を設定し、上記設定された上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御することにより、運搬する物体の運搬特性に応じて、ロボットアームの機械インピーダンス設定値が適切に設定されて制御されるので、人間との接触が発生しても、人間へ接触のダメージを与えることなく、かつ、接触によりロボットアームが動いて、運搬する物体を落下させたり他の人間や他の物体に接触しダメージを与えることのない、安全なロボット制御が可能となる。
【図面の簡単な説明】
【００１４】  本発明のこれらと他の目的と特徴は、添付された図面についての好ましい実施形態に関連した次の記述から明らかになる。この図面においては、【図１】図１は、本発明の第１実施形態における制御装置の概念を示すブロック図であり、
【図２】図２は、本発明の第１実施形態におけるロボットアームの制御装置のハードウェア構成及び制御対象であるロボットアームの詳細構成を示す図であり、
【図３】図３は、本発明の第１実施形態における制御装置のインピーダンス制御手段の構成を示すブロック図であり、
【図４】図４は、物体特性データベースの特性一覧表を説明する図であり、
【図５】図５は、本発明の第１実施形態における制御装置のインピーダンス制御手段での制御プログラムの動作ステップを表すフローチャートであり、
【図６】図６は、本発明の第１実施形態における制御装置の全体的な動作ステップを表すフローチャートであり、
【図７Ａ】図７Ａは、本発明の第１実施形態におけるロボットアームの制御装置の制御対象であるロボットアームの動作を説明する図であり、
【図７Ｂ】図７Ｂは、本発明の第１実施形態におけるロボットアームの制御装置の制御対象であるロボットアームの動作を説明する図であり、
【図７Ｃ】図７Ｃは、本発明の第１実施形態におけるロボットアームの制御装置の制御対象であるロボットアームの動作を説明する図であり、
【図７Ｄ】図７Ｄは、本発明の第１実施形態におけるロボットアームの制御装置の制御対象であるロボットアームの動作を説明する図であり、
【図８】図８は、物体特性データベースの把持規則表を説明する図であり、
【図９】図９は、本発明の第２実施形態におけるロボットアームの制御装置の制御対象であるロボットアームによる把持動作を説明する図であり、
【図１０】図１０は、物体特性データベースの他の把持規則表を説明する図であり、
【図１１】図１１は、本発明の第３実施形態における制御装置のインピーダンス制御手段の構成を説明する図であり、
【図１２】図１２は、本発明の第２実施形態におけるロボットアームの制御装置の制御対象であるロボットアームによる他の把持動作を説明する図であり、
【図１３】図１３は、本発明の第１実施形態におけるロボットアームの制御装置の目標軌道を説明する図であり、
【図１４】図１４は、本発明の第１実施形態における物体特性収集手段の詳細を説明するブロック図であり、
【図１５】図１５は、本発明の第１実施形態におけるロボットアームの制御装置の効果を説明する図である。
【発明を実施するための最良の形態】
【００１５】  以下に、本発明にかかる実施の形態を図面に基づいて詳細に説明する。添付図面において同じ部品については同じ参照符号を付している。【００１６】  以下、図面を参照して本発明における実施形態を詳細に説明する前に、本発明の種々の態様について説明する。【００１７】  本発明の第１態様によれば、ロボットアームの制御装置であって、  上記ロボットアームが運搬している物体の運搬特性に関する情報が記録された物体特性データベースと、  上記物体特性データベースの上記情報に基づき上記ロボットアームの機械インピーダンス設定値を設定する物体特性呼応インピーダンス設定手段と、  上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御するインピーダンス制御手段とを有することを特徴とするロボットアームの制御装置を提供する。【００１８】  本発明の第２態様によれば、上記ロボットアームが運搬している上記物体の運搬特性に関する情報を収集し、収集した上記物体の運搬特性に関する情報を上記物体特性データベースに記録する物体特性収集手段をさらに有することを特徴とする第１の態様に記載のロボットアームの制御装置を提供する。【００１９】  本発明の第３態様によれば、上記インピーダンス制御手段は、上記ロボットアームに人や物体が接触することを検知する接触検知手段を有し、上記ロボットアームが上記人や物体と接触した時に、上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御することを特徴とする第１又は第２の態様に記載のロボットアームの制御装置を提供する。【００２０】  本発明の第４態様によれば、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記情報に基づき上記ロボットアームの手先の並進方向及び回転方向の６次元の方向の機械インピーダンス設定値を個別に設定することを特徴とする第１又は第２の態様に記載のロボットアームの制御装置を提供する。【００２１】  本発明の第５態様によれば、上記特性呼応インピーダンス設定手段は、上記手先の上記並進方向を低剛性とし上記回転方向を上記並進方向よりも高剛性とすることで上記ロボットアームが運搬している上記物体を水平に保つよう設定することを特徴とする第４の態様に記載のロボットアームの制御装置を提供する。【００２２】  本発明の第６態様によれば、上記物体特性データベースは上記ロボットアームが運搬している上記物体の物理特性情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記物理特性情報に基づき上記機械インピーダンス設定値を設定することを特徴とする第１又は第２の態様に記載のロボットアームの制御装置を提供する。【００２３】  本発明の第７態様によれば、上記物体特性データベースは上記ロボットアームが運搬している上記物体の属性情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記属性情報に基づき上記機械インピーダンス設定値を設定することを特徴とする第１又は第２の態様に記載のロボットアームの制御装置を提供する。【００２４】  本発明の第���態様によれば、上記物体特性データベースは、上記ロボットアームが運搬している上記物体の物理特性情報として上記ロボットアームが運搬している上記物体の重量情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記重量情報に基づき上記機械インピーダンス設定値を設定することを特徴とする第６の態様に記載のロボットアームの制御装置を提供する。【００２５】  本発明の第９態様によれば、上記物体特性データベースは上記物理特性情報として上記ロボットアームが運搬している上記物体の寸法情報を有し、上記特性呼応インピーダンス設定手段は、上記寸法情報に基づき上記機械インピーダンス設定値を設定することを特徴とする第６の態様に記載のロボットアームの制御装置を提供する。【００２６】  本発明の第１０態様によれば、上記物体特性データベースは上記物理特性情報として上記ロボットアームが運搬している上記物体の硬度情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記硬度情報に基づき上記機械インピーダンス設定値を設定することを特徴とする第６の態様に記載のロボットアームの制御装置を提供する。【００２７】  本発明の第１１態様によれば、上記物体特性データベースは上記物理特性情報として上記ロボットアームが運搬している上記物体の位置及び姿勢の拘束条件情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記位置及び姿勢の拘束条件情報に基づき上記機械インピーダンス設定値を設定することを特徴とする第６の態様に記載のロボットアームの制御装置を提供する。【００２８】  本発明の第１２態様によれば、上記物体特性データベースの有する物体の位置及び姿勢の拘束条件情報は、上記ロボットアームが同時に運搬した複数の物体の位置及び姿勢の相対関係に基づき設定された上記物体の位置及び姿勢の拘束条件情報であることを特徴とする第１１の態様に記載のロボットアームの制御装置を提供する。【００２９】  本発明の第１３態様によれば、上記物体特性データベースの有する物体の位置及び姿勢の拘束条件情報は、上記運搬している物体の周囲環境情報に基づき設定された上記物体の位置及び姿勢の拘束条件情報であることを特徴とする第１１の態様に記載のロボットアームの制御装置を提供する。【００３０】  本発明の第１４態様によれば、上記物体特性データベースは、上記物体の属性情報として上記運搬している物体の危険度情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記危険度情報に基づき上記機械インピーダンス設定値を設定することを特徴とする第７の態様に記載のロボットアームの制御装置を提供する。【００３１】  本発明の第１５態様によれば、上記物体特性データベースの有する危険度情報は、上記運搬している物体の周囲環境情報に基づき設定された危険度情報であることを特徴とする第１４の態様に記載のロボットアームの制御装置を提供する。【００３２】  本発明の第１６態様によれば、上記物体特性データベースは、上記物体の属性情報として上記運搬している物体の重要度情報を有し、上記特性呼応インピーダンス設定手段は、物体特性データベースの上記重要度情報に基づき上記機械インピーダンス設定値を設定することを特徴とする第７の態様に記載のロボットアームの制御装置を提供する。【００３３】  本発明の第１７態様によれば、ロボットアームの制御方法であって、  上記ロボットアームが運搬している物体の運搬特性に関する情報に基づき上記ロボットアームの機械インピーダンス設定値を設定し、  上記設定された上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御することを特徴とするロボットアームの制御方法を提供する。【００３４】  本発明の第１８態様によれば、上記ロボットアームと、  上記ロボットアームを制御する第１〜１６のいずれか１つの態様に記載のロボットアームの制御装置とを有することを特徴とするロボットを提供する。【００３５】  本発明の第１９態様によれば、コンピュータを、  ロボットアームが運搬している物体の運搬特性に関する情報に基づき上記ロボットアームの機械インピーダンス設定値を設定する物体特性呼応インピーダンス設定手段と、  上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御するインピーダンス制御手段として機能させるためのロボットアームの制御プログラムを提供する。【００３６】  以下に、本発明にかかる実施の形態にかかるロボットアームの制御装置及び制御方法、ロボット、及びプログラムを図面に基づいて詳細に説明する。【００３７】  （第１実施形態）  図１は本発明の第１実施形態における、ロボットアームの制御装置１の概念を示すブロック図である。図１において、２は物体特性データベースであり、後述するロボットアーム５で運搬する運搬物体、例えば把持しながら運搬される物体（把持物体）３８の物体特性データの一例として物理特性情報及び属性情報などの運搬特性情報、例えば把持特性情報が記録されており、把持される物体３８が特定されると、その物体３８の特性データを物体特性呼応インピーダンス設定手段３に送出する機能を有している。【００３８】  ここで、物理特性情報とは、例えば、物体の形状、大きさ（寸法）、重量、又は、温度等の、物理的、物性的、幾何学的に決まる特性情報である。【００３９】  また、物体の属性情報とは例えば、危険度、又は、重要度等の、概念的な特性や物理特性から生じる２次的な特性情報である。【００４０】  ３は物体特性呼応インピーダンス設定手段であり、物体特性データベース２の把持物体に関する特性情報に基づき、ロボットアーム５の機械インピーダンス設定値、すなわち、剛性や粘性の設定値の設定を行う。【００４１】  ４はインピーダンス制御手段であり、物体特性呼応インピーダンス設定手段３が設定した機械インピーダンス設定値になるように、ロボットアーム５の各関節部の機械インピーダンスの値を制御するインピーダンス制御動作を行う。【００４２】  図２はロボットアームの制御装置１のハードウェア構成及び制御対象であるロボットアーム５の詳細構成を示す図である。【００４３】  制御装置１は、ハードウェア的には一般的なパーソナルコンピュータにより構成されており、物体特性データベース２、物体特性呼応インピーダンス設定手段３、及び、インピーダ��ス制御手段４の入出力ＩＦ（インターフェース）１９を除く部分は、パーソナルコンピュータで実行される制御プログラム１７としてソフトウェア的に実現される。【００４４】  入出力ＩＦ１９はパーソナルコンピュータのＰＣＩバスなどの拡張スロットルに接続された、Ｄ／Ａボード２０、Ａ／Ｄボード２１、カウンタボード２２により構成される。【００４５】  ロボットアーム５の動作を制御するための制御プログラム１７が実行されることにより制御装置１が機能しており、ロボットアーム５の各関節部の後述するエンコーダ４３より出力される関節角度情報がカウンタボード２２を通じて制御装置１に取り込まれ、制御装置１によって各関節部の回転動作での制御指令値が算出される。算出された各制御指令値は、Ｄ／Ａボード２０を通じてモータードライバ１８に与えられ、モータードライバ１８から送られた各制御指令値に従って、ロボットアーム５の各関節部の後述するモーター４２が駆動される。また、モータードライバ１８により駆動制御されるバンド駆動装置の一例としてのハンド駆動用モーター６２（実際には、ロボットアーム５のハンド６の内部に配設されている）と、ハンド駆動用モーター６２の回転軸の回転位相角（すなわち関節角）を検出するエンコーダ６３（実際には、ロボットアーム５のハンド６の内部に配設されている）とをさらにハンド６に備えて、エンコーダ６３で検出された回転角度を基に、制御装置１のインピーダンス制御手段４のハンド制御手段２００からの制御信号によりモータードライバ１８を介してハンド駆動用モーター６２の回転を駆動制御して、ハンド駆動用モーター６２の回転軸を正逆回転させることによりハンド６を開閉可能としている。【００４６】  ロボットアーム５は、６自由度の多リンクマニピュレータであり、ハンド６と、ハンド６が取付けられる手首部７を有する前腕リンク８と、前腕リンク８が回転可能に連結される上腕リンク９と、上腕リンク９が回転可能に連結支持される台部１０とを有している。この台部１０は、一定位置に固定されていてもよいが、移動可能な移動装置に連結されて移動可能にしてもよい。手首部７は第４関節部１４、第５関節部１５、第６関節部１６の３つの回転軸を有しており、上腕リンク９に対するハンド６の相対的な姿勢（向き）を変化させることができる。すなわち、図２において、第４関節部１４は手首部７に対するハンド６の横軸周りの相対的な姿勢を変化させることができ、第５関節部１５は手首部７に対するハンド６の、第４関節部１４の横軸とは直交する縦軸周りの相対的な姿勢を変化させることができ、第６関節部１６は手首部７に対するハンド６の、第４関節部１４の横軸及び第５関節部１５の縦軸とそれぞれ直交する横軸周りの相対的な姿勢を変化させることができる。前腕リンク８の他端は上腕リンク９の先端に対して第３関節部１３周りに、すなわち、第４関節部１４の横軸と平行な横軸周りに回転可能とし、上腕リンク９の他端は台部１０に対して第２関節部１２周りに、すなわち、第４関節部１４の横軸と平行な横軸周りに回転可能とし、台部１０の上側可動部は台部１０の下側固定部に対して第１関節部１１周りに、すなわち、第５関節部１５の縦軸と平行な縦軸周りに回転可能と��ている。この結果、ロボットアーム５は、合計６個の軸周りに回転可能として上記６自由度の多リンクマニピュレータを構成している。【００４７】  各軸の回転部分を構成する各関節部には、各関節部の一方の部材に備えられかつ後述するモータードライバ１８により駆動制御される回転駆動装置の一例としてのモーター４２（実際には、ロボットアーム５の各関節部の内部に配設されている）と、モーター４２の回転軸の回転位相角（すなわち関節角）を検出するエンコーダ４３（実際には、ロボットアーム５の各関節部の内部に配設されている）とを備えて、一方の部材に備えられたモーター４２の回転軸が他方の部材に連結されて上記回転軸を正逆回転させることにより他方の部材を一方の部材に対して各軸周りに回転可能とする。【００４８】  ３５は台部１０の下側固定部に対して相対的な位置関係が固定された絶対座標系であり、３６はハンド６に対して相対的な位置関係が固定された手先座標系である。絶対座標系３５から見た手先座標系３６の原点位置Ｏｅ（ｘ、ｙ、ｚ）をロボットアーム５の手先位置、絶対座標系３５から見た手先座標系３６の姿勢をロール角とピッチ角とヨー角で表現した（φ、θ、ψ）をロボットアーム５の手先姿勢とし、手先位置及び姿勢ベクトルをベクトルｒ＝［ｘ、ｙ、ｚ、φ、θ、ψ］Ｔと定義する。よって、一例として、絶対座標系３５のｚ軸に対して第１関節部１１の縦軸が平行であり、ｘ軸に対して第２関節部１２の横軸が平行に位置可能とするのが好ましい。また、手先座標系３６のｘ軸に対して第６関節部１６の横軸が平行に位置可能であり、ｙ軸に対して第４関節部１４の横軸が平行に位置可能であり、ｚ軸に対して第５関節部１５の縦軸が平行に位置可能とするのが好ましい。なお、手先座標系３６のｘ軸に対しての回転角をヨー角ψとし、ｙ軸に対しての回転角をピッチ角θとし、ｚ軸に対しての回転角をロール角φとする。ロボットアーム５の手先位置及び姿勢を制御する場合には、手先位置及び姿勢ベクトルｒを手先位置及び姿勢目標ベクトルｒｄに追従させることになる。【００４９】  ５０は物体特性収集手段であり、ロボットアーム５で把持する物体の特性データを収集し、物体特性データベース２に入力、更新する。具体的には、物体特性収集手段５０は、後述するように、カメラなどの画像撮像装置４４からの画像データ、読み取り手段３４（例えばＲＦタグ受信機５４）により読み取られた把持物体３８のＲＦタグ３３の情報、インターネット４６を通じて外部のウェブサーバにある物品情報データベース４７からの物体特性データがそれぞれ入力され、入力されたデータ又は情報を、適宜、物体特性データベース２に入力、更新する。また、物体特性収集手段５０には、カウンタボード２２が接続されて、ロボットアーム５の各関節部のエンコーダ４３より出力される関節角度情報や、インピーダンス制御手段４からの物体重量などの情報も入力される。【００５０】  物体特性収集手段５０の詳細を図１４に示す。【００５１】  ４５は画像認識手段であり、カメラなどの画像撮像装置４４の画像データより画像認識を行い、把持物体３８の寸法を抽出し、物体特性データベース２に出力する。また、画像認識手段４５は、画像認識手段４５の画像認���結果より得られる複数の把持物体の相対的位置関係の情報を、後述する運搬状態検出手段の一例としての把持状態検出手段５３に出力する。【００５２】  ４８は物体重量推定手段であり、把持物体３８の重量の推定を行う。例えば、ロボットアーム５の手首部７に力センサーを配設した場合には、ロボットアーム５が物体を把持し静止状態にある時の力センサーによる計測値からハンド６の重量を差し引いた値を物体重量とする。また、後述する力推定手段２４を利用する場合は、ロボットアーム５が物体を把持し静止状態にある時の各関節部に発生するトルクτｅｘｔを力推定手段２４から得、ロボットアーム５がその位置及び姿勢を保持するのに必要なトルクをロボットアームの運動方程式より求め、差し引いた後のトルク値を手先に働く力に換算し、物体重量とする。【００５３】  ４９は属性データ入力ＩＦ（インターフェース）であり、人間がキーボードやマウスやマイクなどの入力装置を使用して属性データ（属性情報）を入力するためのインターフェースである。【００５４】  ５１は干渉判断手段であり、ロボットアーム５の周囲の環境に存在する壁や、家具等の配置情報の地図であり環境マップデータベース５２に蓄積された環境マップ情報とインピーダンス制御手段４より入力されるロボットアーム５の位置及び姿勢情報とより、ロボットアーム５と壁や家具等との干渉関係を判断し、物体特性データベース２の属性情報の設定、変更を行う。【００５５】  ５３は運搬状態検出手段の一例としての把持状態検出手段であり、複数の把持物体を同時に把持する場合に、画像認識手段４５の画像認識結果より得られる複数の把持物体の相対的位置関係の情報や、ＲＦタグ受信機５４より得られる把持物体のＩＤ番号などのＩＤ情報（ＩＤデータ）の組み合わせの情報から把持状態を推論し、検出する。把持状態検出手段５３は、物体同士の組み合わせと把持状態の関係を表す把持状態テーブルを有し、ＩＤ情報の組み合わせが得られた場合には、把持状態テーブルを参照し、把持状態を推論する。把持状態テーブルには、例えば、トレイと他の物体の組み合わせの場合は、トレイの上に物体が載置された把持状態であるという一般的な把持ルールが複数記録されている。【００５６】  このように、物体特性収集手段５０は、カメラなどの画像撮像装置４４と物体特性データベース２と接続される画像認識手段４５と、インピーダンス制御手段４と物体特性データベース２と接続される物体重量推定手段４８と、インピーダンス制御手段４と物体特性データベース２と接続される干渉判断手段５１と、干渉判断手段５１に接続される環境マップデータベース５２と、物体特性データベース２とキーボードやマウスやマイクなどの入力装置（図示せず）と接続される属性データ入力ＩＦ（インターフェース）４９と、ＲＦタグ受信機５４と画像認識手段４５と物体特性データベース２と接続される把持状態検出手段５３とを備えて、それぞれの手段や部材でそれぞれの機能を奏するとともに、ＲＦタグ受信機５４により読み取られた把持物体３８のＲＦタグ３３の情報を物体特性データベース２に入力するとともに、インターネット４６を通じて外部のＷＥＢにある物品情報データベース４７にアクセスして物体特性���ータを物体特性データベース２に入力する機能をも有している。【００５７】  次に、物体特性データベース２の詳細について説明する。物体特性データベース２には、例えばロボットアーム５が設置された屋内に存在する種々の物体３８に関する情報が予め登録されている。各物体３８にはＲＦタグ３３が配設されており、個別のＩＤ番号などのＩＤ情報がＲＦタグ３３に記録されている。ロボットアーム５のハンド６にはＲＦタグ３３の読み取り手段３４（例えばＲＦタグ受信機５４）が配設されており、制御装置１のインピーダンス制御手段４からの制御信号によりモータードライバ１８を介してハンド駆動用モーター６２の回転駆動制御によりハンド６を開閉して、ロボットアーム５のハンド６が物体３８を把持すると、把持された物体３８のＲＦタグ３３の情報が読み取り手段３４で読み取られ、把持した物体３８のＩＤ番号が何であるかが読み取り手段３４により特定され、把持された物体３８のＩＤ番号情報が物体特性収集手段５０を介して物体特性データベース２に入力される。すると、物体特性データベース２は、特定された特定されたＩＤ番号に対応する物体３８の特性データを物体特性呼応インピーダンス設定手段３に送出する。【００５８】  物体特性データベース２の保有している情報は、図４に示すような物理特性情報と属性情報の特性一覧表３０の形で物体個別の特性データが記録されている。物体個別の特性データは、図４にあるように、物体個別のＩＤ番号と、ＩＤ番号に相当する物理特性情報の一例としての物体の重量情報、寸法情報、及び硬度情報、並びに、属性情報の一例としての危険度情報で構成される。これらの、重量情報、寸法情報、硬度情報、危険度情報のデータは、予め測定し、評価し、データベースとして物体特性データベース２に格納されている。【００５９】  物体特性データベース２の寸法情報に関しては、画像撮像装置４４及び画像認識手段４５を設ければ、その画像撮像装置４４で得られた画像データを基に画像認識手段４５による画像認識を行うことにより、物体３８の寸法を割り出し、寸法情報を物体特性データベース２に新たに蓄積あるいは更新することも可能である。【００６０】  物体特性データベース２の重量情報に関しては、ロボットアーム５の手首部７に力センサーを配設するか、あるいは、後述する力推定手段２４を利用すれば、物体重量推定手段４８により、ロボットアーム５で把持した物体３８の重量が推定可能であり、新たに重量情報を物体特性データベース２に蓄積することができる。また、例えば、ロボットアーム５で把持された鍋に対して水が注入されるとき、注入された水による物体の重量の増加を物体重量推定手段４８により推定することもできるので、重量の増減による重量情報の更新にも対応可能である。【００６１】  物体特性データベース２の硬度情報に関しては、把持物体３８の硬度に応じてレベル１〜５の５段階評価がなされる。評価値は、物体３８の材質をもとに、例えば、金属で形成された物体は最も硬度の高い「レベル５」、プラスチック等の樹脂で形成された物体は中度の「レベル３」、紙やタオルなどの柔らかい物体で形成された物体は最も硬度の低い「レベル１」といったように評価され、硬度情報として記録されている。また、硬度は壊れやすさという観点での評価も可能である。ガラスコップや陶磁器のように、他の物体にぶつけたりすると割れる危険が高いものを「レベル５」とすることも考えられる。これらの硬度情報は、予め人間が判断するか、物体のＲＦタグ３３に記録されているＩＤ情報から自動的に判断し、レベルの評価、設定を行い、属性データ入力ＩＦ４９を通じて物体特性データベース２への入力を行う。【００６２】  物体特性データベース２の危険度情報に関しては、例えば、レベル１〜５の５段階の評価値で記録されている。評価値の具体例としては、刃物のように危険性が高く、ロボットアーム５での取り扱いに最も注意を有すると思われる物体を最も危険度の高い「レベル５」とし、書類やタオルなど軽く、柔らかくて人に衝突しても危害を与える恐れが全くないと考えられる物体を最も危険度の低い「レベル１」とする。これらの危険度情報は、予め、人間が判断し、レベルの評価、設定を行い、属性データ入力ＩＦ４９を通じて物体特性データベース２への入力を行う。あるいは、干渉判断手段５１で、把持すべき物体３８が壁面や家具等に近くにあり、把持すべき物体３８と壁面や家具等との干渉の危険があると判断された把持物体の場合には、危険度を高く設定する。ここで、把持すべき物体３８が壁面や家具等に近くにあるか否かは、例えば、環境マップデータベース５２に蓄積された環境マップ情報に、把持すべき物体３８の位置情報も蓄積されている場合には、環境マップデータベース５２からその位置情報を取り込めばよいし、そのような位置情報が環境マップデータベース５２に蓄積されていない場合には、把持すべき物体３８をカメラなどの画像撮像装置４４で撮像し、取得した画像データを画像認識手段４５で画像認識を行い、物体特性データベース２に一旦蓄積し、蓄積された画像認識結果を参照して、干渉判断手段５１で把持すべき物体３８の位置情報を推定して判断するようにしてもよい。【００６３】  さらに、例えば、図９に示すように、トレイ３９をロボットアーム５で把持し、トレイ３９の上にコップ４０を載せているような把持状態の場合、ロボットアーム５と人間（例えば手１００）との接触でトレイ３９が傾くと、コップ４０がトレイ３９から矢印１０１のように落下する恐れがあるため、ＲＦタグ受信機５４によるＲＦタグ３３のＩＤ番号などのＩＤ情報を使った把持物体の検出で、トレイ３９のＲＦタグ３３とコップ４０のＲＦタグ３３が同時にＲＦタグ受信機５４で検出された場合、又は、画像認識手段４５の画像認識結果よりトレイ３９にコップ４０が載置されている情報が相対的位置関係情報として得られる場合には、トレイ３９の上にコップ４０を載せて運搬していると、把持状態検出手段５３において推論し、危険度を高く設定する（図１４参照）。【００６４】  また、物体特性データベース２のすべての情報は、物体特性収集手段５０により、インターネット４６を通じて、外部のウェブサーバなどにある物品情報データベース４７にアクセスすることで物体特性データを入手し、物体特性データベース２内の各情報を更新する事も可能である。【００６５】  次に、物体特性呼応インピーダンス設定手段３の詳細について説明する。物���特性呼応インピーダンス設定手段３では、物体特性データベース２の運搬特性情報に基づき、把持している物体３８に応じて、ロボットアーム５の機械インピーダンス設定値の設定を行う。機械インピーダンス設定値の設定パラメータとしては、慣性Ｍ、粘性Ｄ、剛性Ｋがある。機械インピーダンス設定値の各パラメータの設定は以下の評価式に基づいて行う。【００６６】
【数１】
2007080733.tif 000003
【００６７】
【数２】
2007080733.tif 000004
【００６８】
【数３】
2007080733.tif 000005
【００６９】  上記式（１）〜（３）中のＫＭｍ、ＫＭｌ、ＫＭｋ、ＫＭｄ、ＫＤｍ、ＫＤｌ、ＫＤｋ、ＫＤｄ、ＫＫｍ、ＫＫｌ、ＫＫｋ、ＫＫｄはゲインであり、それぞれ、ある定数値である。【００７０】  物体特性呼応インピーダンス設定手段３は、上記式（１）、（２）、（３）に基づき計算した機械インピーダンスパラメータの慣性Ｍ、粘性Ｄ、剛性Ｋをインピーダンス制御手段４へと出力する。【００７１】  上記式（１）〜（３）に従えば、ゲインＫＭｍ等を適切に設定することにより、例えば重量の重い物体に対しては、式（１）により、慣性Ｍが大きく設定されることになり、ロボットアーム５は把持物体３８の重量に比例した重量感を持つことになる結果、ロボットアーム５を動かすには大きな力が必要になり、少しぐらい手でロボットアーム５を押しても動かなくなる（発生する加速度が小さい）。逆に、重量の軽い物体に対しては、式（１）により、慣性Ｍが小さく設定されることになり、ロボットアーム５は把持物体３８の重量に比例した重量感を持つことになる結果、弱い力で容易にロボットアーム５が動くようになる（発生する加速度が大きい）。また、刃物のように危険度を高く設定された物体の場合には、粘性Ｄ及び剛性Ｋが大きくなるように設定されることになり、ロボットアーム５の動きに抵抗感や硬さが生じ、動きにくくなる。逆に、タオルなどのように危険度を低く設定された物体の場合には、粘性Ｄ及び剛性Ｋが小さくなるように設定されることになり、ロボットアーム５の動きに抵抗感や硬さがなく、動きやすくなる。【００７２】  複数の物体を同時に把持している場合、重量に関しては同時に把持している物体の重量を加算した総重量を使用して機械インピーダンス設定値の計算を行う。【００７３】  また、寸法に関しては、同時に把持している物体の寸法のうち、最大のものを使用して機械インピーダンス設定値の計算を行う。【００７４】  また、硬度に関しては、同時に把持している物体の硬度のうち、最大のものを使用して機械インピーダンス設定値の計算を行う。【００７５】  また、危険度に関しては、同時に把持している物体の危険度のうち、最大のものを使用して機械インピーダンス設定値の計算を行う。【００７６】  図３にインピーダンス制御手段４のブロック図を示す。インピーダンス制御手段４は、物体特性呼応インピーダンス設定手段３の設定した慣性Ｍ、粘性Ｄ、剛性Ｋの設定値に基づき設定されたロボットアーム５の機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御する。【００７７】  次に、図３を使い、インピーダンス制御手段４の詳細について説明する。図３において、５は制御対象である図２に示したロボットアームである。ロボットアーム５からは、それぞれの関節軸のエンコーダ４３により計測された関節角の現在値（関節角度ベクトル）ベクトルｑ＝［ｑ１，ｑ２，ｑ３，ｑ４，ｑ５，ｑ６］Ｔが出力され、カウンタボード２２によりインピーダンス制御手段４に取り込まれる。ただし、ｑ１，ｑ２，ｑ３，ｑ４，ｑ５，ｑ６は、それぞれ、第１関節部１１、第２関節部１２、第３関節部１３、第４関節部１４、第５関節部１５、第６関節部１６の関節角度である。【００７８】  ２３は目標軌道生���手段であり、目標とするロボットアーム５の動作を実現するための手先位置及び姿勢目標ベクトルｒｄが出力される。図１３に示すように、目標とするロボットアーム５の動作は、目的とする作業に応じて事前にそれぞれの時間（ｔ＝０、ｔ＝ｔ１、ｔ＝ｔ２、・・・）でのポイントごとの位置（ｒｄ０、ｒｄ１、ｒｄ２、・・・）が与えられており、目標軌道生成手段２３は、多項式補間を使用し、各ポイント間の軌道を補完し、手先位置及び姿勢目標ベクトルｒｄを生成する。【００７９】  ２４は力推定手段であり、人間等とロボットアーム５の接触によってロボットアーム５に加わる外力を推定する。力推定手段２４には、モータードライバ１８の電流センサーで計測された、ロボットアーム５の各関節部を駆動するモーター４２を流れる電流値ｉ＝［ｉ１，ｉ２，ｉ３，ｉ４，ｉ５，ｉ６］ＴがＡ／Ｄボード２１を介して取り込まれ、また、関節角の現在値ｑがカウンタボード２２を介して取り込まれるとともに、後述する近似逆運動学計算手段２８からの関節角度誤差補償出力ｕｑｅが取り込まれる。力推定手段２４は、オブザーバーとして機能し、以上の電流値ｉ、関節角の現在値ｑ、関節角度誤差補償出力ｕｑｅより、ロボットアーム５に加わる外力により各関節部に発生するトルクτｅｘｔ＝［τ１ｅｘｔ、τ２ｅｘｔ、τ３ｅｘｔ、τ４ｅｘｔ、τ５ｅｘｔ、τ６ｅｘｔ］Ｔを算出する。そして、Ｆｅｘｔ＝Ｊｖ（ｑ）−Ｔτｅｘｔ−［０，０，ｍｇ］Ｔによりロボットアーム５の手先における等価手先外力Ｆｅｘｔに換算し出力する。ここで、Ｊｖ（ｑ）は、【００８０】
【数４】
2007080733.tif 000006
を満たすヤコビ行列である。ただし、ｖ＝［ｖｘ、ｖｙ、ｖｚ、ωｘ、ωｙ、ωｚ］Ｔであり、（ｖｘ、ｖｙ、ｖｚ）は手先座標系３６でのロボットアーム５の手先の並進速度、（ωｘ、ωｙ、ωｚ）は手先座標系３６でのロボットアーム５の手先の角速度である。また、ｍは把持している物体の重さであり、ｇは把持している物体の重力加速度である。把持物体の重さｍの値は、物体特性データベース２から入手することができる。また、ロボットアーム５により実際に把持を行い、そのときの力推定手段２４の等価手先外力Ｆｅｘｔの推定結果より把持物体の重さｍの値を算出する事も可能である。
【００８１】  ３７は接触検知手段であり、力推定手段２４の推定する等価手先外力Ｆｅｘｔを観測し、ロボットアーム５と人間や他の物体との接触を検知する。接触が発生すると等価手先外力Ｆｅｘｔが変化するので、その変化量が、ある値ΔＦを越えたときに接触が発生したと接触検知手段３７で検知する。接触を接触検知手段３７で検知すると、接触検知手段３７は接触を検知した事をインピーダンス計算手段２５に通知する。【００８２】  インピーダンス計算手段２５は、ロボットアーム５に機械インピーダンス設定値への上記ロボットアームの機械インピーダンスの値の制御を実現する機能を果たす部分であり、ロボットアーム５と人間や他の物体との接触を接触検知手段３７で検知していない通常動作の際は０を出力する。一方、ロボットアーム５と人間や他の物体との接触を接触検知手段３７で検知し、接触検知手段３７から接触の通知を受けると、物体特性呼応インピーダンス設定手段３で設定されたインピーダンスパラメータである慣性Ｍ、粘性Ｄ、剛性Ｋと、関節角の現在値ｑと、力推定手段２４が推定した外力Ｆｅｘｔより、ロボットアーム５に機械インピーダンス設定値への上記ロボットアームの機械インピーダンスの値の制御を実現するための手先位置及び姿勢目標補正出力ｒｄΔを以下の式（４）により計算し、出力する。手先位置及び姿勢目標補正出力ｒｄΔは、目標軌道生成手段２３の出力する手先位置及び姿勢目標ベクトルｒｄに加算され、手先位置及び姿勢補正目標ベクトルｒｄｍが生成される。【００８３】
【数５】
2007080733.tif 000007
ただし、
【００８４】
【数６】
2007080733.tif 000008
【００８５】
【数７】
2007080733.tif 000009
【００８６】
【数８】
2007080733.tif 000010
であり、ｓはラプラス演算子である。
【００８７】  ２６はロボットアーム５からのそれぞれの関節軸のエンコーダ４３により計測された関節角の現在値ｑである関節角度ベクトルｑがカウンタボード２２を介して入力される順運動学計算手段であり、ロボットアーム５の関節角度ベクトルｑから手先位置及び姿勢ベクトルｒへの変換の幾何科学的計算を行う。【００８８】  ２７は位置誤差補償手段であり、ロボットアーム５において計測される関節角度ベクトルｑより順運動学計算手段２６により計算される手先位置及び姿勢ベクトルｒと、手先位置及び姿勢補正目標ベクトルｒｄｍとの誤差ｒｅが入力され、位置誤差補償出力ｕｒｅが近似逆運動学計算手段２８に向けて出力される。【００８９】  近似逆運動学計算手段２８では、近似式ｕｏｕｔ＝Ｊｒ（ｑ）−１ｕｉｎにより、逆運動学の近似計算を行う。ただし、Ｊｒ（ｑ）は、【００９０】
【数９】
2007080733.tif 000011
の関係を満たすヤコビ行列、ｕｉｎは近似逆運動学計算手段２８への入力、ｕｏｕｔは近似逆運動学計算手段２８からの出力であり、入力ｕｉｎを関節角度誤差ｑｅとすれば、ｑｅ＝Ｊｒ（ｑ）−１ｒｅのように手先位置及び姿勢誤差ｒｅから関節角度誤差ｑｅへの変換式となる。したがって、位置誤差補償出力ｕｒｅが近似逆運動学計算手段２８に入力されると、その出力として、関節角度誤差ｑｅを補償するための関節角度誤差補償出力ｕｑｅが近似逆運動学計算手段２８から出力される。
【００９１】  関節角度誤差補償出力ｕｑｅは、Ｄ／Ａボード２０を介してモータードライバ１８に電圧指令値として与えられ、各モーター４２により各関節軸が正逆回転駆動されロボットアーム５が動作する。【００９２】  以上のように構成されるインピーダンス制御手段４に関して、ロボットアーム５のインピーダンス制御動作の原理について説明する。【００９３】  インピーダンス制御動作の基本は、位置誤差補償手段２７による手先位置及び姿勢誤差ｒｅのフィードバック制御（位置制御）であり、図３の点線で囲まれた部分が位置制御系２９になっている。位置誤差補償手段２７として、例えば、ＰＩＤ補償器を使用すれば、手先位置及び姿勢誤差ｒｅが０に収束するように制御が働き、目標とするロボットアーム５のインピーダンス制御動作を実現することができる。【００９４】  接触検知手段３７がロボットアーム５と人間や他の物体との接触を検知した場合、上記説明した位置制御系２９に対し、インピーダンス計算手段２５により手先位置及び姿勢目標補正出力ｒｄΔが加算され、手先位置及び姿勢の目標値の補正が行われる。このために、上記した位置制御系２９は、手先位置及び姿勢の目標値が本来の値より微妙にずれることになり、結果的に、上記ロボットアーム５の機械インピーダンスの値を上記適切に設定された設定値に制御する動作が実現される。手先位置及び姿勢目標補正出力ｒｄΔは式（４）により算出されるため、上記ロボットアーム５の慣性Ｍ、粘性Ｄ、剛性Ｋの機械インピーダンスの値を上記適切に設定された設定値に制御する動作が実現される。【００９５】  以上の原理に基づく制御プログラムの実際の動作ステップについて、図５のフローチャートに基づいて説明する。【００９６】  ステップ１では、それぞれのエンコーダ４３により計測された関節角度データ（関節変数ベクトル又は関節角度ベクトルｑ）が制御装置１に取り込まれる。【００９７】  次いで、ステップ２では、ロボットアーム５の運動学計算に必要なヤコビ行列Ｊｒ等の計算が近似逆運動学計算手段２８により行われる。【００９８】  次いで、ステップ３（順運動学計算手段２６での処理）では、ロボットアーム５からの関節角度データ（関節角度ベクトルｑ）から、ロボットアーム５の現在の手先位置及び姿勢ベクトルｒが、順運動学計算手段２６により計算される。【００９９】  次いで、ステップ４では、制御装置１のメモリ（図示せず）に予め記憶されていたロボットアーム５の動作プログラムに基づき、目標軌道計算手段２３によりロボットアーム１０の手先位置及び姿勢目標ベクトルｒｄが計算される。【０１００】  次いで、ステップ５（力推定手段２４での処理）では、モーター４２の駆動電流値ｉと、関節角度データ（関節角度ベクトルｑ）と、関節角度誤差補償出力ｕｑｅから、ロボットアーム５の手先における等価手先外力Ｆｅｘｔが、力推定手段２４により計算される。【０１０１】  次いで、ステップ６（接触検知手段３７での処理）では、力推定手段２４により計算されたロボットアーム５の手先における等価手先外力Ｆｅｘｔよりロボットアーム５と人間や他の物体との接触の有無を判断し、接触検知手段３７で接触有りと検知した場合にはステップ７へ、接触無しと検知した���合にはステップ７’へ処理を進める。【０１０２】  次いで、ステップ７（インピーダンス計算手段２５での処理）では、ロボットアーム５と人間や他の物体との接触が有ると接触検知手段３７で検知した場合に、物体特性呼応インピーダンス設定手段３において設定された機械インピーダンスパラメータの慣性Ｍ、粘性Ｄ、剛性Ｋと、関節角度データ（関節角度ベクトルｑ）と、力推定手段２４により計算されたロボットアーム５に加わる等価手先外力Ｆｅｘｔから、手先位置及び姿勢目標補正出力ｒｄΔが、インピーダンス計算手段２５により計算される。その後、ステップ８に進む。【０１０３】  ステップ７’（インピーダンス計算手段２５での処理）では、ロボットアーム５と人間や他の物体との接触が無いと接触検知手段３７で検知した場合に、インピーダンス計算手段２５で、手先位置及び姿勢目標補正出力ｒｄΔを０ベクトルとする。その後、ステップ８に進む。【０１０４】  ステップ８（位置誤差補償手段２７での処理）では、手先位置及び姿勢目標ベクトルｒｄと手先位置及び姿勢目標補正出力ｒｄΔの和である手先位置及び姿勢補正目標ベクトルｒｄｍと、現在の手先位置及び姿勢ベクトルｒとの差である手先位置及び姿勢の誤差ｒｅが位置誤差補償手段２７で計算される。位置誤差補償手段２７の具体例としてはＰＩＤ補償器が考えられる。定数の対角行列である比例、微分、積分の３つのゲインを適切に調整することにより、位置誤差が０に収束するように制御が働く。【０１０５】  次いで、ステップ９（近似逆運動学計算手段２８での処理）では、ステップ２で計算したヤコビ行列Ｊｒの逆行列を近似逆運動学計算手段２８で乗算することにより、位置誤差補償出力ｕｒｅを、手先位置及び姿勢の誤差に関する値から関節角度の誤差に関する値である関節角度誤差補償出力ｕｑｅに、近似逆運動学計算手段２８により変換する。【０１０６】  次いで、ステップ１０では、関節角度誤差補償出力ｕｑｅが、近似逆運動学計算手段２８からＤ／Ａボード２０を通じ、モータードライバ１８に与えられ、それぞれのモーター４２を流れる電流量を変化させることによりロボットアーム５のそれぞれの関節軸の回転運動が発生する。【０１０７】  以上のステップ１〜ステップ１０が制御の計算ループとして繰り返し実行されることにより、ロボットアーム５の動作の制御、すなわち、ロボットアーム５の機械インピーダンスの値を上記適切に設定された設定値に制御する動作を実現することができる。【０１０８】  次に、本発明の第１実施形態における制御装置１の全体的な動作について、ロボットアーム５で物体３８を把持しながら運搬する作業を、１つの具体的な例として、図６のフローチャートに基づいて説明する。【０１０９】  まず、ステップＡでは、ロボットアーム５のハンド６で物体３８を把持するための目標軌道を目標軌道生成手段２３が生成し、図５に示すステップ７’を通る制御フローによりロボットアーム５の手先位置及び姿勢の制御が実行されるとともに、制御装置１によるハンド駆動用モーター６２が駆動制御されることにより、ハンド６を開いた状態で物体３８に近づけて、物体３８を把持可能な位置にハンド６を位置させ、ハンド６を閉じて物体３８を把持することにより、物体３８の把持動作を実現することができる（図７Ａに示す把持動作参照。）。なお、上記目標軌道を生成するときに必要な、把持する物体３８の位置情報は、前記したように、環境マップデータベース５２に予め蓄積されているか、又は、画像撮像装置４４と画像認識手段４５とを利用して取得することができる。これにより、ロボットアーム５が固定の場合には、ロボットアーム５の固定された位置の情報と、上記把持する物体３８の位置情報とから、物体３８を把持するための目標軌道を目標軌道生成手段２３で生成することができる。また、ロボットアーム５が移動装置などにより移動する場合には、基準位置に対するロボットアーム５の現在位置情報を、例えば、画像撮像装置４４と画像認識手段４５とを利用して適宜取得しておき、取得された現在位置情報と、上記把持する物体３８の位置情報とから、物体３８を把持するための目標軌道を目標軌道生成手段２３で生成することができる。【０１１０】  次いで、ステップＢでは、物体３８に配設されたＲＦタグ３３の情報を、ハンド６に配設されたＲＦタグ受信機５４で読み取り、ＲＦタグ受信機５４で物体３８のＩＤ番号などのＩＤ情報が特定される。【０１１１】  次いで、ステップＣでは、ＲＦタグ受信機５４で読み取ったＩＤ番号などのＩＤ情報より、物体特性データベース２において物体３８の重量、寸法等の特性データが読み出され、物体特性データベース２から物体特性呼応インピーダンス設定手段３へと転送される。【０１１２】  次いで、ステップＤでは、物体特性呼応インピーダンス設定手段３において、物体特性データベース２より転送された特性データを基に、物体３８に呼応する機械インピーダンス設定値が上記式（１）〜式（３）により計算される。【０１１３】  次いで、ステップＥでは、ロボットアーム５のハンド６で物体３８を把持しながら運搬するための目標軌道を目標軌道生成手段２３が生成し、図５に示すステップ７’を通る制御フローによりロボットアーム５の手先位置及び姿勢の制御が実行され、運搬動作が実現する（図７Ｂに矢印で示す運搬動作参照。）。【０１１４】  次いで、ステップＦでは、ロボットアーム５が人や他の物体と接触していないかが接触検知手段３７で検知され（接触検知手段３７での検知動作）、接触が接触検知手段３７で検知され無い場合はステップＧへ、接触が接触検知手段３７で検知された場合（図７Ｃに示す手１００とロボットアーム５との接触動作が検知された場合）はステップＨへ、動作が移行する。【０１１５】  ステップＧでは、運搬動作が完了したかどうかの判定が目標軌道生成手段２３で行われる。運搬動作が完了していない場合には目標位置までの目標軌道の計算が継続し、運搬動作を継続する一方、運搬動作が完了した場合には目標位置までの目標軌道の計算が完了し、ｒｄとして目的地の位置が出力され、かつ、ロボットアーム５の実際の手先位置ｒがｒｄと略一致した場合に、目標位置に達したと判断する。物体３８が目標位置すなわち目的地へと運搬されて、運搬が完了した場合にはステップＩへ移行する。運搬動作が完了せず、運搬途中の場合は、ステップＥの運搬動作が継続される。【０１１６】  ステップＨでは、インピーダンス制御手段４により、上記ロ���ットアームの機械インピーダンスの値が、物体特性呼応インピーダンス設定手段３において計算された機械インピーダンス設定値となるように上記ロボットアーム５の機械インピーダンスの値を制御するインピーダンス制御動作が行われ（インピーダンス制御手段４での動作）、接触検知手段３７で接触が検知されている間はインピーダンス制御動作が継続される。【０１１７】  ステップＩでは、把持物体３８の運搬が完了すると、制御装置１の制御によりロボットアーム５のハンド６が開き、物体３８が把持状態から開放される（図７Ｄに示す把持解除動作参照。）。【０１１８】  次いで、ステップＪでは、目標軌道生成手段２３より動作完了告知信号２０１がインピーダンス計算手段２５へと出力され、設定されていた機械インピーダンス設定値がインピーダンス計算手段２５によりクリアされる。【０１１９】  以上の動作ステップＡ〜ステップＪにより、ロボットアーム５による物体の運搬作業が実現し、接触を接触検知手段３７で検知した際にはインピーダンス制御動作への切換が実現する。【０１２０】  以上のように、物体特性データベース２、物体特性呼応インピーダンス設定手段３、インピーダンス制御手段４を備えることにより、ロボットアーム５と人間や他の物体との接触を接触検知手段３７で検知した際には、剛性の高い位置制御の状態から、速やかにインピーダンス制御の状態に移行し、安全性を確保できる（言い換えれば、十分に柔軟性を発揮できる状態に移行し、人との接触によって、ロボットアーム５が柔軟に動くことにより安全性が発揮できる）ようになると共に、把持物体の特性に応じてロボットアーム５の機械インピーダンス設定値を適切に変化させることができるようになる。具体的には、例えば、トレイにコップ載せて運搬している場合には、人の接触が生じてロボットアーム５が柔軟に動いても、手先の姿勢は維持されるように制御されるので、トレイは水平に維持され、コップを落下させることはない。【０１２１】  したがって、図１５に示すように、ロボットアーム５の手先の目標軌道ＴＡに対し、人間（例えば、手１００）との接触を接触検知手段３７で検知すると、適切な機械インピーダンス設定値の設定を行わなかった場合には、軌道ＴＣの様になり、ロボットアーム５のハンド６に把持された物体３８やハンド６と家具５５等の他の物体との衝突が発生する可能性があるのに対し、上記第１実施形態のように適切なインピーダンス設定値の設定を行う場合には、軌道ＴＢの様に、目標軌道ＴＡからのずれ量を小さくでき、ロボットアーム５のハンド６に把持された物体３８やハンド６と、家具５５等の他の物体との衝突の危険を回避できる。【０１２２】  例えば、把持物体３８の重量に応じて、ロボットアーム５の機械インピーダンス設定値を変化させることができるので、重量に比例するように剛性Ｋを特性呼応インピーダンス設定手段３により設定すれば、すなわち、特性呼応インピーダンス設定手段３によりゲインＫＫｍをＫＫｍ＞０と設定すれば、重い物体３８をハンド６が把持している場合には、バネ性が強くなり抵抗が大きくなるため、人間がロボットアーム５を手１００で押しのける際に、必要以上にロボットアーム５を動かし、把持した重量の大き���物体３８が他の家具５５などの他の物体や平面などに衝突する危険性を低減することができる。【０１２３】  また、把持物体３８の重量に比例するように慣性Ｍを特性呼応インピーダンス設定手段３により大きく設定すれば、すなわち、特性呼応インピーダンス設定手段３によりゲインＫＭｍをＫＭｍ＞０と設定すれば、人間がロボットアーム５を手１００で押しのける際に、人間が物体３８の重さの感覚を感じ取ることができ、不必要に力を込めて押すことを防ぐことができる。【０１２４】  また、把持物体３８の例として刃物のように危険度の高い「レベル５」と設定された物体３８に対しては、例えば、ゲインＫＤｄの設定値を大きく特性呼応インピーダンス設定手段３により設定しておけば、特性呼応インピーダンス設定手段３により粘性Ｄが危険度に応じて大きく設定されることになり、ロボットアーム５に粘性による抵抗が発生し、人との接触により刃物等が不用意に動いてしまう危険性を防ぎ、安全性を高めることができる。【０１２５】  また、把持物体３８の例として熱湯が入った鍋を把持しながら運搬する場合には、例えば、ロボットアーム５のハンド付近に赤外線センサー（図示せず）を配設し、温度を赤外線センサーで検知することで高温であることを検知し、特性呼応インピーダンス設定手段３により物体特性データベース２の危険度データを最も危険度の高い「レベル５」とする。そのように設定することにより、物体特性呼応インピーダンス設定手段３及びインピーダンス制御手段４が、粘性を大きくし、ロボットアーム５を動きにくく制御するので、人間に手で押されても、ロボットアーム５が激しく動いて熱湯を飛び散らすといったことを防ぐことが可能となる。【０１２６】  以上のように、本発明の第１実施形態にかかる制御装置１によれば、人間との接触が発生しても、人間へ接触のダメージを与えることなく、かつ、接触によりロボットアーム５が動いて、把持物体３８を落下させたり他の人間や他の物体に接触しダメージを与えることのない、安全なロボット制御を実現できる制御装置が提供される。【０１２７】  （第２実施形態）  本発明の第２実施形態における、ロボットアームの制御装置の基本的な構成は、図１、図２に示した第１実施形態の場合と同様であるので、共通部分の説明は省略し、異なる部分についてのみ以下、詳細に説明する。【０１２８】  図８は物体特性データベース２の把持規則表を説明する図である。物体特性データベース２は、図４に示す特性一覧表３０に加え、図８に示す、物体の位置及び姿勢の拘束条件情報が記された把持規則表３１を有している。把持規則表３１には、位置維持、姿勢維持、高さ維持の項目があり、それぞれの項目に対し、１又は０の数値が予め記録されている。【０１２９】  姿勢維持の項目が１の場合、物体の姿勢を動かさずに固定するという姿勢の拘束条件の情報があることを示しており、ロボットアーム５のハンド６の手先での回転（φ、θ、ψ）方向の機械インピーダンス設定値が特性呼応インピーダンス設定手段３により大きく設定され、手先すなわちハンド６の姿勢が変動しにくいように制御される。【０１３０】  例えば、図９に示すように、トレイ３９をハンド６で把持し、把持されたトレイ３９の上にコッ���４０を載せているような把持状態の場合、ロボットアーム５と人間との接触でトレイ３９が傾くとコップ４０が矢印１０１のように落下する恐れがあるため、手先であるハンド６の姿勢を維持し、トレイ３９の水平を保つために、把持規則表３１の姿勢維持の項目が１に設定される。【０１３１】  把持規則表３１の項目の設定は、把持状態検出手段５３の検出結果に基づいて行われる。例えば、ＲＦタグ受信機５４によりトレイ３９とコップ４０が検出された場合、把持状態テーブルを参照し、トレイ３９の上にコップ４０が載置された把持状態であると推論し、把持規則表３１の姿勢維持の項目が１に設定される。【０１３２】  このようにトレイ３９をハンド６で把持し、トレイ３９の上にコップ４０を載せているような把持状態にあるかどうかの判断は、画像撮像装置４４で取得された画像データを画像認識手段４５で画像認識することにより可能であるし（すなわち、画像認識手段４５の画像認識結果より、トレイ３９にコップ４０が載置されている情報が相対的位置関係情報として得られれば、トレイ３９の上にコップ４０を載せているような把持状態にあると判断することができ）、また、ＲＦタグによるＩＤ番号などのＩＤ情報を使った把持物体の検出でも、例えば、トレイ３９とコップ４０が同時に検出された場合には、トレイ３９の上にコップ４０を載せて運搬していると、把持状態検出手段５３により推論し、把持状態検出手段５３により上記把持状態が推論された場合には、姿勢維持の項目を１とすると、把持規則表３１に予め記録しておいても良い。【０１３３】  また、位置維持の項目が１の場合、ロボットアーム５の手先であるハンド６での並進（ｘ、ｙ、ｚ）方向の機械インピーダンス設定値が特性呼応インピーダンス設定手段３により大きく設定され、手先であるハンド６の位置が変動しにくいように制御される。【０１３４】  例えば、ロボットアーム５の手先であるハンド６の近くに家具等があり、手先であるハンド６が並進（ｘ、ｙ、ｚ）方向に進むと、家具等に衝突する危険がある場合に、位置維持の項目を１とすると把持規則表３１に予め記録しておいても良い。【０１３５】  また、高さ維持の項目が１の場合、ロボットアーム５の手先であるハンド６でのｚ方向の機械インピーダンス設定値が特性呼応インピーダンス設定手段３により大きく設定され、手先であるハンド６の位置する高さが維持される。【０１３６】  例えば、図１２に示すように、バッグ４１をハンド６にぶら下げているような把持状態の場合、ハンド６の手先位置が下がってしまうと、バッグ４１の底面が床面に接触する危険があるため、高さ維持の項目を１とすると把持規則表３１に予め記録しておいても良い。この場合、ロボットアーム５の手先であるハンド６での−ｚ方向、すなわち、鉛直方向下向きの機械インピーダンス設定値が特性呼応インピーダンス設定手段３により大きく設定され、手先であるハンド６の位置が下がりにくいように制御される。【０１３７】  次に、姿勢維持の場合を例に取り、機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御する実現方法について説明する。【０１３８】  手先位置及び姿勢目標補正出力ｒｄΔは、インピーダンス計算手段２���において、以下の式（８）により計算される。【０１３９】
【数１０】
2007080733.tif 000012
ただし、
【０１４０】
【数１１】
2007080733.tif 000013
であり、（αｘ、αｙ、αｚ、αφ、αθ、αψ）はインピーダンス制御係数である。
【０１４１】  ロボットアーム５と人等との接触が無く、通常の位置制御モードにあるときは、インピーダンス制御係数のすべての成分（αｘ、αｙ、αｚ、αφ、αθ、αψ）は、特性呼応インピーダンス設定手段３により０に設定される。このとき、式（８）でインピーダンス計算手段２５により計算される手先位置及び姿勢目標補正出力ｒｄΔの各成分は０になり、手先位置及び姿勢目標の補正は働かず、インピーダンス制御手段４は位置制御系として動作する。【０１４２】  ロボットアーム５と人等との接触が発生し、接触検知手段３７でその接触が検知されると、インピーダンス制御係数の一部の成分がインピーダンス計算手段２５により変更される。例えば、接触検知時に物体特性データベース２の把持規則表３１を参照して把持規則表３１の姿勢維持の項目が１である場合、特性呼応インピーダンス設定手段３により、位置に対応する成分（αｘ、αｙ、αｚ）は１に切り換えられ、姿勢に対応する成分（αφ、αθ、αψ）は０が維持される。これにより、手先の位置（ｘ、ｙ、ｚ）に関しては剛性Ｋとなるようにインピーダンス制御手段４により制御され、手先の姿勢（φ、θ、ψ）は位置制御がインピーダンス制御手段４により維持される。【０１４３】  したがって、例えば、慣性Ｍ＝０、Ｄ＝０となるようにし、剛性Ｋとして十分な柔軟性を発揮できる設定値に機械インピーダンスを特性呼応インピーダンス設定手段３により設定しておけば、ロボットアーム５と人との接触によって、手先であるハンド６の位置が柔軟に動くことにより安全性が発揮され、一方、手先であるハンド６の姿勢は維持されるので、例えば、トレイ３９にコップ４０を載せて運搬している場合には、人の接触が生じてもトレイ３９は水平に維持され、コップ４０を落下させることはない。【０１４４】  このように、インピーダンス制御係数により、上記ロボットアーム５の機械インピーダンスの値を、手先であるハンド６の方向別に機械インピーダンス設定値に制御できるようにすることで、人との接触に対する安全性を確保しつつ、把持物体や周囲環境などの外環境に対する安全性を同時に満たすことができる制御が可能となる。【０１４５】  なお、本第２実施形態では、把持規則表３１を図８のとおりとしたが、これに限られるわけではなく、図１０のように位置維持成分、姿勢維持成分、さらに、±の方向ごとに機械インピーダンス設定値の切り換えの動作の仕方を指定する形式でも同様の効果が発揮できるとともに、さらに細かく、機械インピーダンス設定値の切り換えの動作を指定することができる。【０１４６】  （第３実施形態）  本発明の第３実施形態における制御装置の基本的な構成は、上記した第２実施形態の場合と同様であるので、共通部分の説明は省略し、異なる部分についてのみ以下、詳細に説明する。【０１４７】  図１１は、本発明の第３実施形態における、ロボットアームの制御装置のインピーダンス制御手段４Ａの構成を示すブロック図である。３２は方向別インピーダンス調整手段であり、物体特性呼応インピーダンス設定手段３の設定した機械インピーダンス設定値、及び、物体特性データベース２の把持規則表３１に基づき、位置誤差補償手段２７のフィードバックゲインを方向別に調整を行う機能を���する。【０１４８】  本発明の第３実施形態における上詑制御装置のインピーダンス制御手段４Ａの物体特性呼応インピーダンス設定手段３では剛性Ｋ及び粘性Ｄの設定を行い、慣性Ｍの設定は行わない。また、位置誤差補償手段２７はＰＤ補償器であり、位置誤差補償出力ｕｒｅは下記の（１０）式で計算される。【０１４９】
【数１２】
2007080733.tif 000014
ただし、ＫＰは比例ゲイン行列、ＫＤは微分ゲイン行列であり、その対角成分が手先位置ベクトル
【０１５０】
【数１３】
2007080733.tif 000015
の各成分に対するゲインで構成される対角行列である。これらのゲインを調整（チューニング）することにより、適切な位置及び姿勢の制御性能を得ることができる。
【０１５１】  次に、動作について説明する。【０１５２】  人や他の物体との接触を接触検知手段３７で検知していない場合には、方向別インピーダンス調整手段３２は動作せず、位置誤差補償手段２７は式（１０）で計算されるゲインにより動作し、ロボットアーム５の位置制御が実現する。【０１５３】  一方、人や他の物体との接触を接触検知手段３７で検知した場合には、方向別インピーダンス調整手段３２は、位置誤差補償手段２７のゲインを以下の式（１１）及び式（１２）に基づいて調整を行う。【０１５４】
【数１４】
2007080733.tif 000016
【０１５５】
【数１５】
2007080733.tif 000017
ただし、αは式（９）で与えられるインピーダンス制御係数、Ｉは単位行列である。したがって、位置誤差補償手段２７の位置誤差補償出力ｕｒｅは、方向別インピーダンス調整手段３２によってゲインが調整され、下記の（１３）式で計算される。
【０１５６】
【数１６】
2007080733.tif 000018
上記の式（１３）によれば、把持規則表３１で位置維持、姿勢維持あるいは、高さ維持と設定された場合に、αの対角成分（αｘ、αｙ、αｚ、αφ、αθ、αψ）のうち、対応する方向の成分が１と設定されるため、それらの方向に関しては位置制御のためのゲインＫｐ、ＫＤによるフィードバックがなされる事になるため、ロボットアーム５は位置制御モードの動作となる。
【０１５７】  一方、その他の方向成分では、ロボットアーム５は、物体特性呼応インピーダンス設定手段３の設定した機械インピーダンス設定値の剛性Ｋ及び粘性Ｄが使用されるため、剛性Ｋ、粘性Ｄの設定値に基づく制御モードとなる。したがって、例えば、剛性Ｋ＜Ｋｐとすれば、接触時には対応する方向の位置制御の比例ゲインが小さくなり、ロボットアーム５の剛性が低下することになる。また、粘性Ｄ＜ＫＤとすれば、接触時には対応する方向の位置制御の微分ゲインが小さくなり、ロボットアーム５の粘性が低下することになる。【０１５８】  先に記載した第１実施形態の場合、これらの剛性Ｋ及び粘性Ｄの設定値は、それぞれ、剛性、粘性という物理特性を表す値そのものであったが、本第３実施形態の剛性Ｋ、粘性Ｄは直接、剛性、粘性を表すものではなく、ゲインを調整することにより擬似的に剛性、粘性を実現するものである。したがって、本第３実施形態における剛性Ｋ、粘性Ｄの具体的数値については、実験的に調整を行いながら適切な剛性、粘性が得られる値を探索することになる。【０１５９】  以上のように、本発明の第３実施形態におけるロボットアームの制御装置では、位置誤差補償手段２７のゲインを調整することにより、手先の方向別に擬似的に機械インピーダンス設定値に上記ロボットアーム５の機械インピーダンスの値を制御することを実現することで、人との接触に対する安全性を確保しつつ、把持物体や外環境に対する安全性を同時に満たすことができる制御が可能となる。【０１６０】  なお、上記第１実施形態では、物理特性情報を把持物体の重量情報、寸法情報、硬度情報としたが、これらに限られるわけではなく、温度など、その他の物理特性でもよい。【０１６１】  また、上記第１実施形態では、属性情報を危険度情報としたが、これらに限られるわけではなく、重要度情報など、その他の属性情報でもよい。属性情報として重要度情報を選んだ場合には、例えば、記念品など大切な物品に対して重要度を高く設定すれば、ロボットアーム５の機械インピーダンス設定値が高く設定されるので、大切な物品を破損する危険度を低めることができる。【０１６２】  なお、上記実施形態ではロボットアームを例に説明したが、本発明は、アームに限らず、車輪により動く移動ロボットや、２足歩行ロボット、多足歩行ロボットなどにも適用することができ、移動ロボットなどと人間との接触に関して同様の効果を発揮する。【０１６３】  なお、上記様々な実施形態のうちの任意の実施形態を適宜組み合わせることにより、それぞれの有する効果を奏するようにすることができる。
【産業上の利用可能性】
【０１６４】  本発明は、家庭用ロボットなど人と接する可能性があるロボットのロボットアームの動作の制御を行なうロボットアームの制御装置及び制御方法、ロボットアームの制御装置を有するロボット、及びロボットアームの制御プログラムとして有用である。また、家庭用ロボットに限らず、産業用ロボットや、生産設備等における可動機構のロボットアームの制御装置及び制御方法、ロボットアームの制御装置を有するロボット、及びロボットアームの制御プログラムとしても適用が可能である。【０１６５】  本発明は、添付図面を参照しながら好ましい実施形態に関連して充分に記載されているが、この技術の熟練した人々にとっては種々の変形や修正は明白である。そのような変形や修正は、添付した請求の範囲による本発明の範囲から外れない限りにおいて、その中に含まれると理解されるべきである。
【図１】
2007080733.tif 000019
【図２】
2007080733.tif 000020
【図３】
2007080733.tif 000021
【図４】
2007080733.tif 000022
【図５】
2007080733.tif 000023
【図６】
2007080733.tif 000024
【図７Ａ】
2007080733.tif 000025
【図７Ｂ】
2007080733.tif 000026
【図７Ｃ】
2007080733.tif 000027
【図７Ｄ】
2007080733.tif 000028
【図８】
2007080733.tif 000029
【図９】
2007080733.tif 000030
【図１０】
2007080733.tif 000031
【図１１】
2007080733.tif 000032
【図１２】
2007080733.tif 000033
【図１３】
2007080733.tif 000034
【図１４】
2007080733.tif 000035
【図１５】
2007080733.tif 000036
【手続補正書】
【提出日】平成19年4月16日(2007.4.16)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ロボットアームの制御装置であって、
上記ロボットアームが運搬している物体の運搬特性に関する情報が記録された物体特性データベースと、
上記物体特性データベースの上記情報に基づき上記ロボットアームの機械インピーダンス設定値を設定する物体特性呼応インピーダンス設定手段と、
上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御するインピーダンス制御手段とを有する、ロボットアームの制御装置。
【請求項２】
上記ロボットアームが運搬している上記物体の運搬特性に関する情報を収集し、収集した上記物体の運搬特性に関する情報を上記物体特性データベースに記録する物体特性収集手段をさらに有する、請求項１に記載のロボットアームの制御装置。
【請求項３】
上記インピーダンス制御手段は、上記ロボットアームに人や物体が接触することを検知する接触検知手段を有し、上記ロボットアームが上記人や物体と接触した時に、上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御する、請求項１又は請求項２に記載のロボットアームの制御装置。
【請求項４】
上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記情報に基づき上記ロボットアームの手先の並進方向及び回転方向の６次元の方向の機械インピーダンス設定値を個別に設定する、請求項１又は請求項２に記載のロボットアームの制御装置。
【請求項５】
上記特性呼応インピーダンス設定手段は、上記手先の上記並進方向を低剛性とし上記回転方向を上記並進方向よりも高剛性とすることで上記ロボットアームが運搬している上記物体を水平に保つよう設定する、請求項４に記載のロボットアームの制御装置。
【請求項６】
上記物体特性データベースは上記ロボットアームが運搬している上記物体の物理特性情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記物理特性情報に基づき上記機械インピーダンス設定値を設定する、請求項１又は請求項２に記載のロボットアームの制御装置。
【請求項７】
上記物体特性データベースは上記ロボットアームが運搬している上記物体の属性情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記属性情報に基づき上記機械インピーダンス設定値を設定する、請求項１又は請求項２に記載のロボットアームの制御装置。
【請求項８】
上記物体特性データベースは、上記ロボットアームが運搬している上記物体の物理特性情報として上記ロボットアームが運搬している上記物体の重量情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記重量情報に基づき上記機械インピーダンス設定値を設定する、請求項６に記載のロボットアームの制御装置。
【請求項９】
上記物体特性データベースは上記物理特性情報として上記ロボットアームが運搬している上記物体の寸法情報を有し、上記特性呼応インピーダンス設定手段は、上記寸法情報に基づき上記機械インピーダンス設定値を設定する、請求項６に記載のロボットアームの制御装置。
【請求項１０】
上記物体特性データベースは上記物理特性情報として上記ロボットアームが運搬している上記物体の硬度情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記硬度情報に基づき上記機械インピーダンス設定値を設定する、請求項６に記載のロボットアームの制御装置。
【請求項１１】
上記物体特性データベースは上記物理特性情報として上記ロボットアームが運搬している上記物体の位置及び姿勢の拘束条件情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記位置及び姿勢の拘束条件情報に基づき上記機械インピーダンス設定値を設定する、請求項６に記載のロボットアームの制御装置。
【請求項１２】
上記物体特性データベースの有する物体の位置及び姿勢の拘束条件情報は、上記ロボットアームが同時に運搬した複数の物体の位置及び姿勢の相対関係に基づき設定された上記物体の位置及び姿勢の拘束条件情報である、請求項１１に記載のロボットアームの制御装置。
【請求項１３】
上記物体特性データベースの有する物体の位置及び姿勢の拘束条件情報は、上記運搬している物体の周囲環境情報に基づき設定された上記物体の位置及び姿勢の拘束条件情報である、請求項１１に記載のロボットアームの制御装置。
【請求項１４】
上記物体特性データベースは、上記物体の属性情報として上記運搬している物体の危険度情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記危険度情報に基づき上記機械インピーダンス設定値を設定する、請求項７に記載のロボットアームの制御装置。
【請求項１５】
上記物体特性データベースの有する危険度情報は、上記運搬している物体の周囲環境情報に基づき設定された危険度情報である、請求項１４に記載のロボットアームの制御装置。
【請求項１６】
上記物体特性データベースは、上記物体の属性情報として上記運搬している物体の重要度情報を有し、上記特性呼応インピーダンス設定手段は、物体特性データベースの上記重要度情報に基づき上記機械インピーダンス設定値を設定する、請求項７に記載のロボットアームの制御装置。
【請求項１７】
ロボットアームの制御方法であって、
上記ロボットアームが運搬している物体の運搬特性に関する情報に基づき上記ロボットアームの機械インピーダンス設定値を設定し、
上記設定された上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御する、ロボットアームの制御方法。
【請求項１８】
上記ロボットアームと、
上記ロボットアームを制御する請求項１，２，５，８〜１６のいずれか１つに記載のロボットアームの制御装置とを有する、ロボット。
【請求項１９】
コンピュータを、
ロボットアームが運搬している物体の運搬特性に関する情報に基づき上記ロボットアームの機械インピーダンス設定値を設定する物体特性呼応インピーダンス設定手段と、
上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御するインピーダンス制御手段として機能させるためのロボットアームの制御プログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、家庭用ロボット等、人との物理的な接触の可能性のあるロボットのロボットアームを制御する、ロボットアームの制御装置及び制御方法、ロボットアームの制御装置を有するロボット、及びロボットアームの制御プログラムに関する。
【背景技術】
【０００２】
近年、ペットロボットなどの家庭用ロボットの開発が盛んに行われており、将来は家事支援ロボット等、より実用的な家庭用ロボットが実用化されるものと期待されている。家庭用ロボットは、家庭内に入り人間と共生する必要があるため、人間との物理的な接触が不可欠であり、安全性の面から、柔軟であることが必要とされる。
【０００３】
こうした課題に対し、従来技術としては、特許文献１の特開平１０−３２９０７１号公報において、ロボットアームに加わった人間との接触力を検知し、アームに大きな力が加わった時には復元力を小さくし安全性を高め、アームに微少な力が加わっている時には復元力を大きくし動作精度を確保する制御装置を開示している。
【０００４】
【特許文献１】特開平１０−３２９０７１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記従来の制御装置では、ロボットアームに大きな力が加わった時には復元力を小さくするのみであるため、トレイをロボットアームで把持し、トレイの上に物体を載せている場合などに、ロボットアームと人間との接触でロボットアームが動くことでトレイが傾き、トレイの上に載せた物体を落下させてしまう危険がある。また、ロボットアームが硬い物体や角の尖った物体を把持しているときには、復元力を小さくするのみでは、人間との接触で硬い物体や角の尖った物体が動き、ロボットアームに接触した人間あるいは、付近にいる他の人間、あるいは、家具等の他の物体に衝突し、ダメージを与える危険がある。
【０００６】
本発明の目的は、上記従来の制御装置の課題を解決し、ロボットアームと人間との接触が発生しても、人間へ接触のダメージを与えることなく、かつ、接触によりロボットアームが動いて、把持物体を落下させたり他の人間や他の物体に接触しダメージを与えることのない、安全なロボット制御を実現できる、ロボットアームの制御装置及び制御方法、ロボット、及びロボットアームの制御プログラムを提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明は以下のように構成する。
【０００８】
本発明の第１態様によれば、ロボットアームの制御装置であって、
上記ロボットアームが運搬している物体の運搬特性に関する情報が記録された物体特性データベースと、
上記物体特性データベースの上記情報に基づき上記ロボットアームの機械インピーダンス設定値を設定する物体特性呼応インピーダンス設定手段と、
上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御するインピーダンス制御手段とを有することを特徴とするロボットアームの制御装置を提供する。
【０００９】
本発明の第１７態様によれば、ロボットアームの制御方法であって、
上記ロボットアームが運搬している物体の運搬特性に関する情報に基づき上記ロボットアームの機械インピーダンス設定値を設定し、
上記設定された上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御することを特徴とするロボットアームの制御方法を提供する。
【００１０】
本発明の第１８態様によれば、上記ロボットアームと、
上記ロボットアームを制御する第１〜１６のいずれか１つの態様に記載のロボットアームの制御装置とを有することを特徴とするロボットを提供する。
【００１１】
本発明の第１９態様によれば、コンピュータを、
ロボットアームが運搬している物体の運搬特性に関する情報に基づき上記ロボットアームの機械インピーダンス設定値を設定する物体特性呼応インピーダンス設定手段と、
上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御するインピーダンス制御手段として機能させるためのロボットアームの制御プログラムを提供する。
【発明の効果】
【００１２】
本発明のロボットアームの制御装置及びロボットアームの制御装置を有するロボットによれば、物体特性データベース、物体特性呼応インピーダンス設定手段、インピーダンス制御手段を有することにより、ロボットアームで運搬する物体の運搬特性に応じて、ロボットアームの機械インピーダンス設定値が適切に設定されるので、人間との接触が発生しても、人間へ接触のダメージを与えることなく、かつ、接触によりロボットアームが動いて、運搬する物体を落下させたり他の人間や他の物体に接触しダメージを与えることのない、安全なロボット制御が可能となる。
【００１３】
また、本発明のロボットアームの制御方法及びプログラムによれば、上記ロボットアームが運搬している物体の運搬特性に関する情報に基づき上記ロボットアームの機械インピーダンス設定値を設定し、上記設定された上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御することにより、運搬する物体の運搬特性に応じて、ロボットアームの機械インピーダンス設定値が適切に設定されて制御されるので、人間との接触が発生しても、人間へ接触のダメージを与えることなく、かつ、接触によりロボットアームが動いて、運搬する物体を落下させたり他の人間や他の物体に接触しダメージを与えることのない、安全なロボット制御が可能となる。
【発明を実施するための最良の形態】
【００１４】
以下に、本発明にかかる実施の形態を図面に基づいて詳細に説明する。添付図面において同じ部品については同じ参照符号を付している。
【００１５】
以下、図面を参照して本発明における実施形態を詳細に説明する前に、本発明の種々の態様について説明する。
【００１６】
本発明の第１態様によれば、ロボットアームの制御装置であって、
上記ロボットアームが運搬している物体の運搬特性に関する情報が記録された物体特性データベースと、
上記物体特性データベースの上記情報に基づき上記ロボットアームの機械インピーダンス設定値を設定する物体特性呼応インピーダンス設定手段と、
上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御するインピーダンス制御手段とを有することを特徴とするロボットアームの制御装置を提供する。
【００１７】
本発明の第２態様によれば、上記ロボットアームが運搬している上記物体の運搬特性に関する情報を収集し、収集した上記物体の運搬特性に関する情報を上記物体特性データベースに記録する物体特性収集手段をさらに有することを特徴とする第１の態様に記載のロボットアームの制御装置を提供する。
【００１８】
本発明の第３態様によれば、上記インピーダンス制御手段は、上記ロボットアームに人や物体が接触することを検知する接触検知手段を有し、上記ロボットアームが上記人や物体と接触した時に、上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御することを特徴とする第１又は第２の態様に記載のロボットアームの制御装置を提供する。
【００１９】
本発明の第４態様によれば、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記情報に基づき上記ロボットアームの手先の並進方向及び回転方向の６次元の方向の機械インピーダンス設定値を個別に設定することを特徴とする第１又は第２の態様に記載のロボットアームの制御装置を提供する。
【００２０】
本発明の第５態様によれば、上記特性呼応インピーダンス設定手段は、上記手先の上記並進方向を低剛性とし上記回転方向を上記並進方向よりも高剛性とすることで上記ロボットアームが運搬している上記物体を水平に保つよう設定することを特徴とする第４の態様に記載のロボットアームの制御装置を提供する。
【００２１】
本発明の第６態様によれば、上記物体特性データベースは上記ロボットアームが運搬している上記物体の物理特性情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記物理特性情報に基づき上記機械インピーダンス設定値を設定することを特徴とする第１又は第２の態様に記載のロボットアームの制御装置を提供する。
【００２２】
本発明の第７態様によれば、上記物体特性データベースは上記ロボットアームが運搬している上記物体の属性情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記属性情報に基づき上記機械インピーダンス設定値を設定することを特徴とする第１又は第２の態様に記載のロボットアームの制御装置を提供する。
【００２３】
本発明の第８態様によれば、上記物体特性データベースは、上記ロボットアームが運搬している上記物体の物理特性情報として上記ロボットアームが運搬している上記物体の重量情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記重量情報に基づき上記機械インピーダンス設定値を設定することを特徴とする第６の態様に記載のロボットアームの制御装置を提供する。
【００２４】
本発明の第９態様によれば、上記物体特性データベースは上記物理特性情報として上記ロボットアームが運搬している上記物体の寸法情報を有し、上記特性呼応インピーダンス設定手段は、上記寸法情報に基づき上記機械インピーダンス設定値を設定することを特徴とする第６の態様に記載のロボットアームの制御装置を提供する。
【００２５】
本発明の第１０態様によれば、上記物体特性データベースは上記物理特性情報として上記ロボットアームが運搬している上記物体の硬度情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記硬度情報に基づき上記機械インピーダンス設定値を設定することを特徴とする第６の態様に記載のロボットアームの制御装置を提供する。
【００２６】
本発明の第１１態様によれば、上記物体特性データベースは上記物理特性情報として上記ロボットアームが運搬している上記物体の位置及び姿勢の拘束条件情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記位置及び姿勢の拘束条件情報に基づき上記機械インピーダンス設定値を設定することを特徴とする第６の態様に記載のロボットアームの制御装置を提供する。
【００２７】
本発明の第１２態様によれば、上記物体特性データベースの有する物体の位置及び姿勢の拘束条件情報は、上記ロボットアームが同時に運搬した複数の物体の位置及び姿勢の相対関係に基づき設定された上記物体の位置及び姿勢の拘束条件情報であることを特徴とする第１１の態様に記載のロボットアームの制御装置を提供する。
【００２８】
本発明の第１３態様によれば、上記物体特性データベースの有する物体の位置及び姿勢の拘束条件情報は、上記運搬している物体の周囲環境情報に基づき設定された上記物体の位置及び姿勢の拘束条件情報であることを特徴とする第１１の態様に記載のロボットアームの制御装置を提供する。
【００２９】
本発明の第１４態様によれば、上記物体特性データベースは、上記物体の属性情報として上記運搬している物体の危険度情報を有し、上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記危険度情報に基づき上記機械インピーダンス設定値を設定することを特徴とする第７の態様に記載のロボットアームの制御装置を提供する。
【００３０】
本発明の第１５態様によれば、上記物体特性データベースの有する危険度情報は、上記運搬している物体の周囲環境情報に基づき設定された危険度情報であることを特徴とする第１４の態様に記載のロボットアームの制御装置を提供する。
【００３１】
本発明の第１６態様によれば、上記物体特性データベースは、上記物体の属性情報として上記運搬している物体の重要度情報を有し、上記特性呼応インピーダンス設定手段は、物体特性データベースの上記重要度情報に基づき上記機械インピーダンス設定値を設定することを特徴とする第７の態様に記載のロボットアームの制御装置を提供する。
【００３２】
本発明の第１７態様によれば、ロボットアームの制御方法であって、
上記ロボットアームが運搬している物体の運搬特性に関する情報に基づき上記ロボットアームの機械インピーダンス設定値を設定し、
上記設定された上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御することを特徴とするロボットアームの制御方法を提供する。
【００３３】
本発明の第１８態様によれば、上記ロボットアームと、
上記ロボットアームを制御する第１〜１６のいずれか１つの態様に記載のロボットアームの制御装置とを有することを特徴とするロボットを提供する。
【００３４】
本発明の第１９態様によれば、コンピュータを、
ロボットアームが運搬している物体の運搬特性に関する情報に基づき上記ロボットアームの機械インピーダンス設定値を設定する物体特性呼応インピーダンス設定手段と、
上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御するインピーダンス制御手段として機能させるためのロボットアームの制御プログラムを提供する。
【００３５】
以下に、本発明にかかる実施の形態にかかるロボットアームの制御装置及び制御方法、ロボット、及びプログラムを図面に基づいて詳細に説明する。
【００３６】
（第１実施形態）
図１は本発明の第１実施形態における、ロボットアームの制御装置１の概念を示すブロック図である。図１において、２は物体特性データベースであり、後述するロボットアーム５で運搬する運搬物体、例えば把持しながら運搬される物体（把持物体）３８の物体特性データの一例として物理特性情報及び属性情報などの運搬特性情報、例えば把持特性情報が記録されており、把持される物体３８が特定されると、その物体３８の特性データを物体特性呼応インピーダンス設定手段３に送出する機能を有している。
【００３７】
ここで、物理特性情報とは、例えば、物体の形状、大きさ（寸法）、重量、又は、温度等の、物理的、物性的、幾何学的に決まる特性情報である。
【００３８】
また、物体の属性情報とは例えば、危険度、又は、重要度等の、概念的な特性や物理特性から生じる２次的な特性情報である。
【００３９】
３は物体特性呼応インピーダンス設定手段であり、物体特性データベース２の把持物体に関する特性情報に基づき、ロボットアーム５の機械インピーダンス設定値、すなわち、剛性や粘性の設定値の設定を行う。
【００４０】
４はインピーダンス制御手段であり、物体特性呼応インピーダンス設定手段３が設定した機械インピーダンス設定値になるように、ロボットアーム５の各関節部の機械インピーダンスの値を制御するインピーダンス制御動作を行う。
【００４１】
図２はロボットアームの制御装置１のハードウェア構成及び制御対象であるロボットアーム５の詳細構成を示す図である。
【００４２】
制御装置１は、ハードウェア的には一般的なパーソナルコンピュータにより構成されており、物体特性データベース２、物体特性呼応インピーダンス設定手段３、及び、インピーダンス制御手段４の入出力ＩＦ（インターフェース）１９を除く部分は、パーソナルコンピュータで実行される制御プログラム１７としてソフトウェア的に実現される。
【００４３】
入出力ＩＦ１９はパーソナルコンピュータのＰＣＩバスなどの拡張スロットルに接続された、Ｄ／Ａボード２０、Ａ／Ｄボード２１、カウンタボード２２により構成される。
【００４４】
ロボットアーム５の動作を制御するための制御プログラム１７が実行されることにより制御装置１が機能しており、ロボットアーム５の各関節部の後述するエンコーダ４３より出力される関節角度情報がカウンタボード２２を通じて制御装置１に取り込まれ、制御装置１によって各関節部の回転動作での制御指令値が算出される。算出された各制御指令値は、Ｄ／Ａボード２０を通じてモータードライバ１８に与えられ、モータードライバ１８から送られた各制御指令値に従って、ロボットアーム５の各関節部の後述するモーター４２が駆動される。また、モータードライバ１８により駆動制御されるハンド駆動装置の一例としてのハンド駆動用モーター６２（実際には、ロボットアーム５のハンド６の内部に配設されている）と、ハンド駆動用モーター６２の回転軸の回転位相角（すなわち関節角）を検出するエンコーダ６３（実際には、ロボットアーム５のハンド６の内部に配設されている）とをさらにハンド６に備えて、エンコーダ６３で検出された回転角度を基に、制御装置１のインピーダンス制御手段４のハンド制御手段２００からの制御信号によりモータードライバ１８を介してハンド駆動用モーター６２の回転を駆動制御して、ハンド駆動用モーター６２の回転軸を正逆回転させることによりハンド６を開閉可能としている。
【００４５】
ロボットアーム５は、６自由度の多リンクマニピュレータであり、ハンド６と、ハンド６が取付けられる手首部７を有する前腕リンク８と、前腕リンク８が回転可能に連結される上腕リンク９と、上腕リンク９が回転可能に連結支持される台部１０とを有している。この台部１０は、一定位置に固定されていてもよいが、移動可能な移動装置に連結されて移動可能にしてもよい。手首部７は第４関節部１４、第５関節部１５、第６関節部１６の３つの回転軸を有しており、上腕リンク９に対するハンド６の相対的な姿勢（向き）を変化させることができる。すなわち、図２において、第４関節部１４は手首部７に対するハンド６の横軸周りの相対的な姿勢を変化させることができ、第５関節部１５は手首部７に対するハンド６の、第４関節部１４の横軸とは直交する縦軸周りの相対的な姿勢を変化させることができ、第６関節部１６は手首部７に対するハンド６の、第４関節部１４の横軸及び第５関節部１５の縦軸とそれぞれ直交する横軸周りの相対的な姿勢を変化させることができる。前腕リンク８の他端は上腕リンク９の先端に対して第３関節部１３周りに、すなわち、第４関節部１４の横軸と平行な横軸周りに回転可能とし、上腕リンク９の他端は台部１０に対して第２関節部１２周りに、すなわち、第４関節部１４の横軸と平行な横軸周りに回転可能とし、台部１０の上側可動部は台部１０の下側固定部に対して第１関節部１１周りに、すなわち、第５関節部１５の縦軸と平行な縦軸周りに回転可能としている。この結果、ロボットアーム５は、合計６個の軸周りに回転可能として上記６自由度の多リンクマニピュレータを構成している。
【００４６】
各軸の回転部分を構成する各関節部には、各関節部の一方の部材に備えられかつ後述するモータードライバ１８により駆動制御される回転駆動装置の一例としてのモーター４２（実際には、ロボットアーム５の各関節部の内部に配設されている）と、モーター４２の回転軸の回転位相角（すなわち関節角）を検出するエンコーダ４３（実際には、ロボットアーム５の各関節部の内部に配設されている）とを備えて、一方の部材に備えられたモーター４２の回転軸が他方の部材に連結されて上記回転軸を正逆回転させることにより他方の部材を一方の部材に対して各軸周りに回転可能とする。
【００４７】
３５は台部１０の下側固定部に対して相対的な位置関係が固定された絶対座標系であり、３６はハンド６に対して相対的な位置関係が固定された手先座標系である。絶対座標系３５から見た手先座標系３６の原点位置Ｏｅ（ｘ、ｙ、ｚ）をロボットアーム５の手先位置、絶対座標系３５から見た手先座標系３６の姿勢をロール角とピッチ角とヨー角で表現した（φ、θ、ψ）をロボットアーム５の手先姿勢とし、手先位置及び姿勢ベクトルをベクトルｒ＝［ｘ、ｙ、ｚ、φ、θ、ψ］Ｔと定義する。よって、一例として、絶対座標系３５のｚ軸に対して第１関節部１１の縦軸が平行であり、ｘ軸に対して第２関節部１２の横軸が平行に位置可能とするのが好ましい。また、手先座標系３６のｘ軸に対して第６関節部１６の横軸が平行に位置可能であり、ｙ軸に対して第４関節部１４の横軸が平行に位置可能であり、ｚ軸に対して第５関節部１５の縦軸が平行に位置可能とするのが好ましい。なお、手先座標系３６のｘ軸に対しての回転角をヨー角ψとし、ｙ軸に対しての回転角をピッチ角θとし、ｚ軸に対しての回転角をロール角φとする。ロボットアーム５の手先位置及び姿勢を制御する場合には、手先位置及び姿勢ベクトルｒを手先位置及び姿勢目標ベクトルｒｄに追従させることになる。
【００４８】
５０は物体特性収集手段であり、ロボットアーム５で把持する物体の特性データを収集し、物体特性データベース２に入力、更新する。具体的には、物体特性収集手段５０は、後述するように、カメラなどの画像撮像装置４４からの画像データ、読み取り手段３４（例えばＲＦタグ受信機５４）により読み取られた把持物体３８のＲＦタグ３３の情報、インターネット４６を通じて外部のウェブサーバにある物品情報データベース４７からの物体特性データがそれぞれ入力され、入力されたデータ又は情報を、適宜、物体特性データベース２に入力、更新する。また、物体特性収集手段５０には、カウンタボード２２が接続されて、ロボットアーム５の各関節部のエンコーダ４３より出力される関節角度情報や、インピーダンス制御手段４からの物体重量などの情報も入力される。
【００４９】
物体特性収集手段５０の詳細を図１４に示す。
【００５０】
４５は画像認識手段であり、カメラなどの画像撮像装置４４の画像データより画像認識を行い、把持物体３８の寸法を抽出し、物体特性データベース２に出力する。また、画像認識手段４５は、画像認識手段４５の画像認識結果より得られる複数の把持物体の相対的位置関係の情報を、後述する運搬状態検出手段の一例としての把持状態検出手段５３に出力する。
【００５１】
４８は物体重量推定手段であり、把持物体３８の重量の推定を行う。例えば、ロボットアーム５の手首部７に力センサーを配設した場合には、ロボットアーム５が物体を把持し静止状態にある時の力センサーによる計測値からハンド６の重量を差し引いた値を物体重量とする。また、後述する力推定手段２４を利用する場合は、ロボットアーム５が物体を把持し静止状態にある時の各関節部に発生するトルクτｅｘｔを力推定手段２４から得、ロボットアーム５がその位置及び姿勢を保持するのに必要なトルクをロボットアームの運動方程式より求め、差し引いた後のトルク値を手先に働く力に換算し、物体重量とする。
【００５２】
４９は属性データ入力ＩＦ（インターフェース）であり、人間がキーボードやマウスやマイクなどの入力装置を使用して属性データ（属性情報）を入力するためのインターフェースである。
【００５３】
５１は干渉判断手段であり、ロボットアーム５の周囲の環境に存在する壁や、家具等の配置情報の地図であり環境マップデータベース５２に蓄積された環境マップ情報とインピーダンス制御手段４より入力されるロボットアーム５の位置及び姿勢情報とより、ロボットアーム５と壁や家具等との干渉関係を判断し、物体特性データベース２の属性情報の設定、変更を行う。
【００５４】
５３は運搬状態検出手段の一例としての把持状態検出手段であり、複数の把持物体を同時に把持する場合に、画像認識手段４５の画像認識結果より得られる複数の把持物体の相対的位置関係の情報や、ＲＦタグ受信機５４より得られる把持物体のＩＤ番号などのＩＤ情報（ＩＤデータ）の組み合わせの情報から把持状態を推論し、検出する。把持状態検出手段５３は、物体同士の組み合わせと把持状態の関係を表す把持状態テーブルを有し、ＩＤ情報の組み合わせが得られた場合には、把持状態テーブルを参照し、把持状態を推論する。把持状態テーブルには、例えば、トレイと他の物体の組み合わせの場合は、トレイの上に物体が載置された把持状態であるという一般的な把持ルールが複数記録されている。
【００５５】
このように、物体特性収集手段５０は、カメラなどの画像撮像装置４４と物体特性データベース２と接続される画像認識手段４５と、インピーダンス制御手段４と物体特性データベース２と接続される物体重量推定手段４８と、インピーダンス制御手段４と物体特性データベース２と接続される干渉判断手段５１と、干渉判断手段５１に接続される環境マップデータベース５２と、物体特性データベース２とキーボードやマウスやマイクなどの入力装置（図示せず）と接続される属性データ入力ＩＦ（インターフェース）４９と、ＲＦタグ受信機５４と画像認識手段４５と物体特性データベース２と接続される把持状態検出手段５３とを備えて、それぞれの手段や部材でそれぞれの機能を奏するとともに、ＲＦタグ受信機５４により読み取られた把持物体３８のＲＦタグ３３の情報を物体特性データベース２に入力するとともに、インターネット４６を通じて外部のＷＥＢにある物品情報データベース４７にアクセスして物体特性データを物体特性データベース２に入力する機能をも有している。
【００５６】
次に、物体特性データベース２の詳細について説明する。物体特性データベース２には、例えばロボットアーム５が設置された屋内に存在する種々の物体３８に関する情報が予め登録されている。各物体３８にはＲＦタグ３３が配設されており、個別のＩＤ番号などのＩＤ情報がＲＦタグ３３に記録されている。ロボットアーム５のハンド６にはＲＦタグ３３の読み取り手段３４（例えばＲＦタグ受信機５４）が配設されており、制御装置１のインピーダンス制御手段４からの制御信号によりモータードライバ１８を介してハンド駆動用モーター６２の回転駆動制御によりハンド６を開閉して、ロボットアーム５のハンド６が物体３８を把持すると、把持された物体３８のＲＦタグ３３の情報が読み取り手段３４で読み取られ、把持した物体３８のＩＤ番号が何であるかが読み取り手段３４により特定され、把持された物体３８のＩＤ番号情報が物体特性収集手段５０を介して物体特性データベース２に入力される。すると、物体特性データベース２は、特定された特定されたＩＤ番号に対応する物体３８の特性データを物体特性呼応インピーダンス設定手段３に送出する。
【００５７】
物体特性データベース２の保有している情報は、図４に示すような物理特性情報と属性情報の特性一覧表３０の形で物体個別の特性データが記録されている。物体個別の特性データは、図４にあるように、物体個別のＩＤ番号と、ＩＤ番号に相当する物理特性情報の一例としての物体の重量情報、寸法情報、及び硬度情報、並びに、属性情報の一例としての危険度情報で構成される。これらの、重量情報、寸法情報、硬度情報、危険度情報のデータは、予め測定し、評価し、データベースとして物体特性データベース２に格納されている。
【００５８】
物体特性データベース２の寸法情報に関しては、画像撮像装置４４及び画像認識手段４５を設ければ、その画像撮像装置４４で得られた画像データを基に画像認識手段４５による画像認識を行うことにより、物体３８の寸法を割り出し、寸法情報を物体特性データベース２に新たに蓄積あるいは更新することも可能である。
【００５９】
物体特性データベース２の重量情報に関しては、ロボットアーム５の手首部７に力センサーを配設するか、あるいは、後述する力推定手段２４を利用すれば、物体重量推定手段４８により、ロボットアーム５で把持した物体３８の重量が推定可能であり、新たに重量情報を物体特性データベース２に蓄積することができる。また、例えば、ロボットアーム５で把持された鍋に対して水が注入されるとき、注入された水による物体の重量の増加を物体重量推定手段４８により推定することもできるので、重量の増減による重量情報の更新にも対応可能である。
【００６０】
物体特性データベース２の硬度情報に関しては、把持物体３８の硬度に応じてレベル１〜５の５段階評価がなされる。評価値は、物体３８の材質をもとに、例えば、金属で形成された物体は最も硬度の高い「レベル５」、プラスチック等の樹脂で形成された物体は中度の「レベル３」、紙やタオルなどの柔らかい物体で形成された物体は最も硬度の低い「レベル１」といったように評価され、硬度情報として記録されている。また、硬度は壊れやすさという観点での評価も可能である。ガラスコップや陶磁器のように、他の物体にぶつけたりすると割れる危険が高いものを「レベル５」とすることも考えられる。これらの硬度情報は、予め人間が判断するか、物体のＲＦタグ３３に記録されているＩＤ情報から自動的に判断し、レベルの評価、設定を行い、属性データ入力ＩＦ４９を通じて物体特性データベース２への入力を行う。
【００６１】
物体特性データベース２の危険度情報に関しては、例えば、レベル１〜５の５段階の評価値で記録されている。評価値の具体例としては、刃物のように危険性が高く、ロボットアーム５での取り扱いに最も注意を有すると思われる物体を最も危険度の高い「レベル５」とし、書類やタオルなど軽く、柔らかくて人に衝突しても危害を与える恐れが全くないと考えられる物体を最も危険度の低い「レベル１」とする。これらの危険度情報は、予め、人間が判断し、レベルの評価、設定を行い、属性データ入力ＩＦ４９を通じて物体特性データベース２への入力を行う。あるいは、干渉判断手段５１で、把持すべき物体３８が壁面や家具等に近くにあり、把持すべき物体３８と壁面や家具等との干渉の危険があると判断された把持物体の場合には、危険度を高く設定する。ここで、把持すべき物体３８が壁面や家具等に近くにあるか否かは、例えば、環境マップデータベース５２に蓄積された環境マップ情報に、把持すべき物体３８の位置情報も蓄積されている場合には、環境マップデータベース５２からその位置情報を取り込めばよいし、そのような位置情報が環境マップデータベース５２に蓄積されていない場合には、把持すべき物体３８をカメラなどの画像撮像装置４４で撮像し、取得した画像データを画像認識手段４５で画像認識を行い、物体特性データベース２に一旦蓄積し、蓄積された画像認識結果を参照して、干渉判断手段５１で把持すべき物体３８の位置情報を推定して判断するようにしてもよい。
【００６２】
さらに、例えば、図９に示すように、トレイ３９をロボットアーム５で把持し、トレイ３９の上にコップ４０を載せているような把持状態の場合、ロボットアーム５と人間（例えば手１００）との接触でトレイ３９が傾くと、コップ４０がトレイ３９から矢印１０１のように落下する恐れがあるため、ＲＦタグ受信機５４によるＲＦタグ３３のＩＤ番号などのＩＤ情報を使った把持物体の検出で、トレイ３９のＲＦタグ３３とコップ４０のＲＦタグ３３が同時にＲＦタグ受信機５４で検出された場合、又は、画像認識手段４５の画像認識結果よりトレイ３９にコップ４０が載置されている情報が相対的位置関係情報として得られる場合には、トレイ３９の上にコップ４０を載せて運搬していると、把持状態検出手段５３において推論し、危険度を高く設定する（図１４参照）。
【００６３】
また、物体特性データベース２のすべての情報は、物体特性収集手段５０により、インターネット４６を通じて、外部のウェブサーバなどにある物品情報データベース４７にアクセスすることで物体特性データを入手し、物体特性データベース２内の各情報を更新する事も可能である。
【００６４】
次に、物体特性呼応インピーダンス設定手段３の詳細について説明する。物体特性呼応インピーダンス設定手段３では、物体特性データベース２の運搬特性情報に基づき、把持している物体３８に応じて、ロボットアーム５の機械インピーダンス設定値の設定を行う。機械インピーダンス設定値の設定パラメータとしては、慣性Ｍ、粘性Ｄ、剛性Ｋがある。機械インピーダンス設定値の各パラメータの設定は以下の評価式に基づいて行う。
【００６５】
【数１】
2007080733.tif 000037
【００６６】
【数２】
2007080733.tif 000038
【００６７】
【数３】
2007080733.tif 000039
【００６８】
上記式（１）〜（３）中のＫＭｍ、ＫＭｌ、ＫＭｋ、ＫＭｄ、ＫＤｍ、ＫＤｌ、ＫＤｋ、ＫＤｄ、ＫＫｍ、ＫＫｌ、ＫＫｋ、ＫＫｄはゲインであり、それぞれ、ある定数値である。
【００６９】
物体特性呼応インピーダンス設定手段３は、上記式（１）、（２）、（３）に基づき計算した機械インピーダンスパラメータの慣性Ｍ、粘性Ｄ、剛性Ｋをインピーダンス制御手段４へと出力する。
【００７０】
上記式（１）〜（３）に従えば、ゲインＫＭｍ等を適切に設定することにより、例えば重量の重い物体に対しては、式（１）により、慣性Ｍが大きく設定されることになり、ロボットアーム５は把持物体３８の重量に比例した重量感を持つことになる結果、ロボットアーム５を動かすには大きな力が必要になり、少しぐらい手でロボットアーム５を押しても動かなくなる（発生する加速度が小さい）。逆に、重量の軽い物体に対しては、式（１）により、慣性Ｍが小さく設定されることになり、ロボットアーム５は把持物体３８の重量に比例した重量感を持つことになる結果、弱い力で容易にロボットアーム５が動くようになる（発生する加速度が大きい）。また、刃物のように危険度を高く設定された物体の場合には、粘性Ｄ及び剛性Ｋが大きくなるように設定されることになり、ロボットアーム５の動きに抵抗感や硬さが生じ、動きにくくなる。逆に、タオルなどのように危険度を低く設定された物体の場合には、粘性Ｄ及び剛性Ｋが小さくなるように設定されることになり、ロボットアーム５の動きに抵抗感や硬さがなく、動きやすくなる。
【００７１】
複数の物体を同時に把持している場合、重量に関しては同時に把持している物体の重量を加算した総重量を使用して機械インピーダンス設定値の計算を行う。
【００７２】
また、寸法に関しては、同時に把持している物体の寸法のうち、最大のものを使用して機械インピーダンス設定値の計算を行う。
【００７３】
また、硬度に関しては、同時に把持している物体の硬度のうち、最大のものを使用して機械インピーダンス設定値の計算を行う。
【００７４】
また、危険度に関しては、同時に把持している物体の危険度のうち、最大のものを使用して機械インピーダンス設定値の計算を行う。
【００７５】
図３にインピーダンス制御手段４のブロック図を示す。インピーダンス制御手段４は、物体特性呼応インピーダンス設定手段３の設定した慣性Ｍ、粘性Ｄ、剛性Ｋの設定値に基づき設定されたロボットアーム５の機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御する。
【００７６】
次に、図３を使い、インピーダンス制御手段４の詳細について説明する。図３において、５は制御対象である図２に示したロボットアームである。ロボットアーム５からは、それぞれの関節軸のエンコーダ４３により計測された関節角の現在値（関節角度ベクトル）ベクトルｑ＝［ｑ１，ｑ２，ｑ３，ｑ４，ｑ５，ｑ６］Ｔが出力され、カウンタボード２２によりインピーダンス制御手段４に取り込まれる。ただし、ｑ１，ｑ２，ｑ３，ｑ４，ｑ５，ｑ６は、それぞれ、第１関節部１１、第２関節部１２、第３関節部１３、第４関節部１４、第５関節部１５、第６関節部１６の関節角度である。
【００７７】
２３は目標軌道生成手段であり、目標とするロボットアーム５の動作を実現するための手先位置及び姿勢目標ベクトルｒｄが出力される。図１３に示すように、目標とするロボットアーム５の動作は、目的とする作業に応じて事前にそれぞれの時間（ｔ＝０、ｔ＝ｔ１、ｔ＝ｔ２、・・・）でのポイントごとの位置（ｒｄ０、ｒｄ１、ｒｄ２、・・・）が与えられており、目標軌道生成手段２３は、多項式補間を使用し、各ポイント間の軌道を補完し、手先位置及び姿勢目標ベクトルｒｄを生成する。
【００７８】
２４は力推定手段であり、人間等とロボットアーム５の接触によってロボットアーム５に加わる外力を推定する。力推定手段２４には、モータードライバ１８の電流センサーで計測された、ロボットアーム５の各関節部を駆動するモーター４２を流れる電流値ｉ＝［ｉ１，ｉ２，ｉ３，ｉ４，ｉ５，ｉ６］ＴがＡ／Ｄボード２１を介して取り込まれ、また、関節角の現在値ｑがカウンタボード２２を介して取り込まれるとともに、後述する近似逆運動学計算手段２８からの関節角度誤差補償出力ｕｑｅが取り込まれる。力推定手段２４は、オブザーバーとして機能し、以上の電流値ｉ、関節角の現在値ｑ、関節角度誤差補償出力ｕｑｅより、ロボットアーム５に加わる外力により各関節部に発生するトルクτｅｘｔ＝［τ１ｅｘｔ、τ２ｅｘｔ、τ３ｅｘｔ、τ４ｅｘｔ、τ５ｅｘｔ、τ６ｅｘｔ］Ｔを算出する。そして、Ｆｅｘｔ＝Ｊｖ（ｑ）−Ｔτｅｘｔ−［０，０，ｍｇ］Ｔによりロボットアーム５の手先における等価手先外力Ｆｅｘｔに換算し出力する。ここで、Ｊｖ（ｑ）は、
【００７９】
【数４】
2007080733.tif 000040
を満たすヤコビ行列である。ただし、ｖ＝［ｖｘ、ｖｙ、ｖｚ、ωｘ、ωｙ、ωｚ］Ｔであり、（ｖｘ、ｖｙ、ｖｚ）は手先座標系３６でのロボットアーム５の手先の並進速度、（ωｘ、ωｙ、ωｚ）は手先座標系３６でのロボットアーム５の手先の角速度である。また、ｍは把持している物体の重さであり、ｇは把持している物体の重力加速度である。把持物体の重さｍの値は、物体特性データベース２から入手することができる。また、ロボットアーム５により実際に把持を行い、そのときの力推定手段２４の等価手先外力Ｆｅｘｔの推定結果より把持物体の重さｍの値を算出する事も可能である。
【００８０】
３７は接触検知手段であり、力推定手段２４の推定する等価手先外力Ｆｅｘｔを観測し、ロボットアーム５と人間や他の物体との接触を検知する。接触が発生すると等価手先外力Ｆｅｘｔが変化するので、その変化量が、ある値ΔＦを越えたときに接触が発生したと接触検知手段３７で検知する。接触を接触検知手段３７で検知すると、接触検知手段３７は接触を検知した事をインピーダンス計算手段２５に通知する。
【００８１】
インピーダンス計算手段２５は、ロボットアーム５に機械インピーダンス設定値への上記ロボットアームの機械インピーダンスの値の制御を実現する機能を果たす部分であり、ロボットアーム５と人間や他の物体との接触を接触検知手段３７で検知していない通常動作の際は０を出力する。一方、ロボットアーム５と人間や他の物体との接触を接触検知手段３７で検知し、接触検知手段３７から接触の通知を受けると、物体特性呼応インピーダンス設定手段３で設定されたインピーダンスパラメータである慣性Ｍ、粘性Ｄ、剛性Ｋと、関節角の現在値ｑと、力推定手段２４が推定した外力Ｆｅｘｔより、ロボットアーム５に機械インピーダンス設定値への上記ロボットアームの機械インピーダンスの値の制御を実現するための手先位置及び姿勢目標補正出力ｒｄΔを以下の式（４）により計算し、出力する。手先位置及び姿勢目標補正出力ｒｄΔは、目標軌道生成手段２３の出力する手先位置及び姿勢目標ベクトルｒｄに加算され、手先位置及び姿勢補正目標ベクトルｒｄｍが生成される。
【００８２】
【数５】
2007080733.tif 000041
ただし、
【００８３】
【数６】
2007080733.tif 000042
【００８４】
【数７】
2007080733.tif 000043
【００８５】
【数８】
2007080733.tif 000044
であり、ｓはラプラス演算子である。
【００８６】
２６はロボットアーム５からのそれぞれの関節軸のエンコーダ４３により計測された関節角の現在値ｑである関節角度ベクトルｑがカウンタボード２２を介して入力される順運動学計算手段であり、ロボットアーム５の関節角度ベクトルｑから手先位置及び姿勢ベクトルｒへの変換の幾何科学的計算を行う。
【００８７】
２７は位置誤差補償手段であり、ロボットアーム５において計測される関節角度ベクトルｑより順運動学計算手段２６により計算される手先位置及び姿勢ベクトルｒと、手先位置及び姿勢補正目標ベクトルｒｄｍとの誤差ｒｅが入力され、位置誤差補償出力ｕｒｅが近似逆運動学計算手段２８に向けて出力される。
【００８８】
近似逆運動学計算手段２８では、近似式ｕｏｕｔ＝Ｊｒ（ｑ）−１ｕｉｎにより、逆運動学の近似計算を行う。ただし、Ｊｒ（ｑ）は、
【００８９】
【数９】
2007080733.tif 000045
の関係を満たすヤコビ行列、ｕｉｎは近似逆運動学計算手段２８への入力、ｕｏｕｔは近似逆運動学計算手段２８からの出力であり、入力ｕｉｎを関節角度誤差ｑｅとすれば、ｑｅ＝Ｊｒ（ｑ）−１ｒｅのように手先位置及び姿勢誤差ｒｅから関節角度誤差ｑｅへの変換式となる。したがって、位置誤差補償出力ｕｒｅが近似逆運動学計算手段２８に入力されると、その出力として、関節角度誤差ｑｅを補償するための関節角度誤差補償出力ｕｑｅが近似逆運動学計算手段２８から出力される。
【００９０】
関節角度誤差補償出力ｕｑｅは、Ｄ／Ａボード２０を介してモータードライバ１８に電圧指令値として与えられ、各モーター４２により各関節軸が正逆回転駆動されロボットアーム５が動作する。
【００９１】
以上のように構成されるインピーダンス制御手段４に関して、ロボットアーム５のインピーダンス制御動作の原理について説明する。
【００９２】
インピーダンス制御動作の基本は、位置誤差補償手段２７による手先位置及び姿勢誤差ｒｅのフィードバック制御（位置制御）であり、図３の点線で囲まれた部分が位置制御系２９になっている。位置誤差補償手段２７として、例えば、ＰＩＤ補償器を使用すれば、手先位置及び姿勢誤差ｒｅが０に収束するように制御が働き、目標とするロボットアーム５のインピーダンス制御動作を実現することができる。
【００９３】
接触検知手段３７がロボットアーム５と人間や他の物体との接触を検知した場合、上記説明した位置制御系２９に対し、インピーダンス計算手段２５により手先位置及び姿勢目標補正出力ｒｄΔが加算され、手先位置及び姿勢の目標値の補正が行われる。このために、上記した位置制御系２９は、手先位置及び姿勢の目標値が本来の値より微妙にずれることになり、結果的に、上記ロボットアーム５の機械インピーダンスの値を上記適切に設定された設定値に制御する動作が実現される。手先位置及び姿勢目標補正出力ｒｄΔは式（４）により算出されるため、上記ロボットアーム５の慣性Ｍ、粘性Ｄ、剛性Ｋの機械インピーダンスの値を上記適切に設定された設定値に制御する動作が実現される。
【００９４】
以上の原理に基づく制御プログラムの実際の動作ステップについて、図５のフローチャートに基づいて説明する。
【００９５】
ステップ１では、それぞれのエンコーダ４３により計測された関節角度データ（関節変数ベクトル又は関節角度ベクトルｑ）が制御装置１に取り込まれる。
【００９６】
次いで、ステップ２では、ロボットアーム５の運動学計算に必要なヤコビ行列Ｊｒ等の計算が近似逆運動学計算手段２８により行われる。
【００９７】
次いで、ステップ３（順運動学計算手段２６での処理）では、ロボットアーム５からの関節角度データ（関節角度ベクトルｑ）から、ロボットアーム５の現在の手先位置及び姿勢ベクトルｒが、順運動学計算手段２６により計算される。
【００９８】
次いで、ステップ４では、制御装置１のメモリ（図示せず）に予め記憶されていたロボットアーム５の動作プログラムに基づき、目標軌道計算手段２３によりロボットアーム１０の手先位置及び姿勢目標ベクトルｒｄが計算される。
【００９９】
次いで、ステップ５（力推定手段２４での処理）では、モーター４２の駆動電流値ｉと、関節角度データ（関節角度ベクトルｑ）と、関節角度誤差補償出力ｕｑｅから、ロボットアーム５の手先における等価手先外力Ｆｅｘｔが、力推定手段２４により計算される。
【０１００】
次いで、ステップ６（接触検知手段３７での処理）では、力推定手段２４により計算されたロボットアーム５の手先における等価手先外力Ｆｅｘｔよりロボットアーム５と人間や他の物体との接触の有無を判断し、接触検知手段３７で接触有りと検知した場合にはステップ７へ、接触無しと検知した場合にはステップ７’へ処理を進める。
【０１０１】
次いで、ステップ７（インピーダンス計算手段２５での処理）では、ロボットアーム５と人間や他の物体との接触が有ると接触検知手段３７で検知した場合に、物体特性呼応インピーダンス設定手段３において設定された機械インピーダンスパラメータの慣性Ｍ、粘性Ｄ、剛性Ｋと、関節角度データ（関節角度ベクトルｑ）と、力推定手段２４により計算されたロボットアーム５に加わる等価手先外力Ｆｅｘｔから、手先位置及び姿勢目標補正出力ｒｄΔが、インピーダンス計算手段２５により計算される。その後、ステップ８に進む。
【０１０２】
ステップ７’（インピーダンス計算手段２５での処理）では、ロボットアーム５と人間や他の物体との接触が無いと接触検知手段３７で検知した場合に、インピーダンス計算手段２５で、手先位置及び姿勢目標補正出力ｒｄΔを０ベクトルとする。その後、ステップ８に進む。
【０１０３】
ステップ８（位置誤差補償手段２７での処理）では、手先位置及び姿勢目標ベクトルｒｄと手先位置及び姿勢目標補正出力ｒｄΔの和である手先位置及び姿勢補正目標ベクトルｒｄｍと、現在の手先位置及び姿勢ベクトルｒとの差である手先位置及び姿勢の誤差ｒｅが位置誤差補償手段２７で計算される。位置誤差補償手段２７の具体例としてはＰＩＤ補償器が考えられる。定数の対角行列である比例、微分、積分の３つのゲインを適切に調整することにより、位置誤差が０に収束するように制御が働く。
【０１０４】
次いで、ステップ９（近似逆運動学計算手段２８での処理）では、ステップ２で計算したヤコビ行列Ｊｒの逆行列を近似逆運動学計算手段２８で乗算することにより、位置誤差補償出力ｕｒｅを、手先位置及び姿勢の誤差に関する値から関節角度の誤差に関する値である関節角度誤差補償出力ｕｑｅに、近似逆運動学計算手段２８により変換する。
【０１０５】
次いで、ステップ１０では、関節角度誤差補償出力ｕｑｅが、近似逆運動学計算手段２８からＤ／Ａボード２０を通じ、モータードライバ１８に与えられ、それぞれのモーター４２を流れる電流量を変化させることによりロボットアーム５のそれぞれの関節軸の回転運動が発生する。
【０１０６】
以上のステップ１〜ステップ１０が制御の計算ループとして繰り返し実行されることにより、ロボットアーム５の動作の制御、すなわち、ロボットアーム５の機械インピーダンスの値を上記適切に設定された設定値に制御する動作を実現することができる。
【０１０７】
次に、本発明の第１実施形態における制御装置１の全体的な動作について、ロボットアーム５で物体３８を把持しながら運搬する作業を、１つの具体的な例として、図６のフローチャートに基づいて説明する。
【０１０８】
まず、ステップＡでは、ロボットアーム５のハンド６で物体３８を把持するための目標軌道を目標軌道生成手段２３が生成し、図５に示すステップ７’を通る制御フローによりロボットアーム５の手先位置及び姿勢の制御が実行されるとともに、制御装置１によるハンド駆動用モーター６２が駆動制御されることにより、ハンド６を開いた状態で物体３８に近づけて、物体３８を把持可能な位置にハンド６を位置させ、ハンド６を閉じて物体３８を把持することにより、物体３８の把持動作を実現することができる（図７Ａに示す把持動作参照。）。なお、上記目標軌道を生成するときに必要な、把持する物体３８の位置情報は、前記したように、環境マップデータベース５２に予め蓄積されているか、又は、画像撮像装置４４と画像認識手段４５とを利用して取得することができる。これにより、ロボットアーム５が固定の場合には、ロボットアーム５の固定された位置の情報と、上記把持する物体３８の位置情報とから、物体３８を把持するための目標軌道を目標軌道生成手段２３で生成することができる。また、ロボットアーム５が移動装置などにより移動する場合には、基準位置に対するロボットアーム５の現在位置情報を、例えば、画像撮像装置４４と画像認識手段４５とを利用して適宜取得しておき、取得された現在位置情報と、上記把持する物体３８の位置情報とから、物体３８を把持するための目標軌道を目標軌道生成手段２３で生成することができる。
【０１０９】
次いで、ステップＢでは、物体３８に配設されたＲＦタグ３３の情報を、ハンド６に配設されたＲＦタグ受信機５４で読み取り、ＲＦタグ受信機５４で物体３８のＩＤ番号などのＩＤ情報が特定される。
【０１１０】
次いで、ステップＣでは、ＲＦタグ受信機５４で読み取ったＩＤ番号などのＩＤ情報より、物体特性データベース２において物体３８の重量、寸法等の特性データが読み出され、物体特性データベース２から物体特性呼応インピーダンス設定手段３へと転送される。
【０１１１】
次いで、ステップＤでは、物体特性呼応インピーダンス設定手段３において、物体特性データベース２より転送された特性データを基に、物体３８に呼応する機械インピーダンス設定値が上記式（１）〜式（３）により計算される。
【０１１２】
次いで、ステップＥでは、ロボットアーム５のハンド６で物体３８を把持しながら運搬するための目標軌道を目標軌道生成手段２３が生成し、図５に示すステップ７’を通る制御フローによりロボットアーム５の手先位置及び姿勢の制御が実行され、運搬動作が実現する（図７Ｂに矢印で示す運搬動作参照。）。
【０１１３】
次いで、ステップＦでは、ロボットアーム５が人や他の物体と接触していないかが接触検知手段３７で検知され（接触検知手段３７での検知動作）、接触が接触検知手段３７で検知され無い場合はステップＧへ、接触が接触検知手段３７で検知された場合（図７Ｃに示す手１００とロボットアーム５との接触動作が検知された場合）はステップＨへ、動作が移行する。
【０１１４】
ステップＧでは、運搬動作が完了したかどうかの判定が目標軌道生成手段２３で行われる。運搬動作が完了していない場合には目標位置までの目標軌道の計算が継続し、運搬動作を継続する一方、運搬動作が完了した場合には目標位置までの目標軌道の計算が完了し、ｒｄとして目的地の位置が出力され、かつ、ロボットアーム５の実際の手先位置ｒがｒｄと略一致した場合に、目標位置に達したと判断する。物体３８が目標位置すなわち目的地へと運搬されて、運搬が完了した場合にはステップＩへ移行する。運搬動作が完了せず、運搬途中の場合は、ステップＥの運搬動作が継続される。
【０１１５】
ステップＨでは、インピーダンス制御手段４により、上記ロボットアームの機械インピーダンスの値が、物体特性呼応インピーダンス設定手段３において計算された機械インピーダンス設定値となるように上記ロボットアーム５の機械インピーダンスの値を制御するインピーダンス制御動作が行われ（インピーダンス制御手段４での動作）、接触検知手段３７で接触が検知されている間はインピーダンス制御動作が継続される。
【０１１６】
ステップＩでは、把持物体３８の運搬が完了すると、制御装置１の制御によりロボットアーム５のハンド６が開き、物体３８が把持状態から開放される（図７Ｄに示す把持解除動作参照。）。
【０１１７】
次いで、ステップＪでは、目標軌道生成手段２３より動作完了告知信号２０１がインピーダンス計算手段２５へと出力され、設定されていた機械インピーダンス設定値がインピーダンス計算手段２５によりクリアされる。
【０１１８】
以上の動作ステップＡ〜ステップＪにより、ロボットアーム５による物体の運搬作業が実現し、接触を接触検知手段３７で検知した際にはインピーダンス制御動作への切換が実現する。
【０１１９】
以上のように、物体特性データベース２、物体特性呼応インピーダンス設定手段３、インピーダンス制御手段４を備えることにより、ロボットアーム５と人間や他の物体との接触を接触検知手段３７で検知した際には、剛性の高い位置制御の状態から、速やかにインピーダンス制御の状態に移行し、安全性を確保できる（言い換えれば、十分に柔軟性を発揮できる状態に移行し、人との接触によって、ロボットアーム５が柔軟に動くことにより安全性が発揮できる）ようになると共に、把持物体の特性に応じてロボットアーム５の機械インピーダンス設定値を適切に変化させることができるようになる。具体的には、例えば、トレイにコップ載せて運搬している場合には、人の接触が生じてロボットアーム５が柔軟に動いても、手先の姿勢は維持されるように制御されるので、トレイは水平に維持され、コップを落下させることはない。
【０１２０】
したがって、図１５に示すように、ロボットアーム５の手先の目標軌道ＴＡに対し、人間（例えば、手１００）との接触を接触検知手段３７で検知すると、適切な機械インピーダンス設定値の設定を行わなかった場合には、軌道ＴＣの様になり、ロボットアーム５のハンド６に把持された物体３８やハンド６と家具５５等の他の物体との衝突が発生する可能性があるのに対し、上記第１実施形態のように適切なインピーダンス設定値の設定を行う場合には、軌道ＴＢの様に、目標軌道ＴＡからのずれ量を小さくでき、ロボットアーム５のハンド６に把持された物体３８やハンド６と、家具５５等の他の物体との衝突の危険を回避できる。
【０１２１】
例えば、把持物体３８の重量に応じて、ロボットアーム５の機械インピーダンス設定値を変化させることができるので、重量に比例するように剛性Ｋを特性呼応インピーダンス設定手段３により設定すれば、すなわち、特性呼応インピーダンス設定手段３によりゲインＫＫｍをＫＫｍ＞０と設定すれば、重い物体３８をハンド６が把持している場合には、バネ性が強くなり抵抗が大きくなるため、人間がロボットアーム５を手１００で押しのける際に、必要以上にロボットアーム５を動かし、把持した重量の大きい物体３８が他の家具５５などの他の物体や平面などに衝突する危険性を低減することができる。
【０１２２】
また、把持物体３８の重量に比例するように慣性Ｍを特性呼応インピーダンス設定手段３により大きく設定すれば、すなわち、特性呼応インピーダンス設定手段３によりゲインＫＭｍをＫＭｍ＞０と設定すれば、人間がロボットアーム５を手１００で押しのける際に、人間が物体３８の重さの感覚を感じ取ることができ、不必要に力を込めて押すことを防ぐことができる。
【０１２３】
また、把持物体３８の例として刃物のように危険度の高い「レベル５」と設定された物体３８に対しては、例えば、ゲインＫＤｄの設定値を大きく特性呼応インピーダンス設定手段３により設定しておけば、特性呼応インピーダンス設定手段３により粘性Ｄが危険度に応じて大きく設定されることになり、ロボットアーム５に粘性による抵抗が発生し、人との接触により刃物等が不用意に動いてしまう危険性を防ぎ、安全性を高めることができる。
【０１２４】
また、把持物体３８の例として熱湯が入った鍋を把持しながら運搬する場合には、例えば、ロボットアーム５のハンド付近に赤外線センサー（図示せず）を配設し、温度を赤外線センサーで検知することで高温であることを検知し、特性呼応インピーダンス設定手段３により物体特性データベース２の危険度データを最も危険度の高い「レベル５」とする。そのように設定することにより、物体特性呼応インピーダンス設定手段３及びインピーダンス制御手段４が、粘性を大きくし、ロボットアーム５を動きにくく制御するので、人間に手で押されても、ロボットアーム５が激しく動いて熱湯を飛び散らすといったことを防ぐことが可能となる。
【０１２５】
以上のように、本発明の第１実施形態にかかる制御装置１によれば、人間との接触が発生しても、人間へ接触のダメージを与えることなく、かつ、接触によりロボットアーム５が動いて、把持物体３８を落下させたり他の人間や他の物体に接触しダメージを与えることのない、安全なロボット制御を実現できる制御装置が提供される。
【０１２６】
（第２実施形態）
本発明の第２実施形態における、ロボットアームの制御装置の基本的な構成は、図１、図２に示した第１実施形態の場合と同様であるので、共通部分の説明は省略し、異なる部分についてのみ以下、詳細に説明する。
【０１２７】
図８は物体特性データベース２の把持規則表を説明する図である。物体特性データベース２は、図４に示す特性一覧表３０に加え、図８に示す、物体の位置及び姿勢の拘束条件情報が記された把持規則表３１を有している。把持規則表３１には、位置維持、姿勢維持、高さ維持の項目があり、それぞれの項目に対し、１又は０の数値が予め記録されている。
【０１２８】
姿勢維持の項目が１の場合、物体の姿勢を動かさずに固定するという姿勢の拘束条件の情報があることを示しており、ロボットアーム５のハンド６の手先での回転（φ、θ、ψ）方向の機械インピーダンス設定値が特性呼応インピーダンス設定手段３により大きく設定され、手先すなわちハンド６の姿勢が変動しにくいように制御される。
【０１２９】
例えば、図９に示すように、トレイ３９をハンド６で把持し、把持されたトレイ３９の上にコップ４０を載せているような把持状態の場合、ロボットアーム５と人間との接触でトレイ３９が傾くとコップ４０が矢印１０１のように落下する恐れがあるため、手先であるハンド６の姿勢を維持し、トレイ３９の水平を保つために、把持規則表３１の姿勢維持の項目が１に設定される。
【０１３０】
把持規則表３１の項目の設定は、把持状態検出手段５３の検出結果に基づいて行われる。例えば、ＲＦタグ受信機５４によりトレイ３９とコップ４０が検出された場合、把持状態テーブルを参照し、トレイ３９の上にコップ４０が載置された把持状態であると推論し、把持規則表３１の姿勢維持の項目が１に設定される。
【０１３１】
このようにトレイ３９をハンド６で把持し、トレイ３９の上にコップ４０を載せているような把持状態にあるかどうかの判断は、画像撮像装置４４で取得された画像データを画像認識手段４５で画像認識することにより可能であるし（すなわち、画像認識手段４５の画像認識結果より、トレイ３９にコップ４０が載置されている情報が相対的位置関係情報として得られれば、トレイ３９の上にコップ４０を載せているような把持状態にあると判断することができ）、また、ＲＦタグによるＩＤ番号などのＩＤ情報を使った把持物体の検出でも、例えば、トレイ３９とコップ４０が同時に検出された場合には、トレイ３９の上にコップ４０を載せて運搬していると、把持状態検出手段５３により推論し、把持状態検出手段５３により上記把持状態が推論された場合には、姿勢維持の項目を１とすると、把持規則表３１に予め記録しておいても良い。
【０１３２】
また、位置維持の項目が１の場合、ロボットアーム５の手先であるハンド６での並進（ｘ、ｙ、ｚ）方向の機械インピーダンス設定値が特性呼応インピーダンス設定手段３により大きく設定され、手先であるハンド６の位置が変動しにくいように制御される。
【０１３３】
例えば、ロボットアーム５の手先であるハンド６の近くに家具等があり、手先であるハンド６が並進（ｘ、ｙ、ｚ）方向に進むと、家具等に衝突する危険がある場合に、位置維持の項目を１とすると把持規則表３１に予め記録しておいても良い。
【０１３４】
また、高さ維持の項目が１の場合、ロボットアーム５の手先であるハンド６でのｚ方向の機械インピーダンス設定値が特性呼応インピーダンス設定手段３により大きく設定され、手先であるハンド６の位置する高さが維持される。
【０１３５】
例えば、図１２に示すように、バッグ４１をハンド６にぶら下げているような把持状態の場合、ハンド６の手先位置が下がってしまうと、バッグ４１の底面が床面に接触する危険があるため、高さ維持の項目を１とすると把持規則表３１に予め記録しておいても良い。この場合、ロボットアーム５の手先であるハンド６での−ｚ方向、すなわち、鉛直方向下向きの機械インピーダンス設定値が特性呼応インピーダンス設定手段３により大きく設定され、手先であるハンド６の位置が下がりにくいように制御される。
【０１３６】
次に、姿勢維持の場合を例に取り、機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御する実現方法について説明する。
【０１３７】
手先位置及び姿勢目標補正出力ｒｄΔは、インピーダンス計算手段２５において、以下の式（８）により計算される。
【０１３８】
【数１０】
2007080733.tif 000046
ただし、
【０１３９】
【数１１】
2007080733.tif 000047
であり、（αｘ、αｙ、αｚ、αφ、αθ、αψ）はインピーダンス制御係数である。
【０１４０】
ロボットアーム５と人等との接触が無く、通常の位置制御モードにあるときは、インピーダンス制御係数のすべての成分（αｘ、αｙ、αｚ、αφ、αθ、αψ）は、特性呼応インピーダンス設定手段３により０に設定される。このとき、式（８）でインピーダンス計算手段２５により計算される手先位置及び姿勢目標補正出力ｒｄΔの各成分は０になり、手先位置及び姿勢目標の補正は働かず、インピーダンス制御手段４は位置制御系として動作する。
【０１４１】
ロボットアーム５と人等との接触が発生し、接触検知手段３７でその接触が検知されると、インピーダンス制御係数の一部の成分がインピーダンス計算手段２５により変更される。例えば、接触検知時に物体特性データベース２の把持規則表３１を参照して把持規則表３１の姿勢維持の項目が１である場合、特性呼応インピーダンス設定手段３により、位置に対応する成分（αｘ、αｙ、αｚ）は１に切り換えられ、姿勢に対応する成分（αφ、αθ、αψ）は０が維持される。これにより、手先の位置（ｘ、ｙ、ｚ）に関しては剛性Ｋとなるようにインピーダンス制御手段４により制御され、手先の姿勢（φ、θ、ψ）は位置制御がインピーダンス制御手段４により維持される。
【０１４２】
したがって、例えば、慣性Ｍ＝０、Ｄ＝０となるようにし、剛性Ｋとして十分な柔軟性を発揮できる設定値に機械インピーダンスを特性呼応インピーダンス設定手段３により設定しておけば、ロボットアーム５と人との接触によって、手先であるハンド６の位置が柔軟に動くことにより安全性が発揮され、一方、手先であるハンド６の姿勢は維持されるので、例えば、トレイ３９にコップ４０を載せて運搬している場合には、人の接触が生じてもトレイ３９は水平に維持され、コップ４０を落下させることはない。
【０１４３】
このように、インピーダンス制御係数により、上記ロボットアーム５の機械インピーダンスの値を、手先であるハンド６の方向別に機械インピーダンス設定値に制御できるようにすることで、人との接触に対する安全性を確保しつつ、把持物体や周囲環境などの外環境に対する安全性を同時に満たすことができる制御が可能となる。
【０１４４】
なお、本第２実施形態では、把持規則表３１を図８のとおりとしたが、これに限られるわけではなく、図１０のように位置維持成分、姿勢維持成分、さらに、±の方向ごとに機械インピーダンス設定値の切り換えの動作の仕方を指定する形式でも同様の効果が発揮できるとともに、さらに細かく、機械インピーダンス設定値の切り換えの動作を指定することができる。
【０１４５】
（第３実施形態）
本発明の第３実施形態における制御装置の基本的な構成は、上記した第２実施形態の場合と同様であるので、共通部分の説明は省略し、異なる部分についてのみ以下、詳細に説明する。
【０１４６】
図１１は、本発明の第３実施形態における、ロボットアームの制御装置のインピーダンス制御手段４Ａの構成を示すブロック図である。３２は方向別インピーダンス調整手段であり、物体特性呼応インピーダンス設定手段３の設定した機械インピーダンス設定値、及び、物体特性データベース２の把持規則表３１に基づき、位置誤差補償手段２７のフィードバックゲインを方向別に調整を行う機能を有する。
【０１４７】
本発明の第３実施形態における上記制御装置のインピーダンス制御手段４Ａの物体特性呼応インピーダンス設定手段３では剛性Ｋ及び粘性Ｄの設定を行い、慣性Ｍの設定は行わない。また、位置誤差補償手段２７はＰＤ補償器であり、位置誤差補償出力ｕｒｅは下記の（１０）式で計算される。
【０１４８】
【数１２】
2007080733.tif 000048
ただし、ＫＰは比例ゲイン行列、ＫＤは微分ゲイン行列であり、その対角成分が手先位置ベクトル
【０１４９】
【数１３】
2007080733.tif 000049
の各成分に対するゲインで構成される対角行列である。これらのゲインを調整（チューニング）することにより、適切な位置及び姿勢の制御性能を得ることができる。
【０１５０】
次に、動作について説明する。
【０１５１】
人や他の物体との接触を接触検知手段３７で検知していない場合には、方向別インピーダンス調整手段３２は動作せず、位置誤差補償手段２７は式（１０）で計算されるゲインにより動作し、ロボットアーム５の位置制御が実現する。
【０１５２】
一方、人や他の物体との接触を接触検知手段３７で検知した場合には、方向別インピーダンス調整手段３２は、位置誤差補償手段２７のゲインを以下の式（１１）及び式（１２）に基づいて調整を行う。
【０１５３】
【数１４】
2007080733.tif 000050
【０１５４】
【数１５】
2007080733.tif 000051
ただし、αは式（９）で与えられるインピーダンス制御係数、Ｉは単位行列である。したがって、位置誤差補償手段２７の位置誤差補償出力ｕｒｅは、方向別インピーダンス調整手段３２によってゲインが調整され、下記の（１３）式で計算される。
【０１５５】
【数１６】
2007080733.tif 000052
上記の式（１３）によれば、把持規則表３１で位置維持、姿勢維持あるいは、高さ維持と設定された場合に、αの対角成分（αｘ、αｙ、αｚ、αφ、αθ、αψ）のうち、対応する方向の成分が１と設定されるため、それらの方向に関しては位置制御のためのゲインＫｐ、ＫＤによるフィードバックがなされる事になるため、ロボットアーム５は位置制御モードの動作となる。
【０１５６】
一方、その他の方向成分では、ロボットアーム５は、物体特性呼応インピーダンス設定手段３の設定した機械インピーダンス設定値の剛性Ｋ及び粘性Ｄが使用されるため、剛性Ｋ、粘性Ｄの設定値に基づく制御モードとなる。したがって、例えば、剛性Ｋ＜Ｋｐとすれば、接触時には対応する方向の位置制御の比例ゲインが小さくなり、ロボットアーム５の剛性が低下することになる。また、粘性Ｄ＜ＫＤとすれば、接触時には対応する方向の位置制御の微分ゲインが小さくなり、ロボットアーム５の粘性が低下することになる。
【０１５７】
先に記載した第１実施形態の場合、これらの剛性Ｋ及び粘性Ｄの設定値は、それぞれ、剛性、粘性という物理特性を表す値そのものであったが、本第３実施形態の剛性Ｋ、粘性Ｄは直接、剛性、粘性を表すものではなく、ゲインを調整することにより擬似的に剛性、粘性を実現するものである。したがって、本第３実施形態における剛性Ｋ、粘性Ｄの具体的数値については、実験的に調整を行いながら適切な剛性、粘性が得られる値を探索することになる。
【０１５８】
以上のように、本発明の第３実施形態におけるロボットアームの制御装置では、位置誤差補償手段２７のゲインを調整することにより、手先の方向別に擬似的に機械インピーダンス設定値に上記ロボットアーム５の機械インピーダンスの値を制御することを実現することで、人との接触に対する安全性を確保しつつ、把持物体や外環境に対する安全性を同時に満たすことができる制御が可能となる。
【０１５９】
なお、上記第１実施形態では、物理特性情報を把持物体の重量情報、寸法情報、硬度情報としたが、これらに限られるわけではなく、温度など、その他の物理特性でもよい。
【０１６０】
また、上記第１実施形態では、属性情報を危険度情報としたが、これらに限られるわけではなく、重要度情報など、その他の属性情報でもよい。属性情報として重要度情報を選んだ場合には、例えば、記念品など大切な物品に対して重要度を高く設定すれば、ロボットアーム５の機械インピーダンス設定値が高く設定されるので、大切な物品を破損する危険度を低めることができる。
【０１６１】
なお、上記実施形態ではロボットアームを例に説明したが、本発明は、アームに限らず、車輪により動く移動ロボットや、２足歩行ロボット、多足歩行ロボットなどにも適用することができ、移動ロボットなどと人間との接触に関して同様の効果を発揮する。
【０１６２】
なお、上記様々な実施形態のうちの任意の実施形態を適宜組み合わせることにより、それぞれの有する効果を奏するようにすることができる。
【産業上の利用可能性】
【０１６３】
本発明は、家庭用ロボットなど人と接する可能性があるロボットのロボットアームの動作の制御を行なうロボットアームの制御装置及び制御方法、ロボットアームの制御装置を有するロボット、及びロボットアームの制御プログラムとして有用である。また、家庭用ロボットに限らず、産業用ロボットや、生産設備等における可動機構のロボットアームの制御装置及び制御方法、ロボットアームの制御装置を有するロボット、及びロボットアームの制御プログラムとしても適用が可能である。
【０１６４】
本発明は、添付図面を参照しながら好ましい実施形態に関連して充分に記載されているが、この技術の熟練した人々にとっては種々の変形や修正は明白である。そのような変形や修正は、添付した請求の範囲による本発明の範囲から外れない限りにおいて、その中に含まれると理解されるべきである。
【図面の簡単な説明】
【０１６５】
本発明のこれらと他の目的と特徴は、添付された図面についての好ましい実施形態に関連した次の記述から明らかになる。
【図１】図１は、本発明の第１実施形態における制御装置の概念を示すブロック図である。
【図２】図２は、本発明の第１実施形態におけるロボットアームの制御装置のハードウェア構成及び制御対象であるロボットアームの詳細構成を示す図である。
【図３】図３は、本発明の第１実施形態における制御装置のインピーダンス制御手段の構成を示すブロック図である。
【図４】図４は、物体特性データベースの特性一覧表を説明する図である。
【図５】図５は、本発明の第１実施形態における制御装置のインピーダンス制御手段での制御プログラムの動作ステップを表すフローチャートである。
【図６】図６は、本発明の第１実施形態における制御装置の全体的な動作ステップを表すフローチャートである。
【図７Ａ】図７Ａは、本発明の第１実施形態におけるロボットアームの制御装置の制御対象であるロボットアームの動作を説明する図である。
【図７Ｂ】図７Ｂは、本発明の第１実施形態におけるロボットアームの制御装置の制御対象であるロボットアームの動作を説明する図である。
【図７Ｃ】図７Ｃは、本発明の第１実施形態におけるロボットアームの制御装置の制御対象であるロボットアームの動作を説明する図である。
【図７Ｄ】図７Ｄは、本発明の第１実施形態におけるロボットアームの制御装置の制御対象であるロボットアームの動作を説明する図である。
【図８】図８は、物体特性データベースの把持規則表を説明する図である。
【図９】図９は、本発明の第２実施形態におけるロボットアームの制御装置の制御対象であるロボットアームによる把持動作を説明する図である。
【図１０】図１０は、物体特性データベースの他の把持規則表を説明する図である。
【図１１】図１１は、本発明の第３実施形態における制御装置のインピーダンス制御手段の構成を説明する図である。
【図１２】図１２は、本発明の第２実施形態におけるロボットアームの制御装置の制御対象であるロボットアームによる他の把持動作を説明する図である。
【図１３】図１３は、本発明の第１実施形態におけるロボットアームの制御装置の目標軌道を説明する図である。
【図１４】図１４は、本発明の第１実施形態における物体特性収集手段の詳細を説明するブロック図である。
【図１５】図１５は、本発明の第１実施形態におけるロボットアームの制御装置の効果を説明する図である。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2007080733.tif 000053
【図２】
2007080733.tif 000054
【図３】
2007080733.tif 000055
【図４】
2007080733.tif 000056
【図５】
2007080733.tif 000057
【図６】
2007080733.tif 000058
【図７Ａ】
2007080733.tif 000059
【図７Ｂ】
2007080733.tif 000060
【図７Ｃ】
2007080733.tif 000061
【図７Ｄ】
2007080733.tif 000062
【図８】
2007080733.tif 000063
【図９】
2007080733.tif 000064
【図１０】
2007080733.tif 000065
【図１１】
2007080733.tif 000066
【図１２】
2007080733.tif 000067
【図１３】
2007080733.tif 000068
【図１４】
2007080733.tif 000069
【図１５】
2007080733.tif 000070
【手続補正書】
【提出日】平成19年6月6日(2007.6.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ロボットアームの制御装置であって、
上記ロボットアームが運搬している物体の運搬特性に関する情報が記録された物体特性データベースと、
上記物体特性データベースの上記情報に基づき上記ロボットアームの機械インピーダンス設定値を設定する物体特性呼応インピーダンス設定手段と、
上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御するインピーダンス制御手段とを有するとともに、
上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記情報に基づき上記ロボットアームの手先の並進方向及び回転方向の６次元の方向の機械インピーダンス設定値を個別に設定し、かつ、上記手先の上記並進方向を低剛性とし上記回転方向を上記並進方向よりも高剛性とすることで上記ロボットアームが運搬している上記物体を水平に保つよう設定するロボットアームの制御装置。
【請求項２】
上記ロボットアームが運搬している上記物体の運搬特性に関する情報を収集し、収集した上記物体の運搬特性に関する情報を上記物体特性データベースに記録する物体特性収集手段をさらに有する、請求項１に記載のロボットアームの制御装置。
【請求項３】
ロボットアームの制御装置であって、
上記ロボットアームが運搬している物体の運搬特性に関する情報が記録された物体特性データベースと、
上記物体特性データベースの上記情報に基づき上記ロボットアームの機械インピーダンス設定値を設定する物体特性呼応インピーダンス設定手段と、
上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御するインピーダンス制御手段とを有し、
上記物体特性データベースは上記ロボットアームが運搬している上記物体の属性情報を有し、上記物体の属性情報として上記運搬している物体の危険度情報を有するとともに、
上記特性呼応インピーダンス設定手段は、上記物体特性データベースの上記危険度情報に基づき上記機械インピーダンス設定値を設定する、ロボットアームの制御装置。
【請求項４】
上記ロボットアームが運搬している上記物体の運搬特性に関する情報を収集し、収集した上記物体の運搬特性に関する情報を上記物体特性データベースに記録する物体特性収集手段をさらに有する、請求項３に記載のロボットアームの制御装置。
【請求項５】
上記物体特性データベースの有する危険度情報は、上記運搬している物体の周囲環境情報に基づき設定された危険度情報である、請求項３又は４に記載のロボットアームの制御装置。
【請求項６】
ロボットアームの制御装置であって、
上記ロボットアームが運搬している物体の運搬特性に関する情報が記録された物体特性データベースと、
上記物体特性データベースの上記情報に基づき上記ロボットアームの機械インピーダンス設定値を設定する物体特性呼応インピーダンス設定手段と、
上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御するインピーダンス制御手段とを有し、
上記物体特性データベースは上記ロボットアームが運搬している上記物体の属性情報を有し、上記物体の属性情報として上記運搬している物体の重要度情報を有するとともに、
上記特性呼応インピーダンス設定手段は、物体特性データベースの上記重要度情報に基づき上記機械インピーダンス設定値を設定するロボットアームの制御装置。
【請求項７】
上記ロボットアームが運搬している上記物体の運搬特性に関する情報を収集し、収集した上記物体の運搬特性に関する情報を上記物体特性データベースに記録する物体特性収集手段をさらに有する、請求項６に記載のロボットアームの制御装置。
【請求項８】
上記インピーダンス制御手段は、上記ロボットアームに人や物体が接触することを検知する接触検知手段を有し、上記ロボットアームが上記人や物体と接触した時に、上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御する、請求項１〜７のいずれか１つに記載のロボットアームの制御装置。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００１
【補正方法】変更
【補正の内容】
【０００１】
本発明は、家庭用ロボット等、人との物理的な接触の可能性のあるロボットのロボットアームを制御する、ロボットアームの制御装置に関する。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
本発明の目的は、上記従来の制御装置の課題を解決し、ロボットアームと人間との接触が発生しても、人間へ接触のダメージを与えることなく、かつ、接触によりロボットアームが動いて、把持物体を落下させたり他の人間や他の物体に接触しダメージを与えることのない、安全なロボット制御を実現できる、ロボットアームの制御装置を提供することにある。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０１６３
【補正方法】変更
【補正の内容】
【０１６３】
本発明は、家庭用ロボットなど人と接する可能性があるロボットのロボットアームの動作の制御を行なうロボットアームの制御装置として有用である。また、家庭用ロボットに限らず、産業用ロボットや、生産設備等における可動機構のロボットアームの制御装置としても適用が可能である。
【手続補正書】
【提出日】平成19年10月18日(2007.10.18)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ロボットアームの制御装置であって、
上記ロボットアームが運搬している物体の運搬特性に関する情報が記録された物体特性データベースと、
上記物体特性データベースの上記情報に基づき上記ロボットアームの機械インピーダンス設定値を設定する物体特性呼応インピーダンス設定手段と、
上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御するインピーダンス制御手段とを有するとともに、
上記物体特性呼応インピーダンス設定手段は、上記物体特性データベースの上記情報に基づき上記ロボットアームの手先の並進方向及び回転方向の６次元の方向の機械インピーダンス設定値を個別に設定し、かつ、上記手先の上記回転方向の剛性を上記並進方向の剛性よりも高くすることで上記ロボットアームが運搬している上記物体を水平に保つよう設定するロボットアームの制御装置。
【請求項２】
上記ロボットアームが運搬している上記物体の運搬特性に関する情報を収集し、収集した上記物体の運搬特性に関する情報を上記物体特性データベースに記録する物体特性収集手段をさらに有する、請求項１に記載のロボットアームの制御装置。
【請求項３】
ロボットアームの制御装置であって、
上記ロボットアームが運搬している物体の運搬特性に関する情報が記録された物体特性データベースと、
上記物体特性データベースの上記情報に基づき上記ロボットアームの機械インピーダンス設定値を設定する物体特性呼応インピーダンス設定手段と、
上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御するインピーダンス制御手段とを有し、
上記物体特性データベースは上記ロボットアームが運搬している上記物体の属性情報を有し、上記物体の属性情報として上記運搬している物体の危険度情報を有するとともに、
上記物体特性呼応インピーダンス設定手段は、上記物体特性データベースの上記危険度情報に基づき上記機械インピーダンス設定値を設定する、ロボットアームの制御装置。
【請求項４】
上記ロボットアームが運搬している上記物体の運搬特性に関する情報を収集し、収集した上記物体の運搬特性に関する情報を上記物体特性データベースに記録する物体特性収集手段をさらに有する、請求項３に記載のロボットアームの制御装置。
【請求項５】
上記物体特性データベースの有する危険度情報は、上記運搬している物体の周囲環境情報に基づき設定された危険度情報である、請求項３又は４に記載のロボットアームの制御装置。
【請求項６】
ロボットアームの制御装置であって、
上記ロボットアームが運搬している物体の運搬特性に関する情報が記録された物体特性データベースと、
上記物体特性データベースの上記情報に基づき上記ロボットアームの機械インピーダンス設定値を設定する物体特性呼応インピーダンス設定手段と、
上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御するインピーダンス制御手段とを有し、
上記物体特性データベースは上記ロボットアームが運搬している上記物体の属性情報を有し、上記物体の属性情報として上記運搬している物体の重要度情報を有するとともに、
上記物体特性呼応インピーダンス設定手段は、物体特性データベースの上記重要度情報に基づき上記機械インピーダンス設定値を設定するロボットアームの制御装置。
【請求項７】
上記ロボットアームが運搬している上記物体の運搬特性に関する情報を収集し、収集した上記物体の運搬特性に関する情報を上記物体特性データベースに記録する物体特性収集手段をさらに有する、請求項６に記載のロボットアームの制御装置。
【請求項８】
上記インピーダンス制御手段は、上記ロボットアームに人や物体が接触することを検知する接触検知手段を有し、上記ロボットアームが上記人や物体と接触した時に、上記物体特性呼応インピーダンス設定手段の設定した上記機械インピーダンス設定値に、上記ロボットアームの機械インピーダンスの値を制御する、請求項１〜７のいずれか１つに記載のロボットアームの制御装置。
【国際調査報告】
2007080733.tif 000071
2007080733.tif 000072
2007080733.tif 000073
2007080733.tif 000074