element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Members
    Members
    • Benefits of Membership
    • Achievement Levels
    • Members Area
    • Personal Blogs
    • Feedback and Support
    • What's New on element14
  • Learn
    Learn
    • Learning Center
    • eBooks
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Dev Tools
    • Manufacturers
    • Raspberry Pi
    • RoadTests & Reviews
    • Avnet Boards Community
    • Product Groups
  • Store
    Store
    • Visit Your Store
    • Choose Another Store
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
Personal Blogs
  • Members
  • More
Personal Blogs
Legacy Personal Blogs Le Projet HomeBox présenté par Domogy
  • Blog
  • Documents
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Blog Post Actions
  • Subscribe by email
  • More
  • Cancel
  • Share
  • Subscribe by email
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: Crozemarie
  • Date Created: 10 Apr 2013 11:03 AM Date Created
  • Views 377 views
  • Likes 0 likes
  • Comments 0 comments
  • homebox
  • 6lowpan
  • guru
  • plug
  • enocean
  • open
  • domotique
  • source
  • serveur
  • home
  • automation
Related
Recommended

Le Projet HomeBox présenté par Domogy

Crozemarie
Crozemarie
10 Apr 2013

Le Projet HomeBox

Je voulais vous parler du projet HomeBox. Ce projet a été développé par cinq étudiants de l'école d'ingénieur ECE Paris (École Centrale Electronique). Ils ont travaillé et développé un serveur domotique multi-protocole (aujourd'*** déjà compatible EnOcean et 6LowPan) Ce projet Open-Source ce veut évolutif et ne demande qu'a être soutenu pour se développer.


Comme personne ne parlerait mieux de ce projet que les développeurs eux même, c'est donc la Team HomeBox qui nous présente en détail leur projet.

image

1. INTRODUCTION

Nous avons constaté qu’il existe de nombreux protocoles en domotique, et cela ne cesse d’évoluer. Le principal défi des offres commerciales est donc de gérer cette diversité de protocoles et de répondre à leur évolution. Nous avons choisi d’orienter notre solution vers l’internet des objets car nous pensons que l’avenir de la domotique et le web 3.0 seront bientôt indissociables. Notre box fonctionnera avec des réseaux de capteurs et des protocoles innovants comme le 6lowpan et l’Enocean.
De plus tous les capteurs ne parlent pas nécessairement le même langage et il est donc relativement compliqué de les faire communiquer sur une même plateforme. Après réflexion, nous avons décidé qu’une solution innovante pourrait-être « d’apprendre » de nouveaux protocoles à la box ! De cette façon, si un nouveau protocole voit le jour, pas besoin de tout modifier, il suffit de développer ou télécharger un nouveau service !
Cela représente bien sûr un travail conséquent et notre but n’est donc pas de proposer un projet entièrement abouti. En effet, nous avons créé les fondamentaux pour mettre en place ce nouveau concept de box domotique, ainsi que les outils pour étendre les caractéristiques de la box. Comme l’union fait la force et que nous pensons sincèrement que l’avenir est à l’open source, nous avons décidé de rendre le code entièrement libre. Vous pourrez d’ailleurs le télécharger très prochainement sur le Github du projet Homebox : https://github.com/homebox/box-domotique
Notre box possède donc trois caractéristiques majeures : open-source, évolutive, multi-protocoles. Voyons plus en détails comment elle fonctionne.

2. CAHIER DES CHARGES

  • Nous avons voulu intégrer les fonctionnalités suivantes :
  • Contrôle des équipements de la maison
  • Utilisation d’un réseau de capteurs dialoguant selon plusieurs protocoles de communication innovants
  • Gestion de la maison à distance via une interface Web
  • Personnaliser facilement ses propres scénarios de vie
  • Création d’une box évolutive et open-source

3. FONCTIONNEMENT GENERAL

imageUne box multi-protocoles, comme son nom l’indique, se doit de communiquer suivant plusieurs protocoles. Avec le temps qui nous été imparti pour développer le projet, nous avons choisi de développer deux premiers réseaux de capteurs : le 6lowPan et le EnOcean.

Le 6lowPAN est basé sur le protocole 802.15.4 et a été créé dans l’esprit de l’internet des objets. En effet grâce à la progressive mise en place de l’IPv6 et ses 16 octets d’adresses chaque objet peut avoir sa propre connexion internet. Le 6lowPAN permet de créer un réseau de capteurs maillés. Pour faciliter la communication et accroitre notre compatibilité avec le monde du web on a choisi d’implémenter CoAP, qui est en quelque sorte « un protocole http pour les réseaux de capteurs ». Ce service permettra un accès aux ressources par simple requête (GET, POST, PUT…).
Quant aux réseaux EnOcean, ils ont la particularité d’être des solutions à récolte d’énergie environnante (petits panneaux photovoltaïques, génération de courant par ondes électromagnétiques lors de l’appui sur un bouton ON/OFF par exemple) fonctionnant sans fil et sans pile.
À terme, la box ne se restreindra bien évidemment pas à ces deux réseaux et c’est ce qui la rend évolutive. Nous mettrons donc à disposition des utilisateurs un tutoriel complet pour développer de nouveaux protocoles. Pour résumé, ceci fonctionne comme l’Apple Store. En effet, Apple propose une plateforme de stockage et fourni la possibilité de développer de nouvelles applications en respectant une certaine norme (Coder en objective-C par exemple). L’ensemble des ressources liées à notre box sera donc stocké dans un répertoire et la communauté le fera grandir au fur et à mesure. Vous pourrez donc ajouter de nouvelles fonctionnalités en téléchargeant de nouveaux services!
Pour répondre à ce besoin en évolutivité, nous avons utilisé la technologie OSGI. Il s’agit d’une plateforme modulaire de services fondée sur le langage JAVA. Le composant principal de cette technologie est appelé bundle. Chaque bundle représente un service et s’intègre dans une organisation dite orientée composant.
Cette technologie permet de démarrer ou stopper des services à chaud. Tout se fait en temps réel et dynamiquement. Par conséquent, vous n’avez pas à redémarrer votre box lorsque vous y branchez une clé USB par exemple. L’intégration de nouveaux drivers est ainsi grandement facilitée avec cette technologie. A noter, nous avons utilisé le framework OSGI FeliX/Apache dans le cadre de ce projet.
L’essence même d’un système domotique étant le contrôle de la maison à distance, le projet possède une interface Web (détaillée plus loin dans cet article). Elle permet à l’utilisateur non seulement de consulter les mesures actuelles de chaque capteur mais aussi de créer des scénarios divers et variés. Pour le stockage des données de chaque réseau de capteurs, nous utilisons une base de données s’appuyant sur la technologie NoSQL, MongoDB.


4. LE HARDWARE

Nous avons choisi d’utiliser une GuruPlug Server pour notre projet. Notre choix se justifie par la taille du boitier (plutôt petite, celle d’un plug-computer), la présence d’un port Ethernet et de deux ports USB.Il est tout à fait possible de d’utiliser une autre plateforme hardware, pourvu qu’elle possède un kernel Linux et que les capacités de la plateforme permettent l’utilisation de l’ensemble OSGI. image

Pour tester et développer le réseau 6LoWPAN, nous utilisons des modules Raven et un stick USB d’envoi / réception. Ils sont dotés de plusieurs capteurs.Pour faciliter l’utilisation de ces modules on utilise le système d’exploitation Contiki. Ce dernier nous permet d’implémenter facilement le protocole 6lowPAN et CoAP. image

Pour exploiter le protocole EnOcean, nous avons utilisé plusieurs capteurs :
température, switch on / off, contacteur de porte, … L’intérêt principal ici est de montrer le fonctionnement de ce protocole économe en énergie.
image

5. L’INTERFACE WEB

Voici un aperçu de l’interface Web. C’est ici que vous allez pouvoir consulter les différentes valeurs de vos capteurs et actionneurs, mais aussi créer vos propres scénarios.imageVoici comment se présente l’onglet Scénario. Vous pouvez directement y configurer le comportement de votre maison en mettant en scène sous forme de dessin vos différents capteurs et actionneurs.imageL’objectif était de développer une solution simple et intuitive pour la création de scénarios. Nous avons donc construit un système de dessin qui permet de couvrir l’ensemble des caractéristiques liées à la création de scénarios. Le principe est simple, vous sélectionnez un ou plusieurs capteurs et y associez une condition. Si toutes les conditions sont réunies, un actionneur reçoit un ordre, choisi là encore par vos soins. Vous pouvez combiner, multiplier et associer les constructions, il n’y a aucune limite !
Cliquez sur l’ajout d’une entrée ou d’une sortie provoque l’ouverture d’une boîte de dialogue qui permet de régler des seuils (pour les capteurs), mais aussi une action dans le cas où la condition est vérifiée ou pas (pour les actionneurs). L’heure est bien entendu prise en compte. Vous pouvez effectuer une action périodique (ouvrir les volets de la maison tous les jours de la semaine à partir de 16h. Vous pouvez tout aussi bien sélectionner un intervalle de temps et définir par exemple un mode vacances. Vos scénarios sont visibles sur la page web et vous pouvez les modifier à tout moment.
image

6. TRAVAIL RESTANT

Malgré tous les efforts investis, notre solution n’est pas complète. Comme nous l’avons dit précédemment, l’objectif était de bâtir toute l’architecture et de fournir les outils nécessaires au développement du projet. Quelques pistes d’évolution nous tiennent tout particulièrement à coeur :

  • Création d’un « market place » permettant de télécharger des applications sur la box, à la manière des Smartphones
  • Développement d’un bundle pour vérifier la faisabilité des scénarios
  • Ajout d’autres protocoles pour étendre les possibilités de la box.

7. CONCLUSION

De nombreuses box domotiques existent sur le marché. Nous n’avons pas la prétention de nous imposer comme un concurrent supplémentaire ; mais plutôt de fournir une solution alternative, en proposant une box qui utilise déjà les capteurs présents dans la maison. La box se veut évolutive et mise à jour régulièrement. C’est là que l’open-source prend tout son sens. Le code est déposé sur Github, et est accessible par tous : étudiants,
ingénieurs, développeurs et passionnés. Nous comptons sur vous pour nous rejoindre et vous remercions de nous avoir lu.
Pour toute question, remarque ou suggestion, n’hésitez pas à nous contacter : ppe-homebox@googlegroups.com

8. L'AVIS DE DOMOGY

Voici donc un beau projet déjà très avance et qui ne demande qu'a évoluer, car les ambitions sont prometteuses. Si vous souhaitez participer à ce projet ou soutenir l'équipe de développement, n'hésitez pas à les contacter, si vous avez l'occasion de tester ou d'utiliser leur solution n'hésitez pas non plus à nous donner votre propre avis. Pour ma part c'est un projet que je vais suivre et j'essayerais de vous tenir informés au fur et à mesure de son évolution.

 

  • Sign in to reply
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2023 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • Facebook
  • Twitter
  • linkedin
  • YouTube