JP2004082243A - アクチュエータ制御装置及びアクチュエータの制御方法 - Google Patents
アクチュエータ制御装置及びアクチュエータの制御方法 Download PDFInfo
- Publication number
- JP2004082243A JP2004082243A JP2002244763A JP2002244763A JP2004082243A JP 2004082243 A JP2004082243 A JP 2004082243A JP 2002244763 A JP2002244763 A JP 2002244763A JP 2002244763 A JP2002244763 A JP 2002244763A JP 2004082243 A JP2004082243 A JP 2004082243A
- Authority
- JP
- Japan
- Prior art keywords
- state
- actuator
- control command
- motor
- adjustment component
- 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.)
- Pending
Links
Images
Landscapes
- Manipulator (AREA)
- Control Of Position Or Direction (AREA)
Abstract
【課題】アクチュエータが駆動する可動部におけるコンプライアンスの調整を簡便な回路構成により実現する。
【解決手段】ホスト装置により与えられた制御指令Yrに基づいてアクチュエータを駆動制御し、これにより出力状態Xが得られる実モデルM1に対して、実モデルM1の運動特性と同じ特性を有する数学モデルM2によって実際に得られると推定される状態Xmを演算出力する。そして、実際の出力状態Xと数学モデルM2によって得られた推定状態Xmとの差に応じた調整成分Fdm(外力Fdに相当する)制御指令Yrに重畳することによってアクチュエータを制御する。
【選択図】 図1
【解決手段】ホスト装置により与えられた制御指令Yrに基づいてアクチュエータを駆動制御し、これにより出力状態Xが得られる実モデルM1に対して、実モデルM1の運動特性と同じ特性を有する数学モデルM2によって実際に得られると推定される状態Xmを演算出力する。そして、実際の出力状態Xと数学モデルM2によって得られた推定状態Xmとの差に応じた調整成分Fdm(外力Fdに相当する)制御指令Yrに重畳することによってアクチュエータを制御する。
【選択図】 図1
Description
【0001】
【発明の属する分野】
本発明は、例えばロボットにおける関節部を駆動する場合に適用して好適であり、機械的構造の可動部を駆動する各種アクチュエータの動作を制御するアクチュエータ制御装置、及びアクチュエータ制御方法に関する。
【0002】
【従来の技術】
人間の動作に似せた運動を行う機械装置は、「ロボット」と称されている。ロボットは、従来から、工場における生産作業の自動化・省力化を目的として、例えば各種マニピュレータや搬送ロボットといった産業用ロボットとしての形態で広く利用されている。また、近年では、従来からの利用形態である産業用途のロボットだけでなく、一般家庭内での利用を想定したコミュニケーション能力が高いロボット、すなわち、いわゆる人間型ロボットやペット型ロボットの普及が注目されている。
【0003】
ロボットは、所望とする運動を行うために複数の関節部を有しており、それぞれの関節部毎に、この関節部を駆動するための駆動系が備えられている。この駆動系は、一般に、関節部を駆動するアクチュエータと、アクチュエータの変位を測定するエンコーダと、エンコーダによって測定された変位をフィードバックしながら主制御部から要求された指示に応じてアクチュエータの駆動を制御する制御回路によって構成されている。そして、主制御部によって、複数の関節部の駆動系を統括的に制御することにより、ロボットが全体として所望とする運動・動作を行うように制御される。
【0004】
【発明が解決しようとする課題】
ところで、従来のロボットにおいては、アクチュエータの駆動を制御するに際して、フィードバック制御系に強固なサーボがかけられており、主制御部からの制御指令に対して極めて忠実に動作するような制御が行われている。このため、以下で説明するような問題があった。
【0005】
例えば、ロボットに卵などの損傷しやすい物体をつかむ動作をさせる場合には、この物体を損傷させない程度で、且つ確実につかむことが可能な程度の力を発揮することが必要となる。また、例えばロボットに歩行動作させる場合には、歩行面に存在する障害物に足を降ろしてしまったときに、この障害物を避けた位置に足を降ろす動作をさせることが必要となる。
【0006】
このような場合に対応するために、従来のロボットは、例えば手足の先端部などに圧力センサを設けて、この圧力センサにより得られた情報を主制御部で処理し、主制御部からの制御指令に基づいて各関節部を駆動制御している。
【0007】
しかしながら、この場合には、圧力センサが設けられた位置でしか物体に接したことが判断できず、圧力センサが設けられていない位置で物体に接触した場合には、この物体を考慮した駆動制御を行うことができない。したがって、例えば卵を手でつかむという動作を行うに際して圧力センサが設けられていない部分で卵をつぶしてしまったり、歩行時に障害物を検知することができずに転倒してしまうなどの虞があった。
【0008】
また、近年では、例えば人間と握手する動作を行う場合のように、外部から加えられた力に倣って各関節部を動作させるといった具合に、機械的に柔軟性を有するロボットを実現することが求められている。
【0009】
このような柔軟性をロボットに具備するための手法のひとつとして、センサにより検出されたアクチュエータ電流に基づいて外力を推定し、推定した外力に応じた制御指令を主制御部から発することにより各関節部を駆動制御する手法が従来から提案されている。しかしながら、この手法では、関節部に働く自己の慣性モーメントによる力と外力とを区別することができず、外力を正しく推定することができないといった問題があった。このため、外力に倣ったなめらかな動作を実現することが困難である。
【0010】
また、他の手法としては、ロボットの各部に取り付けた位置センサや加速度センサなどにより得られた情報に基づいて外力を推定する手法が従来から提案されている。しかしながら、この場合には、自己の慣性モーメントによる力と外力とを区別して外力を推定するために、高度で複雑な演算処理を行う必要が生じる。したがって、外力に倣って柔軟な動作を実現するためには、複雑な演算処理を高速に処理することが可能な大規模で高価な演算回路が必要となってしまうといった問題があった。
【0011】
そこで本発明は、上述した従来の実情に鑑みてなされたものであり、アクチュエータを外力に倣って駆動制御するに際して、簡便な構成により低コストで実現することが可能なアクチュエータ制御装置、及びアクチュエータ制御方法を提供することを目的とする。
【0012】
【課題を解決するための手段】
本発明の請求項1に係るアクチュエータ制御装置は、ホスト装置から与えられた制御指令に基づいて、可動部を駆動するアクチュエータを制御するアクチュエータ制御装置において、上記制御指令に基づいて上記アクチュエータを制御したときに得られると推定される上記可動部の状態と、上記可動部の実際の状態との差に応じた調整成分を、上記制御指令に重畳して上記アクチュエータに制御することを特徴とするものである。
【0013】
また、本発明の請求項2に係るアクチュエータ制御装置は、ホスト装置から与えられた制御指令に基づいて、可動部を駆動するアクチュエータを制御するアクチュエータ制御装置において、上記制御指令に基づいて上記アクチュエータを制御したときに得られると推定される上記可動部の状態を演算出力する状態推定手段と、上記可動部の実際の状態を検出する検出器からの出力と上記状態推定手段からの出力との差に応じた調整成分を出力するコンプライアンス調整手段と、上記制御指令に対して上記コンプライアンス調整手段からの出力を重畳する重畳手段とを備えることを特徴とするものである。
【0014】
さらに、本発明の請求項3に係るアクチュエータ制御方法は、ホスト装置から与えられた制御指令に基づいて、可動部を駆動するアクチュエータを制御するに際して、上記制御指令に基づいて上記アクチュエータを制御したときに得られると推定される上記可動部の状態を算出する状態推定ステップと、上記可動部の実際の状態を検出する状態検出ステップと、上記状態推定ステップにより得られた上記可動部の推定状態と、上記状態検出ステップにより得られた上記可動部の現在状態との差に応じて上記制御指令の調整成分を出力する調整成分出力ステップと、上記調整成分出力ステップにより得られた調整成分を上記制御指令に対して重畳した結果に基づいて上記アクチュエータの駆動を制御するアクチュエータ制御ステップとを有することを特徴とするものである。
【0015】
以上のように構成された本発明では、制御指令に基づいてアクチュエータを制御したときに得られると推定される状態と、アクチュエータによって駆動される可動部の実際の状態との差に応じた調整成分をホスト装置からの制御指令に重畳している。
【0016】
本発明において、可動部に外力が加わっていない場合には、推定された可動部の状態と実際の可動部の状態とは等しくなることから、これらの差は存在せず、調整成分も「0」となる。一方、可動部に外力が加わっている場合には、可動部の状態の推定にはホスト装置からの制御指令のみに基づいて行われ、外力の影響が考慮されていないことから、推定された可動部の状態と実際の可動部の状態とには差が生じ、この差に応じた調整成分が制御指令に重畳されることとなる。すなわち、大きな外力が加わっているときには大きな調整成分が制御指令に重畳され、小さな外力が加わっているときには小さな調整成分が制御指令に重畳される。本発明においては、この調整成分が外力が推定されたものに相当しており、この調整成分を制御指令に重畳することによって、外力が加わっている場合にはホスト装置からの制御指令に優先して、外力に倣ったアクチュエータの制御を行うことを実現している。すなわち、調整成分を制御指令に重畳することにより、アクチュエータが駆動を担当する可動部におけるコンプライアンスの調整を実現しているのである。
【0017】
なお、本発明における可動部の「状態」としては、例えば、可動部における回転変位、角速度、トルク、加速度、各加速度、或いは応力などのうちから任意のものを少なくともひとつ選択することができる。例えば、可動部の「状態」としての回転変位に基づいて制御を行う場合には、可動部の状態を検出する検出器として、この可動部における回転変位を検出するセンサを配設するとともに、このセンサからの出力と、この可動部における回転変位を推定した結果得られた出力とを用いて調整成分を出力する構成とすればよい。
【0018】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照しながら詳細に説明する。以下では、本発明の具体的な実施の形態について説明するに先立ち、本発明の原理について、図1に示すブロック図を参照しながら説明する。
【0019】
なお、図1に示すブロック図は、ロボットの関節部(可動部)を駆動するアクチュエータとしてのモータと、このモータの回転変位を検出するセンサと、ロボットに設けられた複数の関節部を統括制御するホスト装置から与えられた制御指令に応じてモータの駆動を制御する制御回路とによって制御系が構成されている場合を想定し、この制御回路で実現される制御内容の原理について模式的に示す図である。
【0020】
本制御系においては、図1に示すように、ホスト装置から与えられた制御指令Yrが現実の制御系である実モデルM1と、現実の制御系を数学的に演算処理する数学モデルM2とに入力される。
【0021】
実モデルM1においては、制御指令Yrがフィードフォワード定数Frを乗算されることにより、例えばモータを駆動する電流値uとしてモータに出力される。このとき、モータの状態は、以下で式1に示す状態方程式で表わすことができる。また、モータによる関節部の状態Yは、以下で式2に示す関係で表すことができる。
【0022】
【数1】
ここで、式1及び式2中に示すXは状態変数であり、A,B,C,Dはそれぞれ実際のモータの特性や関節部の構造などによって自ずと定まる定数である。このうち、定数B及び定数Dは、それぞれ、モータ回転軸に働く慣性モーメント及び粘性摩擦である。
【0023】
また、実モデルM1においては、モータに取り付けられたセンサによって得られたモータの状態Xと、制御指令Yrとの差にフィードバック定数Kが乗算されて、電流値uに対してフィードバックされている。
【0024】
一方、数学モデルM2においては、上述した実モデルM1に対応した演算処理が行われている。すなわち、制御指令Yrに対してフィードフォワード定数Frmを乗算した結果得られた仮想的な電流値umに基づいて、以下で式3及び式4に示す演算が行われている。
【0025】
【数2】
ここで、式3及び式4中に示すXmは、実モデルM1における状態変数Xに対応するものであり、この実際の状態変数Xを演算処理によって数学的に推定した結果得られたものである。また、Ymは、実モデルM1における関節部の状態Yを演算処理によって数学的に得たものである。また、式3及び式4中に示すA,B,C,Dはそれぞれ定数であり、実モデルM1における式1及び式2中の定数に対応している。
【0026】
さらに、数学モデルM2においては、式3に示す演算処理よって得られた状態Xmと、制御指令Yrとの差にフィードバック定数Kmが乗算されて、電流値umに対してフィードバックされている。
【0027】
ここで、数学モデルM2における定数Fm及び定数Kmは、それぞれ実モデルM1における定数F及び定数Kに対応しており、制御回路の設計段階で予め設定される値である。また、数学モデルM2において式3及び式4を演算処理する際に用いる定数A,B,C,Dは、モータ及び関節部を実際に駆動したときに得られる結果を予め測定するなどして求めておくことができる。
【0028】
また、本制御系は、実モデルM1における状態Xと、数学モデルM2により得られた状態Xmとを比較して実モデルM1のコンプライアンスを調整するコンプライアンス調整器Aが設けられている。
【0029】
コンプライアンス調整器Aは、センサによって得られた実際の状態Xと、数学モデルM2によって推定された状態Xmとの差を演算することによって、エラー信号eを生成し、このエラー信号eに対して所定の演算処理Fを施すことにより、モータの回転軸に加えられている外力Fdを推定して出力する。なお、図1中においては、この推定された外力をFdmとして示す。コンプライアンス調整器Aによって推定された外力Fdmは、制御指令Yrに対する調整成分として、実モデルM1の制御系に重畳されている。
【0030】
すなわち、コンプライアンス調整器Aは、実モデルM1から得られた実際の状態Xと、数学モデルM2により推定して得られた状態Xmとの差に基づいて、実モデルM1に加えられている外力Fdを推定してFdmとして出力している。そして、このFdmが実モデルM1における制御系に調整成分として重畳されていることから、実モデルM1に外力Fdが加えられている場合には、制御指令Yrに優先して外力Fdに倣った方向にモータが駆動されることとなる。すなわち、コンプライアンス調整器Aは、実モデルM1におけるモータ回転軸でのコンプライアンスを調整する機能を有しているといえる。
【0031】
なお、本制御系においては、モータや関節部の「状態」として、回転変位、角速度、トルク、加速度、各加速度、或いは応力などのうちから任意のものを少なくともひとつ選択して制御対象とすればよい。
【0032】
具体的には、例えばセンサがモータの回転変位を検出するタイプのものである場合には、モータの回転変位を状態Xとして制御対象とすればよい。この場合には、数学モデルM2で演算出力する状態Xmも、モータの回転変位を数学的な演算により推定したものとする。また、例えばセンサがモータ回転軸の角速度或いはトルクを検出するタイプのものである場合には、角速度或いはトルクを状態Xとして制御対象とする。この場合には、数学モデルM2で演算出力する状態Xmも、角速度或いはトルクを数学的な演算により推定したものとする。また、例えば、複数のセンサを用いて検出された2つ以上の状態(例えば、回転変位及びトルクの2つの状態)を制御対象とするとしてもよい。この場合には、上述した式1乃至式4は、これらの状態を変数とする行列式となる。
【0033】
また、上述においては、コンプライアンス調整器Aによってモータの実際の状態Xとモータの推定状態Xmとの差に基づいて調整成分を演算出力するして説明したが、コンプライアンス調整器Aにおいては、モータの状態ではなく、関節部の状態(すなわち状態Yや状態Ym)に基づいて調整成分を演算出力するとしてもよい。
【0034】
ここで、以上のように構成された本制御系によるモータの制御動作について、具体的な例を挙げながら説明する。以下での説明においては、制御指令Yrが、関節部の目標回転変位を示す信号であり、制御対象とする「状態」として、センサによって検出されたモータ回転軸の回転変位を選択した場合を想定する。また、関節部の状態Yは、関節部における実際の回転変位を表すものとする。
【0035】
この場合には、ホスト装置から目標回転変位Yrが入力されると、この目標回転変位Yrに応じた駆動電流uが制御回路によって生成され、モータに供給される。これにより、モータが駆動され、式1及び式2に示した関係により、ホスト装置から与えられた目標回転変位に応じた回転変位Yまで関節部が駆動される。このとき、センサによって検出されたモータの回転変位Xは、制御回路内でフィードバック制御に用いられるとともに、コンプライアンス調整器Aにも入力される。
【0036】
コンプライアンス調整器Aは、実際のモータの回転変位Xと、演算処理によって推定したモータの回転変位Xmとの差に基づいて、調整成分Fdmを生成する。この調整成分Fdmは、モータの制御系に重畳される。
【0037】
ここで、関節部(モータ)に外力が加わっていない場合、すなわち外力Fdが「0」である場合には、実モデルM1で検出された回転変位Xと、数学モデルM2により推定された回転変位Xmとは等しくなるため、これらの差に基づいて生成される調整成分Fdmも「0」となる。したがって、この場合には、数学モデルM2及びコンプライアンス調整器Aは、実モデルM1に対して影響を及ぼすことがなく、ホスト装置から与えられた目標回転変位Yrに対応した回転変位Yまで関節部が回転するようにモータが駆動されることとなる。
【0038】
また、関節部(モータ)に外力Fdが加わっている場合には、実モデルM1における実際の回転変位Xが外力Fdによる影響を受ける一方で、数学モデルM2から出力される回転変位Xmには外力の影響が考慮されていないため、これら実際の回転変位Xと推定された回転変位Xmとには差が生じる。したがって、この差に応じた調整成分Fdmがコンプライアンス調整器Aから出力され、実モデルM1の制御系に重畳される。すると、外力Fdによる影響がコンプライアンス調整器Aから出力された調整成分Fdmによって相殺された後に、フィードバック制御がかかることとなる。
【0039】
すなわちこの場合には、ホスト装置から与えられた目標回転変位Yrと実際の関節部の回転変位Yとが一致していなくとも、フィードバック制御によるサーボが均衡する。したがって、モータは、加えられた外力Fdに対応して出力されるコンプライアンス調整器Aからの調整成分Fdmに応じて、ホスト装置から与えられた目標回転変位Yrとは独立して、外力Fdに倣って積極的に回転駆動されることとなる。
【0040】
つぎに以下では、上述した本発明の原理に基づいてロボットの関節部を駆動制御する制御系を構成した場合の具体的な実施の形態として、図2及び図3に示す駆動モジュール10について説明する。なお、駆動モジュール10は、人間型ロボットの手を構成する1本の指部を伸張及び屈曲させるように駆動するモジュールとして構成されたものである。また、図2は、駆動モジュール10を手の平側に相当する面側からみた平面図であり、図3は、指部を駆動するモータの回転軸方向からみた側面図である。
【0041】
駆動モジュール10は、図2及び図3に示すように、人間型ロボットにおける指の1本を構成する伸張及び屈曲が自在とされた指部11と、この指部11を駆動するモータ12と、モータ12の回転軸に接続されて、このモータ12の回転出力を減速する減速器13と、減速器13の回転軸に取り付けられた回転位置センサ14及びワイヤープーリー15とを備えている。また、駆動モジュール10には、モータ12の駆動を制御する制御回路と、制御回路からの出力信号を増幅してモータ12に駆動電流を供給するDCアンプとが備えられるが、これらは図2及び図3において図示を省略している。
【0042】
指部11は、基節部11aと、中節部11bと、末節部11cとの3つの部材によって構成されている。また、基節部11a及びロボット本体の手部、基節部11a及び中節部11b、中節部11b及び末節部11cは、それぞれ、第1の回転軸16、第2の回転軸17、第3の回転軸18によって回動自在に接続されている。また、指部11には、基節部11a、中節部11b、及び末節部11cの内部で手の平側に第1のワイヤー19が挿通されており、各節部の内部で手の甲側に第2のワイヤー20が挿通されている。第1のワイヤー19及び第2のワイヤー20は、それぞれ末節部11cの先端部に一端が係止され、他端がワイヤープーリー15の回転面に係止されている。
【0043】
駆動モジュール10においては、ロボットの各部に搭載された主制御部(ホスト装置)から与えられた制御指令が制御回路(図示を省略する。)に入力されており、この制御指令に基づいた出力信号が制御回路からDCアンプ(図示を省略する。)に出力される。DCアンプは、制御回路から出力された出力信号に応じた駆動電流をモータ12に供給する。
【0044】
モータ12は、DCアンプから供給された駆動電流に応じた出力で回転駆動し、回転力を減速器13を介してワイヤープーリー15に伝達する。ワイヤープーリー15は、モータ12から減速器13を介して伝達された回転力によって、回転駆動される。
【0045】
駆動モジュール10は、上述の如く主制御部からの制御指令に応じてモータ12が回転駆動される。このとき、例えば図4に示すように、ワイヤープーリー15が同図中矢印Rで示す方向に回転すると、指部11の手の平側に挿通された第1のワイヤー19がワイヤープーリー15に巻き取られるとともに、指部11の手の甲側に挿通された第2のワイヤー20がワイヤープーリー15から繰り出される。これにより、図4に示すように、第1乃至第3の回転軸16〜18を中心に指部11を構成する基節部11a、中節部11b、及び末節部11cの各接続部で回転し、指部11全体が屈曲する。
【0046】
逆に、ワイヤープーリー15が図4中の矢印Rとは反対方向に回転すると、指部11の手の平側に挿通された第1のワイヤー19がワイヤープーリー15から繰り出されるとともに、指部11の手の甲側に挿通された第2のワイヤー20がワイヤープーリー15に巻き取られる。これにより、第1乃至第3の回転軸16〜18を中心に指部11を構成する基節部11a、中節部11b、及び末節部11cの各接続部で回転し、指部11全体が伸張して図3に示す状態となる。
【0047】
つぎに、駆動モジュール10に搭載され、ロボットの主制御部から与えられた制御指令に基づいてモータ12の駆動を制御する制御回路の構成について、図5を参照しながら説明する。
【0048】
図5に示す制御回路50においては、主制御部からの制御指令がモータ12の目標回転位置Yrとして与えられており、回転位置センサ14によって検出されたモータ12回転軸の回転位置Yをフィードバック制御する構成とされている。すなわち、この制御回路50においては、制御対象とする「状態」として、回転軸の回転位置を用いて構成されている。
【0049】
制御回路50は、図5に示すように、主制御部から与えられた制御指令Yrに対して、回転位置センサ14からの出力Yを減算して出力する第1の減算器51と、この第1の減算器51の出力を所定の増幅率(本例においては4000倍)で増幅する第1の増幅器52と、この第1の増幅器52の後段に設けられた加算器53とを備えている。この加算器53からの出力は、DCアンプ(図示を省略する。)によって増幅され、駆動電流としてモータ12に供給される。
【0050】
なお、図5においては、駆動電流がモータ12内部において回転位置Yとして変換される様子を数学的に明示している。すなわち、本例においては、モータ12のイナーシャJaの値が「0.00011」、モータ12の粘性摩擦Daの値が「65」であり、演算{1/(Ja・s+Da)}を行った結果を時間sで積分した場合に相当する回転位置Yが、モータ12に供給された駆動電流に応じて当該モータ12から出力されることを示している。
【0051】
また、制御回路50は、実際に得られると推測される回転位置Ymを演算出力する演算部54と、この演算部54からの出力が入力される第2の減算器55と、第2の減算器55からの出力を所定の増幅率(本例においては4000倍)で増幅する第2の増幅器56とを備えている。
【0052】
演算部54は、主制御部から与えられた制御指令Yrに基づいてモータ12を駆動制御した場合に得られると推測される回転位置Ymを演算により求めて出力する。なお、図中においては、この演算部54における演算を時間sの関数としてFmodel(s)として示している。
【0053】
第2の減算器55は、演算部54から出力された回転位置Ymと、回転位置センサ14によって検出された実際の回転位置Yとが入力されており、これらの差を演算して第2の増幅器56に出力する。第2の増幅器56は、第2の減算器55からの入力を増幅して加算器53に出力する。
【0054】
以上のように構成された制御回路50においては、演算部54によって図1に示した数学モデルM2に相当する演算処理、すなわちモータ12回転軸の実際の運動特性と同じ特性のモデルによる演算処理が実現されており、第2の減算器55及び第2の増幅器56によって図1に示したコンプライアンス調整器Aに相当する機能が実現されている。すなわち、第2の増幅器56から加算器53に対する出力が、モータ12に対して外部から加えられた力(外力)が演算処理によって推定された調整成分Fdmに相当している。なお、以後の説明及び図5中においては、第2の減算器55及び第2の増幅器56をコンプライアンス調整器60と総称する。
【0055】
ここで、制御回路50によってモータ12を制御したときに、モータ12回転軸の実際の回転位置Yが変化する様子について、図6に示す模式図を参照しながら説明する。
【0056】
先ず、所定の時刻t0において、主制御部からの目標回転位置を示す制御指令Yrが制御回路50に与えられると、この制御指令Yrが第1の増幅器52に増幅された後にDCアンプを介してモータ12に出力され、モータ12が回転を始める。そして、時刻t1となった時点で、モータ12の回転位置Yが制御指令Yrに一致し、以後、時刻t2において外力Fdが加えられるまでの間、回転位置センサ14により得られた回転位置Yが制御回路50にフィードバックされることにより、この回転位置Yが保持されることとなる。
【0057】
なお、時刻t0から時刻t2までの間は、外力Fdが指部11に対して(ひいてはモータ12の回転軸に対して)加えられていない。このため、この間は、演算部54からの出力である推定された回転位置Ymと実際の回転位置Yとが一致し、コンプライアンス調整器60からの出力は「0」となる。したがって、外力Fdが加えられていない間は、主制御部からの制御指令Yrに応じて通常の制御が行われ、モータ12が駆動される。
【0058】
ところが、例えば時刻t2において外力Fdがモータ12の回転軸に対して加えられると、この外力Fdの影響によって、モータ12回転軸の回転位置Yが僅かに変化する。すると、演算部54からの出力である推定された回転位置Ymと実際の回転位置Yとの間に差が生じる。そして、この差に応じた調整成分Fdmがコンプライアンス調整器60によって出力され、加算器53によってモータ12に対する出力に重畳される。
【0059】
これにより、モータ12は、主制御部からの制御指令Yrに優先して、外力Fdに倣って積極的に回転駆動され、図6に示すように回転位置Yが変化する。このような外力Fdに倣う回転動作は、時刻t3において外力が取り除かれるまで継続し、モータ12は、駆動モジュール10の機械的な構造による回転限界に達しない限り回転し続ける。
【0060】
そして、時刻t3において外力Fdが取り除かれて「0」となると、モータ12は、外力Fdが取り除かれる直前の回転位置Yを保持することとなる。これは、時刻t3以降で、コンプライアンス調整器60からの出力Fdmが継続して出力される一方で、制御回路50のフィードバック制御系によるサーボが働いていることによる。
【0061】
なお、上述の説明においては、コンプライアンス調整器60によるモータ12回転軸のコンプライアンスが「1」に調整されており、外力Fdに応じて全く抵抗なく直接モータ12を回転駆動させる場合について説明している。このため、時刻t3以降において、外力Fdが取り除かれた後も、モータ12の回転位置Yが保持されたままとなっている。
【0062】
しかしながら、例えば図6中において1点鎖線で示すように、外力Fdが取り除かれた直後にモータ12回転軸の回転位置Yが制御指令Yrに相当する位置まで戻るように構成するためには、制御回路50における第2の増幅器56の増幅率を調整することによって、コンプライアンス調整器60によるモータ12回転軸のコンプライアンスを「1」未満の任意の値となるように調整すればよい。このコンプライアンス調整器60によるコンプライアンスの値に応じて、外力Fdが取り除かれて以後、制御指令によって示された本来の回転位置Yrまで戻るまでの変化率(図6中に角度θで示す)を調整することができる。
【0063】
駆動モジュール10においては、上述の如く、主制御部から与えられた制御指令Yrに応じてモータ12が回転制御されており、指部11の伸張及び屈曲を行うことが可能とされている一方で、指部11のいずれかの部位に物体が接触するなどして外力Fdがモータ12回転軸に加えられた場合には、この外力Fdに倣ってモータ12が積極的に回転駆動し、外力Fdによる影響を低減する方向に指部11が駆動される。
【0064】
したがって、例えば卵などの損傷しやすい物体をつかむ動作をロボットに行わせる場合であっても、指部11の全てに圧力センサなどを設けることが不要である。また、例えば、回転位置センサ14からの出力を主制御部側で処理することによってモータ12の駆動制御を行う従来の手法と異なり、極めて簡便且つ単純な回路構成によって実現可能な制御回路50によってモータ12のコンプライアンスを制御することが可能であるため、高度で高速な演算回路や高い演算処理能力などを不要とすることができる。したがって、ロボット全体の低コスト化・小型化・軽量化を図ることができる。
【0065】
なお、上述においては、ロボットの指部11を駆動する駆動モジュール10について説明したが、本発明は、上述した実施の形態への適用に限定されるものではなく、アクチュエータによって機械的な構造を駆動する際に広く適用可能であることは勿論である。また、このアクチュエータとしては、駆動力を発揮するものであれば任意であり、モータに限らず、油圧アクチュエータ、静電アクチュエータ、或いは各種の内燃機関などを広く用いることが可能である。
【0066】
【発明の効果】
本発明では、制御指令に基づいてアクチュエータを制御したときに得られると推定される状態と、アクチュエータによって駆動される可動部の実際の状態との差に応じた調整成分をホスト装置からの制御指令に重畳している。
【0067】
本発明において、可動部に外力が加わっていない場合には、推定された可動部の状態と実際の可動部の状態とは等しくなることから、これらの差は存在せず、調整成分も「0」となる。一方、可動部に外力が加わっている場合には、可動部の状態の推定にはホスト装置からの制御指令のみに基づいて行われ、外力の影響が考慮されていないことから、推定された可動部の状態と実際の可動部の状態とには差が生じ、この差に応じた調整成分が制御指令に重畳されることとなる。すなわち、大きな外力が加わっているときには大きな調整成分が制御指令に重畳され、小さな外力が加わっているときには小さな調整成分が制御指令に重畳される。本発明においては、この調整成分が外力が推定されたものに相当しており、この調整成分を制御指令に重畳することによって、外力が加わっている場合にはホスト装置からの制御指令に優先して、外力に倣ったアクチュエータの制御を行うことを実現している。すなわち、調整成分を制御指令に重畳することにより、アクチュエータが駆動を担当する可動部におけるコンプライアンスの調整を実現しているのである。
【0068】
本発明では、制御指令に基づいて可動部の状態を推定したり、調整成分を制御指令に重畳するに際して、加算や減算、或いは乗算といった極めて簡便な演算器又は演算手法により実現することが可能である。したがって、演算回路の構成を簡便化することができ、これにより低コスト化や処理の高速化を図ることができる。
【0069】
したがって、本発明によれば、例えば卵などの損傷しやすい物体を安全に且つ確実につかんだり、歩行時に脚部に当たった障害物を確実に検知したり、人間が加える力に倣って握手をしたりなどといったように、外部から加えられた力に倣って関節部を滑らかに動作させることが可能なロボットを簡便且つ低コストで実現することができる。また、このような動作を実現する回路や装置の構成を簡便化することができることから、ロボット全体の軽量化・小型化を図ることも容易となる。
【図面の簡単な説明】
【図1】本発明に係る制御系の動作原理について説明するために示すブロック図である。
【図2】本発明の実施の形態として示す駆動モジュールの平面図である。
【図3】同駆動モジュールをモータの回転軸方向からみた側面図である。
【図4】同駆動モジュールの指部が屈曲した状態を示す側面図である。
【図5】同駆動モジュールに備えられる制御回路の回路構成について示すブロック図である。
【図6】同駆動モジュールに備えられるモータの回転位置が外力に倣って変化する様子を示す模式図である。
【符号の説明】
10 駆動モジュール、11 指部、12 モータ、13 減速器、14 回転位置センサ、15 ワイヤープーリー、19 第1のワイヤー、20 第2のワイヤー、50 制御回路、51 第1の減算器、52 第1の増幅器、53 加算器、54 演算部、55 第2の減算器、56 第2の増幅器、60 コンプライアンス調整器
【発明の属する分野】
本発明は、例えばロボットにおける関節部を駆動する場合に適用して好適であり、機械的構造の可動部を駆動する各種アクチュエータの動作を制御するアクチュエータ制御装置、及びアクチュエータ制御方法に関する。
【0002】
【従来の技術】
人間の動作に似せた運動を行う機械装置は、「ロボット」と称されている。ロボットは、従来から、工場における生産作業の自動化・省力化を目的として、例えば各種マニピュレータや搬送ロボットといった産業用ロボットとしての形態で広く利用されている。また、近年では、従来からの利用形態である産業用途のロボットだけでなく、一般家庭内での利用を想定したコミュニケーション能力が高いロボット、すなわち、いわゆる人間型ロボットやペット型ロボットの普及が注目されている。
【0003】
ロボットは、所望とする運動を行うために複数の関節部を有しており、それぞれの関節部毎に、この関節部を駆動するための駆動系が備えられている。この駆動系は、一般に、関節部を駆動するアクチュエータと、アクチュエータの変位を測定するエンコーダと、エンコーダによって測定された変位をフィードバックしながら主制御部から要求された指示に応じてアクチュエータの駆動を制御する制御回路によって構成されている。そして、主制御部によって、複数の関節部の駆動系を統括的に制御することにより、ロボットが全体として所望とする運動・動作を行うように制御される。
【0004】
【発明が解決しようとする課題】
ところで、従来のロボットにおいては、アクチュエータの駆動を制御するに際して、フィードバック制御系に強固なサーボがかけられており、主制御部からの制御指令に対して極めて忠実に動作するような制御が行われている。このため、以下で説明するような問題があった。
【0005】
例えば、ロボットに卵などの損傷しやすい物体をつかむ動作をさせる場合には、この物体を損傷させない程度で、且つ確実につかむことが可能な程度の力を発揮することが必要となる。また、例えばロボットに歩行動作させる場合には、歩行面に存在する障害物に足を降ろしてしまったときに、この障害物を避けた位置に足を降ろす動作をさせることが必要となる。
【0006】
このような場合に対応するために、従来のロボットは、例えば手足の先端部などに圧力センサを設けて、この圧力センサにより得られた情報を主制御部で処理し、主制御部からの制御指令に基づいて各関節部を駆動制御している。
【0007】
しかしながら、この場合には、圧力センサが設けられた位置でしか物体に接したことが判断できず、圧力センサが設けられていない位置で物体に接触した場合には、この物体を考慮した駆動制御を行うことができない。したがって、例えば卵を手でつかむという動作を行うに際して圧力センサが設けられていない部分で卵をつぶしてしまったり、歩行時に障害物を検知することができずに転倒してしまうなどの虞があった。
【0008】
また、近年では、例えば人間と握手する動作を行う場合のように、外部から加えられた力に倣って各関節部を動作させるといった具合に、機械的に柔軟性を有するロボットを実現することが求められている。
【0009】
このような柔軟性をロボットに具備するための手法のひとつとして、センサにより検出されたアクチュエータ電流に基づいて外力を推定し、推定した外力に応じた制御指令を主制御部から発することにより各関節部を駆動制御する手法が従来から提案されている。しかしながら、この手法では、関節部に働く自己の慣性モーメントによる力と外力とを区別することができず、外力を正しく推定することができないといった問題があった。このため、外力に倣ったなめらかな動作を実現することが困難である。
【0010】
また、他の手法としては、ロボットの各部に取り付けた位置センサや加速度センサなどにより得られた情報に基づいて外力を推定する手法が従来から提案されている。しかしながら、この場合には、自己の慣性モーメントによる力と外力とを区別して外力を推定するために、高度で複雑な演算処理を行う必要が生じる。したがって、外力に倣って柔軟な動作を実現するためには、複雑な演算処理を高速に処理することが可能な大規模で高価な演算回路が必要となってしまうといった問題があった。
【0011】
そこで本発明は、上述した従来の実情に鑑みてなされたものであり、アクチュエータを外力に倣って駆動制御するに際して、簡便な構成により低コストで実現することが可能なアクチュエータ制御装置、及びアクチュエータ制御方法を提供することを目的とする。
【0012】
【課題を解決するための手段】
本発明の請求項1に係るアクチュエータ制御装置は、ホスト装置から与えられた制御指令に基づいて、可動部を駆動するアクチュエータを制御するアクチュエータ制御装置において、上記制御指令に基づいて上記アクチュエータを制御したときに得られると推定される上記可動部の状態と、上記可動部の実際の状態との差に応じた調整成分を、上記制御指令に重畳して上記アクチュエータに制御することを特徴とするものである。
【0013】
また、本発明の請求項2に係るアクチュエータ制御装置は、ホスト装置から与えられた制御指令に基づいて、可動部を駆動するアクチュエータを制御するアクチュエータ制御装置において、上記制御指令に基づいて上記アクチュエータを制御したときに得られると推定される上記可動部の状態を演算出力する状態推定手段と、上記可動部の実際の状態を検出する検出器からの出力と上記状態推定手段からの出力との差に応じた調整成分を出力するコンプライアンス調整手段と、上記制御指令に対して上記コンプライアンス調整手段からの出力を重畳する重畳手段とを備えることを特徴とするものである。
【0014】
さらに、本発明の請求項3に係るアクチュエータ制御方法は、ホスト装置から与えられた制御指令に基づいて、可動部を駆動するアクチュエータを制御するに際して、上記制御指令に基づいて上記アクチュエータを制御したときに得られると推定される上記可動部の状態を算出する状態推定ステップと、上記可動部の実際の状態を検出する状態検出ステップと、上記状態推定ステップにより得られた上記可動部の推定状態と、上記状態検出ステップにより得られた上記可動部の現在状態との差に応じて上記制御指令の調整成分を出力する調整成分出力ステップと、上記調整成分出力ステップにより得られた調整成分を上記制御指令に対して重畳した結果に基づいて上記アクチュエータの駆動を制御するアクチュエータ制御ステップとを有することを特徴とするものである。
【0015】
以上のように構成された本発明では、制御指令に基づいてアクチュエータを制御したときに得られると推定される状態と、アクチュエータによって駆動される可動部の実際の状態との差に応じた調整成分をホスト装置からの制御指令に重畳している。
【0016】
本発明において、可動部に外力が加わっていない場合には、推定された可動部の状態と実際の可動部の状態とは等しくなることから、これらの差は存在せず、調整成分も「0」となる。一方、可動部に外力が加わっている場合には、可動部の状態の推定にはホスト装置からの制御指令のみに基づいて行われ、外力の影響が考慮されていないことから、推定された可動部の状態と実際の可動部の状態とには差が生じ、この差に応じた調整成分が制御指令に重畳されることとなる。すなわち、大きな外力が加わっているときには大きな調整成分が制御指令に重畳され、小さな外力が加わっているときには小さな調整成分が制御指令に重畳される。本発明においては、この調整成分が外力が推定されたものに相当しており、この調整成分を制御指令に重畳することによって、外力が加わっている場合にはホスト装置からの制御指令に優先して、外力に倣ったアクチュエータの制御を行うことを実現している。すなわち、調整成分を制御指令に重畳することにより、アクチュエータが駆動を担当する可動部におけるコンプライアンスの調整を実現しているのである。
【0017】
なお、本発明における可動部の「状態」としては、例えば、可動部における回転変位、角速度、トルク、加速度、各加速度、或いは応力などのうちから任意のものを少なくともひとつ選択することができる。例えば、可動部の「状態」としての回転変位に基づいて制御を行う場合には、可動部の状態を検出する検出器として、この可動部における回転変位を検出するセンサを配設するとともに、このセンサからの出力と、この可動部における回転変位を推定した結果得られた出力とを用いて調整成分を出力する構成とすればよい。
【0018】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照しながら詳細に説明する。以下では、本発明の具体的な実施の形態について説明するに先立ち、本発明の原理について、図1に示すブロック図を参照しながら説明する。
【0019】
なお、図1に示すブロック図は、ロボットの関節部(可動部)を駆動するアクチュエータとしてのモータと、このモータの回転変位を検出するセンサと、ロボットに設けられた複数の関節部を統括制御するホスト装置から与えられた制御指令に応じてモータの駆動を制御する制御回路とによって制御系が構成されている場合を想定し、この制御回路で実現される制御内容の原理について模式的に示す図である。
【0020】
本制御系においては、図1に示すように、ホスト装置から与えられた制御指令Yrが現実の制御系である実モデルM1と、現実の制御系を数学的に演算処理する数学モデルM2とに入力される。
【0021】
実モデルM1においては、制御指令Yrがフィードフォワード定数Frを乗算されることにより、例えばモータを駆動する電流値uとしてモータに出力される。このとき、モータの状態は、以下で式1に示す状態方程式で表わすことができる。また、モータによる関節部の状態Yは、以下で式2に示す関係で表すことができる。
【0022】
【数1】
ここで、式1及び式2中に示すXは状態変数であり、A,B,C,Dはそれぞれ実際のモータの特性や関節部の構造などによって自ずと定まる定数である。このうち、定数B及び定数Dは、それぞれ、モータ回転軸に働く慣性モーメント及び粘性摩擦である。
【0023】
また、実モデルM1においては、モータに取り付けられたセンサによって得られたモータの状態Xと、制御指令Yrとの差にフィードバック定数Kが乗算されて、電流値uに対してフィードバックされている。
【0024】
一方、数学モデルM2においては、上述した実モデルM1に対応した演算処理が行われている。すなわち、制御指令Yrに対してフィードフォワード定数Frmを乗算した結果得られた仮想的な電流値umに基づいて、以下で式3及び式4に示す演算が行われている。
【0025】
【数2】
ここで、式3及び式4中に示すXmは、実モデルM1における状態変数Xに対応するものであり、この実際の状態変数Xを演算処理によって数学的に推定した結果得られたものである。また、Ymは、実モデルM1における関節部の状態Yを演算処理によって数学的に得たものである。また、式3及び式4中に示すA,B,C,Dはそれぞれ定数であり、実モデルM1における式1及び式2中の定数に対応している。
【0026】
さらに、数学モデルM2においては、式3に示す演算処理よって得られた状態Xmと、制御指令Yrとの差にフィードバック定数Kmが乗算されて、電流値umに対してフィードバックされている。
【0027】
ここで、数学モデルM2における定数Fm及び定数Kmは、それぞれ実モデルM1における定数F及び定数Kに対応しており、制御回路の設計段階で予め設定される値である。また、数学モデルM2において式3及び式4を演算処理する際に用いる定数A,B,C,Dは、モータ及び関節部を実際に駆動したときに得られる結果を予め測定するなどして求めておくことができる。
【0028】
また、本制御系は、実モデルM1における状態Xと、数学モデルM2により得られた状態Xmとを比較して実モデルM1のコンプライアンスを調整するコンプライアンス調整器Aが設けられている。
【0029】
コンプライアンス調整器Aは、センサによって得られた実際の状態Xと、数学モデルM2によって推定された状態Xmとの差を演算することによって、エラー信号eを生成し、このエラー信号eに対して所定の演算処理Fを施すことにより、モータの回転軸に加えられている外力Fdを推定して出力する。なお、図1中においては、この推定された外力をFdmとして示す。コンプライアンス調整器Aによって推定された外力Fdmは、制御指令Yrに対する調整成分として、実モデルM1の制御系に重畳されている。
【0030】
すなわち、コンプライアンス調整器Aは、実モデルM1から得られた実際の状態Xと、数学モデルM2により推定して得られた状態Xmとの差に基づいて、実モデルM1に加えられている外力Fdを推定してFdmとして出力している。そして、このFdmが実モデルM1における制御系に調整成分として重畳されていることから、実モデルM1に外力Fdが加えられている場合には、制御指令Yrに優先して外力Fdに倣った方向にモータが駆動されることとなる。すなわち、コンプライアンス調整器Aは、実モデルM1におけるモータ回転軸でのコンプライアンスを調整する機能を有しているといえる。
【0031】
なお、本制御系においては、モータや関節部の「状態」として、回転変位、角速度、トルク、加速度、各加速度、或いは応力などのうちから任意のものを少なくともひとつ選択して制御対象とすればよい。
【0032】
具体的には、例えばセンサがモータの回転変位を検出するタイプのものである場合には、モータの回転変位を状態Xとして制御対象とすればよい。この場合には、数学モデルM2で演算出力する状態Xmも、モータの回転変位を数学的な演算により推定したものとする。また、例えばセンサがモータ回転軸の角速度或いはトルクを検出するタイプのものである場合には、角速度或いはトルクを状態Xとして制御対象とする。この場合には、数学モデルM2で演算出力する状態Xmも、角速度或いはトルクを数学的な演算により推定したものとする。また、例えば、複数のセンサを用いて検出された2つ以上の状態(例えば、回転変位及びトルクの2つの状態)を制御対象とするとしてもよい。この場合には、上述した式1乃至式4は、これらの状態を変数とする行列式となる。
【0033】
また、上述においては、コンプライアンス調整器Aによってモータの実際の状態Xとモータの推定状態Xmとの差に基づいて調整成分を演算出力するして説明したが、コンプライアンス調整器Aにおいては、モータの状態ではなく、関節部の状態(すなわち状態Yや状態Ym)に基づいて調整成分を演算出力するとしてもよい。
【0034】
ここで、以上のように構成された本制御系によるモータの制御動作について、具体的な例を挙げながら説明する。以下での説明においては、制御指令Yrが、関節部の目標回転変位を示す信号であり、制御対象とする「状態」として、センサによって検出されたモータ回転軸の回転変位を選択した場合を想定する。また、関節部の状態Yは、関節部における実際の回転変位を表すものとする。
【0035】
この場合には、ホスト装置から目標回転変位Yrが入力されると、この目標回転変位Yrに応じた駆動電流uが制御回路によって生成され、モータに供給される。これにより、モータが駆動され、式1及び式2に示した関係により、ホスト装置から与えられた目標回転変位に応じた回転変位Yまで関節部が駆動される。このとき、センサによって検出されたモータの回転変位Xは、制御回路内でフィードバック制御に用いられるとともに、コンプライアンス調整器Aにも入力される。
【0036】
コンプライアンス調整器Aは、実際のモータの回転変位Xと、演算処理によって推定したモータの回転変位Xmとの差に基づいて、調整成分Fdmを生成する。この調整成分Fdmは、モータの制御系に重畳される。
【0037】
ここで、関節部(モータ)に外力が加わっていない場合、すなわち外力Fdが「0」である場合には、実モデルM1で検出された回転変位Xと、数学モデルM2により推定された回転変位Xmとは等しくなるため、これらの差に基づいて生成される調整成分Fdmも「0」となる。したがって、この場合には、数学モデルM2及びコンプライアンス調整器Aは、実モデルM1に対して影響を及ぼすことがなく、ホスト装置から与えられた目標回転変位Yrに対応した回転変位Yまで関節部が回転するようにモータが駆動されることとなる。
【0038】
また、関節部(モータ)に外力Fdが加わっている場合には、実モデルM1における実際の回転変位Xが外力Fdによる影響を受ける一方で、数学モデルM2から出力される回転変位Xmには外力の影響が考慮されていないため、これら実際の回転変位Xと推定された回転変位Xmとには差が生じる。したがって、この差に応じた調整成分Fdmがコンプライアンス調整器Aから出力され、実モデルM1の制御系に重畳される。すると、外力Fdによる影響がコンプライアンス調整器Aから出力された調整成分Fdmによって相殺された後に、フィードバック制御がかかることとなる。
【0039】
すなわちこの場合には、ホスト装置から与えられた目標回転変位Yrと実際の関節部の回転変位Yとが一致していなくとも、フィードバック制御によるサーボが均衡する。したがって、モータは、加えられた外力Fdに対応して出力されるコンプライアンス調整器Aからの調整成分Fdmに応じて、ホスト装置から与えられた目標回転変位Yrとは独立して、外力Fdに倣って積極的に回転駆動されることとなる。
【0040】
つぎに以下では、上述した本発明の原理に基づいてロボットの関節部を駆動制御する制御系を構成した場合の具体的な実施の形態として、図2及び図3に示す駆動モジュール10について説明する。なお、駆動モジュール10は、人間型ロボットの手を構成する1本の指部を伸張及び屈曲させるように駆動するモジュールとして構成されたものである。また、図2は、駆動モジュール10を手の平側に相当する面側からみた平面図であり、図3は、指部を駆動するモータの回転軸方向からみた側面図である。
【0041】
駆動モジュール10は、図2及び図3に示すように、人間型ロボットにおける指の1本を構成する伸張及び屈曲が自在とされた指部11と、この指部11を駆動するモータ12と、モータ12の回転軸に接続されて、このモータ12の回転出力を減速する減速器13と、減速器13の回転軸に取り付けられた回転位置センサ14及びワイヤープーリー15とを備えている。また、駆動モジュール10には、モータ12の駆動を制御する制御回路と、制御回路からの出力信号を増幅してモータ12に駆動電流を供給するDCアンプとが備えられるが、これらは図2及び図3において図示を省略している。
【0042】
指部11は、基節部11aと、中節部11bと、末節部11cとの3つの部材によって構成されている。また、基節部11a及びロボット本体の手部、基節部11a及び中節部11b、中節部11b及び末節部11cは、それぞれ、第1の回転軸16、第2の回転軸17、第3の回転軸18によって回動自在に接続されている。また、指部11には、基節部11a、中節部11b、及び末節部11cの内部で手の平側に第1のワイヤー19が挿通されており、各節部の内部で手の甲側に第2のワイヤー20が挿通されている。第1のワイヤー19及び第2のワイヤー20は、それぞれ末節部11cの先端部に一端が係止され、他端がワイヤープーリー15の回転面に係止されている。
【0043】
駆動モジュール10においては、ロボットの各部に搭載された主制御部(ホスト装置)から与えられた制御指令が制御回路(図示を省略する。)に入力されており、この制御指令に基づいた出力信号が制御回路からDCアンプ(図示を省略する。)に出力される。DCアンプは、制御回路から出力された出力信号に応じた駆動電流をモータ12に供給する。
【0044】
モータ12は、DCアンプから供給された駆動電流に応じた出力で回転駆動し、回転力を減速器13を介してワイヤープーリー15に伝達する。ワイヤープーリー15は、モータ12から減速器13を介して伝達された回転力によって、回転駆動される。
【0045】
駆動モジュール10は、上述の如く主制御部からの制御指令に応じてモータ12が回転駆動される。このとき、例えば図4に示すように、ワイヤープーリー15が同図中矢印Rで示す方向に回転すると、指部11の手の平側に挿通された第1のワイヤー19がワイヤープーリー15に巻き取られるとともに、指部11の手の甲側に挿通された第2のワイヤー20がワイヤープーリー15から繰り出される。これにより、図4に示すように、第1乃至第3の回転軸16〜18を中心に指部11を構成する基節部11a、中節部11b、及び末節部11cの各接続部で回転し、指部11全体が屈曲する。
【0046】
逆に、ワイヤープーリー15が図4中の矢印Rとは反対方向に回転すると、指部11の手の平側に挿通された第1のワイヤー19がワイヤープーリー15から繰り出されるとともに、指部11の手の甲側に挿通された第2のワイヤー20がワイヤープーリー15に巻き取られる。これにより、第1乃至第3の回転軸16〜18を中心に指部11を構成する基節部11a、中節部11b、及び末節部11cの各接続部で回転し、指部11全体が伸張して図3に示す状態となる。
【0047】
つぎに、駆動モジュール10に搭載され、ロボットの主制御部から与えられた制御指令に基づいてモータ12の駆動を制御する制御回路の構成について、図5を参照しながら説明する。
【0048】
図5に示す制御回路50においては、主制御部からの制御指令がモータ12の目標回転位置Yrとして与えられており、回転位置センサ14によって検出されたモータ12回転軸の回転位置Yをフィードバック制御する構成とされている。すなわち、この制御回路50においては、制御対象とする「状態」として、回転軸の回転位置を用いて構成されている。
【0049】
制御回路50は、図5に示すように、主制御部から与えられた制御指令Yrに対して、回転位置センサ14からの出力Yを減算して出力する第1の減算器51と、この第1の減算器51の出力を所定の増幅率(本例においては4000倍)で増幅する第1の増幅器52と、この第1の増幅器52の後段に設けられた加算器53とを備えている。この加算器53からの出力は、DCアンプ(図示を省略する。)によって増幅され、駆動電流としてモータ12に供給される。
【0050】
なお、図5においては、駆動電流がモータ12内部において回転位置Yとして変換される様子を数学的に明示している。すなわち、本例においては、モータ12のイナーシャJaの値が「0.00011」、モータ12の粘性摩擦Daの値が「65」であり、演算{1/(Ja・s+Da)}を行った結果を時間sで積分した場合に相当する回転位置Yが、モータ12に供給された駆動電流に応じて当該モータ12から出力されることを示している。
【0051】
また、制御回路50は、実際に得られると推測される回転位置Ymを演算出力する演算部54と、この演算部54からの出力が入力される第2の減算器55と、第2の減算器55からの出力を所定の増幅率(本例においては4000倍)で増幅する第2の増幅器56とを備えている。
【0052】
演算部54は、主制御部から与えられた制御指令Yrに基づいてモータ12を駆動制御した場合に得られると推測される回転位置Ymを演算により求めて出力する。なお、図中においては、この演算部54における演算を時間sの関数としてFmodel(s)として示している。
【0053】
第2の減算器55は、演算部54から出力された回転位置Ymと、回転位置センサ14によって検出された実際の回転位置Yとが入力されており、これらの差を演算して第2の増幅器56に出力する。第2の増幅器56は、第2の減算器55からの入力を増幅して加算器53に出力する。
【0054】
以上のように構成された制御回路50においては、演算部54によって図1に示した数学モデルM2に相当する演算処理、すなわちモータ12回転軸の実際の運動特性と同じ特性のモデルによる演算処理が実現されており、第2の減算器55及び第2の増幅器56によって図1に示したコンプライアンス調整器Aに相当する機能が実現されている。すなわち、第2の増幅器56から加算器53に対する出力が、モータ12に対して外部から加えられた力(外力)が演算処理によって推定された調整成分Fdmに相当している。なお、以後の説明及び図5中においては、第2の減算器55及び第2の増幅器56をコンプライアンス調整器60と総称する。
【0055】
ここで、制御回路50によってモータ12を制御したときに、モータ12回転軸の実際の回転位置Yが変化する様子について、図6に示す模式図を参照しながら説明する。
【0056】
先ず、所定の時刻t0において、主制御部からの目標回転位置を示す制御指令Yrが制御回路50に与えられると、この制御指令Yrが第1の増幅器52に増幅された後にDCアンプを介してモータ12に出力され、モータ12が回転を始める。そして、時刻t1となった時点で、モータ12の回転位置Yが制御指令Yrに一致し、以後、時刻t2において外力Fdが加えられるまでの間、回転位置センサ14により得られた回転位置Yが制御回路50にフィードバックされることにより、この回転位置Yが保持されることとなる。
【0057】
なお、時刻t0から時刻t2までの間は、外力Fdが指部11に対して(ひいてはモータ12の回転軸に対して)加えられていない。このため、この間は、演算部54からの出力である推定された回転位置Ymと実際の回転位置Yとが一致し、コンプライアンス調整器60からの出力は「0」となる。したがって、外力Fdが加えられていない間は、主制御部からの制御指令Yrに応じて通常の制御が行われ、モータ12が駆動される。
【0058】
ところが、例えば時刻t2において外力Fdがモータ12の回転軸に対して加えられると、この外力Fdの影響によって、モータ12回転軸の回転位置Yが僅かに変化する。すると、演算部54からの出力である推定された回転位置Ymと実際の回転位置Yとの間に差が生じる。そして、この差に応じた調整成分Fdmがコンプライアンス調整器60によって出力され、加算器53によってモータ12に対する出力に重畳される。
【0059】
これにより、モータ12は、主制御部からの制御指令Yrに優先して、外力Fdに倣って積極的に回転駆動され、図6に示すように回転位置Yが変化する。このような外力Fdに倣う回転動作は、時刻t3において外力が取り除かれるまで継続し、モータ12は、駆動モジュール10の機械的な構造による回転限界に達しない限り回転し続ける。
【0060】
そして、時刻t3において外力Fdが取り除かれて「0」となると、モータ12は、外力Fdが取り除かれる直前の回転位置Yを保持することとなる。これは、時刻t3以降で、コンプライアンス調整器60からの出力Fdmが継続して出力される一方で、制御回路50のフィードバック制御系によるサーボが働いていることによる。
【0061】
なお、上述の説明においては、コンプライアンス調整器60によるモータ12回転軸のコンプライアンスが「1」に調整されており、外力Fdに応じて全く抵抗なく直接モータ12を回転駆動させる場合について説明している。このため、時刻t3以降において、外力Fdが取り除かれた後も、モータ12の回転位置Yが保持されたままとなっている。
【0062】
しかしながら、例えば図6中において1点鎖線で示すように、外力Fdが取り除かれた直後にモータ12回転軸の回転位置Yが制御指令Yrに相当する位置まで戻るように構成するためには、制御回路50における第2の増幅器56の増幅率を調整することによって、コンプライアンス調整器60によるモータ12回転軸のコンプライアンスを「1」未満の任意の値となるように調整すればよい。このコンプライアンス調整器60によるコンプライアンスの値に応じて、外力Fdが取り除かれて以後、制御指令によって示された本来の回転位置Yrまで戻るまでの変化率(図6中に角度θで示す)を調整することができる。
【0063】
駆動モジュール10においては、上述の如く、主制御部から与えられた制御指令Yrに応じてモータ12が回転制御されており、指部11の伸張及び屈曲を行うことが可能とされている一方で、指部11のいずれかの部位に物体が接触するなどして外力Fdがモータ12回転軸に加えられた場合には、この外力Fdに倣ってモータ12が積極的に回転駆動し、外力Fdによる影響を低減する方向に指部11が駆動される。
【0064】
したがって、例えば卵などの損傷しやすい物体をつかむ動作をロボットに行わせる場合であっても、指部11の全てに圧力センサなどを設けることが不要である。また、例えば、回転位置センサ14からの出力を主制御部側で処理することによってモータ12の駆動制御を行う従来の手法と異なり、極めて簡便且つ単純な回路構成によって実現可能な制御回路50によってモータ12のコンプライアンスを制御することが可能であるため、高度で高速な演算回路や高い演算処理能力などを不要とすることができる。したがって、ロボット全体の低コスト化・小型化・軽量化を図ることができる。
【0065】
なお、上述においては、ロボットの指部11を駆動する駆動モジュール10について説明したが、本発明は、上述した実施の形態への適用に限定されるものではなく、アクチュエータによって機械的な構造を駆動する際に広く適用可能であることは勿論である。また、このアクチュエータとしては、駆動力を発揮するものであれば任意であり、モータに限らず、油圧アクチュエータ、静電アクチュエータ、或いは各種の内燃機関などを広く用いることが可能である。
【0066】
【発明の効果】
本発明では、制御指令に基づいてアクチュエータを制御したときに得られると推定される状態と、アクチュエータによって駆動される可動部の実際の状態との差に応じた調整成分をホスト装置からの制御指令に重畳している。
【0067】
本発明において、可動部に外力が加わっていない場合には、推定された可動部の状態と実際の可動部の状態とは等しくなることから、これらの差は存在せず、調整成分も「0」となる。一方、可動部に外力が加わっている場合には、可動部の状態の推定にはホスト装置からの制御指令のみに基づいて行われ、外力の影響が考慮されていないことから、推定された可動部の状態と実際の可動部の状態とには差が生じ、この差に応じた調整成分が制御指令に重畳されることとなる。すなわち、大きな外力が加わっているときには大きな調整成分が制御指令に重畳され、小さな外力が加わっているときには小さな調整成分が制御指令に重畳される。本発明においては、この調整成分が外力が推定されたものに相当しており、この調整成分を制御指令に重畳することによって、外力が加わっている場合にはホスト装置からの制御指令に優先して、外力に倣ったアクチュエータの制御を行うことを実現している。すなわち、調整成分を制御指令に重畳することにより、アクチュエータが駆動を担当する可動部におけるコンプライアンスの調整を実現しているのである。
【0068】
本発明では、制御指令に基づいて可動部の状態を推定したり、調整成分を制御指令に重畳するに際して、加算や減算、或いは乗算といった極めて簡便な演算器又は演算手法により実現することが可能である。したがって、演算回路の構成を簡便化することができ、これにより低コスト化や処理の高速化を図ることができる。
【0069】
したがって、本発明によれば、例えば卵などの損傷しやすい物体を安全に且つ確実につかんだり、歩行時に脚部に当たった障害物を確実に検知したり、人間が加える力に倣って握手をしたりなどといったように、外部から加えられた力に倣って関節部を滑らかに動作させることが可能なロボットを簡便且つ低コストで実現することができる。また、このような動作を実現する回路や装置の構成を簡便化することができることから、ロボット全体の軽量化・小型化を図ることも容易となる。
【図面の簡単な説明】
【図1】本発明に係る制御系の動作原理について説明するために示すブロック図である。
【図2】本発明の実施の形態として示す駆動モジュールの平面図である。
【図3】同駆動モジュールをモータの回転軸方向からみた側面図である。
【図4】同駆動モジュールの指部が屈曲した状態を示す側面図である。
【図5】同駆動モジュールに備えられる制御回路の回路構成について示すブロック図である。
【図6】同駆動モジュールに備えられるモータの回転位置が外力に倣って変化する様子を示す模式図である。
【符号の説明】
10 駆動モジュール、11 指部、12 モータ、13 減速器、14 回転位置センサ、15 ワイヤープーリー、19 第1のワイヤー、20 第2のワイヤー、50 制御回路、51 第1の減算器、52 第1の増幅器、53 加算器、54 演算部、55 第2の減算器、56 第2の増幅器、60 コンプライアンス調整器
Claims (3)
- ホスト装置から与えられた制御指令に基づいて、可動部を駆動するアクチュエータを制御するアクチュエータ制御装置において、
上記制御指令に基づいて上記アクチュエータを制御したときに得られると推定される上記可動部の状態と、上記可動部の実際の状態との差に応じた調整成分を、上記制御指令に重畳して上記アクチュエータを制御すること
を特徴とするアクチュエータ制御装置。 - ホスト装置から与えられた制御指令に基づいて、可動部を駆動するアクチュエータを制御するアクチュエータ制御装置において、
上記制御指令に基づいて上記アクチュエータを制御したときに得られると推定される上記可動部の状態を演算出力する状態推定手段と、
上記可動部の実際の状態を検出する検出器からの出力と上記状態推定手段からの出力との差に応じた調整成分を出力するコンプライアンス調整手段と、
上記制御指令に対して上記コンプライアンス調整手段からの出力を重畳する重畳手段とを備えること
を特徴とするアクチュエータ制御装置。 - ホスト装置から与えられた制御指令に基づいて、可動部を駆動するアクチュエータを制御するに際して、
上記制御指令に基づいて上記アクチュエータを制御したときに得られると推定される上記可動部の状態を算出する状態推定ステップと、
上記可動部の実際の状態を検出する状態検出ステップと、
上記状態推定ステップにより得られた上記可動部の推定状態と、上記状態検出ステップにより得られた上記可動部の現在状態との差に応じて上記制御指令の調整成分を出力する調整成分出力ステップと、
上記調整成分出力ステップにより得られた調整成分を上記制御指令に対して重畳した結果に基づいて上記アクチュエータの駆動を制御するアクチュエータ制御ステップとを有すること
を特徴とするアクチュエータの制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002244763A JP2004082243A (ja) | 2002-08-26 | 2002-08-26 | アクチュエータ制御装置及びアクチュエータの制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002244763A JP2004082243A (ja) | 2002-08-26 | 2002-08-26 | アクチュエータ制御装置及びアクチュエータの制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004082243A true JP2004082243A (ja) | 2004-03-18 |
Family
ID=32053147
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002244763A Pending JP2004082243A (ja) | 2002-08-26 | 2002-08-26 | アクチュエータ制御装置及びアクチュエータの制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004082243A (ja) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005304155A (ja) * | 2004-04-09 | 2005-10-27 | Yaskawa Electric Corp | モータ制御装置 |
JP2005316937A (ja) * | 2004-04-02 | 2005-11-10 | Yaskawa Electric Corp | 制御装置およびその制御方法 |
JPWO2006022201A1 (ja) * | 2004-08-25 | 2008-05-08 | 株式会社安川電機 | ロボットの評価システム及び評価方法 |
JP2008142786A (ja) * | 2006-12-06 | 2008-06-26 | Nidec Sankyo Corp | ロボットシスシステム及びロボット制御装置 |
JP2008525870A (ja) * | 2004-12-21 | 2008-07-17 | シーメンス アクチエンゲゼルシヤフト | 検出器信号をシミュレートするためのモジュール |
FR2931913A1 (fr) * | 2008-05-27 | 2009-12-04 | Peugeot Citroen Automobiles Sa | Dimensionnement d'un assemblage visse a partir d'une modelisation en elements finis. |
JP2010115777A (ja) * | 2008-11-12 | 2010-05-27 | Gm Global Technology Operations Inc | 双方向腱ターミネーター |
WO2019102820A1 (ja) * | 2017-11-27 | 2019-05-31 | アズビル株式会社 | 位置決め装置 |
WO2020193339A1 (de) * | 2019-03-27 | 2020-10-01 | Franka Emika Gmbh | Robotergreifer und verfahren zum betrieb eines robotergreifers |
-
2002
- 2002-08-26 JP JP2002244763A patent/JP2004082243A/ja active Pending
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005316937A (ja) * | 2004-04-02 | 2005-11-10 | Yaskawa Electric Corp | 制御装置およびその制御方法 |
JP2005304155A (ja) * | 2004-04-09 | 2005-10-27 | Yaskawa Electric Corp | モータ制御装置 |
JP4538786B2 (ja) * | 2004-04-09 | 2010-09-08 | 株式会社安川電機 | モータ制御装置 |
JPWO2006022201A1 (ja) * | 2004-08-25 | 2008-05-08 | 株式会社安川電機 | ロボットの評価システム及び評価方法 |
JP2008525870A (ja) * | 2004-12-21 | 2008-07-17 | シーメンス アクチエンゲゼルシヤフト | 検出器信号をシミュレートするためのモジュール |
US7865649B2 (en) | 2004-12-21 | 2011-01-04 | Siemens Aktiengesellschaft | Module for reproducing a transmitter signal |
JP2008142786A (ja) * | 2006-12-06 | 2008-06-26 | Nidec Sankyo Corp | ロボットシスシステム及びロボット制御装置 |
FR2931913A1 (fr) * | 2008-05-27 | 2009-12-04 | Peugeot Citroen Automobiles Sa | Dimensionnement d'un assemblage visse a partir d'une modelisation en elements finis. |
JP2010115777A (ja) * | 2008-11-12 | 2010-05-27 | Gm Global Technology Operations Inc | 双方向腱ターミネーター |
US8276958B2 (en) | 2008-11-12 | 2012-10-02 | GM Global Technology Operations LLC | Bidirectional tendon terminator |
WO2019102820A1 (ja) * | 2017-11-27 | 2019-05-31 | アズビル株式会社 | 位置決め装置 |
WO2020193339A1 (de) * | 2019-03-27 | 2020-10-01 | Franka Emika Gmbh | Robotergreifer und verfahren zum betrieb eines robotergreifers |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6314426B2 (ja) | ロボット制御装置およびロボット制御方法 | |
CN108656112B (zh) | 一种面向直接示教的机械臂零力控制实验*** | |
JP5154712B2 (ja) | ロボットの制御装置及び制御方法、ロボット、並びに、制御プログラム | |
JP6501900B2 (ja) | ロボット・マニピュレ−タを制御する装置及び方法 | |
WO2017064851A1 (ja) | ロボット教示方法及びロボットアーム制御装置 | |
JP2010524714A (ja) | 関節を制御する方法及びトルク速度変換装置 | |
JP6831530B2 (ja) | 外乱オブザーバ及びロボット制御装置 | |
JP2010076012A (ja) | マニピュレータシステムおよびその制御方法 | |
JPWO2007111252A1 (ja) | マニピュレータの制御方法および制御システム | |
JP2016168650A (ja) | ロボット装置、ロボット制御方法、プログラム及び記録媒体 | |
CN110703604B (zh) | 一种外骨骼动力学模型参数辨识方法及外骨骼装置 | |
CN113891786A (zh) | 基于自适应摩擦来控制机器人臂的方法 | |
JP2004082243A (ja) | アクチュエータ制御装置及びアクチュエータの制御方法 | |
WO2018212307A1 (ja) | 減速機角度伝達誤差同定システム及び減速機角度伝達誤差同定方法 | |
JP7068133B2 (ja) | 制御システム、制御方法、及び制御プログラム | |
JP2604929B2 (ja) | ロボットの制御装置 | |
JP7336215B2 (ja) | ロボットシステム、制御方法、物品の製造方法、プログラム、及び記録媒体 | |
JP2007102748A (ja) | 位置制御装置、位置制御方法及び位置制御プログラム | |
JP2016032326A (ja) | モータ制御装置、ロボット装置、モータ制御方法、プログラム及び記録媒体 | |
US20200070357A1 (en) | Robot | |
JP2021088042A (ja) | ロボット制御装置、把持システムおよびロボットハンドの制御方法 | |
JP2005144573A (ja) | ロボットハンドの把持力制御方法 | |
JP4134369B2 (ja) | ロボットの制御装置 | |
JP2016005296A (ja) | モータ駆動装置の制御方法、モータ駆動装置及びロボット装置 | |
JP2019214105A (ja) | ロボット制御装置およびロボット制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20050527 |