Motor

Fork of Motor by Reiko Randoja

Committer:
Reiko
Date:
Sat Sep 14 17:18:51 2013 +0000
Revision:
3:94db629c0a83
Parent:
2:3faf5dcde08f
Child:
4:2b77f4656e92
Child:
5:99fa6dffea40
Changed floats to ints

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Reiko 0:5cafacc2a607 1 #ifndef MOTOR_H
Reiko 0:5cafacc2a607 2 #define MOTOR_H
Reiko 0:5cafacc2a607 3
Reiko 0:5cafacc2a607 4 #include "mbed.h"
Reiko 1:c97f8bcd6c0f 5 #include "PCA9555.h"
Reiko 1:c97f8bcd6c0f 6 #include "qed.h"
Reiko 0:5cafacc2a607 7
Reiko 0:5cafacc2a607 8 class Motor {
Reiko 0:5cafacc2a607 9 public:
Reiko 1:c97f8bcd6c0f 10 Motor(PinName PWMpin, PCA9555 *ioExt, unsigned int dir1Pin, unsigned int dir2Pin, PinName encA, PinName encB);
Reiko 0:5cafacc2a607 11
Reiko 3:94db629c0a83 12 void setPWM(int newPWM);
Reiko 0:5cafacc2a607 13 void setSpeed(int newSpeed);
Reiko 0:5cafacc2a607 14 int getSpeed();
Reiko 1:c97f8bcd6c0f 15 void pid();
Reiko 0:5cafacc2a607 16
Reiko 0:5cafacc2a607 17 private:
Reiko 1:c97f8bcd6c0f 18 PwmOut pwm;
Reiko 1:c97f8bcd6c0f 19 PCA9555 *extIO;
Reiko 1:c97f8bcd6c0f 20 unsigned int dir1;
Reiko 1:c97f8bcd6c0f 21 unsigned int dir2;
Reiko 1:c97f8bcd6c0f 22 QED qed;
Reiko 1:c97f8bcd6c0f 23
Reiko 1:c97f8bcd6c0f 24 int currentSpeed;
Reiko 1:c97f8bcd6c0f 25 int getDecoderCount();
Reiko 0:5cafacc2a607 26
Reiko 2:3faf5dcde08f 27 void resetPID();
Reiko 2:3faf5dcde08f 28
Reiko 1:c97f8bcd6c0f 29 //void pid();
Reiko 0:5cafacc2a607 30
Reiko 1:c97f8bcd6c0f 31 int setPoint;
Reiko 3:94db629c0a83 32 int pMulti;
Reiko 3:94db629c0a83 33 int iDiv;
Reiko 3:94db629c0a83 34 int dMulti;
Reiko 3:94db629c0a83 35 int error;
Reiko 3:94db629c0a83 36 int prevError;
Reiko 3:94db629c0a83 37 int P;
Reiko 3:94db629c0a83 38 int I;
Reiko 3:94db629c0a83 39 int D;
Reiko 3:94db629c0a83 40 int minPwm;
Reiko 3:94db629c0a83 41 int pidMulti;
Reiko 3:94db629c0a83 42 int iMax;
Reiko 0:5cafacc2a607 43 };
Reiko 0:5cafacc2a607 44
Reiko 0:5cafacc2a607 45 #endif