目次
WheelOdometry
概要
クラス図
単体テスト履歴
2018/6/17 16:29
WheelOdometry
概要
名前空間:robot_object
エンコーダーの読み取り値から、以下を計算するクラス。
左右輪の速度[m/s]
重心速度[m/s]
角速度[deg/s]
曲率
曲率半径[m]
絶対座標 x, y [m]
絶対角度 [deg]
シングルトンとして実装。
update()メソッドをタイマ割り込み関数内で呼ぶことで値の更新を行う。
クラス図
WheelOdometry
uint16_t R_ENC_pre
uint16_t L_ENC_pre
uint16_t R_ENC_now
uint16_t L_ENC_now
const float BIG_R = 500000.0
const float DELTA_T = 0.001
const float TIRE_GEAR_NUM = 44.0
const float ENC_GEAR_NUM = 11.0
const float GEAR_RATIO = 4.0
const float ENC_RESOLUTION = 1600.0
const float ENC_R_DIR = -1.0
const float ENC_L_DIR = -1.0
const float PI = 3.1415926535897932384626433832795
float v
float v_R
float v_L
float ang_v
float kappa
float r
float ab_pos_x
float ab_pos_y
float ab_ang
WheelOdometry()
~WheelOdometry()
static WheelOdometry& getInstance()
void update()
float getV(bool sb_flag)
float getAng_v(bool sb_flag)
float getKappa(bool sb_flag)
float getV_R(bool sb_flag)
float getV_L(bool sb_flag)
SVG
|
PNG
|
TXT
単体テスト履歴
2018/6/17 16:29
手で動かしたときの角度と距離が何となく正しいを確認
sb_flagを引数に持つ関数に関しては、まだ動作確認を行っていない