Sujets de thèse/stages

Offre de thèse et stage en robotique

Sujet de thèse pourvu : Modèles temporels du mouvement et des forces d’interaction pour la manipulation interactive avec un robot

 

English summary below.

École doctorale de rattachement :   EDSYS  (http://www.laas.fr/EDSYS)

Cette thèse est finacée par l'université Toulouse 3 Paul Sabatier

L'équipe de recherche est Rpbotique et InteractionS (RIS), LAAS-CNRS

L’objectif de ce projet de thèse est d’améliorer de manière significative les interactions entre humain et robot dans des tâches de manipulation conjointe ou d’échange d’objets. La robotique de service devient une réalité, mais la réalisation de robots capables de travailler naturellement et en sécurité au contact de l'homme pour échanger des objets, aider des personnes handicapées dans leurs tâches quotidiennes ou réaliser des tâches en contact, nécessite de développer de nouveaux outils pour mieux définir et contrôler les mouvements.

Contexte :

Une grande quantité de travaux ont été réalisés en robotique interactive sans que l’on voie réellement arriver des robots capables de réaliser une tâche complète en interaction. Il convient donc de comprendre où se situent les points durs. Le premier que nous ne souhaitons pas aborder ici, est relatif à la réalisation matérielle des robots comme, par exemple, la réalisation de mains artificielle, d’actionneurs à raideur variable ou de capteurs intégrés. Le second est le contrôle des nombreux axes de ces robots (au moins vingt pour une main anthropomorphe), qui n’a pas encore reçu de réponse pleinement satisfaisante, mais des pistes de solutions commencent à apparaître comme l’utilisation des synergies [Palli 2014, Ficuciello 2011]. La planification des tâches de manipulation interactive constitue le troisième, elle fait appel à deux types de techniques : l’apprentissage [Calinon, 2013], [Faria, 2014] et la planification à partir d’un modèle de la scène incluant celui du partenaire et de son comportement [Lagriffoul, 2012], [Saut, 2012]. Les deux approches doivent plutôt être vues comme complémentaires que concurrentes et peuvent être utilisées simultanément. Au niveau de l’interaction aussi, on commence à mieux comprendre comment les hommes agissent et ce qu’ils attendent [Pankey, 2014].
Le sujet proposé ici aborde de manière indirecte ces deux derniers verrous en proposant une modélisation originale du mouvement et de l’interaction mécanique du robot.
Au delà de ces différentes difficultés, il est aussi important de remarquer que la particularité et la complexité des tâches interactives proviennent, d’une part, de la complexité des tâches à réaliser et donc de la difficulté à les modéliser et, d’autre part, de la réactivité nécessaire pour adapter le comportement du robot à celui de son partenaire humain.
Pour décrire une tâche de manipulation interactive, la consigne définissant le résultat ne suffit pas et il est nécessaire de décrire comment y arriver. Cette description temporelle comprend non seulement la description du déplacement, des efforts et de la raideur du robot, mais aussi celle des contrôleurs utilisés. Par exemple, la description d’une tâche de saisie d’un objet tendu par un humain pourrait être décrite par une décomposition en quatre phases [He, 2013]. D’abord, atteindre une configuration prédéfinie et assez proche de l’objet tendu, puis suivre une trajectoire relative par rapport à l’objet pour éviter les collisions, enfin saisir l’objet et effectuer un mouvement de retrait lorsque l’homme a lâché l’objet. Chacune de ces étapes est contrôlée de manière différente et les transitions doivent être prédéfinies.
Comme le partenaire humain peut bouger ou modifier son comportement, le robot peut être amené à replanifier tout  ou partie de la tâche. Compte tenu de la complexité de la tâche et des temps de planification, il est nécessaire de construire un système hiérarchique et de choisir des lois de commande qui s’adaptent au mieux au contexte. Par exemple dans le cas de l’échange précédent, l’utilisation d’une trajectoire de saisie définie dans le repère de l’objet permet de s’affranchir, dans une certaine mesure, des mouvements de l’humain. De même, si au moment de la saisie un obstacle gène la prise, il peut être suffisant de recalculer une prise à partir de la situation atteinte puis une trajectoire locale, c’est à dire d’éviter de faire appel à une replanification globale de la tâche.
Dans ce contexte, le basculement d’un contrôleur à un autre doit être pris en compte afin d’assurer la stabilité du système durant ces phases de transition. L’utilisation de trajectoire au niveau des boucles de commande semble être une approche prometteuse [Kroeger 2012]. Elle permet de changer facilement les repères dans lesquels sont définis les mouvements et les efforts ou de prendre en compte des limites physiques (couple ou vitesse maximum des moteurs), ainsi que la sécurité des humains qui est liée à la vitesse maximale et leur confort qui est lié au jerk maximal. Un moyen simple consiste à générer puis exécuter en temps réel une trajectoire respectant ces contraintes et joignant la situation actuelle du robot à un point proche sur la trajectoire désirée du robot. Le choix du point « proche » constitue un paramètre important qui permet de privilégier la définition temporelle du mouvement ou au contraire la précision du suivi du chemin associé. De même le comportement temporel sur la trajectoire peut être paramétré au niveau du contrôleur pour accepter ou non un retard. Ces fonctionnalités sont décrites ici pour le mouvement, un aspect du travail proposé concerne l’extension de ces concepts aux fonctions temporelles décrivant les forces et les raideurs.

Objectifs :

Pour construire des robots manipulateurs interactifs, il est nécessaire de décrire précisément les tâches de manipulation à réaliser. Les modèles actuels sont insuffisants pour décrire l’évolution des paramètres de contrôle, les efforts extérieurs et la raideur du robot et servir de support pour l’échange d’information entre les différents éléments du robot.
L’objectif de ce travail est de définir des modèles temporels pour des tâches de manipulation interactive et de montrer que les contrôleurs qu’ils permettent de définir offrent des possibilités intéressantes. Nous souhaitons aussi montrer l’apport de ces modèles pour l’échange de données entre les différents modules d’un robot, par exemple entre un planificateur et un contrôleur.
La validation de l’approche sera effectuée avec les robots de la plate-forme Robots du LAAS et notamment les deux PR2 de Willow Garage et Jido. Cette thèse s'inscrit également dans le cadre de l'axe stratégique ADREAM du LAAS qui regroupe les travaux du LAAS portant sur les systèmes cyberphysiques en interaction et au service de l'homme. L’équipe participe à de nombreux projets liés à l’interaction : ANR (Mardi http://mardi.metz.supelec.fr/) et européens (SAPHARI http://www.saphari.eu/ , SPENCER http://www.spencer.eu/).

Bibliographie :

Calinon, S., Kormushev, P., & Caldwell, D. G. (2013). Compliant skills acquisition and multi-optima policy search with EM-based reinforcement learning. Robotics and Autonomous Systems, 61(4), 369-379.
Faria, D. R., Trindade, P., Lobo, J., & Dias, J. (2014). Knowledge-based reasoning from human grasp demonstrations for robot grasp synthesis. Robotics and Autonomous Systems, 62(6), 794-817.
Ficuciello, F., Palli, G., Melchiorri, Claudio, Siciliano, B. (2011). Experimental evaluation of postural synergies during reach to grasp with the UB hand IV. IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pp.1775,1780, doi: 10.1109/IROS.2011.6094671.
Kroeger. T., (2010) On-line trajectory generation in robotic systems, volume 58 of Springer Tracts in Advanced Robotics. Springer, Berlin, Heidelberg, Germany.
Kroger, T., & Padial, J. (2012, May). Simple and robust visual servo control of robot arms using an on-line trajectory generator. In Robotics and Automation (ICRA), 2012 IEEE International Conference on (pp. 4862-4869). IEEE.
Lagriffoul, F., Dimitrov, D., Bidot, J., Saffiotti, A., & Karlsson, L. (2014). Efficiently combining task and motion planning using geometric constraints. The International Journal of Robotics Research, 0278364914545811.
Palli, G., Melchiorri, C., Vassura, G., Scarcia, U., Moriello, L., Berselli, G., ... & Siciliano, B. (2014). The DEXMART hand: Mechatronic design and experimental evaluation of synergy-based control for human-like grasping. The International Journal of Robotics Research, 33(5), 799-824.
Saut, J. P., & Sidobre, D. (2012). Efficient models for grasp planning with a multi-fingered hand. Robotics and Autonomous Systems, 60(3), 347-357.
 

Texte de présentation plus détaillé.

English summary:

The position is filled and no more available.

The objective is to work on: Temporal models for motions and forces for human/robot interactive manipulation.

I suppose the gross salary is about 1684,93 €/month (source: http://www.etudiant.gouv.fr/pid20439/contrats-doctoraux.html).

Summary of the project:

The objective of this project is to improve substantially the interaction between humans and robots for cooperative manipulation and object handover. Service robotic becomes a reality, but building robots capable to work naturally and safely with humans contact to exchange objects, to help disable persons in their daily tasks or to realize tasks in contact still requires important development. In particular new tools are necessary to better define and control motions.

A large amount of work was done in the domain of interactive robotic, but there is not yet robot capable to realize a complete interactive task. Consequently, we must understand what are the critical issues. The first point, which is outside the scope of this work, is relative to the robotic hardware, i.e. building effective hands, variable stiffness actuators or integrated sensors. The second concerns the control of the numerous axes of these robots (a least 20 for an anthropomorphic hand) that didn’t yet receive fully satisfactory solution, but trails towards solutions begin to appear like the use of synergies. The planning of interactive tasks is a third issue, two approaches are studied, learning and planning. Both are complementary, but we are still a long way from the solution. We begin also to understand how humans interact and what they expect.

We propose to address the two last challenges from an indirect approach using new models for motions and mechanical interactions of the robot.

Above these difficulties, it is worth noting that the characteristic and the complexity of the interactive tasks come from, on the one hand, the complexity of tasks to realize and thus from the difficulty to model them and, on the other hand, from the necessary reactivity to adapt the robot behavior to the one of its human partner. To describe an interactive manipulation task, defining the final state is not enough and it is necessary to describe how to achieve it.

As the human partner can move or change its behavior, the robot could be required to replan all or part of the task. Given the planning time and the complexity of the task, it is necessary to build a hierarchical system and to choose command laws that can be better adapted to the context. So the switching from one controller to another one must be taken into account in order to ensure the stability during transitional phases. Using trajectories at the control level appears to be a promising approach [Kröger 2012]. It allows to switch easily the frames in which motions are defined or to take into account the physical constraints (maximum torque and velocity of motors), as well as the human safety related to maximum speed and comfort related to maximal jerk. One solution is to generate in real time and then to execute a trajectory. This trajectory must join up a close point on the desired trajectory of the robot from the current situation while respecting constraints. The choice of some “close” point of the trajectory is a key element, which allow to give priority to the temporal definition of the trajectory, or alternatively to the tracking accuracy of the associated path. Similarly, the temporal evolution along the trajectory at the controller level can be parameterized to accept a delay or not. For example, following to an unforeseen event that generate a delay along the trajectory, the robot can choose to trigger an error, to continue with a delay or to continue compensating the delay. These functionalities are presented here for the movement; one aspect of the proposed work consists in the extension of these concepts to temporal functions describing forces and stiffnesses.

It would be interesting to realize numerous interactive manipulation tasks, both for service and industrial cooperative robotic. A study carried out among quadriplegic people as part of the ANR-ASSIST project showed that these persons are very interested in recovering their privacy. Help with dressing, for example, cannot be described only in terms of motions. It is necessary to precise acceptable stiffness, position and force limits. We had to deal with the same kinds of problems for an industrial collaborative assembly. The description of the interactive motions to define the controller includes not only the trajectory, but also stiffness and force evolution.

The aim of this work is to define temporal models for interactive manipulation tasks and then to show that planners and controllers based on these models offer interesting possibilities. These models should also help to improve communication between different robot modules, for example a planner and a controller.

Experiments and validations will be carried out with the robots of the LAAS robots platform, such as two PR2 from Willow Garage and Jido equipped with two LWR-4 KUKA arms. The team is also involved in different research project related to robot interaction (SAPHARI, SPENCER, MARDI).

 


Sujets de stage

Sujet de Stage : Identification et caractérisation des efforts de contact

Compétances : robotique, mécanique, commande, filtrage

Lobjectif est de caractériser les forces de contact dans le repère objet pour identifier le type de contact. Par exemple, nous souhaitons déterminer si la position de l'objet est stable ou le type de contact. La caractérisation des efforts de contact nécessite de conaître les paramètres inertiels de l'objet afin de différeentier les efforts de contact des efforts de gravité et d'inertie. Pour cela, nous utilisons des outils d'identification de paramètres comme le filtrage de Kalman. Le travail à effectuer se sitiue à plusieurs niveaux : de réalisation d'essais pour démontrer la validité de l'approche à l'extension des méthodes d'identifications utilisées.

Ancien sujets de stage :

Sujet de stage 2014 : Génération et contrôle de trajectoire

Compétences : robotique, informatique, commande ; niveau master 2

Nous avons développé un générateur de trajectoire que nous utilisons depuis le niveau planification jusqu'au contrôle de nos robots. L'intérêt de ce générateur est de fournir des trajectoires qui respectent des conditions de vitesse, d'accélération et de jerk (dérivé de l'accélération) maximum. Ceci est très utile pour assurer la sécurité et le confort des humains qui interagissent avec nos robots. Les trajectoires générées sont des suites de fonctions polynomiales de degré trois dans l'espace du robot. Cet espace peut être l'espace cartésien ou l'espace articulaire du robot. Ce générateur est en fait composé de plusieurs solveurs qui sont utilisés pour résoudre des problèmes différents : déplacement en temps minimum, déplacement en temps imposé, problèmes mono ou multi axes, approximation de trajectoires... L'objectif du stage est d'améliorer certaines fonctions d'un point de vue informatique ou algorithmique, puis de le compléter par des extensions pour traiter de nouveaux problèmes.
 

Sujet de stage 2013 (sujet pourvu) : Échange d'objet entre robots et humains

De nombreux travaux sont conduits pour faire collaborer dans un même lieu humains et robots. Nous souhaitons nous intéresser ici à l'échange d'un objet. Dans le cadre du projet DEXMART (http://www.dexmart.eu) nous avons réalisé un objet que nous appelons « Bidule ». Cet objet nous a permis d’étudier les efforts d’interaction pendant les échanges entres humains, puis d’'en déduire des stratégies pour améliorer les échanges d’objets entre humains et robots.
L’objectif de ce stage sera dans un premier temps de réaliser des mesures pour identifier les paramètres qui influent sur l'échange de l'objet Bidule entre deux personnes. Dans un deuxième temps, le statgiaire sera amené à effectuer des études de cas pour vérifier que les échanges d'objets réalisés entre un robot et un humain sont naturels et intuitifs.
Ces travaux rentrent dans le cadre du projet ANR ICARO.

Sujet de stage : Localisation des objets

Compétences : informatique, commande ; niveau master

Nos robots construisent un modèle de leur environnement afin de pouvoir y planifier puis y exécuter des actions. La position des objets peut être mesurée par des capteurs (caméra 3D, télémètres...), être définie par la position d'un robot (cas d'un objet transporté par un robot) ou le résultat des actions des forces extérieures (un objet lâché en hauteur tombe sur le sol). L'objectif du stage est de construire un module qui calcule la position des objets à partir des données capteurs et de données provenant du robot (position, ouverture de la pince...). Ce module produira des positions d'objets qui seront transmises au module SPARK qui construit un modèle de l'environnement du robot. Le module SPARK fait partie de Move3D qui est disponible dans robotpkg. Le simulateur physique bullet qui est utilisé dans le simulateur de robot morse pourra être utilisé pour simuler le comportement des objets.

Sujet de stage : Contrôle de trajectoire en présence d'humain

Compétences : commande, informatique ; niveau master 2

Nous avons développé un planificateur et un contrôleur de trajectoire pour manipuler des objets en présence d'humain. Les trajectoires réalisées respectent des contraintes en vitesse, accélération et dérivé de l'accélération pour définir des mouvements sûr et acceptables pour les humains. Nos deux robots Jido et PR2 utilisent ces outils pour manipuler des objets en présence d’humain. Afin de maitriser l’utilisation des deux bras nous développons un filtre de Kalman qui devra identifier les efforts exercé par l’humain et les caractéristiques de l’objet manipulé. De nombreux aspects sont intégrés sur ce système pour effectuer des tâches de manipulation : planification des prises, choix des positions d’échange d’objet, planification des trajectoires, contrôle… L’objectif du stage est de tester et valider ce système sur ces deux robots pour étudier notamment les commutations entre les différentes phases d’une tâche de manipulation et assurer la stabilité du système.

 

Sujet de stage : Modélisation de robots

Compétences : mécanique, informatique ; niveau Licence 3 ou master

Notre système de controle de robot se compose essentiellement du simulateur morse et du planificateur Move3D. Ces deux systèmes utilisent un modèle du robot et de l'environnement. Mais le simulateur utilise Blender qui utilise son système de fichier et peut exporter en Collada 1.4, et Move3D peut lire des modèles en Collada 1.5. L'objectif du stage est de compléter la chaine entre Move3D et Morse pour unifier nos modèles. Il existe un projet pour écrire un exporteur de modèle Collada 1.5 pour Blender. Une rationalisation de nos modèles devra ensuite être réalisée.

 

Sujet de stage : Amélioration de l'interface de supervision de robots

Compétences : informatique ; niveau Licence 3 ou master

Move3D est un ensemble de composants pour la planification de mouvement de robot que nous avons développé au LAAS. Il est distribué sous forme de logiciel libre dans robotpkg.  Plusieurs de ces composants utilisent une interface graphiques paramétrables, c'est le cas de Move3D-studio et Move3D-remote. L'objectif du stage est d'améliorer ces interfaces graphiques. Un aspect important est d'y ajouter la possibilité de configurer l'interface à distance. Par exemple, lorsque le robot s'arrête devant une table pour saisir un objet, il faudrait pouvoir changer automatiquement le point de vue d'une fenêtre graphique pour passer d'un mode distant à un mode où la vue correspond à celle du robot. 

 

Sujet de stage : Parallélisation de Move3D

Compétences : informatique ; niveau Licence 3 ou master

Move3D utilise une structure de donnée interne pour représenter le robot et son environnement qui ne peut pas être dupliquée. Or, les ordinateurs comporte de plus en plus de coeur qui permettent de paralléliser les calculs. L'objectif du stage est d'améliorer la structure de donnée et de définir des procédures de copie pour permettre la parallélisation des algorithmes dans Move3D.

Sujet de stage : Localisation d'objet par vision

Compétences : informatique ; niveau master

Nous avons développé Viman, un module de perception qui localise des étiquettes dans l'espace pour déterminer la position d'objets dans l'environnement du robot. Viman utilise artoolkit pour localiser les étiquettes. De nouvelles techniques de vision permettent de localiser des objets à partir d'éléments de leur texture. L'objectif du stage est de développer un outil identique à Viman, mais basé sur ces nouvelles techniques. Ce module sera intégré dans notre système de contrôle de robot qui est diffusé dans robotpkg.