Salut à tous ! Aujourd'hui nous allons créer une petite station météo d'intérieur (ou d'extérieur pourquoi pas !) avec un arduino et une ethernet shield qui va nous renvoyer la température et l'humidité dans la pièce et l'enregistrer dans Gladys :)
Des tags NFC pour contrôler Gladys
Comment faire pour intéragir avec Gladys sans avoir avec ouvrir une interface web, lancer une commande ? Avec des tags NFC ! Ce sont les parfaits candidats pour faire la liaison entre le monde physique, et Gladys.
Un équivalent à PhpMyAdmin en Node.js
Pour administrer sa base de donnée MySQL, on utilise la plupart du temps phpmyadmin qu'on a souvent sur sa machine ou son serveur. Cependant, avec l'archive préinstallée, ni Apache ni PHP n'est installé ( inutile car Gladys est écrite en 100% Node.js ).
Nous allons donc utiliser Express Admin, un équivalent en Node.js à phpmyadmin ! ( et encore plus simple à utiliser !)
Contrôler les prises Wi-Fi Wemo Insight Switch
Aujourd'hui je vais vous présenter la prise WeMo Insight Switch, et vous expliquer comment la contrôler avec Node.js ! Pourquoi j'ai choisi cette prise ? Elle répond à beaucoup de mes besoins, et fait beaucoup plus que les prises RF que j'utilise actuellement. Notamment :
- Mesure de la consommation d'énergie
- Mesure du temps allumé
- Retour d'état, la prise a en fait toute une API, et on peut l'interroger pour lui demander si elle allumée ou pas par exemple.
- Définition de règles ( si allumée plus de x heures, éteindre la prise )
- Connexion au Wi-Fi de la box directement, le contrôle est beaucoup plus fiable qu'une prise radio-fréquence. Ce qui permet notamment de piloter la prise à distance, même en 4G.
Elles sont certes un peu plus cher, mais de mon point de vue cette prise vaut largement son prix.
Gladys revient entièrement réécrite !
Un an après la sortie de la première version, Gladys revient dans une nouvelle version entièrement réécrite en 100% Node.js.
Cette version a pour objectif de partir sur une base propre, de repartir sur une architecture plus évolutive. Techniquement, Gladys repose désormais sur le framework Sails.js côté serveur, et côté client sur AngularJS. L'utilisation de frameworks me permet de me concentrer sur l'essentiel : construire un assistant domotique. Je n'ai plus à me préoccuper de la sécurité, de la connexion, de la gestion de la base de donnée, etc... Tout ça existe déjà, et ce n'est pas le but du projet.
Le design a lui aussi été entièrement refondu, la page d'accueil affiche désormais beaucoup plus d'informations mais en étant tout aussi clair. Comme vous pouvez le voir, c'est très coloré !
Contrôler des ampoules connectées
Jusqu'à là, nous ne pouvions commander avec Gladys que les équipements branchés sur des prises grâce aux prises télécommandées RF, mais ça ne permettait pas de contrôler les lumières du logement. Je vous propose ici un test des ampoules WIFI Mi-light, ainsi que comment les piloter depuis notre Raspberry Pi!
Créez votre propre objet connecté !
On parle de plus en plus des objets connectés, mais cela reste encore des gadgets cher, et pas très "bidouille"... Nous allons ici créer un objet connecté très simple, composé d'un accéléromètre et d'un émetteur 433Mhz (piloté par un arduino), qui va être capable d'envoyer son orientation ( Si l'objet est dans le bon sens, retourné, sur le côté, si l'objet est à l'envers ), et ainsi déclencher des actions en fonction de son sens. On peut imaginer un cube, à qui chaque face est associé une action ( passer la maison en mode nuit sur une face, ouvrir tous les stores sur une autre, lancer un scénario, etc... ) Dès que le cube serait tourné, un signal serait envoyé au Raspberry qui interpréterait l'action et déclencherait un scénario.
Mais ce n'est qu'un exemple parmi tant d'autre ! Le but ici est de créer une base d'objet connecté. On peut très bien remplacer l'accéléromètre par un capteur de température pour faire un thermomètre connecté, ou par n'importe quel capteur/moteur.
J'en profite pour vous mettre une petite photo du rendu final (enfin final, sur la breadbord de développement !)
Connecter un arduino au Raspberry Pi
Le Raspberry est un outil formidable pour ses ports GPIOs, mais ceux-ci sont parfois trop limités pour des interactions électroniques beaucoup plus poussées.
Le majeur problème qui m'a poussé à acheter un arduino est la réception de signaux 433Mhz. Dans un de mes derniers tuto je vous expliquais comment recevoir des signaux 433Mhz sur le Raspberry, en utilisant un petit programme "RFSniffer". Cette solution fonctionne, mais surtout à des fins de tests. Le problème est que le Raspberry n'est pas temps réel. Du coup, pour vérifier si un signal 433Mhz n'est pas émis, il doit en permanence checker le récepteur, ce qui sature le CPU, autour de 30/40% ( ce qui est énorme pour juste "attendre" un signal). Si RFSniffer est lancé H24, la consommation et l'échauffement du Raspberry seront élevés ! Et c'est là que l'arduino intervient : et si l'on connectait le récepteur 433Mhz à un arduino, qui s'occuperait de le gérer, et qui ne préviendrait le Raspberry qu'en cas de réception de signal, via le port USB ! C'est ce que nous allons faire dans ce tuto. L'arduino nous permettra aussi par la suite d'utiliser du matériel électronique plus facilement qu'avec le Raspberry, et donc de "soulager" le CPU du Rasp.
Utiliser des détecteurs sans-fils
Les détecteurs sans-fils permettent d'utiliser un nombre infini de détecteurs sur votre installation (Détecteurs de mouvements, mais aussi détecteurs d'ouvertures de portes, etc.. )
Lancement de Gladys !
Ca y est, Gladys est disponible !
Vous pouvez télécharger le programme directement depuis la page d'accueil du site, et l'installer avec les instructions de la page d'installation.
N'hésitez pas à parler du projet autour de vous, à partager sur les réseaux sociaux le site du projet, plus on sera nombreux et plus le projet avancera loin ! ;)
Notre assistant domotique Gladys est officiellement disponible ! http://t.co/KIrY7UWAKF #RT pour faire connaître le projet !
— Gladys Assistant (@gladysassistant) 23 Avril 2014