summaryrefslogtreecommitdiff
path: root/digital/io/src
diff options
context:
space:
mode:
authorNicolas Schodet2010-05-14 04:34:28 +0200
committerNicolas Schodet2010-05-14 04:34:28 +0200
commit734b5b06dd0421c3c0ab9fbc282510801869ab4c (patch)
tree95ac9c3143f66e9c6b9b4912091d3f69cd5541b2 /digital/io/src
parent0a16f1d46ae8169a9342098a45f0878d57481297 (diff)
digital/io/src: open clamp on blocking
Diffstat (limited to 'digital/io/src')
-rw-r--r--digital/io/src/ai_loader_cb.c6
-rw-r--r--digital/io/src/loader.fsm2
2 files changed, 8 insertions, 0 deletions
diff --git a/digital/io/src/ai_loader_cb.c b/digital/io/src/ai_loader_cb.c
index 6afa73f8..632b7504 100644
--- a/digital/io/src/ai_loader_cb.c
+++ b/digital/io/src/ai_loader_cb.c
@@ -450,11 +450,14 @@ ai__LOADER_LOAD_UPING__elevator_unload_position (void)
* LOADER_LOAD_UPING =elevator_failed=>
* => LOADER_ERROR
* post loader_errored event
+ * open clamp
*/
fsm_branch_t
ai__LOADER_LOAD_UPING__elevator_failed (void)
{
main_post_event (AI_EVENT_loader_errored);
+ mimot_move_motor0_absolute (BOT_CLAMP_OPEN_STEP, BOT_CLAMP_SPEED);
+ mimot_move_motor1_absolute (BOT_CLAMP_OPEN_STEP, BOT_CLAMP_SPEED);
return ai_next (LOADER_LOAD_UPING, elevator_failed);
}
@@ -472,11 +475,14 @@ ai__LOADER_LOAD_UNLOADING__elevator_succeed (void)
* LOADER_LOAD_UNLOADING =elevator_failed=>
* => LOADER_ERROR
* post loader_errored event
+ * open clamp
*/
fsm_branch_t
ai__LOADER_LOAD_UNLOADING__elevator_failed (void)
{
main_post_event (AI_EVENT_loader_errored);
+ mimot_move_motor0_absolute (BOT_CLAMP_OPEN_STEP, BOT_CLAMP_SPEED);
+ mimot_move_motor1_absolute (BOT_CLAMP_OPEN_STEP, BOT_CLAMP_SPEED);
return ai_next (LOADER_LOAD_UNLOADING, elevator_failed);
}
diff --git a/digital/io/src/loader.fsm b/digital/io/src/loader.fsm
index 00366ed5..410021b9 100644
--- a/digital/io/src/loader.fsm
+++ b/digital/io/src/loader.fsm
@@ -190,11 +190,13 @@ LOADER_LOAD_UPING:
open clamp
elevator_failed -> LOADER_ERROR
post loader_errored event
+ open clamp
LOADER_LOAD_UNLOADING:
elevator_succeed -> LOADER_LOAD_UNLOADING_OPEN
elevator_failed -> LOADER_ERROR
post loader_errored event
+ open clamp
LOADER_LOAD_UNLOADING_OPEN:
clamp_succeed: down -> LOADER_DOWNING