説明

ロボット装置、ロボット装置の制御方法およびプログラム

【課題】従来のロボット装置の制御方法にあっては、制御装置における演算量が多くなり処理に時間が掛かったり、処理速度を上げるために制御装置のコストが増加したりする問題があった。
【解決手段】アクチュエーターの角度センサーの回転角度検出データより、前記角度センサーを備える前記アクチュエーターによって動作する前記アームの角速度を演算する第1演算部と、前記第1演算部の演算対象の前記アクチュエーターを含む連結装置を介して連結される前記アームに備える慣性センサーの角速度検出データより、前記連結装置を軸とする前記アームの角速度を演算する第2演算部と、低周波成分を除去した、前記アクチュエーターと前記アームとの間のねじれ角速度を演算する第3演算部とを備えるロボット装置。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボット装置、ロボット装置の制御方法およびプログラムに関する。
【背景技術】
【0002】
ICハンドラーや組立装置の一部として多く使われている多関節構造を有するロボット装置は、様々な産業現場の中で多用されてきている。故に、ロボット装置には今まで以上に、求められる位置にいかに早く且つ正確にアームを移動させることができるかが重要な性能仕様、品質になってきている。
【0003】
一般的にアームを高速に且つ正確に移動させるには、アームに掛かる慣性力を小さくし、駆動用のアクチュエーターの負荷を大きくさせないことにある。アームに掛かる慣性力を小さくするには、アームの軽量化が最も効果的な手法として用いられている。しかし、アームを軽量化することによりアーム剛性の低下を招き、アーム停止時に生じるアームの振動を抑制することが困難になり、アーム先端部を目的の位置で停止させても、アーム自体の振動の振幅分の位置ズレが生じてしまい、振動が減衰する時間まで次の動作を開始することができないという問題があった。
【0004】
この問題に対して、アーム先端に加速度センサーを設置し加速度信号を基にアームを作動させ振動を抑制する方法(例えば、特許文献1)、アーム先端およびアームに角速度センサーを設置し、角速度信号を基にアーム動作を制御する方法(例えば、特許文献2)、などが提示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平1−173116号公報
【特許文献2】特開2005−242794号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、従来のロボット装置の制御方法においては、角速度センサーもしくは加速度センサーのどちらかを用いて、振動を抑制する制御信号を生成しているため、センサー信号にバイアスドリフト等の誤差が含まれる場合に制御信号に誤差が生じ、正確な制御が行なえない場合があった。
【0007】
例えば、特許文献2においては、センサーの誤差の影響を低減するために角度センサーの高周波成分を除去するローパスフィルターと、角速度センサーの低周波成分を除去するハイパスフィルターと、の2種類のフィルターを用いるために、制御装置における演算量が多くなり、処理に時間が掛かったり、処理速度を上げるために演算機のコストが増加したりする問題があった。
【課題を解決するための手段】
【0008】
本発明は、少なくとも上述の課題の一つを解決するように、下記の形態または適用例として実現され得る。
【0009】
〔適用例1〕本適用例によるロボット装置は、アクチュエーター、前記アクチュエーターのトルクが所定の減速比で伝達されるトルク伝達機構及び前記アクチュエーターの回転角度を検出する角度センサー、を含むアーム連結装置と、複数のアームが、前記アーム連結装置により直列且つ回転可能に連結されたアーム体と、前記アーム体の一方の端部に設けられた前記アクチュエーター、前記アクチュエーターのトルクが所定の減速比で伝達されるトルク伝達機構及び前記アクチュエーターの回転角度を検出する角度センサーを含む基体連結装置により前記アーム体が回転可能に連結された基体と、前記アームに取り付けられた、少なくとも角速度センサーを含む、慣性センサーと、前記角度センサーの回転角度検出データより、前記角度センサーを備える前記アクチュエーターによって動作する前記アームの角速度を演算する第1演算部と、前記第1演算部の演算対象の前記アクチュエーターを含む前記連結装置を介して連結される前記アームに備える前記慣性センサーの角速度検出データより、前記連結装置を軸とする前記アクチュエーターにより作動する前記アームの角速度を演算する第2演算部と、前記アクチュエーターによって動作する前記アームの前記角速度及び前記慣性センサーの前記角速度検出データによって演算された前記アームの前記角速度の差に含まれる低周波成分を除去した、前記アクチュエーター及び前記アームの間のねじれ角速度を演算する第3演算部と、を備えることを特徴とする。
【0010】
上述の適用例によれば、ねじれ角速度をロボット装置の振動抑制制御の基となるデータとして用いることで、正確な制御を可能とする。
【0011】
〔適用例2〕上述の適用例において、前記低周波成分は、前記ロボット装置の機械系固有振動数のうち、反共振周波数および共振周波数における最も低い周波数に対して、より低い周波数であることを特徴とする。
【0012】
上述の適用例によれば、反共振周波数および共振周波数をカットすることなく低周波成分をカットすることで、誤差を含む慣性センサーを用いた場合であっても、振幅の大きい領域において誤差を含まない慣性センサーにより得られる真の値に近いねじれ角速度を得ることができ、ねじれ角速度によって振動を正確に制御するロボット装置を得ることができる。
【0013】
〔適用例3〕上述の適用例において、前記第1演算部により演算された前記アームの前記角速度と、前記第3演算部により演算された前記ねじれ角速度と、を加算する第4演算部を更に備えることを特徴とする。
【0014】
上述の適用例によれば、ねじれ角速度の低周波成分には実動作が含まれない。従って、ねじれ角速度の低周波成分の除去は、すなわち慣性センサーの誤差(ノイズ)の除去であり、低周波成分の除去されたねじれ角速度、もしくは、低周波成分の除去されたねじれ角速度にアクチュエーターの角速度を加えて得られるアーム角速度、を制御データとして用いることで、正確なロボット装置の振動抑制制御を可能とする。
【0015】
〔適用例4〕本適用例のロボット装置の制御方法は、アクチュエーター、前記アクチュエーターのトルクが所定の減速比で伝達されるトルク伝達機構及び前記アクチュエーターの回転角度を検出する角度センサー、を含むアーム連結装置と、複数のアームが、前記アーム連結装置により直列且つ回転可能に連結されたアーム体と、前記アーム体の一方の端部に設けられた前記アクチュエーターと前記アクチュエーターのトルクが所定の減速比で伝達されるトルク伝達機構及び前記アクチュエーターの回転角度を検出する角度センサーを含む基体連結装置により前記アーム体が回転可能に連結された基体と、前記アームに取り付けられた、少なくとも角速度センサーを含む、慣性センサーと、前記角度センサーの回転角度検出データより、前記角度センサーを備える前記アクチュエーターによって動作する前記アームの角速度を演算する第1演算工程と、前記第1演算工程の演算対象の前記アクチュエーターを含む前記連結装置を介して連結される前記アームに備える前記慣性センサーの角速度検出データより、前記連結装置を軸とする前記アクチュエーターにより作動する前記アームの角速度を演算する第2演算工程と、前記アクチュエーターによって動作する前記アームの前記角速度及び前記慣性センサーの前記角速度検出データによって演算された前記アームの前記角速度の差に含まれる低周波成分を除去した、前記アクチュエーター及び前記アームの間のねじれ角速度を演算する第3演算工程と、を含むことを特徴とする。
【0016】
上述の適用例によれば、ねじれ角速度をロボット装置の振動抑制制御の基となるデータとして用いることで、正確に制御することを可能とする。
【0017】
〔適用例5〕上述の適用例において、前記低周波成分は、前記ロボット装置の機械系固有振動数のうち、反共振周波数および共振周波数における最も低い周波数に対して、より低い周波数であることを特徴とする。
【0018】
上述の適用例によれば、反共振周波数および共振周波数をカットすることなく低周波成分をカットすることで、誤差を含む慣性センサーを用いた場合であっても、振幅の大きい領域において誤差を含まない慣性センサーにより得られる真の値に近いねじれ角速度を得ることができ、ねじれ角速度によるロボット装置の振動を正確に制御することができる。
【0019】
〔適用例6〕上述の適用例において、前記第1演算工程により演算された前記アームの前記角速度と、前記第3演算工程により演算された前記ねじれ角速度と、を加算し前記アームの角速度を演算する第4演算工程を更に備えることを特徴とする。
【0020】
上述の適用例によれば、ねじれ角速度の低周波成分には実動作が含まれない。従って、ねじれ角速度の低周波成分の除去は、すなわち慣性センサーの誤差(ノイズ)の除去であり、低周波成分の除去されたねじれ角速度、もしくは、低周波成分の除去されたねじれ角速度にアクチュエーターの角速度を加えて得られるアーム角速度、を制御データとして用いることで、正確にロボット装置の振動を制御し、抑制することを可能とする。
【0021】
〔適用例7〕本適用例のプログラムは、アクチュエーター、前記アクチュエーターのトルクが所定の減速比で伝達されるトルク伝達機構及び前記アクチュエーターの回転角度を検出する角度センサー、を含むアーム連結装置と、複数のアームが、前記アーム連結装置により直列且つ回転可能に連結されたアーム体と、前記アーム体の一方の端部に設けられた前記アクチュエーターと前記アクチュエーターのトルクが所定の減速比で伝達されるトルク伝達機構及び前記アクチュエーターの回転角度を検出する角度センサーを含む基体連結装置により前記アーム体が回転可能に連結された基体と、前記アームに取り付けられた、少なくとも角速度センサーを含む、慣性センサーと、を備えるロボット装置に制御を行わせるプログラムであって、コンピューターに、前記角度センサーの回転角度検出データより、前記角度センサーを備える前記アクチュエーターによって動作する前記アームの角速度を演算する第1演算手順と、前記第1演算手順の演算対象の前記アクチュエーターを含む前記連結装置を介して連結される前記アームに備える前記慣性センサーの角速度検出データより、前記連結装置を軸とする前記アクチュエーターにより作動する前記アームの角速度を演算する第2演算手順と、前記アクチュエーターによって動作する前記アームの前記角速度及び前記慣性センサーの前記角速度検出データによって演算された前記アームの前記角速度の差に含まれる低周波成分を除去した、前記アクチュエーター及び前記アームの間のねじれ角速度を演算する第3演算手順と、を実行させる。
【0022】
ロボット装置に備えるコンピューターに本適用例のプログラムを搭載するだけで、容易に上述のロボット装置の振動抑制制御を行うことができる。
【図面の簡単な説明】
【0023】
【図1】実施形態に係るロボット装置の概要を示す、(a)は模式的な平面図、(b)は模式的な断面図。
【図2】実施形態に係るロボット装置の制御ブロック図。
【図3】実施形態に係るロボット装置のアクチュエーターのトルクに対する、アクチュエーター、アーム、ねじれの角速度応答のボード線図。
【図4】実施形態に係る動作時のねじれ角速度周波数成分の低周波成分の除去前後を示す、(a)は誤差を持たない慣性センサー、(b)は低周波誤差を持つ慣性センサーの場合のグラフ。
【図5】実施形態に係る制御方法のフローチャート。
【図6】実施例2を示すブロック図。
【発明を実施するための形態】
【0024】
以下、図面を参照して、本発明に係る実施形態を説明する。
【0025】
(実施形態)
本発明に係る実施形態について説明する。図1は実施形態に係るロボット装置を示し、(a)は概略平面図、(b)は概略断面図である。本実施形態のロボット装置は、水平方向に回転可能に3本のアームが連結された、いわゆる3軸水平多関節ロボット100(以下、ロボット装置100という)である。
【0026】
ロボット装置100は、第1アーム11と第2アーム12とが第1アーム連結装置21、第2アーム12と第3アーム13とが第2アーム連結装置22によって回転可能に直列的に連結されて構成されるアーム体10を備えている。アーム体10は、更に基体連結装置30により、基盤に固定された基体40と回転可能に連結され、ロボット装置100を構成している。
【0027】
第1アーム連結装置21は、アクチュエーター51と、アクチュエーター51のトルクを所定の減速比で伝達するトルク伝達装置61と、を含み、第2アーム連結装置22も同様にアクチュエーター52とトルク伝達装置62と、を含む。また、基体連結装置30は、アクチュエーター53と、アクチュエーター53のトルクを所定の減速比で伝達するトルク伝達装置63と、を含む。アーム体10の基体40とは反対の端部となる第3アーム13の端部には加工用ツールもしくは被加工物を保持するワーク保持装置70が備えられている。
【0028】
第1アーム連結装置21に含まれるアクチュエーター51には回転角度を検出する角度センサー81が備えられ、同様に第2アーム連結装置にはアクチュエーター52に角度センサー82が備えられている。また、基体連結装置30にも、アクチュエーター53に角度センサー83が備えられている。更に、第1アーム11には慣性センサー91、第2アーム12には慣性センサー92、第3アーム13には慣性センサー93が備えられている。慣性センサー91、92、93は、少なくとも角速度センサーを含み、慣性センサー91は第1アーム11の、慣性センサー92は第2アーム12の、慣性センサー93は第3アーム13の各慣性センサー取り付け位置での角速度を検出可能としている。
【0029】
図2は、本実施形態に係るロボット装置100の構成を示すブロック図である。CPU200は、後述する第1演算部510、第2演算部520、第3演算部530、第4演算部540および制御部600を含み、ROM300に記憶されたプログラムを読み出して実行する。また、RAM400はCPU200におけるプログラム実行によって得られるデータを保存し、CPU200へ保存されたデータから必要なデータを送出する。
【0030】
ロボット装置100に備える角度センサー81、82、83によって検出されたアクチュエーター51、52、53の回転角度データは、第1演算部510においてアクチュエーター51の回転角度θ1、アクチュエーター52の回転角度θ2、アクチュエーター53の回転角度θ3、に換算され、換算されたそれぞれの回転角度θ1、θ2、θ3を時間で1回微分し、アクチュエーターの回転角速度を演算する。
【0031】
得られたアクチュエーターの回転角速度から、アクチュエーターが駆動するアームの回転角速度を求める。第1アーム11の場合は、アクチュエーター53から減速比1/N3を持つトルク伝達装置63によって駆動されるため、基体連結装置30の出力部の回転角速度ω3は、
ω3=(dθ3/dt)×(1/N3)
となる。
【0032】
同様に、第2アーム12を駆動するアクチュエーター51を含む第1アーム連結装置21の出力部の回転角速度ω1は、
ω1=(dθ1/dt)×(1/N1)
N1:トルク伝達装置61の減速比
となり、第3アーム13を駆動するアクチュエーター52を含む第2アーム連結装置22の出力部の回転角速度ω2は、
ω2=(dθ2/dt)×(1/N2)
N2:トルク伝達装置62の減速比
となる。
【0033】
第2演算部520では、第1アーム11、第2アーム12、第3アーム13に備えられた慣性センサー91、92、93が検出したデータから、第1アーム11の角速度、第2アームの角速度、第3アームの角速度を演算する。検出データから演算される角速度は、基体連結装置30を回転軸とする角速度である。従って、第2アーム12の場合には第1アーム連結装置21、第3アーム13の場合には第2アーム連結装置22を回転軸としたアームの角速度は、得られた角速度から更に演算する。
【0034】
すなわち、第2アーム12の場合には、第1アーム11に備える慣性センサー91から得られる検出データから換算される角速度ωa1と、第2アームに備える慣性センサー92の検出データから換算される角速度ωa2から、第2アーム12の第1アーム連結装置21を回転軸とする角速度ωj2は、
ωj2=ωa2−ωa1
と求められる。
【0035】
同様に、第3アーム13の場合には、第2アーム12に備える慣性センサー92から得られる検出データから換算される角速度ωa2と、第3アームに備える慣性センサー93の検出データから換算される角速度ωa3から、第3アーム13の第2アーム連結装置22を回転軸とする角速度ωj3は、
ωj3=ωa3−ωa2
と求められる。
【0036】
第1アーム11の場合、第1アーム11は基体40に備える基体連結装置30を中心に回動するため、慣性センサー91から得られた角速度ωa1が、第1アーム11の角速度となる。
【0037】
第3演算部530では、上記のように演算されたアクチュエーターの回転によるアクチュエーターを含む連結装置を回転軸とする第2アーム12の角速度ω1、第3アームの角速度ω2、第1アーム11の角速度ω3と、各アームに取り付けられた慣性センサーから得られた連結装置を回転軸とする第2アームの角速度ωj2、第3アームの角速度ωj3、第1アームの角速度ωa1との差であるねじれ角速度を演算する。
【0038】
すなわち、基体連結装置30と第1アーム11とのねじれ角速度ωt1は、
ωt1=ωa1−ω1
と求められる。同様に、第1アーム連結装置21と第2アーム12とのねじれ角速度ωt2は、
ωt2=ωJ2−ω2
と求められ、第2アーム連結装置22と第3アーム13とのねじれ角速度ωt3は、
ωt3=ωJ3−ω3
と求められる。
【0039】
図3はロボット装置100におけるアクチュエーターのトルクに対する、アクチュエーターからトルク伝達装置を介してアームを駆動する角速度Ωactと、慣性センサーにより得られるアームの角速度Ωarmと、ねじれ角速度Ωtorの応答を説明するボード線図である。図3に示すように、Ωact、Ωarmにおいては、低周波成分に本来の動作成分も含まれるが、Ωtorには実際の動作成分がほとんど低周波成分には含まれない。この点に着眼し、本発明はねじれ角速度Ωtorの低周波成分をセンサーのバイアスドリフト等による誤差による影響分とみなし、除去することでロボット装置100の低周波ノイズを除去し、ロボット装置100の振動を正確に制御することを可能とするものである。
【0040】
図4は、動作時のねじれ角速度の周波数成分を概念的に示す図であり、低周波成分をハイパスフィルターなどの手段によって除去する様子を示している。図4(a)は誤差の無い慣性センサーの場合、(b)がバイアスドリフト等の低周波の誤差の有る慣性センサーの場合を示しており、(a)と(b)の差が慣性センサーの誤差による成分を示している。
【0041】
図4(a)に示す、低周波成分の除去前のねじれ角速度Ωtorを、ハイパスフィルターによって低周波成分を除去することでΩtor´となる。図4(b)では、低周波成分の除去前のねじれ角速度Ω´torを、同様に低周波成分を除去することでΩ´tor´となる。図4(a)に示すように、低周波成分が除去されたねじれ角速度Ωtor´は、除去前のねじれ角速度Ωtorに対して、除去した周波数以下では振幅は小さくなる。しかし、その領域Sは図に示すように微小な値、例えば10-5以下の領域であって、除去分は無視できるレベルである。
【0042】
一方、図4(b)に示す誤差を持つ慣性センサーの場合には、ハイパスフィルターによる低周波成分の除去前後に生じる差異領域Tは、振幅の大きい領域にある。従って、低周波成分を除去することで、図4(b)における低周波成分除去前の誤差を含まない値Uに近づけることができる。よって、ねじれ角速度の低周波成分を除去することで、バイアスドリフト等の低周波成分の誤差を持つ慣性センサーを用いても、誤差の無い、言い換えると真の値に近いねじれ角速度を得ることができ、ねじれ角速度によるロボット装置100の振動を正確に制御することが可能となる。
【0043】
すなわち、上述のように求められたねじれ角速度ωt1、ωt2、ωt3に対して、その周波数成分のうち、低周波成分を図示しないハイパスフィルター(以下、HPFという)により除去したねじれ角速度Ωt1、Ωt2、Ωt3を演算する。ここで、HPFのフィルタリング周波数は、ロボット装置100の機械系固有振動数のうち、反共振周波数および共振周波数における最も低い周波数に対して、より低い周波数のHPFを用いることが好ましい。
【0044】
低周波成分を除去したねじれ角速度Ωt1、Ωt2、Ωt3を用いて、制御部600において制御信号を生成し、各アクチュエーター51、52、53を制御することができる。この場合、第4演算部540を備え、低周波成分が除去されたねじれ角速度Ωt1、Ωt2、Ωt3に、各連結装置21、22、30のトルク伝達装置61、62、63を介して第2アーム12、第3アーム13、第1アーム11に伝えられる角速度ω2、ω3、ω1を加算し、その結果を用いて制御部600において制御信号を生成することも出来る。
【0045】
図5は、本実施形態に係るロボット装置100の制御方法を示すフローチャートである。ロボット装置100の稼動状態において、先ず第1演算工程(S111)において、第1演算部はアクチュエーターに備える角度センサー81、82、83から回転角度データを入手する。得られた角度データから、回転角度への換算と、回転角度を時間で1回微分を行い、第2アーム12を駆動するアクチュエーター51を含む第1アーム連結装置21の出力部の回転角速度ω1、第3アーム13を駆動するアクチュエーター52を含む第2アーム連結装置22の出力部の回転角速度ω2、基体連結装置30の出力部の回転角速度ω3を演算する。
【0046】
更に、同時に第2演算工程(S112)において、第2演算部に各アームに備える慣性センサー91、92、93から角速度データを入手し、各アームを連結駆動する連結装置を回転軸とする角速度を演算する。すなわち、第2アーム12では、第1アーム11に備える慣性センサー91から得られる検出データから換算される角速度ωa1と、第2アームに備える慣性センサー92の検出データから換算される角速度ωa2から、
ωj2=ωa2−ωa1
によって、第2アーム12の第1アーム連結装置21を回転軸とする角速度ωj2を演算する。
【0047】
同様に、第3アーム13では、第2アーム12に備える慣性センサー92から得られる検出データから換算される角速度ωa2と、第3アームに備える慣性センサー93の検出データから換算される角速度ωa3から、
ωj3=ωa3−ωa2
によって、第3アーム13の第2アーム連結装置22を回転軸とする角速度ωj3を演算する。なお、第1アーム11では、第1アーム11は基体40に備える基体連結装置30を中心に回動するため、慣性センサー91から得られた角速度ωa1が、第1アーム11の角速度となる。
【0048】
次に、第3演算工程(S120)に移行する。第3演算工程(S120)では、第1演算工程(S111)で演算された角速度ω1、ω2、ω3と、第2演算工程(S112)で演算された角速度ωa1、ωj2、ωj3との差からねじれ角速度、
ωt1=ωa1−ω1
ωt2=ωj2−ω2
ωt3=ωj3−ω3
を、演算する。
【0049】
演算されたねじれ角速度ωt1、ωt2、ωt3を、ロボット装置100の機械系固有振動数のうち、反共振周波数および共振周波数における最も低い周波数に対して、より低い周波数を除去するハイパスフィルターによりフィルタリングし、低周波成分を除去したねじれ角速度Ωt1、Ωt2、Ωt3を演算する。
【0050】
次に、第4演算工程(S130)に移行する。第4演算工程(S130)では、第3演算工程(S120)で演算されえられた、ハイパスフィルターにより低周波成分を除去したねじれ角速度Ωt1、Ωt2、Ωt3に、各連結装置21、22、30のトルク伝達装置61、62、63を介して第2アーム12、第3アーム13、第1アーム11に伝えられる角速度ω2、ω3、ω1を加算し、その結果を制御信号生成工程(S140)へ送る。
【0051】
制御信号生成工程(S140)は、制御部600において、得られた第4演算工程(S130)における演算結果を基に各アクチュエーターの制御信号を生成する。すなわち、ハイパスフィルターにより低周波成分を除去したねじれ角速度Ωt1、Ωt2、Ωt3に、各連結装置21、22、30のトルク伝達装置61、62、63を介して第2アーム12、第3アーム13、第1アーム11に伝えられる角速度ω2、ω3、ω1を加算した角速度を基に、各アクチュエーターを制御するための信号を生成する。
【0052】
次にロボット装置動作停止確認工程(S150)に移行する。ロボット装置動作停止確認工程(S150)では、ロボット装置100が動作状態であるか、を確認し、動作状態(No)である場合には、第1演算工程(S111)、第2演算工程(S112)に戻り、制御を繰り返す。動作停止状態(Yes)である場合には、制御は終了する。
【0053】
上述の通り、ねじれ角速度を制御データとすること、更に低周波成分を除去したねじれ角速度を制御データとすることで、慣性センサーの誤差分を除去した正確なロボット装置の振動抑制制御を可能とする。
【実施例】
【0054】
(実施例1)
実施形態に係るロボット装置の、ねじれ角速度を基にした制御の実施例について説明する。アクチュエーターへのトルク指令値τを算出する方程式に、アクチュエーター角度、アーム角度(リンク角度)、アクチュエーター角速度、アーム角速度の4状態量が用いられ、このうちアーム角速度に上述の実施形態で説明した「低周波成分を除去したねじれ角速度(Ωt1、Ωt2、Ωt3)+連結装置のトルク伝達装置を介してアームに伝えられる角速度(ω2、ω3、ω1)」を用いる。
【0055】
上述の4状態量であるアクチュエーター角度と、アーム角度(リンク角度)と、アクチュエーター角速度と、低周波成分を除去したねじれ角速度に連結装置のトルク伝達装置を介してアームに伝えられる角速度を加えたアーム角速度と、を測定し、測定された4状態量を基に、下記(式1)により、状態フィードバック制御系を構築する。
【0056】
【数1】

