قياس درجة الحرارة و الروطوبة
الهدف من هذا المشروع هوا قياس الحرارة و نسيت الروطوبة
المكاوينات
- capteur DHT11
- carte Arduino UNO
- afficheur LCD 16X2
الإنجاز- Si ce n'est déjà fait, installer la librairie DHT11 dans le logiciel Arduino. Pour cela :
- aller dans Sketch > Include Library > Manage Library,
- saisir "DHT11" dans le filtre de recherche,
- installer la librairie DHT sensor Library by Adafruit (cliquer sur la ligne pour faire apparaitre le bouton "Install")
- <Close>
Il n'y a pas besoin de librairie spéciale pour l'écran LCD, elle est par défaut dans l'installation d'Arduino.
- pour télécharge bibliothèque DHT11
https://www.ard
uino.cc/reference/en/libraries/dht-sensor-library/
câblage
- LCD RS pin to digital pin 12
- LCD Enable pin to digital pin 11
- LCD D4 pin to digital pin 5
- LCD D5 pin to digital pin 4
- LCD D6 pin to digital pin 3
- LCD D7 pin to digital pin 2
- LCD R/W pin to ground
- LCD VSS pin to ground
- LCD VCC pin to 5V
الكود
// ------------------------------------------------------------------
// Ecran LCD
#include <LiquidCrystal.h>
const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
// ------------------------------------------------------------------
// pour DHT11, ( Capteur Temperature + Humidité )
// VCC: 5V or 3V
// GND: GND
// DATA: pinDHT11
#include <SimpleDHT.h>
int pinDHT11 = 13;
SimpleDHT11 dht11;
int err = SimpleDHTErrSuccess;
// =======================================================================
void setup() {
Serial.begin(9600);
// Initialisation de l'écran LCD
lcd.begin(16, 2); // 16 colonnes et 2 lignes
}
// =======================================================================
void loop() {
// Affichage sur le terminal
Serial.println("=================================");
// Lecture de la température et de l'humidité ------------------
byte temperature = 0;
byte humidity = 0;
if ((err = dht11.read(pinDHT11, &temperature, &humidity, NULL)) != SimpleDHTErrSuccess) {
// Si on n'arrive pas à lire les données.
Serial.print("Read DHT11 failed, err="); Serial.println(err); delay(1000);
return;
}
Serial.print("Température : "); Serial.print((int)temperature); Serial.println(" °C");
Serial.print("Humidité : "); Serial.print((int)humidity); Serial.println(" %");
// Ecran LCD --------------------------------------------------
lcd.setCursor(0, 0);
lcd.print("Temperature: "); lcd.print((int)temperature); lcd.print("C");
lcd.setCursor(0, 1);
lcd.print("Humidite : "); lcd.print((int)humidity); lcd.print("%");
delay(2000);
تعليقات
إرسال تعليق