Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
AccelDesigner Class Reference
拘束条件を満たす曲線加減速の軌道を生成するクラス More...
#include <accel_designer.h>
Public Member Functions | |
AccelDesigner (const float j_max, const float a_max, const float v_max, const float v_start, const float v_target, const float dist, const float x_start=0, const float t_start=0) | |
初期化付きコンストラクタ | |
AccelDesigner () | |
空のコンストラクタ.あとで reset() により初期化すること. | |
void | reset (const float j_max, const float a_max, const float v_max, const float v_start, const float v_target, const float dist, const float x_start=0, const float t_start=0) |
引数の拘束条件から曲線を生成する. この関数によって,すべての変数が初期化される.(漏れはない) | |
float | j (const float t) const |
時刻 t [s] における躍度 j [m/s/s/s] | |
float | a (const float t) const |
時刻 t [s] における加速度 a [m/s/s] | |
float | v (const float t) const |
時刻 t [s] における速度 v [m/s] | |
float | x (const float t) const |
時刻 t [s] における位置 x [m] | |
float | t_end () const |
終点時刻 [s] | |
float | v_end () const |
終点速度 [m/s] | |
float | x_end () const |
終点位置 [m] | |
float | t_0 () const |
境界の時刻 [s] | |
void | printCsv (const float t_interval=1e-3f) const |
stdout に軌道のcsvを出力する関数. | |
void | printCsv (std::ostream &os, const float t_interval=1e-3f) const |
std::ostream に軌道のcsvを出力する関数. | |
Protected Attributes | |
float | t0 |
境界のタイムスタンプを取得 | |
float | t3 |
境界点の時刻 [s] | |
float | x3 |
境界点の位置 [m] | |
AccelCurve | ac |
曲線加速用オブジェクト | |
AccelCurve | dc |
曲線減速用オブジェクト | |
Friends | |
std::ostream & | operator<< (std::ostream &os, const AccelDesigner &obj) |
情報の表示 |
Detailed Description
拘束条件を満たす曲線加減速の軌道を生成するクラス
- 移動距離の拘束条件を満たす曲線加速軌道を生成する
- 各時刻 $t$ における躍度 $j(t)$,加速度 $a(t)$,速度 $v(t)$,位置 $x(t)$ を提供する
- 最大加速度 $a_{\max}$ と始点速度 $v_s$ など拘束次第では目標速度 $v_t$ に達することができない場合があるので注意する
Definition at line 32 of file accel_designer.h.
Constructor & Destructor Documentation
AccelDesigner | ( | const float | j_max, |
const float | a_max, | ||
const float | v_max, | ||
const float | v_start, | ||
const float | v_target, | ||
const float | dist, | ||
const float | x_start = 0 , |
||
const float | t_start = 0 |
||
) |
初期化付きコンストラクタ
- Parameters:
-
j_max 最大躍度の大きさ [m/s/s/s],正であること a_max 最大加速度の大きさ [m/s/s], 正であること v_max 最大速度の大きさ [m/s],正であること v_start 始点速度 [m/s] v_target 目標速度 [m/s] dist 移動距離 [m] x_start 始点位置 [m] (オプション) t_start 始点時刻 [s] (オプション)
Definition at line 47 of file accel_designer.h.
AccelDesigner | ( | ) |
空のコンストラクタ.あとで reset() により初期化すること.
Definition at line 56 of file accel_designer.h.
Member Function Documentation
float a | ( | const float | t ) | const |
時刻 t [s] における加速度 a [m/s/s]
Definition at line 177 of file accel_designer.h.
float j | ( | const float | t ) | const |
時刻 t [s] における躍度 j [m/s/s/s]
Definition at line 167 of file accel_designer.h.
void printCsv | ( | const float | t_interval = 1e-3f ) |
const |
stdout に軌道のcsvを出力する関数.
Definition at line 226 of file accel_designer.h.
void printCsv | ( | std::ostream & | os, |
const float | t_interval = 1e-3f |
||
) | const |
std::ostream に軌道のcsvを出力する関数.
Definition at line 233 of file accel_designer.h.
void reset | ( | const float | j_max, |
const float | a_max, | ||
const float | v_max, | ||
const float | v_start, | ||
const float | v_target, | ||
const float | dist, | ||
const float | x_start = 0 , |
||
const float | t_start = 0 |
||
) |
引数の拘束条件から曲線を生成する. この関数によって,すべての変数が初期化される.(漏れはない)
- Parameters:
-
j_max 最大躍度の大きさ [m/s/s/s],正であること a_max 最大加速度の大きさ [m/s/s], 正であること v_max 最大速度の大きさ [m/s],正であること v_start 始点速度 [m/s] v_target 目標速度 [m/s] dist 移動距離 [m] x_start 始点位置 [m] (オプション) t_start 始点時刻 [s] (オプション)
Definition at line 70 of file accel_designer.h.
float t_0 | ( | ) | const |
境界の時刻 [s]
Definition at line 219 of file accel_designer.h.
float t_end | ( | ) | const |
終点時刻 [s]
Definition at line 207 of file accel_designer.h.
float v | ( | const float | t ) | const |
時刻 t [s] における速度 v [m/s]
Definition at line 187 of file accel_designer.h.
float v_end | ( | ) | const |
終点速度 [m/s]
Definition at line 211 of file accel_designer.h.
float x | ( | const float | t ) | const |
時刻 t [s] における位置 x [m]
Definition at line 197 of file accel_designer.h.
float x_end | ( | ) | const |
終点位置 [m]
Definition at line 215 of file accel_designer.h.
Friends And Related Function Documentation
std::ostream& operator<< | ( | std::ostream & | os, |
const AccelDesigner & | obj | ||
) | [friend] |
情報の表示
Definition at line 242 of file accel_designer.h.
Field Documentation
AccelCurve ac [protected] |
曲線加速用オブジェクト
Definition at line 274 of file accel_designer.h.
AccelCurve dc [protected] |
曲線減速用オブジェクト
Definition at line 275 of file accel_designer.h.
float t0 [protected] |
境界のタイムスタンプを取得
Definition at line 272 of file accel_designer.h.
float t3 [protected] |
境界点の時刻 [s]
Definition at line 272 of file accel_designer.h.
float x3 [protected] |
境界点の位置 [m]
Definition at line 273 of file accel_designer.h.
Generated on Mon Sep 26 2022 13:47:04 by
