Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Bouw een $10 Draagbare Arduino Weerstation (AWS) – Eenvoudige DIY met Nano, DHT22, BMP180 & LCD

Onderdelen en benodigdheden

OnderdeelAantal
Arduino Nano R31
DHT22 Temperatuursensor1
BMP180 Druksensor1
Adafruit Standaard LCD - 16x2 Wit op Blauw (met I2C driver)1

Benodigde tools

  • Solderbout

Apps en online diensten

  • Arduino IDE

Over dit project

Bouw een $10 Draagbare Arduino Weerstation (AWS) – Eenvoudige DIY met Nano, DHT22, BMP180 & LCD
Bouw een $10 Draagbare Arduino Weerstation (AWS) – Eenvoudige DIY met Nano, DHT22, BMP180 & LCD
Bouw een $10 Draagbare Arduino Weerstation (AWS) – Eenvoudige DIY met Nano, DHT22, BMP180 & LCD
Bouw een $10 Draagbare Arduino Weerstation (AWS) – Eenvoudige DIY met Nano, DHT22, BMP180 & LCD

Onlangs had mijn college een kleine wetenschapsbeurs. Mijn leraar vroeg me een project te presenteren om jonge studenten te leren over elektronica. Ik had twee dagen de tijd.

Omdat de temperatuur hier fluctueert (34-40°C), besloot ik een weerstation te bouwen.

Wat doet een weerstation?

Een weerstation verzamelt omgevingsdata met behulp van sensoren zoals: wind, vochtigheid, regen, temperatuur, luchtdruk en hoogte.

Doel: Een draagbaar weerstation met de functies: temperatuur, vochtigheid, luchtdruk en hoogte.

Stap 1: Benodigdheden kopen

Bouw een $10 Draagbare Arduino Weerstation (AWS) – Eenvoudige DIY met Nano, DHT22, BMP180 & LCD

Budget en onderdelen:

  • DHT22 Temperatuur- en vochtigheidssensor → $3,00
  • BMP180 Druksensor (BMP280 is goedkoper maar duurder in mijn regio) → $2,00
  • Arduino Nano → $1,89
  • LCD Display met I2C Driver → $3,00
  • Experimenteerprint, female headers, soldergerei, tang, draden

Stap 2: Temperatuur en vochtigheid – DHT22

Bouw een $10 Draagbare Arduino Weerstation (AWS) – Eenvoudige DIY met Nano, DHT22, BMP180 & LCD

Populaire sensoren: DHT22, DHT11, SHT1x. De DHT22 (AM2302) levert een gecalibreerd digitaal signaal, heeft een groot meetbereik, hoge nauwkeurigheid en lange transmissieafstand (100m).

Vergelijking:

SensorVoordelenNadelen
DHT11Goedkoop, stabiel, >20m bereikFoutmarge: ±2°C, ±5% RH, bereik 0-50°C
DHT22Betere nauwkeurigheid, groter bereik, >20mGevoeliger, langzamere temperatuurtracking
SHT1xSnelle respons, lage stroom, sluimermodusTwee digitale interfaces, zelfde bereik als DHT11

Aansluiting DHT22: VCC → 5V/3.3V, GND → GND, Data → Pin 2 Arduino.

Stap 3: Barometer en druksensor – BMP180

Bouw een $10 Draagbare Arduino Weerstation (AWS) – Eenvoudige DIY met Nano, DHT22, BMP180 & LCD

De BMP180 meet absolute luchtdruk via I2C. Druk varieert met weer en hoogte. Dalende druk = slecht weer komend, stijgende druk = helder weer.

Hoogte berekenen: De standaard zeedruk is 1013,25 hPa. Formule: alti = 44330 * [1 - (p/p0)^(1/5.255)].

Let op: Mijn module had een 3.3V regulator (662k) die ik verbrandde; ik bridgeerde VCC direct naar de chip. Alleen 3.3V gebruiken!

Aansluiting BMP180 (I2C op Nano/Uno): SDA → A4, SCL → A5, VCC → 3.3V, GND → GND.

Voorzorgsmaatregelen: Toegang tot omgingslucht geven (ventgat), beschermen tegen wind, koel en droog houden, afschermen voor licht.

Stap 4: De schakeling maken

Bouw een $10 Draagbare Arduino Weerstation (AWS) – Eenvoudige DIY met Nano, DHT22, BMP180 & LCD

We begonnen met headers voor de Nano, gesoldeerd op maat. DHT22 kreeg een 10k pull-down weerstand. BMP180 op 3.3V en I2C-bus. LCD (I2C) deelt de I2C-bus met BMP180. (Er is een vrije slot voor een toekomstige RTC-module.)

Stap 5: Code

Bouw een $10 Draagbare Arduino Weerstation (AWS) – Eenvoudige DIY met Nano, DHT22, BMP180 & LCD

Eerst libraries installeren:

Code getest op Arduino IDE 1.6.5.

#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include "DHT.h"
#include <SFE_BMP180.h>

SFE_BMP180 pressure;
#define ALTITUDE 20.56
#define I2C_ADDR 0x27
#define DHTPIN 2
#define DHTTYPE DHT22

DHT dht(DHTPIN, DHTTYPE);
LiquidCrystal_I2C lcd(I2C_ADDR, 2, 1, 0, 4, 5, 6, 7);
float t1, t2;

void setup() {
  Serial.begin(9600);
  lcd.begin(16, 2);
  lcd.setBacklightPin(3, POSITIVE);
  lcd.setBacklight(HIGH);
  lcd.home();
  lcd.print("Weerstation");
  delay(5000);
  dht.begin();
  pressure.begin();
}

void loop() {
  char status;
  double T, P, p0, a;
  status = pressure.startTemperature();
  if (status != 0) {
    delay(status);
    status = pressure.getTemperature(T);
    if (status != 0) {
      lcd.clear();
      lcd.setCursor(0,0);
      lcd.print("Baro Temp: ");
      lcd.setCursor(0,1);
      lcd.print(T,2);
      lcd.print(" C");
      t1 = T;
      delay(3000);
      status = pressure.startPressure(3);
      if (status != 0) {
        delay(status);
        status = pressure.getPressure(P,T);
        if (status != 0) {
          lcd.clear();
          lcd.setCursor(0,0);
          lcd.print("Abs druk: ");
          lcd.setCursor(0,1);
          lcd.print(P,2);
          lcd.print(" mb");
          delay(3000);
          p0 = pressure.sealevel(P, ALTITUDE);
          a = pressure.altitude(P, p0);
          lcd.clear();
          lcd.setCursor(0,0);
          lcd.print("Hoogte: ");
          lcd.setCursor(0,1);
          lcd.print(a,0);
          lcd.print(" m");
          delay(3000);
        }
      }
    }
  }
  float h = dht.readHumidity();
  float t = dht.readTemperature();
  t2 = t;
  lcd.clear();
  lcd.setCursor(0,0);
  lcd.print("Vocht: ");
  lcd.setCursor(0,1);
  lcd.print(h);
  lcd.print(" %");
  delay(3000);
  lcd.clear();
  lcd.setCursor(0,0);
  lcd.print("DHT Temp: ");
  lcd.setCursor(0,1);
  lcd.print(t);
  lcd.print(" C");
  delay(3000);
  lcd.clear();
  lcd.setCursor(0,0);
  lcd.print("Gem Temp: ");
  lcd.setCursor(0,1);
  lcd.print((t1+t2)/2);
  lcd.print(" C");
  delay(3000);
}

Schema

Bouw een $10 Draagbare Arduino Weerstation (AWS) – Eenvoudige DIY met Nano, DHT22, BMP180 & LCD

Productieproces

  1. Een buitenweerstation bouwen met Raspberry Pi 2 en ADS-WS1
  2. Een Raspberry Pi-weerstation bouwen dat dagelijkse weergegevens e-mailt
  3. Geavanceerd Weerstation v2.0: Real-time Temperatuur, Druk, Vochtigheid & Hoogte Monitoring
  4. Bouw een DCC-commando station voor modelspoor met Arduino – gratis app inclusief
  5. Arduino-gestuurde 6-Shooter Drank Mixstation – Bouw je eigen Cocktail Automaat
  6. Arduino Digitale Dobbelsteen: Bouw Je Eigen LCD-willekeurige Getalgenerator
  7. Bouw een Draagbare Capacitieve Touch-piano met Arduino – Stap-voor-stap Handleiding
  8. DIY Arduino USB Gaming Controller – Bouw Je Eigen High-Performance Gamepad
  9. Draagbare Afstandsdetector – Arduino Nano DIY Kit met HC-SR04, 18650 Accu en 3D-geprinte Behuizing
  10. Pixel Chaser: Interactieve één-tik LED-spel met Arduino Nano
  11. High-Performance Arduino Weerballon Datalogger