Skip to content. | Skip to navigation

Emergences

Lettre d'information n° 40

Image emergences pour impression
Personal tools
You are here: Home 2016 Lettre d'information n° 40 Apprendre à programmer avec des robots
Document Actions

Apprendre à programmer avec des robots

Bibliothèque de scripts pour programmer le pilotage des drones Parrot AR 2.0, Jakopter permet de faire voler ces machines en tapant des lignes de commandes sur un clavier d'ordinateur. D'abord utilisée à des fins pédagogiques, cette plateforme logicielle va aussi se mettre au service de l'expérimentation scientifique, comme l'explique François Bodin, l'enseignant chercheur à l'origine du projet.

Bibliothèque de scripts pour programmer le pilotage des drones Parrot AR 2.0, Jakopter permet de faire voler ces machines en tapant des lignes de commandes sur un clavier d'ordinateur. D'abord utilisée à des fins pédagogiques, cette plateforme logicielle va aussi se mettre au service de l'expérimentation scientifique, comme l'explique François Bodin, l'enseignant chercheur à l'origine du projet.

 

380 grammes. 18 km/h. 50 m de rayon d'action. 12 minutes de vol. Et quatre hélices qui brassent l'air comme un gros bourdon. Avec 700 000 exemplaires vendus en trois ans, le Parrot AR 2.0 est l'archétype du drone de loisir. Il se pilote en wifi à l'aide d'un simple téléphone portable sauf... au centre de recherche Inria de Rennes. Ici, le scientifique François Bodin (1) fait voler le quadricoptère en tapotant des lignes de code sur un clavier d'ordinateur : l.connect() l.takeoff() l.forward(0.5) l.up(0.5) etc.

Mais pourquoi donc se compliquer ainsi la vie alors qu'une télécommande visuelle permet déjà de piloter intuitivement cet aéronef ? “D'abord parce que c'est un excellent outil d'apprentissage de la programmation informatique. Et ce, dès la terminale. Avec un professeur qui assure l'option Informatique et Sciences du Numérique (ISN) au lycée René Cassin de Montfort-sur-Mheu, en Ille-et-Vilaine, nous avons construit un cours pour enseigner les bases du codage. Les élèves vont pouvoir écrire des instructions et observer immédiatement les effets sur la machine. Le même environnement va servir aussi pour l'enseignement à l'université. Mes étudiants devront, par exemple, programmer du calcul parallèle pour effectuer en temps réel le traitement du flux vidéo captés par le drone.

Langage retenu pour ce projet : Lua. Avantages ? “Il est simple, léger, stable, flexible, très documenté. Il s'interface bien avec le C. Mais le Python aurait aussi très bien convenu.” L'ensemble des scripts développés pour le maniement de la machine constitue une nouvelle plateforme logicielle baptisée Jakopter. Derrière sa vocation pédagogique se profile une autre ambition : forger un outil pour la recherche.

Le drone vient de l'univers robotique. Notre objectif est de simplifier son accès coté informatique.” Chaque jour qui passe voit naître de nouvelles applications pour ce type de machines : capture vidéo, transport de colis, surveillance de lignes électriques, détection archéologique, cartographie... De plus en plus sophistiqués, ces engins produisent de nombreuses données qui nécessitent des traitements informatiques complexes.

Systèmes cyber-physiques

Ce sont des systèmes cyber-physiques dont l'étude intéresse des chercheurs en informatique dans des contextes très divers. Mais pour effectuer leurs travaux, les scientifiques ont besoin de pouvoir expérimenter. Donc de faire voler des drones facilement.” Or, en pratique, la mise en œuvre de ces machines dans le cadre d'expériences exige souvent des mois d'apprentissage et de tâtonnements.

 “Le but de Jakopter est justement de faciliter l'utilisation de ces appareils. La plateforme va permettre aux chercheurs de s'affranchir des difficultés de déploiement et de se concentrer sur leurs travaux : tester des algorithmes, connecter des systèmes, développer des usages... Cette simplification joue un rôle important dans le processus d'innovation.” À noter au passage qu'une salle équipée de caméras infra-rouges (technologie de motion capture) permet par ailleurs déjà d'effectuer des expériences liées aux déplacements de la machine.

En ce qui me concerne, poursuit François Bodin, au delà du drone en lui-même, c'est le triptyque système cyber-physique, big data et calcul haute performance (HPC) qui m'intéresse. Le croisement de ces domaines très différents amène quantité de questions scientifiques et autant d'applications potentielles.” Par exemple ? “On peut imaginer un dispositif où un drone effectue un survol pour prendre des images dans lesquelles on va vouloir détecter des situations d'intérêt en temps réel. On peut alors tirer partie de la technologie des big data pour stocker les informations pertinentes (e.g. images, météo, géographie, etc.) et du HPC pour effectuer les calculs sur les données.

Et tout cela avec une liaison wifi à partir d'un quadricoptère Parrot AR 2.0 ? “Non évidemment. Mais maintenant que notre plateforme Jakoptère fonctionne, nous allons l'étendre à d'autres drones de plus grand gabarit.” Prochain de la liste ? “Un 3D Robotics. Nous allons lui greffer une carte Raspberry qui va lui faire croire qu'il est un Parrot. Il va donc obéir aux instructions reçues. De cette façon nous allons pouvoir exploiter différents modèles sans changer notre plateforme logicielle et en conservant des commandes homogènes d'une machine à l'autre.

Une fois l'apprentissage effectué, les scientifiques pourront donc monter en gamme, par incréments, en fonction des besoins. Des électroniciens et des roboticiens s'inviteront aussi à l'occasion pour perfectionner ou modifier des machines. “L'activité drones est un thème transversal qui concerne en fait bon nombre de chercheurs dans différentes équipes sur le campus. Or, il se trouve que cette activité est souvent trop dispersée pour atteindre une masse critique. Nous espérons que Jakopter contribuera à construire cette masse critique pour constituer  à Rennes un pôle de compétence.

-----
Note :

(1) Professeur à l'Université Rennes 1, Francois Bodin a été membre pendant 10 ans de l'équipe Caps. Il a impulsé la création des sociétés CAPS Entreprise et Tocea, intervenant dans des domaines allant du calcul haute performance à celui du réusinage de code source.