Sisällysluettelo:

DIY -valoherätyskello: 7 vaihetta
DIY -valoherätyskello: 7 vaihetta

Video: DIY -valoherätyskello: 7 vaihetta

Video: DIY -valoherätyskello: 7 vaihetta
Video: Автомобильный генератор 12 В для бесщеточного генератора 2024, Marraskuu
Anonim
DIY -valoherätyskello
DIY -valoherätyskello
DIY -valoherätyskello
DIY -valoherätyskello
DIY -valoherätyskello
DIY -valoherätyskello

Oletko koskaan halunnut kokeilla yhtä näistä upeista herätyskelloista, jotka jäljittelevät auringonnousua herättääksesi sinut? Haluatko lisätä värillisiä valoja huoneeseesi? Haluatko hallita kaikkea millä tahansa laitteella, jolla on Internet -selain? Tarkista sitten tämä herätyskello, jonka tein käyttämällä sitä, mitä olen oppinut automaattisen kalan syöttölaitteen rakentamisesta.

Valohälytyksen päätarkoitus on varmistaa, että huoneessani on valoa, kun herään, varsinkin talvella, jolloin ulkona on yleensä vielä pimeää. Valo sammuu ennalta määrätyn ajan, joka päättyy täyteen kirkkauteen asetettuna hälytysaikana. Mutta tämä on vain ensimmäinen tila, on olemassa 7 muuta valaistusta, joilla voi leikkiä!

Valohälytystä ohjataan HTML-sivun kautta, joka sijaitsee ESP-8266-12e-kortilla. Sitä voidaan käyttää kotiverkostasi tai se voidaan määrittää käytettäväksi mistä tahansa Internetissä portin edelleenlähetyksen avulla.

Vaihe 1: Materiaalit:

  • ESP-8266-12e (NodeMCU) -kortti
  • Uusin Arduino IDE
  • Asennettuun koodiin tarvitaan kirjastoja
  • Notepad ++ (jos haluat muokata HTML -koodia)
  • Selain (käytin kromia, mutta minkä tahansa pitäisi toimia, varsinkin jos sen avulla näet html -koodin toimivan)
  • 3D -tulostin, jonka rakennusalue on vähintään 150 mm x 150 mm
  • Valkoinen tai kirkas muovinen filamentti (varjossa kiinnike voi olla mikä tahansa väri)
  • Nelinumeroinen 7-segmenttinen näyttö TM1637-sirulla, käytin yhtä näistä
  • 1 metrin osoitettava RGBW -LED -nauha, SK6812. Nauhassa on 60LED/metri, mutta sitä ei enää myydä. Arduino -koodi on määritetty RGBW: lle, joten sinun on kirjoitettava se uudelleen, jos haluat käyttää RGB -nauhaa. Suosittelen nauhaa, jossa on vähintään 60 LEDiä.
  • JOS nauhassa ei ole liimapintaa: teippiä ja superliimaa
  • Protoboard levyn kiinnittämiseen
  • 24AWG -lanka (suosittelen useita värejä)
  • Vähintään 6 jalan johto virran saamiseksi. Suosittelen käyttämään mitä tahansa paikallista rautakauppasi pöydän lamppuja.
  • 5V virtalähde, käytin tätä
  • Älä unohda virtalähteen sovittimia
  • Juotin
  • USB -kaapeli kortin ohjelmoimiseksi
  • kuuma liima
  • Otsatapit (uros ja naaras)
  • Kärsivällisyyttä

Vaihe 2: Hallituksen ohjelmointi

Hallituksella on kaksi koodisarjaa, tavallinen suoritettava arduino -koodi ja selaimeesi lähetettävä HTML -koodi. Lähetät arduino -koodin kuten minkä tahansa muun levyn kanssa. HTML-koodi vaatii kuitenkin laajennuksen, joka ladataan levyn SPIFF-muistiin.

Opetusohjelma SPIFF-tiedostojen käytöstä on osoitteessa

Jos haluat ladata HTML -koodin, katso https://www.esp8266.com/viewtopic.php?f=32&t=10081, sinun on asennettava laajennus arduinoon tätä varten.

HTML on tallennettava arduino -projektikansion kansioon, jota kutsutaan yksinkertaisesti 'dataksi'.

HTML -tiedoston lataaminen kestää muutaman minuutin. Pystyin pelaamaan online -kilpailun tai kaksi Mario Kart 8: ssa odottaessani. Tästä syystä, jos teet muutoksia HTML -koodiin, käytä muistilehteä ++ muokataksesi tiedostoa ja pudottamalla se selaimen kaltaiseen selaimeen.

Vaihe 3: Kuinka koodi toimii

Kuinka koodi toimii
Kuinka koodi toimii
Kuinka koodi toimii
Kuinka koodi toimii

Tämän projektin koodi on jaettu kahteen tiedostoon: levyn käyttämä koodi ja taulun muistiin tallennettu HTML, jonka se lähettää selaimelle, kun siirryt verkkosivulle.

Kun liität kortin virtalähteeseen, levyn koodi alkaa, kuten mikä tahansa arduino. Se muodostaa yhteyden kotisi WiFi -yhteyteen ja ottaa sitten yhteyttä NIST -palvelimeen saadakseen kellonajan asettaa sisäisen kellon. Kun kello on asetettu, verkkopalvelin käynnistyy ja voit muodostaa yhteyden suosikkiselaimesi kautta.

Sinun on muodostettava yhteys kortin IP -osoitteen perusteella, joten muista varata staattinen IP reitittimellesi. Vaihdoin myös lampun portin, joten muodostan yhteyden navigoidakseni osoitteeseen 192.168.0.170:301/. Jos haluat muodostaa yhteyden lamppuun mistä päin maailmaa tahansa, sinun on määritettävä reitittimen portinsiirto. Sinun on sitten muodostettava yhteys IP -osoitteeseen, jonka näet, kun muodostat yhteyden osoitteeseen https://www.whatsmyip.org/, ja porttiin, johon asetit lampun paikallisen IP -osoitteen.

Kun olet muodostanut yhteyden, levy lähettää HTML -tiedoston selaimeesi, joka purkaa sen ja näyttää sivun. Tekemäsi muutokset eivät vaikuta taululle ennen kuin painat yhtä painikkeista. verkkosivulla. Kun painat painiketta, selaimesi lähettää taululle html -lomakkeen, jossa on nykyiset asetukset, ja se hyväksyy nämä asetukset ja asettaa näytöt.

Asetukset ovat melko suoraviivaisia. Sivu skaalautuu selaimen leveyteen ja näyttää hieman paremmalta mobiililaitteilla. Jos haluat muuttaa asetussivun ulkoasua, sinun on muokattava HTML -koodia, ja verkossa on paljon muita opetusohjelmia. Koska tämä oli ensimmäinen kerta, kun käytin HTML -koodia, opin enimmäkseen käyttämällä

Kun sivu latautuu, näet neljä painiketta, liukusäätimen ja avattavan valikon. Yläpainike on pääsyöttö- tai aktivointipainike. Seuraavat kaksi painiketta vaihtavat digitaalista aikanäyttöä ja näyttääkö se ajan 12 tai 24 tunnin muodossa. Liukusäädin ohjaa digitaalisen kellon kirkkautta, ja se päivitetään aina, kun vaihdat näyttötilaa tai kytket kellon päälle. Viimeisen painikkeen on tarkoitus sammuttaa kaikki valot, mutta jostain syystä tämä ei toimi tämän koodiversion kanssa. Sen sijaan valot sammuvat painamalla "Ota käyttöön" -painiketta ilman asetuksia.

Avattava valikko sisältää 7 järjestelmätilaa, joista yhden valitseminen näyttää alla olevat tarvittavat asetukset.

  • Tila 1: Hälytys. Anna aika, jolloin haluat valon saavuttaa täyden kirkkauden ja kuinka kauan haluat häivytyksen olevan kokonaislukuminuuteina. Oletus on 6:00:00 AM ja 15 minuuttia. Valo pysyy täydellä kirkkaudella yhtä kauan kuin se sammuu, ennen kuin se sammuu automaattisesti. Oletusarvoa voidaan muuttaa HTML -koodissa.
  • Tila 2: Analoginen kello. Valitse kolme väriä edustamaan analogisen kellon tunti-, minuutti- ja sekuntiosoitinta. Kolmen värinvalitsimen yläpuolella oleva liukusäädin asettaa automaattisesti esiasetetut viileät tai lämpimät värit, jos ne on asetettu vasemmalle tai oikealle. Jos liukusäädin on asetettu vasemmalle tai oikealle ja palautettu sitten keskelle, värivalitsimet on asetettu mustaksi (0, 0, 0, 0) [R, G, B, W]. Kun nollataso lähetetään taululle, se satunnaistetaan. * Tämä voi aiheuttaa valojen vilkkumisen liikaa.* Jos haluat valon sammuvan, minkä tahansa arvon asettaminen arvoon 1 johtaa mustaan (kaikki arvot ovat oletusarvoisesti 1 (01, 01, 01, 01), kun värinvalitsimet ovat alustettu). Värinvalitsin ja RGB -liukusäätimet on linkitetty, kun taas W -liukusäädin on itsenäinen.
  • Tila 3: Väri. Valitse yksi väri, johon haluat asettaa valot. Tämä pysyy voimassa, kunnes käyttäjä muuttaa sitä.
  • Tila 4: Värisykli. Valitse kolme väriä selataksesi ja syötä kunkin värin pitämisaika. Värien valinnassa käytetään samoja menetelmiä kuin tilassa 2. Satunnaiset värit toimivat parhaiten tässä tilassa.
  • Tila 5: Värisylinteri. Valitse kolme väriä (sama kuin edellinen) ja sylinterin kierrosluku. Valot näytetään raidana, jotka pyörivät akselin ympäri. valitsemallasi kierrosluvulla. Oletusnopeus on 60 tai 1 kierrosta/sek. Satunnaiset värit voivat aiheuttaa vilkkuvia valoja!
  • Tila 6: Väripyörre. Aseta kolme väriä ja kierrosluku. Tämä tila ei ole täydellinen, mutta ajatuksena on, että valot pyörivät ympäri vuorokauden. Siinä on sisäänrakennettu satunnaisuus, joten on parasta käyttää lämpötilan liukusäädintä valitaksesi, käynnistyykö pyörre lämpimänä vai viileänä.
  • Tila 7: Sateenkaari. Aseta syklin nopeus, kierrosluku on melko hyödytön täällä. Tämä oli esimääritetty esimerkki Neopixel-kirjastosta, jossa oli joitain muokkauksia, jotta levy voi edelleen vastata käyttäjän syötteisiin.

Kun asetukset on valittu, minkä tahansa painikkeen painaminen lähettää HTML -lomakkeen taululle, joka käyttää lomakkeen arvoja näytön asetusten muuttamiseen. Ota käyttöön -painike lähettää kaikki asetukset, kun taas kaksi kellopainiketta lähettävät vain kellon kirkkauden. "Pois" -painikkeen pitäisi vain sammuttaa LED -nauha, mutta on virhe, joka estää sen toimimasta. Engage -painikkeen painaminen muuttamatta mitään asetuksia näyttää toimivan. Kun levy on jäsentänyt asetukset, se ohjaa selaimesi alkuperäiselle HTML -sivulle.

Huomautus: Hälytysajan asettaminen muuttaa järjestelmän tilaksi 1, joka pysäyttää kaikki aiemmin käytössä olleet tilat ja nollaa kaikki asetukset. Toisen tilan käynnistäminen hälytysajan asettamisen jälkeen ei kuitenkaan muuta asettamaasi aikaa, joten voit asettaa hälytyksen ja aloittaa sitten uuden tilan. Jos uutta tilaa ei sammuteta ennen kuin hälytys alkaa häipyä valkoisessa valossa, tämä voi aiheuttaa vilkkumisen. Tämän estämiseksi kortti on koodattu sammuttamaan kaikki valot ja asettamaan järjestelmätilaksi 1 (hälytys) klo 2.00 muuttamatta asetettua hälytysaikaa. Tätä kovaa katkaisuaikaa voidaan muuttaa arduino -koodissa.

Vaihe 4: Verkon määrittäminen ja yhdistäminen

Verkon määrittäminen ja yhdistäminen
Verkon määrittäminen ja yhdistäminen

Tämä vaihe on hieman epämääräinen, koska jokainen reititin on erilainen. Googlaamalla haluamasi reitittimen malli löytää muutettavat asetukset.

Sinun on kirjauduttava reitittimeesi ja luultavasti otettava käyttöön edistynyt tila. Reitittimellä minun on siirryttävä DHCP -palvelimeen varaamaan IP -osoite. Etsi ESP8266: n MAC -osoite; se poistuu DHCP -asiakasluettelosta (tai reitittimen vastaavasta), kun irrotat ESP: n.

Käytä MAC -osoitetta lampun IP -osoitteen varaamiseen. Varmista, että merkintä on käytössä, jos reitittimessäsi on tämä asetus.

Jos haluat muodostaa yhteyden henkilökohtaisen verkon ulkopuolelta, sinun on googletettava reitittimesi ja selvitettävä, kuinka portin uudelleenohjaus määritetään.

Vaihe 5: 3D-painetut osat

Tulostettujen osien pitäisi sopia useimpiin tulostimiin. Siinä on kaksi osaa: teline ja varjostin.

Kiinnike on se, mihin LED-nauha on kääritty, spiraalikuviona, ja sen halkaisija on sellainen, että 60-LED-1 metrinen nauha kiertyy noin 3 kertaa ja kaikki LED-valot kohdistuvat aksiaalisesti. Jos käytät nauhaa, jossa LED -valot on sijoitettu eri tavalla eivätkä kohdistu kiinnikkeeseen kuten pitäisi, muuta halkaisija mukana tulevien mallien mukaan. Halkaisija on C/pi, missä C on ympärysmitta ja 1/3 nauhan pituudesta. Puolipyöreät aukot telineen seinäpuolella mahdollistavat virtajohdon ja ilmavirran kulkemisen läpi. Ristikannattimet tarjoavat jäykkyyden ja pinnan komentorivien kiinnittämistä varten.

Varjostimessa on kitkasovite telineen kanssa, ja varjostimen kohdistamiseksi telineen kanssa on lovi. Uran tulee olla klo 12 tai 6 kelloasennossa, kun se asennetaan seinälle, ja 7-segmenttisen kellonäytön tulee olla linjassa loven kanssa. Varjostin toimii valojen hajottimena ja on siksi erittäin ohut. Tulostin sen.5 mm: n suuttimella, ja useimmissa kaupallisissa tulostimissa on. 4 mm: n suuttimia, joten ongelmia pitäisi olla vähän, mutta tarkista leikkuri varmistaaksesi, että sävy tulostaa oikein. Käytä myös varjossa valkoista tai muuten läpikuultavaa muovia. Muut värit vääristävät valojen värejä tai estävät liikaa valoa.

Muista tarkistaa, että käyttämäsi digitaalinen kellonäyttö sopii varjoon. Se on suunniteltu kitkasovittumaan paikalleen ja riittävästi tilaa kellon johtimille. Käytä malleja kellokiinnityksen vaihtamiseen. Kun vaihdat varjostimen mallia, muista pitää etupinnan paksuus alle 1 mm, jotta kello näkyy sen läpi vähäisellä levityksellä.

Vaihe 6: Johdotus ja hallituksen kokoonpano

Johdotus ja hallituksen kokoonpano
Johdotus ja hallituksen kokoonpano
Johdotus ja hallituksen kokoonpano
Johdotus ja hallituksen kokoonpano
Johdotus ja hallituksen kokoonpano
Johdotus ja hallituksen kokoonpano

Levy ja johdotus ovat paljon vähemmän monimutkaisia kuin kalan syöttölaitteeni. Juottaa vain pari riviä naaraspuolisia nastatappeja protoboardiin ESP-8266-12e: n istuttamista varten sekä kaksi riviä urospään tappeja virran kytkemiseksi. Juotin kaksi kellon datajohtoa ja LED -nauhan datajohdon vastaaviin nastoihin protoboardissa, ja kaikki virta- ja maadoitusjohdot juotettiin vastaaviin virtakiskoihin, jotka tein levyn takana.

Näiden johtojen toisen puolen tulisi olla naaraspäät kellolle ja LED -nauhan liitin LED -nauhalle. Sinun on ehkä juotettava urosnastat kelloon ja suosittelen sitä varten kulmikkaita tappeja. LED -nauhajohdot ja virtajohdot on reititettävä levyn seinäpuolelle (ESP -puoli) ja kellojohdot tulee reitittää etupuolelle (missä kaikki juotosliitokset ovat).

Voimajohdossa käytin 6 jalkaa 16-26-säikeistä kuparilankaa. Se oli hieman paksu, joten jaoin jokaisen langan kolmen naarasliitännän välille kytkeäksesi virta- ja maadoituskiskot. Toisen puolen pitäisi olla mikä tahansa virtalähteen liitin.

Kuumaa liimaa kaikki paljaat juotosliitokset (erityisesti virtajohdossa ja ERITTÄIN, jos kuparia on paljaana kuin minun) eristääksesi kaiken tahattomista oikosulkuista. Voit myös liimata kellon kuumaliimalla levylle (kellon takaosa levyn juotospuolelle), mutta huomasin, että tämä oli heikko liitos eikä ollut kaikki tarpeellinen, kun kaikki oli asennettu.

Kierrä LED -nauha telineen ulkopuolelle. TARKISTA nauha tilassa 2 varmistaaksesi, että analoginen kello menee oikeaan suuntaan. Muista jättää noin 5 mm rako varjostimen etureunasta. Nauhan ensimmäinen LED (sekunnin väri näkyy jokaisen minuutin yläosassa, nauhan toisessa päässä) menee kello 12 -asentoon. kun lamppu on kiinnitetty seinään. Kun sinulla on LED -nauha paikallaan, kiinnitä se kiinnikkeeseen liimalla (jos sellainen on) tai liimalla. Superliima toimii parhaiten, jos nauhassa ei ole liimaa. Käytä teippiä pitämään nauha paikallaan testauksen aikana ja liiman kuivumisen aikana.

Pujota LED -johdot puolipyöreiden reikien läpi kiinnikkeeseen liittääksesi levyn. Virtakaapeli on myös kierretty tänne, muista valita reikä, johon kaapeli ei vedä painovoiman tai tahattoman vetämisen vuoksi.

Vaihe 7: Asennus

Kiinnitä seinään käyttämällä 3-4 3M komentoriviä tai niin monta kuin haluat. Tarkista telineen vaakataso kiinnittimen lovella. Kun teline on asennettu, kytke virtakaapeli ja LED -johdot korttiin ja aseta kello varjostimeen. Napsauta sitten varjostin telineeseen ja kytke virtajohto virtalähteeseen!

Suositeltava: