UE 3.1 : Introduction au C++ pour la robotique

C++ est un langage de programmation compilé permettant la programmation sous de multiples paradigmes (comme la programmation procédurale, orientée objet ou générique).
Ses bonnes performances, et sa compatibilité avec le C en font un des langages de programmation les plus utilisés en robotique, où la performance est critique.

L'objectif de ce cours est d'apprendre les bases du C++ via des applications liées à la robotique.
Il aborde en particulier les notions de base telles que les structures de données, l'allocation dynamique, la programmation orientée objet, la lecture de fichiers. D'autres notions liées au développement logiciel, telles que la création de bibliothèques ou la compilation organisée par CMake, seront étudiées.

Calendrier 2020/2021 (36 créneaux)


  1. 1. Introduction au C++
    Séance 1 : [2cr] Lun 09/09, 14h30-16h35
    Séance 2 : [2cr] Lun 09/09, 14h30-16h35
    Cours 01 : introduction
    TD 01 : Platooning (1 voiture)


  2. 2. Programmation orientée objet
    Séance 1 : [2cr] Mer 18/09, 10h20-12h15
    Séance 2 : [2cr] Mar 24/09, 13h30-15h25
    Cours 02 : programmation orientée objet (complément au cours 02)
    TD 02 : Platooning (n voitures autonomes)
    Résultat attendu à la fin du TD :


  3. 3. Tableaux et pointeurs
    [4cr] Ven 25/10, 08h10-12h15
    Cours 03 : tableaux et pointeurs
    TD 03 : résoudre un labyrinthe


  4. 4. Fichiers et conteneurs
    [4cr] Ven 04/11, 08h10-12h15
    Cours 04 : fichiers et conteneurs
    TD 04 : sérialiser un labyrinthe
    Labyrinthes à télécharger :


  5. 5. Outils de développement
    [4cr] Ven 15/11, 08h10-12h15
    Cours 05 : outils de développement
    TD 05 : organiser un dépôt pour votre projet


  6. 6. Projet : modèle numérique de terrain
    Séance 1 : [4cr] Ven 29/11, 08h10-12h15
    Séance 2 : [4cr] Ven 06/12, 08h10-12h15
    Séance 3 : [4cr] Ven 13/12, 08h10-12h15
    Présentation du projet
    Deadline : 8 janvier, 23h
    (optionnel) Infos pour ombrage (hillshading) (ArcGIS)



    MNT d'une portion de la rade de Brest
    - réalisé par l'ENSTA Bretagne / Shom (Brest)
    - 2018, 1m, WGS84
    - rendu en HD avec ombrages



    MNT du Lac de Guerlédan
    - réalisé par l'ENSTA Bretagne (Brest)
    - février 2019, 0.5m, WGS84
    - rendu en HD avec ombrages


  7. 7. Évaluation
    [4cr] Mar 17/12, 13h30-17h35 (en F223)
    Sujet de l'évaluation
    Fichiers nécessaires pour l'évaluation
    Correction
    Résultat attendu à la fin de l'évaluation :

Annexes

Liens utiles

Cours express (4h, printemps 2019)

Enseignements

Ces cours sont enseignés dans les établissements suivants :

ENSTA Bretagne