Mur interactif (2017)

De fablab
(Redirigé depuis Mur interactif 2017)
Aller à : navigation, rechercher

Vidéo

https://youtu.be/qOWiFEBs6LY

Introduction

Membres de l'équipe

  • Yvan Bourrut
  • Abir Najid
  • Ghizlane Kamal
  • Anthony Correia

Problématique

La problématique dans ce projet était d'implémenter une idée de scénario d'interaction entre un bâtiment et ses visiteurs.

L'idée de scénario adoptée par le groupe est la suivante :

Proposer une interaction entre le bâtiment et les visiteurs à travers un mur de LEDs pilotable par les visiteurs eux-mêmes.

Cadre

La réalisation de ce projet s'inscrit dans un projet coopératif entre l'ENSIMAG et l'ENSAG. L'objectif est de doter un pavillon construit sur le campus universitaire par l'ENSAG de solutions numériques innovantes développées par les élèves de l'ENSIMAG. Ces solutions doivent apporter au bâtiment une dimension intelligente en offrant aux visiteurs une proposition de valeur. L'intérieur du bâtiment mais aussi l'extérieur étaient éligibles à ces solutions.

Dans le cadre de notre projet donc, il s'agit donc de concevoir une solution qui implémente notre idée et in fine de l'intégrer au bâtiment.

Au démarrage, très peu d'informations étaient connues à propos des spécifications du bâtiment :

  • vague idée des dimensions
  • pas d'information sur l'étanchéité des murs
  • pas de spécifications sur les murs qui ne seraient dans tous les cas pas "pleins", i.e. ils seraient parsemés d'orifices

Ainsi, la phase de conception reposait sur de maigres spécifications de l'environnement où devrait être intégrée la réalisation.

Cahier des charges

Schéma de l'idée initiale

L'idée globale est de proposer de l'interaction à travers une matrice de panneaux. Chaque panneau est muni d'une LED et activable par un visiteur; le mécanisme envisagé initialement reposait sur une détection de pression sur le panneau. Lors d'une pression sur un panneau, ce dernier s'illumine d'une certaine couleur; une nouvelle pression éteint le panneau.

Deux murs seraient habillés d'une telle matrice : un mur à l'intérieur et un à l'extérieur. La matrice est identique des deux côtés.

Une partie intégrante de l'idée est une symétrie entre ces deux murs : à tout instant, l'état d'illumination d'un mur est répliqué sur l'autre. Ce mécanisme est réalisé en illuminant les panneaux activés de l'autre côté d'une autre couleur que celle utilisée quand le panneau est activée depuis son mur respectif. C'est à dire que chaque panneau d'une matrice peut avoir quare états :

  • éteint : le panneau est désactivé des deux côtés,
  • illuminé d'une couleur A : le panneau a été activé physiquement, depuis le mur sur lequel il est installé,
  • illuminé d'une couleur B : le panneau symétrique a été activé, i.e. un visiteur de l'autre côté du mur a activé le panneau situé au même emplacement dans la matrice,
  • illuminé d'une couleur C : le panneau a été activé depuis son mur respectif et son panneau symétrique a été activé également.

Ce fonctionnent est résumé en image dans le schéma ci-contre (cliquer pour agrandir).

Prototypes

LEDS WS2812

Afin d’avoir un retour visuel lorsqu’une personne appuie sur une partie du mur interactif, la mise en place de LEDs fut nécessaire. Le choix s’est porté sur une bande de LEDs contrôlable via un contrôleur USB : le FadeCandy. Ce contrôleur est branché à une Raspberry Pi sur laquelle un serveur de pilotage (disponible ici) est installé. Il sert à changer la luminosité et les couleurs des LEDs simplement. Afin de démarrer automatiquement le serveur en même temps que la Raspberry, un script a été écrit.

Le montage réalisé est présenté sur la photo ci-dessous :

Mur Interactif LED.jpg

La réalisation du montage a permis de valider l’utilisation de cette technologie dans le projet.

Boutons

La deuxième partie importante du projet est l’interactivité du mur.

