Robotique et Logiciels Libres Le robot humanoïde...

Preview:

Citation preview

Robotique et Logiciels LibresLe robot humanoïde NAO

RMLL 2010 – Bothari GANHIR

1) Ma découverte de la robotique

RMLL 2010 – Bothari GANHIR

Coupe de robotique e=m6

RMLL 2010 – Bothari GANHIR

Roboka

RMLL 2010 – Bothari GANHIR

Robotstadium

RMLL 2010 – Bothari GANHIR

Robocup

RMLL 2010 – Bothari GANHIR

Aldebaran Robotics

RMLL 2010 – Bothari GANHIR

LibreBot

RMLL 2010 – Bothari GANHIR

NAO BetaTest

RMLL 2010 – Bothari GANHIR

2) Voyage au cœur de NAO

RMLL 2010 – Bothari GANHIR

NDA

RMLL 2010 – Bothari GANHIR

Fonctionnalités du robot NAO

RMLL 2010 – Bothari GANHIR

A quoi peut servir le robot NAO ?

RMLL 2010 – Bothari GANHIR

- assistance à la personne

- robot compagnon (genre de tamagochi)

- jeu (ludique ou éducatif)

- surveillance

- plateforme de développement

Articulations du robot NAO

RMLL 2010 – Bothari GANHIR

Caractéristiques détaillées du robot NAO

RMLL 2010 – Bothari GANHIR

Architecture matérielle du robot NAO

RMLL 2010 – Bothari GANHIR

Architecture logicielle du robot NAO

RMLL 2010 – Bothari GANHIR

linux

naoqi

Applicatif(C++, python, ...)

API

Projetschoregraphe

OpenEmbedded

DCM

broker proxy

Modules (local, remote)

ALMemory

Modules

Code (local, remote)

Hardware

Les programmes inclus dans NAO

RMLL 2010 – Bothari GANHIR

Les parties systèmes :- serveur FTP- serveur SSH- serveur Web

Les parties fonctionnelles :- vision (uratek)- synthèse vocale (acapela)- reconnaissance de la parole (acapela)

Alternatives libres possibles :- « OpenCV » pour les traitements d'images- « Espeak » pour la synthèse vocale- « HTK/Julius » pour la reconnaissance de la parole

3) Logiciels libres pour la robotique

RMLL 2010 – Bothari GANHIR

Pourquoi est-ce important ?

RMLL 2010 – Bothari GANHIR

Pour les mêmes raisons qui font choisir le libre sur un ordinateur.

- problèmes potentiels de sécurité et vie privée sont encore plus critique qu'avec un ordinateur (cf entend, voit, se déplace et peut agir physiquement dans la maison)

- pour orienter le futur de la robotique personnelle plutôt que de subir une évolution guidée uniquement par des intérêts financiers

Différents domaines

RMLL 2010 – Bothari GANHIR

- systèmes embarqués en général (linux, temps réel)

- bibliothèques de traitement des images et de l'audio (OpenCV, SLAM)

- outils de développement haut niveau (équivalent à Choregraphe)

- simulation physique (gazebo/player)

- surcouche indépendante du robot (ROS, URBI)

ROS : Robot Operating System

RMLL 2010 – Bothari GANHIR

- une infrastructures de communication entre process distribués

- une abstraction du bas niveau

- un ensemble de briques réutilisables

URBI

RMLL 2010 – Bothari GANHIR

- un langage de programmation gérant le parallelisme des évènements

- une infrastructure client serveur permettant une execution locale ou distante des scriptes URBI

Code libre pour la robotique

RMLL 2010 – Bothari GANHIR

- robocup code release

- certains développements des NaoTesteurs

- développements faits pour tuxdroid

4) Développement d'une application pour NAO

RMLL 2010 – Bothari GANHIR

Choregraphe

RMLL 2010 – Bothari GANHIR

- pour ceux qui ne savent pas programmer

- pour ce qui est enchainement de mouvements du robot

Python

RMLL 2010 – Bothari GANHIR

from naoqi import ALProxy

tts = ALProxy("ALTextToSpeech",IP,9559)

tts.setLanguage("English")

tts.say("Hello World!")

C++

Faut faire la cross compilation du code pour le faire tourner sur le robot.

Ajouter des choses au système (OpenNAO)

RMLL 2010 – Bothari GANHIR

Le systèmes est basé sur OpenEmbedded.

L'archive OE utilisée pour générer le système du robot est actuellement distribué au NaoTesteurs.

Il suffit donc d'utiliser les recettes de OE pour facilement gérer les paquets (avec leur dépendances) que l'on souhaite ajouter au robot.

Diffuser ses programmes

RMLL 2010 – Bothari GANHIR

NAO comporte les outils APT, on peut donc créer un paquet DEB, ou même un dépôt dédié au robot NAO pour diffuser ses programmes.

Mais un « NaoStore » officiel est prévu pour le lancement grand public du robot NAO.

User Interface en robotique

RMLL 2010 – Bothari GANHIR

Contrôle- ligne de commande- web interface- commandes vocales- commande audio- commandes visuelles- commandes tactiles

Feedback du robot- leds- audio- tts- mouvements

« Ghost » du robot

RMLL 2010 – Bothari GANHIR

- vie autonome du robot- mémoire et connaissances- gestion des stimuli environnementaux complexes

Meta user interface donnant accès au différentes applications connues du robot.

5) Conclusion

RMLL 2010 – Bothari GANHIR

Le futur de NAO ?

RMLL 2010 – Bothari GANHIR

- sortie grand public

- roméo

- prothèses évoluées / exosquelette

- sortie grand public

- roméo

Le futur de la robotique humanoïde ?

Comment contribuer au libre en robotique ?

RMLL 2010 – Bothari GANHIR

- en contribuant au libre en général

- en implémentant des solutions de traitement d'image et de traitement audio concrètes

- en participant à des concours de robotique réelle (coupe e=m6) ou simulée (robotstadium)

- en développant des comportements ou des programmes pour Nao (les naotesteurs pourront tester ces contributions sur leur robot)

Comment et où apprendre la robotique ?

RMLL 2010 – Bothari GANHIR

- de plus en plus d'écoles d'ingénieurs intègrent ces aspects

- en participant à des concours de robotique réelle (coupe e=m6)

- en participant à des concours de robotique simulée (robotstadium)

- en se formant sur un des multiples aspects constituant la robotique (mécanique, electronique, informatique, traitement du signal, intelligence artificielle...)

Des questions ?

RMLL 2010 – Bothari GANHIR

Merci.

RMLL 2010 – Bothari GANHIR

Recommended