LE MODULE CAPTEUR DE TEMPERATURE
Le module capteur de température comporte une thermistance et un amplificateur opérationnel LM358. Ce module peut capter des températures comprises entre -40°C et +125°C et sa sortie délivre une tension analogique comprise entre 0 et 5 V .
Ce module doit être relié à un connecteur analogique de la base.
Exemple :
Nous souhaitons afficher sur un afficheur LCD la valeur de la température ambiante.
-
Si la température est inférieure à 20°C, le fond de l'écran sera bleu.
-
Si la température est comprise entre 20 et 23°C, le fond de l'écran sera blanc.
-
Si la température est supérieure à 23°C, le fond de l'écran sera rouge.
Liste du matériel :
-
1 base RIP
-
1 module capteur de température "Grove" avec support RIP
-
1 module afficheur LCD "Grove" avec support RIP
Câblage :
Module "Grove"
Module capteur de température
Module afficheur LCD
Connecteur Base
A0
I2C
Programme :
/* Temperature_Grove est un programme qui affiche la température ambiante sur un afficheur LCD*/
#include <Wire.h> // appel des bibliothèques
#include "rgb_lcd.h"
rgb_lcd lcd; // création de l'objet lcd
const int colorR = 255; // définition des constantes de couleur
const int colorG = 255;
const int colorB = 255;
int temp;
float temperature;
int B=3975; //valeur de la thermistance
float resistance;
void setup()
{
lcd.begin(16,2); // initialisation du lcd
lcd.setRGB(colorR, colorG, colorB); // couleur de fond du lcd
}
void loop()
{
temp=analogRead(0);
resistance=(float)(1023-temp)*10000/temp; //formule donnée sur le site Seeedstudio
temperature=1/(log(resistance/10000)/B+1/298.15)-273.15;
if (temperature <= 20)
{
lcd.setRGB(0, 0, colorB);
}
if ((temperature > 20)&&(temperature < 23))
{
lcd.setRGB(colorR, colorG, colorB);
}
if (temperature >= 23)
{
lcd.setRGB(colorR, 0, 0);
}
lcd.clear();
lcd.print("T=");
lcd.print(temperature);
lcd.print(" Celsius");
delay(200);
}