Page créée avec « {{Item |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 popu... » |
Aucun résumé des modifications |
||
| Ligne 6 : | Ligne 6 : | ||
|ItemLongDescription=L’installation combine un moteur pas à pas (ou servo) et un bandeau LED NeoPixel contrôlés par un ESP32. | |ItemLongDescription=L’installation combine un moteur pas à pas (ou servo) et un bandeau LED NeoPixel contrôlés par un ESP32. | ||
=== 🔩 Étapes de fonctionnement === | ===🔩 Étapes de fonctionnement=== | ||
# État 1 — Calme / Faible affluence | #État 1 — Calme / Faible affluence | ||
#* Le socle est en position basse. | #*Le socle est en position basse. | ||
#* Les LEDs émettent une lumière bleu-gris claire (calme, froide). | #*Les LEDs émettent une lumière bleu-gris claire (calme, froide). | ||
# État 2 — Activité moyenne | #État 2 — Activité moyenne | ||
#* Le socle monte d’un palier. | #*Le socle monte d’un palier. | ||
#* La couleur devient plus vive (bleu profond / turquoise). | #*La couleur devient plus vive (bleu profond / turquoise). | ||
# État 3 — Forte affluence | #État 3 — Forte affluence | ||
#* Le socle atteint sa position haute. | #*Le socle atteint sa position haute. | ||
#* Les LEDs virent au bleu-blanc lumineux, la “ville” est en mouvement. | #*Les LEDs virent au bleu-blanc lumineux, la “ville” est en mouvement. | ||
Le passage d’un état à l’autre peut être déclenché : | Le passage d’un état à l’autre peut être déclenché : | ||
* par une API simulant l’affluence (valeur numérique 0 → 1 → 2 → 3 ) | *par une API simulant l’affluence (valeur numérique 0 → 1 → 2 → 3 ) | ||
----<br /> | ----<br /> | ||
== 🔧 Matériel utilisé == | ==🔧 Matériel utilisé== | ||
{| class="wikitable" | {| class="wikitable" | ||
!Composant | !Composant | ||
| Ligne 32 : | Ligne 32 : | ||
|🧠 '''ESP32''' | |🧠 '''ESP32''' | ||
|Microcontrôleur principal | |Microcontrôleur principal | ||
|Gère moteur + LEDs + API | |Gère moteur + LEDs + API en wifi | ||
|- | |- | ||
|⚙️ '''Moteur pas à pas / Servo SG90''' | |⚙️ '''Moteur pas à pas / Servo SG90''' | ||
| Ligne 40 : | Ligne 40 : | ||
|💡 '''Bandeau LED NeoPixel''' | |💡 '''Bandeau LED NeoPixel''' | ||
|Lumière d’ambiance | |Lumière d’ambiance | ||
|12 LEDs RGB | |12 LEDs RGB | ||
|} | |} | ||
----<br /> | ----<br /> | ||
== 🧰 Librairies Arduino == | ==🧰 Librairies Arduino== | ||
* <code>Adafruit_NeoPixel.h</code> → gestion des LEDs | *<code>Adafruit_NeoPixel.h</code> → gestion des LEDs avec fil pilote | ||
* <code>Servo.h</code> ou <code>Stepper.h</code> → contrôle du moteur (selon le modèle choisi) | *<code>Servo.h</code> ou <code>Stepper.h</code> → contrôle du moteur (selon le modèle choisi) | ||
<br /> | <br /> | ||
----<br /> | ----<br /> | ||
== 👨🏻💻 Structure logicielle == | ==👨🏻💻 Structure logicielle== | ||
<syntaxhighlight lang="c"> | |||
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) | |||
</syntaxhighlight> | |||
==📚 Bibliographie== | |||
*https://github.com/benjaminbourlet/Fete_de_la_science_2025.git | |||
*https://boxes.hackerspace-bamberg.de/ | |||
*https://docs.arduino.cc/ | |||
*https://www.pinterest.com/ | |||
}} | }} | ||
{{Tuto Status | {{Tuto Status | ||
|Complete=Draft | |Complete=Draft | ||
}} | }} | ||
Pas encore d'image
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.
Le passage d’un état à l’autre peut être déclenché :
| 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 |
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)
Draft
Vous avez entré un nom de page invalide, avec un ou plusieurs caractères suivants :
< > @ ~ : * € £ ` + = / \ | [ ] { } ; ? #