kh
Dependencies: mbed PinDetect Servo
open.cpp@3:2f7a7e2cd49e, 2018-11-13 (annotated)
- Committer:
- Sayak97
- Date:
- Tue Nov 13 03:19:06 2018 +0000
- Revision:
- 3:2f7a7e2cd49e
- Parent:
- 2:04bbd14722bd
DSFDS; ;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Sayak97 | 2:04bbd14722bd | 1 | /* |
Sayak97 | 2:04bbd14722bd | 2 | * Authors: Group 4 Adam Elghor, Brian Kaplan, Sayak Chatterjee, Moraa Onwonga |
Sayak97 | 2:04bbd14722bd | 3 | * Purpose: Controls the OPEN state of the machine |
Sayak97 | 2:04bbd14722bd | 4 | * Language: C |
Sayak97 | 2:04bbd14722bd | 5 | */ |
Sayak97 | 2:04bbd14722bd | 6 | #include "open.h" |
Sayak97 | 2:04bbd14722bd | 7 | #include "authentication.h" |
Sayak97 | 2:04bbd14722bd | 8 | #include "actuators.h" |
Sayak97 | 2:04bbd14722bd | 9 | #include "parameters.h" |
Sayak97 | 2:04bbd14722bd | 10 | |
Sayak97 | 2:04bbd14722bd | 11 | /* |
Sayak97 | 2:04bbd14722bd | 12 | * Function: OPEN |
Sayak97 | 2:04bbd14722bd | 13 | * -------------------- |
Sayak97 | 2:04bbd14722bd | 14 | * Calls the functions needed to for the open state |
Sayak97 | 2:04bbd14722bd | 15 | * |
Sayak97 | 2:04bbd14722bd | 16 | * |
Sayak97 | 2:04bbd14722bd | 17 | * returns: the next state in the state machine |
Sayak97 | 2:04bbd14722bd | 18 | * LOCK: if closed properly |
Sayak97 | 2:04bbd14722bd | 19 | * ALARM: if cup is not found after searching in a full circle |
Sayak97 | 2:04bbd14722bd | 20 | * |
Sayak97 | 2:04bbd14722bd | 21 | */ |
Sayak97 | 2:04bbd14722bd | 22 | enum states open() { |
Sayak97 | 2:04bbd14722bd | 23 | if (authenticateOpen()) { |
Sayak97 | 2:04bbd14722bd | 24 | return OPEN; |
Sayak97 | 2:04bbd14722bd | 25 | } else { |
Sayak97 | 2:04bbd14722bd | 26 | lockSafe(); |
Sayak97 | 2:04bbd14722bd | 27 | wait(5); |
Sayak97 | 2:04bbd14722bd | 28 | return LOCK; |
Sayak97 | 2:04bbd14722bd | 29 | } |
Sayak97 | 2:04bbd14722bd | 30 | } |
Sayak97 | 2:04bbd14722bd | 31 | |
Sayak97 | 2:04bbd14722bd | 32 | /* |
Sayak97 | 2:04bbd14722bd | 33 | * Function: authenticate |
Sayak97 | 2:04bbd14722bd | 34 | * ---------------------------- |
Sayak97 | 2:04bbd14722bd | 35 | * Checks whether a cup was found through the sonar sensor |
Sayak97 | 2:04bbd14722bd | 36 | * |
Sayak97 | 2:04bbd14722bd | 37 | * returns: true if cup found else false |
Sayak97 | 2:04bbd14722bd | 38 | */ |
Sayak97 | 2:04bbd14722bd | 39 | bool authenticateOpen() { |
Sayak97 | 2:04bbd14722bd | 40 | return CorrectEntrySequenceAttempt(); |
Sayak97 | 2:04bbd14722bd | 41 | } |
Sayak97 | 2:04bbd14722bd | 42 | |
Sayak97 | 0:28e05e1a3d1e | 43 |