summaryrefslogtreecommitdiffhomepage
path: root/digital/io/src/gutter.fsm
blob: a8b1409a47120bf0b552c5e0bfe0c7f34a5e3d7e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#FSM gutter
gutter

States:
 IDLE
 ROTATE_REAR_SIDE_TO_GUTTER
 GO_TO_THE_GUTTER_WALL
 OPEN_COLLECTOR
 CLOSE_COLLECTOR

Events:
 start
 rotation_done
 ready
 collector_opened
 collector_closed

IDLE:
 start -> ROTATE_REAR_SIDE_TO_GUTTER
  Pur the robot back to the gutter to allow it to drop the balls in the gutter.

ROTATE_REAR_SIDE_TO_GUTTER:
 rotation_done -> GO_TO_THE_GUTTER_WALL
  The rotation is done, the robot can go to the wall in backward mode to drop the balls in the gutter. 

GO_TO_THE_GUTTER_WALL:
 ready -> OPEN_COLLECTOR
  Open the collector and wait for a while.

OPEN_COLLECTOR:
 collector_opened -> CLOSE_COLLECTOR
  Close the rear panel.

CLOSE_COLLECTOR:
 collector_closed-> IDLE
  The samples has been inserted in the gutter. Go to the idle state.