Innholdsfortegnelse:

NeoPixel -klokke: 10 trinn (med bilder)
NeoPixel -klokke: 10 trinn (med bilder)

Video: NeoPixel -klokke: 10 trinn (med bilder)

Video: NeoPixel -klokke: 10 trinn (med bilder)
Video: "Шутка ангела" 2004 комедия/ Комедия смотреть онлайн 2024, Juli
Anonim
Image
Image
Elektroniske deler påkrevd
Elektroniske deler påkrevd

*********************************************************************************************************

DETTE ER EN OPPTAK I MIKROKONTROLLERKONKURRANSE, VENNLIGST STEM PÅ MEG

********************************************************************************************************

Jeg bygde et NeoPixel uendelig speil for noen år siden mens jeg var i Thailand og kan sees HER.

Jeg gjorde det på den harde måten å ikke bruke en Arduino, men en frittstående mikroprosessor, en PIC18F2550. Dette innebar å grave ned i registerene og tidspunktene for Micro for å skrive koden, hvorav noen inneholdt montering.

Dette er all kunnskap å ha og har holdt meg godt siden det gjør arbeidet med Arduino barns lek. Det meste av arbeidet har blitt utført ved bruk av tredjepartsbiblioteker, mens jeg før skrev min egen bibliotekskode.

Denne klokken ble designet for å avgi lys fra periferien til veggen den er festet til ved hjelp av WS2812B individuelt adresserbare RGB -lysdioder med et avstand på 144 per meter. Dette ga meg en klokkediameter på 200 mm, noe jeg kunne lage selv på 3D -skriveren min.

Det har en fantastisk effekt, spesielt om natten eller i et mørkt rom, lyset skinner ut omtrent 500 mm og gir en total blending på over en meters diameter. Mønstrene er fantastiske.

Klokken viser timer (blå), minutter (grønn) og sekunder (rød). Datoen vises også på et 8 -sifret 7 -segmenters display og ukedagen i et listeskjema.

Klokken styres av smarttelefonen over WiFi ved hjelp av Blynk -appen og en lokal Blynk -server som kjører på en RPi 3.

Bruken av en lokal server for Blynk er valgfri, og å sette opp dette er ikke en del av denne instruksen. Den nettbaserte Blynk kan brukes etter at du har opprettet en konto på www.blynk.cc og lastet ned appen.

Det er mye informasjon om bruk av Blynk på nettstedet deres, så det er ikke en del av dette instruerbare.

På et senere trinn i denne instruksjonsboken er det en QR -kode å skanne, du vil da ha appen min på telefonen.

Appen har kontroller for å vise klokken eller mønstrene (med LCD -tilbakemelding på appen), muligheten til å stille tidssonen din uansett hvor du er i verden og få tiden via en NTP -server. Den kan også settes til å sove.

Det er en sanntidsklokke -modul med batteribackup som gir tid/dato -funksjoner til Arduino.

Fastvaren på NodeMCU-E12 i klokken kan oppdateres over air (OTA).

La oss begynne nå ….

Trinn 1: Nødvendig verktøy

Et godt loddejern og loddetinn

wire strippere

små wire cutters

liten lang nesetang

liten sag for skjæring av vero -brett

skarp hobbykniv

saks

lim av papir

Trinn 2: Elektroniske deler påkrevd

Elektroniske deler påkrevd
Elektroniske deler påkrevd
Elektroniske deler påkrevd
Elektroniske deler påkrevd

1 x NodeMCE-12E-modul herfra

1 x RTC klokkemodul HER

1 x 8 -sifret 7 -segment Max7219 -modul her

1 x likestrømkontakt her

2 x nivåskiftere (kreves ettersom Arduino er 3,3v og RTC og 7 segmentvisning er 5v) her

68 lysdioder av en WS2812B 114/mtr LED -stripe her.

DC 5v 10A strømforsyning her.

10kOhm 1/4W resistor.

Etter behov kobles til ledning.

Ca 77 mm x 56 mm Vero -brett for å montere alle modulene og koble til.

Jeg brukte faktisk en Adafruit nivåskifter for RTC -modulens I2c -linjer da den skulle være I2c -trygg !!

Imidlertid tror jeg de fleste 3.3v til 5v toveis logiske nivåskiftere bør fungere.

Å kutte LED -stripen bortkastet en LED ettersom putene for lodding av begge ender av de 60 LED -stripene var påkrevde, og putene kreves på de 7 LED -stripene.

Trinn 3: Trykte deler

Trykte deler
Trykte deler
Trykte deler
Trykte deler
Trykte deler
Trykte deler

Det er tre 3D -trykte deler; hovedklokkehuset, frontdekselet og batteridekselet på baksiden.

Batteridekselet kan utelates.

Det er også en trykt "maske" under forsiden med ukedagene på. Jeg skrev ut dette på vanlig papir. Jeg har levert en.dwg og en.dxf fil av dette.

Det er 2 forsider tilgjengelig, det ene har ikke noe navn, bare hvis du ikke kan redigere delen.

Min 3D -skriver (0,4 mm dyse) hadde følgende innstillinger med Slic3r:

første laghøyde = 0,2 mm

laghøyde = 0,2 mm

sengetemperatur = 60 C

dysetemperatur = 210 C

vertikale omkretser = 2

horisontale skall = 3

fylling = stjerner rettlinjet ved 45 grader

ingen rand

ikke støttemateriale

Det anbefales på det sterkeste at du har en sengnivelleringsmetode

3D -trykte filer og masketegning her:

Trinn 4: Fullfør monteringsfilen

Nedenfor er en IGS -fil for hele forsamlingen for alle som ønsker å endre klokken.

Trinn 5: Installere bibliotekene

INSTALLER ESP -Tavler

Du trenger Arduino IDE. Installering av dette er ikke en del av dette instruerbare, men kan lastes ned fra HER.

Når Arduino IDE er installert, hvis du ikke allerede har gjort det, må du kopiere/lime inn teksten nedenfor i tekstboksen under Fil> Innstillinger - Ytterligere nettadresser for Boards Manager:

arduino.esp8266.com/stable/package_esp8266com_index.json

Start IDE på nytt.

Etter at du har gjort dette, gå til Verktøy> Brett> Styringsleder. La den fullføre oppdateringen, og du bør se ESP8266 -versjonen i listen over installerte brett.

INSTALLER BIBLIOTEKER

Installere alle biblioteker i mappen Documents/Arduino/Libraries som vanlig bortsett fra de som er installert av styringsleder.

Etter å ha installert biblioteker, start Arduino IDE på nytt, gå til Sketch> Include Library> Manage Libraries, la den fullføre oppdateringen. Du bør se de nye bibliotekene dine på listen.

RTClib - tilgjengelig herAdafruit_NeoPixel - tilgjengelig her

HCMAX7219 herfra

Blynk - tilgjengelig her. følg installasjonsinstruksjonene NØYE.

Alle de andre 'inkluderer' i NeoPixelClock -filen installeres enten av styrelederen eller pakkes med Arduino IDE -installasjonen.

Trinn 6: Installere fastvaren

På dette stadiet er det en god idé å koble alt sammen på et brødbrett for testformål.

Kontroller alle ledninger nøye før du kobler til 5v strømforsyningen og/eller USB -kabelen.

Naviger til Sketch -mappen Dokumenter> Arduino.

Lag en mappe "NeopixelClock".

legg inn.ino -filen nedenfor i mappen.

Åpne Arduino IDE.

Angi IDE for å vise linjenumre, gå til Fil> Preferanser og merk av for "Vis linjenumre" -boksen, klikk OK.

Koble NodeMCU -kortet til en USB -port.

Gå til Verktøy> Brett og velg NodeMCU 1.0 (ESP-12E Module)

Gå til Verktøy> Port og velg porten kortet er koblet til.

INSTALLER OTA FIRMWARE

For å bruke OTA -oppdatering må du først brenne et spesielt stykke fastvare på NodeMCU.

gå Fil> Eksempler> ArduinoOTA> BasicOTA.

et program vil laste inn IDE, fyll ut delen for ssid med ruterne SSID. Du kan se dette navnet hvis du holder musen over WiFi -ikonet i systemstatusfeltet.

Fyll ut passordet med nettverkspassordet ditt (vanligvis skrevet nederst på den trådløse ruteren.

Last nå opp til NodeMCU -kortet ditt via USB.

Når du er ferdig, trykker du på tilbakestillingsknappen på NodeMCU -kortet.

INSTALLER NEOPIXELCLOCK FIRMWARE

Gå til Fil> Skissebok> NeoPixelClock og åpne NeoPixelClock -filen.

Fyll ut din 'auth', 'ssid' og 'pass' skal være på linje 114.

Merk; hvordan du får autorisasjonstoken forklart i neste trinn

Du kan også angi din lokale tidssone på linje 121, dette kan være en 1/4 time mellom -12 og +14 i henhold til tidssoner rundt om i verden. Dette kan også angis i appen hvis du foretrekker det. Det er for tiden satt til Queensland, Australia.

På linje 332 må du angi IP -adressen til din lokale server hvis du bruker den.

Et notat om den lokale serverporten. På grunn av en nylig oppdatering av Blynk -programvaren er porten nå 8080 ikke 8442.

Endre dette hvis du bruker den nye oppdaterte programvaren.

Eller hvis du bruker Blynk -webserveren, kan du kommentere linje 332 og ikke kommentere linje 333.

Det er alt redigeringen som må gjøres.

Last nå opp dette til NodeMCU -kortet ditt via USB.

Når dette er lastet opp, kobler du USB -kabelen fra kortet.

Du vil se under Verktøy> Port en ny port (ser ut som en IP -adresse), velg denne som din port for å kommunisere med NodeMCU for fremtidige oppdateringer som du kan gjøre.

Hvis alt gikk bra, skulle klokken starte, hvis ikke trykker du på reset -knappen på NodeMCU -modulen.

Merk: Jeg har lagt merke til at det noen ganger ikke starter første gang, jeg fant at jeg koblet fra strømforsyningen og at tilkoblingen fungerer igjen de fleste ganger. Jeg jobber med en løsning for denne feilen ved oppstart.

Trinn 7: Smartphone -app

Smartphone -app
Smartphone -app
Smartphone -app
Smartphone -app

Slik begynner du å bruke den:

1. Last ned Blynk -appen: https://j.mp/blynk_Android eller https://j.mp/blynk_iOS hvis den ikke allerede er installert.

2. åpne appen eller logg deg på, hvis den er ny, må du opprette en konto.

MERK, dette er ikke det samme som den elektroniske kontoen.

3. Trykk på QR -ikonet i appen øverst og pek kameraet på QR -koden ovenfor, eller åpne lenken nedenfor -

tinyurl.com/yaqv2czw

4. en autorisasjonskode skal sendes til den nominerte e -posten din, som du bør legge inn i Arduino -koden der det ble angitt i et senere trinn. Hvis du trykker på mutterikonet, kan du sende en e -post om nødvendig.

Som nevnt før bør du opprette en konto online på www. Blynk.cc. før du gjør dette.

Tilgi meg for uklarhet, jeg kan ikke teste dette siden jeg allerede har appen og jeg ikke bruker webserveren.

Trinn 8: Bygg Vero Board Assembly

Bygging av Vero Board Assembly
Bygging av Vero Board Assembly
Bygging av Vero Board Assembly
Bygging av Vero Board Assembly
Bygging av Vero Board Assembly
Bygging av Vero Board Assembly

Jeg bestemte meg for å sette alle brettene og modulene på et stykke verobrett.

Dette holder alt pent og ryddig.

Skjematikken kan sees i.pdf -filen nedenfor.

Overskriftene på brettet ble fjernet etter testing. Jeg koblet alle eksterne enheter direkte til verokortet, da det ikke var nok plass til topptekstene og tilhørende kontakter.

Beklager at jeg ikke tok noen bilder av undersiden av brettet, men det burde ikke være så vanskelig å finne ut av det. Du kan til og med forbedre oppsettet mitt. Behold Vero -tavlen i samme størrelse, ellers passer den ikke til den 3D -trykte basen.

Med de logiske nivåskiftene går LV (+3.3v) til 3.3v på noen av 3v -pinnene på Arduino -modulen, HV (+5v) går til VIN -pinne på Arduino -kortet.

Alle grunner kommer fra alle/alle Arduino GND -pinnene og bør alle kobles sammen for å unngå sløyfer.

Koble til med noe som 26 gauge isolert enkeltkjernetråd, PTFE isolasjon ville være bra da det ikke smelter.

Kontroller alle ledninger nøye 2 eller 3 ganger.

Gå over det med et multimeter satt til kontinuitetskontroll, kontroller at alle Gnds er koblet tilbake til VIN GND.

Kontroller alle +5v -tilkoblingene på RTC -modulen, de to nivåskiftemodulene HV -pinner og VIN +5v -pinnen på NodeMCU -modulen.

God idé å sjekke alle andre ledninger også.

Trinn 9: Urmontering

Klokke montering
Klokke montering
Klokke montering
Klokke montering
Klokke montering
Klokke montering

Når du har skrevet ut delene, rengjør du alle blink og klumper og støt med en skarp hobbykniv.

Fordi jeg bare hadde blått og svart filament, malte jeg innsiden av LED -hulrommene med sølvmodellmaling.

Dette tror jeg burde bidra til å reflektere lyset bedre og også forhindre blødning av lys gjennom veggene til tilstøtende hulrom.

Verobordet må kobles til:

til LED -stripen +5v, Gnd og DIN fra vero board -enheten.

til 7 -segmentet displayet fra vero board -enheten.

til DC -kontakten fra vero board -enheten.

En ledning til den separate 7 -veis LED -stripen (DIN) fra enden (nummer 60) på den viktigste 60 -veis LED -stripen (DOUT).

Jeg loddet bare ut dataene (DOUT) fra enden (LED -nummer 60) på 60 -veis LED -stripe, +5v og Gnd for 7 -veis LED -stripe jeg koblet fra verobordet.

For å forhindre shorts, la jeg et lite tynt kort mellom begynnelsen og slutten av 60 -veis LED -stripen, da de var veldig nære.

Mål og kutt alle ledninger til passende lengder. Jeg la til 5 eller 6 mm for å gi litt spillerom.

Jeg fjernet ikke det klebende tape -papiret fra LED -stripene, dette ville ha gjort det vanskelig å sette i basen og veldig vanskelig å fjerne om nødvendig.

Jeg syntes stripene passet godt og tett, skyv deretter helt til bunnen av hulrommet.

Plasser Vero-kortmonteringen i hulrommet. Det er avstandsstykker for å holde den 2 mm fra bunnen.

Sett det 8-veis 7-segmentet displayet i hulrommet. Det er avstandsstolper for montering av dette.

DC -kontakten passer godt inn i hulrommet, lodd ledningene til dette på innsiden av etikettene. Fjern sidemerket hvis du ønsker det.

Alle ledningene skal legges pent inn i de medfølgende hulrommene.

Slutt til slutt strømkontakten fra strømforsyningen gjennom hullet og sett den inn i likestrømkontakten, skyv kabelen inn i sporet under.

Kontroller alle ledninger nøye 2 eller 3 ganger. Se koblingsskjema nedenfor.

Trinn 10: Monter frontdekselet for å fullføre

Baseblokken har flere små pinner som stikker opp på den ytre ringen, disse skal være på linje med hullene i frontdekselet.

Papirmasken skal skrives ut i svart, klippes ut og limes på forsiden med en limpinne.

Hullene blir stanset gjennom papiret når det, med frontdekselet, trykkes mot bunnen.

Vi er klar til å gå, koble den til, klokken skal starte automatisk, hvis den ikke gjør det, som jeg fant ut flere ganger, koble fra strømmen og koble den til igjen.

Hvis du ikke har batteri i RTC -modulen, må du angi tid og dato.

Gjør dette med appen, angi tidssonen med opp/ned -kontrollen, og trykk deretter på 'SET NTP TIME' -knappen.

Du vil se i appterminalen om det lykkes eller ikke, hvis ikke prøv igjen.

Når DONE vises, kan du trykke på klokke -knappen og klokken skal gå og vise tid, dato og dag i uken.

Mønstre kan kjøres ved å trykke på Mønstre -knappen, dette kan når som helst avbrytes ved å trykke på Klokke -knappen eller Mønstre -knappen igjen.

Lysstyrken på klokke -LED -er og 7 -segmenters display kan justeres for lysstyrke med tilhørende glidebrytere.

Alle lysdioder kan slås på ved å trykke på Av -knappen.

Heng den på veggen, og lyset vil skinne utover på veggen, spesielt vakkert i et mørkt rom.

Eventuelle spørsmål vil jeg bare prøve å svare på.

NYT og ikke glem å stemme på meg.

************************************************* ************************************************* ***** DETTE ER ET OPPTAK I MIKROKONTROLLERKONKURRANSE, VENNLIGST STEM PÅ MEG ****************************** ************************************************* ************************

Anbefalt: