Sadržaj:

7 segmentni sat: 4 koraka (sa slikama)
7 segmentni sat: 4 koraka (sa slikama)

Video: 7 segmentni sat: 4 koraka (sa slikama)

Video: 7 segmentni sat: 4 koraka (sa slikama)
Video: 10 видов опор для пионов, гортензий и хризантем 2024, Juli
Anonim
Image
Image
7 Segmentni sat
7 Segmentni sat
7 Segmentni sat
7 Segmentni sat

Nakon nekoliko godina korištenja, moj analogni sat je definitivno mrtav.

U međuvremenu sam tražio projekt 3d sata za ispis sa mojom Prusom, pa sam našao 7 -segmentni sat koji će pokretati ws2812 LED diode i Arduino.

Mislio sam da je moć tih LED dioda prikazati veliki raspon boja, pa je pitanje bilo, kako kombinirati više boja na digitalnom satu?

Zatim se pojavila ideja da sat prilagodite sljedećim značajkama:

- 7 različitih prijelaza s promjenom minuta

- 3 unaprijed postavljene boje za vremenske intervale

- intenzitet ambijentalnog svjetla automatski prigušen

- automatsko isključivanje/pokretanje kada nema potrebe za prikazivanjem vremena

- automatsko podešavanje ljetnog računanja vremena

Supplies

Projekat se može izvesti pomoću 3D štampača ili googlanjem za projekte sa 7 segmentnih satova. Neko ih je napravio i od kartona.

Takođe je potrebno:

  • Arduino nano
  • photo chell
  • trenutno dugme
  • prekidač za uključivanje/isključivanje
  • DC utikač
  • 5V transformator
  • n ° 30 WS2812 LED dioda (model 30 LED/metar)
  • pcb
  • DS3231 modul
  • tanki kabeli za spajanje LED dioda
  • otpornici 10K, 550
  • lemljenje
  • ljepilo
  • džemperi
  • zaglavlja muško/žensko

Korak 1: Štampanje i ožičenje…

Štampanje i ožičenje…
Štampanje i ožičenje…
Štampanje i ožičenje…
Štampanje i ožičenje…
Štampanje i ožičenje…
Štampanje i ožičenje…

Originalni projekt na Thingverse -u je malo izmijenjen. (Zahvaljujući korisniku random1101)

Dvije točke su povećane kako bi odgovarale LED verziji koja se koristila za ovaj projekt. Jedan od tri zadnja poklopca je takođe modifikovan tako da odgovara PCB -u. Promenjena je i baza sata.

Glavni posao je lemljenje LED dioda. Prvo sam nastavio sa lemljenjem LED dioda izvan stražnje strane cifre za 3D ispis, a zatim ih umetnuo u njih.

Sedma led prva znamenka koja počinje slijeva bit će spojena na prvu vodicu sljedeće znamenke. Na kraju četvrte znamenke spojite dvije tačke sa LED diodama, one će biti označene brojevima 28 i 29 unutar niza.

LED sekvenca se može mijenjati mijenjanjem nekih parametara u Arduino biblioteku kako je objašnjeno u nastavku.

Nakon povezivanja, većina posla je obavljena.

Korak 2: Sklapanje PCB -a

Sastavljanje PCB -a
Sastavljanje PCB -a
Sastavljanje PCB -a
Sastavljanje PCB -a
Sastavljanje PCB -a
Sastavljanje PCB -a
Sastavljanje PCB -a
Sastavljanje PCB -a

Sada je vrijeme za sastavljanje tiskane ploče na kojoj će se lemiti neki otpornici, zaglavlja itd. Komponente za povezivanje Arduina su:

Gumb spojen između Arduino pina 3 i GND-a s unutarnjim pull-up otpornikom.

Senzor svjetla spojen kao razdjelnik napona, između Arduino pina A7 i GND. Dodajte i 10K otpornik između A7 i +5V ……… VELIKA GREŠKA

svjetlosni senzor između +5V i A7 pina i 10K otpornika između A/ pina i GND

DS3231 modul povezan preko i2c i SQW pina na Arduino prekidni pin 2

Led spojeni na pin 5 do 550Ohm otpornik.

Korak 3: Skica

Postoji mnogo prilagodbi koje se mogu izvršiti unutar skice.

Uštedom biblioteke ljetnog računa vremena upravljaju parametri TimeChangeRule, za više informacija pogledajte biblioteku JChristensen na Githubu.

Automatskim gašenjem unutar petlje upravlja varijabla int gotosleep. U mom slučaju u 0:00 Arduino prelazi u stanje mirovanja, a zatim se sat isključuje.

Postavljanjem ALARMA na DS3231 modulu putem varijable int gotosleep, omogućite Arduinu da se probudi iz načina mirovanja. U mom slučaju u 7:00 ujutro.

Još jedna značajka je promjena boje sata tokom dana unutar funkcije:

void printDateTime (time_t t, const char *tz)

U mojim postavkama od h 0:00 do 12:00 vrijeme je prikazano crvenom bojom, od 12:00 do 17:00 zelenom i od 17:00 do 0:00 uglavnom plavom bojom. Ovo je najbolje balansiranje boja do sada pronađeno za dobar kontrast s bijelim zidom iza.

Značajka prijelaza omogućuje promjenu animirane boje pri promjeni minute. Postoji 6 različitih koje možete izabrati pritiskom na dugme za trenutak, sedma opcija je bez prelaza. Ona koja mi se sviđa zove se newrandom () koja je unaprijed postavljena (int mode = 1;).

Napravio sam neke izmjene u biblioteci radi kompatibilnosti sa LED sekvencom. Unutar datoteke segment_display.cpp, na kraju, prekidačem (i) možete izmijeniti svoj LED niz. Kada završite, zamijenite datoteku unutra

/Arduino/biblioteke/7segment_NeoPixel-master

Potrebne biblioteke:

  • avr.sleep
  • segment_display
  • DS3231
  • TimeLib
  • Žica
  • Adafruit NeoPixel
  • Vremenska zona

Korak 4: Vrijeme je za rastanak

Sviđa mi se ovaj sat, trenutno vrijeme je jasno vidljivo izdaleka i isključuje se kad mi ne treba.

Kako je moguće tražiti više od sata?

Preporučuje se: