From c4d20dd9ffa1c479de2858dd1b77ff014d1073dd Mon Sep 17 00:00:00 2001 From: Nicolas Schodet Date: Sun, 20 Apr 2008 19:17:07 +0200 Subject: * digital/asserv/src/asserv: - added separate setting of position control for theta/alpha. - disable angular position control for go to the dispenser. --- digital/asserv/src/asserv/twi_proto.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'digital/asserv/src/asserv/twi_proto.c') diff --git a/digital/asserv/src/asserv/twi_proto.c b/digital/asserv/src/asserv/twi_proto.c index db6bac41..171a6895 100644 --- a/digital/asserv/src/asserv/twi_proto.c +++ b/digital/asserv/src/asserv/twi_proto.c @@ -112,6 +112,7 @@ twi_proto_callback (u8 *buf, u8 size) case c ('s', 0): /* Stop (set zero speed). */ state_main.mode = MODE_SPEED; + state_main.variant = 0; speed_theta.use_pos = speed_alpha.use_pos = 0; speed_theta.cons = 0; speed_alpha.cons = 0; @@ -119,12 +120,11 @@ twi_proto_callback (u8 *buf, u8 size) case c ('l', 3): /* Set linear speed controlled position consign. * - 3b: theta consign offset. */ - state_main.mode = MODE_SPEED; speed_theta.use_pos = speed_alpha.use_pos = 1; speed_theta.pos_cons = pos_theta.cons; speed_theta.pos_cons += v8_to_v32 (0, buf[2], buf[3], buf[4]); speed_alpha.pos_cons = pos_alpha.cons; - state_start (&state_main, 0); + state_start (&state_main, MODE_SPEED, 0); break; case c ('a', 2): /* Set angular speed controlled position consign. @@ -156,13 +156,12 @@ twi_proto_callback (u8 *buf, u8 size) /* Move the arm. * - w: new position. * - b: speed. */ - state_aux0.mode = MODE_SPEED; speed_aux0.use_pos = 1; speed_aux0.pos_cons = pos_aux0.cons; speed_aux0.pos_cons += v8_to_v32 (0, 0, buf[2], buf[3]); speed_aux0.max = buf[4]; speed_aux0.slow = buf[4]; - state_start (&state_aux0, 0); + state_start (&state_aux0, MODE_SPEED, 0); break; case c ('p', x): /* Set parameters. */ -- cgit v1.2.3