Tutorial ESP32 Monitoring Lm35 DHT11 Platform IoT UBEAC HTTP

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 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.

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

chaerul

View Comments

Recent Posts

Panduan Lengkap: Cara Menyiapkan Klaster Kubernetes pada Ubuntu 22.04 LTS

Pendahuluan Dalam dunia pengembangan perangkat lunak yang terus berkembang, Kubernetes telah muncul sebagai alat kunci dalam orkestrasi…

7 days ago

AplikasiAkademik.com: Solusi Terbaik untuk Manajemen Sekolah yang Efisien

Mengelola sebuah sekolah atau lembaga pendidikan adalah tugas yang kompleks dan penuh tantangan. Dengan berbagai…

7 months ago

Cara Mudah Menginstal OpenVPN Server di Ubuntu 20.04 di Huaweicloud Panduan Langkah demi Langkah

Selamat datang di artikel kami tentang cara menginstal OpenVPN server di Ubuntu 20.04 di HuaweiCloud!…

12 months ago

Install Docker Portainer dan Nginx Proxy Manager Ubuntu Server

Dalam dunia pengembangan aplikasi, salah satu hal yang menjadi penting adalah mengelola dan memonitor kontainer…

1 year ago

Tutorial led blinking lengkap, Wiring & Code

Tutorial led blinking. LED (Light Emitting Diode) merupakan salah satu komponen elektronik yang paling umum…

1 year ago

Tutorial LCD Display Lengkap dengan wiring & code untuk pemula

Tutorial LCD Display, ini merupakan salah satu komponen yang sering digunakan dalam project elektronika sebagai…

1 year ago