Main Content

ブラシレス DC モーター ドライブを利用するロボットの軸制御

はじめに

ロボットは複雑な電気機械システムであり、そこでは複数の電気駆動装置が関節の動きの制御に利用されています。

このケース スタディでは、6 自由度のロボット マニピュレーターのモデリングとシミュレーションを示します。2 つの主要ジョイントのモデルは、ブラシレス DC モーター ドライブを使用して作成されています。このモーター ドライブは、減速装置を介してマニピュレーターの残りの部分に接続されています。この制御システムは、基本的に 2 つの位置制御ループで構成し、Simulink® ブロックで作成します。内部の速度とトルクの制御ループは、既定の設定でブラシレス DC モーター ドライブに含まれています。マニピュレーターの動特性を表すモデル (Robot モデル) は、2 つの各ブラシレス DC モーター ドライブに対して 1 つずつ存在し、Simulink の非線形モデルとして作成することができます。

目標軌道に対するロボット マニピュレーターのジョイントの動作がシミュレーションにより確認できます。

ロボット マニピュレーターの説明

この例で考察するロボットは、平行リンク機構タイプの汎用 6 自由度ロボット マニピュレーター (GMF S-360) です。6 自由度のロボット マニピュレーターに、ロボットの構造とそのワークスペースを示します。ロボットには、6 つの軸があります。図に示す 3 つの軸 (Θ1、Θ2、Θ3) は、アームの位置制御のためのものです。その他 (α、β、γ) により、エンドエフェクタの姿勢を制御します。水平面において、ロボットは 300°(Θ1 = -150°から Θ1 = 150°) の範囲の動作をカバーできます。

ロボットの軸は、ブラシレス DC モーターにより駆動されます。このモデルは、PWM インバーター、永久磁石形同期モーター、コントローラーで構成される AC6 モデルを使って作成することができます。ベルト タイプの減速装置と変速機は、モーターで発生したトルクを増幅して、ロボットのジョイントに伝達するために使用されます。

6 自由度のロボット マニピュレーター

ジョイント 1 と 2 の位置制御システム

最初の 2 つの主要ジョイント (軸 1 と軸 2) について具体的に考えます。これらは、ロボット全体とその負荷を駆動します。ジョイント 1 を駆動するために、2kW ブラシレス DC モーターと 1:130 のギア比をもつ減速装置を使用します。ジョイント 2 を駆動するために、1kW ブラシレス DC モーターと 1:100 のギア比をもつ減速装置を使用します。ロボット ジョイントの位置制御のためのブラシレス DC モーター ドライブに、1 つのロボット リンクに対する位置制御システムの簡略化した図を示します。

外側の位置制御ループの内部には、速度制御ループとその内側の電流制御ループが含まれます。ブラシレス DC モーターは、電流制御モードで動作する、三相 PWM インバーターから電力供給が行われます。ベクトル制御は、磁束とトルクの発生に寄与する電流成分に分けてモーターを制御するために利用します。その結果、磁束とトルクは、それぞれ d 軸電流 ids と q 軸電流 iqs, により別々に制御できます。q 軸電流の指令値 iqs* (これはトルク指令を表します) は速度制御ループの出力として得られます。d 軸電流の指令値 ids* は 0 に設定します。

速度/位置のセンサーは、速度と位置の制御ループに必要となる情報を取得するために使用されます。さらに、ローターの位置は、座標変換 (dq から abc へ) のために必要となります。

このように制御される 2 つの各モーターは、減速装置を介してジョイントに接続され、ロボット マニピュレーターの動きを制御する重要な役割を担っています。

ロボット ジョイントの位置制御のためのブラシレス DC モーター ドライブ

ロボットの位置制御システムのモデル作成

モーター ドライブ、減速装置、等価負荷、コントローラーを含む、ロボットの 2 つの第 1 ジョイントに用いる駆動システム全体は、ブラシレス DC モーター ドライブを利用するロボットの軸制御の例で示されています。

このブラシレス DC モーター ドライブは、2 つの AC6 (PM 同期モーター ドライブ) ブロックとして表されます。このブロックは、永久磁石形同期モーター (PMSM)、IGBT インバーター、速度コントローラー、電流コントローラーで構成される、ブラシレス DC モーター ドライブのモデルを作成したものです。AC6 モデルの入力はモーターの速度指令であり、出力はモーター回転数です。この AC6 モデルの出力 (モーター回転数) は、減速装置 (Speed Reducer ブロック) の入力に与えられます。

減速装置は、2 つの Speed Reducer ブロックでモデル化されます。Speed Reducer ブロックの 2 つの入力は、モーターの速度 (高速) と負荷の速度 (低速) です。一方、出力は高速回転側のシャフトのトルクと低速回転側のシャフトのトルクです。Speed Reducer ブロックは、減速比と減速装置の慣性モーメント、入力シャフトと出力シャフトのそれぞれの剛性と減衰を表すパラメーターで特徴付けられています。

