Tabletop: Difference between revisions
ChristopheH (talk | contribs) No edit summary |
|||
Line 2: | Line 2: | ||
* UE/Module: Projet innovant de RICM4 option CM |
* UE/Module: Projet innovant de RICM4 option CM |
||
* Enseignant: Didier Donsez |
* Enseignant: Didier Donsez |
||
* Elèves |
* Elèves RICM 5: Christophe Havard (chef de projet), Renaud Collin, Sebastien Skorupski |
||
* Intervenants externes : Elsa Neves ([http://fr.wikipedia.org/wiki/Institut_de_la_Communication_et_des_M%C3%A9dias | ICM Grenoble]) |
|||
==Introduction== |
==Introduction== |
||
Le tabletop est une table '''tactile''' '''interactive''' d'environ 60". La technologie employée est dite "'''multipoint'''", c'est-à-dire qu'elle permet à un nombre important d'utilisateur d''''interagir en même temps'''. |
|||
Cette table fonctionne avec un Mac Mini et 2 systèmes d'exploitation : Mac OSX et Windows 7. |
|||
Les technologies utilisées sont Flash (AS3) pour le codage de l'application, NFC pour l'identification et le paiement des utilisateurs. |
|||
Les applications clientes peuvent être développées sur plusieurs technologies dont : |
|||
# Java (MT4j) |
|||
# Flash AS3 (TUIO library) |
|||
# Python (PyMT) |
|||
# etc |
|||
La table est également équipée d'un lecteur NFC type ACR122. |
|||
Présentation commerciale du projet : [http://air.imag.fr/mediawiki/images/6/60/AIR_NFC_TableTop.pdf AIR_NFC_TableTop] |
Présentation commerciale du projet : [http://air.imag.fr/mediawiki/images/6/60/AIR_NFC_TableTop.pdf AIR_NFC_TableTop] |
||
Les actualités du projet en anglais sur [http://youforkmywife.wordpress.com/ notre blog] |
|||
==Objectifs== |
==Objectifs== |
||
Les objectifs du projet sont |
Les objectifs du projet sont |
||
# de réaliser la partie matériel d'un tabletop à faible coût |
# de réaliser la partie matériel d'un tabletop à faible coût |
||
# d'évaluer les canevas de développement d'IHM multipoint (Flash/ |
# d'évaluer les canevas de développement d'IHM multipoint (Flash/Java/C#/.NET/Windows7) |
||
# de réaliser une application pour une table de restaurant (affichage des plats, commande, addition, enquête de satisfaction ...) |
# de réaliser une application pour une table de restaurant (affichage des plats, commande, addition, enquête de satisfaction ...) |
||
# d'utiliser la technologie NFC ([[Near Field Communication]]) pour permettre aux utilisateurs de s'identifier et payer via leur téléphone mobile |
# d'utiliser la technologie NFC ([[Near Field Communication]]) pour permettre aux utilisateurs de s'identifier et payer via leur téléphone mobile |
||
Ces informations peuvent être injectées dans un monde virtuelle d'avatars. Inversement, les capteurs et les usagers peuvent être simulés et représentés dans le monde réel augmenté. Pour cela, vous utiliserez [http://diasuite.inria.fr DiaSuite]. |
|||
==Table Tactile== |
==Table Tactile== |
||
Line 41: | Line 48: | ||
- Des lampes infrarouges sont placés à l'intérieur de la table afin de diffuser des ondes infrarouge vers la surface vitrée. |
- Des lampes infrarouges sont placés à l'intérieur de la table afin de diffuser des ondes infrarouge vers la surface vitrée. |
||
- La webcam est pointée vers la surface vitrée. |
- La webcam est pointée vers la surface vitrée. |
||
- Des |
- Des plaques en bois sont découpées et placées autour de la table afin de la protéger des perturbations extérieures (lumière notamment). |
||
<gallery> |
<gallery> |
||
Line 51: | Line 58: | ||
===Installation logicielle=== |
===Installation logicielle=== |
||
* CCV (Community Core Vision) [http://ccv.nuigroup.com CCV] |
* Tracker : CCV 1.4 (Community Core Vision) [http://ccv.nuigroup.com CCV] |
||
<gallery> |
<gallery> |
||
Line 75: | Line 82: | ||
=== Matériel=== |
=== Matériel=== |
||
* ACR122 NFC reader : [http://www.nfc-reader.com/acr122-drivers.php drivers sur nfc-reader.com] ou [http:// |
* ACR122 NFC reader : [http://www.nfc-reader.com/acr122-drivers.php drivers sur nfc-reader.com] ou [http://acs.com.hk/index.php?pid=drivers&id=ACR122U] |
||
* Nokia 6131 NFC : [http://www.nokia.fr/support/support-produits/nokia-6131-nfc Support en ligne] |
* Nokia 6131 NFC : [http://www.nokia.fr/support/support-produits/nokia-6131-nfc Support en ligne] |
Revision as of 09:31, 4 October 2011
- UE/Module: Projet innovant de RICM4 option CM
- Enseignant: Didier Donsez
- Elèves RICM 5: Christophe Havard (chef de projet), Renaud Collin, Sebastien Skorupski
- Intervenants externes : Elsa Neves (| ICM Grenoble)
Introduction
Le tabletop est une table tactile interactive d'environ 60". La technologie employée est dite "multipoint", c'est-à-dire qu'elle permet à un nombre important d'utilisateur d'interagir en même temps.
Cette table fonctionne avec un Mac Mini et 2 systèmes d'exploitation : Mac OSX et Windows 7. Les applications clientes peuvent être développées sur plusieurs technologies dont :
- Java (MT4j)
- Flash AS3 (TUIO library)
- Python (PyMT)
- etc
La table est également équipée d'un lecteur NFC type ACR122.
Présentation commerciale du projet : AIR_NFC_TableTop
Objectifs
Les objectifs du projet sont
- de réaliser la partie matériel d'un tabletop à faible coût
- d'évaluer les canevas de développement d'IHM multipoint (Flash/Java/C#/.NET/Windows7)
- de réaliser une application pour une table de restaurant (affichage des plats, commande, addition, enquête de satisfaction ...)
- d'utiliser la technologie NFC (Near Field Communication) pour permettre aux utilisateurs de s'identifier et payer via leur téléphone mobile
Table Tactile
Matériel
- Table en verre IKEA (60")
- Miroir
- Mac Mini
- Videoprojecteur short-throw
- Illuminateur IR
- Webcam PS3 modifiée (IR filter removed & visible light bandpass filter added)
- Lentille grand angle (m12/0.5mm mount, 1.8mm, angle of view = 170°)
- RFID Reader (ACS ACR 122 RFID reader)
Installation matérielle
- La surface vitrée de la table est recouverte de papier calque afin de capter l'image du vidéo projecteur. - Le bord supérieur de la table est percé afin de pouvoir fixer un support pour le vidéo-projecteur. - Un miroir est placé de telle sorte à renvoyer l'image du vidéo-projecteur vers la surface vitrée - Des lampes infrarouges sont placés à l'intérieur de la table afin de diffuser des ondes infrarouge vers la surface vitrée. - La webcam est pointée vers la surface vitrée. - Des plaques en bois sont découpées et placées autour de la table afin de la protéger des perturbations extérieures (lumière notamment).
Installation logicielle
- Tracker : CCV 1.4 (Community Core Vision) CCV
Premières Démos
Module NFC
Communautée
Information sur la librairie open-source libnfc
Téléchargement de la librairie libnfc
Tutoriel sur l'utilisation de NFC sur Androïd
Matériel
- ACR122 NFC reader : drivers sur nfc-reader.com ou [1]
- Nokia 6131 NFC : Support en ligne
Environnement Logiciel : Nokia 6131 NFC
Nokia 6131 SDK. Le SDK propose deux type d'installation : sous forme d'une plugin eclipse ou d'un framework
Environnement Logiciel : libnfc
Ce document est basé sur le fichier README-Windows.txt disponible dans l'archive libnfc-1.4.2 [www.libnfc.org]
Prérequis
Afin de pouvoir interagir avec l'ACR122 les logiciels suivants doivent-être téléchargés:
Installation
Testée sous Windows XP/SP3 32 bit.
- Installer MinGW .!!!Attention!!! La documentation officielle indique qu'il faut sélectionner MinGW-w64 afin que MinGW puisse avoir accès aux librairie PCSC (Smart Card).
- Ajouter les répertoires suivant à votre PATH : c:\MinGW64\bin;c:\MinGW64\x86_64-w64-mingw32\lib32;c:\MinGW64\x86_64-w64-mingw32\include. pour ce faire :
- clic-droit sur le poste de travail/propriétés - Dans l'onglet avancé, cliquer sur Variables d'environnements - Modifier la variable PATH
- Décompresser l'archive libusb-win32-bin dans c:\Program Files\LibUSB-Win32. C'est dans ce répertoire que CMake cherchera LIBUSB lors de la compilation.
- Lire le libusb-win32-bin-README contenu dans le dossier bin afin de savoir où copier les deux fichiers .dll et .sys (dépend de votre architecture...)
- Installer CMake : Choisissez l'option "Add Cmake to the system PATH" pendant l'installation afin que CMake soi accessible depuis MinGW
- Extraire l'archive libnfc archive versc:\NFC\libnfc-src
- Lancer un éditeur de texte et copier les instructions suivantes :
cd c:\NFC\libnfc-build cmake -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release c:\NFC\libnfc-src mingw32-make cd ..
- Sauvegarder le fichier dans C:\NFC\make.bat
- Exécuter make.bat
- Copier le fichier c:\NFC\libnfc-build\libnfc\libnfc.dll vers c:\windows\system32
Créer son programme
Il n'est pas possible (à ma connaissance) de compiler directement un fichier utilisant la librairie nfc. Pour compiler il faut éditer le fichier de configuration CMakeList.txt :
- Placer le fichier .c dans c:\NFC\libnfc-src\examples
- Editer examples\CMakeLists.txt et ajouter le nom du fichier .c dans la section SET
- Exécuter make.bat depuis c:\NFC\
Le fichier exécutable se trouve dans libnfc-build\examples
Utiliser des librairies supplémentaires
Prenons l'exemple des sockets sous windows, afin de permettre la compilation d'un programme les utilisant il faut (en plus de l'inclusion de <winsock2.h>) utiliser la librairie ws2_32. Là encore il faudra éditer le fichier de configuration CMakeList.txt afin d'expliciter les librairies à utiliser, de manière similaire à celle-ci:
IF(WIN32) TARGET_LINK_LIBRARIES(monProgramme ws2_32) TARGET_LINK_LIBRARIES(monProgramme nfc) TARGET_LINK_LIBRARIES(monProgramme nfc-utils) ENDIF(WIN32)
Source complète : File:CMakeLists.txt
Blazeds
Blazeds est un composant open source permettant d'accéder à des objets distant via une application Flex. Pour son fonctionnement blazeds se base sur un serveur Tomcat côté client et côté serveur. Getting start with Blazeds