Indholdsfortegnelse:

RGB LED Pixel Shades: 17 trin (med billeder)
RGB LED Pixel Shades: 17 trin (med billeder)

Video: RGB LED Pixel Shades: 17 trin (med billeder)

Video: RGB LED Pixel Shades: 17 trin (med billeder)
Video: rdot electrochromic display and high-reflectance RGB pixel towards full-color reflective display 2024, Juli
Anonim
Image
Image
RGB LED Pixel Shades
RGB LED Pixel Shades
RGB LED Pixel Shades
RGB LED Pixel Shades

Hej alle sammen, i denne Instructable vil jeg vise dig, hvordan du laver et par LED -pixel nuancer. Oprindeligt skabte jeg dem til at bære rundt i huset i julen / nytåret, som et mobilt ornament, men de endte med at blive lidt mere cyberpunk, end jeg havde regnet med, så de skulle også være sjove at have på ved andre arrangementer!

Skærmene bruger 76 WS2812b LED'er (aka Neopixels). Lysdioderne projicerer kun deres lys i en retning, så du kan se gennem nuancerne uden at blænde dig selv. WS2812b er individuelt adresserbare, hvilket betyder, at du styrer farven på hver LED. Dette lader dig oprette næsten enhver effekt, du kan forestille dig (så længe du kan kode det). Hvis du ikke er sikker på, hvilke effekter du måske kan lide, eller ikke vil skrive en masse kode, skal du ikke bekymre dig; Jeg har skrevet kode til at styre nuancerne, herunder 40 forskellige effekter. Nuancerne inkluderer også tilslutninger til en MAX4466 mikrofon (til lydreaktive effekter) og et HC-05 Bluetooth breakout-kort, selvom min kode i øjeblikket ikke indeholder nogen af dem.

Lysdioderne styres ved hjælp af en Wemos D1 Mini, en Arduino-kompatibel mikro-controller med en ESP8266 som processor. Dette giver dig masser af plads og kraft til at køre så mange effekter, som du gerne vil. Det giver dig også adgang til WiFi -funktionalitet (selvom det i øjeblikket ikke er implementeret i min kode). Skærmene drives eksternt via et 3,5 mm DC -stik til USB -kabel tilsluttet en almindelig 5v powerbank.

Både lysdioderne og Wemos er monteret på brugerdefinerede printkort, som også danner rammen af nuancerne. Lodning af hver af de 76 lysdioder (og deres afkoblingskondensatorer) er meget arbejde. På samme måde kan WS2812b'er ganske let blive beskadiget ved håndlodning. For at undgå begge disse problemer vil jeg vise dig, hvordan du kan bestille printkortet forsamlet med lysdioder og kondensatorer.

Bemærk, at kun PCB-skærmene er beregnet til at blive formonteret. Du skal stadig lodde komponenter til Right Temple PCB (ørearmen). Dette vil kræve noget SMD-lodning, men ikke mindre end 0805, som kan loddes i hånden med et finspidsjern.

Endelig skal du have adgang til en 3D -printer for at lave et par mekaniske komponenter.

Du kan finde alle de relevante filer her:

Hvis du har spørgsmål, kan du efterlade en kommentar, så vender jeg tilbage til dig.

Forbrugsvarer

(Du kan muligvis finde de fleste dele til lavere omkostninger på steder som Aliexpress, Ebay, Banggood osv.)

PCB'er:

Hvert par nuancer kræver tre PCB'er: et venstre tempel, et højre tempel og et skærmkort. Du kan finde de lynede Gerber PCB -filer på Github -depotet, der er linket ovenfor. Jeg vil gennemgå, hvordan man bestiller printkortene senere i denne instruktionsbog.

Elektroniske dele:

Nedenstående link skal føre dig til en fyldt materialeliste (BOM), der indeholder alle de dele, der er nødvendige til et par nuancer. Jeg anbefaler at bestille ekstra af hver del for at tage højde for eventuelle uheld under samlingen. Bemærk, at du skal bruge en Digikey -konto for at få adgang til styklisten.

www.digikey.com/BOM/Create/CreateSharedBom…

