From 579d7d9ad8caf4299c5c672b724d056d9e9d9797 Mon Sep 17 00:00:00 2001 From: Nicolas Schodet Date: Tue, 24 May 2011 01:33:18 +0200 Subject: digital/io-hub: add move FSM --- digital/io-hub/src/robospierre/main.c | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'digital/io-hub/src/robospierre/main.c') diff --git a/digital/io-hub/src/robospierre/main.c b/digital/io-hub/src/robospierre/main.c index b1abfd8a..b1e85b72 100644 --- a/digital/io-hub/src/robospierre/main.c +++ b/digital/io-hub/src/robospierre/main.c @@ -52,6 +52,7 @@ #include "clamp.h" #include "logistic.h" #include "path.h" +#include "move.h" #include "bot.h" @@ -160,7 +161,9 @@ main_event_to_fsm (void) /* Post the event */ FSM_HANDLE_VAR_E (AI, save_event); } - + /* Check obstables. */ + if (move_check_obstacles ()) + return; } /** Main (and infinite) loop. */ @@ -191,7 +194,7 @@ main_loop (void) position_t robot_pos; asserv_get_position (&robot_pos); main_obstacles_nb = radar_update (&robot_pos, main_obstacles_pos); - //move_obstacles_update (); + move_obstacles_update (); simu_send_pos_report (main_obstacles_pos, main_obstacles_nb, 0); } /* Update AI modules. */ @@ -252,6 +255,16 @@ proto_callback (uint8_t cmd, uint8_t size, uint8_t *args) v8_to_v16 (args[3], args[4]), v8_to_v16 (args[5], args[6])); break; + case c ('m', 5): + /* Go to position. + * - 2w: x, y. + * - 1b: backward. */ + { + vect_t position = { v8_to_v16 (args[0], args[1]), + v8_to_v16 (args[2], args[3]) }; + move_start_noangle (position, args[4], 0); + } + break; case c ('c', 1): /* Move clamp. * - 1b: position. */ -- cgit v1.2.3