| Ligne 4 : | Ligne 4 : | ||
|Description=Ce projet s’inscrit dans une démarche POGL (Phénomène d’Occupation et de Gestion des Lieux), cherchant à matérialiser l’influence de la population sur un espace urbain. | |Description=Ce projet s’inscrit dans une démarche POGL (Phénomène d’Occupation et de Gestion des Lieux), cherchant à matérialiser l’influence de la population sur un espace urbain. | ||
|Categories=Matériel, Outils, Parts, Tools | |Categories=Matériel, Outils, Parts, Tools | ||
| − | |||
|Currency=EUR (€) | |Currency=EUR (€) | ||
|ItemLongDescription=L’installation combine un moteur pas à pas (ou servo) et un bandeau LED NeoPixel contrôlés par un ESP32, afin de faire monter un plaque perforer et faire un jeu de lumière. | |ItemLongDescription=L’installation combine un moteur pas à pas (ou servo) et un bandeau LED NeoPixel contrôlés par un ESP32, afin de faire monter un plaque perforer et faire un jeu de lumière. | ||
| − | === | + | <br /> |
| + | |||
| + | == 📊 L'utilisation des données == | ||
| + | Les données de fréquentation du tram sont entièrement simulées dans le tableau `tramDensite` car nous avons pas pu avoir les données en temps réel d'un point de vue RGPD. | ||
| + | |||
| + | Chaque entrée associe une heure (ex. "06:00", "07:00", "08:00") à un niveau de densité passagers : "faible", "moyenne" ou "elevee". | ||
| + | |||
| + | Ce jeu de données joue le rôle d’un scénario type de la journée : faible affluence tôt le matin, pic de densité entre 8h et 9h, puis retour progressif à une densité plus faible. | ||
| − | + | À partir de ces valeurs simulées, le programme pilote le moteur (angle de rotation) et l’anneau de LED (nuance de bleu) pour représenter visuellement la charge du tram en temps réel simulé. | |
| − | + | <br /> | |
| − | + | ---- | |
| − | + | ||
| − | + | == 🏗️ Notice de montage == | |
| − | + | <br /> | |
| − | + | ||
| − | + | === 1. Présentation Générale === | |
| − | + | Le Dense‑e‑mètre est un objet lumineux interactif composé d’un socle technique intégrant l’électronique, d’un système mécanique rotatif, d’un disque perforé diffusant la lumière, d’un ruban LED circulaire et d’un diffuseur cylindrique translucide. | |
| + | |||
| + | === 2. Éléments fournis === | ||
| + | |||
| + | * - Socle technique | ||
| + | * - Disque perforé | ||
| + | * - Crémaillère verticale | ||
| + | * - Moteur pas‑à‑pas | ||
| + | * - Ruban LED circulaire | ||
| + | * - Carte microcontrôleur et driver | ||
| + | * - Diffuseur translucide | ||
| + | * - Câblage et alimentation | ||
| + | |||
| + | === 3. Étapes de montage === | ||
| − | + | # Installer le moteur sur la paroi centrale. | |
| + | # Engager la crémaillère avec le pignon moteur. | ||
| + | # Fixer le disque perforé sur l’axe vertical. | ||
| + | # Positionner le ruban LED en cercle. | ||
| + | # Raccorder les éléments électroniques. | ||
| + | # Installer le diffuseur cylindrique. | ||
| + | # Effectuer un test de fonctionnement. | ||
| − | + | === 4. Utilisation === | |
| + | Brancher l’alimentation USB. Le système lumineux et mécanique se met en mouvement automatiquement. | ||
| + | === 5. Sécurité === | ||
| + | Ne pas ouvrir le socle sous tension. Ne pas forcer les éléments mobiles. Usage intérieur uniquement. | ||
| + | <br /> | ||
----<br /> | ----<br /> | ||
| − | |||
==🔧 Matériel utilisé== | ==🔧 Matériel utilisé== | ||
{| class="wikitable" | {| class="wikitable" | ||
| Ligne 44 : | Ligne 72 : | ||
|12 LEDs RGB | |12 LEDs RGB | ||
|- | |- | ||
| − | |📜 Papier rugueux et épais | + | |📜 Papier rugueux et épais |
|décorer et refléter la lumière | |décorer et refléter la lumière | ||
|environ 60cmx15cm selon la taille du POGL | |environ 60cmx15cm selon la taille du POGL | ||
|- | |- | ||
|🪞Papier réfléchissant perforer | |🪞Papier réfléchissant perforer | ||
| − | |laisse passer plus ou moins la lumière | + | |laisse passer plus ou moins la lumière |
| − | |15cm de diamètre, trou aléatoire 1cm de diamètre | + | |15cm de diamètre, trou aléatoire 1cm de diamètre |
|} | |} | ||
----<br /> | ----<br /> | ||
| + | ==🔩 Étapes de fonctionnement== | ||
| + | #État 1 — Calme / Faible affluence | ||
| + | #*Le socle est en position basse. | ||
| + | #*Les LEDs émettent une lumière bleu-gris claire (calme, froide). | ||
| + | #État 2 — Activité moyenne | ||
| + | #*Le socle monte d’un palier. | ||
| + | #*La couleur devient plus vive (bleu profond / turquoise). | ||
| + | #État 3 — Forte affluence | ||
| + | #*Le socle atteint sa position haute. | ||
| + | #*Les LEDs virent au bleu-blanc lumineux, la “ville” est en mouvement. | ||
| + | |||
| + | Le passage d’un état à l’autre peut être déclenché : | ||
| + | |||
| + | *par une API simulant l’affluence (valeur numérique 0 → 1 → 2 → 3 ) | ||
| + | |||
| + | <br /> | ||
| + | ----<br /> | ||
==🧰 Librairies Arduino== | ==🧰 Librairies Arduino== | ||
| Ligne 73 : | Ligne 118 : | ||
├── [APP] setup(), loop() non-bloquante (tick simulation) | ├── [APP] setup(), loop() non-bloquante (tick simulation) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| + | ---- | ||
| − | + | == ⌨️ Algorithme à mettre dans l'ESP32 == | |
| + | {{#annotatedImageLight:Fichier:Item-POGL Dance e metre sketch.ino|0=1px|hash=|jsondata=|mediaClass=Image|type=frameless|align=center|src=https://www.wikidebrouillard.org/images/f/f4/Item-POGL_Dance_e_metre_sketch.ino|href=./Fichier:Item-POGL Dance e metre sketch.ino|resource=./Fichier:Item-POGL Dance e metre sketch.ino|caption=Code esp32|size=1px}}<br /> | ||
| + | ----<br /> | ||
==📚 Bibliographie== | ==📚 Bibliographie== | ||
| Ligne 80 : | Ligne 128 : | ||
*https://boxes.hackerspace-bamberg.de/ | *https://boxes.hackerspace-bamberg.de/ | ||
*https://docs.arduino.cc/ | *https://docs.arduino.cc/ | ||
| − | |||
}} | }} | ||
{{Tuto Status | {{Tuto Status | ||
|Complete=Published | |Complete=Published | ||
}} | }} | ||
Ce projet s’inscrit dans une démarche POGL (Phénomène d’Occupation et de Gestion des Lieux), cherchant à matérialiser l’influence de la population sur un espace urbain.
L’installation combine un moteur pas à pas (ou servo) et un bandeau LED NeoPixel contrôlés par un ESP32, afin de faire monter un plaque perforer et faire un jeu de lumière.
Les données de fréquentation du tram sont entièrement simulées dans le tableau `tramDensite` car nous avons pas pu avoir les données en temps réel d'un point de vue RGPD.
Chaque entrée associe une heure (ex. "06:00", "07:00", "08:00") à un niveau de densité passagers : "faible", "moyenne" ou "elevee".
Ce jeu de données joue le rôle d’un scénario type de la journée : faible affluence tôt le matin, pic de densité entre 8h et 9h, puis retour progressif à une densité plus faible.
À partir de ces valeurs simulées, le programme pilote le moteur (angle de rotation) et l’anneau de LED (nuance de bleu) pour représenter visuellement la charge du tram en temps réel simulé.
Le Dense‑e‑mètre est un objet lumineux interactif composé d’un socle technique intégrant l’électronique, d’un système mécanique rotatif, d’un disque perforé diffusant la lumière, d’un ruban LED circulaire et d’un diffuseur cylindrique translucide.
Brancher l’alimentation USB. Le système lumineux et mécanique se met en mouvement automatiquement.
Ne pas ouvrir le socle sous tension. Ne pas forcer les éléments mobiles. Usage intérieur uniquement.
| Composant | Rôle | Détails |
|---|---|---|
| 🧠 ESP32 | Microcontrôleur principal | Gère moteur + LEDs + API en wifi |
| ⚙️ Moteur pas à pas / Servo SG90 | Action mécanique du socle | 3 positions (basse, moyenne, haute) |
| 💡 Bandeau LED NeoPixel | Lumière d’ambiance | 12 LEDs RGB |
| 📜 Papier rugueux et épais | décorer et refléter la lumière | environ 60cmx15cm selon la taille du POGL |
| 🪞Papier réfléchissant perforer | laisse passer plus ou moins la lumière | 15cm de diamètre, trou aléatoire 1cm de diamètre |
Le passage d’un état à l’autre peut être déclenché :
Adafruit_NeoPixel.h → gestion des LEDs avec fil piloteServo.h ou Stepper.h → contrôle du moteur (selon le modèle choisi)
main.ino
├── [CONFIG] constantes moteur + LEDs
├── [DOMAIN] types (enum Densite, Color, TramPoint)
├── [DATA] scénario de simulation tram
├── [STATE] variables d'état (couleurs, index, timer)
├── [API HW] moteurs/LEDs (tournerMoteur, setTargetColor, smoothTransition, showColor)
├── [LOGIC] mapping densité → angle/couleur + traitement changement
├── [APP] setup(), loop() non-bloquante (tick simulation)Item-POGL_Dance_e_metre_IMG_5112.jpg Published
Vous avez entré un nom de page invalide, avec un ou plusieurs caractères suivants :
< > @ ~ : * € £ ` + = / \ | [ ] { } ; ? #