減速装置の出力シャフトは、ロボットの構造の残りの部分を表す Robot ブロックの T1 入力と T2 入力に接続されます。この Robot ブロックは、ロボット マニピュレーターの各ジョイント (ジョイント 1、ジョイント 2) にかかるトルクから、以下の (4-6) 式に基づいてロボット マニピュレーターの各ジョイントの位置 (角度)、速度 (角速度)、加速度 (角加速度) を計算します。各ジョイント (番号 i=1、2) に対して、(4-6) 式が成り立ち、右辺の 3 項分を足し合わせたものが、各ジョイントにかかるトルク TL となります。仮に、あるリンクに対する他のリンク (ジョイント) の影響を考える場合は、他のリンクの各トルク TL をそれぞれ 1 つの負荷として取り扱うこともできます。

TL=Jid2θidt2+Cidθidt+Giθi(1)

ここで、Θi はジョイントの位置 (角度)、Ji は慣性モーメント、Ci は遠心力とコリオリの力に関わる係数、Gi は重力に関わる係数を表します。

この例のロボットのモデルは、Simulink ブロックを使って作成したものです。

上図のロボットのモデルが使用するパラメーター J1、C1、G1、J2、C2、G2 は、ジョイントの位置の関数として表しています。それらは、多項式 (Fcn ブロック) またはルックアップ テーブル (Lookup Table ブロック) を使って表すことができます。

ジョイントの位置 Θ1 と Θ2 は、ロボット マニピュレーターの目標軌道 (Trajectory generator ブロックによりジョイントの位置の指令値を生成) に追従するように、Robot ブロックの外部の位置制御ループ (Position Controller T1 ブロック、Position Controller T2 ブロック) により制御されます。これらの制御ループには、さまざまな制御アルゴリズムを利用できます。一般的によく利用される制御アルゴリズムとしては、比例-微分制御 (PD 制御)、動的制御、適応制御があります。この例では、比例-微分コントローラー (PD コントローラー) がロボット マニピュレーターの 2 つのジョイント (ジョイント 1、ジョイント 2) に対して適用されています。

3 次多項式で表されるロボットの動作のテスト軌跡は、Trajectory Generator ブロックで作成されます。

この例のロボット マニピュレーターのテスト軌道は、ワークスペースの位置 6 から位置 3 までの動きで構成されます。具体的には、ジョイント 1 の位置 (角度) Θ1 が -π/6 から π/6 まで変化しながら、 ジョイント 2 の位置 (角度) Θ2 が -π/4 から π/4 まで変化する軌道です。この Trajectory Generator ブロックで指定するパラメーターは、各ジョイント (ジョイント 1、ジョイント 2) の初期の位置 [Θ1ini, Θ2ini]、最終の位置 [Θ1fin, Θ2fin]、さらに初期から最終までの移動時間です。次の図は、上記のテスト軌道に基づいて制御された、ロボット マニピュレーターの姿勢の変化を表すものです。

ロボット マニピュレーターの姿勢の変化によるジョイント 1 の慣性モーメントの変動は、ジョイント 2 の位置 Θ2 の関数として表されるものとします。Θ2 は最小のときに 170kgm2 となり、ロボット マニピュレーターの初期位置では 215kgm2、最終の位置では 340kgm2 まで変化します。ジョイント 2 の慣性モーメントは定数であり、J2 = 50kgm2 として表すことができます。これらの慣性の変動は、Robot ブロックに実装されている非線形関数により表されます。

ロボット マニピュレーターの目標軌道に対する追跡性能

前述のロボット マニピュレーターのテストの軌跡は、ジョイント (ジョイント 1、ジョイント 2) を駆動するモーター ドライブが引き出せる性能という点において、最も要求の厳しい軌道の 1 つです。このテスト軌道は、ロボット マニピュレーターの目標軌道に対する追跡性能を評価するために利用されるものです。これは、ロボット マニピュレーターの各ジョイントを駆動するモーター ドライブの性能を評価する目的としても利用できます。

例では、マニピュレーターは 1.5 秒間に -30°から +30°まで回転するようにプログラムされています。同時に、アームは後ろの位置 (Θ2 = -45°) から最も前の位置 (Θ2 = 45°) まで移動します。シミュレーションは、時間ステップ 1µs として実行します。

マニピュレーター、モーター ドライブ 1、モーター ドライブ 2 の応答は、AC6 ブロックと Robot ブロックの出力変数に接続された 3 つのスコープに表示されます。

ロボット マニピュレーターの各ジョイント (ジョイント 1、ジョイント 2) の位置 Θ1 と Θ2 は、目標軌道 (テスト軌道) に追従しながら、それぞれ変化します。

ブラシレス DC モーター ドライブ (AC 6 モデル) は、ロボット マニピュレーターが目標軌道 (テスト軌道) に追従して動作するように非常に良好な性能を発揮します。AC6 モデル内にある DC 母線の電圧は、モーターの減速中に一定の電圧に保持されます。モーターのトルクは、モーターの電流の大きさに比例します。これは、ベクトル制御アルゴリズムが良好に動作していることを示します。

参考文献

[1] Miller, T. J. E., Brushless Permanent-Magnet and Reluctance Motor Drives, Clarendon Press, Oxford, 1989.

[2] Spong, M. W., and Vidyasagar, M., Robot Dynamics and Control, John Wiley & Sons, New York, 1989.