By | 31/12/2020
ESP32 IoT Ubeac

Ubeac merupakan platform IoT gratis yang sangat saya sarankan untuk kalian gunakan sebagai tempat penyimpanan monitoring sistem iot. Seperti yang saya lakukan adalah membuat Tutorial sistem monitoring suhu dan kelembaban berbasis iot dengan sensor lm35 serta DHT11 menggunakan ESP32.

Selain menggunakan ESP32 kalian juga bisa menggunakan ESP8266 seperti NodeMCU atau Wemos D1 Mini atau bahkan sim808 dan juga raspbery pi.

Fitur pada ubic yang baru saya ketahui baru terdapat untuk sistem monitoring iot, yang artinya kita hanya bisa mengirim data ke server ubic kemudian data tersebut ditampilkan pada dashboard yang kita buat di website ubeac, tapi belum ada fitur untuk mengambil data dari ubeac.

Atau mungkin saya yang belum mengetahui fitur tersebut, jadi silahkan komentar dibawah jika kamu mengetahuinya.

Tutorial kali ini hanya akan membuat sistem monitoring ESP32 dengan sensor LM35 dan juga DHT11, dimana ESP32 mengirim data menggunakan protokol HTTP / HTTPS POST dengan header aplication/json.

artinya kita akan mengirim data dalam bentuk json, bukan url.

Hardware yang dibutuhkan

  1. Wemos D1 Mini ESP32 Beli Disini
  2. Modul Belajar ESP32 IoT Beli Disini
  3. Sensor DHT11
  4. Sensor LM35
  5. Kabel pelangi secukupnya

Langkah Tutorial ESP32 Mengirim Data Ubeac dengan HTTP POST

Tutorial ESP32 Monitoring Lm35 DHT11 Platform IoT UBEAC HTTP

Tutorial IoT dengan ESP32 sangat lah mudah, baik diprogram dengan arduino maupun micropython, dan berikut adalah langkah-langkah belajar iot dengan esp32 untuk mengirim data ke server ubeac.

  1. Buat rangkaian seperti di atas, jika kalian menggunakan modul trainer esp32 dari anakkendali.com maka rangkaianya sudah dibuat tinggal hubungkan pin gpio nya saja.
  2. Daftar di website ubeac
  3. Buat Dasboard baru di ubeac dengan nama “ESP32 anakkendali.com”
  4. Buat Gateway baru
  5. Buat Device baru
  6. lebih lengkapnya biar paham lihat di video youtube ya.
Tutorial ESP32 Monitoring Lm35 DHT11 Platform IoT UBEAC HTTP
Tutorial ESP32 Monitoring Lm35 DHT11 Platform IoT UBEAC HTTP
Tutorial ESP32 Monitoring Lm35 DHT11 Platform IoT UBEAC HTTP

Program ESP32 Send Data HTTP Post Ubeac Server

#include <ArduinoJson.h>
#include <WiFi.h>
#include <HTTPClient.h>

#include <Adafruit_Sensor.h>
#include "DHT.h"

#define pinAdc0 39

#define DHTPIN 5
#define DHTTYPE    DHT11
int adcVal;
DHT dht(DHTPIN, DHTTYPE);

const char *url = "http://anakkendali.hub.ubeac.io/ESP32anakkendali";

const char *ssid = "Private_Wifi_";  //Nama Wifi
const char *password = "zelwata202010"; // pass wifi

void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);
  dht.begin();
  WiFi.disconnect();
  delay(100);
  WiFi.begin(ssid, password);
  Serial.println("");

  Serial.print("Connecting");
  // Wait for connection
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
    return;
  }

}

void loop() {
  // put your main code here, to run repeatedly:
  delay(2000);

  float h = dht.readHumidity();
  float t = dht.readTemperature();
  float f = dht.readTemperature(true);

  // Check if any reads failed and exit early (to try again).
  if (isnan(h) || isnan(t) || isnan(f)) {
    Serial.println(F("Failed to read from DHT sensor!"));
    return;
  }
  analogReadResolution(10);
  float volt, suhucel;

  adcVal = analogRead(pinAdc0);
  volt = (adcVal * 5.0) / 1023;
  suhucel = 100 * volt + 5.0 ;

  Serial.print(F("Temperature: "));
  Serial.print(t);
  Serial.print(F("°C\t"));

  Serial.print(F("Humidity: "));
  Serial.print(h);
  Serial.print(F("%\t"));

  Serial.print("Tegangan :");
  Serial.print(volt);
  Serial.print("\tSuhu :");
  Serial.print(suhucel);
  Serial.println(" ^C");
  senUbeac(suhucel, t, h);

}

void senUbeac(float a, float b, float c) {
  String postData = (String)"{\"uid\": \"ESP32\",\"ts\": 1542326605,\"sensors\":[";
  postData += (String)"{\"name\": \"Suhu Celcius LM35\",\"unit\": 2,\"prefix\": 0,\"type\": 4,\"value\":" + a + "},";
  postData += (String)"{\"name\": \"Suhu Celcius DHT11\",\"unit\": 2,\"prefix\": 0,\"type\": 4,\"value\":" + b + "},";
  postData += (String)"{\"name\": \"Kelembaban DHT11\",\"unit\": 20,\"prefix\": 0,\"type\": 5,\"value\":" + c + "}";
  postData += "]}";

  HTTPClient http;
  http.begin(url);
  http.addHeader("Content-Type", "application/json");
  int httpCode = http.POST(postData);
  Serial.println(postData);

  if (httpCode > 0) {
    String payload = http.getString();
    Serial.println(payload);
  }
  else {
    Serial.printf("Error occurred while sending HTTP POST: %s\n", http.errorToString(httpCode).c_str());
  }

  http.end();
}

Untuk melihat referensi API nya silahkan kunjungi documentasi platfor ubeac atau klik https://www.ubeac.io/docs/GatewayList.html#_1-hardware-gateways

Jika belum terdapat video pada artikel ini silahkan ditunggu sampai muncul video tutorial nya, tapi kalo misalkan kamu butuh bantuan dalam membuat proyek iot dengan esp32, arduino atau esp8266 silahkan bisa langsung menghubungi admin ke nomer wa yang ada di pojok kanan bawah (versi dekstop)

Keyword

  1. ESP32 Ubeac
  2. ESP32 IOT Ubeac
  3. ESP32 Monitoring Suhu
  4. ESP32 HTTP POST
  5. ESP32 HTTP UBEAC
  6. Tutorial ESP32 Mengakses UBEAC
  7. Sistem IoT dengan ESP32
  8. Monitoring IoT ESP32
  9. Sistem Monitoring Berbasis IoT

One Reply to “Tutorial ESP32 Monitoring Lm35 DHT11 Platform IoT UBEAC HTTP”

  1. ichsan

    Maaf bang bagian dasboard saya kosong tidak ada sensornya, itu gimana ya ?

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *