summaryrefslogtreecommitdiff
path: root/n/asserv/src/goto.c
diff options
context:
space:
mode:
Diffstat (limited to 'n/asserv/src/goto.c')
-rw-r--r--n/asserv/src/goto.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/n/asserv/src/goto.c b/n/asserv/src/goto.c
index 64d1eac..d833204 100644
--- a/n/asserv/src/goto.c
+++ b/n/asserv/src/goto.c
@@ -41,7 +41,7 @@ int8_t goto_a;
/** Travel speed for fixed speed movements, i8. */
int8_t goto_s;
/** Destination epsillon. */
-int32_t goto_eps = 200L << 8;
+int32_t goto_eps = 20L << 8;
/** Debug values. */
int32_t goto_dx, goto_dy, goto_dl, goto_da;
/** Movement finished. */
@@ -65,6 +65,8 @@ goto_linear_mode (void)
/* Change speed. */
if (d > goto_d)
{
+ speed_left = 0;
+ speed_right = 0;
speed_left_aim = 0;
speed_right_aim = 0;
goto_finish = 1;
@@ -90,11 +92,11 @@ goto_angular_mode (void)
/* Small angles. */
if (0x10000L > angle_diff && angle_diff > -0x10000L)
{
- goto_finish = 1;
speed_left = 0;
speed_right = 0;
speed_left_aim = 0;
speed_right_aim = 0;
+ goto_finish = 1;
}
else
{
@@ -116,6 +118,8 @@ goto_position_mode (void)
if (goto_dx < goto_eps && goto_dx > -goto_eps
&& goto_dy < goto_eps && goto_dy > -goto_eps)
{
+ speed_left = 0;
+ speed_right = 0;
speed_left_aim = 0;
speed_right_aim = 0;
goto_finish = 1;