kh

Dependencies:   mbed PinDetect Servo

Revision:
0:28e05e1a3d1e
Child:
1:2c365f6da61d
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/open.cpp	Sat Nov 10 19:30:54 2018 +0000
@@ -0,0 +1,42 @@
+/*
+* Authors: Group 4 Adam Elghor, Brian Kaplan, Sayak Chatterjee, Moraa Onwonga
+* Purpose: Controls the OPEN state of the machine
+* Language:  C
+*/
+#include "open.h"
+#include "authentication.h"
+#include "actuators.h"
+#include "parameters.h"
+
+/*
+* Function:  OPEN
+* --------------------
+*  Calls the functions needed to for the open state
+*
+*
+*  returns: the next state in the state machine
+*  LOCK: if closed properly
+*  ALARM: if cup is not found after searching in a full circle
+*
+*/
+enum states open() {
+    if (authenticate()) {
+        return OPEN;
+    } else {
+        lockSafe();
+        wait(5000);
+        return LOCK;
+    }
+}
+
+/*
+* Function: authenticate
+* ----------------------------
+*  Checks whether a cup was found through the sonar sensor
+*
+*  returns: true if cup found else false
+*/
+bool authenticate() {
+    return CorrectEntrySequenceAttempt();
+}
+