足回り動かすためのライブラリ
Embed:
(wiki syntax)
Show/hide line numbers
pid.hpp
00001 #ifndef take_PID 00002 #define take_PID 00003 00004 #ifndef M_PI 00005 #define M_PI 3.14159265358979 00006 #endif 00007 /*INFO 00008 *coreを使わない場合idはなんでもいいです 00009 *UpdateのValueには現在値、ターゲットには目標値、dtには微分する時間を入れてください 00010 *getmvで操作量を含んだ結果を取得できます 00011 * 00012 */ 00013 class PID{ 00014 public: 00015 PID(double kp,double ki,double kd,int id); 00016 ~PID(); 00017 void setLimit(double max,double min); 00018 void Update(double Value,double Target,double dt,bool addmv = true); 00019 double getmv(); 00020 double mv; 00021 double value; 00022 double target; 00023 double e[3]; 00024 double Max; 00025 private: 00026 double Min; 00027 double Kp; 00028 double Ki; 00029 double Kd; 00030 double P; 00031 double I; 00032 double D; 00033 double integral; 00034 int ID; 00035 }; 00036 00037 #endif
Generated on Thu Jul 14 2022 14:37:03 by 1.7.2