4#include "math/math_util.h"
43 } feedforward_config_t;
51 Feedforward(
double kS,
double kV,
double kA) : kS_(kS), kV_(kV), kA_(kA) {}
52 Feedforward(Feedforward::feedforward_config_t config)
53 : kS_(config.kS), kV_(config.kV), kA_(config.kA) {}
68 double ks_sign = sign(v);
69 return kS_ * ks_sign + kV_ * v + kA_ * a;
78 double max_vel(
double max_voltage)
const {
82 return max_voltage / kV_;
91 double max_acc(
double max_voltage)
const {
95 return max_voltage / kA_;
98 double kS()
const {
return kS_; }
99 double kV()
const {
return kV_; }
100 double kA()
const {
return kA_; }
102 void set_kS(
double kS) { kS_ = kS; }
103 void set_kV(
double kV) { kV_ = kV; }
104 void set_kA(
double kA) { kA_ = kA; }
double calculate(double v, double a) const
Definition math/controls/feedforward.h:67
Feedforward(double kS, double kV, double kA)
Definition math/controls/feedforward.h:51
double max_vel(double max_voltage) const
Definition math/controls/feedforward.h:78
double max_acc(double max_voltage) const
Definition math/controls/feedforward.h:91