Taula de continguts:

LEDura - Rellotge LED analògic: 12 passos (amb imatges)
LEDura - Rellotge LED analògic: 12 passos (amb imatges)

Vídeo: LEDura - Rellotge LED analògic: 12 passos (amb imatges)

Vídeo: LEDura - Rellotge LED analògic: 12 passos (amb imatges)
Vídeo: ПРИВОЗ. ОДЕССА. ЦЕНЫ. САЛО КАРТИНА МАСЛОМ. ЯНВАРЬ. ПОДАРОК ОТ СЕРЁГИ 2024, Desembre
Anonim
LEDura - Rellotge LED analògic
LEDura - Rellotge LED analògic
LEDura - Rellotge LED analògic
LEDura - Rellotge LED analògic
LEDura - Rellotge LED analògic
LEDura - Rellotge LED analògic

Projectes Tinkercad »

Després de molt de temps realitzant diversos projectes, vaig decidir fer-me un instructible. Per al primer, us guiaré a través del procés de fabricació del vostre propi rellotge analògic fet amb un impressionant anell LED adreçable. L’anell interior mostra les hores, l’anell exterior mostra minuts i segons.

A més de mostrar l'hora, el rellotge també pot mostrar la temperatura de l'habitació i pot ser una decoració molt agradable a l'habitació. Cada 15 minuts, el rellotge també produeix alguns efectes especials: el vídeo els mostra tots; assegureu-vos de comprovar-ho. Amb l'ajut de 2 botons i un potenciòmetre, l'usuari pot triar entre diferents modes i colors de modificació segons el seu propi desig. També l'he actualitzat per atenuar automàticament els LED si l'habitació es fa fosca, de manera que l'usuari no es molestarà durant la nit.

El rellotge es pot col·locar a l’escriptori, a la taula de llit o penjar-lo de la paret.

Nota: les imatges no són tan bones com la vista de la realitat a causa de la brillantor alta.

Pas 1: com llegir-lo?

Com llegir-lo?
Com llegir-lo?

El rellotge té 2 timbres: un més petit per mostrar hores i un més gran per mostrar minuts i segons. Alguns LED s’encenen tot el temps: l’anomenada brúixola que indica les posicions principals del rellotge. A l'anell horari representa el rellotge de 3, 6, 9 i 12'o, a l'anell minut representa 15, 30, 45 i 0 minuts.

Pas 2: què necessiteu

Què necessitaràs
Què necessitaràs

Materials:

  • 1x Arduino Nano (també podeu utilitzar qualsevol altre Arduino)
  • 1x mòdul DS3231 RealTimeClock
  • 1x anell LED dirigible - 60 LEDs
  • 1 anell LED dirigible - 24 LEDs
  • 2 botons (NO - normalment obert)
  • Potenciòmetre 1x 100kOhm
  • 1 font d'alimentació de 5 V (capaç de subministrar 1 Amp)
  • 1x connector d'alimentació
  • Alguns cables
  • 1x resistència de 10kOhm
  • 1x fotoresistència

  • Tauler previ (opcional)
  • Connectors de cable de bloc de terminals (opcional)
  • Fusta de 25 mm de gruix, mida mínima de 22cmx22cm
  • Plàstic de PVC de 1mm de mida 1mm, mida 20cmx20xm

Eines:

  • Eines bàsiques per a l'electrònica de construcció (soldador, alicates, tornavís, …)
  • Màquina de trepar
  • Pistola de cola calenta
  • Paper de sorra i una mica de vernís de fusta
  • Màquina CNC (potser algun amic la té)

Pas 3: Components electrònics: antecedents

Components electrònics: antecedents
Components electrònics: antecedents
Components electrònics: antecedents
Components electrònics: antecedents
Components electrònics: antecedents
Components electrònics: antecedents

DS3231

Podríem determinar el temps fent servir Arduinos construït en un oscil·lador i un temporitzador, però vaig decidir utilitzar un mòdul dedicat al rellotge en temps real (RTC), que pot fer un seguiment del temps fins i tot si desconnectem el rellotge de la seva font d'alimentació. La placa DS3231 té una bateria que proporciona energia quan el mòdul no està connectat a la font d'alimentació. També és més precís en períodes de temps més llargs que la font del rellotge Arduinos.

DS3231 RTC utilitza la interfície I2C per comunicar-se amb el microcontrolador, molt senzill d’utilitzar i només necessitem 2 cables per comunicar-nos-hi. El mòdul també proporciona un sensor de temperatura, que s’utilitzarà en aquest projecte.

Important: si teniu previst fer servir una bateria no recarregable per al mòdul RTC, heu de des soldar la resistència de 200 ohm o el díode 1N4148. En cas contrari, la bateria pot explotar. Podeu trobar més informació en aquest enllaç.

