2nd Library

Dependents:   cuboid_balance_ros cuboid_balance mirror_actuator_V1

PID_Cntrl.h

Committer:
altb2
Date:
2021-04-01
Revision:
3:e3b84ea63c0f
Parent:
2:b54eb3e24d2d

File content as of revision 3:e3b84ea63c0f:

#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);

    float operator()(float error) {
        return doStep((double)error);
    }

    virtual     ~PID_Cntrl();

    void        reset(float initValue);
    float       doStep(double error);
    void        set_limits(double ,double );
    float       get_ulimit(void);
    
private:

    double Iold;
    double eold,yold,del;
    double uMax;
    double uMin;
    double Ts;
    double P,I,D;
    double p, Ka;
    void setCoefficients(float P, float I, float D, float tau_f, float Ts);

};

#endif