GroundCTRL: Difference between revisions
No edit summary |
No edit summary |
||
Line 55: | Line 55: | ||
... |
... |
||
</code> |
</code> |
||
Vous pouvez directement télécharger le fichier en cliquant [/* A COMPLETER */ ici]. |
|||
===NFC=== |
===NFC=== |
||
Pour les Tag NFC, nous avons utilisé le matériel prêté par Mr Donsez. Il s'agit d'un capteur Tikitag (maintenant connu sous le nom de [http://en.wikipedia.org/wiki/Touchatag Touchatag]), fabriqué à par d'un capteur ACR 122U (fabriqué par ACS, voir [http://www.acs.com.hk/index.php?pid=product&id=ACR122U ici]. |
|||
Pour l'utiliser, nous avons adapté un programme Java réalisé par Mr Donsez. Ce dernier nous permet maintenant de récupérer l'identifiant du tag NFC et de le renvoyer sur le port associé au programme. |
|||
===RFID=== |
===RFID=== |
Revision as of 12:51, 24 April 2012
- UE/Module: Projet innovant de RICM4 option CM
- Enseignant: Didier Donsez (avec le support gracieux de TagSys)
- Élèves: 3 RICM4 L. Dauvergne, F. Levêque, R. Ngouala. Voir la page de suivi ici [1]
Description
L'idée de GroundCTRL est de projeter sur le sol d'un hall d'accueil de bâtiment des informations contextuelles au pied des personnes qui entrent dans le bâtiment. Les informations affichées seront l'emploi du temps du jour avec les emails de la personne ainsi qu'un flux de type Twitter. Par défaut, un message de bienvenue s'affiche sans que l'utilisateur est besoin d’être authentifié.
Pour s'authentifier, un personne a besoin de s'enregistrer dans une base de donnée. Elle pourra ensuite s'identifier grâces aux technologies suivantes: RFID UHF, NFC, QRCode.
Une fois authentifiée, la personne accdera a ses informations pendant un certain temps (20-30 secondes). Ensuite, le système retournera dans son état initial et une nouvelle personne pourra s'authentifier.
Ce projet a été réalisé dans un esprit de modularité et compatibilité du système conçu avec de futures extensions (du point de vue logiciel ou matériel).
Base
Au départ, le coeur du projet devait être developpée en Java. Pour des raisons de flexibilité dans le développement et l'utilisation de notre logiciel, nous avons progressivement opté pour réaliser notre programme principal à base d'un script PHP avec l'aide de Javascript et Ajax.
/* A COMPLETER */
Méthodes d'authentification
Dans un but de simplicité et d'évolution du système, nous avons opté pour un système d'authentification flexible. D'un coté nous attendons sur un port et de l'autre, différents programmes écrits dans différents langages envoient les données qu'il récupèrent (les identifiants utilisateur) sur le port correspondant. L'application principale peut ainsi afficher une information personalisée à l'utilisateur.
QrCode
Pour l'authentification par QrCode, nous avons choisi d'utiliser une variante en Python du programme Zbar. Zbar nous a permit, contrairement à d'autres lecteurs de QrCode que nous avons essayé, de bénéficier des avantages suivants:
- Multiplateforme (utilisé sous linux mais diponible pour windows - Performant (scan des QrCodes intantannément même en étant peu visibles) - Flexible (Scan aussi bien des codes barres que des QrCode)
Pour nous permettre de pouvoir renvoyer les QrCode sur un port, nous avons du implémenter un script qui effectue le travail. Voici un extrait du script ci dessous:
#!/usr/bin/python
from sys import argv
import zbar
import socket
# create a Processor
proc = zbar.Processor()
# configure the Processor
proc.parse_config('enable')
# initialize the Processor
device = '/dev/video1'
if len(argv) > 1:
device = argv[1]
proc.init(device)
...
NFC
Pour les Tag NFC, nous avons utilisé le matériel prêté par Mr Donsez. Il s'agit d'un capteur Tikitag (maintenant connu sous le nom de Touchatag), fabriqué à par d'un capteur ACR 122U (fabriqué par ACS, voir ici.
Pour l'utiliser, nous avons adapté un programme Java réalisé par Mr Donsez. Ce dernier nous permet maintenant de récupérer l'identifiant du tag NFC et de le renvoyer sur le port associé au programme.
RFID
Interface
/* A COMPLETER */
Contrôle de l'image
Bras articulé
La première expérimentation avec le système de servo-moteurs est disponible ici : http://vimeo.com/37984555
Arduino
Code
Nous mettons à disposition le code que nous avons écrit pour le projet dans l'archive suivante.
Matériel
Prété par Polytech
- 1 Mac mini (Non utilisé)
- 1 Webcam PS3
- 1 projecteur longue focale (Toujours en attente au 06/03/2012, emprunté le 20/04/2012 au responsable des services informatiques de l'IMAG)
- 1 lecteur NFC Tikitag
- 4 Mirroirs IKEA
- 1 lecteur RFID UHF longue distance (lecteur Impinj R420 prété par TagSys) - Géré par Rolly
- Quelques tags NFC
- Arduino + 2 servomoteurs rapides et puissants + miroir + pan/tilt servo bracket pour diriger le faiseau (si intensité lumineuse trop faible) ** voir Face Tracking with a Pan/Tilt Servo Bracket
Prêté par les étudiants
- 1 Bras articulé avec fixation pour pouvoir utiliser les servo-moteurs convenablement mais avec une forte contrainte de portabilité du système - Géré par Léopold