Translate

ALAT MONITOR KADAR GULA DARAH ONLINE DAN MONITOR VIA ANDROID NODEMCU ESP8266 ARDUINO DAN THINGSPEAK

Alat Monitor Kadar Gula Darah ONLINE dan Monitor via Android NODEMCU ESP8266 ARDUINO dan Thingspeak


          Pada ksempatan kali ini saya akan menjelaskan mengenai bagaimana cara membuat sebuah alat dengan menggunakan Nodemcu ESP8266 dengan fungsinya yaitu untuk monitor gula darah secara non invasive. alat ini berbasis mikrokontroller dengan server yang digunakan yaitu Thingspeak. jadi alat ini akan memonitor hasilnya melalui 2 buah perangkat yaitu internet dan android. untuk android menggunakan bluetooth dan untuk internet dengan menggunakan server bebasis internet. untuk lebih jelasnya berikut adalah program dan daftar komponennya.



a. Nodemcu ESP8266




b. LCD + I2C




c. Bluetooth HC-05




d. Sensor Photodioda






e. Program Arduino IDE

#include <ESP8266WiFi.h>
#include "Wire.h"
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27, 16, 2);

String apiKey = "AAABBB2345DDEEEFFFGG";     //  Enter your Write API key from ThingSpeak
const char* resource = "/update?api_key=";

const char *ssid =  "my hotspot";     // replace with your wifi ssid and wpa2 key
const char *pass =  "12345678";
const char* server = "api.thingspeak.com";

int bt = D4;
int btx = 0;
int adcsensor;
float fix;
int datafix;
int cacah = 0;
float kalibrasi;
int tanda = 0;

WiFiClient client;

void setup() {

  WiFi.begin(ssid, pass);
  
  Serial.begin(9600);
  lcd.begin();
  lcd.clear();
  lcd.noCursor();
  
  pinMode(bt,INPUT);
  digitalWrite(bt,HIGH);
  
}


void loop(){
 delay(100);
   
 btx = digitalRead(bt);

 if(btx == 0){
   delay(200); 
   tanda = 1; 
   cacah = 0;
   lcd.clear();
   delay(1000);
 }

if(tanda == 0){ 
 lcd.setCursor(0,0);
 lcd.print("TEKAN MULAI");
 lcd.setCursor(0,1);
 lcd.print("mg/dl= ");
 lcd.print(fix);
 lcd.print("      "); 
   Serial.print("mmHg= ");
   Serial.println(fix);
   Serial.println("    ");
   Serial.println("    ");
}



if(tanda == 1){  
 datafix = 0;
 fix = 0;

adcsensor = analogRead(A0);

 lcd.setCursor(0,0);
 lcd.print("ADC= ");
 lcd.print(adcsensor);
 lcd.print("      ");

 cacah++;

 datafix = adcsensor + datafix;

 delay(100);


 if(cacah >= 20){
  fix = datafix / 20.0;
  //kalibrasi = (fix - 1022.1) / 0.0967;
  cacah = 0;
  lcd.clear();  

              if (client.connect(server,80))   //   "184.106.153.149" or api.thingspeak.com
                      {  
                            
                             String postStr = apiKey;
                             postStr +="&field1=";
                             postStr += String(fix);
                             postStr += "\r\n\r\n";

                             client.print(String("GET ") + resource + apiKey + "&field1=" + fix + " HTTP/1.1\r\n" + "Host: " + server + "\r\n" + "Connection: close\r\n\r\n");                             
                                        
                             client.print("Host: api.thingspeak.com\n");
                             client.print("Connection: close\n");
                             client.print("X-THINGSPEAKAPIKEY: "+apiKey+"\n");
                             client.print("Content-Type: application/x-www-form-urlencoded\n");
                             client.print("Content-Length: ");
                             client.print(postStr.length());
                             client.print("\n\n");
                             client.print(postStr);

                             Serial.print("mmHg= ");
                             Serial.println(fix);
                             delay(10000);
                        }
                        
  
 client.stop();
  tanda = 0;
  }

}

}





f. Program Android







g. VIDEO HASILNYA







No comments:

Post a Comment