Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Station Météo Arduino Portable à 10$ – Nano, DHT22, BMP180 et LCD

Composants et fournitures

ComposantQuantitéCoût approx.
Arduino Nano R311,89 $
Capteur température/humidité DHT2213,00 $
Capteur pression BMP18012,00 $
Écran LCD 16x2 avec interface I2C13,00 $
Plaque d'essai (veroboard), connecteurs, fils1~1 $

Total : ~10 $

Outils nécessaires

Logiciels

À propos du projet

Station Météo Arduino Portable à 10$ – Nano, DHT22, BMP180 et LCD
Station Météo Arduino Portable à 10$ – Nano, DHT22, BMP180 et LCD
Station Météo Arduino Portable à 10$ – Nano, DHT22, BMP180 et LCD
Station Météo Arduino Portable à 10$ – Nano, DHT22, BMP180 et LCD

Pour une exposition scientifique au collège, j'ai dû réaliser un projet en deux jours. Avec des températures locales de 34-40°C, une station météo portable s'imposait.

Qu'est-ce qu'une station météo ?

Un appareil qui collecte des données environnementales via divers capteurs : vent, humidité, pluie, température, pression, altitude.

Objectif : station portable mesurant température, humidité, pression et altitude.

Étape 1 : Choix des composants

Station Météo Arduino Portable à 10$ – Nano, DHT22, BMP180 et LCD

Initialement sur Uno, je suis passé au Nano pour la compacité. Un Micro aurait été encore plus petit.

Étape 2 : Capteur DHT22 (Température & Humidité)

Station Météo Arduino Portable à 10$ – Nano, DHT22, BMP180 et LCD

Le DHT22 (AM2302) fournit un signal numérique calibré. Comparatif :

CapteurAvantagesInconvénients
DHT11Pas de soudure, pas cher, portée 20mPrécision ±2°C / ±5% RH, plage 0-50°C
DHT22Pas de soudure, meilleure précision, plage -40 à 80°C, portée 20mPlus sensible, suivi température lent
SHT1xTrès stable, faible conso, sommeil autoDeux interfaces numériques, plage limitée

Connexion DHT22 : VCC → 5V/3.3V, GND → GND, DATA → Pin 2 Arduino (+ résistance 10k vers GND).

Étape 3 : Capteur BMP180 (Pression & Altitude)

Station Météo Arduino Portable à 10$ – Nano, DHT22, BMP180 et LCD

Capteur pression barométrique avec interface I2C. La pression absolue varie avec météo et altitude.

L'altitude se calcule : alti = 44330 * [1 - (p/p0)^(1/5.255)] avec p0 = 1013.25 hPa (niveau mer).

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

Précautions : accès à l'air ambiant (évent), protégé du vent, au frais, au sec, à l'abri de la lumière.

Étape 4 : Réalisation du circuit

Station Météo Arduino Portable à 10$ – Nano, DHT22, BMP180 et LCD

Headers femelles découpés et limés pour le Nano, résistance 10k pour DHT22, bus I2C partagé BMP180 + LCD I2C. (Un emplacement libre prévu pour futur module RTC.)

Étape 5 : Code

Station Météo Arduino Portable à 10$ – Nano, DHT22, BMP180 et LCD

Bibliothèques requises :

Testé sur 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       // Votre altitude en mètres
#define I2C_ADDR 0x27        // Adresse LCD I2C
#define DHTPIN 2
#define DHTTYPE DHT22

DHT dht(DHTPIN, DHTTYPE);
LiquidCrystal_I2C lcd(I2C_ADDR, 16, 2);
float t1, t2;

void setup() {
  Serial.begin(9600);
  lcd.init(); lcd.backlight();
  lcd.print("Weather Station"); delay(5000);
  dht.begin(); pressure.begin();
}

void loop() {
  char status; double T, P, p0, a;
  
  // Température BMP180
  status = pressure.startTemperature();
  if(status) { delay(status); status = pressure.getTemperature(T); }
  if(status) {
    lcd.clear(); lcd.print("Baro Temp:"); lcd.setCursor(0,1); lcd.print(T,2); lcd.print(" C"); t1=T; delay(3000);
    
    // Pression
    status = pressure.startPressure(3);
    if(status) { delay(status); status = pressure.getPressure(P,T); }
    if(status) {
      lcd.clear(); lcd.print("Pressure:"); 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.print("Altitude:"); lcd.setCursor(0,1); lcd.print(a,0); lcd.print(" m"); delay(3000);
    }
  }
  
  // DHT22
  float h = dht.readHumidity();
  float t = dht.readTemperature(); t2 = t;
  lcd.clear(); lcd.print("Humidity:"); lcd.setCursor(0,1); lcd.print(h); lcd.print(" %"); delay(3000);
  lcd.clear(); lcd.print("DHT Temp:"); lcd.setCursor(0,1); lcd.print(t); lcd.print(" C"); delay(3000);
  lcd.clear(); lcd.print("Mean Temp:"); lcd.setCursor(0,1); lcd.print((t1+t2)/2); lcd.print(" C"); delay(3000);
}

Schéma

Station Météo Arduino Portable à 10$ – Nano, DHT22, BMP180 et LCD

Processus de fabrication

  1. Construction d'une station météo extérieure avec Raspberry Pi 2 et ADS‑WS1
  2. Construire une station météo Raspberry Pi qui envoie les données météo quotidiennes par email
  3. Station météo avancée v2.0 : Surveillance en temps réel de température, pression, humidité et altitude
  4. Construire une Centrale DCC Numérique pour Modélisme Ferroviaire avec Arduino – Application Android Gratuite Incluse
  5. Station de Mixage Automatique 6-Shooter Pilotée par Arduino – Construisez Votre Propre Robot Barman
  6. Dé numérique Arduino sur écran LCD 16x2 – Générateur aléatoire à bouton poussoir
  7. Construire un piano tactile capacitif portable avec Arduino – Guide étape par étape
  8. Manette de jeu USB Arduino DIY – Construisez votre propre gamepad haute performance
  9. Détecteur de distance portable – Kit DIY Arduino Nano avec HC-SR04, alimentation 18650 et boîtier imprimé 3D