La première idée pour l'implémenter était d’ajouter des boutons pressoirs. Pour cela, un nouveau montage a été mis en place. Il s’agit d’un bouton pressoir connecté à une Arduino. Cette dernière est connectée à la Raspberry Pi via un périphérique USB.

Mur Interactif Bouton.jpg

Mur interactif bouton led.jpg

Grâce à ce montage, le bouton a pu être utilisé pour faire changer d’état des LED.

Cette idée a été abandonnée car il était impossible d’intégrer les boutons au mur proprement sachant que la disposition et la taille des trous étaient inconnues.

Capteurs ultrasons

Étant donné que les capteurs boutons n’étaient pas une solution assez souple, une solution a été testée. Ce sont les capteurs à ultrasons, ils ont l’avantage de pouvoir être mis plus facilement dans le mur et permettent de détecter la distance et donc la position des mains. Le montage reste similaire au montage du bouton. La différence se trouve au niveau du branchement entre le capteur et l'Arduino.

Mur Interactif Ultrasons.jpg

Des tests ont été effectués dans un espace non confiné et les résultat ont été concluants. Ces capteurs permettent des détecter la présence d’un objet de manière stable jusqu’à 1m60 environ.

Mur interactif test parois.jpg

Cependant d’autres tests ont été menés dans un environnement confiné (entre 2 parois espacées de 10 et 15cm). Dans ce cas-là, à cause des rebonds des ondes certainement, il était impossible de calculer la distance d’un objet et impossible de détecter la présence d’un objet s'il état à plus de 60 cm du capteur. Pour cette raison, la solution utilisant ce capteur fut abandonnée.

PIR

Enfin, à l'aide des conseils d'un intervenant du FabLab, l'intérêt s'est porté sur les capteurs de mouvement pour Arduino. Ces capteurs sont désignés comme PIR pour Passive InfraRed : ils reposent sur la détection de variation du rayonnement infrarouge. À l'aide de deux composants sensibles au rayonnement infrarouge, le capteur peut détecter un changement de rayonnement local dans le champ de vision du capteur. Ainsi en utilisant deux éléments sensibles, le capteur réagit seulement au passage d'un objet et pas à un changement de rayonnement dans tout le champ de vision (e.g. modification de l'éclairage ambiant). Ce capteur pouvait donc en principe s'adapter à notre scénario : l'activation d'un panneau pourrait être faite par le passage d'une main à travers le mur. L'introduction de la main dans la cavité provoque en effet un changement local du rayonnement infrarouge perçu par le capteur.

Mur Interactif PIR.jpg

De rapides tests ont été effectués avec ces capteurs dans l'environnement "confiné". Les premiers résultats fut satisfaisants sans nous permettre d'atteindre les spécifications initialement testées.

Cependant, les contraintes temporelles devinrent trop fortes pour valider cette solution et poursuivre le prototype. Pragmatique, le groupe a changé de trajectoire pour s'orienter vers un projet différent décrit dans la partie suivante.

Scénarisation des réactions aux capteurs de proximité du bâtiment

Quatre capteurs ultrason sont installés sur une paroi extérieure du pavillon, quand ceux-ci sont activés, il faut faire réagir les Leds intégrées au bâtiment. Plus la distance de l'objet est proche, plus les Leds vont clignoter rapidement.

Une Arduino est branchée à 4 capteurs ultrasons. Tous les x temps, elle envoie la distance (entre 0 et 1600mm) d'un objet détecté par chaque capteur. Cette Arduino va communiquer avec un Raspberry via un port séries. Un script python va lire ces données et mettre à jour les objets OpenHab correspondant. Quand un objet OpenHab est mis à jour, il va envoyer sur le port séries, à destination d'une autre Arduino, la distance moyenne des différents objets. L'Arduino va lire cette valeur et faire clignoter des Leds aléatoire à une fréquence correspondant à la valeur lue.


Schema Leds Mur Interactif 2017.PNG

Tous les éléments logiciels nécessaires pour réaliser cette scénarisation sont dans le dépôt Git en lien ci-dessous avec des instructions (README).

Une vidéo de prototype est disponible ici.

Code

gitlab