Indholdsfortegnelse:

DIY Light Alarm Clock: 7 trin
DIY Light Alarm Clock: 7 trin

Video: DIY Light Alarm Clock: 7 trin

Video: DIY Light Alarm Clock: 7 trin
Video: DIY 7-Segment LED Alarm clock assembly 2024, December
Anonim
DIY lys vækkeur
DIY lys vækkeur
DIY lys vækkeur
DIY lys vækkeur
DIY lys vækkeur
DIY lys vækkeur

Har du nogensinde ønsket at prøve et af de smarte vækkeure, der efterligner solopgangen for at vække dig? Vil du tilføje nogle farvede lys til dit værelse? Vil du kontrollere det hele fra enhver enhed med en internetbrowser? Tjek derefter dette vækkeur, jeg lavede ved hjælp af det, jeg lærte at bygge min automatiske fiskeføder.

Lysalarmens hovedformål er at sikre, at der er lys i mit værelse, når jeg vågner, især om vinteren, når det normalt stadig er mørkt ude. Lyset svinder ind i en forudbestemt tid, der ender med fuld lysstyrke på det indstillede alarmtidspunkt. Men det er bare den første tilstand, der er 7 andre belysningstilstande at lege med!

Lysalarmen styres via en HTML-side, der er hostet på ESP-8266-12e-kortet. Den kan tilgås fra dit hjemmenetværk eller konfigureres til at få adgang fra hvor som helst på internettet med portvideresendelse.

Trin 1: Materialer:

  • ESP-8266-12e (NodeMCU) -kort
  • Seneste Arduino IDE
  • Biblioteker nødvendige for den installerede kode
  • Notesblok ++ (til redigering af HTML, hvis du vil)
  • Browser (jeg brugte chrome, men enhver skulle fungere, især hvis den lader dig se html -koden fungere)
  • 3D -printer med mindst 150 mm x 150 mm byggeområde
  • Hvidt eller klart plastfilament (til skyggen kan holderen have en hvilken som helst farve, du har)
  • 4-cifret 7-segment display med TM1637 chip, jeg brugte en af disse
  • 1 meter adresserbar RGBW LED -strimmel, sk6812. Min strip har 60 LED'er/meter, men sælges ikke længere. Arduino -koden er konfigureret til RGBW, så du bliver nødt til at omskrive den, hvis du vil bruge en RGB -strip. Jeg vil anbefale en strip med mindst 60 LED'er.
  • HVIS strimlen ikke har en klæbende bagside: tape og superlim
  • Protoboard til montering af brættet
  • 24AWG wire (jeg anbefaler flere farver)
  • Mindst 6 fod ledning til strøm. Jeg anbefaler at bruge, hvad din lokale isenkræmmer sælger til bordlamper.
  • 5V strømforsyning, jeg brugte denne
  • Glem ikke adaptere til strømforsyningen
  • Loddekolbe
  • USB -kabel til programmering af kortet
  • varm lim
  • Header pins (mand og kvinde)
  • Tålmodighed

Trin 2: Programmering af bestyrelsen

Bestyrelsen vil have to sæt kode på den, den almindelige arduino -kode, der kører, og den HTML -kode, den sender til din browser. Du uploader arduino -koden som med alle andre tavler. HTML-koden kræver imidlertid et plug-in for at uploade til SPIFF-hukommelsen på kortet.

For en tutorial om, hvordan du bruger SPIFF'er, se

For at se, hvordan du uploader HTML -koden, se https://www.esp8266.com/viewtopic.php?f=32&t=10081, skal du installere et plugin til arduino for at gøre dette.

HTML -filen skal gemmes i en mappe i arduino -projektmappen, der ganske enkelt kaldes 'data'.

Upload af HTML tager et par minutter, jeg var i stand til at spille et eller to onlineløb i Mario Kart 8, mens jeg ventede. På grund af dette, hvis du foretager ændringer i HTML, skal du bruge notesblok ++ til at redigere og slippe filen i en browser som chrome for at teste den.

Trin 3: Sådan fungerer koden

Sådan fungerer koden
Sådan fungerer koden
Sådan fungerer koden
Sådan fungerer koden

Koden i dette projekt er opdelt i to filer: Koden, der drives af tavlen, og HTML -koden, der er gemt i tavlens hukommelse, som den sender til browseren, når du navigerer til websiden.

Når du slutter kortet til strøm, starter kortets kode, ligesom enhver arduino. Den opretter forbindelse til dit WiFi i hjemmet og kontakter derefter en NIST -server for at få den aktuelle tid til at indstille det interne ur. Når uret er indstillet, starter webserveren, og du kan oprette forbindelse via din yndlingsbrowser.

Du skal oprette forbindelse med kortets IP -adresse, så sørg for at reservere en statisk IP på din router. Jeg ændrede også porten på min lampe, så for at oprette forbindelse navigerer jeg til 192.168.0.170:301/. Hvis du vil oprette forbindelse til din lampe overalt i verden, skal du konfigurere port forwarding på din router. Du bliver derefter nødt til at oprette forbindelse til den IP -adresse, du ser, når du opretter forbindelse til https://www.whatsmyip.org/ og den port, du konfigurerede lampens lokale IP til at være på.

Når du har oprettet forbindelse, sender tavlen HTML -filen til din browser, som afkoder den og viser siden. De ændringer, du foretager, påvirker ikke tavlen, før du trykker på en af knapperne. på websiden. Når du trykker på en knap, sender din browser en html -formular til tavlen med de aktuelle indstillinger, og tavlen vedtager disse indstillinger og indstiller skærmene.

Indstillingerne er ret ligetil. Siden skaleres til bredden af din browser og ser lidt bedre ud på mobilen. For at ændre udseendet på indstillingssiden skal du redigere HTML -koden, og der er masser af andre selvstudier online til det. Da dette var første gang jeg brugte HTML, lærte jeg mest at bruge

Når siden indlæses, vil du se fire knapper, en skyder og en rullemenu. Den øverste knap er hovedknappen "enter" eller "engager". De næste to knapper skifter den digitale tidsvisning, og om den viser tiden i 12 eller 24 timers format. Skyderen styrer lysstyrken på det digitale ur, og det opdateres, når du skifter visningstilstand eller tænder uret. Den sidste knap skal slukke alle lys, men det virker af en eller anden grund ikke med denne version af koden. I stedet vil lyset slukke ved at trykke på knappen "Engage" uden valg af indstillinger.

Rullemenuen indeholder 7 systemtilstande, hvis du vælger en, vises de nødvendige indstillinger nedenfor.

  • Tilstand 1: Alarm. Indtast den tid, du vil have lyset til at nå fuld lysstyrke, og hvor lang tid du ønsker, at fade i skal være i heltalsminutter. Standard er 6:00:00 og 15 minutter. Lyset forbliver ved fuld lysstyrke i samme mængde tid, det falmer ind, før det automatisk slukkes. Standard kan ændres i HTML -kode.
  • Tilstand 2: Analog ur. Vælg tre farver for at repræsentere time, minut og sekundvisere på et analogt ur. En skyder over de tre farveplukkere indsætter automatisk forudindstillede kølige eller varme farver, hvis de er indstillet henholdsvis til venstre eller højre. Hvis skyderen er indstillet til venstre eller højre for derefter at vende tilbage til midten, så er farvevælgerne alle indstillet til sort (0, 0, 0, 0) [R, G, B, W]. Når der sendes en farve med helt nul til tavlen, randomiseres den. * Dette kan få lysene til at blinke for meget.* Hvis du vil have et lys til at forblive slukket, vil en vilkårlig værdi til 1 resultere i 'sort' (alle værdier er standard til 1 (01, 01, 01, 01), når farvevælgerne er initialiseret). Farvevælgeren og RGB -skyderne er forbundet, mens W -skyderen er uafhængig.
  • Tilstand 3: Farve. Vælg en farve at indstille lysene til. Dette forbliver, indtil det ændres af brugeren.
  • Tilstand 4: Farvecyklus. Vælg tre farver for at bladre igennem, og indtast det tidspunkt, hvor hver farve skal holdes. De samme metoder gælder for valg af farver som i tilstand 2. Tilfældige farver fungerer bedst med denne tilstand.
  • Tilstand 5: Farve cylinder. Vælg tre farver (samme som tidligere) og cylinderens omdrejningstal. Lysene vises som et mønster af striber, der roterer rundt om aksen. ved det omdrejningstal, du valgte. Standard omdrejningstallet er 60 eller 1 omdr./sek. Tilfældige farver kan resultere i blinkende lys!
  • Tilstand 6: Farve Vortex. Indstil tre farver og RPM. Denne tilstand er ikke perfekt, men tanken er, at lysene hvirvler døgnet rundt. Der er indbygget tilfældighed, så det er bedst at bare bruge temperaturskyderen til at vælge, om hvirvelen starter varm eller kølig.
  • Tilstand 7: Rainbow. Indstil cyklushastigheden, RPM er ret ubrugelig her. Dette var et præfabrikeret eksempel fra Neopixel-biblioteket med nogle redigeringer, så bestyrelsen stadig kunne reagere på brugerinput.

Når indstillingerne er valgt, vil et tryk på en vilkårlig knap sende en HTML -formular til tavlen, som bruger værdierne i formularen til at ændre visningsindstillingerne. Knappen "Engage" sender alle indstillinger, mens de to urknapper kun sender urets lysstyrke. "Fra" -knappen skal bare slukke LED -strimlen, men der er en fejl, der forhindrer det i at fungere. At trykke på "Engag" uden at ændre nogen indstillinger ser ud til at fungere i stedet. Når tavlen har analyseret indstillingerne, omdirigerer den din browser til den første HTML -side.

Bemærk: Indstilling af alarmtiden ændrer systemtilstanden til 1, hvilket stopper enhver tilstand, der kørte før, og nulstiller alle indstillinger. Start af en anden tilstand efter indstilling af alarmtiden ændrer imidlertid ikke den tid, du har indstillet, så du kan indstille alarmen og derefter starte en ny tilstand. Hvis den nye tilstand ikke slukkes, før alarmen begynder at falme i det hvide lys, kan dette forårsage blink. For at forhindre dette er tavlen hårdt kodet til at slukke alle lys og indstille systemtilstanden til 1 (alarm) klokken 02.00 uden at ændre den indstillede alarmtid. Denne hårde cutoff -tid kan ændres i arduino -koden.

Trin 4: Opsætning af dit netværk og forbindelse

Opsætning af dit netværk og tilslutning
Opsætning af dit netværk og tilslutning

Dette trin er lidt uklart, da hver router er anderledes. Google din særlige routermodel for at finde de indstillinger, du skal ændre.

Du skal logge ind på din router og sandsynligvis tænde avanceret tilstand. På min router skal jeg gå til DHCP Server for at reservere en IP -adresse. Find din ESP8266s MAC -adresse; det er den på DHCP -klientlisten (eller din routers ækvivalent), der forsvinder, når du tager ESP'en ud af stikkontakten.

Brug MAC -adressen til at reservere lampens IP -adresse. Sørg for, at indtastningen er aktiveret, hvis din router har denne indstilling.

Hvis du vil oprette forbindelse uden for dit personlige netværk, skal du google din router for at finde ud af, hvordan du konfigurerer port forwarding.

Trin 5: 3D-printede dele

De udskrevne dele skal passe til de fleste printere. Der er to dele: Beslaget og skærmen.

Monteringen er, hvad LED-strimlen er viklet rundt i et spiralformet mønster, og dens diameter er sådan, at en 60-LED, 1-meters strimmel skal vikle rundt 3 gange, og alle lysdioderne skal justeres aksialt. Hvis du bruger en strimmel, hvor lysdioderne er forskelligt adskilt og ikke justeres på fæstet, som de burde, skal du ændre diameteren med de medfølgende modeller. Diameteren er C/pi, hvor C er omkredsen og er 1/3 af strimlens længde. De halvcirkelformede åbninger på væggen på fæstet tillader strømkablet og luftstrømmen at passere igennem. Krydsbøjlerne giver stivhed og en overflade at anvende kommandostrimler på til montering.

Skærmen har en friktionspasning med holderen, og der er et hak til at justere skyggen med holderen. Hakket skal være i 12- eller 6-timers position, når det er monteret på væggen, og 7-segmentet urdisplay skal justeres med hakket. Skyggen fungerer som en diffusor til lysene og er derfor meget tynd. Jeg printede det med en.5 mm dyse, og de fleste kommercielle printere leveres med.4 mm dyser, så der burde være få problemer, men sørg for at tjekke din skiver for at sikre, at skyggen udskrives korrekt. Sørg også for at bruge en hvid eller på anden måde gennemsigtig plast til skyggen. Andre farver vil forvride lysets farver eller blokere for meget lys.

Sørg for at kontrollere, at det digitale urdisplay, du bruger, passer i skyggen. Det er designet til at passe på friktion på plads med tilstrækkelig afstand til urets ledninger. Brug modellerne til at ændre urmonteringen. Når du skifter skærmens model, skal du sørge for at holde tykkelsen på forsiden under 1 mm, så uret er synligt igennem det med lidt diffusion.

Trin 6: Ledningsføring og bestyrelsessamling

Ledningsføring og bestyrelsessamling
Ledningsføring og bestyrelsessamling
Ledningsføring og bestyrelsessamling
Ledningsføring og bestyrelsessamling
Ledningsføring og bestyrelsessamling
Ledningsføring og bestyrelsessamling

Pladen og ledningerne er langt mindre komplicerede end min fiskeføder. Du skal blot lodde et par rækker kvindelige hovedstifter til et protoboard, så ESP-8266-12e kan sidde i, samt to rækker mandlige hovedstifter for at tilslutte strøm. Jeg lodde de to urdatatråde og LED -stripdatatråden til deres respektive ben på protoboardet, og alle strøm- og jordledninger blev loddet til de respektive strømskinner, jeg lavede på bagsiden af brættet.

Den anden side af disse ledninger skal være kvindelige overskrifter til uret og LED -båndstikket til LED -strimlen. Du skal muligvis lodde hanstifter til uret, og jeg anbefaler vinklede ben til det. LED -båndtrådene og strømkablerne skal føres til brættets vægside (siden med ESP), og urtrådene skal føres til forsiden (hvor alle loddemetalerne er).

Til en strømledning brugte jeg 6 fod 16-26 strenget kobbertråd. Det var lidt tykt, så jeg delte hver ledning mellem tre hunstifter for at forbinde til strøm- og jordskinnerne. Den anden side skal være det stik, du har til din strømforsyning.

Varm lim alle de udsatte loddemetoder (især på strømkablet, og især hvis der er udsat kobber som mit) for at isolere alt fra utilsigtede shorts. Du kan også varmt lime uret til brættet (bagsiden af uret til loddetiden af brættet), men jeg fandt ud af, at dette var en svag samling og ikke var så nødvendig, når alt var monteret.

Spol LED -strimlen rundt om ydersiden af holderen. Vær sikker på at teste strimlen i tilstand 2 for at kontrollere, at det analoge ur går i den rigtige retning. Sørg for at efterlade en afstand på ~ 5 mm fra forkant til skyggen. Den første lysdiode på strimlen (lysdioden, sekundernes farve vises øverst i hvert minut, i den ene ende af strimlen) går ved 12 -tiden. når lampen er monteret på væggen. Når du har en LED -strip på plads, skal du bruge den selvklæbende bagside (hvis den har en) eller lim til at fastgøre den til holderen. Superlim fungerer bedst, hvis strimlen ikke har en klæbende bagside. Brug tape til at holde strimlen på plads, mens du tester, og mens lim tørrer.

Træk LED -ledningerne gennem de halvcirkelformede huller ind i holderen for at forbinde til kortet. Strømkablet er også gevindskåret her. Sørg for at vælge et hul, som kablet ikke trækker på grund af tyngdekraften eller utilsigtede træk.

Trin 7: Montering

For at montere på væggen skal du blot bruge 3-4 3M kommandostrimler, eller så mange som du vil. Brug hakket i holderen til at kontrollere, at det er plant. Når holderen er monteret, skal du tilslutte strømkablet og LED -ledningerne til kortet og indsætte uret i skyggen. Derefter skal du blot skygge på holderen og tilslut strømkablet til strømforsyningen!

Anbefalede: