Des sketchs à ajouter à ArdPyLog (suite)


11. Capteur CO2 SEN0219
 (Mesure de la concentration en C02 de l ‘air ambiant – Catégorie: Capteurs)

 

L’objectif de cette activité est de mesurer la concentration en CO2 de l’air ambiant à l’aide d’un capteur par absorption infrarouge Gravity SEN0219.

Le Module Gravity SEN0219 est composé d’un capteur de CO2 infrarouge et d’une carte d’interface analogique. Il mesure la concentration en CO2 avec une grande sensibilité et une excellente linéarité.

Ce module se raccorde sur une entrée analogique d’une carte compatible Arduino® ou directement sur le shield E/S Gravity via le cordon inclus.

 

Caractéristiques du capteur :

. Alimentation: 4,5 à 5,5 Vcc

. Consommation: 85 mA maxi

. Sortie analogique: 0,4 à 2 Vcc

. Plage de mesure: 0 à 5000 parties par million (PPM)

. Précision: ± (50 PPM + 3%)

. Temps de préchauffage: 3 min

. Temps de réponse: 120 s

. Température de service: 0 à 50°C

. Humidité de service: 0% à 95%

. HR Dimensions: 37 x 69 mm

 

Le programme

Voici le code de l’activité :

int sensorIn = A0;

void setup(){
Serial.begin(9600);
}

void loop(){

int sensorValue = analogRead(sensorIn);

float voltage = sensorValue*(5000/1024.0);
if(voltage == 0)
{
Serial.println(« Echec de la mesure »);
}
else if(voltage < 400)
{
Serial.println(« Pré-chauffage »);
}
else
{
int voltage_diference=voltage-400;
float concentration=voltage_diference*50.0/16.0;

Serial.print(« Tension A0: « );
Serial.print(voltage);
Serial.println( » mv »);

Serial.print(« Concentration CO2: « );
Serial.print(concentration);
Serial.println( » ppm »);

Serial.println();
}
delay(1000);
}

 

Déroulement du programme :

– 1. Déclaration des constantes et variables :

. int sensorIn = A0 (constante nombre entier correspondant à la broche d’entrée analogique de l’Arduino reliée au signal de sortie du capteur)

 

– 2. Initialisation des entrées et sorties :

. Initialisation de la liaison série à un débit de 9600 bauds

 

– 3. Fonction principale en boucle :

–> Lecture de la valeur de la broche d’entrée analogique de l’Arduino reliée au signal de sortie du capteur,

–> Conversion de cette valeur en V,

–> Test de validité des mesures,

–> Calcul de la concentration en PPM et affichage des valeurs dans le moniteur série si la mesure est correcte,

–> Une pause de 1 seconde est insérée entre 2 mesures.