-
Souhaitant varier les supports d'études pour mes élèves, voici le "Cache-pot lumineux connecté Bluetooth" qui vous indique quand la plante a besoin d'eau avec ou sans interface mobile. C'est un support simple, peu couteux à réaliser, qui offre beaucoup d'exploitations pédagogiques possibles dans différents thèmes ou bien encore sous la forme de projet avec par exemple un suivi des arrosages.
Si ce support permet d'aborder facilement différents points du programme comme la programmation avec peu de composants, il est surtout très riche d'un point de vue créativité pour les élèves. Tout est possible, entre ma première idée venue du test d'un capteur d'humidité de sol et d'un anneau de LED RGB, ce projet a évolué une multitude de fois. Le prototypage rapide est vraiment un point qu'il faut pratiquer avec les élèves pour leur permettre de s'exprimer, tester, analyser, comprendre.
votre commentaire -
-
Pièces Fabriquées :
- Cache pot en deux parties imprimées en ABS sur UPplus2- Plaque connectique découpée dans plaque d'essais à bandes
Montage des composants dans l'embase du cache-pot :
Rappel : Le pas des connectiques GROVE n'est pas du 2.54mm, mais en forçant et en redressant les picots
après soudure cela fonctionne très bien, aucun problème pour connecter les câbles GROVE aux prises par
la suite.
Pièces achetées :
- Un capteur d'humidité du sol
- Un anneau 24 LED RGB WS2812
- Deux connecteurs GROVE coudés
- Une plaque d'essais à bandes
- Un pot de fleur en plastique Ø 11 cm
votre commentaire -
Description de la boucle principale ci dessous:
1) Initialisation des différentes variables nécessaires.
2) Initialisation des broches de communication avec la carte Bluetooth: Ici D4 pour la réception et D5 pour l'émission.
3) Test : Si données disponibles en Bluetooth, alors attribuer à la variable Effet_utilisateur la valeur lue en
réception, c'est à dire l'ordre en provenance de l'application de la tablette sur le type d'effet lumineux souhaité.
4) Définition d'une pause de 300 millisecondes.
Quel est le rôle de cette pause ?
Lors de la mise au point du programme de l'application pour la tablette sur MIT Inventor, j'ai constaté que les valeurs reçues sur l'ARDUINO par Bluetooth étaient par moment erronées si je sollicitais trop les boutons de commande pour les effets lumineux. Cette pause permet de ralentir la fréquence d'exécution la boucle et de ce fait les valeurs erronées ont disparu.
5) Appeler les différents sous programmes :
MESURER_humidité_sol
SELECTIONNER_effet
ETEINDRE_led
votre commentaire -
1) Définition de l'interface graphique
La création de l'interface graphique pour ce support offre toutes les libertés de créations possibles pour les élèves.
Ce qui est vraiment très pratique avec MIT APP INVENTOR c'est que toutes les modifications que vous effectuez en ligne se répercutent instantanément sur votre tablette à partir du moment où vous l'avez couplé par l’intermédiaire du compagnon.
Cette réactivité permet d'ajuster très rapidement l'aspect graphique de l'application mais aussi du point de vue du fonctionnement attendu.Toutes modifications ou rajout de blocs dans la partie programmation seront directement observables.Ci-contre l'interface de l'application mobile qui regroupe les éléments suivants :
- Un indicateur sur l'état de la connexion Bluetooth avec le
Cache pot lumineux.
- Un témoin qui indique l'état de la plante suivant le taux
d'humidité mesuré.
- Un témoin sur la consigne d'arrosage suivant le taux
d'humidité mesuré.
- Un bouton pour activer l’éclairage du cache pot avec trois
boutons pour sélectionner l'effet lumineux désiré.
- Un bouton pour activer le son sur le mobile avec deux
boutons pour sélectionner soit un bip sonore ou un message
vocale lors d'un changement d'état du témoin de la plante et
du témoin d'arrosage.A travers la création de cette interface, on peut faire découvrir aux élèves la retouche d'image.
Ici, l'exemple de la création du témoin de l'état de la plante à partir d'une image libre récupérée sur le web et retravaillée sur GIMP pour indiquer le besoin en eau :
Noyée - Optimum - Suffisant - Manque d'eau.
Ci-dessous, l'exemple toujours sur GIMP pour le témoin consigne d'arrosage.
2) Les principales parties du programme
2.1 Exemple boucle de traitement sur le taux d'humidité
A intervalle de temps régulier, cette boucle va lire la valeur correspondant au taux d'humidité fournit par l'ARDUINO
puis affiche l'état de la plante et la consigne d'arrosage correspondant. De plus, suivant les options sonores
activées par l’utilisateur un bip sonore ou un message vocale indique le changement d'état.
2.2 Exemple programmation du bouton de commande pour l'effet lumineux variation
1 commentaire -
Cache pot STL Embase STL
FICHIER ARDUBLOCK
Gestion Cache pot lumineux
ARDUINO UNOFICHIER AIA
Programme de l'application sous MIT APP INVENTORFICHIER APK
Application utilisable directement
sur la tablette
votre commentaire -
I - PRÉSENTATION
Voici un anneau de 86 mm composé de 24 LED RGB WS2812 que je compte utiliser avec les élèves. Ce
produit leur permettra d'exprimer leur créativité dans de nombreux projets "lumineux".
Si le passage à l'utilisation d'une simple LED me semble indispensable pour découvrir les principes de base, il est bien plus motivant d'utiliser ce type de produit pour des élèves.
Pour info, produit en provenance de Chine à moins de cinq euros, soit quatre fois moins cher qu'un anneau Neopixel par exemple.
II - PRINCIPE DE FONCTIONNEMENT
Une LED RGB WS2812 est constituée d'un support sur lequel est assemblé trois LED(bleue, rouge, verte) et d'une puce qui contrôle l’ensemble et permet l'adressage.
L'utilisation de ce type de LED RGB sur cet anneau permet de produire toutes les couleurs que l'on souhaite et contrôler chaque LED individuellement. On peut gérer aussi le niveau de luminosité.
Les LED RGB étant chainées, une seule sortie sur la carte ARDUINO est nécessaire pour contrôler ces 24 LED RGB.
III - MISE EN ŒUVRE
L'anneau dispose de 4 points de connexion :- DI Digital Input : Signal d'entrée en provenance d'une sortie digitale
de la carte ARDUINO
- 5V Alimentation directe par la carte ARDUINO si vous
connectez un seul anneau
- GND
- DO Digital Ouput : Á utiliser si l'on souhaite connecter plusieurs anneaux ensemble. Dans ce cas, il faut connecter cette sortie à l'entrée DI de l'anneau suivant et prévoir une alimentation extérieure. Quel que soit le nombre d'anneaux, on a toujours besoin d'une seule sortie sur la carte ARDUINO pour commander l'ensemble.
IV - PROGRAMMATION AVEC ARDUBLOCK
ADAFRUIT Industries commercialise les LED RGB WS2812 sous le non de Neopixels et a développé une librairie pour ARDUINO. Par conséquent, les blocs définis pour ADAFRUIT sur ARDUBLOCK pour les bandes de LED RGB fonctionnent très bien pour cet anneau.
Explication du premier exemple ci-dessous :
1) Initialisation
Il faut indiquer la broche digitale qui sera utilisée (ici D2) et indiquer le nombre de LED à commander.
2) Réalisation d'une boucle pour allumer les 24 LED
Le bloc Pixel Color permet d'indiquer la LED que l'on souhaite allumer et définir sa couleur.
La définition de la couleur se fait en indiquant la quantité souhaitée (entre 0 et 255) pour chacune des trois couleurs (Rouge, vert, bleu). Par conséquent, on obtient par ce mixage, une grande variétés de couleurs.A savoir : - 100% des trois couleurs donne du blanc.
- 100% de rouge et 100% de vert donne du jaune.
- 100% de rouge et 100% de bleu donne du cyan.
- 100% de vert et 100% de bleu donne du violet.
Le bloc Brightness permet de définir le niveau de luminosité souhaité.Le bloc Push the color data to the strip est nécessaire pour indiquer sur quelle broche digitale sera envoyée la
trame de données concernant la LED et sa couleur. Dans notre cas précis, le bloc devrait s'appeler " Push the color
data to the ring".
Explication du deuxième exemple ci-dessous :
Un second exemple en utilisant les blocs Neopixel définis par DuinoEdu en français.Les seuils varient cette fois-ci entre 0 et 1000.
Le bloc Gérer Groupe est très pratique à utiliser car on peut obtenir directement un nuancier de couleurs en indiquant une couleur de début et une couleur de fin mais aussi définir une vitesse de défilement dans un sens ou dans l'autre avec le pas que l'on souhaite.
votre commentaire
Suivre le flux RSS des articles
Suivre le flux RSS des commentaires