Download - De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

Transcript
Page 1: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

Réalité virtuelleet interaction avec des wiimotes

Projet tuteuré 2012-2013

De Decker ClaudineFaure JulieGouit BenjaminHelbling Allan

4ème année Informatique et Réseaux, INSA Toulouse

Tuteur : Thierry Monteil

jeudi 30 mai 2013

Page 2: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

2

Plan I. Présentation du projet

› 1. Définition du sujet› 2. Conduite de projet› 3. Scénarii

II .Morse/Blender› 1. Présentation de Blender› 2. Présentation de Morse› 3. Capteurs/Actionneurs › 4. Scénario mis en œuvre› 5. Bilan sur les outils

III. Interface› 1. Communication Morse-Frameself› 2. Fonctionnement de Morse› 3. Interface côté Morse› 4. Problèmes rencontrés› 5. Sensor› 6. Collector/Dispatcher

IV. FRAMESELF› 1. Présentation› 2. Fonctionnement› 3. Règles Drools› 4. Testeur Framself› 5. Bilan

V. Wiimotes

Page 3: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

3

I. Présentation du projet

« Réalité virtuelle et interaction avec des Wiimotes »

Objectifs :› Contruire, représenter et interagir avec un

monde virtuel Sujet « Création de capteurs et

actionneurs dans l'appartement virtuel du laas afin de mettre en oeuvre divers scenarii »

Page 4: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

4

I. Présentation du projet

ADREAM

Page 5: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

5

I. Présentation du projet

Diagramme de Gantt

Page 6: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

6

I. Présentation du projet

Objectif : Sécuriser un appartement Scenarii envisagés :

Page 7: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

7

I. Présentation du projet

OU

Page 8: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

8

I. Présentation du projet

Capteur de pression au sol

Page 9: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

9

I. Présentation du projet

Page 10: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

10

I. Présentation du projet

Scenario retenu

Page 11: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

11

II. Morse / Blender

Blender :› Logiciel open source, performant, léger et

multiplateforme

Page 12: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

12

II. Morse / Blender

Page 13: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

13

II. Morse / Blender

Morse : Modular OpenRobots Simulation Engine

Environnement : Blender

Intelligence : Scripts python

Page 14: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

14

II. Morse / Blender

Robots :

Capteurs : › Thermomètre, caméra, position

Actionneurs :› Son, lumière, mouvement

Page 15: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

15

II. Morse / Blender

Page 16: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

16

II. Morse / Blender

Page 17: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

17

II. Morse / Blender

Un actionneur : Son (On/Off)

Script morse appelle la fonction Sound de Blender

Page 18: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

18

II. Morse / Blender

Page 19: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

19

II. Morse / Blender

Page 20: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

20

II. Morse / Blender

Page 21: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

21

II. Morse / Blender

Page 22: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

22

II. Morse / Blender

Script du scenario

Page 23: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

23

II. Morse / Blender

Simulation

du scenario(carte de l’apparte-ment du LAAS)

Page 24: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

24

II. Morse / Blender

Données envoyées par le thermomètre

Page 25: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

25

II. Morse / Blender

Données envoyées à l’alarme

Page 26: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

26

II. Morse / Blender

Bilan sur les outils utilisés :

› Blender : très puissant mais difficile à prendre en main

› Morse : très bon outil pour simuler la robotique mais encore en développement

› Python : Découverte du langage

Page 27: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

27

III. Interface

1. Communication Morse - FRAMESELF

Pourquoi faire communiquer Morse et FRAMESELF ?

Quel intérêt ? Comment le faire ?

Page 28: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

28

IV. Interface1. Communication Morse - FRAMESELF

FRAMESELF

Morse

FRAMESELF

Morse

Interface Java

Page 29: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

29

III. InterfaceComment fonctionne Morse

Envoi de message : port 4000 - Tout ce qui est relatif à la simulation

60000, 60001, ... - Tout ce qui est relatif aux capteurs et aux actionneurs

Possibilité d'utiliser telnet

Page 30: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

30

III. Interface

Interface côté Morse

Utilisation de sockets Java en entrée et sortie

Découpage du String reçu en paramètre stockage de l’id et de sa valeur dans une Hashmap

Page 31: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

31

