Inhoudsopgave:

RGB LED Pixel Shades - Ajarnpa
RGB LED Pixel Shades - Ajarnpa

Video: RGB LED Pixel Shades - Ajarnpa

Video: RGB LED Pixel Shades - Ajarnpa
Video: Human-Robot Collaboration 2024, Juli-
Anonim
Image
Image
RGB LED-pixelschermen
RGB LED-pixelschermen
RGB LED-pixelschermen
RGB LED-pixelschermen

Hallo allemaal, in deze Instructable laat ik je zien hoe je een paar LED-pixelschermen maakt. Oorspronkelijk heb ik deze gemaakt om met Kerstmis / Oud en Nieuw in huis te dragen, een beetje als mobiel ornament, maar ze werden uiteindelijk een beetje meer cyberpunk dan ik had verwacht, dus ze zouden ook leuk moeten zijn om te dragen bij andere evenementen!

De tinten gebruiken 76 WS2812b LED's (ook bekend als Neopixels). De LED's projecteren hun licht maar in één richting, zodat je door de tinten heen kunt kijken zonder jezelf te verblinden. WS2812b's zijn individueel adresseerbaar, wat betekent dat je de kleur van elke led regelt. Hiermee kun je bijna elk effect creëren dat je maar kunt bedenken (zolang je het maar kunt coderen). Maak je geen zorgen als je niet zeker weet welke effecten je leuk vindt, of geen zin hebt om een heleboel code te schrijven; Ik heb code geschreven om de tinten te bedienen, inclusief 40 verschillende effecten. De tinten bevatten ook aansluitingen voor een MAX4466-microfoon (voor reactieve audio-effecten) en een HC-05 Bluetooth-breakout-bord, hoewel mijn code momenteel geen van beide bevat.

De LED's worden aangestuurd met een Wemos D1 Mini, een Arduino-compatibele microcontroller met een ESP8266 als processor. Dit geeft je voldoende ruimte en kracht om zoveel effecten uit te voeren als je wilt. Het geeft je ook toegang tot wifi-functionaliteit (hoewel momenteel niet geïmplementeerd in mijn code). De tinten worden extern gevoed via een 3,5 mm DC-aansluiting naar USB-kabel die is aangesloten op een gewone 5v-powerbank.

Zowel de LED's als de Wemos zijn gemonteerd op aangepaste PCB's, die ook het frame van de tinten vormen. Het solderen van elk van de 76 LED's (en hun ontkoppelcondensatoren) is veel werk. Evenzo kunnen WS2812b's vrij gemakkelijk worden beschadigd door handmatig te solderen. Om beide problemen te voorkomen, ga ik je laten zien hoe je de PCB voorgemonteerd met de LED's en condensatoren kunt bestellen.

Houd er rekening mee dat alleen de lampenprintplaat bedoeld is om voorgemonteerd te worden. U moet nog steeds componenten op de PCB van de rechter tempel (de oorarm) solderen. Dit vereist wat SMD-soldeer, maar niets kleiner dan 0805, dat met de hand kan worden gesoldeerd met een strijkijzer met fijne punt.

Ten slotte heb je toegang tot een 3D-printer nodig om een paar mechanische componenten te maken.

Alle relevante bestanden vind je hier:

Als je vragen hebt, laat dan een reactie achter, dan neem ik contact met je op.

Benodigdheden

(Misschien kunt u de meeste onderdelen voor lagere kosten vinden op plaatsen zoals AliExpress, Ebay, Banggood, enz.)

PCB's:

Elk paar lampenkappen vereist drie PCB's: een linkertempel, een rechtertempel en een Shades-printplaat. Je kunt de gezipte Gerber PCB-bestanden vinden in de Github-depot die hierboven is gelinkt. Ik zal later in deze Instructable bespreken hoe ik de PCB's kan bestellen.

Elektronische onderdelen:

De onderstaande link brengt u naar een vooraf ingevulde stuklijst (BOM) die alle onderdelen bevat die nodig zijn voor één paar lampenkappen. Ik raad aan om van elk onderdeel extra te bestellen om eventuele ongelukken tijdens de montage te voorkomen. Houd er rekening mee dat u een Digikey-account nodig heeft om toegang te krijgen tot de stuklijst.

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

Als de link niet werkt, raadpleeg dan de lijst met onderdelen hieronder, inclusief onderdeelnummers:

  • Eén lineaire regelaar van 3,3 volt: MCP1755ST-3302E/DB
  • Eén weerstand van 22 Ohm, 1/4W, 1206 maat: RC1206JR-0722RL
  • Eén vrouwelijke DC-aansluiting van 3,5 mm: PJ-040DH
  • Eén SOT-23-3 NPN-transistor: MMBT2222A-7-F
  • Vijf 1µf, 0805, 25V condensatoren: CL21B105KAFNNNE
  • Vier 1K, 0805 weerstanden: RNCP0805FTD1K00
  • Eén haakse, 3-pins, 2,50 mm JST-connector: S3B-XH-A(LF)(SN)
  • Drie 100K, 0805 weerstanden: RMCF0805FT100K
  • Drie 4,5 x 4,5 x 5 mm tactiele knoppen: PTS 647 SM50 SMTR2 LFS
  • Eén 3-pins, 2,50 mm vrouwelijke JST-connector: XHP-3
  • Drie JST-krimpconnectoren: SXH-001T-P0.6

De microcontroller:

Een Wemos D1 Mini v3.1.0 Link

Als je ervoor kiest om de tinten PCB zelf te solderen, heb je ook het volgende nodig:

  • 76 WS2812b LED's: Link (je kunt ze elders vinden: Aliexpress, Ebay, etc)
  • Eén 1N4148W, SOT-123-diode: 1N4148W-TP
  • 71 0.1µF, 0402, condensatoren: CL05B104KO5NNNC

Als u de Bluetooth- of microfooningangen wilt gebruiken:

  • MAX4466 Uitbraak
  • HC-05 (je moet de headers verwijderen)

Overige onderdelen:

  • 130 mm van 10 mm dia. zwarte krimpkous Link
  • ~ 5 mm van 3 mm dia. krimpkous (elke kleur dan zwart, optioneel)
  • Een kreeft-klauw ketting sluiting Link
  • Een 1 "Dia. sleutelhanger ring Link
  • 22Ga siliconendraad Link (voor herhaald buigen)
  • Twee 5 mm M2 schroeven
  • Zes 4 mm M2 schroeven
  • Eén USB-powerbank (vrijwel elke werkt, moet minimaal 1A hebben)
  • Eén USB-naar-3,5 mm DC-jackkabel Link (ik ben 1,80 m lang en een kabel van 1,2 m is comfortabel voor mij, maar 3 m is misschien beter als je kleiner bent)
  • Eén neussteunstuk Link
  • 76 1/4 "ronde witte stickers Link (Idealiter zouden ze 4 mm in Dia zijn, maar ik kan er geen vinden) (optioneel)

Gereedschap:

  • 3D-printer + 1,75 mm filament
  • Draadstrippers
  • Draadsnijders
  • Draadkrimptang voor JST-klemmen Link
  • Hitte geweer
  • Soldeerbout met fijne punt
  • PH0 schroevendraaier
  • Schaar
  • Kleine punttang (zoals voor kralenwerk)
  • Pincet (voor SMD plaatsing/solderen)

Stap 1: PCB-opmerkingen

Het lezen van deze stap is optioneel. Enkele opmerkingen over de printplaten en het algemene ontwerp van de tinten:

  • Als je de PCB's wilt aanpassen of inspecteren, kun je ze hier vinden.
  • Ik ontwierp de contouren van de tinten met Fusion 360 en modelleer ze naar een veiligheidsbril. Ik heb ze vervolgens 3D geprint om hun pasvorm te testen. Toen ik eenmaal tevreden was, exporteerde ik een DXF van elk onderdeel en importeerde ik ze vervolgens in EasyEDA als het bordoverzicht.
  • Het gebruik van EasyEDA was enigszins vervelend, omdat het geen manier lijkt te zijn om onderdelen in een patroon te leggen, dus ik moest alle LED's en condensatoren met de hand plaatsen. Evenzo heb ik ook een door de gebruiker gemaakte LED-voetafdruk gebruikt voor de eerste lay-out, die moest worden vervangen voor stuklijst en pick & place to work. Dit, en een paar soortgelijke fouten, zorgden ervoor dat ik de lay-out een paar keer opnieuw moest doen.
  • Ik heb om drie redenen gekozen voor een Wemos D1 Mini als microcontroller:

    1. Het heeft veel geheugen en verwerkingskracht om patronen op te slaan en uit te voeren.
    2. Het is vrij klein en goedkoop.
    3. U kunt het programmeren met behulp van de Arduino IDE.

Het feit dat het mogelijk WIFI kan gebruiken, is een bonus.

  • Helaas gebruikt de Wemos 3.3v logisch niveau, terwijl WS2812 LED's strikt 5v zijn. Met behulp van deze handleiding kon ik het gebruik van een logische niveau-omzetter vermijden en deze vervangen door een enkele diode. De diode is alleen aangesloten op de voedingsingang van de eerste LED. Dit vermindert de ingangsspanning met ongeveer 0,6v, net genoeg om de 3,3v-logica van de Wemos te gebruiken. Ondertussen is de logica uit de LED hoog genoeg om met de rest van de LED's te praten. Technisch gezien is de helderheid van de eerste LED verminderd, maar in de praktijk is dit niet merkbaar.
  • Ik overwoog de tinten van een ingebouwde LiPo-batterij te voorzien, maar ik besloot dat het te veel bulk zou toevoegen. Evenzo is het veiliger om de tinten van een externe powerbank te gebruiken en geeft het de gebruiker enige flexibiliteit in capaciteit.
  • Moderne powerbanks worden uitgeschakeld tenzij er af en toe een minimale hoeveelheid stroom wordt getrokken. Hoewel de tinten passief genoeg zouden moeten trekken (~1ma van elke LED wanneer uit, en ~30ma van de Wemos), heb ik voor de zekerheid een keep-alive-circuit toegevoegd. Het circuit bestaat uit een NPN-transistor die via een 22ohm-weerstand met aarde is verbonden. De transistor wordt bestuurd door de Wemos met behulp van een timer-interrupt, waardoor met regelmatige tussenpozen ~ 225 mA stroom uit de powerbank kan worden gehaald.
  • De maximale stroomafname van elke LED is ~60ma, wat betekent dat bij volledig wit en maximale helderheid de tinten ~4,5A zouden trekken. Dit gaat verder dan de beoordeling van de meeste powerbanks en de connectoren van de tinten. Gelukkig, omdat de menselijke perceptie van licht niet-lineair is, zien de tinten er bijna net zo helder uit bij halve helderheid als bij vol, en dat is waar ik de dop in mijn code op heb gezet.
  • Elk van de drie knoppen heeft een debounce-circuit. Theorie over het circuit vind je hier. Ik had gewoon in software kunnen debouncen, maar ik besloot dat het gemakkelijker was om een paar componenten toe te voegen, en me er dan helemaal geen zorgen over te maken.
  • Ik had een paar reservepinnen op de Wemos, dus besloot ik pinouts toe te voegen voor een gewone microfoon en een Bluetooth-breakoutboard. Ik dacht dat deze wat nuttige functionaliteit voor mensen konden toevoegen, ook al was ik niet van plan ze zelf te gebruiken.

Stap 2: Bestel de Temple PCB's

U moet beide Temple-PCB's bestellen bij een PCB-prototypefabricage. Je kunt ze allebei vinden op mijn Github ("Gerber_Temple Left_20191124153844.zip" en "Gerber_Temple Right ESP8266_20191124153834.zip"). Als je nog nooit een aangepaste PCB hebt gekocht, is dat heel eenvoudig; de meeste bedrijven hebben een geautomatiseerd offertesysteem dat gecomprimeerde Gerber-bestanden accepteert. Ik kan JLC PCB, Seeedstudio, AllPCB of OSH Park aanbevelen, hoewel ik zeker weet dat de meeste anderen ook zullen werken. Alle standaard bordspecificaties van deze fabrikanten werken prima, maar zorg ervoor dat u de borddikte instelt op 1,6 mm (moet de standaard zijn). De kleur van het bord is uw voorkeur. In de volgende stap bestellen we de tinten PCB om te monteren. U hoeft de lampenkappen en de tempelprintplaten niet bij dezelfde fabrikant te bestellen, maar het kan wel helpen om verzendkosten te besparen.

Stap 3: Bestellen van de Shades PCB deel 1

De Shades PCB is bedoeld om te worden geassembleerd door een PCB-fabrikant. Als u de printplaten zelf wilt monteren, kunt u deze stap overslaan. Wees gewaarschuwd, de condensatoren op het bord hebben het formaat 0402, dus ze zijn lastig met de hand te solderen. Evenzo zijn de WS2812b LED's redelijk gevoelig voor soldeertemperaturen.

De meeste prototype PCB-fabrikanten bieden een montageservice, maar ik kies ervoor om JLC PCB te gebruiken vanwege hun lage kosten. In deze volgende reeks stappen zal ik u begeleiden bij het bestellen van de PCB bij JLC PCB. Deze stappen zouden ook moeten worden vertaald naar andere fabrikanten. Op het moment van schrijven is de PCB-assemblageservice van JLC vrij nieuw en lijkt deze gericht te zijn op hobbyisten. Het voordeel hiervan is dat de service extreem goedkoop is in vergelijking met andere fabrikanten (~ $ 50 USD voor 5 vijf tinten gemonteerd), maar met de kanttekeningen dat:

  • Ze worden maar aan één kant gemonteerd.
  • De componenten moeten beschikbaar zijn vanuit hun eigen interne onderdelenvoorraad.
  • Doorlopende componenten worden genegeerd.
  • Slechts 2 & 4 lagen.
  • ≤50 stuks per bestelling.
  • Bestellingen worden geaccepteerd in veelvouden van 5.
  • Alleen dikte van 1,0 mm/1,2 mm/1,6 mm.
  • De enige beschikbare bordkleur is groen.
  • 1oz is het maximale kopergewicht.

