Das sechzehnte Türchen

Après avoir brièvement présenté le nouvel AZ-Envy sur notre blog le 22 novembre, avoir lu les valeurs des capteurs intégrés en utilisant les bibliothèques recommandées et les avoir affichées dans le Serial Monitor, je voudrais maintenant approfondir, profiter du grand avantage des microcontrôleurs ESP avec WiFi intégré, et explorer plus avant les questions précédemment sans réponse concernant les capteurs. Même si le MQ-2 n'est explicitement pas un capteur de CO2 (mais GPL, i-Butane, Propane, Méthane, Alcool, Hydrogène et Fumée), je voudrais montrer à la fin comment connecter un feu de signalisation pour la qualité de l'air. 

Analyse sur le capteur SHT30 pour la température et l'humidité relative

Nous avions vu que la température affichée était un peu trop élevée et avec elle la valeur de l'humidité relative un peu trop basse, et ce malgré les coupures dans le circuit imprimé, que nous pouvons bien voir sur la photo suivante. La conduction thermique à travers la carte de circuit imprimé est donc largement réduite. Mais la proximité du capteur de gaz chauffé MQ-2 est toujours perceptible. Ici, seule la combinaison de toutes les astuces est utile, ce que nous avons également obtenu en partie de nos clients : Bandes de plastique, Envy placé en angle ou sur le bord avec MQ-2 au-dessus du SHT30, petit ventilateur pour ventiler l'air ambiant et évacuer l'air chaud, et enfin une valeur de correction dans le schéma. Pour en savoir plus, consultez le sketch Envy_WebServer_MQ2_SHT30.ino.

 


Examen du capteur MQ-2

Nous avions écrit dans la première partie que les capteurs MOS mesurent le changement de résistance lorsque des gaz sont présents. La bibliothèque MQ-2 recommandée par labay11 a ensuite affiché les valeurs pour le GPL, le CO et la fumée en utilisant un algorithme inconnu. Toutes ces valeurs sont basées sur une seule valeur mesurée à l'entrée analogique A0. Donc, s'il y a des limites connues pour ces substances, vous pouvez très bien utiliser cette bibliothèque.

Mais la solution simple utilisée par Niklas Heinzel dans son Easy-Start Sketch (à télécharger sur la page du produit) est parfaitement suffisante. Les valeurs analogiques se situent entre 1 et 1024. Dans notre salon, la valeur se situait entre 70 et 110 ; après avoir mis un morceau de papier de cuisine imprégné de rhum sur le MQ-2, il affichait immédiatement 1024, pour descendre à 900 et 800 au bout d'un certain temps. Le niveau que vous souhaitez utiliser à la fin pour allumer le voyant jaune ou rouge vous appartient, peut-être 200 pour le jaune et 250 pour le rouge ?


Nous connectons notre AZ-Envy au WLAN

Avec le schéma suivant, nous connectons l'AZ-Envy au WLAN et l'utilisons comme serveur pour les données de mesure. Veuillez noter que vous devez entrer votre SSID et votre mot de passe WLAN dans le code avant de télécharger afin de pouvoir voir les données du capteur dans le navigateur de votre PC ou smartphone. Téléchargez Sketch Envy_WebServer_MQ2_SHT30.ino.

Avec l'AZ-Envy réglé sur un angle, un petit ventilateur de 5V, fonctionnant à 3,3 volts en raison de la réduction significative du bruit, et une valeur de correction de 0,5, j'ai obtenu des résultats utiles.

 


Une deuxième façon d'enregistrer l'AZ-Envy dans le WLAN domestique a été décrite par Gerald Lechner dans son blog en avril 2019 : l'utilisation de WPS (=WiFi-Protected-Setup).

Pour cela, nous utilisons le bouton intégré à l'AZ-Envy : le bouton FLASH. Ce bouton n'est nécessaire qu'au démarrage, lorsque nous voulons mettre l'ESP8266 en mode flash. Après avoir démarré le programme avec RESET, nous avons un bouton "normal" à GPIO0 (zéro). Il nous suffit donc de changer la deuxième ligne de code du sketch en #define WPS 0.

Voici le code adapté pour la connexion WLAN via le bouton WPS pour le téléchargement.

Si vous réglez le débit en bauds dans le Serial Monitor sur 74880, vous verrez toute la sortie lors du démarrage du ESP8266. Lorsque vous y êtes invité, appuyez d'abord sur le bouton WPS du routeur, puis sur le bouton FLASH de l'AZ-Envy. D'ailleurs, après une connexion aboutie, les informations d'identification sont stockées dans la mémoire non volatile de l'ESP8266. Vous n'avez donc pas besoin d'appuyer sur le bouton WPS à chaque fois.

Pour effacer les données WLAN, l'IDE Arduino propose un outil pratique sous la rubrique Outils. Sous la rubrique "Effacer le flash", vous avez le choix entre trois options :

  • Only Sketch // efface juste le code
  • Sketch + WiFi Settings // efface le code et le mot de passe WiFi
  • Tout le contenu Flash // efface tout, y compris le SSID et le mot de passe


Sorties GPIO

Maintenant que nous avons déjà découvert le bouton poussoir comme entrée GPIO, je veux montrer les deux sorties GPIO (cachées) pour contrôler un feu de circulation pour la qualité de l'air.

À cette fin, je montre d'abord le schéma du circuit de l'AZ-Envy :

