summaryrefslogtreecommitdiff
path: root/digital/io/src
diff options
context:
space:
mode:
authorNicolas Schodet2010-05-30 11:06:18 +0200
committerNicolas Schodet2010-05-30 11:06:18 +0200
commit15d6ff1d70259c2f8be5e3c0fefafd39c95897a8 (patch)
tree140c217db682fa042293e152632e527df8a0662f /digital/io/src
parent9107c6f474f508fce88045c9b041269797c776b1 (diff)
digital/io/src: handle black corn in COLLECT state
Diffstat (limited to 'digital/io/src')
-rw-r--r--digital/io/src/ai_top_cb.c14
-rw-r--r--digital/io/src/top.fsm3
2 files changed, 17 insertions, 0 deletions
diff --git a/digital/io/src/ai_top_cb.c b/digital/io/src/ai_top_cb.c
index ec87b6cb..ed1ae038 100644
--- a/digital/io/src/ai_top_cb.c
+++ b/digital/io/src/ai_top_cb.c
@@ -331,6 +331,20 @@ ai__COLLECT__move_fsm_failed (void)
}
/*
+ * COLLECT =loader_black=>
+ * => COLLECT_BLACK
+ * move backward
+ * mark as black
+ */
+fsm_branch_t
+ai__COLLECT__loader_black (void)
+{
+ asserv_move_linearly (-90);
+ food_black (top_food);
+ return ai_next (COLLECT, loader_black);
+}
+
+/*
* COLLECT_SLOW_MOTION =loader_downed=>
* unload => UNLOAD
* collect => COLLECT
diff --git a/digital/io/src/top.fsm b/digital/io/src/top.fsm
index c268bd66..277f0a5a 100644
--- a/digital/io/src/top.fsm
+++ b/digital/io/src/top.fsm
@@ -137,6 +137,9 @@ COLLECT:
move_fsm_failed: unload -> UNLOAD
move_fsm_failed: collect -> COLLECT
cancel this element
+ loader_black -> COLLECT_BLACK
+ move backward
+ mark as black
COLLECT_SLOW_MOTION:
loader_downed: unload -> UNLOAD