Cuprins:

Ceas cu 7 segmente: 4 pași (cu imagini)
Ceas cu 7 segmente: 4 pași (cu imagini)

Video: Ceas cu 7 segmente: 4 pași (cu imagini)

Video: Ceas cu 7 segmente: 4 pași (cu imagini)
Video: Cel mai IEFTIN și mai ”POPULAR” SMARTWATCH din ROMÂNIA 2024, Iulie
Anonim
Image
Image
Ceas cu 7 segmente
Ceas cu 7 segmente
Ceas cu 7 segmente
Ceas cu 7 segmente

După câțiva ani de utilizare, ceasul meu analogic este definitiv mort.

Între timp, căutam un proiect de ceas 3d pentru a imprima cu Prusa mea, așa că am găsit un ceas pe 7 segmente care să fie condus de led-uri ws2812 și Arduino.

Am crezut că puterea acestor led-uri este să arate o gamă largă de culori, atunci întrebarea a fost, cum să combinați mai multe culori pe un ceas digital?

Apoi, ideea de a personaliza ceasul cu următoarele caracteristici:

- 7 tranziții diferite de schimbare a minutelor

- 3 culori prestabilite pentru intervale de timp

- intensitatea luminii ambientale se estompează automat

- oprire automată / pornire atunci când nu este nevoie să se afișeze ora

- reglare automată a orei de vară

Provizii

Proiectul poate fi executat folosind o imprimantă 3D sau googling pentru proiecte de ceasuri pe 7 segmente. Cineva le-a făcut și cu carton.

De asemenea, este nevoie de:

  • Arduino nano
  • fotografie chell
  • buton de moment
  • comutator pornire / oprire
  • Conector DC
  • Transformator de 5V
  • 30 leduri WS2812 (model 30 leduri / metru)
  • pcb
  • Modulul DS3231
  • cabluri subțiri pentru conexiuni led
  • rezistențe 10K, 550
  • lipit
  • lipici
  • săritori
  • anteturi masculin / feminin

Pasul 1: Tipărire și cablare…

Tipărire și cablare…
Tipărire și cablare…
Tipărire și cablare…
Tipărire și cablare…
Tipărire și cablare…
Tipărire și cablare…

Proiectul original de pe Thingverse a fost puțin modificat. (Mulțumim utilizatorului random1101)

Cele două puncte au fost mărite pentru a se potrivi versiunii cu led utilizate pentru acest proiect. Una din cele trei coperte din spate a fost, de asemenea, modificată pentru a se potrivi cu PCB. S-a schimbat și baza ceasului.

Lucrarea principală este lipirea ledurilor. Mai întâi am continuat ledurile de lipit în afara capacului posterior al cifrelor de imprimare 3D, apoi le-am introdus în el.

Cel de-al șaptelea led al primei cifre începând de la stânga va fi conectat la primul led al cifrei următoare. La sfârșitul celei de-a 4-a cifre, conectați cele două puncte led, acestea vor fi numerotate 28 și 29 în interiorul secvenței.

Secvența led poate fi modificată schimbând unii parametri în biblioteca Arduino, după cum se explică în continuare.

Odată conectat, cea mai mare parte a muncii a fost realizată.

Pasul 2: Asamblare PCB

Asamblare PCB
Asamblare PCB
Asamblare PCB
Asamblare PCB
Asamblare PCB
Asamblare PCB
Asamblare PCB
Asamblare PCB

Acum este timpul să asamblați un PCB unde lipiți niște rezistențe, anteturi etc. Componentele pentru conectarea Arduino sunt:

Buton conectat între pinul Arduino 3 și GND cu rezistor de tragere intern.

Senzor de lumină conectat ca divizor de tensiune, între pinul Arduino A7 și GND. Adăugați, de asemenea, rezistență de 10K între A7 și + 5V …… GREȘE MARE

senzor de lumină între + 5V și A7 pin și rezistență de 10K între A / pin și GND

Modulul DS3231 conectat prin pinul i2c și SQW la pinul de întrerupere 2 Arduino

Leduri conectate la pinul 5 până la rezistorul 550Ohm.

Pasul 3: Schița

Există multe personalizări care pot fi făcute în interiorul schiței.

Salvarea bibliotecii de vară este gestionată de parametrii TimeChangeRule, consultați biblioteca JChristensen de pe Github pentru mai multe informații.

Oprirea automată în interiorul buclei este gestionată de variabila int gotosleep. În cazul meu la 0:00 Arduino intră în modul de repaus, apoi ceasul se oprește.

Setarea ALARM pe modulul DS3231 prin variabila int gotosleep, permite Arduino să se trezească din modul de repaus. În cazul meu la 7:00 dimineața.

O altă caracteristică este schimbarea culorii ceasului în timpul funcției din interiorul zilei:

void printDateTime (time_t t, const char * tz)

În setările mele de la ora 0:00 la 12:00 ora este afișată în roșu, de la 12:00 la 17:00 verde și de la 17:00 la 0:00 mai ales albastră. Aceasta este cea mai bună echilibrare a culorilor găsită până acum pentru un contrast bun cu peretele alb din spate.

Funcția de tranziții permite o tranziție animată a culorilor la schimbarea minutului. Există 6 diferite care pot fi alese apăsând butonul momentan, a 7-a opțiune este fără tranziții. Cel care îmi place se numește newrandom (), care este setarea (modul int = 1;).

Am făcut câteva modificări bibliotecii pentru compatibilitatea cu secvența cu leduri. În interiorul fișierului segment_display.cpp, la final, comutați (i) puteți modifica secvența de leduri. După ce ați terminat, înlocuiți fișierul din interior

/ Arduino / libraries / 7segment_NeoPixel-master

Biblioteci necesare:

  • avr.dorm
  • segment_display
  • DS3231
  • TimeLib
  • Sârmă
  • Adafruit NeoPixel
  • Fus orar

Pasul 4: Este timpul să ne luăm la revedere

Îmi place acest ceas, ora curentă este clar vizibilă de departe și se oprește când nu am nevoie.

Cum ar putea cere mai mult de la un ceas?

Recomandat: