Embedded Systems and Robotics
MICRO-315 / 6 credits
Teacher: Mondada Francesco
Language: French
Retrait: Il n'est pas autorisé de se retirer de cette matière après le délai d'inscription.
Résumé
Ce cours aborde la programmation de systèmes embarqués: la cross-compilation, l'utilisation d'une FPU dans des microcontrôleurs, l'utilisation d'instructions DSP et les mécanismes à disposition dans le cadre d'un Real-time Operating System. Le tout est mis en oeuvre dnas un contexte robotique.
Contenu
- Outils de programmation (assembleur, C) pour systèmes embarqués, étapes de compilation, code généré par un compilateur. Limites de la programmation en C et en assembleur, dépendance du matériel.
- Contraintes temps-réel, de mémoire ou de puissance de calcul, impact sur la programmation en C par rapport à l'assembleur.
- Spécificiés d'un processeur DSP, programmation DSP en assembleur
- Structuration d'application par couches d'abstraction, partage de ressources matérielles, organisation du code.
- Principes et utilisation d'un Real-Time Operating System.
Mots-clés
programmation de systèmes embarqués, cross-compilateur C, programmation DSP, Real-Time Operating System, robotique mobile.
Compétences requises
Cours prérequis obligatoires
Programmation C/C++
Systèmes logiques
Microcontrôleurs
Cours prérequis indicatifs
Blocs 1 et 2
Concepts importants à maîtriser
Systèmes logiques
Concepts de programmation de base (C)
Structure et périphériques d'un microcontrôleur
Acquis de formation
A la fin de ce cours l'étudiant doit être capable de:
- Optimiser l'écriture de programmes C pour systèmes embarqués
- Utiliser des outils de compilation croisée
- Choisir ou sélectionner le language de programmation adapté à une application
- Développer un programme embarqué
- Analyser un système embarqué à partir de sa schématique
- Choisir ou sélectionner entre un processeur standard et un processeur DSP en fonction de l'application visée
- Concevoir un programme embarqué
- Structurer une architecture de programme basée sur un RTOS
Compétences transversales
- Accéder aux sources d'informations appropriées et les évaluer.
- Ecrire un rapport scientifique ou technique.
- Faire une présentation orale.
- Planifier des actions et les mener à bien de façon à faire un usage optimal du temps et des ressources à disposition.
- Utiliser une méthodologie de travail appropriée, organiser un/son travail.
Méthode d'enseignement
Ex cathedra et pratique (TP et miniprojet)
Travail attendu
Révision par un quiz chaque semaine
Préparation du TP à l'avance
Projet en fin de semestre
Méthode d'évaluation
Un test sur la programmation de systèmes embarqués (40% de la note finale) qui a lieu au milieu du semestre
Un miniprojet de programmation d'un robot (60% de la note finale) dont le rapport est rendu dans les dernipères semaines du semestre selon les dates indiquées en début de semestre par l'enseignant.
In the programs
- Semester: Spring
- Exam form: During the semester (summer session)
- Subject examined: Embedded Systems and Robotics
- Courses: 1 Hour(s) per week x 14 weeks
- Project: 3 Hour(s) per week x 14 weeks
- TP: 2 Hour(s) per week x 14 weeks
- TP: 2 Hour(s) per week x 14 weeks
- Type: mandatory
- Semester: Spring
- Exam form: During the semester (summer session)
- Subject examined: Embedded Systems and Robotics
- Courses: 1 Hour(s) per week x 14 weeks
- Project: 3 Hour(s) per week x 14 weeks
- TP: 2 Hour(s) per week x 14 weeks
- TP: 2 Hour(s) per week x 14 weeks
- Type: mandatory
- Semester: Spring
- Exam form: During the semester (summer session)
- Subject examined: Embedded Systems and Robotics
- Courses: 1 Hour(s) per week x 14 weeks
- Project: 3 Hour(s) per week x 14 weeks
- TP: 2 Hour(s) per week x 14 weeks
- TP: 2 Hour(s) per week x 14 weeks
- Type: optional