Logo ÉTS
Session
Cours
Responsable(s) Bruno De Kelper

Se connecter
 

Sauvegarde réussie
La notification a été envoyée
Echec de sauvegarde
Avertissement
École de technologie supérieure

Responsable(s) de cours : Bruno De Kelper


PLAN DE COURS

Automne 2025
ELE543 : Principes des systèmes embarqués (4 crédits)





Préalables
Programme(s) : 7694
             
  Profils(s) : T  
             
    ELE216 ET ELE344    
             
Programme(s) : 7483, 7883
             
  Profils(s) : T  
             
    ELE344    
             
Unités d'agrément




Qualités de l'ingénieur

Qn
Qualité visée dans ce cours  
Qn
  Qualité visée dans un autre cours  
  Indicateur enseigné
  Indicateur évalué
  Indicateur enseigné et évalué



Descriptif du cours
Acquérir les bases pour la conception des systèmes embarqués qui satisfont des contraintes matérielles et logicielles associées au traitement des évènements en temps réel. Comprendre la structure et l’opération des microcontrôleurs utilisés dans les systèmes embarqués. Se familiariser avec les spécificités des systèmes d’exploitation temps réel et savoir utiliser leurs services dans le développement de systèmes en temps réel. Acquérir les bases et les techniques de conception sécuritaire pour les systèmes en temps réel.

Concepts de base de traitement en temps réel, de temps de réponse et de systèmes embarqués. Études des caractéristiques matérielles et fonctionnelles des microcontrôleurs et de leurs interactions avec le code d’application. Notions et catégories d’événements, mécanismes de réponse aux événements en temps réel. Analyse de temps de réponse et de facteur de charge du système. Études des noyaux (kernel) en temps réel, allant de rudimentaires à complexes. Méthodes d’analyse des systèmes en temps réel et notions de base de fiabilité.

Séances de laboratoire de type projet : conception incrémental d’un système embarqué complet pour effectuer la synthèse des notions introduites.



Objectifs du cours

À la fin de ce cours, l’étudiant(e) sera capable de :

  • concevoir et de réaliser des systèmes satisfaisant aux contraintes matérielles et logicielles associées au traitement des évènements en temps réel;
  • comprendre la structure et l’opération des microcontrôleurs et des ordinateurs utilisés dans les systèmes temps réel;
  • comprendre l’opération des systèmes d’exploitation temps réel et savoir utiliser leurs services dans le développement de systèmes en temps réel;
  • développer et programmer un système d’acquisition de données en temps réel;
  • choisir une technique de conception sécuritaire pour les systèmes en temps réel.



Stratégies pédagogiques
  • Un (1) cours magistral par semaine.
  • Laboratoires : trois heures par semaine

Travaux à remettre

  • Les rapports de laboratoire sont effectués par groupe de deux (2) étudiant(e)s.

 




Utilisation d’appareils électroniques

Carte d'évaluation STM32F0Discovery

Analyseur logique Logic8 de Salea
 




Horaire
Groupe Jour Heure Activité
01 Lundi 13:30 - 17:00 Activité de cours
Jeudi 08:30 - 11:30 Laboratoire



Coordonnées du personnel enseignant le cours
Groupe Nom Activité Courriel Local Disponibilité
01 Jean-François Penven Activité de cours jean-francois.penven@etsmtl.ca
01 Laboratoire



Cours
Date Contenus traités dans le cours Heures
 
  1. Introduction et concepts de base du temps réel
  • Introduction à la problématique des systèmes en temps réel
  • Exemples de systèmes ordinés en temps réel
  • Définition des concepts de base
  • Notion du temps de réponse dans les systèmes informatiques
3 heures
       2.  Le microcontrôleur STM32F0
  • Introduction au microcontrôleur STM32F0 de STMicroelectronics
  • Revue de ses composantes matérielles et leurs caractéristiques
  • Détails de fonctionnement des modules :
    • RCC : module de réinitialisation et de contrôle d'horloges.
    • GPIO : module d'entrées/sorties tout usage.
    • USART : module de communication série synchrone/asynchrone.
9 heures
       3.  Événements, interruptions et temps de réponse
  • Concept d'évévement, détection d'événement, séquence de traitement d'événement
  • Analyse de temps de réponse d'événement
  • Facteur de charge des événements
  • NVIC : module de contrôle d'interruptions vectorisées.
6 heures
       4.  Noyau en temps réel 
  • Systèmes d’exploitation et noyau en temps réel
  • Boucle d’interrogation, tâches pilotée par état et multitâche coopératif
  • Système piloté par interruption, à temps partagé et à priorité préemptive
  • Système avant-plan / arrière-plan
6 heures
       5.  Intra (approximatif) 3 heures
       6.  Systèmes d’exploitation en temps réel
  • Notions de tâche, de processus et de fil d’exécution
  • Notions de région critique, d’opérations atomiques et de ressources partagées
  • Multitâches préemptif et coopératif
  • Services de gestion de tâche d’un système d’exploitation multitâches – étude de cas : uC/OS-II
3 heures
       7.  Partage de ressources et synchronisation dans un OS multitâches
  • Processus et traitement d’interruption dans un OS multitâches
  • Partage de ressources et notion d’inter-blocage, graphe d’allocation des ressources, contrôle d’accès par attente active
  • Notions et problèmes de synchronisation de tâches
  • Services de synchronisation et de contrôle d’accès : sémaphore, mutex, boites et queues de message.
3 heures
       8.  Adapter un OS multitâches à une plate-forme en temps réel 
  • Adapter les besoins en mémoire et les services de l’OS
  • Modifier les fonctionnalités des services – la notion de crochets
  • Adapter l’OS à la cible - étude de cas : uC/OS-II
    • Temporisation par tampon circulaire
3 heures
      9. Validation et fiabilité 
  • Validation du traitement concurrent et respect des contraintes de temps réel : tâches périodiques et sporadiques
  • Notions de fiabilité et approches pour obtenir des systèmes fiables
  • Mesure et calcul de fiabilité
  • Redondance et tolérance aux fautes
3 heures
  Total 39

Note : Tous les cours sont d'une durée de 3 heures 30 minutes par semaine.




Laboratoires et travaux pratiques
Date Description Heures
  Le laboratoire consiste à développer un programme qui permet de faire fonctionner un petit robot mobile en mode téléguidé et en mode semi-autonome. Les différentes composantes du robot (moteurs, sonars, communication, …) sont sous le contrôle d’une carte de développement basée sur un microcontrôleur. Le programme développé par les étudiants gère ces différentes composantes selon les principes du traitement en temps réel. En mode téléguidé, les déplacements du robot sont décidés par l’usager et transmis au robot par un ordinateur personnel. En mode semi-autonome, les destinations sont décidées par l’usager mais le robot décide lui-même les trajectoires d’évitement d’obstacles.   Le programme est d’abord développé à l’aide d’un simulateur du robot s’exécutant sur un ordinateur personnel et est ensuite testé en laboratoire sur le vrai robot.  
  Développement du prototype 1 : Mode téléguidé Apprentissage de l'environnement matériel et logiciel pour le développement de logiciel pour le microcontrôleur (TrueStudio). Étude des périphériques disponibles sur le microcontrôleur ainsi que des composantes du robot. Conception et réalisation des fonctions de gestion des périphériques qui contrôlent les composantes du robot. Intégration des fonctions de contrôle des périphériques en un programme complet qui permet le déplacement du robot en mode téléguidé 24 heures
  Développement du prototype 2 : Mode semi-autonome Conception et réalisation d’une version multitâches du programme de téléguidage avec  le noyau en temps réel µC/OS-II. Gestion des tâches. Communication entre les tâches et synchronisation. Ajout de la fonctionnalité d’évitement d’obstacles à la nouvelle version du programme de téléguidage. 12 heures
  Total 36

 




Utilisation d'outils d'ingénierie
  • TrueStudio
  • Logic8



Évaluation
Activité Description % Date de remise
  Laboratoires 40 %  
  Examen de mi-session 40 % 27 octobre 2025
  Examen final 20 % à déterminer



Double seuil
Note minimale : 60



Dates des examens intra
Groupe(s) Date
1 27 octobre 2025



Date de l'examen final
Votre examen final aura lieu pendant la période des examens finaux, veuillez consulter l'horaire à l'adresse suivante : https://www.etsmtl.ca/programmes-et-formations/horaire-des-examens-finaux


Politique de retard des travaux
Tout travail (devoir pratique, rapport de laboratoire, rapport de projet, etc.) remis en retard sans motif valable, c’est-à-dire autre que ceux mentionnés dans le Règlement des études (1er cycle, article 7.2.5/ cycles supérieurs, article 6.5.2) se verra attribuer la note zéro, à moins que d’autres dispositions ne soient communiquées par écrit par l’enseignante ou l’enseignant dans les consignes de chaque travail à remettre ou dans le plan de cours pour l’ensemble des travaux.

Dispositions additionnelles

5 % par jour de retard




Absence à une évaluation

Afin de faire valider une absence à une évaluation en vue d’obtenir un examen de compensation, l’étudiante ou l’étudiant doit utiliser le formulaire prévu à cet effet dans son portail MonÉTS pour un examen final qui se déroule durant la période des examens finaux ou pour tout autre élément d’évaluation surveillé de 15% et plus durant la session. Si l’absence concerne un élément d’évaluation de moins de 15% durant la session, l’étudiant ou l’étudiante doit soumettre une demande par écrit à son enseignante ou enseignant.

Toute demande de validation d’absence doit se faire dans les cinq (5) jours ouvrables suivant la tenue de l’évaluation, sauf dans les cas d’une absence pour participation à une activité prévue aux règlements des études où la demande doit être soumise dans les cinq (5) jours ouvrables avant le jour de départ de l’ÉTS pour se rendre à l’activité.

Toute absence non justifiée par un motif majeur (voir articles 7.2.6.1 du RÉPC et 6.5.2 du RÉCS) entraînera l’attribution de la note zéro (0).




Infractions de nature académique
Les clauses du « Règlement sur les infractions de nature académique de l’ÉTS » s’appliquent dans ce cours ainsi que dans tous les cours du département. Les étudiantes et les étudiants doivent consulter le Règlement sur les infractions de nature académique (www.etsmtl.ca/a-propos/gouvernance/secretariat-general/cadre-reglementaire/reglement-sur-les-infractions-de-nature-academique) pour identifier les actes considérés comme étant des infractions de nature académique ainsi que prendre connaissance des sanctions prévues à cet effet. À l’ÉTS, le respect de la propriété intellectuelle est une valeur essentielle et tous les membres de la communauté étudiante sont invités à consulter la page Citer, pas plagier ! (www.etsmtl.ca/Etudiants-actuels/Baccalaureat/Citer-pas-plagier).

Systèmes d’intelligence artificielle générative (SIAG)
L’utilisation des systèmes d’intelligence artificielle générative (SIAG) dans les activités d’évaluation constitue une infraction de nature académique au sens du Règlement sur les infractions de nature académique, sauf si elle est explicitement autorisée par l’enseignante ou l’enseignant du cours.



Documentation obligatoire

Aucune
 




Ouvrages de références

Documentation recommandée

(Information variable / enseignant)

  • LEWIS, D.W., Fundamental of Embedded Software: Where C and Assembler Meet, Prentice Hall, 2002.
  • LABROSSE, J.J., MicroC/OS-II. The Real-Time Kernel, CMP Books, 1999.
  • LEWIS, D.W., Fundamentals of embedded software : with the ARM Cortex-M3, Prentice Hall, 2013.

 

Ouvrages de référence

(Information variable / enseignant)

  • BURNS, A., WELLINGS, A., Real-Time Systems and Programming Languages, 3rd Ed., Addison-Wesley, 2000.
  • COTTET, F. et al., Ordonnancement temps réel, Hermès Science, 2000.
  • DOUGLASS, B.P., Doing Hard Time – Developing Real-Time Systems with UML, Objects, Frameworks, and Patterns, Addison-Wesley, 1999.
  • LAPLANTE, P.A., Real-Time System Design and Analysis: An Engineer’s Handbook, 2nd Ed., IEEE Press, 1997.
  • TAVERNIER, C., Les microcontrôleurs AVR : description et mise en œuvre, Dunod, 2001.

 

Logiciels utilisés

  • Atollic TrueStudio, Environnement de programmation avec compilateur mixte pour les microcontrôleurs ST, https://atollic.com/truestrudio

  • LABROSSE, J.J., Logiciel MicroC/OS-II The Real-Time Kernel, CMP Books, 1999.

 




Adresse internet du site de cours et autres liens utiles

Site du cours: https://www.etsmtl.ca/etudes/cours/ELE543