Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5776486B2 - ロボット制御装置、その制御方法及びプログラム - Google Patents
[go: Go Back, main page]

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

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

Info

Publication number
JP5776486B2
JP5776486B2 JP2011224998A JP2011224998A JP5776486B2 JP 5776486 B2 JP5776486 B2 JP 5776486B2 JP 2011224998 A JP2011224998 A JP 2011224998A JP 2011224998 A JP2011224998 A JP 2011224998A JP 5776486 B2 JP5776486 B2 JP 5776486B2
Authority
JP
Japan
Prior art keywords
robot
joint
information
movable range
robot arm
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.)
Expired - Fee Related
Application number
JP2011224998A
Other languages
English (en)
Other versions
JP2013082049A (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.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
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 Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2011224998A priority Critical patent/JP5776486B2/ja
Publication of JP2013082049A publication Critical patent/JP2013082049A/ja
Application granted granted Critical
Publication of JP5776486B2 publication Critical patent/JP5776486B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Manipulator (AREA)

Description

本発明は、ロボットの動作を制御して操作対象物を効率的に操作するロボット制御装置、その制御方法及びプログラムに関するものである。
近年、マニピュレータや移動装置を備え、人間の生活環境内で自律移動し、ユーザの指示に従って操作対象物を操作できる様々なサービスロボットなどが開発されている。
例えば、複数のマニピュレータを有する複腕ロボットを動作させ、複数の部品の組み付け作業を行うためのプログラムを生成するプログラム作成方法が知られている(特許文献1参照)。
特開2010−137298号公報
しかしながら、上記特許文献1に示すプログラムを用いてロボットを制御した場合、例えば、家具や壁などの障害物によりロボットの動作範囲が限定されている環境内では、その環境に応じて、操作対象物を効率良く操作することについて、十分考慮されているとは言えず、そのような操作は困難と思われる。
本発明は、このような問題点を解決するためになされたものであり、ロボットの動作範囲が限定されている環境内においても、操作対象物を効率良く操作できるロボット制御装置、その制御方法及びプログラムを提供することを主たる目的とする。
上記目的を達成するための本発明の一態様は、複数の関節を含むロボットアームを備えるロボットを制御して操作対象物を操作するロボット制御装置であって、前記ロボットに所望の動作をさせるための動作情報を入力する入力手段と、前記ロボットの周囲の環境情報を検出する環境情報検出手段と、前記ロボットの状態量を検出する状態検出手段と、前記入力手段により入力された動作情報と、前記環境検出手段により検出された環境情報と、に基づいて、前記ロボットアームの各関節が可動できる第1関節可動範囲を算出する関節可動範囲算出手段と、前記可動範囲算出手段により算出された第1関節可動範囲の制約下において、前記ロボットアームに関するジャコビアン行列の特異値と、前記入力手段により入力された動作情報と、をパラメータとして含む評価関数を、最小化させるための前記ロボットアームの各関節角度を算出し、該算出した各関節角度に基づいて前記ロボットの位置を算出する位置関節角度算出手段と、前記状態検出手段により検出されたロボットの状態量と、前記位置関節角度算出手段により算出された前記ロボットアームの各関節角度及びロボットの位置に基づいて、前記ロボットを制御する制御手段と、を備える、ことを特徴とするロボット制御装置である。
この一態様において、前記ロボットアームに関するジャコビ行列は、第1特異値と、該第1特異値よりも大きな第2特異値と、を有しており、前記位置関節角度算出手段は、前記入力手段により入力された動作情報が所定方向に操作対象物を移動させる情報の場合において、前記第1特異値と前記動作情報とを含む第1評価関数を最小化するための前記ロボットアームの各関節角度を算出し、前記入力手段により入力された動作情報が操作対象物に対して所定力を付加する情報の場合において、前記第2特異値と前記動作情報とを含む第2評価関数を最小化するための前記ロボットアームの各関節角度を算出してもよい。
この一態様において、前記入力手段により入力された動作情報が所定方向に操作対象物を移動させつつ所定力を加える情報である場合において、前記位置関節角度算出手段は、前記操作対象物を所定方向へ移動させることが、前記操作対象物に所定力を加えることよりも重要であるとき、前記可動範囲算出手段により算出された前記第1関節可動範囲、及び前記重要度を示す所定係数と前記第1特異値とを含む関数で表わされる第2関節可動範囲の制約下で、前記第1評価関数を最小化させるための前記ロボットアームの各関節角度を算出し、前記操作対象物に所定力を加えることが前記操作対象物を所定方向へ移動させることよりも重要であるとき、前記可動範囲算出手段により算出された前記第1関節可動範囲、及び前記重要度を示す所定係数と前記第2特異値とを含む関数で表わされる第2関節可動範囲の制約下で、前記第2評価関数を最小化させるための前記ロボットアームの各関節角度を算出してもよい。
この一態様において、前記関節可動範囲算出手段は、前記入力手段により入力された動作情報と、前記環境情報検出手段により検出された前記ロボット周囲の障害物の位置情報と、に基づいて、前記ロボットの動作範囲を算出し、該算出した動作範囲と、予め設定された前記関節機構の制約による関節の可動範囲と、に基づいて、前記第1関節可動範囲を算出してもよい。
他方、上記目的を達成するための本発明の一態様は、複数の関節を含むロボットアームを備えるロボットを制御して操作対象物を操作するロボット制御装置の制御方法であって、前記ロボットに所望の動作をさせるための動作情報を入力するステップと、前記ロボットの周囲の環境情報を検出するステップと、前記ロボットの状態量を検出するステップと、前記入力された動作情報と、前記検出された環境情報と、に基づいて、前記ロボットアームの各関節が可動できる第1関節可動範囲を算出するステップと、前記算出された第1関節可動範囲の制約下において、前記ロボットアームに関するジャコビアン行列の特異値と、前記入力された動作情報と、をパラメータとして含む評価関数を、最小化させるための前記ロボットアームの各関節角度を算出し、該算出した各関節角度に基づいて前記ロボットの位置を算出するステップと、前記検出されたロボットの状態量と、前記算出されたロボットアームの各関節角度及びロボットの位置に基づいて、前記ロボットを制御するステップと、を含む、ことを特徴とするロボット制御装置の制御方法であってもよい。
さらに、上記目的を達成するための本発明の一態様は、複数の関節を含むロボットアームを備えるロボットを制御して操作対象物を操作するロボット制御装置のプログラムであって、前記ロボットに所望の動作をさせるための動作情報と、前記ロボットの周囲の環境情報と、に基づいて、前記ロボットアームの各関節が可動できる第1関節可動範囲を算出する処理と、前記算出された第1関節可動範囲の制約下において、前記ロボットアームに関するジャコビアン行列の特異値と、前記入力された動作情報と、をパラメータとして含む評価関数を、最小化させるための前記ロボットアームの各関節角度を算出し、該算出した各関節角度に基づいて前記ロボットの位置を算出する処理と、前記ロボットの状態量と、前記算出されたロボットアームの各関節角度及びロボットの位置に基づいて、前記ロボットを制御する処理と、を含む、ことを特徴とするロボット制御装置のプログラムであってもよい。
本発明によれば、ロボットの動作範囲が限定されている環境内においても、操作対象物を効率良く操作できるロボット制御装置、その制御方法及びプログラムを提供することができる。
本発明の一実施の形態に係るロボット制御装置の概略的なシステム構成を示すブロック図である。 本発明の一実施の形態に係るロボットの動作を説明するための摸式図である。 本発明の一実施の形態に係るシミュレーションにおいてロボット制御装置の制御装置の位置関節角度演算器が用いる第1評価関数を示す図である。 本発明の一実施の形態に係るシミュレーションにおいて、ロボット制御装置の制御装置の位置関節角度演算器が用いる第1評価関数を最小化した場合のロボットの位置及び姿勢を示す図である。 本発明の一実施の形態に係るシミュレーションにおいてロボット制御装置の制御装置の位置関節角度演算器が用いる第2評価関数を示す図である。 本発明の一実施の形態に係るシミュレーションにおいて、ロボット制御装置の制御装置の位置関節角度演算器が用いる第2評価関数を最小化した場合のロボットの位置及び姿勢を示す図である。
以下、図面を参照して本発明の実施の形態について説明する。図1は、本発明の一実施の形態に係るロボット制御装置の概略的なシステム構成を示すブロック図である。本実施の形態に係るロボット制御装置100は、例えば、ロボット130の動作範囲が家具や壁などで限定された環境内において、操作対象物を所望の方向に所望の速度で移動させ、操作対象物に対して所望の力を付加するような制御を効率的に実行できるものである。
ロボット制御装置100は、入力装置110と、入力装置110に入力された入力情報に基づいて、制御対象であるロボット130の動作を制御する制御装置120と、を備えている。
入力装置110は、入力手段の一具体例であり、例えば、ユーザがロボット130に実施させたい所望の動作を示す動作指令を入力し、その所望の動作の特徴を示す動作情報を算出し、出力する機能を有している。入力装置110は、指令入力器111と、指令演算器112と、を有している。
指令入力器111は、例えば、音声入力装置、タッチパネルなどのユーザ指示が入力できる任意の装置で構成されており、ユーザが入力した動作指令を電気信号に変換し、指令演算器112に対して出力する。
指令演算器112は、指令入力器111からの電気信号に基づいて、ユーザがロボット130に実施させたい所望の動作の特徴を示す動作情報(例えば、操作対象物に対して所定力を付加する動作、操作対象物を所定速度で所定方向へ移動させる動作、などの情報)を算出し、制御装置120に対して出力する。
制御装置120は、例えば、入力装置110からの動作情報と、ロボット130からの環境情報(ロボット130周囲にある障害物の位置などの情報)と、に基づいて、ロボット130の各関節(肩関節、肘関節、手首関節、股関節、膝関節、足首関節など)の可動範囲(以下、関節可動範囲と称す)と、周囲の障害物などによる環境的な制約の中で、ユーザが指示する所望動作に最も近い動作を、ロボット130に動作させるためのモータ電流を演算し、ロボット130に対して出力する。
制御装置120は、例えば、ASIC(Application Specific Integrated Circuit)やプログラマブル電子システムなどとして、実現することができる。制御装置120は、関節可動範囲演算器121と、位置関節角度演算器122と、制御器123と、を有している。
関節可動範囲演算器121は、関節可動範囲演算手段の一具体例であり、入力装置110の指令演算器112から出力される動作情報と、ロボット130の環境検出器131から出力される環境情報と、に基づいてロボット130の各関節の関節可動範囲を演算し、位置関節角度演算器122に対して出力する。
位置関節角度演算器122は、位置関節角度演算手段の一具体例であり、関節可動範囲演算器121からの関節可動範囲と、入力装置110の指令演算器112からの動作情報と、に基づいて、ユーザがロボット130に実施させたい所望動作を実施するのに最適な、ロボット130の位置およびロボット各関節の関節角度を演算し、位置関節角度演算値として制御器123に対して出力する。
制御器123は、制御手段の一具体例であり、位置関節角度演算器122からの位置関節角度演算値と、ロボット130の状態検出器134からの状態検出値(ロボット130の各関節の関節角度など)と、に基づいて、ロボット130に所望動作を実施させるためのモータ電流を、ロボット130に対して出力する。
ロボット130は、操作対象物を操作可能なロボットアーム205を有し、制御装置120からのモータ電流に基づいて、ユーザがロボット130に実施させたい所望の動作を実施できるように構成された、例えば、移動型サーバントロボット、二足歩行ロボット、ヒューマノイド型ロボットなどである。
ロボット130は、環境検出器131と、関節モータ132と、ロボット機構133と、状態検出器134と、を有している。
環境検出器131は、環境情報検出手段の一具体例であり、ロボット130に搭載され、あるいは、ロボット130が動作する環境に設置された検出器(例えば、超音波センサ、ミリ波センサ、カメラ、赤外線センサなどの距離センサ)であり、ロボット130の周囲の障害物の位置などの情報である環境情報を検出し、有線又は無線を介して制御装置120の関節可動範囲演算器121に対して出力する。
関節モータ132は、ロボット機構133のロボットアーム205などに設けられた各関節に取付けられ、制御装置120の制御器123から出力されるモータ電流に従って各関節を回転駆動する。また、関節モータ132は、減速機構などを内蔵しており、駆動軸の駆動力をこの減速機構を介して関節の関節軸に伝達する。
ロボット機構133は、例えば、複数のリンクと、各リンクを回転可能に連結する複数の関節と、を有する機構であり、例えば、ロボットアーム205などが含まれる。
状態検出器134は、状態検出手段の一具体例であり、ロボット130に搭載され、ロボットの状態量(ロボットの位置、各関節などの可動部の状態量など)を検出し、状態検出値として制御装置120の制御器123に対して出力する。
例えば、状態検出器134は、角度センサを用いて各関節の関節角度を検出し、トルクセンサを用いて各関節の関節トルクを検出し、姿勢センサを用いてロボット姿勢を検出し、加速度センサや速度センサを用いてロボット130の位置、移動速度、移動加速度を検出する。
次に、本実施の形態に係るロボット制御装置の動作原理について、詳細に説明する。
図2は、本実施の形態に係るロボットの動作を説明するための摸式図の一例である。本実施の形態に係るロボット130は、例えば、胴体であるロボット体幹部201に肩関節を介して回転可能に連結された上腕部202と、上腕部202に肘関節を介して回転可能に連結された前腕部203と、前腕部203の先端に手首関節を介して回転可能に連結され、操作対象物を操作可能なロボットハンド204と、を有するロボットアーム205を備えており、ロボット体幹部201が破線で示す予め設定された動作範囲206内側(限定された環境内)で動作可能となるように構成されている。
まず、ロボット体幹部201の中心に対するロボットハンド204の相対的な位置は、下記(1)式及び(2)式で表される。
但し、上記(1)式及び(2)式において各記号は以下のように設定されている。
:ロボット体幹部201の中心に対するロボットハンド204のx方向相対位置[m]、
:ロボット体幹部201の中心に対するロボットハンド204のy方向相対位置[m]、
θ:第1関節角度(ロボット体幹部201と上腕部202とが成す関節角度)[rad]、
θ:第2関節角度(上腕部202と前腕部203とが成す関節角度)[rad]、
:第1リンク長さ(上腕部202の長さ)[m]、
:第2リンク長さ(前腕部203の長さ)[m]
上記(1)式及び(2)式を、ロボットアーム205に関するジャコビアン行列Jを用いて線形近似すると下記(3)式が求められる。
上記(3)式より下記(4)式が導出される。
ジャコビアン行列Jの特異値は上記(4)式を用いて、下記(5)式および(6)式として求められる。
但し、上記(5)式及び(6)式において、σは第1特異値であり、σは第2特異値である。なお、第1特異値σおよび第2特異値σは、ともに0または正の実数であり、第2特異値σは第1特異値σ以上となっている。
特異ベクトルは上記(5)式および(6)式を用いて、下記(7)式および(8)式として求められる。
但し、上記(7)式および(8)式において、cとcは任意の実数である。
ここで、例えば、上記(3)式に示すような、ロボットアーム205の位置および角度を変換するジャコビアン行列の、より小さな特異値に対応した特異ベクトルの方向により、大きな速度で大きな動作をすることができることが一般的に知られている。同様に、ロボットアームの力およびトルクを変換するジャコビアン行列の、より大きな特異値に対応した特異ベクトルの方向により、大きな力を発生することができることが一般的に知られている。(例えば、Changhyun Cho, Munsang Kim, and Jae-Bok Song, "Direct Control of a Passive Haptic Device Based on Passive Force Manipulability Ellipsoid Analysis", International Journal of Control, Automation, and Systems, Volume 2, No. 2, June 2004を参照)また、ロボットアームの力およびトルクを変換するジャコビアン行列は、位置と角度を変換するジャコビアン行列の転置行列であり、それぞれの特異値は逆数の関係にあることが知られている。ただし、上記文献とは変換する方向が逆であるため特異値の大小関係が逆となっている。
上記ジャコビアン行列の関係を用いて、上記(5)式乃至(8)式は、ロボットハンド204が(7)式の示す方向により大きな速度で大きな動作をすることが可能であり、(8)式の示す方向により大きな力を発生することが可能であることを示していることが分かる。本願発明は、上述したようなロボットアーム205におけるジャコビアン行列の特異値の特性を、ロボット130の制御に効率的に利用したものである。以下、その制御方法について、具体例を挙げて説明する。
動作範囲206の中心を原点としたカーテシアン座標系におけるロボット体幹部201の中心位置を(x、y)と表すと、動作範囲206の中心に対するロボットハンド204の位置は、例えば、下記(9)式および(10)式と表される。
但し、上記(9)式および(10)式における各記号の意味は以下の通りであり、例えば、操作対象物の位置と一致するxE0、yE0は、環境検出器131により検出される。x、yは、上記(1)式及び(2)式で示される。
:ロボット体幹部201の中心のx座標[m]、
:ロボット体幹部201の中心のy座標[m]、
E0:ロボットハンド204のx座標[m]、
E0:ロボットハンド204のy座標[m]
次に、ロボット体幹部201が動作範囲206の内側のみを動作できる場合において、ロボットハンド204により操作対象物Sを所望の方向に最も効果的に動かすことができるロボット体幹部201の位置およびロボットアーム205の各関節角度(第1関節角度θ及び第2関節角度θ)を導出する。
動作範囲206は、例えば、下記(11)式のように表され、環境検出器131により検出された環境情報(障害物の位置情報など)に基づいて自動的に設定されてもよく、ユーザにより入力装置110を介して入力される入力情報に基づいて設定されてもよい。
上記(9)式乃至(11)式を組み合わせることにより、例えば、ロボットアーム205の各関節の動作範囲の制約は下記(12)式として表される。
但し、上記(12)式における各記号の意味は以下の通りである。
Ω:ロボットアーム205の各関節が可動できる第1関節可動範囲
Ωjp:動作範囲206より制約されるロボットアーム205の各関節の可動範囲であり、動作範囲206に基づいて算出される。
Ω:ロボットアーム205の各関節の機構により制約される可動範囲であり、例えば、ハードウェアにより予め設定される範囲である。
上記のように、ロボット130の動作範囲206、ロボットアーム205の関節機構などを総合的に考慮して、ロボットアーム205の関節可動範囲を最適に設定することができる。
ロボットハンド204により操作対象物Sを第1関節可動範囲Ω内で所望の方向に最も効果的に移動させることができるロボット体幹部201(ロボット130)の位置およびロボットアーム205の各関節角度は、以下のように求めることができる。まず、入力装置110の指令演算器112から出力される動作情報rと、ジャコビアン行列Jの第1特異値σと、に基づいて下記(13)式に示す第1評価関数を、上記(12)式に示す第1関節可動範囲Ωの制約下で最小化する第1関節角度θ及び第2関節角度θを算出する。そして、上記(9)式および(10)式において、ロボットハンド204のx座標xE0およびy座標yE0を、操作対象物Sのx座標およびy座標として、ロボット体幹部201の中心のx座標xおよびy座標yに関して解く。これにより、上記ロボットハンド204により操作対象物Sを所望の方向に最も効果的に動かすことができるロボット体幹部201の位置およびロボットアーム205の各関節角度を求めることができる。
但し、上記(13)式において、動作情報rは、例えば、操作対象物Sの所定方向への移動を表すベクトルのy成分とx成分との比である。また、rは、入力装置110の指令入力器111から入力されたユーザの操作情報に基づいて、指令演算器112が算出する動作情報の一例である。また、上記第1評価関数Iは、ロボットアーム205のジャコビアン行列Jの第1特異値σと、動作情報rと、をパラメータとして含んでいる。
同様に、ロボットハンド204により操作対象物Sに対して所望の方向に最も効果的に力を加えることができるロボット体幹部201の位置およびロボットアーム205の各関節角度は、以下のようにして求めることができる。まず、入力装置110の指令演算器112から出力される動作情報rと、ジャコビアン行列Jの第2特異値σと、に基づいて下記(14)式の第2評価関数を上記(12)式の第1関節可動範囲Ωに対して最小化する第1関節角度θ及び第2関節角度θを算出する。そして、上記(9)式および(10)式において、ロボットハンド204のx座標xE0およびy座標yE0を、操作対象物Sのx座標およびy座標として、ロボット体幹部201の中心のx座標xおよびy座標yに関して解く。これにより、上記ロボットハンド204により操作対象物Sに対して所望の方向に最も効果的に力を加えることができるロボット体幹部201の位置およびロボットアーム205の各関節角度を求めることができる。
但し、上記(14)式において、動作情報rは、例えば、操作対象物Sに加える所定力を表すベクトルのy成分とx成分の比である。また、rは、入力装置110の指令入力器111から入力されたユーザの操作情報に基づいて、指令演算器112が算出する動作情報の一例である。上記第2評価関数は、ロボットアーム205のジャコビアン行列Jの第2特異値σと、動作情報rと、をパラメータとして含んでいる。
また、操作対象物Sを所定方向へ移動させることが、操作対象物Sに所定力を付加することよりもd倍(d≧1)重要である場合、上記(12)式に示す第1関節可動範囲Ωの制約条件に、下記(15)式に示す第2関節可動範囲Ωr1の制約条件を加え、上記(13)式に示す第1評価関数を最小化することにより、ロボット体幹部201の位置およびロボットアーム205の各関節角度を求める。なお、dは、例えば、操作対象物Sを所定方向へ移動させることの重要度を示す所定係数であり、ユーザが入力装置110を介して関節可動範囲演算器121に任意に設定できる。また、第2関節可動範囲Ωr1は、上記(4)式及び(5)式により導出され、所定係数dを含む関数となっている。
同様に、操作対象物Sに所定力を付加することが、操作対象物Sを所定方向へ移動させることよりもd倍(d≧1)重要である場合、上記(12)式に示す第1関節可動範囲Ωの制約条件に下記(16)式に示す第2関節可動範囲Ωr2の制約条件を加え、上記(14)式に示す第2評価関数を最小化することにより、ロボット体幹部201の位置およびロボットアーム205の各関節角度を求める。なお、なお、dは、例えば、操作対象物Sに所定力を付加することの重要度を示す所定係数であり、ユーザが入力装置110を介して関節可動範囲演算器121に任意に設定できる。また、第2関節可動範囲Ωr2は、上記(4)式及び(6)式より導出され、所定係数dを含む関数となっている。
以上のように、第1関節可動範囲の制約に加えて、第2関節可動範囲の制約を加えることで、ロボット130の操作内容の重要度に応じた最適なロボットアーム205の関節可動範囲を設定することができる。
次に、上述したロボット体幹部201の位置およびロボットアーム205の各関節角度を求める演算処理について、より具体的に説明する。
(A)図2に示すような動作範囲206の内側を移動できるロボット130が、ロボットアーム205の先端に設けられたロボットハンド204を用いて、操作対象物Sを所定方向へ移動させる作業を行う場合を想定する。このようなロボットハンド204を用いて操作対象物Sを移動させる作業として、例えば、家具と壁の間で掃除機(操作対象物)を移動させて掃除を行う作業などが該当する。
この場合、関節可動範囲演算器121は、上記(12)式を用いて第1関節可動範囲Ωを算出する。また、位置関節角度演算器122は、関節可動範囲演算器121により算出された第1関節可動範囲Ωの制約条件の下で、ジャコビアン行列Jの第1特異値σと、入力装置110の指令演算器112からの動作情報rと、に基づいて上記第1評価関数(13)式を最小化するように、第1関節角度θおよび第2関節角度θを算出する。そして、位置関節角度演算器122は、上記(9)式および(10)式において、ロボットハンド204のx座標xE0およびy座標yE0を、操作対象物Sのx座標およびy座標として、ロボット体幹部201の中心のx座標xおよびy座標yに関して解く。このようにして、操作対象物Sを所望の方向に最も効果的に移動させることができるロボット体幹部201の位置およびロボットアーム205の各関節角度を算出することができる。
(B)図2に示すような動作範囲206の内側を移動できるロボット130が、ロボットアーム205の先端に設けられたロボットハンド204を用いて、所定方向に操作対象物Sに対して所定力を付加する作業を行う場合を想定する。このようなロボットハンド204を用いて操作対象物Sに対して所定力を付加する作業として、例えば、風で動く扉をその位置に保持する作業などが該当する。
この場合、関節可動範囲演算器121は、上記(12)式を用いて第1関節可動範囲Ωを算出する。また、位置関節角度演算器122は、関節可動範囲演算器121により算出された第1関節可動範囲Ωの制約条件の下で、ジャコビアン行列Jの第2特異値σと、入力装置110の指令演算器112からの動作情報rと、に基づいて上記第2評価関数(14)式を最小化するように第1関節角度θおよび第2関節角度θを算出する。そして、位置関節角度演算器122は、上記(9)式および(10)式において、ロボットハンド204のx座標xE0およびy座標yE0を、操作対象物Sのx座標およびy座標として、ロボット体幹部201の中心のx座標xおよびy座標yに関して解く。このようにして、操作対象物Sを所望の方向に最も効果的に力を加えることができるロボット体幹部201の位置およびロボットアーム205の各関節角度を算出することができる。
(C)図2に示すような動作範囲206の内側を移動できるロボット130が、ロボットアーム205の先端に設けられたロボットハンド204を用いて、所定方向に操作対象物Sを移動させつつ、操作対象物Sに所定力を付加する作業を行う場合であって、所定方向へ移動させることが所定力を付加することよりもd倍重要となる作業を行う場合を想定する。このような操作対象物Sを移動させつつ力も加えなければならない作業としては、例えば、事故車やがれきの中から人を救出する作業などが該当する。
この場合、関節可動範囲演算器121は、上記(12)式を用いて第1関節可動範囲Ωおよび上記(15)式を用いて第2関節可動範囲Ωr1を算出する。また、位置関節角度演算器122は、関節可動範囲演算器121により算出された第1関節可動範囲Ωおよび第2関節可動範囲Ωr1の制約条件の下で、ジャコビアン行列Jの第1特異値σと、入力装置110の指令演算器112からの動作情報rと、に基づいて上記第1評価関数(13)式を最小化するように第1関節角度θおよび第2関節角度θを算出する。そして、位置関節角度演算器122は、上記(9)式および(10)式において、ロボットハンド204のx座標xE0およびy座標yE0を、操作対象物Sのx座標およびy座標として、ロボット体幹部201の中心のx座標xおよびy座標yに関して解く。このようにして、操作対象物Sを所望の方向に最も効果的に移動させ力を加えることができるロボット体幹部201の位置およびロボットアーム205の各関節角度を算出することができる。
(D)図2に示すような動作範囲206の内側を移動できるロボット130が、ロボットアーム205の先端に設けられたロボットハンド204を用いて、所定方向に操作対象物Sを移動させつつ、操作対象物Sに所定力を付加する作業を行う場合であって、所定力を付加することが所定方向へ移動させることよりもd倍重要となる作業を行う場合を想定する。
この場合、関節可動範囲演算器121は、上記(12)式を用いて第1関節可動範囲Ωおよび上記(16)式を用いて第2関節可動範囲Ωr2を算出する。また、位置関節角度演算器122は、関節可動範囲演算器121により算出された第1関節可動囲Ωおよび第2関節可動範囲Ωr2の制約条件の下で、ジャコビアン行列Jの第2特異値σと、入力装置110の指令演算器112からの動作情報rと、に基づいて上記第2評価関数(14)式を最小化するように第1関節角度θおよび第2関節角度θを算出する。そして、位置関節角度演算器122は、上記(9)式および(10)式において、ロボットハンド204のx座標xE0およびy座標yE0を、操作対象物Sのx座標およびy座標として、ロボット体幹部201の中心のx座標xおよびy座標yに関して解く。このようにして、操作対象物Sを所望の方向に最も効果的に移動させ力を加えることができるロボット体幹部201の位置およびロボットアーム205の各関節角度を算出することができる。
上記(C)及び(D)のように、操作対象物Sを移動させつつ力も付加しなければならない作業に対しては、上記(12)式に示す第1関節可動範囲Ωの制約条件だけでなく、上記(15)式に示す第2関節可動範囲Ωr1または(16)式に示す第2関節可動範囲Ωr2の制約条件を加味した関節可動範囲を用いることにより、ロボット130は作業に最も適した姿勢および位置で作業することができる。
上述したように、ロボット130の動作範囲206、ロボットアーム205の関節機構など加味して関節可動範囲を最適に設定し、ロボットアーム205のジャコビアン行列の特異値による特性を反映した評価関数を用いてロボットアーム205の各関節角度を算出することで、ロボット130の動作範囲が限定されている環境においても、操作対象物205を効率良く操作できる。
次に、本実施の形態に係るロボット制御装置を用いて行ったシミュレーション結果について説明する。本シミュレーションにおいて、各パラメータには、例えば、下記数値が設定されている。なお、下記設定された数値は、例えば、家事手伝いをするモービルサーバントロボットの現実的な数値の一例である。
=0.5[m]、l=0.5[m]、r=tan(π/4)、r=tan(π/4)、xE0=0.1[m]、yE0=1.2[m]、θ1min=0[rad]、θ1max=2π[rad]、θ2min=0[rad]、θ2max=3π/4[rad]
さらに、本シミュレーションにおいて、ロボット130は半径1[m]の円で示す動作範囲206の内側を自由に移動することができ、その円の中心を原点としたカーテシアン座標系においてx方向に0.1[m]、y方向に1.2[m]の位置にある操作対象物Sを操作する作業を実施する場合を模擬している。
図3は、本シミュレーションにおいてロボット制御装置の制御装置の位置関節角度演算器が用いる第1評価関数を示す図である。なお、図3において、細線のメッシュは関節可動範囲Ωを示し、太線のメッシュは関節可動範囲外の領域を示し、大きな点は第1評価関数Iを最小化する第1関節角度θと第2関節角度θを示している。
図3に示すように、操作対象物Sをπ/4[rad]の方向へ移動させるのに最適な姿勢は、第1関節角度θが0[rad]であり、かつ第2関節角度θが略2.12[rad]であることを示している。
図4は、本シミュレーションにおいて、ロボット制御装置の制御装置の位置関節角度演算器が用いる第1評価関数を最小化した場合のロボットの位置及び姿勢を示す図である。なお、図4において、破線は操作対象物Sの所望の移動方向を示している。図4に示しように、ロボット体幹部201はx方向に略−0.14[m]、y方向に略0.77[m]の位置に移動し、ロボット130は操作対象物Sを所望の方向に移動させるのに適した姿勢となっていることが分かる。
図5は、本シミュレーションにおいてロボット制御装置の制御装置の位置関節角度演算器が用いる第2評価関数を示す図である。なお、図5において、細線のメッシュは関節可動範囲Ωを示し、太線のメッシュは関節可動範囲外の領域を示し、大きな点は第2評価関数Iを最小化する第1関節角度θと第2関節角度θを示している。
図5に示すように、操作対象物Sに対してπ/4[rad]の方向へ力を加えるのに最適な姿勢は、第1関節角度θが略0.38[rad]であり、第2関節角度θが略0.57[rad]であることを示している。
図6は、本シミュレーションにおいて、ロボット制御装置の制御装置の位置関節角度演算器が用いる第2評価関数を最小化した場合のロボットの位置及び姿勢を示す図である。図6において、破線は操作対象物Sに付加する力の所望方向を示している。ロボット体幹部201はx方向に略−0.66[m]、y方向に略0.61[m]の位置に移動し、ロボットは操作対象物Sに対して力を加えるのに適した姿勢となっていることが分かる。
以上、本実施の形態に係るロボット制御装置100において、ロボット130の動作情報、及び環境情報に基づいた第1関節可動範囲を算出し、算出された第1関節可動範囲の制約下において、ロボットアームのジャコビアン行列における特異値と動作情報とをパラメータとして含む評価関数を最小化させるためのロボットアームの各関節角度を算出し、算出した各関節角度に基づいてロボットの位置を算出する。
これにより、ロボット130の動作範囲206、ロボットアーム205の関節機構など加味してロボットアーム205の関節可動範囲を最適に設定でき、ロボットアーム205のジャコビアン行列の特異値による特性を反映した評価関数を用いて操作対象物を効率良く操作できるロボットアーム205の各関節角度を算出することができる。すなわち、ロボット130の動作範囲が限定されている環境においても、操作対象物Sを効率良く操作できる。
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
例えば、上記一実施の形態において、ロボットアーム205で平面的に操作対象物Sを操作する作業について説明したが、上記(1)式及び(2)式を3次元の動作を表す式に置き換えることにより、ロボット130の全身を使って3次元的に操作対象物Sを操作する作業にも適用することが可能である。
上記実施形態では、本発明をハードウェアの構成として説明したが、本発明は、これに限定されるものではない。本発明は、例えば、制御装置120が実行する処理を、CPUにコンピュータプログラムを実行させることにより実現することも可能である。
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
本発明は、例えば、動作範囲が家具や壁などで限定された空間内において、操作対象物を効率よく操作できる、介護ロボット、救助ロボット、家事手伝いロボットなど人間と共生するサービスロボット全般に広く適用できる。
100 ロボット制御装置
110 入力装置
111 指令入力器
112 指令演算器
120 制御装置
121 関節可動範囲演算器
122 位置関節角度演算器
123 制御器
130 ロボット
131 環境検出器
132 関節モータ
133 ロボット機構
134 状態検出器
201 ロボット体幹部
202 上腕部
203 前腕部
204 ロボットハンド
205 ロボットアーム
206 動作範囲

Claims (5)

  1. 複数の関節を含むロボットアームを備えるロボットを制御して操作対象物を操作するロボット制御装置であって、
    前記ロボットに所望の動作をさせるための動作情報を入力する入力手段と、
    前記ロボットの周囲の環境情報を検出する環境情報検出手段と、
    前記ロボットの状態量を検出する状態検出手段と、
    前記入力手段により入力された動作情報と、前記環境検出手段により検出された環境情報と、に基づいて、前記ロボットアームの各関節が可動できる第1関節可動範囲を算出する関節可動範囲算出手段と、
    前記可動範囲算出手段により算出された第1関節可動範囲の制約下において、前記ロボットアームに関するジャコビアン行列の特異値と、前記入力手段により入力された動作情報と、をパラメータとして含む評価関数を、最小化させるための前記ロボットアームの各関節角度を算出し、該算出した各関節角度に基づいて前記ロボットの位置を算出する位置関節角度算出手段と、
    前記状態検出手段により検出されたロボットの状態量と、前記位置関節角度算出手段により算出された前記ロボットアームの各関節角度及びロボットの位置に基づいて、前記ロボットを制御する制御手段と、
    を備え
    前記ロボットアームに関するジャコビ行列は、第1特異値と、該第1特異値よりも大きな第2特異値と、を有しており、
    前記位置関節角度算出手段は、
    前記入力手段により入力された動作情報が所定方向に操作対象物を移動させる情報の場合において、前記第1特異値と前記動作情報とを含む第1評価関数を最小化するための前記ロボットアームの各関節角度を算出し、
    前記入力手段により入力された動作情報が操作対象物に対して所定力を付加する情報の場合において、前記第2特異値と前記動作情報とを含む第2評価関数を最小化するための前記ロボットアームの各関節角度を算出する、ことを特徴とするロボット制御装置。
  2. 請求項記載のロボット制御装置であって、
    前記入力手段により入力された動作情報が所定方向に操作対象物を移動させつつ所定力を加える情報である場合において、
    前記位置関節角度算出手段は、
    前記操作対象物を所定方向へ移動させることが、前記操作対象物に所定力を加えることよりも重要であるとき、前記可動範囲算出手段により算出された前記第1関節可動範囲、及び前記重要度を示す所定係数と前記第1特異値とを含む関数で表わされる第2関節可動範囲の制約下で、前記第1評価関数を最小化させるための前記ロボットアームの各関節角度を算出し、
    前記操作対象物に所定力を加えることが前記操作対象物を所定方向へ移動させることよりも重要であるとき、前記可動範囲算出手段により算出された前記第1関節可動範囲、及び前記重要度を示す所定係数と前記第2特異値とを含む関数で表わされる第2関節可動範囲の制約下で、前記第2評価関数を最小化させるための前記ロボットアームの各関節角度を算出する、
    ことを特徴とするロボット制御装置。
  3. 請求項1又は2記載のロボット制御装置であって、
    前記関節可動範囲算出手段は、前記入力手段により入力された動作情報と、前記環境情報検出手段により検出された前記ロボット周囲の障害物の位置情報と、に基づいて、前記ロボットの動作範囲を算出し、該算出した動作範囲と、予め設定された前記関節機構の制約による関節の可動範囲と、に基づいて、前記第1関節可動範囲を算出する、ことを特徴とするロボット制御装置。
  4. 複数の関節を含むロボットアームを備えるロボットを制御して操作対象物を操作するロボット制御装置の制御方法であって、
    前記ロボットに所望の動作をさせるための動作情報を入力するステップと、
    前記ロボットの周囲の環境情報を検出するステップと、
    前記ロボットの状態量を検出するステップと、
    前記入力された動作情報と、前記検出された環境情報と、に基づいて、前記ロボットアームの各関節が可動できる第1関節可動範囲を算出するステップと、
    前記算出された第1関節可動範囲の制約下において、前記ロボットアームに関するジャコビアン行列の特異値と、前記入力された動作情報と、をパラメータとして含む評価関数を、最小化させるための前記ロボットアームの各関節角度を算出し、該算出した各関節角度に基づいて前記ロボットの位置を算出するステップと、
    前記検出されたロボットの状態量と、前記算出されたロボットアームの各関節角度及びロボットの位置に基づいて、前記ロボットを制御するステップと、
    を含み、
    前記ロボットアームに関するジャコビ行列は、第1特異値と、該第1特異値よりも大きな第2特異値と、を有しており、
    前記入力した動作情報が所定方向に操作対象物を移動させる情報の場合において、前記第1特異値と前記動作情報とを含む第1評価関数を最小化するための前記ロボットアームの各関節角度を算出し、
    前記入力した動作情報が操作対象物に対して所定力を付加する情報の場合において、前記第2特異値と前記動作情報とを含む第2評価関数を最小化するための前記ロボットアームの各関節角度を算出する、ことを特徴とするロボット制御装置の制御方法。
  5. 複数の関節を含むロボットアームを備えるロボットを制御して操作対象物を操作するロボット制御装置のプログラムであって、
    前記ロボットに所望の動作をさせるための動作情報と、前記ロボットの周囲の環境情報と、に基づいて、前記ロボットアームの各関節が可動できる第1関節可動範囲を算出する処理と、
    前記算出された第1関節可動範囲の制約下において、前記ロボットアームに関するジャコビアン行列の特異値と、前記入力された動作情報と、をパラメータとして含む評価関数を、最小化させるための前記ロボットアームの各関節角度を算出し、該算出した各関節角度に基づいて前記ロボットの位置を算出する処理と、
    前記ロボットの状態量と、前記算出されたロボットアームの各関節角度及びロボットの位置に基づいて、前記ロボットを制御する処理と、
    コンピュータに実行させ、
    前記ロボットアームに関するジャコビ行列は、第1特異値と、該第1特異値よりも大きな第2特異値と、を有しており、
    前記入力した動作情報が所定方向に操作対象物を移動させる情報の場合において、前記第1特異値と前記動作情報とを含む第1評価関数を最小化するための前記ロボットアームの各関節角度を算出し、
    前記入力した動作情報が操作対象物に対して所定力を付加する情報の場合において、前記第2特異値と前記動作情報とを含む第2評価関数を最小化するための前記ロボットアームの各関節角度を算出する、ことを特徴とするロボット制御装置のプログラム。
JP2011224998A 2011-10-12 2011-10-12 ロボット制御装置、その制御方法及びプログラム Expired - Fee Related JP5776486B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011224998A JP5776486B2 (ja) 2011-10-12 2011-10-12 ロボット制御装置、その制御方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011224998A JP5776486B2 (ja) 2011-10-12 2011-10-12 ロボット制御装置、その制御方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2013082049A JP2013082049A (ja) 2013-05-09
JP5776486B2 true JP5776486B2 (ja) 2015-09-09

Family

ID=48527804

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011224998A Expired - Fee Related JP5776486B2 (ja) 2011-10-12 2011-10-12 ロボット制御装置、その制御方法及びプログラム

Country Status (1)

Country Link
JP (1) JP5776486B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110000779A (zh) * 2019-03-25 2019-07-12 上海科技大学 基于二维码的容错自校正工业机器人手臂控制方法

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7123885B2 (ja) * 2019-09-13 2022-08-23 株式会社東芝 ハンドリング装置、制御装置、および保持方法
CN111716352B (zh) * 2020-05-13 2022-04-29 中国电力科学研究院有限公司 一种配电网带电作业机械臂导航避障方法及系统
JP2022093035A (ja) * 2020-12-11 2022-06-23 日立Astemo株式会社 検査経路生成装置、検査経路生成方法
CN116728396B (zh) * 2022-03-04 2025-12-12 广州视源电子科技股份有限公司 机械臂的控制方法、装置、设备、存储介质和电子设备
CN116945147B (zh) * 2022-04-13 2025-10-24 广州视源电子科技股份有限公司 一种机械臂恒力控制过程中的奇异点规避方法及装置
EP4543635A4 (en) * 2022-06-24 2026-02-25 Abb Schweiz Ag METHOD, DEVICE AND COMPUTER-READABLE MEDIA INTENDED FOR USE WITH A ROBOT
CN116713995B (zh) * 2023-06-27 2026-04-21 深圳市优必选科技股份有限公司 机械臂运动可视化方法、系统、终端设备和可读存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009172685A (ja) * 2008-01-22 2009-08-06 Yaskawa Electric Corp マニピュレータシステムおよびその制御方法
JP2009233778A (ja) * 2008-03-26 2009-10-15 Toshiba Corp 移動ロボットの本体位置決め方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110000779A (zh) * 2019-03-25 2019-07-12 上海科技大学 基于二维码的容错自校正工业机器人手臂控制方法
CN110000779B (zh) * 2019-03-25 2021-09-28 上海科技大学 基于二维码的容错自校正工业机器人手臂控制方法

Also Published As

Publication number Publication date
JP2013082049A (ja) 2013-05-09

Similar Documents

Publication Publication Date Title
JP5776486B2 (ja) ロボット制御装置、その制御方法及びプログラム
JP6312264B2 (ja) 冗長自由度を伴うロボットマニピュレータの制約
KR102003216B1 (ko) 로봇을 위한 모터 제어 및/또는 조정
Kim et al. A force reflected exoskeleton-type masterarm for human-robot interaction
Albini et al. Exploiting distributed tactile sensors to drive a robot arm through obstacles
US9043030B2 (en) Manipulator and path generation method thereof
US20120130541A1 (en) Method and apparatus for robot teaching
Luo et al. Real time human motion imitation of anthropomorphic dual arm robot based on Cartesian impedance control
Xu et al. Visual-haptic aid teleoperation based on 3-D environment modeling and updating
KR102030141B1 (ko) 로봇의 팔꿈치 제어시스템 및 그 제어방법
CN118742420A (zh) 机器人设备的协调主体运动的系统和方法
EP2406041A1 (en) Robot apparatus and control method therefor
Sanchez et al. Four-arm collaboration: Two dual-arm robots work together to manipulate tethered tools
Kaplish et al. Motion retargeting and control for teleoperated physical human-robot interaction
JP2018089736A (ja) マスタスレーブシステム
Namiki et al. Vision-based predictive assist control on master-slave systems
JP6270334B2 (ja) ロボット制御装置及び方法
CN107618032B (zh) 用于基于第二轨迹控制机器人的机器人运动的方法和装置
Tsetserukou et al. Intelligent variable joint impedance control and development of a new whole-sensitive anthropomorphic robot arm
Jin et al. Minimal grasper: A practical robotic grasper with robust performance for pick-and-place tasks
JP2003062775A (ja) 人間型ハンドロボット用教示システム
CN110877335A (zh) 一种基于混合滤波器自适应无标记机械臂轨迹跟踪方法
JP2017030106A (ja) ロボット制御装置およびロボットシステム
Spencer et al. Collision avoidance techniques for tele-operated and autonomous manipulators in overlapping workspaces
Kuan et al. Challenges in VR-based robot teleoperation

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140116

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141010

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141021

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141212

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: 20150609

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150622

R151 Written notification of patent or utility model registration

Ref document number: 5776486

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees