Se connecterS'abonner

Chapitre 7

COMMANDE DES SYSTEMES AUTOMATISES (partie 2/6)

Lecture : 13 minQuiz de 10 questions

## Objectifs et prérequis À l’issue de cette unité, l’élève sera capable de : - Définir un microprocesseur et en citer les principales caractéristiques techniques (fréquence d’horloge, largeur de bus, jeu d’instructions, consommation). - Décrire le système minimum nécessaire au fonctionnement d’un microprocesseur (alimentation, horloge, mémoire, interfaces d’entrée/sortie). - Réaliser une activité d’intégration : monter une carte de développement basée sur un microprocesseur, charger un programme simple et vérifier son fonctionnement. - Identifier les symptômes d’un dysfonctionnement lié au microprocesseur, effectuer une intervention de maintenance de premier niveau et proposer une mise à jour du firmware. - Appliquer les règles de sécurité électrique et de prévention des risques liés à la manipulation de cartes électroniques en atelier. **Prérequis** : notions de base en électronique numérique (portes logiques, bascules, bus de données), connaissance du langage binaire et hexadécimal, lecture de schémas électroniques simples, utilisation d’un multimètre et d’un oscilloscope de base. --- ## Introduction contextualisée Dans les systèmes automatisés modernes présents dans les industries camerounaises (agroalimentaire, textile, mines, BTP), le microprocesseur constitue le « cerveau » qui assure la logique de commande, la acquisition de données et la génération de signaux de commande vers les actionneurs. Que ce soit dans une ligne de conditionnement de boissons au Douala, un poste de soudage automatisé à Yaoundé ou un système d’irrigation piloté à Maroua, le microprocesseur permet de remplacer des relais électromécaniques par des solutions programmables, plus flexibles et moins coûteuses en maintenance. Comprendre son architecture minimale, ses caractéristiques et savoir l’intégrer ou le dépanner sont donc des compétences essentielles pour le technicien supérieur en mécanique et commande des systèmes automatisés. Cette leçon s’appuie sur des exemples concrets tirés de l’atelier du lycée technique de Ngaoundéré et du centre de formation professionnelle de Garoua, afin de donner un ancrage professionnel réel. --- ## I. Les microprocesseurs : définition, caractéristiques et système minimum ### Définition du microprocesseur > Un microprocesseur est un circuit intégré à très grande échelle (VLSI) qui exécute des instructions stockées en mémoire pour réaliser des opérations arithmétiques, logiques et de transfert de données. Il se distingue du microcontrôleur par l’absence de mémoire et de périphériques intégrés ; il nécessite donc un système extérieur pour fonctionner. ### Caractéristiques techniques essentielles | Caractéristique | Description | Unité / Exemple typique | |-----------------|-------------|------------------------| | Fréquence d’horloge | Nombre de cycles d’exécution par seconde | MHz – GHz (ex. 200 MHz) | | Largeur du bus de données | Nombre de bits transférés en parallèle | 8 bits, 16 bits, 32 bits | | Largeur du bus d’adresses | Capacité d’adressage mémoire | 16 bits → 64 Ko, 20 bits → 1 Mo | | Jeu d’instructions | Ensemble d’opérations que le µP peut exécuter | CISC (ex. 8086) ou RISC (ex. ARM Cortex‑M0) | | Consommation puissance | Puissance dissipée en fonctionnement | mW – W (ex. 250 mW à 200 MHz) | | Température de fonctionnement | Plage thermique garantie | 0 °C – 70 °C (industriel) | | Tension d’alimentation | Tension requise pour le noyau | 3,3 V ou 5,0 V (selon génération) | > La fréquence d’horloge détermine la vitesse théorique d’exécution ; toutefois, le nombre de cycles par instruction (CPI) influence réellement les performances. ### Système minimum d’un microprocesseur Pour qu’un microprocesseur fonctionne, il faut lui fournir : 1. **Alimentation stable** (tension nominale + découplage avec condensateurs 100 nF proche des broches VCC/GND). 2. **Source d’horloge** (quartz céramique ou oscillateur externe) fournissant le signal d’horloge à la broche CLK. 3. **Mémoire de programme** (ROM ou Flash) contenant le code à exécuter, connectée au bus d’adresses et de données. 4. **Mémoire de travail** (RAM) pour les variables et la pile, également reliée au bus. 5. **Interfaces d’entrée/sortie** (ports GPIO, UART, SPI, I²C) selon les besoins de l’application. 6. **Circuit de reset** (broche RESET active‑low) pour initialiser le µP au démarrage. > Le schéma typique d’un système minimum comprend : VCC → régulateur → condensateurs de découplage → µP ; quartz → deux condensateurs de charge → broches XTAL1/XTAL2 ; ROM/Flash → adresses A0‑An, données D0‑Dn ; RAM → mêmes connexions ; ports GPIO → broches configurables. #### Exemple chiffré : dimensionnement d’une alimentation pour un µP 32 bits à 200 MHz - Consommation typique : 150 mA à 3,3 V. - Puissance = U × I = 3,3 V × 0,150 A = **0,495 W** ≈ 0,5 W. - On choisit un régulateur linéaire 3,3 V avec une marge de 20 % → capacité minimale 0,6 W. - Un régulateur LM1117‑3,3 (déperdition thermique ≈ (Vin‑Vout)×I) avec Vin = 5 V donne une dissipation de (5‑3,3)×0,150 = 0,255 W, nécessitant un dissipateur thermique de ≈ 10 mm² pour rester sous 60 °C de montée en température. --- ## II. Activités d’intégration ### Mise en œuvre d’un système basé sur microprocesseur **Objectif** : réaliser une carte de développement minimale autour d’un µP 8 bits (ex. ATmega328P) et faire clignoter une LED. **Matériel** : - ATmega328P (boîtier DIP28) - Cristal céramique 16 MHz + deux condensateurs 22 pF - Résistance de pull‑up 10 kΩ sur RESET - Condensateurs de découplage 100 nF (VCC‑GND) - LED + résistance 220 Ω sur une broche GPIO (ex. PB5) - Breadboard, fils de liaison, alimentation 5 V régulée **Procédure pas à pas** : 1. Insérer le µP sur la breadboard, relier VCC (pin 7) et AVCC (pin 20) à +5 V, GND (pins 8, 22) à la masse. 2. Placer le cristal entre les broches XTAL1 (pin 9) et XTAL2 (pin 10), ajouter les deux condensateurs 22 pF chacune reliée à la masse. 3. Connecter la résistance 10 kΩ entre RESET (pin 1) et +5 V. 4. Découpler chaque paire VCC‑GND avec un condensateur 100 nf placé le plus près possible du µP. 5. Relier l’anode de la LED via la résistance 220 Ω à la broche PB5 (pin 17), la cathode à la masse. 6. Vérifier les connexions avec un multimètre (continuité, absence de court‑circuit). 7. Alimenter le circuit ; observer que la LED reste éteinte tant qu’aucun programme n’est chargé. > La présence du cristal et de ses condensateurs de charge assure une fréquence d’horloge stable de 16 MHz, indispensable à la bonne exécution du code. ### Programmation de base (langage C simplifié avec AVR‑GCC) **Étapes** : 1. Installer la chaîne d’outils AVR‑GCC (avr‑gcc, avr‑objcopy, avrdude). 2. Créer le fichier source `blink.c` : ```c #define F_CPU 16000000UL #include <avr/io.h> #include <util/delay.h> int main(void) { // Configurer PB5 en sortie DDRB |= (1 << DDB5); while(1) { PORTB |= (1 << PORTB5); // LED ON _delay_ms(500); PORTB &= ~(1 << PORTB5); // LED OFF _delay_ms(500); } } ``` 3. Compiler : `avr-gcc -mmcu=atmega328p -Os blink.c -o blink.elf` 4. Convertir en format hexadécimal : `avr-objcopy -O ihex blink.elf blink.hex` 5. Téléverser via un programmateur USBasp : `avrdude -c usbasp -p m328p -U flash:w:blink.hex:i` > Après le téléversement, la LED clignote avec une période d’une seconde (500 ms ON, 500 ms OFF). ### Tests et validation - Vérifier la forme d’onde de l’horloge sur l’oscilloscope (sonde sur XTAL1) : fréquence 16 MHz, duty‑cycle ≈ 50 %. - Mesurer le courant d’alimentation avec un multimètre en série : valeur attendue ≈ 5 mA (LED éteinte) à 15 mA (LED allumée). - Utiliser un logique analyseur pour confirmer la toggling de la broche PB5 à 1 Hz. > Toute déviation supérieure à 10 % sur la fréquence ou le courant indique un problème de soudure, de composant défectueux ou de mauvaise configuration des fusibles. --- ## III. Activités de remediation ### Diagnostic des dysfonctionnements **Symptômes fréquents** : - Aucun clignotement de la LED (circuit apparemment mort). - LED fixe allumée ou éteinte. - Réinitialisation intempestive du µP (watchdog déclenché). **Méthode de diagnostic** : 1. Contrôler les tensions d’alimentation aux broches VCC et AVCC avec le multimètre (doit être 5,0 V ±0,2 V). 2. Vérifier la présence du signal d’horloge à l’oscilloscope (absence → cristal défectueux ou mauvais condensateurs de charge). 3. Tester la continuité du reset : résistance de pull‑up doit maintenir RESET à haut niveau ; si bas en permanence, vérifier le câblage ou un court‑circuit vers la masse. 4. Inspecter visuellement les soudures : ponts de soudure, pistes coupées, composants mal orientés. 5. Si l’alimentation et l’horloge sont bonnes, ré‑programmer la mémoire Flash avec un programmateur connu bon pour éliminer une corruption du code. > Un défaut d’horloge est la cause la plus fréquente d’un µP qui semble « mort » alors que son alimentation est correcte. ### Intervention de maintenance **Procédure de remplacement du cristal** : 1. Désalimenter le circuit. 2. Désouder le cristal défectueux à l’aide d’une pompe à dessouder ou d’une tresse. 3. Nettoyer les pads avec de l’alcool isopropylique. 4. Positionner le nouveau cristal 16 MHz et ses deux condensateurs 22 pF, souder proprement. 5. Réaliser un contrôle de fréquence à l’oscilloscope avant de réalimenter. **Mise à jour du firmware** : - Préparer le nouveau fichier `.hex` sur une clé USB. - Connecter le programmateur USBasp au µP (broches MOSI, MISO, SCK, RESET, VCC, GND). - Lancer la commande `avrdude -c usbasp -p m328p -U flash:w:nouveau_firmware.hex:i`. - Vérifier le retour « avrdude done. Thank you. » et tester le fonctionnement. > Lors de la programmation, il est indispensable de désactiver toute source de perturbation électromagnétique (éteindre les moteurs proches, éloigner les postes de soudage à l’arc). ### Prévention et bonnes pratiques - Toujours utiliser des condensateurs de découplage de valeur 100 nF en céramique X7R placés à moins de 5 mm des broches d’alimentation. - Respecter les valeurs de charge du cristal spécifiées dans le datasheet (généralement 12‑22 pF). - Ne jamais dépasser les limites de tension indiquées (ex. appliquer 5 V sur un µP 3,3 V uniquement si celui‑ci supporte le mode tolérant). - Porter des lunettes de protection lors du dessoudage pour éviter les projections de soudure fondues. - Travailler sur un tapis antistatique et porter un bracelet de mise à la terre lorsqu’on manipule des composants CMS sensibles. --- ## Synthèse du chapitre - **Microprocesseur** : circuit intégré exécutant des instructions stockées en mémoire. - **Caractéristiques clés** : fréquence d’horloge, largeur des bus, jeu d’instructions, consommation, température de fonctionnement. - **Système minimum** : alimentation stable, source d’horloge (quartz + condensateurs), mémoire programme (ROM/Flash), mémoire travail (RAM), interfaces E/S, circuit de reset. - **Intégration** : montage sur breadboard, vérification des tensions et de l’horloge, programmation en C avec AVR‑GCC, téléversement via programmateur USBasp. - **Tests** : mesure de fréquence d’horloge, consommation, observation du comportement des E/S. - **Remédiation** : diagnostic systématique (alimentation, horloge, reset, soudure), remplacement du cristal, reprogrammation du firmware, respect des règles de prévention (ESD, sécurité électrique). - **Sécurité** : couper l’alimentation avant toute intervention, utiliser des lunettes de protection, travailler sur un poste ESD, respecter les tensions nominales et les marges de puissance. --- ## Glossaire - **Microprocesseur** : circuit intégré qui exécute des instructions stockées en mémoire pour réaliser des opérations de calcul et de transfert de données. - **Horloge (clock)** : signal périodique qui synchronise les opérations internes du microprocesseur ; sa fréquence définit le nombre de cycles par seconde. - **Bus de données** : ensemble de lignes permettant le transfert parallèle de bits entre le µP et la mémoire ou les périphériques. - **Bus d’adresses** : ensemble de lignes servant à spécifier l’emplacement mémoire auquel le µP souhaite accéder. - **Jeu d’instructions (ISA)** : ensemble d’opérations élémentaires que le microprocesseur peut reconnaître et exécuter. - **Condensateur de découplage** : petit condensateur placé proche des broches d’alimentation pour filtrer les variations rapides de tension. - **Pull‑up** : résistance qui maintient une entrée logique à l’état haut lorsqu’elle n’est pas pilotée activement. - **Firmware** : programme stocké en mémoire non volatile (Flash/ROM) qui contrôle le fonctionnement du matériel. --- ## Exercices d'application corrigés ### Exercice 1 – Dimensionnement d’une alimentation Un microprocesseur 32 bits fonctionne à 1,8 V avec une consommation maximale de 120 mA. 1. Calculer la puissance maximale dissipée. 2. Déterminer la valeur minimale d’un régulateur linéaire à 1,8 V si l’alimentation d’entrée est de 5,0 V, en supposant une marge de sécurité de 25 % sur la puissance. **Corrigé** 1. Puissance = U × I = 1,8 V × 0,120 A = **0,216 W**. 2. Puissance à fournir avec marge = 0,216 W × 1,25 = **0,270 W**. Le régulateur doit dissiper (Vin‑Vout)×I = (5,0‑1,8)×0,120 = 0,384 W. Comme 0,384 W > 0,270 W, le régulateur linéaire ne suffit pas ; il faut soit un régulateur à découpage (buck) soit augmenter la marge. Avec un régulateur buck à 85 % d’efficacité, la puissance d’entrée nécessaire = 0,216 W / 0,85 ≈ 0,254 W, ce qui est compatible avec une source 5 V/0,05 A (0,25 W). ### Exercice 2 – Recherche de défaut d’horloge Sur une carte de développement, la LED connectée à la PB5 ne clignote pas. Les mesures suivantes sont obtenues : - VCC = 5,02 V (multimètre). - Aucun signal d’horloge visible à l’oscilloscope sur la broche XTAL1 (ligne plate à 0 V). - La résistance de pull‑up sur RESET mesure 10 kΩ et est bien reliée à +5 V. - La continuité entre les pattes du cristal et les broches du µP est bonne. **Questions** : a) Quelle est l’hypothèse la plus probable concernant le défaut ? b) Quelle action de dépannage proposer en premier lieu ? **Corrigé** a) L’absence totale de signal d’horloge indique que le cristal n’oscille pas ; soit le cristal est défectueux, soit les condensateurs de charge sont manquants ou de mauvaise valeur. b) Première action : vérifier la présence et la valeur des deux condensateurs de charge (généralement 22 pF chacun) reliés chacun entre une broche du cristal et la masse. Les remplacer par des condensateurs connus bons de 22 pF et retester l’oscilloscope. Si l’horloge apparaît, le problème était les condensateurs ; sinon, remplacer le cristal. --- ## Erreurs fréquentes et règles de sécurité | N° | Erreur fréquente | Conséquence | Règle de prévention / bonne pratique | |----|------------------|-------------|--------------------------------------| | 1 | Oublier les condensateurs de découplage près des broches VCC/GND | Bruit d’alimentation → instabilité du µP, reset intempestif | Toujours placer un condensateur 100 nF céramique à moins de 5 mm de chaque paire VCC‑GND. | | 2 | Utiliser un cristal avec une charge inadéquate (ex. 12 pF alors que le datasheet demande 22 pF) | Fréquence d’horloge décalée → mauvais timing des communications UART/SPI | Respecter exactement la valeur de charge spécifiée dans le datasheet du µP ; vérifier avec un capacimètre si besoin. | | 3 | Souder une piste d’alimentation sous tension | Court‑circuit → endommagement du régulateur ou du µP | Couper l’alimentation avant toute opération de soudure ; vérifier avec un multimètre qu’il n’y a pas de tension résiduelle. | | 4 | Négliger la protection ESD lors de la manipulation d’un µP CMS | Dégradation silencieuse des portes internes → défaut intermittent | Travailler sur un tapis antistatique, porter un bracelet de mise à la terre, manipuler les composants par leurs flancs. | | 5 | Programmer le µP avec une tension d’alimentation trop élevée (ex. 5 V sur un µP 1,8 V uniquement tolérant) | Surcharge des entrées → destruction permanente | Vérifier la tolérance des broches d’entrée dans le datasheet ; utiliser un régulateur adapté ou des niveaux shifters si nécessaire. | | 6 | Laisser le reset flottant (pas de pull‑up) lors de la mise sous tension | Démarrage aléatoire, comportement imprévisible | Toujours relier la broche RESET à VCC via une résistance de 10 kΩ – 100 kΩ ou utiliser un circuit de reset dédié avec temporisation. | --- *Fin de la fiche de cours.*

Quiz du chapitre

10 questions — vérifie chaque réponse pour voir l'explication.

  1. 1. Quelle est la définition d'un microprocesseur ?
  2. 2. Parmi les caractéristiques suivantes, laquelle définit la taille de mot d'un microprocesseur ?
  3. 3. Quel élément n'est pas indispensable au système minimum d'un microprocesseur ?
  4. 4. Un microprocesseur fonctionne à une fréquence d'horloge de 8 MHz. Quelle est la durée d'un cycle d'horloge ?
  5. 5. Pour traiter des données représentant des niveaux de température sur 12 bits, quelle taille de mot minimale doit-on choisir pour le microprocesseur ?
  6. 6. Une instruction nécessite 4 cycles d'horloge pour être exécutée. Si le microprocesseur tourne à 12 MHz, combien de temps prend cette instruction ?
  7. 7. Dans un système automatisé de convoyage, il faut lire 8 capteurs binaires et commander 4 relais. Quel microcontrôleur choisir parmi ceux listés pour minimiser le coût tout en satisfaisant les besoins d'E/S ?
  8. 8. Lors d'une activité de remediation, un élève observe que le microprocesseur ne parvient pas à lire correctement la mémoire externe. Après vérification, il constate que les lignes d'adresse A0 à A3 sont toujours à zéro. Quelle est la cause la plus probable ?
  9. 9. Un microprocesseur à pipeline de 5 étages exécute une suite d'instructions sans dépendances. Quel est l'effet théorique sur le débit (instructions par cycle) après le remplissage initial du pipeline ?
  10. 10. Vous devez concevoir le système minimum d'un microprocesseur 8 bits destiné à contrôler un moteur pas à pas via deux entrées de fin de course et deux sorties de commande. Quelle configuration de mémoire est suffisante pour stocker le programme de contrôle (taille estimée à 500 octets) et les variables temporaires (64 octets) ?