kh

Dependencies:   mbed PinDetect Servo

open.cpp

Committer:
Sayak97
Date:
2018-11-13
Revision:
3:2f7a7e2cd49e
Parent:
2:04bbd14722bd

File content as of revision 3:2f7a7e2cd49e:

/*
* 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 (authenticateOpen()) {
        return OPEN;
    } else {
        lockSafe();
        wait(5);
        return LOCK;
    }
}

/*
* Function: authenticate
* ----------------------------
*  Checks whether a cup was found through the sonar sensor
*
*  returns: true if cup found else false
*/
bool authenticateOpen() {
    return CorrectEntrySequenceAttempt();
}