Motor
Fork of Motor by
motor.h@1:c97f8bcd6c0f, 2013-08-31 (annotated)
- Committer:
- Reiko
- Date:
- Sat Aug 31 15:58:46 2013 +0000
- Revision:
- 1:c97f8bcd6c0f
- Parent:
- 0:5cafacc2a607
- Child:
- 2:3faf5dcde08f
Added proper speed changing methods, added initial PI controller
Who changed what in which revision?
User | Revision | Line number | New 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 | 1:c97f8bcd6c0f | 12 | void setPWM(float 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 | 1:c97f8bcd6c0f | 27 | //void pid(); |
Reiko | 0:5cafacc2a607 | 28 | |
Reiko | 1:c97f8bcd6c0f | 29 | int setPoint; |
Reiko | 1:c97f8bcd6c0f | 30 | float pMulti; |
Reiko | 1:c97f8bcd6c0f | 31 | float iMulti; |
Reiko | 1:c97f8bcd6c0f | 32 | int error; |
Reiko | 1:c97f8bcd6c0f | 33 | int prevError; |
Reiko | 1:c97f8bcd6c0f | 34 | float P; |
Reiko | 1:c97f8bcd6c0f | 35 | float I; |
Reiko | 0:5cafacc2a607 | 36 | }; |
Reiko | 0:5cafacc2a607 | 37 | |
Reiko | 0:5cafacc2a607 | 38 | #endif |