Arduino : Affichage de la température + humidité sur écran LCD

Arduino : Affichage de la température + humidité sur écran LCD

Arduino : Affichage de la température + humidité sur écran LCD

Le but de ce projet est d'afficher la température ambiante et le taux d'humidité pour connaitre le point de rosé d'une pièce. L'affichage doit se faire sur un écran LCD.

Il faut

  • Ecran LCD 16 colonnes x 2 lignes
  • Capteur d'humidité & température
100% Complete

Ajout de la librairie DHT11 (pour le capteur)

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.

Câblage de l'écran

Cablage LCD

Câblage d'un écran LCD sur un Arduino UNO

  • 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

Câblage de la sonde de température

On la rajoute bien évidement au câblage de l'écran.

Câblage écran LCD et Sonde température

Programme

/*
  Affichage de la température et de l'humidité ambiante sur un écran LCD.
  Author : Alexandre PERETJATKO.
*/
// ------------------------------------------------------------------
// 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);
// ------------------------------------------------------------------
// for 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);

Le projet en images

LCD + DHT11

Le câblage de l'afficheur de température.

Ecran LCD

Câblage d'un écran LCD sur un Arduino UNO

Ecran LCD + Sonde température

Câblage écran LCD et Sonde de température + humidité DHT11

Copyright © 2015 Alex-design.fr All rights reserved.