Innehållsförteckning:
Video: Bred synkroniserade lysdioder i grannskapet: 5 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:35
Jag hade några trådlösa LED -barer som jag trodde jag kunde släcka för semestern. Men på min gård kunde de lika gärna ha kopplats. Så, vad är den svalare utmaningen? LED -dekorationer vid alla hus på mitt block med en synkroniserad display! Under det här galna året är det ett sätt att koppla ihop oss.
Dessa är ESP8266 -drivna LED -strängar, och de är anslutna till WiFi -nät, så att de alla visar samma steg i animationssekvensen samtidigt. Eftersom de använder nätkod för att ansluta kan de vara några hus från varandra och meddelandena överförs från nod till nod.
De går på 5 volt, och jag använde nätadaptrar, men de kan också köras ett tag på USB -batterier. Så de är bärbara, driver sitt eget WiFi -nätverk som inte är anslutet till Internet och kan köras från nätet.
Alla våra grannar var glada över att ha denna gemensamma dekoration, och det är riktigt trevligt hur du ser dem alla visa samma display när du går längs gatan. Jag har några bilder här av några framför mitt hus för testning, men det var riktigt svårt att fotografera dem på gatan.
Steg 1: Delar
ESP8266 D1 Mini - Jag använde D1 Mini -modulerna eftersom allt jag behöver är en I/O -stift för lysdioderna. Detta projekt kan utföras utan lödning med hjälp av en terminalskärm som denna och en annan ESP8266 -modul. Det finns en version av D1 Mini med en bättre antenn - D1 Mini Pro. Den har en keramisk antenn och en U. FL -anslutning för en extern antenn, men du måste flytta ett ytmonterat 0 ohm -motstånd för den externa antennen. Mer diskussion i ett senare steg.
WS2811 LED -strängar - Jag använde WS2811 -trådar eftersom de är vattentäta (förutom JST -kontakterna) och lätta att arbeta med. WS2812b "Neopixel" remsor skulle använda exakt samma kod etc. Jag använde 5v sådana, men du kan få dem i 12v (använd mindre ström) - du skulle behöva en spänningsomvandlare för ESP8266s, då. Du kan också få WS2811 LED -strängar med vattentäta kontakter om du vill. LED -strängarna jag använde har JST SM -kontakter i båda ändarna - den kvinnliga är ingången, även om jag har sett dem anslutna åt andra hållet (hane som ingång). Riktningen är också markerad på själva lysdioderna. Det finns också kraftinjektionstrådar - jag klippte av ändarna så att de förtinnade delarna inte kan bli korta. Du kan också köpa dem i förpackningar om 10 st.
330 Ohm 1/4 Watt motstånd - detta används vid datapinnen på ESP8266 för att förhindra flimmer på lysdioderna.
JST SM 3 -stifts hankontakt - Dessa ska anslutas till LED -remsorna. Observera att "han" -kontakten har en huva över sig.
2,1 mm CCTV -honkontakt - dessa används för strömkontakten. Du kan använda något annat anslutningssystem för detta om du vill.
5V nätaggregat - förstärkaren beror på hur många lysdioder du kommer att ha. En 2A är förmodligen OK för 50 eller 100 lysdioder som aldrig är helt på (se ledningssteget för mer info).
JST SM 3 -stifts förlängningstråd eller en 2,1 mm förlängningskabel - eftersom JST -kontakten på D1 Mini ligger nära lysdioderna, vill du generellt ha en förlängning så att lysdioderna kan placeras längre bort från processorn. I mitt fall hamnade jag med CPU: n högre upp i dekorationen för att få bättre WiFi -räckvidd, så jag höll CPU: n nära lysdioderna och använde istället en 2,1 mm förlängningstråd.
USB till 2,1 mm kabel - detta är valfritt - låter dig driva strängen från valfri USB -källa eller batteri.
3 mm krympslang - du behöver bara cirka 1 tum av detta för att täcka motståndet på D1 Mini.
20 mm klar värmekrympslang - detta är delvis valfritt för att skydda kontakterna på D1 Mini. Se till att klämma runt återställningsknappen efter applicering om slangen komprimerar omkopplaren.
Vattentät låda - för att skydda strömförsörjningen och CPU: n utanför. De flesta av mina grannar använde bara plastpåsar.
1/2 "EMT -rör - en 29" bit passar på godisrörets form - jag använde 4 dragkedjor för att hålla den kvar. Jag försökte 1/2 "PVC, och det passar, men berör lysdioderna på båda sidor.
3/8 "x 3 'armeringsjärn - när EMT är fäst vid formen kan du slå armen i marken och lägga EMT -röret över den. 1/2" armeringsjärn passar, men du måste klippa av eventuella böjda delar, och det är nära - om det blir platt eller något när man slår in det, kommer det att vara mycket tätt. Så det är mer troligt att 3/8 "lätt rensar EMT -rörets innerdiameter.
Candy Cane -form - se steget om dessa, du kan göra en form, drapera dem över en buske eller använda en form som denna.
Steg 2: Kontrollenhet
Styrenheten består av D1 Mini (ESP8266), en 2,1 mm CCTV -honkontakt, ett 330 ohm -motstånd och en 3 -stifts JST -hankontakt.
Antagandet för detta projekt är att du kommer att använda 50-100 lysdioder. Om du vill använda mer måste du använda ströminjektion för att driva alla lysdioder. Se denna andra instruerbara för en djupare diskussion om det.
Med 50 lysdioder som är helt vita, skulle de dra 50 x 0,06A = 3 ampere. Så, med en 2A -adapter, antar vi att de aldrig kommer att vara helt på. För 100 lysdioder är max 6A, så ännu mer försiktighet bör iakttas för att bara ha några tända åt gången. Även med 100 lysdioder vid 0,02A vardera har vi 2 ampere som används. Så en högre strömförsörjning rekommenderas, även om jag ställde in skärmarna för att inte använda alla lysdioder eller färger på en gång, dämpade dem mycket och har börjat med 2A -tillbehör med större i reserv. Detta är en bra artikel om att minska strömkraven.
330 ohm -motståndet i linje med datatråden ska förhindra flimmer från elektronisk ringning eftersom data är en ganska hög frekvens. Detta är mer en faktor med massor av lysdioder, men det är bra att lägga till det.
Jag lödde motståndet direkt till D1 Mini, men lämnade ungefär 1/8 "av ledningen ovanför brädet så att jag kunde böja dem platta. Jag använde cirka 1" 3 mm värmekrympning på motståndet för att förhindra att det blev kortslutet på styrelse.
Jag använde 20 mm klar värmekrympning för att skydda D1 Mini från att vidröra metall etc. Var noga med att kontrollera återställningsomkopplaren på sidan - du kan behöva minska värmekrympningen något för att se till att den inte trycker på omkopplaren. Jag behövde det på alla mina.
Observera att jag inte tycktes behöva en nivåväxlare från 3.3V ESP8266 -utgångarna och lysdioderna som körs på 5V (eftersom LED -chipspecifikationen ska ha datalinjen inte mindre än 70% av utbudet). Jag behövde en diod/offer -LED i tidigare projekt (steg 3) med WS2812b -remsor, men de direkta WS2811 -chipsen i lysdioderna verkar OK hittills.
Du kan göra detta utan lödning! En ESP8266 -terminalsköld med en annan CPU skulle fungera lika bra. Formfaktorn D1 Mini är fin och liten, men alla fungerar ungefär lika mycket.
Steg 3: Former
LED -strängarna kan vara i fri form, eller så kan du göra dem till former - antingen DIY eller från en webbutik. Jag beställde några former från HolidayCoro - några små LED -träd, en strumpa och en godisrott. Strumpan tog 50 lysdioder snyggt - längden på en sträng. Det lilla trädet tar 100 lysdioder, men du kan bara göra hälften av det om du vill - mot gatan. Till slut var godisroten grannfavorit eftersom den var lite större. 99 lysdioder, och jag lämnade den sista på baksidan med tanken att den skulle kunna användas för felsökning.
Eftersom formerna kom i vitt bestämde vi oss för att måla röda ränder på dem så att de ser bättre ut på dagtid. Jag maskerade dem, gjorde en snabb fin sand, en torkning med aceton (fullstyrka nagellackborttagare) och använde två lager sprayfärg som fungerar på plast. Det verkade hänga bra. Vi gjorde mestadels på ena sidan och några på andra sidan för ett par hus som hade 2 av dem.
Steg 4: Kod och WiFi
D1 Mini använder en Espressif ESP8266 -modul. Jag programmerade det med Arduino IDE, så det känns som en kraftfull Arduino med WiFi inbyggt. Det finns många instruktioner på Internet om hur du konfigurerar Arduino IDE för ESP8266 och D1 Mini så jag kommer inte att upprepa dem här.
Koden är baserad på en tidigare instruerbar. Den använder Painless Mesh -biblioteket för att få alla processorer att prata med varandra. Jag använde FastLED-biblioteket eftersom jag tidigare hade problem med nätbiblioteket och Neopixel-biblioteket, och jag testade inte det igen den här gången.
Jag är inte säker på vad maxvärdet är för antalet noder. Vissa inlägg indikerar att det kommer att begränsas av antalet meddelanden och CPU-typer och kanske är taket runt 30-60 noder. Denna applikation skickar inte många meddelanden - bara animationsändringen, även om det finns några automatiska sådana som maskbyte och tidssynkroniseringsmeddelanden.
Du kan ansluta lysdioderna till D1 Mini medan du kodar, men du kanske vill ha en extern strömförsörjning om du har mer än 50 eftersom du möjligen kommer att överskrida strömmen från din dators USB -port och effektregulatorn på D1 Mini. Med det sagt, med min kod som inte tänder lysdioderna fullt, kunde jag programmera 100 lysdioder på USB -anslutningen utan problem.
ESP8266 -modulen har WiFi ombord. Eftersom nätkoden (PainlessMesh) som vi använder skapar en åtkomstpunkt för varje modul, är räckvidden för en stadsdel bred räckvidd viktig. Jag använde sockerrörsformer och satte CPU: n överst för att få det bästa intervallet, och det var cirka 50-100 fot - en eller två gårdar i mitt grannskap. Högre och bättre siktlinje (LOS) förbättrar saker. Räckvidden gick i vissa fall över gatan (berodde mer på bilar som blockerade LOS).
Det fanns ett par hus som inte synkroniserades på grund av WiFi -hinder, men lamporna ser bra ut även när de inte synkroniseras. Jag gjorde en "repeater" -nod med bara en D1 Mini på en pinne som drivs av ett USB -batteri. När de placerades mellan husen synkroniserades de ordentligt. För en mer avlägsen repeater kan du eventuellt använda ett sol -USB -batteri, även om de inte laddas särskilt snabbt.
Jag såg fortfarande intermittenta synkroniseringsproblem och hittade den här anteckningen om att ha för många noder eller att de skulle spridas:
gitlab.com/painlessMesh/painlessMesh/-/wik…
Med den inställningen började det fungera mycket bättre! Detta betecknar en viss nod som den huvudsakliga, så min kod för att förhandla om den kontrollerande noden är onödig, vilket kan dela upp nätet. Jag har bifogat ett uppdaterat/alternativt kodprov. Detta tillvägagångssätt kräver att huvudnoden är på för att de ska synkroniseras, så nätet är inte lika fultolerant, men fungerar bättre när det sprids ut som mitt. Var noga med att redigera koden för den versionen - endast en nod bör vara inställd på roten - se kommentarerna i koden.
Jag har också lagt till ytterligare en uppdatering till SetRoot -varianten: Jag lade till kod för att återställa ESP8266 om det inte har varit några kommandon på 10 minuter. Detta ger noden en chans att återupptäcka rotnoden. Detta verkade hjälpa till med några av de mer avlägsna noder.
I slutet av säsongen kunde jag testa några D1 Mini Pro -moduler. De har en keramisk antenn på kortet, och du kan också använda en U. FL -kontakt och en extern antenn om du flyttar ett nollohm -motstånd. Jag försökte ett par som hade synkroniseringsproblem med D1 Mini -proffsen med de keramiska antennerna, och de fungerade bättre. Jag gjorde några efterföljande tester med en nod tvärs över mitt hus. Baserat på resultaten kommer vi att byta till D1 Mini Pro -modulerna med de keramiska antennerna nästa år.
Med en fjärrkontroll D1 Mini: Endast D1 Mini Pro med en extern antenn såg den och signalstyrkan var låg
Med en fjärrkontroll D1 Mini Pro med keramisk antenn: D1 Mini, D1 Mini Pro med keramisk antenn och D1 Mini Pro med en extern antenn såg alla med ungefär samma signalstyrka, så det var en förbättring. Kortens orientering (antenner) spelar en viss roll
Med en fjärrkontroll D1 Mini Pro med en extern antenn: Alla andra kort såg det, men signalstyrkan var inte mycket bättre än testerna med den inbyggda keramiska antennen, så jag kommer inte att bry mig om att flytta dessa nollohm -motstånd och sätta antenner på polkagrisar
Steg 5: Slutmontering
När du har styrenheten klar och programmerad är det bara att ansluta lysdioderna till styrenheten med JST -kablarna och en 5v strömförsörjning på 2,1 mm -uttaget.
JST -förlängningen bör vara till hjälp för att alltid hålla styrenheten och nätadaptern från lysdioderna. Eller för att få CPU: n högre upp lade jag en liten plastpåse över dem med en vridning och använde en 2,1 mm förlängningssladd till strömförsörjningen.
Den vattentäta lådan hjälper till att skydda adaptern och processorn, men de flesta av mina grannar använde enkla plastpåsar.
Andra pris i Holiday Decorations Speed Challenge
Rekommenderad:
En IoT Halloween Pumpa - Kontroll -lysdioder med en Arduino MKR1000 och Blynk -app ???: 4 steg (med bilder)
En IoT Halloween Pumpa | Kontroll -lysdioder med en Arduino MKR1000 och Blynk -app ???: Hej alla, För några veckor sedan var det Halloween och efter traditionen huggade jag ut en fin pumpa till min balkong. Men med min pumpa utomhus insåg jag att det var ganska irriterande att behöva gå ut varje kväll för att tända ljuset. Och jag
Fire Pit med ljudreaktiv låga, Bluetooth -högtalare och animerade lysdioder: 7 steg (med bilder)
Fire Pit med ljudreaktiv låga, Bluetooth -högtalare och animerade lysdioder: Ingenting säger sommartid som att koppla av vid elden. Men vet du vad som är bättre än eld? Eld OCH Musik! Men vi kan gå ett steg, nej, två steg längre … Eld, musik, LED -lampor, ljudreaktiv flamma! Det kan låta ambitiöst, men det här
Vu -mätare med Neopixel -lysdioder: 8 steg (med bilder)
Vu -mätare med Neopixel Leds: I den här självstudien kommer jag att visa dig hur du bygger en vacker VU -mätare med neopixel LEDs.its har 5 olika animationer, ljusintensitetskontroll och känslighetskontroll. superenkelt låt oss börja
Wifi -synkroniserade lampor: 10 steg (med bilder)
Wifi-synkroniserade lampor: Ett projekt för någon som lyser upp ditt liv … För 2 år sedan skapade jag i julklapp till en långdistansvän lampor som skulle synkronisera animationer via internetanslutning. I år, 2 år senare, skapade jag den här uppdaterade versionen med
WiFi Mesh -synkroniserade LED -staplar: 3 steg (med bilder)
WiFi Mesh Synchronized LED Bars: Detta projekt är en samling LED -barer med individuellt kontrollerbara digitala LED -lampor (WS2812b " Neopixels "). De tillåter animationer att göras över dem utan att koppla ihop dem. De använder ett WiFi Mesh för att ansluta till varandra, och