Sisällysluettelo:

7 segmenttikello: 4 vaihetta (kuvien kanssa)
7 segmenttikello: 4 vaihetta (kuvien kanssa)

Video: 7 segmenttikello: 4 vaihetta (kuvien kanssa)

Video: 7 segmenttikello: 4 vaihetta (kuvien kanssa)
Video: Lista Päälle osa 7 - BIISONIMAFIA 2024, Heinäkuu
Anonim
Image
Image
7 Segmenttikello
7 Segmenttikello
7 Segmenttikello
7 Segmenttikello

Usean vuoden käytön jälkeen analoginen kelloni on lopullisesti kuollut.

Samaan aikaan etsin 3D -kelloprojektia tulostettavaksi Prusallani, joten löysin 7 -segmenttisen kellon, jota ohjaavat ws2812 -ledit ja Arduino.

Ajattelin, että ledien voima on näyttää laaja värivalikoima, ja kysymys oli, kuinka yhdistää useita värejä digitaaliseen kelloon?

Sitten idea mukauttaa kello seuraavilla ominaisuuksilla:

- 7 eri minuutin muutoksen siirtymää

- 3 esiasetettua väriä aikaväleille

- ympäristön valon voimakkuus automaattinen himmennys

- automaattinen sammutus/käynnistys, kun aikaa ei tarvitse näyttää

- automaattinen kesäajan säätö

Tarvikkeet

Projekti voidaan suorittaa käyttämällä 3D -tulostinta tai googlaamalla 7 -segmenttisten kellojen projekteja. Joku teki ne myös pahvilla.

Tarvitaan myös:

  • Arduino nano
  • valokuva chell
  • hetkellinen painike
  • on / off kytkin
  • DC -pistoke
  • 5V muuntaja
  • nro 30 WS2812 -lediä (malli 30 lediä/metri)
  • pcb
  • DS3231 -moduuli
  • ohuet kaapelit led -liitäntöihin
  • vastukset 10K, 550
  • juottaa
  • liima
  • puserot
  • otsikot mies/nainen

Vaihe 1: Tulostus ja johdotus…

Tulostus ja johdotus…
Tulostus ja johdotus…
Tulostus ja johdotus…
Tulostus ja johdotus…
Tulostus ja johdotus…
Tulostus ja johdotus…

Alkuperäinen Thingverse -projekti on hieman muokattu. (Kiitos käyttäjän random1101)

Kaksi pistettä suurennettiin sopimaan tähän projektiin käytettyyn led -versioon. Yksi kolmesta takakannesta muutettiin myös sopivaksi piirilevylle. Myös kellopohja vaihdettu.

Päätehtävä on ledien juottaminen. Olen ensin juottanut ledit 3D -tulostusnumeron takakannen ulkopuolelle ja asettanut sen sitten siihen.

Ensimmäisen vasemmalta alkavan numeron seitsemäs led yhdistetään seuraavan numeron ensimmäiseen lediin. Yhdistä neljännen numeron lopussa kaksi piste -lediä, ne numeroidaan 28 ja 29 sarjan sisällä.

Led -sekvenssiä voidaan muuttaa muuttamalla joitain parametreja Arduino -kirjastoon seuraavasti.

Kun yhteys on muodostettu, suurin osa työstä on tehty.

Vaihe 2: Piirilevyn kokoaminen

PCB -kokoonpano
PCB -kokoonpano
PCB -kokoonpano
PCB -kokoonpano
PCB -kokoonpano
PCB -kokoonpano
PCB -kokoonpano
PCB -kokoonpano

Nyt on aika koota piirilevy, jossa juotetaan joitain vastuksia, otsikoita jne. Arduinon yhdistämiseen käytettävät komponentit ovat:

Painike, joka on kytketty Arduino-nastan 3 ja GND: n väliin sisäisellä vetovastuksella.

Valoanturi kytketty jännitteenjakajaksi Arduinon nastan A7 ja GND väliin. Lisää myös 10K vastus A7: n ja +5 V: n väliin ……… SUURI VIRHE

valoanturi +5V ja A7 nastan välillä ja 10K vastus A/ nastan ja GND: n välillä

DS3231 -moduuli, joka on kytketty i2c- ja SQW -nastan kautta Arduinon keskeytystapaan 2

Ledit kytketty nastaan 5 - 550 ohmia.

Vaihe 3: Luonnos

Luonnoksen sisällä voidaan tehdä monia mukautuksia.

Kesäaikaa säästävä kirjasto hoidetaan parametreilla TimeChangeRule, katso lisätietoja JChristensen -kirjastosta Githubissa.

Automaattinen sammutus silmukan sisällä hoitaa muuttuva int gotosleep. Minun tapauksessani 0:00 Arduino siirtyy lepotilaan, jolloin kello sammuu.

Kun asetat HÄLYTYKSEN DS3231 -moduuliin muuttuvan gotosleepin avulla, anna Arduinon herätä lepotilasta. Minun tapauksessani klo 7.00 aamulla.

Toinen ominaisuus on muuttaa kellon väriä päivän aikana sisätoiminnon aikana:

void printDateTime (time_t t, const char *tz)

Asetuksissani klo 0:00 - 12:00 aika näkyy punaisena, 12:00 - 17:00 vihreänä ja 17:00 - 0:00 enimmäkseen sinisenä. Tämä on paras tähän mennessä löydetty väritasapaino, joka on hyvä kontrasti takana olevan valkoisen seinän kanssa.

Siirtymäominaisuus mahdollistaa animoidun värinsiirron, kun minuutti muuttuu. On 6 erilaista, jotka voidaan valita painamalla hetkellistä painiketta, seitsemäs vaihtoehto on ilman siirtymiä. Se, josta pidän, on nimeltään newrandom (), joka on esiasetettu (int -tila = 1;).

Olen tehnyt joitakin muutoksia kirjastoon yhteensopivuuden led -sekvenssin kanssa. Tiedoston segment_display.cpp sisällä, lopussa, kytkin (i) voit muokata led -järjestystäsi. Kun olet valmis, korvaa sisällä oleva tiedosto

/Arduino/kirjastot/7segment_NeoPixel-master

Tarvittavat kirjastot:

  • avr. uni
  • segmentti_näyttö
  • DS3231
  • TimeLib
  • Johto
  • Adafruit NeoPixel
  • Aikavyöhyke

Vaihe 4: On aika sanoa hyvästit

Pidän tästä kellosta, nykyinen aika näkyy selvästi kaukaa ja se sammuu, kun en tarvitse.

Miten kellolta voisi pyytää enemmän?

Suositeltava: