(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022047779
(43)【公開日】2022-03-25
(54)【発明の名称】ロボット装置
(51)【国際特許分類】
B25J 13/00 20060101AFI20220317BHJP
【FI】
B25J13/00 Z
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2020153747
(22)【出願日】2020-09-14
(71)【出願人】
【識別番号】000000011
【氏名又は名称】株式会社アイシン
(74)【代理人】
【識別番号】110000017
【氏名又は名称】特許業務法人アイテック国際特許事務所
(72)【発明者】
【氏名】辰野 仁嗣
(72)【発明者】
【氏名】浅井 雅広
(72)【発明者】
【氏名】梅村 哲央
(72)【発明者】
【氏名】▲高▼田 亮
【テーマコード(参考)】
3C707
【Fターム(参考)】
3C707BS10
3C707DS01
3C707HS21
3C707KS21
3C707KS35
3C707KX05
3C707LU07
3C707LV22
3C707MT01
(57)【要約】
【課題】適合処理や実際の制御を煩雑化させることなく、ヒステリシス特性を有する人工筋肉を含むロボット装置を適正に作動させる。
【解決手段】本開示のロボット装置は、関節を介して連結された2つのリンクと、液体の供給を受けて2つのリンクを相対的に回動させる少なくとも1つの人工筋肉と、人工筋肉に液体を供給する液体供給装置と、予め定められた人工筋肉の静特性に基づいて当該人工筋肉に供給される液圧の目標圧力を設定すると共に、当該目標圧力に基づいて液体供給装置を制御する制御装置とを含み、当該制御装置は、関節の現在角度の目標角度に対する追従性が許容範囲外にあるときに、目標角度と現在角度との差に基づいて目標圧力を設定すると共に、当該目標圧力に基づいて液体供給装置を制御する。
【選択図】
図10
【特許請求の範囲】
【請求項1】
関節を介して連結された2つのリンクと、液体の供給を受けて前記2つのリンクを相対的に回動させる少なくとも1つの人工筋肉と、前記人工筋肉に前記液体を供給する液体供給装置とを含むロボット装置であって、
予め定められた前記人工筋肉の静特性に基づいて前記人工筋肉に供給される液圧の目標圧力を設定すると共に、前記目標圧力に基づいて前記液体供給装置を制御する制御装置であって、前記関節の現在角度の目標角度に対する追従性が許容範囲外にあるときに、前記目標角度と前記現在角度との差に基づいて前記目標圧力を設定すると共に、前記目標圧力に基づいて前記液体供給装置を制御する制御装置を備えるロボット装置。
【請求項2】
請求項1に記載のロボット装置において、
前記制御装置は、前記追従性が前記許容範囲外にあるときに、前記目標角度と前記現在角度との前記差が大きくなるにつれて高くなるように前記目標圧力を設定するロボット装置。
【請求項3】
請求項1または2に記載のロボット装置において、
前記人工筋肉は、前記液体が供給された際に径方向に膨張しながら軸方向に収縮するチューブを含み、
前記静特性は、前記チューブに供給される前記液圧ごとに、前記チューブの収縮率と前記チューブの収縮により発生する収縮力との関係を規定するロボット装置。
【請求項4】
請求項3に記載のロボット装置において、
前記静特性は、前記チューブに供給される前記液圧ごとに、軸方向に収縮する前記チューブの収縮率と軸方向に伸長する前記チューブの収縮率とが同一になったときに両者が発生する収縮力の平均をとることにより作成されるロボット装置。
【請求項5】
請求項3または4に記載のロボット装置において、
前記制御装置は、
前記2つの前記リンクを相対的に回動させるための目標トルクを設定する目標トルク設定部と、
前記関節の前記現在角度に基づいて前記人工筋肉の収縮率を設定する収縮率設定部と、
前記目標トルク設定部により設定された前記目標トルクに基づいて前記人工筋肉の収縮力を算出する収縮力算出部と、
前記静特性を用いて前記収縮率設定部により設定された前記収縮率と前記収縮力算出部により算出された前記収縮力とに対応した第1圧力を設定する第1圧力設定部と、
前記追従性が前記許容範囲内にあるときに、第2圧力にゼロを設定すると共に、前記追従性が許容範囲外にあるときに、前記目標角度と前記現在角度との差に基づいて前記第2圧力を設定する第2圧力設定部と、
前記第1圧力設定部により設定された前記第1圧力と前記第2圧力設定部により設定された前記第2圧力との大きい方を前記目標圧力に設定する目標圧力設定部とを含むロボット装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、液体の供給を受けて作動する人工筋肉と、当該人工筋肉に液体を供給する液体供給装置とを含むロボット装置に関する。
【背景技術】
【0002】
従来、複数の弾性膨張収縮構造体(人工筋肉)と、それぞれ対応する一対の弾性膨張収縮構造体により回転駆動される複数の関節軸と、物体把持用のハンドと、複数の3ポート流量制御電磁弁(駆動装置)とを含む2自由度のロボットアームである弾性体アクチュエータ駆動機構が知られている(例えば、特許文献1参照)。この弾性体アクチュエータ駆動機構の各弾性膨張収縮構造体は、ゴム材料で構成された中空の管状弾性体と、当該管状弾性体の外表面を覆う網目状の変形方向規制部材とを含む。管状弾性体の両端部は封止部材により気密封止され、管状弾性体の内部には、一端側の封止部材に設けられた管状の流体通過部材を介して空気等の圧縮性流体が供給される。管状弾性体は、内部に圧縮性流体が供給された際に主に半径方向に膨張しようとするが、変形方向規制部材の作用により管状弾性体の変形方向の運動が軸方向の運動に変換される。これにより、圧縮性流体の供給により管状弾性体を収縮させることで、弾性膨張収縮構造体を直動アクチュエータとして利用することができる。更に、第1および第2関節軸をそれぞれ対応した一対の弾性膨張収縮構造体の拮抗駆動により正逆に回転させることで、物体把持用のハンドを移動させることが可能となる。
【0003】
上記従来の弾性体アクチュエータ駆動機構では、予め作成された動作プログラムに従って設定される目標関節角度ベクトルと、エンコーダにより計測される関節角の現在値(関節角度ベクトル)との差である角度誤差ベクトルから角度誤差修正指令値が算出される。また、目標関節角度ベクトルから目標角加速度が計算により求められ、当該目標角加速度と角度誤差ベクトルとから修正目標角加速度が計算により求められる。また、修正目標角加速度と、弾性体アクチュエータ駆動機構の各リンクまたは搬送物体の質量、重心位置、若しくは慣性行列といったダイナミクスパラメータとから、搬送物体および弾性体アクチュエータ駆動機構の質量にかかる重力項を含む目標関節トルクが算出される。更に、目標関節トルクと上記関節角度ベクトルとから、関節軸ごとに弾性膨張収縮構造体の目標圧力値が算出されると共に、当該目標圧力値と圧力センサにより計測される弾性膨張収縮構造体(管状弾性体)の内圧(空気の圧縮率)との差である圧力誤差が算出される。そして、圧力誤差から圧力差誤差修正出力が算出され、当該圧力差誤差修正出力は、各3ポート流量制御電磁弁に電圧指令値として与えられる。これにより、各関節軸が対応する一対の弾性膨張収縮構造体によって独立して回転駆動されることになる。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ここで、中空の管状弾性体を含む弾性膨張収縮構造体は、いわゆるヒステリシス特性、すなわち、管状弾性体内の圧力および収縮率が同一であっても、管状弾性体が軸方向に収縮するときと管状弾性体が軸方向に伸長するときとで発生する収縮力が異なる特性を有する。しかしながら、上記特許文献1では、弾性膨張収縮構造体のヒステリシス特性が考慮されておらず、圧力センサにより検出される管状弾性体の内圧に基づいて流量制御電磁弁が精度よく制御されたとしても、弾性膨張収縮構造体の出力不足により弾性体アクチュエータ駆動機構を適正に作動させ得なくなることがある。一方、ヒステリシス特性に起因した弾性膨張収縮構造体の出力不足が解消されるように流量制御電磁弁への電圧指令値を補正することも考えられるが、かかる補正処理は、補正値の適合等に多大な労力を要するものであって実質的に実施し得ないものである。
【0006】
そこで、本開示は,適合処理や実際の制御を煩雑化させることなく、ヒステリシス特性を有する人工筋肉を含むロボット装置を適正に作動させることを主目的とする。
【課題を解決するための手段】
【0007】
本開示のロボット装置は、関節を介して連結された2つのリンクと、液体の供給を受けて前記2つのリンクを相対的に回動させる少なくとも1つの人工筋肉と、前記人工筋肉に前記液体を供給する液体供給装置とを含むロボット装置であって、予め定められた前記人工筋肉の静特性に基づいて前記人工筋肉に供給される液圧の目標圧力を設定すると共に、前記目標圧力に基づいて前記液体供給装置を制御する制御装置であって、前記関節の現在角度の目標角度に対する追従性が許容範囲外にあるときに、前記目標角度と前記現在角度との差に基づいて前記目標圧力を設定すると共に、前記目標圧力に基づいて前記液体供給装置を制御する制御装置を含むものである。
【0008】
本開示のロボット装置は、液体の供給を受けて作動すると共に、関節を介して連結された2つのリンクを相対的に回動させる少なくとも1つの人工筋肉と、当該人工筋肉に液体を供給する液体供給装置と、当該液体供給装置を制御する制御装置とを含む。また、制御装置は、予め定められた人工筋肉の静特性に基づいて当該人工筋肉に供給される液圧の目標圧力を設定すると共に、目標圧力に基づいて液体供給装置を制御する。そして、当該制御装置は、関節の現在角度の目標角度に対する追従性が許容範囲外にあるときに、目標角度と現在角度との差に基づいて目標圧力を設定し、当該目標圧力に基づいて液体供給装置を制御する。これにより、ヒステリシス特性に起因して、人工筋肉から実際に出力される力が当該人工筋肉の静特性に基づいて設定された目標圧力に対応する力よりも小さくなるときに、目標角度と現在角度との差を無くすように目標圧力を設定してロボット装置の動作不良を抑制することが可能となる。更に、目標圧力の設定に用いられる静特性に人工筋肉のヒステリシス特性を完全に反映させる必要が無くなると共に、補正値の適合や煩雑な目標圧力の補正処理等が不要となる。この結果、適合処理や実際の制御を煩雑化させることなく、ヒステリシス特性を有する人工筋肉を含むロボット装置を適正に作動させることが可能となる。
【図面の簡単な説明】
【0009】
【
図1】本開示のロボット装置を示す概略構成図である。
【
図3】本開示のロボット装置の液体供給装置を示す概略構成図である。
【
図4】本開示のロボット装置の制御装置の要部を示すブロック図である。
【
図5】本開示のロボット装置の制御手順を例示するフローチャートである。
【
図6】本開示のロボット装置の制御手順を例示するフローチャートである。
【
図7】本開示のロボット装置の制御手順を例示するフローチャートである。
【
図8】本開示のロボット装置の制御手順を例示するフローチャートである。
【
図9】目標圧力設定マップを例示する説明図である。
【
図10】本開示のロボット装置の制御手順を例示するフローチャートである。
【発明を実施するための形態】
【0010】
次に、図面を参照しながら、本開示の発明を実施するための形態について説明する。
【0011】
図1は、本開示のロボット装置1を示す概略構成図であり、
図2は、ロボット装置1を示す拡大図である。これらの図面に示すロボット装置1は、ロボットアーム(ロボット本体)2と、液体供給装置10と、装置全体を制御する制御装置100とを含む。ロボットアーム2は、複数(本実施形態では、3つ)の関節(ピン結合部)J1,J2,J3と、複数(本実施形態では、3つ)のアーム(リンク)3と、関節J1,J2,J3ごとに例えば偶数個(本実施形態では、4つ)ずつ設けられる人工筋肉としての複数の液圧アクチュエータMと、先端側のアーム3の手先に取り付けられる把持部としてのハンド部(ロボットハンド)4とを含む多関節アームである。ハンド部4は、対象となる物体(以下、「把持対象」という。)を把持するように制御装置100により制御される。また、液体供給装置10は、制御装置100により制御されて各液圧アクチュエータMに液体としての作動油(作動流体)を給排する。これにより、ロボットアーム2を油圧(液圧)により駆動してハンド部4を所望の位置に移動させることができる。
【0012】
ロボットアーム2の各液圧アクチュエータMは、
図2に示すように、作動油の圧力によって膨張および収縮するチューブTと、当該チューブTを覆う編組スリーブSとを含む、いわゆるマッキベン型の人工筋肉である。チューブTは、高い耐油性をもった例えばゴム材等の弾性材により円筒状に形成されており、当該チューブTの両端部は、封止部材Cにより封止されている。チューブTの基端側(液体供給装置10側、
図2中下端側)の封止部材Cには、作動油の出入口IOが形成されている。編組スリーブSは、所定方向に配向された複数のコードを互いに交差するように編み込むことにより円筒状に形成されており、軸方向および径方向に収縮可能である。編組スリーブSを形成するコードとしては、繊維コード、高強度繊維、極細のフィラメントによって構成される金属製コード等を採用することができる。かかる液圧アクチュエータMのチューブT内に上記出入口IOから作動油を供給してチューブT内の作動油の圧力を高めることで、チューブTは、編組スリーブSの作用により径方向に膨張すると共に軸方向に収縮し、内部の作動油の圧力に応じた収縮力を発生する。
【0013】
図1および
図2に示すように、複数のアーム3のうち、最基端側(最も液体供給装置10側)のアーム3は、関節J1を介してリンクとしての支持部材5により回動自在に支持される。また、2つのアーム3同士が、関節J2またはJ3を介して互いに回動自在に連結される。更に、各アーム3の先端部(手先側の端部)には、連結部材6が固定されている。図示するように、支持部材5は、最基端側の関節J1に対応した複数(4つ)の液圧アクチュエータMの基端側の封止部材Cを回動自在に支持する。また、各アーム3の連結部材6は、基端側に位置する関節J1またはJ2に対応した複数(4つ)液圧アクチュエータMの先端側(手先側)の封止部材Cを回動自在に支持する。更に、各連結部材6は、先端側に位置する関節J2またはJ3に対応した複数(4つ)液圧アクチュエータMの基端側の封止部材Cを回動自在に支持する。
【0014】
より詳細には、支持部材5は、関節J1に対応した2つの液圧アクチュエータMの基端側の封止部材Cを第1の連結軸を介して回動自在に支持する。また、最基端側のアーム3の連結部材6は、関節J1に対応した当該2つの液圧アクチュエータMの先端側の封止部材Cを第2の連結軸を介して回動自在に支持する。更に、支持部材5は、関節J1に対応した残り2つの液圧アクチュエータMの基端側の封止部材Cを上記第1の連結軸と平行に延びる第3の連結軸を介して回動自在に支持する。また、最基端側のアーム3の連結部材6は、関節J1に対応した当該残り2つの液圧アクチュエータMの先端側の封止部材Cを上記第2の連結軸と平行に延びる第4の連結軸を介して回動自在に支持する。同様に、関節J2またはJ3を介して互いに連結される2つのアーム3の連結部材6も、上述のような複数の連結軸を介して、当該関節J2またはJ3に対応した複数(4つ)の液圧アクチュエータMの対応する封止部材Cを回動自在に支持する。
【0015】
これにより、関節J1-J3の関節軸から手先側(ハンド部4側)に延びる各アーム3の両側には、液圧アクチュエータMが本実施形態では2つずつ対応するアーム3と平行に配列される。そして、各アーム3の一側に配置される2つの液圧アクチュエータMは、1つの関節J1,J2またはJ3に対応した第1の人工筋肉(一方の拮抗筋)AM1(
図3参照)を構成し、各アーム3の他側に配置される2つの液圧アクチュエータMは、当該第1の人工筋肉AM1と対をなす1つの関節J1,J2またはJ3に対応した第2の人工筋肉(他方の拮抗筋)AM2(
図3参照)を構成する。ただし、第1の人工筋肉AM1を構成する液圧アクチュエータMの数と、第2の人工筋肉AM2を構成する液圧アクチュエータMの数とが異なっていてもよい。また、本実施形態において、1つの関節J1,J2またはJ3に対して設けられる複数(4つ)の液圧アクチュエータMは、互いに同一の諸元を有する。ただし、1つの関節J1,J2またはJ3に対応した複数の液圧アクチュエータMの諸元は、必ずしも同一である必要はなく、例えば、第1の人工筋肉AM1を構成する液圧アクチュエータMの諸元と、第2の人工筋肉AM2を構成する液圧アクチュエータMの諸元とが異なっていてもよい。更に、各アーム3は、中空に形成されており、各アーム3の内部には、液体供給管としての複数のホースH(
図2における破線参照)が配置される。各ホースHは、対応する液圧アクチュエータMの基端側の封止部材Cに形成された出入口IOに接続され、各液圧アクチュエータMのチューブT内には、ホースHを介して液体供給装置10からの作動油(油圧)が供給される。
【0016】
従って、制御装置100により液体供給装置10を制御することで、第1の人工筋肉AM1を構成する2つの液圧アクチュエータMのチューブT内の油圧と、第1の人工筋肉AM1と対をなす第2の人工筋肉AM2を構成する2つの液圧アクチュエータMのチューブT内の油圧とを互いに異ならせることができる。これにより、4つの液圧アクチュエータMすなわち対をなす(一組の)第1および第2の人工筋肉AM1,AM2から連結部材6を介して各アーム3に力(回転トルク)を伝達し、支持部材5または基端側のアーム3に対して各アーム3を回動させて関節J1-J3の関節角度を変化させることが可能となる。本実施形態において、第1の人工筋肉AM1を構成する2つの液圧アクチュエータMと、第1の人工筋肉AM1と対をなす第2の人工筋肉AM2を構成する2つの液圧アクチュエータMとは、チューブTが所定量(例えば、自然長の10%程度)だけ軸方向に収縮した状態を初期状態として液体供給装置10からの油圧により拮抗駆動される。
【0017】
ロボット装置1の液体供給装置10は、
図1に示すように、作動油貯留部(液体貯留部)を画成するタンク11と、当該タンク11を上下方向に延びる回動軸(
図1における一点鎖線参照)の周りに回動自在に支持するベース部12とを含む。タンク11は、例えば上端および下端が閉鎖された筒体であり、内部に作動油を貯留可能なものである。本実施形態において、ロボットアーム2の支持部材5は、
図2に示すように、タンク11の上壁部11uに図示しないボルト等を介して固定される。すなわち、ロボットアーム2は、液体供給装置10のタンク11(上壁部11u)により支持される。
【0018】
ベース部12は、ロボットアーム2およびタンク11の下方に位置するようにロボット装置1の設置箇所に固定されるか、あるいは図示しない無人搬送車(AGV)に搭載(固定)される。また、ベース部12は、タンク11を上記回動軸の周りに回動させる図示しない回動ユニットを支持している。これにより、回動ユニットを作動させることで、ロボットアーム2およびタンク11を当該回動軸の周りに一体に回動させることが可能となる。回動ユニットは、液体供給装置10から供給される油圧により駆動される揺動モータであってもよく、電動モータ等を含むものであってもよい。
【0019】
更に、液体供給装置10は、
図3に示すように、タンク11およびベース部12に加えて、液体供給源としてのポンプ13と、タンク11内に配置される図示しないバルブボディと、元圧生成バルブ14と、それぞれ複数の調圧弁(調圧装置)としての第1および第2リニアソレノイドバルブ151,152と、それぞれ複数の供給遮断部としての第1および第2供給遮断弁161,162とを含む。ポンプ13、第1および第2リニアソレノイドバルブ151,152並びに第1および第2供給遮断弁161,162は、何れも制御装置100により制御される。第1および第2リニアソレノイドバルブ151,152と、第1および第2供給遮断弁161,162とは、関節J1,J2,J3ごとにそれぞれ1つずつ設けられる。
【0020】
ポンプ13は、例えば電動ポンプであり、タンク11内に貯留された作動油を吸引して吐出口から吐出する。ポンプ13は、タンク11内に配置されるポンプ部と、電動モータおよび減速ギヤ機構とを有すると共にタンク11内またはタンク11外に配置される駆動部とを含む。元圧生成バルブ14は、図示しない信号圧生成バルブからの信号圧に応じてポンプ13から吐出される作動油の一部をドレン(調圧)して元圧を生成し、元圧をバルブボディに形成された油路(液体通路)L0に供給する。元圧生成バルブ14の信号圧生成バルブとしては、例えば、制御装置100による通電制御されるリニアソレノイドバルブが用いられる。
【0021】
第1および第2リニアソレノイドバルブ151,152は、制御装置100により通電制御される電磁部15eやスプール15s、スプール15sを電磁部15e側(
図3中上側)に付勢するスプリングSP等を含み、バルブボディ内に配置される。また、第1および第2リニアソレノイドバルブ151,152は、バルブボディの油路L0に連通する入力ポート15iと、入力ポート15iと連通可能な出力ポート15oと、出力ポート15oに連通するフィードバックポート15fと、出力ポート15oと連通可能なドレンポート15dとを含む。
【0022】
本実施形態において、第1および第2リニアソレノイドバルブ151,152は、電磁部15eに電流が供給される際に開弁する常閉弁であり、各電磁部15eは、印加される電流に応じてスプール15sを軸方向に移動させる。これにより、電磁部15e(コイル)への給電により当該電磁部15eからスプール15sに付与される推力と、スプリングSPの付勢力と、出力ポート5oからフィードバックポート5fに供給された油圧によりスプール5sに作用する電磁部5e側への推力とをバランスさせることで、元圧生成バルブ14(ポンプ13)側から入力ポート15iに供給されて出力ポート15oから流出する作動油を所望の圧力に調圧することができる。また、第1および第2リニアソレノイドバルブ151,152のドレンポート15dは、
図3に示すように、それぞれ油路L3を介してタンク11内の作動油貯留部に連通する。
【0023】
第1および第2供給遮断弁161,162は、互いに同一の構造を有する電磁式スプール弁(電磁弁)であり、
図3に示すように、入力ポート16i、第1および第2出力ポート16oa,16obを有するスリーブと、当該スリーブの内部に軸方向に摺動自在(移動自在)に配置される図示しないスプールと、制御装置100により通電制御されてスプールを移動させる電磁部16eと、スプールを電磁部16e側に付勢する図示しないスプリングとをそれぞれ含む。第1供給遮断弁161の入力ポート16iは、バルブボディに形成された油路を介して第1リニアソレノイドバルブ151の出力ポート15oに接続され、第2供給遮断弁162の入力ポート16iは、バルブボディに形成された油路を介して第2リニアソレノイドバルブ152の出力ポート15oに接続される。
【0024】
また、第1供給遮断弁161の第1出力ポート16oaは、油路L11を介して対応する上記第1の人工筋肉AM1を構成する一方の液圧アクチュエータM(チューブT)の作動油の出入口IOに接続される。更に、第1供給遮断弁161の第2出力ポート16obは、油路L12を介して当該第1の人工筋肉AM1を構成する他方の液圧アクチュエータM(チューブT)の作動油の出入口IOに接続される。また、第2供給遮断弁162の第1出力ポート16oaは、油路L21を介して対応する上記第2の人工筋肉AM2を構成する一方の液圧アクチュエータM(チューブT)の作動油の出入口IOに接続される。更に、第2供給遮断弁162の第2出力ポート16obは、油路L22を介して当該第2の人工筋肉AM2を構成する他方の液圧アクチュエータM(チューブT)の作動油の出入口IOに接続される。
【0025】
本実施形態において、第1および第2供給遮断弁161,162は、電磁部16eに供給される電流に応じて、完全連通状態、第1部分連通状態、第2部分連通状態および完全遮断状態を選択的に形成する。第1および第2供給遮断弁161,162が完全連通状態を形成した際には、入力ポート16iと第1および第2出力ポート16oa,16obの双方とが連通する。第1および第2供給遮断弁161,162が第1部分連通状態を形成した際には、入力ポート16iと第2出力ポート16obとが連通すると共に入力ポート16iと第1出力ポート16oaとの連通が遮断される。第1および第2供給遮断弁161,162が第2部分連通状態を形成した際には、入力ポート16iと第1出力ポート16oaとが連通すると共に入力ポート16iと第2出力ポート16obとの連通が遮断される。第1および第2供給遮断弁161,162が完全遮断状態を形成した際には、入力ポート16iと第1および第2出力ポート16oa,16obとの連通が遮断される。
【0026】
ロボット装置1の制御装置100は、CPU、ROM、RAM、入出力インターフェース等を含むマイクロコンピュータや各種ロジックIC等(何れも図示省略)を含む。制御装置100は、第1および第2リニアソレノイドバルブ151,152の下流側で油路L0における作動油の圧力を検出する図示しない元圧センサ、第1、第2リニアソレノイドバルブ151,152並びに第1、第2供給遮断弁161,162の電源の電圧を検出する図示しない電圧センサの検出値等を入力する。制御装置100は、元圧センサにより検出される油路L0における油圧が目標値になるように、ポンプ13をデューティ制御すると共に、元圧生成バルブ14の信号圧生成バルブの電磁部に供給される電流を制御する。
【0027】
また、制御装置100は、第1および第2リニアソレノイドバルブ151,152から各液圧アクチュエータMに要求に応じた油圧が供給されるように第1および第2リニアソレノイドバルブ151,152への電流指令値を設定し、当該電流指令値に基づいて各電磁部15eに供給される電流を制御する。更に、制御装置100は、ロボット装置1を作動させる間、基本的に、第1および第2供給遮断弁161,162が上述の完全連通状態を形成するように各電磁部16eに供給される電流を制御する。また、制御装置100は、第1リニアソレノイドバルブ151の電磁部15eを流れる電流を検出する電流検出部と、第2リニアソレノイドバルブ152の電磁部15eを流れる電流を検出する電流検出部とを含み(何れも図示省略)、各電流検出部により検出される電流を監視する。
【0028】
更に、制御装置100は、各液圧アクチュエータMにおける油圧を検出する図示しない圧力センサからの検出値に応じて、第1部分連通状態または第2部分連通状態を形成するように第1および第2供給遮断弁161,162の該当するものを制御する。これにより、破損等により第1および第2リニアソレノイドバルブ151,152の何れかに対応した2つの液圧アクチュエータMの一方から作動油が流出した場合に、当該2つの液圧アクチュエータMの他方に継続して作動油を供給してロボットアーム2の挙動の乱れを抑えつつ、破損した液圧アクチュエータMからの作動油の更なる流出を良好に抑制することが可能となる。また、制御装置100により完全遮断状態を形成するように第1および第2供給遮断弁161,162の該当するものを制御することで、第1または第2リニアソレノイドバルブ151,152からそれに対応した2つの液圧アクチュエータMへの作動油の供給を遮断したり、当該2つの液圧アクチュエータMからの作動油の流出を規制してロボットアーム2の意図しない動作の発生を抑制したりすることができる。
【0029】
図4は、上述の制御装置100における第1および第2リニアソレノイドバルブ151,152の制御部を示すブロック図である。同図に示すように、制御装置100は、それぞれコンピュータのCPUやROM,RAMといったハードウェアと、当該コンピュータにインストールされた制御プログラムといったソフトウェアとの少なくとも何れか一方により構築される、目標位置設定部101と、現在位置導出部102と、トルク演算部103および重力補償部104を含む目標トルク設定部105と、目標剛性設定部106と、収縮率設定部107と、収縮力算出部108と、目標角度算出部109と、関節状態判定部110と、第1圧力設定部111と、第2圧力設定部112と、目標圧力設定部115と、電流指令値設定部116と、バルブ駆動部117とを含む。
【0030】
目標位置設定部101は、ハンド部4の把持対象の位置や、ユーザにより与えられるハンド部4の移動中の目標速度および目標加速度に基づいて、当該ハンド部4の最終的な目標位置である目標到達位置(3次元座標)と、ハンド部4の初期位置から目標到達位置までの軌道であって複数の目標位置すなわち経由位置(3次元座標)を含む目標軌道とを設定する。現在位置導出部102は、ロボットアーム2の関節J1-J3の関節角度θ1,θ2,θ3とロボットアーム2(ロボット装置1)の諸元(アーム3の寸法等)とに基づいて、ハンド部4(予め定められた基準点)の現在位置(3次元座標)を導出する。関節J1-J3の関節角度θ1-θ3は、ロボットアーム2に設けられた複数の関節角度センサ7の対応する何れかにより検出される。以下、“i”を関節の番号として(ただし、本実施形態において、i=1,2,3である。)、i番目の関節を“関節Ji”といい、関節Jiの関節角度を“θi”という。
【0031】
目標トルク設定部105のトルク演算部103は、関節J1-J3ごとに、ハンド部4が現在位置から目標位置まで移動するように関節Jiを介して連結された2つのアーム3(アーム3および支持部材5)を相対的に回動させる関節トルクTj(i)を算出する。目標トルク設定部105の重力補償部104は、関節J1-J3ごとに、関節角度θ1-θ3とロボットアーム2(ロボット装置1)の諸元(アーム3の寸法等)とに基づいてロボットアーム2の姿勢を維持するのに必要な重力補償トルクTc(i)を算出する。そして、目標トルク設定部105は、関節トルクTj(i)と重力補償トルクTc(i)との和を、関節Jiを介して連結される2つのアーム3等を相対的に回動させるための関節トルクの目標値(目標駆動力)である目標トルクTtag(i)に設定する。
【0032】
目標剛性設定部106は、少なくともロボット装置1すなわちハンド部4の目標位置に基づいて、関節J1-J3ごとに、関節Jiがもつべき剛性、すなわち関節Jiを介して連結される2つのアーム3等(リンク)を単位角度だけ相対的に回動させるのに必要な力(トルク)であって、当該2つのアーム3等を相対的に回動させようとする外力に対する関節Jiの動きにくさを示す目標剛性R(i)を設定する。より詳細には、目標剛性設定部106は、ハンド部4等を把持対象等まで移動させる際に、当該ハンド部4等と把持対象等との位置関係に応じて目標剛性R(i)を変化させ、ハンド部4等を把持対象等に接触する前に目標剛性R(i)を低下させる。更に、目標剛性設定部106は、ハンド部4の移動速度および加速度の少なくとも何れか一方に応じて目標剛性R(i)を変化させると共に、ロボット装置1の周囲(例えばロボット装置1が配置される室内あるいは柵の内側といったロボットアーム2の動作範囲を含む領域)に人がいる場合、目標剛性R(i)を低下させる。なお、各関節Jiの目標剛性R(i)は、少なくともロボット装置1すなわちハンド部4の現在位置に基づいて設定されてもよい。
【0033】
収縮率設定部107は、関節J1-J3ごとに、ハンド部4の現在位置に応じた各関節Jiの関節角度θiに基づいて、当該関節Jiに対応した上記第1の人工筋肉AM1を構成する2つの液圧アクチュエータMの収縮率Cr1(i)と、関節Jiに対応した上記第2の人工筋肉AM2を構成する2つの液圧アクチュエータMの収縮率Cr2(i)とを設定する。収縮率Cr1(i),Cr2(i)は、それぞれ該当する液圧アクチュエータMのチューブTの軸方向における自然長に対する収縮したチューブTの軸長の割合を示す。なお、収縮率Cr1(i),Cr2(i)は、ロボット装置1の目標位置に応じた各関節Jiの目標角度に基づいて設定されてもよい。
【0034】
収縮力算出部108は、関節J1-J3ごとに、目標トルク設定部105により設定された目標トルクTtag(i)と、目標剛性設定部106により設定された目標剛性R(i)とに基づいて、関節Jiを介して連結された2つのアーム3等を目標トルクTtag(i)で相対的に回動させる際に当該関節Jiに対応した複数(一対)の液圧アクチュエータMに要求される収縮力Fc1(i),Fc2(i)を算出する。収縮力Fc1(i)は、各関節Jiに対応した第1の人工筋肉AM1を構成する2つの液圧アクチュエータMのチューブTの収縮により発生させるべき力であり、収縮力Fc2(i)は、各関節Jiに対応した第2の人工筋肉AM2を構成する2つの液圧アクチュエータMのチューブTの収縮により発生させるべき力である。
【0035】
目標角度算出部109は、目標位置設定部101により設定された目標軌道におけるハンド部4の複数の目標位置ごとに、当該目標位置とロボットアーム2(ロボット装置1)の諸元等とから定まる各関節Jiの目標角度θtag(i)を算出する。関節状態判定部110は、関節角度センサ7により検出された関節Jiの関節角度θiと、目標角度算出部109により算出された当該関節Jiの目標角度θtag(i)とから、関節Jiの現在の関節角度θiの目標角度θtag(i)に対する追従性が許容範囲内にあるか否かを判定する。
【0036】
第1圧力設定部111は、関節J1-J3ごとに、人工筋肉としての液圧アクチュエータMの静特性から収縮率設定部107により設定された収縮率Cr1(i)と収縮力算出部108により算出された収縮力Fc1(i)とに対応した圧力を導出して第1の人工筋肉AM1を構成する2つの液圧アクチュエータMの第1の仮目標圧力(第1圧力)である圧力Pa1(i)に設定する。また、第1圧力設定部111は、関節J1-J3ごとに、当該静特性から収縮率設定部107により設定された収縮率Cr2(i)と収縮力算出部108により算出された収縮力Fc2(i)とに対応した圧力を導出して第2の人工筋肉AM2を構成する2つの液圧アクチュエータMの第1の仮目標圧力(第1圧力)である圧力Pa2(i)に設定する。
【0037】
第2圧力設定部112は、第1の人工筋肉AM1を構成する2つの液圧アクチュエータMの第2の仮目標圧力(第2圧力)である圧力Pb1(i)と、第2の人工筋肉AM2を構成する2つの液圧アクチュエータMの第2の仮目標圧力(第2圧力)である圧力Pb2(i)とを設定する。第2圧力設定部112は、関節Jiの現在の関節角度θiの目標角度θtag(i)に対する追従性に応じて、圧力Pb1(i),Pb2(i)を変化させる。
【0038】
目標圧力設定部115は、第1圧力設定部111により設定された圧力Pa1(i)と、第2圧力設定部112により設定された圧力Pb1(i)とのうちの大きい方を第1の人工筋肉AM1を構成する2つの液圧アクチュエータMの目標圧力Ptag1(i)に設定する。また、目標圧力設定部115は、第1圧力設定部111により設定された圧力Pa2(i)と、第2圧力設定部112により設定された圧力Pb2とのうちの大きい方を第2の人工筋肉AM2を構成する2つの液圧アクチュエータMの目標圧力Ptag2(i)に設定する。
【0039】
電流指令値設定部116は、目標圧力設定部115により設定された目標圧力Ptag1(i)およびPtag2(i)を第1および第2リニアソレノイドバルブ151,152の電磁部15eへの電流指令値(目標電流)に直接変換する。バルブ駆動部117は、図示しない上述の電流検出部により検出される電流が電流指令値に一致するようにフィードフォワード制御(あるいはフィードフォワード制御およびフィードバック制御)により目標電圧を設定すると共に、目標電圧をPWM信号に変換する。更に、バルブ駆動部117は、PWM信号に基づいて図示しないスイッチング素子(トランジスタ)をスイッチング制御して第1、第2リニアソレノイドバルブ151,152の電磁部15eに電流を印加する。これにより、第1および第2リニアソレノイドバルブ151,152は、目標圧力Ptag1(i)またはPtag2(i)に応じた油圧を生成するように制御される。
【0040】
続いて、
図5から
図9を参照しながら、上述のロボット装置1の制御手順について説明する。以下、ロボット装置1のハンド部4を把持対象まで移動させ、ハンド部4に把持対象を把持させて移送させるケースを例にとってロボット装置1の制御手順について説明する。
【0041】
本実施形態において、ロボット装置1の制御装置100は、ロボットアーム2の手先すなわちハンド部4と把持対象とが仮想的なバネおよびダンパを介して連結され、当該仮想的なバネおよびダンパが発生する引張力Ftによりハンド部4が現在位置から把持対象あるいは当該把持対象の移送先まで引っ張られるとの仮定のもとで設計されている。かかる仮定のもとでは、仮想的なバネおよびダンパによる引張力Ft=(fx,fy,fz)が、ハンド部4(予め定められた基準点)の目標位置(xd(t),yd(t),zd(t))と当該ハンド部4の現在位置(x(t),y(t),z(t))とから、いわゆるPD制御(フィードバック制御)の関係式である次式(1)のように、目標位置と現在位置との差にゲインKpx,KpyまたはKpzを乗じた比例項と、ゲインKvx,KvyまたはKvzを含む速度項との和として表すことができる。
【0042】
【0043】
また、ハンド部4が把持対象に接触した状態では、把持対象に対する手先の速度はゼロになるから、上記式(1)より、ハンド部4が仮想的なバネおよびダンパによる引っ張られることで把持対象との接触後に当該把持対象に加える押圧力Fpは、接触後の目標位置と把持対象の位置(ハンド部4と把持対象との接触位置)とから求めることができる。従って、ハンド部4の最終的な目標到達位置(xr,yr,zr)は、接触後にハンド部4から把持対象に加えられる押圧力Fp=(fpx,fpy,fpz)と、把持対象の位置(接触位置)(xo,yo,zo)と、ゲインKpx,Kpy,Kpzとから、次式(2)のように表すことができる。
【0044】
【0045】
そして、ロボット装置1では、ロボットアーム2の作動開始に先立って(ハンド部4の移動開始前に)、
図5のルーチンが制御装置100の目標位置設定部101により実行され、ハンド部4の最終的な目標到達位置(x
r,y
r,z
r)と、初期位置から目標到達位置(x
r,y
r,z
r)までのハンド部4の目標軌道が設定される。
図5のルーチンの開始に際して、制御装置100の目標位置設定部101は、把持対象の位置(x
o,y
o,z
o)と、ユーザにより与えられているハンド部4の移動中の目標速度および目標加速度とを取得する(ステップS1)。把持対象の位置(x
o,y
o,z
o)は、それが予め判明している場合、ロボット装置1のユーザにより制御装置100に入力されてもよく、ロボットアーム2の作動開始前にカメラ等により取得されたデータから導出されたものであってよい。
【0046】
次いで、目標位置設定部101は、上記式(2)に従って、ハンド部4と把持対象との接触後に当該ハンド部4から把持対象に予め定められた押圧力Fpが加えられるハンド部4の目標到達位置(x
r,y
r,z
r)を設定する(ステップS2)。ロボット装置1において、式(2)における押圧力Fp=(f
px,f
py,f
pz)は、把持対象の材質や強度、サイズといった諸元から、当該把持対象を破壊することなくハンド部4を把持対象に接触させるように把持対象の位置(x
o,y
o,z
o)のばらつき等を考慮して予め定められる。更に、目標位置設定部101は、ステップS1にて取得したハンド部4の目標速度および目標加速度と、ステップS2にて設定した目標到達位置(x
r,y
r,z
r)とに基づいて、予め定められた数(複数)の目標位置すなわち経由位置(3次元座標)を含むハンド部4の目標軌道を設定し(ステップS3)、
図5のルーチンを終了させる。
【0047】
また、ロボット装置1では、把持対象の位置に応じた目標到達位置および目標軌道が設定された後、把持対象の移送先(把持対象の載置面)に応じた目標到達位置および目標軌道を設定するために再度
図5のルーチンが目標位置設定部101により実行される。この際、目標位置設定部101は、ハンド部4により把持された把持対象(手先)と載置面(対象)との接触後に当該ハンド部4から把持対象を介して載置面(対象)に予め定められた押圧力Fpが加えられるハンド部4の目標到達位置(x
r,y
r,z
r)を設定する。
【0048】
図6は、目標到達位置および目標軌道が設定された後、制御装置100により実行されるロボットアーム制御ルーチンを例示するフローチャートである。
図6のルーチンは、
図5のルーチンの完了後、ユーザによる実行指示に応じて、制御装置100により所定時間(例えば10ms程度)おきに繰り返し実行される。
【0049】
図6のルーチンの開始に際して、制御装置100のトルク演算部103(目標トルク設定部105)と目標剛性設定部106とは、それぞれ目標位置設定部101により設定された目標位置を取得する(ステップS10)。ステップS10にて取得される目標位置は、目標軌道における1番目の目標位置または
図6のルーチンの前回実行時に取得された目標位置である。また、制御装置100の現在位置導出部102および重力補償部104は、複数の関節角度センサ7により取得された関節J1-J3の関節角度θ1-θ3を取得する(ステップS20)。現在位置導出部102は、取得した関節角度θ1-θ3とロボットアーム2(ロボット装置1)の諸元とに基づいて、ハンド部4の現在位置(3次元座標)を導出し(ステップS30)、導出した現在位置をトルク演算部103に与える。
【0050】
制御装置100のトルク演算部103(目標トルク設定部105)は、ハンド部4の現在位置が前回位置から変化しているか否か(ハンド部4が移動しているか否か)を判定する(ステップS40)。トルク演算部103は、ハンド部4の現在位置が前回位置から変化していると判定した場合(ステップS40:YES)、更に、当該現在位置が目標位置に実質的に一致しているか否かを判定する(ステップS50)。現在位置が目標位置に実質的に一致していると判定した場合(ステップS50:YES)、トルク演算部103は、ステップS10にて取得した目標位置の次の目標位置を取得する(ステップS60)。当該次の目標位置は、目標剛性設定部106にも与えられ、目標剛性設定部106は、取得した目標位置等に基づいて、各関節Jiの目標剛性R(i)を設定する。また、ハンド部4の現在位置が目標回位置に実質的に一致していない場合、ステップS60の処理は、スキップされる。
【0051】
ステップS50またはS60の処理の後、制御装置100の目標トルク設定部105は、各関節Jiについての目標トルクTtag(i)を設定する(ステップS70)。
図7は、ステップS70における目標トルク設定部105による目標トルクTtag(i)の設定手順を例示するフローチャートである。同図に示すように、目標トルク設定部105のトルク演算部103は、まず、ステップS10にて取得したハンド部4の目標位置に基づいて上述のゲインK
px,K
pyおよびK
pzを設定する(ステップS700)。ステップS700において、トルク演算部103は、ステップS10にて取得した目標位置が予め定められた目標位置(例えば、ハンド部4が減速し始める位置)になるまでゲインK
px,K
pyおよびK
pzの各々を予め定められた通常値に設定し、ステップS10にて取得した目標位置が予め定められた目標位置になった以降、ゲインK
px,K
pyおよびK
pzの各々を上記通常値よりも小さい値に設定する。
【0052】
次いで、トルク演算部103は、ステップS10にて取得したハンド部4の目標位置と、ステップS30にて取得したハンド部4の現在位置とに基づいて、上記式(1)から上述の仮想的なバネおよびダンパによる引張力Ft=(fx,fy,fz)を算出する(ステップS710)。なお、ステップS710では、次式(3)から引張力Ft=(fx,fy,fz)が算出されてもよく、式(1)および式(3)が併用されてもよい。式(3)を用いることで、ロボットアーム2(各関節Ji)の動き出しをよりスムースにすることができる。
【0053】
【0054】
また、トルク演算部103は、別途設定される人感フラグを取得し(ステップS720)、人感フラグがオフされているか否かを判定する(ステップS730)。人感フラグは、ロボット装置1の設置箇所あるいは無人搬送車等に配置された少なくとも1つの人感センサからの信号に基づいて制御装置100によりオンまたはオフされるものである。すなわち、制御装置100は、当該少なくとも1つの人感センサにより人の存在が検知されていない場合、人感センサをオフし、少なくとも1つの人感センサにより人の存在が検知された場合、人感センサをオンする。
【0055】
トルク演算部103は、人感フラグがオフされていると判定した場合(ステップS730:YES)、第1の力(ベクトル)Fu1を上記引張力Ftの上限値Fuに設定する(ステップS740)。また、トルク演算部103は、人感フラグがオンされていると判定した場合(ステップS730:NO)、上記第1の力Fu1よりも小さい第2の力(ベクトル)Fu2を引張力Ftの上限値Fuに設定する(ステップS745)。ステップS740またはS745の処理の後、トルク演算部103は、ステップS710にて設定した引張力Ftと上限値Fuとの小さい方を引張力Ftに設定(再設定)する(ステップS750)。
【0056】
更に、トルク演算部103は、次式(4)に示すように、ステップS750にて設定した引張力Ftと次式(5)に示すヤコビ行列とから、関節J1-J3ごとに、ハンド部4が現在位置から目標位置まで移動するように関節Jiを介して連結された2つのアーム3(アーム3および支持部材5)を相対的に回動させる関節トルクTj(i)を算出する(ステップS760)。そして、目標トルク設定部105は、上述のようにしてトルク演算部103により算出された関節トルクTj(i)と、重力補償部104により別途算出された重力補償トルクTc(i)との和を2つのアーム3等を相対的に回動させるための目標トルクTtag(1)-Ttag(3)に設定する(ステップS770)。
【0057】
【0058】
ステップS70(ステップS770)にて各関節Jiについての目標トルクTtag(i)が設定されると、制御装置100は、関節Jiすなわちアーム3ごとに複数の液圧アクチュエータMの目標圧力Ptag1(i)およびPtag2(i)を設定する(ステップS80)。
図8は、ステップS80における目標圧力Ptag1(i)およびPtag2(i)の設定手順を例示するフローチャートである。同図に示すように、制御装置100は、まず、変数iすなわち関節の番号を値1に設定する(ステップS800)。次いで、制御装置100の収縮力算出部108は、目標トルク設定部105により設定された関節Jiについての目標トルクTtag(i)と、目標剛性設定部106により設定された関節Jiの目標剛性R(i)とを取得する(ステップS810)。また、ステップS810において、制御装置100の収縮率設定部107は、対応する関節角度センサ7により検出された関節Jiの現在の関節角度θiを取得する。
【0059】
関節角度θiを取得した収縮率設定部107は、関節Jiに対応した上記第1の人工筋肉AM1を構成する2つの液圧アクチュエータMの収縮率Cr1(i)と、関節Jiに対応した上記第2の人工筋肉AM2を構成する2つの液圧アクチュエータMの収縮率Cr2(i)とを設定する(ステップS820)。ステップS820において、収縮率設定部107は、関節Jiの関節角度θiや、ロボットアーム2(ロボット装置1)の諸元(アーム3の寸法等)等に基づいて、第1の人工筋肉AM1を構成する2つの液圧アクチュエータMの収縮率Cr1(i)と、第2の人工筋肉AM2を構成する2つの液圧アクチュエータMの収縮率Cr2(i)とを導出・設定する。
【0060】
また、収縮力算出部108は、ステップS810にて取得した目標トルクTtag(i)および関節Jiの目標剛性R(i)に基づいて、関節Jiに対応した第1の人工筋肉AM1を構成する2つの液圧アクチュエータMに要求される収縮力(引張力)Fc1(i)と、当該関節Jiに対応した第2の人工筋肉AM2を構成する2つの液圧アクチュエータMに要求される収縮力(引張力)Fc2(i)とを算出する(ステップS830)。ここで、目標トルクTtag(i)と収縮力Fc1(i),Fc2(i)との間には、|Ttag(i)|=|r(Fc1(i)-Fc2(i))|という関係が成立する(ただし、“r”は、換算係数である。)。また、関節Jiの目標剛性R(i)と収縮力Fc1(i),Fc2(i)との間には、R(i)=Fc1(i)+Fc2(i)という関係が成立するとみなすことができる。従って、ステップS830において、収縮力算出部108は、これら2つの関係式から得られる連立方程式を解くことにより、目標トルクTtag(i)および関節Jiの目標剛性R(i)に対応した収縮力Fc1(i),Fc2(i)を算出する。
【0061】
ステップS820およびS830の処理の後、第1圧力設定部111は、
図9に例示する目標圧力設定マップから収縮率Cr1(i)と収縮力Fc1(i)とに対応した圧力を適宜線形補間を行いながら導出して関節Jiに対応した第1の人工筋肉AM1を構成する2つの液圧アクチュエータMの第1の仮目標圧力(第1圧力)である圧力Pa1(i)に設定する。(ステップS840)。また、ステップS840において、第1圧力設定部111は、当該目標圧力設定マップから収縮率Cr2(i)と収縮力Fc2(i)とに対応した圧力を導出して関節Jiに対応した第2の人工筋肉AM2を構成する2つの液圧アクチュエータMの第1の仮目標圧力(第1圧力)である圧力Pa2(i)に設定する。
【0062】
図9の目標圧力設定マップは、人工筋肉としての液圧アクチュエータMの静特性を示すものであり、液圧アクチュエータM(チューブT)に供給される油圧ごとに、チューブTの収縮率と当該チューブTが発生する収縮力との関係を規定するように予め実験・解析を経て作成されたものである。また、ロボット装置1の各液圧アクチュエータMは、作動油の圧力によって膨張および収縮するチューブTを含むものであり、チューブT内の油圧および収縮率が同一であっても、当該チューブTが軸方向に収縮するときと軸方向に伸長するときとで発生する収縮力が異なるという、いわゆるヒステリシス特性を有する。これを踏まえて、ロボット装置1の目標圧力設定マップは、チューブTに供給される油圧ごとに、軸方向に収縮するチューブTの収縮率(
図9における一点鎖線参照)と軸方向に伸長するチューブTの収縮率(
図9における二点鎖線参照)とが同一になったときに両者が発生する収縮力の平均をとることにより作成されている。これにより、目標圧力の設定に用いられる目標圧力設定マップをより実用性の高いものとすることが可能となる。
【0063】
第1圧力設定部111により設定された圧力Pa1(i),Pa2(i)は、目標圧力設定部115に与えられ、目標圧力設定部115は、更に、第2圧力設定部112により別途設定された第2の仮目標圧力(第2圧力)である圧力Pb1(i),Pb2(i)を取得する(ステップS850)。目標圧力設定部115は、第1圧力設定部111により設定された圧力Pa1(i)と、第2圧力設定部112により設定された圧力Pb1(i)とのうちの大きい方を関節Jiに対応した第1の人工筋肉AM1を構成する2つの液圧アクチュエータMの目標圧力Ptag1(i)に設定する(ステップS860)。また、ステップS860において、目標圧力設定部115は、第1圧力設定部111により設定された圧力Pa2(i)と、第2圧力設定部112により設定された圧力Pb2とのうちの大きい方を関節Jiに対応した第2の人工筋肉AM2を構成する2つの液圧アクチュエータMの目標圧力Ptag2(i)に設定する。
【0064】
ステップS860にて目標圧力Ptag1(i)およびPtag2(i)を設定すると、制御装置100は、変数iをインクリメントし(ステップS870)、変数iが値N+1以上であるか否かを判定する(ステップS880)。値Nは、ロボットアーム2における関節の数を示し、本実施形態では、N=3である。制御装置100は、変数iが値N+1未満であると判定した場合(ステップS880:NO)、上記ステップS810-S880の処理を再度実行する。制御装置100により変数iが値N+1以上であると判定されると(ステップS880;YES)、
図6に示すように、電流指令値設定部116は、図示しないマップ等を用いて、各関節Jiの目標圧力Ptag1(i)およびPtag2(i)の各々を電流指令値に直接変換する(ステップS90)。電流指令値設定部116により導出された電流指令値は、バルブ駆動部117に与えられ、バルブ駆動部117は、当該電流指令に基づいて、それぞれ複数の第1および第2リニアソレノイドバルブ151,152を制御(PWM制御)する(ステップS100)。
【0065】
これにより、目標トルクTtag(i)に応じた液体供給装置10への電流指令値が容易かつ速やかに設定され、当該電流指令値に基づいて制御される液体供給装置10の第1および第2リニアソレノイドバルブ151,152の各々は、対応する目標圧力Ptag1(i)またはPtag2(i)に応じた油圧を生成する。更に、第1および第2リニアソレノイドバルブ151,152により調圧された作動油は、第1および第2供給遮断弁161,162を介して対応する液圧アクチュエータMのチューブTに供給される。この結果、流量制御弁により作動油の流量を調整してチューブT内に供給したり、チューブTに供給される油圧を圧力センサにより検出して実油圧が目標圧力に一致するように流量制御弁をフィードバック制御したりする場合に比べて、目標圧力Ptag1(i),Ptag2(i)の設定から短時間のうちに、各チューブTに供給される油圧を当該目標圧力Ptag1(i),Ptag2(i)に実質的に一致させ、各チューブTの実際の収縮率を要求値に応答性よく高精度に追従させることが可能となる。制御装置100は、ステップS100の処理の後、
図6のルーチンを一旦終了させ、次の実行タイミングの到来に応じて再度ステップS10以降の処理を実行する。
【0066】
一方、
図6のステップS40にて、トルク演算部103によりハンド部4の現在位置が前回位置から実質的に変化していないと判定されると、制御装置100は、ハンド部4が把持対象に接触したとみなして
図6のルーチンを終了させ、ハンド部4に把持対象を把持させるためのハンド制御ルーチンを実行する。また、制御装置100の目標位置設定部101は、ハンド部4により把持対象が把持されるまでに、
図5のルーチンを実行して把持対象の載置位置に応じた目標到達位置および目標軌道を設定する。そして、ハンド部4により把持対象が把持されてハンド制御ルーチンが完了すると、制御装置100は、ロボットアーム2により把持対象を載置位置まで搬送すべく、
図6のルーチンを再度実行する。
【0067】
引き続き、
図10を参照しながら、第2圧力設定部112による第2の仮目標圧力(第2圧力)としての圧力Pb1(i),Pb2(i)の算出手順について説明する。
【0068】
図10の一連の処理は、第2圧力設定部112により、
図8のステップS800-S840の処理と並行して実行されるものである。図示するように、第2圧力設定部112は、まず変数iすなわち関節の番号を値1に設定する(ステップS900)。次いで、第2圧力設定部112は、目標角度算出部109により算出された関節Jiの目標角度θtag(i)および関節角度センサ7により検出された関節Jiの現在の関節角度θiを取得する(ステップS910)。更に、第2圧力設定部112は、取得した目標角度θtag(i)に基づいて目標角度変化量Δθtag(i)を算出すると共に、取得した関節角度θに基づいて関節角度変化量Δθiを算出する(ステップS920)。目標角度変化量Δθtag(i)は、ステップS910にて取得される目標角度θtag(i)と
図10のルーチンの前回実行時に取得された目標角度θtag(i)との差をとることにより算出され、関節角度変化量Δθiは、ステップS910にて取得される関節角度θiと
図10のルーチンの前回実行時に取得された関節角度θiとの差をとることにより算出される。
【0069】
ステップS920の処理の後、第2圧力設定部112は、算出した目標角度変化量Δθtag(i)が予め定められた閾値α以上であるか否かを判定する(ステップS930)。目標角度変化量Δθtag(i)が閾値α以上であると判定した場合(ステップS930:YES)、第2圧力設定部112は、ステップS920にて算出した関節角度変化量Δθiが予め定められた閾値β以上であるか否かを判定する(ステップS940)。目標角度変化量Δθtag(i)が閾値α以上であり、かつ関節角度変化量Δθiが閾値β以上であると判定した場合(ステップS940:YES)、第2圧力設定部112は、関節角度θiの目標角度θtag(i)に対する追従性が許容範囲内にあるとみなし、第2の仮目標圧力(第2圧力)としての圧力Pb1(i)およびPb2(i)にゼロを設定する(ステップS950)。また、目標角度変化量Δθtag(i)が閾値α未満であると判定した場合も(ステップS930:NO)、圧力Pb1(i)およびPb2(i)にゼロを設定する(ステップS950)。
【0070】
これに対して、関節角度変化量Δθiが閾値β未満であると判定した場合(ステップS940:NO)、第2圧力設定部112は、関節角度θiの目標角度θtag(i)に対する追従性が許容範囲外にあるとみなし、ステップS910にて取得した目標角度θtag(i)と関節角度θiとの角度差(=θtag(i)-θi)に基づいて第2の仮目標圧力(第2圧力)としての圧力Pb1(i)およびPb2(i)を設定する(ステップS955)。本実施形態では、目標角度θtag(i)と関節角度θiとの角度差と、当該角度差を無くすのに要求される第1および第2の人工筋肉AM1,AM2への供給油圧との関係を規定する図示しない圧力設定マップが予め作成されている。当該圧力設定マップは、角度差が大きいほど第1および第2の人工筋肉AM1,AM2への供給油圧を高くするものである。ステップS955において、第2圧力設定部112は、当該圧力設定マップから目標角度θtag(i)と関節角度θiとの角度差に応じた第1の人工筋肉AM1への供給油圧を導出して圧力Pb1(i)に設定すると共に、当該圧力設定マップから当該角度差に応じた第2の人工筋肉AM2への供給油圧を導出して圧力Pb2(i)に設定する。これにより、ステップS955にて第2の仮目標圧力(第2圧力)としての圧力Pb1(i)およびPb2(i)が設定された際には、圧力Pb1(i)およびPb2(i)が第1の仮目標圧力(第1圧力)としての圧力Pa1(i)またはPa2(i)よりも大きくなり、当該圧力Pb1(i)およびPb2(i)が
図8のステップS860にて目標圧力Ptag1(i)またはPtag2(i)に設定されることになる。
【0071】
ステップS950またはS955にて圧力Pb1(i)およびPb2(i)を設定すると、第2圧力設定部112は、変数iをインクリメントし(ステップS960)、変数iが値N+1以上であるか否かを判定する(ステップS970)。第2圧力設定部112は、変数iが値N+1未満であると判定した場合(ステップS970:NO)、上記ステップS910-S970の処理を再度実行する。また、第2圧力設定部112は、変数iが値N+1以上であると判定した場合(ステップS970:YES)、
図10の一連の処理を一旦終了させ、次の実行タイミングの到来に応じて再度ステップS900以降の処理を実行する。
【0072】
以上説明したように、本開示のロボット装置1は、それぞれ作動油(液体)の供給を受けて作動すると共に、関節Jiを介して連結された2つのアーム3等を相対的に回動させる複数の液圧アクチュエータ(人工筋肉)Mと、当該複数の液圧アクチュエータMに液体を供給する液体供給装置10と、当該液体供給装置10を制御する制御装置100とを含む。また、制御装置100は、予め定められた液圧アクチュエータMの静特性を示す目標圧力設定マップを用いて各液圧アクチュエータMに供給される油圧の第1の仮目標圧力(第1圧力)である圧力Pa1(i)、Pa2(i)を設定する(
図8のステップS840)。更に、制御装置100は、関節Jiの現在の関節角度θiの目標角度θtag(i)に対する追従性に応じて、ゼロまたは目標角度θtag(i)と関節角度θiとの差に応じた圧力を各液圧アクチュエータMに供給される油圧の第2の仮目標圧力(第2圧力)である圧力Pb1(i),Pb2(i)に設定する(
図10のステップS950,S955)。そして、制御装置100は、圧力Pa1(i)と圧力Pb1(i)とのうちの大きい方と、圧力Pa2(i)と圧力Pb2(i)とのうちの大きい方とを各液圧アクチュエータMの目標圧力Ptag1(i),Ptag2(i)に設定し、当該目標圧力Ptag1(i),Ptag2(i)に基づいて液体供給装置10を制御する(
図8のステップS860、
図6のステップS90-S100)。
【0073】
すなわち、制御装置100は、基本的に、液圧アクチュエータMの静特性を示す目標圧力設定マップから導出された圧力を目標圧力Ptag1(i),Ptag2(i)に設定し、当該目標圧力Ptag1(i),Ptag2(i)に基づいて液体供給装置10を制御する。一方、関節Jiの現在の関節角度θiの目標角度θtag(i)に対する追従性が許容範囲外にあるときには、制御装置100は、目標角度θtag(i)と現在角度θiとの差に基づいて導出された圧力を目標圧力Ptag1(i),Ptag2(i)に設定し、当該目標圧力Ptag1(i),Ptag2(i)に基づいて液体供給装置10を制御する。これにより、ヒステリシス特性に起因して、人工筋肉としての液圧アクチュエータMから実際に出力される力が上記静特性を示す目標圧力設定マップを用いて設定された目標圧力Ptag1(i),Ptag2(i)に対応する力よりも小さくなるときに、目標角度θtag(i)と現在角度θiとの差を無くすように目標圧力Ptag1(i),Ptag2(i)を設定してロボット装置1の動作不良を抑制することが可能となる。更に、ロボット装置1では、
図9に関連して説明したように、目標圧力Ptag1(i),Ptag2(i)の設定に用いられる目標圧力設定マップに液圧アクチュエータMのヒステリシス特性を完全に反映させる必要が無くなり、補正値の適合や煩雑な目標圧力Ptag1(i),Ptag2(i)の補正処理等が不要となる。この結果、適合処理や実際の制御を煩雑化させることなく、ヒステリシス特性を有する複数の液圧アクチュエータMを含むロボット装置1を適正に作動させることが可能となる。
【0074】
また、ロボット装置1では、関節Jiの現在の関節角度θiの目標角度θtag(i)に対する追従性が許容範囲外にあるときに、制御装置100により、目標角度θtag(i)と現在角度θiとの差が大きくなるにつれて高くなるように目標圧力Ptag1(i),Ptag2(i)が設定されることになる(
図10のステップS955、
図8のステップS860)。これにより、目標角度θtag(i)と現在角度θiとの差を無くすように各液圧アクチュエータMに収縮力を発生させて、当該液圧アクチュエータMのヒステリシス特性に起因するロボット装置1の動作不良の良好に抑制することが可能となる。
【0075】
更に、液圧アクチュエータMの静特性を示す目標圧力設定マップは、当該液圧アクチュエータMのチューブTに供給される油圧ごとにチューブTの収縮率とチューブTの収縮により発生する収縮力との関係を規定するように、チューブTに供給される液圧ごとに、軸方向に収縮するチューブTの収縮率と軸方向に伸長するチューブTの収縮率とが同一になったときに両者が発生する収縮力の平均をとることにより作成される。
【0076】
これにより、目標圧力Ptag1(i),Ptag2(i)の設定に用いられる目標圧力設定マップをより実用性の高いものとすることが可能となる。ただし、目標圧力設定マップは、このようなもの限られず、油圧ごとのチューブTの収縮率を示す曲線は、軸方向に収縮するチューブTの収縮率を示す曲線(
図9における一点鎖線参照)よりも上側かつ軸方向に伸長するチューブTの収縮率を示す曲線(
図9における二点鎖線参照、線上を含む)までの範囲に含まれていればよい。
【0077】
また、制御装置100は、関節Jiを介して連結された2つのアーム3等を相対的に回動させるための目標トルクTrag(i)を設定する目標トルク設定部105と、関節Jiの現在の関節角度θiに基づいて各液圧アクチュエータMの収縮率Cr1(i),Cr2(i)を設定する収縮率設定部107と、目標トルク設定部105により設定された目標トルクTrag(i)に基づいて各液圧アクチュエータMの収縮率Fc1(i),Fc2(i)を算出する収縮力算出部108と、目標圧力設定マップ(静特性)を用いて収縮率設定部107により設定された収縮率Cr1(i),Cr2(i)と収縮力算出部108により算出された収縮力Fc1(i),Fc2(i)とに対応した圧力(第1圧力)Pa1(i),Pa2(i)を設定する第1圧力設定部111と、関節角度θiの目標角度θtag(i)に対する追従性が許容範囲内にあるときに圧力(第2圧力)Pb1(i),Pb2(i)にゼロを設定すると共に、当該追従性が許容範囲外にあるときに目標角度θtag(i)と関節角度θiとの角度差に基づいて圧力Pb1(i),Pb2(i)を設定する第2圧力設定部112と、圧力Pa1(i)と圧力Pb1(i)とのうちの大きい方と、圧力Pa2(i)と圧力Pb2(i)とのうちの大きい方とを目標圧力Ptag1(i),Ptag2(i)に設定に設定する目標圧力設定部115とを含む。これにより、目標トルクTtag(i)から各液圧アクチュエータMに供給される油圧の目標圧力Ptag1(i),Ptag2(i)を適正に設定することが可能となる。
【0078】
なお、ロボット装置1において、2つのアーム3等は、第1の人工筋肉AM1を構成する2つの液圧アクチュエータMと、当該2つの液圧アクチュエータMと互いに拮抗するように配置された第2の人工筋肉AM2を構成する他の2つの液圧アクチュエータMとにより相対的に回動させられるが、これに限られるものではない。すなわち、関節Jiを介して連結された2つのアーム3等に必ずしも対をなす複数の液圧アクチュエータ(人工筋肉)Mが設けられる必要はなく、当該2つのアーム3等には、1つまたは複数の液圧アクチュエータMと、当該液圧アクチュエータMと拮抗するように配置されるスプリングやゴム材等の弾性体とが連結されてもよい。
【0079】
また、ロボット装置1において、制御装置100の収縮力算出部108は、目標トルク設定部105により設定された目標トルクTtag(i)と、目標剛性設定部106により設定された目標剛性R(i)とに基づいて液圧アクチュエータMの収縮力Fc1(i),Fc2(i)を算出するが、これに限られるものではない。すなわち、少なくともロボット装置1のハンド部4の目標位置に基づいて関節Jiに対応した上記第1および第2の人工筋肉AM1,AM2の一方を構成する2つの液圧アクチュエータMに発生させる収縮力Fc1(i)が設定されてもよく、目標トルクTtag(i)と収縮力Fc1(i)とに基づいて当該第1および第2の人工筋肉AM1,AM2の他方を構成する2つの液圧アクチュエータMに発生させる収縮力Fc2(i)が設定されてもよい。また、ロボット装置1において、目標トルクTtag(i)等に応じて、予め定められた一定の圧力が関節Jiに対応した第1および第2の人工筋肉AM1,AM2の一方を構成する2つの液圧アクチュエータMの目標圧力Ptag1(i)に設定されてもよく、目標トルクTtag(i)と目標圧力Ptag1(i)とに基づいて当該第1および第2の人工筋肉AM1,AM2の他方を構成する2つの液圧アクチュエータMの目標圧力Ptag2(i)が設定されてもよい。
【0080】
更に、液体供給装置10において、第1および第2リニアソレノイドバルブ151,152が、電磁部に供給される電流に応じた信号圧を出力するリニアソレノイドバルブ(あるいはオンオフソレノイドバルブ)と、当該信号圧に応じて作動油を調圧するコントロールバルブとで置き換えられてもよい。また、第1および第2リニアソレノイドバルブ151,152は、対応する液圧アクチュエータMに供給される液圧(油圧)が目標圧力になるように制御される流量制御弁で置き換えられてもよい。更に、液体供給装置10から元圧生成バルブ14が省略されてもよい。また、ポンプ13により発生させられた油圧を蓄えるアキュムレータ(蓄圧器)が液体供給装置10に設けられてもよい。更に、液体供給装置10は、水等の作動油以外の液体を液圧アクチュエータMに供給するように構成されてもよい。
【0081】
また、上記実施形態において、人工筋肉としての液圧アクチュエータMは、内部に作動油が供給されると共に当該内部の油圧の上昇に応じて径方向に膨張しながら軸方向に収縮するチューブTと、当該チューブTを覆う編組スリーブSとを含むマッキベン型の人工筋肉であるが、ロボット装置1における液圧アクチュエータMの構成は、これに限られるものではない。すなわち、液圧アクチュエータMは、液体が供給された際に径方向に膨張しながら軸方向に収縮するチューブを含むものであればよく、例えば弾性体により形成された内側筒状部材と、弾性体により形成されると共に内側筒状部材の外側に同軸に配置され外側筒状部材と、内側筒状部材と外側筒状部材との間に配置された繊維層とを含む軸方向繊維強化型の液圧アクチュエータ(例えば、特開2011-137516号参照)であってもよい。更に、液圧アクチュエータMは、シリンダおよびピストンを含む液体シリンダであってもよい。
【0082】
そして、ロボット装置1は、少なくとも1つの液圧アクチュエータMとハンド部4とを有するロボットアーム2を含むものに限られず、少なくとも1つの液圧アクチュエータMと、例えばドリルビット等の工具や例えばスイッチ等を押圧する押圧部材といったハンド部4以外の要素が手先に取り付けられたロボットアームとを含むものであってもよい。また、ロボット装置1は、歩行ロボットや、ウェアラブルロボット等であってもよい。更に、ロボット装置1は、関節を1つだけ含むものであってもよく、人工筋肉としての液圧アクチュエータMを1つだけ含むものであってもよい。
【0083】
また、本開示の発明は上記実施形態に何ら限定されるものではなく、本開示の外延の範囲内において様々な変更をなし得ることはいうまでもない。更に、上記実施形態は、あくまで発明の概要の欄に記載された発明の具体的な一形態に過ぎず、発明の概要の欄に記載された発明の要素を限定するものではない。
【産業上の利用可能性】
【0084】
本開示の発明は、人工筋肉を含むロボット装置の製造産業等において利用可能である。
【符号の説明】
【0085】
1 ロボット装置、2 ロボットアーム(ロボット本体)、3 アーム(リンク)、4 ハンド部、5 支持部材(リンク)、6 連結部材、7 関節角度センサ、10 液体供給装置、151 第1リニアソレノイドバルブ(調圧装置)、152 第2リニアソレノイドバルブ(調圧装置)、15d ドレンポート、15e 電磁部、15f フィードバックポート、15i 入力ポート、15o 出力ポート、15s スプール、SP スプリング、100 制御装置、101 目標位置設定部(目標到達位置設定部、目標軌道設定部)、103 トルク演算部、104 重力補償部、105 目標トルク設定部、106 目標剛性設定部、107 収縮率設定部、108 収縮力算出部、111 第1圧力設定部、 112 第2圧力設定部、115 目標圧力設定部、116 電流指令値設定部(指令値設定部)、AM1 第1の人工筋肉、AM2 第2の人工筋肉、Cr1(i),Cr2(i) 収縮率、Fc1(i),Fc2(i) 収縮力、Fp 押圧力、Ft 引張力、Fu 上限値、J1,J2,J3,Ji 関節、Kpx,Kpy,Kpz,Kvx,Kvy,Kvz ゲイン、M 液圧アクチュエータ(人工筋肉)、Ptag1(i),Ptag2(i) 目標圧力、R(i) 目標剛性、S 編組スリーブ、Tj(i) 関節トルク、T チューブ、Ttag(i) 目標トルク、θi 関節角度。