Het idee voor de pxlDigit_PCB kwam bij me op toen ik de pxlDigit bouwde (artikel hier: https://nerdiy.de/howto-elektronik-sieben-segment-ziffer-pxldigit-aus-ws2812-leds-bauen/) kwam.
Daar is de pxlDigit opgebouwd uit individuele WS2812 LED-segmenten. Hiervoor moeten de leds eerst in de 3D-geprinte behuizing worden gelijmd en vervolgens in de behuizing aan elkaar worden gesoldeerd. Met name deze stap is door ruimtegebrek niet zo eenvoudig. :/
Daarom heb ik dit pxlDigit_PCB ontworpen. De LED's, de ESP8285 en de rest van de elektronica kunnen erop worden geïnstalleerd. Je kunt dus eerst het hele bord bouwen, testen en programmeren en vervolgens in de 3D-geprinte behuizing van de pxlDigit of de pxlDigit_clock steken.
Dankzij de geïntegreerde USB-C aansluiting kan de pxlDigit ook direct van stroom worden voorzien en kan, indien nodig, de firmware geprogrammeerd worden.
Daarnaast kunnen de volgende (optionele) componenten op de print worden geïnstalleerd:
- BME280 klimaatsensor
- TSL2591 helderheidssensor
- MPR121 aanraaksensor voor maximaal 12 aanraakelektroden
Om ervoor te zorgen dat de pxlDigit-printplaat goed werkt, moet deze in de 3D-geprinte behuizing worden geïnstalleerd. Op deze manier wordt het licht van de LED's beter verdeeld en kunnen de afzonderlijke cijfers eenvoudig worden gecombineerd tot een groter display. U kunt de cijfers gebruiken om bijvoorbeeld een volgerteller, een scoreweergave of een klok te bouwen.
Er zijn vier cijfers nodig om de klok te bouwen, die vervolgens op een 3D-geprinte basis worden gemonteerd. Zo kunnen de actuele uren en minuten worden weergegeven.
Er zijn natuurlijk ook andere manieren om de pxlDigit_PCB als display te gebruiken. De pxlDigit_clock die in het volgende artikel wordt getoond, is een eerste voorbeeld. 🙂
De structuur van de klok “pxlBlck_digitClock” wordt beschreven in het volgende artikel.
Veiligheidsinstructies
Ik weet dat de volgende opmerkingen altijd een beetje vervelend zijn en onnodig lijken. Helaas hebben veel mensen die "beter" wisten door onvoorzichtigheid ogen, vingers of andere dingen verloren of zichzelf verwond. Gegevensverlies is in vergelijking bijna te verwaarlozen, maar zelfs dit kan erg vervelend zijn. Neem daarom vijf minuten de tijd om de veiligheidsinstructies te lezen. Omdat zelfs het coolste project geen blessure of andere problemen waard is.
https://www.nerdiy.de/sicherheitshinweise/
Affiliate links / reclame links
De hier vermelde links naar online winkels zijn zogenaamde affiliate-links. Als u op zo'n affiliate-link klikt en via deze link een aankoop doet, ontvangt Nerdiy.de een commissie van de betreffende onlineshop of aanbieder. De prijs verandert voor jou niet. Als u via deze links uw aankopen doet, steunt u Nerdiy.de om in de toekomst andere nuttige projecten aan te kunnen bieden. 🙂
Eisen
Voor de constructie moet je SMD-soldeertaken beheersen. In de volgende artikelen vindt u tips hoe u dit kunt doen.
- Elektronica - Mijn vriend de soldeerbout
- Elektronica – Soldeer THT-componenten met de hand
- Elektronica – Soldeer SMD-componenten met de hand
Vereiste hulpmiddelen:
Hoeveelheid | item | Link |
---|---|---|
1x | soldeerbout | Kopen bij Amazon |
1x | USB-soldeerbout | Kopen bij Amazon |
1x | derde hand | Kopen bij Amazon |
1x | soldeerpunt reiniger | Kopen bij Amazon |
1x | heet lijmpistool | Kopen bij Amazon |
1x | SLA 3D-printer | Kopen bij Amazon |
1x | M2 binnenkraan | Kopen bij Amazon |
1x | M3 interne kraan | Kopen bij Amazon |
1x | M8 binnenkraan | Kopen bij Amazon |
1x | M8 buitenkraan | Kopen bij Amazon |
1x | Torx-schroevendraaier | Kopen bij Amazon |
Benodigd materiaal:
Hoeveelheid | item | Link |
---|---|---|
1x | M2x6 stelschroef | Kopen bij Amazon |
6x | M2x6 verzonken schroef | Kopen bij Amazon |
3x | M3x6 stelschroef | Kopen bij Amazon |
1x | M3x50 verzonken schroef | Kopen bij Amazon |
6x | Inzetstuk met schroefdraad M2 | Kopen bij Amazon |
3x | M3 schroefdraad inzetstuk | Kopen bij Amazon |
3x | Cilindermagneet 5x2mm | Kopen bij Amazon |
1x | Cilindermagneet 10x5mm | https://www.supermagnete.de/scheibenmagnete-neodym/scheibenmagnet-10mm-5mm_S-10-05-DN |
1x | 623 kogellagers | Kopen bij Amazon |
2x | 608 kogellagers | Kopen bij Amazon |
1x | JST SH aansluitkabel | Kopen bij Amazon |
1x | ELEGOO ABS-achtige 3D-printerhars | Kopen bij Amazon |
1x | Keber | Kopen bij Amazon |
1x | 10x2mm aluminium buis | Kopen bij Amazon |
1x | soldeer | Kopen bij Amazon |
1x | USB-voeding | Kopen bij Amazon |
1x | USB-C-kabel | Kopen bij Amazon |
De componenten die nodig zijn om de pxlDigit-printplaat te monteren, zijn te vinden in het volgende bestand.
Als er recentere versies van het pxlDigit-bord zijn, kun je de beschikbare versies vinden in de Git-repository op:
De structuur van het pxlDigit-bord
In het verleden heb ik op dit punt vaak individuele foto's ingevoegd om te laten zien welke componenten waar op de print moeten worden gesoldeerd.
Een nog betere manier om een overzicht te krijgen van welke componenten waar op de printplaat horen, staat in de volgende paragraaf. Dankzij het werk van OpenScope-project u kunt nu zeer handige HTML-bestanden genereren waarin u direct kunt zien welke componenten waar op de print moeten worden geïnstalleerd.
U kunt het overzicht voor de pxlDigit_PCB hier bekijken: pxlDigit_PCB
U kunt het huidige bestand ook vinden in de GIT-repository onder de volgende link:
https://github.com/Nerdiyde/pxlDigit_PCB/blob/main/PCB/pxlDigit_PCB_v1.2_bom.html
(Houd er rekening mee dat u het HTML-bestand moet downloaden om het te kunnen bekijken. Dit is niet rechtstreeks vanuit de GIT-repository mogelijk.)
PCB-productie: Hier vindt u alle informatie die u nodig heeft om de printplaten te vervaardigen:
De materialen die nodig zijn om de pxlDigit_clock te bouwen
De benodigde onderdelen worden in het volgende gedeelte kort beschreven.
De STL-bestanden die nodig zijn voor het 3D-printen van de behuizingsdelen zijn te vinden in de GIT-repository onder de volgende link.
In het volgende artikel wordt beschreven hoe u bestanden kunt downloaden van een GIT-repository.
U heeft dan de volgende onderdelen nodig voor de montage.
- 3x ingebouwde “slave” pxlDigit PCB
- 1x gemonteerde “master” pxlDigit-printplaat
- 4x 3D geprinte behuizing
- 3D geprinte basis
- 28x 3D geprinte transparante filament diffuser
- 8x M3x8 cilinderkopschroef
- USB breakout-bord
- Wifi-patchantenne met UFL-aansluiting
- 3x 25cm kabel 0.2mm² in (bijv.) rood
- 3x 25cm kabel 0.2mm² in (bijv.) zwart
- 3x 25cm kabel 0.2mm² in (bijv.) groen
- 15cm kabel 0.2mm² in (bijv.) rood
- 15cm kabel 0.2mm² in (bijv.) zwart
Hieronder ziet u enkele close-ups van de benodigde onderdelen.
Bereid de pxlDigit-borden voor op installatie
Eerst moet u de voorbereide printplaten met de benodigde aansluitingen en kabels verbinden.
Hiervoor heb je de vier gemonteerde pxlDigit-borden nodig. (3x slave-versie, 1x master-versie)
Een printplaat dient voorzien te zijn van een USB-C aansluiting, ESP en de elektronica die nodig is voor het programmeren. De drie overige printplaten hoeven alleen te worden uitgerust met de LED's of de daarvoor benodigde componenten.
Je hebt ook de voorbereide lijnen nodig.
- 3x 25cm kabel 0.2mm² in (bijv.) rood
- 3x 25cm kabel 0.2mm² in (bijv.) zwart
- 3x 25cm kabel 0.2mm² in (bijv.) groen
- 15cm kabel 0.2mm² in (bijv.) rood
- 15cm kabel 0.2mm² in (bijv.) zwart
Vertin vervolgens de aansluitpads op de pxlDigit PCB...
... met wat soldeer.
Je moet ook de lijnen voorbereiden door de uiteinden van de lijnen te strippen...
... en vertind met wat soldeer.
Vervolgens kunt u de lijnen verbinden zoals weergegeven ...
… soldeer op de pxlDigit PCB.
Herhaal dit voor alle “slave” PCB’s (PCB’s waarop alleen de LED’s zijn bevolkt).
De printplaat die voorzien is van de LED's en de elektronica (ESP & Co) die nodig is voor de werking (masterversie) moet dan aan de andere twee lijnen gesoldeerd worden.
Deze twee draden zijn alleen verbonden met de contacten
- GND
- 5V
verbonden.
Bereid de behuizingsdelen voor
Om de voorbereide printplaten in de behuizingsdelen te kunnen installeren, moet u nu de behuizingsdelen voorbereiden.
test
Hiervoor heb je nodig
- 4x 3D-geprinte bordbevestigingen
- de 3D-geprinte basis
- 8x M3x8 cilinderkopschroeven
U moet eerst een van de printplaathouders bewerken. Naast de USB-C aansluiting passen later de aansluitkabels door de getoonde opening.
Zo zou de voltooide printplaathouder eruit kunnen zien.
Nu moet u elk twee M3x8 cilinderkopschroeven door de basis steken, zoals afgebeeld.
Om dit makkelijker te maken, kunt u de printplaathouder als plank gebruiken.
Schroef vervolgens de basis op de bordbeugel zoals afgebeeld.
Een ander opzicht.
Een ander opzicht.
Herhaal deze stap voor alle vier bordhouders.
Een ander opzicht.
Installeer de voorbereide printplaten in de behuizing
Nu kunt u de printplaten in de beugels installeren.
Hiervoor heb je de voorbereide pxlDigit PCB's en de voorbereide beugel nodig.
Plaats de eerste (slave)printplaat bij het nummer uiterst rechts en rijg de leidingen door de openingen in de behuizing zoals afgebeeld.
Een ander opzicht.
Een ander opzicht.
Vervolgens moet u de datalijn die is aangesloten op de LIN-pin op de pxlDigit-printplaat (in dit voorbeeld de roze lijn) door de opening van de volgende print leiden, zoals weergegeven.
Een ander opzicht.
Vervolgens kunt u de printplaat zoals afgebeeld in de behuizing steken.
Herhaal nu de voorgaande stappen voor de volgende pxlDigit PCB.
Een ander opzicht.
Nadat je de draden zoals voorheen door de openingen hebt gehaald, kun je de datadraad van de vorige printplaat aan de LOUT-pin van de huidige printplaat solderen.
Een ander opzicht.
Herhaal dit vervolgens nog een keer totdat u alle slave-printplaten en de master-printplaat op hun plaats heeft.
Bij de masterprint is natuurlijk alleen de LOUT-pin verbonden met de datalijn van de vorige print.
Een ander opzicht.
Voordat u de master-printplaat in de houder steekt, moet u nu de wifi-antenne aansluiten.
Voer hiervoor de aansluitkabel van de antenne door de opening in de houder.
De UFL-aansluiting van de antenne moet dan...
… worden aangesloten op de UFL-bus op de master-printplaat.
U kunt de antenne dan plaatsen zoals afgebeeld...
... lijm in de basis.
Nu kunt u alle printplaten al in de behuizing steken.
Op dit punt raad ik aan om de installatie te testen. U kunt dus alvast de firmware laden en testen of alle LED's correct worden aangestuurd.
Zodat de printplaten stevig in de houder worden gefixeerd...
... je kunt ze indien nodig repareren met een druppel hete lijm.
De huidige structuur zou er nu ongeveer zo uit moeten zien.
Op dit punt kunt u de voedingslijnen combineren zoals weergegeven.
Rijg vervolgens alle draden naar de zijkant van de master-PCB.
Om deze lijnen vervolgens op de USB-breakout aan te sluiten, moet u eerst de contacten aansluiten
- GND
- VBUS
vertinnen met wat soldeer.
Vervolgens kunt u de voedingskabels aansluiten zoals afgebeeld...
… soldeer op het USB breakout-board.
Zorg ervoor dat er geen kortsluiting is met de naburige contacten.
Je kunt dan het USB Breakout Board…
... met wat hete lijm ...
.. lijm in de basis zoals afgebeeld.
Een ander opzicht.
Een ander opzicht.
Een ander opzicht.
Op dit punt moet u ook een kleine functietest doen. De pxlDigit_clock zou nu via de USB-poort van het breakout-board van stroom moeten kunnen worden voorzien.
Plaats de diffusor
Het licht van de LED's in de afzonderlijke segmenten werkt pas echt goed als het gelijkmatig wordt verdeeld. Dit kan heel goed worden bereikt door een diffusor in de behuizing te plaatsen.
Hiervoor heb je de voorbereide pxlDigit_clock en 28 3D-geprinte diffusoronderdelen nodig.
Het inbrengen gaat heel gemakkelijk als je de onderkant van de behuizing zoals afgebeeld over de rand van een tafel laat uitsteken.
Vervolgens kunt u de diffusor plaatsen zoals afgebeeld. Als deze te los in de koffer zitten, kun je ze ook met een klein druppeltje lijm op de koffer lijmen.
Zodra je alle diffusers hebt gebruikt, zou je structuur er zo uit moeten zien.
Een ander opzicht.
Een ander opzicht.
In werking zou er dan dankzij de diffusor een gelijkmatige lichtverdeling moeten zijn.
programma-firmware
Ik werk momenteel nog aan een eenvoudige Arduino-bibliotheek om de pxlDigits aan te sturen. Totdat dit klaar is kun je dat ook doen pxlBlck-firmware gebruik. Deze ondersteunt al de LED-matrixvorm van de pxlDigit en biedt bovendien handige functies voor automatisering en besturing via WiFi of de seriële interface. Algemene informatie over de pxlBlck-plug-in vindt u ook hier:
Informatie over het installeren van de pxlBlck-plug-in vindt u hier:
Configureer de pxlBlck-plug-in
Na het installeren van de firmware moet je de plug-in nog correct configureren. Informatie hierover vind je ook in het artikel pxlBlck - Installeer en configureer de pxlBlck-plug-in.
Als extra oriëntatie kunt u ook de instellingen uit het hier getoonde screenshot overnemen.
pxlBlck Gebruiksvoorbeelden
Onder de tag “pxlBlckUsecase” staan artikelen waarin u voorbeelden van gebruik kunt vinden. Er wordt ook uitgelegd hoe u uw pxlBlck dienovereenkomstig kunt configureren.
Animaties, iconen en commando's
Meer informatie over de weergave van animaties, iconen en de mogelijke commando's waarmee je je pxlBlck kunt configureren, vind je in de volgende artikelen.
- pxlBlck - Animaties configureren en weergeven
- pxlBlck - Ontwerp pictogrammen, breng ze over naar de pxlBlck en geef ze weer
- pxlBlck - Opdrachten voor het configureren van de pxlBlck
Veel plezier met het project
Ik hoop dat alles werkte zoals beschreven. Zo niet, of als je vragen of suggesties hebt, laat het me weten in de commentaren. Ik zal dit dan zo nodig aan het artikel toevoegen.
Ideeën voor nieuwe projecten zijn altijd welkom. 🙂
PS Veel van deze projecten - vooral de hardwareprojecten - kosten veel tijd en geld. Natuurlijk doe ik dit omdat ik het leuk vind, maar als je het cool vindt dat ik de informatie met je deel, dan zou ik blij zijn met een kleine donatie aan het koffiefonds. 🙂