【0057】
(式1)におけるk1〜k5は、制御装置の内部の制御ゲインであり、極配置法や最適レギュレーター等によって決定することができる。こうして得られたトルク指令値τを用いて制御することで、ロボット装置の振動を抑制し、正確な動作を可能とする。
【0058】
上述の実施例において、アーム角速度に上述の実施形態で説明した「低周波成分を除去したねじれ角速度(Ωt1、Ωt2、Ωt3)+連結装置のトルク伝達装置を介してアームに伝えられる角速度(ω2、ω3、ω1)」を用いる例を説明したが、状態量としてアーム角速度に換えて「ねじれ角速度」を用いることで、演算量の少ない制御系を構築することができる。
【0059】
すなわち、(式1)におけるアーム角度θa、およびその1回微分のアーム角速度dθa/dtをねじれ角速度(実施形態におけるΩt1、Ωt2、Ωt3)として用いて、下記(式2)により制御系を構築する。
【0060】
【数2】

【0061】
(式2)におけるkt1〜kt5は、制御装置の内部の制御ゲインであり、極配置法や最適レギュレーター等によって決定することができる。こうして得られたトルク指令値τを用いて制御することで、ロボット装置の振動を抑制し、正確な動作を可能とする。
【0062】
(実施例2)
他の実施例として、図6に示すブロック図によって説明する。図6は上述の実施形態における図2に示すブロック図に対して、制御部610における位置制御系610a、速度制御系610bが演算結果を取得し、制御する例を示す点で異なる。従って、実施形態と同じ構成には同じ符号を付し、説明は省略する。
【0063】
図6に示す本実施例においても、CPU210は、後述する第1演算部510、第2演算部520、第3演算部530および制御部610を含み、ROM310に記憶されたプログラムを読み出して実行する。また、RAM410はCPU210におけるプログラム実行によって得られるデータを保存し、CPU210へ保存されたデータから必要なデータを送出する。
【0064】
図6のブロック図に示すように、本実施例の制御は、第1演算部510において換算されるアクチュエーターの回転角度データを位置制御系610aが取得する。また、同じく第1演算部において演算されたアクチュエーターの角速度データは速度制御系610bが取得する。第3演算部530で演算されたねじれ角速度データは、速度制御系610bが取得し、位置制御系610aから入力される角速度指令と合わせて、速度制御系610bはロボット装置100にトルク指令を出力する。このように制御することで、ロボット装置の振動を抑制し、正確な動作を可能とする。
【0065】
上述の実施形態ならびに実施例は、図1に示す通り3本のアームを備える水平多関節型のアーム体10により説明したが、これに限定はされず、2本のアームを備えるロボット装置、あるいは4本以上のアームを備えるロボット装置にも適用される。また、ロボット装置型式においても、直動式、垂直多関節型など、可動アームを備えるロボット装置にも適用できる。
【符号の説明】
【0066】
10…アーム体、11,12,13…アーム、21,22…アーム連結装置、30…基体連結装置、40…基体、51,52,53…アクチュエーター、61,62,63…トルク伝達装置、70…ワーク保持装置、81,82,83…角度センサー、91,92,93…慣性センサー、100…ロボット装置。

【特許請求の範囲】
【請求項1】
アクチュエーター、前記アクチュエーターのトルクが所定の減速比で伝達されるトルク伝達機構及び前記アクチュエーターの回転角度を検出する角度センサー、を含むアーム連結装置と、
複数のアームが、前記アーム連結装置により直列且つ回転可能に連結されたアーム体と、
前記アーム体の一方の端部に設けられた前記アクチュエーター、前記アクチュエーターのトルクが所定の減速比で伝達されるトルク伝達機構及び前記アクチュエーターの回転角度を検出する角度センサーを含む基体連結装置により前記アーム体が回転可能に連結された基体と、
前記アームに取り付けられた、少なくとも角速度センサーを含む、慣性センサーと、
前記角度センサーの回転角度検出データより、前記角度センサーを備える前記アクチュエーターによって動作する前記アームの角速度を演算する第1演算部と、
前記第1演算部の演算対象の前記アクチュエーターを含む前記連結装置を介して連結される前記アームに備える前記慣性センサーの角速度検出データより、前記連結装置を軸とする前記アクチュエーターにより作動する前記アームの角速度を演算する第2演算部と、
前記アクチュエーターによって動作する前記アームの前記角速度及び前記慣性センサーの前記角速度検出データによって演算された前記アームの前記角速度の差に含まれる低周波成分を除去した、前記アクチュエーター及び前記アームの間のねじれ角速度を演算する第3演算部と、を備える、
ことを特徴とするロボット装置。
【請求項2】
前記低周波成分は、前記ロボット装置の機械系固有振動数のうち、反共振周波数および共振周波数における最も低い周波数に対して、より低い周波数である、
ことを特徴とする請求項1に記載のロボット装置。
【請求項3】
前記第1演算部により演算された前記アームの前記角速度と、
前記第3演算部により演算された前記ねじれ角速度と、を加算する第4演算部を更に備える、
ことを特徴とする請求項1または2に記載のロボット装置。
【請求項4】
アクチュエーター、前記アクチュエーターのトルクが所定の減速比で伝達されるトルク伝達機構及び前記アクチュエーターの回転角度を検出する角度センサー、を含むアーム連結装置と、
複数のアームが、前記アーム連結装置により直列且つ回転可能に連結されたアーム体と、
前記アーム体の一方の端部に設けられた前記アクチュエーターと前記アクチュエーターのトルクが所定の減速比で伝達されるトルク伝達機構及び前記アクチュエーターの回転角度を検出する角度センサーを含む基体連結装置により前記アーム体が回転可能に連結された基体と、
前記アームに取り付けられた、少なくとも角速度センサーを含む、慣性センサーと、
前記角度センサーの回転角度検出データより、前記角度センサーを備える前記アクチュエーターによって動作する前記アームの角速度を演算する第1演算工程と、
前記第1演算工程の演算対象の前記アクチュエーターを含む前記連結装置を介して連結される前記アームに備える前記慣性センサーの角速度検出データより、前記連結装置を軸とする前記アクチュエーターにより作動する前記アームの角速度を演算する第2演算工程と、
前記アクチュエーターによって動作する前記アームの前記角速度及び前記慣性センサーの前記角速度検出データによって演算された前記アームの前記角速度の差に含まれる低周波成分を除去した、前記アクチュエーター及び前記アームの間のねじれ角速度を演算する第3演算工程と、を含む、
ことを特徴とするロボット装置の制御方法。
【請求項5】
前記低周波成分は、前記ロボット装置の機械系固有振動数のうち、反共振周波数および共振周波数における最も低い周波数に対して、より低い周波数である、
ことを特徴とする請求項4に記載のロボット装置の制御方法。
【請求項6】
前記第1演算工程により演算された前記アームの前記角速度と、
前記第3演算工程により演算された前記ねじれ角速度と、を加算し前記アームの角速度を演算する第4演算工程を更に備える、
ことを特徴とする請求項4または5に記載のロボット装置の制御方法。
【請求項7】
アクチュエーター、前記アクチュエーターのトルクが所定の減速比で伝達されるトルク伝達機構及び前記アクチュエーターの回転角度を検出する角度センサー、を含むアーム連結装置と、
複数のアームが、前記アーム連結装置により直列且つ回転可能に連結されたアーム体と、
前記アーム体の一方の端部に設けられた前記アクチュエーターと前記アクチュエーターのトルクが所定の減速比で伝達されるトルク伝達機構及び前記アクチュエーターの回転角度を検出する角度センサーを含む基体連結装置により前記アーム体が回転可能に連結された基体と、
前記アームに取り付けられた、少なくとも角速度センサーを含む、慣性センサーと、
を備えるロボット装置に制御を行わせるプログラムであって、
コンピューターに、
前記角度センサーの回転角度検出データより、前記角度センサーを備える前記アクチュエーターによって動作する前記アームの角速度を演算する第1演算手順と、
前記第1演算手順の演算対象の前記アクチュエーターを含む前記連結装置を介して連結される前記アームに備える前記慣性センサーの角速度検出データより、前記連結装置を軸とする前記アクチュエーターにより作動する前記アームの角速度を演算する第2演算手順と、
前記アクチュエーターによって動作する前記アームの前記角速度及び前記慣性センサーの前記角速度検出データによって演算された前記アームの前記角速度の差に含まれる低周波成分を除去した、前記アクチュエーター及び前記アームの間のねじれ角速度を演算する第3演算手順と、
を実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2012−35361(P2012−35361A)
【公開日】平成24年2月23日(2012.2.23)
【国際特許分類】
【出願番号】特願2010−177066(P2010−177066)
【出願日】平成22年8月6日(2010.8.6)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】