SILVIA NUR ANGGITA
Published © LGPL

Monitoring Temperature and Humidity in Chicken Coops

Revolutionize poultry farming! 'Monitoring Temperature and Humidity in Chicken Coops' with NodeMCU ESP32, DHT11, and Telegram Bot

IntermediateFull instructions provided24 hours599
Monitoring Temperature and Humidity in Chicken Coops

Things used in this project

Story

Read more

Custom parts and enclosures

Monitoring Temperature and Humidity Chicken Coops

Schematics

Monitoring Temperature and Humidity Chicken Coops

Code

Monitoring Temperature and Humidity Chicken Coops

C/C++
#include "CTBot.h"
#include "DHT.h"
#include <LiquidCrystal_I2C.h>

#define DHTPIN 5   // Mendefinisikan pin yang digunakan untuk sensor DHT11 (pin 4)
#define DHTTYPE DHT11 // Mendefinisikan tipe sensor DHT (DHT11)

DHT dht(DHTPIN, DHTTYPE); // Inisialisasi objek DHT
const int ledPin = 13;  // Pin tempat LED terhubung
LiquidCrystal_I2C lcd(0x27 ,16, 2);

CTBot myBot;
int led=4;
String ssid = "PJM";
String pass = "wanipiro";
String token = "6852161557:AAHUW_Aaun3eDVf9svnMVcniHT5Z1t5IXQw";

void setup() {
  pinMode (ledPin,OUTPUT);
  Serial.begin(9600);
  Serial.println("Read DHT11 TelegramBot");
  dht.begin();
  delay(2000);

  

  if (myBot.wifiConnect(ssid, pass)) {
    Serial.println("\nOk wifi");
  } else {
    Serial.println("\nnot Ok wifi");
  }

  myBot.setTelegramToken(token);

  if (myBot.testConnection()) {
    Serial.println("\ntestConnection OK");
  } else {
    Serial.println("\ntestConnection NOK");
  }
  lcd.init();
  lcd.backlight();
  lcd.setCursor(0, 0);
  lcd.print("MONITORING");
  lcd.setCursor(0, 1);
  lcd.print("CHICKEN COOPS");
  
}

void loop() {
  TBMessage msg;
 // Baca suhu dari sensor DHT
  float temperature = dht.readTemperature();
  float humidity = dht.readHumidity();

  // Cek apakah suhu lebih dari 30 derajat Celsius
  if (temperature > 30.0) {
    // Hidupkan LED
    digitalWrite(ledPin, HIGH);
    Serial.println("Suhu kurang dari 30 derajat Celsius LED menyala.");
    
  } else {
    // Matikan LED
    digitalWrite(ledPin, LOW);
    Serial.println("Suhu 30 derajat Celsius atau kurang LED mati.");
  }  
  if (myBot.getNewMessage(msg)) {
    if (msg.text.equalsIgnoreCase("READ TEMP")) {
      float t = dht.readTemperature();
      myBot.sendMessage(msg.sender.id, "Temperature: " + String(t) + "C");
    } else if (msg.text.equalsIgnoreCase("READ HUM")) {
      float h = dht.readHumidity();
      myBot.sendMessage(msg.sender.id, "Humidity: " + String(h) + "%");
    } else {
      String reply = "Welcome " + msg.sender.username + ". Try READ TEMP or READ HUM.";
      myBot.sendMessage(msg.sender.id, reply);
    }
  }
 
  delay(500);
}

Credits

SILVIA NUR ANGGITA
1 project • 1 follower

Comments