Inhoudsopgave:

LED-matrixcilinder - Ajarnpa
LED-matrixcilinder - Ajarnpa

Video: LED-matrixcilinder - Ajarnpa

Video: LED-matrixcilinder - Ajarnpa
Video: [011] Crochetage & démontage M&C Matrix 2024, November
Anonim
Image
Image
Ontwerp- en lasersnijbestand
Ontwerp- en lasersnijbestand

Fusion 360-projecten »

Deze LED-matrix maakt gebruik van standaard WS2812b LED-strepen om een matrix te bouwen met een cilindrische vorm en een mooie houten fineerafwerking.

Onderdelen lijst:

  1. 790x384 karton 1,5 mm (andere maten zijn ook mogelijk, maar CAD-gegevens moeten worden gewijzigd)
  2. 100 WS2812b LED van LED-stripes (30 LED/meter)
  3. Raspberry Pi of Arduino
  4. Microwood fineer of elk type flexibel diffusiemateriaal
  5. Draden

Stap 1: Ontwerp- en lasersnijbestand

Ontwerp- en lasersnijbestand
Ontwerp- en lasersnijbestand

De belangrijkste ontwerpparameter is de dikte van het gebruikte materiaal. In deze build is een karton van 1,5 mm gebruikt omdat het gemakkelijk te snijden en vrij goedkoop is. 3D-ontwerp (bijv. Fusion360) helpt problemen in het assemblageproces te voorkomen. Voor lasersnijden moeten onderdelen zo worden gerangschikt dat ze passen in het lasersnijgebied van uw machine, in dit geval 790x384 mm. Inkscape is een eenvoudig en krachtig hulpmiddel om deze taak uit te voeren. Bijgevoegd SVG-bestand bevat alle onderdelen voor het cilindrische display met 1,5 mm materiaal.

UPDATE: Ik heb het Fusion360-model aangepast met een gebruikersparameterdikte, zodat u de materiaaldikte voor de matrix kunt wijzigen en uw eigen lasersnijbestand kunt genereren. Uitsparingen voor de LED-strepen worden binnenkort toegevoegd.

Link naar het model:

Stap 2: Lasersnijden en preassembleren

Lasersnijden en voormonteren
Lasersnijden en voormonteren
Lasersnijden en voormonteren
Lasersnijden en voormonteren
Lasersnijden en voormonteren
Lasersnijden en voormonteren
Lasersnijden en voormonteren
Lasersnijden en voormonteren

Na het lasersnijden krijgt u de volgende onderdelen:

- 12 C-vormige horizontale segmenten

- 18 kamachtige verticale segmenten

- 2 verticale verbindingssegmenten

- 20 led-dragersegmenten

8 C-Shapes, 9 kammen en 1 aansluiting worden gecombineerd tot een displayhelft. In deze stap worden de onderdelen alleen in elkaar gestoken om te controleren of alles goed past. Gebruik nog geen lijm.

Stap 3: Bedrading van LED's

Bedrading van LED's
Bedrading van LED's
Bedrading van LED's
Bedrading van LED's
Bedrading van LED's
Bedrading van LED's

LED-strips worden in 5 LED-segmenten gesneden en met het plakband aan de achterkant op de dragersegmenten gelijmd. Eerst worden de DI (data in) en DO (data out) pinnen van de strepen op een zigzagmanier met elkaar verbonden, waarbij DO van de eerste streep wordt verbonden met DI van de volgende streep enzovoort. Dit wordt gedaan voor elke helft van de cilinder inclusief 10 strepen. 5V en GND zijn slechts aan één kant van strip tot strip verbonden. De lengte van de draden moet overeenkomen met de stripafstand van de array.

Voordat de LED's in de matrix worden geïnstalleerd, moeten de segmenten van de matrix voor elke helft van de cilinder aan elkaar worden gelijmd.

Ten slotte worden de 10 strepen in elke helft van de matrix geplaatst en gefixeerd met hete lijm. DO van de ene helft is verbonden met DI van de tweede helft. DI van de eerste helft zal de input zijn voor de Raspberry Pi of Arduino.

Stap 4: Eerste test

Eerste test
Eerste test
Eerste test
Eerste test

Om er zeker van te zijn dat alles werkt, moet een eerste test van de LED's worden uitgevoerd. Het gebruik van een Arduino en de Neopixel-bibliotheek zou de gemakkelijkste manier moeten zijn om dit te doen.

Stap 5: Houten fineerdiffusor

Houten fineerdiffusor
Houten fineerdiffusor
Houten fineerdiffusor
Houten fineerdiffusor

Na het meten van de diameter en hoogte van de matrix, kon het houten fineer worden uitgesneden en rond de matrix worden gerold. Voor bevestiging is een transparante lijmstrip voldoende.

Stap 6: Raspberry Pi, Arduino en voeding

Raspberry Pi, Arduino en voeding
Raspberry Pi, Arduino en voeding
Raspberry Pi, Arduino en voeding
Raspberry Pi, Arduino en voeding

Voor eenvoudige codering in Python van mooie matrixeffecten, zou een Raspberry Pi kunnen worden gebruikt. In dit geval is er gebruik gemaakt van een Raspberry Pi Zero, die via GPIO pin 18 via een 74HCT245 level shifter op de matrix is aangesloten om de 3.3V van de Pi naar de 5V van de WS2812 aan te passen. Ook worden een grote condensator (2200 uF) en een serieweerstand (470 Ohm) gebruikt zoals voorgesteld bij het gebruik van grotere Neopixel/WS2812 LED-tellingen.

Stroomvoorziening

Het maximale vermogen voor 100 WS2812b LED's is 100x60mA = 6A. Door de helderheid te verminderen, kan het stroomverbruik natuurlijk drastisch worden verminderd. Zorg ervoor dat uw 5V-voeding de stroom kan leveren voor de gewenste helderheid.

Arduino

Deze matrix werkt direct op Arduino-apparaten met de NeoPixel- en NeoMatrix-bibliotheek van Adafruit. U moet de pincode en initialisatie wijzigen als u de voorbeelden wilt gebruiken:

Neomatrix:

Adafruit_NeoMatrix matrix = Adafruit_NeoMatrix(20, 5, PIN, NEO_MATRIX_TOP + NEO_MATRIX_LEFT + NEO_MATRIX_COLUMNS + NEO_MATRIX_ZIGZAG, NEO_GRB + NEO_KHZ800);

Je moet ook de Adafruit GFX-bibliotheek opnemen en een ander lettertype laden met een hoogte van 5 pixel. Gebruik de bijgevoegde Arduino-schets als uitgangspunt (gebruikt PIN 4 voor de matrix). Het is een aangepaste versie van de voorbeeldschets van Neomatrix.

NeoPixel:

Adafruit_NeoPixel-strip = Adafruit_NeoPixel (100, PIN, NEO_GRB + NEO_KHZ800);

Stap 7: Simulatie

Simulatie
Simulatie
Simulatie
Simulatie
Simulatie
Simulatie
Simulatie
Simulatie

Python-broncode is beschikbaar op Github

Er zijn twee modi voor codering. Als PI=False gedefinieerd aan het begin van cylinder.py, bevindt de code zich in de simulatiemodus. Je kunt alle animaties testen op elk platform dat python kan draaien. Installeer eerst alle bibliotheken die door het programma worden gebruikt (zoals pygame, numpy, enz.). In de simulatiemodus wordt de cilinder weergegeven als een matrix van 5x20 pixels.

Stap 8: Programmeren

Programmeren
Programmeren
Programmeren
Programmeren
Programmeren
Programmeren
Programmeren
Programmeren

De tweede softwaremodus is PI=True (gedefinieerd in cylinder.py) en is gestart op de Pi. Deze stuurt de GPIO-pin 18 van de Raspberry Pi aan. Je bent vrij om extra effecten toe te voegen en te spelen met de parameters.

Tekst wordt weergegeven met een 3x5 lettertype, dus niet alle letters zijn perfect vanwege de beperkte hoogte van het scherm.

Genieten van!

Epilog X-wedstrijd
Epilog X-wedstrijd
Epilog X-wedstrijd
Epilog X-wedstrijd

Tweede plaats in de Epilog X-wedstrijd

Aanbevolen: