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

Se connecter
 

Sauvegarde réussie
Echec de sauvegarde
Avertissement
École de technologie supérieure

Responsable(s) de cours : Bruno De Kelper


PLAN DE COURS

Été 2018
ELE542 : Systèmes ordinés en temps réel (3 crédits)





Préalables
Programme(s) : 7694
             
  Profils(s) : Tous profils  
             
    ELE216 ET ELE344    
             
Programme(s) : 7483
             
  Profils(s) : Tous profils  
             
    ELE344    
             
Unités d'agrément
Données non disponibles




Descriptif du cours



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 impliquant la synchronisation de deux (2) ordinateurs;
  • 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 : deux heures semaine

Travaux à remettre

  • Les devoirs sont réalisés sur une base individuelle.
  • 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 Mardi 08:30 - 12:00 Activité de cours
Mercredi 10:30 - 12:30 Laboratoire



Coordonnées du personnel enseignant le cours
Groupe Nom Activité Courriel Local Disponibilité
01 Nicolas Luna Activité de cours luna.id@gmail.com



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.  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
6 heures
       6.  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
       7.  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
      8. 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é 15 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. 9 heures
  Total 24

 




Utilisation d'outils d'ingénierie
  • TrueStudio



Évaluation
Activité Description % Date de remise
  Laboratoires 40 %  
  Examen de mi-session 30 % 27 juin 2018
  Examen final 30 %  

 




Dates des examens intra
Groupe(s) Date
1 27 juin 2018



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.7 b / cycles supérieurs, article 6.5.4 b) se verra attribuer la note zéro, à moins que d’autres dispositions ne soient communiquées par écrit par 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
• Pour les départements à l'exception du SEG :
Dans les cinq (5) jours ouvrables suivant la tenue de son examen, l’étudiant devra justifier son absence d’un examen durant le trimestre auprès de la coordonnatrice – Affaires départementales qui en référera au directeur du département. Pour un examen final, l’étudiant devra justifier son absence auprès du Bureau du registraire. Toute absence non justifiée par un motif majeur (maladie certifiée par un billet de médecin, décès d’un parent immédiat ou autre) à un examen entraînera l’attribution de la note zéro (0).

• Pour SEG :
Dans les cinq (5) jours ouvrables suivant la tenue de son examen, l’étudiant devra justifier son absence auprès de son enseignant. Pour un examen final, l’étudiant devra justifier son absence auprès du Bureau du registraire. Toute absence non justifiée par un motif majeur (maladie certifiée par un billet de médecin, décès d’un parent immédiat ou autre) à un examen 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 étudiants doivent consulter le Règlement sur les infractions de nature académique (https://www.etsmtl.ca/A-propos/Direction/Politiques-reglements/Infractions_nature_academique.pdf ) 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 les étudiants sont invités à consulter la page Citer, pas plagier ! (https://www.etsmtl.ca/Etudiants-actuels/Baccalaureat/Citer-pas-plagier).



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.

 

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

  • AVR STUDIO et AVR GCC,  Environnement de programmation avec compilateur mixte pour les microcontrôleurs ATMEL, www.atmel.com.
  • 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://cours.etsmtl.ca/ele542/