Niveau : Seconde SNT
Les objets connectés |
CLASSE : | |
---|---|
| |
|
Les objets connectés sont omniprésents de nos jours : alarmes, smartphones, montres, lumières, chauffage, voiture, ...
Une application peut être associée pour commander l'objet connecté à distance dans le monde entier.
De nombeux microcontrôleur permettent de se connecter en réseau wifi. Vous allez créer une diode éléctroluminescente RVB connectée en réseau interne (wlan).
Le connecteur avec les fils jaune et blanc sont connectés à D5 et D6, l'autre avec les fils rouge et noir à D7 et GND.
Chaque sortie D5 à D7 va commander l'intensité lumineuse d'une led RVB. En fonction de leur intensité on pourra réaliser de nombreuses couleurs
Dans le chapitre précédent, vous avez apris à allumer ou éteindre une LED en lui appliquant un niveau logique 1 ou 0.
Afin de modifier son intensité lumineuse on va jouer sur la durée d'allumage de la LED comme le montre la figure ci-dessous :
Lorsque la fréquence du signal est assez rapide (freq > 100 hz), l'oeil humain ne voit pas clignotter la LED.
Une methode duty
(rapport cyclique alpha) compris entre 0 et 1023 permettra de varier l'intensité lumineuse.
Une méthode freq
permet de modifier la fréquence
Tableau de commande de la LED RVB
connecteur | N° de broche | Couleur |
D5 | 12 | vert |
D6 | 13 | rouge |
D7 | 14 | bleu |
Nous allons utiliser l'objet PWM
qui possède 3 attributs : n°broche, fréquence et rapport cyclique, pour faire varier l'intensité lumineuse de la led verte.
PWM(<n° broche>, <frequence>, <duty>)
Exemple :
vert = PWM(12, freq=1, duty=0)
crée un objet vert
de type PWM
sur la broche n° 12 de fréquence 1Hz et de rapport cyclique 0.
Pour changer le rapport cyclique alpha (duty), on appelle une méthode duty :
vert.duty(<intensité lumineuse>)
Exemple :
vert.duty(1023)
Exécuter le logiciel Thonny
Dans le menu cliquer sur Executer - Configurer l'interpréteur
Sélectionner MicroPython (ESP8266)
Dans la console saisir les 3 lignes suivantes :
duty=500
, grâce à la méthode freq :vert.freq(<valeur en Hz>)
Faire valider le fonctionnement par le professeur
Programme suivant permet de varier l'intensité lumineuse de la diode verte connectée à la broche 12 du microcontrôleur :
Demander au professeur la couleur qu'il désire , composer cette couleur et lui faire valider votre programme.
Le microcontrôleur ESP8266 utilisé est capable de créer un point d'accès wifi afin pour se connecter à partir d'une Smartphone ou d'un ordinateur. Il intègre un serveur Web qui peut traiter les requêtes "GET" et générer une page HTML permettant de d'afficher une IHM (Interface Homme Machine)
Format de la requête reçu par le microcontrôleur lors d'un changement de couleur est une chaîne de caractère.
Exemple :
La couleur en base hexadécimale est indiquée aprèsval=
FF
représente le plus grand nombre héxadécimal codé sur un octet (255)
En langage python, pour extraire une cous chaîne de caractère : si requete="b'GET /?val=d930FF HTTP ..."
alors requete[12:14]
retournera la sous chaine "d9
Dans la console python tester les deux lignes de code ci-dessus et montrer au professeur comment extraire les niveaux du vert et du bleu
Quel est le rôle de la commande int("0x"+requete[12:14])
?
Faire valider le fonctionnement par le professeur
Programme permettant de commander la luminosité de 3 couleurs :
Faire valider le fonctionnement par le professeur
Contenu
sous licence CC BY-NC-SA 3.0
Pascal Hassenforder 07/11/2023
MAJ 11/02/2024