template for students for mirror actuator

Dependencies:   FastPWM

Lib_Cntrl/PID_Cntrl.h

Committer:
altb2
Date:
2022-03-06
Revision:
3:d672a96eeecc
Parent:
2:c4c4cc1bff45

File content as of revision 3:d672a96eeecc:

#ifndef PID_CNTRL_H_
#define PID_CNTRL_H_

class PID_Cntrl
{
public:

    PID_Cntrl(float P, float I, float D, float tau_f, float Ts, float uMin, float uMax);
    PID_Cntrl() {};

    float operator()(float e)
    {
        return update(e);
    }

    virtual ~PID_Cntrl();

    void    reset(float initValue);
    void    setCoefficients(float P, float I, float D, float tau_f, float Ts, float uMin, float uMax);
    float   update(float e);
    float   saturate(float);


private:
    float P,I,D,tau_f,Ts,uMax,uMin;
    float Ipart,Dpart,e_old;

};

#endif