From c6e00ee3772f785d9ad8a33c5441f1202df7fb96 Mon Sep 17 00:00:00 2001 From: alvin <alvin.limassa@gmail.com> Date: Mon, 8 Apr 2019 20:54:11 +0700 Subject: [PATCH] Main prog bug fix and node MCU connection --- mainProg/mainProg.ino | 47 +++++++++++++--------- nodeMCU/firebase_2/firebase_2.ino | 28 ++++++------- test/serialComArduino/serialComArduino.ino | 15 +++++++ test/serialComWifi/serialComWifi.ino | 16 ++++++++ 4 files changed, 74 insertions(+), 32 deletions(-) create mode 100644 test/serialComArduino/serialComArduino.ino create mode 100644 test/serialComWifi/serialComWifi.ino diff --git a/mainProg/mainProg.ino b/mainProg/mainProg.ino index 311c186..d6a4085 100644 --- a/mainProg/mainProg.ino +++ b/mainProg/mainProg.ino @@ -44,7 +44,8 @@ int ldrStatus; // Wifi SoftwareSerial s(11,12); -String distance; +int distance = 0; +bool turnoff = false; void setup() { //Wifi @@ -57,10 +58,9 @@ void setup() { // setup LCD lcd.begin(16,2); - lcd.clear(); - lcd.print(" Kid Protection "); + lcd.print("Kid Protection System"); lcd.setCursor(0, 1); - lcd.print(" System "); + lcd.print("-----Apa Aja-----"); // Buzzer pinMode(buzzer, OUTPUT); @@ -79,28 +79,39 @@ void setup() { pinMode(ldrPin,INPUT); } -void loop() { - if (s.available() >0) { - distance = s.read(); - Serial.print("Data = "); - Serial.println(distance); -// tone(buzzer, buzzerFreq); // Send 1KHz sound signal... -// delay(1000); +void loop() { + if (s.available() > 0 ) { + int result = s.read(); + if (result != distance) { + distance = result; + lcd.clear(); + lcd.print("Anda terpisah "); + lcd.print(distance); + lcd.print(" m dari anak anda"); + lcd.setCursor(0, 1); + lcd.print("-----Kid Protection System-----"); + if (distance - result > 100) { + turnoff = false; + } + } + Serial.println(result); + if (distance > 100 && !turnoff) { + state = 1; + } } - - reading = digitalRead(buttonpin); + // LCD + lcd.scrollDisplayLeft(); + delay(1000); if (reading == HIGH && previous == LOW){ if (state == 1){ state = 0; } else{ state = 1; - } + } + turnoff = true; } if (state == 1){ - // LCD -// lcd.scrollDisplayLeft(); - // POT potValue = analogRead(potPin); //Read and save analog value from potentiometer @@ -119,7 +130,7 @@ void loop() { //led ldrStatus = analogRead(ldrPin); - Serial.println(ldrStatus); +// Serial.println(ldrStatus); if (ldrStatus >= 200){ analogWrite(ledpin,50); } else if (ldrStatus >=50){ diff --git a/nodeMCU/firebase_2/firebase_2.ino b/nodeMCU/firebase_2/firebase_2.ino index 24163ed..4f77b42 100644 --- a/nodeMCU/firebase_2/firebase_2.ino +++ b/nodeMCU/firebase_2/firebase_2.ino @@ -10,11 +10,10 @@ #define WIFI_PASSWORD "99997777" //99997777 #define LED D4 -SoftwareSerial s(3,1); +//SoftwareSerial s(3,1); void setup() { pinMode(LED, OUTPUT); - s.begin(9600); Serial.begin(9600); // connect to wifi. WiFi.begin(WIFI_SSID, WIFI_PASSWORD); @@ -26,7 +25,7 @@ void setup() { Serial.println(); Serial.print("connected: "); Serial.println(WiFi.localIP()); - + Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH); if (Firebase.failed()) { Serial.print("Error connecting to Firebase"); @@ -47,19 +46,20 @@ void loop() { float y = (longc - longp) * cos(latp); float distance = deglen*sqrt(x*x + y*y) * 1000; int distanceInt = (int)distance; - digitalWrite(LED, HIGH); - Serial.println(latc,5); - Serial.println(longc,5); - Serial.println(latp,5); - Serial.println(longp,5); - if (s.available()>0) { - Serial.print("Jarak = "); - Serial.println(distanceInt); - Serial.println(); - s.write(distanceInt); + Serial.write(distanceInt); +// digitalWrite(LED, HIGH); +// Serial.println(latc,5); +// Serial.println(longc,5); +// Serial.println(latp,5); +// Serial.println(longp,5); +// if (s.available()>0) { +// Serial.print("Jarak = "); +// Serial.println(distanceInt); +// Serial.println(); + digitalWrite(LED, HIGH); delay(500); digitalWrite(LED, LOW); - } +// } delay(1000); } diff --git a/test/serialComArduino/serialComArduino.ino b/test/serialComArduino/serialComArduino.ino new file mode 100644 index 0000000..b06f8f1 --- /dev/null +++ b/test/serialComArduino/serialComArduino.ino @@ -0,0 +1,15 @@ +int data; //Initialized variable to store recieved data +#include<SoftwareSerial.h> +SoftwareSerial s(11,12); +void setup() { + //Serial Begin at 9600 Baud + s.begin(9600); + Serial.begin(9600); +} + +void loop() { +// data = Serial.read(); //Read the serial data and store it + data = s.read(); + Serial.println(data); + delay(1000); +} diff --git a/test/serialComWifi/serialComWifi.ino b/test/serialComWifi/serialComWifi.ino new file mode 100644 index 0000000..fe62587 --- /dev/null +++ b/test/serialComWifi/serialComWifi.ino @@ -0,0 +1,16 @@ +#include<SoftwareSerial.h> //Included SoftwareSerial Library +//Started SoftwareSerial at RX and TX pin of ESP8266/NodeMCU +SoftwareSerial s(3,1); + +void setup() { + //Serial S Begin at 9600 Baud + s.begin(9600); + Serial.begin(9600); +} + +void loop() { + //Write '123' to Serial + s.write(123); + Serial.write(123); + delay(1000); +} -- GitLab