JPWO2011080856A1 - ロボット、ロボットの制御装置、制御方法、及び制御プログラム - Google Patents

ロボット、ロボットの制御装置、制御方法、及び制御プログラム Download PDF

Info

Publication number
JPWO2011080856A1
JPWO2011080856A1 JP2011541422A JP2011541422A JPWO2011080856A1 JP WO2011080856 A1 JPWO2011080856 A1 JP WO2011080856A1 JP 2011541422 A JP2011541422 A JP 2011541422A JP 2011541422 A JP2011541422 A JP 2011541422A JP WO2011080856 A1 JPWO2011080856 A1 JP WO2011080856A1
Authority
JP
Japan
Prior art keywords
joint
external force
robot arm
movable
movable state
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2011541422A
Other languages
English (en)
Other versions
JP4896276B2 (ja
Inventor
岡▲崎▼ 安直
安直 岡▲崎▼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2011541422A priority Critical patent/JP4896276B2/ja
Application granted granted Critical
Publication of JP4896276B2 publication Critical patent/JP4896276B2/ja
Publication of JPWO2011080856A1 publication Critical patent/JPWO2011080856A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • G05B19/423Teaching successive positions by walk-through, i.e. the tool head or end effector being grasped and guided directly, with or without servo-assistance, to follow a path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36429Power assisted positioning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39325External force control, additional loop comparing forces corrects position

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

多関節ロボットアーム(5)と、アームに配設され外力を検出する外力検出手段(3)と、アームの関節の可動状態を計算する関節可動状態計算手段(2)と、関節可動状態計算手段により計算された可動状態に基づき外力検出手段が検出した外力を変換外力に変換する外力変換手段(24)と、変換外力に基づくことでアーム(5)の動作が制限されるようアーム(5)を制御する制御手段(25、29)とをロボットが有する。

Description

本発明は、工場内、又は、家庭内、又は、介護現場等でパワーアシスト等の作業支援を行うロボットアームを備えるロボット等、人と協働するロボット、ロボットの制御装置、及び制御方法に関する。
近年、工場等で人と協調して動作し、パワーアシスト等の作業支援を行う人協調型のロボットが注目されている。こうした人協調型のロボットは人の操作により動作するため、高度な自律機能がなくても実用的な作業が可能であり、また人の制御の下に動作するため安全性が高く、将来は工場内に留まらず、家庭内の生活支援又は介護への応用が期待されている。
一方、人協調型のロボットは、事前プログラミング通りに動作する従来のロボットと異なり、人が操作する故に動作範囲を越えてしまうなど、事前に想定した以上の動作を人が行い、制御が不安定になったり、ロボットを故障させてしまう可能性がある。
こうした課題に対し、従来技術としては、作動範囲を規制するリミッタを設けると共に、搬送物がリミッタを越えた場合には、作業者に所定の反力を伝えるアシスト搬送装置を開示している(特許文献1)。
特開2005−14133号公報
しかしながら、前記従来技術では、ロボットアームの手先の作業範囲を規制する固定のリミッタを設ける方法であるため、ロボットアームの各関節の動作範囲の規制など、複数の関節の関係によって手先の可動範囲が複雑に変化する場合には、適用が困難である。
また、前記従来技術は、リミッタを越える動作に対しては、バネ定数などの制御パラメータを変化させて反力を発生させることで、動作の制限を行うが、制御パラメータを可変とするために、制御系の構成が複雑になる可能性がある。また、制御パラメータを変化させることで制御系が不安定になり、ロボットの動作が不安定になる可能性がある。
本発明の目的は、前記従来の制御装置の課題を解決し、ロボットアームの関節の動作範囲の規制など、関節の動作状況に応じたロボットアームの動作制限を、簡潔な制御系構造で実現し、制御系の不安定さを低減するロボット、ロボットの制御装置、及び制御方法を提供する。
前記目的を達成するために、本発明は以下のように構成する。
本発明の第1態様によれば、多関節ロボットアームと、
前記多関節ロボットアームに配設され、かつ、外力を検出する外力検出手段と、
前記多関節ロボットアームの関節が可動範囲のいずれかに位置して可動状態を計算する関節可動状態計算手段と、
前記関節可動状態計算手段により計算された前記関節の前記可動状態に基づき、前記外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に変換する外力変換手段と、
前記外力変換手段により変換された前記変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われるように前記多関節ロボットアームを制御する制御手段とを有するロボットを提供する。
本発明の第9態様によれば、多関節ロボットアームを備えるロボットの制御装置であって、
前記多関節ロボットアームの関節が可動範囲のいずれかに位置して可動状態を計算する関節可動状態計算手段と、
前記関節可動状態計算手段により計算された前記関節の前記可動状態に基づき、前記多関節ロボットアームに配設されて外力を検出する外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に変換する外力変換手段と、
前記外力変換手段により変換された前記変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われるように前記多関節ロボットアームを制御する制御手段とを有することを特徴とするロボットの制御装置を提供する。
本発明の第10態様によれば、多関節ロボットアームを備えるロボットの制御方法であって、
前記多関節ロボットアームの関節が可動範囲のいずれかに位置して可動状態を関節可動状態計算手段で計算し、
前記計算された前記関節の前記可動状態に基づき、前記多関節ロボットアームに配設されて外力を検出する外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に外力変換手段で変換し、
前記変換された変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われるように前記多関節ロボットアームを制御手段で制御することを特徴とするロボットの制御方法を提供する。
本発明の第11態様によれば、多関節ロボットアームを備えるロボットの制御プログラムであって、
コンピュータを、
前記多関節ロボットアームの関節が可動範囲のいずれかに位置して可動状態を計算する関節可動状態計算手段と、
前記関節可動状態計算手段により計算された前記関節の前記可動状態に基づき、前記多関節ロボットアームに配設されて外力を検出する外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に変換する外力変換手段と、
前記外力変換手段により変換された前記変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われるように前記多関節ロボットアームを制御する制御手段として機能させるためのロボットの制御プログラムを提供する。
本発明のロボット、ロボットの制御装置、及び制御方法によれば、関節可動状態計算手段及び力変換手段を有することにより、インピーダンス制御による動作時に人が関節の可動領域を越えるような操作を行っても、関節可動状態計算手段において関節が可動範囲のいずれかに位置して可動状態であるかどうか可動状態を判定し、外力変換手段により変換された変換外力をインピーダンス計算手段への入力として使うことで、ロボットアームの動作制限が可能となり、関節の可動領域を越えることを防ぐことができる。
本発明のこれらと他の目的と特徴は、添付された図面についての好ましい実施形態に関連した次の記述から明らかになる。この図面においては、
図1は、本発明の第1実施形態におけるロボットの全体構成を示す図であり、 図2は、本発明の前記第1実施形態における前記ロボットのインピーダンス制御手段の構成を示すブロック図であり、 図3は、本発明の前記第1実施形態における前記ロボットによる人との協調搬送作業を説明する図であり、 図4は、関節角度qと可動状態の関係を示す図であり、 図5は、本発明の前記第1実施形態における前記ロボットにおけるインピーダンス制御手段の全体的な動作ステップを表すフローチャートであり、 図6は、本発明の前記第1実施形態における前記ロボットにおける拘束曲面及び力の変換を説明する図であり、 図7は、本発明の第2実施形態におけるロボットのインピーダンス制御手段の構成を示すブロック図であり、 図8は、本発明の前記第2実施形態における前記ロボットの全体構成を示す図であり、 図9は、本発明の第3実施形態におけるロボットのインピーダンス制御手段の構成を示すブロック図であり、 図10は、本発明の前記第3実施形態における前記ロボットによる人との協調搬送作業を説明する図であり、 図11は、本発明の前記第3実施形態における前記ロボットの動作の具体例を示す図であり、 図12は、式(103)に現れる並進外力fh、fの関係を示す図である。
以下に、本発明にかかる実施の形態を図面に基づいて詳細に説明する。
以下、図面を参照して本発明における実施形態を詳細に説明する前に、本発明の種々の態様について説明する。
本発明の第1態様によれば、多関節ロボットアームと、
前記多関節ロボットアームに配設され、かつ、外力を検出する外力検出手段と、
前記多関節ロボットアームの関節が可動範囲のいずれかに位置して可動状態を計算する関節可動状態計算手段と、
前記関節可動状態計算手段により計算された前記関節の前記可動状態に基づき、前記外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に変換する外力変換手段と、
前記外力変換手段により変換された前記変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われるように前記多関節ロボットアームを制御する制御手段とを有するロボットを提供する。
本発明の第2態様によれば、前記外力変換手段は、前記外力検出手段に検出された前記外力を、前記多関節ロボットアームの前記関節が固定されたときに前記多関節ロボットアームの手先が動くことのできる拘束曲面の接平面への正射影として変換する第1の態様に記載のロボットを提供する。
本発明の第3態様によれば、さらに、前記多関節ロボットアームにかかる前記外力により各関節に発生する外力トルクを計算する外力トルク計算手段を有し、
前記関節可動状態計算手段は、前記外力トルク計算手段の計算結果に基づき前記外力トルクが前記多関節ロボットアームの各関節の動作を可動領域外より可動領域内に戻そうとする力であるかどうかを判定し、
前記関節可動状態計算手段が、前記外力トルクが前記多関節ロボットアームの各関節の動作を前記可動領域外より前記可動領域内に戻そうとする力であると判定する場合には、前記制御手段は前記動作制限を行わない一方、
前記関節可動状態計算手段が、前記外力トルクが前記多関節ロボットアームの各関節の動作を前記可動領域外より前記可動領域内に戻そうとする力ではないと判定する場合には、前記制御手段は前記動作制限を行う第1又は2の態様に記載のロボットを提供する。
本発明の第4態様によれば、前記関節可動状態計算手段は、前記外力を関節トルクに変換することにより、前記関節トルクに変換された前記変換外力が、前記多関節ロボットアームの各関節の動作を可動領域外より可動領域内に戻そうとする力であるかどうかを判定し、
前記関節可動状態計算手段が、前記変換外力が、前記多関節ロボットアームの各関節の動作を前記可動領域外より前記可動領域内に戻そうとする力であると判定する場合には、前記制御手段は前記動作制限を行わない一方、
前記関節可動状態計算手段が、前記変換外力が、前記多関節ロボットアームの各関節の動作を前記可動領域外より前記可動領域内に戻そうとする力ではないと判定する場合には、前記制御手段は前記動作制限を行う第1又は2の態様に記載のロボットを提供する。
本発明の第5態様によれば、前記多関節ロボットアームの各関節に対し、可動あるいは固定の動作モードを設定する動作モード設定部と、
前記動作モード設定部で設定された前記動作モードの指令が入力されて、前記動作モードと前記関節可動状態計算手段により計算された前記関節の前記可動状態とに基づき前記可動状態の計算を行う関節動作モード設定手段とをさらに備えて、
前記外力変換手段は、前記関節動作モード設定手段により計算された前記関節の前記可動状態に基づき、前記外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に変換し、
前記制御手段は、前記変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われる第1〜4のいずれか1つの態様に記載のロボットを提供する。
本発明の第6態様によれば、前記関節可動状態計算手段は、前記関節の可動領域の両端の境界線から一定範囲だけ内側に緩衝領域をそれぞれ設け、前記各緩衝領域では前記関節の前記可動状態を徐々に変化させる第3又は4の態様に記載のロボットを提供する。
本発明の第7態様によれば、前記多関節ロボットアームの前記関節の可動領域の両端の内側にそれぞれ設けられた緩衝領域と、前記緩衝領域を除く前記可動領域の残りの領域である完全可動領域PMRと、可動領域外の領域とに分割し、
前記関節可動状態計算手段は、各領域毎に、前記関節の前記可動状態の値を異ならせるように計算される第1の態様に記載のロボットを提供する。
本発明の第8態様によれば、前記関節可動状態計算手段と前記力変換手段とが第2制御手段として、前記多関節アームの前記制御手段とは別に備えられ、
前記力変換手段が変換した外力が前記第2制御手段より通信を通じて前記制御手段に入力される第1の態様に記載のロボットを提供する。
本発明の第9態様によれば、多関節ロボットアームを備えるロボットの制御装置であって、
前記多関節ロボットアームの関節が可動範囲のいずれかに位置して可動状態を計算する関節可動状態計算手段と、
前記関節可動状態計算手段により計算された前記関節の前記可動状態に基づき、前記多関節ロボットアームに配設されて外力を検出する外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に変換する外力変換手段と、
前記外力変換手段により変換された前記変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われるように前記多関節ロボットアームを制御する制御手段とを有することを特徴とするロボットの制御装置を提供する。
本発明の第10態様によれば、多関節ロボットアームを備えるロボットの制御方法であって、
前記多関節ロボットアームの関節が可動範囲のいずれかに位置して可動状態を関節可動状態計算手段で計算し、
前記計算された前記関節の前記可動状態に基づき、前記多関節ロボットアームに配設されて外力を検出する外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に外力変換手段で変換し、
前記変換された変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われるように前記多関節ロボットアームを制御手段で制御することを特徴とするロボットの制御方法を提供する。
本発明の第11態様によれば、多関節ロボットアームを備えるロボットの制御プログラムであって、
コンピュータを、
前記多関節ロボットアームの関節が可動範囲のいずれかに位置して可動状態を計算する関節可動状態計算手段と、
前記関節可動状態計算手段により計算された前記関節の前記可動状態に基づき、前記多関節ロボットアームに配設されて外力を検出する外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に変換する外力変換手段と、
前記外力変換手段により変換された前記変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われるように前記多関節ロボットアームを制御する制御手段として機能させるためのロボットの制御プログラムを提供する。
以下に、本発明にかかる実施の形態を図面に基づいて詳細に説明する。
(第1実施形態)
図1は本発明の第1実施形態のロボット90の構成を示す図である。ロボット90は、多関節ロボットアーム5と、多関節ロボットアーム5の動作を制御する制御装置1とを備えて構成されている。
制御装置1は、ハードウェア的には一般的なパーソナルコンピュータにより構成されている。そして、インピーダンス制御手段(インピーダンス制御部)4の入出力IF19を除く部分は、パーソナルコンピュータで実行される制御プログラム17としてソフトウェア的に実現される。
入出力IF19は、パーソナルコンピュータのPCIバスなどの拡張スロットルに接続された、D/Aボード20と、A/Dボード21と、カウンタボード22とにより構成される。
ロボット90の多関節ロボットアーム5の動作を制御するための制御プログラム17が実行されることにより、制御装置1が機能する。ロボットアーム5の各関節11,12,13,14,15,16のそれぞれのエンコーダ42より出力される関節角度情報がカウンタボード22を通じて制御装置1に取り込まれ、制御装置1によって各関節11,12,13,14,15,16の回転動作での制御指令値が算出される。算出された各制御指令値は、D/Aボード20を通じてモータードライバ18に与えられ、モータードライバ18から送られた各制御指令値に従って、ロボットアーム5の各関節11,12,13,14,15,16のモータ41が駆動される。
ロボットアーム5は、6自由度の多リンクマニピュレータであり、手先の一例として機能するハンド6と、ハンド6が取付けられる手首部7を有する前腕リンク8と、前腕リンク8が回転可能に連結される上腕リンク9と、上腕リンク9が回転可能に連結支持される台部10とを有している。手首部7は、第4関節14と、第5関節15と、第6関節16との3つの回転軸を有しており、上腕リンク9に対するハンド6の相対的な姿勢(向き)を変化させることができる。前腕リンク8の他端は、上腕リンク9の一端に対して第3関節13周りに回転可能とし、上腕リンク9の他端は、台部10に対して第2関節12周りに回転可能とする。そして台部の上側可動部10aは台部の下側固定部10bに対して第1関節11周りに回転可能として、合計6個の軸周りに回転可能として前記6自由度の多リンクマニピュレータを構成している。
各軸の回転部分を構成する各関節11,12,13,14,15,16は、各関節11,12,13,14,15,16の一方の部材に設けられた回転駆動装置(本第1実施形態ではモータ41)と、モータ41の回転軸の回転位相角(すなわち関節角)を検出するエンコーダ42とを備える。そして、モータ41の回転軸が関節の他方の部材に連結されて前記回転軸を正逆回転させることにより、他方の部材を一方の部材に対して各軸周りに回転可能とする。回転駆動装置は、後述するモータードライバ18により駆動制御される。本第1実施形態では、回転駆動装置の一例としてのモータ41とエンコーダ42とは、ロボットアーム5の各関節11,12,13,14,15,16の内部に配設されている。
35は台部10の下側固定部10bに対して相対的な位置関係が固定された絶対座標系であり、36はハンド6に対して相対的な位置関係が固定された手先座標系である。絶対座標系35から見た手先座標系36の原点位置O(x、y、z)をロボットアーム5の手先位置とし、絶対座標系35から見た手先座標系36の姿勢をロール・ピッチ・ヨー角で表現した(φ、θ、ψ)をロボットアーム5の手先姿勢とし、手先位置・姿勢ベクトルをr=[x、y、z、φ、θ、]と定義する。ロボットアーム5の手先位置・姿勢を制御する場合には、手先位置・姿勢ベクトルrを目標手先位置・姿勢ベクトルrに追従させることになる。
ロボットアーム5の手首部7とハンド6の間には、外力検出手段(外力検出部又は外力検出装置)の一例として機能する力センサー3が配設されており、ハンド6にかかる外力を検出できる。
次に、図2を使い、インピーダンス制御手段4の詳細について説明する。図2において、5は図1に示したロボットアームである。ロボットアーム5からはそれぞれの関節軸のエンコーダ42により計測された関節角の現在値(関節角度ベクトル)q=[q,q,q,q,q,qが出力され、カウンタボード22によりインピーダンス制御手段4に取り込まれる。ただし、q,q,q,q,q,qは、それぞれ、第1関節11、第2関節12、第3関節13、第4関節14、第5関節15、第6関節16の関節角度である。
また、ロボットアーム5からは力センサー3により計測された外力F=[f,f,f,n,n,nが出力され、A/Dボード21によりインピーダンス制御手段4に取り込まれる。
目標軌道生成手段(目標軌道生成部)23は、目標とするロボットアーム5の動作を実現するための手先位置・姿勢目標ベクトルrを出力する。目標とするロボットアーム5の動作は、目的とする作業に応じて、事前に、ポイントごとの位置(rd0、rd1、rd2、・・・)が時系列データとして与えられている。目標軌道生成手段23は、多項式補間を使用し、各ポイント間の軌道を補完し、手先位置・姿勢目標ベクトルrを生成する。
インピーダンス計算手段(インピーダンス計算部)25は、ロボットアーム5に機械インピーダンスを実現する機能を果たす部分であり、ロボットアーム5が目標軌道生成手段23の生成する目標軌道に沿うよう位置制御により単独で動作する場合は0を出力する。一方、インピーダンス計算手段25は、ロボットアーム5と人間が協働作業をする場合には、(i)設定したインピーダンスパラメータM、D、K(慣性M、粘性D、剛性K)と、(iii)インピーダンス制御手段4(インピーダンス制御手段4の重力補償手段30)へ入力される外力Fを変換した変換外力Fとにより、ロボットアーム5に機械インピーダンスを実現するための手先位置・姿勢目標補正出力rdΔを以下の式(1)により計算し、出力する。手先位置・姿勢目標補正出力rdΔは、目標軌道生成手段23の出力する手先位置・姿勢目標rに第1演算部61で加算され、手先位置・姿勢補正目標ベクトルrdmが生成される。
Figure 2011080856
.....(1)
ただし、
Figure 2011080856
.....(2)
Figure 2011080856
.....(3)
Figure 2011080856
.....(4)
であり、sはラプラス演算子である。
順運動学計算手段26は、ロボットアーム5から出力された各関節角の現在値qである関節角度ベクトルqが入力され、ロボットアーム5の関節角度ベクトルqから手先位置・姿勢ベクトルrへの変換の幾何学的計算を行う。
順運動学計算手段26により計算される手先位置・姿勢ベクトルrと、手先位置・姿勢補正目標ベクトルrdmとの誤差rが第2演算部62で求められる。
第2演算部62で求められた誤差rが位置誤差補償手段27に入力され、位置誤差補償出力urpが位置誤差補償手段27で求められて、近似逆運動学計算手段28に出力される。
近似逆運動学計算手段28は、近似式
Figure 2011080856
を用いて、逆運動学の近似計算を行う。ただし、J(q)は
Figure 2011080856
の関係を満たすヤコビ行列、uinは近似逆運動学計算手段28への入力、uoutは近似逆運動学計算手段28からの出力である。ここで、
Figure 2011080856
と近似して考えることができるので、ヤコビ行列の定義式
Figure 2011080856
に代入すると、
Figure 2011080856
が成り立つことが分かる。すなわち、J(q)−1を近似逆運動学計算手段28で乗算することで手先位置・姿勢に関する誤差値から関節角度に関する誤差値への変換となる。したがって、手先位置・姿勢誤差rにゲインをかける等した値である位置誤差補償出力ureが近似逆運動学計算手段28に入力されると、その出力として、関節角度誤差qを補償するための関節角度誤差補償出力uqeが近似逆運動学計算手段28から出力されることになる。
関節角度誤差補償出力uqeは、近似逆運動学計算手段28からD/Aボード20を介してモータードライバ18に電圧指令値として与えられ、各関節軸が正逆回転駆動されてロボットアーム5が動作する。
以上のように構成されるインピーダンス制御手段4の基本構成に関して動作の基本原理を説明する。
動作の基本は、位置誤差補償手段27による手先位置・姿勢誤差rのフィードバック制御(位置制御)であり、図2の点線で囲まれた部分が位置制御系29になっている。位置誤差補償手段27として、例えば、PID補償器を使用すれば、手先位置・姿勢誤差rが0に収束するように制御が働き、目標とするロボットアーム5の動作が実現する。
インピーダンス制御を行う場合、前記説明した位置制御系29に対し、インピーダンス計算手段25により手先位置・姿勢目標補正出力rdΔが第1演算部61で加算されて手先位置・姿勢の目標値の補正が行われる。このために、前記した位置制御系29は、手先位置・姿勢の目標値が本来の値より微妙にずれることになり、結果的に機械インピーダンスが実現される。以上の図2の一点鎖線で囲まれた部分は、位置制御ベースのインピーダンス制御系49と呼ばれる構成であり、このインピーダンス制御系49により慣性M、粘性D、剛性Kの機械インピーダンスが実現される。インピーダンス制御手段4は制御手段(制御部)(又は動作制御手段、又は動作制御部)の一例として機能する。
以上のインピーダンス制御を利用すれば、図3に示すような人100とロボット90の物体38の協調搬送のような協働作業が可能となる。人100が物品38を移動しようとして、物体38に力をかけると、物体38を通じて力がロボット90のロボットアーム5に伝わり、前記力が、ロボットアーム5の力センサー3により外力Fとして検出される。インピーダンス制御手段4への入力となる外力Fは、協調搬送する物体38の重力を補償するため、重力補償手段30において、力センサー3により検出された外力Fを基に式(5)で計算を行い、算出されるFを使用する。
Figure 2011080856
.....(5)
ただし、mは物体38の質量、gは物体38の重力加速度である。式(5)で計算される外力Fを入力にインピーダンス制御を行えば、ロボットアーム5は人100がかけた力の方向に沿うように動作するため、協調搬送が実現する。なお、物体38の質量m、及び、物体38の重力加速度gは、重力補償手段30に予め記憶されている。
本発明の第1実施形態のロボットの制御装置1の特徴は、以上の基本的なインピーダンス制御手段4の構成に加え、関節可動状態計算手段2及び力変換手段24を有するところにあり、以下、関節可動状態計算手段2及び力変換手段24の詳細について説明する。
関節可動状態計算手段2は、ロボットアーム5の関節角の現在値(関節角度ベクトル)qが入力されることで各関節11,12,13,14,15,16の可動状態を判定し(具体的には、第1〜第6関節11,12,13,14,15,16のそれぞれの関節又は少なくとも1つの関節が可動範囲のいずれかに位置して可動状態を計算し)、その判定結果(計算結果)を力変換手段(力変換部、又は外力変換手段、又は外力変換部)24へと出力する。
図4は関節角度q(以下、i=1,2,・・・,6)と可動状態の関係を示す図であり、紙面左回りが関節iの正方向の回転を表している。関節可動状態計算手段2は、各関節11,12,13,14,15,16の可動範囲の最小値qiMIN及び最大値qiMAX、及び緩衝領域幅dqにより、可動領域MRと、可動領域MRの両端の境界線から一定範囲だけ内側に配置された第1緩衝領域BR1と第2緩衝領域BR2とを定義する。第1緩衝領域BR1と第2緩衝領域BR2は、それぞれ、前記関節の前記可動状態を徐々に変化させる領域である。そして、関節可動状態計算手段2は、現在の関節角qが属する領域に応じてパターン分けし、各関節11,12,13,14,15,16の可動状態Lを0〜1の間の値として計算する。
さらに、インピーダンス制御手段4には、多関節ロボットアーム5にかかる外力Fにより各関節に発生する外力トルクτを計算する外力トルク計算手段50を備えている。具体的には、外力トルク計算手段50において、式(6)により外力Fによる各関節11,12,13,14,15,16に発生するトルクτ=[τ,τ,τ,τ,τ,τを計算する。そして、関節可動状態計算手段2において、各関節11,12,13,14,15,16が緩衝領域BR1,BR2内あるいは可動領域外にあるときに、前記外力トルク計算手段50で計算されて求められたトルクτが、各関節を可動領域MR内へ戻そうとする方向のトルクであると関節可動状態計算手段2で判定される場合(図4において矢印X及びYの方向、後述のパターンB2,C2,D2,E2の場合)、予め定めた一定のオフセット値dLiを可動状態Lに関節可動状態計算手段2で加算する。また、関節可動状態計算手段2において、各関節が緩衝領域BR1,BR2内あるいは可動領域外にあるときに、前記計算されて求められたトルクが各関節を可動領域MR内へ戻そうとする方向のトルクではないと関節可動状態計算手段2で判定される場合には、オフセット値dLは可動状態Lに関節可動状態計算手段2で加算しない。
Figure 2011080856
.....(6)
前記式(6)において、J
Figure 2011080856
の関係を満たすヤコビ行列であり、
Figure 2011080856
で、
Figure 2011080856
はロボットアーム5の手先の回転速度である。
オフセット値dLの具体的な数値は、操作のしやすさ、又は、制御の安定性を考慮して、実際にロボットアーム5を動作させて予め実験的に定めて、関節可動状態計算手段2内に記憶させることになる。
オフセット値dLは、後述するように、関節iを可動領域MR内へ戻そうとするトルクに対する関節iの反応を関節可動状態計算手段2で決定し、かつ、可動領域MRの境界で発生するリミットサイクルのような現象の発生度合いを決める値となる。具体的には、オフセット値dLの値が大きくなるほど可動領域MRへ戻そうとする力に対する反応が良くなり、操作が容易になる一方で、オフセット値dLの値が大きくなるほどリミットサイクルのような現象により不安定性が増大することになる。したがって、オフセット値dLの値の具体的な数値は、前記相反する反応の良さからくる操作性と制御の安定性とを考慮し、実際にロボットアーム5を動作させて予め実験的に定めて関節可動状態計算手段2内に記憶させることになる。
ここで言う「操作のしやすさ」とは、オフセット値dLiの値が小さいほど、大きな力をかけないと戻らなくなるので、操作性が悪いのに対し、オフセット値dLiの値が大きいほど、小さな力で容易に戻ることになるので、操作性が良いと呼んでいる。一方、オフセット値dLiの値が大きいほど、リミットサイクルのような現象が起こり、具体的には振動が発生し、制御が不安定になります。すなわち、ここで言う「制御の安定性」とは、制御が原因で振動が発生し運動が安定しないことを意味する。
以上を具体的に記述すると、以下のようにパターン分けして、関節iの可動状態Lが関節可動状態計算手段2で計算される。
パターンA: (qiMIN+dq)≦q≦(qiMAX−dq):すなわち、(完全可動領域PMR内)のとき:L=1
パターンB: (qiMIN)<q<(qiMIN+dq):すなわち、(第1緩衝領域BR1内)のとき:
パターンB1: τ≦0の場合: L=(q−qiMIN)/dq
パターンB2: τ>0の場合: L=(q−qiMIN)/dq+dL
(ただし、 L≦1に制限)
パターンC: (qiMAX−dq)<q<(qiMAX):すなわち、(第2緩衝領域BR2内)のとき:
パターンC1: τ≧0の場合: L=(qiMAX−q)/dq
パターンC2: τ<0の場合: L=(qiMAX−q)/dq+dL
(ただし、 L≦1に制限)
パターンD: q≦qiMIN:すなわち、(可動領域外)のとき:
パターンD1: τ≦0の場合: L=0
パターンD2: τ>0の場合: L=dL
パターンE: qiMAX≦q:すなわち、(可動領域外)のとき:
パターンE1: τ≧0の場合: L=0
パターンE2: τ<0の場合: L=dL
力変換手段24は、関節可動状態計算手段2の出力である可動状態Lに基づき、外力Fを、前記外力Fがロボットアーム5に加えられたときにロボットアーム5が動作可能な方向成分を抽出可能な変換外力Fに変換する。
変換外力Fの変換方法に関しては、2つの方法を以下に示す。
第1の変換方法は、以下の式(7)〜(13)式に基づき変換する方法である。
Figure 2011080856
.....(7)
Figure 2011080856
.....(8)
Figure 2011080856
.....(9)
Figure 2011080856
.....(10)
Figure 2011080856
.....(11)
Figure 2011080856
.....(12)
ただし、j,j,jは式(13)を満たす3次元ベクトルであり、3×3行列[j]は
Figure 2011080856
の関係を満たすヤコビ行列J(q)の左上の3×3の部分行列に相当する。
Figure 2011080856
.....(13)
第2の変換方法は、関節の可動状態のパターン分類である、パターンA〜Eに応じてパターン分けする方法である。
パターンα: 関節角度q、q、qのすべてがパターンAの場合、
Figure 2011080856
.....(101)
となる。
パターンβ: 関節角度q、q、qのいずれか1つの関節角度qがパターンB〜Eのいずれかの場合(すなわち、関節角度q、q、qのその他の2つの関節角度qがパターンAの場合)、
例えば、関節角度qがパターンB〜Eのいずれかであり、かつ、関節角度q、qがパターンAとすると(ただし、この例では、qは、q、q、qのいずれか1つの関節角度を意味し、q、qは、関節角度q、q、qのその他の2つの関節角度を意味する。)、
Figure 2011080856
.....(102)
となる。
パターンγ: 関節角度q、q、qのいずれか2つの関節角度qがパターンB〜Eのいずれかの場合(すなわち、関節角度q、q、qの残りの1つの関節角度qがパターンAの場合)、
例えば、関節角度qがパターンAであり、かつ、関節角度q、qがパターンB〜Eのいずれかであるとすると(ただし、この例では、qは、関節角度q、q、qのいずれか1つの関節角度を意味し、q、qは、関節角度q、q、qのその他の2つの関節角度を意味する。)、
Figure 2011080856
.....(103)
となる。
パターンδ: 関節角度q、q、qのすべてがパターンB〜Eのいずれかの場合、
Figure 2011080856
.....(104)
となる。
その他の式(7)、式(11)、式(12)は第1の変換方法と同様である。
上記第1の変換方法は、変換式のパターン分けをする必要が無く、簡潔なアルゴリズムとすることができるという利点を有するが、図1に示すロボットアーム5の第2関節12,第3関節13のように平行な関節軸を持つアーム構造の場合に、平行な関節軸の関節が同時に完全可動領域外になる場合に限り対応することはできない。
一方、第2の変換方法は、変換式のパターン分けをする必要があるが、アームの構造に関係なく、複数の関節が完全可動領域外になる場合も含め、あらゆる場合に対応可能である。
したがって、アームの構造又は各関節の可動範囲の大きさ等に応じて、上記第1の変換方法と第2の変換方法を選択するように、力変換手段24において、予め設定しておけばよい。
図5は、上述した原理に基づく制御プログラムによるインピーダンス制御時の動作ステップを説明するフローチャートである。
ステップS1では、エンコーダ42により計測された関節角度データ(関節角度ベクトルq)が制御装置1に取り込まれる。
ステップS2では、ロボットアーム5の運動学計算に必要なヤコビ行列J等の計算が近似逆運動学計算手段28により行われる。
ステップS3では、ロボットアーム5からの関節角度データ(関節角度ベクトルq)から、ロボットアーム5の現在の手先位置・姿勢ベクトルrが順運動学計算手段26により計算される(順運動学計算手段26での処理)。
ステップS4では、関節可動状態計算手段2において、ロボットアーム5からの関節角度データ(関節角度ベクトルq)に基づいて、パターンA〜パターンEのいずれになるかを判定し、関節可動状態Lを算出する。
ステップS5では、力センサー3の計測値Fが重力補償手段30に取り込まれ、式(5)に基づき外力Fが重力補償手段30で計算される。
ステップS6では、力変換手段24において、式(7)〜式(13)(第1の変換方法)、又は、式(7)、式(11)、式(12)、式(101)〜式(104)(第2の変換方法)に基づいて、重力補償手段30で計算された外力Fが変換外力Fに変換される。
ステップS7では、機械インピーダンスパラメータM、D、Kと、関節角度データ(関節角度ベクトルq)と、力変換手段24において変換された変換外力Fとから、手先位置・姿勢目標補正出力rdΔが、インピーダンス計算手段25により計算される(インピーダンス計算手段25での処理)。
ステップS8では、手先位置・姿勢目標ベクトルrと手先位置・姿勢目標補正出力rdΔの和が第1演算部61で計算されて求められた手先位置・姿勢補正目標ベクトルrdmと、現在の手先位置・姿勢ベクトルrとの差である手先位置・姿勢の誤差rが、第2演算部62で計算される(位置誤差補償手段27での処理)。位置誤差補償手段27の具体例としてはPID補償器が考えられる。定数の対角行列である比例、微分、積分の3つのゲインを適切に調整することにより、位置誤差が0に収束するように制御が働く。
ステップS9では、ステップS2で計算したヤコビ行列Jの逆行列を乗算することにより、位置誤差補償出力ureを手先位置・姿勢の誤差に関する値から、関節角度の誤差に関する値である関節角度誤差補償出力uqeに、近似逆運動学計算手段28により変換する(近似逆運動学計算手段28での処理)。
ステップS10では、関節角度誤差補償出力uqeが、近似逆運動学計算手段28からD/Aボード20を通じてモータードライバ18に与えられ、各モータ41を流れる電流量を変化させることによりロボットアーム5の各関節の関節軸の回転運動が発生する。
以上のステップS1〜ステップS10が、制御の計算ループとして繰り返し実行されることにより、ロボットアーム5の動作の制御が実現する。なお、ステップS2〜ステップS6の動作の順番はパラレル処理でも可能であり、必ずしも、この順番通りでなくてもよい。
本発明の前記第1実施形態にかかるロボット90では、関節可動状態計算手段2及び力変換手段24を備えることにより、以下に詳述するような動作及び効果が実現する。以下では、人100とロボット90が協調搬送を行う場合の動作を第3関節13を中心に説明を行う。
図6は、式(8)に現れる並進外力f、fh2の関係を示す。図6においてはロボットアーム5の第1関節11から第3関節13までを模式的に表している。拘束曲面31は、第3関節13が可動領域MRを越えて、それ以上動けずロックされた状態の場合に、その他の第1関節11及び第2関節12が動くことで、ロボットアーム5の手先のハンド6が動くことのできる曲面である。拘束曲面31は、実際は球面であるが、図6では、ある一断面の円のみ描いている。すなわち、第3関節13がロック状態になると、ロボットアーム5の手先は拘束曲面31に拘束される。
この拘束曲面31に接する平面であり、かつ、ロボットアーム5の手先を通る平面が、接平面32である。また、接平面32は、ベクトルj,jを含む平面に平行な平面である。
この接平面32への並進外力fh2の正射影が、fhCである。正射影fhCは、式(8)において第3関節13の可動状態L=0のときの並進外力fであり、式(14)で表される。なお、式(14)は式(8)において「{」と「}」とで囲まれた部分であり、式(8)を使って、変換外力Fを計算することは、正射影への変換を使用していることになる。また、正射影への変換を、式(8)だけでなく、式(9)、式(10)の「{」と「}」とで囲まれた部分も、それぞれ、同様に、正射影への変換を使用していることになる。また、正射影fhCは変換外力Fの一例である。すなわち、拘束曲面31の接平面32への正射影を考えれば、ロボットアーム5が動作可能な方向成分となる。
Figure 2011080856
.....(14)
また、並進外力fは、並進外力fh2のベクトルの先端と、並進外力fh2の正射影fhCのベクトルの先端とを結んだ直線(点線)上に、先端が来る中間的な値であり、その位置は可動状態Lにより定義される(可動状態L=0のときにはf=fhC、可動状態L=1のときにはf=fh2)。
第3関節13の手先位置が、完全可動領域PMR内にある緩衝領域境界33の内側である点P1に位置するときは、パターンA(可動状態L=1)となるので、f=fh2となり、人のかける力の方向にロボットアーム5の手先は自由に動作する。ここで、第1関節11及び第2関節12も完全可動領域PMR内にある場合に限れば、fh2=fとなり、人のかける力の方向にロボットアーム5の手先は自由に動作する。
手先が緩衝領域境界33を越え、外側の点P2に移動すると、パターンC1になり、可動状態Lが変化すると共に変化する並進外力fでインピーダンス制御が行われ、徐々に動きに拘束がかかるようになる。
手先が可動領域MRの境界である拘束曲面31上の点P3に到達すると、パターンE1になり、並進外力fhCを入力にインピーダンス制御を行うことになり、ロボットアーム5の手先の動きは拘束曲面31に沿うような動きとなる。すなわち、fのような成分を持つ力を人からロボットアーム5にかけても、式(8)による、並進外力fへの変換の際に打ち消されるため、ロボットアーム5の手先を、拘束曲面31を越えて外側に動くことはできず、第3関節13の角度も可動領域MRを越えることはない。
一方、点P3において、−fのような成分を持つ力を人からロボットアーム5にかけた場合、第3関節13は可動領域MR内に戻る動きとなるため、パターンE2となり、可動状態L=dLとオフセット値が加算される分、並進外力fは復元力のように働き、関節が可動領域MR内に戻る動きが可能となる。
また、同様に点P2においても、−fのような成分を持つ力を人からロボットアーム5にかけた場合、第3関節13は緩衝領域BR1から完全可動領域PMR内に戻る動きとなるため、パターンC2となり、可動状態L=(q3MAX−q)/dq+dLとオフセット値が加算される分、並進外力fは復元力のように働き、関節が完全可動領域PMR内に戻る動きが可能となる。
前記した動作制限において、緩衝領域BR1,BR2では、徐々に動作に拘束をかけることで、動作を安定させる役割を担っている。緩衝領域BR1,BR2を設けない場合、手先が拘束曲面31上に到達すると、インピーダンス計算手段25への入力が並進外力fh2から並進外力fhCへステップ的に変化することになるので、制御系、すなわち、インピーダンス制御手段4が不安定になりやすい。
また、パターンD2又はパターンE2のように可動領域MR内へ戻る力を受け付ける場合に、拘束曲面31の近傍でリミットサイクルのような現象が起こり、制御系、すなわち、インピーダンス制御手段4がさらに不安定となる可能性がある。これに対して、緩衝領域BR1,BR2を設け、オフセット値dLを導入することで、リミットサイクルを起こさず、スムーズに動作の拘束・復帰を行うことが可能となる。
なお、パターンB(パターンB1,パターンB2)は、第1緩衝領域BR1に関するものであり、パターンAの第1緩衝領域BR1とは反対側の領域である第2緩衝領域BR2のパターンC(パターンC1,パターンC2)と同様であるため、説明を省略する。パターンD(パターンD1,パターンD2)は、第1緩衝領域BR1の可動領域外に関するものであり、パターンAの第1緩衝領域BR1とは反対側の領域である第2緩衝領域BR2の可動領域外のパターンE(パターンE1,パターンE2)と同様であるため、説明を省略する。
以上は、第3関節13の場合を中心に説明を行ったが、第1関節11及び第2関節12の場合も同様であり、第1の変換方法の場合には、それぞれ、式(9)及び式(10)に基づく変換を行うことにより、また、第2の変換方法の場合には、パターンβの変換を行うことにより、各関節の可動領域MRに応じたロボットアーム5の動作の拘束が可能となる。そして、第1の変換方法の場合、一連の式(7)〜式(11)を使うことにより、第1関節11と、第2関節12と、第3関節13とに対して、平行な関節軸の関節が同時に完全可動領域外になる場合を除き、同時に動作制限を行うことが可能となる。
第2の変換方法の場合、パターンα〜パターンδのパターン分けにより、複数の関節が同時にロックする場合も厳密に扱うことができる。
図12は、式(103)に現れる並進外力f、fの関係を示す。図12においては、ロボットアーム5の第1関節11から第3関節13までを模式的に表している。拘束曲線201は、第2関節12と第3関節13が可動領域MRを越えて、それ以上動けずロックされた状態の場合に、残りの第1関節11が動くことで、ロボットアーム5の手先のハンド6が動くことのできる曲線である。すなわち、第2関節12と第3関節13がロック状態になると、ロボットアーム5の手先は拘束曲線201に拘束される。
この拘束曲線201の接線であり、かつ、ロボットアーム5の手先を通る直線が、接線202である。また、接線202は、ベクトルjに平行な直線である。
この接線202への並進外力fの正射影が、fhcである。正射影fhcは、式(103)において第2関節12の可動状態L=0かつ第3関節13の可動状態L=0のときの並進外力fであり、式(105)で表される。なお、式(105)はL=0の場合の式(103)であり、式(103)を使って、変換外力Fを計算することは、正射影への変換を使用していることになる。すなわち、拘束曲線201の接線202への正射影を考えれば、ロボットアーム5が動作可能な方向成分となる。
Figure 2011080856
.....(105)
また、並進外力fは、並進外力fのベクトルの先端と、並進外力fの正射影fhcのベクトルの先端とを結んだ直線(点線)上に、先端が来る中間的な値であり、その位置は可動状態Lにより定義される(可動状態L=0のときにはf=fhC、可動状態L=1のときにはf=f)。
以上のように式(105)に基づく変換によれば、第2関節12と第3関節13の2つの関節がロックする場合の動作も扱うことが可能となる。
ロボットアーム5の手先の姿勢(φ、θ、ψ)を決める第4関節14、第5関節15、第6関節16に関しては、式(12)に基づくことで各関節の動作制限が実現する。式(12)において、J(q)Fの部分は式(6)右辺と同様であり、外力Fにより各関節11,12,13,14,15,16に発生するトルクτ=[τ,τ,τ,τ,τ,τに相当する。このトルクベクトルの第3行,第4行,第5行に、それぞれ第4関節14、第5関節15、第6関節16の関節可動状態L,L,Lをかけたベクトル[τ,τ,τ,Lτ,Lτ,Lτを、式J(q)−Tに用いて手先外力に逆変換し、モーメント成分のみを抽出したのがnである。したがって、例えば、L=0とすると、τ=0となるので、モーメント成分nを入力としてインピーダンス制御すると、第4関節14は動作せず固定されることになる。
第5関節15及び第6関節16に関しても同様であり、以上の原理により、関節可動状態L,L,Lに基づき、ロボットアーム5の手先の姿勢(φ、θ、ψ)を決める手首部7である第4関節14と第5関節15と第6関節16との動作制限が実現する。
以上、本第1実施形態によれば、関節可動状態計算手段2及び力変換手段24を有することにより、インピーダンス制御による動作時に人がロボットアーム5の関節の可動領域MRを越えるような操作を行っても、関節可動状態計算手段2において当該関節の可動状態を判定し、力変換手段24により変換された変換外力Fをインピーダンス計算手段25への入力として使うことで、ロボットアーム5の動作制限が可能となり、関節の可動領域MRを越えるのを防ぐことができる。
また、本第1実施形態によれば、インピーダンス計算手段25への入力に対し力変換手段24により変換をかけることにより動作制限を行う、すなわち、入力を外力Fから変換外力Fへと制限することで動作制限を行うため、ロボットアーム5の機構的な可動領域MRを越えてロボットアーム5が動けない状態でも、インピーダンス計算手段25に入力が入り続け、後段にあるインピーダンス計算手段25又は位置制御系29に誤差が蓄積してしまうことがなく、安定な制御系とすることができるという格別の効果を発揮する。
さらに、力変換手段24を使わずに、位置制御系29において関節の動作制限を行う場合が(公知技術として)考えられるが、その場合は、後段にあるインピーダンス計算手段25又は位置制御系29に誤差蓄積に対する対策を施す必要があり、複雑な制御系構造となってしまう。これに対して、力変換手段24を使う本第1実施形態では、誤差蓄積に対する対策を施す必要はなく、簡潔な制御系構造とすることができる。
また、前記第1実施形態では、インピーダンス制御のインピーダンスパラメータを変化させることで動作制限を行う方式ではないため、パラメータ可変のための仕組みが不要であり、制御系の構造を簡潔にすることができ、さらに、パラメーター変化により制御系が不安定になることを防ぐことができる。すなわち、前記第1実施形態では、力変換手段24により入力制限を行うこと(言い換えれば、力変換手段24により外力Fが変換された変換外力Fをインピーダンス計算手段25への入力として使うこと)で、前記優れた効果を発揮させることができるので、インピーダンスパラメータを変化させる必要はない。
さらに、本第1実施形態によれば、各関節の動作制限は独立に行われるため、仮にある関節が動作制限されても、動作可能な他の関節は動作制限されず動き続けることが可能であるので、すぐに動作制限がかかり停止するようなことのない、操作性の良いロボットとすることができる。
(第2実施形態)
本発明の第2実施形態におけるロボットの基本的な構成は、図1及び図2に示した第1実施例の場合と同様であるので、共通部分の説明は省略し、異なる部分についてのみ以下、詳細に説明する。
図7に示すように、第2実施形態では、通常のインピーダンス制御手段43(すなわち、インピーダンス計算手段25と目標軌道生成手段23と順運動学計算手段26と位置誤差補償手段27と近似逆運動学計算手段28と第1演算部61と第2演算部62)とは独立した力入力制御手段34に、関節可動状態計算手段2と力変換手段24とを配設し、既存の制御装置(第1制御装置)1Bと通信する構成としている。
図8は、第2実施形態のロボット90Bの全体構成を示しており、制御装置の具体的な構成を示している。第2実施形態の制御装置では、第1制御装置1Bとは別に第2制御装置46が追加され、2つの独立した制御装置1B,46で構成される。
第2制御装置46は、ハードウェア的には一般的なパーソナルコンピュータにより構成されている。そして、入出力IF(D/Aボード45とA/Dボード47とカウンタボード48)を除く部分は、パーソナルコンピュータで実行される制御プログラム44により力入力制御手段34を実現する。力入力制御手段34は、A/Dボード47を通じて力センサー3より外力Fが入力され、力変換手段24による変換結果である変換外力Fが、D/Aボード45を通じて第1制御装置1Bの力センサー入力であるA/Dボード21に出力され、A/Dボード21を通じて第1制御装置1Bに取り込まれる。このように、D/Aボード45とA/Dボード21とを接続することで、電圧値により変換外力Fが伝えられる通信手段が構成されている。
また力入力制御手段34は、カウンタボード48を通じてロボットアーム5の各関節部のエンコーダ42より出力される関節角度情報を取得し、関節可動状態計算手段2による、関節11,12,13,14,15,16の可動状態の判定のための情報として使用される。
本第2実施形態は、前記通常のインピーダンス制御手段43に、力入力制御手段34を別途追加した構成であるため、図7のような、2つに分離独立した構成が容易に実現できる。したがって第1実施形態は、図1に示すように一つの制御装置(PC)1上で動作する1つの制御プログラム17によりインピーダンス制御手段4を実現したが、第2実施形態は、図8に示すように第1制御装置1Bに第2制御装置46を加え、既存の第1制御装置1Bと通信する構成が可能となる。
この構成により、例えば、市販のロボット制御装置の力センサーからの入力信号を処理するために第2制御装置46を追加するだけで、ロボットアーム5の動作制限を行なうことができる。
(第3実施形態)
本発明の第3実施形態における制御装置の基本的な構成は、図1及び図2に示した第1実施例の場合と同様であるので、共通部分の説明は省略し、異なる部分についてのみ以下、詳細に説明する。
図9は、本発明の第3実施形態におけるロボット90Cのインピーダンス制御手段の構成を示すブロック線図であり、図10はロボット90Cによる人100との協調搬送作業を説明する図である。
図10に示すように、第3実施形態のロボット90Cは、手首部7に操作ハンドル40が力センサー3を介して固定されおり、人100は操作ハンドル40を直接握り、力をかけることでロボット90Cを操作することができる。操作ハンドル40とロボットアーム5の間には力センサー3が配設されており、人100が操作するときの力を力センサー3で検出することができる。
また、操作ハンドル40には、動作モード設定部の一例としての動作モード設定スイッチ39が設けられており、人100は、動作モード入力部の一例として機能する動作モード設定スイッチ39を操作することにより、動作モード(可動又は固定のモード)の設定及び切換を行うことができる。
図9に示すように、動作モード設定スイッチ39から動作モード指令が関節動作モード設定手段37に入力される。さらに、関節可動状態計算手段2から関節可動状態Lが関節動作モード設定手段37に入力され、力変換手段24に拡張関節可動状態Limが出力される。
図10に示すような人100とロボット90Cとの協調作業形態の場合、物体38の負荷をすべてロボットアーム5が受け持つため、重力補償手段30は不要である。この場合には、力センサー3の計測値Fが力変換手段24に外力Fとして入力されて、変換外力Fに変換される。
動作モード設定スイッチ39では、ロボットアーム5の6つの関節11,12,13,14,15,16のそれぞれの可動又は固定のモード設定を行うことができる。
インピーダンス制御手段4内に備えられた関節動作モード設定手段37は、動作モード設定スイッチ39で設定した各関節の可動又は固定のモード設定に応じて、可動のモード設定の場合はそのまま可動状態Lを拡張関節可動状態Limとして出力し、固定のモード設定の場合は拡張関節可動状態Lim=0を出力する。これらの拡張関節可動状態Limは、前記第1実施形態で説明した可動状態Lと同様に取り扱い、変換手段24に入力されて使用される。これにより、固定のモード設定された関節は、第1実施形態で説明した原理により、その動作が制限されて固定される。
以上のように、本第3実施形態によれば、関節動作モード設定手段37を有することにより、特定の関節を固定した動作、又は、特定の関節のみを回転させるような動作が容易に可能となり、より操作性の良いロボットとすることができる。
第3実施形態にかかるロボットの動作の具体例としては、図11に示すように、第1関節11のみ回転させ、ロボットアーム5を台部10に対して旋回させるような動作をさせるときには、動作モード設定スイッチ39で第1関節11を可動と設定し、第2〜第6関節12〜16を固定に設定すれば、人100が操作ハンドル40に力をかけるだけでロボットアーム5の第1関節11のみを容易に回転させる旋回動作を実現することができる。
なお、前記様々な実施形態のうちの任意の実施形態を適宜組み合わせることにより、それぞれの有する効果を奏するようにすることができる。
本発明のロボット、ロボットの制御装置、及び制御方法は、ロボットアームの関節の動作範囲の規制など、関節の動作状況に応じたロボットアームの動作制限を、簡潔な制御系構造で実現し、制御系の不安定さを低減することができて、工場又は家庭内、介護現場等でパワーアシスト等の作業支援を行うロボット等、人と協働するロボット、ロボットの制御装置、及び制御方法として有用である。
本発明は、添付図面を参照しながら好ましい実施形態に関連して充分に記載されているが、この技術の熟練した人々にとっては種々の変形又は修正は明白である。そのような変形又は修正は、添付した請求の範囲による本発明の範囲から外れない限りにおいて、その中に含まれると理解されるべきである。
本発明は、工場内、又は、家庭内、又は、介護現場等でパワーアシスト等の作業支援を行うロボットアームを備えるロボット等、人と協働するロボット、ロボットの制御装置、及び制御方法に関する。
近年、工場等で人と協調して動作し、パワーアシスト等の作業支援を行う人協調型のロボットが注目されている。こうした人協調型のロボットは人の操作により動作するため、高度な自律機能がなくても実用的な作業が可能であり、また人の制御の下に動作するため安全性が高く、将来は工場内に留まらず、家庭内の生活支援又は介護への応用が期待されている。
一方、人協調型のロボットは、事前プログラミング通りに動作する従来のロボットと異なり、人が操作する故に動作範囲を越えてしまうなど、事前に想定した以上の動作を人が行い、制御が不安定になったり、ロボットを故障させてしまう可能性がある。
こうした課題に対し、従来技術としては、作動範囲を規制するリミッタを設けると共に、搬送物がリミッタを越えた場合には、作業者に所定の反力を伝えるアシスト搬送装置を開示している(特許文献1)。
特開2005−14133号公報
しかしながら、前記従来技術では、ロボットアームの手先の作業範囲を規制する固定のリミッタを設ける方法であるため、ロボットアームの各関節の動作範囲の規制など、複数の関節の関係によって手先の可動範囲が複雑に変化する場合には、適用が困難である。
また、前記従来技術は、リミッタを越える動作に対しては、バネ定数などの制御パラメータを変化させて反力を発生させることで、動作の制限を行うが、制御パラメータを可変とするために、制御系の構成が複雑になる可能性がある。また、制御パラメータを変化させることで制御系が不安定になり、ロボットの動作が不安定になる可能性がある。
本発明の目的は、前記従来の制御装置の課題を解決し、ロボットアームの関節の動作範囲の規制など、関節の動作状況に応じたロボットアームの動作制限を、簡潔な制御系構造で実現し、制御系の不安定さを低減するロボット、ロボットの制御装置、及び制御方法を提供する。
前記目的を達成するために、本発明は以下のように構成する。
本発明の第1態様によれば、多関節ロボットアームと、
前記多関節ロボットアームに配設され、かつ、外力を検出する外力検出手段と、
前記多関節ロボットアームの関節が可動範囲のいずれかに位置して可動状態を計算する関節可動状態計算手段と、
前記関節可動状態計算手段により計算された前記関節の前記可動状態に基づき、前記外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に変換する外力変換手段と、
前記外力変換手段により変換された前記変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われるように前記多関節ロボットアームを制御する制御手段とを有するロボットを提供する。
本発明の第9態様によれば、多関節ロボットアームを備えるロボットの制御装置であって、
前記多関節ロボットアームの関節が可動範囲のいずれかに位置して可動状態を計算する関節可動状態計算手段と、
前記関節可動状態計算手段により計算された前記関節の前記可動状態に基づき、前記多関節ロボットアームに配設されて外力を検出する外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に変換する外力変換手段と、
前記外力変換手段により変換された前記変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われるように前記多関節ロボットアームを制御する制御手段とを有することを特徴とするロボットの制御装置を提供する。
本発明の第10態様によれば、多関節ロボットアームを備えるロボットの制御方法であって、
前記多関節ロボットアームの関節が可動範囲のいずれかに位置して可動状態を関節可動状態計算手段で計算し、
前記計算された前記関節の前記可動状態に基づき、前記多関節ロボットアームに配設されて外力を検出する外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に外力変換手段で変換し、
前記変換された変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われるように前記多関節ロボットアームを制御手段で制御することを特徴とするロボットの制御方法を提供する。
本発明の第11態様によれば、多関節ロボットアームを備えるロボットの制御プログラムであって、
コンピュータを、
前記多関節ロボットアームの関節が可動範囲のいずれかに位置して可動状態を計算する関節可動状態計算手段と、
前記関節可動状態計算手段により計算された前記関節の前記可動状態に基づき、前記多関節ロボットアームに配設されて外力を検出する外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に変換する外力変換手段と、
前記外力変換手段により変換された前記変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われるように前記多関節ロボットアームを制御する制御手段として機能させるためのロボットの制御プログラムを提供する。
本発明のロボット、ロボットの制御装置、及び制御方法によれば、関節可動状態計算手段及び力変換手段を有することにより、インピーダンス制御による動作時に人が関節の可動領域を越えるような操作を行っても、関節可動状態計算手段において関節が可動範囲のいずれかに位置して可動状態であるかどうか可動状態を判定し、外力変換手段により変換された変換外力をインピーダンス計算手段への入力として使うことで、ロボットアームの動作制限が可能となり、関節の可動領域を越えることを防ぐことができる。
本発明のこれらと他の目的と特徴は、添付された図面についての好ましい実施形態に関連した次の記述から明らかになる。この図面においては、
図1は、本発明の第1実施形態におけるロボットの全体構成を示す図であり、 図2は、本発明の前記第1実施形態における前記ロボットのインピーダンス制御手段の構成を示すブロック図であり、 図3は、本発明の前記第1実施形態における前記ロボットによる人との協調搬送作業を説明する図であり、 図4は、関節角度qと可動状態の関係を示す図であり、 図5は、本発明の前記第1実施形態における前記ロボットにおけるインピーダンス制御手段の全体的な動作ステップを表すフローチャートであり、 図6は、本発明の前記第1実施形態における前記ロボットにおける拘束曲面及び力の変換を説明する図であり、 図7は、本発明の第2実施形態におけるロボットのインピーダンス制御手段の構成を示すブロック図であり、 図8は、本発明の前記第2実施形態における前記ロボットの全体構成を示す図であり、 図9は、本発明の第3実施形態におけるロボットのインピーダンス制御手段の構成を示すブロック図であり、 図10は、本発明の前記第3実施形態における前記ロボットによる人との協調搬送作業を説明する図であり、 図11は、本発明の前記第3実施形態における前記ロボットの動作の具体例を示す図であり、 図12は、式(103)に現れる並進外力fh、fの関係を示す図である。
以下に、本発明にかかる実施の形態を図面に基づいて詳細に説明する。
以下、図面を参照して本発明における実施形態を詳細に説明する前に、本発明の種々の態様について説明する。
本発明の第1態様によれば、多関節ロボットアームと、
前記多関節ロボットアームに配設され、かつ、外力を検出する外力検出手段と、
前記多関節ロボットアームの関節が可動範囲のいずれかに位置して可動状態を計算する関節可動状態計算手段と、
前記関節可動状態計算手段により計算された前記関節の前記可動状態に基づき、前記外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に変換する外力変換手段と、
前記外力変換手段により変換された前記変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われるように前記多関節ロボットアームを制御する制御手段とを有するロボットを提供する。
本発明の第2態様によれば、前記外力変換手段は、前記外力検出手段に検出された前記外力を、前記多関節ロボットアームの前記関節が固定されたときに前記多関節ロボットアームの手先が動くことのできる拘束曲面の接平面への正射影として変換する第1の態様に記載のロボットを提供する。
本発明の第3態様によれば、さらに、前記多関節ロボットアームにかかる前記外力により各関節に発生する外力トルクを計算する外力トルク計算手段を有し、
前記関節可動状態計算手段は、前記外力トルク計算手段の計算結果に基づき前記外力トルクが前記多関節ロボットアームの各関節の動作を可動領域外より可動領域内に戻そうとする力であるかどうかを判定し、
前記関節可動状態計算手段が、前記外力トルクが前記多関節ロボットアームの各関節の動作を前記可動領域外より前記可動領域内に戻そうとする力であると判定する場合には、前記制御手段は前記動作制限を行わない一方、
前記関節可動状態計算手段が、前記外力トルクが前記多関節ロボットアームの各関節の動作を前記可動領域外より前記可動領域内に戻そうとする力ではないと判定する場合には、前記制御手段は前記動作制限を行う第1又は2の態様に記載のロボットを提供する。
本発明の第4態様によれば、前記関節可動状態計算手段は、前記外力を関節トルクに変換することにより、前記関節トルクに変換された前記変換外力が、前記多関節ロボットアームの各関節の動作を可動領域外より可動領域内に戻そうとする力であるかどうかを判定し、
前記関節可動状態計算手段が、前記変換外力が、前記多関節ロボットアームの各関節の動作を前記可動領域外より前記可動領域内に戻そうとする力であると判定する場合には、前記制御手段は前記動作制限を行わない一方、
前記関節可動状態計算手段が、前記変換外力が、前記多関節ロボットアームの各関節の動作を前記可動領域外より前記可動領域内に戻そうとする力ではないと判定する場合には、前記制御手段は前記動作制限を行う第1又は2の態様に記載のロボットを提供する。
本発明の第5態様によれば、前記多関節ロボットアームの各関節に対し、可動あるいは固定の動作モードを設定する動作モード設定部と、
前記動作モード設定部で設定された前記動作モードの指令が入力されて、前記動作モードと前記関節可動状態計算手段により計算された前記関節の前記可動状態とに基づき前記可動状態の計算を行う関節動作モード設定手段とをさらに備えて、
前記外力変換手段は、前記関節動作モード設定手段により計算された前記関節の前記可動状態に基づき、前記外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に変換し、
前記制御手段は、前記変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われる第1〜4のいずれか1つの態様に記載のロボットを提供する。
本発明の第6態様によれば、前記関節可動状態計算手段は、前記関節の可動領域の両端の境界線から一定範囲だけ内側に緩衝領域をそれぞれ設け、前記各緩衝領域では前記関節の前記可動状態を徐々に変化させる第3又は4の態様に記載のロボットを提供する。
本発明の第7態様によれば、前記多関節ロボットアームの前記関節の可動領域の両端の内側にそれぞれ設けられた緩衝領域と、前記緩衝領域を除く前記可動領域の残りの領域である完全可動領域PMRと、可動領域外の領域とに分割し、
前記関節可動状態計算手段は、各領域毎に、前記関節の前記可動状態の値を異ならせるように計算される第1の態様に記載のロボットを提供する。
本発明の第8態様によれば、前記関節可動状態計算手段と前記力変換手段とが第2制御手段として、前記多関節アームの前記制御手段とは別に備えられ、
前記力変換手段が変換した外力が前記第2制御手段より通信を通じて前記制御手段に入力される第1の態様に記載のロボットを提供する。
本発明の第9態様によれば、多関節ロボットアームを備えるロボットの制御装置であって、
前記多関節ロボットアームの関節が可動範囲のいずれかに位置して可動状態を計算する関節可動状態計算手段と、
前記関節可動状態計算手段により計算された前記関節の前記可動状態に基づき、前記多関節ロボットアームに配設されて外力を検出する外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に変換する外力変換手段と、
前記外力変換手段により変換された前記変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われるように前記多関節ロボットアームを制御する制御手段とを有することを特徴とするロボットの制御装置を提供する。
本発明の第10態様によれば、多関節ロボットアームを備えるロボットの制御方法であって、
前記多関節ロボットアームの関節が可動範囲のいずれかに位置して可動状態を関節可動状態計算手段で計算し、
前記計算された前記関節の前記可動状態に基づき、前記多関節ロボットアームに配設されて外力を検出する外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に外力変換手段で変換し、
前記変換された変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われるように前記多関節ロボットアームを制御手段で制御することを特徴とするロボットの制御方法を提供する。
本発明の第11態様によれば、多関節ロボットアームを備えるロボットの制御プログラムであって、
コンピュータを、
前記多関節ロボットアームの関節が可動範囲のいずれかに位置して可動状態を計算する関節可動状態計算手段と、
前記関節可動状態計算手段により計算された前記関節の前記可動状態に基づき、前記多関節ロボットアームに配設されて外力を検出する外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に変換する外力変換手段と、
前記外力変換手段により変換された前記変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われるように前記多関節ロボットアームを制御する制御手段として機能させるためのロボットの制御プログラムを提供する。
以下に、本発明にかかる実施の形態を図面に基づいて詳細に説明する。
(第1実施形態)
図1は本発明の第1実施形態のロボット90の構成を示す図である。ロボット90は、多関節ロボットアーム5と、多関節ロボットアーム5の動作を制御する制御装置1とを備えて構成されている。
制御装置1は、ハードウェア的には一般的なパーソナルコンピュータにより構成されている。そして、インピーダンス制御手段(インピーダンス制御部)4の入出力IF19を除く部分は、パーソナルコンピュータで実行される制御プログラム17としてソフトウェア的に実現される。
入出力IF19は、パーソナルコンピュータのPCIバスなどの拡張スロットルに接続された、D/Aボード20と、A/Dボード21と、カウンタボード22とにより構成される。
ロボット90の多関節ロボットアーム5の動作を制御するための制御プログラム17が実行されることにより、制御装置1が機能する。ロボットアーム5の各関節11,12,13,14,15,16のそれぞれのエンコーダ42より出力される関節角度情報がカウンタボード22を通じて制御装置1に取り込まれ、制御装置1によって各関節11,12,13,14,15,16の回転動作での制御指令値が算出される。算出された各制御指令値は、D/Aボード20を通じてモータードライバ18に与えられ、モータードライバ18から送られた各制御指令値に従って、ロボットアーム5の各関節11,12,13,14,15,16のモータ41が駆動される。
ロボットアーム5は、6自由度の多リンクマニピュレータであり、手先の一例として機能するハンド6と、ハンド6が取付けられる手首部7を有する前腕リンク8と、前腕リンク8が回転可能に連結される上腕リンク9と、上腕リンク9が回転可能に連結支持される台部10とを有している。手首部7は、第4関節14と、第5関節15と、第6関節16との3つの回転軸を有しており、上腕リンク9に対するハンド6の相対的な姿勢(向き)を変化させることができる。前腕リンク8の他端は、上腕リンク9の一端に対して第3関節13周りに回転可能とし、上腕リンク9の他端は、台部10に対して第2関節12周りに回転可能とする。そして台部の上側可動部10aは台部の下側固定部10bに対して第1関節11周りに回転可能として、合計6個の軸周りに回転可能として前記6自由度の多リンクマニピュレータを構成している。
各軸の回転部分を構成する各関節11,12,13,14,15,16は、各関節11,12,13,14,15,16の一方の部材に設けられた回転駆動装置(本第1実施形態ではモータ41)と、モータ41の回転軸の回転位相角(すなわち関節角)を検出するエンコーダ42とを備える。そして、モータ41の回転軸が関節の他方の部材に連結されて前記回転軸を正逆回転させることにより、他方の部材を一方の部材に対して各軸周りに回転可能とする。回転駆動装置は、後述するモータードライバ18により駆動制御される。本第1実施形態では、回転駆動装置の一例としてのモータ41とエンコーダ42とは、ロボットアーム5の各関節11,12,13,14,15,16の内部に配設されている。
35は台部10の下側固定部10bに対して相対的な位置関係が固定された絶対座標系であり、36はハンド6に対して相対的な位置関係が固定された手先座標系である。絶対座標系35から見た手先座標系36の原点位置O(x、y、z)をロボットアーム5の手先位置とし、絶対座標系35から見た手先座標系36の姿勢をロール・ピッチ・ヨー角で表現した(φ、θ、ψ)をロボットアーム5の手先姿勢とし、手先位置・姿勢ベクトルをr=[x、y、z、φ、θ、]と定義する。ロボットアーム5の手先位置・姿勢を制御する場合には、手先位置・姿勢ベクトルrを目標手先位置・姿勢ベクトルrに追従させることになる。
ロボットアーム5の手首部7とハンド6の間には、外力検出手段(外力検出部又は外力検出装置)の一例として機能する力センサー3が配設されており、ハンド6にかかる外力を検出できる。
次に、図2を使い、インピーダンス制御手段4の詳細について説明する。図2において、5は図1に示したロボットアームである。ロボットアーム5からはそれぞれの関節軸のエンコーダ42により計測された関節角の現在値(関節角度ベクトル)q=[q,q,q,q,q,qが出力され、カウンタボード22によりインピーダンス制御手段4に取り込まれる。ただし、q,q,q,q,q,qは、それぞれ、第1関節11、第2関節12、第3関節13、第4関節14、第5関節15、第6関節16の関節角度である。
また、ロボットアーム5からは力センサー3により計測された外力F=[f,f,f,n,n,nが出力され、A/Dボード21によりインピーダンス制御手段4に取り込まれる。
目標軌道生成手段(目標軌道生成部)23は、目標とするロボットアーム5の動作を実現するための手先位置・姿勢目標ベクトルrを出力する。目標とするロボットアーム5の動作は、目的とする作業に応じて、事前に、ポイントごとの位置(rd0、rd1、rd2、・・・)が時系列データとして与えられている。目標軌道生成手段23は、多項式補間を使用し、各ポイント間の軌道を補完し、手先位置・姿勢目標ベクトルrを生成する。
インピーダンス計算手段(インピーダンス計算部)25は、ロボットアーム5に機械インピーダンスを実現する機能を果たす部分であり、ロボットアーム5が目標軌道生成手段23の生成する目標軌道に沿うよう位置制御により単独で動作する場合は0を出力する。一方、インピーダンス計算手段25は、ロボットアーム5と人間が協働作業をする場合には、(i)設定したインピーダンスパラメータM、D、K(慣性M、粘性D、剛性K)と、(iii)インピーダンス制御手段4(インピーダンス制御手段4の重力補償手段30)へ入力される外力Fを変換した変換外力Fとにより、ロボットアーム5に機械インピーダンスを実現するための手先位置・姿勢目標補正出力rdΔを以下の式(1)により計算し、出力する。手先位置・姿勢目標補正出力rdΔは、目標軌道生成手段23の出力する手先位置・姿勢目標rに第1演算部61で加算され、手先位置・姿勢補正目標ベクトルrdmが生成される。
Figure 2011080856
.....(1)
ただし、
Figure 2011080856
.....(2)
Figure 2011080856
.....(3)
Figure 2011080856
.....(4)
であり、sはラプラス演算子である。
順運動学計算手段26は、ロボットアーム5から出力された各関節角の現在値qである関節角度ベクトルqが入力され、ロボットアーム5の関節角度ベクトルqから手先位置・姿勢ベクトルrへの変換の幾何学的計算を行う。
順運動学計算手段26により計算される手先位置・姿勢ベクトルrと、手先位置・姿勢補正目標ベクトルrdmとの誤差rが第2演算部62で求められる。
第2演算部62で求められた誤差rが位置誤差補償手段27に入力され、位置誤差補償出力urpが位置誤差補償手段27で求められて、近似逆運動学計算手段28に出力される。
近似逆運動学計算手段28は、近似式
Figure 2011080856
を用いて、逆運動学の近似計算を行う。ただし、J(q)は
Figure 2011080856
の関係を満たすヤコビ行列、uinは近似逆運動学計算手段28への入力、uoutは近似逆運動学計算手段28からの出力である。ここで、
Figure 2011080856
と近似して考えることができるので、ヤコビ行列の定義式
Figure 2011080856
に代入すると、
Figure 2011080856
が成り立つことが分かる。すなわち、J(q)−1を近似逆運動学計算手段28で乗算することで手先位置・姿勢に関する誤差値から関節角度に関する誤差値への変換となる。したがって、手先位置・姿勢誤差rにゲインをかける等した値である位置誤差補償出力ureが近似逆運動学計算手段28に入力されると、その出力として、関節角度誤差qを補償するための関節角度誤差補償出力uqeが近似逆運動学計算手段28から出力されることになる。
関節角度誤差補償出力uqeは、近似逆運動学計算手段28からD/Aボード20を介してモータードライバ18に電圧指令値として与えられ、各関節軸が正逆回転駆動されてロボットアーム5が動作する。
以上のように構成されるインピーダンス制御手段4の基本構成に関して動作の基本原理を説明する。
動作の基本は、位置誤差補償手段27による手先位置・姿勢誤差rのフィードバック制御(位置制御)であり、図2の点線で囲まれた部分が位置制御系29になっている。位置誤差補償手段27として、例えば、PID補償器を使用すれば、手先位置・姿勢誤差rが0に収束するように制御が働き、目標とするロボットアーム5の動作が実現する。
インピーダンス制御を行う場合、前記説明した位置制御系29に対し、インピーダンス計算手段25により手先位置・姿勢目標補正出力rdΔが第1演算部61で加算されて手先位置・姿勢の目標値の補正が行われる。このために、前記した位置制御系29は、手先位置・姿勢の目標値が本来の値より微妙にずれることになり、結果的に機械インピーダンスが実現される。以上の図2の一点鎖線で囲まれた部分は、位置制御ベースのインピーダンス制御系49と呼ばれる構成であり、このインピーダンス制御系49により慣性M、粘性D、剛性Kの機械インピーダンスが実現される。インピーダンス制御手段4は制御手段(制御部)(又は動作制御手段、又は動作制御部)の一例として機能する。
以上のインピーダンス制御を利用すれば、図3に示すような人100とロボット90の物体38の協調搬送のような協働作業が可能となる。人100が物品38を移動しようとして、物体38に力をかけると、物体38を通じて力がロボット90のロボットアーム5に伝わり、前記力が、ロボットアーム5の力センサー3により外力Fとして検出される。インピーダンス制御手段4への入力となる外力Fは、協調搬送する物体38の重力を補償するため、重力補償手段30において、力センサー3により検出された外力Fを基に式(5)で計算を行い、算出されるFを使用する。
Figure 2011080856
.....(5)
ただし、mは物体38の質量、gは物体38の重力加速度である。式(5)で計算される外力Fを入力にインピーダンス制御を行えば、ロボットアーム5は人100がかけた力の方向に沿うように動作するため、協調搬送が実現する。なお、物体38の質量m、及び、物体38の重力加速度gは、重力補償手段30に予め記憶されている。
本発明の第1実施形態のロボットの制御装置1の特徴は、以上の基本的なインピーダンス制御手段4の構成に加え、関節可動状態計算手段2及び力変換手段24を有するところにあり、以下、関節可動状態計算手段2及び力変換手段24の詳細について説明する。
関節可動状態計算手段2は、ロボットアーム5の関節角の現在値(関節角度ベクトル)qが入力されることで各関節11,12,13,14,15,16の可動状態を判定し(具体的には、第1〜第6関節11,12,13,14,15,16のそれぞれの関節又は少なくとも1つの関節が可動範囲のいずれかに位置して可動状態を計算し)、その判定結果(計算結果)を力変換手段(力変換部、又は外力変換手段、又は外力変換部)24へと出力する。
図4は関節角度q(以下、i=1,2,・・・,6)と可動状態の関係を示す図であり、紙面左回りが関節iの正方向の回転を表している。関節可動状態計算手段2は、各関節11,12,13,14,15,16の可動範囲の最小値qiMIN及び最大値qiMAX、及び緩衝領域幅dqにより、可動領域MRと、可動領域MRの両端の境界線から一定範囲だけ内側に配置された第1緩衝領域BR1と第2緩衝領域BR2とを定義する。第1緩衝領域BR1と第2緩衝領域BR2は、それぞれ、前記関節の前記可動状態を徐々に変化させる領域である。そして、関節可動状態計算手段2は、現在の関節角qが属する領域に応じてパターン分けし、各関節11,12,13,14,15,16の可動状態Lを0〜1の間の値として計算する。
さらに、インピーダンス制御手段4には、多関節ロボットアーム5にかかる外力Fにより各関節に発生する外力トルクτを計算する外力トルク計算手段50を備えている。具体的には、外力トルク計算手段50において、式(6)により外力Fによる各関節11,12,13,14,15,16に発生するトルクτ=[τ,τ,τ,τ,τ,τを計算する。そして、関節可動状態計算手段2において、各関節11,12,13,14,15,16が緩衝領域BR1,BR2内あるいは可動領域外にあるときに、前記外力トルク計算手段50で計算されて求められたトルクτが、各関節を可動領域MR内へ戻そうとする方向のトルクであると関節可動状態計算手段2で判定される場合(図4において矢印X及びYの方向、後述のパターンB2,C2,D2,E2の場合)、予め定めた一定のオフセット値dLiを可動状態Lに関節可動状態計算手段2で加算する。また、関節可動状態計算手段2において、各関節が緩衝領域BR1,BR2内あるいは可動領域外にあるときに、前記計算されて求められたトルクが各関節を可動領域MR内へ戻そうとする方向のトルクではないと関節可動状態計算手段2で判定される場合には、オフセット値dLは可動状態Lに関節可動状態計算手段2で加算しない。
Figure 2011080856
.....(6)
前記式(6)において、J
Figure 2011080856
の関係を満たすヤコビ行列であり、
Figure 2011080856
で、
Figure 2011080856
はロボットアーム5の手先の回転速度である。
オフセット値dLの具体的な数値は、操作のしやすさ、又は、制御の安定性を考慮して、実際にロボットアーム5を動作させて予め実験的に定めて、関節可動状態計算手段2内に記憶させることになる。
オフセット値dLは、後述するように、関節iを可動領域MR内へ戻そうとするトルクに対する関節iの反応を関節可動状態計算手段2で決定し、かつ、可動領域MRの境界で発生するリミットサイクルのような現象の発生度合いを決める値となる。具体的には、オフセット値dLの値が大きくなるほど可動領域MRへ戻そうとする力に対する反応が良くなり、操作が容易になる一方で、オフセット値dLの値が大きくなるほどリミットサイクルのような現象により不安定性が増大することになる。したがって、オフセット値dLの値の具体的な数値は、前記相反する反応の良さからくる操作性と制御の安定性とを考慮し、実際にロボットアーム5を動作させて予め実験的に定めて関節可動状態計算手段2内に記憶させることになる。
ここで言う「操作のしやすさ」とは、オフセット値dLiの値が小さいほど、大きな力をかけないと戻らなくなるので、操作性が悪いのに対し、オフセット値dLiの値が大きいほど、小さな力で容易に戻ることになるので、操作性が良いと呼んでいる。一方、オフセット値dLiの値が大きいほど、リミットサイクルのような現象が起こり、具体的には振動が発生し、制御が不安定になります。すなわち、ここで言う「制御の安定性」とは、制御が原因で振動が発生し運動が安定しないことを意味する。
以上を具体的に記述すると、以下のようにパターン分けして、関節iの可動状態Lが関節可動状態計算手段2で計算される。
パターンA: (qiMIN+dq)≦q≦(qiMAX−dq):すなわち、(完全可動領域PMR内)のとき:L=1
パターンB: (qiMIN)<q<(qiMIN+dq):すなわち、(第1緩衝領域BR1内)のとき:
パターンB1: τ≦0の場合: L=(q−qiMIN)/dq
パターンB2: τ>0の場合: L=(q−qiMIN)/dq+dL
(ただし、 L≦1に制限)
パターンC: (qiMAX−dq)<q<(qiMAX):すなわち、(第2緩衝領域BR2内)のとき:
パターンC1: τ≧0の場合: L=(qiMAX−q)/dq
パターンC2: τ<0の場合: L=(qiMAX−q)/dq+dL
(ただし、 L≦1に制限)
パターンD: q≦qiMIN:すなわち、(可動領域外)のとき:
パターンD1: τ≦0の場合: L=0
パターンD2: τ>0の場合: L=dL
パターンE: qiMAX≦q:すなわち、(可動領域外)のとき:
パターンE1: τ≧0の場合: L=0
パターンE2: τ<0の場合: L=dL
力変換手段24は、関節可動状態計算手段2の出力である可動状態Lに基づき、外力Fを、前記外力Fがロボットアーム5に加えられたときにロボットアーム5が動作可能な方向成分を抽出可能な変換外力Fに変換する。
変換外力Fの変換方法に関しては、2つの方法を以下に示す。
第1の変換方法は、以下の式(7)〜(13)式に基づき変換する方法である。
Figure 2011080856
.....(7)
Figure 2011080856
.....(8)
Figure 2011080856
.....(9)
Figure 2011080856
.....(10)
Figure 2011080856
.....(11)
Figure 2011080856
.....(12)
ただし、j,j,jは式(13)を満たす3次元ベクトルであり、3×3行列[j]は
Figure 2011080856
の関係を満たすヤコビ行列J(q)の左上の3×3の部分行列に相当する。
Figure 2011080856
.....(13)
第2の変換方法は、関節の可動状態のパターン分類である、パターンA〜Eに応じてパターン分けする方法である。
パターンα: 関節角度q、q、qのすべてがパターンAの場合、
Figure 2011080856
.....(101)
となる。
パターンβ: 関節角度q、q、qのいずれか1つの関節角度qがパターンB〜Eのいずれかの場合(すなわち、関節角度q、q、qのその他の2つの関節角度qがパターンAの場合)、
例えば、関節角度qがパターンB〜Eのいずれかであり、かつ、関節角度q、qがパターンAとすると(ただし、この例では、qは、q、q、qのいずれか1つの関節角度を意味し、q、qは、関節角度q、q、qのその他の2つの関節角度を意味する。)、
Figure 2011080856
.....(102)
となる。
パターンγ: 関節角度q、q、qのいずれか2つの関節角度qがパターンB〜Eのいずれかの場合(すなわち、関節角度q、q、qの残りの1つの関節角度qがパターンAの場合)、
例えば、関節角度qがパターンAであり、かつ、関節角度q、qがパターンB〜Eのいずれかであるとすると(ただし、この例では、qは、関節角度q、q、qのいずれか1つの関節角度を意味し、q、qは、関節角度q、q、qのその他の2つの関節角度を意味する。)、
Figure 2011080856
.....(103)
となる。
パターンδ: 関節角度q、q、qのすべてがパターンB〜Eのいずれかの場合、
Figure 2011080856
.....(104)
となる。
その他の式(7)、式(11)、式(12)は第1の変換方法と同様である。
上記第1の変換方法は、変換式のパターン分けをする必要が無く、簡潔なアルゴリズムとすることができるという利点を有するが、図1に示すロボットアーム5の第2関節12,第3関節13のように平行な関節軸を持つアーム構造の場合に、平行な関節軸の関節が同時に完全可動領域外になる場合に限り対応することはできない。
一方、第2の変換方法は、変換式のパターン分けをする必要があるが、アームの構造に関係なく、複数の関節が完全可動領域外になる場合も含め、あらゆる場合に対応可能である。
したがって、アームの構造又は各関節の可動範囲の大きさ等に応じて、上記第1の変換方法と第2の変換方法を選択するように、力変換手段24において、予め設定しておけばよい。
図5は、上述した原理に基づく制御プログラムによるインピーダンス制御時の動作ステップを説明するフローチャートである。
ステップS1では、エンコーダ42により計測された関節角度データ(関節角度ベクトルq)が制御装置1に取り込まれる。
ステップS2では、ロボットアーム5の運動学計算に必要なヤコビ行列J等の計算が近似逆運動学計算手段28により行われる。
ステップS3では、ロボットアーム5からの関節角度データ(関節角度ベクトルq)から、ロボットアーム5の現在の手先位置・姿勢ベクトルrが順運動学計算手段26により計算される(順運動学計算手段26での処理)。
ステップS4では、関節可動状態計算手段2において、ロボットアーム5からの関節角度データ(関節角度ベクトルq)に基づいて、パターンA〜パターンEのいずれになるかを判定し、関節可動状態Lを算出する。
ステップS5では、力センサー3の計測値Fが重力補償手段30に取り込まれ、式(5)に基づき外力Fが重力補償手段30で計算される。
ステップS6では、力変換手段24において、式(7)〜式(13)(第1の変換方法)、又は、式(7)、式(11)、式(12)、式(101)〜式(104)(第2の変換方法)に基づいて、重力補償手段30で計算された外力Fが変換外力Fに変換される。
ステップS7では、機械インピーダンスパラメータM、D、Kと、関節角度データ(関節角度ベクトルq)と、力変換手段24において変換された変換外力Fとから、手先位置・姿勢目標補正出力rdΔが、インピーダンス計算手段25により計算される(インピーダンス計算手段25での処理)。
ステップS8では、手先位置・姿勢目標ベクトルrと手先位置・姿勢目標補正出力rdΔの和が第1演算部61で計算されて求められた手先位置・姿勢補正目標ベクトルrdmと、現在の手先位置・姿勢ベクトルrとの差である手先位置・姿勢の誤差rが、第2演算部62で計算される(位置誤差補償手段27での処理)。位置誤差補償手段27の具体例としてはPID補償器が考えられる。定数の対角行列である比例、微分、積分の3つのゲインを適切に調整することにより、位置誤差が0に収束するように制御が働く。
ステップS9では、ステップS2で計算したヤコビ行列Jの逆行列を乗算することにより、位置誤差補償出力ureを手先位置・姿勢の誤差に関する値から、関節角度の誤差に関する値である関節角度誤差補償出力uqeに、近似逆運動学計算手段28により変換する(近似逆運動学計算手段28での処理)。
ステップS10では、関節角度誤差補償出力uqeが、近似逆運動学計算手段28からD/Aボード20を通じてモータードライバ18に与えられ、各モータ41を流れる電流量を変化させることによりロボットアーム5の各関節の関節軸の回転運動が発生する。
以上のステップS1〜ステップS10が、制御の計算ループとして繰り返し実行されることにより、ロボットアーム5の動作の制御が実現する。なお、ステップS2〜ステップS6の動作の順番はパラレル処理でも可能であり、必ずしも、この順番通りでなくてもよい。
本発明の前記第1実施形態にかかるロボット90では、関節可動状態計算手段2及び力変換手段24を備えることにより、以下に詳述するような動作及び効果が実現する。以下では、人100とロボット90が協調搬送を行う場合の動作を第3関節13を中心に説明を行う。
図6は、式(8)に現れる並進外力f、fh2の関係を示す。図6においてはロボットアーム5の第1関節11から第3関節13までを模式的に表している。拘束曲面31は、第3関節13が可動領域MRを越えて、それ以上動けずロックされた状態の場合に、その他の第1関節11及び第2関節12が動くことで、ロボットアーム5の手先のハンド6が動くことのできる曲面である。拘束曲面31は、実際は球面であるが、図6では、ある一断面の円のみ描いている。すなわち、第3関節13がロック状態になると、ロボットアーム5の手先は拘束曲面31に拘束される。
この拘束曲面31に接する平面であり、かつ、ロボットアーム5の手先を通る平面が、接平面32である。また、接平面32は、ベクトルj,jを含む平面に平行な平面である。
この接平面32への並進外力fh2の正射影が、fhCである。正射影fhCは、式(8)において第3関節13の可動状態L=0のときの並進外力fであり、式(14)で表される。なお、式(14)は式(8)において「{」と「}」とで囲まれた部分であり、式(8)を使って、変換外力Fを計算することは、正射影への変換を使用していることになる。また、正射影への変換を、式(8)だけでなく、式(9)、式(10)の「{」と「}」とで囲まれた部分も、それぞれ、同様に、正射影への変換を使用していることになる。また、正射影fhCは変換外力Fの一例である。すなわち、拘束曲面31の接平面32への正射影を考えれば、ロボットアーム5が動作可能な方向成分となる。
Figure 2011080856
.....(14)
また、並進外力fは、並進外力fh2のベクトルの先端と、並進外力fh2の正射影fhCのベクトルの先端とを結んだ直線(点線)上に、先端が来る中間的な値であり、その位置は可動状態Lにより定義される(可動状態L=0のときにはf=fhC、可動状態L=1のときにはf=fh2)。
第3関節13の手先位置が、完全可動領域PMR内にある緩衝領域境界33の内側である点P1に位置するときは、パターンA(可動状態L=1)となるので、f=fh2となり、人のかける力の方向にロボットアーム5の手先は自由に動作する。ここで、第1関節11及び第2関節12も完全可動領域PMR内にある場合に限れば、fh2=fとなり、人のかける力の方向にロボットアーム5の手先は自由に動作する。
手先が緩衝領域境界33を越え、外側の点P2に移動すると、パターンC1になり、可動状態Lが変化すると共に変化する並進外力fでインピーダンス制御が行われ、徐々に動きに拘束がかかるようになる。
手先が可動領域MRの境界である拘束曲面31上の点P3に到達すると、パターンE1になり、並進外力fhCを入力にインピーダンス制御を行うことになり、ロボットアーム5の手先の動きは拘束曲面31に沿うような動きとなる。すなわち、fのような成分を持つ力を人からロボットアーム5にかけても、式(8)による、並進外力fへの変換の際に打ち消されるため、ロボットアーム5の手先を、拘束曲面31を越えて外側に動くことはできず、第3関節13の角度も可動領域MRを越えることはない。
一方、点P3において、−fのような成分を持つ力を人からロボットアーム5にかけた場合、第3関節13は可動領域MR内に戻る動きとなるため、パターンE2となり、可動状態L=dLとオフセット値が加算される分、並進外力fは復元力のように働き、関節が可動領域MR内に戻る動きが可能となる。
また、同様に点P2においても、−fのような成分を持つ力を人からロボットアーム5にかけた場合、第3関節13は緩衝領域BR1から完全可動領域PMR内に戻る動きとなるため、パターンC2となり、可動状態L=(q3MAX−q)/dq+dLとオフセット値が加算される分、並進外力fは復元力のように働き、関節が完全可動領域PMR内に戻る動きが可能となる。
前記した動作制限において、緩衝領域BR1,BR2では、徐々に動作に拘束をかけることで、動作を安定させる役割を担っている。緩衝領域BR1,BR2を設けない場合、手先が拘束曲面31上に到達すると、インピーダンス計算手段25への入力が並進外力fh2から並進外力fhCへステップ的に変化することになるので、制御系、すなわち、インピーダンス制御手段4が不安定になりやすい。
また、パターンD2又はパターンE2のように可動領域MR内へ戻る力を受け付ける場合に、拘束曲面31の近傍でリミットサイクルのような現象が起こり、制御系、すなわち、インピーダンス制御手段4がさらに不安定となる可能性がある。これに対して、緩衝領域BR1,BR2を設け、オフセット値dLを導入することで、リミットサイクルを起こさず、スムーズに動作の拘束・復帰を行うことが可能となる。
なお、パターンB(パターンB1,パターンB2)は、第1緩衝領域BR1に関するものであり、パターンAの第1緩衝領域BR1とは反対側の領域である第2緩衝領域BR2のパターンC(パターンC1,パターンC2)と同様であるため、説明を省略する。パターンD(パターンD1,パターンD2)は、第1緩衝領域BR1の可動領域外に関するものであり、パターンAの第1緩衝領域BR1とは反対側の領域である第2緩衝領域BR2の可動領域外のパターンE(パターンE1,パターンE2)と同様であるため、説明を省略する。
以上は、第3関節13の場合を中心に説明を行ったが、第1関節11及び第2関節12の場合も同様であり、第1の変換方法の場合には、それぞれ、式(9)及び式(10)に基づく変換を行うことにより、また、第2の変換方法の場合には、パターンβの変換を行うことにより、各関節の可動領域MRに応じたロボットアーム5の動作の拘束が可能となる。そして、第1の変換方法の場合、一連の式(7)〜式(11)を使うことにより、第1関節11と、第2関節12と、第3関節13とに対して、平行な関節軸の関節が同時に完全可動領域外になる場合を除き、同時に動作制限を行うことが可能となる。
第2の変換方法の場合、パターンα〜パターンδのパターン分けにより、複数の関節が同時にロックする場合も厳密に扱うことができる。
図12は、式(103)に現れる並進外力f、fの関係を示す。図12においては、ロボットアーム5の第1関節11から第3関節13までを模式的に表している。拘束曲線201は、第2関節12と第3関節13が可動領域MRを越えて、それ以上動けずロックされた状態の場合に、残りの第1関節11が動くことで、ロボットアーム5の手先のハンド6が動くことのできる曲線である。すなわち、第2関節12と第3関節13がロック状態になると、ロボットアーム5の手先は拘束曲線201に拘束される。
この拘束曲線201の接線であり、かつ、ロボットアーム5の手先を通る直線が、接線202である。また、接線202は、ベクトルjに平行な直線である。
この接線202への並進外力fの正射影が、fhcである。正射影fhcは、式(103)において第2関節12の可動状態L=0かつ第3関節13の可動状態L=0のときの並進外力fであり、式(105)で表される。なお、式(105)はL=0の場合の式(103)であり、式(103)を使って、変換外力Fを計算することは、正射影への変換を使用していることになる。すなわち、拘束曲線201の接線202への正射影を考えれば、ロボットアーム5が動作可能な方向成分となる。
Figure 2011080856
.....(105)
また、並進外力fは、並進外力fのベクトルの先端と、並進外力fの正射影fhcのベクトルの先端とを結んだ直線(点線)上に、先端が来る中間的な値であり、その位置は可動状態Lにより定義される(可動状態L=0のときにはf=fhC、可動状態L=1のときにはf=f)。
以上のように式(105)に基づく変換によれば、第2関節12と第3関節13の2つの関節がロックする場合の動作も扱うことが可能となる。
ロボットアーム5の手先の姿勢(φ、θ、ψ)を決める第4関節14、第5関節15、第6関節16に関しては、式(12)に基づくことで各関節の動作制限が実現する。式(12)において、J(q)Fの部分は式(6)右辺と同様であり、外力Fにより各関節11,12,13,14,15,16に発生するトルクτ=[τ,τ,τ,τ,τ,τに相当する。このトルクベクトルの第3行,第4行,第5行に、それぞれ第4関節14、第5関節15、第6関節16の関節可動状態L,L,Lをかけたベクトル[τ,τ,τ,Lτ,Lτ,Lτを、式J(q)−Tに用いて手先外力に逆変換し、モーメント成分のみを抽出したのがnである。したがって、例えば、L=0とすると、τ=0となるので、モーメント成分nを入力としてインピーダンス制御すると、第4関節14は動作せず固定されることになる。
第5関節15及び第6関節16に関しても同様であり、以上の原理により、関節可動状態L,L,Lに基づき、ロボットアーム5の手先の姿勢(φ、θ、ψ)を決める手首部7である第4関節14と第5関節15と第6関節16との動作制限が実現する。
以上、本第1実施形態によれば、関節可動状態計算手段2及び力変換手段24を有することにより、インピーダンス制御による動作時に人がロボットアーム5の関節の可動領域MRを越えるような操作を行っても、関節可動状態計算手段2において当該関節の可動状態を判定し、力変換手段24により変換された変換外力Fをインピーダンス計算手段25への入力として使うことで、ロボットアーム5の動作制限が可能となり、関節の可動領域MRを越えるのを防ぐことができる。
また、本第1実施形態によれば、インピーダンス計算手段25への入力に対し力変換手段24により変換をかけることにより動作制限を行う、すなわち、入力を外力Fから変換外力Fへと制限することで動作制限を行うため、ロボットアーム5の機構的な可動領域MRを越えてロボットアーム5が動けない状態でも、インピーダンス計算手段25に入力が入り続け、後段にあるインピーダンス計算手段25又は位置制御系29に誤差が蓄積してしまうことがなく、安定な制御系とすることができるという格別の効果を発揮する。
さらに、力変換手段24を使わずに、位置制御系29において関節の動作制限を行う場合が(公知技術として)考えられるが、その場合は、後段にあるインピーダンス計算手段25又は位置制御系29に誤差蓄積に対する対策を施す必要があり、複雑な制御系構造となってしまう。これに対して、力変換手段24を使う本第1実施形態では、誤差蓄積に対する対策を施す必要はなく、簡潔な制御系構造とすることができる。
また、前記第1実施形態では、インピーダンス制御のインピーダンスパラメータを変化させることで動作制限を行う方式ではないため、パラメータ可変のための仕組みが不要であり、制御系の構造を簡潔にすることができ、さらに、パラメーター変化により制御系が不安定になることを防ぐことができる。すなわち、前記第1実施形態では、力変換手段24により入力制限を行うこと(言い換えれば、力変換手段24により外力Fが変換された変換外力Fをインピーダンス計算手段25への入力として使うこと)で、前記優れた効果を発揮させることができるので、インピーダンスパラメータを変化させる必要はない。
さらに、本第1実施形態によれば、各関節の動作制限は独立に行われるため、仮にある関節が動作制限されても、動作可能な他の関節は動作制限されず動き続けることが可能であるので、すぐに動作制限がかかり停止するようなことのない、操作性の良いロボットとすることができる。
(第2実施形態)
本発明の第2実施形態におけるロボットの基本的な構成は、図1及び図2に示した第1実施例の場合と同様であるので、共通部分の説明は省略し、異なる部分についてのみ以下、詳細に説明する。
図7に示すように、第2実施形態では、通常のインピーダンス制御手段43(すなわち、インピーダンス計算手段25と目標軌道生成手段23と順運動学計算手段26と位置誤差補償手段27と近似逆運動学計算手段28と第1演算部61と第2演算部62)とは独立した力入力制御手段34に、関節可動状態計算手段2と力変換手段24とを配設し、既存の制御装置(第1制御装置)1Bと通信する構成としている。
図8は、第2実施形態のロボット90Bの全体構成を示しており、制御装置の具体的な構成を示している。第2実施形態の制御装置では、第1制御装置1Bとは別に第2制御装置46が追加され、2つの独立した制御装置1B,46で構成される。
第2制御装置46は、ハードウェア的には一般的なパーソナルコンピュータにより構成されている。そして、入出力IF(D/Aボード45とA/Dボード47とカウンタボード48)を除く部分は、パーソナルコンピュータで実行される制御プログラム44により力入力制御手段34を実現する。力入力制御手段34は、A/Dボード47を通じて力センサー3より外力Fが入力され、力変換手段24による変換結果である変換外力Fが、D/Aボード45を通じて第1制御装置1Bの力センサー入力であるA/Dボード21に出力され、A/Dボード21を通じて第1制御装置1Bに取り込まれる。このように、D/Aボード45とA/Dボード21とを接続することで、電圧値により変換外力Fが伝えられる通信手段が構成されている。
また力入力制御手段34は、カウンタボード48を通じてロボットアーム5の各関節部のエンコーダ42より出力される関節角度情報を取得し、関節可動状態計算手段2による、関節11,12,13,14,15,16の可動状態の判定のための情報として使用される。
本第2実施形態は、前記通常のインピーダンス制御手段43に、力入力制御手段34を別途追加した構成であるため、図7のような、2つに分離独立した構成が容易に実現できる。したがって第1実施形態は、図1に示すように一つの制御装置(PC)1上で動作する1つの制御プログラム17によりインピーダンス制御手段4を実現したが、第2実施形態は、図8に示すように第1制御装置1Bに第2制御装置46を加え、既存の第1制御装置1Bと通信する構成が可能となる。
この構成により、例えば、市販のロボット制御装置の力センサーからの入力信号を処理するために第2制御装置46を追加するだけで、ロボットアーム5の動作制限を行なうことができる。
(第3実施形態)
本発明の第3実施形態における制御装置の基本的な構成は、図1及び図2に示した第1実施例の場合と同様であるので、共通部分の説明は省略し、異なる部分についてのみ以下、詳細に説明する。
図9は、本発明の第3実施形態におけるロボット90Cのインピーダンス制御手段の構成を示すブロック線図であり、図10はロボット90Cによる人100との協調搬送作業を説明する図である。
図10に示すように、第3実施形態のロボット90Cは、手首部7に操作ハンドル40が力センサー3を介して固定されおり、人100は操作ハンドル40を直接握り、力をかけることでロボット90Cを操作することができる。操作ハンドル40とロボットアーム5の間には力センサー3が配設されており、人100が操作するときの力を力センサー3で検出することができる。
また、操作ハンドル40には、動作モード設定部の一例としての動作モード設定スイッチ39が設けられており、人100は、動作モード入力部の一例として機能する動作モード設定スイッチ39を操作することにより、動作モード(可動又は固定のモード)の設定及び切換を行うことができる。
図9に示すように、動作モード設定スイッチ39から動作モード指令が関節動作モード設定手段37に入力される。さらに、関節可動状態計算手段2から関節可動状態Lが関節動作モード設定手段37に入力され、力変換手段24に拡張関節可動状態Limが出力される。
図10に示すような人100とロボット90Cとの協調作業形態の場合、物体38の負荷をすべてロボットアーム5が受け持つため、重力補償手段30は不要である。この場合には、力センサー3の計測値Fが力変換手段24に外力Fとして入力されて、変換外力Fに変換される。
動作モード設定スイッチ39では、ロボットアーム5の6つの関節11,12,13,14,15,16のそれぞれの可動又は固定のモード設定を行うことができる。
インピーダンス制御手段4内に備えられた関節動作モード設定手段37は、動作モード設定スイッチ39で設定した各関節の可動又は固定のモード設定に応じて、可動のモード設定の場合はそのまま可動状態Lを拡張関節可動状態Limとして出力し、固定のモード設定の場合は拡張関節可動状態Lim=0を出力する。これらの拡張関節可動状態Limは、前記第1実施形態で説明した可動状態Lと同様に取り扱い、変換手段24に入力されて使用される。これにより、固定のモード設定された関節は、第1実施形態で説明した原理により、その動作が制限されて固定される。
以上のように、本第3実施形態によれば、関節動作モード設定手段37を有することにより、特定の関節を固定した動作、又は、特定の関節のみを回転させるような動作が容易に可能となり、より操作性の良いロボットとすることができる。
第3実施形態にかかるロボットの動作の具体例としては、図11に示すように、第1関節11のみ回転させ、ロボットアーム5を台部10に対して旋回させるような動作をさせるときには、動作モード設定スイッチ39で第1関節11を可動と設定し、第2〜第6関節12〜16を固定に設定すれば、人100が操作ハンドル40に力をかけるだけでロボットアーム5の第1関節11のみを容易に回転させる旋回動作を実現することができる。
なお、前記様々な実施形態のうちの任意の実施形態を適宜組み合わせることにより、それぞれの有する効果を奏するようにすることができる。
本発明のロボット、ロボットの制御装置、及び制御方法は、ロボットアームの関節の動作範囲の規制など、関節の動作状況に応じたロボットアームの動作制限を、簡潔な制御系構造で実現し、制御系の不安定さを低減することができて、工場又は家庭内、介護現場等でパワーアシスト等の作業支援を行うロボット等、人と協働するロボット、ロボットの制御装置、及び制御方法として有用である。
本発明は、添付図面を参照しながら好ましい実施形態に関連して充分に記載されているが、この技術の熟練した人々にとっては種々の変形又は修正は明白である。そのような変形又は修正は、添付した請求の範囲による本発明の範囲から外れない限りにおいて、その中に含まれると理解されるべきである。

Claims (11)

  1. 多関節ロボットアームと、
    前記多関節ロボットアームに配設され、かつ、外力を検出する外力検出手段と、
    前記多関節ロボットアームの関節が可動範囲のいずれかに位置して可動状態を計算する関節可動状態計算手段と、
    前記関節可動状態計算手段により計算された前記関節の前記可動状態に基づき、前記外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に変換する外力変換手段と、
    前記外力変換手段により変換された前記変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われるように前記多関節ロボットアームを制御する制御手段とを有するロボット。
  2. 前記外力変換手段は、前記外力検出手段に検出された前記外力を、前記多関節ロボットアームの前記関節が固定されたときに前記多関節ロボットアームの手先が動くことのできる拘束曲面の接平面への正射影として変換する請求項1に記載のロボット。
  3. さらに、前記多関節ロボットアームにかかる前記外力により各関節に発生する外力トルクを計算する外力トルク計算手段を有し、
    前記関節可動状態計算手段は、前記外力トルク計算手段の計算結果に基づき前記外力トルクが前記多関節ロボットアームの各関節の動作を可動領域外より可動領域内に戻そうとする力であるかどうかを判定し、
    前記関節可動状態計算手段が、前記外力トルクが前記多関節ロボットアームの各関節の動作を前記可動領域外より前記可動領域内に戻そうとする力であると判定する場合には、前記制御手段は前記動作制限を行わない一方、
    前記関節可動状態計算手段が、前記外力トルクが前記多関節ロボットアームの各関節の動作を前記可動領域外より前記可動領域内に戻そうとする力ではないと判定する場合には、前記制御手段は前記動作制限を行う請求項1又は2に記載のロボット。
  4. 前記関節可動状態計算手段は、前記外力を関節トルクに変換することにより、前記関節トルクに変換された前記変換外力が、前記多関節ロボットアームの各関節の動作を可動領域外より可動領域内に戻そうとする力であるかどうかを判定し、
    前記関節可動状態計算手段が、前記変換外力が、前記多関節ロボットアームの各関節の動作を前記可動領域外より前記可動領域内に戻そうとする力であると判定する場合には、前記制御手段は前記動作制限を行わない一方、
    前記関節可動状態計算手段が、前記変換外力が、前記多関節ロボットアームの各関節の動作を前記可動領域外より前記可動領域内に戻そうとする力ではないと判定する場合には、前記制御手段は前記動作制限を行う請求項1又は2に記載のロボット。
  5. 前記多関節ロボットアームの各関節に対し、可動あるいは固定の動作モードを設定する動作モード設定部と、
    前記動作モード設定部で設定された前記動作モードの指令が入力されて、前記動作モードと前記関節可動状態計算手段により計算された前記関節の前記可動状態とに基づき前記可動状態の計算を行う関節動作モード設定手段とをさらに備えて、
    前記外力変換手段は、前記関節動作モード設定手段により計算された前記関節の前記可動状態に基づき、前記外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に変換し、
    前記制御手段は、前記変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われる請求項1又は2に記載のロボット。
  6. 前記関節可動状態計算手段は、前記関節の可動領域の両端の境界線から一定範囲だけ内側に緩衝領域をそれぞれ設け、前記各緩衝領域では前記関節の前記可動状態を徐々に変化させる請求項3に記載のロボット。
  7. 前記多関節ロボットアームの前記関節の可動領域の両端の内側にそれぞれ設けられた緩衝領域と、前記緩衝領域を除く前記可動領域の残りの領域である完全可動領域PMRと、可動領域外の領域とに分割し、
    前記関節可動状態計算手段は、各領域毎に、前記関節の前記可動状態の値を異ならせるように計算される請求項1に記載のロボット。
  8. 前記関節可動状態計算手段と前記力変換手段とが第2制御手段として、前記多関節アームの前記制御手段とは別に備えられ、
    前記力変換手段が変換した外力が前記第2制御手段より通信を通じて前記制御手段に入力される請求項1に記載のロボット。
  9. 多関節ロボットアームを備えるロボットの制御装置であって、
    前記多関節ロボットアームの関節が可動範囲のいずれかに位置して可動状態を計算する関節可動状態計算手段と、
    前記関節可動状態計算手段により計算された前記関節の前記可動状態に基づき、前記多関節ロボットアームに配設されて外力を検出する外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に変換する外力変換手段と、
    前記外力変換手段により変換された前記変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われるように前記多関節ロボットアームを制御する制御手段とを有するロボットの制御装置。
  10. 多関節ロボットアームを備えるロボットの制御方法であって、
    前記多関節ロボットアームの関節が可動範囲のいずれかに位置して可動状態を関節可動状態計算手段で計算し、
    前記計算された前記関節の前記可動状態に基づき、前記多関節ロボットアームに配設されて外力を検出する外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に外力変換手段で変換し、
    前記変換された変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われるように前記多関節ロボットアームを制御手段で制御するロボットの制御方法。
  11. 多関節ロボットアームを備えるロボットの制御プログラムであって、
    コンピュータを、
    前記多関節ロボットアームの関節が可動範囲のいずれかに位置して可動状態を計算する関節可動状態計算手段と、
    前記関節可動状態計算手段により計算された前記関節の前記可動状態に基づき、前記多関節ロボットアームに配設されて外力を検出する外力検出手段が検出した前記外力を、前記外力が前記ロボットアームに加えられたときに前記ロボットアームが動作可能な方向成分を抽出可能な変換外力に変換する外力変換手段と、
    前記外力変換手段により変換された前記変換外力に基づいてインピーダンス制御を行うことにより、前記多関節ロボットアームの前記関節の前記可動状態に応じた動作制限が行われるように前記多関節ロボットアームを制御する制御手段として機能させるためのロボットの制御プログラム。
JP2011541422A 2010-01-04 2010-10-22 ロボット、ロボットの制御装置、制御方法、及び制御プログラム Active JP4896276B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011541422A JP4896276B2 (ja) 2010-01-04 2010-10-22 ロボット、ロボットの制御装置、制御方法、及び制御プログラム

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2010000084 2010-01-04
JP2010000084 2010-01-04
PCT/JP2010/006271 WO2011080856A1 (ja) 2010-01-04 2010-10-22 ロボット、ロボットの制御装置、及び制御方法
JP2011541422A JP4896276B2 (ja) 2010-01-04 2010-10-22 ロボット、ロボットの制御装置、制御方法、及び制御プログラム

Publications (2)

Publication Number Publication Date
JP4896276B2 JP4896276B2 (ja) 2012-03-14
JPWO2011080856A1 true JPWO2011080856A1 (ja) 2013-05-09

Family

ID=44226288

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011541422A Active JP4896276B2 (ja) 2010-01-04 2010-10-22 ロボット、ロボットの制御装置、制御方法、及び制御プログラム

Country Status (4)

Country Link
US (1) US8396594B2 (ja)
JP (1) JP4896276B2 (ja)
CN (1) CN102470531B (ja)
WO (1) WO2011080856A1 (ja)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102015307B1 (ko) * 2010-12-28 2019-08-28 삼성전자주식회사 로봇 및 그 제어 방법
WO2012124342A1 (ja) * 2011-03-17 2012-09-20 パナソニック株式会社 ロボット、ロボットの制御装置、制御方法、及び制御プログラム
DE102012102294B4 (de) * 2011-03-18 2015-03-19 Denso Wave Inc. Verfahren zum Erfassen eines Achsenabstand-Versatzes eines 6-Achs-Roboters
US9815193B2 (en) * 2011-06-27 2017-11-14 Delaware Capital Formation, Inc. Electric motor based holding control systems and methods
JP5966372B2 (ja) * 2012-01-17 2016-08-10 セイコーエプソン株式会社 ロボット制御装置、ロボットシステム、ロボット制御方法及びロボット
JP5962020B2 (ja) * 2012-01-17 2016-08-03 セイコーエプソン株式会社 ロボット制御装置、ロボットシステム、ロボット及びロボット制御方法
JP5695223B2 (ja) * 2012-05-23 2015-04-01 パナソニックIpマネジメント株式会社 ロボット、ロボットの制御装置、制御方法、及び制御プログラム
JP6128767B2 (ja) * 2012-07-05 2017-05-17 キヤノン株式会社 ロボット制御装置、及びロボット制御方法
EP2896487A1 (en) * 2012-09-04 2015-07-22 Kabushiki Kaisha Yaskawa Denki Method for adjusting robot control parameters, robot system, and robot control device
WO2014129110A1 (ja) * 2013-02-25 2014-08-28 パナソニック株式会社 ロボット、ロボットの制御装置及び制御方法、並びに、ロボット用制御プログラム
US10202175B2 (en) * 2013-06-07 2019-02-12 Francesco AUTELLI Apparatus for transferring people and/or goods to or from a vessel
CN103318812B (zh) * 2013-07-09 2015-04-01 京东方科技集团股份有限公司 一种堆垛机用货叉组件及堆垛机、搬送卡匣的方法
CN103600354B (zh) * 2013-11-08 2016-10-05 北京卫星环境工程研究所 航天器机械臂柔性随动控制重力补偿方法
CN103640022A (zh) * 2013-11-13 2014-03-19 北京卫星环境工程研究所 航天器机械臂柔性随动控制方法
US9452532B2 (en) 2014-01-27 2016-09-27 Panasonic Intellectual Property Management Co., Ltd. Robot, device and method for controlling robot, and computer-readable non-transitory recording medium
JP2015217451A (ja) * 2014-05-14 2015-12-07 ファナック株式会社 外力監視機能を有するワーク搬送方法システム
JP6460690B2 (ja) * 2014-09-16 2019-01-30 キヤノン株式会社 ロボット装置、ロボット制御方法、プログラム及び記録媒体
US9804593B1 (en) * 2014-12-12 2017-10-31 X Development Llc Methods and systems for teaching positions to components of devices
DE102015102642B4 (de) * 2015-02-24 2017-07-27 Kastanienbaum GmbH Vorrichtung und Verfahren zur Steuerung und Regelung eines Roboter-Manipulators
US10329042B2 (en) * 2015-03-20 2019-06-25 Seiko Epson Corporation Packing apparatus and packing method
JP6582483B2 (ja) 2015-03-26 2019-10-02 セイコーエプソン株式会社 ロボット制御装置およびロボットシステム
JP6423815B2 (ja) 2016-03-30 2018-11-14 ファナック株式会社 人協働型のロボットシステム
WO2017199502A1 (ja) * 2016-05-20 2017-11-23 シャープ株式会社 ロボットおよびその制御方法、ならびに制御プログラム
JP6755724B2 (ja) * 2016-06-20 2020-09-16 キヤノン株式会社 制御方法、ロボットシステム、および物品の製造方法
CN105928682A (zh) * 2016-06-30 2016-09-07 苏州东菱振动试验仪器有限公司 模拟人体进出汽车座椅疲劳测试装置及测试方法
CN106475999B (zh) * 2016-12-23 2018-11-09 东南大学 刚性条件下基于阻抗模型的双臂协调的加速度控制方法
JP6392910B2 (ja) 2017-01-13 2018-09-19 ファナック株式会社 ロボットの安全確保動作機能を備えた人間協働ロボットシステム
CN108406765B (zh) * 2018-02-06 2021-05-07 南京航空航天大学 一种开链式多臂机器人阻抗控制方法
WO2019199933A1 (en) * 2018-04-12 2019-10-17 Corning Incorporated Apparatus and method for engaging a moving glass ribbon
JP7370746B2 (ja) * 2019-07-09 2023-10-30 株式会社東芝 協調制御装置およびロボットシステム
CN114514091A (zh) * 2019-10-23 2022-05-17 Abb瑞士股份有限公司 机器人控制方法和装置
JP7451940B2 (ja) * 2019-10-31 2024-03-19 セイコーエプソン株式会社 制御方法および算出装置
JP7528479B2 (ja) * 2020-03-18 2024-08-06 セイコーエプソン株式会社 ロボットの制御方法及びロボットシステム
TWI812078B (zh) * 2021-05-14 2023-08-11 台達電子工業股份有限公司 雙臂機器人組裝系統
CN114034318B (zh) * 2021-11-23 2024-07-02 歌尔科技有限公司 音箱的校准控制方法、装置、设备及可读存储介质
CN115946120B (zh) * 2023-01-09 2024-02-13 上海艾利特机器人有限公司 机械臂控制方法、装置、设备和介质

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3369351B2 (ja) * 1995-03-28 2003-01-20 富士通株式会社 多関節マニピュレータの弾性設定方法および制御装置
EP2362285B1 (en) * 1997-09-19 2015-03-25 Massachusetts Institute of Technology Robotic apparatus
JP3099067B1 (ja) * 1999-06-01 2000-10-16 工業技術院長 物体協調運搬ロボットの制御方法及びその装置
US6522952B1 (en) 1999-06-01 2003-02-18 Japan As Represented By Secretary Of Agency Of Industrial Science And Technology Method and system for controlling cooperative object-transporting robot
US7443115B2 (en) * 2002-10-29 2008-10-28 Matsushita Electric Industrial Co., Ltd. Apparatus and method for robot handling control
WO2004052598A1 (ja) * 2002-12-12 2004-06-24 Matsushita Electric Industrial Co., Ltd. ロボット制御装置
JP2005014133A (ja) * 2003-06-25 2005-01-20 Honda Motor Co Ltd アシスト搬送方法及びその装置
EP1642693A1 (en) 2003-06-25 2006-04-05 HONDA MOTOR CO., Ltd. Assist transportation method and device
US7603199B2 (en) * 2003-11-27 2009-10-13 Honda Motor Co., Ltd. Control device for mobile body
US7313463B2 (en) * 2005-03-31 2007-12-25 Massachusetts Institute Of Technology Biomimetic motion and balance controllers for use in prosthetics, orthotics and robotics
JP4682791B2 (ja) * 2005-10-12 2011-05-11 ソニー株式会社 操作空間物理量算出装置及び操作空間物理量算出方法、並びにコンピュータ・プログラム
CN1994689B (zh) * 2005-12-28 2011-02-16 松下电器产业株式会社 机器人及机器人检测自动化方法
CN101870108B (zh) * 2006-01-13 2011-09-28 松下电器产业株式会社 机械手臂的控制装置
JP4508164B2 (ja) * 2006-06-26 2010-07-21 トヨタ自動車株式会社 多関節ロボット及びその制御プログラム
JP4243309B2 (ja) * 2006-07-04 2009-03-25 パナソニック株式会社 ロボットアームの制御装置
CN102229148B (zh) * 2007-06-27 2013-10-16 松下电器产业株式会社 机器手控制装置及控制方法、机器人
US7751938B2 (en) * 2007-07-05 2010-07-06 Panasonic Corporation Robot arm control device and control method, robot, and control program
WO2009098855A1 (ja) * 2008-02-06 2009-08-13 Panasonic Corporation ロボット、ロボットの制御装置及び制御方法、並びに、ロボットの制御装置の制御プログラム
JP4443614B2 (ja) * 2008-02-27 2010-03-31 トヨタ自動車株式会社 パワーアシスト装置及びその制御方法
JP4508263B2 (ja) 2008-04-24 2010-07-21 トヨタ自動車株式会社 パワーアシスト装置およびその制御方法

Also Published As

Publication number Publication date
WO2011080856A1 (ja) 2011-07-07
US20120010747A1 (en) 2012-01-12
CN102470531B (zh) 2016-01-20
CN102470531A (zh) 2012-05-23
JP4896276B2 (ja) 2012-03-14
US8396594B2 (en) 2013-03-12

Similar Documents

Publication Publication Date Title
JP4896276B2 (ja) ロボット、ロボットの制御装置、制御方法、及び制御プログラム
US9002519B2 (en) Robot control method, robot control device, and robot control system
JP4243309B2 (ja) ロボットアームの制御装置
JP5129415B2 (ja) ロボット、ロボットの制御装置、制御方法、及び制御プログラム
JP5399593B2 (ja) ロボット、ロボットの制御装置、制御方法、及び制御プログラム
WO2001038048A1 (fr) Unite de commande de robot
US8428780B2 (en) External force target generating device of legged mobile robot
US9676100B2 (en) Control apparatus of robot, robot, and program thereof
US20110087374A1 (en) Robot system
US20110213498A1 (en) Desired motion evaluation apparatus of legged mobile robot
JP7068133B2 (ja) 制御システム、制御方法、及び制御プログラム
JP6057284B2 (ja) 多関節ロボット及び半導体ウェハ搬送装置
CN113927592B (zh) 一种基于自适应降阶滑模算法的机械臂力位混合控制方法
WO2020184203A1 (ja) ロボット制御装置及びロボット制御方法
JPH11231940A (ja) ロボットの制御装置
JP2010036293A (ja) 多関節ロボット
JPH0760667A (ja) ロボットのウィービング制御装置
JPH11345010A (ja) ロボットの制御装置
JPH058187A (ja) ロボツト
JP2014159066A (ja) ロボット制御装置及びロボットの制御方法
JP5829968B2 (ja) 多関節ロボット、その関節協調制御装置および方法
Nishiwaki et al. Object manipulation by hand using whole-body motion coordination
JPH10225884A (ja) 作業ロボット及びその制御方法

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111129

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111220

R150 Certificate of patent or registration of utility model

Ref document number: 4896276

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150106

Year of fee payment: 3