Skip to main content

Micro:bit - Allumer des LEDS selon la luminosité ambiante

Logo_POPcafe_Capsule.png

Interfacer un écran LCD Grove sur Micro:bit et y afficher des données

1666127725818.jpg

Wifi.png

Durée 

1h30

Age 

Dès 8 ans

Nombre de participants

De 1 à 10

Matériel

  • Un ordinateur + Connexion internet
  • Une carte micro:bit
  • 3 Leds
  • 7 câbles Jumper mâle-mâle
  • 4 pinces crocodile
  • 1 breadboard

Smiley clin d'oeil.pngIntro et Enjeux pédagogiques

L'atelier vise à être autonome dans la mise en place d'un dispositif qui allume des Leds graduellement selon la luminosité ambiante.  ceCe dispositif est développé via la plateforme de programmation en ligne de Vittascience. Cette dernière est très similaire à celle de Scratch et de  MakeCode et permet ainsi la création d'un programme sans coder, juste en imbriquant des modules dans une suite logique d'actions à mener.

Fusée.pngL'atelier 

Déroulé :

  1. Sur la breadboard, connecter une Led en mettant le côté plat (= "cathode" = " - ") à droite.
    Le côté gauche a donc une patte plus longue. C'est l'anode (ou " + ").
  2. Sous la patte gauche, brancher un câble jumper. De l'autre côté du jumper, connecter une pince crocodile qui sera reliée à la sortie 0 du micro:bit. La led sera alors alimentée ( + ) via la sortie 0 du micro:bit.

    1666105497623.jpg


    1666105497594.jpg


  3. Sous la patte droite, mettre un câble Jumper et brancher l'autre bout sur la ligne " - " de la breadboard. Le courant, après être passé dans la LED sera évacué vers la ligne " - "

    1666105642986.jpg1666105642986.jpg


  4. Faire de même avec les 2 autres Leds, dont les anodes seront connectés aux sorties 1 et 2 du micro:bit. Les cathodes sont toutes connectées à la ligne " - ".

    1666127725674.jpg

    1666127725700.jpg


  5. Ajouter un câble Jumper à droite de la ligne " - ". L'autre extrémité de ce câble doit être connectée à une pince crocodile en vue d'évacuer tous les courants vers la pin "GND" (=Ground = Terre) du micro:bit.

    1666127725795.jpg

    1666127725771.jpg

  6. Aller sur l'interface de programmation du site Vittascience. Choisir la carte BBC Micro:bit.
  7. L'interface propose plusieurs espaces.
    1. A gauche, un menu déroulant avec plusieurs catégories (Affichage, entrées, Communications etc.)
    2. A sa droite, un espace central dans lequel nous glisser/déposer les éléments sur menu de gauche. L'interface peut rappeler celle de Scratch
    3. A droite, une fenêtre de programmation qui traduit en direct en langage python ce que le programme doit faire.
    4. A droite de cette fenêtre, un petit icône de flèche permet d'ouvrir une nouvelle fenêtre simulant la carte micro:bit et les capteurs qui y seront branchés.

      image.png

    5. En bas, une fenêtre de moniteur série permettra d'y afficher des données, valeurs, textes transmis sur le port.
    6. En haut, il est possible (après création d'un compte gratuit) d'enregistrer, ouvrir des projets, de télécharger le  programme etc.
  8. A gauche cliquer sur le bouton "Variables"Entrées/Sorties" puis sur "créerÉcrire unesur variable"la broche ... Appelerl'état...". celle-ciIl "T", pour Température. La variable "T" estfaut alors créinitialiser les broches P0, P1 et P2) à l'ée.tat bas (pas de courant, donc Leds éteintes).

    image.pngimage.png

    image.png


     

  9. Glisser/Dans déposerla partie gauche, cliquer sur le blocbouton "affecterLogique" àpour Tintégrer une boucle Si. Changer la valeur 0". Ce bloc permet de donner une valeurcomparaison à la"< variable précédemment créée. Pour le moment, la variable50 "T" va donc valoir "0".

    image.pngimage.png


     

  10. Dans la catégorie "Capteurs", trouver le bloc "Température"Luminosité" et le déposer dans le bloc "Affecter à T..."Si". Ainsi,La laluminosité variablecapturée "T" reçoit indéfiniment la valeur du capteur de température (natif surpar la carte micro:bit).bit sera alors analysée et comparée à la valeur 50.

    image.png

    image.pngimage.png

  11. Dans la catégorieboucle "Affichage"Si", trouverinsérer une brique pour passer la sous-catégoriebroche "EcranP0 LCD"à l'état et glisser/déposer le bloc "[LCD] Afficher le texte".haut. Ainsi, l'écransi LCDla luminosité est inférieure à 50 lumens, la première Led va afficher indéfiniment le texte " ". L'écran LCD comporte 2 lignes de 16 caractères. Il est donc possible de définir l'écriture la ligne 0 ou la ligne 1 et à quelle position (entre 0 et 15 pour les 16 caractères). s'allumer.

    image.png 

    image.pngimage.png


  12. DansCopier/ lecoller champla boucle "Si" dans la boucle ", écrire "Température: "Si". L'interfaceChanger la valeur de droitecomparaison simuleà alors30 et la carteLed micro:bità ainsiallumer quesur l'écranP1. LCDAinsi, si la luminosité est inférieure à 50 lumens, la Led1 sera allumée et cesi qu'ilelle affiche. Elle metest aussi eninférieure avantà le30, capteurla deLed2 températuresera duaussi micro:bit.allumée.

    image.png 

    image.pngimage.png


  13. AjouterCopier/ un nouveau bloc [LCD] Afficher texte en dessous du précédent. changercoller la ligne enboucle "1".

    image.png

  14. Dans la catégorie "Texte", trouver le bloc "Créer le texte + - " et le glisser déposer dans le bloc LCD. e bloc permet d'ajouter plusieurs données les unes après les autres

    image.png

    image.png

  15. Dans la catégorie "Variables", glisser/ déposer "T" dans la première bulle du bloc texte.

    image.png

    image.png


  16. Dans la catégorie "texte", glisser/ déposer le bloc texte " "Si" dans la seconde bulle. Y insérer le texteboucle " °C"Si". Ainsi, la variableChanger la valeur du capteur de température,comparaison stockéeà dans10 et la variableLed "T"à allumer sur P2. Ainsi, si la luminosité est affichéeinférieure surà 50 lumens, la secondeLed1 lignesera deallumée. l'écranSi LCD,elle suiviest duaussi texteinférieure "à °C".30, la Led2 sera aussi allumée. Enfin, si la luminosité est aussi inférieure à 10 lumens, la troisième Led s'allumera.

    image.png

    image.pngimage.png


     

  17. Dans l'interface de droite, bouger la valeur du capteur température.de Laluminosité. valeurLes surLeds l's'allumeront si on descends et s'écranteindront LCDlorsque sela metluminosité alors à jour automatiquement.remonte.

    image.pngimage.png

    image.png

    image.png

    image.png

     


  18. En haut, au centre, cliquer sur le bouton "Télécharger .hex". Le programme va alors se télécharger sur l'ordinateur. Brancher la carte micro:bit à l'ordinateur via le câble fourni. Coller le fichier dans la carte.



    image.png

  19. Tester le dispositif en mettant la main par dessus la carte afin de couvrir le capteur de luminosité.

    1665047059192.jpg1666127725727.jpg

    1666127725749.jpg

     

    1666127725818.jpg

     

  20. DéconnecterPour aller plus loin, il est possible de construire un boitier dans lequel le micro:bitdispositif complet s'intègre et ne laisse visible que les Leds et le capteur de l'ordinateurluminosité. etCe connecterboitier lepeut shieldêtre àun l'ordinateurlightbox (ou une source d'alimentation externe). Le dispositif se met en route et affiche la température de la pièce en direct.

    1665047059182.jpg


  21. Amélioration: Les caractères spéciaux ne sont pas toujours bien interprétés. Retravailler le texteveilleuse pour supprimer les accents, changer le logo " ° " en "degrés" afin d'avoir un dispositif propre.

    1665047059172.jpg


    1665047059162.jpg

  22. Ouverture: Rajouter des blocs "si..." dans la catégorie "Logique" afin de changer l'affichage dans certaines conditions. Par exemple, lors de l'appuie sur la touche "A", l'affichage de la température se fait en Fahrenheit et en Kelvin lorsque la touche B est pressée. Cela permettra de voir la différence de valeur d'une même température qu'elle soit en C, K ou F.
    Ex: 20 °C = 68 °F = 295.15 °K



    enfant.

Smiley Exalté.png Smiley Contrarié.png

LES +

LES -

Rapide

Facile

Pas de code

Basique

Nécessite un boitier afin de faire un dispositif propre