pid
Fork of PID by
PID.h
- Committer:
- kikoaac
- Date:
- 2015-09-14
- Revision:
- 4:a3c85727f0f6
- Parent:
- 3:34f4f22b18e7
File content as of revision 4:a3c85727f0f6:
#ifndef PID_H #define PID_H #include "mbed.h" class PID { protected: PID(const PID& p); PID& operator=(const PID &p) { return *this; } void PIDctrl(); public: void InputLimits(float max,float min); void OutputLimits(float max,float min); PID(float tauKc, float tauKi, float tauKd ,Timer *T); double s_dErrIntg ,dErr_prev; void Start(); void pid_reset(); void setInterval(double inter); //Getters. void stop(); double dTarget; double dPoint; // PI制御ゲイン double GAIN_P ;//1.5 // 比例ゲイン double GAIN_I ;//2.8 // 積分ゲイン double GAIN_D ;//0.2 double data; private: double dErr; double dErrDiff; float OutMax; float InMax; float OutMin; float InMin; float OutSpan; float InSpan; Timer *timer; float prev_time; float gettime() { float a = timer->read()-prev_time; //printf("%f ",prev_time); prev_time=timer->read(); return a; } float T; double dRet; //Ticker T; float interval; }; #endif