Comme vous avez pu le lire ci-dessus, le bouton FLASH est situé au niveau du GPIO0. Les seuls connecteurs GPIO qui sont sortis sont appelés TX et RX ici dans l'image en haut à droite. Ils sont utilisés comme ports série pour la programmation et pour l'affichage des données des capteurs dans le moniteur série.

Cependant, si nous affichons quand même les données du capteur dans le WLAN, nous pouvons aussi attribuer un LED bicolore à ces broches. Nos pins sont alors appelés GPIO1 et GPIO3. Et qu'avons-nous à considérer ici ?

Premièrement, si nous avions ouvert le Serial Monitor pour la phase de démarrage avec Serial.begin(baud_rate), nous devons le fermer avec Serial.end(). Ensuite, les GPIO1 et GPIO3 peuvent être utilisés.

Et deuxièmement, notre feu de circulation doit bien sûr afficher les trois couleurs rouge, jaune et verte. Cela est possible grâce au LED bicolore avec ses trois pattes GND, R et G et la modulation de largeur d'impulsion. Donc, soit vous mettez la broche pour la partie rouge sur "On", soit vous mettez la broche pour la partie verte sur "On". Et le jaune est la couleur mélangée du rouge et du vert, mais j'ai réduit de moitié la partie verte avec le PWM.


/********************************************************************
Ampel mit bi-color LED
 gelb = rot(255) + grün(128)
********************************************************************/

int ledred = 1; // RX = the PWM pin the red LED is attached to
int ledgreen = 3; // TX = the PWM pin the green LED is attached to

// the setup routine runs once when you press reset:
void setup() {
// declare pin 9 to be an output:
pinMode(ledred, OUTPUT);
pinMode(ledgreen, OUTPUT);
}

// the loop routine runs over and over again forever:
void loop() {
// set the brightness of pin 9:
analogWrite(ledred, 255);
delay(1000);
analogWrite(ledgreen, 128);
delay(1000);
analogWrite(ledred, 0);
analogWrite(ledgreen, 255);
delay(1000);
analogWrite(ledgreen, 0);
delay(1000);

}


Télécharger le croquis

Qui aurait cru ce que tout cela représente dans le petit AZ Envy. Et ce n'est pas tout. Parce que notre "vieux maître" Gerald Lechner, dont le livre "SMARTHOME" vient de sortir des étagères, a trouvé quelque chose de plus pour lequel vous pouvez utiliser les pièces derrière la porte d'aujourd'hui. Mais c'est une autre histoire.

En attendant une belle période d'avant Noël

Specials

3 commentaires

Bernd Albrecht

Bernd Albrecht

Hallo und vielen Dank für Ihr Interesse an unseren Produkten und Blog-Beiträgen.
Auszug aus dem Datenblatt des MQ-2
MQ-2 Sensors are used in gas leakage detecting equipments in family and industry, are suitable for detecting
of LPG, i-butane, propane, methane, alcohol, Hydrogen, smoke.
Der Sensor kann nicht zwischen den Gasen unterscheiden. Das Prinzip ist eine Widerstandsänderung in Abhängigkeit von der Gaskonzentration. Deshalb wird lediglich ein analoger Wert am ADC (Eingang A0) gemessen. Sie können einen Grenzwert angeben, bei dem Alarm ausgelöst werden soll. Dafür sollten Sie ggf. die Werte im Normalbetrieb einige Tage messen und den Grenzwert dementsprechend festlegen. Das Schöne beim AZ-Envy ist, dass der Alarm sowohl über WLAN ausgelöst werden kann als auch über eine rote LED oder Buzzer an den umfunktionierten GPIO pins für TX und RX.

Martin Vierbücher

Martin Vierbücher

Ich habe mir kürzlich ein 3-er Set bestellt und über die Feiertage in Betrieb genommen. Mit der Anleitung war das kein Problem und das Gehäuse war auch schnell Dank der stl Dateien gedruckt. Leider musste ich im Deckel eine Nut fräsen damit der Deckel wegen der Stiftleiste auch zuging. Vielleicht die Nut schon im 3D Modell aufnehmen? Mit offenem Gehäuse bin ich so etwa mir dem im Sketch angegebenen Offset hingekommen, mit geschlossenem Gehäuse bin ich dann aber wieder um fast 4°C und somit um über 10°C daneben. Damit ist der Messfehler größer als die zu erwartende Temperaturdifferenz im Zimmer! Das schreit eher nach einer Korrekturkurve, oder? Der Gassensor funktioniert sehr gut, ich zweifle aber auch die Werte für Monoxid an, danach müsste ich öfter Kopfweh haben. Habe mal gelesen dass er 24h an der frischen Luft eingebrannt werden muss? Dynamisch, d.h. angepustet, reagiert er wunderbar. Und jetzt meine eigentliche Frage, ich würde einen der Sensoren im Heizungsraum platzieren und frage mich nun was ich anwählen soll. Erdgas ist laut google Methan und Methan kann der Sensor nur weiß ich nicht was ich im Web Interface selektieren soll. Wurde Methan vergessen?

Cretel

Cretel

Bonjour, je souhaiterai intégrer l’azenvy a mon serveur domoticz et mysensors, pourriez vous m’indiquer un exemple de croquis.
Merci pour toutes vos innovations et votre sérieux.
Cordialement.

Laisser un commentaire

Tous les commentaires sont modérés avant d'être publiés