diff --git a/.project b/.project
new file mode 100644
index 0000000..6da9835
--- /dev/null
+++ b/.project
@@ -0,0 +1,17 @@
+
+
+ FaceRecognition-python
+
+
+
+
+
+ org.python.pydev.PyDevBuilder
+
+
+
+
+
+ org.python.pydev.pythonNature
+
+
diff --git a/.pydevproject b/.pydevproject
new file mode 100644
index 0000000..d001f0a
--- /dev/null
+++ b/.pydevproject
@@ -0,0 +1,5 @@
+
+
+Default
+python interpreter
+
diff --git a/SensorsArd/SensorsArd.ino b/SensorsArd/SensorsArd.ino
index 7550a21..aa3bfb1 100644
--- a/SensorsArd/SensorsArd.ino
+++ b/SensorsArd/SensorsArd.ino
@@ -7,28 +7,84 @@ const int buzzerPin = 3;
int inputVal = 0;
long duration;
int distance;
-char piInput = 'N';
+boolean IROK = false;
+boolean UltraOK = false;
+char pi = 'N';
void setup() {
pinMode(trigPin, OUTPUT);
- pinMode(echoPin, INPUT);
+ pinMode(echoPin, INPUT);
pinMode(LED_BUILTIN, OUTPUT);
pinMode(relayPin, OUTPUT);
pinMode(buzzerPin, OUTPUT);
- pinMode(ProxSensor,INPUT);
+ pinMode(ProxSensor, INPUT);
digitalWrite(buzzerPin, LOW);
digitalWrite(relayPin, LOW);
- Serial.begin(9600);
+ Serial.begin(9600);
}
void loop() {
+ IROK = false;
+ UltraOK = false;
+ pi = 'N';
- boolean IROK = false;
- boolean UltraOK = false;
+ distance = readDistance();
+ if (distance < 70) UltraOK = true;
+ else UltraOK = false;
+ if (digitalRead(ProxSensor) == LOW ) IROK = true;
+ else IROK = false;
+
+
+ if (Serial.available() > 0) {
+ pi = Serial.read();
+ }
+
+ delay(500);
+
+ Serial.println(pi);
+ Serial.println(IROK);
+ Serial.println(UltraOK);
+
+ if (IROK && UltraOK && pi == 'o') {
+ openShifter();
+ }
+ IROK = false;
+ UltraOK = false;
+}
+
+void openShifter() {
+ digitalWrite(relayPin, HIGH);
+ playBuzzer(300, true);
+ delay(7000);
+ digitalWrite(relayPin, LOW);
+ IROK = false;
+ UltraOK = false;
+ pi = 'N';
+ serialFlush();
+}
+
+void serialFlush() {
+ while (Serial.available() > 0) {
+ char t = Serial.read();
+ }
+}
+
+void playBuzzer(int time, boolean ok) {
+ tone(buzzerPin, 3000);
+ delay(time / 2);
+ noTone(buzzerPin);
+ delay(100);
+ tone(buzzerPin, 3000);
+ delay(time / 2);
+ noTone(buzzerPin);
+
+}
+
+int readDistance() {
// Clears the trigPin
- digitalWrite(trigPin, LOW);
+ digitalWrite(trigPin, LOW);
delayMicroseconds(2);
// Sets the trigPin on HIGH state for 10 micro seconds
digitalWrite(trigPin, HIGH);
@@ -37,56 +93,6 @@ void loop() {
// Reads the echoPin, returns the sound wave travel time in microseconds
duration = pulseIn(echoPin, HIGH);
// Calculating the distance
- distance= duration*0.034/2;
+ return duration * 0.034 / 2;
- if (distance < 70) UltraOK = true;
- else UltraOK = false;
- if(digitalRead(ProxSensor) == LOW ) IROK = true;
- else IROK = false;
- char pi = 'N';
- if (Serial.available() > 0) { pi = Serial.read(); }
- delay(500);
- Serial.println(pi);
- Serial.println(IROK);
- Serial.println(UltraOK);
- //if (IROK && UltraOK) Serial.println("A");
- if (IROK && UltraOK && pi == 'o'){
- //if (Serial.read() == 'o') {
- digitalWrite(relayPin, HIGH);
- playBuzzer(300,true);
- delay(4000);
- digitalWrite(relayPin, LOW);
- IROK = false;
- UltraOK = false;
- pi = 'N';
- serialFlush();
- //}
- }
- IROK = false;
- UltraOK = false;
}
-
-void serialFlush(){
- while(Serial.available() > 0) {
- char t = Serial.read();
- }
-}
-
-void playBuzzer(int time, boolean ok){
- tone(buzzerPin, 3000);
- delay(time/2);
- noTone(buzzerPin);
- delay(100);
- tone(buzzerPin, 3000);
- delay(time/2);
- noTone(buzzerPin);
-
-}
-
-
-
-
-
-
-
-