Consommation maison : Différence entre versions

De Wiki de Projets IMA
m (Développement de la structure de données)
m (Matériel nécessaire (pour le prototypage))
Ligne 94 : Ligne 94 :
 
== Matériel nécessaire (pour le prototypage) ==
 
== Matériel nécessaire (pour le prototypage) ==
  
*Une Fox board avec module série
+
* Une Fox board avec module série
*Une carte microSD
+
* Une carte microSD
*2 Adaptateurs USB pour Zigbee
+
* 2 Adaptateurs USB pour Zigbee
*2 Breadboards
+
* 2 Breadboards
*2 Adaptateurs Bread Board pour Zigbee
+
* 2 Adaptateurs Bread Board pour Zigbee
*2 Arduino Uno avec cable série.
+
* 2 Arduino Uno avec câble série.
*Quelques fils, LED, résistances.
+
* Quelques fils, LED, résistances.
 +
 
 +
 
 +
== Développement de la structure de données ==
 +
 
 +
Pour enregistrer les informations récupérées au niveau des modules, nous aurons besoin d'une structure de données ou BdD.

Version du 3 février 2014 à 20:27

Étape 1 : Cahier des charges

Voici un récapitulatif de ce qui est attendu du projet.

Objectifs principaux

  • Les températures et pression devront être récupérées dans plusieurs pièces. Ces mesures devront être classées et organisées dans une base de donnée ou structure.
  • On compte principalement réduire la consommation due au chauffage dans une habitation ou infrastructure ;
  • La consigne sera fournie aux chauffages par un calculateur central (différents types de chauffage : Eau ou radiateur électrique) ;
  • Il existera différents modules :
    • capteurs seuls ;
    • capteurs + contrôleur d'électrovanne (chauffage à eau) -> la partie commande sera liée au projet 43 ;
    • capteurs + contrôleur pour un radiateur électrique à fil pilote ;
  • Ajouter un système d’arrêt d'urgence du chauffage (exemple : à l'ouverture d'une fenêtre) ;

A concevoir

  • Réseau de capteurs (sans fil) (technologie à déterminer) ;
  • La base de données où seront enregistrés les différentes mesures et consignes à envoyer aux modules ;
  • Supervision complète sur serveur Apache (HTML, PHP) ;
  • Supervision minimale : applications mobile Androïd ;
  • Programmeur de mise en veille afin d'économiser la pile ou batterie qui alimentera le capteur ;
  • un protocole de communication entre les capteurs et un "appareil central" (de type Raspberry Pi, Fox Board...) ;
  • Création du capteur qui comprendra :
    • La récupération de la température ;
    • Récupération de la pression (pour détecter les chutes suite à l'ouverture d'une fenêtre) ;
  • Possibilité d'ajout de "modules", qui se pluggeront sur les capteurs, correspondant au chauffage commandé par fil pilote, au chauffage commandé par électrovanne (pour les dispositifs utilisant une chaudière) ;
  • Établir un système permettant la consommation réduite des capteurs (pour l'alimentation : pile, secteurs, pourquoi pas un système de récupération de l'énergie thermique), problématique de la fréquence de rechargement du dispositif d'alimentation des capteurs ;
  • Mise en veille des capteurs / fréquence de consultation des données. Une mesure toutes les heures ou toutes les demi-heures ne seraient-elles pas suffisantes ?
  • Une récupération sur un serveur NTP (Network Time Protocol), de l'heure pour gérer les mises en veille et les heures creuses / heures pleines ;

La problématique d'adaptabilité du dispositif de chauffage commandé doit être prise en compte : changement de milieu (maison ou bâtiment d'entreprise, le type de chauffage (eau ou électrique), la disponibilité de prises secteurs ou pas.

N.B

Ceci est une conclusion de la première réunion avec A. Boé et B. Bouhamama. Il y a de fortes probabilités pour que ce cahier des charges soit complété.

Début du projet

La prochaine étape consiste à trouver une architecture optimale du capteur et définir la structure de données. On peut alors commencer par diviser le travail, un s'occupera de la mise en place d'un réseau de capteurs et modules, le second de la base de donnée et les outils de supervisions les plus adéquates au système.

Étape 2 : Architecture Optimale du capteur / Mise en réseau

Introduction : cahier des charges spécifiques

L'objectif final est de réaliser un réseau de capteurs/actionneurs que nous appellerons ici Modules. Ces modules devront permettre de mesurer une température, capter des chutes de pressions et actionner le radiateur. De plus, dans un soucis d'économie d'énergie, les modules devront consommer que très peu d'énergie. Enfin, les modules s'installeront dans une maison ou une infrastructure, impossible de prévoir un câblage entre les modules, il faut donc opter pour une architecture réseau Sans-fil.

Norme Wireless

Il existe principalement 2 catégories de réseaux :

A gauche un exemple de réseau en étoile, à droite un réseau maillé
  • Les réseaux de type "star" (ou "en étoile"), utilisent une machine centrale sur laquelle se connectent les périphériques du réseau.
  • Alors que les réseaux de type "mesh" (ou "maillés"), transmettent par le biais d'un coordinateur les données aux différents périphériques connectés. Si le 1er périphérique "comprend" que les données lui sont destinées, il les enregistre, sinon il agit comme un répéteur et transmet au 2ème périphérique et ainsi de suite jusqu'à ce que le nombre maximal de répéteurs parcourus soit atteint ou bien que les données aient trouvées leur destinataire.

Comme on souhaite économiser un maximum d'énergie, il convient d'utilisé un réseau maillé, on se sert de chaque module comme un bridge pour envoyer les données, ce qui fait économiser l'amplitude du signal (en utilisant un réseau en étoile, il faudrait un signal très amplifié pour parcourir la distance que peut parcourir un réseau maillé).

Il existe différentes normes Wireless. On retient ici le Wi-Fi classique 802.11 qui peut être utilisé en étoile (classique) ou en ad-hoc (mesh, un peu compliqué à mettre en place), et la norme Zigbee 802.15 qui ne peut être utilisé qu'en réseau maillé. Avantages et inconvénients de chacun :

Norme Avantages Inconvénients
Wi-Fi 802.11
  • Très répandue, on pourrait ainsi utiliser un routeur ou une box dans une maison comme coordinateur ;
  • Protocole TCP/IP, on pourrait utiliser un serveur DHCP pour faciliter la mise en place du réseau ;
  • Sécurisé par cryptage (WEP ou WPA-PSK)
  • le type ad-hoc et répéteur est compliqué à mettre en place ;
  • Trame de transmission inadaptée au projet. Le Wi-Fi a été principalement développé pour des transferts à grande vitesse de beaucoup de données, or nous souhaitons juste envoyer 2 ou 3 octets à intervalle de temps assez longue ;
  • Très gourmande en ressource, l'alimentation par pile est inenvisageable avec cette technologie ;
  • La portée diffère suivant la norme a/b/g/n/ac mais, elle sera tout de même très limitée par rapport à ce que peut atteindre le Zigbee ;
  • Très grande probabilité interférences avec d'autres appareils, et risque de saturation du réseau si on utilise la bande des 2.4 GHz (limité à 4 ou 5 appareils sur une box par exemple, trop peu).
Zigbee 802.15
  • Semblable à une communication série, mais sans-fil ;
  • Trame très simple, nécessite en moyenne que 10% des lignes de codes Wi-Fi ;
  • Portée pouvant atteindre 1 km avec un appareils tout les 30m ;
  • Nous allons utiliser des modules XBee Pro qui ne coûtent que 20€ ;
  • On peut mettre jusque plus de 65 000 appareils en réseau ! ;
  • Consomme très peu. Avec les mode de réveil du module, on peut descendre à 1mA ;
  • Pas sécurisé ;
  • Vitesse limitée à 250 kbit/s, mais très suffisant dans le cadre de notre projet ;
  • La portée entre 2 modules est inférieure à 30 m ;

Conclusion : Nous utiliserons la norme Zigbee et un réseau maillé pour construire le réseau de capteurs. A noter que l'inconvénient majeur est la portée (environ 30 m).

Matériel nécessaire (pour le prototypage)

  • Une Fox board avec module série
  • Une carte microSD
  • 2 Adaptateurs USB pour Zigbee
  • 2 Breadboards
  • 2 Adaptateurs Bread Board pour Zigbee
  • 2 Arduino Uno avec câble série.
  • Quelques fils, LED, résistances.


Développement de la structure de données

Pour enregistrer les informations récupérées au niveau des modules, nous aurons besoin d'une structure de données ou BdD.