Détection d'une personnes dans une pièce

De fablab
Aller à : navigation, rechercher

Description du projet

Description et objectifs

Le but de notre projet est d'éclairer une personne en fonction de sa position dans une pièce.

Contraintes

Le projet a été réalisé à distance dans le contexte de la COVID 19.
Matériel disponible en ligne, pas trop cher puisque payé de notre poche.

Équipe

  • Léo Dupont
  • Xavier Bouclé
  • Alex Li
  • Fabien Guiziou
  • Thomas Zhang

Problématique

Un membre de notre groupe a commencé un projet de domotique chez lui, qui lui permet de gérer les lumières depuis les interrupteurs, et un site web. Il veut maintenant passer à l'étape suivante : gérer les lumières de chez lui de manière automatique en fonction de la position de l'usager. La problématique principale est alors l’automatisation de la gestion de la lumière dans l’étage d’une maison, et par extension l’économie de l’énergie électrique consommée.

Matériel utilisé

3 Raspberry pi, et un smartphone/tablette équipé d’une application ibeacon.

Nous avons installé plusieurs capteurs dans une pièce permettant de recevoir un signal Bluetooth et de donner son intensité. Cela nous permet de calculer la distance approximative entre l’émetteur et le capteur. Avec 3 capteurs installés, nous pouvons donc trianguler la position de l’émetteur.
Pour pouvoir suivre une personne dans la pièce, cette personne doit posséder un téléphone permettant d’envoyer des signaux Bluetooth aux capteurs.

Fonctionnement

Le principe de notre application est simple, les raspberries, qui servent de capteurs, cherchent un appareil avec un ibeacon à proximité et mesurent l'intensité du signal. Les Raspberries convertissent l'intensité en distance et stockent les 50 valeurs les plus récentes.
Lorsque le serveur, qui peut contrôler les lumières, leur envoie une requête, chaque Raspberry filtre les données stockées dans leur mémoire et renvoie la valeur correspondant à la dernière mesure. Ensuite le serveur n’a plus qu'à utiliser son algorithme de triangulation pour déterminer la position de la personne.
Une fois la position de l'usager connue, il est possible de déterminer dans quelle pièce se trouve la personne.

Vidéo de test : https://drive.google.com/file/d/1PNCGwba2UIhaNQpJuw7qOBHoyG4rIxeR/view?usp=sharing

Scénario

Le but du projet était que lorsque la personne rentre chez elle, elle puisse se déplacer dans les différentes pièces sans avoir besoin d’appuyer sur des interrupteurs ou intéragir avec une application. La lumière la suit dans chaque pièce, i.e toutes les lumières d’une pièce s’allument si la personne est dedans, sinon elles s’éteignent. L’utilisation est rendue la plus simple possible pour l’utilisateur, qui a uniquement besoin d’activer son application ibeacon.

Plan pièce utilisée pour les tests

Budget

Le budget comporte le coût des 3 Raspberry pi (50€/unité) pour un total relativement conséquent de 150€.

Bilan

La réalisation de notre projet a été rendu difficile à cause d’une technologie bien moins performante que ce à quoi nous nous attendions.
Ainsi, la partie logicielle du projet, a priori terminée et performante, rend des résultats corrects quand elle est testée avec des données générées artificiellement. Cependant, quand on tente d’utiliser les données récupérées en temps réel par les Raspberry pi (intensité du signal Bluetooth) qui serviront à calculer la distance avec l'usager, on s’aperçoit de deux problèmes :

- L’intensité du signal mesurée est hautement variable, même si cet appareil est immobile. On peut diminuer la variation avec un filtre destiné à homogénéiser les informations reçues mais les variations étant trop grandes, on a du mal à extraire des déplacement moyens (2-3 mètres)
- Il existe une énorme latence du capteur entre le déplacement de l'appareil et le changement dans des mesures des Raspberry pi.

En pratique, cela a pour effet de donner des informations très peu précises à notre application qui calcule alors des positions très variables pour un appareil même immobile, et qui peine à identifier correctement un changement de pièce à éclairer dans un temps acceptable.
Donc malgré une partie logicielle fonctionnelle, le déploiement du système est impossible en condition réelle à cause de le manque de précision et la latence des capteurs utilisés.
C’est très regrettable, puisque la seule contrainte du cahier des charges que l’on respecte alors est l’automatisation de l’éclairage. On ne peut pas espérer une utilisation utile de notre application dans la vie réelle, puisque une personne assise dans une pièce verrait les lumières s’allumer et s’éteindre de manière aléatoire.

Amélioration

  • Il serait plus économique et plus simple de faire une application qui enverrait les mesures des capteurs ou des périphériques Bluetooth pour permettre de le localiser sans avoir un Raspberry pi dans chaque angle.
  • Arriver à trouver des capteurs compatible avec le téléphone
  • Trouver une solution pour obtenir des mesures suffisamment précises et stables pour pouvoir être exploitées.