kh
Dependencies: mbed PinDetect Servo
lock.cpp@0:28e05e1a3d1e, 2018-11-10 (annotated)
- Committer:
- Sayak97
- Date:
- Sat Nov 10 19:30:54 2018 +0000
- Revision:
- 0:28e05e1a3d1e
- Child:
- 1:2c365f6da61d
k'k
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Sayak97 | 0:28e05e1a3d1e | 1 | /* |
Sayak97 | 0:28e05e1a3d1e | 2 | * Authors: Group 4 Adam Elghor, Brian Kaplan, Sayak Chatterjee, Moraa Onwonga |
Sayak97 | 0:28e05e1a3d1e | 3 | * Purpose: Controls the LOCK state of the machine |
Sayak97 | 0:28e05e1a3d1e | 4 | * Language: C |
Sayak97 | 0:28e05e1a3d1e | 5 | */ |
Sayak97 | 0:28e05e1a3d1e | 6 | #include "lock.h" |
Sayak97 | 0:28e05e1a3d1e | 7 | #include "actuators.h" |
Sayak97 | 0:28e05e1a3d1e | 8 | #include "powerManagement.h" |
Sayak97 | 0:28e05e1a3d1e | 9 | #include "parameters.h" |
Sayak97 | 0:28e05e1a3d1e | 10 | |
Sayak97 | 0:28e05e1a3d1e | 11 | /* |
Sayak97 | 0:28e05e1a3d1e | 12 | * Function: lock |
Sayak97 | 0:28e05e1a3d1e | 13 | * -------------------- |
Sayak97 | 0:28e05e1a3d1e | 14 | * Locks safe |
Sayak97 | 0:28e05e1a3d1e | 15 | * |
Sayak97 | 0:28e05e1a3d1e | 16 | * returns: the next state in the state machine |
Sayak97 | 0:28e05e1a3d1e | 17 | * Open: After it has been locked |
Sayak97 | 0:28e05e1a3d1e | 18 | * |
Sayak97 | 0:28e05e1a3d1e | 19 | */ |
Sayak97 | 0:28e05e1a3d1e | 20 | enum states lock() { |
Sayak97 | 0:28e05e1a3d1e | 21 | if(authenticate()) { |
Sayak97 | 0:28e05e1a3d1e | 22 | openSafe(); |
Sayak97 | 0:28e05e1a3d1e | 23 | wait(5000); |
Sayak97 | 0:28e05e1a3d1e | 24 | return OPEN; |
Sayak97 | 0:28e05e1a3d1e | 25 | } else { |
Sayak97 | 0:28e05e1a3d1e | 26 | return LOCK: |
Sayak97 | 0:28e05e1a3d1e | 27 | } |
Sayak97 | 0:28e05e1a3d1e | 28 | } |
Sayak97 | 0:28e05e1a3d1e | 29 | |
Sayak97 | 0:28e05e1a3d1e | 30 | /* |
Sayak97 | 0:28e05e1a3d1e | 31 | * Function: authenticate |
Sayak97 | 0:28e05e1a3d1e | 32 | * ---------------------------- |
Sayak97 | 0:28e05e1a3d1e | 33 | * Checks whether a cup was found through the sonar sensor |
Sayak97 | 0:28e05e1a3d1e | 34 | * |
Sayak97 | 0:28e05e1a3d1e | 35 | * returns: true if cup found else false |
Sayak97 | 0:28e05e1a3d1e | 36 | */ |
Sayak97 | 0:28e05e1a3d1e | 37 | bool authenticate() { |
Sayak97 | 0:28e05e1a3d1e | 38 | return CorrectEntrySequenceAttempt(); |
Sayak97 | 0:28e05e1a3d1e | 39 | } |