Retour à la page d'accueilNSI · Terminale (maths complémentaires) · Changer de matière
Commencer gratuitement
Terminale (maths complémentaires) · NSI
Systèmes informatiques · Microcontrôleurs

Microcontrôleurs et matériel libre

Le lycée veut installer une station météo sur son toit : elle doit mesurer la température, la lumière, et envoyer les données pendant des mois sur une petite batterie. Un ordinateur complet serait trop gros et trop gourmand. La solution tient dans la paume de la main : une carte à microcontrôleur. Voyons comment elle fonctionne.

Le microcontrôleur et le matériel libre

Comparaison entre un ordinateur de bureau, grand, avec écran, clavier, réseau et prise secteur, et un microcontrôleur, une petite carte avec des broches d'entrée et de sortie alimentée par des piles. ordinateur de bureau plusieurs tâches à la fois écran réseau clavier prise secteur cher, encombrant microcontrôleur une tâche précise broches d'entrée et de sortie entrée sortie piles peu cher, minuscule

Lien avec le programme : le système sur puce (SoC)

Un téléphone ne contient pas un processeur isolé, mais un système sur puce (SoC, system on chip) : sur un seul circuit sont intégrés le ou les microprocesseurs, les mémoires locales, les interfaces radio et filaires, la gestion de l'énergie, le contrôleur vidéo… Un microcontrôleur est comparable à un SoC simple (les blocs radio ou vidéo n'y sont présents que sur certains modèles).

Comparé à un ordinateur personnel, un microcontrôleur est minuscule (quelques millimètres pour la puce, quelques centimètres pour la carte) et bien moins puissant : sa fréquence est de l'ordre de quelques dizaines de MHz et sa mémoire se compte en ko, contre plusieurs GHz et plusieurs Go pour un ordinateur. En contrepartie, il consomme quelques milliwatts seulement et coûte quelques euros.

Intégrer tous ces composants sur une même puce apporte deux avantages : la vitesse (les signaux parcourent des distances très courtes) et une consommation réduite (moins de circuits externes à alimenter).

Une carte à microcontrôleur propose aussi des interfaces avec le monde extérieur : les broches. Ce sont elles qui relient les capteurs (qui envoient des informations) et les actionneurs (qui reçoivent des ordres).

Schéma simplifié d'un système sur puce : un processeur, une mémoire, un contrôleur d'entrées/sorties, une interface radio et une gestion d'énergie reliés par un bus à l'intérieur d'une seule puce. Système sur puce (SoC) Processeur Mémoire Entrées/sorties bus de communication Interface radio Gestion d'énergie

À toi : sur le schéma du SoC ci-dessus, identifie le composant qui exécute le programme, celui qui le mémorise et celui qui relie la puce aux capteurs.

Entraîne-toi★☆☆Pas commencé
Expliquer ce qu'est un microcontrôleur et quels trois blocs de base il intègre dans une seule puce (processeur, mémoire pour le programme et les données, et ports…

Expliquer ce qu'est un microcontrôleur et quels trois blocs de base il intègre dans une seule puce (processeur, mémoire pour le programme et les données, et ports d'entrée/sortie). Comparer sa taille et sa puissance à celles d'un ordinateur personnel.

Résoudre
Entraîne-toi★☆☆Pas commencé
Arduino est l'exemple le plus connu de matériel libre. Expliquer ce que signifie que son matériel soit libre (les schémas et les plans de la carte sont publics et tout…

Arduino est l'exemple le plus connu de matériel libre. Expliquer ce que signifie que son matériel soit libre (les schémas et les plans de la carte sont publics et tout le monde peut la fabriquer ou la modifier) et citer deux avantages que cela présente pour qui apprend l'électronique.

Résoudre
Entraîne-toi★☆☆Pas commencé
Classer ces éléments comme capteur (entrée) ou actionneur (sortie) d'un système à microcontrôleur : (a) une sonde de température, (b) un moteur, (c) un microphone, (d)…

Classer ces éléments comme capteur (entrée) ou actionneur (sortie) d'un système à microcontrôleur : (a) une sonde de température, (b) un moteur, (c) un microphone, (d) un ruban de DEL, (e) un capteur de distance à ultrasons et (f) une électrovanne d'arrosage.

Résoudre

Broches numériques, analogiques et MLI

Le CAN de la carte a 10 bits : il donne $2^{10} = 1\,024$ valeurs, de $0$ à $1\,023$. Tu peux écrire un nombre en binaire avec ce widget :

Entraîne-toi★☆☆Pas commencé
Les entrées de la carte peuvent être numériques (elles ne lisent que deux états : $0\ \text{V}$ ou $5\ \text{V}$) ou analogiques (elles lisent une valeur intermédiaire).…

Les entrées de la carte peuvent être numériques (elles ne lisent que deux états : $0\ \text{V}$ ou $5\ \text{V}$) ou analogiques (elles lisent une valeur intermédiaire). Classer ces signaux d'entrée : (a) un bouton-poussoir, (b) un potentiomètre tourné à moitié, (c) un capteur de lumière qui fournit une tension proportionnelle à la luminosité et (d) un capteur de fin de course.

Résoudre
Entraîne-toi★☆☆Pas commencé
Les sorties numériques de la carte ne donnent que deux valeurs ($0\ \text{V}$ ou $5\ \text{V}$). Expliquer ce que l'on peut piloter directement avec ce type de signal…

Les sorties numériques de la carte ne donnent que deux valeurs ($0\ \text{V}$ ou $5\ \text{V}$). Expliquer ce que l'on peut piloter directement avec ce type de signal (une DEL, un relais, un buzzer) et quelle limite cela présente si l'on veut une luminosité ou une vitesse intermédiaires.

Résoudre
Entraîne-toi★☆☆Pas commencé
Expliquer ce qu'est un signal MLI (modulation de largeur d'impulsion, ou PWM) : une sortie qui commute très rapidement entre $0\ \text{V}$ et $5\ \text{V}$ et qui, selon…

Expliquer ce qu'est un signal MLI (modulation de largeur d'impulsion, ou PWM) : une sortie qui commute très rapidement entre $0\ \text{V}$ et $5\ \text{V}$ et qui, selon la proportion de temps à l'état haut, simule une valeur intermédiaire. Prendre l'exemple du réglage de la luminosité d'une DEL.

Résoudre
Entraîne-toi★★☆Pas commencé
L'entrée analogique de la carte convertit une tension comprise entre $0\ \text{V}$ et $5\ \text{V}$ en un nombre compris entre $0$ et $1023$. Un programme allume un…

L'entrée analogique de la carte convertit une tension comprise entre $0\ \text{V}$ et $5\ \text{V}$ en un nombre compris entre $0$ et $1023$. Un programme allume un voyant si la lecture dépasse $600$. (a) Calculer à quelle tension correspond le seuil $600$, avec $V = \frac{600}{1023} \cdot 5$. (b) Expliquer avec vos propres mots ce que fait le programme et pourquoi le seuil est choisi avec une marge par rapport à la valeur typique au repos.

Résoudre
Entraîne-toi★★☆Pas commencé
Une sortie PWM de $5\ \text{V}$ fonctionne avec un rapport cyclique de $25\ \%$ (un quart de la période à l'état haut). (a) Dessiner dans votre cahier deux périodes du…

Une sortie PWM de $5\ \text{V}$ fonctionne avec un rapport cyclique de $25\ \%$ (un quart de la période à l'état haut). (a) Dessiner dans votre cahier deux périodes du signal. (b) Calculer la valeur moyenne de la tension que « voit » une charge lente comme une DEL ou un moteur, $V_\text{moyenne} = 5 \cdot 0{,}25$. (c) Expliquer quelle valeur moyenne donnerait un rapport cyclique de $75\ \%$ et comment on règle ainsi la luminosité ou la vitesse.

Vous pouvez le faire sur papier et envoyer une photo de votre réponse.

Résoudre
Entraîne-toi★★★Pas commencé
Une équipe d'élèves relie une photorésistance (LDR) à l'entrée analogique A0 d'une carte à microcontrôleur ($10\ \text{bits}$, plage de $0$ à $1023$) au moyen d'un…

Une équipe d'élèves relie une photorésistance (LDR) à l'entrée analogique A0 d'une carte à microcontrôleur ($10\ \text{bits}$, plage de $0$ à $1023$) au moyen d'un diviseur de tension. Lors de l'étalonnage en conditions réelles, ils relèvent une lecture numérique de $120$ dans l'obscurité et de $870$ en plein soleil.

(a) Déduire la fonction mathématique d'interpolation linéaire qui transforme toute lecture brute $L$ en un pourcentage d'éclairement $P \in [0, 100]\ \%$. Calculer la valeur en pourcentage si l'ADC fournit une lecture de $495$.

(b) Un élève écrit dans le code la ligne : int porcentaje = (lectura - 120) / 750 * 100;. En ouvrant le moniteur série, il constate que la variable vaut toujours $0$ pour tout niveau de lumière intermédiaire et passe brusquement à $100$ en plein soleil. Diagnostiquer la cause de l'erreur dans l'arithmétique du processeur et écrire l'instruction corrigée en conservant des opérations sur des nombres entiers.

(c) Si la résistance de polarisation du diviseur se débranche accidentellement, l'entrée A0 reste en circuit ouvert et capte des lectures hors de l'intervalle étalonné (par exemple, $L = 50$). Prévoir quel problème cela engendrera dans le calcul du pourcentage et proposer comment protéger le code au moyen de fonctions de bornage (clamping).

Résoudre

Le programme : setup et loop

Les cartes Arduino se programment en C++, mais le langage n'est qu'une illustration ici : on écrira en pseudo-code (ou en MicroPython, proche du Python que tu connais).

Structure d'un programme de carte à microcontrôleur : setup() s'exécute une seule fois, puis loop() se répète sans fin, avec une flèche qui revient de sa fin à son début. setup() exécuté une seule fois : configurer les broches au démarrage loop() lire, décider, agir — et recommencer répété tant que la carte est sous tension
Entraîne-toi★☆☆Pas commencé
Tout programme pour ces cartes comporte deux parties : setup et loop. Expliquer ce que l'on écrit dans chacune (dans setup, ce que l'on prépare une seule fois, comme la…

Tout programme pour ces cartes comporte deux parties : setup et loop. Expliquer ce que l'on écrit dans chacune (dans setup, ce que l'on prépare une seule fois, comme la configuration des broches ; dans loop, ce qui se répète sans arrêt tant que la carte est sous tension) et pourquoi cette structure convient à une machine de contrôle.

Résoudre
Entraîne-toi★★☆Pas commencé
Un programme configure la broche 8 en sortie dans le setup et, dans le loop, met la broche à l'état haut, attend $1\ \text{s}$, la met à l'état bas et attend…

Un programme configure la broche 8 en sortie dans le setup et, dans le loop, met la broche à l'état haut, attend $1\ \text{s}$, la met à l'état bas et attend $1\ \text{s}$. (a) Décrire ce que fait une DEL reliée à cette broche. (b) Calculer la période du clignotement et sa fréquence en hertz. (c) Expliquer ce que vous changeriez dans le programme pour que la DEL clignote deux fois plus vite.

Résoudre
Entraîne-toi★★☆Pas commencé
La figure montre le schéma d'une carte à microcontrôleur de type Arduino avec ses groupes de broches, dont une broche est marquée d'un point d'interrogation, comme…

La figure montre le schéma d'une carte à microcontrôleur de type Arduino avec ses groupes de broches, dont une broche est marquée d'un point d'interrogation, comme indiqué sur la figure.

USB microcontrôleur broches numériques 0 à 13 (~ = PWM) ? entrées analogiques A0 à A5 5 V GND alimentation par USB ou par connecteur externe (7 à 12 V)

(a) Identifier les groupes de broches de la carte : numériques, analogiques et d'alimentation. (b) La broche marquée d'un point d'interrogation se trouve dans la rangée numérique et porte le symbole ~ : expliquer ce qu'elle peut faire en plus de fournir $0\ \text{V}$ ou $5\ \text{V}$. (c) Indiquer à quelle broche vous relieriez chaque élément et pourquoi : un bouton-poussoir, un potentiomètre et une DEL à luminosité réglable.

Résoudre
Entraîne-toi★★☆Pas commencé
Écrire en pseudo-code le programme complet (setup et loop) pour qu'une DEL reliée à la broche 9 s'allume tant qu'un bouton relié à la broche 2 reste appuyé, et s'éteigne…

Écrire en pseudo-code le programme complet (setup et loop) pour qu'une DEL reliée à la broche 9 s'allume tant qu'un bouton relié à la broche 2 reste appuyé, et s'éteigne quand on le relâche. Expliquer la configuration de chaque broche dans le setup (entrée ou sortie).

Résoudre
Entraîne-toi★★☆Pas commencé
Un programme destiné à piloter une DEL sur la broche 7 ne fonctionne pas : dans le loop, la broche est mise à l'état haut puis bas, mais la DEL ne s'allume jamais. En…

Un programme destiné à piloter une DEL sur la broche 7 ne fonctionne pas : dans le loop, la broche est mise à l'état haut puis bas, mais la DEL ne s'allume jamais. En vérifiant le setup, on constate que personne n'a configuré la broche en sortie. Expliquer pourquoi cet oubli empêche le fonctionnement (par défaut, les broches sont des entrées) et réécrire le setup correct en pseudo-code.

Résoudre

Composants d'interface : protéger et adapter

Deux schémas avec une carte Arduino : à gauche, un bouton-poussoir entre +5 V et l'entrée D2, avec une résistance de rappel de 10 kΩ vers la masse ; à droite, la sortie D13 alimente une DEL à travers une résistance de 220 Ω qui limite le courant sous 20 mA. Entrée avec résistance de rappel Sortie avec résistance Arduino D2 D13 +5 V bouton résistance de rappel 10 kΩ GND (0 V) relâché → broche à 0 V (lit 0) appuyé → broche à 5 V (lit 1) résistance en série 220 Ω I < 20 mA DEL GND
Entraîne-toi★☆☆Pas commencé
Une DEL est reliée à une broche de sortie de la carte ($5\ \text{V}$). Expliquer quel composant doit toujours être intercalé (une résistance en série) et quelles deux…

Une DEL est reliée à une broche de sortie de la carte ($5\ \text{V}$). Expliquer quel composant doit toujours être intercalé (une résistance en série) et quelles deux choses son absence peut endommager : la DEL elle-même ou la broche de la carte, qui ne peut fournir qu'environ $20\ \text{mA}$.

Résoudre
Entraîne-toi★★★Pas commencé
Un élève monte un bouton-poussoir en reliant une borne aux $+5\ \text{V}$ de la carte et l'autre directement à l'entrée numérique D2, sans ajouter d'autre élément. En…

Un élève monte un bouton-poussoir en reliant une borne aux $+5\ \text{V}$ de la carte et l'autre directement à l'entrée numérique D2, sans ajouter d'autre élément. En surveillant l'entrée, il observe que, lorsqu'il appuie sur le bouton, il lit un « 1 » logique stable, mais qu'au relâchement la broche oscille de façon chaotique entre « 0 » et « 1 » au moindre mouvement ou à la moindre vibration à proximité.

(a) Interpréter cette défaillance à partir du concept d'impédance d'entrée élevée des portes logiques numériques et expliquer ce que signifie physiquement que l'entrée soit dans un état « flottant ».

(b) Dessiner ou décrire en détail le circuit d'une résistance de pull-down de $10\ \text{k}\Omega$. Justifier la valeur de la tension sur la broche D2 avec le bouton au repos et appuyé, et calculer le courant consommé par la résistance dans chaque état.

(c) L'élève demande s'il pourrait utiliser une résistance de $10\ \Omega$ au lieu de $10\ \text{k}\Omega$, en arguant qu'elle « évacuera le bruit vers la masse avec plus de force ». Réfuter techniquement sa proposition en calculant la puissance que dissiperait cette résistance et les risques pour la source d'alimentation. Expliquer en outre comment on résoudrait le montage sans composants externes en activant l'option INPUT_PULLUP du microcontrôleur.

Résoudre

Commander des actionneurs de puissance : relais et transistors

Une broche de la carte Arduino, à 5 V et environ 20 mA, alimente la bobine d'un relais. Celui-ci ferme le contact d'un circuit de puissance séparé, alimenté en 12 V, qui fait tourner une pompe : un petit courant en commande un grand. carte Arduino broche GND 5 V · ≈20 mA relais bobine contact fort courant circuit de puissance source séparée · 12 V pompe 12 V circuit de commande faible courant un faible courant en commande un fort
Entraîne-toi★★☆Pas commencé
La figure montre un système de mesure de la lumière avec une carte à microcontrôleur : une LDR est reliée à une entrée analogique (A0) et une DEL à une broche numérique…

La figure montre un système de mesure de la lumière avec une carte à microcontrôleur : une LDR est reliée à une entrée analogique (A0) et une DEL à une broche numérique (D9). L'intérieur de la carte est marqué d'un point d'interrogation.

Esquema de bloques: una LDR conectada a la entrada A0 de una placa microcontroladora cuyo interior está marcado con una interrogación, y un LED conectado a la salida D9LDRcapteur de lumièreA0Carte à microcontrôleur?D9DEL
  1. a) Expliquer ce que contient la boîte centrale marquée d'un point d'interrogation, c'est-à-dire ce que fait le programme exécuté dans la fonction loop entre la lecture de A0 et la sortie D9.
  1. b) Rédiger en pseudo-code ce programme pour que la DEL s'allume lorsque la lecture de la LDR dépasse un seuil.
  1. c) Indiquer quels deux composants externes indispensables manquent sur le dessin pour que le circuit fonctionne réellement.
