Browse Source

AC_PID: expose parameters as AP_Float

this enables full tuning capability
master
Andrew Tridgell 9 years ago
parent
commit
412dc10353
  1. 2
      libraries/AC_PID/AC_P.h
  2. 6
      libraries/AC_PID/AC_PID.h
  3. 4
      libraries/AC_PID/AC_PI_2D.h

2
libraries/AC_PID/AC_P.h

@ -57,7 +57,7 @@ public: @@ -57,7 +57,7 @@ public:
void operator() (const float p) { _kp = p; }
// accessors
float kP() const { return _kp.get(); }
AP_Float &kP() { return _kp; }
void kP(const float v) { _kp.set(v); }
static const struct AP_Param::GroupInfo var_info[];

6
libraries/AC_PID/AC_PID.h

@ -57,9 +57,9 @@ public: @@ -57,9 +57,9 @@ public:
void operator() (float p, float i, float d, float imaxval, float input_filt_hz, float dt );
// get accessors
float kP() const { return _kp.get(); }
float kI() const { return _ki.get(); }
float kD() const { return _kd.get(); }
AP_Float &kP() { return _kp; }
AP_Float &kI() { return _ki; }
AP_Float &kD() { return _kd; }
float imax() const { return _imax.get(); }
float filt_hz() const { return _filt_hz.get(); }
float get_filt_alpha() const;

4
libraries/AC_PID/AC_PI_2D.h

@ -51,8 +51,8 @@ public: @@ -51,8 +51,8 @@ public:
void operator() (float p, float i, float imaxval, float input_filt_hz, float dt);
// get accessors
float kP() const { return _kp.get(); }
float kI() const { return _ki.get(); }
AP_Float &kP() { return _kp; }
AP_Float &kI() { return _ki; }
float imax() const { return _imax.get(); }
float filt_hz() const { return _filt_hz.get(); }
float get_filt_alpha() const { return _filt_alpha; }

Loading…
Cancel
Save