Exercices: Microcontrôleurs et robots
Expliquer ce qu'est un microcontrôleur (un ordinateur complet mais petit, placé sur une carte) et deux différences avec un ordinateur de bureau : ce que chacun peut…
Expliquer ce qu'est un microcontrôleur (un ordinateur complet mais petit, placé sur une carte) et deux différences avec un ordinateur de bureau : ce que chacun peut faire et à quoi il sert.
La figure montre une carte à microcontrôleur avec ses groupes de broches étiquetés, sauf un. La broche masquée est la référence commune à laquelle reviennent tous les…
La figure montre une carte à microcontrôleur avec ses groupes de broches étiquetés, sauf un.
La broche masquée est la référence commune à laquelle reviennent tous les circuits que tu connectes à la carte. La nommer et expliquer à quoi elle sert, quelle différence il y a entre les broches numériques (tout ou rien) et les broches analogiques (elles lisent des valeurs continues) et à quoi sert le connecteur USB.
Classer ces éléments selon qu'ils se connectent à une broche d'entrée ou à une broche de sortie de la carte, et justifier un exemple de chaque type : un bouton-poussoir,…
Classer ces éléments selon qu'ils se connectent à une broche d'entrée ou à une broche de sortie de la carte, et justifier un exemple de chaque type : un bouton-poussoir, une DEL, une LDR, un buzzer et un potentiomètre.
La figure montre un robot mobile vu de dessus, avec ses éléments étiquetés et son « cerveau » masqué par un point d'interrogation. Nommer la pièce masquée, expliquer…
La figure montre un robot mobile vu de dessus, avec ses éléments étiquetés et son « cerveau » masqué par un point d'interrogation.
Nommer la pièce masquée, expliquer quelles informations elle reçoit des capteurs et quels ordres elle envoie aux actionneurs, et classer les éléments étiquetés (roues motorisées, capteur à ultrasons, buzzer, DEL, batterie) comme entrée, sortie ou source d'énergie.
Indiquer ce que mesure chaque capteur que l'on peut connecter à la carte et un projet dans lequel tu l'utiliserais : capteur à ultrasons (distance), LDR (lumière),…
Indiquer ce que mesure chaque capteur que l'on peut connecter à la carte et un projet dans lequel tu l'utiliserais : capteur à ultrasons (distance), LDR (lumière), capteur de température et capteur infrarouge de ligne (distingue le clair du foncé sur le sol).
Indiquer ce que fait chaque actionneur connectable à la carte et une différence clé entre eux : une DEL, un buzzer, un servomoteur (il tourne jusqu'à la position…
Indiquer ce que fait chaque actionneur connectable à la carte et une différence clé entre eux : une DEL, un buzzer, un servomoteur (il tourne jusqu'à la position commandée) et un moteur à courant continu (il tourne sans s'arrêter à une vitesse plus ou moins grande).
Expliquer comment un programme arrive sur la carte : où il s'écrit, ce qui se passe quand on le « téléverse » par le câble et pourquoi la carte fonctionne ensuite toute…
Expliquer comment un programme arrive sur la carte : où il s'écrit, ce qui se passe quand on le « téléverse » par le câble et pourquoi la carte fonctionne ensuite toute seule, sans ordinateur, en exécutant le programme en boucle.
Dire si ces affirmations sont vraies ou fausses et justifier chaque réponse : (a) la carte exécute le programme tel que nous l'écrivons, sans le traduire au préalable ;…
Dire si ces affirmations sont vraies ou fausses et justifier chaque réponse : (a) la carte exécute le programme tel que nous l'écrivons, sans le traduire au préalable ; (b) les broches de la carte supportent n'importe quel courant, donc la DEL peut être branchée sans résistance ; (c) un servomoteur peut être placé à un angle précis commandé par le programme ; (d) la carte se souvient du dernier programme même si elle est débranchée de l'alimentation.
La figure montre l'algorigramme de la commande d'une barrière de parking avec un capteur à ultrasons, mais la décision est masquée. Écrire la condition que la carte doit…
La figure montre l'algorigramme de la commande d'une barrière de parking avec un capteur à ultrasons, mais la décision est masquée.
Écrire la condition que la carte doit vérifier (si la distance mesurée est inférieure à une certaine valeur, il y a une voiture), expliquer ce que fait la boucle tant que personne n'arrive et ce qui se passerait si la barrière se baissait sans attendre quelques secondes.
Concevoir un feu tricolore avec la carte : décider de combien de broches de sortie tu as besoin et pour quoi faire, écrire la séquence des états avec leurs durées (vert…
Concevoir un feu tricolore avec la carte : décider de combien de broches de sortie tu as besoin et pour quoi faire, écrire la séquence des états avec leurs durées (vert $4\ \text{s}$, orange $1\ \text{s}$, rouge $4\ \text{s}$) et expliquer pourquoi le programme s'écrit sous la forme d'une boucle qui ne se termine jamais.
Tu veux qu'une DEL s'allume quand la lumière de la pièce passe sous un certain niveau. Expliquer quelle broche tu utilises pour lire la LDR (une broche analogique), ce…
Tu veux qu'une DEL s'allume quand la lumière de la pièce passe sous un certain niveau. Expliquer quelle broche tu utilises pour lire la LDR (une broche analogique), ce que signifie fixer un « seuil » dans le programme et écrire en pseudo-code les trois lignes clés : lire, comparer et agir.
Le capteur à ultrasons mesure les distances comme une chauve-souris. Expliquer le principe (il émet une impulsion sonore et mesure le temps que met l'écho à revenir),…
Le capteur à ultrasons mesure les distances comme une chauve-souris. Expliquer le principe (il émet une impulsion sonore et mesure le temps que met l'écho à revenir), pourquoi il a deux « yeux » (l'un émet et l'autre écoute) et deux situations dans lesquelles il peut échouer : des objets mous qui absorbent le son et des surfaces inclinées qui dévient l'écho.
Pour déplacer la barrière d'un parking, on peut utiliser un servomoteur ou un moteur à courant continu. Comparer les deux : lequel atteint une position exacte et s'y…
Pour déplacer la barrière d'un parking, on peut utiliser un servomoteur ou un moteur à courant continu. Comparer les deux : lequel atteint une position exacte et s'y arrête, lequel tourne sans s'arrêter, lequel nécessite le moins d'électronique supplémentaire dans ce projet et pourquoi.
Décrire à haut niveau le comportement d'un robot évitant les obstacles : ce que mesure le capteur frontal, ce que fait le robot quand la voie est libre et quelle…
Décrire à haut niveau le comportement d'un robot évitant les obstacles : ce que mesure le capteur frontal, ce que fait le robot quand la voie est libre et quelle séquence il exécute en détectant quelque chose de proche (s'arrêter, tourner, vérifier de nouveau). Que se passerait-il s'il n'avait que le capteur dirigé vers l'avant ?
Les moteurs d'un robot ne sont pas alimentés par une broche de la carte, mais par la batterie via une carte « contrôleur de moteurs ». Expliquer pourquoi (les broches…
Les moteurs d'un robot ne sont pas alimentés par une broche de la carte, mais par la batterie via une carte « contrôleur de moteurs ». Expliquer pourquoi (les broches fournissent très peu de courant et le moteur en demanderait beaucoup plus), quel rôle joue la carte contrôleur et quel rapport cela a avec le relais des circuits électroniques.
Ton programme devrait allumer une DEL quand on appuie sur un bouton, mais c'est l'inverse qui se produit : elle est allumée et s'éteint quand on appuie. Expliquer deux…
Ton programme devrait allumer une DEL quand on appuie sur un bouton, mais c'est l'inverse qui se produit : elle est allumée et s'éteint quand on appuie. Expliquer deux causes possibles (la logique du programme est inversée ou le bouton-poussoir est câblé à l'envers, « actif à l'état bas ») et comment tu vérifierais chacune.
Un groupe d'élèves a programmé un feu piéton à bouton-poussoir selon la logique suivante : dès que le piéton appuie sur le bouton, le feu des véhicules passe…
Un groupe d'élèves a programmé un feu piéton à bouton-poussoir selon la logique suivante : dès que le piéton appuie sur le bouton, le feu des véhicules passe instantanément du vert au rouge et le feu des piétons passe au vert pendant 15 s. Après l'avoir testé sur une maquette routière, ils observent des freinages brusques des véhicules et des embouteillages continus lorsque plusieurs piétons appuient plusieurs fois sur le bouton.
- a) Justifier deux défauts de sécurité et de fluidité routière que présente ce programme initial.
- b) Concevoir l'algorigramme ou la séquence temporelle corrigée (en indiquant les entrées, les sorties et les durées recommandées) pour résoudre ces deux problèmes, en intégrant une phase de transition (orange) et en garantissant une durée minimale de vert continu pour les voitures avant de traiter un autre appel piéton.
- c) Si vous voulez ajouter un avertisseur sonore intermittent pour les personnes malvoyantes pendant les 3 dernières secondes du vert piéton, comment devez-vous modifier la temporisation de cette sortie ?
Dans un parking de 10 places contrôlé par une barrière, un élève propose cet algorithme : « Le capteur d'entrée ajoute 1 au nombre de voitures présentes lorsqu'il…
Dans un parking de 10 places contrôlé par une barrière, un élève propose cet algorithme : « Le capteur d'entrée ajoute 1 au nombre de voitures présentes lorsqu'il détecte un véhicule et ouvre la barrière ; le capteur de sortie retire 1 à la sortie d'une voiture ; si le nombre de voitures présentes atteint 10, le voyant COMPLET s'allume et la barrière ne s'ouvre pas ». Pendant la première semaine d'essais, le système affiche COMPLET alors qu'il reste des places libres, et la barrière heurte parfois le toit des voitures.
- a) Analyser et identifier deux situations physiques réelles pour lesquelles le compteur se dérègle au fil des heures (pistes : véhicules qui font demi-tour après avoir actionné le capteur, passage de piétons, fausses détections).
- b) Concevoir la logique de commande complète (en précisant les conditions avec les capteurs d'entrée, la barrière et la sortie) pour que le comptage soit fiable et ne dépende pas d'une seule lecture instantanée.
- c) Quelle condition de sécurité doit avoir la priorité absolue dans la programmation pour garantir que la barrière ne descende jamais tant qu'un obstacle ou un véhicule est en train de passer ?
Vous concevez l'étalonnage et le montage d'un robot suiveur de ligne qui parcourt un circuit blanc comportant une ligne noire de 2 cm de largeur. Le robot dispose de…
Vous concevez l'étalonnage et le montage d'un robot suiveur de ligne qui parcourt un circuit blanc comportant une ligne noire de 2 cm de largeur. Le robot dispose de deux capteurs infrarouges de réflectance ($S_I$ et $S_D$) montés à l'avant et d'une traction différentielle à deux moteurs indépendants.
- a) Prévoir quel comportement erroné aura le robot si vous montez les capteurs espacés de seulement 1 cm (distance inférieure à la largeur de la ligne). Et si vous les espacez de 6 cm ? Justifier quel doit être l'écartement géométrique optimal.
- b) Concevoir la table de décision du robot en indiquant l'état de chaque moteur (marche avant, arrêt ou marche arrière) pour chacune des 4 combinaisons possibles de lecture (Blanc/Noir).
- c) À l'approche d'un virage serré à gauche, si le robot se contente d'arrêter le moteur gauche et de maintenir le moteur droit en marche avant, il a tendance à sortir de la ligne à cause de l'inertie. Justifier quel changement vous devez apporter à la commande des moteurs pour obtenir un virage beaucoup plus serré, sur place.
Pour commander une barrière d'accès munie d'un bouton d'arrêt d'urgence, un élève programme la séquence suivante : Lors des essais, lorsqu'on actionne le coup-de-poing…
Pour commander une barrière d'accès munie d'un bouton d'arrêt d'urgence, un élève programme la séquence suivante :
ouvrir_barriere();
attendre(5000); // pause fixe de 5 s avec delay
fermer_barriere();
Lors des essais, lorsqu'on actionne le coup-de-poing d'arrêt d'urgence pendant la pause de 5 s ou pendant que la barrière descend, le système ne réagit pas et poursuit son cycle, provoquant un choc.
- a) Expliquer, au niveau de l'exécution du microcontrôleur, pourquoi l'instruction d'attente fixe (
delay) empêche de réagir à l'urgence. - b) Concevoir la structure algorithmique (en pseudo-code ou sous forme d'algorigramme) qui permet de maintenir la barrière ouverte pendant 5 s tout en vérifiant en continu le bouton d'arrêt afin d'arrêter le moteur instantanément.
- c) Si vous avez en plus besoin qu'un buzzer émette des bips intermittents de 0,5 s pendant que la barrière se déplace, justifier pourquoi cette exigence est irréalisable avec des pauses bloquantes et comment on la résout.
On vous demande de concevoir le système de commande et d'enregistrement d'une station environnementale pour une serre scolaire à l'aide d'une carte programmable. a)…
On vous demande de concevoir le système de commande et d'enregistrement d'une station environnementale pour une serre scolaire à l'aide d'une carte programmable.
- a) Choisir trois capteurs adaptés pour surveiller les conditions de vie des plantes, les classer en analogiques ou numériques et justifier la fréquence d'échantillonnage idéale pour chacun (expliquer pourquoi mesurer la température toutes les 10 ms serait une erreur technique et pourquoi la mesurer une fois par jour serait insuffisant).
- b) Écrire la condition logique booléenne qui active simultanément la ventilation et l'arrosage automatique si la température dépasse 32 °C et si l'humidité du sol passe sous 30 %.
- c) En examinant les données de l'enregistrement graphique quotidien, vous observez qu'à 13:00 la valeur de luminosité est maximale, mais que la sonde de température indique brusquement 0 °C pendant 15 minutes avant de revenir à 28 °C. Interpréter cette anomalie en justifiant s'il s'agit d'un phénomène météorologique ou d'une défaillance matérielle (câblage/capteur).
Votre équipe doit choisir la plateforme matérielle pour construire un prototype de domotique qui commande des volets roulants à l'aide de servomoteurs, détecte les…
Votre équipe doit choisir la plateforme matérielle pour construire un prototype de domotique qui commande des volets roulants à l'aide de servomoteurs, détecte les fuites de gaz et la présence dans trois pièces différentes, et affiche l'état sur un écran LCD.
- a) Comparer l'intérêt d'utiliser une carte compacte « tout-en-un » (avec capteurs et écran de DEL intégrés au circuit imprimé) par rapport à une carte de développement modulaire avec broches d'extension et plaque d'essai. Analyser des aspects comme la répartition spatiale des capteurs dans le logement et le câblage des actionneurs de puissance.
- b) Si, pendant le montage, un élève commet une erreur et grille le capteur de température à cause d'une surtension ou d'une inversion de polarité, analyser les conséquences techniques et financières pour la carte intégrée par rapport à la carte modulaire.
- c) Justifier de manière argumentée laquelle des deux plateformes vous choisiriez pour ce projet final de robotique domotique et pour laquelle vous réserveriez une séance initiale de deux heures d'initiation à la programmation.
Un robot mobile programmé avec Arduino fonctionne parfaitement tant qu'il est relié à l'ordinateur par le câble USB (les roues tournent dans le vide et le programme…
Un robot mobile programmé avec Arduino fonctionne parfaitement tant qu'il est relié à l'ordinateur par le câble USB (les roues tournent dans le vide et le programme exécute toute la séquence). En revanche, lorsqu'on débranche l'USB, qu'on l'alimente avec un porte-piles de 4 piles AA (6 V) relié à la fois à la carte et aux moteurs, et qu'on le pose au sol, voici ce qui se produit : à l'instant précis où les moteurs essaient de démarrer pour vaincre les frottements, la DEL d'alimentation de la carte clignote légèrement, le robot fait une petite secousse et le programme redémarre depuis la première ligne, en boucle continue.
- a) Interpréter et justifier la cause physique et électrique de cette défaillance : que se passe-t-il pour l'appel de courant des moteurs au moment du démarrage et quelle est la répercussion sur la tension reçue par le microcontrôleur ?
- b) Pourquoi ce problème ne s'est-il pas manifesté pendant les essais du robot relié en USB, roues en l'air ?
- c) Proposer et justifier deux modifications techniques du circuit d'alimentation pour résoudre définitivement ce problème et garantir la stabilité du microcontrôleur.
Vous devez concevoir le système de commande autonome d'un robot messager de bibliothèque qui transporte des livres entre deux postes (Table 1 et Table 2) en se guidant…
Vous devez concevoir le système de commande autonome d'un robot messager de bibliothèque qui transporte des livres entre deux postes (Table 1 et Table 2) en se guidant sur une ligne au sol. Le cycle complet consiste à : attendre l'ordre de départ donné par un bouton-poussoir, suivre la ligne jusqu'à trouver une marque transversale d'arrêt, s'arrêter et prévenir avec un buzzer pendant 3 s, attendre que l'usager retire le livre (détecté par un capteur de présence ou de poids), puis revenir à la Table 1 en effectuant un demi-tour de 180° pour être prêt pour le service suivant.
- a) Identifier les capteurs et les actionneurs nécessaires, en classant chacun selon qu'il s'agit d'une entrée ou d'une sortie.
- b) Concevoir la machine à états ou l'algorigramme du système, en indiquant précisément les différents états du robot et la condition qui déclenche la transition vers l'état suivant.
- c) Ajouter à la conception un protocole de sécurité réactive : quel capteur devez-vous ajouter et comment la boucle principale doit-elle réagir si un élève passe à moins de 20 cm du robot en mouvement ?