Titre: Domotique, WAF & OAF Auteur: Bruno Date: Mon 25 Feb 2013 21:45:29 +0100 Lien: https://blog.spyou.org/wordpress-mu/2013/02/25/domotique-waf-oaf/ [image 1]Parlons un peu d’interfaces entre l’homme et la machine, et non pas entre la machine et le chien comme mon titre pourrait le laisser penser. On parle depuis plusieurs années du WAF. Il s’agit du coefficient appréciant la compatibilité d’une solution souvent DIY avec la gente féminine. C’est un brin sexiste, mais que voulez vous. Pour s’approcher du top du WAF, c’est en fait pas très compliqué : * pas de fils partout * que ce soit un peu joli ou original * que ça marche * que ça ait une utilité (quoi que c’est pas obligatoire) Du coup, la solution est très dépendante des gens qui vont être autour. Lors de la conception de @maisonquiwteet[2] j’ai surtout pensé à une personne, et un peu aux enfants aussi (hauteur des interrupteurs, par exemple). Après constatation sur pièce, en fait, pas besoin de penser aux enfants. Ils s’adaptent. Même si les 4 points du WAF listés ci-dessus ne sont pas au rendez-vous, c’est pas grave. Un seul suffit. Un truc plein de fils, laid et inutile mais qui marche les amusera très bien. Un interrupteur sur lequel il faut appuyer 4 fois pour avoir ce qu’on veut ne leur posera pas de problème particulier. C’est beau l’adaptabilité en toute circonstance. Il existe par contre une sorte de gens qu’on oublie souvent quand on pense une maison. Ce sont les autres. Ceux qui viendront y vivre quelques heures ou quelques jours. D’où le OAF (Others Acceptance Factor) Et là, c’est soudain plus amusant. Comment faire fonctionner les luminaires et les volets pour que ce soit évident pour tout le monde sans renoncer aux fonctions avancées que procure la domotique ? La réponse passe en partie par les détecteurs de l’article précédent[3]. [image 5][5]Dans @maisonquitweet[2], la technologie retenue pour les fonctions de base de la maison (interrupteurs, volets, luminaires) est le KNX. Un bidule sérieux, à peu près standard et, pour une fois, (presque) pas trop DIY. Ça, c’est pour adresser la problématique du « y faut que ça marche ». Même si on n’est pas à l’abri d’une panne, c’est quand même plus sûr, et puis la maison est à peu près vendable en l’état. En gros, le KNX, c’est un bus à 2 fils (voir le connecteur noir et rouge sur le module de la photo) qui relie deux grandes familles de modules : * ceux qui font quelque chose (allumer une lumière, faire bouger un volet…) * ceux qui attendent qu’on leur dise quelque chose (branchés derrière un interrupteur généralement, voir la photo, quoi qu’on trouve des interrupteurs qui savent parler KNX d’origine, mais le choix est plus que limité en design) Un module, un fil, un autre module, un fil, etc. En gros, pendant les travaux, j’ai découpé la maison en 4 zones et un bus a été tiré pour faire le tour de chacune de ces zones en passant par les interrupteurs et quelques endroits stratégiques où je pourrai un jour avoir besoin d’installer un équipement KNX (tables de nuit de la chambre parentale, coin audio/vidéo du salon, bureau…). Tous les modules qui actionnent des luminaires, des volets ou autres chose qui marche avec du 230V sont centralisés au tableau, avec ce même bus qui y passe. Tout au bout, on trouve une interface de conversion IP qui permet de dialoguer avec le bus à partir du réseau local. [image 7][7]Dans l’ordre sur la photo du joli tableau, les passerelles IP et les alimentations (redondance oblige), les actionneurs pour les 4 zones de la maison, les compteurs d’énergie et les disjoncteurs on ne peut plus classiques. Le dialogue sur le bus est assez simple. Chaque fonction des modules du tableau (par exemple la voie qui fait monter un volet) est un objet qui est associé à un groupe (qui porte un joli nom du genre 3/7/22) et l’interrupteur qui est censé commander ce volet possède également un objet qui est affecté au même groupe. Quand on appuie sur le bouton, un paquet se balade sur le bus disant « heyy, 3/7/22, bouge ! » et le volet monte. La programmation de tout ça se fait via un soft clic&play qui permet d’associer les interrupteurs et les actionneurs dans un grand plan numéroté (à ce jour, quelques 168 groupes déclarés dans l’ensemble de la maison). Ensuite, ce même soft programme les modules (qui embarquent donc un peu de NVRAM et un petit processeur). Ensuite, le soft peut être viré purement et simplement. Il n’y a aucune intelligence centralisée dans la chose, chaque module discute directement sur le bus avec ses camarades de jeu comme le feraient deux ordinateurs sur un réseau IP. Bon, c’est pas vrai, il y a une intelligence en dehors de tout ça. Via la passerelle IP dont je parlais tout à l’heure, on peut suivre tout ce qui passe sur le bus mais aussi injecter des données. On peut donc dire « hey 3/7/22, bouge ! » depuis un ordinateur situé sur le réseau. Et c’est ça qui permet de piloter l’ensemble de la maison de n’importe où et pas seulement depuis les interrupteurs. L’intelligence en question est gérée par un petit soft opensource nommé Linknx. Il permet de nommer chaque groupe (3/7/22 devient par exemple « montee_volet_cuisine ») puis, dans un fichier de configuration XML, de programmer des comportements un peu plus évolués que ce que peut faire un interrupteur, par exemple, si on part du principe qu’un détecteur magnétique dans la porte des WC est connecté à un module d’entrée KNX comme le serait un interrupteur : « lorsque l’objet etat_porte_wc bascule de 0 à 1, envoie un ordre d’allumage à lumiere_wc et affecte 50% à lumiere_wc_puissance si il est entre 21h et 8h et 100% sinon. Place ensuite un ordre d’extinction différé de 10 minutes pour lumiere_wc ». Et voilà, vous avez la lumière des WC qui s’allume toute seule à l’ouverture de la porte et qui, en prime, ne vous aveugle pas la nuit. La configuration de linknx permet même de scripter plus loin que ce simple « condition -> action » en utilisant un sombre langage nommé Lua. Et nous voilà revenus au point de départ. Comment faire pour que Mamie s’en sorte avec cet interrupteur sur lequel il faut tantôt appuyer entre 200 et 500ms pour allumer la lumière tantôt où un appui long augmente l’intensité de la lumière une fois sur deux, etc. Il suffit de faire en sorte que mamie n’ait pas besoin de l’interrupteur ! Le coup de la détection de l’ouverture de porte est bien adapté au cas des WC, mais un détecteur de mouvement sera mieux pour la cuisine, le salon ou toute autre pièce excepté les chambres pour lesquelles il faudra ruser un peu plus. La suite au prochain épisode où j’essaierai de vous parler de tout ce que j’ai mis sur la visualisation web sans toutefois vous la montrer. Si vous voulez la voir en vrai, faudra venir ici :) Liens: [1]: http://blog.spyou.org/wordpress-mu/files/2013/02/20130225_202055-225x300.jpg (image) [2]: https://twitter.com/Maisonquitweet (lien) [3]: http://blog.spyou.org/wordpress-mu/2013/02/24/capteurs-et-domotique/ (lien) [4]: http://blog.spyou.org/wordpress-mu/files/2013/02/20130225_201913.jpg (lien) [5]: http://blog.spyou.org/wordpress-mu/files/2013/02/20130225_201913-300x225.jpg (image) [6]: http://blog.spyou.org/wordpress-mu/files/2013/02/20121213_120633.jpg (lien) [7]: http://blog.spyou.org/wordpress-mu/files/2013/02/20121213_120633-225x300.jpg (image)