Kazushi Yamanobe
/
R-ciliatable_4
latest version 9/26
pid.h
- Committer:
- Yamanobe
- Date:
- 2021-10-10
- Revision:
- 0:0d02a451e79d
File content as of revision 0:0d02a451e79d:
/********************************************* PID library PositionPid : 位置型 SpeedPid : 速度型 setup(float Kp, float Ki, float Kd, float dt) パラメータ、制御周期の設定 Kp : Pゲイン Ki : Iゲイン Kd : Dゲイン dt : 制御周期[s] calculate(float target, float nowValue) PIDの計算をする target : 目標値 nowValue : 現在値 duty() 計算結果を-1~1で返す *********************************************/ #ifndef MBED_PID_H #define MBED_PID_H #include "mbed.h" class PositionPid { public : void setup(float Kp, float Ki, float Kd, float dt); void calculate(float target, float nowValue); float duty(); private : float kp, ki, kd, time, frequency, old, now, p, i, d, result; }; class SpeedPid { public : void setup(float Kp, float Ki, float Kd, float dt); void calculate(float target, float nowValue); float duty(); private : float kp, ki, kd, time, frequency, e, e1, e2, p, i, d, result; }; #endif