AresENSEA-CDF2020
/
AresCDFMainCode_us2
Test
Diff: odo_asserv.cpp
- Revision:
- 13:a72b0752aa6f
- Parent:
- 12:2c312916a621
- Child:
- 14:dd3c756c6d48
diff -r 2c312916a621 -r a72b0752aa6f odo_asserv.cpp --- a/odo_asserv.cpp Fri Sep 11 13:47:56 2020 +0000 +++ b/odo_asserv.cpp Fri Sep 11 14:15:57 2020 +0000 @@ -8,7 +8,7 @@ // Coeff à définir empiriquement const double coeffGLong = 5.956, coeffDLong = -5.956; // constantes permettant la transformation tic/millimètre //const double coeffGAngl = 12.4516203705, coeffDAngl = 12.725; // constantes permettant la transformation tic/degré -const double coeffGAngl = 12*2*Pi*53791, coeffDAngl = 12*2*Pi*54972; // constantes permettant la transformation tic/radian +const double coeffGAngl = 53791/(12*2*Pi), coeffDAngl = 54972/(12*2*Pi); // constantes permettant la transformation tic/radian long comptG = 0, comptD = 0; // nb de tics comptés pour chaque codeur @@ -29,15 +29,15 @@ ///// ODOMÉTRIE // Variables et constantes -#define NbPulseCodeur 1000 +//#define NbPulseCodeur 1000 #define entraxe 245 -float x = 0, y = 0, phi = 0; -float phi_deg; -float x0 = 0, y0 = 0, phi0 = 0; -float dDist = 0, dAngl = 0; -float distG = 0, distD = 0; // Distance parcourue par chaque roue +double x = 0, y = 0, phi = 0; +double x0 = 0, y0 = 0, phi0 = 0; +double dDist = 0, dAngl = 0; +double distG = 0, distD = 0; // Distance parcourue par chaque roue +// Approximation par segment de droite void odometrie() { x0 = x; @@ -50,17 +50,7 @@ x = x0 + dDist * cos(phi0); y = y0 + dDist * sin(phi0); phi = phi0 + dAngl; - phi_deg = phi*180/Pi; - comptG = 0; comptD = 0; -} - - -///// CONSIGNE ANGLE - -void angle() -{ - } \ No newline at end of file