スポンサーリンク

加速度制限台形速度プロファイルによる軌跡生成の注意点:巡航期間が無い場合

加速度制限による台形速度プロファイルを用いることで、ロボットを滑らかに制御することが可能になります。

前回までの記事で、この加速度を制限した台形速度プロファイルの軌跡生成手法について紹介しました。

ロボットの軌跡を生成する際に重要な項目として、 モータの出力できる限界を使って 短い時間で移動する という点が...
ロボットをスムーズに制御するために、台形速度プロファイルを用いた手法があります。 以前の記事では、この加速度を制限した...

今回の記事では、軌跡生成の際に注意する点について、問題点と対策方法を紹介していきたいと思います。

加速度制限台形速度制御と注意点

加速度制限台形速度(Acceleration Limited Feed Profile、加速度を制限した台形速度のプロファイル)による制御に用いられる軌跡は、下のグラフのように表されます。

速度のグラフを見て分かるように、台形速度プロファイルではその名の通り速度波形は台形をしており、3つの期間(加速期間T1、巡航期間T2、減速期間T3)で生成されています。

台形速度の軌跡生成方法

台形速度プロファイルを生成するために必要となる各期間のパラメータ(T1T2T3)は、次のような流れで算出します。

ロボットの最大巡航速度をF[m/sec]とし、最大加速度をA[m/sec2]で与えられたとき、初速VSを終速VEのときの加速期間T1と減速期間T3

$$ \begin{eqnarray} T_1 &=& \frac{F – V_S}{A} \\ T_3 &=& \frac{F – V_E}{A} \end{eqnarray} $$

で求めることが出来ます。

そして、この2つの期間(T1T3)で移動する距離(L1L3)は

$$ \begin{eqnarray} L_1 &=& \frac{1}{2}(V_S+F) T_1 \\ L_3 &=& \frac{1}{2}(F+V_E) {T_3} \end{eqnarray}$$

となるため、残った距離と最大巡航速度F[m/sec]から巡航期間T2

$$ T_2 = \frac{L – L_1 – L_3}{F} $$

と求めることが出来ます。

このような台形速度プロファイルによる軌跡生成法では、与えられた最大加速度Aと最大速度Fを用いているため、最短時間でスムーズに移動するロボットの軌跡を生成することが出来ます。

注意点

上で紹介した加速度を制限した台形速度プロファイルを用いることで、時間最適で滑らかにロボットを移動させることが出来ます。

しかし以前の記事でも注意点として紹介したように、与えられた条件によっては算出したパラメータの値が0や負になる場合があります。

例えば、与えられた最大速度Fや最大加速度Aに対して

  • 移動距離Lが短い
  • 初速VSや終速VEが高い

等があります。

今回からの記事では、このような特別なケースに対処するための判別方法と、対策方法を紹介したいと思います。

巡航期間が無い場合

移動距離Lが短い場合、これまでに紹介した算出方法では巡航期間T2が負の値(マイナス)になる場合があります。

当然、巡航期間が-2秒みたいなことはあり得ない(制御が出来ない)ので、対応する必要があります。

そこで、最大加速度Aによる加速度制限を行いながら、巡航期間T2がない速度プロファイルを作成します。

起こりうる条件の判別式

これまでに紹介した巡航期間T2の算出方法で求めた値が

$$ T_2 < 0 $$

のように0を下回っている場合、その巡航期間T2で移動する距離L2

$$ L_2 < 0 $$

のように負の値になります。

移動期間や距離がマイナスでは軌跡生成は出来ません。

このような、台形速度による軌跡生成できない場合を判断するための条件式を求めていきます。

巡航期間T2の算出方法

$$ T_2 = \frac{L – L_1 – L_3}{F} $$

より、最大速度Fはプラスの値なので

$$ L-L_1-L_3 < 0 $$

となる時に、巡航期間T2は負の値になることが分かります。

対策方法

巡航期間T2が無い場合に、最大加速度Aを用いて軌跡を生成するためのパラメータの算出方法を紹介します。

まず、巡航期間T2を算出した結果がマイナスの場合は、

$$ \begin{eqnarray} && T_2 < 0 \\ && \rightarrow \left\{ \begin{array}{l} T_2 = 0 \\ L_2 = 0 \end{array} \right. \end{eqnarray} $$

のように、巡航期間T2を0として、その巡航期間T2での移動距離L2も0とします。

この結果、出来上がる加速度制限の軌跡は加速期間T1と減速期間T3のみになります。

さらに出来上がる速度波形は台形ではなく三角形になり、速度の最大値FPは与えられた最大速度Fよりも低くなります。

では、この速度波形の最大値FPを求めていきます。

巡航期間T2がない加速度制限Aにより生成された速度波形のピーク(最大値)をFPとすると、加速期間T1と減速期間T3

$$ T_1 = \frac{F_P – V_S}{A} $$

$$ T_3 = \frac{F_P – V_E}{A} $$

のように表されます。

さらに、加速期間T1で移動する距離L1

$$ \begin{eqnarray} L_1 &=& \frac{V_S + F_P}{2} \frac{F_P – V_S}{A} \\ &=& \frac{{F_P}^2-{V_S}^2}{2 A} \end{eqnarray} $$

と求めることが出来ます。

同様に、加速期間T3で移動する距離L3

$$ \begin{eqnarray} L_3 &=& \frac{F_P + V_E}{2} \frac{F_P – V_E}{A} \\ &=& \frac{{F_P}^2-{V_E}^2}{2 A} \end{eqnarray} $$

と求められます。

ここで巡航期間T2がない場合、この巡航期間T2での移動距離L2も0になります。

そのため、残りの期間(T1T3)で移動した距離(L1L3)の合計が与えられた移動したい距離Lになるので

$$ L_1 + L_3 = L $$

の関係式が成り立ちます。

これより、この関係式に含まれるL1L3について、先ほど求めた速度波形の最大値FPを使って表した式を代入し、最大値FPについて解くと

$$ \begin{eqnarray} L_1 + L_3 &=& L \\ \frac{{F_P}^2-{V_S}^2}{2 A} + \frac{{F_P}^2-{V_E}^2}{2 A} &=& L \\ {F_P}^2-{V_S}^2 + {F_P}^2-{V_E}^2 &=& 2 A L \\ 2 {F_P}^2 &=& 2 A L + {V_S}^2 + {V_E}^2 \\ F_P &=& \sqrt{\frac{2 A L + {V_S}^2 + {V_E}^2}{2}}\end{eqnarray} $$

となります。

よって、この求めた式を用いることで、加速度制限Aによる巡航期間T2がない場合の速度波形のピークFPを算出することが出来ました。

小まとめ

これまでに紹介してきた軌跡生成の方法をまとめます。

以前の記事で紹介した加速度制限による軌跡生成の方法にて算出した巡航期間T2

$$ T_2 < 0 $$

のように0より小さい場合は、巡航期間T2が無い加速度制限Aによる軌跡生成を行います。

この時の速度波形の最大値FP

$$ F_P = \sqrt{\frac{2 A L + {V_S}^2 + {V_E}^2}{2}} $$

のように算出することが出来ます。

そして、この速度波形のピークFPから各期間(T1T3)は

$$ T_1 = \frac{F_P – V_S}{A} $$

$$ T_3 = \frac{F_P – V_E}{A} $$

と算出することが出来ます。

まとめ

今回は、加速度制限による軌跡生成の際に注意する点について、巡航期間が無い場合を取り扱い、その問題点と対策方法を紹介しました。

今回の記事で紹介した手法を用いることで、与えられた条件により台形速度プロファイルが作成できない場合でも、最大加速度をフルに使った時間最適な軌跡を生成することが出来ます。

スポンサーリンク
レクタングル(大)広告
レクタングル(大)広告

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

関連コンテンツ