III. Interface

Problèmes rencontrés

Fermeture des sockets, mais non bloquant à l'instar de telnet

Format des messages :{"x": 0.3566, "pitch": -0.0001023715} Utilisation d'expressions régulières

Page 32: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

32

III. Interface

Sensor Création d'une classe Sensor Renvoie un Event interprété par

Collector Permet la traduction entre Morse et

Frameself Informations contenues :

› Nom du capteur› Catégorie

› Valeur› Emplacement

Page 33: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

33

III. Interface

Collector Transmet les Events reçus de la partie

morse à FRAMESELF sur 127.0.0.1:5000

Dispatcher Recoit les Actions de FRAMESELF sur

127.0.0.1:6000 et les transmet à la partie morse sous forme textuelle

Page 34: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

34

IV. FRAMESELF

Présentation Logiciel d'autonomic

computing Génère une IA pour un

système Compatible universellement :

OS et software, grâce au Java

Page 35: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

35

IV. FRAMESELF Fonctionnement

Page 36: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

36

IV. FRAMESELF

Règles Drools Règles claires, i.e. non ambigües et

compréhensibles par tous Utilise le chainage avant (méthode de

déduction) Règles partant de prémisses pour en

déduire de nouvelles conclusions Pars de données disponibles pour

extraire davantage de données

Page 37: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

37

IV. FRAMESELFRègles Droolsrule "add TemperatureHigh"

when Event($id: id, category == "Temperature", $value: value, Integer.parseInt(value) >= 40, $location: location) then Symptom symptom = new Symptom(); symptom.setCategory("TemperatureHigh"); symptom.setValue($value); symptom.setLocation($location); symptom.setTimestamp(new Date()); symptom.setExpiry(new Date (System.currentTimeMillis()+4000)); insert(symptom);end

Page 38: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

38

IV. FRAMESELFRègles Droolsrule "add RingAlarm rfc"when Symptom(category == "TemperatureHigh",$locationPres: location) Symptom(category =="AlarmStateOff",location==$locationPres)

then Rfc rfc = new Rfc(); rfc.setCategory("RingAlarm"); rfc.setValue("0"); rfc.setLocation($locationPres); rfc.setTimestamp(new Date()); rfc.setExpiry(new Date(System.currentTimeMillis()+4000)); insert(rfc);end

Page 39: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

39

IV. FRAMESELF

Testeur FRAMESELF

Page 40: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

40

IV. FRAMESELF

Bilan Outil très puissant et très simple

d'utilisation Permet en quelques règles de créer

une IA complète Bonne découverte de l'autonomic

computing

Page 41: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

41

V. Wiimotes

Utilisation de wiimotes API wminput (utilisation la bibliothèque

cwiid) Possibilité d'utiliser wmgui (interface

graphique, plus précis)

Page 42: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

42

V. Wiimotes

wminput :› mappage par défaut insuffisant› fichier de configuration› contrôle du robot avec la wiimote et le

nunch Exemple de mappage

Plugin.nunchuk_stick2btn.Up = KEY_UPPlugin.nunchuk_stick2btn.Down = KEY_DOWNPlugin.nunchuk_stick2btn.Left = KEY_LEFTPlugin.nunchuk_stick2btn.Right = KEY_RIGHT

Page 43: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

43

Conclusion

Cadre : cahier des charges, partage des tâches

Aspects moins scolaires : Blender, Wiimotes, ...

Découverte de nouveaux langages - nouveaux logiciels

Contact avec les chercheurs

Page 44: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

44

Conclusion

Axes de réflexion› Approfondissement des notions› Ecriture de jmorse (Java Morse)› Création de capteurs/ actionneurs› Réécriture du script wiimote

Page 45: De Decker Claudine Faure Julie Gouit Benjamin Helbling Allan 4 ème année Informatique et Réseaux, INSA Toulouse Tuteur : Thierry Monteil jeudi 30 mai 2013.

45

Conclusion

Remerciements› Thierry Monteil, pour nous avoir guidé et

proposé un sujet réellement intéressant› Pierrick Koch, pour sa disponibilité› Mamoun Gharbi, pour ses conseils› Madhi Ben Alaya, pour sa réactivité› Sami Hamadouche, pour son ouverture