Accueil - Connexion

Systemes Temps Reel

2E2AE3 Systemes Temps Reel Électronique et Physique appliquée S8
Cours : 6 h TD : 0 h TP : 15 h Projet : 0 h Total : 21 h
Responsable : Hugo Descoubes
Pré-requis
- Bonnes assises en développement de logiciel embarqué sur MCU (Micro Controller Unit)
- Bonnes assises en langage C (langage procéduraux, etc)
- Bonnes assises en outils de développement logiciel (environnement de programmation, shell UNIX, Makefile, chaîne de compilation, etc)
- Bonnes assises en systèmes numériques (systèmes combinatoires et séquentiels, algèbre booléenne, numération, etc)
Objectifs de l'enseignement
- Comprendre les services fondamentaux proposés par un système d'exploitation
- Comprendre le rôle et travail d'un ordonnanceur au sein d'une application
- Comprendre les contraintes liées au développement d'un système dit "temps réel"
- Maîtriser l'usage des services et outils logiciel proposé par un exécutif temps réel du marché
- Concevoir une application logicielle embarquée "simple" portée sur un RTOS (Real Time Operating System)
- Développer et documenter une application logicielle embarquée "simple" portée sur un RTOS
- Lire et analyser un cahier des charges et des spécifications techniques
Programme détaillé
https://foad.ensicaen.fr/course/view.php?id=118

En cours (fait par un ingénieur extérieur AIR LIQUIDE, avec démonstrations sur produits du marché en biomédical) :
- Rappels sur l'architecture et le fonctionnement de base d'un processeur numérique (CPU, SRAM, Flash, IRQ, ISR, etc)
- Les services et outils proposés par un système d'exploitation (illustration sur GNULinux)
- Définition du concept de temps réel
- Rôle du scheduler et stratégies d'ordonnancement d'un OS (Operating System)
- Conception et définition d'une architecture logicielle embarquée
- Analyse et rédaction de spécifications techniques

En TP (développement d'applications de test et portage d'une application bluetooth sur RTOS) :
- Stratégies d'ordonnancement (coopératif et préemptif)
- Modèle et segmentation logique de la mémoire
- Robustesse et durcissement de programme (tests, exceptions, assertions,débordements de segments, etc)
- Outils de protection, de communication et de synchronisation (mutex, section critique, séma
Applications (TD ou TP)
- Découverte des services logiciel proposés par un RTOS (illustration technique sur FreeRTOS)
- Portage d'une application bluetooth baremetal sur FreeRTOS (projet 1A Systèmes Embarqués)

Outils matériel et logiciel (TP) :
- IDE MPLABX et chaîne de compilation XC32 de Microchip
- Carte PIC32MZ EF Starter Kit de Microchip
- RTOS FreeRTOS

Outils matériel et logiciel (projet) :
- Prototype d'enceinte bluetooth ENSICAEN (MCU PIC18)
- IDE MPLABX et chaîne de compilation XC8 de Microchip
Compétences acquises
COMPETENCES SPECIFIQUES
- Comprendre les services fondamentaux proposés par un système d'exploitation
- Comprendre le rôle et travail d'un ordonnanceur au sein d'une application
- Comprendre les contraintes liées au développement d'un système dit "temps réel"
- Maîtriser l'usage des services et outils logiciel proposé par un exécutif temps réel du marché
- Concevoir une application logicielle embarquée "simple" portée sur un RTOS (Real Time Operating System)
- Développer et documenter une application logicielle embarquée "simple" portée sur un RTOS
- Lire et analyser un cahier des charges et des spécifications techniques

COMPETENCES GENERIQUES
Bloc de compétences : Considération de la dimension organisationnelle, personnelle et culturelle
-> Niveau 1 : Se connaître, savoir se situer, s'autoévaluer, gérer ses compétences et opérer ses choix professionnels

Bloc de compétences : Acquisition de connaissances et méthodes scientifiques et techniques et maîtrise de leur mise en oeuvre
-> Niveau 2 : Capacité à mobiliser des connaissances scientifiques et des techniques expérimentales ou de simulation
-> Niveau 2 : Capacité à concevoir des systèmes innovants, à les concrétiser et à les tester
-> Niveau 2 : Capacité à trouver, évaluer une information pertinente puis à l'exploiter, capacité s'auto-évaluer, enrichir ses connaissances et compétences

Bloc de compétences : Acquisition, développement et mise en œuvre de connaissances et méthodes théoriques et expérimentales spécifiques à un domaine professionnel
-> Niveau 2 : Capacité à concevoir des systèmes électroniques communicants et autonomes implémentant une algorithmique et une architecture avancée

Bibliographie
SYSTEMES D'EXPLOITATION : Modern Operating Systems - Tanenbaun
TECHNOLOGIES : sites fondeurs et open sources, forums et documentations techniques (www.freertos.org, https://www.microchip.com/, etc)

© 2021 - ENSICAEN ( Mentions Légales - Crédits )