Bonjour à tous,  c’est Zak, comme je vous ai promis dans l’article précédent, dont on a parlé de MySensors, et montré comment fabriquer la passerelle; aujourd’hui je vous montrerai quelques exemples de fabrication de capteurs, et mieux encore, des multi-capteurs (Multi-sensors) afin d’économiser du matos et de l’effort. Avant de passer à la pratique, il est important d’expliquer quelques détails concernant le choix de type d’Arduino.

Quel Arduino choisir pour un capteur Mysensors ?

Un capteurs MySensors est à la base un module capteur branché sur un Arduino, qui est à son tour connecté à une puce radio 2.4Ghz. Ce qu’il faut savoir, c’est que cette dernière ne fonctionne qu’en 3.3v. Pour les modules capteurs il y en a qui fonctionne en 3.3v  et d’autres en 5v. Quand aux Arduinos ils en existent  3 types de petite taille pour créer des capteurs plus compacts :

-Arduino NANO : de taille petite, il peut être alimenté en USB et via le pin VIN, il dispose de pin 5v et 3.3v. pas de soucis pour alimenter la puce radio et les capteurs.

voir sur : Amazon   Aliexpress

-Arduino PRO MINI 5v : Arduino de taille plus petite, ne dispose que d’un pin 5v. Pour connecter la puce radio il nous faut un régulateur 5v → 3.3v. On l’utilise généralement pour les capteurs de mouvement et de gaz qui ne fonctionnent qu’en 5v.

voir sur : Amazon   Aliexpress

-Arduino PRO MINI 3.3v : de taille plus petite que le nano. à l’encontre de son précédent, celui là ne dispose que de pin 3.3v, il est parfait pour créer des capteurs qui fonctionnent sous batteries, sachant qu’il est cadencé à seulement 8MHZ .

voir sur : Amazon   Aliexpress

 

Pour programmer les Arduino PRO MINI on aura besoin d’un adaptateur serial FTDI :

FTDI USB TO TTL :

voir sur :   Amazon    Aliexpress  (n’oubliez pas d’avoir un cable mini USB)

 

Exemples de capteurs MySensors :

Pour créer des capteurs MySensors, la procédure est vraiment simple, il suffit de connecter la puce radio à l’Arduino, relier le capteur en question sur le pin mentionné dans le sketch, téléverser ensuite le sketch, et le tour est joué !

Pour vous donner quelques exemples, on commencera par des capteurs simples, on passera ensuite à un autre capteur dont le sketch n’est pas présent dans la bibliothèque par défaut de MySensors, et on verra enfin un exemple de multi-sensors.

Tout d’abord, voici un petit rappel du schéma pour connecter la puce NRF24L01+ , ce montage est valable pour les Nano et les PRO MINI :

 

mysensors-radio-montage

NRF24L01 + Arduino Nano/Pro mini couleur
GND GND Noir
3.3V 3.3V Rouge (pas de 5v !!)
CE D9 Orange
CS D10 Jaune
CSK D13 Vert
MOSI D11 Bleu
MISO D12 Violet
IRQ Non connectée --

 

-Capteur de luminosité :

Dans cet exemple on va utiliser le LM393. c’est un simple capteur de lumière à photo-résistance doté de sorties analogiques et numériques. Ce qui nous intéresse ici c’est sa sortie analogique qui va nous permettre d’avoir un pourcentage de luminosité. 

voir sur : Amazon   Aliexpress

le montage est simple :

LM393 Arduino Nano/Pro mini
GND GND
VCC 5V ou 3.3V
A0 A0

 

Pour téléverser le sketch on relie l’Arduino par son cable Usb ou via FTDI s’il s’agit d’un PRO MINI. On ouvre l’Arduino IDE, et on choisit le type de carte :

 

On choisit le sketch en cliquant  « Fichier » =› « Exemples » =›  « Mysensors » =› « LightSensor »

 

arduino-ide-mysensonrs

 

On peut téléverser le sketch tel qu’il est, mais je vous présenterai quelque paramètres qu’on peut modifier :

 

#define MY_DEBUG  : ça permet de suivre la log dans le serial monitor et l’analyser en cas de problème, on peut le désactiver en mettant // au début de la ligne.

#define CHILD_ID_LIGHT : c’est l’ID de capteur, pour différencier les capteurs sur un noeud.

uint32_t SLEEP_TIME = 30000;  :  c’est le temps entre deux relevés en millisecondes, ici 30s, on peut mettre une valeur plus grande en cas d’utilisation sur batterie.

 

une fois le sketch téléversé, notre capteur est prêt à l’emploi. il est détecté automatiquement sur Domoticz dans l’onglet ‘Dispositifs’ et il suffit de l’ajouter.

 

sur Jeedom, on active le mode ‘Inclusion’ et on redémarre notre capteur.

 

 

 

-Capteur de Gaz:

Il existe de nombreux capteurs de gaz qu’on peut utiliser avec MySensors. Détectez l’alcool, le méthane/propane/butane,  La fumé, etc…. Dans cet exemple, j’utiliserai le capteur de MQ2, qui peut signaler la présence de gaz GPL, le monoxyde de carbone et de la fumée, sachant qu’il en existe d’autres plus spécifiques qui marchent aussi de la même manière avec le présent sketch. 

-MQ-2 : gaz (butane) et qualité de l’air

voir sur : Amazon   Aliexpress

-MQ-3 : Alcohol (Ethanol)

voir sur : Amazon   Aliexpress

-MQ-135 : Gaz

voir sur : Amazon   Aliexpress

Montage :

MQ-2 Arduino Nano/Pro mini
GND GND
VCC 5V
AOUT A0

Pour téléverser le sketch : « Fichier » =› « Exemples » =›  « Mysensors » =› « AirQualitySensor »

Généralement un capteur de gaz doit rester éveillé tous le temps, il ne peut fonctionner sous batterie. Puisque le capteur fonctionne en 5v, il serait mieux d’opter pour un Arduino NANO. Sur le sketch il est préférable de mettre une durée plus courte entre les relevés (j’ai mis 3000 ms soit 3 secondes) :

On téléverse le sketch, et c’est tout !

On démarre le capteur dans un atmosphère propre. et on fait l’inclusion sur Jeedom :

sur Domoticz, on trouve le capteur dans l’onglet ‘Dispositifs’ . J’ai fait un test avec briquet et voila ce que ça donne :

 

Á vous de créer vos scénario et vos notifications d’alarme !

 

Exemple de multi-sensors Mysensors

 

-Capteur d’humidité de sol et température

Dans cet exemple, on verra un exemple de multi-sensors, qu’on va réaliser avec un Arduino PRO MINI 3.3V pour vous montrer comment utiliser l’adaptateur FTDI.

L’astuce pour faire un multi-sensors est de comparer les sketchs et essayer de les rassembler en un seul. On ne fera pas une démonstration ici, car ça serai plus long que tout ce qu’on a vu jusqu’à maintenant.

Notre multi-capteurs ou plutôt dual-sensors comporte un capteur de température de type Dallas DS18B20, et un capteur d’humidité de sol.

voir sur : Amazon   Aliexpress

voir sur : Amazon   Aliexpress

Le sketch utilisé pour l’humidité de sol est présent sur la bibliothèque MySensors : « SoilMoistSensor », par contre le sketch pour la température avec Dallas DS18B20 ne l’est pas, on va devoir l’ajouter manuellement avec la bibliothèque Dallas  DS18B20  adaptée pour MySensors.

Montage :

le montage est simple : le capteur d’humidité utilisera un pin analogique A0 et sera alimenté par un pin numérique D6 ou D7 pour éviter sa dégradation.

le capteur de température occupera le pin D3, et sera alimenté par 3.3v. une résistance de 4k7 sera placé entre le VCC et sa sortie Data.

 

Sketch :

Comme je vous ai dit, on devrait ajouter la bibliothèque Dallas DS18B20 adaptée pour MySensors, pour cela on vas procéder comme suit :

-télécharger et décompresser l’archive suivant : « MySensorsArduinoExamples-master« 

-repérer notre dossier d’installation Arduino IDE :

 

 

-sur le dossier qu’on vient de télécharger, dans le sous-dossier « librairie » on copie les dossiers « DallasTemperature » et « OneWire », et on les place dans le dossier « librairie » de notre dossier d’installation Arduino.

 

 

-On copie aussi le dossier « DallasTemperatureSensor » qui existe dans le dossier « exemples » du dossier qu’on vient de télécharger, et on le place dans le dossier  ..\MySensors\examples de notre installation IDE.

 

 

-Si vous ouvrez maintenant Arduino IDE vous allez constater la présence de DallasTemperatureSensor dans la liste des exemples.

Maintenant qu’on a les deux sketchs nécessaires, il serai possible de créer un seul sketch. mais comme je vous ai dit ça demande un peu de temps et d’effort. je vous donne alors mon sketch qu’il suffit cliquer « Fichier » => »Nouveau », le coller dedans et le téléverser.

 

On connecte notre Arduino Pro Mini avec le FTDI, puis au PC :

 

S’assurer que le Jumper est en position 3.3V

 

 

Après téléversement de sketch, on teste le multi-capteurs avant de souder et on le range dans une boite :

 

 

 

On n’oublie pas de booster la portée des puces radio, en plaçant un condensateur d’une valeur entre 4.7µ – 47µF  sur les GND et VCC.

voir sur : Amazon   Aliexpress

 

Pour alimenter mon capteur, j’ai utilisé une batterie  18650 de 2200mAH, les relevés sont faite chaque 5 min,  et ça tient plus de 4 mois voire plus, et ce, sans aucune optimisation.

A savoir qu’il est possible d’enlever les leds et le régulateur de tension, ce qui permet de réduire considérablement la consommation.

 

J’espère que ce tuto vous a été utile, je vous donne rendez-vous dans un autre tuto pour fabriquer un multi-sensor « high voltage »

 

 

A bientôt !