Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of Timer by
Revision 36:2d7357a385bc, committed 2016-01-31
- Comitter:
- IceTeam
- Date:
- Sun Jan 31 16:11:32 2016 +0000
- Parent:
- 35:4e3d9ab1b94b
- Child:
- 37:da3a2c781672
- Child:
- 38:a17f8a61bc0d
- Commit message:
- sauvegarde
Changed in this revision
--- a/Map/Map.cpp Tue Jan 26 17:21:11 2016 +0000
+++ b/Map/Map.cpp Sun Jan 31 16:11:32 2016 +0000
@@ -68,7 +68,9 @@
obstacles.push_back(new Obs_circle(ROBOTRADIUS,IDO_P13,1750,3000-90,30));// P13
obstacles.push_back(new Obs_circle(ROBOTRADIUS,IDO_P14,1850,3000-90,30));// P14
obstacles.push_back(new Obs_circle(ROBOTRADIUS,IDO_P15,1770,3000-1100,30));// P15*/
- obstacles.push_back(new Obs_circle(ROBOTRADIUS,IDO_P16,700,1000,1));// P16
+ obstacles.push_back(new Obs_circle(ROBOTRADIUS,IDO_P16,700,1000,30));// P16
+ obstacles.push_back(new Obs_circle(ROBOTRADIUS,IDO_P15,1100,600,30));// P16
+ obstacles.push_back(new Obs_circle(ROBOTRADIUS,IDO_P15,900,800,50));// P16
}
int Map::getHeight(float x, float y)
--- a/Odometry/Odometry.cpp Tue Jan 26 17:21:11 2016 +0000
+++ b/Odometry/Odometry.cpp Sun Jan 31 16:11:32 2016 +0000
@@ -73,18 +73,18 @@
x = xO + R*sin(theta);
y = yO - R*cos(theta);
}*/
+
+
+
+ double dx = deltaS*cos(theta+deltaTheta/2);
+ double dy = deltaS*sin(theta+deltaTheta/2);
+ x += dx;
+ y += dy;
+
theta += deltaTheta;
while(theta > PI) theta -= 2*PI;
while(theta <= -PI) theta += 2*PI;
-
- double dx = deltaS*cos(theta-deltaTheta/2);
- double dy = deltaS*sin(theta-deltaTheta/2);
- x += dx;
- y += dy;
-
-
-
}
void Odometry::GotoXY(double x_goal, double y_goal)
--- a/Odometry/Odometry.h Tue Jan 26 17:21:11 2016 +0000 +++ b/Odometry/Odometry.h Sun Jan 31 16:11:32 2016 +0000 @@ -8,9 +8,9 @@ #define C 1.0 /* Vitesse d'acceleration d'angle reduite de 8000->4000 */ -#define accel_angle 4000 +#define accel_angle 8000 #define vitesse_angle 16000 -#define deccel_angle 4000 +#define deccel_angle 8000 #define accel_dista 8000 #define vitesse_dista 16000
--- a/main.cpp Tue Jan 26 17:21:11 2016 +0000
+++ b/main.cpp Sun Jan 31 16:11:32 2016 +0000
@@ -5,6 +5,7 @@
#define ATTENTE 0
#define GO 1
#define STOP 2
+#define ENTRAXE 248.25
InterruptIn mybutton(USER_BUTTON);
DigitalIn button(USER_BUTTON);
@@ -15,7 +16,7 @@
Serial logger (PA_9, PA_10);
RoboClaw roboclaw(460800, PA_11, PA_12);
/* Changement entraxe : 252->253 */
-Odometry odo(63.2, 63.3, 253, 4096, roboclaw);
+Odometry odo(63.2, 63.3, ENTRAXE, 4096, roboclaw);
int i = 0;
@@ -34,9 +35,9 @@
init();
//Construction des obstacles
- //map.build();
+ map.build();
- /*float x=odo.getX();
+ float x=odo.getX();
float y=odo.getY();
float the = 0;
@@ -56,13 +57,14 @@
odo.GotoXYT(path[i].x, path[i].y, the);
}
- odo.GotoThet(PI);
+ //odo.GotoThet(PI);
+ odo.GotoThet(0);
+ //odo.TestEntraxe(3);
+ /*
+ odo.GotoXYT(1000, 1000, 0);
+ odo.GotoXYT(0, 1000, PI);
odo.GotoThet(0);*/
- odo.GotoXYT(1000, 1000, 0);
- odo.GotoXYT(0, 1000, PI);
- odo.GotoThet(0);
-
//odo.GotoThet(-PI/2);
wait(2000);
//odo.GotoXYT(2250,500,0);
