Weekendproject Bouw een gigantisch LED-pixelscherm
Ik ben dol op LED-pixels: helder, eenvoudig te bedienen, goedkoop en zo veelzijdig. Mijn laatste project was een Ambilight TV-achtergrondverlichting Make Your Own Ambilight voor $ 60 Make Your Own Ambilight voor $ 60 Omgevingslicht dat reageert op het beeld op je tv is eenvoudiger en goedkoper dan je denkt - en het zorgt voor een geweldige upgrade naar je thuisbioscoopervaring . Meer lezen, maar over het algemeen ben ik gewoon verliefd op intelligente verlichting Een inleiding tot DMX-lichtregeling - Breng uw verlichting naar een heel nieuw niveau Een inleiding tot DMX-lichtregeling - Breng uw verlichting naar een geheel nieuw niveau Intelligente verlichtingssystemen waren vroeger een duur domein voor professionals; maar met de verspreiding van goedkopere elektronica en computerbesturingssystemen, zijn ongelooflijke lichteffecten nu stevig binnen het bereik van de hobbyist ... Lees meer. Vandaag zullen we ze veranderen in een groot pixel-display dat aan de muur van uw kantoor kan worden opgehangen; om een nuttig doel te dienen, of gewoon er ongelooflijk mooi uit te zien.
Dit is een relatief eenvoudig project dat slechts tijd kost om te bouwen, maar een beetje lastig kan zijn bij het verbinden van de strengen van LED's. Het basisidee is het leggen van strips LED-pixels in slangpatroon aan de achterkant van de fotolijst. De voorkant zal worden gematteerd om het licht te verspreiden.
Vanaf daar is het meestal een kwestie van welke software je moet gebruiken, afhankelijk van je behoeften. Ik zal je op weg helpen met een aantal democodes en verwijzingen, en dan de softwarehoek opnieuw bekijken in een later artikel terwijl we achterhalen hoe informatie als meldingen kan worden opgehaald en aandelenkoersen op het display.
Stap 0: Je hebt nodig
- Strip van 10 meter (verkocht in twee rollen van 5 meter) van LED-pixels - ik heb WS2812B gebruikt omdat ze goedkoop zijn. U kunt ook strips met dubbele dichtheid kopen bij 60 LED's / meter, als u een hogere resolutie wenst.
- 5V 10A-voeding. Het model dat ik heb gebruikt, neemt 240V wisselstroomingangen naar sommige schroefklemmen. Als u volledige veiligheid nodig hebt, koop dan een ingesloten model.
- Arduino UNO.
- Talrijke lengtes van dikke draad; Ik heb de offcuts van een oude computer-PSU gebruikt.
- Ikea RIBBA diep fotolijst, 50cm x 50cm.
- Glazuurspray en witte verf.
De totale kosten moeten lager zijn dan $ 100. Wat tools betreft, hebt u ook het volgende nodig:
- Soldeerbout en soldeer
- Heet lijmpistool
- Mes of schaar
- Draadstripper
Lees zeker onze elektronische vaardigheden voor beginners De beginnerselektronica: 10 vaardigheden die u moet kennen De beginnerselektronica: 10 vaardigheden die u moet weten Velen van ons hebben nog nooit een soldeerbout aangeraakt, maar het maken van dingen kan ongelooflijk lonend zijn. Hier zijn tien van de meest elementaire doe-het-zelf-elektronica-vaardigheden om u op weg te helpen. Lees meer eerst de gids!
Stap 1: Doe de wiskunde
Als u dezelfde 50 cm x 50 cm grote Ikea-fotolijst en LED-strengen als mij hebt gekocht, zou u 15 strengen van 15 LED's moeten kunnen plaatsen. Er is echter niets dat u ervan weerhoudt een ander formaat kader te gebruiken. Elke LED is ongeveer een centimeter uit elkaar geplaatst, dus ik mikte op ongeveer inch squared pixels op het scherm - ja, dat is 1 DPI. Niet precies in Retina-graphics.
Doe de wiskunde en teken een aantal hulplijnen op de kaderrug. Meet twee keer en controleer nogmaals: ik moet een klein verschil tussen de regels hebben gelaten, want tegen de tijd dat alles werd neergezet, besefte ik dat ik slechts 14 strengen van 15 LED's kon plaatsen. Het maakt niet uit, de software is eenvoudig aan te passen voor een ander aantal pixels met variërende rijlengtes en aantal rijen. Ga je gang en knip je LED's in de juiste lengte. Helaas vond ik dat 15 pixels per streng precies samenvielen met de gesoldeerde verbindingen op een van mijn haspels, dus ik werd gedwongen ze te de-solderen. Aan de positieve kant, ten minste deze waren dan vooraf gesoldeerd.
Stap 2: Frost the Glass
Om het licht van de LED's te helpen diffunderen, heb ik besloten om aan beide zijden een basisglas-glazuurspray te gebruiken. Doe dit buitenshuis, want de dampen zijn gevaarlijk en probeer zo gelijkmatig mogelijk te spuiten. Het glazuur is verrassend hard, als het eenmaal is gedroogd, maar u moet eerst zorgen voor een gelijkmatige coating en te allen tijde krassen voorkomen.
Terwijl je buiten bent, spuit je ook de achterkant van de fotolijst wit - dit zal het licht van de LED terug reflecteren. We zullen de witte kartonnen fotolijst niet gebruiken. Knip een van de hoeken af voor de voedings- en signaaldraden.
Stap 3: sluit LED's aan op het bord
Gebruik een sterke lijm of een superlijm. Ik probeerde het met dubbelzijdig plakband, maar toen ik merkte dat het er een paar weken later vandoor ging; het hete lijmpistool is hier nog slechter voor wanneer beide zijden niet-poreus zijn. De exacte positionering mag er niet te veel toe doen als je strengen hebt gekocht die zijn omsloten door een rubberen behuizing - ze kunnen vrij bewegen binnen die voor herpositionering.
Onthoud dat het signaal van het begin tot het einde rondsluipt en dat er een specifieke richting is voor elke streng. Leg één met de pijl naar rechts, dan de volgende streng naar links en herhaal. Controleer dit voordat u ze vastplakt!
Stap 4: Solderen
Voor het verbinden van elke streng zijn 3 draadlengten van verschillende lengtes nodig. In elk geval verbindt u de binnenste twee pads met de kortste draadlengte; dan de middelste twee; dan de buitenste twee met de langste lengte. Het binnenkussen wisselt af tussen de + 5V-lijn en de GND-lijn, afhankelijk van aan welke kant van het frame u momenteel aan het werken bent.
Zorg ervoor dat zowel de elektroden als de draad vooraf zijn gesoldeerd. Dit is het meest tijdrovende deel van het project, maar het is cruciaal dat je niet haast en controleer of je de juiste lijnen met elkaar verbindt!
Stap 5: Beveilig alle strengen
Tenslotte, als je de stroom- en invoerdraden hebt gebruikt die aan je streng waren bevestigd, zul je merken dat het constant bewegen rond het bord de eerste draad heeft losgetrokken. Ik besloot om twee kleine gaten te boren en door een witte kabelbinder te halen om dit onderdeel te bevestigen. Als u problemen ondervindt bij het verkrijgen van sterke lijm, kunt u dit overwegen om alle strengen aan beide uiteinden vast te zetten.
Stap 6 Bedradingstest
De bedrading is eenvoudig: pin 6 op de Arduino wordt gebruikt als de signaalpen om de LED's te besturen; terwijl de 5V stroom naar de LED's rechtstreeks van uw externe voeding moet komen. Sluit een gemeenschappelijke aardedraad aan tussen de streng, uw Arduino en de voeding. Probeer niet om de streng rechtstreeks vanuit uw Arduino aan te sluiten, of om de 5V-voeding direct op de Arduino aan te sluiten wanneer USB is aangesloten (zoals het zal zijn om de testcode te uploaden).
Download en voeg de Adafruit NeoPixel-bibliotheek toe aan uw map in Arduino-bibliotheken en start vervolgens de Arduino. Voer een initiële strengtest uit met behulp van de voorbeeldstrandtestcode die is opgenomen in de bibliotheek. Pas het aantal LED's aan dat u hebt in de eerste parameter van de volgende regel (verander 60 in maar een aantal):
Adafruit_NeoPixel strip = Adafruit_NeoPixel (60, PIN, NEO_GRB + NEO_KHZ800);
Als de animatie op een bepaalde rij stopt, koppelt u de animatie onmiddellijk los en controleert u de bedrading. Je hebt of het onderdeel in de verkeerde richting; de draden zijn gekruist; of je hebt per ongeluk de + 5V aan de GND gesoldeerd.
Stap 7: Plaats in het frame
Omdat ik een diepere uitsparing gebruik dan het frame was ontworpen, heb ik eerst het hete lijmpistool gebruikt om het glas op het frame te verzegelen. Vervolgens heb ik wat korte stukjes rubberen verpakking rond de buitenrand van het frame geplaatst om de vereiste diepte te creëren, voordat ik de LED's terug plaats. Na een laatste test van de LED's, heb ik het hete lijmpistool opnieuw gebruikt om alles op zijn plaats te verzegelen.
Misschien wilt u ook een kleine inkeping in de hoek van het frame maken om de dikke kabel op te bergen.
Dat is het in termen van het construeren van het eigenlijke scherm, hoewel je de voeding en Arduino waarschijnlijk in een projectvak wilt verbergen. De rest is te danken aan software.
Glediator
Voor feestjes of gebruik in een professionele clubomgeving is Glediator van SolderLab.de de koning van LED-matrixbesturing, die tot 512 WS2812 / NeoPixels met 24 frames per seconde kan aansturen. Hiermee kun je live of vooraf opgenomen mixen van LED-animaties maken en zelfs GIF's toevoegen (ja, ik zie je Nyan Cat); en bevat net als DJ-software een fader om vloeiend te mixen tussen animaties.
Om met Glediator aan de slag te gaan, laadt u deze firmware op uw Arduino UNO en zorgt u ervoor dat de signaalkabel op pin 6 staat. Vergeet niet om de variabele aan te passen die aangeeft hoeveel LED's u hebt.
Open tijdens Glediator de opties en wijzig de matrixgrootte en uitgang. aanpassen Pixelvolgorde als uw lay-out anders is, maar helaas is er erg weinig documentatie voor deze stap, dus het is meestal vallen en opstaan. Als je uitvoer niet overeenkomt met wat op het scherm wordt getoond, probeer dan een andere instelling. HS_BL werkte voor mij, wat ik vermoed dat betekent “horizontal snake, beginnend bottom left”.
Glediator is een pro-level app, dus hoewel ik het in de toekomst misschien wel zal doen, laat ik je voorlopig de interface verkennen en spelen. Probeer een andere animatie aan de linker- en rechterkant te laden en schuif vervolgens de schuifregelaar tussen de twee; of je vindt een kant-en-klare afspeellijst met reeksen helemaal rechts, die te zien is in de demovideo hierboven.
Adafruit NeoMatrix en GFX Library
Adafruit heeft een verbluffend nuttige bibliotheek gemaakt voor het werken met dit soort pixelmatrices. De eerste heet de Adafruit GFX-bibliotheek, oorspronkelijk ontworpen voor het werken met TFT- en LCD-schermen; de NeoMatrix-bibliotheek is een aanpassing hierop waardoor alle functies werken met NeoPixel LED-matrices. Met uw matrix gedefinieerd, opent dit een enorm aantal eenvoudig te gebruiken functies, zoals het uitvoeren van tekst of het weergeven van een bitmap-sprite-afbeelding.
Als je het project precies hebt gemaakt zoals ik deed, vind je deze voorbeeldcode nuttig. Het belangrijkste deel van de code is hier:
#define XSIZE 15 #define YSIZE 14 #define PIN 6 Adafruit_NeoMatrix matrix = Adafruit_NeoMatrix (XSIZE, YSIZE, PIN, NEO_MATRIX_BOTTOM + NEO_MATRIX_LEFT + NEO_MATRIX_ROWS + NEO_MATRIX_ZIGZAG, NEO_GRB + NEO_KHZ800);
De eerste paar regels moeten voor zichzelf spreken. De onderste drie vertellen de grafische bibliotheek over de lay-out - in dit geval bevindt mijn eerste pixel zich in de linksonder, en het is gearrangeerd rijen, met de rijen na a zigzag patroon. Controleer de documentatie van de bibliotheek als u deze op een andere manier hebt georiënteerd.
Ik heb al een paar sprites in de code gedefinieerd (hoewel alleen het smiley-gezicht wordt gebruikt). Om je eigen sprites te maken, vind je een Img2Code Java-applicatie binnen de GFX-bibliotheek te downloaden.
In een toekomstig artikel zullen we kijken naar het gebruik van de bibliotheek om nuttige informatie weer te geven, zoals aandelenkoersen of Twitter-streams, maar nu zou je in staat moeten zijn om met mijn voorbeeldcode te spelen en je eigen afbeeldingen te laden.
Dat is alles voor de tutorial deze keer. Je hebt een gigantisch LED-scherm gemaakt, nu is het gewoon een kwestie van uitzoeken wat ermee te doen is. Overweeg een mini-bliksemwolklamp te maken Een wolklamp bouwen met geluid Reactieve bliksem Hoe een wolkenlamp te bouwen met geluid Reactieve bliksem Een paar maanden geleden ging een donderende en bliksemafleidlamp van $ 3000 viral in de makersgemeenschap. Wat we vandaag gaan doen is niet precies hetzelfde - we maken iets praktischer. Lees meer met de overgebleven LED's. Vragen of problemen? Vraag in de comments - het is een vrij complex project, maar ik zal mijn best doen om te helpen.
Ontdek meer over: LED-strip.