Anell LED WS2812

Vaig decidir utilitzar 60 anells LED per fer un seguiment dels minuts i 24 anells LED durant hores. Els podeu trobar a Adafruit (neoPixel ring) o algunes versions barates a eBay, Aliexpress o altres botigues web. Hi ha una gran diversitat entre les tires de led adreçables i, si és la primera vegada que hi jugueu, us recomano que llegiu algunes descripcions d’ús; aquí teniu alguns enllaços útils:

https://www.tweaking4all.com/hardware/arduino/adr…

https://randomnerdtutorials.com/guide-for-ws2812b…

La tira LED adreçable té 3 connectors: 5V, GND i DI / DO. Els dos primers són per alimentar els LED, l'últim és per a les dades. Aneu amb compte mentre connecteu l'anell a Arduino: la vostra línia de dades ha d'estar connectada al pin DI (data IN).

Arduino

Estic fent servir Arduino Nano perquè és prou petit i suficient per a aquest projecte. Podeu utilitzar gairebé qualsevol altre Arduino, però heu de tenir precaució mentre ho connecteu tot. Els botons i els anells LED poden estar als mateixos pins, però els connectors I2C (per al mòdul RTC) poden diferir d’una plataforma a una altra; consulteu el seu full de dades.

Pas 4: Electrònica: font d'alimentació

Electrònica: font d'alimentació
Electrònica: font d'alimentació

Les dues bandes Arduino i LED han de subministrar-se amb una font d’alimentació de 5V, de manera que sabem quina tensió es necessita. Com que el LED sona, dibuixa bastants amplificadors, no podem alimentar-lo directament amb Arduino, que pot suportar un màxim de 20 mA a la seva sortida digital. Segons les meves mesures, els anells LED poden arribar fins a 500 mA. És per això que vaig comprar un adaptador que pot subministrar fins a 1A.

Amb la mateixa font d'alimentació que volem alimentar Arduino i LEDs, aquí heu de tenir precaució.

Atenció! Tingueu molta precaució quan proveu la tira LED: l'adaptador de corrent NO s'ha de connectar a Arduino, quan Arduino també està connectat a l'ordinador amb connector USB (podeu danyar el port USB de l'ordinador).

Nota: als esquemes següents he utilitzat el commutador normal per seleccionar si Arduino s’alimenta mitjançant una font d’alimentació o mitjançant un connector USB. Però al perfboard podeu veure que he afegit una capçalera de pin per seleccionar de quina font d’energia s’alimenta Arduino.

Pas 5: electrònica: soldadura

Electrònica: soldadura
Electrònica: soldadura
Electrònica: soldadura
Electrònica: soldadura
Electrònica: soldadura
Electrònica: soldadura
Electrònica: soldadura
Electrònica: soldadura

Quan reuneix totes les parts, és hora de soldar-les juntes.

Com que volia fer que el cablejat estigués ordenat, vaig utilitzar perfboard i algun connector de bloc de terminals per als cables, de manera que puc desconnectar-los en cas de modificacions. Això és opcional: també podeu soldar els cables directament a l’Arduino.

Un consell: és més fàcil si imprimiu els esquemes de manera que els tingueu davant mentre soldeu. I comproveu-ho tot abans de connectar-lo a la font d'alimentació.

Pas 6: Programari: antecedents

IDE Arduino

Programarem Arduino amb el seu programari dedicat: Arduino IDE. Si jugueu amb Arduino per primera vegada, us recomano que consulteu alguns instruccions sobre com fer-ho. Ja hi ha molts tutorials al web, així que no aniré als detalls.

Biblioteca

Vaig decidir utilitzar la biblioteca FastLED en lloc de la popular Adafruit. Té algunes funcions matemàtiques ben ordenades amb les quals podeu fer grans efectes (fins als desenvolupadors!). Podeu trobar la biblioteca al seu dipòsit GitHub, però he afegit el fitxer.zip de la versió que estic fent servir al meu codi.

Si us pregunteu, com afegir una biblioteca externa a Arduino IDE, podeu consultar algunes instruccions ja fetes

Per al mòdul de rellotge he utilitzat la biblioteca Arduino per al rellotge en temps real (RTC) DS3231 (enllaç), que podeu instal·lar fàcilment a Arduino IDE. Quan estigueu a IDE, feu clic a Dibuix → Inclou biblioteca → Gestiona biblioteques … i, a continuació, filtreu la cerca amb el nom anterior.

Nota: Per alguna raó, actualment no puc afegir fitxers.zip. Podeu trobar la biblioteca al meu dipòsit de GitHub.

Pas 7: Programari: codi

Programari - Codi
Programari - Codi
Programari - Codi
Programari - Codi

Estructura

L'aplicació està construïda amb 4 fitxers:

  • LEDclokc.ino Aquesta és l'aplicació principal d'Arduino, on podeu trobar funcions per controlar tot el rellotge: comencen amb el prefix CLOCK_.
  • LEDclokc.h aquí inclou definicions de connexió de pin i algunes configuracions de rellotge.
  • ring.cpp i ring.h heus aquí el meu codi per controlar els anells LED.

LEDclock.h

Aquí trobareu totes les definicions de rellotge. Al principi, hi ha definicions de cablejat. Assegureu-vos que siguin iguals que les vostres connexions. A continuació, hi ha configuracions de rellotge: aquí podeu trobar la macro per al nombre de modes que té el rellotge.

LEDclock.ino

Al diagrama, es representa el bucle principal. El codi primer comprova si es prem qualsevol botó. Degut a la naturalesa dels commutadors, hem d’utilitzar el mètode de rebbouncing per llegir els seus valors (podeu obtenir més informació sobre això a l’enllaç).

Quan es prem el botó 1, el mode variable augmenta 1, si es prem el botó 2, s'alça el tipus variable. Utilitzem aquestes variables per determinar quin mode de rellotge volem veure. Si es premen els dos botons alhora, es crida la funció CLOCK_setTime () perquè pugueu canviar l'hora del rellotge.

El codi posterior llegeix el valor del potenciòmetre i l’emmagatzema en variable, però aquest usuari variable pot canviar els colors del rellotge, la brillantor, etc.

A continuació, hi ha una declaració de cas majúscula. Aquí determinem en quin mode es troba actualment el rellotge i, per aquest mode, s’anomena la funció corresponent, que configura els colors dels LED. Podeu afegir els vostres propis modes de rellotge i tornar a escriure o modificar les funcions.

Tal com es descriu a la biblioteca FastLED, heu de trucar a la funció FastLED.show () al final, que converteix els LEDs en el color que anteriorment hem configurat.

Podeu trobar descripcions molt més detallades entre les línies de codi

A continuació s’adjunta tot el codi als fitxers següents.

SUGGERIMENT: podeu trobar tot el projecte al meu dipòsit de GitHub. Aquí el codi també s’actualitzarà si hi afegiré algun canvi.

Pas 8: feu el rellotge

Feu el rellotge
Feu el rellotge
Feu el rellotge
Feu el rellotge
Feu el rellotge
Feu el rellotge

Marc del rellotge

Vaig construir el marc del rellotge amb màquina CNC i fusta de 25 mm de gruix. Podeu trobar l'esbós dibuixat a ProgeCAD adjunt a continuació. Les ranures per a anells LED són una mica més grans, perquè els fabricants només proporcionen les mesures del diàmetre exterior: l'interior pot variar força … A la part posterior del rellotge hi ha molt espai per a electrònica i cables.

Anells de PVC

Com que els LED són força brillants, és bo difondre'ls d'alguna manera. Primer vaig provar amb silicona transparent, que fa la feina de difondre, però és bastant desordenat i és difícil aconseguir que sigui suau per sobre. Per això vaig demanar una peça de plàstic de PVC de "llet" de 20x20 cm i hi vaig tallar dos anells amb màquina CNC. Podeu utilitzar paper de vidre per suavitzar les vores perquè els anells llisquin a les ranures.

Forats laterals

Llavors és el moment de practicar els forats dels botons, el potenciòmetre i el connector d'alimentació. En primer lloc, dibuixa totes les posicions amb un llapis i, a continuació, fora al forat. Aquí depèn del tipus de botons que tingueu: he anat amb botons amb el cap lleugerament corbat. Tenen un diàmetre de 16 mm, de manera que he utilitzat trepants de fusta d’aquesta mida. El mateix passa amb el potenciòmetre i el connector d'alimentació. Assegureu-vos d’esborrar tots els dibuixos a llapis després.

Pas 9: Dibuixa a la fusta

Dibuixa a la fusta
Dibuixa a la fusta
Dibuixa a la fusta
Dibuixa a la fusta
Dibuixa a la fusta
Dibuixa a la fusta

Vaig decidir dibuixar uns indicadors de rellotge a la fusta; aquí podeu utilitzar la vostra imaginació i dissenyar-ne la vostra. Vaig cremar la fusta amb un soldador, escalfat a temperatura màxima.

Perquè els cercles fossin molt rodons, he utilitzat un tros d’alumini, hi he perforat un forat i he seguit les vores del forat amb soldador (mireu la imatge). Assegureu-vos que manteniu ferm l’alumini perquè no rellisqui mentre es dibuixa. I tingueu precaució mentre ho feu per evitar lesions.

Si feu dibuixos i voleu que estiguin ben alineats amb els píxels del rellotge, podeu utilitzar el "Mode de manteniment" que us mostrarà on es situaran els píxels (aneu al capítol Muntatge).

Protegiu la fusta

Quan esteu satisfets amb el rellotge, és hora de polir-lo i protegir-lo amb vernís de fusta. He utilitzat paper de vidre molt suau (valor de 500) per suavitzar les vores. Us recomano que utilitzeu vernís de fusta transparent perquè el color de la fusta no canviï. Poseu una petita quantitat de vernís al pinzell i estireu-lo en la direcció de les anuals a la fusta. Repetiu-ho almenys 2 vegades.

Pas 10: Assamble

Assamble
Assamble
Assamble
Assamble
Assamble
Assamble

Els avets col·loquen els botons i el potenciòmetre a la seva posició: si els forats són massa grans, podeu utilitzar una mica de cola calenta per fixar-los al seu lloc. A continuació, poseu la tira de l'anell a les ranures i connecteu els cables a l'Arduino. Abans d’enganxar l’anell LED al seu lloc, és bo estar segur que els píxels LED estan al lloc adequat, centrats i alineats amb el dibuix. Amb aquest propòsit, he afegit l'anomenat mode de manteniment que mostrarà tots els píxels importants (0, 5, 10, 15, … en el minut de so i 3, 6, 9 i 12 en el so de les hores). Podeu accedir a aquest mode prement i mantenint premuts els dos botons abans de connectar la font d'alimentació al connector. Podeu sortir d’aquest mode prement qualsevol botó.

Quan tingueu els anells LED alineats, apliqueu una mica de cola calenta i manteniu-los mentre la cola es mantingui ferma. A continuació, agafeu els anells de PVC i torneu a aplicar-los: apliqueu una mica de cola calenta als LED, col·loqueu-los ràpidament i manteniu-los durant un parell de segons. Al final, quan estigueu segur que tot funciona, podeu enganxar en calent el tauler (o Arduino) a la fusta. Consell: no s'apliqui a molta cola. Només una petita quantitat perquè es mantingui en un sol lloc, però podeu eliminar-la fàcilment si voleu canviar alguna cosa més endavant.

Al final, inseriu la bateria de la pila de monedes al seu suport.

Pas 11: Actualització: fotoresistència

Actualització: fotoresistència
Actualització: fotoresistència
Actualització: fotoresistència
Actualització: fotoresistència
Actualització: fotoresistència
Actualització: fotoresistència

Els efectes del rellotge són especialment agradables a la foscor. Però això pot molestar l’usuari durant la nit mentre dorm. Per això, vaig decidir actualitzar el rellotge amb la funció de correcció automàtica de la brillantor, quan l’habitació s’enfosqueix; el rellotge apaga els LED.

Amb aquest propòsit, he utilitzat el sensor de llum: foto-resistència. La seva resistència augmentarà significativament; fins a uns quants mega ohms quan és fosc i només tindrà uns pocs centenars d’ohms quan hi hagi llum brillant. Juntament amb una resistència normal formen el divisor de tensió. Així, quan canvia la resistència del sensor de llum, també canvia la tensió del pin analògic Arduino (que podem mesurar).

Abans de soldar i muntar qualsevol circuit, és convenient simular-lo primer, de manera que pugueu veure el comportament i fer correccions. Amb l’ajut d’Autocad Tinkercad, podeu fer exactament això. Amb només uns quants clics vaig afegir els components, els vaig connectar i vaig escriure el codi. A la simulació es pot veure com es modifica la brillantor dels LED segons el valor de la resistència fotogràfica. És molt senzill i senzill: podeu jugar amb el circuit.

Després de la simulació, era hora d'afegir la funció al rellotge. He perforat un forat al centre del rellotge, he enganxat la resistència fotogràfica, l’he connectat com es pot veure al circuit i he afegit poques línies de codi. Al fitxer LEDclock.h heu d'activar aquesta funció declarant USE_PHOTO_RESISTOR com a 1. També podeu canviar la brillantor de l'habitació que el rellotge apagarà els LED canviant el valor CLOCK_PHOTO_TRESHOLD.

Pas 12: gaudiu

Quan l’engegueu per primera vegada, el rellotge mostrarà un temps aleatori. Podeu configurar-lo prement els dos botons alhora. Gireu el comandament per seleccionar l’hora adequada i confirmeu-lo prement qualsevol botó.

Vaig trobar inspiració en algun projecte molt ordenat a Internet. Si decidiu construir el rellotge pel vostre compte, consulteu-los també. (NeoClock, Wol Clock, Arduino Colorful Clock) Si alguna vegada decidiu intentar seguir instruccions, espero que us sigui tan divertit com jo.

Si ens trobeu amb algun problema al llarg del procés de resolució, no dubteu a fer-me qualsevol pregunta als comentaris; amb molt de gust intentaré respondre-hi.

Recomanat: