JP2016215357A - パラメータ推定装置、パラメータ推定方法、プログラム及び制御装置 - Google Patents
パラメータ推定装置、パラメータ推定方法、プログラム及び制御装置 Download PDFInfo
- Publication number
- JP2016215357A JP2016215357A JP2015106664A JP2015106664A JP2016215357A JP 2016215357 A JP2016215357 A JP 2016215357A JP 2015106664 A JP2015106664 A JP 2015106664A JP 2015106664 A JP2015106664 A JP 2015106664A JP 2016215357 A JP2016215357 A JP 2016215357A
- Authority
- JP
- Japan
- Prior art keywords
- joint
- parameter
- parameter estimation
- trajectory
- robot
- 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)
- Feedback Control In General (AREA)
Abstract
【課題】ロボットのパラメータを適切に推定すること。
【解決手段】パラメータ推定装置は、複数の関節部を駆動する複数のモータと、該各モータをモータドライバを介して制御する制御部と、を備えるロボットの推定パラメータを算出する。パラメータ推定装置は、Tbをモータドライバから制御部への通信にかかるむだ時間、Tfを制御部からモータドライバへの通信にかかるむだ時間とし、制御を開始する時刻をt=0としたとき、初期区間(0≦t≦Tb+Tf)において、時刻Tfで推定される推定パラメータが連続となるような初期値関数に基づいて離散時間で動作するパラメータ推定則を用いて推定パラメータを算出し、初期区間後(Tb+Tf≦t)において、角度センサにより検出される関節角度及び関節角速度と、目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道と、に基づいてパラメータ推定則を用いて推定パラメータを算出する。
【選択図】図1
【解決手段】パラメータ推定装置は、複数の関節部を駆動する複数のモータと、該各モータをモータドライバを介して制御する制御部と、を備えるロボットの推定パラメータを算出する。パラメータ推定装置は、Tbをモータドライバから制御部への通信にかかるむだ時間、Tfを制御部からモータドライバへの通信にかかるむだ時間とし、制御を開始する時刻をt=0としたとき、初期区間(0≦t≦Tb+Tf)において、時刻Tfで推定される推定パラメータが連続となるような初期値関数に基づいて離散時間で動作するパラメータ推定則を用いて推定パラメータを算出し、初期区間後(Tb+Tf≦t)において、角度センサにより検出される関節角度及び関節角速度と、目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道と、に基づいてパラメータ推定則を用いて推定パラメータを算出する。
【選択図】図1
Description
本発明は、複数のリンクと、各リンクを連結する複数の関節部と、を有するロボットの推定パラメータを算出するパラメータ推定装置、パラメータ推定方法、プログラム及び制御装置に関するものである。
ロボットの未知のパラメータをオンラインで推定し、該推定値に基づいてフィードフォワードトルクを算出し、算出したフィードフォワードトルクに基づいてロボットを制御する制御装置が知られている(例えば、非特許文献1参照)。
Jean−Jacques E.Slotine and Weiping Li, Composite Adaptive Control of Robot Manipulators, Automatica, vol.25, No.4, pp.509-519, 1989
上記制御装置においては、微分式を用いてパラメータを推定している。このため、運動中のロボットの状態量と、パラメータ推定則に用いられる状態量との間にむだ時間差が生じた場合に、有界が得られずパラメータを適切に推定できない虞がある。
本発明は、このような問題点を解決するためになされたものであり、ロボットのパラメータを適切に推定できるパラメータ推定装置、パラメータ推定方法、プログラム及び制御装置を提供することを主たる目的とする。
上記目的を達成するための本発明の一態様は、複数のリンクと、該各リンクを連結する複数の関節部と、該各関節部を駆動する複数のモータと、該各モータをモータドライバを介して制御する制御部と、前記各関節部の関節角度及び関節角速度を検出する複数の角度センサと、を備えるロボットの推定パラメータを算出するパラメータ推定装置であって、
Tbを前記モータドライバから前記制御部への通信にかかるむだ時間、Tfを前記制御部から前記モータドライバへの通信にかかるむだ時間とし、制御を開始する時刻をt=0としたとき、初期区間(0≦t≦Tb+Tf)において、該初期区間を前記ロボットを等速運動と仮定して前記各関節部の関節角度及び関節角速度を設定し、前記ロボットの等加速度運動と仮定して前記各関節部の目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道を設定したときの時刻Tfで推定される前記推定パラメータが連続となるような初期値関数に基づいて、前記各関節部周りの摩擦を考慮した前記ロボットの運動方程式から導出した、離散時間で動作するパラメータ推定則を用いて、前記推定パラメータを算出し、前記初期区間後(Tb+Tf≦t)において、前記角度センサにより検出される関節角度及び関節角速度と、前記設定された各関節部の目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道と、に基づいて、前記パラメータ推定則を用いて、前記推定パラメータを算出する、ことを特徴とするパラメータ推定装置である。
この一態様において、前記推定パラメータは、前記ロボットの各リンクの質量及び重心位置を含んでいてもよい。
この一態様において、前記初期区間(0≦t≦Tb+Tf)において、(17)式、(18)式及び(25)式の初期値関数として与えられる、q(t−Tb)、q(ドット)(t−Tb)、qd(t−Tb)、qd(ドット)(t−Tb)、qd(2ドット)(t−Tb)、及びη(ハット)(t−Tb)に基づいて、前記パラメータ推定則である(9)式を用いて、推定パラメータη(ハット)(t+Tf)を算出し、前記初期区間後(Tb+Tf≦t)において、前記角度センサからフィードバックされる関節角度q(t)、及び関節角速度q(ドット)(t)と、前記設定された目標関節角軌道qd(t)、目標関節角速度軌道qd(ドット)(t)、及び目標関節角加速度軌道qd(2ドット)(t)と、に基づいて、前記パラメータ推定則である(9)式を用いて、推定パラメータη(ハット)(t+Tf)を算出してもよい。
但し、上記式において、Γはパラメータ推定の速度を決定するパラメータ推定ゲイン、Yは、前記各関節部周りの摩擦を考慮した前記ロボットの運動方程式における外乱成分を除いたモデル化可能成分、Y(アッパーバー)は、前記Yにローパスフィルタを掛けたもの、Λ(t)は前記パラメータの推定則を安定化させるための正定値規格化行列、w(t)は前記パラメータの推定則のロバスト安定化を図るための修正項、τ(アッパーバー)(t)は前記各関節部を動作させるための制御トルクτ(t)にローパスフィルタを掛けたもの、Tは前記ローパスフィルタの時定数、である。
この一態様において、前記パラメータ推定装置により算出された推定パラメータに基づいて、前記モータを制御する前記制御部と、を備えていてもよい。
この一態様において、前記パラメータ推定装置により算出された推定パラメータη(ハット)(t+Tf)に基づいて、(10)式を用いて前記モータを制御するためのフィードフォワード制御信号uff(t)を生成する前記制御部と、を備えていてもよい。
この一態様において、前記モータドライバは、前記制御部により生成されたフィードフォワード制御信号uff(t)に基づいて、(16)式を用いて前記モータを駆動する制御トルクτ(t)を算出してもよい。
上記目的を達成するための本発明の一態様は、複数のリンクと、該各リンクを連結する複数の関節部と、該各関節部を駆動する複数のモータと、該各モータをモータドライバを介して制御する制御部と、前記各関節部の関節角度及び関節角速度を検出する複数の角度センサと、を備えるロボットの推定パラメータを算出するパラメータ推定方法であって、
Tbを前記モータドライバから前記制御部への通信にかかるむだ時間、Tfを前記制御部から前記モータドライバへの通信にかかるむだ時間とし、制御を開始する時刻をt=0としたとき、初期区間(0≦t≦Tb+Tf)において、該初期区間を前記ロボットを等速運動と仮定して前記各関節部の関節角度及び関節角速度を設定し、前記ロボットの等加速度運動と仮定して前記各関節部の目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道を設定したときの時刻Tfで推定される前記推定パラメータが連続となるような初期値関数に基づいて、前記各関節部周りの摩擦を考慮した前記ロボットの運動方程式から導出した、離散時間で動作するパラメータ推定則を用いて、前記推定パラメータを算出するステップと、前記初期区間後(Tb+Tf≦t)において、前記角度センサにより検出される関節角度及び関節角速度と、前記設定された各関節部の目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道と、に基づいて、前記パラメータ推定則を用いて、前記推定パラメータを算出するステップと、含む、ことを特徴とするパラメータ推定方法であってもよい。
上記目的を達成するための本発明の一態様は、複数のリンクと、該各リンクを連結する複数の関節部と、該各関節部を駆動する複数のモータと、該各モータをモータドライバを介して制御する制御部と、前記各関節部の関節角度及び関節角速度を検出する複数の角度センサと、を備えるロボットの推定パラメータを算出するプログラムであって、Tbを前記モータドライバから前記制御部への通信にかかるむだ時間、Tfを前記制御部から前記モータドライバへの通信にかかるむだ時間とし、制御を開始する時刻をt=0としたとき、初期区間(0≦t≦Tb+Tf)において、該初期区間を前記ロボットを等速運動と仮定して前記各関節部の関節角度及び関節角速度を設定し、前記ロボットの等加速度運動と仮定して前記各関節部の目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道を設定したときの時刻Tfで推定される前記推定パラメータが連続となるような初期値関数に基づいて、前記各関節部周りの摩擦を考慮した前記ロボットの運動方程式から導出した、離散時間で動作するパラメータ推定則を用いて、前記推定パラメータを算出する処理と、前記初期区間後(Tb+Tf≦t)において、前記角度センサにより検出される関節角度及び関節角速度と、前記設定された各関節部の目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道と、に基づいて、前記パラメータ推定則を用いて、前記推定パラメータを算出する処理と、をコンピュータに実行させる、ことを特徴とするプログラムであってもよい。
Tbを前記モータドライバから前記制御部への通信にかかるむだ時間、Tfを前記制御部から前記モータドライバへの通信にかかるむだ時間とし、制御を開始する時刻をt=0としたとき、初期区間(0≦t≦Tb+Tf)において、該初期区間を前記ロボットを等速運動と仮定して前記各関節部の関節角度及び関節角速度を設定し、前記ロボットの等加速度運動と仮定して前記各関節部の目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道を設定したときの時刻Tfで推定される前記推定パラメータが連続となるような初期値関数に基づいて、前記各関節部周りの摩擦を考慮した前記ロボットの運動方程式から導出した、離散時間で動作するパラメータ推定則を用いて、前記推定パラメータを算出し、前記初期区間後(Tb+Tf≦t)において、前記角度センサにより検出される関節角度及び関節角速度と、前記設定された各関節部の目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道と、に基づいて、前記パラメータ推定則を用いて、前記推定パラメータを算出する、ことを特徴とするパラメータ推定装置である。
この一態様において、前記推定パラメータは、前記ロボットの各リンクの質量及び重心位置を含んでいてもよい。
この一態様において、前記初期区間(0≦t≦Tb+Tf)において、(17)式、(18)式及び(25)式の初期値関数として与えられる、q(t−Tb)、q(ドット)(t−Tb)、qd(t−Tb)、qd(ドット)(t−Tb)、qd(2ドット)(t−Tb)、及びη(ハット)(t−Tb)に基づいて、前記パラメータ推定則である(9)式を用いて、推定パラメータη(ハット)(t+Tf)を算出し、前記初期区間後(Tb+Tf≦t)において、前記角度センサからフィードバックされる関節角度q(t)、及び関節角速度q(ドット)(t)と、前記設定された目標関節角軌道qd(t)、目標関節角速度軌道qd(ドット)(t)、及び目標関節角加速度軌道qd(2ドット)(t)と、に基づいて、前記パラメータ推定則である(9)式を用いて、推定パラメータη(ハット)(t+Tf)を算出してもよい。
但し、上記式において、Γはパラメータ推定の速度を決定するパラメータ推定ゲイン、Yは、前記各関節部周りの摩擦を考慮した前記ロボットの運動方程式における外乱成分を除いたモデル化可能成分、Y(アッパーバー)は、前記Yにローパスフィルタを掛けたもの、Λ(t)は前記パラメータの推定則を安定化させるための正定値規格化行列、w(t)は前記パラメータの推定則のロバスト安定化を図るための修正項、τ(アッパーバー)(t)は前記各関節部を動作させるための制御トルクτ(t)にローパスフィルタを掛けたもの、Tは前記ローパスフィルタの時定数、である。
この一態様において、前記パラメータ推定装置により算出された推定パラメータに基づいて、前記モータを制御する前記制御部と、を備えていてもよい。
この一態様において、前記パラメータ推定装置により算出された推定パラメータη(ハット)(t+Tf)に基づいて、(10)式を用いて前記モータを制御するためのフィードフォワード制御信号uff(t)を生成する前記制御部と、を備えていてもよい。
この一態様において、前記モータドライバは、前記制御部により生成されたフィードフォワード制御信号uff(t)に基づいて、(16)式を用いて前記モータを駆動する制御トルクτ(t)を算出してもよい。
上記目的を達成するための本発明の一態様は、複数のリンクと、該各リンクを連結する複数の関節部と、該各関節部を駆動する複数のモータと、該各モータをモータドライバを介して制御する制御部と、前記各関節部の関節角度及び関節角速度を検出する複数の角度センサと、を備えるロボットの推定パラメータを算出するパラメータ推定方法であって、
Tbを前記モータドライバから前記制御部への通信にかかるむだ時間、Tfを前記制御部から前記モータドライバへの通信にかかるむだ時間とし、制御を開始する時刻をt=0としたとき、初期区間(0≦t≦Tb+Tf)において、該初期区間を前記ロボットを等速運動と仮定して前記各関節部の関節角度及び関節角速度を設定し、前記ロボットの等加速度運動と仮定して前記各関節部の目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道を設定したときの時刻Tfで推定される前記推定パラメータが連続となるような初期値関数に基づいて、前記各関節部周りの摩擦を考慮した前記ロボットの運動方程式から導出した、離散時間で動作するパラメータ推定則を用いて、前記推定パラメータを算出するステップと、前記初期区間後(Tb+Tf≦t)において、前記角度センサにより検出される関節角度及び関節角速度と、前記設定された各関節部の目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道と、に基づいて、前記パラメータ推定則を用いて、前記推定パラメータを算出するステップと、含む、ことを特徴とするパラメータ推定方法であってもよい。
上記目的を達成するための本発明の一態様は、複数のリンクと、該各リンクを連結する複数の関節部と、該各関節部を駆動する複数のモータと、該各モータをモータドライバを介して制御する制御部と、前記各関節部の関節角度及び関節角速度を検出する複数の角度センサと、を備えるロボットの推定パラメータを算出するプログラムであって、Tbを前記モータドライバから前記制御部への通信にかかるむだ時間、Tfを前記制御部から前記モータドライバへの通信にかかるむだ時間とし、制御を開始する時刻をt=0としたとき、初期区間(0≦t≦Tb+Tf)において、該初期区間を前記ロボットを等速運動と仮定して前記各関節部の関節角度及び関節角速度を設定し、前記ロボットの等加速度運動と仮定して前記各関節部の目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道を設定したときの時刻Tfで推定される前記推定パラメータが連続となるような初期値関数に基づいて、前記各関節部周りの摩擦を考慮した前記ロボットの運動方程式から導出した、離散時間で動作するパラメータ推定則を用いて、前記推定パラメータを算出する処理と、前記初期区間後(Tb+Tf≦t)において、前記角度センサにより検出される関節角度及び関節角速度と、前記設定された各関節部の目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道と、に基づいて、前記パラメータ推定則を用いて、前記推定パラメータを算出する処理と、をコンピュータに実行させる、ことを特徴とするプログラムであってもよい。
本発明によれば、ロボットのパラメータを適切に推定できるパラメータ推定装置、パラメータ推定方法、プログラム及び制御装置を提供することを主たる目的とする。
以下、図面を参照して本発明の実施の形態について説明する。本発明の一実施形態に係るロボットは、例えば、複数のリンクと、各リンクを回動可能に連結する複数の関節部と、を有するヒューマノイドロボットなどである。
図1は、本発明の一実施形態に係るロボットの概略的なシステム構成を示すブロック図である。本実施形態に係るロボット1は、ロボット1の各関節部10に設けられ各関節部10を駆動する複数のサーボモータ2と、ロボットの各関節部10のサーボモータ2を制御する制御装置3と、ロボット1の各関節部10に設けられ、各関節部10の関節角度情報を検出する複数の角度センサ4と、各サーボモータ2を駆動するモータドライバ5と、を備えている。
制御装置3は、例えば、演算処理等と行うCPU(Central Processing Unit)、CPUによって実行される演算プログラム、制御プログラム等が記憶されたROM(Read Only Memory)やRAM(Random Access Memory)からなるメモリ、外部と信号の入出力を行うインターフェイス部(I/F)、などからなるマイクロコンピュータを中心にして、ハードウェア構成されている。CPU、メモリ、及びインターフェイス部は、データバスなどを介して相互に接続されている。なお、制御装置3は、例えば、ロボット1に搭載されているが、これに限定されない。制御装置3は、ロボット1外に配置され、無線などの通信路を介して、ロボット1を遠隔的に制御する構成であってもよい。
制御装置3は、ロボット1のパラメータを推定するパラメータ推定部31と、パラメータ推定部31により推定されたパラメータに基づいて、モータドライバ5を介してサーボモータ2を制御する制御部32と、を有している。
パラメータ推定部31は、パラメータ推定装置の一具体例である。パラメータ推定部31は、離散時間で動作する推定パラメータ則を用いて、ロボット1の推定パラメータを推定する。
制御部32は、モータドライバ5を介して各サーボモータ2を制御する。制御部32は、通信路6を介してモータドライバ5に接続されている。制御部32は、モータドライバ5に対して、フィードフォワード制御信号を送信することで、各関節部10のサーボモータ2を制御する。
角度センサ4は、例えば、ロボット1の各関節部10の関節角度、関節角速度など角度情報を検出する。角度センサ4は、通信路6を介して、制御装置3のパラメータ推定部31に接続されている。角度センサ4は、例えば、エンコーダ、ポテンショメータ、レゾルバーなどで構成されている。角度センサ4は、検出した角度情報をモータドライバ5及び制御装置3のパラメータ推定部31に送信する。
モータドライバ5は、各関節部10のサーボモータ2に対して制御信号を送信することで、各サーボモータ2を駆動する。モータドライバ5は、例えば、100[μsec]周期で高速に電流制御を行なうことができる増幅器である。モータドライバ5は、PDフィードバック部51と、加算部52と、を有している。
PDフィードバック部51は、角度センサ4からフィードバックされる角度情報に基づいて、PDフィードバック制御信号を生成し、加算部52に出力する。加算部52は、PDフィードバック部51からのPDフィードバック制御信号と、制御部32からのフィードフォワード制御信号と、を加算して、サーボモータ2の制御トルクを算出する。加算部52は、算出した制御トルクに応じた制御信号を各関節部10のサーボモータ2に送信する。
Nはロボット1のリンクの数(又は関節の数)、qdはロボット1の関節角度が従うべき目標関節角軌道を縦に並べたベクトル、H(q)は慣性行列を表しN×N正定対称行列、S(q(ドット)、q)は第i、j要素が下記式で定義される、コリオリ力と遠心力に関係するN×N歪対称行列である。
なお、上記のように、qの1階微分値をq(ドット)として記載し、qの2階微分値をq(2ドット)と記載する。以降、他のパラメータについても同様に表記する。
g(q)は各関節周りに作用する重力トルク、Fcsgn(q(ドット))は各関節周りに生じるクーロン摩擦力、Fγq(ドット)は各関節周りに生じる粘性摩擦力である。
g(q)は各関節周りに作用する重力トルク、Fcsgn(q(ドット))は各関節周りに生じるクーロン摩擦力、Fγq(ドット)は各関節周りに生じる粘性摩擦力である。
αsは静止摩擦力が働き始めるStribeck速度、α0は静止摩擦力の大きさFsを推定する際に用いるStribeck速度αsのノミナル値、neは各関節周りに働くノイズの外乱トルク(もしくは外力)、ηは各リンクの質量と重心位置を示すベクトルを縦に並べた物理パラメータベクトル、η(ハット)は物理パラメータベクトルの推定値(以下、他のパラメータについても、パラメータに(ハット)を付記したものは推定値とする)、Tfは制御装置3の制御部32からモータドライバ5への通信にかかるむだ時間、Tbはモータドライバ5から制御装置3の制御部32への通信にかかるむだ時間、Tは後述のローパスフィルタの時定数、uffは制御装置3の制御部32から出力されるフィードフォワード制御信号、Kは比例ゲイン、Dは微分ゲイン、Iは単位行列、Γ(=γI)はパラメータ推定則の速度を決定するパラメータ推定ゲイン、δは微小な正定数、τはサーボモータ2の制御トルク、である。
ところで、従来のパラメータ推定装置は、微分式を用いてロボットの未知のパラメータを推定している。このため、例えば、制御部とモータドライバとの間の通信路においてむだ時間が生じ、運動中のロボットの状態量と、パラメータ推定則に用いられる状態量との間にむだ時間差が生じることがある。この場合に、下記のようにパラメータを適切に推定できない虞がある。なお、むだ時間とは、制御部とモータドライバとの間の通信に生じる時間のことである。例えば、制御部がモータドライバに対して遠隔にある場合、制御部から発信された信号が、モータドライバにて受信されるまでに時間がかかる。このように、信号の伝達にかかる時間がむだ時間である。このようなむだ時間は、信号の伝達手段が有線であっても無線であっても発生する。
例えば、従来のパラメータ推定装置は、下記式を用いてパラメータηを推定している。
ここで、e=q(ドット)−qd(ドット)+k(q−qd)とする。
上記式の場合、YT(q(2ドット)d−K(q(ドット)−q(ドット)d)、q(ドット)d−K(q−qd)、q(ドット)、q))の項は、関節角度に依存するため、有界とは限らない。したがって、パラメータη(t)を適切に推定できない虞がある。
上記式の場合、YT(q(2ドット)d−K(q(ドット)−q(ドット)d)、q(ドット)d−K(q−qd)、q(ドット)、q))の項は、関節角度に依存するため、有界とは限らない。したがって、パラメータη(t)を適切に推定できない虞がある。
また、上記推定したパラメータη(t)を用いて下記式によりサーボモータの制御トルクτ(t)を算出する。下記式の場合、Y(q(2ドット)d−K(q(ドット)−q(ドット)d)、q(ドット)d−K(q−qd)、q(ドット)、q)の項は、観測される関節角度に依存している。このため、フィードバック系に遅延が存在する場合に、正しいフィードフォワード補償トルクを生成することが困難となる。
ここで、e=q(ドット)−qd(ドット)+λmin(k)k−1a(q−qd)とし、λmin(k)は行列の最小固有値を表し、aは飽和関数を表す。
上記式の右辺2項目のΓ−1の項[Y(q(2ドット)d(t−Tb)、q(ドット)d(t−Tb)、qd(t−Tb))T]は、後述のように目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道を示し、これは有界となる。また、上記式の右辺3項目のΓ−1の項(Γ−1Y(アッパーバー)(q(ドット)(t−Tb)、q(t−Tb)、qd(t−Tb))T・・・η(ハット)(t−Tb))は、このΓにより規格化されているのでその係数行列は有界となる。さらに、上記式の右辺4項目のΓ−1の項(Γ−1w(t−Tb)η(ハット)(t−Tb))は、パラメータ推定則のロバスト安定化項を示している。以上により、上記式で示す離散時間で動作する推定パラメータ則を用いれば、上記むだ時間が生じた場合でも、確実に有界を得ることができ、ロボット1の推定パラメータを適切に推定できる。
上記式の右辺2項目のΓ−1の項[Y(q(2ドット)d(t−Tb)、q(ドット)d(t−Tb)、qd(t−Tb))T]は、後述のように目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道を示し、これは有界となる。また、上記式の右辺3項目のΓ−1の項(Γ−1Y(アッパーバー)(q(ドット)(t−Tb)、q(t−Tb)、qd(t−Tb))T・・・η(ハット)(t−Tb))は、このΓにより規格化されているのでその係数行列は有界となる。さらに、上記式の右辺4項目のΓ−1の項(Γ−1w(t−Tb)η(ハット)(t−Tb))は、パラメータ推定則のロバスト安定化項を示している。以上により、上記式で示す離散時間で動作する推定パラメータ則を用いれば、上記むだ時間が生じた場合でも、確実に有界を得ることができ、ロボット1の推定パラメータを適切に推定できる。
サーボモータ2の制御トルクτ(t)及び外乱成分d(t)に上記(4)式のローパスフィルタを夫々かけたものを下記(6)式及び(7)式のように記述すると、上記(1)式の両辺に上記(4)式のローパスフィルタを掛けたものは、下記(8)式のように記述できる。以下、パラメータに(アッパーバー)を付記したものは、そのパラメータにローパスフィルタを掛けたものである。
以上の(1)式乃至(8)式を用いて、ロボット1のパラメータ推定則は、下記(9)式で表すことができる。パラメータ推定部31は、下記(9)式を用いて、ロボット1の推定パラメータη(ハット)(t+Tf)の推定を行う。また、制御部32は、パラメータ推定部31により推定された推定パラメータη(ハット)(t+Tf)に基づいて、下記(10)式を用いて、フィードフォワード制御信号uffを算出する。
なお、上記パラメータ推定ゲインΛ(t)は、上記(9)式の第4行目のη(ハット)(t−Tb)に係る係数(下記式)を1よりも小さくすることでパラメータ推定則(上記(9)式)を安定化させる正定値規格化行列を表している。
このパラメータ推定ゲインΛ(t)は小さいほど上記(9)式のパラメータの収束性は高くなる。このため、上記(9)式を満足する範囲で出来るだけ小さな値をパラメータ推定ゲインΛ(t)に設定する。また、−w(t)η(ハット)(t)は、推定パラメータη(ハット)(t)が真のパラメータの最大値M0よりも大きくなったときに、それ以上η(ハット)(t)が大きくならないように抑制をかけ、パラメータ推定則のロバスト安定化を図る修正項を表している。
制御部32が出力する上記(10)式のフィードフォワード制御信号uff(t)は、通信路6を介して、むだ時間Tf遅れて、モータドライバ5の加算部52に伝達される。そして、加算部52は、このフィードフォワード制御信号uff(t)と、PDフィードバック部51が生成した下記(15)式のPDフィードバック制御信号と、を加算する。
加算部52は、下記(16)式を用いて、フィードフォワード制御信号と、PDフィードバック制御信号と、を加算して増幅を行い、制御トルクτ(t)を算出する。加算部52は、上記算出した制御トルクτ(t)がロボットの各サーボモータ2に生じるように、制御トルクτ(t)に応じた制御信号(制御電流)をロボットの各サーボモータ2に出力する。
なお、上記(16)式において、Y(q(2ドット)d(t)、q(ドット)d(t)、qd(t))η(ハット)(t)の項が示すように、目標関節角軌道、目標関節角速度軌道及び目標関節角加速度軌道上でフィートフォワードトルクを求めている。このため、フィードバック系に遅延が存在する場合でも、正しいフィードフォワード補償トルクを生成することができる。
ここで、上記(9)式で構成される推定パラメータη、Γの更新則は離散時間で動作する。このため、得られる推定パラメータが時間に関して連続になるとは限らない。
例えば、従来のdη(ハット)(t)/dt(微分項)をη(ハット)(t+Tf)−η(ハット)(t−Tb)と離散化して近似することにより、積分項が無くなり、推定パラメータが不連続となる可能性がある。dη(ハット)(t)/dt=0を離散化した場合、η(ハット)(t+T)=η(ハット)(t−Tb)となる。初期値関数η(ハット)(t′)(−Tb≦t′<Tf)を図2に示すように時間に関する線形軌道で与える。この場合、t≧Tfにおいてこの初期値関数が繰返し現れることになり軌道は不連続になる。 同様に、dη(ハット)(t)/dt=f(t)を離散化した場合、η(ハット)(t+T)=η(ハット)(t−Tb)+f(t−Tb)となる。初期値関数を0とした場合でも、図3に示す如く、むだ時間Tの周期で不連続点が現れる。
以上の問題を解消するために、η(ハット)(Tf−0)=η(ハット)(−Tb)+f(−Tb)を満たすように初期値関数:η(ハット)(t′)(−Tb≦t′<Tf)を設定すればよいこととなる(図4)。
なお、図2乃至図4において、−TbからTf+2Tまでの太実線を初期値関数とする。図2及び図3の場合、Tf以降、太実線が連続にならないが、図4の場合、Tf以降、太実線が連続となる。なお、上記説明において、f(t)は上記(9)式の右辺第2項〜第4項においてt−Tbをtに変更したものである。ここでは、単純な例として、t+α0としている。上述したように、システムの内部状態が連続でない場合には、システムの安定性を保証することができない。このため、内部状態が連続になるように適切に初期値関数を設定することが必要になる。
次に、上述した本実施形態における初期値関数の設定方法について詳細に説明する。
ロボット1の初期状態を、時刻Tfにおいて推定パラメータが連続になるように以下のように設定する。まず、初期区間内の−Tb≦t′<0におけるロボットの運動を等速度運動と仮定して、下記(17)式を設定する。
ロボット1の初期状態を、時刻Tfにおいて推定パラメータが連続になるように以下のように設定する。まず、初期区間内の−Tb≦t′<0におけるロボットの運動を等速度運動と仮定して、下記(17)式を設定する。
以上のように、初期区間−Tb≦t′<Tfを、ロボットの等速度運動と仮定して関節角度q及び関節角速度q(ドット)を設定し、ロボットの等加速度運動として目標関節角軌道qd、目標関節角速度軌道q(ドット)d、目標関節角加速度軌道q(2ドット)dを設定する。そして、このときに時刻Tfにて推定パラメータが連続となる条件、上記(19)式を満たせば、推定パラメータは連続となる。
仮に、M0≦||η(ハット)(−Tb)||である場合、||η(ハット)(−Tb)||を新たにM0にすることで、上記(14)式より下記(22)式が成立する。
w(−Tb)=0 ・・・(22)
w(−Tb)=0 ・・・(22)
但し、上記(23)式の右辺の逆行列が存在しない場合、Γを適当に大きく取り直す必要がある。実際のロボット制御においては、初期状態でロボット1を静止させておくことが多いが、その場合、上記(23)式は下記(24)式のように表すことができる。
上記(24)式より、初期区間−Tb≦t′<Tfにおける推定パラメータを時間に関する線形関数として与える。これにより、上記(19)式の推定パラメータの初期値関数を、下記(25)式に示すように簡略化できる。
以上により、本実施形態に係るパラメータ推定部31は、初期区間(0≦t≦Tb+Tf)において、上記導出した(17)式、(18)式及び(25)式の初期値関数に基づいて、上記パラメータ推定則の(9)式を用いて、推定パラメータη(ハット)(t+Tf)を算出する。なお、t=0とは、ロボット1が適応制御を開始したときを指すものとする。
さらに、パラメータ推定部31は、初期区間後(Tb+Tf≦t)において、角度センサからフィードバックされる関節角度q(t)、及び関節角速度q(ドット)(t)と、設定された目標関節角軌道qd(t)、目標関節角速度軌道qd(ドット)(t)、及び目標関節角加速度軌道qd(2ドット)(t)と、に基づいて、上記パラメータ推定則の(9)式を用いて、推定パラメータη(ハット)(t+Tf)を算出する。
これにより、得られる推定パラメータを時間に関して連続にしつつ、上記むだ時間が生じた場合でも、確実に有界を得ることができ、ロボット1の推定パラメータを適切に推定できる。
さらに、パラメータ推定部31は、初期区間後(Tb+Tf≦t)において、角度センサからフィードバックされる関節角度q(t)、及び関節角速度q(ドット)(t)と、設定された目標関節角軌道qd(t)、目標関節角速度軌道qd(ドット)(t)、及び目標関節角加速度軌道qd(2ドット)(t)と、に基づいて、上記パラメータ推定則の(9)式を用いて、推定パラメータη(ハット)(t+Tf)を算出する。
これにより、得られる推定パラメータを時間に関して連続にしつつ、上記むだ時間が生じた場合でも、確実に有界を得ることができ、ロボット1の推定パラメータを適切に推定できる。
図5は、本実施形態に係る制御装置の制御系を示すブロック線図である。本実施形態に係る制御装置3は、ダイレクト適応制御とインダイレクト適応制御と、を並列に行う。
制御装置3のパラメータ推定部31は、ダイレクト適応制御において、通信遅延時間だけ遅らせた目標関節角軌道qd(t−Tb)、及び目標関節角速度軌道qd(ドット)(t−Tb)と、角度センサ4からフィードバックされる関節角度q(t−Tb)、及び関節角速度q(ドット)(t−Tb)と、の追従偏差eを算出する。このとき、上記関節角度q(t−Tb)、関節角速度q(ドット)(t−Tb)は、通信路6を介して角度センサ4からフィードバックされる。この通信路6において、むだ時間Tbが生じる。そして、パラメータ推定部31は算出された追従偏差と、目標関節角軌道qd(t+Tf)、目標関節角速度軌道qd(ドット)(t+Tf)、及び目標関節角加速度軌道qd(2ドット)(t+Tf)と、に基づいて、上記(9)を用いて、推定パラメータη(ハット)(t+Tf)を推定する。制御部32はパラメータ推定部31により推定された推定パラメータη(ハット)(t+Tf)に基づいて、上記(10)式を用いてフィードフォワード信号uff(t)を生成する。制御部32は、生成したフィードフォワード信号uff(t)をモータドライバ5の加算部52に、通信路6を介して送信する。この通信路6において、むだ時間が生じる。
制御装置3のパラメータ推定部31は、モータドライバ5の加算部52において、ダイレクト適応制御部で生成されるフィードフォワード信号uff(t)と、PDフィードバック部において(15)式で生成されるフィードバック信号と、の和によって算出される制御トルクと、インダイレクト適用制御部で生成されるトルク推定値と、の差によってトルク推定誤差を算出する。このとき、制御トルクは、モータドライバ5の加算部52から通信路6を介してフィートバックされる。また、ロボット1の各関節にトルクセンサが配置される場合には、トルクセンサ値を通信路6を介してパラメータ推定部31にフィードバックしてもよい。この通信路6において、むだ時間が生じる。
パラメータ推定部31は、算出されたトルク推定誤差と、角度センサ4からフィードバックされる関節角度q(t−Tb)、及び関節角速度q(ドット)(t−Tb)と、に基づいて、上記(9)を用いて、推定パラメータη(ハット)(t+Tf)を推定する。上記関節角度q(t−Tb)、及び関節角速度q(ドット)(t−Tb)は、通信路6を介して角度センサ4からフィードバックされる。この通信路6において、むだ時間が生じる。制御部32はパラメータ推定部31により推定された推定パラメータη(ハット)(t+Tf)に基づいて、上記(10)式を用いてフィードフォワード信号uff(t)を生成する。制御部32は、生成したフィードフォワード信号uff(t)をモータドライバ5の加算部52に、通信路6を介して送信する。この通信路6において、むだ時間が生じる。
次に、本実施形態に係る制御装置の制御処理フローについて説明する。図6は、本実施形態に係る制御装置の制御処理フローを示すフローチャートである。制御装置3のパラメータ推定部31は、ロボットを時刻Tfから動作させるものとし、そのときの初期姿勢q(Tf)、q(ドット)(Tf)をメモリなどから取得する(ステップS101)。なお、パラメータ推定部31は、時刻Tfの初期姿勢q(Tf)、q(ドット)(Tf)を、角度センサ4からの関節角度情報に基づいて決定してもよい。
パラメータ推定部31は、動作区間t≧Tfにおいて追従すべき目標関節角軌道qd(t)、目標関節角速度qd(ドット)(t)、及び目標関節角加速度qd(2ドット)(t)を設定する(ステップS102)。なお、目標関節角軌道qd(t)、目標関節角速度qd(ドット)(t)、及び目標関節角加速度qd(2ドット)(t)は、予めメモリなどに設定されていてもよい。この場合、パラメータ推定部31は、メモリなどから設定された目標関節角軌道qd(t)、目標関節角速度qd(ドット)(t)、及び目標関節角加速度qd(2ドット)(t)を読み込む。
パラメータ推定部31は、取得した初期姿勢q(Tf)、q(ドット)(Tf)と、設定した目標関節角軌道qd(t)、目標関節角速度軌道qd(ドット)(t)、及び目標関節角加速度軌道qd(2ドット)(t)と、に基づいて、上記(17)式、(18)式、及び(25)式を用いて、初期区間−Tb≦t≦Tfにおける初期値関数q(t)、q(ドット)(t)、qd(t)、qd(ドット)(t)、qd(2ドット)(t)、η(ハット)(t)を算出する(ステップS103)。
パラメータ推定部31は、上記求めた初期値関数の時刻−Tbにおける値に基づいて、上記(9)式を用いて、η(ハット)(Tf)を算出する。そして、制御部32は、パラメータ推定部31により推定されたη(ハット)(Tf)と、設定した目標関節角軌道qd(t)、目標関節角速度軌道qd(ドット)(t)、及び目標関節角加速度軌道qd(2ドット)(t)と、に基づいて、上記(10)式を用いて、フィードフォワード信号uff(0)を算出する。制御部32は、算出したフィードフォワード制御信号uff(0)をモータドライバ5に送信する。
モータドライバ5は、フィードフォワード制御信号と、上記設定した目標関節角軌道と、設定した目標関節角軌道qd(t)、目標関節角速度軌道qd(ドット)(t)、及び目標関節角加速度軌道qd(2ドット)(t)と、に基づいて、上記(16)式を用いて、制御トルクτ(t)を算出する。モータドライバ5は、算出した制御トルクに応じた制御信号をロボットのサーボモータ2に対して出力する。ロボットのサーボモータ2は、制御信号に応じてロボットの各関節部10を駆動する。ロボットの各関節部10の角度センサ4は、各関節部10の関節角度q(t)及び関節角速度q(ドット)(t)を検出する。各角度センサ4は、検出した各関節部10の関節角度q(t)及び関節角速度q(ドット)(t)をモータドライバ5及びパラメータ推定部31に送信する。
パラメータ推定部31は、初期区間(0≦t≦Tb+Tf)の場合(ステップS104のYES)、上記(17)式、(18)式及び(25)式の初期値関数として与えられる、q(t−Tb)、q(ドット)(t−Tb)、qd(t−Tb)、qd(ドット)(t−Tb)、qd(2ドット)(t−Tb)、η(ハット)(t−Tb)に基づいて、上記(9)式を用いて、推定パラメータη(ハット)(t+Tf)を推定する。制御部32は、パラメータ推定部31により推定された推定パラメータη(ハット)(t+Tf)に基づいて、上記(10)式を用いて、フィードフォワード制御信号uff(t)に算出する。制御部32は、算出したフィードフォワード制御信号uff(t)をモータドライバ5に送信する(ステップS105)。
モータドライバ5は、フィードフォワード制御信号と、上記設定した設定した目標関節角軌道qd(t)、目標関節角速度軌道qd(ドット)(t)、及び目標関節角加速度軌道qd(2ドット)(t)と、に基づいて、上記(16)式を用いて、制御トルクτ(t)を算出する。モータドライバ5は、算出した制御トルクτ(t)に応じた制御信号をロボットのサーボモータ2に対して出力する(ステップS106)。ロボット1のサーボモータ2は、制御信号に応じてロボット1の各関節部10を駆動する。ロボット1の各関節部10の角度センサ4は、各関節部10の関節角度q(t)及び関節角速度q(ドット)(t)を検出する。各角度センサ4は、検出した各関節部10の関節角度q(t)及び関節角速度q(ドット)(t)をモータドライバ5及びパラメータ推定部31に送信する。
パラメータ推定部31は、初期区間後(Tb+Tf≦t)の場合(ステップS104のNO)、ロボットの角度センサ4からモータドライバ5を介してフィードバックされる関節角度q(t)、及び関節角速度q(ドット)(t)と、設定した目標関節角軌道qd(t)、目標関節角速度軌道qd(ドット)(t)、及び目標関節角加速度軌道qd(2ドット)(t)と、に基づいて、上記(9)式を用いて、推定パラメータη(ハット)(t+Tf)を推定する。制御部32は、パラメータ推定部31により推定された推定パラメータη(ハット)(t+Tf)に基づいて、上記(10)式を用いて、フィードフォワード制御信号uff(t)に算出する。制御部32は、算出したフィードフォワード制御信号uff(t)をモータドライバ5に送信する(ステップS107)。
モータドライバ5は、フィードフォワード制御信号と、上記設定した目標関節角軌道qd(t)、目標関節角速度軌道qd(ドット)(t)、及び目標関節角加速度軌道qd(2ドット)(t)と、に基づいて、上記(16)式を用いて、制御トルクτ(t)を算出する。モータドライバ5は、算出した制御トルクτ(t)に応じた制御信号をロボット1のサーボモータ2に対して出力する(ステップS108)。ロボット1のサーボモータ2は、制御信号に応じてロボット1の各関節部10を駆動する。ロボット1の各関節部10の角度センサ4は、各関節部10の関節角度q(t)及び関節角速度q(ドット)(t)を検出する。各角度センサ4は、検出した各関節部10の関節角度q(t)及び関節角速度q(ドット)(t)をモータドライバ5及びパラメータ推定部31に送信する。
次に、本実施形態に係るパラメータ推定部のパラメータ推定則の安定性について詳細に説明する。本実施形態に係る制御アルゴリズムに基づいて制御されたロボットの関節角軌道、関節角速度軌道、及び推定パラメータは、下記(26)式を満たす。
上記式において、c4、c5は慣性行列とクリストッフェル記号の上限に関係する定数、γYは目標関節角軌道上におけるレグレッサ行列の最大値、を示している。上記(26)式より、外乱d(t)が存在しないときの条件(下記(27)式)が成立する場合、上記(26)式の汎関数V(Δq(ドット)(t)、Δq(t)、Δηt)、W(Δq(ドット)(t)、Δq(t)、Δη(t))は非負定値となる。この非負定値と解の連続性から、Barbalat′s Lemmaに基づいて、制御されたシステムは大域的に漸近安定となる。したがって、ロボットの関節角軌道が漸近的に目標軌道に正確に追従することが分かる。
次に、上記むだ時間が存在することによる問題点について詳細に説明する。上述の如く、通信路6の遅延によって、制御装置3の制御系と制御対象(ロボット)との間に時間差が生じる。これにより、制御システムを不安定化するエネルギーが制御系に入力される。
従来の積分型のパラメータ推定においては、通信路の遅延によって入力されるエネルギーは、下記(31)式のように表すことができる。
従来の積分型のパラメータ推定においては、通信路の遅延によって入力されるエネルギーは、下記(31)式のように表すことができる。
このように制御系によって印加されるエネルギーが、(保存エネルギー(非負定値関数)の時間微分)+(散逸エネルギー(非負定値関数))で下から抑えられれば、通信遅延があっても制御システムの安定性は保たれる。しかし、通信遅延がある場合、上記のような形式で下から抑えることができない。
これに対し、本実施形態に係る離散型のパラメータ推定則においては、通信路6の遅延によって加わるエネルギーは、下記(33)式のように表すことができる。なお、下記(33)式は、保存エネルギーの時間微分と印加エネルギー(下記(34)式)と、の差になる。
上記印加エネルギーは、このままでは制御システムを不安定化させてしまう。しかし、本実施形態に係るパラメータ推定則に従がって、上記印加エネルギーは、下記(35)式のような、遅延された状態誤差の2乗で表すことができる。
上記(35)式の係数行列は、有界である。このため、パラメータ推定ゲインΓが大きいときに推定則によって生成される散逸エネルギーによって、上記印加エネルギーは打ち消されることとなる。したがって、本実施形態に係る離散型のパラメータ推定則を用いることで、むだ時間が生じても制御システムは安定する。
次に、本実施形態に係るパラメータ推定部を用いたシミュレーション結果を説明する。図7及び図9は、通信路のむだ時間を30msとした場合における、実現される関節角軌道を示す図である。図8及び図10は、通信路のむだ時間を30msとした場合における、推定される推定パラメータを示す図である。
なお、図7及び図8においては、ローパスフィルタ(上記(4)式)の時定数T=0.02、KゲインK=5.0、DゲインD=1.0、パラメータ推定ゲインΓ=100.0に設定している。図9及び図10においては、ローパスフィルタの時定数T=0.02、KゲインK=5.0、DゲインD=1.0、パラメータ推定ゲインΓ=5.0に設定している。
図7及び 図9に示す如く、パラメータ推定ゲインΓ=100.0およびΓ=5.0のいずれの場合も、安定した関節角軌道の追従制御が実現されていることが分かる。また、図8及び図10に示す如く、パラメータ推定ゲインΓ=100.0からΓ=5.0に減少させることで、推定パラメータの収束速度が速くなることが分かる。
次に、ロボットの運動中に大きな外乱が加わった場合の制御システムの安定性について説明する。図11及び図13は、ロボットの運動中に50[N]の外力がロボットの手先に加わった場合、実現される関節角軌道を示す図である。図12及び図14は、ロボットの運動中に50[N]の外力がロボットの手先に加わった場合、推定される関節角軌道を示す図である。
なお、図11及び 図12においては、むだ時間=300ms、ローパスフィルタの時定数T=0.02、KゲインK=10.0、DゲインD=1.0、パラメータ推定ゲインΓ=10.0に設定している。図13及び図14においては、むだ時間=500ms、ローパスフィルタの時定数T=0.02、KゲインK=10.0、DゲインD=1.0、パラメータ推定ゲインΓ=10.0に設定している。
図11及び図13に示す如く、むだ時間を300msから500msに増加させた場合でも、漸近安定な関節角軌道の追従が可能であることが分かる。また、図12及び図14 に示す如く、ロボット1の手先に外乱が加わった瞬間に、推定パラメータが素早く変化していることから、外乱を推定することで外力のフィードフォワード補償が実現されていることが分かる。また、むだ時間を増加させた場合、実現される関節角軌道はほとんど変化しないが、推定パラメータの変動量が大きくなることが分かる。
次に、むだ時間を極めて大きくとった場合の制御システムの安定性について説明する。
図15は、通信路のむだ時間を1000msとした場合における、実現される関節角軌道を示す図である。図16は、通信路のむだ時間を1000msとした場合における、推定される推定パラメータを示す図である。
図15は、通信路のむだ時間を1000msとした場合における、実現される関節角軌道を示す図である。図16は、通信路のむだ時間を1000msとした場合における、推定される推定パラメータを示す図である。
なお、図15及び図16においては、ローパスフィルタの時定数T=0.02、KゲインK=1.0、DゲインD=1.0、パラメータ推定ゲインΓ=10.0に設定している。
図15に示す如く、むだ時間を極めて大きくとった場合でも、安定した関節角軌道の追従制御が実現できていることが分かる。
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
本発明は、例えば、図6に示す処理を、CPUにコンピュータプログラムを実行させることにより実現することも可能である。
本発明は、例えば、図6に示す処理を、CPUにコンピュータプログラムを実行させることにより実現することも可能である。
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。
また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
1 ロボット、2 サーボモータ、3 制御装置、4 角度センサ、5 モータドライバ、31 パラメータ推定部、32 制御部、51 PDフィードバック部、52 加算部
Claims (8)
- 複数のリンクと、該各リンクを連結する複数の関節部と、該各関節部を駆動する複数のモータと、該各モータをモータドライバを介して制御する制御部と、前記各関節部の関節角度及び関節角速度を検出する複数の角度センサと、を備えるロボットの推定パラメータを算出するパラメータ推定装置であって、
Tbを前記モータドライバから前記制御部への通信にかかるむだ時間、Tfを前記制御部から前記モータドライバへの通信にかかるむだ時間とし、制御を開始する時刻をt=0としたとき、
初期区間(0≦t≦Tb+Tf)において、
該初期区間を前記ロボットを等速運動と仮定して前記各関節部の関節角度及び関節角速度を設定し、前記ロボットの等加速度運動と仮定して前記各関節部の目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道を設定したときの時刻Tfで推定される前記推定パラメータが連続となるような初期値関数に基づいて、前記各関節部周りの摩擦を考慮した前記ロボットの運動方程式から導出した、離散時間で動作するパラメータ推定則を用いて、前記推定パラメータを算出し、
前記初期区間後(Tb+Tf≦t)において、
前記角度センサにより検出される関節角度及び関節角速度と、前記設定された各関節部の目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道と、に基づいて、前記パラメータ推定則を用いて、前記推定パラメータを算出する、
ことを特徴とするパラメータ推定装置。 - 請求項1記載のパラメータ推定装置であって、
前記推定パラメータは、前記ロボットの各リンクの質量及び重心位置を含む、ことを特徴とするパラメータ推定装置。 - 請求項1又は2記載のパラメータ推定装置であって、
前記初期区間(0≦t≦Tb+Tf)において、
(17)式、(18)式及び(25)式の初期値関数として与えられる、q(t−Tb)、q(ドット)(t−Tb)、qd(t−Tb)、qd(ドット)(t−Tb)、qd(2ドット)(t−Tb)、及びη(ハット)(t−Tb)に基づいて、前記パラメータ推定則である(9)式を用いて、推定パラメータη(ハット)(t+Tf)を算出し、
前記初期区間後(Tb+Tf≦t)において、
前記角度センサからフィードバックされる関節角度q(t)、及び関節角速度q(ドット)(t)と、前記設定された目標関節角軌道qd(t)、目標関節角速度軌道qd(ドット)(t)、及び目標関節角加速度軌道qd(2ドット)(t)と、に基づいて、前記パラメータ推定則である(9)式を用いて、推定パラメータη(ハット)(t+Tf)を算出する、
ことを特徴とするパラメータ推定装置。
- 請求項1乃至3のうちいずれか1項記載のパラメータ推定装置と、
前記パラメータ推定装置により算出された推定パラメータに基づいて、前記モータを制御する前記制御部と、
を備える、ことを特徴とする制御装置。 - 複数のリンクと、該各リンクを連結する複数の関節部と、該各関節部を駆動する複数のモータと、該各モータをモータドライバを介して制御する制御部と、前記各関節部の関節角度及び関節角速度を検出する複数の角度センサと、を備えるロボットの推定パラメータを算出するパラメータ推定方法であって、
Tbを前記モータドライバから前記制御部への通信にかかるむだ時間、Tfを前記制御部から前記モータドライバへの通信にかかるむだ時間とし、制御を開始する時刻をt=0としたとき、
初期区間(0≦t≦Tb+Tf)において、
該初期区間を前記ロボットを等速運動と仮定して前記各関節部の関節角度及び関節角速度を設定し、前記ロボットの等加速度運動と仮定して前記各関節部の目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道を設定したときの時刻Tfで推定される前記推定パラメータが連続となるような初期値関数に基づいて、前記各関節部周りの摩擦を考慮した前記ロボットの運動方程式から導出した、離散時間で動作するパラメータ推定則を用いて、前記推定パラメータを算出するステップと、
前記初期区間後(Tb+Tf≦t)において、
前記角度センサにより検出される関節角度及び関節角速度と、前記設定された各関節部の目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道と、に基づいて、前記パラメータ推定則を用いて、前記推定パラメータを算出するステップと、
含む、ことを特徴とするパラメータ推定方法。 - 複数のリンクと、該各リンクを連結する複数の関節部と、該各関節部を駆動する複数のモータと、該各モータをモータドライバを介して制御する制御部と、前記各関節部の関節角度及び関節角速度を検出する複数の角度センサと、を備えるロボットの推定パラメータを算出するプログラムであって、
Tbを前記モータドライバから前記制御部への通信にかかるむだ時間、Tfを前記制御部から前記モータドライバへの通信にかかるむだ時間とし、制御を開始する時刻をt=0としたとき、
初期区間(0≦t≦Tb+Tf)において、
該初期区間を前記ロボットを等速運動と仮定して前記各関節部の関節角度及び関節角速度を設定し、前記ロボットの等加速度運動と仮定して前記各関節部の目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道を設定したときの時刻Tfで推定される前記推定パラメータが連続となるような初期値関数に基づいて、前記各関節部周りの摩擦を考慮した前記ロボットの運動方程式から導出した、離散時間で動作するパラメータ推定則を用いて、前記推定パラメータを算出する処理と、
前記初期区間後(Tb+Tf≦t)において、
前記角度センサにより検出される関節角度及び関節角速度と、前記設定された各関節部の目標関節角軌道、目標関節角速度軌道、及び目標関節角加速度軌道と、に基づいて、前記パラメータ推定則を用いて、前記推定パラメータを算出する処理と、
をコンピュータに実行させる、ことを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015106664A JP2016215357A (ja) | 2015-05-26 | 2015-05-26 | パラメータ推定装置、パラメータ推定方法、プログラム及び制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015106664A JP2016215357A (ja) | 2015-05-26 | 2015-05-26 | パラメータ推定装置、パラメータ推定方法、プログラム及び制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016215357A true JP2016215357A (ja) | 2016-12-22 |
Family
ID=57577916
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015106664A Pending JP2016215357A (ja) | 2015-05-26 | 2015-05-26 | パラメータ推定装置、パラメータ推定方法、プログラム及び制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2016215357A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018107568A (ja) * | 2016-12-26 | 2018-07-05 | 日本電気株式会社 | 遠隔制御装置、遠隔制御システム、遠隔制御方法及び遠隔制御プログラム |
TWI688843B (zh) * | 2018-11-30 | 2020-03-21 | 財團法人金屬工業研究發展中心 | 機械系統的自動控制方法以及自動控制裝置 |
CN112638596A (zh) * | 2018-08-23 | 2021-04-09 | 株式会社日立制作所 | 自主学习型机器人装置以及自主学习型机器人装置的动作生成方法 |
JP2021084188A (ja) * | 2019-11-28 | 2021-06-03 | 株式会社国際電気通信基礎技術研究所 | 制御システム |
US11856345B2 (en) | 2018-06-28 | 2023-12-26 | Nec Corporation | Remote control apparatus, remote control method, and program |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6471681A (en) * | 1987-09-14 | 1989-03-16 | Sumitomo Electric Industries | Method of measuring dynamic characteristic of manipulator |
JPH02218566A (ja) * | 1989-02-17 | 1990-08-31 | Fuji Electric Co Ltd | 操作形マニピュレータ |
WO2006046500A1 (ja) * | 2004-10-29 | 2006-05-04 | Keio University | 通信遅延を有する通信路を介して信号を送受信する遠隔制御システム |
JP2014229157A (ja) * | 2013-05-24 | 2014-12-08 | 日本電信電話株式会社 | 遅延補償装置、方法、プログラム及び記録媒体 |
-
2015
- 2015-05-26 JP JP2015106664A patent/JP2016215357A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6471681A (en) * | 1987-09-14 | 1989-03-16 | Sumitomo Electric Industries | Method of measuring dynamic characteristic of manipulator |
JPH02218566A (ja) * | 1989-02-17 | 1990-08-31 | Fuji Electric Co Ltd | 操作形マニピュレータ |
WO2006046500A1 (ja) * | 2004-10-29 | 2006-05-04 | Keio University | 通信遅延を有する通信路を介して信号を送受信する遠隔制御システム |
JP2014229157A (ja) * | 2013-05-24 | 2014-12-08 | 日本電信電話株式会社 | 遅延補償装置、方法、プログラム及び記録媒体 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018107568A (ja) * | 2016-12-26 | 2018-07-05 | 日本電気株式会社 | 遠隔制御装置、遠隔制御システム、遠隔制御方法及び遠隔制御プログラム |
US11856345B2 (en) | 2018-06-28 | 2023-12-26 | Nec Corporation | Remote control apparatus, remote control method, and program |
CN112638596A (zh) * | 2018-08-23 | 2021-04-09 | 株式会社日立制作所 | 自主学习型机器人装置以及自主学习型机器人装置的动作生成方法 |
CN112638596B (zh) * | 2018-08-23 | 2024-02-20 | 株式会社日立制作所 | 自主学习型机器人装置以及自主学习型机器人装置的动作生成方法 |
TWI688843B (zh) * | 2018-11-30 | 2020-03-21 | 財團法人金屬工業研究發展中心 | 機械系統的自動控制方法以及自動控制裝置 |
JP2021084188A (ja) * | 2019-11-28 | 2021-06-03 | 株式会社国際電気通信基礎技術研究所 | 制御システム |
JP7391635B2 (ja) | 2019-11-28 | 2023-12-05 | 株式会社国際電気通信基礎技術研究所 | 制御システム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2016215357A (ja) | パラメータ推定装置、パラメータ推定方法、プログラム及び制御装置 | |
US10120396B2 (en) | Control device for machine apparatus and gain determination method for friction compensation | |
US7805207B2 (en) | Method and apparatus for adaptive parallel proportional-integral-derivative controller | |
JP2005301508A (ja) | 制御装置 | |
US10591876B2 (en) | Method and system for adaptive compensation of dry friction | |
JP6277428B2 (ja) | モータ駆動装置 | |
JP2019123051A5 (ja) | 制御方法、物品の製造方法、制御プログラム、記録媒体、ロボット装置、制御装置 | |
JP2009303432A (ja) | モータによる位置制御装置 | |
JP6281751B2 (ja) | 位置制御システム | |
EP3739401B1 (en) | Method for setting control parameters for model prediction control | |
JP6453576B2 (ja) | モータシステム | |
JP2017157121A (ja) | スライディングモード制御方法及びスライディングモード制御装置 | |
US10386252B2 (en) | Position control apparatus for identifying low-frequency disturbance | |
JP6930868B2 (ja) | サーボ制御装置、サーボ制御方法及びシステム | |
Kamarudin et al. | Observer-based output feedback control with linear quadratic performance | |
JP6004877B2 (ja) | 制御装置 | |
Huber et al. | Online trajectory optimization for nonlinear systems by the concept of a model control loop—Applied to the reaction wheel pendulum | |
Lu et al. | An adaptive fuzzy control for human-in-the-loop operations with varying communication time delays | |
JP5660482B2 (ja) | 工作機械の送り駆動系の制御方法及び制御装置 | |
Gutiérrez-Giles et al. | Transparent master-slave teleoperation without force nor velocity measurements | |
JP2008289312A (ja) | 複数軸同期制御システムおよび複数軸同期制御方法 | |
Zergeroglu et al. | A model independent observer based output feedback tracking controller for robotic manipulators with dynamical uncertainties | |
JP6500492B2 (ja) | ロボット制御装置 | |
US11199822B2 (en) | Control device | |
Jang et al. | Tracking control of a multirotor uav in a network environment with time-varying delay |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170613 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180405 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180410 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20181009 |