Hvis linket ikke virker, kan du se listen over dele herunder, herunder varenumre:

  • En lineær regulator på 3,3 volt: MCP1755ST-3302E/DB
  • En 22 Ohm modstand, 1/4W, 1206 størrelse: RC1206JR-0722RL
  • En 3,5 mm kvindelig DC-jack: PJ-040DH
  • Én SOT-23-3 NPN-transistor: MMBT2222A-7-F
  • Fem 1µf, 0805, 25V kondensatorer: CL21B105KAFNNNE
  • Fire 1K, 0805 modstande: RNCP0805FTD1K00
  • En ret vinkel, 3 ben, 2,50 mm JST-stik: S3B-XH-A (LF) (SN)
  • Tre 100K, 0805 modstande: RMCF0805FT100K
  • Tre 4,5 x 4,5 x 5 mm taktile knapper: PTS 647 SM50 SMTR2 LFS
  • Et 3-benet, 2,50 mm kvindeligt JST-stik: XHP-3
  • Tre JST-krympestik: SXH-001T-P0.6

Mikrokontrolleren:

Et Wemos D1 Mini v3.1.0 Link

Hvis du vælger selv at lodde PCB -skærmene, skal du også bruge:

  • 76 WS2812b LED'er: Link (du kan finde dem andre steder: Aliexpress, Ebay osv.)
  • Én 1N4148W, SOT-123 diode: 1N4148W-TP
  • 71 0.1µF, 0402, kondensatorer: CL05B104KO5NNNC

Hvis du vil bruge enten Bluetooth- eller mikrofonindgange:

  • MAX4466 Breakout
  • HC-05 (du skal fjerne overskrifterne)

Andre dele:

  • 130 mm 10 mm diameter. sort varmekrymp Link
  • ~ 5 mm 3 mm diameter. varmekrympning (enhver farve end sort, valgfri)
  • En hummer klo halskæde lås Link
  • En 1 "Dia. Nøglering ring Link
  • 22Ga silikontråd Link (til gentagen bøjning)
  • To 5 mm M2 skruer
  • Seks 4 mm M2 skruer
  • En USB -powerbank (stort set alle vil fungere, skal have mindst 1A ud)
  • Et USB til 3,5 mm DC jack kabel Link (jeg er 6ft høj og et 4ft kabel er behageligt for mig, men 3ft kan være bedre, hvis du er kortere)
  • Et næseunderstøtningslink
  • 76 1/4 "runde hvide klistermærker Link (Ideelt set ville de være 4 mm i Dia, men jeg kan ikke finde nogen) (valgfrit)

Værktøjer:

  • 3D -printer + 1,75 mm filament
  • Wire strippere
  • Trådskærere
  • Wire crimper til JST terminaler Link
  • Varmepistol
  • Loddejern m/ fin spids
  • PH0 skruetrækker
  • Saks
  • Små nåletænger (gerne til perlearbejde)
  • Pincet (til SMD -placering/lodning)

Trin 1: PCB -noter

Det er valgfrit at læse dette trin. Nogle noter om PCB'erne og det generelle nuancer design:

  • Hvis du gerne vil justere eller inspicere printkortene, kan du finde dem her.
  • Jeg designede konturerne af nuancerne ved hjælp af Fusion 360 og modellerede dem efter et par sikkerhedsbriller. Jeg printede dem derefter 3D for at teste deres pasform. Når jeg var glad, eksporterede jeg en DXF for hver del og importerede dem derefter til EasyEDA som tavlen.
  • Brug af EasyEDA var noget kedeligt, da det ikke synes at have en måde at lægge dele ud i et mønster, så jeg var nødt til at placere alle lysdioder og kondensatorer i hånden. På samme måde brugte jeg også et brugerfremstillet LED -fodaftryk til det første layout, som skulle udskiftes til stykliste og valg og sted at arbejde. Dette og et par lignende fejl, fik mig til at skulle lave layoutet om et par gange.
  • Jeg valgte en Wemos D1 Mini som mikrokontroller af tre grunde:

    1. Det har masser af hukommelse og processorkraft til at gemme og køre mønstre.
    2. Det er ret lille og billigt.
    3. Du kan programmere det ved hjælp af Arduino IDE.

Det faktum, at det potentielt kan bruge WIFI, er en bonus.

  • Desværre bruger Wemos 3.3v logisk niveau, mens WS2812 LED'er er strengt 5v. Ved hjælp af denne vejledning kunne jeg undgå at bruge en logisk niveauomformer og erstatte den med en enkelt diode. Dioden er kun tilsluttet strømindgangen på den første LED. Dette reducerer indgangsspændingen med omkring 0,6v, lige nok til at bruge 3.3v -logikken fra Wemos. I mellemtiden er logikken fra LED'en høj nok til at tale med resten af LED'erne. Teknisk set reduceres lysstyrken på den første LED, men i praksis er det ikke mærkbart.
  • Jeg overvejede at drive skærmene fra et indbygget LiPo-batteri, men jeg besluttede, at det ville tilføre for meget masse. På samme måde er det mere sikkert at køre nuancerne fra en ekstern powerbank og give brugeren en vis fleksibilitet i kapacitet.
  • Moderne strømbanker lukker ned, medmindre der trækkes et minimum af strøm hver så ofte. Selvom nuancerne skulle trække nok passivt (~ 1ma fra hver LED, når de var slukket, og ~ 30ma fra Wemos), tilføjede jeg et levetidskredsløb for at være sikkert. Kredsløbet består af en NPN-transistor, der er forbundet via en 22ohm modstand til jorden. Transistoren styres af Wemos ved hjælp af en timer -afbrydelse, så ~ 225ma strøm kan trækkes fra powerbank med jævne mellemrum.
  • Den maksimale strømforbrug fra hver LED er ~ 60ma, hvilket betyder, at nuancer ved fuld hvid og maksimal lysstyrke ville trække ~ 4,5A. Dette er uden for vurderingen af de fleste powerbanker og også nuancer -stik. Heldigvis på grund af menneskelig opfattelse af lys, der er ikke-lineære, ser nuancerne næsten lige så lyse ud ved halv lysstyrke, som de gør fuldt ud, hvilket er hvad jeg satte hætten til i min kode.
  • Hver af de tre nuancer har et debounce -kredsløb. Teori om kredsløbet kan findes her. Jeg kunne lige have debounced i software, men jeg besluttede, at det var lettere at tilføje et par komponenter, og så slet ikke skulle bekymre mig om det.
  • Jeg havde et par ekstra pins på Wemos, så jeg besluttede at tilføje pinouts til en almindelig mikrofon og Bluetooth breakout board. Jeg regnede med, at disse kunne tilføje nogle nyttige funktioner til folk, selvom jeg ikke selv havde tænkt mig at bruge dem.

Trin 2: Bestilling af Temple PCB'erne

Du skal bestille både Temple PCB'erne fra en PCB -prototype fremstilling. Du kan finde dem begge på min Github ("Gerber_Temple Left_20191124153844.zip" og "Gerber_Temple Right ESP8266_20191124153834.zip"). Hvis du aldrig har købt et brugerdefineret printkort før, er det meget ligetil; de fleste virksomheder har et automatiseret tilbudssystem, der accepterer zipper Gerber -filer. Jeg kan anbefale JLC PCB, Seeedstudio, AllPCB eller OSH Park, selvom jeg er sikker på, at de fleste andre også vil fungere. Alle standardkortspecifikationer fra disse producenter fungerer fint, men sørg for at indstille pladetykkelsen til 1,6 mm (burde være standard). Bordfarve er din præference. I det næste trin bestiller vi skærmkortene, der skal samles. Du behøver ikke at bestille nuancer og templat -printkort fra den samme producent, men det kan hjælpe med at spare på forsendelsen.

Trin 3: Bestilling af Shades PCB Part 1

Shades PCB er beregnet til at blive samlet af en PCB -producent. Hvis du gerne vil samle PCB'erne selv, kan du springe dette trin over. Vær advaret, kondensatorerne på tavlen er 0402 store, så de er vanskelige at lodde i hånden. På samme måde er WS2812b LED'erne temmelig følsomme over for lodningstemperaturer.

