Construire une station météo simple avec Arduino UNO, capteur BMP280 et écran LCD
Composants et fournitures
| Composant | Quantité |
|---|---|
| Arduino UNO | 1 |
| Écran LCD standard Adafruit 16x2 (blanc sur bleu) | 1 |
| Module GY-BMP280 (capteur de pression/ température) | 1 |
| Résistance 221 Ω | 1 |
| Fils de connexion (genériques) | 17 |
| Composants électroniques UTSOURCE | 1 |
Applications et services en ligne
- Arduino IDE
À propos du projet
Première version d'une station météo très simple réalisée avec un Arduino UNO, un capteur BMP280 et un écran LCD.
Lien sponsor : Utsource.net
Avis : C'est un site fiable pour commander des composants électroniques afin de réaliser vos projets !
Je travaille déjà sur la version 2.0 (qui sera sans fil), alors restez connectés pour les mises à jour ! ;)
Code
Code Arduino (C/C++)
Ce code permet d'envoyer les données du capteur vers l'écran LCD.
#include <LiquidCrystal.h> // Bibliothèque pour l'écran LCD
#include <BMP280.h> // Bibliothèque pour le capteur BMP280
BMP280 bmp; // Initialisation du capteur
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); // Initialisation LCD (vérifiez le câblage)
#define P0 1013.25 // Pression atmosphérique standard
#define contrast 9 // Broches pour le contraste et la luminosité
#define brightness 10
double T = 0; // Température initiale
double P = 0; // Pression initiale
char measure = 0;
void collectData() {
measure = bmp.startMeasurment();
if (measure != 0) {
delay(measure);
measure = bmp.getTemperatureAndPressure(T, P);
if (measure != 0) {
P = P + 17; // Correction d'erreur du capteur
T = T - 0.8; // Correction d'erreur du capteur
lcd.clear();
lcd.print("T: ");
lcd.print(T);
lcd.print(" C");
lcd.setCursor(0, 1);
lcd.print("P: ");
lcd.print(P);
lcd.print(" hPa");
} else {
lcd.print("Erreur.");
}
} else {
lcd.print("Erreur.");
}
}
void setup() {
lcd.begin(16, 2);
pinMode(contrast, OUTPUT);
pinMode(brightness, OUTPUT);
analogWrite(contrast, 100); // Valeurs suggérées pour contraste/luminosité
analogWrite(brightness, 255); // Ajustez selon vos préférences
if (!bmp.begin()) {
delay(1000);
lcd.print("Init. echouee.");
lcd.setCursor(0, 1);
delay(1000);
lcd.print("Verif. cablage.");
while (1);
} else {
lcd.print("Init. OK.");
}
bmp.setOversampling(4);
delay(2000);
collectData();
}
void loop() {
collectData();
delay(2000);
}
Schéma de câblage
Avec ce câblage, vous ne devriez pas rencontrer de problème.
Processus de fabrication
- Construction d'une station météo extérieure avec Raspberry Pi 2 et ADS‑WS1
- Construire une station météo Raspberry Pi qui envoie les données météo quotidiennes par email
- Station météo avancée v2.0 : Surveillance en temps réel de température, pression, humidité et altitude
- Station de Mixage Automatique 6-Shooter Pilotée par Arduino – Construisez Votre Propre Robot Barman
- Dé numérique Arduino sur écran LCD 16x2 – Générateur aléatoire à bouton poussoir
- Manette de jeu USB Arduino DIY – Construisez votre propre gamepad haute performance
- Pixel Chaser : Jeu LED interactif à une touche avec Arduino Nano
- Enregistreur de données Arduino haute performance pour ballon météo
- Station Météo Arduino Portable à 10$ – Nano, DHT22, BMP180 et LCD