akihiro takeda / pid
Committer:
orihika
Date:
Wed Sep 20 04:19:32 2017 +0000
Revision:
0:2806fecd5288
test

Who changed what in which revision?

UserRevisionLine numberNew contents of line
orihika 0:2806fecd5288 1 #ifndef MBED_PID_H
orihika 0:2806fecd5288 2 #define MBED_PID_H
orihika 0:2806fecd5288 3
orihika 0:2806fecd5288 4 #include "mbed.h"
orihika 0:2806fecd5288 5
orihika 0:2806fecd5288 6 class PositionPid
orihika 0:2806fecd5288 7 {
orihika 0:2806fecd5288 8 public :
orihika 0:2806fecd5288 9 void setup(float Kp, float Ki, float Kd, float dt);
orihika 0:2806fecd5288 10
orihika 0:2806fecd5288 11 void cal(float target, float nowval);
orihika 0:2806fecd5288 12
orihika 0:2806fecd5288 13 float duty();
orihika 0:2806fecd5288 14
orihika 0:2806fecd5288 15 private :
orihika 0:2806fecd5288 16 float kp, ki, kd,
orihika 0:2806fecd5288 17 time, frequency,
orihika 0:2806fecd5288 18 old, now,
orihika 0:2806fecd5288 19 p, i, d, result;
orihika 0:2806fecd5288 20 };
orihika 0:2806fecd5288 21
orihika 0:2806fecd5288 22 class SpeedPid
orihika 0:2806fecd5288 23 {
orihika 0:2806fecd5288 24 public :
orihika 0:2806fecd5288 25 void setup(float Kp, float Ki, float Kd, float dt);
orihika 0:2806fecd5288 26
orihika 0:2806fecd5288 27 void cal(float target, float nowval);
orihika 0:2806fecd5288 28
orihika 0:2806fecd5288 29 float duty();
orihika 0:2806fecd5288 30
orihika 0:2806fecd5288 31 private :
orihika 0:2806fecd5288 32 float kp, ki, kd,
orihika 0:2806fecd5288 33 time, frequency,
orihika 0:2806fecd5288 34 e, e1, e2,
orihika 0:2806fecd5288 35 p, i, d, result;
orihika 0:2806fecd5288 36 };
orihika 0:2806fecd5288 37
orihika 0:2806fecd5288 38 #endif