Ik heb de Shades-printplaat rond deze vereisten ontworpen. Helaas moet je minimaal 5 tinten bestellen en zit je met een groene print.

Stap 4: Bestellen van de Shades PCB deel 2

Bestellen van de Shades PCB deel 2
Bestellen van de Shades PCB deel 2

Begin op de JLC-citaatpagina en upload het Gerber-zipbestand dat bij deze stap is gevoegd of te vinden is op mijn Github (Gerber_Shades Ws2812B_20191124153856.zip). De PCB is groot, dus het kan even duren om te verwerken. Als het de afmetingen van het bord niet invoert, zijn deze: 41 x 156 mm. U hoeft geen van de andere PCB-opties aan te passen.

Scrol omlaag naar het gedeelte met het label "SMT-assemblage". Activeer deze en selecteer vervolgens de bovenzijde voor montage. Vul de andere opties in volgens de afbeelding hierboven. Merk op dat hun gebruikersinterface/opties in de toekomst kunnen veranderen (het is veranderd sinds ik aan dit project ben begonnen!), dus als je ergens niet zeker van bent, laat het me dan weten en ik zal proberen te helpen.

Als je klaar bent, klik je op bevestigen.

Stap 5: Bestellen van de Shades PCB deel 3

Bestellen van de Shades PCB deel 3
Bestellen van de Shades PCB deel 3

Nadat je op bevestigen hebt gedrukt, zou je naar een pagina moeten worden geleid om de BOM- en Pick and Place-bestanden te uploaden. Deze bestanden vertellen het systeem welke onderdelen op de printplaat moeten worden gebruikt en waar ze moeten worden geplaatst. Download de bestanden van deze stap of van mijn Github ("BOM_Shutter Shades WS2812B Ver_20191203151413.csv" en "PickAndPlace_Lenses Ws2812B_20191203151443.csv") en upload ze naar JLC. Uw pagina zou eruit moeten zien als de afbeelding hierboven. Als u klaar bent, drukt u op Volgende.

Stap 6: Bestellen van de Shades PCB Part 4

Bestellen van de Shades PCB deel 4
Bestellen van de Shades PCB deel 4

Op deze pagina bevestigt u de te plaatsen onderdelen op de print.

U zou een lijst met drie componenten moeten zien:

  • Eén 1N4148W, SOT23-diode
  • 76 WS2812C, LED-5050_4P LED's
  • 71 0.1µf, C0402 condensatoren

Al deze onderdelen moeten worden bevestigd, zoals in de afbeelding hierboven. Hoewel het onwaarschijnlijk is dat een van de onderdelen ontbreekt of niet kan worden bevestigd, heeft JLC ze niet meer op voorraad of zijn ze verouderd. Als je een reactie achterlaat, zal ik proberen om de printplaat bij te werken met vervangende onderdelen. Als alternatief kunt u de printplaat hier kopiëren en zelf aanpassen. U kunt ontbrekende onderdelen wijzigen door de stuklijst bij te werken; zolang ze dezelfde SMD-voetafdruk hebben, zou er geen probleem moeten zijn.

Als je klaar bent, klik je op Volgende.

Stap 7: Bestellen van de Shades PCB Part 5

Bestellen van de Shades PCB deel 5
Bestellen van de Shades PCB deel 5

Dit is de laatste bestelstap. U zou een voorbeeld van de geassembleerde PCB moeten krijgen. Zorg ervoor dat de plaatsing van de componenten overeenkomt met de afbeelding hierboven. Let op de rode stippen op de LED's geven pin 1 aan. Als alles er goed uitziet, kunt u de bestelling plaatsen en hier terugkeren wanneer deze binnen is.

Stap 8: Shades PCB-assemblage:

Shades PCB-assemblage
Shades PCB-assemblage
Shades PCB-assemblage
Shades PCB-assemblage
Shades PCB-assemblage
Shades PCB-assemblage

We beginnen de montage door de stroom-, aarde- en signaaldraden aan de Shades-printplaat te solderen. Begin met het snijden van drie ~ 67 mm lengtes van de siliconendraad; twee van zwart en een van rood. Strip een klein deel van het ene uiteinde van elk van de draden en bevestig een vrouwelijke JST-krimpklem met behulp van uw krimptang. Strip vervolgens ~ 10 mm van het andere uiteinde van elk van de draden. Tin alleen de punt van dit uiteinde met soldeer. U wilt net genoeg soldeer om te voorkomen dat de draad gaat rafelen zonder de draad dikker te maken. Uiteindelijk moet elke draad overeenkomen met de eerste afbeelding hierboven.

Optioneel kunt u een korte lengte gekleurde (ik gebruikte groene) krimpkous toevoegen aan een van de zwarte draden om deze te labelen als de signaaldraad.

Steek vervolgens elke draad door de buitenste gaten van de Shades-printplaat (aan de kant met drie gaten). De rode draad moet door het bovenste gat gaan. Buig het gestripte deel van de draad in een haakvorm en duw het vervolgens in het overeenkomstige gat op de printplaat. Gebruik een punttang om te helpen. U wilt eindigen met een stukje van de draadmantel die uit de gaten van de PCB's komt, hierdoor zal de draad als trek- / buighulp dienen.

Dit is waarschijnlijk een beetje verwarrend, maar hopelijk zullen de foto's je helpen.

Soldeer vervolgens de draden op hun plaats. Misschien wilt u de draden aanbieden met de Right Temple PCB (degene waarop de knoppen en Wemos D1 mini worden gemonteerd) om er zeker van te zijn dat ze lang genoeg zijn. Ook hebben de stroom- en aardingsaansluitingen meer warmte nodig dan het signaal, dus misschien wilt u de temperatuur van uw soldeerbout verhogen als dat mogelijk is.

Steek tot slot de vrouwelijke JST-krimpconnectoren in uw vrouwelijke JST-behuizing. Zorg ervoor dat de draadvolgorde overeenkomt met de afbeelding. De volgorde moet stroom, signaal en aarde zijn, beginnend vanaf de bovenkant van de connector (overgenomen van de uitlijning wanneer deze is bevestigd aan de PCB van de rechter tempel).

We zijn voorlopig klaar met de tinten PCB, dus je kunt het opzij zetten.

Stap 9: Temple PCB-assemblage deel 1

Tempel PCB-assemblage deel 1
Tempel PCB-assemblage deel 1
Tempel PCB-assemblage deel 1
Tempel PCB-assemblage deel 1

Nu gaan we de Temple PCB's monteren. Hoewel beide PCB's markeringen voor componenten hebben, gaan we ons vooral concentreren op de Right Temple (degene waarop de knoppen en de Wemos D1 mini zijn gemonteerd). De componentspots op de Left Temple PCB zijn voor redundantie.

Eerst gaan we de SMD-componenten op de print solderen. Als je nog nooit SMD-onderdelen hebt gesoldeerd, is hier een gids om je op weg te helpen: Link. Alle onderdelen zijn 0805 of groter, dus handmatig solderen moet redelijk eenvoudig zijn.

Soldeer eerst de componenten aan de achterkant van de print, dit zijn onder andere:

  • Drie 100k-weerstanden
  • Vier 1k-weerstanden
  • Vijf condensatoren van 1 µf
  • Een weerstand van 22 Ohm
  • Een MCP1755 Spanningsregelaar
  • Eén MMBT2222 NPN-transistor

Hun plaatsingen zijn allemaal gelabeld op de PCB.

Uw eindresultaat zou eruit moeten zien als de eerste afbeelding hierboven.

Draai vervolgens de PCB om en soldeer de drie drukknoppen op hun plaats, zoals weergegeven in de tweede afbeelding.

Stap 10: Temple PCB Assembly Part 2

Tempel PCB-assemblage deel 2
Tempel PCB-assemblage deel 2
Tempel PCB-assemblage deel 2
Tempel PCB-assemblage deel 2
Tempel PCB-assemblage deel 2
Tempel PCB-assemblage deel 2
Tempel PCB-assemblage deel 2
Tempel PCB-assemblage deel 2

Nu voegen we wat krimpkous toe aan zowel de Temple PCB's als de stroomconnector. Dit helpt je oren te beschermen tegen de ruwe randen van de printplaat.

Snijd eerst twee 65 mm lengtes van de 10 mm dia. Krimpkous. Schuif een stuk krimpkous langs de arm van elke PCB.

Voordat u de krimpkous krimpt, soldeert u de 3,5 mm DC-jackconnector aan de achterkant van de PCB van de rechtertempel, zoals afgebeeld. Merk op dat je het aan beide kanten kunt solderen. Ik koos voor de achterkant, omdat dat voor mij het meest comfortabel was. Schuif bij het solderen de krimpkous langs de arm om te voorkomen dat deze te warm wordt.

Zodra de jackconnector is bevestigd, schuift u de krimpkous terug naar beneden over de aansluiting, zoals afgebeeld, en krimpt u de krimpkous op beide tempelprintplaten met behulp van een heteluchtpistool.

Soldeer tot slot de rechthoekige, mannelijke JST-connector aan de achterkant van de Right Temple PCB, zoals afgebeeld.

Stap 11: Tempel PCB-assemblage deel 3

Tempel PCB-assemblage deel 3
Tempel PCB-assemblage deel 3

Nu gaan we de Wemos D1 Mini op de tempelprint solderen.

Voordat u dit doet, moet u bevestigen dat u de Wemos kunt programmeren en dat deze correct werkt.

Begin met het volgen van de instructies hier om de ESP8266-kern voor de Arduino IDE te installeren. Hierdoor programmeer je de Wemos alsof het een Arduino is.

Eenmaal geïnstalleerd, opent u de IDE en sluit u de Wemos aan op uw computer met behulp van een micro-USB-kabel. Selecteer onder tools->board "LOLIN(WEMOS) D1 R2 & Mini". Selecteer ook de poort waarop de Wemos is aangesloten onder tools. Probeer blink te uploaden (of je eigen favoriete testprogramma). Als alles in orde is, zou de LED van de Wemos één keer per seconde moeten beginnen te knipperen.

Zodra je hebt bevestigd, kun je de code uploaden naar de Wemos, soldeer deze aan de Right Temple PCB met behulp van mannelijke headers, zoals afgebeeld. Zorg ervoor dat je hem aan de zijkant soldeert met de knoppen, de pinlabels op de Wemos moeten overeenkomen met die op de print. Knip eventuele overtollige lengte van de headers af.

Op dit punt zijn alle PCB's volledig gemonteerd en zijn we klaar om alle stukjes in elkaar te zetten.

Als je een Max4466 Mic of een HC-05 Bluetooth-module wilt gebruiken, is dit het moment om ze op de PCB te bevestigen. Hun locaties zijn gelabeld, zorg ervoor dat de pinnen overeenkomen, zodat u hun oriëntaties correct krijgt.

Stap 12: Shades eindmontage deel 1

Shades eindmontage deel 1
Shades eindmontage deel 1
Shades eindmontage deel 1
Shades eindmontage deel 1

Gebruik een 3D-printer om twee paar scharnieren af te drukken (twee van "scharnier 1.stl" en "scharnier 2.stl" bevestigd aan deze stap, ook te vinden op mijn Github). Monteer de scharnieren door een lengte van 1,75 mm filament door beide scharnierdelen te steken en ze samen te voegen.

Bevestig vervolgens, zoals afgebeeld, de scharnieren aan de Shades-printplaat met vier 4 mm M2-schroeven.

U kunt de neussteun ook bevestigen, met behulp van de groef op de steun, deze eenvoudig in het neusgedeelte van de print schuiven. Het moet goed op zijn plaats passen.

Stap 13: Shades Final Assembly Part 2

Shades eindmontage deel 2
Shades eindmontage deel 2
Shades eindmontage deel 2
Shades eindmontage deel 2
Shades eindmontage deel 2
Shades eindmontage deel 2
Shades eindmontage deel 2
Shades eindmontage deel 2

3D-print de "Ear Cover.stl" die aan deze stap is gekoppeld. Schuif het deksel over de Wemos. De gaten van de kap moeten uitgelijnd zijn met die op de PCB van de rechter tempel.

Gebruik twee M2-schroeven van 5 mm om het deksel en de PCB van de rechtertempel aan het rechterscharnier van de Shades-PCB te bevestigen. Steek de vrouwelijke JST-connector in de mannelijke behuizing op de PCB van de rechter tempel.

Pak de Left Temple PCB en een kreeftenklauw kettingklem. Steek de klem door het gat aan het uiteinde van de PCB-arm. Bevestig vervolgens een sleutelhangerring aan de lus van de kreeftenklauw, zoals afgebeeld.

Gebruik tot slot twee M2-schroeven van 4 mm om de PCB van de linkertempel aan het linkerscharnier van de scherm-PCB te bevestigen.

Op dit punt is de montage van de zonneschermen voltooid.

Stap 14: Shades Final Assembly Deel 3 (optioneel):

Shades eindmontage deel 3 (optioneel)
Shades eindmontage deel 3 (optioneel)
Shades eindmontage deel 3 (optioneel)
Shades eindmontage deel 3 (optioneel)

In deze stap voegen we stippenstickers toe aan de tinten om de LED's te diffunderen. Deze stap is optioneel, ik denk dat de tinten er beter uitzien, maar het leidt wel tot een kleine hoeveelheid lichtreflectie.

Over het algemeen zien WS2812b-LED's er beter uit wanneer ze door een materiaal worden verspreid. Dit helpt de lichtbron te verstrooien, waardoor het gemakkelijker is voor uw ogen, terwijl ook de kleuren beter zichtbaar worden. Het probleem met de tinten is dat we het led-licht niet terug naar onze ogen willen reflecteren. We kunnen geen dikke diffuser gebruiken, omdat licht dat vanaf de zijkanten van de diffuser wordt verspreid, naar ons terugkaatst.

In plaats daarvan gebruiken we stickers met dunne stippen (zie Intro voor link). Van alle methoden die ik heb getest, verspreidden deze de LED's net genoeg om acceptabel te zijn, terwijl ook lichtreflecties werden geminimaliseerd. Ze moeten echter op een specifieke manier worden toegepast.

Hoewel de stickers dun zijn, veroorzaken ze, indien aangebracht zodat de sticker het hele LED-vierkant bedekt, nog steeds een merkbare reflectie voor LED's die zich boven of onder uw centrale gezichtslijn bevinden. Dit komt omdat, wanneer je de zonnebril draagt en recht vooruit kijkt, je ogen gelijk zijn met de middelste balk van de tinten, terwijl de andere balken onder een hoek van je ogen staan. Door deze hoek is de rand van de stickers voor u zichtbaar en is eventueel licht dat door de rand gaat ook zichtbaar.

We willen de rand die we kunnen zien minimaliseren. Omdat de stickers rond zijn en we bij het dragen van de tinten slechts één rand van elke LED zien (de onderkant of de bovenkant), kunnen we de stickers zo plaatsen dat slechts een klein deel van de rand van de sticker zich daadwerkelijk aan de rand van de LED-behuizing bevindt dat we zien. Je kunt dit zien in de afbeelding hierboven als je goed kijkt (sorry voor de kwaliteit).

Met andere woorden, u moet de stickers zo plaatsen dat ze nauwelijks elke LED-lens bedekken (het deel waar het licht daadwerkelijk uit komt), waarbij het extra deel van de sticker zich dichter bij de dichtstbijzijnde boven- of onderkant van de tinten bevindt. Met een schaar knip je vervolgens het extra deel weg.

Hierdoor zal het LED licht diffuus worden, maar in zeer donkere omstandigheden zie je toch wat reflecties.

Stap 15: De code

Ik heb code geschreven voor de tinten met 40 verschillende effecten. Het is te vinden op mijn Github in de map "Shades_Code". Voordat u de code naar de Wemos kunt uploaden, heeft u twee bibliotheken nodig:

  • Mijn "PixelStrip"-bibliotheek
  • De Adafruit Neopixel-bibliotheek

U kunt de PixelStrip-bibliotheek hier downloaden. Download alle bestanden en plaats ze in een map met de naam "PixelStrip" in de bibliothekenmap van uw Arduino-installatiemap.

U kunt de Adafruit Neopixel-bibliotheek installeren met behulp van de bibliotheekmanager van de Arduino IDE.

Nadat u beide bibliotheken hebt geïnstalleerd, kunt u Shades_Code.ino openen en uploaden naar de Wemos. Als alles goed is, zouden de tinten cycluseffecten moeten beginnen. Je tinten zijn nu compleet!:)

Als er iets mis is, ga dan naar mijn stap voor probleemoplossing.

Op dit punt kun je doorgaan naar de volgende stap, waar ik de knopfuncties van de tinten zal bespreken en hoe je ze moet dragen. Als je effecten wilt uitschakelen of wijzigen, zal ik dat hieronder bespreken.

Veranderende effecten:

Als je een effect wilt uitschakelen, moet je het eerst zoeken in het Shades_Code.ino-bestand. Het staat in de grote switch-instructie in de main void loop(). De effecten zijn niet individueel gelabeld, omdat het moeilijk is om ze te beschrijven met alleen opmerkingen, dus je moet misschien een beetje jagen. Zodra je het effect hebt gevonden, hoef je alleen maar het zaaknummer te wijzigen in iets dat hoger is dan het totale aantal effecten (99 voor ex) om het uit te schakelen.

U bent ook welkom om uw eigen effecten aan te passen of toe te voegen. Om een effect toe te voegen, voegt u het toe aan de switch-instructie in de main void loop(), en verhoogt u de "numEffects" var.

Mijn bibliotheek kan een breed scala aan effecten doen, maar het is een beetje moeilijk om mee te werken. Het begon oorspronkelijk als een kleine opslagplaats voor effecten, maar ik heb het later uitgebreid om effecten uit te voeren over vreemde vormen van pixels (ringen, sterren, enz.), dus het is een beetje door elkaar gegooid. Op dit moment heb ik een architectuur voor de bibliotheek en ik ben volledig van plan deze in de toekomst opnieuw te schrijven. In de tussentijd is de huidige bibliotheek volledig becommentarieerd en vrij van bugs (kijk in segmentSet.h voor opmerkingen over segmenten), maar je zult waarschijnlijk wat moeten experimenteren om te begrijpen hoe elk effect werkt.

Bovendien zijn de LED's in een zigzagformaat ingedeeld. Hun nummers staan op de achterkant van de Shades-printplaat.

Stap 16: De tinten dragen en gebruiken

De tinten dragen en gebruiken
De tinten dragen en gebruiken

Om de kappen te dragen, steekt u de 3,5 mm jack-kabel door de ring van de sleutelring en steekt u deze in de connector aan het uiteinde van de rechter slaap. Door de kabel door de sleutelring te halen, fungeert deze als een riem, waardoor de tinten goed op uw gezicht blijven zitten. Voorzie de tinten van stroom met een willekeurige 5V powerbank.

Toetsen:

De tinten hebben drie knopen. Bij het gebruik van mijn code doen ze de volgende dingen:

(deze functies staan ook vermeld op de PCB van de linker tempel)

  • Knop 1: Volgend effect (of start het huidige effect opnieuw als de effectrotatie is uitgeschakeld)
  • Knop 2: Effectrotatie aan/uit. Hierdoor wordt het huidige effect oneindig herhaald
  • Knop 1+2 (tegelijk): Shades aan/uit. Stopt gewoon de effecten, schakelt de stroom niet uit.
  • Knop 3: Helderheidscyclus. U kunt de stappen aanpassen door de array "brightnessLevels" in mijn code te wijzigen.

Als je zo ver bent gekomen, bedankt voor het lezen! Ik wens je veel plezier met je tinten. Als je vragen hebt, laat dan een reactie achter en ik neem contact met je op.

Stap 17: Problemen oplossen:

Als je hier bent, gedragen de tinten zich niet goed. Hieronder zal ik enkele mogelijke problemen en oplossingen bespreken. Als je niets ziet dat je probleem verhelpt, laat dan een reactie achter en ik zal proberen te helpen.

  • De tinten laten niets zien als ze zijn aangesloten.

    • Probeer een micro-USB op de Wemos aan te sluiten. De tinten moeten worden ingeschakeld.

      • Als ze dat wel doen, is er iets mis met je powerbank.
      • Als dat niet het geval is, probeer dan een code naar de Wemos te uploaden (zoals blink)

        • Als het werkt, is er iets mis met de verbinding tussen de lampenkappen en de Temple PCB. Controleer nogmaals uw JST-verbinding. De draden moeten van bovenaf op volgorde liggen: stroom, gegevens, aarde.

          Als de verbinding goed is, probeer dan commentaar te geven op de knopfuncties in mijn code, het is mogelijk dat een van de knoppen niet goed werkt

        • Als het niet werkt, is de Wemos dood of wordt hij herhaaldelijk gereset. Open de Arduino seriële monitor (stel Baud in op 115200) en let op eventuele resetcodes. Als je een code krijgt, moet je wat googelen om erachter te komen wat er mis is. Als u geen codes krijgt, is de Wemos waarschijnlijk dood.
  • De tinten werken, maar sommige pixels flikkeren (dit gebeurde op 2 van de 5 PCB's die ik bestelde)

    Dit is waarschijnlijk een probleem met de eerste pixel (rechtsboven bij het dragen van de tinten). U moet de pixel vervangen. Verwijder het eerst met een fijn getipt paar draadknippers om de verbindingen van de pixel met de PCB door te knippen. Pas op dat u de soldeerpunten niet van de printplaat trekt. Dan moet je hier wat WS2812-LED's kopen en er een op zijn plaats solderen. Zorg ervoor dat u de pixel zodanig oriënteert dat deze overeenkomt met de andere in de rij

Mode wedstrijd
Mode wedstrijd
Mode wedstrijd
Mode wedstrijd

Tweede plaats in de modewedstrijd

Aanbevolen: