Micro Weather Station. Table no 13

Stage 1.

Introduction:

1-Mrs. Rajashree Yogesh Pachankar

2-Aayush Sandip Jadhav

3-Anuj Atul Shinde

4-Aryan Yogesh Pachankar

Step:-

1-We have Created the Project Micro Weather station,We have used the Hv 9v volt battery for power input.Wr have connected many sensor Like DHT11,BMP180,Buzzer,Led Bulb,Lcd Screen For Data output,And Breadboard for simple connections.

We have Changed the Screen And the Battery Because the Screen had dim Brightness and The battery did not have charge.

Prototype

The implemented Code :

#include <Wire.h>

#include <LiquidCrystal_I2C.h>

#include <DHT.h>

#include <Adafruit_BMP085.h> // For BMP180

// -------- Pin Definitions --------

#define DHTPIN 2

#define DHTTYPE DHT11

#define LEDPIN 7

#define BUZZER 8

// -------- Object Creation --------

DHT dht(DHTPIN, DHTTYPE);

Adafruit_BMP085 bmp; // BMP180 object

LiquidCrystal_I2C lcd(0x27, 16, 2); // Change to 0x3F if needed

void setup() {

Serial.begin(9600);

pinMode(LEDPIN, OUTPUT);

pinMode(BUZZER, OUTPUT);

lcd.init();

lcd.backlight();

dht.begin();

// BMP180 start

if (!bmp.begin()) {

lcd.setCursor(0,0);

lcd.print(“BMP180 Error!”);

Serial.println(“BMP180 not found!”);

while (1);

}

lcd.setCursor(0,0);

lcd.print(“Weather Station”);

delay(2000);

lcd.clear();

}

void loop() {

float temperature = dht.readTemperature();

float humidity = dht.readHumidity();

float pressure = bmp.readPressure() / 100.0; // Convert to hPa

float altitude = bmp.readAltitude(); // Altitude in meters

// -------- Check DHT --------

if (isnan(temperature) || isnan(humidity)) {

lcd.setCursor(0,0);

lcd.print("DHT Error ");

Serial.println(“DHT Failed!”);

delay(2000);

return;

}

// -------- Serial Monitor --------

Serial.print("Temp: ");

Serial.print(temperature);

Serial.print(" C Hum: ");

Serial.print(humidity);

Serial.print(" % Pressure: ");

Serial.print(pressure);

Serial.print(" hPa Alt: ");

Serial.print(altitude);

Serial.println(" m");

// -------- LCD Display --------

lcd.setCursor(0,0);

lcd.print(“T:”);

lcd.print(temperature);

lcd.print("C ");

lcd.print(“H:”);

lcd.print(humidity);

lcd.print("% ");

lcd.setCursor(0,1);

lcd.print(“P:”);

lcd.print(pressure);

lcd.print("hPa ");

// -------- Alert System --------

if (temperature > 35) {

digitalWrite(LEDPIN, HIGH);

digitalWrite(BUZZER, HIGH);

} else {

digitalWrite(LEDPIN, LOW);

digitalWrite(BUZZER, LOW);

}

delay(2000);

}

Stage 2.

Introduction:

This project is a Mini Weather Station built using an ESP32 microcontroller. It measures and displays real-time environmental conditions like temperature, humidity, and air pressure.

Components:

ESP32 (main controller with WiFi capability)

DHT11 Sensor – measures temperature and humidity

BMP180 Pressure Sensor – measures atmospheric pressure

16x2 LCD Display / I2C Display – shows readings

LED – visual indicator

Buzzer – alert system

Breadboard & Jumper Wires – circuit connections

9V Battery – power supply

USB Data Cable – for programming ESP32

Working:

The DHT11 collects temperature and humidity data.

The BMP180 measures air pressure.

The ESP32 processes the sensor data.

The LCD display shows real-time readings.

The LED and buzzer activate if values cross a preset limit (for example, high temperature alert).

Approved for stage 2.
Return the arduino and collect ESP.