Aller au contenu principal
makecode sur ordinateur

Capteur de température

Demandez aux élèves de prédire (en ligne ou en classe) ce qu’ils croient que sont les températures à l’extérieur de la SSI.

Collectez et illustrez leurs prédictions sur un graphique simple dessiné au tableau. Après qu’ils aient tous fait leurs prédictions, expliquez que :

  • Le côté faisant face au soleil peut atteindre 121 °C, alors que le côté à l’ombre peut descendre jusqu’à -157 °C.

Demandez aux élèves de discuter des raisons pour lesquelles les températures de chaque côté de la SSI sont si extrêmes. Dans l’espace, il n’y a pas d’air; la chaleur ne peut donc être transférée ni par conduction ni par convection (il pourrait être nécessaire d’expliquer ces notions).

Programmer un micro:bit pour qu’il fonctionne comme un thermomètre.

  • Rendez-vous à : http://makecode.microbit.org/ ou ouvrez l’application micro:bit.
  • Pour changer la langue au Français, vous devez cliquer sur l’engrenage et sélectionner Français.

Les instructions pour cette activité de programmation sont dans le tutoriel vidéo, le document tutoriel et le tutoriel en ligne ci-dessous.

Programmer un thermomètre

Cliquez sur le bouton Nouveau Projet. Supprimez les blocs au démarrage et toujours.


Sous Entrées, sélectionnez le bloc lorsque le bouton A est pressé.


Sous Variables, cliquez sur Créer une variable.


Nommez la variable microbitTemp et cliquez sur le bouton Ok.

Sous Variables, sélectionnez un bloc définir microbitTemp à et insérez-le sous le bloc lorsque le bouton A est pressé.


Si vous cliquez sur le menu déroulant à côté du mot microbitTemp, vous verrez que la variable « microbitTemp » aura un crochet pour identifier qu’elle est sélectionnée.


Sous Entrées, sélectionnez le bloc de température (°C) et placez-le où le zéro est dans le bloc définir microbitTemp à.
Ceci établira la variable microbitTemp à la température ambiante (de la pièce).


Sous Base, sélectionnez un bloc montrer nombre. Placez-le sous le bloc définir microbitTemp à.

Sous Variables, sélectionnez le bloc microbitTemp et placez-le où le zéro est dans le bloc montrer nombre.
Ceci affichera la valeur de température sur l’affichage DEL.


Un bloc pause et un bloc effacer l’écran peuvent être insérés afin que la valeur de température ne soit pas affichée en permanence.

Sous Base, sélectionnez un bloc pause (ms) et placez-le sous le bloc montrer nombre. Ajustez la valeur à environ 1000 à 1500 ms pour une courte pause.


Le bloc effacer l’écran se trouve dans le menu Base, dans le Plus… Placez-le sous le bloc pause (ms).

Assurez-vous que votre code fonctionne. Vous avez maintenant un thermomètre micro:bit fonctionnel!

Enregistrez votre travail et téléchargez le code vers votre micro:bit.

À la recherche d’un défi supplémentaire? Vous pouvez aussi apprendre comment transmettre et recevoir les données de température entre deux micro:bits.

  • Rendez-vous à : http://makecode.microbit.org/ ou ouvrez l’application micro:bit.
  • Pour changer la langue au Français, vous devez cliquer sur l’engrenage et sélectionner Français.

Les instructions pour cette activité de programmation sont dans le tutoriel vidéo, le document tutoriel et le tutoriel en ligne ci-dessous.

Micro:bit (envoyer et recevoir des données)

Rendez-vous à http://makecode.microbit.org/. Cliquez sur le bouton Nouveau Projet. Supprimez les blocs au démarrage et toujours et téléchargez votre propre code de l’activité préparatoire 3.2 qui vous permet d’afficher la température de votre micro:bit.

OU vous pouvez utiliser ce fichier, téléchargeable au : https://makecode.microbit.org/53710-84672-01774-38935 et cliquez sur le bouton Edit. (http://bit.ly/MO3-Thermometer)

Ceci est le code avec lequel vous débuterez, il permet d’afficher la température de votre micro:bit lorsque vous pressez sur le bouton A.

Instructions­

Partie 1 : Groupe radio

Dans le menu Base, sélectionnez un bloc au démarrage et placez-le sur une zone libre de votre espace de travail.

Dans le menu Radio, sélectionnez un bloc radio définir groupe « 1 » dans le bloc au démarrage. Pour ce programme, nous définirons le groupe radio à 1. Pour ce programme, nous allons définir le groupe de radio à 1.  Nous téléchargerons le même programme sur DEUX micro:bits différents et parce qu’ils auront le même groupe, ils pourront communiquer ensemble.

Saviez-vous que?

L’ajout de la fonction de communication radio est un principe simple qui vous permet d’émettre et de recevoir des données depuis et vers un autre appareil qui utilise le même protocole. Un micro:bit peut seulement transmettre ou recevoir dans un groupe à la fois.  Le paramètre de l’identification de groupe peut être n’importe quel nombre entre 1 et 255.  Vous pouvez avoir plusieurs paires de micro:bits qui communiquent, tant qu’ils ont le même groupe de communication.

Partie 2 : Transmission radio

Dans le menu Entrées, sélectionnez le bloc lorsque le bouton A est pressé et placez-le sur une zone libre de l’espace de travail. Cliquez sur la flèche à côté de la lettre « A » pour changer à B afin d’activer ce nouveau gestionnaire d’événement, lorsque le bouton B est pressé.


Du menu variables, sélectionnez le bloc définir item à et placez-le à l’intérieur du bloc lorsque le bouton B est pressé.


Cliquez sur la flèche à côté du mot item pour sélectionner la variable microbitTemp du menu déroulant


Afin que la variable microbitTemp soit la donnée de température fournie par le micro:bit, dans le menu Entrées, sélectionnez le bloc de température et insérez-le en place où il y a présentement un zéro, dans le bloc définir microbitTemp à.


Du menu Radio, sélectionnez un bloc envoyer le nombre et insérez-le dans le bloc lorsque le bouton B est pressé, sous le bloc définir microbitTemp à.


Allez dans le menu Variables et sélectionnez la variable microbitTemp et insérez-le en place où il y a présentement un zéro, dans le bloc envoyer le nombre par radio.

Partie 3 : Reçue par radio

Saviez-vous que?

Le micro:bit a un émetteur-récepteur intégré qui vous permet de transmettre des données, autant qu’en recevoir.  Vous utilisez probablement un dispositif émetteur/récepteur au quotidien – comme lorsque vous parlez sur un mobile ou un téléphone sans fil.

Du menu Radio, sélectionnez le bloc Quand une donnée est reçue par radio avec le bloc receivedNumber (nombre reçu) et placez-le sur une zone libre de votre espace de travail.


Du menu Base, sélectionnez le bloc montrer nombre et insérez-le dans le bloc Quand une donnée est reçue par radio.


Du menu Variables sélectionnez le bloc de variable receivedNumber et insérez-le en place à l’intérieur du bloc montre nombre où il y a présentement un zéro.


Du menu Base, sélectionnez le bloc pause et insérez-le dans le bloc Quand une donnée est reçue par radio, sous le bloc montrer nombre.


Ajustez la valeur de 100 à 1500 ms pour une courte pause d’une seconde et demie.


Le bloc effacer l’écran se trouve dans le menu Base, dans le sous-menu …Plus. Placez-le sous le bloc pause (ms).

Enregistrez votre travail et téléchargez le code vers votre micro:bit.

Vous voulez expérimenter et remixer du code?

Les instructions pour cette activité de programmation sont dans le document tutoriel et le tutoriel en ligne ci-dessous.

Se rendre sur internet et à https://makecode.microbit.org/_0MA8yyfjtbEr.

Dans ce programme, lorsque l’utilisateur presse le bouton A, la température ambiante est affichée sur l’écran matriciel.

Quand l’utilisateur presse le bouton B, la température est affichée grâce à des colonnes : une pour les dizaines et une pour les unités.

Ceci est le résultat final du programme complété dans l’interface MakeCode.

Pour ce défi, nous allons examiner le code JavaScript de ce programme.

Saviez-vous que?

JavaScript est un langage de programmation complexe pour ordinateurs. C’est aussi un des langages les plus communs à travers le monde. Il est souvent utilisé dans des applications internet afin de permettre des fonctionnalités plus complexes ou pour la programmation de jeux vidéo.

Cliquez sur le bouton {} JavaScript en haut de votre espace de travail pour voir le code.

Examinez le code JavaScript et tentez de démystifier ce que le programme indique de faire à l’ordinateur.

Voici le code à nouveau.

let tempOnes = 0
    let tempTens = 0
    let microbittemp = 0
    input.onButtonPressed(Button.A, () => {
        microbittemp = input.temperature()
        basic.showNumber(microbittemp)
        basic.pause(1500)
        basic.clearScreen()
    })
    input.onButtonPressed(Button.B, () => {
        microbittemp = input.temperature()
        tempTens = microbittemp / 10
        tempOnes = (microbittemp - tempTens * 10) / 1
        basic.clearScreen()
        for (let plotTens = 0; plotTens <= 4; plotTens++) {
            if (plotTens < tempTens) {
                led.plot(0, 4 - plotTens)
            }
        }
        for (let plotOnes = 0; plotOnes <= 10; plotOnes++) {
            if (plotOnes <= 4) {
                if (plotOnes < tempOnes) {
                    led.plot(3, 4 - plotOnes)
                }
            } else {
                if (plotOnes < tempOnes) {
                    led.plot(4, 4 - (plotOnes - 5))
                }
            }
        }
    })

Testez vos compétences…

Ajustez la température sur le micro:bit à 21 °C.

Pour coder le numéro qui apparaît dans la colonne des dizaines, le code ci-dessous indique aux lumières DEL de commencer à afficher la valeur à la position (0,4) sur l’écran matriciel.

Trouvez cette section de code dans le JavaScript.

for (let plotTens = 0; plotTens <= 4; plotTens++) {
    if (plotTens < tempTens) {
      led.plot(0, 4 - plotTens)
    }
 }

Trouvez cette section de code dans le JavaScript qui indique au micro:bit où afficher les unités si la lecture de température est de 21 °C.

Apprentissage exploratoire & remixage

  • Dessinez ce qu’afficherait l’écran matriciel du micro:bit si la température était de 8 °C.
  • Comment est-ce que le programme afficherait une valeur de -2 °C? Quelle section du code JavaScript s’occuperait de ceci?
  • Comment changeriez-vous le code JavaScript code pour que le point de départ des lumières DEL soit en haut de la matrice?
  • Comment utiliseriez-vous des blocs du menu Logique pour afficher un icône ou message lorsque la température est à une certaine valeur?
  • Comment pourriez-vous utiliser des blocs du menu radio pour envoyer ou recevoir cet affichage de la température à un autre micro:bit?