Retour à la page d'accueilTechnologie · 3e · Changer de matière
Commencer gratuitement
3e · Technologie
Pensée informatique et robotique · Systèmes de commande

Simulation et vérification

Au club de robotique du collège, Léa branche son robot dès la première version de son programme : il fonce dans le mur et un capteur est abîmé. Aurait-elle pu éviter cela ? Oui, en testant d'abord son programme sur un écran, puis en suivant une méthode pour vérifier qu'il se comporte comme prévu.

Pourquoi simuler avant de réaliser

Un prototype réel coûte de l'argent, prend du temps à monter et peut être endommagé au premier défaut. Un modèle qui s'exécute à l'écran, non.

Un même programme est exécuté dans un simulateur, avec un robot et un obstacle virtuels à l'écran, et sur le prototype réel, un robot devant un obstacle physique. programme (identique) simulateur (sans risque) prototype réel
Entraîne-toi★☆☆Pas commencé
Expliquer ce qu'est un simulateur de circuits ou de robotique et donner deux avantages à tester dans celui-ci avant de réaliser le montage réel.

Expliquer ce qu'est un simulateur de circuits ou de robotique et donner deux avantages à tester dans celui-ci avant de réaliser le montage réel.

Résoudre
Entraîne-toi★☆☆Pas commencé
Expliquer la différence entre simuler un circuit sur ordinateur et le monter sur une véritable plaque d'essai : ce que l'on gagne et ce que l'on perd avec chaque méthode.

Expliquer la différence entre simuler un circuit sur ordinateur et le monter sur une véritable plaque d'essai : ce que l'on gagne et ce que l'on perd avec chaque méthode.

Résoudre
Entraîne-toi★☆☆Pas commencé
Certains simulateurs permettent d'« accélérer le temps ». Expliquer quel avantage cela présente pour tester le comportement d'un thermostat sur une journée complète.

Certains simulateurs permettent d'« accélérer le temps ». Expliquer quel avantage cela présente pour tester le comportement d'un thermostat sur une journée complète.

Résoudre

Lire un algorigramme

Un algorigramme représente le programme par des blocs : une condition (losange) envoie vers une action selon la réponse « oui » ou « non ». Le schéma capteur → condition → action est la base de tout système automatisé.

Algorigramme d'un éclairage automatique : lire le capteur, tester si la lecture est inférieure à 300, puis allumer ou éteindre la lampe. lire le capteur lecture < 300 ? oui non allumer éteindre
Entraîne-toi★☆☆Pas commencé
L'algorigramme de la figure commande une lumière automatique qui dépend d'un capteur (LDR), mais le contenu d'un bloc est manquant. Indiquer ce que devrait faire ce bloc…

L'algorigramme de la figure commande une lumière automatique qui dépend d'un capteur (LDR), mais le contenu d'un bloc est manquant. Indiquer ce que devrait faire ce bloc et décrire ce que fait le système lorsque la lecture du capteur est 150 et lorsqu'elle est 800.

Début Lire LDR LDR < 200 ? oui ? non Éteindre la DEL
Résoudre

Chercher une panne sur le montage réel

Quand le simulateur donne un résultat correct mais que le montage réel ne fonctionne pas, on suit un protocole de recherche de panne : constat, hypothèses, vérification de chacune à la paillasse, puis réparation.

Entraîne-toi★★☆Pas commencé
Dans le simulateur, votre programme fonctionne parfaitement, mais dans le montage réel le moteur ne tourne pas. Donner trois causes possibles qu'un simulateur ne détecte…

Dans le simulateur, votre programme fonctionne parfaitement, mais dans le montage réel le moteur ne tourne pas. Donner trois causes possibles qu'un simulateur ne détecte pas et expliquer comment vous vérifieriez chacune sur la paillasse.

Résoudre
Entraîne-toi★★☆Pas commencé
Dans la simulation, la DEL clignote à un rythme parfait, mais dans le montage réel elle clignote de façon irrégulière. Donner deux causes électriques que le simulateur…

Dans la simulation, la DEL clignote à un rythme parfait, mais dans le montage réel elle clignote de façon irrégulière. Donner deux causes électriques que le simulateur idéalise (tolérance des résistances, contacts mal serrés de la plaque d'essai) et comment circonscrire chacune.

Résoudre
Entraîne-toi★★★Pas commencé
Une équipe simule un robot suiveur de ligne noire : à l'écran, l'algorithme réagit en 0,02 s, les moteurs répondent instantanément et le robot réalise le circuit à 1,2…

Une équipe simule un robot suiveur de ligne noire : à l'écran, l'algorithme réagit en 0,02 s, les moteurs répondent instantanément et le robot réalise le circuit à 1,2 m/s sans aucune erreur. Pourtant, en chargeant le même programme dans le robot réel avec les mêmes capteurs, celui-ci oscille brusquement d'un côté à l'autre et finit par perdre la ligne dans le premier virage.

  1. a) Identifier et justifier trois facteurs du monde physique que le simulateur a omis ou idéalisés et qui expliquent cet écart.
  2. b) Proposer deux modifications techniques (l'une sur les paramètres du logiciel de commande et l'autre sur le montage physique) pour compenser ces effets réels sans remplacer les capteurs.
Résoudre
Entraîne-toi★★★Pas commencé
Dans un simulateur comme Tinkercad, un élève branche directement une DEL rouge entre une broche de sortie numérique de 5,0 V d'une carte programmable et la masse (GND),…

Dans un simulateur comme Tinkercad, un élève branche directement une DEL rouge entre une broche de sortie numérique de 5,0 V d'une carte programmable et la masse (GND), sans placer aucune résistance. À l'écran, le simulateur affiche la DEL allumée avec un courant de 115,0 mA et n'indique aucun message d'erreur.

  1. a) Si le fabricant de la DEL fixe son courant continu maximal à 20,0 mA et une tension directe de 2,0 V, et que la carte a une limite de 40,0 mA par broche, prévoir ce qui se passera pour les composants réels si vous réalisez ce circuit physiquement et quelle simplification mathématique irréaliste le simulateur commet.
  2. b) Calculer la valeur normalisée du commerce (série E12) de la résistance à intercaler pour que la DEL fonctionne dans des conditions sûres avec un courant de 15,0 mA.
Résoudre

Construire un protocole de test

Voici un tableau de test pour un ventilateur qui doit s'allumer quand la température dépasse $26\ ^\circ\text{C}$ :

Température simulée Sortie attendue Type de cas
$18\ ^\circ\text{C}$ ventilateur éteint normal
$26\ ^\circ\text{C}$ éteint (« dépasse » = strictement supérieur) limite
$26{,}1\ ^\circ\text{C}$ allumé limite (juste au-dessus du seuil)
capteur débranché ventilateur éteint, signal d'alerte erreur

Le cas limite est ici $26\ ^\circ\text{C}$ ; on teste aussi la valeur juste au-dessus pour vérifier que le basculement a bien lieu.

Un tableau de même type s'écrit pour un système à plusieurs états (feu piéton : état, entrée, sortie attendue à chaque transition).

Entraîne-toi★☆☆Pas commencé
Écrire deux cas de test pour un programme qui déclenche une alarme sonore lorsqu'une porte s'ouvre : quelle entrée est simulée et quelle sortie est attendue dans chaque…

Écrire deux cas de test pour un programme qui déclenche une alarme sonore lorsqu'une porte s'ouvre : quelle entrée est simulée et quelle sortie est attendue dans chaque cas.

Résoudre
Entraîne-toi★★☆Pas commencé
Un programme doit allumer un ventilateur lorsque la température dépasse $26\ ^\circ\text{C}$. Définir trois cas de test (donnée d'entrée et résultat attendu) pour le…

Un programme doit allumer un ventilateur lorsque la température dépasse $26\ ^\circ\text{C}$. Définir trois cas de test (donnée d'entrée et résultat attendu) pour le vérifier, en incluant la valeur limite de $26\ ^\circ\text{C}$, et justifier pourquoi ce dernier cas est important.

Résoudre
Entraîne-toi★★☆Pas commencé
Expliquer ce qu'est un « cas limite » lors de la vérification d'un programme et pourquoi ils sont si importants. Donner un exemple avec un programme qui décide si une…

Expliquer ce qu'est un « cas limite » lors de la vérification d'un programme et pourquoi ils sont si importants. Donner un exemple avec un programme qui décide si une note est suffisante à partir de 5.

Résoudre
Entraîne-toi★★☆Pas commencé
Un programme compte les personnes qui entrent dans une salle (capteur A) et celles qui sortent (capteur B). Concevoir trois cas de test destinés à détecter des erreurs…

Un programme compte les personnes qui entrent dans une salle (capteur A) et celles qui sortent (capteur B). Concevoir trois cas de test destinés à détecter des erreurs typiques : deux personnes ensemble, une personne qui entre puis ressort aussitôt, et un capteur qui se déclenche deux fois à cause du rebond du contact.

Résoudre
Entraîne-toi★★☆Pas commencé
Expliquer ce qu'est un « test de charge extrême » d'un système de contrôle et en proposer un pour le programme d'un parking : quelles conditions extrêmes simuleriez-vous…

Expliquer ce qu'est un « test de charge extrême » d'un système de contrôle et en proposer un pour le programme d'un parking : quelles conditions extrêmes simuleriez-vous et quel comportement correct attendez-vous ?

Résoudre
Entraîne-toi★★☆Pas commencé
Concevoir un tableau de vérification pour un feu piéton : états (rouge, vert, orange clignotant), entrées (bouton appuyé, temps écoulé) et sortie attendue à chaque…

Concevoir un tableau de vérification pour un feu piéton : états (rouge, vert, orange clignotant), entrées (bouton appuyé, temps écoulé) et sortie attendue à chaque transition entre états.

Résoudre
Entraîne-toi★★★Pas commencé
Une serre dispose de deux zones d'arrosage indépendantes (zone A : semis délicats ; zone B : culture générale) gérées par un microcontrôleur qui reçoit les données de…

Une serre dispose de deux zones d'arrosage indépendantes (zone A : semis délicats ; zone B : culture générale) gérées par un microcontrôleur qui reçoit les données de deux capteurs d'humidité du sol, d'un capteur de pluie numérique et d'un capteur de débit sur la canalisation générale. Concevoir un plan de vérification pour simuler le système avant sa mise en service. Vous devez définir 5 cas de test exhaustifs incluant des situations de conflit de priorités et des pannes d'alimentation en eau. Pour chaque cas, détailler : les entrées simulées exactes, l'état prévu des électrovannes et des alarmes, et le dommage matériel ou agronomique que ce test permet d'éviter.

Résoudre

Vérifier et valider

Trois blocs : le besoin réel est confronté au cahier des charges par la validation, et le cahier des charges est confronté au programme par la vérification. besoin réel cahier des charges valider ? vérifier ? programme
Entraîne-toi★☆☆Pas commencé
Expliquer avec vos propres mots ce que signifie vérifier un programme et en quoi cela diffère de « l'essayer un peu pour voir si ça marche ».

Expliquer avec vos propres mots ce que signifie vérifier un programme et en quoi cela diffère de « l'essayer un peu pour voir si ça marche ».

Résoudre
Entraîne-toi★★☆Pas commencé
Une équipe vérifie son programme uniquement dans le « scénario nominal », c'est-à-dire lorsque tout se passe bien. Expliquer ce que sont les cas d'erreur et en écrire…

Une équipe vérifie son programme uniquement dans le « scénario nominal », c'est-à-dire lorsque tout se passe bien. Expliquer ce que sont les cas d'erreur et en écrire deux pour un distributeur automatique de billets jouet (carte non valide, solde insuffisant).

Résoudre
Entraîne-toi★★★Pas commencé
Une équipe programme un robot transporteur pour un entrepôt. Lors de l'exécution du plan de tests dans le simulateur, le robot évite 100 % des obstacles et freine devant…

Une équipe programme un robot transporteur pour un entrepôt. Lors de l'exécution du plan de tests dans le simulateur, le robot évite 100 % des obstacles et freine devant toute personne, mais l'algorithme réalise toujours les évitements en marche arrière, en parcourant les allées en sens inverse du flux de travail de l'entrepôt. Le professeur affirme : « Le logiciel est parfaitement vérifié, mais le système n'est pas validé ».

  1. a) Justifier techniquement l'affirmation du professeur en appliquant les définitions opérationnelles de la vérification et de la validation à ce cas concret.
  2. b) Reformuler le cahier des charges technique du robot afin de garantir qu'une future vérification assure aussi sa bonne validation dans l'environnement de travail.
Résoudre
Entraîne-toi★★★Pas commencé
Défi du thème. Une climatisation intelligente chez vous. Saviez-vous qu'automatiser le chauffage peut réduire considérablement la consommation d'énergie ? Concevoir et…

Défi du thème. Une climatisation intelligente chez vous.

Saviez-vous qu'automatiser le chauffage peut réduire considérablement la consommation d'énergie ? Concevoir et valider un système efficace pour votre logement.

  1. Données et modélisation : Consulter sur le site de Météo-France les prévisions de températures pour les prochains $24\text{ h}$ dans votre commune. Comparer dans un tableau la réponse d'un système en boucle ouverte (programmateur fixe) et celle d'un système en boucle fermée (avec rétroaction), en identifiant pour ce dernier : le capteur, le contrôleur et l'actionneur.

  2. Conception et simulation : Ouvrir Tinkercad Circuits ou MakeCode. Modéliser un circuit avec un capteur de température, un microcontrôleur et un actionneur (DEL ou relais représentant la chaudière). Programmer le contrôleur pour qu'il active le chauffage si la température passe sous une consigne de $20,5\text{ }^\circ\text{C}$ et qu'il l'éteigne dès qu'elle est atteinte.

  3. Vérification et proposition finale : Simuler des variations de la température ambiante pour vérifier que le système réagit automatiquement. Rédiger un court compte rendu avec LibreOffice, avec des captures du montage et un graphique des températures de Météo-France, en justifiant combien d'heures de chauffage inutile la boucle fermée évite.

Seront évalués :

  • L'identification et la distinction conceptuelle rigoureuse des éléments de la boucle ouverte et de la boucle fermée.

  • Le montage, la programmation et la vérification fonctionnelle du système simulé avec la consigne donnée.

  • La justification argumentée de l'économie d'énergie à partir des données météorologiques réelles consultées.

Résoudre

Déboguer et rechercher une panne

Pour un défaut du système réel, la démarche est la même : constat, hypothèses sur la cause, protocole de recherche pour les tester une à une, correction, nouveau test.

Organigramme du débogage : après un test échoué, isoler la partie défectueuse, corriger, puis refaire tous les tests précédents. test échoué isoler la partie défectueuse corriger refaire TOUS les tests précédents
Entraîne-toi★☆☆Pas commencé
Qu'est-ce qu'une « erreur » ou bug dans un programme de contrôle ? Donner deux exemples simples (une condition écrite à l'envers, un seuil mal choisi) et l'effet de…

Qu'est-ce qu'une « erreur » ou bug dans un programme de contrôle ? Donner deux exemples simples (une condition écrite à l'envers, un seuil mal choisi) et l'effet de chacun.

Résoudre
Entraîne-toi★☆☆Pas commencé
Expliquer ce que signifie déboguer un programme et nommer une technique simple pour le faire dans un simulateur (exécuter pas à pas, observer la valeur des variables).

Expliquer ce que signifie déboguer un programme et nommer une technique simple pour le faire dans un simulateur (exécuter pas à pas, observer la valeur des variables).

Résoudre
Entraîne-toi★★★Pas commencé
Dans la simulation d'un système d'arrosage pour un carré de potager scolaire, vous avez programmé cette boucle de contrôle : RÉPÉTER TOUJOURS : humidité = lire_capteur()…

Dans la simulation d'un système d'arrosage pour un carré de potager scolaire, vous avez programmé cette boucle de contrôle :

RÉPÉTER TOUJOURS :

humidité = lire_capteur()

SI humidité < 30 % ALORS :

activer_électrovanne()

attendre(10 secondes)

désactiver_électrovanne()

FIN RÉPÉTER

À l'exécution dans un simulateur qui modélise l'absorption physique de l'eau avec un retard d'infiltration de 2 minutes, l'électrovanne s'ouvre et se ferme sans arrêt pendant des dizaines de cycles consécutifs, inondant le terrain.

  1. a) Justifier pourquoi le programme génère ce comportement dans la simulation malgré l'instruction explicite de désactivation.
  2. b) Reconcevoir l'algorithme (en pseudo-code ou en algorigramme) pour résoudre le problème sans supprimer la lecture du capteur ni changer l'électrovanne.
Résoudre
Entraîne-toi★★★Pas commencé
Un robot mobile utilise un capteur à ultrasons frontal (plage utile : 2,0 cm à 400,0 cm) et doit s'arrêter et tourner s'il détecte un obstacle à moins de 20,0 cm.…

Un robot mobile utilise un capteur à ultrasons frontal (plage utile : 2,0 cm à 400,0 cm) et doit s'arrêter et tourner s'il détecte un obstacle à moins de 20,0 cm. Concevoir une matrice de tests pour vérifier le code dans le simulateur avant de le transférer au robot réel. Votre plan doit contenir au moins 4 cas de test distincts incluant des valeurs limites et des anomalies de lecture. Pour chaque cas, indiquer : la valeur numérique simulée en entrée, le comportement attendu des moteurs et la justification technique de la nécessité de vérifier ce cas précis.

Résoudre
Entraîne-toi★★★Pas commencé
Un robot suiveur s'arrête de façon erratique après avoir fonctionné correctement pendant environ cinq minutes. Pour diagnostiquer la panne, on active l'enregistrement…

Un robot suiveur s'arrête de façon erratique après avoir fonctionné correctement pendant environ cinq minutes. Pour diagnostiquer la panne, on active l'enregistrement par port série (log) et on extrait ces lignes clés avant l'arrêt :

  • t = 295,0 s | Distance : 35,0 cm | Temp_driver : 50,0 °C | Vbatterie : 7,4 V | État : AVANCER

  • t = 298,5 s | Distance : 34,0 cm | Temp_driver : 78,0 °C | Vbatterie : 7,2 V | État : AVANCER

  • t = 300,0 s | Distance : 35,0 cm | Temp_driver : 92,0 °C | Vbatterie : 6,1 V | État : ARRET_URGENCE

  1. a) Interpréter les données du journal pour déterminer la cause physique de la panne, en réfutant le rapport initial de l'équipe qui affirmait que la panne venait d'un défaut du capteur à ultrasons.
  2. b) Concevoir les variables supplémentaires ou les conditions d'alerte précoce à inclure dans le journal et dans le code de commande pour gérer ce problème de manière progressive, sans aller jusqu'à la coupure brutale.
Résoudre

Valeurs qui fluctuent autour d'un seuil : l'hystérésis

Un capteur réel ne donne pas une valeur stable : la lumière ou la température oscillent légèrement. Avec un seul seuil, chaque petite oscillation autour de ce seuil change l'ordre envoyé à l'actionneur : le moteur démarre et s'arrête sans cesse, il s'use et consomme de l'énergie pour rien. Un contact mécanique peut aussi « rebondir » et être compté plusieurs fois.

Entraîne-toi★★★Pas commencé
Le capteur de luminosité d'un volet roulant automatique enregistre ces valeurs sur une durée de 6 minutes, lors d'un après-midi nuageux avec des éclaircies : t = 0 min :…

Le capteur de luminosité d'un volet roulant automatique enregistre ces valeurs sur une durée de 6 minutes, lors d'un après-midi nuageux avec des éclaircies :

  • t = 0 min : 780 lx

  • t = 1 min : 805 lx

  • t = 2 min : 795 lx

  • t = 3 min : 812 lx

  • t = 4 min : 798 lx

  • t = 5 min : 815 lx

  • t = 6 min : 820 lx

Le système suit la règle simple suivante : « Si luminosité ≥ 800 lx, baisser le volet ; si luminosité < 800 lx, relever le volet ».

  1. a) Déterminer combien d'ordres de mouvement le moteur reçoit durant cet intervalle et justifier les conséquences mécaniques et énergétiques de ce fonctionnement.
  2. b) Concevoir une solution à double seuil (hystérésis) en définissant des valeurs numériques précises pour l'ordre de descente et l'ordre de montée, puis démontrer pas à pas comment votre solution réagit face à la même série de données.
Résoudre

Retour au début : Léa aurait dû simuler son programme avec un jeu d'essais comprenant des obstacles à différentes distances, puis seulement le transférer au robot réel.

L'essentiel

Voir tous les exercices de cette partie