DERPS
Dependencies: BMP280 BNO055_fusion PowerControl mbed
Fork of STRAIGHT_DRIVE_NO_SEP by
LOCOMOTION.h@26:0ea6a550a99d, 2016-04-06 (annotated)
- Committer:
- 12104404
- Date:
- Wed Apr 06 04:04:00 2016 +0000
- Revision:
- 26:0ea6a550a99d
- Parent:
- 25:f3bf8351bbd4
- Child:
- 27:fb1298d35bd1
added antoine stuff
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
12104404 | 6:0602a9e8118b | 1 | #ifndef LOCOMOTION_H |
12104404 | 6:0602a9e8118b | 2 | #define LOCOMOTION_H |
12104404 | 26:0ea6a550a99d | 3 | |
12104404 | 6:0602a9e8118b | 4 | #include "mbed.h" |
12104404 | 17:2f89826b5679 | 5 | #include "LOCALIZE.h" |
12104404 | 26:0ea6a550a99d | 6 | |
12104404 | 25:f3bf8351bbd4 | 7 | #define SPEED_TURN_MIN 0.15 |
12104404 | 25:f3bf8351bbd4 | 8 | #define SPEED_TURN_MAX 0.45 |
12104404 | 25:f3bf8351bbd4 | 9 | #define Y_BIAS_MIN 0.50 |
12104404 | 25:f3bf8351bbd4 | 10 | #define Y_BIAS_MAX 1.00 |
12104404 | 25:f3bf8351bbd4 | 11 | #define SPEED_X_MIN 0.07 |
12104404 | 25:f3bf8351bbd4 | 12 | #define SPEED_X_MAX 0.17 |
12104404 | 26:0ea6a550a99d | 13 | |
12104404 | 25:f3bf8351bbd4 | 14 | #define X_INCREASE 1 |
12104404 | 25:f3bf8351bbd4 | 15 | #define X_DECREASE 2 |
12104404 | 25:f3bf8351bbd4 | 16 | #define X_BACKWARDS 3 |
12104404 | 26:0ea6a550a99d | 17 | #define ROTATE_1 4 |
12104404 | 26:0ea6a550a99d | 18 | #define ROTATE_2 5 |
12104404 | 26:0ea6a550a99d | 19 | #define BACKOFF 10 |
12104404 | 26:0ea6a550a99d | 20 | #define X_NEAR_GOAL 0 |
12104404 | 26:0ea6a550a99d | 21 | #define X_FAR_GOAL 90 |
12104404 | 26:0ea6a550a99d | 22 | #define Y_INCREMENT 7 |
12104404 | 26:0ea6a550a99d | 23 | |
12104404 | 15:7729da55873a | 24 | enum { |
12104404 | 15:7729da55873a | 25 | ANGLE_TURN = 0, |
12104404 | 15:7729da55873a | 26 | ANGLE_BIAS = 1, |
12104404 | 15:7729da55873a | 27 | }; |
12104404 | 26:0ea6a550a99d | 28 | |
12104404 | 6:0602a9e8118b | 29 | class LOCOMOTION |
12104404 | 6:0602a9e8118b | 30 | { |
12104404 | 6:0602a9e8118b | 31 | public: |
12104404 | 24:fb1f083ebd62 | 32 | LOCOMOTION(PinName en, PinName motor1F, PinName motor1B,PinName motor2F, PinName motor2B, PinName forward1, PinName forward2, DigitalOut& led1, DigitalOut& led2, DigitalOut& led3, DigitalOut& led4); |
12104404 | 23:455f7da3dd7a | 33 | DigitalOut _en; |
12104404 | 15:7729da55873a | 34 | PwmOut _m1f; |
12104404 | 15:7729da55873a | 35 | PwmOut _m1b; |
12104404 | 15:7729da55873a | 36 | PwmOut _m2f; |
12104404 | 15:7729da55873a | 37 | PwmOut _m2b; |
12104404 | 15:7729da55873a | 38 | DigitalOut _m1dir; |
12104404 | 15:7729da55873a | 39 | DigitalOut _m2dir; |
12104404 | 24:fb1f083ebd62 | 40 | DigitalOut _led1; |
12104404 | 24:fb1f083ebd62 | 41 | DigitalOut _led2; |
12104404 | 24:fb1f083ebd62 | 42 | DigitalOut _led3; |
12104404 | 24:fb1f083ebd62 | 43 | DigitalOut _led4; |
12104404 | 23:455f7da3dd7a | 44 | void eStop(void); |
12104404 | 26:0ea6a550a99d | 45 | void mStop(void); |
12104404 | 18:f9012e93edb8 | 46 | bool setXPos(int target, int current, int error, int angle); |
12104404 | 25:f3bf8351bbd4 | 47 | bool setYBias(int target, int current, int error, int angle); |
12104404 | 15:7729da55873a | 48 | bool setAngle(int target, int current, int error, int mode); |
12104404 | 25:f3bf8351bbd4 | 49 | |
12104404 | 26:0ea6a550a99d | 50 | void setXstate(int *xCurrState, int *xTarget,bool xGood,bool angleGood,int *angleGoal,int *angleTol ); |
12104404 | 25:f3bf8351bbd4 | 51 | void setAngleTol(int *angleTol,bool yGood, bool xGood); |
12104404 | 25:f3bf8351bbd4 | 52 | void setYgoal(bool xGood,bool angleGood,bool yGood,int *yTarget); |
12104404 | 25:f3bf8351bbd4 | 53 | void check_xya(bool *xGood,bool *yGood,bool *angleGood, int xGoal,int angleGoal,int yGoal,LOCALIZE_xya xya,int xErr, int yErr,int angleErr); |
12104404 | 26:0ea6a550a99d | 54 | |
12104404 | 15:7729da55873a | 55 | protected: |
12104404 | 17:2f89826b5679 | 56 | float s; |
12104404 | 25:f3bf8351bbd4 | 57 | void setMotors(float x); |
12104404 | 23:455f7da3dd7a | 58 | int wrap(int num); |
12104404 | 19:2dd81b864e14 | 59 | |
12104404 | 6:0602a9e8118b | 60 | }; |
12104404 | 6:0602a9e8118b | 61 | #endif |