座標、速度を表す構造体 CoordinateUnit を提供する。
void auto_move(const Coordinate &dst, const Coordinate &pos, const std::chrono::microseconds &delta_time)
自動制御用。変位のPID制御を行い、出力をT型のcalcに渡す。
void pid_move(const Velocity &tag_vel, const Velocity &now_vel, const std::chrono::microseconds &delta_time, float offset_rad=0.0)
手動操縦用。速度のPID制御を行い、出力をT型のcalcに渡す
Chassis(F &&f, const PidGain &vel_gain, const PidGain &pos_gain)
コンストラクタ。T型をfで初期化し、変位と速度のPIDゲインをセットする。
void move(const Velocity &vel, const float offset_rad=0.0)
モータへのPWM出力を計算する。その後callback関数にPWM出力を渡す。