Wednesday, August 21, 2019

PROJECT THINGSPEAK

PROJECT THINGSPEAK

Pada project kali ini akan  memonitoring jarak benda yang berada di depan sensor, menggunakan sensor ultrasonik dengan platform Thingspeak, melalui ESP32 yang terkoneksi dengan internet. Sebelum membuat project ini  siapkan alat-alat yang diperlukan sebagai berikut:
  • ESP32
  • Sensor ultrasonik
  • Breadboard
  • Jumper male-male (4 buah)

Selanjutnya rangkai rangkaian seperti pada gambar dibawah ini:

ultrasonik%2Besp



Setelah terhubung dengan baik sesuai dengan gambar, buka aplikasi Arduino IDE. Apabila belum pernah menginstall dan mengupload program menggunakan Arduino IDE bisa pelajari terlebih dahulu dalam postingan sebelumnya dihttps://alltechnologyproject.blogspot.com/2019/07/install-dan-upload-program-esp32.html.

persiapkan thingspeak, buka thingspeak.com melalui web browser. buat akun terlebih dahulu, apabila sudah buat channel baru, dengan cara klik new channel:
thingspeakchannel

isi nama channel sesuai keinginan, disini menggunakan nama channel jarak benda cheklist Field1, dan klik save channel.

Untitled

pada channel yang telah dibuat tadi, klik API Keys, copy key dari write API Key dan Channel ID ke program yang akan dibuat.

thingspeakjarak3


Download library thingspeak terlebih dahulu pada Arduino IDE.  klik Tools >> Manage Libraries atau bias juga dengan tekan Ctrl+Shift+I, ketikkan Thingspeak ke kolom search. Kemudian klik install, tunggu hingga proses selesai. 


thingspeak

Selanjutnya meng-upload program sketch code ke Board ESP32. Berikut ini merupakan code program nya:
.

#include <ThingSpeak.h>
#include <WiFi.h>
const int trigPin = 2;
const int echoPin = 5;

// defines variables
long duration;
int distance;
//network information
const char *ssid = "rea"//your network SSID (name)
const char *pass = "rearamada12"//your network password
WiFiClient client;
//thingspeak settings
unsigned long channel = 847354; //your channel ID number
const char *apiKey = "6N678TNN450FWUSH"//your channel write API Key

//int lum, i = 0;

void setup() {
pinMode(trigPin, OUTPUT); // Sets the trigPin as an Output
pinMode(echoPin, INPUT); // Sets the echoPin as an Input
Serial.begin(115200);
delay(10);

//connect to WiFi
Serial.print("Connecting to: "); Serial.println(ssid);
WiFi.begin(ssid, pass);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("\nWiFi connected\n");

ThingSpeak.begin(client); //initialize ThingSpeak
}

void loop() {
// Clears the trigPin
digitalWrite(trigPin, LOW);
delayMicroseconds(2);

// Sets the trigPin on HIGH state for 10 micro seconds
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);

// Reads the echoPin, returns the sound wave travel time in microseconds
duration = pulseIn(echoPin, HIGH);

// Calculating the distance
distance= duration*0.034/2;

// Prints the distance on the Serial Monitor
Serial.print("Distance: ");
Serial.println(distance); 
// i++;
// lum = analogRead(34);

int x = ThingSpeak.writeField(channel, 1, distance, apiKey);
if (x == 200) {
Serial.println("Data " + String(distance));
Serial.print("distance: "); Serial.println(distance);
Serial.println("Update to ThingSpeak Successful.");
}
else {
Serial.println("Data " + String(distance));
Serial.println("Problem updating data. HTTP error code " + String(x));
}

Serial.println("Waiting...\n");
delay(20000);
}
.

Karena memerlukan koneksi internet untuk mengupload data jarak dari sensor ultrasonik, ubah ssid dan password sesuai dengan hotspot yang akan digunakan. Ganti API key sesuai dengan channel thngspeak yang digunakan. buka channel yang telah dibuat dan jarak yang benda yang dideteksi oleh sensor ultrasonik akan muncul pada channel thingspeak.


thingspeakjarak1

No comments:

Post a Comment