Thierry GRANDPIERRE
Responsabilités
Thèmes de recherche
- Conception d'architectures dédiées multicomposants (CPU/DSP/FPGA/GPU)
- Méthodologie Adéquation Algorithme Architecture (AAA) pour les
applications temps réel embarquées sur architectures multi-composants (programmables, reconfigurables) ( ma thèse )
- Extension de la méthodologie AAA aux circuits reconfigurables, (thèse co-encadrée et soutenue : L. Kaouane 2004)
- Extension de la méthodologie AAA aux architectures mixtes (processeur-FPGA) et aux SoC(thèse co-encadrée et soutenue : O. Feki 2015)
- Modélisation des Architecture Reconfigurables et Programmable pour le Traitement du signal et des images (co-encadrement de thèse en cours)
- Applications :
- Compression vidéo (thèse co-encadrée et soutenue N. Bahri, 2015)
- Projet FUI Drones : CEOS (Thales, Alerion, Univ. Nancy, INRIA,ESIEE)
- Développement du logiciel SynDEx-IC (basé sur le noyau SynDEx de l'INRIA) et application au traitement des images
- Projet Impulsion de l'I-Site "Urbanvision" (Reconstruction automatique de Scènes 3D pour la simulation en réalité virtuelle) FUTURE
- Système dédié pour la réalité augmentée, brevet en cours pour un système d'aide à la radiologie interventioniste avec une équipe du CHU Henri Mondor
Publications HAL,
Principales Publications,
Academia,
Linkedin,
ResearchGate.
Principaux enseignements (par ordre de niveau académique croissants, en italique ceux qui n'ont pas été donnés en 2019-2020)
- Introduction aux Sciences de l'ingénieur : Robotique [Cours/TP/Projet 8h], niveau E1 (équiv. L1) : découverte de la robotique en construisant un robot mobile + programmation graphique Ardublock + Energia adapté de Arduino pour les cartes MSP432P401R de Texas Instrument .
- Programmation en C [Cours 15h+TPs 15h], niveau E2 (équiv. L2), env. 300 étudiants). Environnemant Linux + gcc.
- Programmation des microcontroleurs sur ARM MSP432 [TD+TP 18h], niveau E3 (équiv. L3). Environnement Code Composer Studio (Texas Instruments), programmation bas niveau (sans HAL) des GPIO, Timer/PWM, UART...
- Introduction aux réseaux [TP 8h], niveau E3 (équiv. L3). Configuration Firewall/ipchains, configuration routeurs Cisco.
- Programmation système des communications sockets [Cours 8h+TP 8h], filière informatique E4 (équiv. M1) et filière apprentissage réseaux E4FR.
- Systèmes distribués [Cours 7h+TP 7h], filière informatique E4 (équiv. M1). Modélisation système, algorithmique distribuée/horloges Lamport,...
- Architecture des processeurs RISC [Cours 4h+TP 6h], filière informatique E4. Pipeline, jeux d'instruction ASM, environnement DLX, application en traitement des images (Sobel).
- Introduction au traitement des images [Cours 15h+TP 15h], filière apprentissage Informatique et Applications E3 (équiv. M1) : structure informatique, techno. des capteurs (demosaicing), traitements bas niveau,histo.,filtrage, convolution, détection contours (Sobel, Canny-Deriche), PoI (Harris), Utilisation de OpenCV.
- Programmation multicoeurs et SIMD [Cours 8h+TP 7h], filière informatique E4 (équiv. M1) et en Master 2 Science de l'Image : OpenMP, SIMD (SSE4/AVX/LEON).
- Architecture et Programmation GPU [Cours 15h+TP 15h] filière informarique E5 (équiv. M2) : programmation CUDA (cibles PC + embarqués Jetson TX2, intro. à OpenCL.
- Programmation parallèle avec PWM (~MPI) [TP 8h], filière informatique E5 (équiv. M2).
- Technologies en Réalité Virtuelle et Augmentée [Cours 28h], Master 2 Science de l'Image + IMAC 3ème année + Mastère 1 en Art Numériques et Cultures Visuelles.
- Structure interne des ordinateurs [Cours 8h], Formation continue à l'ENSG/IGN]
- Encadrements + support de projet de tous niveaux
Supports de cours, TD et TP :
- depuis 2015 : sur icampus/moodle et sur sur blackboard :
-
2014-2015,
2012-2013,
2012-2013 + ,
unités d'ouvertures E5
2011-2012,
2010-2011,
2009-2010,
2008-2009,
2007-2008,
2006-2007,
2005-2006,
2001-2005.
Projets élèves
Quelques exemples de projets proposés et encadrés (
galerie de projets élèves en réalité virtuelle, robotique, traitement des images...) :
- Adaptation de l'autopilote PX4 pour cartes STM32MP157 à coeurs hétérogènes [Projet fil rouge filière apprentissage Electronique Embarquée 5ème année M2 - en cours]
- Développement d'un outil de réalité augmenté (sur Hololens) pour l'aide à la radiologie interventioniste (Brevet en cours avec CHU Heni Mondor) - [Stage M2]
- Traitement de la BRDF pour la simulation en réalité virtuelle avec Unity [Stage M2]
- Evaluation d'un système de localisation basé sur les E/R DecaWave DWM1000 UltraWideBand, [stage international M2]
- Attérissage automatique pour Drone basé sur le traitement d'images [stage international M2]
- Etude et développement d'un scanner 3D basé LIDAR à faible cout [Projet fil rouge filière apprentissage Electronique Embarquée 5ème année - M2]
- Développement du calculateur du Drone CEOS - Utilisation du RTOS PikeOS sur cible LS1046 NxP (Quadcore Cortex A72), interfacage avec Jetson Tegra TX2, communications SDR basé B210 [Stage M2]
- Communications temps réel basées AVB TSN / PTP IEEE1588 / Xenomai RTNET / sur PC [Stage M2 international 2016]
- Développement d'une application interactive associant le système à retour d'effort ultra-sons "Ultrahaptic" avec un Hololens [Projet E4 - en cours]
- Extension du système de chiffrement "Wookey" de l'ANSSI sur cible STM32F4 [Projet E4, en cours]
- Reconstruction 3D de scènes par photogrammetrie, importation dans Unity [Projet E4, en cours]
- IoT pour l'Apiculture [Projet E4]
- Visite virtuelle des Salles Blanches avec UE4 de l'ESIEE pour simulation immersive (Occulus, HTC Vive, salle immersive, dataglove...) [Projet E3]
- Développement d'une voiture autonome pour la NxP Cup, dév. d'un Cours dédié à nase de ARM NxP KL25Z [Projet E3]
- Modélisation et visite virtuelle de l'hôtel Sully sous Unity [Projet E3]
- Interface Kinect, Casque Immersif 3D, Réalité Virtuelle et Augmentée [Projet E3]
- Gant de données, Fauteuil roulant pour la salle de RV [Projet E3]
- Viewer 3D de données médicale, stéréoscopie(IRCAD)
- Detection d'horizon embarqué pour Drone (projet CNES/Perseus)
Tuto et infos utiles
- MACOS & GCC : il suffit d'installer xcode. Ensuite dans un terminal vous avez la commande gcc
- Linux sur PC Windows :
- Linux dans une machine virtuelle grace à Virtual Box : la solution la plus complète mais requiert un PC puissant et de l'espace disque
- Linux sur une clef USB Linux sans rien installer sur le PC : téléchargez
"PenDrive Linux installer" comme indiqué puis sélectionner la version
linux que vous souhaitez installer (cochez bien download the iso) puis
suivez les instructions affichées. L'inconvénient est qu'il faut
toujours avoir la clef ou le CD dans le lecteur (pensez à modifier le
BIOS pour que le PC soit capable de booter sur CD ou sur clef). C'est donc un peu lent à démarrer et vous
êtes limité pour sauvegarder votre travail.L'avantage, c'est que rien
est installé sur le disque, vous avez accès à une distribution Linux
assez complète.
- Environnement de compilation GCC/Linux sous windows grace à Cygwin : ce n'est pas un vrai linux mais cela prend peu de place et tourne sur un PC peu puissant. Permet de fabriquer des exécutables windows sans passer par visual studio.
- Des outils (multi-plateformes Win/Linux/Mac/Android) très pratiques :
Port serie (RS232) : lire le port serie sous windows: un très bon résumé est donné ici (et en copie locale ici). Voir aussi dans les enseignements l'unité IN213.
Evalbot l3s9b92 assembler (pwm motors!) programming asm,
Programmation
Cortex M3 M4 Evalbot (moteurs pwm!) l3s9b92 en assembleur
"Howto" pour capitaliser le travail effectué sur la NxP Cup (ex Freescale Cup) depuis 2013
"Howto" pour utiliser les cartes de dev. Freescale
¨Potree (et non ce n'est pas de la poterie mais des nuages de points (cloud points tree)
autre infos utiles : OLD RC car schematics,