summaryrefslogtreecommitdiffhomepage
path: root/digital/io/src/loader.fsm
diff options
context:
space:
mode:
authorNicolas Schodet2010-05-10 23:54:29 +0200
committerNicolas Schodet2010-05-10 23:54:29 +0200
commit5c206451fabc49b614b09f416b373288f3cfe39d (patch)
tree36f9eb5decc017af0358d233d58e51a66aa0401d /digital/io/src/loader.fsm
parentf12ffb8014ba12e09b09e005c664a625bb5fe6c5 (diff)
digital/io/src: handle empty clamp
Diffstat (limited to 'digital/io/src/loader.fsm')
-rw-r--r--digital/io/src/loader.fsm11
1 files changed, 9 insertions, 2 deletions
diff --git a/digital/io/src/loader.fsm b/digital/io/src/loader.fsm
index 747bb51e..4ffafd26 100644
--- a/digital/io/src/loader.fsm
+++ b/digital/io/src/loader.fsm
@@ -33,6 +33,8 @@ States:
move load up to the unload position
LOADER_LOAD_UNLOADING
open clamp to unload
+ LOADER_LOAD_EMPTY_OPEN
+ open clamp due to no elements to pick
Events:
elevator_succeed
@@ -89,7 +91,7 @@ LOADER_DOWN:
loader_up -> LOADER_UPING
move up
loader_element -> LOADER_LOAD_CLOSING
- close clamp
+ clamp
LOADER_ERROR:
loader_down -> LOADER_DOWNING
@@ -110,8 +112,10 @@ LOADER_UPING:
post loader_errored event
LOADER_LOAD_CLOSING:
- clamp_succeed -> LOADER_LOAD_UPING
+ clamp_succeed: full -> LOADER_LOAD_UPING
move up
+ clamp_succeed: empty -> LOADER_LOAD_EMPTY_OPEN
+ open clamp
LOADER_LOAD_UPING:
elevator_succeed -> LOADER_LOAD_UNLOADING
@@ -121,3 +125,6 @@ LOADER_LOAD_UNLOADING:
clamp_succeed -> LOADER_DOWNING
move down
+LOADER_LOAD_EMPTY_OPEN:
+ clamp_succeed -> LOADER_DOWN
+