Projet Final - Minuteur
Polina- Souad - Souamaila
Pour
- Base
final:deImpressionprototypage,3DnoustailleavonspetitedéciderÃdemoyennefaire(10-un15minuteur.cm) - Minuteurs
quji:diffère10ceplexiglassminuteuret allumer avec desautresledsc'est - arduino :
il s'allume avec le temps qui coule. Ceci va permet a l'utilisateur de facilement reper le temps qu'il reste. C'est donc un outil à la fois esthétique et simple à utiliser.Nous avons fait construit le minuteur en 3 partie :1- la Base qui sert comme support2- le plexiglass qui sert comme repère du temps3- l'arduinopour programmer letemps.tempsCi-dessous - LED
allonsadressablesvous(typeexpliquerWS2812B)
Base :
Objectif :Nous avons concever la base en utilisant10 Fusionminutes 360.→ 10 segments s’allument progressivementLadonc base1 sertsegment = 1 minute
- Arduino (Uno ou Nano)
- Bande LED WS2812B (NeoPixel) → hyper simple Ã
soutenircontrôlerleindividuellement - Librairie :
Adafruit_NeoPixel - Temps total = 10 min = 600 000 ms
- Nombre de segments = 10
- Intervalle = 600 000 / 10 = 60 000 ms (1 min)
Code :
#include <Adafruit_NeoPixel.h>
#define PIN 6
#define NUM_LEDS 50 // adapte selon ta bande
#define SEGMENTS 10
Adafruit_NeoPixel strip(NUM_LEDS, PIN, NEO_GRB + NEO_KHZ800);
unsigned long previousMillis = 0;
const long interval = 60000; // 1 minute
int currentSegment = 0;
int ledsPerSegment;
void setup() {
strip.begin();
strip.show(); // tout éteint
ledsPerSegment = NUM_LEDS / SEGMENTS;
}
void loop() {
unsigned long currentMillis = millis();
if (currentMillis - previousMillis >= interval && currentSegment < SEGMENTS) {
previousMillis = currentMillis;
// Allumer un segment
for (int i = currentSegment * ledsPerSegment;
i < (currentSegment + 1) * ledsPerSegment; i++) {
strip.setPixelColor(i, strip.Color(0, 0, 255)); // bleu
}
strip.show();
currentSegment++;
}
}
#define PIN 6
#define NUM_LEDS 50 // adapte selon ta bande
#define SEGMENTS 10
Adafruit_NeoPixel strip(NUM_LEDS, PIN, NEO_GRB + NEO_KHZ800);
unsigned long previousMillis = 0;
const long interval = 60000; // 1 minute
int currentSegment = 0;
int ledsPerSegment;
void setup() {
strip.begin();
strip.show(); // tout éteint
ledsPerSegment = NUM_LEDS / SEGMENTS;
}
void loop() {
unsigned long currentMillis = millis();
if (currentMillis - previousMillis >= interval && currentSegment < SEGMENTS) {
previousMillis = currentMillis;
// Allumer un segment
for (int i = currentSegment * ledsPerSegment;
i < (currentSegment + 1) * ledsPerSegment; i++) {
strip.setPixelColor(i, strip.Color(0, 0, 255)); // bleu
}
strip.show();
currentSegment++;
}
}