22 lines
470 B
C++
22 lines
470 B
C++
#ifndef PI_CONTROLLER_H
|
|
#define PI_CONTROLLER_H
|
|
|
|
#include "p_controller.h"
|
|
|
|
class PI_controller : public P_controller
|
|
{
|
|
private:
|
|
static constexpr double U_MAX = 100.0; // %
|
|
static constexpr double U_MIN = -100.0; // %
|
|
|
|
double Ti;
|
|
double T;
|
|
double integral;
|
|
public:
|
|
PI_controller(double Kp, double Ti, double T);
|
|
double update(double ref, double actual) override;
|
|
void reset() override;
|
|
};
|
|
|
|
#endif
|