MySensors le ZWave low cost de la domotique

MySensors

16 mar MySensors le ZWave low cost de la domotique

MySensors est un ensemble de capteur et d’actionneur combiné à un Arduino et à un émetteur radio… Une sorte de  Zwave DIY à faible coût et personnalisable !

Chaque module est peut être utilisé comme routeur du signal radio et ainsi assuré la communication avec des modules éloignées de la base.

Chaque module est personnalisable à souhait : module relais pour les prises, variateur de courant, mesure de luminosité, pH, conductivité, vitesse du vent… Bref, les possibilités sont larges.

Caractéristiques de MySensors

La technologie radio MySensors fonctionne sur la fréquence 2,4GHz. Pour limiter la contrainte de distance, MySensor permet de mailler son réseau, en passant d’un périphérique à un autre jusqu’à atteindre sa destination :maillage réseau.

La communication radio

Pour simplifier la mise en place de mysensors, la gestion de la communication radio est emballée dans une bibliothèque. De ce fait, nous n’avons pas besoin de nous en occuper.

Il existe trois types de modules MySensors :

  • Capteur (S)
  • Répétiteur/Capteur (R)
  • Base (GW – Gateway)

Les capteurs formeront un réseau «étoile». Normalement, les capteurs (S) enverront leurs informations directement à la base (GW). Si vous habitez dans une grande maison, vous devrez certainement activer le mode répéteur pour certains capteurs (R) pour relayer les données provenant des capteurs qui sont situés loin de la base.

L’arduino le cerveau de MySensors

De part son faible coût, sa facilité de programmation et sa faible consommation, l’arduino est principalement utilisé dans un système MySensors.

L’arduino ne dispose pas d’un système d’exploitation tel que le raspberry. Il exécute une seule application ou « sketch ». Généralement appelé firmware ou application embarquée, le sketch peut être aussi simple que quelques lignes de code, ou très complexe selon son utilisation.

Si l’arduino est utilisé à 90%, un raspberry ou autre pourrait quasiment tout aussi bien faire l’affaire.

Le module radio

Afin de réaliser la communication entre les capteurs, MySensors a besoin d’un moyen de communication sans fil. Il utilise actuellement un petit émetteur-récepteur : nRF24L01+.

Ce petit émetteur-récepteur à faible coût est très intelligent et ne consomme pas beaucoup d’énergie.

Exemple de sketch

L'exemple ci-dessous permet de générer un capteur MySensors d'ouverture de porte.
#include <MySensor.h>
#include <SPI.h>
#include <Bounce2.h>

#define CHILD_ID 3
#define BUTTON_PIN 3 // Arduino Digital I/O pin for button/reed switch

MySensor gw;
Bounce debouncer = Bounce();
int oldValue=-1;

// Change to V_LIGHT if you use S_LIGHT in presentation below
MyMessage msg(CHILD_ID,V_TRIPPED);

void setup()
{
 gw.begin();

// Setup the button
 pinMode(BUTTON_PIN,INPUT);
 // Activate internal pull-up
 digitalWrite(BUTTON_PIN,HIGH);

 // After setting up the button, setup debouncer
 debouncer.attach(BUTTON_PIN);
 debouncer.interval(5);

 // Register binary input sensor to gw (they will be created as child devices)
 // You can use S_DOOR, S_MOTION or S_LIGHT here depending on your usage.
 // If S_LIGHT is used, remember to update variable type you send in. See "msg" above.
 gw.present(CHILD_ID, S_DOOR);
}

// Check if digital input has changed and send in new value
void loop()
{
 debouncer.update();
 // Get the update value
 int value = debouncer.read();

 if (value != oldValue) {
 // Send in the new value
 gw.send(msg.set(value==HIGH ? 1 : 0));
 oldValue = value;
 }
}
Be Sociable, Share!
Tags:
No Comments

Sorry, the comment form is closed at this time.