James Webb fotolijst
Doe je ruimtepak maar aan, dit wordt een lange reis!
Op eerste Kerstdag 2021 werd de James Webb ruimtetelescoop gelanceerd. Net als heel veel mensen vond ik het heel spannend en keek ik uit naar de prachtige beelden die er inmiddels zijn. Ik maak in het kader van home automation wel vaker dingen zelf, en daarom dacht ik dat het mooi zou zijn om een digitale fotolijst te maken waarop ik de nieuwste foto’s van de telescoop kan bekijken. En toen vond ik online zeshoekige spiegeltegels.
Ik had een lumineus idee.
Dus ik bestelde een set tegels, maar ze waren bijna allemaal kapot. Maargoed, ik laat me niet kisten, dus ik bestelde nog een set.
De spiegeltegels
Onderaan deze post vind je de benodigdheden voor het geval je dit project zelf wilt maken.
Ontwerp
Omdat Aliexpress er even over doet om spullen te leveren, had ik ruim de tijd om na te denken over het ontwerp. Ik heb lang naar het plafond gestaard en nagedacht over hoe het eruit moest zien. Ik wilde de telescoop namaken met een op maat gezaagde houten plaat, zwarte verf en de spiegeltjes. In het midden wilde ik een scherm plaatsen waarop de nieuwste James Webb-foto’s te zien zijn. Ik heb een ontwerp getekend:
Het ontwerp en de afmetingen voor de plaat en tegels
In het midden van het ontwerp zit geen tegel, maar het scherm (waar je op de echte telescoop een zwarte kolom ziet). Daarom tekende ik één tegel op ware grootte, zodat ik kon meten hoe een scherm erin past:
Het ontwerp en afmetingen voor het scherm
Voor het scherm had ik twee opties in gedachten: een scherm van 5 inch (de rode rechthoek binnen de zeshoek), maar dat is erg klein en een beetje zielig, of een scherm van 7 inch (de schuine groene rechthoek). Ik heb voor het scherm van 7 inch gekozen, maar dat levert een ander probleem op omdat dit niet binnen één tegel past. Daarom zouden de spiegels voor een deel niet zichtbaar zijn. Dat moest ik oplossen, want ik had twee vereisten voor het ontwerp:
- Het scherm moet minimaal 7 inch zijn, want op een kleiner scherm zijn de foto’s te klein om ze goed te kunnen zien.
- Alle spiegels rond het midden moeten heel blijven en zichtbaar zijn.
Voor mij was de oplossing duidelijk: ik moest een kolom maken die ik op de plaat kan bevestigen (net als op de echte telescoop) en ruimte heeft om de kabels weg te werken. Vervolgens zou ik het scherm aan de voorkant van de kolom knnen bevestigen.
Ik probeerde dit ontwerp uit te leggen aan anderen, en helemaal niemand begreep hoe ik het voor me zag. Maar als je doorleest, zie je aan de foto’s wel wat ik bedoel.
Hardware en software
Je kunt natuurlijk direct gaan doe-het-zelven, maar het is belangrijk dat je eerst de hardware en software test voordat je alles in elkaar zet. Het project is groot en lastig te verplaatsen, en je wilt niet je spieren verrekken omdat je in een rare houding naar de muur moet kijken terwijl je aan het testen bent.
Raspberry Pi en scherm
Ik heb een Raspberry Pi 3b gebruikt die ik nog had liggen. Eerst wilde ik een Pi Zero 2 W gebruiken omdat die minder ruimte inneemt, maar de 3b paste ook prima achter de plaat.
Het scherm is een 7 inch Raspberry Pi touchscreen met een losse behuizing die ik op Aliexpress heb besteld (de links vind je onder Benodigdheden). De behuizing paste niet perfect dus ik moest de gaatjes iets verder uitboren, maar dit was geen probleem omdat de gaten alleen aan de achterkant zichtbaar zijn, en dat zie je niet. Het kan handiger zijn om een scherm te kopen waar al een behuizing omheen zit, maar in dat geval kan het lastiger zijn om het scherm aan de kolom te bevestigen. Maar ik heb het al doende uitgevonden, dus dat kan met een ander scherm vast ook!
Raspberry Pi OS en fbi
Ik heb Raspberry Pi OS geïnstalleerd. Het installatieproces daarvoor is heel simpel en kun je vinden op de website van Raspberry Pi. Download de imager, kies het besturingssysteem dat je wilt installeren en schrijf het naar de microSD-kaart. Een grafische installatie is een optie, maar je hebt het niet nodig. Ik heb de grafische omgeving uiteindelijk uitgezet.
Het is handig als je je Raspberry Pi kunt bereiken via ssh. Dit kun je instellen in de configuratie voordat je de image maakt met de Raspberry Pi Imager. Kies het besturingssysteem, klik op het tandwieltje rechtsonder en kies een hostnaam. Vink vervolgens Enable SSH aan en kies of je een wachtwoord of sleutel wilt gebruiken. Vink ook Set username and password aan en vul deze velden in. Tot slot vink je Configure wireless LAN en vul je het SSID en wachtwoord in. Dit alles scheelt je later een boel werk.
Na de installatie kun je inloggen via ssh:
$ ssh username@hostname.local
Voor de diavoorstelling heb ik fbi geïnstalleerd met deze handleiding (in het Engels). Hieronder vind je enkele instructies voor het geval deze link ooit verdwijnt. Ook vind je meer info op de man page van fbi.
Maak eerst een mapje aan en doe er foto’s in. Installeer vervolgens fbi met de volgende opdrachten:
$ sudo apt-get update
$ sudo apt-get -y install fbi
Start een diavoorstelling met fbi (waarbij je het pad verandert naar je fotomapje):
$ sudo fbi -T 1 -noverbose -a -t 300 /pad/naar/fotomap/*
De andere opties zijn ook belangrijk en het is handig om ze door te lezen, maar de belangrijkste optie hier is -t
. Dit is de interval tussen de foto’s. Ik heb de interval op 300 seconden (5 minuten) ingesteld, maar je kunt dit ook langer of korter maken.
En dit is het resultaat!
De diavoorstelling in actie!
Automatiseren
Het zou natuurlijk prachtig zijn als fbi direct begint na het opstarten. Ik heb hiervoor een klein scriptje gemaakt. Dit doe je als volgt:
$ cd /usr/local/bin/
$ nano jwst-script.sh
In het script zet je de volgende regels neer (waarbij je het pad verandert naar je fotomapje):
#!/bin/sh
while true
do
fbi -d /dev/fb0 -T 1 -noverbose -a -t 300 --once /pad/naar/fotomap/*
done
Sla je wijzigingen op met Ctrl+O en verlaat nano met Ctrl+X. Maak je script uitvoerbaar:
$ sudo chmod +x jwst-script.sh
Open nu /etc/rc.local:
$ nano /etc/rc.local
En voeg je script toe door de volgende regels onderaan het bestand toe te voegen:
# JWST slideshow script
/usr/local/bin/jwst-script.sh &
Het is een klein scriptje, maar ik heb ’m toch op GitHub gezet: script op GitHub
Ik wilde eerst eigenlijk nog iets anders automatiseren, door automatisch foto’s uit een feed te halen en ze in een map te zetten. Dat heb ik uiteindelijk niet gedaan omdat ik handmatig wil selecteren welke foto’s te zien zijn, en ook omdat sommige foto’s afwijkende afmetingen hebben die niet mooi op een klein scherm passen. Maar de mogelijkheden hiervoor zijn natuurlijk eindeloos!
Nu gaan we klussen.
Houten plaat
Mijn vader is timmerman, dus ik vroeg hem of hij misschien nog een houten plaat had liggen die groot genoeg was voor het project, en dat had ie! Op de plaat heb ik de omtrek van de spiegels uitgetekend en vervolgens heb ik er een rand van 3 cm omheen getekend. Een grotere rand is ook prima, maar ik heb het wat smaller gemaakt omdat ik dacht dat het project anders te groot zou worden.
Mijn vader heeft het meeste zaagwerk gedaan, want dat is niet mijn sterkste punt. Ik had het waarschijnlijk verkeerd gedaan. Hij heeft ook een groot gat in het midden gezaagd om de kabels weg te werken.
Mijn vader was aan het zagen en mijn broer Frank hielp mee. Toppers zijn ze! ❤️
Mijn broer en ik hebben de plaat geschuurd, vooral op de randen om ze af te ronden. Eenmaal thuis heb ik gaatjes en onregelmatigheden weggewerkt met houtvuller, waarna ik de plaat zwart heb geschilderd met drie lagen verf voor de zekerheid.
De plaat zwart schilderen
Kolom en scherm
Het lastigste doe-het-zelfklusje was misschien wel de kolom. I heb in Tinkercad een eenvoudige kolom gemaakt en een 3D-afdruk besteld. Dit was een grote gok en het had best fout kunnen gaan. Achteraf had ik de zijden van de kolom dikker kunnen maken, maar er zijn geen zichtbare problemen mee en de kolom is heel stevig.
Ontwerpen in Tinkercad
Ik ben alleen vergeten een gat te maken aan één kant van de kolom voor de HDMI- en stroomkabels. Toen ik dit zag, heb ik zelf een gat gemaakt met een handzaagje. Het had er mooier uit kunnen zien, maar vanaf de voorkant zie je het nauwelijks. Maar als je mijn bestanden gebruikt, maak daar dan wel een gat in! Je kunt de bestanden hier downloaden: .obj-bestanden op GitHub.
Je kunt de bestanden ook direct op Tinkercad vinden en bewerken: Tinker-bestand voor JWST-kolom en Tinker-bestand voor steun JWST-kolom.
Ik heb het kubusvormige midden en de twee vierkante steunen apart laten uitprinten en ze vervolgens aan elkaar geschroefd op het midden van elke kant van de kolom. Hiervoor heb ik in totaal 7 kleine schroeven gebruikt (op één plek kun je de steun niet vastschroeven vanwege het gat voor de kabels).
Mijn scherm heb ik gekocht met een aparte behuizing, die is voorzien van een verwijderbare achterplaat (zie Benodigdheden). Ik heb een paar extra gaten in de achterplaat geboord en de plaat met 4 schroeven op de hoeken van de kolom bevestigd. Vervolgens kon ik het scherm en de rest van de behuizing met de meegeleverde schroeven op de achterplaat bevestigen.
De kolom met de achterplaat van de schermbehuizing erop
Achterkant en spiegels
De plaat en de kolom met scherm had ik, maar aan de achterkant van de plaat was nog veel te doen. Eerst heb ik twee houten balkjes bevestigd: eentje om het project aan de muur te hangen en eentje voor de balans. Op het bovenste balkje heb ik 2 rekogen bevestigd met 2 schroeven elk, zodat ze goed vastzitten en veel gewicht kunnen dragen. Ook heb ik op dit punt de Raspberry Pi op de plaat geschroefd, met de poorten naar beneden zodat de kabels eenvoudig aan te sluiten en weg te werken zijn.
Rekogen en weggewerkte kabels op de achterkant
Nu moest de kolom met scherm op het midden van de plaat worden bevestigd. Eerst heb ik 4 gaten in de plaat geboord, en ik heb alles zorgvuldig uitgemeten zodat de schroeven in de vier hoeken van de kolom draaien en de kolom precies in het midden zat. Daarna heb ik de kolom met langere schroeven goed vastgezet aan de plaat.
De kabels worden verborgen door connectors met een hoek van 90 graden, en de kabels gaan door het gat in de kolom en komen aan de achterkant uit het gat in het midden van de plaat. Met een stukje kabelgoot dat ik nog had liggen (en duct tape waar nodig) heb ik de kabels naar de Raspberry Pi geleid en daarna naar de onderkant van de plaat. Ik was hier vergeten ruimte te maken voor de kabels in het onderste houten balkje. Dat heb ik met een hamer en beitel opgelost door wat hout weg te beitelen (wel heel voorzichtig want het scherm zat er al aan vast). Andere oplossingen zijn natuurlijk beter, zoals twee kleinere balkjes.
De laatste loodjes
Het laatste doe-het-zelfklusje was het bevestigen van de spiegels, waarvoor ik de meegeleverde ronde stukjes dubbelzijdig tape heb gebruikt. Eigenlijk heb ik ze iets eerder in het proces toegevoegd omdat ik ongeduldig was, maar je moet ze pas op het laatste moment toevoegen omdat ze snel bekrast kunnen raken of kapot kunnen gaan. Ik had mazzel, maar het had natuurlijk anders kunnen lopen. De afmetingen van de spiegels waren niet overal perfect dus het was een behoorlijke puzzel, maar het is evengoed prachtig!
De spiegelpuzzel 🧩
En dan nu eindelijk het eindresultaat. I ben er megablij mee!
Het eindresultaat, met mijn vader en mij in de spiegels!
Enorm veel dank aan mijn vader, mijn broer en een aantal nerds op irc. Het project is niet naar de maan, maar helemaal naar L2 ❤️
Benodigdheden
Doe-het-zelf
- 18 zeshoekige spiegeltegels. Je vindt ze op Aliexpress: spiegeltegels. Bestel extra tegels, ze gaan snel stuk!
- Een grote houten plaat.
- Houtvuller voor gaatjes/onregelmatigheden in het hout.
- Zwarte verf en schilderspullen.
- Een lang houten balkje (of twee korte).
- Een 3D-geprinte kolom.
- Een stuk smalle kabelgoot.
Computerhardware
- Een 7 inch (of groter, maar niet te groot) TFT-scherm met behuizing. Je vindt ze op Aliexpress: TFT-scherm en behuizing.
- Een HDMI-kabel en adapter voor het scherm.
- Een Raspberry Pi met een RPi-adapter. Je kunt een adapter van een ander merk gebruiken, maar die gaan vaak niet goed om met het voltage dat de Raspberry Pi vereist. Zoals eerder vermeld heb ik zelf een 3b in plaats van een Zero 2 W gebruikt, maar als je een Raspberry Pi Zero hebt werkt die ook prima, omdat fbi geen zwaar programma is.
- Een microSD-kaart. Ik heb een kaartje van 64 GB gebruikt, maar kleiner is helemaal prima.
Software
- Raspberry Pi OS.
- fbi, een programma voor Linux waarmee je diavoorstellingen kunt laten zien.
- Tinkercad-bestanden en een opstartscript dat je kunt vinden in mijn GitHub-repository.