summaryrefslogtreecommitdiffhomepage
path: root/digital/io-hub/src/apbirthday/robot.cc
diff options
context:
space:
mode:
authorNicolas Schodet2013-04-03 08:16:40 +0200
committerNicolas Schodet2013-04-03 21:37:44 +0200
commit94ad65245035203845f264f89a05d564b680869d (patch)
tree85f691d259b20722941cbfb68423d884493797d0 /digital/io-hub/src/apbirthday/robot.cc
parent978367ba839a1b2f94a4a5c37c0d57675ffcb1de (diff)
digital/io-hub/src/apbirthday: add move FSM
Diffstat (limited to 'digital/io-hub/src/apbirthday/robot.cc')
-rw-r--r--digital/io-hub/src/apbirthday/robot.cc8
1 files changed, 5 insertions, 3 deletions
diff --git a/digital/io-hub/src/apbirthday/robot.cc b/digital/io-hub/src/apbirthday/robot.cc
index 6352cca9..f76903f9 100644
--- a/digital/io-hub/src/apbirthday/robot.cc
+++ b/digital/io-hub/src/apbirthday/robot.cc
@@ -167,6 +167,9 @@ Robot::fsm_gen_event ()
if (ANGFSM_HANDLE_VAR (AI, event))
return true;
}
+ // Check obstacles.
+ if (move.check_obstacles ())
+ return true;
return false;
}
@@ -193,9 +196,8 @@ Robot::proto_handle (ucoo::Proto &proto, char cmd, const uint8_t *args, int size
(int16_t) ucoo::bytes_pack (args[0], args[1]),
(int16_t) ucoo::bytes_pack (args[2], args[3]),
};
- asserv.stop ();
- // TODO: use move FSM.
- asserv.goto_xy (pos, Asserv::DirectionConsign (args[4]));
+ move.stop ();
+ move.start (pos, Asserv::DirectionConsign (args[4]));
}
break;
case c ('f', 2):