Hello there, Are you making a Weather station project but you’re not sure how? Do you want to make your own DIY Arduino Weather Station? If so, you have come to the right destination. In this article, we’ll know how to make our own DIY weather station with the use of Arduino UNO and the DHT11 sensor in a step-by-step guide. We will also provide the circuit diagram and Arduino code in this article. Hence, I hope you will find this useful. We at Techatronic have already uploaded several Arduino Tutorials and detailed project guides related to Arduino which will be useful to learn the basics and programming of Arduino if you are a beginner in Electronics.
What is Arduino Weather Station?
The weather station is a device used to sense the climatic conditions of a place such as temperatures, humidity, wind speed, etc. This can be customized on the need at a specific place. Here, we made a weather station for our small-scale application using Arduino and DHT11 Temperature and Humidity Sensor. Also, One can add a pressure sensor to determine the atmospheric pressure.
This can also be used as an alarm such as to turn on the home appliances such as Air Conditioners and fans when a certain temperature is detected. We can also make a tabletop weather station for our home.
How Does The Weather Station work?
The Arduino Weather Station uses the DHT11 sensor to read the surrounding temperatures and humidity. This sensor is capable of reading temperatures in the range from 0°C to 50°C with a variation of ± 2°C. The reading of Humidity ranges between 20% to 80% with a variation of ±5%. the sensor has a data sampling rate of 1Hz, which means it can read and send data with a gap of 1 second between two readings.
Once the data is sent to the host, it uses the 16×2 LCD display module to display the temperature and humidity in real-time. we can use any type of display as per the availability and requirement. one can also store the temperature and humidity reading of the past and can use them for some analysis.
Components Required
- Arduino UNO
- DHT-11 Sensor
- 16×2 LCD Display
- 10K Potentiometer
- Connecting Wires
- Breadboard
- USB Cable to connect Arduino UNO with the Computer
DIY Arduino Weather Station Circuit Diagram
Arduino Code
NOTE: Download and install the SimpleDHT library from HERE in your Arduino IDE before uploading the code into Arduino.
// TECHATRONIC.COM
// SimpleDHT LIBRARY LINK
// https://github.com/winlinvip/SimpleDHT
#include <SimpleDHT.h>
#include "LiquidCrystal.h"
LiquidCrystal lcd(9,8,7,6,5,4);
// for DHT11,
// VCC: 5V or 3V
// GND: GND
// DATA: 2
int pinDHT11 = 2;
SimpleDHT11 dht11(pinDHT11);
void setup() {
Serial.begin(9600);
lcd.begin(16,2);
Serial.println("TEMPERATURE AND HUMIDITY");
lcd.print("TEMP & HUMIDITY");
}
void loop()
{
byte temperature = 0;
byte humidity = 0;
int err = SimpleDHTErrSuccess;
if ((err = dht11.read(&temperature, &humidity, NULL)) != SimpleDHTErrSuccess) {
Serial.print("Read DHT11 failed, err="); Serial.println(err);delay(1000);
return;
}
Serial.print((int)temperature); Serial.print(" *C, ");
Serial.print((int)humidity); Serial.println(" H");
lcd.setCursor(1,1);
lcd.print((int)temperature);
lcd.setCursor(8,1);
lcd.print((int)humidity);
lcd.setCursor(3,1);
lcd.print(" C, ");
lcd.setCursor(10,1);
lcd.print(" H");
// DHT11 sampling rate is 1HZ.
delay(1500);
}
Once the code is uploaded into the Arduino UNO, set the desired light settings of the LCD display as per the surroundings. The LCD Module will start to display the sensor read temperature and humidity values. I hope you found this article helpful. If you have any doubts and queries, you can ask them in the comment section below.