Innehållsförteckning:

NeoPixel -klocka: 10 steg (med bilder)
NeoPixel -klocka: 10 steg (med bilder)

Video: NeoPixel -klocka: 10 steg (med bilder)

Video: NeoPixel -klocka: 10 steg (med bilder)
Video: Хватит Покупать в МАГАЗИНЕ! Сделайте САМИ! 3 Ингредиента + 10 Минут! Сыр в Домашних Условиях 2024, November
Anonim
Image
Image
Elektroniska delar krävs
Elektroniska delar krävs

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

DETTA ÄR EN ANGÅNG I MICRO CONTROLLER -TÄVLINGEN, VÄNLIGA RÖSTA PÅ MIG

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

Jag byggde en NeoPixel infinity -spegel för några år sedan medan jag var i Thailand och kan ses HÄR.

Jag gjorde det på det svåra sättet att inte använda en Arduino utan en fristående mikroprocessor, en PIC18F2550. Detta innebar att gräva ner i registren och tidpunkterna för Micro för att skriva koden, varav några innehöll montering.

Det här är all stor kunskap att ha och har hållit mig i god form eftersom det gör att arbeta med Arduino barns lek. Det mesta av arbetet har gjorts med hjälp av tredjepartsbibliotek medan jag innan jag skrev min egen bibliotekskod.

Denna klocka var utformad för att avge ljus från periferin till väggen som den är fäst vid med WS2812B individuellt adresserbara RGB -lysdioder med ett avstånd på 144 per meter. Detta gav mig en klockdiameter på 200 mm, något jag kunde göra själv på min 3D -skrivare.

Det har en fantastisk effekt, särskilt på natten eller i ett mörkt rum, ljuset lyser ut cirka 500 mm vilket ger en total bländning av över en meters diameter. Mönstren är fantastiska.

Klockan visar timmar (blå), minuter (grön) och sekunder (röd). Dessutom visas datumet på en 8 -siffrig 7 -segmentskärm och veckodagen i en listform.

Klockan styrs av smarttelefonen via WiFi med Blynk -appen och en lokal Blynk -server som körs på en RPi 3.

Användningen av en lokal server för Blynk är valfri och inställningen är inte en del av detta instruerbara. Webbhotellet Blynk kan användas efter att du har skapat ett konto på www.blynk.cc och laddat ner appen.

Det finns massor av information om hur man använder Blynk på deras webbplats, så det är inte en del av detta instruerbara.

Vid ett senare steg i denna instruerbara finns en QR -kod att skanna, du kommer då att ha min app på din telefon.

Appen har kontroller för att visa klockan eller mönstren (med LCD -feedback på appen), möjligheten att ställa in din tidszon var du än är i världen och få tiden via en NTP -server. Det kan också ställas in för att sova.

Det finns en Real Time Clock -modul med batteribackup som ger tid/datumfunktioner till Arduino.

Firmware på NodeMCU-E12 i klockan kan uppdateras via luften (OTA).

Nu kan vi börja ….

Steg 1: Verktyg krävs

Ett bra lödkolv och löd

trådavdragare

små trådskärare

liten tång med lång nos

liten såg för skärning av vero -bräda

vass hobbykniv

sax

papperslim

Steg 2: Elektroniska delar krävs

Elektroniska delar krävs
Elektroniska delar krävs
Elektroniska delar krävs
Elektroniska delar krävs

1 x NodeMCE-12E-modul härifrån

1 x RTC -klockmodul HÄR

1 x 8 -siffrig 7 -segment Max7219 -modul här

1 x likströmskontakt här

2 x nivåväxlar (krävs eftersom Arduino är 3,3v och RTC & 7 -segmentskärm är 5v) här

68 lysdioder på en WS2812B 114/mtr LED -remsa här.

DC 5v 10A strömförsörjning här.

10kOhm 1/4W resistor.

Vid behov anslutningstråd.

Cirka 77 mm x 56 mm Vero -bräda för att sätta ihop alla moduler och dra upp.

Jag använde faktiskt en Adafruit -nivåväxel för RTC -modulens I2c -linjer eftersom den skulle vara I2c -säker !!

Men jag tycker att de flesta 3.3v till 5v dubbelriktade logiska nivåväxlar borde fungera.

Att skära LED -remsan slösade bort en LED eftersom kuddarna för att lödda båda ändarna av de 60 LED -remsorna krävdes och kuddarna krävs på de 7 LED -remsorna.

Steg 3: Tryckta delar

Tryckta delar
Tryckta delar
Tryckta delar
Tryckta delar
Tryckta delar
Tryckta delar

Det finns tre 3D -tryckta delar; huvuduret, framluckan och batteriluckan på baksidan.

Batteriluckan kan utelämnas.

Det finns också en tryckt "Mask" under framsidan med veckodagarna på. Jag skrev ut detta på vanligt papper. Jag har levererat en.dwg- och en.dxf -fil av detta.

Det finns 2 främre omslag tillgängliga, en har inget namn på den, bara om du inte kan redigera delen.

Min 3D -skrivare (0,4 mm munstycke) hade följande inställningar med Slic3r:

första lagerhöjd = 0,2 mm

lagerhöjd = 0,2 mm

sängtemp = 60 C

munstycks temp = 210 C

vertikala omkretsar = 2

horisontella skal = 3

infill = stjärnor rätlinjig vid 45 grader

ingen kant

inget stödmaterial

Det rekommenderas starkt att du har en sängutjämningsmetod

3D -tryckta filer och maskritning här:

Steg 4: Komplett monteringsfil

Nedan finns en IGS -fil för hela enheten för alla som vill ändra klockan.

Steg 5: Installera biblioteken

INSTALLERA ESP -KORT

Du behöver Arduino IDE. Att installera detta är inte en del av denna instruerbara men kan laddas ner från HÄR.

När Arduino IDE är installerat, om det inte redan är gjort, måste du kopiera/klistra in texten nedan i textrutan under Arkiv> Inställningar - Ytterligare webbadresser för Boards Manager:

arduino.esp8266.com/stable/package_esp8266com_index.json

Starta om IDE.

När du har gjort detta går du till Verktyg> Styrelse> Styrelsehanterare. Låt den slutföra uppdateringen och du bör se ESP8266 -communityversionen i listan över installerade kort.

INSTALLERA BIBLIOTEK

Installera alla bibliotek i mappen Dokument/Arduino/Libraries som vanligt bortsett från dem som installerats av styrelseschef.

Efter installation av bibliotek, starta om Arduino IDE, gå till Sketch> Inkludera bibliotek> Hantera bibliotek, låt det slutföra uppdateringen, du bör se dina nya bibliotek i listan.

RTClib - tillgänglig härAdafruit_NeoPixel - tillgänglig här

HCMAX7219 härifrån

Blynk - tillgänglig här. följ installationsinstruktionerna noggrant.

Alla andra "inkluderar" i NeoPixelClock -filen installeras antingen av styrelsechefen eller förpackas med Arduino IDE -installationen.

Steg 6: Installera firmware

I detta skede är det en bra idé att koppla ihop allt på en brödbräda för teständamål.

Kontrollera alla kablar noggrant innan du ansluter 5V -strömförsörjningen och/eller USB -kabeln.

Navigera till din Sketch -mapp Dokument> Arduino.

Skapa en mapp "NeopixelClock".

lägg in.ino -filen nedan i mappen.

Öppna Arduino IDE.

Ställ in IDE för att visa radnummer, gå till Arkiv> Inställningar och markera rutan "Visa radnummer", klicka på OK.

Anslut ditt NodeMCU -kort till en USB -port.

Gå till Verktyg> Kort och välj NodeMCU 1.0 (ESP-12E-modul)

Gå till Verktyg> Port och välj porten som ditt kort är anslutet till.

INSTALLERA OTA FIRMWARE

För att använda OTA -uppdatering måste du först bränna en speciell bit firmware på NodeMCU.

gå Arkiv> Exempel> ArduinoOTA> BasicOTA.

ett program kommer att ladda in IDE, fyll i delen för ssid med dina routers SSID. Du kan se detta namn om du för musen över WiFi -ikonen i systemfältet.

Fyll i lösenordet med ditt nätverkslösenord (vanligtvis skrivet längst ner på den trådlösa routern.

Ladda nu upp till ditt NodeMCU -kort via USB.

När du är klar trycker du på återställningsknappen på NodeMCU -kortet.

INSTALLERA NEOPIXELCLOCK FIRMWARE

Gå till Arkiv> Skissbok> NeoPixelClock och öppna NeoPixelClock -filen.

Fyll i din 'auth', 'ssid' och 'pass' ska stå på rad 114.

Notera; hur man får auktoritetstoken förklaras i nästa steg

Du kan också ställa in din lokala tidszon på linje 121, detta kan vara en 1/4 timme mellan -12 och +14 enligt tidszoner runt om i världen. Detta kan också ställas in i appen om du föredrar det. Det är för närvarande inställt på Queensland, Australien.

På radnummer 332 måste du ange IP -adressen för din lokala server om du använder den.

En anteckning om den lokala serverporten. På grund av en ny uppdatering av Blynk -programvaran är porten nu 8080 inte 8442.

Ändra detta om du använder den nya uppdaterade programvaran.

Eller om du använder Blynks webbserver, kommentera rad 332 och kommentera rad 333.

Det är all redigering som behöver göras.

Ladda nu upp detta till ditt NodeMCU -kort via USB.

När detta har laddats upp, koppla bort USB -kabeln från kortet.

Du kommer att se under Verktyg> Porta en ny port (ser ut som en IP -adress), välj den här som din port för att kommunicera med NodeMCU för framtida uppdateringar som du kan göra.

Om allt gick bra skulle klockan starta, om inte, tryck på "reset" -knappen på NodeMCU -modulen.

Obs: Jag har märkt att det ibland inte startar första gången, jag hittade att jag kopplade bort strömförsörjningen och återanslutningen fungerar de flesta gånger. Jag arbetar med en lösning för det här misslyckandet att starta korrekt.

Steg 7: Smartphone -app

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

Så här börjar du använda den:

1. Ladda ner Blynk -appen: https://j.mp/blynk_Android eller https://j.mp/blynk_iOS om den inte redan är installerad.

2. öppna appen eller logga in, om den är ny måste du skapa ett konto.

OBS, detta är inte samma sak som onlinekontot.

3. Tryck på QR -ikonen i appen högst upp och rikta kameran mot QR -koden ovan, eller öppna länken nedan -

tinyurl.com/yaqv2czw

4. en behörighetskod ska skickas till ditt nominerade e -postmeddelande, som du ska lägga in i Arduino -koden där det anges i ett senare steg. Om du trycker på mutterikonen kan du skicka e -post igen om det behövs.

Som nämnts tidigare bör du skapa ett konto online på www. Blynk.cc. innan du gör detta.

Förlåt mig för vagt, jag kan inte testa detta eftersom jag redan har appen och jag använder inte webbservern.

Steg 8: Bygga Vero Board Assembly

Bygga Vero Board Assembly
Bygga Vero Board Assembly
Bygga Vero Board Assembly
Bygga Vero Board Assembly
Bygga Vero Board Assembly
Bygga Vero Board Assembly

Jag bestämde mig för att lägga alla brädor och moduler på en bit verobord.

Detta håller allt snyggt och snyggt.

Schemat kan ses i.pdf -filen nedan.

Rubrikerna på tavlan togs bort efter testning, jag kopplade alla kringutrustning direkt till verokortet eftersom det inte fanns tillräckligt med utrymme för headers och tillhörande kontakter.

Förlåt att jag inte tog några bilder på undersidan av tavlan, men det borde inte vara så svårt att räkna ut det. Du kan till och med förbättra min layout. Håll Vero -kortet samma storlek annars passar det inte 3D -tryckta basen.

Med de logiska nivåväxlarna går LV (+3.3v) till 3.3v på någon av 3v -stiften på Arduino -modulen, HV (+5v) går till VIN -stift på Arduino -kortet.

Alla Grounds kommer från alla/alla Arduino GND -stiften och bör alla länkas ihop för att undvika slingor.

Anslut med något som 26 gauge isolerad enda kärntråd, PTFE isolering skulle vara bra eftersom det inte smälter.

Kontrollera alla dina ledningar noggrant 2 eller 3 gånger.

Gå över det med en multimätare inställd på kontinuitetskontroll, kontrollera att alla Gnds är anslutna tillbaka till VIN GND.

Kontrollera alla +5v -anslutningar på RTC -modulen, de två nivåskiftarmodulernas HV -stift och VIN +5v -stiftet på NodeMCU -modulen.

Bra idé att kolla alla andra ledningar också.

Steg 9: Klockmontering

Klockanordning
Klockanordning
Klockanordning
Klockanordning
Klockanordning
Klockanordning

När du har skrivit ut delarna rensa bort eventuella blinkningar och klumpar och stötar med en vass hobbykniv.

Eftersom jag bara hade blått och svart glödtråd målade jag insidan av LED -hålrummen med silverfärg.

Detta tycker jag borde hjälpa till att reflektera ljuset bättre och också hjälpa till att förhindra blödning av ljus genom väggarna till intilliggande hålrum.

Vero board -enheten måste anslutas:

till LED -remsan +5v, Gnd och DIN från verokortet.

till 7 -segmentskärmen från verokortet.

till DC -uttaget från verokortet.

En ledning till den separata 7 -vägs LED -remsan (DIN) från slutet (nummer 60) av den huvudsakliga 60 -vägs LED -remsan (DOUT).

Jag lödde bara ut data (DOUT) från slutet (LED -nummer 60) på 60 -vägs LED -remsan, +5v och Gnd för 7 -vägs LED -remsan som jag kopplade från verokortet.

för att förhindra shorts placerade jag en liten bit tunt kort mellan början och slutet av 60 -vägs LED -remsan eftersom de var väldigt nära.

Mät och klipp alla trådar till lämpliga längder, jag lade till 5 eller 6 mm för att ge lite spelrum.

Jag tog inte bort det klibbiga tejpstödspapperet från LED -remsorna, detta skulle ha gjort det svårt att sätta i basen och mycket svårt att ta bort om det behövs.

Jag tyckte att remsorna passade fint och tätt, tryck sedan hela vägen till botten av hålrummet.

Placera Vero-kortet i hålrummet, det finns avstånd för att hålla det från botten med 2 mm.

Sätt 8-vägs 7-segmentskärmen i hålrummet, det finns avstängningsstolpar för montering av detta.

DC -uttaget passar i sitt hålrum tätt, löd trådarna till detta på insidan av etiketterna. Ta bort sidmärket om du vill.

Alla ledningar ska läggas snyggt i de medföljande hålrummen.

För slutligen strömuttaget från strömförsörjningen genom hålet och dra in det i likströmskontakten, skjut in kabeln i spåret som finns under.

Kontrollera alla dina ledningar noga 2 eller 3 gånger. Se kopplingsschema nedan.

Steg 10: Montera framluckan så att den är klar

Basblocket har flera små tappar som sticker upp på den yttre ringen, dessa ska vara i linje med hålen i frontluckan.

Pappersmasken ska tryckas i svart, klippas ut och limmas på framsidan med något som en limpinne.

Hålen stansas genom papperet när det trycks mot basen med frontluckan.

Vi är alla redo att gå, koppla in den, klockan ska starta automatiskt.

Om du inte har något batteri i RTC -modulen måste du ställa in tid och datum.

Gör detta med appen, ställ in tidszonen med upp/ner -kontrollen och tryck sedan på knappen 'SET NTP TIME'.

Du kommer att se i appterminalen om det lyckas eller inte, om inte försök igen.

När DONE visas kan du trycka på klockan och klockan ska gå och visa tid, datum och dag på veckan.

Mönster kan köras genom att trycka på knappen Mönster, detta kan avbrytas när som helst genom att trycka på klocka -knappen eller knappen Mönster igen.

Klockans lysdioder och 7 -segmentskärmen kan justeras för ljusstyrka med tillhörande reglage.

Alla lysdioder kan släckas genom att trycka på klocka Av -knappen.

Häng den på väggen så kommer ljuset att lysa utåt på väggen, särskilt vackert i ett mörkt rum.

Eventuella frågor kommer jag bara att gärna besöka.

NJUTA och glöm inte att rösta på mig.

************************************************** ************************************************** ***** DETTA ÄR EN ANGÅNG I MICRO CONTROLLER -TÄVLINGEN, VÄNLIGA RÖSTA MIG ****************************** ************************************************** ************************

Rekommenderad: