2019/09/13ver

Dependencies:   SerialMultiByte QEI omni_wheel PID R1370MeasuringWheel IRsensor ikarashiMDC_2byte_ver Eigen

Committer:
skouki
Date:
Fri Sep 13 02:19:03 2019 +0000
Revision:
0:3ad208cbea5f
2019/09/13ver

Who changed what in which revision?

UserRevisionLine numberNew contents of line
skouki 0:3ad208cbea5f 1 #ifndef POSITION_CONTROLLER_H
skouki 0:3ad208cbea5f 2 #define POSITION_CONTROLLER_H
skouki 0:3ad208cbea5f 3
skouki 0:3ad208cbea5f 4 #include "mbed.h"
skouki 0:3ad208cbea5f 5 #include "Geometry.h"
skouki 0:3ad208cbea5f 6 //#define M_PI 3.141592653589793238462643383219502884
skouki 0:3ad208cbea5f 7
skouki 0:3ad208cbea5f 8 class PositionController {
skouki 0:3ad208cbea5f 9 public :
skouki 0:3ad208cbea5f 10 PositionController(double accDistance_, double decDistance_, double initialVelocity_, double terminalVelocity_, float maxVelocity_);
skouki 0:3ad208cbea5f 11
skouki 0:3ad208cbea5f 12 void compute(int positionX, int positionY);
skouki 0:3ad208cbea5f 13 void targetXY(int targetX_, int targetY_);
skouki 0:3ad208cbea5f 14 double getVelocityX();
skouki 0:3ad208cbea5f 15 double getVelocityY();
skouki 0:3ad208cbea5f 16 private :
skouki 0:3ad208cbea5f 17
skouki 0:3ad208cbea5f 18 double generateSineWave(double x, double initV, double termV, double start, double length);
skouki 0:3ad208cbea5f 19
skouki 0:3ad208cbea5f 20 double accDistance;
skouki 0:3ad208cbea5f 21 double decDistance;
skouki 0:3ad208cbea5f 22 double accTrue;
skouki 0:3ad208cbea5f 23 double decTrue;
skouki 0:3ad208cbea5f 24 double initialVelocity;
skouki 0:3ad208cbea5f 25 double terminalVelocity;
skouki 0:3ad208cbea5f 26 float maxVelocity;
skouki 0:3ad208cbea5f 27 double target;
skouki 0:3ad208cbea5f 28 int targetX;
skouki 0:3ad208cbea5f 29 int targetY;
skouki 0:3ad208cbea5f 30 double radians;
skouki 0:3ad208cbea5f 31 double velocity[2];
skouki 0:3ad208cbea5f 32
skouki 0:3ad208cbea5f 33 bool enoughDistance;
skouki 0:3ad208cbea5f 34
skouki 0:3ad208cbea5f 35 double getVelocity(int position);
skouki 0:3ad208cbea5f 36 };
skouki 0:3ad208cbea5f 37 #endif
skouki 0:3ad208cbea5f 38