Contexte
La société Meunot répond à un appel d’offre concernant l’animation scénographique d’une salle de spectacle. Ces animations sont destinés à améliorer l’ambiance des soirées électroniques/techno. La société fait donc appel à vous, ses meilleurs ingénieurs R&D, pour répondre à cette demande.
Ce projet s’effectue en binôme, vous devez donc vous répartir les tâches !
Détails du projet
Un écran derrière la scène projettera des animations qui pourront être contrôlées à distance via une manette composée de 2 potentiomètres et un bouton poussoir. Les cartes programmables nécessaires pour contrôler l’écran et traiter l’information de la manette seront des cartes ESP32. Elles devront communiquer entre elle par un protocole spécifique : ESP-NOW.
Matériels à disposition
- 2 cartes ESP32 NodeMCU
- 1 Ecran 1,3″ OLED SH1106
- 2 potentiomètres
- 1 bouton poussoir
Contraintes du projet
Le bouton poussoir de la manette permettra de passer d’une animation à une autre.
Le potentiomètre 1 et 2 de la manette serviront à contrôler les animations.
Liste des animations à créer :
- Un cube de 5×5 pixels qui se déplace sur l’écran (sans la possibilité de sortir de l’écran). Le potentiomètre 1 gère le déplacement horizontal, le potentiomètre 2 le déplacement vertical.
- Des cercles partants du centre de l’écran et s’agrandissant. Le potentiomètre 1 gère la vitesse de l’animation.
- Des cercles de rayon 5 pixels placés aléatoirement sur l’écran changeant de place toutes les X millisecondes (X allant de 200 à 5000). Le potentiomètre 1 gère le nombre de cercles, le potentiomètre 2 gère le temps X.
Vous êtes ensuite libre d’ajouter toutes sortes d’animations pouvant être contrôlées à l’aide de la manette.
Rendu attendu
Vous produirez un diaporama afin de :
- présenter les capteurs et modules (description, fonctionnement, tension délivrée, correspondance mesure-tension, autres informations pouvant être importante, principe d’utilisation, etc.) ;
- présenter les câblages (schéma de câblage : vue platine et vu schématique, tableau des entrées-sorties) ;
- présenter les résultats des tests effectués (captures d’écran, analyses des résultats, exploitation des résultats pour retrouver la valeur mesurée) ;
- présenter les programmes (captures d’écrans et vidéo de fonctionnement du projet) et être capable d’expliquer le rôle de chaque blocs d’instructions.
Aides pour débuter le projet
Avant de commencer directement à chercher les solutions il est nécessaire de s’approprier le matériel et les notions non rencontré jusqu’à maintenant. Il est donc nécessaire de tester et de comprendre :
- Le fonctionnement de l’écran OLED.
- Le fonctionnement de la communication avec le protocole ESP-NOW.
Utilisation et fonctionnement de l’écran OLED
Pour utiliser l’écran il est nécessaire d’installer la bibliothèque U8g2 dans le gestionnaire de bibliothèque Arduino.
Pour vous aider à comprendre comment programmer l’écran et créer les animations demandées, voici un programme d’exemple :
Utilisation et fonctionnement du protocole ESP-NOW
Un tutoriel expliquant le fonctionnement de ce protocole propre à la communication entre ESP32 est disponible sur ce lien. Les bibliothèques à télécharger et les programmes d’exemples sont fournis. Vous devrez alors adapter les programmes afin d’envoyer les informations nécessaires depuis la carte ESP32 de la manette à la carte ESP32 de gestion de l’écran.
Pour aller plus loin
A la place de la manette, créer une application web permettant de contrôler les animations de l’écran. Vous choisirez pertinemment les éléments de contrôles dans votre application ainsi que sa charte graphique.