Résoudre
Entraîne-toi★★★Pas commencé
La figure montre le schéma d'un système d'arrosage automatique avec une carte à microcontrôleur : une sonde d'humidité du sol est reliée à A0 et la sortie D7 commande la…

La figure montre le schéma d'un système d'arrosage automatique avec une carte à microcontrôleur : une sonde d'humidité du sol est reliée à A0 et la sortie D7 commande la pompe par l'intermédiaire d'une pièce marquée d'un point d'interrogation, comme indiqué sur la figure.

sonde d'humidité A0 carte à microcontrôleur D7 ? pompe 230 V si le sol est sec, la carte commande l'arrosage ; quand la sonde détecte une humidité suffisante, elle l'arrête

(a) Identifier la pièce marquée d'un point d'interrogation (l'élément qui permet à une sortie de $5\ \text{V}$ et de quelques $\text{mA}$ de commander une pompe de $230\ \text{V}$) et expliquer sa fonction. (b) Décrire les entrées et les sorties du système et le cycle de fonctionnement complet. (c) Proposer deux améliorations raisonnables (ne pas arroser la nuit ou sous la pluie, alerte de réservoir vide) en indiquant quel capteur ou quelle condition chacune ajouterait au programme.

Résoudre
Entraîne-toi★★★Pas commencé
On souhaite régler la vitesse de rotation d'un moteur à courant continu de $12\ \text{V}$ et de courant nominal $800\ \text{mA}$ au moyen d'une carte à microcontrôleur…

On souhaite régler la vitesse de rotation d'un moteur à courant continu de $12\ \text{V}$ et de courant nominal $800\ \text{mA}$ au moyen d'une carte à microcontrôleur dont les sorties numériques fournissent au maximum $5\ \text{V}$ et $20\ \text{mA}$.

(a) Un élève propose d'alimenter le moteur en faisant fonctionner un transistor BJT dans sa zone linéaire/active, commandé par une tension analogique, se comportant comme une résistance variable en série. Si le moteur fonctionne à mi-puissance en recevant $6\ \text{V}$ et en consommant $500\ \text{mA}$, calculer la puissance que le transistor devrait dissiper sous forme de chaleur ($P = V_{CE} \cdot I_C$). Comparer cette valeur à la dissipation du transistor fonctionnant en commutation saturée par PWM ($V_{CE(\text{sat})} \approx 0,25\ \text{V}$) avec un rapport cyclique de $50\ \%$ et justifier la supériorité énergétique du PWM.

(b) Expliquer comment un moteur à courant continu peut tourner à une vitesse douce et constante lorsqu'il est alimenté par des impulsions en signal carré à $500\ \text{Hz}$ plutôt que par une tension continue pure.

(c) Lorsqu'on commute une charge inductive comme un moteur avec du PWM, il est indispensable d'ajouter une diode en antiparallèle (diode de roue libre). Prévoir ce qui se produira à l'instant où le transistor passe brusquement de la saturation au blocage si cette diode est omise, en justifiant votre réponse à partir de la loi de l'auto-induction ($V_L = -L \frac{di}{dt}$).

Résoudre

Choisir une plateforme

Un microcontrôleur de type Arduino convient aux petits systèmes économes, souvent alimentés par batterie, et à faible coût. Dans un atelier industriel (forte puissance, vibrations, bruit électromagnétique, 24 V), on choisit plutôt un automate programmable industriel : il est robuste, ses entrées et sorties sont protégées et isolées, et il est conçu pour fonctionner en continu. Les critères : environnement, puissance commandée, consommation, coût et nombre de nœuds.

Entraîne-toi★★★Pas commencé
Une entreprise d'ingénierie doit choisir la plateforme d'automatisation pour deux installations : • Installation A : presse hydraulique industrielle dans un atelier de…

Une entreprise d'ingénierie doit choisir la plateforme d'automatisation pour deux installations :

• Installation A : presse hydraulique industrielle dans un atelier de métallurgie, avec des moteurs triphasés de $15\ \text{kW}$, des électrovannes en $24\ \text{V}$, des vibrations mécaniques continues et un fort bruit électromagnétique.

• Installation B : réseau distribué de $80$ nœuds capteurs pour surveiller en temps réel le microclimat à l'intérieur d'un ensemble de serres, alimentés par batterie et connectés par le protocole sans fil MQTT.

(a) Choisir et justifier de façon argumentée si vous mettriez en œuvre un automate programmable (API) ou une carte à microcontrôleur dans chacune des deux installations.

(b) Analyser les exigences de conditionnement électrique et d'immunité au bruit : comparer la façon dont chaque plateforme gère les entrées/sorties (isolation galvanique, niveaux standard de tension industrielle face aux niveaux TTL/CMOS de $3,3\ \text{V}$ ou $5\ \text{V}$).

(c) Un directeur suggère de remplacer les API de l'atelier de métallurgie par des cartes à microcontrôleur du commerce à bas coût afin de réduire l'investissement initial de $85\ \%$. Rédiger un rapport technique réfutant sa position, en considérant les normes de sécurité des machines (marquage CE, directive de compatibilité électromagnétique), la maintenabilité par les techniciens d'atelier et les langages normalisés (IEC 61131-3 face à C/C++).

Résoudre

Étalonnage, hystérésis et autonomie

Cycle d'hystérésis d'un ventilateur : en chauffant, il s'allume à 30 °C ; en refroidissant, il s'éteint à 28 °C, avec une bande de 2 °C entre les deux seuils. 28 °C (éteint) 30 °C (allumage) hystérésis 2 °C ventilateur allumé ventilateur éteint → en chauffant ← en refroidissant température
Entraîne-toi★★☆Pas commencé
Un capteur de température est relié à une entrée analogique : la lecture $0$ correspond à $0\ ^\circ\text{C}$ et la lecture $1023$ à $100\ ^\circ\text{C}$. (a) Calculer…

Un capteur de température est relié à une entrée analogique : la lecture $0$ correspond à $0\ ^\circ\text{C}$ et la lecture $1023$ à $100\ ^\circ\text{C}$. (a) Calculer à quelle température correspond une lecture de $512$, en supposant la relation de proportionnalité $T = \frac{\text{lecture}}{1023} \cdot 100$. (b) Calculer quelle lecture donnerait une température de $35\ ^\circ\text{C}$. (c) Expliquer pourquoi cette conversion est nécessaire avant d'afficher la donnée à un utilisateur.

Résoudre
Entraîne-toi★★★Pas commencé
Un technicien programme le contrôle de refroidissement d'un serveur avec une carte à microcontrôleur. Concevoir la logique élémentaire : « si…

Un technicien programme le contrôle de refroidissement d'un serveur avec une carte à microcontrôleur. Concevoir la logique élémentaire : « si $T > 30,0\ ^\circ\text{C} \rightarrow$ activer le ventilateur ; sinon $\rightarrow$ éteindre le ventilateur ». En testant le prototype dans une chambre climatique autour de $30,0\ ^\circ\text{C}$, il observe que le relais du ventilateur commute frénétiquement plusieurs fois par seconde, produisant un bourdonnement continu et surchauffant l'actionneur.

(a) Interpréter l'origine physique et informatique de ce problème, en considérant le bruit inhérent à la lecture analogique du capteur et l'inertie thermique du système.

(b) Reconcevoir l'algorithme en mettant en place une régulation par hystérésis avec des seuils à $31,0\ ^\circ\text{C}$ (allumage) et $28,0\ ^\circ\text{C}$ (extinction). Écrire la logique en pseudo-code et justifier pourquoi il est indispensable de consulter l'état actuel du ventilateur ou d'utiliser une variable d'état.

(c) La sonde de température délivre une tension analogique de $10\ \text{mV}/^\circ\text{C}$ ($0\ \text{V}$ à $0\ ^\circ\text{C}$) reliée au convertisseur ADC de $10\ \text{bits}$ de la carte ($V_{\text{ref}} = 5,0\ \text{V}$). Calculer la valeur entière exacte ($0$ à $1023$) que lira la fonction analogRead() pour chacun des deux seuils programmés.

Résoudre
Entraîne-toi★★★Pas commencé
Une station agrométéorologique isolée est alimentée par une cellule Li-ion de $3,7\ \text{V}$ et d'une capacité de $2400\ \text{mA}\cdot\text{h}$. La station relève des…

Une station agrométéorologique isolée est alimentée par une cellule Li-ion de $3,7\ \text{V}$ et d'une capacité de $2400\ \text{mA}\cdot\text{h}$. La station relève des mesures de capteurs et les transmet par radio : durant cette phase active, le circuit consomme $75\ \text{mA}$ pendant $4\ \text{s}$. Entre deux transmissions, la carte passe en veille profonde (deep sleep), où la consommation conjointe de la carte et du régulateur tombe à $50\ \mu\text{A}$ ($0,05\ \text{mA}$). La station doit fonctionner sans interruption au minimum $180\ \text{jours}$ (environ $4320\ \text{h}$) sans recharger la batterie.

(a) Déduire l'expression du courant moyen consommé $I_{\text{med}}$ en fonction de la période entre deux mesures $T$ (en secondes). Calculer l'intervalle d'échantillonnage minimal admissible pour respecter l'autonomie exigée.

(b) Si, à cause d'une erreur de programmation, le module radio ne s'éteint pas pendant la veille, ce qui porte la consommation en veille à $3,0\ \text{mA}$, prévoir la nouvelle autonomie réelle en conservant l'intervalle calculé à la question précédente.

(c) Pour alimenter le microcontrôleur en $3,3\ \text{V}$ à partir de la batterie de $3,7\ \text{V}$, un technicien propose un régulateur linéaire LDO et un autre un convertisseur à découpage abaisseur (buck). Justifier lequel est le plus recommandable pour cette application en portant une attention particulière au courant de repos (quiescent current) de chaque dispositif.

Résoudre
Entraîne-toi★★★Pas commencé
Un élève programme le feu tricolore à bouton-poussoir d'un passage piéton scolaire. Il écrit un code séquentiel dans lequel le vert pour les véhicules reste allumé grâce…

Un élève programme le feu tricolore à bouton-poussoir d'un passage piéton scolaire. Il écrit un code séquentiel dans lequel le vert pour les véhicules reste allumé grâce à l'appel delay(20000) ; puis il lit le bouton piéton avec un digitalRead() et, s'il est appuyé, passe à l'orange ($3\ \text{s}$) et au rouge ($10\ \text{s}$). Après l'installation, les piétons se plaignent d'appuyer sur le bouton alors que le feu semble ne pas réagir la grande majorité du temps.

(a) Interpréter la cause technique de la défaillance en diagnostiquant ce qui se passe dans l'unité centrale du microcontrôleur pendant l'exécution des fonctions delay() et pourquoi les appuis sont perdus.

(b) Reconcevoir l'architecture du programme en utilisant une machine à états finis non bloquante pilotée par la fonction de temporisation millis(). Écrire le pseudo-code du loop() en s'assurant que la lecture du bouton est traitée en continu sans interrompre l'exécution.

(c) Intégrer à la conception deux contraintes de sécurité routière indispensables : 1) garantir que les véhicules disposent toujours d'un temps de vert minimal ininterrompu de $15\ \text{s}$ avant que tout appui piéton puisse provoquer le passage à l'orange ; 2) justifier comment éviter que les rebonds mécaniques (chattering) des contacts du bouton ne provoquent des déclenchements erratiques du cycle.

Résoudre

Retour au début : la station météo du lycée utilise un microcontrôleur, car il consomme très peu, lit directement ses capteurs par les broches et commande ses actionneurs grâce à un programme qui boucle sans fin.

L'essentiel

Voir tous les exercices de cette partie