% MIC5111 — Systèmes embarqués % UQAM — Département d'informatique % Plan de cours — Automne 2020 * Horaires, locaux et enseignants: Responsable(s) du cours ======================= Coordination ------------ Fayomi, Christian J. B. PK-4630 Enseignement ------------- Fayomi, Christian J. B. Description du cours ==================== Objectifs --------- Ce cours vise à familiariser les étudiants avec les grandes familles de solutions utilisées en systèmes embarqués. Il permettra aussi aux étudiants de maîtriser le langage et la terminologie propres au domaine des systèmes embarqués. Introduction aux systèmes embarqués; aspects matériels et logiciels; systèmes d'exploitation pour systèmes embarqués; processeurs à usage spécifique et processeurs à usage général; mémoires; périphériques et interfaces; mécanismes de communication et protocoles associés; détection et gestion des défaillances; sécurité des systèmes embarqués; systèmes de commande et régulation; environnements de conception; cycle de vie et étapes du développement d'un système embarqué; exemples de conception. Modalité d'enseignement ----------------------- Cours de 3 heures et un laboratoire de 2 heures/semaine. Préalables académiques ---------------------- - INF2171 - Organisation des ordinateurs et assembleur - MIC1065 - Circuits logiques; - MIC1116 -Électronique pratique; - MIC7340- Notions fondamentales sur les circuits électriques et électroniques; - MIC2111- Analyse de circuits. - MIC4101- Électronique analogique et numérique. Objectif du cours ----------------- Introduire l'étudiant aux systèmes embarqués et à leur applications dans les systèmes de mesure et de commande en temps-réel. L'emphase est mise sur le design de systèmes à microcontrôleurs et sur les aspects pratiques de leur réalisation. Le cours s'adresse aux étudiants ayant déjà une connaissance préalable des circuits analogiques et numériques, et des microprocesseurs; il vise principalement à initier l'étudiant à la conception et réalisation d'un système d'instrumentation au complet. Le cours magistral analyse les différents aspects et est complété par des expériences de laboratoire pour a pratique. L'enseignement vise l'apprentissage des différentes étapes de conception et de réalisation matérielles et logicielles, et la discussion avec les étudiants est favorisée. Contenu du cours ================ 1. Introduction: Définition d'un système embarqué; survol des différents types de systèmes embarqués; défis du design et métriques de conception; technologies de mise en oeuvre et outils de conception. 2. Capteurs: définitions, principes de détection et applications Différents types, capteurs résistifs, réactifs et intégrés; caractéristiques; circuits de traitement associés 3. Conditionnement de signaux pour capeteurs Préamplificateurs de gain et de transimpédance; compensation de linéarité et de câbles de raccordement, filtrage du bruit. 4. Convertisseurs A/Ns et N/As: caractéristiques et architectures Convertisseurs analogiques-numériques et numériques-analogiques; précision, sources d'erreurs et impacts; critères de sélection; chaines de mesure; circuit d'interfaces. 5. Microcontrôleurs Différences entre microcontrôleur, microprocesseur, DSP et FPGA; différentes familles de microcontrôleurs : architectures, description des membres, jeu d'instructions, émulation ; exemples de programmation; survol d'une famille typique. 6. Commande par MCU Chronomètres, temporisateurs et chiens de garde; interfaces de communication sérielle : UART, I2C, SPI, USB, PWM; interfaces de communication parallèle; afficheurs à segments et LCD; entrée-sorties analogiques. 8. Actueurs Moteurs, dispositifs électromécaniques et thermiques; circuit d'isolation avec le microcontrôleur; commutateurs de puissance à relais mécaniques et semi-conducteurs. 9. Circuits d'alimentation Convertisseurs continu à contiu; rectificateurs alternatif à continu; inverseurs de polarité; régulateurs lunaires et à commutation d'onde; différents types et design. 10. Exécutifs logiciels Mécanismes d'asservissement; différents types de commande : commande "oui-non", commande PID, commande en cascade, commande par anticipation; commande à logique floue; codage des algorithmes en virgule fixe : problèmes de débordement et approches de solution. 11. Design d'un système embarqué à microcontrôleur Choix du processeur : taille, vitesse d'horloge, périphériques internes; choix des interfaces; périphériques externes et circuits associés; conception du circuit imprimé : outils (dessin, capture schématique, etc.) ; procédé de fabrication; programmation en C romable vs. Assembleur; stratégies de calcul; systèmes d'exploitation en temps réel; cycle de développement logiciel ; assemblage et test du prototype. Formule Pédagogique =================== Le cours est organisé sous forme de cours magistraux de 3 heures par semaine (via Zoom ou Teams) et de séances de laboratoires de 2 heures par semaine. Les laboratoires se font par équipes de deux au maximum. La préparation des laboratoires doit se faire avant la séance. Les comptes-rendus de préparations sont ramassés par le responsable du laboratoire en début de séance et notés. - Format des rapports de laboratoires 1. Introduction 2. Objectifs 3. Description des méthodes et matériaux utilisés 4. Liste détaillée et abondamment commentée des programmes s'il y'a lieu. 5. Résultats 6. Discussions et obervations s'il y a lieu 7. Conclusion 8. Références (Si besoin y est) Rappel important: Se rappeler que "la sobriété a bien meilleur goût" - surtout pour celui qui corrige les rapports. Donc, être bref et précis. (Voir Guide de pour la rédaction des rapports) Modalités d'évaluation ====================== L'évaluation se fera de façon continue tout au long de la session, permettant ainsi à l'étudiant(e), de se situer et au besoin de modifier sa méthode de travail. Des tests de contrôle peuvent être effectués (sans pré-avis) afin de vérifier la préparation des laboratoires. DESCRIPTION SOMMAIRE ECHÉANCE PONDÉRATION (%) ----------------------------- ------------------------------- ----------------- Examen mi-session no1 Lundi 5 octobre 2020 10 Examen mi-session no2 Lundi 16 novembre 2020 15 Rapport de laboratoires (4) Une (1) semaine sur trois (3) 40 Examen final Lundi 14 décembre 2020 35 Les travaux pratiques (laboratoires) se feront par équipe composée de deux (2) étudiants(e). Les équipes ne peuvent être dissolues après le début des séances à moins de circonstances très particulières. Les travaux doivent être remis sans faute à la date spécifiée dans l'énoncé du laboratoire. Une perte de 25 % de la note globale du rapport est appliquée pour chaque jour de retard (le samedi et le dimanche ainsi que les congés seront considérés comme un jour). 10% de chaque note sont réservés à la maîtrise du français écrit. Les règlements concernant le plagiat seront strictement appliqués. Pour plus de renseignements, consultez le site suivant: http://www.sciences.uqam.ca/etudiants/integrite-academique.html Materiel de cours ================= 1. Recueil de transparents disponible et envoyés par courriel (Aucun document sur Mooodle) 2. Liste de documents additionnels à lire fournie en séance (ou envoyée par courriel si cela s'avère nécessaire) Médiagraphie ============ J. Catsoulis, Designing embedded hardware, O'Reilly, 2005 J.-M. Gagnon et R. Gaudette, Guide de rédaction d'un rapport scientifique, McGraw-Hill, 1995. Renseignement utiles ====================