Buka Senin - Jumat jam 08.30 s/d jam 16.30 , Sabtu Jam 8.30 s/d jam 13.00 , Minggu tutup
  • Selamat Datang di Indomaker ❯ Silahkan pesan produk sesuai kebutuhan anda, kami siap melayani.
  • Selamat Datang di Indomaker ❯ Silahkan pesan produk sesuai kebutuhan anda, kami siap melayani.
Beranda » Blog » ESP-01, Mendeteksi Sensor Suhu dan Kelembaban via Telegram

ESP-01, Mendeteksi Sensor Suhu dan Kelembaban via Telegram

Diposting pada 15 January 2020 oleh farhan / Dilihat: 623 kali / Kategori:

 

Oke pada artikel kali ini membahas telegram kembali menggunakan sensor DHT untuk mendeteksi suhu dan kelembaban. Jadi nanti akan terdapat notifikasi jika suhu melebihi batas maksimal, kita juga bisa mengecek suhu dan kelembaban. Kontroler yang digunakan ESP-01 dengan tambahan shield dht11.

Alat dan bahan :

  • DHT11 Shield ESP-01, BELI
  • ESP-01 ESP8266, BELI
  • Kabel jumper, BELI
  • Breadboard, BELI
  • Push button, BELI
  • Library yang dibutukan, DISINI

Menggunakan telegram dibutuhkan API token dan ID chat yang akan dimasukkan ke sketch program Arduino. Caranya bisa di lihat di tutorial sebelumnya.

MEMULAI MENGGUNAKAN TELEGRAM

Sekarang mari kita rangkai alat dan bahannya untuk mengupload sketch program.

Rangkaian

Keterangan :

Jika sudah, disini saya pastikan sudah mendapatkan API token dan idchat, silahkan masukan pada sketch program di bawah ini. Upload sketch sampai done uploading dengan board : Generic ESP8266 Module.

Sketch Program

#include <ESP8266WiFi.h>
#include <WiFiClientSecure.h>
#include <UniversalTelegramBot.h>
#include "DHT.h"

#define DHTPIN 2

char ssid[] = "xxxxxxxxx"; //nama wifi
char password[] = "xxxxxxxxxxx"; //password wifi

#define BOTtoken "907580866:AAGulSeQkxWxsCew-6zQQbIihTFoBu91o" //token bot telegram
#define idChat "672053529" //idbot
WiFiClientSecure client;
UniversalTelegramBot bot(BOTtoken, client);

int Bot_mtbs = 1000;
long Bot_lasttime;
bool Start = false;

#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE);

void setup() {
  Serial.begin(9600);
  Serial.print("Connecting Wifi: ");
  Serial.println(ssid);

  WiFi.mode(WIFI_STA);
  WiFi.begin(ssid, password);

  while (WiFi.status() != WL_CONNECTED) {
    Serial.print(".");
    delay(500);
  }
  Serial.println("");
  Serial.println("WiFi connected");
  Serial.print("IP address: ");
  Serial.println(WiFi.localIP());
  dht.begin();
  delay(5000);
}

void loop() {
  delay(2000);

  float t = dht.readTemperature();
  Serial.print("Suhu saat ini : ");
  Serial.print(t);
  Serial.println(" *C");

  if (t > 37.00) {
    bot.sendChatAction(idChat, "Sedang mengetik...");
    Serial.print("Suhu saat ini : ");
    Serial.println(t);
    delay(3000);

    String suhu = "Intensitas suhu : ";
    suhu += int(t);
    suhu += " *C\n";
    suhu += "Suhu maksimal\n";
    bot.sendMessage(idChat, suhu, "");
    Serial.print("Mengirim data sensor ke telegram");
  }

  if (millis() > Bot_lasttime + Bot_mtbs) {
    int numNewMessages = bot.getUpdates(bot.last_message_received + 1);

    while (numNewMessages) {
      Serial.println("Memeriksa Respon");
      handleNewMessages(numNewMessages);
      numNewMessages = bot.getUpdates(bot.last_message_received + 1);
    }

    Bot_lasttime = millis();
  }
}

void handleNewMessages(int numNewMessages) {
  Serial.println("Pesan baru...");
  Serial.println(String(numNewMessages));

  for (int i = 0; i < numNewMessages; i++) {
    String chat_id = String(bot.messages[i].chat_id);
    String text = bot.messages[i].text;

    if (text == "/cekSuhu") {
      delay(2000);
      float t = dht.readTemperature();
      String suhu = "Suhu sekarang : ";
      suhu += int(t);
      suhu += " *C";
      bot.sendMessage(idChat, suhu, "");
    }
    else if (text == "/cekHum") {
      delay(2000);
      float h = dht.readHumidity();
      String hum = "Hum sekarang : ";
      hum += int(h);
      hum += " %";
      bot.sendMessage(idChat, hum, "");
    }
    else if (text == "/start") {
      String welcome = "Perintah : \n";
      welcome += "/cekSuhu\n";
      welcome += "/cekHum";
      bot.sendMessage(chat_id, welcome);
    }
  }
}

 

 

Hubungkan ESP-01 dengan Shield DHT11 dan disupply dengan tegangan 5V.

Buka nama bot telegram yang sudah dibuat. Klik Start.

 

Untuk mengecek suhu menggunakan perintah /cekSuhu, sementara kelembaban /cekHum. Suhu maksimal disini 37, anda bisa mengubah sendiri sesuai kebutuhan.

 

Semoga bermanfaat, terima kasih.

Bagikan ke

ESP-01, Mendeteksi Sensor Suhu dan Kelembaban via Telegram

Saat ini belum tersedia komentar.

Silahkan tulis komentar Anda

ESP-01, Mendeteksi Sensor Suhu dan Kelembaban via Telegram

Produk yang sangat tepat, pilihan bagus..!

Berhasil ditambahkan ke keranjang belanja
Lanjut Belanja
Checkout
Produk Quick Order

Pemesanan dapat langsung menghubungi kontak dibawah: