Item:Capteur de CO2 SENSEAIR S8 : Différence entre versions

Ligne 71 : Ligne 71 :
  
 
==Le capteurs en ASCII pour de beaux codes !==
 
==Le capteurs en ASCII pour de beaux codes !==
<nowiki><syntaxhighlight lang="arduino"></nowiki>
+
<syntaxhighlight lang="arduino">
 
/*
 
/*
Senseair S8
+
                                _________________                       
              ________________________
+
                              /    D1 mini    \                     
 +
                              |[ ]RST        TX[ ]|                 
 +
                              |[ ]A0  -GPIO  RX[ ]|                   
 +
                              |[ ]D0-16    5-D1[ ]|                   
 +
                              |[ ]D5-14    4-D2[ ]|                   
 +
                    Led Rouge |[X]D6-12    0-D3[X]| -> UART_RxD           
 +
                  Led Orange |[X]D7-13    2-D4[X]| -> UART_TxD     
 +
                    Led Verte |[X]D8-15    GND[X]| -> G0             
 +
                              |[ ]3V3 .      5V[X]| -> G+     
 +
                              |      +---+      |                   
 +
                              |_______|USB|_______|   
 +
 
 +
                            ________________________
 +
                            |  |° ° ° ° ° °|    |  |
 +
                  +5V <- G+ |[X]| ° ° ° ° °/    |[ ]| DVCC_out
 +
                  GND <- G0 |[X]|° ° ° ° °/      |[X]| UART_RxD -> D3
 +
                  Alarm_OC |[ ]|_°_°_°_°|      |[X]| UART_TxD -> D4
 +
                  PWM 1Khz |[ ]|                |[ ]| UART_R/T
 +
                            |  |  SenseAir® S8 |[ ]| bCAL_in/CAL
 +
                            |___|________________|___|
 +
*/
 +
</syntaxhighlight><br />
 
|*/
 
|*/
  

Version du 9 août 2024 à 09:16


Item-Capteur de CO2 SENSEAIR S8 imagegen.png

Capteur de CO2 SENSEAIR S8

Capteur Infrarouge de CO2 (NDIR) utilisé dans le projet CO2

25EUR (€)


Description longue

Principe:

Le capteur CO2 Sensair S8, est un capteur NDIR (InfraRouge non Dispersif), le principe de mesure est un principe optique :

Une chambre de mesure est parcourue par un faisceau infrarouge et de l'autre coté de la chambre un capteur ultra sensible mesure les variations d’absorption de la lumière. En fonction des ondes absorbées par la présence de CO2 il en déduit la quantité. Cette mesure utilise le principe de la spectrométrie. (expérience en lien Lumière : dispersion de la lumière )
Schema de principe


Selon le Fablab Central Supélec La Fabrique, les capteurs NDIR sont plus fiables et robustes que les capteurs de CO2 utilisant d'autres technologies (chimiques, MOX ...). Plus d'infos http://projetco2.fr/documents/presentation_PM_webinaireco2_v5_bpd.pdf

Caractéristiques :

Document PDF : http://co2meters.com/Documentation/Manuals/DS_SE_0119_CM_0177_Revised8.pdf

  • Mesure du CO2 : infrarouge non dispersif (NDIR)
  • Méthode de mesure : diffusion
  • Plage de mesure : (0-10 000 ppm)
  • Temps de réponse : 90% à 2 minutes
  • Intervalle de mesure: 0,5 Hz (toutes les 2 secondes)
  • Précision CO2: ± 70ppm ± 3% de la valeur mesurée
  • Options de communication: UART Modbus
  • Sortie disponible : analogique
  • Espérance de vie du capteur : > 15 ans
  • Intervalle de maintenance : aucun entretien requis
  • Autodiagnostic : contrôle de fonctionnement complet au démarrage


Bibliothèque :

Pour utiliser facilement ce capteur, nous vous conseillons d'utiliser la bibliothèque AirGradient Air Quality Sensor que vous trouverez dans le catalogue de bibliothèques d'Arduino plus d'infos pour la procédure Importer des bibliothèques dans l'interface Arduino


Item-Capteur de CO2 SENSEAIR S8 Image2.png

Plus d'infos et sources : https://github.com/airgradienthq/arduino

Câblage

Item-Capteur de CO2 SENSEAIR S8 Imageschema.png

Code Minimal

Attention : l'utilisation de la bibliothèque à évolué. nous avons mis à jour le code le 9 août 2024. Si vous rencontrez des problèmes référez-vous toujours à la bibliothèque.

Avant le Setup Importation de la bibliothèque #include <AirGradient.h>
Création de l’objet AirGradient monCapteur = AirGradient(DIY_BASIC);
Dans le Setup Démarrage de l’objet monCapteur.s8.begin(&Serial); // démarrage du capteur
Dans le Loop Utilisation int CO2 = monCapteur.s8.getCo2();
Astuce: il est possible RX et TX soient inversé, dans ce cas il vous suffit d'inverser D3 et D4 dans votre code. ATTENTION Valable uniquement pour un wemos ESP8266

Exemple


 0 #include <AirGradient.h>                 // import de la bibliothèque Air Gradient
 1 AirGradient monCapteur = AirGradient(DIY_BASIC);  // Création de l'objet "monCapteur"
 2 
 3 void setup(){
 4   Serial.begin(9600);         // Démarrage de la liaison série
 5   monCapteur.s8.begin(&Serial); // Démarrage et initialisation de l'objet
 6 }
 7 
 8 void loop(){
 9 int CO2 = monCapteur.s8.getCo2(); // mesure brute du CO2 placée dans la variable "CO2"
10 Serial.print("Taux de CO2 : ");
11 Serial.println(CO2);               // Affichage du CO2 en ppm 
12 delay(5000);                       // attente de 5 secondes (le temps de mesure du capteur est de 2s)
13 }

Le capteurs en ASCII pour de beaux codes !

/*
                                _________________                        
                               /     D1 mini     \                       
                              |[ ]RST        TX[ ]|                   
                              |[ ]A0  -GPIO  RX[ ]|                    
                              |[ ]D0-16    5-D1[ ]|                     
                              |[ ]D5-14    4-D2[ ]|                     
                    Led Rouge |[X]D6-12    0-D3[X]| -> UART_RxD             
                   Led Orange |[X]D7-13    2-D4[X]| -> UART_TxD       
                    Led Verte |[X]D8-15     GND[X]| -> G0              
                              |[ ]3V3 .      5V[X]| -> G+       
                              |       +---+       |                     
                              |_______|USB|_______|     

                             ________________________
                            |   |° ° ° ° ° °|    |   |
                  +5V <- G+ |[X]| ° ° ° ° °/     |[ ]| DVCC_out
                  GND <- G0 |[X]|° ° ° ° °/      |[X]| UART_RxD -> D3
                   Alarm_OC |[ ]|_°_°_°_°|       |[X]| UART_TxD -> D4
                   PWM 1Khz |[ ]|                |[ ]| UART_R/T
                            |   |  SenseAir® S8  |[ ]| bCAL_in/CAL
                            |___|________________|___|
*/

Commentaires

Published