De fleste prototype PCB -producenter tilbyder en samlingstjeneste, men jeg vælger at bruge JLC PCB på grund af deres lave omkostninger. I dette næste sæt trin vil jeg guide dig gennem bestilling af printkortet fra JLC PCB. Disse trin bør også oversættes til andre producenter. I skrivende stund er JLC's PCB -samlingstjeneste temmelig ny og synes at være målrettet mod hobbyfolk. Det positive ved dette er, at servicen er ekstremt billig i forhold til andre producenter (~ $ 50 USD for 5 fem nuancer samlet), men med de forbehold, der:

  • De samles kun på en enkelt side.
  • Komponenterne skal være tilgængelige fra deres egen interne reservedelsforsyning.
  • Gennemgående huller ignoreres.
  • Kun 2 & 4 lag.
  • ≤50 stk. Pr. Ordre.
  • Ordrer accepteres i multipler af 5.
  • Kun 1,0 mm/1,2 mm/1,6 mm tykkelse.
  • Kun tavelfarve til rådighed er grøn.
  • 1oz er den maksimale kobbervægt.

Jeg har designet Shades PCB omkring disse krav. Desværre skal du bestille mindst 5 nuancer, og du sidder fast med et grønt printkort.

Trin 4: Bestilling af Shades PCB Part 2

Bestilling af skygger PCB del 2
Bestilling af skygger PCB del 2

Fra og med JLC -tilbudssiden skal du uploade Gerber -zip -filen, der er knyttet til dette trin, eller findes på min Github (Gerber_Shades Ws2812B_20191124153856.zip). PCB er stort, så det kan tage et stykke tid at behandle. Hvis det ikke er muligt at indtaste brættets dimensioner, er de: 41 x 156 mm. Du behøver ikke justere nogen af de andre PCB -muligheder.

Rul ned til sektionen mærket "SMT Assembly". Aktiver det, og vælg derefter oversiden til montering. Udfyld de andre muligheder i henhold til billedet ovenfor. Bemærk, at deres brugergrænseflade/muligheder kan ændre sig i fremtiden (det er ændret siden jeg startede dette projekt!), Så hvis du ikke er sikker på noget, så lad mig det vide, så prøver jeg at hjælpe.

Når du er klar, skal du trykke på bekræft.

Trin 5: Bestilling af Shades PCB Part 3

Bestilling af skygger PCB del 3
Bestilling af skygger PCB del 3

Efter at have trykket på bekræft, skal du føres til en side for at uploade styklisten og vælg og placer filerne. Disse filer fortæller systemet, hvilke dele der skal bruges på printkortet, og hvor de placeres. Download filerne fra dette trin eller fra min Github ("BOM_Shutter Shades WS2812B Ver_20191203151413.csv" og "PickAndPlace_Lenses Ws2812B_20191203151443.csv") og upload dem til JLC. Din side skal ligne billedet ovenfor. Når du er klar, skal du trykke på Næste.

Trin 6: Bestilling af Shades PCB Part 4

Bestilling af skærme PCB del 4
Bestilling af skærme PCB del 4

På denne side bekræfter du de dele, der skal placeres på printkortet.

Du bør se en liste over tre komponenter:

  • Én 1N4148W, SOT23 -diode
  • 76 WS2812C, LED-5050_4P lysdioder
  • 71 0,1µf, C0402 kondensatorer

Alle disse dele skal bekræftes, som på billedet ovenfor. Selvom det er usandsynligt, hvis nogen af delene mangler eller ikke kan bekræftes, lager JLC enten ikke dem længere, eller også er de forældede. Hvis du efterlader en kommentar, vil jeg prøve at hjælpe med at opdatere printkortet med en reservedele. Alternativt kan du kopiere printkortet og justere det selv her. Du kan ændre manglende dele ved at opdatere styklisten; så længe de har det samme SMD -fodaftryk, burde der ikke være et problem.

Når du er klar, skal du trykke på Næste.

Trin 7: Bestilling af Shades PCB Part 5

Bestilling af skærme PCB del 5
Bestilling af skærme PCB del 5

Dette er det sidste bestillingstrin. Du bør få en forhåndsvisning af det samlede PCB. Sørg for, at komponentplaceringen matcher billedet ovenfor. Bemærk de røde prikker på lysdioderne angiver pin 1. Hvis alt ser godt ud, kan du placere ordren og returnere her, når den ankommer.

Trin 8: Shades PCB Assembly:

Shades PCB Assembly
Shades PCB Assembly
Shades PCB Assembly
Shades PCB Assembly
Shades PCB Assembly
Shades PCB Assembly

