JP5399593B2 - ロボット、ロボットの制御装置、制御方法、及び制御プログラム - Google Patents
ロボット、ロボットの制御装置、制御方法、及び制御プログラム Download PDFInfo
- Publication number
- JP5399593B2 JP5399593B2 JP2013534518A JP2013534518A JP5399593B2 JP 5399593 B2 JP5399593 B2 JP 5399593B2 JP 2013534518 A JP2013534518 A JP 2013534518A JP 2013534518 A JP2013534518 A JP 2013534518A JP 5399593 B2 JP5399593 B2 JP 5399593B2
- Authority
- JP
- Japan
- Prior art keywords
- robot
- hand
- dynamics parameter
- dynamics
- information
- 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.)
- Active
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/1651—Programme controls characterised by the control loop acceleration, rate control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
- B25J13/085—Force or torque sensors
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/37—Measurements
- G05B2219/37002—Absence, detect absence, presence or correct position of workpiece
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40202—Human robot coexistence
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/41—Servomotor, servo controller till figures
- G05B2219/41021—Variable gain
Description
本発明は、物体の搬送を行う動作を制御する、ロボット、ロボットの制御装置、制御方法、及び制御プログラムに関する。
近年、介護ロボット又は家事支援ロボットなどの家庭用ロボットが盛んに開発されるようになってきた。また、産業用ロボットでも、セル生産工場の広がりなどから、人と協働するロボットの開発が盛んに行われている。このような人と協働するロボットは、従来のように人間の居るエリアとロボット用の作業エリアとを区切って動作するロボットとは異なり、人間と共生する必要があるため、従来の産業用ロボットなどとは異なる安全性が求められる。
また、ロボットの一例としてのロボットアームは、搬送している物体及び自らの質量及び慣性モーメント等より、各関節の出力トルクを計算する。物体を把持しているときと、把持していないときとでは、各関節に求められるトルクが変わるため、物体を把持しているかどうかの状況に合わせ、目標トルクを適切に切り替えていく必要がある。
しかし、静止した状態で物体を把持した場合、把持しているか、把持していないかの2状態の質量及び慣性モーメント等の切り替えが起こる。このため、出力トルクが切り替わり、ロボットアームの目標位置は静止した状態にもかかわらず、ロボットアームが動いてしまうケースがあり、把持している物体にダメージを与える可能性があり、また、把持物等の落下、転倒の可能性もあり安全の面からも問題であった。
物体を把持するロボットにおける質量及び慣性モーメント等の切り替えに対し、特許文献1は、質量及び慣性モーメント等を切り替えて計算するのではなく、フィードフォワード項を追加することによりロボットを制御する制御装置を開示している(特許文献1参照)。
しかしながら、特許文献1では、フィードフォワード項の計算を追加する、追加しないの2つの状態を切り替える動作が発生するが、切り替える動作に伴いロボットが動いてしまうケースに対する対策はされていないと言う課題があった。
本発明の目的は、上記従来の課題を解決し、物体を把持したり、把持から開放したりする際にダイナミクスパラメータ(例えば、把持物体の質量及び慣性モーメントなど)の切り替えが発生しても、物体又は構造物にダメージを与えたり、落下、転倒させてしまうことのない、把持物又は外環境等に対し優しく、安全なロボット、ロボットの制御装置、制御方法、及び制御プログラムを提供することにある。
上記目的を達成するために、本発明は以下のように構成する。
本発明の1つの態様によれば、関節を有するロボットであって、
上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報を取得する位置情報取得部と、
物体を把持していない状態の上記ロボットのダイナミクスパラメータと上記ロボットが上記物体を把持している状態の上記物体も含めたダイナミクスパラメータとを有する複数のダイナミクスパラメータの間で、運動方程式の重力項成分と慣性力項成分とを分離してそれぞれ切り換えるダイナミクスパラメータ切換部と、
上記ダイナミクスパラメータ切換部が上記ダイナミクスパラメータを切り換えた後の運動方程式と上記位置情報取得部で取得した上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報とに基づき、上記ロボットの関節トルクの目標値を目標関節トルクとして出力する目標トルク計算部とを備えて、
上記目標トルク計算部からの出力に基づき上記ロボットの動作を制御するロボットを提供する。
上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報を取得する位置情報取得部と、
物体を把持していない状態の上記ロボットのダイナミクスパラメータと上記ロボットが上記物体を把持している状態の上記物体も含めたダイナミクスパラメータとを有する複数のダイナミクスパラメータの間で、運動方程式の重力項成分と慣性力項成分とを分離してそれぞれ切り換えるダイナミクスパラメータ切換部と、
上記ダイナミクスパラメータ切換部が上記ダイナミクスパラメータを切り換えた後の運動方程式と上記位置情報取得部で取得した上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報とに基づき、上記ロボットの関節トルクの目標値を目標関節トルクとして出力する目標トルク計算部とを備えて、
上記目標トルク計算部からの出力に基づき上記ロボットの動作を制御するロボットを提供する。
これらの概括的かつ特定の態様は、システム、方法、コンピュータプログラム並びにシステム、方法及びコンピュータプログラムの任意の組み合わせにより実現してもよい。
本発明の前記態様のロボット、ロボットの制御装置、制御方法、及び制御プログラムによれば、ダイナミクスパラメータのうち、慣性力項成分すなわち慣性行列と重力項成分とをそれぞれ分離してそれぞれ独立に切り換えることで、ダイナミクスパラメータの切換により発生してしまう動きの垂直方向及び水平方向という方向性をコントロール可能となる。
本発明のこれらと他の目的と特徴は、添付された図面についての実施形態に関連した次の記述から明らかになる。この図面においては、
図1は、本発明の第1実施形態におけるロボットの全体構成を示す図であり、
図2は、本発明の第1実施形態におけるロボットのインピーダンス制御手段の構成を示すブロック図であり、
図3は、本発明の第1実施形態におけるロボットによる人との協調搬送作業を説明する図であり、
図4は、本発明の第1実施形態における搬送作業の概略手順を説明する図であり、
図5は、本発明の第1実施形態における搬送作業の詳細手順を説明する図であり、
図6は、本発明の第1実施形態における上記ロボットにおけるインピーダンス制御手段の全体的な動作ステップを表すフローチャートであり、
図7は、本発明の第1実施形態における上記ロボットにおけるインピーダンス制御手段のダイナミクスパラメータ切換手段における動作ステップを表すフローチャートであり、
図8は、本発明の第1実施形態における上記ロボットにおけるインピーダンス制御手段のハンド制御手段における動作ステップを表すフローチャートであり、
図9は、本発明の第1実施形態における搬送作業時のダイナミクスパラメータ切換のタイミングを説明する図であり、
図10は、本発明の第2実施形態における上記ロボットにおけるインピーダンス制御手段のダイナミクスパラメータ切換手段における動作ステップを表すフローチャートであり、
図11は、本発明の第3実施形態におけるロボットのインピーダンス制御手段の構成を示すブロック図であり、
図12は、本発明の第3実施形態における上記ロボットにおけるインピーダンス制御手段の弾性力制御手段における動作ステップを表すフローチャートであり、
図13は、本発明の第3実施形態におけるロボットのインピーダンス制御手段の他の構成を示すブロック図であり、
図14Aは、本発明の第3実施形態における弾性力を説明する図であり、
図14Bは、本発明の第3実施形態における弾性力を説明する図であり、
図15は、本発明の第3実施形態における搬送作業時のダイナミクスパラメータ切換及び弾性力切換のタイミングを説明する図である。
以下に、本発明にかかる実施の形態を図面に基づいて詳細に説明する。
以下、図面を参照して本発明における実施形態を詳細に説明する前に、本発明の種々の態様について説明する。
本発明の第1態様によれば、関節を有するロボットであって、
上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報を取得する位置情報取得部と、
物体を把持していない状態の上記ロボットのダイナミクスパラメータと上記ロボットが上記物体を把持している状態の上記物体も含めたダイナミクスパラメータとを有する複数のダイナミクスパラメータの間で、運動方程式の重力項成分と慣性力項成分とを分離してそれぞれ切り換えるダイナミクスパラメータ切換部と、
上記ダイナミクスパラメータ切換部が上記ダイナミクスパラメータを切り換えた後の運動方程式と上記位置情報取得部で取得した上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報とに基づき、上記ロボットの関節トルクの目標値を目標関節トルクとして出力する目標トルク計算部とを備えて、
上記目標トルク計算部からの出力に基づき上記ロボットの動作を制御するロボットを提供する。
上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報を取得する位置情報取得部と、
物体を把持していない状態の上記ロボットのダイナミクスパラメータと上記ロボットが上記物体を把持している状態の上記物体も含めたダイナミクスパラメータとを有する複数のダイナミクスパラメータの間で、運動方程式の重力項成分と慣性力項成分とを分離してそれぞれ切り換えるダイナミクスパラメータ切換部と、
上記ダイナミクスパラメータ切換部が上記ダイナミクスパラメータを切り換えた後の運動方程式と上記位置情報取得部で取得した上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報とに基づき、上記ロボットの関節トルクの目標値を目標関節トルクとして出力する目標トルク計算部とを備えて、
上記目標トルク計算部からの出力に基づき上記ロボットの動作を制御するロボットを提供する。
本発明の第2態様によれば、上記ダイナミクスパラメータ切換部は、上記物体を把持及び把持開放を含む作業の切り替え信号に基づき、上記ロボットの手先による物体把持時に上記ロボットの上記手先が移動困難に拘束された拘束状態とそれ以外の非拘束状態との間で切り換わるタイミングに応じて、上記複数のダイナミクスパラメータを、上記ロボットと上記ロボットが把持している物体との運動方程式の上記重力項成分と上記慣性力項成分とを分離してそれぞれ切り換える第1の態様に記載のロボットを提供する。
本発明の第3態様によれば、上記ダイナミクスパラメータ切換部は、上記位置情報取得部で取得した上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報に基づき、上記ロボットの上記手先が上記非拘束状態になったときに上記慣性力項成分のダイナミクスパラメータのみを切換える第2の態様に記載のロボットを提供する。
本発明の第4態様によれば、上記ダイナミクスパラメータ切換部は、上記ロボットが上記手先で上記物体を把持し、把持している物体を設置後、把持を開放し、上記ロボットの上記手先が上記非拘束状態になったときに上記慣性力項成分のダイナミクスパラメータのみを切換える第3の態様に記載のロボットを提供する。
本発明の第5態様によれば、上記ダイナミクスパラメータ切換部は、上記ロボットが上記物体を把持し、搬送し、上記把持している物体を設置するときに上記把持又は設置のために位置決めをするため搬送時よりも低速の動作になったときに上記慣性力項成分のダイナミクスパラメータのみを切換える第1の態様に記載のロボットを提供する。
本発明の第6態様によれば、上記ダイナミクスパラメータ切換部は、複数段に分離して重力項成分のダイナミクスパラメータを切換える第1〜5のいずれか1つの態様に記載のロボットを提供する。
本発明の第7態様によれば、上記ダイナミクスパラメータ切換部は、上記慣性力項成分のダイナミクスパラメータを切換えるとき、上記慣性力項成分と共に、上記運動方程式の遠心力及びコリオリ力項成分のダイナミクスパラメータをも切換える第1〜6のいずれか1つの態様に記載のロボットを提供する。
本発明の第8態様によれば、上記ロボットは、弾性体アクチュエータで駆動されるロボットアームを備え、
さらに上記ロボットの上記弾性体アクチュエータにより発生する上記ロボットアームの手先の弾性力を制御する弾性力制御部を備え、
上記弾性力制御部は、上記ダイナミクスパラメータ切換部によるダイナミクスパラメータ切換時に発生する上記ロボットアームの上記手先の動きによる影響を抑制する方向に弾性力をかける第1の態様に記載のロボットを提供する。
さらに上記ロボットの上記弾性体アクチュエータにより発生する上記ロボットアームの手先の弾性力を制御する弾性力制御部を備え、
上記弾性力制御部は、上記ダイナミクスパラメータ切換部によるダイナミクスパラメータ切換時に発生する上記ロボットアームの上記手先の動きによる影響を抑制する方向に弾性力をかける第1の態様に記載のロボットを提供する。
本発明の第9態様によれば、上記ロボットは弾性体アクチュエータで駆動されるロボットアームを備え、
さらに上記ロボットの上記弾性体アクチュエータにより発生する上記ロボットアームの手先の弾性力を制御する弾性力制御部を備え、
上記弾性力制御部は、上記手先で把持している物体を設置した後、慣性力項成分のダイナミクスパラメータを切換えるより前に、上記手先の拘束が解除される方向に弾性力をかけるよう制御する第8の態様に記載のロボットを提供する。
さらに上記ロボットの上記弾性体アクチュエータにより発生する上記ロボットアームの手先の弾性力を制御する弾性力制御部を備え、
上記弾性力制御部は、上記手先で把持している物体を設置した後、慣性力項成分のダイナミクスパラメータを切換えるより前に、上記手先の拘束が解除される方向に弾性力をかけるよう制御する第8の態様に記載のロボットを提供する。
本発明の第10態様によれば、関節を有するロボットの制御装置であって、
上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報を取得する位置情報取得部と、
物体を把持していない状態の上記ロボットのダイナミクスパラメータと上記ロボットが上記物体を把持している状態の上記物体も含めたダイナミクスパラメータとを有する複数のダイナミクスパラメータの間で、運動方程式の重力項成分と慣性力項成分とを分離してそれぞれ切り換えるダイナミクスパラメータ切換部と、
上記ダイナミクスパラメータ切換部が上記ダイナミクスパラメータを切り換えた後の運動方程式と上記位置情報取得部で取得した上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報とに基づき、上記ロボットの関節トルクの目標値を目標関節トルクとして出力する目標トルク計算部とを備えて、
上記目標トルク計算部からの出力に基づき上記ロボットの動作を制御するロボットの制御装置を提供する。
上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報を取得する位置情報取得部と、
物体を把持していない状態の上記ロボットのダイナミクスパラメータと上記ロボットが上記物体を把持している状態の上記物体も含めたダイナミクスパラメータとを有する複数のダイナミクスパラメータの間で、運動方程式の重力項成分と慣性力項成分とを分離してそれぞれ切り換えるダイナミクスパラメータ切換部と、
上記ダイナミクスパラメータ切換部が上記ダイナミクスパラメータを切り換えた後の運動方程式と上記位置情報取得部で取得した上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報とに基づき、上記ロボットの関節トルクの目標値を目標関節トルクとして出力する目標トルク計算部とを備えて、
上記目標トルク計算部からの出力に基づき上記ロボットの動作を制御するロボットの制御装置を提供する。
本発明の第11態様によれば、関節を有するロボットの制御方法であって、
上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報を位置情報取得部で取得し、
物体を把持していない状態の上記ロボットのダイナミクスパラメータと上記ロボットが上記物体を把持している状態の上記物体も含めたダイナミクスパラメータとを有する複数のダイナミクスパラメータの間で、運動方程式の重力項成分と慣性力項成分とを分離してそれぞれダイナミクスパラメータ切換部で切り換え、
上記ダイナミクスパラメータ切換部が上記ダイナミクスパラメータを切り換えた後の運動方程式と上記位置情報取得部で取得した上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報とに基づき、上記ロボットの関節トルクの目標値を目標関節トルクとして目標トルク計算部で出力して、
上記目標トルク計算部からの出力に基づき上記ロボットの動作を制御するロボットの制御方法を提供する。
上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報を位置情報取得部で取得し、
物体を把持していない状態の上記ロボットのダイナミクスパラメータと上記ロボットが上記物体を把持している状態の上記物体も含めたダイナミクスパラメータとを有する複数のダイナミクスパラメータの間で、運動方程式の重力項成分と慣性力項成分とを分離してそれぞれダイナミクスパラメータ切換部で切り換え、
上記ダイナミクスパラメータ切換部が上記ダイナミクスパラメータを切り換えた後の運動方程式と上記位置情報取得部で取得した上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報とに基づき、上記ロボットの関節トルクの目標値を目標関節トルクとして目標トルク計算部で出力して、
上記目標トルク計算部からの出力に基づき上記ロボットの動作を制御するロボットの制御方法を提供する。
本発明の第12態様によれば、関節を有するロボットの制御プログラムであって、
コンピュータを、
上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報を取得する位置情報取得部としての機能と、
物体を把持していない状態の上記ロボットのダイナミクスパラメータと上記ロボットが上記物体を把持している状態の上記物体も含めたダイナミクスパラメータとを有する複数のダイナミクスパラメータの間で、運動方程式の重力項成分と慣性力項成分とを分離してそれぞれ切り換えるダイナミクスパラメータ切換部としての機能と、
上記ダイナミクスパラメータ切換部が上記ダイナミクスパラメータを切り換えた後の運動方程式と上記位置情報取得部で取得した上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報とに基づき、上記ロボットの関節トルクの目標値を目標関節トルクとして出力する目標トルク計算部としての機能と、
上記目標トルク計算部からの出力に基づき上記ロボットの動作を制御する機能とを実現させるためのロボットの制御プログラムを提供する。
コンピュータを、
上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報を取得する位置情報取得部としての機能と、
物体を把持していない状態の上記ロボットのダイナミクスパラメータと上記ロボットが上記物体を把持している状態の上記物体も含めたダイナミクスパラメータとを有する複数のダイナミクスパラメータの間で、運動方程式の重力項成分と慣性力項成分とを分離してそれぞれ切り換えるダイナミクスパラメータ切換部としての機能と、
上記ダイナミクスパラメータ切換部が上記ダイナミクスパラメータを切り換えた後の運動方程式と上記位置情報取得部で取得した上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報とに基づき、上記ロボットの関節トルクの目標値を目標関節トルクとして出力する目標トルク計算部としての機能と、
上記目標トルク計算部からの出力に基づき上記ロボットの動作を制御する機能とを実現させるためのロボットの制御プログラムを提供する。
以下に、本発明にかかる実施の形態を図面に基づいて詳細に説明する。
(第1実施形態)
図1は本発明の第1実施形態におけるロボット1の構成を示す。ロボット1は、多関節ロボットアーム5と、多関節ロボットアーム5の動作を制御する制御装置2とを備えている。
図1は本発明の第1実施形態におけるロボット1の構成を示す。ロボット1は、多関節ロボットアーム5と、多関節ロボットアーム5の動作を制御する制御装置2とを備えている。
制御装置2は、ハードウェア的には一般的なパーソナルコンピュータにより構成されている。そして、制御装置2のうちのインピーダンス制御手段(インピーダンス制御部又はロボットアーム制御部)4の入出力IF19を除く部分は、パーソナルコンピュータで実行される制御プログラム17としてソフトウェア的に実現される。よって、例えば、それぞれの動作を構成するステップを有するコンピュータプログラムとして、記憶装置(ハードディスク等)などの記録媒体に読み取り可能に記憶させ、そのコンピュータプログラムをコンピュータの一時記憶装置(半導体メモリ等)に読み込んでCPUを用いて実行することにより、上記した各ステップを実行することができる。
入出力IF19は、パーソナルコンピュータのPCIバスなどの拡張スロットルに接続された、D/Aボード20と、A/Dボード21と、カウンタボード22とにより構成される。
ロボット1の多関節ロボットアーム5の動作を制御するための制御プログラム17が実行されることにより、制御装置2が機能する。
ロボットアーム5の各関節(第1〜第5関節)11、12(12a,12b,12c,12d)、13、14、15の関節角度センサー又は位置情報取得手段(位置情報取得部)の一例である各エンコーダ42より出力される関節角度情報は、カウンタボード22を通じて制御装置2にそれぞれ取り込まれる。制御装置2は、取り込んだ関節角度情報に基づいて、各関節11、12、13、14、15における関節軸周りの回転動作の制御指令値をそれぞれ算出する。算出された各制御指令値は、D/Aボード20を通じてモータードライバ18に与えられ、モータードライバ18から送られた各制御指令値に従って、ロボットアーム5の各関節11、12、13、14、15のそれぞれのモータ41が駆動される。位置情報取得手段は、ロボットアーム5の位置の時系列の情報を取得する機能を有している。
ロボットアーム5は、5自由度の多リンクマニピュレータであり、物体を把持するためのハンド(多関節ロボットアーム5の手先の一例)6と、前腕リンク8と、肘ブロック16と、一対の上腕リンク9a、9bと、第1関節支柱24と、台部10とを有して構成されている。
ロボットアーム5は、5自由度の多リンクマニピュレータであり、物体を把持するためのハンド(多関節ロボットアーム5の手先の一例)6と、前腕リンク8と、肘ブロック16と、一対の上腕リンク9a、9bと、第1関節支柱24と、台部10とを有して構成されている。
前腕リンク8は、先端に、ハンド6が取付けられる手首部7が第4関節14の関節軸周りに回転可能に接続されている。
肘ブロック16の一端には、前腕リンク8の基端が第3関節13の関節軸周りに回転可能に連結されている。
一対の上腕リンク9a、9bは、それらの各一端が、肘ブロック16の他端にそれぞれ第2関節12のうちの2つの関節12c、12dの関節軸周りに回転可能に接続された平行リンク構造で構成されている。
第1関節支柱24は、台部10と支持部材124とで、上下方向沿いに位置しかつ第1関節11の関節軸周りに回転可能に支持されている。第1関節支柱24の上端近傍部には、上腕リンク9a、9bの各他端がそれぞれ第2関節12のうちの2つの関節12a、12bの関節軸周りに回転可能に接続されている。詳しくは、第1関節支柱24の下端は、台部10に第1関節11の関節軸周りに回転可能に支持され、第1関節支柱24の上端は、台部10に立設された支持部材124の支持部124bの上端から張り出した支持部材124の上端支持部124cに第1関節11の関節軸周りに回転可能に支持されている。
第2関節12(12a、12b、12c、12d)の関節軸周りでの回転により、第3関節13の関節軸が第1関節11の関節軸に対し常に平行を保つように、肘ブロック16が第2関節12a及び第2関節12b周りの回転運動を行うようにしている。
このように構成することにより、ロボットアーム5は、合計5個の軸周りに回転可能として上記5自由度の多リンクマニピュレータを構成している。
手首部7は、大括弧(])形状の第1ブラケット部7aと、逆T字形状の上部と一対のL字状の下部とで構成される第2ブラケット部7bとが互いに組み合わされてハンド6を構成している。すなわち、第1ブラケット部7aの上端中央部が、前腕リンク8の先端に第4関節14の関節軸周りに回転可能に連結されている。第1ブラケット部7aの両端部の内側には、第2ブラケット部7bの逆T字形状の上部の両端部が第5関節15の関節軸周りに回転可能に連結されている。第2ブラケット部7bの逆T字形状の上部の中央部には、後述するように、操作ハンドル40が取り付けられている。第2ブラケット部7bには、薄型テレビなどのパネルなどの物体と係合可能なフィンガー37a、37b、37c、37d、37eを、逆T字形状の上部の上端と両端部近傍部と一対のL字状の下部の下端との合計5箇所にそれぞれ備えている。また、第2ブラケット部7bの操作ハンドル40の近傍にはハンドボタン43が配置されており、ハンドボタン43を押すことにより、ハンドボタン43が押されたかどうかの信号Shbがハンド制御手段(ハンド制御部)34に出力され、かつ、図示しないモータの駆動で一つの方向に対して進退させて、フィンガー37aとフィンガー37bの間隔と、フィンガー37cとフィンガー37d(フィンガー37e)の間隔とをそれぞれ変更可能であり、ハンド6の開閉動作として機能する。この結果、例えば、第2ブラケット部7bの逆T字形状の上部の上端のフィンガー37cと両端部近傍部のフィンガー37a、37bとで、薄型テレビなどのパネルなどの矩形板状の物体の上端縁と両側縁とを支持し、第2ブラケット部7bの一対のL字状の下部の下端のフィンガー37d、37eで薄型テレビなどのパネルなどの矩形板状の物体の下端縁を支持可能として、ハンド6で薄型テレビなどのパネルなどの矩形板状の物体を安定して把持あるいは開放できるようにしている。よって、ハンド6は、互いに直交し、かつ、上下方向沿いに配置された第4関節14と上下方向と直交する横方向沿いに配置された第5関節15との2つの回転軸を有しており、台部10に対して、ハンド6の相対的な姿勢(向き)を変化させて、ハンド6で把持した物体の相対的な姿勢(向き)を変化させることができる。
各軸の回転部分を構成する各関節11、12a、13、14、15には、各関節11、12a、13、14、15の一方の部材に設けられた回転駆動装置(本第1実施形態ではモータ41)と、モータ41の回転軸の回転位相角(すなわち関節角)を検出するエンコーダ42とを備える。そして、モータ41の回転軸が関節の他方の部材に連結されて上記回転軸を正逆回転させることにより、他方の部材を一方の部材に対して各関節軸周りに回転可能とする。回転駆動装置は、後述するモータードライバ18により駆動制御される。本第1実施形態では、回転駆動装置の一例としてのモータ41とエンコーダ42とは、ロボットアーム5の各関節11、12a、13、14、15の内部に配設されている。
図1の参照符号35は台部10に対して相対的な位置関係が固定された絶対座標系であり、参照符号36はハンド6に対して相対的な位置関係が固定された手先座標系である。絶対座標系35から見た手先座標系36の原点位置Oe(x、y、z)をロボットアーム5の手先位置とし、絶対座標系35から見た手先座標系36の姿勢をロール角とピッチ角とで表現した(φ、θ)をロボットアーム5のハンド6の手先姿勢とし、ハンド6の手先位置及び姿勢ベクトルrを、r=[x,y,z,φ,θ]Tと定義する。厳密には、位置及び姿勢ベクトルrは時系列情報(時間関数)r(t)=[x(t),y(t),z(t),φ(t),θ(t)]Tであり、一階微分すれば速度、二階微分すれば加速度情報が取得できる。
なお、この実施形態では、ロボットアーム5の位置の時系列の情報を取得する位置情報取得手段(位置情報取得部)の一例として、エンコーダ42を使用している。この場合は、エンコーダ42のセンシングした信号が位置に関する一次情報であることから、エンコーダ42を位置情報取得手段の一例として取り扱うものであって、位置情報取得手段で取得した位置の情報に対して、ロボットアーム制御手段(ロボットアーム制御部)4側、すなわち、インピーダンス制御部側で、一階微分して速度の情報を取得し、二階微分して加速度の情報を取得するようにしてもよい。また、位置情報取得手段をロボットアーム5の位置の時系列の情報のみならず、速度の情報又は加速度の情報を取得する手段(部)として取り扱う場合には、エンコーダ42でセンシングし、カウンタ22でインピーダンス制御手段4に取込み、制御プログラムで関節角度qに変換し、順運動学計算手段(順運動学計算部)26で位置及び姿勢に変換するところまでを含めて、1つの手段として考えればよい。
ロボットアーム5のハンド6の手先位置及び姿勢を制御する場合には、手先位置及び姿勢ベクトルrを目標手先位置及び姿勢ベクトルrdに追従させることになる。
操作ハンドル40は、ハンド6と、外力取得手段(外力取得部又は外力取得装置)の一例として機能する力センサー3を介して接続されており、力センサー3に中央部が固定されたH型の支持体40bに固定された一対の上下方向沿いの棒状握り部40aで構成されて、人39は操作ハンドル40の一対の握り部40aを直接握り、力をかけることでロボット5を操作することができる。操作ハンドル40とロボットアーム5の間には力センサー3が配設されており、人39が操作するときの力Fsを力センサー3で検出して、後述する力変換手段(力変換部)30へ出力することができる。
次に、図2を使い、インピーダンス制御手段4の詳細について説明する。図2において、参照符号5は図1に示したロボットアームである。ロボットアーム5からは各関節の関節軸のエンコーダ42により計測された関節角の現在値(関節角度ベクトル)q=[q1,q2,q3,q4,q5]Tが出力され、カウンタボード22によりインピーダンス制御手段4に取り込まれる。ただし、q1,q2,q3,q4,q5は、それぞれ、第1関節11、第2関節12a、第3関節13、第4関節14、第5関節15の関節角度である。
また、ロボットアーム5の力センサー3からは、力センサー3により計測された外力(計測値)FS=[fx,fy,fz,nx,ny,nz]Tが出力され、A/Dボード21によりインピーダンス制御手段4に取り込まれる。ここで、fx,fy,fzは手先座標系36の互いに直交する3方向(x軸、y軸、z軸方向)の方向別の力の成分である。また、nx、ny,nzは手先座標系36の互いに直交する3方向まわりの回転モーメントである。
目標軌道生成手段(目標軌道生成部)23は、目標とするロボットアーム5の動作を実現するための手先位置及び姿勢目標ベクトルrdを出力する。目標とするロボットアーム5の動作は、目的とする作業に応じて、事前に、それぞれの時間(t=0、t=t1、t=t2、・・・)でのポイント毎の位置(rd0、rd1、rd2、・・・)が時系列データとして与えられている。目標軌道生成手段23は、多項式補間を使用し、各ポイント間の軌道を補完し、手先位置及び姿勢目標ベクトルrdを生成する。
インピーダンス計算手段(インピーダンス計算部)25は、ロボットアーム5に機械インピーダンス設定値へのロボットアーム5の機械インピーダンスの値の制御を実現する機能を果たす部分である。インピーダンス計算手段25は、ロボットアーム5が目標軌道生成手段23の生成する目標軌道に沿うよう位置制御により単独で動作する場合は、0を出力する。一方、ロボットアーム5と人間が協働作業をする場合には、インピーダンス計算手段25は、設定したインピーダンスパラメータMI、DI、及び、KI(慣性MI、粘性DI、及び、剛性KI)と、後述する力変換手段(力変換部)30へ入力される外力F=[fx,fy,fz,nφ,nθ]Tと、それぞれのエンコーダ42からの関節角度データ(関節角度ベクトルq)とにより、ロボットアーム5に機械インピーダンスを実現するための手先位置及び姿勢目標補正出力Δrdを以下の式(1)により計算して出力する。手先位置及び姿勢目標補正出力Δrdは、目標軌道生成手段23の出力する手先位置及び姿勢目標rdに第1演算部51で加算され、手先位置及び姿勢補正目標ベクトルrdmが生成される。ただし、nφ、nθはロール軸、ヨー軸回りの回転モーメントである。
順運動学計算手段(順運動学計算部)26には、ロボットアーム5のそれぞれの関節軸のエンコーダ42から出力された各関節角の現在値qである関節角度ベクトルqがカウンタボード22を介して入力される。順運動学計算手段26では、ロボットアーム5の関節角度ベクトルqから手先位置及び姿勢ベクトルrへの変換の幾何学的計算を行う。
第2演算部52は、順運動学計算手段26により計算される手先位置及び姿勢ベクトルrと、第1演算部51で生成された手先位置及び姿勢補正目標ベクトルrdmとの誤差reを求め、求めた誤差reを位置誤差補償手段(位置誤差補償部)27に出力する。
位置誤差補償手段27は、第2演算部52で求められた誤差reに基づいて位置誤差補償出力ureを求め、求めた位置誤差補償出力ureを目標トルク計算手段(目標トルク計算部)28に出力する。
目標トルク計算手段28は、エンコーダ42からの関節角度ベクトルqと、位置誤差補償出力ureからの位置誤差補償出力ureと、ロボットアームの運動方程式に基づく計算式(5)、すなわち、
ロボットアーム5を構成する各リンク構造、ハンド6で把持した物体の重量、及び、慣性モーメントといった値により構成されるダイナミクスパラメータである。なお、遠心力・コリオリ力項は任意であり、少なくとも慣性行列(慣性力項)と重力項でダイナミクスパラメータを構成する。また、Jr(q)は式(6)、すなわち、
ダイナミクスパラメータ切換手段(ダイナミクスパラメータ切換部)50は、目標トルク計算手段28において計算される式(5)のダイナミクスパラメータ
ダイナミクスパラメータ切換手段50によるダイナミクスパラメータの切換動作は、ステップ的に行うと制御が不連続となり不安定になるため、例えば100msecのような短い時間をかけて連続的に変化させることで安定性を確保する。
トルク制御手段48は、目標トルク計算手段28で求められた目標トルクτdと各関節を駆動するモータドライバ18で検出されたモータ41に流れる電流iに基づいて式(7)、すなわち、
電圧指令値vは、トルク制御手段48からD/Aボード20を介してモータードライバ18に電圧指令値として与えられ、モータードライバ18でそれぞれのモータ41が駆動されて、各関節軸が正逆回転駆動されてロボットアーム5が動作する。
ハンド制御手段34は、ハンドボタン43が押されたかどうかの信号Shbとダイナミクスパラメータ切換手段50からのダイナミクスパラメータ切換完了信号Sdpとに基づき、ハンド制御信号Shcを出力し、ハンド6の開閉動作を制御する。また、ハンド制御手段34は、ダイナミクスパラメータ切換手段50へ、ハンド6の把持又は開放の動作状態を通知するため、ハンド動作状態信号Shsを出力する。
以上のように構成されるインピーダンス制御手段4の基本構成に関して動作の基本原理を説明する。
動作の基本は、位置誤差補償手段27による手先位置及び姿勢誤差reのフィードバック制御(位置制御)であり、図2の点線で囲まれた部分が位置制御系29になっている。位置誤差補償手段27として、例えば、PID補償器を使用すれば、手先位置及び姿勢誤差reが0に収束するように制御が働き、目標とするロボットアーム5のインピーダンス制御動作が実現することができる。
インピーダンス制御を行う場合、上記説明した位置制御系29に対し、インピーダンス計算手段25から出力された手先位置及び姿勢目標補正出力Δrdが、目標軌道生成手段23から出力された手先位置及び姿勢目標rdに第1演算部51で加算されて、手先位置及び姿勢の目標値の補正が行われ、この補正された手先位置及び姿勢の目標値が手先位置及び姿勢補正目標ベクトルrdmとして入力される。このために、上記した位置制御系29は、手先位置及び姿勢の目標値が本来の値より微妙にずれることになり、結果的に機械インピーダンスが実現される。以上の図2の一点鎖線で囲まれた部分は、位置制御ベースのインピーダンス制御系49と呼ばれる構成であり、このインピーダンス制御系49により、慣性MI、粘性DI、及び、剛性KIの機械インピーダンスが実現される。インピーダンス制御手段4は、動作制御手段、又は動作制御部の一例として機能する。
以上のインピーダンス制御を利用すれば、図3に示すような、人39とロボット1のロボットアーム5との物体38の協調搬送のような協働作業が可能となる。人39が物体38を移動しようとして、一対の操作ハンドル40の棒状握り部40aに両手で力をかけると、操作ハンドル40を通じて力がロボット1のロボットアーム5に伝わる。上記ロボットアーム5に伝わった力が、ロボットアーム5の力センサー3により、外力Fsとして検出される。インピーダンス制御手段4への入力となる外力Fsは、操作ハンドル40の重力を考慮するとともに、手先座標系36の原点Oeと力センサー3の測定面45の位置とが異なることを考慮するため、力変換手段30において、力センサー3により検出された外力Fsを基に式(8)で計算を行い、この計算により算出される外力Fを使用する。
ただし、mは操作ハンドル40の質量、gは重力加速度、0Reは手先座標系36から絶対座標系35へ姿勢を変換する回転行列、lseは手先座標系36の原点Oeから力センサー3の測定面45までの距離、lshは操作ハンドル40の重心から力センサー3の測定面45までの距離である。なお、先に述べたように、ピッチ角θは手先座標系のy軸回りの回転角度である。式(8)で計算される外力Fを入力にインピーダンス制御を行えば、ロボットアーム5は人39がかけた力の方向に沿うように動作するため、協調搬送が実現する。なお、操作ハンドル40の質量m、及び、重力加速度gは、力変換手段30に予め記憶されている。
本発明の第1実施形態のロボット1の制御装置2の特徴は、以上の基本的なインピーダンス制御手段4の構成に加え、ダイナミクスパラメータ切換手段50を有するところにあり、以下、詳細について図4及び図5に示す物体搬送作業を行う場合を例に説明する。図4は物体搬送作業の全体の流れの概略手順を説明する図であり、図5は物体搬送作業をステップ毎に区切った詳細手順を説明する図で、図5ではロボット1の内、ハンド6のみ表示している。また、ここでは、物体38の一例として薄型テレビ46を使用している。
図4及び図5での物体搬送作業内容は、以下の通りである。
まず、ハンドボタン43を押して、図4の左側の第1作業台31に伏して置かれた薄型テレビ46をハンド6で把持し(図5(a)→(b)参照)、持ち上げる(図5(c)参照)。
その後、y軸周りのθ方向周りに90°回転する(図4矢印A参照)ことで、上下方向に立てた状態にし、第1作業台31の上方の位置から第2作業台32の上方へと薄型テレビ46をハンド6で水平移動し(図4の矢印B参照)、ハンド6で把持した薄型テレビ46を第2作業台32に配設されたY字状のスタンド33に位置合わせをする(図5(c)→(d)参照)。
その後、ハンド6で把持した薄型テレビ46を下降させ、薄型テレビ46の底面に配設された一対の挿入口47に、第2作業台32のスタンド33の一対の突起33aを挿入する(図4の矢印C参照、図5(e)参照)。
その後、ハンドボタン43を押してハンド6による把持を開放し、薄型テレビ46からハンド6を分離し、物体搬送作業が完了する(図5(f)参照)。
以上が上記した物体搬送作業である。
以上の物体搬送作業の流れの中で図5(b)の状態においては、その後に薄型テレビ46の持ち上げ動作を行うために、ダイナミクスパラメータ切換手段50により、ダイナミクスパラメータを、ロボットアーム5が物体46を把持していない状態のロボットアーム5とハンド6だけの場合のダイナミクスパラメータ
また、図5(e)の状態においては、その後に薄型テレビ46からハンド6を分離するためにイナミクスパラメータを、ロボットアーム5が物体46を把持している状態のロボットアーム5とハンド6に物体46も加えた場合のダイナミクスパラメータ
以上のダイナミクスパラメータ切換手段50によるダイナミクスパラメータの切換動作により、薄型テレビ46の重量などの作業対象である物体の情報が制御に反映され、一連の作業動作が可能となる。
しかしながら、ダイナミクスパラメータにはモデル化誤差が含まれていたり、インピーダンス制御手段4の制御結果には制御誤差が存在するため、ダイナミクスパラメータの切換動作を単純に一度で全パラメータを切り換えると、切換前後で制御結果にズレが生じロボットアーム5が動いてしまう可能性がある。
例えば、図5(b)の状態ではハンド6が水平方向に動いてしまい、薄型テレビ46と第1作業台31が擦れ合い、薄型テレビ46の表面を傷つけてしまう可能性がある。
また、図5(e)の状態ではハンド6が水平方向に動こうとすると、スタンド33に過度の力が掛かかることでスタンド33が破損し、ハンド6の解放後に薄型テレビ46がスタンド33から落下する可能性がある。また、ハンド6が水平方向に動こうとすると、薄型テレビ46と第2作業台32とのバランスが崩れ、薄型テレビ46が転倒してしまう可能性もある。
ここで図5(b)の状態は、薄型テレビ46が第1作業台31に接触した状態であり、ハンド6は垂直下方に動くことができない状態にある。また、図5(e)の状態は、薄型テレビ46がスタンド33に挿入された状態であり、ハンド6は水平方向及び垂直下方に動くことができない状態にある。こうした外環境等との接触があり、ある方向に動けない状態を、ここでは「拘束状態」と定義する。
こうした拘束状態において発生する課題を解決するため、ダイナミクスパラメータ切換手段50は、図9に示すように、慣性行列と、遠心力・コリオリ力項と、重力項とごとに分離して、それぞれ独立に、切り換えるよう動作する。
図5(b)の状態では、フィンガー37aとフィンガー37bとの間及びフィンガー37cとフィンガー37d(フィンガー37e)との間の閉動作が完了、すなわちハンド6による把持が完了した時点で、ダイナミクスパラメータ切換手段50は、まず、重力項のみgr(q)からgro(q)に切り換える。
その後、薄型テレビ46が所定距離(すなわち、少し、例えば5cm)だけ持ち上がったとき、すなわち、ハンド6がすべての方向に自由に動くことができる非拘束状態になったとき、ダイナミクスパラメータ切換手段50は、慣性行列、遠心力・コリオリ力項を
ダイナミクスパラメータの特性を考えれば、重力項による垂直方向の動きに対する影響は大きく、慣性行列と、遠心力・コリオリ力項との垂直方向の動きに対する影響は、相対的に小さい。
逆に、重力項による水平方向の動きに対する影響は小さく、慣性行列と、遠心力・コリオリ力項との垂直方向の動きに対する影響は、相対的に大きい。
したがって、上記のように分離して切り換えれば、ダイナミクスパラメータの切換により発生してしまう動きの垂直方向及び水平方向という方向性を、コントロール可能となる。
図5(b)の状態において、まず、重力項のみ切り換えることにより、意図しない水平方向の動きを抑えることができ、薄型テレビ46と第1作業台31とが擦れ合い、薄型テレビ46の表面を傷つけてしまうことを防ぐことができる。
その後、薄型テレビ46と第1作業台31とが分離したときに、慣性行列と、遠心力・コリオリ力項との切換を行えば、もし意図しない水平方向の動きが発生しても、薄型テレビ46と第1作業台31とが分離しているため、薄型テレビ46の表面を傷つけることはない。
また、薄型テレビ46を持ち上げる際には、慣性行列と、遠心力・コリオリ力項との切換を行うまでは、薄型テレビ46を把持していない状態のダイナミクスパラメータで、薄型テレビ46を把持した状態の動作を行うことになるため、水平方向の操作性の劣化が発生するが、持ち上げる方向は主に垂直方向であり、また、少し持ち上げるだけの短距離であるため、操作性が問題になることは少ない。
次に、図5(e)の状態では、スタンド33への挿入が完了した時点で、ダイナミクスパラメータ切換手段50は、まず、重力項のみ、gro(q)からgr(q)に切り換える。
その後、ハンドボタン43を押してハンド6による把持を開放し、薄型テレビ46より所定距離(すなわち、少し、例えば5cm)だけハンド6が離れ、非拘束状態になったところで、ダイナミクスパラメータ切換手段50は、慣性行列と、遠心力・コリオリ力項とを
図5(e)の状態において、ダイナミクスパラメータ切換手段50により、まず、重力項のみ切り換えることにより、意図しない水平方向の動きを抑えることができ、スタンド33に過度の力が掛かり、破損してしまうことを防いだり、又は、第2作業台32等の転倒を防ぐことができる。
その後、薄型テレビ46とハンド6が分離したときに慣性行列と、遠心力・コリオリ力項とのそれぞれの切換をダイナミクスパラメータ切換手段50で行えば、もし意図しない水平方向の動きが発生しても、薄型テレビ46とハンド6とが分離しているため、スタンド33に力が掛かることはない。
また、ハンド6を薄型テレビ46から分離する際には、慣性行列と、遠心力・コリオリ力項との切換をダイナミクスパラメータ切換手段50で行うまでは、薄型テレビ46を把持した状態のダイナミクスパラメータで、薄型テレビ46を把持していない状態の動作を行うことになるため、水平方向の操作性の劣化が発生するが、精密な位置決め動作ではなくハンド6を分離するだけの動作であり、また、ハンド6を分離するまでの短距離であるため、操作性が問題になることは少ない。
図6は、上述した原理に基づく制御プログラムによるロボットアーム制御時の動作ステップを説明するフローチャートである。
ステップS1では、ロボットアーム5の動作制御を行うときロボットアーム5の各関節の関節軸のそれぞれのエンコーダ42により計測された関節角度データ(関節角度ベクトルq)が制御装置2に取り込まれる。
次いで、ステップS2では、ロボットアーム5からの関節角度データ(関節角度ベクトルq)から、ロボットアーム5の現在(ロボットアーム5の動作制御を行うとき)の手先位置及び姿勢ベクトルrが順運動学計算手段26により計算される(順運動学計算手段26での処理)。
次いで、ステップS3では、力センサー3の計測値である外力Fsが力変換手段30に取り込まれ、外力Fsと式(8)とに基づき、外力Fが力変換手段30で計算される。この結果、力センサー3の計測値である外力Fsが外力Fに力変換手段30で変換される。
次いで、ステップS4では、インピーダンスパラメータMI、DI、及び、KIと、それぞれのエンコーダ42からの関節角度データ(関節角度ベクトルq)と、力変換手段30において変換された外力Fとから、手先位置及び姿勢目標補正出力Δrdが、インピーダンス計算手段25により計算される(インピーダンス計算手段25での処理)。
次いで、ステップS5では、目標軌道生成手段23からの手先位置及び姿勢目標ベクトルrdとインピーダンス計算手段25からの手先位置及び姿勢目標補正出力Δrdとの和が第1演算部51で計算される。第1演算部51で計算されて求められた手先位置及び姿勢補正目標ベクトルrdmと、順運動学計算手段26からの現在の手先位置及び姿勢ベクトルrとの差である手先位置及び姿勢の誤差reが、第2演算部52で計算される。
次いで、ステップS6では、第2演算部52で計算されて求められた手先位置及び姿勢の誤差reが位置誤差補償手段27に入力されて、位置誤差補償手段27において、位置誤差補償出力ureが求められる(位置誤差補償手段27での処理)。位置誤差補償手段27の具体例としてはPID補償器が考えられる。位置誤差補償手段27では、定数の対角行列である比例、微分、積分の3つのゲインを適切に調整することにより、位置誤差が0に収束するように制御が働く。
次いで、ステップS7では、目標トルク計算手段28において、位置誤差補償手段27から位置誤差補償出力ureが入力されて、関節角度ベクトルqとダイナミクスパラメータ切換手段50で決定されたダイナミクスパラメータとに基づき、式(5)を使って目標トルクτdが計算される(目標トルク計算手段28での処理)。
次いで、ステップS8では、目標トルク計算手段28で計算された目標トルクτdとモータ41に流れる電流iがトルク制御手段48に入力されて、式(7)を使って電圧指令値vが計算される(トルク制御手段48での処理)。
次いで、ステップS9では、電圧指令値vが、トルク制御手段48からD/Aボード20を通じてモータードライバ18に与えられ、モータードライバ18により、各モータ41を流れる電流量を変化させることにより、ロボットアーム5の各関節の関節軸の回転運動が発生する。
以上のステップS1〜ステップS9が、制御の計算ループとして繰り返し実行されることにより、ロボットアーム5の動作の制御が実現する。
図7は、ダイナミクスパラメータ切換手段50における動作ステップを表すフローチャートである。ダイナミクスパラメータ切換手段50では図7に示す動作ステップが、図6に示す動作ステップとは独立に並行して処理が行われる。
ステップS70は、ロボット起動時に一度だけ実行され、ダイナミクスパラメータ切換手段50においてダイナミクスパラメータを
次いで、ステップS71では、ダイナミクスパラメータ切換手段50において、ハンド制御手段34よりのハンド動作状態信号Shsを確認し、ハンド動作状態信号Shs=0の場合はハンド動作状態信号Shsの確認を継続し、ハンド動作状態信号Shs=1の場合には、ハンド把持が完了したとして、ステップS72へと進む。
ステップS72では、ダイナミクスパラメータ切換手段50において、重力項をgr(q)からgro(q)に切り換え、目標トルク計算手段28へと出力する。
次いで、ステップS73では、ダイナミクスパラメータ切換手段50において、第1作業台31に設置した状態からの上昇量を手先位置rから計算し、上昇量がある一定値、例えば5cmを越えたかどうかをダイナミクスパラメータ切換手段50で確認する。越えていないとダイナミクスパラメータ切換手段50で確認した場合は所定時間後に、再度、確認を繰り返し、越えたとダイナミクスパラメータ切換手段50で確認した場合はステップS74へと進む。
次いで、ステップS74では、ダイナミクスパラメータ切換手段50において、慣性行列をMr(q)からMro(q)に切り換えるとともに、遠心力・コリオリ力項を
ステップS75では、ダイナミクスパラメータ切換手段50において、ハンド開放予告の確認のため、ハンド制御手段34よりのハンド動作状態信号Shsを確認し、ハンド動作状態信号Shs=0の場合は、ハンド動作状態信号Shsの確認を継続し、ハンド動作状態信号Shs=1の場合には、ハンド開放を行うことを予告されているとして、ステップS76へと進む。
次いで、ステップS76では、ダイナミクスパラメータ切換手段50において、重力項をgro(q)からgr(q)に切り換え、目標トルク計算手段28へと出力し、ハンド制御手段34へダイナミクスパラメータ切換完了信号Sdpを出力する。
次いで、ステップS77では、ダイナミクスパラメータ切換手段50において、第2作業台32のスタンド33に薄型テレビ46を設置した状態からの薄型テレビ46の画面の垂線方向のハンド6の移動量、すなわち、ハンド6と薄型テレビ46との間の距離を、手先位置及び姿勢ベクトルrから計算し、距離がある一定値(閾値)、例えば5cmを越えたかどうか(ハンド6が薄型テレビ46から離脱したか否か)を確認する。越えていないとダイナミクスパラメータ切換手段50で確認した場合は所定時間後に、再度、確認を繰り返し、越えたとダイナミクスパラメータ切換手段50で確認した場合はステップS78へと進む。
次いで、ステップS78では、ダイナミクスパラメータ切換手段50において、慣性行列をMro(q)からMr(q)に切り換えるとともに、遠心力・コリオリ力項を
その後、ステップS71へと戻り、ステップS71からステップS78が繰り返し実行される。
図8は、ハンド制御手段34における動作ステップを表すフローチャートである。ハンド制御手段34では図8に示す動作ステップが、図6に示す動作ステップとは独立に並行して処理が行われる。
ステップS81では、ハンド制御手段34において、ハンドボタン43が押されたかどうかの確認を信号Shbにより行い、Shb=0の場合、すなわち、ハンドボタン43が押されていないとハンド制御手段34で確認した場合は、信号Shbの確認を所定時間後に、再度、繰り返す。一方、Shb=1の場合、すなわち、ハンドボタン43が押されたとハンド制御手段34で確認した場合はステップS82へと進む。
ステップS82では、ハンド制御手段34よりロボットアーム5にハンド制御信号Shc=1が出力され、モータ駆動で、フィンガー37aとフィンガー37bとの間及びフィンガー37cとフィンガー37d(フィンガー37e)との間を閉じ、薄型テレビ46を把持する。
ステップS83では、ハンド制御手段34において、ダイナミクスパラメータ切換手段50へとハンド把持が完了したことを通知するハンド動作状態信号Shs=1のパルスを出力する。
ステップS84では、ハンド制御手段34において、ハンドボタン43が押されたかどうかの確認を信号Shbにより行い、Shb=0の場合、すなわち、ハンドボタン43が押されていないとハンド制御手段34で確認した場合は、所定時間後に、再度、信号Shbの確認を繰り返す。一方、Shb=1の場合、すなわち、ハンドボタン43が押されたとハンド制御手段34で確認した場合はステップS85へと進む。
ステップS85では、ハンド制御手段34において、ダイナミクスパラメータ切換手段50へ、ハンド開放を行うことを予告するためハンド動作状態信号Shs=1のパルスを出力する。
ステップS86では、ハンド制御手段34において、ダイナミクスパラメータ切換手段50からハンド制御手段34にダイナミクスパラメータ切換完了信号Sdp=1のパルスが出力されたかどうかの確認を行う。ダイナミクスパラメータ切換完了信号Sdp=1のパルスが出力されていないとハンド制御手段34で確認した場合は、所定時間後に、再度、ダイナミクスパラメータ切換完了信号Sdpの確認を繰り返し、ダイナミクスパラメータ切換完了信号Sdp=1のパルスが出力されたとハンド制御手段34で確認した場合はステップS87へと進む。
ステップS87では、ハンド制御手段34よりロボットアーム5にハンド制御信号Shc=0が出力され、モータ駆動で、フィンガー37aとフィンガー37bとの間及びフィンガー37cとフィンガー37d(フィンガー37e)との間を開き、ハンド6から薄型テレビ46を開放する。
ハンド制御手段34は、以上のステップS81〜S87を繰り返すことで、ダイナミクスパラメータ切換手段50と連携して物品の一例である薄型テレビ46の把持及び開放を実現する。
以上、本第1実施形態によれば、ダイナミクスパラメータ切換手段50を有することにより、ロボットアーム5が物体46を把持していない状態のロボットアーム5とハンド6だけの場合のダイナミクスパラメータ、又はロボットアーム5が物体46を把持している状態のロボットアーム5とハンド6に物体46も加えた場合のダイナミクスパラメータに、慣性行列と、遠心力・コリオリ力項と、重力項とを、それぞれ、分離してそれぞれ独立に切り換えることで、ダイナミクスパラメータの切換により発生してしまう動きの垂直方向及び水平方向という方向性をコントロール可能となる。
したがって、把持している物体46を外環境に対して擦ってしまったり、物体46又は外環境の構造物に過度の力を与え破壊してしまったり、落下又は転倒させてしまうことのない、把持物又は外環境等に対して優しく安全なロボット1とすることができる。
なお、本第1実施形態では、インピーダンス制御を使い、人が操作する形態としたが、これに限られるわけではなく、インピーダンス計算手段25の出力を0とし、目標軌道生成手段23で作業を行うための軌道を生成すれば、自動動作が可能であり、この場合も、ダイナミクスパラメータ切換手段50は同様の効果を発揮する。
また、本第1実施形態では、重力項の切換を行った後、慣性行列と、遠心力・コリオリ力項とのそれぞれの切換を行うとしたが、この切換パターンに限られるわけではなく、図4(a)のハンド6を薄型テレビ46に接近させているときに把持位置に十分近づいていれば、先に、慣性行列と、遠心力・コリオリ力項とのそれぞれの切換を行い、ハンド6で把持した後に重力項のみを切り換えることも可能である。
さらに、図4(d)のスタンド33の位置決めの際に、挿入口47がスタンド33の真上に近づいていれば、先に、慣性行列と、遠心力・コリオリ力項とのそれぞれの切換を行い、スタンド33の挿入後に重力項のみを切り換えることも可能である。
(第2実施形態)
本発明の第2実施形態におけるロボット1の基本的な構成は、図1及び図2に示した第1実施形態の場合と同様であるので、共通部分は第1実施形態と同一番号を付してそれらの説明は省略し、異なる部分についてのみ以下、詳細に説明する。
本発明の第2実施形態におけるロボット1の基本的な構成は、図1及び図2に示した第1実施形態の場合と同様であるので、共通部分は第1実施形態と同一番号を付してそれらの説明は省略し、異なる部分についてのみ以下、詳細に説明する。
第2実施形態では、図10に示すようにダイナミクスパラメータ切換手段50の動作ステップのフローが異なり、ダイナミクスパラメータの切換を複数段に分離して行う。
ステップS70及びステップS71の後、ステップS92では、ダイナミクスパラメータ切換手段50において、切換の第1段として、重力項をgr(q)から、以下で表されるgrm(q)に切り換える。
ここで、αは定数であり、例えばα=0.9とすれば、把持物体の重量が実際の重さの9割とした場合の制御が働くため、ダイナミクスパラメータに誤差があっても把持物体の一例としての薄型テレビ46を第1作業台31に確実に設置させることになるため、薄型テレビ46の一部が第1作業台31に設置したまま微妙に浮き上がり、水平の動きに対して第1作業台31と薄型テレビ46の一部との間で擦り合いが発生するのを防ぐことができる。
実際の重さの9割とした場合の制御では、垂直方向の操作性が劣化することになるが、少し持ち上げることでステップS94に移行するので、操作性への影響は小さい。
実際の重さの9割とした場合の制御では、垂直方向の操作性が劣化することになるが、少し持ち上げることでステップS94に移行するので、操作性への影響は小さい。
その後、ステップS77からステップS78を第1実施形態と同様に行なう。
(第3実施形態)
本発明の第3実施形態におけるロボット1の基本的な構成は、図1及び図2に示した第1実施形態の場合と同様であるので、共通部分は第1実施形態と同一番号を付してそれらの説明は省略し、異なる部分についてのみ以下、詳細に説明する。
本発明の第3実施形態におけるロボット1の基本的な構成は、図1及び図2に示した第1実施形態の場合と同様であるので、共通部分は第1実施形態と同一番号を付してそれらの説明は省略し、異なる部分についてのみ以下、詳細に説明する。
図11は、第3実施形態におけるロボットのインピーダンス制御手段4Aの構成を示すブロック図である。第3実施形態のインピーダンス制御手段4Aは、第1実施形態のインピーダンス制御手段4に比べて、弾性力制御手段(弾性力制御部)44が新たに加わっている点が異なる。
弾性力制御手段44は、ハンド制御手段34からのハンド動作状態信号Shsを受け、手先位置及び姿勢目標補正出力Δrdcを第2演算部52に出力し、位置誤差補償手段27へゲイン調整信号Sgを出力する。
図12は、弾性力制御手段44における動作ステップを表すフローチャート、図15は動作のタイミングを説明する図である。弾性力制御手段44では図12に示す動作ステップが、図6に示す動作ステップとは独立に並行して処理が行われる。図12に示す動作ステップは、図7の第1実施形態の場合の動作ステップに加え、ステップS1100、S1102、S1104、S1106、S1108の5つの動作ステップが新たに加わる。
まず、ステップS70の後、ステップS1100では、弾性力制御手段44において、初期設定として手先位置及び姿勢目標補正出力Δrdcが0ベクトルに設定される。
次いで、ステップS71の後、ステップS1102では、弾性力制御手段44において、手先位置及び姿勢目標補正出力がΔrdc=[0,0,−Δzdc,0,0]Tに設定され、弾性力制御手段44から位置誤差補償手段27へゲイン調整信号Sgが出力される。ただし、Δzdcは正の定数値である。
位置誤差補償手段27は、弾性力制御手段44からゲイン調整信号Sgを受けると、位置制御のゲイン値を低下させる。したがって、手先位置及び姿勢目標値が−Δzdcだけ垂直下向き(−z方向)に補正されているため、図5(b)の状態に置いて、図14Aの矢印Fzに示すように、ハンド6で薄型テレビ46を垂直下向きに第1作業台31に押しつけるような弾性力がハンド6から薄型テレビ46に働くことになる。すなわち、弾性力制御手段44は、ハンド6から物体の一例としての薄型テレビ46に働く弾性力を制御するものであって、ダイナミクスパラメータ切換手段50によるダイナミクスパラメータ切換時に発生するロボットアーム5のハンド6の動きによる影響を抑制する方向に弾性力をかけるように構成している。
次いで、ステップS72及びステップS73の後、ステップS1104では、弾性力制御手段44において、手先位置及び姿勢目標補正出力Δrdcを0ベクトルに戻し、弾性力制御手段44から位置誤差補償手段27へのゲイン調整信号Sgの出力が停止されて、弾性力の発生が解除される。
次いで、ステップS74及びステップS75及びステップS76の後、ステップS1106では、弾性力制御手段44において、手先位置及び姿勢目標補正出力がΔrdc=[Δxdc,Δydc,0,0,0]Tに設定され、弾性力制御手段44から位置誤差補償手段27へゲイン調整信号Sgが出力される。ただし、[Δxdc,Δydc,0]Tは、図5(e)の状態に置いて、薄型テレビ46の画面の法線方向に平行で薄型テレビ46からハンド6の方向を向く定ベクトルである。
位置誤差補償手段27は、このようなゲイン調整信号Sgを弾性力制御手段44から受けると、位置制御のゲイン値を低下させる。したがって、手先位置及び姿勢目標値が[Δxdc,Δydc,0]Tだけ薄型テレビ46からハンド6の方向に補正されているため、図5(e)の状態に置いて、図14Bの矢印Fx(図14Bの紙面を置く側から手前側に向けて貫通する方向の矢印)に示す薄型テレビ46からハンド6が離脱しようとする弾性力が働くことになる。すなわち、ここでは、弾性力制御手段44は、ハンド6で把持している物体の一例としての薄型テレビ46を設置した後、慣性力項成分のダイナミクスパラメータを切換えるより前に、ハンド6の拘束が解除される方向に弾性力をかけるよう制御する。
次いで、ステップS77の後、ステップS1108では、弾性力制御手段44において、手先位置及び姿勢目標補正出力Δrdcを0ベクトルに戻し、弾性力制御手段44から位置誤差補償手段27へのゲイン調整信号Sgの出力が停止され、弾性力の発生が解除される。
その後、ステップS78の後、ステップS71へと戻り、ステップS71からステップS78が繰り返し実行される。
以上の弾性力制御手段44の動作によれば、図5(b)の状態に置いて、垂直下向きに押しつけるような弾性力が働き、薄型テレビ46が第1作業台31に対して確実に固定されるため、ダイナミクスパラメータ切換によって、薄型テレビ46が中途半端に浮いてしまうことで水平方向に容易に動くようになり、人の操作で薄型テレビ46と第1作業台31を擦ってしまう可能性を低くできる。また、図5(e)の状態に置いて、薄型テレビ46からハンド6が離脱しようとする弾性力が働くため、ハンド6の解放時に弾性力によってもハンド6が薄型テレビ46から離れる動作が促進されるため、着実に離脱が可能となる。
なお、上記第1〜第3実施形態では、ロボットアーム5をモータで関節を駆動するとしたが、これに限られるわけではなく、空気圧シリンダー又は空気圧人工筋などの空圧アクチュエータ言い換えれば弾性体アクチュエータでも同様の効果を発揮する。特に、第3実施形態では、空圧アクチュエータにすると、機構的な弾性力を利用できるようになるため、より効果を高めることが可能となる。
また、上記第1実施形態では、慣性行列と、遠心力・コリオリ力項との切換のタイミングを図5(c)及び図5(f)の状態で切り換えるとしたが、これに限られるわけではない。例えば、図5(a)においてハンド6が把持のために薄型テレビ46に接触して停止する直前の低速の状態、及び、図5(d)においてスタンド33への薄型テレビ46の位置決めが完了し、挿入動作に入る直前の低速状態にあるときに、慣性行列と、遠心力・コリオリ力項との切換を行う場合でも、同様の効果を発揮する。この場合、ハンド6は拘束状態に入る直前の非拘束状態にあるため、薄型テレビ46と第1作業台31とが擦れ合い、薄型テレビ46の表面を傷つけてしまう等の問題は発生しない。また、物体を把持していない状態で物体を把持した状態のダイナミクスパラメータで動作することになり、操作性が劣化するが、速度が十分低速であるので、その影響は小さい。
また、上記第3実施形態では、弾性力制御手段44を、図11に示すように、手先位置及び姿勢目標補正出力Δrdcを出力して、位置誤差補償手段27のゲイン調整を行う構成としたが、これに限られるわけではない。例えば、弾性力制御手段44を、図13に示すようにΔFdcを出力し、インピーダンス計算手段25への力入力を補正することで、弾性力を発揮する構成も可能である。この場合、図12のステップS1102において、ΔFdc=[0,0,−ΔFzdc,0,0]T(ただし、ΔFzdcは正の定数値)を出力すれば良く、また、ステップS6においてΔFdc=[ΔFxdc,ΔFydc,0,0,0]T(ただし、[ΔFxdc,ΔFydc,0]Tは、図5(e)の状態に置いて、薄型テレビ46の画面の法線方向に平行で薄型テレビ46からハンド6の方向を向く定ベクトル)とすれば、同様の効果を発揮することができる。
なお、本発明を第1〜第3実施形態及び変形例に基づいて説明してきたが、本発明は、前記の第1〜第3実施形態及び変形例に限定されないのはもちろんである。以下のような場合も本発明に含まれる。
前記各制御装置の一部又は全部は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムである。前記RAM又はハードディスクユニットには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、各部は、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
例えば、ハードディスク又は半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。なお、前記実施形態又は変形例における制御装置を構成する要素の一部又は全部を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、関節を有するロボットの制御プログラムであって、
コンピュータを、
上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報を取得する位置情報取得手段としての機能と、
物体を把持していない状態の上記ロボットのダイナミクスパラメータと上記ロボットが上記物体を把持している状態の上記物体も含めたダイナミクスパラメータとを有する複数のダイナミクスパラメータの間で、運動方程式の重力項成分と慣性力項成分とを分離してそれぞれ切り換えるダイナミクスパラメータ切換手段としての機能と、
上記ダイナミクスパラメータ切換手段が上記ダイナミクスパラメータを切り換えた後の運動方程式と上記位置情報取得手段で取得した上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報とに基づき、上記ロボットの関節トルクの目標値を目標関節トルクとして出力する目標トルク計算手段としての機能と、
上記目標トルク計算手段からの出力に基づき上記ロボットの動作を制御する機能とを実現させるためのロボットの制御プログラムである。
また、このプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体(例えば、CD−ROMなどの光ディスク、磁気ディスク、又は、半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
また、上記様々な実施形態又は変形例のうちの任意の実施形態又は変形例を適宜組み合わせることにより、それぞれの有する効果を奏するようにすることができる。
前記各制御装置の一部又は全部は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムである。前記RAM又はハードディスクユニットには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、各部は、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
例えば、ハードディスク又は半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。なお、前記実施形態又は変形例における制御装置を構成する要素の一部又は全部を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、関節を有するロボットの制御プログラムであって、
コンピュータを、
上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報を取得する位置情報取得手段としての機能と、
物体を把持していない状態の上記ロボットのダイナミクスパラメータと上記ロボットが上記物体を把持している状態の上記物体も含めたダイナミクスパラメータとを有する複数のダイナミクスパラメータの間で、運動方程式の重力項成分と慣性力項成分とを分離してそれぞれ切り換えるダイナミクスパラメータ切換手段としての機能と、
上記ダイナミクスパラメータ切換手段が上記ダイナミクスパラメータを切り換えた後の運動方程式と上記位置情報取得手段で取得した上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報とに基づき、上記ロボットの関節トルクの目標値を目標関節トルクとして出力する目標トルク計算手段としての機能と、
上記目標トルク計算手段からの出力に基づき上記ロボットの動作を制御する機能とを実現させるためのロボットの制御プログラムである。
また、このプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体(例えば、CD−ROMなどの光ディスク、磁気ディスク、又は、半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
また、上記様々な実施形態又は変形例のうちの任意の実施形態又は変形例を適宜組み合わせることにより、それぞれの有する効果を奏するようにすることができる。
本発明のロボット、ロボットの制御装置、制御方法、及び制御プログラムは、ダイナミクスパラメータの切換により発生してしまう動きの垂直方向及び水平方向という方向性をコントロール可能になり、物体の搬送を行う動作を制御する、ロボット、ロボット制御装置、制御方法、及び制御プログラムとして有用である。
本発明は、添付図面を参照しながら実施形態に関連して充分に記載されているが、この技術の熟練した人々にとっては種々の変形又は修正は明白である。そのような変形又は修正は、添付した請求の範囲による本発明の範囲から外れない限りにおいて、その中に含まれると理解されるべきである。
本発明は、添付図面を参照しながら実施形態に関連して充分に記載されているが、この技術の熟練した人々にとっては種々の変形又は修正は明白である。そのような変形又は修正は、添付した請求の範囲による本発明の範囲から外れない限りにおいて、その中に含まれると理解されるべきである。
Claims (12)
- 関節を有するロボットであって、
上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報を取得する位置情報取得部と、
物体を把持していない状態の上記ロボットのダイナミクスパラメータと上記ロボットが上記物体を把持している状態の上記物体も含めたダイナミクスパラメータとを有する複数のダイナミクスパラメータの間で、運動方程式の重力項成分と慣性力項成分とを分離してそれぞれ切り換えるダイナミクスパラメータ切換部と、
上記ダイナミクスパラメータ切換部が上記ダイナミクスパラメータを切り換えた後の運動方程式と上記位置情報取得部で取得した上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報とに基づき、上記ロボットの関節トルクの目標値を目標関節トルクとして出力する目標トルク計算部とを備えて、
上記目標トルク計算部からの出力に基づき上記ロボットの動作を制御するロボット。 - 上記ダイナミクスパラメータ切換部は、上記物体を把持及び把持開放を含む作業の切り替え信号に基づき、上記ロボットの手先による物体把持時に上記ロボットの上記手先が移動困難に拘束された拘束状態とそれ以外の非拘束状態との間で切り換わるタイミングに応じて、上記複数のダイナミクスパラメータを、上記ロボットと上記ロボットが把持している物体との運動方程式の上記重力項成分と上記慣性力項成分とを分離してそれぞれ切り換える請求項1に記載のロボット。
- 上記ダイナミクスパラメータ切換部は、上記位置情報取得部で取得した上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報に基づき、上記ロボットの上記手先が上記非拘束状態になったときに上記慣性力項成分のダイナミクスパラメータのみを切換える請求項2に記載のロボット。
- 上記ダイナミクスパラメータ切換部は、上記ロボットが上記手先で上記物体を把持し、把持している物体を設置後、把持を開放し、上記ロボットの上記手先が上記非拘束状態になったときに上記慣性力項成分のダイナミクスパラメータのみを切換える請求項3に記載のロボット。
- 上記ダイナミクスパラメータ切換部は、上記ロボットが上記物体を把持し、搬送し、上記把持している物体を設置するときに上記把持又は設置のために位置決めをするため搬送時よりも低速の動作になったときに上記慣性力項成分のダイナミクスパラメータのみを切換える請求項1に記載のロボット。
- 上記ダイナミクスパラメータ切換部は、複数段に分離して重力項成分のダイナミクスパラメータを切換える請求項1〜5のいずれか1つに記載のロボット。
- 上記ダイナミクスパラメータ切換部は、上記慣性力項成分のダイナミクスパラメータを切換えるとき、上記慣性力項成分と共に、上記運動方程式の遠心力及びコリオリ力項成分のダイナミクスパラメータをも切換える請求項1〜5のいずれか1つに記載のロボット。
- 上記ロボットは、弾性体アクチュエータで駆動されるロボットアームを備え、
さらに上記ロボットの上記弾性体アクチュエータにより発生する上記ロボットアームの手先の弾性力を制御する弾性力制御部を備え、
上記弾性力制御部は、上記ダイナミクスパラメータ切換部によるダイナミクスパラメータ切換時に発生する上記ロボットアームの上記手先の動きによる影響を抑制する方向に弾性力をかける請求項1に記載のロボット。 - 上記ロボットは弾性体アクチュエータで駆動されるロボットアームを備え、
さらに上記ロボットの上記弾性体アクチュエータにより発生する上記ロボットアームの手先の弾性力を制御する弾性力制御部を備え、
上記弾性力制御部は、上記手先で把持している物体を設置した後、慣性力項成分のダイナミクスパラメータを切換えるより前に、上記手先の拘束が解除される方向に弾性力をかけるよう制御する請求項8に記載のロボット。 - 関節を有するロボットの制御装置であって、
上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報を取得する位置情報取得部と、
物体を把持していない状態の上記ロボットのダイナミクスパラメータと上記ロボットが上記物体を把持している状態の上記物体も含めたダイナミクスパラメータとを有する複数のダイナミクスパラメータの間で、運動方程式の重力項成分と慣性力項成分とを分離してそれぞれ切り換えるダイナミクスパラメータ切換部と、
上記ダイナミクスパラメータ切換部が上記ダイナミクスパラメータを切り換えた後の運動方程式と上記位置情報取得部で取得した上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報とに基づき、上記ロボットの関節トルクの目標値を目標関節トルクとして出力する目標トルク計算部とを備えて、
上記目標トルク計算部からの出力に基づき上記ロボットの動作を制御するロボットの制御装置。 - 関節を有するロボットの制御方法であって、
上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報を位置情報取得部で取得し、
物体を把持していない状態の上記ロボットのダイナミクスパラメータと上記ロボットが上記物体を把持している状態の上記物体も含めたダイナミクスパラメータとを有する複数のダイナミクスパラメータの間で、運動方程式の重力項成分と慣性力項成分とを分離してそれぞれダイナミクスパラメータ切換部で切り換え、
上記ダイナミクスパラメータ切換部が上記ダイナミクスパラメータを切り換えた後の運動方程式と上記位置情報取得部で取得した上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報とに基づき、上記ロボットの関節トルクの目標値を目標関節トルクとして目標トルク計算部で出力して、
上記目標トルク計算部からの出力に基づき上記ロボットの動作を制御するロボットの制御方法。 - 関節を有するロボットの制御プログラムであって、
コンピュータを、
上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報を取得する位置情報取得部としての機能と、
物体を把持していない状態の上記ロボットのダイナミクスパラメータと上記ロボットが上記物体を把持している状態の上記物体も含めたダイナミクスパラメータとを有する複数のダイナミクスパラメータの間で、運動方程式の重力項成分と慣性力項成分とを分離してそれぞれ切り換えるダイナミクスパラメータ切換部としての機能と、
上記ダイナミクスパラメータ切換部が上記ダイナミクスパラメータを切り換えた後の運動方程式と上記位置情報取得部で取得した上記ロボットの位置の時系列の情報又は速度の情報又は加速度の情報とに基づき、上記ロボットの関節トルクの目標値を目標関節トルクとして出力する目標トルク計算部としての機能と、
上記目標トルク計算部からの出力に基づき上記ロボットの動作を制御する機能とを実現させるためのロボットの制御プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013534518A JP5399593B2 (ja) | 2011-11-10 | 2012-11-08 | ロボット、ロボットの制御装置、制御方法、及び制御プログラム |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011246217 | 2011-11-10 | ||
JP2011246217 | 2011-11-10 | ||
PCT/JP2012/007183 WO2013069291A1 (ja) | 2011-11-10 | 2012-11-08 | ロボット、ロボットの制御装置、制御方法、及び制御プログラム |
JP2013534518A JP5399593B2 (ja) | 2011-11-10 | 2012-11-08 | ロボット、ロボットの制御装置、制御方法、及び制御プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP5399593B2 true JP5399593B2 (ja) | 2014-01-29 |
JPWO2013069291A1 JPWO2013069291A1 (ja) | 2015-04-02 |
Family
ID=48289508
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013534518A Active JP5399593B2 (ja) | 2011-11-10 | 2012-11-08 | ロボット、ロボットの制御装置、制御方法、及び制御プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US9346163B2 (ja) |
JP (1) | JP5399593B2 (ja) |
WO (1) | WO2013069291A1 (ja) |
Families Citing this family (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9566710B2 (en) | 2011-06-02 | 2017-02-14 | Brain Corporation | Apparatus and methods for operating robotic devices using selective state space training |
JP5930753B2 (ja) * | 2012-02-13 | 2016-06-08 | キヤノン株式会社 | ロボット装置の制御方法及びロボット装置 |
JP5930754B2 (ja) * | 2012-02-13 | 2016-06-08 | キヤノン株式会社 | ロボット装置の制御方法及びロボット装置 |
US9764468B2 (en) | 2013-03-15 | 2017-09-19 | Brain Corporation | Adaptive predictor apparatus and methods |
US9242372B2 (en) | 2013-05-31 | 2016-01-26 | Brain Corporation | Adaptive robotic interface apparatus and methods |
US9314924B1 (en) | 2013-06-14 | 2016-04-19 | Brain Corporation | Predictive robotic controller apparatus and methods |
US9384443B2 (en) | 2013-06-14 | 2016-07-05 | Brain Corporation | Robotic training apparatus and methods |
US9792546B2 (en) | 2013-06-14 | 2017-10-17 | Brain Corporation | Hierarchical robotic controller apparatus and methods |
US9579789B2 (en) | 2013-09-27 | 2017-02-28 | Brain Corporation | Apparatus and methods for training of robotic control arbitration |
US9463571B2 (en) | 2013-11-01 | 2016-10-11 | Brian Corporation | Apparatus and methods for online training of robots |
US9597797B2 (en) | 2013-11-01 | 2017-03-21 | Brain Corporation | Apparatus and methods for haptic training of robots |
US9358685B2 (en) * | 2014-02-03 | 2016-06-07 | Brain Corporation | Apparatus and methods for control of robot actions based on corrective user inputs |
JP5893666B2 (ja) * | 2014-04-14 | 2016-03-23 | ファナック株式会社 | 力に応じて動かすロボットのロボット制御装置およびロボットシステム |
US9630318B2 (en) | 2014-10-02 | 2017-04-25 | Brain Corporation | Feature detection apparatus and methods for training of robotic navigation |
US9717387B1 (en) | 2015-02-26 | 2017-08-01 | Brain Corporation | Apparatus and methods for programming and training of robotic household appliances |
CN104793497A (zh) * | 2015-04-20 | 2015-07-22 | 天津理工大学 | 基于多体系统离散时间传递矩阵法的机器人动力学建模方法 |
US10272573B2 (en) * | 2015-12-18 | 2019-04-30 | Ge Global Sourcing Llc | Control system and method for applying force to grasp a brake lever |
JP6166305B2 (ja) * | 2015-05-08 | 2017-07-19 | ファナック株式会社 | 負荷パラメータ設定装置および負荷パラメータ設定方法 |
US10471594B2 (en) * | 2015-12-01 | 2019-11-12 | Kindred Systems Inc. | Systems, devices, and methods for the distribution and collection of multimodal data associated with robots |
DE102017000063B4 (de) * | 2016-01-14 | 2019-10-31 | Fanuc Corporation | Robotereinrichtung mit Lernfunktion |
US10241514B2 (en) | 2016-05-11 | 2019-03-26 | Brain Corporation | Systems and methods for initializing a robot to autonomously travel a trained route |
US9987752B2 (en) | 2016-06-10 | 2018-06-05 | Brain Corporation | Systems and methods for automatic detection of spills |
US10282849B2 (en) | 2016-06-17 | 2019-05-07 | Brain Corporation | Systems and methods for predictive/reconstructive visual object tracker |
US10016896B2 (en) | 2016-06-30 | 2018-07-10 | Brain Corporation | Systems and methods for robotic behavior around moving bodies |
CN106272428B (zh) * | 2016-09-13 | 2018-10-09 | 江苏大学 | 一种苹果采摘机器人末端执行器抓取力主动柔顺控制方法 |
US10274325B2 (en) | 2016-11-01 | 2019-04-30 | Brain Corporation | Systems and methods for robotic mapping |
US10001780B2 (en) | 2016-11-02 | 2018-06-19 | Brain Corporation | Systems and methods for dynamic route planning in autonomous navigation |
US10723018B2 (en) | 2016-11-28 | 2020-07-28 | Brain Corporation | Systems and methods for remote operating and/or monitoring of a robot |
US10377040B2 (en) | 2017-02-02 | 2019-08-13 | Brain Corporation | Systems and methods for assisting a robotic apparatus |
US10852730B2 (en) | 2017-02-08 | 2020-12-01 | Brain Corporation | Systems and methods for robotic mobile platforms |
US10293485B2 (en) | 2017-03-30 | 2019-05-21 | Brain Corporation | Systems and methods for robotic path planning |
US10455222B2 (en) * | 2017-03-30 | 2019-10-22 | Intel Corporation | Technologies for autonomous three-dimensional modeling |
JP6844434B2 (ja) * | 2017-06-15 | 2021-03-17 | 株式会社デンソーウェーブ | ロボットの負荷重心位置推定装置及びロボットの負荷重心位置推定方法 |
US10981272B1 (en) | 2017-12-18 | 2021-04-20 | X Development Llc | Robot grasp learning |
CN108873925B (zh) * | 2018-08-02 | 2021-08-24 | 深圳市吉影科技有限公司 | 一种水下无人机的定俯仰角运动控制方法及其装置 |
CN109262608A (zh) * | 2018-08-22 | 2019-01-25 | 南京阿凡达机器人科技有限公司 | 一种遥控机器人进行格斗的方法及系统 |
CN109366488B (zh) * | 2018-12-07 | 2021-07-16 | 哈尔滨工业大学 | 一种面向机器人装配的叠加振荡力笛卡尔阻抗控制方法 |
US20220009086A1 (en) * | 2018-12-09 | 2022-01-13 | Pramod Kumar Verma | Stick device and user interface |
CN112571412B (zh) * | 2019-09-30 | 2024-03-26 | 中电九天智能科技有限公司 | 一种智能制造设备的控制系统 |
JP7451940B2 (ja) * | 2019-10-31 | 2024-03-19 | セイコーエプソン株式会社 | 制御方法および算出装置 |
WO2021090693A1 (ja) * | 2019-11-05 | 2021-05-14 | パナソニックIpマネジメント株式会社 | ロボットの制御方法 |
TW202224872A (zh) | 2020-12-28 | 2022-07-01 | 財團法人工業技術研究院 | 機械手臂校正系統及機械手臂校正系統方法 |
CN113459097B (zh) * | 2021-06-28 | 2022-11-18 | 北京机械设备研究所 | 无传感器柔性拉线阻抗控制方法、装置、介质及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS638912A (ja) * | 1986-06-30 | 1988-01-14 | Fanuc Ltd | ロボツトの制御方式 |
JPH03117580A (ja) * | 1989-09-29 | 1991-05-20 | Toshiba Corp | ロボットモデル同定装置 |
JPH04195503A (ja) * | 1990-11-28 | 1992-07-15 | Toshiba Corp | ロボットコントローラ |
JP2006119958A (ja) * | 2004-10-22 | 2006-05-11 | Matsushita Electric Ind Co Ltd | ロボット制御装置およびその制御方法 |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4826392A (en) * | 1986-03-31 | 1989-05-02 | California Institute Of Technology | Method and apparatus for hybrid position/force control of multi-arm cooperating robots |
US5101472A (en) * | 1990-10-04 | 1992-03-31 | Repperger Daniel W | Military robotic controller with majorizing function and nonlinear torque capability |
KR100439466B1 (ko) * | 1995-09-11 | 2004-09-18 | 가부시키가이샤 야스가와덴끼 | 로봇제어장치 |
JP4188607B2 (ja) * | 2001-06-27 | 2008-11-26 | 本田技研工業株式会社 | 二足歩行移動体の床反力推定方法及び二足歩行移動体の関節モーメント推定方法 |
WO2003007129A2 (en) * | 2001-07-13 | 2003-01-23 | Broks Automation, Inc. | Trajectory planning and motion control strategies for a planar three-degree-of-freedom robotic arm |
JP3790816B2 (ja) * | 2002-02-12 | 2006-06-28 | 国立大学法人 東京大学 | 人型リンク系の運動生成方法 |
WO2004028753A2 (en) * | 2002-09-26 | 2004-04-08 | Barrett Technology, Inc. | Intelligent, self-contained robotic hand |
EP1633534B1 (en) * | 2003-04-28 | 2018-09-12 | Nikon Metrology NV | Cmm arm with exoskeleton |
WO2005028166A1 (ja) * | 2003-09-22 | 2005-03-31 | Matsushita Electric Industrial Co., Ltd. | 弾性体アクチュエータの制御装置及び制御方法 |
JP4742329B2 (ja) * | 2004-02-25 | 2011-08-10 | 学校法人立命館 | 浮遊移動体の制御システム |
US7211979B2 (en) * | 2005-04-13 | 2007-05-01 | The Broad Of Trustees Of The Leland Stanford Junior University | Torque-position transformer for task control of position controlled robots |
JP4595727B2 (ja) * | 2005-07-22 | 2010-12-08 | ソニー株式会社 | 外力推定システム及び外力推定方法、並びにコンピュータ・プログラム |
US7741802B2 (en) * | 2005-12-20 | 2010-06-22 | Intuitive Surgical Operations, Inc. | Medical robotic system with programmably controlled constraints on error dynamics |
US8924021B2 (en) * | 2006-04-27 | 2014-12-30 | Honda Motor Co., Ltd. | Control of robots from human motion descriptors |
JP4267027B2 (ja) * | 2006-12-07 | 2009-05-27 | ファナック株式会社 | ロボット制御装置 |
CN101952087B (zh) * | 2008-02-06 | 2013-01-16 | 松下电器产业株式会社 | 机器人、机器人的控制装置及控制方法 |
JP4715863B2 (ja) * | 2008-05-01 | 2011-07-06 | ソニー株式会社 | アクチュエータ制御装置及びアクチュエータ制御方法、アクチュエータ、ロボット装置、並びにコンピュータ・プログラム |
JP5242342B2 (ja) * | 2008-10-31 | 2013-07-24 | 株式会社東芝 | ロボット制御装置 |
US8428781B2 (en) * | 2008-11-17 | 2013-04-23 | Energid Technologies, Inc. | Systems and methods of coordination control for robot manipulation |
JP4998506B2 (ja) * | 2009-04-22 | 2012-08-15 | トヨタ自動車株式会社 | ロボット制御装置、ロボット制御方法、及び脚式ロボット |
CN102448683B (zh) * | 2009-07-02 | 2014-08-27 | 松下电器产业株式会社 | 机器人、机器人手臂的控制装置及机器人手臂的控制程序 |
US8250901B2 (en) * | 2009-09-22 | 2012-08-28 | GM Global Technology Operations LLC | System and method for calibrating a rotary absolute position sensor |
JP5506617B2 (ja) * | 2009-12-28 | 2014-05-28 | 本田技研工業株式会社 | ロボットの制御装置 |
JP5506618B2 (ja) * | 2009-12-28 | 2014-05-28 | 本田技研工業株式会社 | ロボットの制御装置 |
KR101687629B1 (ko) * | 2010-01-18 | 2016-12-20 | 삼성전자주식회사 | 인간형 로봇 및 그 보행 제어방법 |
CN103038030B (zh) * | 2010-12-17 | 2015-06-03 | 松下电器产业株式会社 | 弹性体致动器驱动机构的控制装置及控制方法 |
-
2012
- 2012-11-08 JP JP2013534518A patent/JP5399593B2/ja active Active
- 2012-11-08 WO PCT/JP2012/007183 patent/WO2013069291A1/ja active Application Filing
-
2014
- 2014-01-02 US US14/146,215 patent/US9346163B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS638912A (ja) * | 1986-06-30 | 1988-01-14 | Fanuc Ltd | ロボツトの制御方式 |
JPH03117580A (ja) * | 1989-09-29 | 1991-05-20 | Toshiba Corp | ロボットモデル同定装置 |
JPH04195503A (ja) * | 1990-11-28 | 1992-07-15 | Toshiba Corp | ロボットコントローラ |
JP2006119958A (ja) * | 2004-10-22 | 2006-05-11 | Matsushita Electric Ind Co Ltd | ロボット制御装置およびその制御方法 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2013069291A1 (ja) | 2015-04-02 |
WO2013069291A1 (ja) | 2013-05-16 |
US20140114479A1 (en) | 2014-04-24 |
US9346163B2 (en) | 2016-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5399593B2 (ja) | ロボット、ロボットの制御装置、制御方法、及び制御プログラム | |
JP5695223B2 (ja) | ロボット、ロボットの制御装置、制御方法、及び制御プログラム | |
JP5129415B2 (ja) | ロボット、ロボットの制御装置、制御方法、及び制御プログラム | |
JP4896276B2 (ja) | ロボット、ロボットの制御装置、制御方法、及び制御プログラム | |
CN104589304B (zh) | 机器人控制装置以及机器人 | |
US8423188B2 (en) | Control apparatus and control method for robot arm, robot, control program for robot arm, and integrated electronic circuit | |
JP4759660B2 (ja) | ロボットアーム制御用の装置、方法、プログラム及び集積電子回路、並びに、組立ロボット | |
JP6924145B2 (ja) | ロボット教示方法及びロボットアーム制御装置 | |
KR101687628B1 (ko) | 로봇의 보행 제어 장치 및 그 제어 방법 | |
KR101537039B1 (ko) | 로봇 및 그 제어방법 | |
JP6706489B2 (ja) | ロボットのダイレクト教示方法 | |
US8509950B2 (en) | Control apparatus and control method for robot, robot, and control program therefor | |
JP5946859B2 (ja) | 力に応じて動かすロボットのロボット制御装置およびロボットシステム | |
WO2008001713A1 (fr) | Robot articulé et son programme de commande | |
JP4737209B2 (ja) | パワーアシスト装置およびその制御方法 | |
JP5916583B2 (ja) | 多関節ロボットのウィービング制御装置 | |
US11478919B2 (en) | Robot system and method of controlling the robot system | |
US8380352B2 (en) | Robot system | |
JP2014155985A (ja) | ロボット、ロボットの制御装置、制御方法、及び制御プログラム | |
JPH07256580A (ja) | 複腕協調制御装置 | |
JP2022181337A (ja) | ロボットの制御方法及び制御装置 | |
JP2019141976A (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: 20131001 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131023 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5399593 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |