Aller au contenu

Technologie · Brevet

Programmer un objet technique par blocs

Un programme d’objet technique lit des entrées, traite leurs valeurs puis commande des sorties. Les variables mémorisent les données ; les conditions choisissent une action ; les boucles répètent les instructions. Pour vérifier un programme, suis son exécution dans l’ordre et teste les valeurs situées de chaque côté des seuils, y compris le seuil lui-même.

La logique d’un objet programmé

Lire les capteurs → mettre à jour les variables → évaluer les conditions → commander les sorties → recommencer si prévu.

À retenir

  • Une entrée peut venir d’un capteur ou d’un bouton. Une sortie peut commander un moteur, allumer un voyant ou afficher un message.
  • Une affectation remplace la valeur d’une variable. Mettre compteur à 0 et ajouter 1 à compteur sont deux instructions différentes.
  • Dans « si… alors… sinon… », une seule des deux branches s’exécute selon la condition. Pense au cas où la condition est fausse.
  • Une boucle « répéter 4 fois » exécute quatre fois son contenu. Une boucle « répéter indéfiniment » permet, par exemple, de surveiller un capteur pendant le fonctionnement du système.
  • L’opérateur ET exige que les deux conditions soient vraies. OU exige qu’au moins une soit vraie. NON inverse la valeur logique de la condition.

La méthode pas à pas

  1. 1

    Écrire le comportement demandé

    Décris ce que l’objet doit faire, avec ses entrées et ses sorties. Exemple : allumer un voyant quand la distance mesurée est strictement inférieure à 20 cm.

  2. 2

    Repérer les valeurs initiales

    Note la valeur de chaque variable au démarrage. Repère où les capteurs sont lus. Une mesure placée avant une boucle ne se met pas à jour toute seule pendant cette boucle.

  3. 3

    Exécuter les instructions dans l’ordre

    À chaque test, décide si la condition est vraie ou fausse. À chaque affectation, actualise la valeur de la variable. Pour une boucle, fais un tableau avec une ligne par passage.

  4. 4

    Tester les limites et corriger

    Teste une valeur sous le seuil, une égale au seuil et une au-dessus. Vérifie aussi ce qui se passe après un changement de mesure. Corrige le programme puis rejoue les tests.

Exemple corrigé pas à pas

Exercice créé pour cette fiche. Voici un programme décrit en blocs : Au démarrage : répéter indéfiniment mettre distance à la mesure du capteur, en cm si distance < 20 alors allumer le voyant sinon éteindre le voyant Que fait le voyant pour les mesures successives 25 cm, 15 cm et 20 cm ?

Pour 25 cm, la condition 25 < 20 est fausse : le voyant est éteint. Pour 15 cm, la condition 15 < 20 est vraie : il est allumé. Pour 20 cm, la condition 20 < 20 est fausse : il est éteint. Le symbole < exclut l’égalité. La mesure est relue à chaque tour de boucle. Pour allumer le voyant à 20 cm aussi, il faudrait tester distance ≤ 20.

Exemple type brevet, créé pour cette fiche

Dans une maquette fictive de serre, un ventilateur doit fonctionner si la température dépasse strictement 28 °C ET si l’autorisation vaut vrai. Sinon, il doit s’arrêter. On suppose les mesures et les composants fonctionnels. 1. Décris les blocs à répéter pour suivre les deux entrées. 2. Donne la sortie pour (30 °C, vrai), (28 °C, vrai) et (30 °C, faux). 3. Explique pourquoi remplacer ET par OU serait une erreur.

1. Dans la boucle : lire la température et l’autorisation ; si température > 28 ET autorisation = vrai, commander la marche du ventilateur ; sinon commander son arrêt. 2. (30 °C, vrai) : marche, les deux conditions sont vraies. (28 °C, vrai) : arrêt, car 28 > 28 est faux. (30 °C, faux) : arrêt, car l’autorisation manque. 3. Avec OU, une température de 30 °C suffirait à commander la marche même sans autorisation. À 28 °C avec autorisation, le ventilateur fonctionnerait aussi. Cela ne respecte pas le besoin donné.

Erreurs fréquentes

✗ Lire le capteur une seule fois avant une boucle de surveillance.

✓ Place la lecture dans la boucle si le comportement doit suivre les nouvelles mesures. Sinon la variable conserve l’ancienne valeur.

✗ Oublier l’action quand la condition devient fausse.

✓ Précise le comportement attendu dans ce cas, par exemple éteindre le voyant. Sans ordre contraire, une sortie peut conserver son état précédent.

✗ Remplacer ET par OU sans changer le comportement.

✓ ET impose toutes les conditions. OU en accepte au moins une. Vérifie les combinaisons possibles avec un tableau de tests.

Entraîne-toi

  1. 1. On met compteur à 0, puis on répète 4 fois « ajouter 2 à compteur ». Quelle est sa valeur finale ?

    Voir la correction

    Les valeurs après chaque passage sont 2, 4, 6 puis 8. La valeur finale est 0 + 4 × 2 = 8.

  2. 2. On met compteur à 0 à l’intérieur d’une boucle, puis on lui ajoute 1. La boucle se répète 3 fois. Valeur finale ?

    Voir la correction

    À chaque passage, le compteur revient à 0 puis vaut 1. Après trois passages, il vaut encore 1. Pour compter les passages, il faut initialiser à 0 avant la boucle.

  3. 3. Un voyant doit s’allumer à partir de 10 cm inclus. Quel test choisir : distance > 10 ou distance ≥ 10 ?

    Voir la correction

    Il faut distance ≥ 10. À 10 cm, ce test est vrai ; distance > 10 serait faux. Les essais à 9, 10 et 11 cm doivent donner éteint, allumé, allumé.

  4. 4. Un programme allume le voyant si un obstacle est détecté, mais ne donne aucune instruction sinon. Le voyant reste allumé après le départ de l’obstacle. Quelle correction proposer ?

    Voir la correction

    Ajouter la branche « sinon éteindre le voyant » et relire le capteur à chaque passage. Vérifier ensuite la succession : pas d’obstacle, obstacle, plus d’obstacle. Les sorties attendues sont éteint, allumé, éteint.

Questions fréquentes

Quelle différence entre algorithme et programme ?

L’algorithme décrit une suite d’instructions pour résoudre une tâche. Le programme l’exprime dans un langage exécutable par une machine, par exemple un langage graphique par blocs.

Pourquoi tester la valeur exacte du seuil ?

Parce que < et ≤ ne donnent pas le même résultat à l’égalité. Tester seulement des valeurs éloignées peut laisser passer une erreur qui se produit précisément au seuil.

À quoi sert une variable dans un objet technique ?

Elle mémorise une donnée, comme une distance mesurée ou un compteur. Il faut identifier quand elle est initialisée, lue et modifiée pour comprendre le comportement du programme.

En quoi cette fiche diffère-t-elle des exercices Scratch de maths ?

Elle relie les instructions à un objet : capteurs en entrée, traitement, puis commande d’actionneurs. Les notions de variable, de condition et de boucle sont communes ; ici tu vérifies aussi que le comportement répond au besoin technique.

Travaille la logique des programmes avec Graduo

Reprends ton cours avec le tuteur IA et entraîne-toi avec des quiz.