Vi starter samlingen med at lodde strøm-, jord- og signaltråde til Shades PCB. Start med at skære tre ~ 67 mm længder af silikontråden; to af sort og en af rød. Fjern en lille del af den ene ende af hver af ledningerne, og fastgør en kvindelig JST -krympeterminal ved hjælp af dit krympeværktøj. Fjern derefter ~ 10 mm fra den anden ende af hver af ledningerne. Tin kun spidsen af denne ende med loddetin. Du vil have lige nok loddetin til at stoppe ledningen fra at flosser uden at øge trådens tykkelse. I sidste ende skal hver ledning matche det første billede ovenfor.

Eventuelt kan du tilføje en kort længde af farvet (jeg brugte grøn) varmekrympning til en af de sorte ledninger for at mærke det som signaltråden.

Sæt derefter hver ledning gennem de ydre huller på skærmkortet (på siden med tre huller). Den røde ledning skal gå gennem det øverste hul. Bøj den afisolerede del af tråden til en krogform, og skub den derefter ind i det tilsvarende hul på printet. Brug en nåletang til at hjælpe. Du vil ende med, at en smule af trådens kappe kommer ud af PCB'ernes huller, dette vil lade tråden fungere som aflastning/bøjning.

Dette er nok lidt forvirrende, men forhåbentlig vil billederne guide dig.

Derefter loddes ledningerne på plads. Du vil måske tilbyde ledningerne med Right Temple PCB (den, som knapperne og Wemos D1 mini vil blive monteret på) for at sikre, at de er lange nok. Strøm- og jordforbindelserne vil også kræve mere varme end signalet, så du vil måske stige din loddejernstemperatur, hvis du kan.

Indsæt endelig de kvindelige JST -krympestik i dit kvindelige JST -hus. Sørg for, at ledningsordren matcher billedet. Ordren skal være strøm, signal og derefter jordstart fra toppen af stikket (taget fra dets justering, når den er fastgjort til højre tempel -printkort).

Vi er færdige med PCB -skærmene nu, så du kan sætte det til side.

Trin 9: Temple PCB Assembly Part 1

Temple PCB Assembly Del 1
Temple PCB Assembly Del 1
Temple PCB Assembly Del 1
Temple PCB Assembly Del 1

Nu skal vi samle Temple PCB'erne. Selvom begge printkort har markeringer for komponenter, vil vi hovedsageligt fokusere på det højre tempel (det, knapperne og Wemos D1 mini er monteret på) Komponentpletterne på venstre tempel -printkort er til redundans.

Først skal vi lodde SMD -komponenterne til printkortet. Hvis du aldrig har loddet SMD -dele før, er her en guide til at hjælpe dig i gang: Link. Alle delene er 0805 eller større, så håndlodning skal være ret lige frem.

Først lodde komponenterne bag på printet, disse inkluderer:

  • Tre 100k modstande
  • Fire 1k modstande
  • Fem 1µf kondensatorer
  • En 22 Ohm modstand
  • En MCP1755 spændingsregulator
  • En MMBT2222 NPN transistor

Deres placeringer er alle mærket på printkortet.

Dit slutresultat skal ligne det første billede ovenfor.

Vend derefter printet og lod de tre trykknapper på plads, som vist på det andet billede.

Trin 10: Temple PCB Assembly Part 2

Temple PCB Assembly Del 2
Temple PCB Assembly Del 2
Temple PCB Assembly Del 2
Temple PCB Assembly Del 2
Temple PCB Assembly Del 2
Temple PCB Assembly Del 2
Temple PCB Assembly Del 2
Temple PCB Assembly Del 2

Nu tilføjer vi lidt varmekrympning til både Temple PCB'erne og strømstikket. Dette hjælper med at beskytte dine ører mod de ru PCB -kanter.

Klip først to 65 mm længder af 10 mm Dia. Varme krympe. Slip et stykke hoved krympe langs armen på hver PCB.

Inden krympning af varmekrympning, loddes 3,5 mm DC -stikket bag på højre Temple PCB som vist på billedet. Bemærk, at du kan lodde det til hver side. Jeg vælger bagsiden, da det var mest behageligt for mig. Ved lodning skal du skubbe varmekrympningen langs armen for at forhindre, at den opvarmes for meget.

Når jackstikket er monteret, skal du glide varmekrymperen ned igen over stikket, som vist på billedet, og krympe varmekrympningen på begge templat -printkortene ved hjælp af en varmepistol.

Endelig loddes det retvinklede, han-JST-stik på bagsiden af Right Temple PCB, som på billedet.

Trin 11: Temple PCB Assembly Del 3

Temple PCB Assembly Del 3
Temple PCB Assembly Del 3

Nu skal vi lodde Wemos D1 Mini til templets printkort.

Inden du gør dette, skal du bekræfte, at du kan programmere Wemos, og at det fungerer korrekt.

Begynd med at følge instruktionerne her for at installere ESP8266 -kernen til Arduino IDE. Dette giver dig mulighed for at programmere Wemos som om det var en Arduino.

Når den er installeret, skal du åbne IDE'en og slutte Wemos til din computer ved hjælp af et mikro-USB-kabel. Under værktøjs-> tavle skal du vælge "LOLIN (WEMOS) D1 R2 & Mini". Vælg også den port, Wemos er forbundet til under værktøjer. Prøv at uploade blink (eller dit eget foretrukne testprogram). Hvis alt er i orden, skal Wemos 'LED begynde at blinke en gang i sekundet.

Når du har bekræftet, kan du uploade kode til Wemos, lodde den til Right Temple PCB ved hjælp af mandlige overskrifter, som på billedet. Sørg for at lodde det til siden med knapperne, pin -etiketterne på Wemos skal matche dem på printet. Trim overskydende længde fra overskrifterne.

På dette tidspunkt er alle printkort fuldt samlet, og vi er klar til at sætte alle brikkerne sammen.

Hvis du gerne vil bruge en Max4466 Mic eller et HC-05 Bluetooth-modul, er det nu tid til at vedhæfte dem til printkortet. Deres placeringer er mærket. Sørg for, at stifterne matcher, så du får deres orientering korrekt.

Trin 12: Shades Final Assembly Del 1

Shades Final Assembly Del 1
Shades Final Assembly Del 1
Shades Final Assembly Del 1
Shades Final Assembly Del 1

Brug en 3D -printer til at udskrive to par hængsler (to af "hængsel 1.stl" og "hængsel 2.stl", der er knyttet til dette trin, findes også på min Github). Saml hængslerne ved at indsætte en længde på 1,75 mm filament gennem begge hængselsdele og samle dem.

Sæt derefter hængslerne på skærmkortet som vist på billedet ved hjælp af fire 4 mm M2 skruer.

Du kan også fastgøre næsestøtten ved hjælp af rillen på understøtningen, bare skubbe den ind i næseområdet på printkortet. Det skal sidde tæt på plads.

Trin 13: Shades Final Assembly Del 2

Shades Final Assembly Del 2
Shades Final Assembly Del 2
Shades Final Assembly Del 2
Shades Final Assembly Del 2
Shades Final Assembly Del 2
Shades Final Assembly Del 2
Shades Final Assembly Del 2
Shades Final Assembly Del 2

3D -print "Ear Cover.stl", der er knyttet til dette trin. Skub dækslet over Wemos. Dækselets huller skal flugte med dem på højre tempel -printkort.

Brug to 5 mm M2 -skruer til at fastgøre dækslet og Right Temple PCB til det højre hængsel på Shades PCB. Sæt det kvindelige JST -stik i hanhuset på højre Temple PCB.

Tag venstre tempel PCB og en hummer klo halskæde klemme. Sæt klemmen gennem hullet for enden af PCB -armen. Derefter fastgør du en nøglering til hummerkloens løkke som på billedet.

Til sidst, ved hjælp af to 4 mm M2 skruer, fastgør du venstre Temple PCB til venstre hængsel på skærmene PCB.

På dette tidspunkt er nuancer montering komplet.

Trin 14: Shades Final Assembly Del 3 (valgfri):

Shades Final Assembly Del 3 (valgfri)
Shades Final Assembly Del 3 (valgfri)
Shades Final Assembly Del 3 (valgfri)
Shades Final Assembly Del 3 (valgfri)

I dette trin tilføjer vi prikklistermærker til nuancerne for at hjælpe med at sprede lysdioderne. Dette trin er valgfrit, jeg tror, det får nuancerne til at se bedre ud, men det fører til en lille mængde lysrefleksion.

Generelt ser WS2812b LED'er bedre ud, når de diffunderes gennem et materiale. Dette hjælper med at sprede lyskilden, hvilket gør det lettere for dine øjne, samtidig med at farverne bliver mere synlige. Problemet med nuancerne er, at vi ikke ønsker at reflektere det ledede lys tilbage mod vores øjne. Vi kan ikke bruge en tyk diffusor, fordi ethvert lys spredt fra siderne af diffusoren vil hoppe tilbage mod os.

I stedet vil vi bruge tynde prik klistermærker (se Intro for link). Af alle de metoder, jeg testede, diffunderede disse LED'erne lige nok til at være acceptable, samtidig med at de minimerede lysrefleksioner. De skal dog anvendes på en bestemt måde.

Selvom klistermærkerne er tynde, forårsager de stadig en mærkbar refleksion for lysdioder, der er over eller under din centrale synslinje, hvis de sættes på, så mærkaten dækker hele LED -firkanten. Dette skyldes, at når du bærer nuancerne og ser lige frem, er dine øjne i niveau med nuancernes centrale bjælke, mens de andre søjler er i en vinkel fra dine øjne. Denne vinkel betyder, at kanten af klistermærkerne er synlig for dig, og ethvert lys, der passerer gennem kanten, vil også være synligt.

Vi vil minimere den kant, vi kan se. Da klistermærkerne er runde, og når vi bærer nuancerne, ser vi kun en kant af hver LED (enten bunden eller toppen), kan vi placere klistermærkerne, så kun en lille del af klistermærkets kant er faktisk i kanten af LED -kroppen at vi ser. Du kan se dette på billedet ovenfor, hvis du ser godt efter (beklager kvaliteten).

Med andre ord skal du placere klistermærkerne, så de næsten ikke dækker hver LED -linse (den del, lyset faktisk kommer ud af), hvor den ekstra del af klistermærket er tættere på den nærmeste øverste eller nederste yderkant af nuancerne. Du klipper derefter den ekstra del væk med en saks.

Dette vil diffundere LED -lyset, men under meget mørke forhold vil du stadig se nogle refleksioner.

Trin 15: Koden

Jeg har skrevet kode til de nuancer, der indeholder 40 forskellige effekter. Det kan findes på min Github i mappen "Shades_Code". Inden du kan uploade koden til Wemos, skal du bruge to biblioteker:

  • Mit "PixelStrip" -bibliotek
  • Adafruit Neopixel -biblioteket

Du kan downloade PixelStrip -biblioteket herfra. Download alle filerne, og placer dem i en mappe med navnet "PixelStrip" i biblioteksmappen i dit Arduino -installationsmappe.

Du kan installere Adafruit Neopixel -biblioteket ved hjælp af Arduino IDEs bibliotekschef.

Når du har installeret begge biblioteker, kan du åbne Shades_Code.ino og uploade det til Wemos. Hvis alt er godt, skal nuancerne begynde at cykle effekter. Dine nuancer er nu færdige!:)

Hvis noget er galt, skal du gå til mit fejlfindingstrin.

På dette tidspunkt kan du gå videre til det næste trin, hvor jeg vil gå over knappernes funktioner i nuancerne, og hvordan du skal bære dem. Hvis du vil deaktivere eller ændre nogen effekter, vil jeg gennemgå det nedenfor.

Ændring af effekter:

Hvis du vil deaktivere en effekt, skal du først finde den i Shades_Code.ino -filen. Det vil være i den store switch -sætning i hovedhulrumsløkken (). Effekterne er ikke individuelt mærket, da det er svært at beskrive dem med bare kommentarer, så du skal måske jagte lidt. Når du har fundet effekten, skal du bare ændre sagsnummeret til noget, der er højere end det samlede antal effekter (99 for eks) for at deaktivere det.

Du er også velkommen til at ændre eller tilføje dine egne effekter. For at tilføje en effekt skal du tilføje den til switch -sætningen i hovedhulrumsløkken () og øge varen "numEffects".

Mit bibliotek er i stand til at lave en lang række effekter, men det er lidt svært at arbejde med. Det begyndte oprindeligt som bare et lille lagerhus for effekter, men jeg udvidede det senere til at køre effekter på tværs af ulige former for pixels (ringe, stjerner osv.), Så det er blevet lidt rodet. På dette tidspunkt har jeg en arkitektur til biblioteket, og jeg agter fuldt ud at skrive det igen i fremtiden. I mellemtiden er det nuværende bibliotek fuldt kommenteret og fejlfrit (se i segmentSet.h for kommentarer om segmenter), men du skal sandsynligvis lave nogle eksperimenter for at forstå, hvordan hver effekt fungerer.

Derudover er lysdioderne lagt i et zig-zag-format. Deres tal er på bagsiden af Shades PCB.

Trin 16: Iført og brug af skærmene

Iført og brug af skærmene
Iført og brug af skærmene

For at bære skærmene skal du føre 3,5 mm jackkablet gennem nøgleringen, og sætte det i stikket for enden af det højre tempel. Ved at føre kablet gennem nøgleringen får det til at fungere som en rem og holder nuancerne sikre på dit ansigt. Strøm skærmene med en hvilken som helst 5V powerbank.

Knapper:

Skærmene har tre knapper. Når jeg bruger min kode, gør de følgende ting:

(disse funktioner er også angivet på venstre tempel -printkort)

  • Knap 1: Næste effekt (eller genstarter den aktuelle effekt, hvis effektrotation er deaktiveret)
  • Knap 2: Effektrotation til/fra. Dette får den aktuelle effekt til at gentage sig på ubestemt tid
  • Knap 1+2 (på samme tid): Skygger til/fra. Stopper bare effekterne, slukker ikke for strømmen.
  • Knap 3: Lysstyrke cyklus. Du kan justere trinene ved at ændre arrayet "brightnessLevels" i min kode.

Hvis du er nået så langt, tak fordi du læste! Jeg håber du har det sjovt med dine nuancer. Hvis du har spørgsmål, kan du efterlade en kommentar, så vender jeg tilbage til dig.

Trin 17: Fejlfinding:

Hvis du er her, så fungerer nuancerne ikke korrekt. Nedenfor vil jeg gennemgå nogle mulige problemer og løsninger. Hvis du ikke kan se noget, der løser dit problem, kan du efterlade en kommentar, så prøver jeg at hjælpe.

  • Nuancerne viser ikke noget, når de er tilsluttet.

    • Prøv at tilslutte en mikro -USB til Wemos. Nuancerne skal tænde.

      • Hvis de gør det, er der noget galt med din powerbank.
      • Hvis de ikke gør det, kan du prøve at uploade en kode til Wemos (f.eks. Blink)

        • Hvis det virker, er der noget galt med forbindelsen mellem nuancerne og Temple PCB. Dobbelttjek din JST -forbindelse. Ledningerne skal være i orden ovenfra: Strøm, data, jord.

          Hvis forbindelsen er god, kan du prøve at kommentere knappefunktionerne i min kode. Det er muligt, at en af knapperne ikke fungerer korrekt

        • Hvis det ikke virker, er enten Wemos død, eller også nulstilles den gentagne gange. Åbn Arduino Serial -skærmen (indstil Baud til 115200) og se efter eventuelle nulstillingskoder. Hvis du får en kode, skal du google lidt for at finde ud af, hvad der er galt. Hvis du ikke får nogen koder, er Wemos sandsynligvis død.
  • Nuancerne virker, men nogle pixels flimrer (dette skete på 2 af de 5 printkort, jeg bestilte)

    Dette er sandsynligvis et problem med den første pixel (øverst til højre, når du bærer nuancer). Du skal udskifte pixlen. Fjern først den ved hjælp af et fintrådet par trådskærere til at snippe pixelens forbindelser til printkortet. Vær forsigtig med ikke at trække loddepuderne af printkortet. Derefter skal du købe nogle WS2812 lysdioder her og lodde en på plads. Sørg for at orientere pixlen, så den matcher de andre på rækken

Modekonkurrence
Modekonkurrence
Modekonkurrence
Modekonkurrence

Nummer to i modekonkurrencen

Anbefalede: