Innholdsfortegnelse:

7 segmentklokke: 4 trinn (med bilder)
7 segmentklokke: 4 trinn (med bilder)

Video: 7 segmentklokke: 4 trinn (med bilder)

Video: 7 segmentklokke: 4 trinn (med bilder)
Video: 16 ошибок штукатурки стен. 2024, Juli
Anonim
Image
Image
7 segmentklokke
7 segmentklokke
7 segmentklokke
7 segmentklokke

Etter flere års bruk, var min analoge klokke definitivt død.

I mellomtiden var jeg på utkikk etter et 3D -klokkeprosjekt for å skrive ut med Prusa, så jeg fant en 7 -segmentsklokke som skulle drives av ws2812 leds og Arduino.

Jeg trodde at kraften til disse lysdiodene er å vise et stort utvalg av farger, da var spørsmålet, hvordan kombinere flere farger på en digital klokke?

Så ideen om å tilpasse klokken med følgende funksjoner:

- 7 forskjellige minuttbytteoverganger

- 3 forhåndsinnstilte farger for tidsluker

- automatisk lysstyrke for omgivelseslys

- automatisk avstengning/start når det ikke er behov for å vise tid

- automatisk sommertid justering

Rekvisita

Prosjektet kan utføres ved hjelp av en 3D -skriver eller googling for prosjekter med 7 segmentklokker. Noen har laget dem med papp også.

Det er også behov for:

  • Arduino nano
  • fotocelle
  • øyeblikkelig trykknapp
  • På / av bryter
  • DC -kontakt
  • 5V transformator
  • n ° 30 WS2812 leds (modell 30 leds/meter)
  • PCB
  • DS3231 -modul
  • tynne kabler for lysdioder
  • motstander 10K, 550
  • loddetinn
  • lim
  • hoppere
  • overskrifter mann/kvinne

Trinn 1: Skrive ut og koble til…

Skrive ut og koble til…
Skrive ut og koble til…
Skrive ut og koble til…
Skrive ut og koble til…
Skrive ut og koble til…
Skrive ut og koble til…

Det opprinnelige prosjektet på Thingverse er litt modifisert. (Takk til bruker random1101)

De to prikkene ble forstørret for å passe til ledet versjon som ble brukt til dette prosjektet. Ett av tre bakdeksler ble også modifisert for å passe til kretskort. Endret også klokkebase.

Hovedarbeidet er å lodde lysdioder. For det første har jeg fortsatt med lodding av lysdioder utenfor baksiden av 3d -utskriftssifret, og deretter satt inn i den.

Den syvende ledden på det første sifferet som starter fra venstre, vil bli koblet til den første leddet i det neste sifferet. På slutten av fjerde siffer kobler du til de to prikkene, de blir nummerert 28 og 29 inne i sekvensen.

LED -sekvensen kan endres ved å endre noen parametere til Arduino -biblioteket som forklart nedenfor.

Når den er tilkoblet, har det meste av arbeidet blitt utført.

Trinn 2: Montering av PCB

Montering av PCB
Montering av PCB
Montering av PCB
Montering av PCB
Montering av PCB
Montering av PCB
Montering av PCB
Montering av PCB

Nå er det på tide å sette sammen en kretskort der noen loddemodeller, hoder osv. Loddes. Komponentene for å koble Arduino er:

Trykknapp tilkoblet mellom Arduino pin 3 og GND med intern opptrekkmotstand.

Lyssensor koblet som en spenningsdeler, mellom Arduino pin A7 og GND. Legg også til 10K motstand mellom A7 og +5V ……… STOR FEIL

lyssensor mellom +5V og A7 pin og 10K motstand mellom A/ pin og GND

DS3231 modul koblet via i2c og SQW pin til Arduino interrupt pin 2

Lysdioder koblet til pin 5 til 550Ohm motstand.

Trinn 3: Skissen

Det er mange tilpasninger som kan gjøres inne i skissen.

Lagring av sommertid -biblioteket håndteres av parametere TimeChangeRule, se JChristensen -biblioteket på Github for mer informasjon.

Automatisk avstengning inne i løkken håndteres av variabel int gotosleep. I mitt tilfelle klokken 0:00 går Arduino i hvilemodus, så slås klokken av.

Når du setter ALARM på DS3231 -modulen via variabel int gotosleep, lar Arduino våkne fra hvilemodus. I mitt tilfelle kl. 7.00 om morgenen.

En annen funksjon er å endre klokkefarge i løpet av dagen inne -funksjonen:

void printDateTime (time_t t, const char *tz)

I mine innstillinger fra t 0:00 til 12:00 vises klokkeslettet med rødt, fra 12:00 til 17:00 grønt og fra 17:00 til 0:00 for det meste blått. Dette er den beste fargebalanseringen hittil for en god kontrast med den hvite veggen bak.

Med overgangsfunksjonen kan du ha en animert fargeovergang når minuttene endres. Det er 6 forskjellige som kan velges ved å trykke på den øyeblikkelige knappen. Det syvende alternativet er uten overganger. Den jeg liker heter newrandom () som er forhåndsinnstilt (int mode = 1;).

Jeg har gjort noen endringer i biblioteket for kompatibilitet med led -sekvens. På innsiden av filen segment_display.cpp, på slutten, bytt (i) kan du endre led -sekvensen. Når du er ferdig, erstatt filen inne

/Arduino/biblioteker/7segment_NeoPixel-master

Biblioteker kreves:

  • avr.sov
  • segment_display
  • DS3231
  • TimeLib
  • Metalltråd
  • Adafruit NeoPixel
  • Tidssone

Trinn 4: Det er på tide å si farvel

Jeg liker denne klokken, den nåværende tiden er tydelig synlig langt fra, og den slås av når jeg ikke trenger det.

Hvordan kan du be om mer fra en klokke?

Anbefalt: