• No results found

Bij elk deel kan valt te variëren in aanpak. We bespreken welke mogelijkheden er zijn en welke aanpak wij voor onze LED-cube hebben gebruikt.

N/A
N/A
Protected

Academic year: 2022

Share "Bij elk deel kan valt te variëren in aanpak. We bespreken welke mogelijkheden er zijn en welke aanpak wij voor onze LED-cube hebben gebruikt."

Copied!
31
0
0

Bezig met laden.... (Bekijk nu de volledige tekst)

Hele tekst

(1)
(2)

- 2 -

1. Voorwoord

Ten eerste willen we iedereen bedanken die ons heeft geholpen met het bouwen en het

programmeren van onze LED-cube. Met name willen we Patrick Poots bedanken voor de uitstekende begeleiding bij ons profielwerkstuk, G. Molengraaf voor het adviseren over het bouwen van de LED- cube, meneer Hunnink voor het begeleiden bij het uitzoeken van de onderdelen en het ontwerp van de printplaat en M.J. Verhoef met het helpen bij het bouwen van de houten doos. We willen ook graag Rolf Verweij bedanken voor het gebruik mogen maken van zijn soldeerapparatuur en

werkplek. We hebben gekeken naar verscheidene YouTube films en internetblogs, die we voor uitleg en inspiratie voor ons project hebben gebruikt. Deze creators zouden we graag willen bedanken:

electronic demon, Harry LE, GreatScott!, EEVblog en instructables gebruiker chr.

(3)

- 3 -

Inhoudsopgave

1. Voorwoord ... - 2 -

2. Inleiding ... - 4 -

3. Leeswijzer ... - 4 -

4. Onderzoeksvraag ... - 4 -

5. Hypothese ... - 5 -

6. Deelvragen: ... - 5 -

Hoe werkt een LED-cube? ... - 5 -

LED-lampjes ... - 5 -

Het geraamte ... - 6 -

Het medium voor de elektronen ... - 6 -

De computer ... - 7 -

De voeding ... - 8 -

Wat is de optimale grootte voor een LED-cube? ... - 9 -

Wat zijn de algemene voor- en nadelen van een LED-cube? ... - 10 -

7. Plan van aanpak ... - 11 -

8. Het onderzoeksproces ... - 12 -

9. Het bouwproces ... - 17 -

Het maken van de bandkabels ... - 17 -

Het bouwen van het geraamte ... - 18 -

Het maken van de printplaat ... - 21 -

Het maken van de houten doos ... - 23 -

Het in elkaar zetten van de voeding ... - 24 -

10. Het programmeerproces ... - 25 -

11. Resultaten ... - 26 -

12. Foutendiscussie ... - 26 -

13. Reflectie op proces ... - 29 -

14. Literatuur & annotatie ... - 30 -

Internetpagina’s ... - 30 -

Oorsprong foto’s ... - 31 -

15. Bijlage ... - 31 -

(4)

- 4 -

2. Inleiding

Beeldschermen zijn een essentieel onderdeel geworden in onze samenleving. Iedereen heeft wel een smartphone met een beeldscherm in zijn broekzak zitten, of een televisiescherm in zijn woonkamer of een computerscherm op zijn bureau. Innovatie vind in deze markt voortdurend plaats. Elk jaar worden er weer nieuwe manieren bedacht hoe we beeldschermen scherper of duurzamer kunnen maken. Een van de ontwikkeling van de afgelopen jaren is OLED. OLED-schermen zijn zuiniger, dunner, hebben een betere kijkhoek en hebben een beter contrast vergeleken met LCD-schermen. Er zijn smartphones op de markt gebracht waarbij het beeldscherm te buigen valt.

Een mogelijke volgende ontwikkeling is het driedimensionale beeldscherm de norm maken. De meeste concepten hiervan zijn tot nu toe gebaseerd op een optische illusie. Ze sturen om de beurt een beeld naar het linker- of rechteroog. De hersenen halen uit het verschil tussen deze twee beelden de diepte. Ze gebruiken dan eigenlijk een tweedimensionaal beeldscherm, maar door deze illusies lijkt het alsof het beeld driedimensionaal is. Maar als de positie van het hoofd verandert, dan kan een beeld in het verkeerde oog gaan. Dat maakt het verwarrend voor de ogen. Daarom is het gebruiken van deze techniek niet ideaal. Een andere manier is om ook echt met de LED-lampjes in de diepte te gaan. Deze manier is niet gebaseerd op de optische illusie, dus de ogen zullen hierdoor geen verwarrend beeld krijgen. Jammer genoeg heeft nog geen enkel bedrijf het initiatief genomen om dit concept te ontwikkelen. Het is echter wel een populair concept onder elektronica hobbyisten.

Zij maken dan een LED-cube. Een LED-cube is kortgezegd een rooster met LED-lampjes, die allemaal individueel aan- en uitgezet kunnen worden. Elektronica hobbyisten beschikken alleen niet tot de apparatuur, waar grote fabrikanten wel toegang tot hebben. Dit wordt wel als een ingewikkeld project gezien. Wij vragen ons af of het mogelijk is voor twee middelbare scholieren, zoals wijzelf, om een LED-cube te bouwen en de LED-cube zelf te programmeren.

3. Leeswijzer

In dit profielwerkstuk stellen wij eerst onze onderzoeksvraag en daarna bespreken wij wat onze verwachting is. Vervolgens beantwoorden wij onze deelvragen van ons onderzoek. Daarna bespreken wij wat ons plan van aanpak was en hoe het proces uiteindelijk verlopen is. Vervolgens bespreken wij onze gevonden resultaten en reflecteren wij op onze fouten en op het proces. Aan het eind van ons verslag staan onze bronnen en een verwijzing naar onze github met een video van onze LED-cube in werking en onze code voor de arduino.

4. Onderzoeksvraag

Is het mogelijk voor mensen zonder eerdere kennis over elektronica, om een LED-cube te bouwen en daarop drie dimensionale animaties laten afspelen, waarop een bewegend of stilstaand object te zien is?

(5)

- 5 -

5. Hypothese

Theoretisch gezien is het mogelijk om drie dimensionale animaties af te beelden met een LED-cube.

Voorwaarden zijn dat een LED-cube groot genoeg moet zijn, dat er genoeg LED-lampjes in zijn waarbij een redelijke animatie vertoond kan worden en als het lukt om een programma te schrijven die 3D animaties kan afspelen op de LED-cube. Onze verwachting is dat met onze basiskennis van programmeren en elektronica het ons zal lukken om een 8*8*8 LED-cube te bouwen van 512 LED- lampjes. Wij verwachten wel tegen een aantal problemen te komen, maar onze verwachtingen zijn wel dat het in onze capaciteit valt om al deze problemen op te lossen. Volgens ons begrip, bestaat een LED-cube uit een aaneenschakeling van vele onderdelen en dat de werking van elk onderdeel niet gecompliceerd is. Onze verwachting is dus dat als er een probleem ontstaat bij een onderdeel, wij gemakkelijk het probleem kunnen identificeren en oplossen. Echter, wij houden rekening dat er wel een mogelijkheid bestaat dat wij een fout begaan, die zo groot is dat het ons niet meer lukt om die te verhelpen. Wij nemen aan dat het met onze programmeervaardigheden ons zal lukken om een aantal animaties op een LED-cube te kunnen programmeren.

6. Deelvragen:

Hoe werkt een LED-cube?

Er zijn verscheidene manieren waarop een LED-cube zou kunnen werken. Er zijn echter vijf essentiële delen voor elke LED-cube:

1. LED-lampjes

2. Een geraamte die de LED-lampjes op hun positie houdt.

3. Een medium waarover elektronen vanaf en naar de LED-lampjes kan geleiden.

4. Een computer die het programma uitvoert.

5. Een bron die de stroom levert.

Bij elk deel kan valt te variëren in aanpak. We bespreken welke mogelijkheden er zijn en welke aanpak wij voor onze LED-cube hebben gebruikt.

LED-lampjes

Bij de LED-lampjes kun je kiezen om één-kleurige of RGB LED-lampjes te gebruiken. Het voordeel van RGB LED-lampjes is dat afbeeldingen in verschillende kleuren laten zien kunnen worden, maar het programmeren ervan is wel lastiger, want overal waar een LED-lampje in het programma aan wordt gezet, moet ook gekozen worden welke kleur die krijgt. RGB LED-lampjes maken ook de constructie van de LED-cube complexer, omdat er twee extra draden nodig zijn die naar het LED-lampje gaan om het signaal van welke kleur ze moeten worden door te geven. Dit betekent ook dat het programma zwaarder wordt voor de computer om uit te voeren. Bij kleine programma’s zal dit geen probleem worden, maar bij een groter programma zou een minder krachtige computer, problemen kunnen krijgen om het op tijd uit te voeren en zal de LED-cube niet het gewenste effect geven. Dit is afhankelijk van het type computer dat gekozen is. Een krachtige computer zou dit mogelijk wel kunnen uitvoeren.

(6)

- 6 -

Het geraamte

Het geraamte is het skelet van de LED-cube. Een deel van de LED-lampjes krijgt een positie in de lucht. Hiervoor is een geraamte nodig die ze op die positie houdt en die stevigheid geeft aan de gehele LED-constructie. Met het geraamte is er de mogelijkheid om het simpel te houden of om het juist erg ingewikkeld te maken. De simpelste manier is een rooster van ijzerdraad waar de LED- lampjes op rusten. De aanwezigheid van het ijzerdraad zal echter wel een klein deel van het licht van de LED-lampjes absorberen en zo de beelden wat minder goed zichtbaar maken. Een andere manier is door een plafond te bouwen, waaraan LED-strips naar beneden kunnen hangen. Deze LED-strips zouden ook aan een ondergrond bevestigd kunnen worden, zodat de LED-strips minder zullen slingeren. Een nadeel hiervan is dat bij het bovenaanzicht van de LED-cube de LED-lampjes niet zichtbaar zijn, omdat een plaat het zicht blokkeert. De LED-lampjes kunnen ook geïntegreerd worden in een printplaat en dat de printplaten vervolgens boven elkaar gestapeld worden. Op deze manier kunnen alleen de LED-lampjes bekeken worden via de bovenkant, aangezien onder elke LED-lamp een printplaat zit die al het licht naar de onderkant blokkeert. Aangezien er nu een printplaat aanwezig is bij de LED-lampjes, kunnen daar gemakkelijk chips aan toegevoegd worden als daar de behoefte aan is.

Een geraamte van ijzerdraad Een geraamte van printplaten Een geraamte van LED-strips

Het medium voor de elektronen

De twee pootjes van de LED-lampjes moeten verbonden worden met een plus- en minpool om te branden. De elektronen hebben een medium nodig om zich tussen de voeding en de anodes en kathodes van een LED-lamp te verplaatsen. Aan elke anode en kathode kan een koperdraad

gehangen worden, maar dat is erg inefficiënt en door de vele draden die dan door de LED-cube gaan, zullen de LED-lampjes nauwelijks te zien zijn. Er zijn meerdere manieren waardoor het aantal

verbindingen met de computer vermindert kan worden. Een van deze manieren is het aan elkaar verbinden van de kathodes. Zo kan het aantal verbindingen gehalveerd worden, maar de

verbindingen van de kathodes kunnen zo niet meer gebruikt worden voor het aansturen van één specifiek LED-lampje. Het gevolg hiervan is dat als deze verbinding afgesloten wordt, dat meerdere LED-lampjes uitgaan. De verbinding met de anode wordt daarom bepalend welke lampjes in zo’n groep aangaan en welke uitblijven.

(7)

- 7 -

Een techniek genaamd multiplexing kan gebruikt worden om dit op te lossen. Bij deze techniek wordt elke laag LED-lampjes om de beurt door de kathode van de die laag open te zetten. Als de lagen snel genoeg achter elkaar gewisseld worden, dan kunnen de ogen het niet bijhouden en lijkt het voor de ogen alsof alle lagen tegelijk aan staan. Met multiplexen zullen LED-lampjes nog steeds individueel bestuurd kunnen worden als de anodes van elke kolom aan elkaar verbonden wordt, want zeven van de acht LED-lampjes staan sowieso uit, omdat de kathodes van die lagen uitstaan. Zo zijn er nog minder verbindingen met de computer nodig. Nu zijn er nog maar 64 verbindingen nodig om de kathodekolommen aan te sturen en 8 verbindingen om de lagen aan te sturen.

Het medium kan ook verwerkt zitten in het geraamte. Als het geraamte uit printplaten bestaat, is het gemakkelijk de anodes en kathodes aan de voeding te verbinden. In LED-strips zitten standaard al de verbindingen. Het nadeel daarvan is dat bij het gebruiken van LED-strips er een limiet is aan het aantal ontwerpen dat verkoopbaar is. Als bijvoorbeeld geprefereerd wordt dat een verbinding eindigt op een ander punt, dan zal dat moeilijk aan te passen zijn. Voor ons was de beste keuze een geraamte van vertind koperdraad die zowel dient om de LED-lampjes in de lucht te houden als de verbinding tussen de anodes en kathodes en de voeding. We verbonden de kathodes van elke kolom met elkaar. Zo verminderen we het aantal verbindingen aanzienlijk en zo kunnen we nog steeds via de kathodeverbinding bepalen welke kolom aangaat en welke uit.

De computer

Om de LED-cube aan te sturen is er een computer nodig die een programma uitvoert. Er zijn

meerdere mogelijkheden hiervoor zoals: arduino, raspberry-pi of pc. Op het internet viel het ons op dat een arduino veel gebruikt werd om een LED-cube aan te sturen. Een arduino is een

microcontroller die met C of C++ programma’s uit kan voeren. Een groot voordeel van het gebruiken van een arduino is dat voor de arduino er een library bestaat, die gedownload kan worden om het programmeren van de LED-cube gemakkelijker te maken (SPI). Andere voordelen van een arduino zijn dat hij niet te duur is en dat hij beginnersvriendelijk is. Een raspberry-pi is een klein computertje en kan gebruikt worden om een LED-cube aan te sturen. De raspberry-pi wordt meestal gebruikt bij LED-cubes om erg complexe programma’s of grote LED-cubes aan te sturen, die een arduino niet kan uitvoeren. Wat wel nadelig is bij een rasperry-pi, is dat de programmeertaal waarop hij werkt python is. Voor python is er geen library om te downloaden die helpt met het programmeren. Er zal gebruik gemaakt moeten worden van de extra GPIO pins van de raspberry-pi. Een raspberry-pi is ook duurder om aan te schaffen dan een arduino. Een LED-cube aansturen kan met een pc, maar dat is niet aan te raden. Een pc zoals een desktop of een laptop hebben geen GPIO-pins om een LED-cube aan te sturen. Er zal dan een extensie gekocht moeten worden om die toe te voegen aan de pc, maar dan zou er net zo goed een arduino gekocht kunnen worden. De enige manier waarom dit gedaan zou worden, is als de LED-cube te groot is en een te complex programma heeft voor een raspberry-pi om uit te voeren. Momenteel zal dat geen probleem zijn, maar naar verwachting als LED-cubes in de toekomst meerdere toepassingen krijgen en complexer worden, kan dit onvermijdelijk worden.

Een arduino heeft 20 GPIO-pins en een raspberry pi heeft 40 GPIO-pins. Voor grotere LED-cubes zijn dat te weinig pins. Bijvoorbeeld voor onze 8*8*8 LED-cube hebben wij 72 pins nodig. Een arduino of een raspberry pi hebben daar dus te weinig voor. Op vele manieren kan de hoeveelheid outputs vergroot worden.

(8)

- 8 -

De voeding

De keuze van een voeding hangt volledig af aan de andere delen van de LED-cube. In de LED-cube zijn er twee consumenten van stroom. Dat zijn de LED-lampjes en de computer. Sommige computers zoals de Arduino en de Raspberry Pi hebben de mogelijkheid om zelf wat stroom te leveren. Echter, de stroomsterkte daarbij is laag. Een arduino en een raspberry pi kunnen maximaal 1 ampère aan stroom leveren. Ervan uitgaand dat een LED-lampje 20 milliampère nodig heeft, zouden 50 LED- lampjes van een Arduino of een Raspberry Pi van stroom voorzien kunnen worden. Als het plan is om een 3*3*3 LED-cube te bouwen, dan zouden de LED-lampjes van alleen de computer hun stroom kunnen halen en hoeft alleen de computer van een voeding voorzien te worden. Dit zou de LED-cube versimpelen, want om een LED-lampje uit te zetten hoeft er alleen maar de stroomvoorziening uitgezet te worden. Als het plan is om een grotere LED-cube te bouwen, dan moeten de LED-lampjes van een externe bron stroom krijgen. Om te regelen welk LED-lampje aan- of uitgaat, moet er nu een systeem in elkaar gezet worden om de stroomkring van een LED-lampje te kunnen onderbreken.

Deze externe bron zal een veel hogere stroom moeten kunnen leveren. Er zijn vele AC/DC adapters te koop voor lagere stroomsterktes van enkele ampères. Als een hoge stroomsterkte nodig is, dan is een transformator makkelijker te verkrijgen.

De computer zal ook van stroom voorzien moeten worden. Zowel de raspberry pi als de arduino hebben meerdere mogelijkheden om stroom te accepteren. Zowel de arduino als raspberry pi kan via een USB-poort of via GPIO-pins van stroom voorzien worden. De arduino accepteert ook stroom via een barrel jack. De barrel jack en één set GPIO-pins van een arduino hebben een spanning tussen de zeven en de twaalf volt en tussen de zes en de twaalf volt nodig. Echter, de meeste LED-lampjes werken op een spanning van vijf volt. Als deze poorten gebruikt zouden willen worden, zal er een spanning-omvormer of twee verschillende externe stroombronnen gebruikt moeten worden. De USB-poorten en de andere set GPIO-pins van de arduino en de GPIO-pins van de raspberry pi hebben een spanning van vijf volt nodig. Het wordt alleen sterk afgeraden om deze laatstgenoemde GPIO- pins te gebruiken. De stroom die via deze pins binnenkomt, gaat langs de veiligheidsmechanismen en gaat direct naar de processor. Een kleine piek in spanning kan ernstige schade aan de arduino of raspberry pi brengen. Een arduino of raspberry pi zou van stroom voorziend kunnen worden met een USB-kabel en een powerbank. De LED-lampjes zouden van stroom voorziend kunnen worden met een AC/DC adapter of een transformator. Wij kozen voor deze laatste methode.

(9)

- 9 -

Wat is de optimale grootte voor een LED-cube?

Hoe meer LED-lampjes er zijn, hoe meer details er in de animaties op de LED-cube verwerkt kunnen worden. De mogelijkheid om meer details te laten zien, vergroot ook de mogelijkheden bij het maken van een animatie. Wij zagen dat wij met onze 8*8*8 LED-cube hierin gelimiteerd waren. Met onze LED-cube kunnen wij geen menselijke hoofden animeren, omdat wij niet genoeg details van het gezicht konden weergeven. Een gezicht zou enorm versimpeld en geabstraheerd moeten worden om op onze LED-cube te kunnen afbeelden. Een 16*16*16 LED-cube zou mogelijk wel een menselijk gezicht kunnen afbeelden, maar wij denken dat een 16*16*16 LED-cube ook niet genoeg detail kan laten geven om specifieke gezichtseigenschappen weer te geven.

Een kleinere LED-cube dan een 8*8*8 LED-cube zal maar weinig opties hebben in het maken van een animatie. Geen enkele van onze animaties zou op een 6*6*6 of een 4*4*4 LED-cube kunnen

afspelen. Te veel detail zal verloren gaan.

Hoe groter een LED-cube wordt, hoe ingewikkelder het is om die LED-cube te bouwen. De

hoeveelheid verbindingen met de computer groeit exponentieel met de grootte van de LED-cube. Bij een 64*64*64 LED-cube zijn er (64*64) + 64 = 4160 outputs van een computer nodig. Om deze hoeveelheid outputs bij een computer te creëren, zal een enorme klus zijn. De kans dat er fout in de LED-cube zit, wordt ook groter en het wordt lastiger om de locatie van een fout te vinden.

Hoe groter de LED-cube is, hoe meer geheugen en rekenkracht het de computer kost om de animaties te berekenen. Bij een enorme LED-cube zal een sterke computer nodig zijn om de

animaties snel genoeg af te laten spelen om het effect van multiplexen te behouden. Bij een grotere LED-cube, zijn er ook exponentieel meer onderdelen nodig. Meer onderdelen zullen dan gekocht moeten worden, wat behoorlijk in de prijzen zou kunnen oplopen. Alle LED-lampjes verbruiken ook stroom. Deze zal geleverd moeten worden door een voeding. Bijvoorbeeld bij een 64*64*64 LED- cube en deze LED-cube heeft LED-lampjes die werken op 20mA en 5V, dan is de maximale benodigde stroomsterkte 64 * 64 * 64 * 0,020 = 5200 A en het maximale vermogen 5 * 5200 = 26000 W. Voor deze LED-cube moeten meerdere voedingen gebruikt worden, omdat er geen voedingen te koop zijn die 26000 W leveren. Deze LED-cube kan niet aangesloten worden op een stopcontant. Bij 16 A brandt namelijk de veiligheidsdraad door. Om een 64*64*64 LED-cube te laten werken, zal hiervoor een oplossing gevonden moeten worden.

(10)

- 10 -

Wat zijn mogelijke toepassingen van LED-cubes?

LED-cubes hebben geen praktische toepassingen in de maatschappij op dit moment. Ze worden vooral gebruikt voor eigen plezier. LED-cubes zouden wel mogelijk gebruikt kunnen worden in reclame borden, bouwplannen en om 3D afbeelden en ruimtelijke figuren af te beelden. LED-cubes zouden beter kunnen werken bij deze toepassingen door bij reclame borden een driedimensionale afbeelding op af te beelden die van alle kanten bekeken kan worden. Men zou producten al in het goede formaat kunnen zien zonder een echt product voor zich te hebben. Op deze manier zou er een nog beter beeld van producten aan de consument gegeven kunnen worden. Bij bouwplannen kunnen LED-cubes een interactieve 3D-omgeving scheppen waar in de toekomst met een interface snel kleine aanpassingen gemaakt kunnen worden en je er meteen een beeld bij hebt. Het zou voor de ontwerp industrie een groot voordeel zijn om snel complexe beelden te kunnen maken. De absentie van LED-cubes in onze samenleving duidt erop dat de technologie, wat LED-cubes betreft, nog niet klaar is. Maar, als dit in de toekomst wel het geval is, zouden LED-cubes op de hiervoor genoemde manieren een grote rol kunnen spelen in de samenleving. Ook voor artsen zouden LED- cubes erg kunnen helpen. Ze kunnen een 3D beeld hebben van de opbouw van een mens voordat ze aan een operatie beginnen. Of bij het leren zou men een virtueel beeld van een mens die

geopereerd wordt kunnen tonen en in 3D uitleggen hoe het gedaan moet worden. Om het kort samen te vatten, de mogelijke toepassingen is overal waar momenteel een 2D afbeelding of scherm van is, zou vervangen kunnen worden met een 3D beeldscherm, als de technologie zich verder ontwikkelt.

Wat zijn de algemene voor- en nadelen van een LED-cube?

Het beeld is 3D en kan van alle kanten bekeken worden. Anders dan een 2D scherm zou er om een LED-cube heen gelopen kunnen worden en van alle kanten het beeld bekeken kunnen worden.

LED-cubes werken even goed overdag als ‘s nachts. Ze zijn niet gelimiteerd tot het gebruik in

donkere ruimtes in het geval dat het licht, dat door de LED-lampjes uitgezonden wordt, fel genoeg is.

LED-lampjes zijn efficiënter dan normale lampjes. Toepassingen waarbij afbeeldingen worden afgebeeld, gebruiken met normale lampjes veel energie. Het gebruiken van LED-lampjes zou veel onnodig energieverlies kunnen voorkomen.

Bij grote LED-cubes met een hoge dichtheid aan LED-lampjes ontstaat er een groot probleem. De LED-lampjes genereren warmte en bij grote LED-cubes zal de kern steeds warmer worden. Hiermee zal rekening gehouden moeten worden. Dit probleem zou opgelost kunnen worden door materialen te gebruiken die tegen hoge temperaturen bestand zijn of door een koelsysteem in de LED-cube te integreren. Beide oplossingen zouden echter de LED-cube nog ingewikkelder maken.

LED-cubes zijn gemaakt van een complexe stuk hardware, dit is een reden waardoor LED-cubes nauwelijks toepasbaar zijn. Alles moet heel nauwkeurig met elkaar verbonden worden en hoe groter de LED-cube is, hoe complexer het wordt. Dit heeft te maken met het multiplexing syteem waarmee de LED-cube werkt. Als een erg complexe animatie afgebeeld moet worden, is er een LED-cube nodig die groot genoeg is om die animatie af te beelden en moet er genoeg programmeer kennis paraat zijn om dit te programmeren.

(11)

- 11 -

LED-cubes hebben een lagere resolutie dan 2D-schermen. Dit maakt het beeld best onscherp. Dit komt doordat het complexer is dan een 2D-scherm en je meer LED-lampjes nodig hebt om een even scherp beeld te krijgen. Het dilemma ligt dus bij wat je belangrijker vind, een scherp beeld of dat het beeld 3D is. Bij tv-beeldschermen of een ander beeldscherm waar een film gekeken wordt is het belangrijker dat er een mooi en scherp beeld is. Bij de projectie van een bouwplan is het juist weer handig is dat het 3D is om van alle kanten goed bekeken kan worden, wat hoe scherp het beeld is maakt niet in dit geval niet echt uit.

Als je in het midden van de LED-cube een animatie laat afspelen is die minder goed zichtbaar, omdat er LED-lampjes eromheen staan die het zicht verminderen. Voor animaties om optimaal gezien te worden moet de hele LED-cube of alleen de buitenste randen gebruikt worden. In de toekomst zou dit wel opgelost kunnen worden door in plaats van een LED-cube een 3D projectie te hebben, dan zijn er geen LED-lampjes die uitstaan en het zicht verminderen.

7. Plan van aanpak

Wij denken het bouwen van een LED-cube in drie delen te kunnen onderscheiden: het onderzoeken, het bouwen en het programmeren.

Bij het onderzoeken, willen we erachter komen hoe een LED-cube precies werkt. Ook moeten we bekijken welke onderdelen we nodig hebben voor het project. De onderdelen die we nog niet hebben, zullen we moeten bestellen via het internet. Als voorbereiding zijn we van plan om op internet te bekijken hoe een LED-cube van andere mensen werkt, hoe ze die hebben gemaakt en welke onderdelen daarbij gebruikt zijn. We zijn ook van plan om vragen te stellen aan mogelijke elektronica-kenners in onze omgeving. Wij willen een goede voorbereiding treffen, zodat de kans het grootst is dat wij erin gaan slagen om een LED-cube te maken.

Wij verwachten dat we een aantal maanden nodig zullen hebben om de LED-cube te bouwen.

Daarom willen wij vroeg beginnen, zodat wij zorgvuldig elk onderdeel kunnen maken en wij geen gebrek aan tijd hebben in de laatste weken. Ons doel was om de laatst maand voor de inleverdatum in december over te houden om te besteden aan het programmeren van de LED-cube. In welke volgorde we de onderdelen maken, is afhankelijk van welke onderdelen als eerste binnenkomen.

Gedurende het bouwproces willen we onze gemaakt onderdelen na elke stap testen of het onderdeel werkt zoals gewenst. Hierdoor hopen we vroegtijdig in het proces mogelijke fouten in onze onderdelen te ontdekken en op te lossen. Als de LED-cube namelijk al in elkaar gezet is en er is iets verkeerd met een onderdeel in de LED-cube, dan is onze verwachting dat het veel moeilijker zal zijn om de locatie van die fout te ontdekken. Wij zijn van plan om de LED-cube te maken op school of bij ons thuis. Dat is afhankelijk van de situatie en het onderdeel van de LED-cube dat we op dat moment maken.

We zijn van plan om tussen de drie en de zes animaties te maken. De hoeveelheid animaties is afhankelijk van hoe ingewikkeld uiteindelijk het programmeren is en aan de hoeveelheid tijd die we op dat moment over hebben voor het programmeren van de animaties. We zullen in de LED-cube een interface moeten verwerken om tussen de animaties te kunnen wisselen.

(12)

- 12 -

8. Het onderzoeksproces

Inspiratie voor dit profielwerkstuk kwam uit een filmpje van iemand die een LED-cube had gebouwd.

Hierdoor ontstond de idee om daar onze eigen animaties op af te beelden.

Tijdens dit onderzoek was de grootste vraag met hoeveel LED-lampjes we zouden gaan werken. De meeste LED-cubes zijn gemaakt van 64 of 512 LED-lampjes (4*4*4 of 8*8*8). We hebben gekozen voor een 8*8*8 LED-cube, omdat de hoeveelheid LED-lampjes bij een 4*4*4 te weinig zouden zijn om duidelijke animaties op af te beelden. Hoe kleiner namelijk een LED-cube, hoe onduidelijker de animaties worden, omdat je minder LED-lampjes hebt om mee te werken. De hoeveelheid details die je kan laten zien op je LED-cube wordt ook kleiner. Alles wat kleiner is dan een 4*4*4 LED-cube, heeft weinig zin om te maken, omdat er dan te weinig LED-lampjes zijn.

Vervolgens hadden we gekeken naar alle losse onderdelen die we nodig zouden hebben om de LED- cube te maken en of het bouwproces voor ons mogelijk zou zijn met de apparatuur die op school beschikbaar is.

We begonnen met het bekijken op YouTube naar wat voor soort onderdelen andere mensen gebruikt hadden bij hun versie van een LED-cube en welke reden ze daarvoor hadden. We hebben meerdere onderdelen met elkaar vergeleken en op basis van de prijs en of ze met elkaar zouden werken, onze keuze gemaakt. We hebben een gesprek gehouden met een docent van het Da Vinci College, meneer Molengraaf. Wij hebben contact met hem gekregen via onze begeleider, meneer Poots. Meneer Molengraaf begeleidt vaker met studenten op het Da Vinci College bij het bouwen van een LED-cube. Met meneer Molengraaf hebben we vele vragen kunnen stellen over de werking van een LED-cube. Ook hebben we met meneer Molengraaf onze keuzes van onderdelen besproken en aangepast waar nodig was. Hij heeft ons ook gewezen op een computerprogramma (Eagle) waarmee we onze printplaat virtueel na konden bouwen met de onderdelen die we in gedachten hadden. Vervolgens hebben we gekeken of er op school het juiste soldeerapparatuur beschikbaar was. Op school misten we een precisie soldeerbout, dus we moesten naar andere alternatieven gaan kijken. Uiteindelijk mochten we gebruik maken van het apparatuur van Rolf Verweij. Na het gesprek met meneer Molengraaf hadden we een goed beeld van het bouwproces dat ons te wachten stond.

Dit is de lijst aan onderdelen die we uiteindelijk besloten hadden om te gebruiken:

• 512 blauwe diffuse Lumetheus LED-lampjes

Deze LED-lampjes hebben een maximale lichtsterkte van 5000 mcd. Dit is zeer fel vergeleken met andere LED-lampjes. Deze eigenschap is cruciaal voor onze LED-cube, omdat de LED-lampjes maar 1/8 van de tijd aan zullen staan vanwege het multiplexen. Als de LED-lampjes niet erg fel zijn, dan lijkt het niet alsof ze de hele tijd aan staan. We hebben ook extra LED-lampjes gekocht voor het geval dat een aantal het niet zouden werken of dat er een fout zou ontstaan in het bouwproces.

Deze LED-lampjes zijn ook diffuus. Dat betekent dat het plastic om de LED-lamp heen troebel is.

Hierdoor wordt ghosting vermindert. Ghosting is als een LED-lampje dat uitstaat, licht van een ander LED-lampje die aan staat reflecteert, waardoor het lijkt dat hij ook aanstaat. Omdat het plastic troebel is, reflecteert hij ook minder licht, daardoor wordt ghosting voorkomen.

Deze LED-lampjes hebben een spanningsval van 3,5 volt en een maximale stroomsterkte van 20mA.

(13)

- 13 -

• 1 Mean Well LRS-50-5 netvoeding

Deze voeding geeft een constante spanning van 5 volt en hij kan tot 10 ampère aan stroom leveren.

• 1 PCB-plaat

De PCB-plaat hadden we zelf ontworpen en laten fabriceren op de site JLCPCB. Op de printplaat moesten we alleen nog alle onderdelen op vast solderen. De PCB-plaat maakt van 3 outputs op de arduino, de 64 outputs voor de anodes + de 8 outputs voor ieder laag. Het extern laten fabriceren van een PCB-plaat is erg duur. De prijs gaat exponentieel omhoog met de grootte van de printplaat.

Om kosten te beperken, hebben we de printplaat zo klein mogelijk geprobeerd te maken.

Je hebt grofweg twee varianten aan onderdelen. Een through-hole-component en SMD-component (Surface Mount Device). Een through-hole-component heeft pootjes die door gaatjes in de

printplaat hoort te gaan. Dan worden de pootjes aan de printplaat vast gesoldeerd. Een SMD- component heeft geen pootjes en wordt rechtstreeks op de printplaat vast gesoldeerd. Een SMD- component heeft als voordeel dat hij een stuk kleiner kan zijn. Om de printplaat zo klein mogelijk te houden, hadden we ervoor gekozen om alle componenten in de SMD-variant te gebruiken.

SMD-technologie Through-Hole-technologie

(14)

- 14 -

• 9 74HC595D IC

De negen 74HC595D-chips staan centraal in het veranderen van de drie outputs van de arduino in de 72 benodigde outputs. Een 74HC595D-chip heeft 8 belangrijke outputs en drie belangrijke inputs:

een SHCP-pin (Shift Register Clock Input), een STCP-pin (Storage Register Clock Input) en een DS-pin (Data Input). De SHCP-pin en de STCP-pin worden bij deze chip gezien als geactiveerd als hij van laag naar hoog gaat. De pin is laag als er geen stroom doorheen gaat en de pin is hoog als er wel stroom doorheen gaat. Eén 74HC595D-chip heeft een geheugen van 8 bits. Als de SHCP-pin van laag naar hoog gaat, wordt elke bit in het geheugen één plek verdergezet. De eerste plek in het geheugen komt zo vrij en krijgt direct de waarde die op dat moment door de DS-pin wordt doorgegeven. Als de DS-pin hoog staat, dan krijgt die plek de waarde 1. Als de DS-pin laag staat krijgt die plek de waarde 0. Er is een Q7’-pin die altijd de waarde van de laatste plek in het geheugen uitzendt. Als je deze aan de DS-pin van een andere 74HC595D-chip koppelt, zoals wij ook in ons project doen, dan neemt deze andere chip altijd de laatste bit van de vorige chip over. Op deze manier kunnen wij onze negen 74HC595D-chips laten samenwerken als één grote chip met een geheugen van 72 bits. De 74HC595- chip heeft ook nog acht outputs die naar de LED-lampjes gaan. Als de STCP-pin van laag naar hoog gaat, dan nemen de outputs de stand aan van het geheugen, hoe het geheugen op dat moment is.

Bijvoorbeeld als het geheugen vol met bits van 1 staat, dan worden bij het activeren van de STCP-pin alle 8 outputs hoog. Als daarna het geheugen veranderd wordt en de STCP-pin is laag, dan

veranderen de standen van de outputs niet. Dat gebeurt pas weer als de STCP-pin omhoog wordt gehaald. Zo maak je van 3 inputs 72 outputs.

Via de DS-pin komt het signaal De SHCP-pin staat hoog en De STCP-pin staat hoog en voor een 0 binnen het geheugen schuift een plek op. de outputs worden aangepast.

• 64 SMD-chipweerstand 220 Ohm:

De LED-lampjes hebben een aanbevolen stroomsterkte van 20mA en een spanningsval van 3,5V en onze voeding geeft een stroom met een spanning van 5V. Daarmee hebben we d ohm-waarde van de weerstanden mee berekent. Wij gebruiken daarvoor deze formule: R = (U - ULED) / ILED . Als wij hier onze waardes invoeren, komen we uit op (5 – 3,5) / 0,020 = 75 Ω. Echter, om de duur van de LED- lampjes te verlengen, willen we een lagere stroomsterkte en dus een hogere weerstand. Wij kozen voor 220 ohm. Bij 220 ohm is een LED-lamp nog steeds erg fel. De stroomsterkte die daarbij hoort is:

(5 – 3,5) / 220 = 0.0068 ≈ 0.007 A.

(15)

- 15 -

• 16 MMBT 2222A-7-F Transistors.

Deze transistors zijn voor het regelen welke laag aan staat door de kathode kant van de LED-lampjes van een laag te openen of te sluiten. Door elke laag gaat maximaal 64 * 0,007 = 0,448 A. Dus dat zal ook door de transistors gaan. Eén transistor zou maximaal 600mA aankunnen. Het wordt

aangeraden om daar wel een stuk onder te zitten. Daarom verdelen we de stroomsterkte over twee transistors in parallelschakeling die altijd tegelijk uit- of aanstaan.

• 10 61000811921 vrouwelijke pin headers en 9 M20-9990846 mannelijke pin headers De mannelijke- en vrouwelijke pin headers gebruiken we om de bandkabels aan de printplaten te kunnen verbinden. De mannelijke pin headers worden aan de bandkabels vast gesoldeerd en de vrouwelijke pin headers aan de printplaat. We gebruiken één vrouwelijke pin header meer dan de mannelijke pin headers. Dat komt, omdat we deze vrouwelijke pin header gebruiken om de 3 verschillende signalen te ontvangen van de arduino en deze worden overgebracht door jumperkabels in plaats van een bandkabel en een mannelijke pin header.

• 1 Printklemblok MKDS 3/2

Het printklemblok is waar de plus- en minpool van de voeding aangesloten worden. Het printklemblok is het enige through-hole component. Met een through-hole component is er namelijk een betere verbinding met de printplaat. Dit is cruciaal bij dit component, omdat deze verbindingen een grote hoeveelheid stroom zal moeten geleiden.

• 30m vertind koperdraad 0,8 mm diameter

We hebben ervoor gekozen om vertind koperdraad te gebruiken bij het bouwen van de LED-cube, omdat door het vertinde laagje die om de draad heen zit de LED-lampjes gemakkelijker vast te solderen zijn dan vergeleken met normaal koperdraad. Het is nog steeds even sterk en geleidend als normaal koperdraad.

• 4m lintkabel 16-polig 1,27 mm diameter

• 1 arduino uno

• 1 groen LED-lampje

• 1 rood LED-lampje

• 1 knop

• Een snoer met stekker

• Een USB-kabel

• Geïsoleerd koperdraad

• Jumperkabels

• Tindraad

• Hout

(16)

- 16 - De apparatuur dat we nodig hadden:

• Precisiesoldeerbout

We hadden een soldeerbout nodig om alles vast te solderen. Dat moest specifiek een precisiesoldeerbout zijn, want alleen daarmee kan je heel nauwkeurig kleine onderdelen

vastsolderen. De onderdelen die op de PCB-plaat komen zijn erg klein en moeten er heel precies op gesoldeerd worden, zodat er geen stroomtoevoer zal zijn naar andere delen. Een normale

soldeerbout heeft een te grote punt en daar kan je niet nauwkeurig mee solderen.

• Kniptang

De kniptang hebben we gebruikt om het vertind koperdraad te strippen tot het juiste formaat en de anodes en kathodes van de LED-lampjes af te knippen.

• Combinatietang

Met de combinatietang hielden we het vertind koperdraad vast tijdens het recht trekken.

• Pincet

We hebben een pincet gebruikt om de kleine SMD-componenten in positie te houden tijdens het solderen.

• Reinigingsstift Flux-Ex 500

De fluxreinigingsstift hebben we gebruikt om voor betere tin verbindingen te zorgen. Vooral bij de onderdelen die direct op de PCB-plaat aangesloten zijn, is dit nodig om te gebruiken, omdat de hoeveelheid tin zo weinig is en een fluxreinigingsstift er zo voor kan zorgen dat er toch een goeie binding ontstaat.

Tenslotte hebben we ons verdiept in de programmeertaal C++. Met C++ wordt de arduino

geprogrammeerd. Hier kwamen we meerdere complicaties tegen. Het was lastig om voorbeelden te vinden van mensen die een LED-cube hadden gebouwd en vooral voorbeelden te vinden waarbij mensen ook uitleggen hoe zij de LED-cube hadden geprogrammeerd. Uiteindelijk hebben we er een paar gevonden. We begonnen met het schrijven van simpele programma’s om een LED-lampje aan- en uit te zetten. Stap voor stap zijn we lastigere animaties gaan programmeren. We hebben de software Arduino IDE gebruikt om de programma's in te schrijven. We maakten ook gebruik van de site arduino.cc om daar onze programma’s in te schrijven.

(17)

- 17 -

9. Het bouwproces

In het gehele project hadden we vertind koperdraad gebruikt. Vertind koperdraad wordt opgerold geleverd. Het draad was daardoor niet helemaal recht. Om het recht te maken staken we één uiteinde van de draad in een bankklem. Het andere uiteinde hielden we vast met een

combinatietang. We trokken met schokken aan het koperdraad, waardoor de draad recht gespannen werd. Hierna was het vertinde koperdraad bruikbaar voor het project.

Het rechttrekken van vertind koperdraad

Het maken van de bandkabels

Om de printplaat te kunnen verbinden met het geraamte, hadden we bandkabels nodig. We

begonnen door de 16-aderige-bandkabel doormidden te scheuren om twee 8-aderige-bandkabels te krijgen. Aan één uiteinde van de bandkabel moest een male-connector komen, die aan de printplaat zou koppelen en aan het andere uiteinde moest alleen de kabels gestript worden van hun isolatie.

Om een male-connector te bevestigen aan de bandkabel, moest deze ook eerst gestript worden.

Echter, de kabels waren te dun en te fragiel om met een striptang te werk te gaan. Daarom

gebruikten we onze tanden om de isolatie te verwijderen. Vervolgens hebben we om elke kabel een stuk krimpkous geschoven en de male connector aan de uiteindes vast gesoldeerd. Bij elke tin verbinding hebben we een beetje flux gebruikt om de kwaliteit van de verbinding te verhogen.

Daarna hebben met een heteluchtpistool de krimpkousen laten krimpen. Op deze manier ontstaat er een barrière tussen elke tin verbinding. Ook bij de bandkabels hebben we getest of er geen

onbedoelde verbindingen tussen de draden waren ontstaan.

Tin verbindingen in bandkabel Afgewerkte bandkabel

(18)

- 18 -

Het bouwen van het geraamte

Nadat we hadden besloten welke onderdelen we nodig hadden, die te hebben besteld, pakten we een houten plank en hadden we die tot een formaat van 21 bij 21 centimeter gezaagd. In de plank hebben we 64 gaten geboord met een diameter van 6 millimeter op een afstand van 2,5 centimeter van elkaar. De plank diende als mal die de LED-lampjes op hun positie vasthoudt, terwijl wij ze aan elkaar vast aan het solderen waren.

De mal

Toen alle LED-lampjes in positie waren, hebben we de kathodes van een rij LED-lampjes verbonden door ze aan een recht stuk vertind koperdraad vast te solderen. Dit deden we totdat we 8 rijtjes van 8 lampjes hebben. Elke keer als we een rijtje vast gesoldeerd hadden, testten we of de LED-lampjes goed verbonden waren. Toen we acht rijtjes van LED-lampjes hadden, stopten we ze vervolgens weer terug in de mal en verbonden we ook de acht rijtjes door middel van drie rechte stukken vertind koperdraad. Deze drie koperdraden zijn essentieel voor de stroomtoevoer en voor de stabiliteit van het geraamte. Vervolgens hebben we dit proces 8 keer herhaald. Elke keer als we een laag afhadden, testten we of alle LED-lampjes werkten om zeker te zijn dat dit onderdeel in de LED- cube uiteindelijk zou werken. Als nu op één plek op de koperdraden verbinding wordt gemaakt met een kathode van een stroombron, dan zijn alle kathodes van de LED-lampjes daarmee verbonden.

Vervolgens hebben we de stukken kathode van de LED-lampjes die voorbij de tin verbinding uitstaken, afgeknipt en de anodes afgebogen.

(19)

- 19 -

Een laag LED-lampjes in de mal

We hadden het bovenstaande proces nog 7 keer herhaald en hadden we 8 geraamtes. De volgende stap in het proces is om de lagen op elkaar te stapelen en zo het geraamte af te hebben. Eerst moesten we de bovenzijde van de doos maken, want door deze zijde zullen een aantal vertinde koperdraden doorheen moeten gaan. Deze bovenzijde maakte we uit hout. Net als de mal zaagde we deze tot een stuk van 25 bij 25 centimeter en boorde we er 64 gaten in. In tegenstelling tot de mal zijn deze gaten kleiner. De gaten hoeven maar één millimeter te zijn, want er hoeft alleen maar vertind koperdraad doorheen. Nadat de bovenzijde af was, staken we door elk gat een stuk vertind koperdraad. Deze draden zullen als de palen dienen die aan de afgebogen anodes van de LED- lampjes vast gesoldeerd gaan worden. Het uiteinde die binnen de doos zou zitten, bogen we af, zodat de stukken draden niet via de andere zijde eruit zouden kunnen vallen. De onderste laag van LED-lampjes zal voorkomen dat de draden naar de andere zijde kunnen bewegen. Voordat de eerste laag vast gesoldeerd is, gebruikten we ducttape om de draden toch op hun plek te houden. Eén voor één soldeerden we anodes vast aan de palen. Als we een volgende laag wilden vastsolderen, legden we vier houten blokken van 2,5 centimeter hoog op de bovenste laag, zodat elke laag 2,5 centimeter van elkaar af staat. Met het vastsolderen, maakten we eerst tin verbindingen, die ervoor zorgden dat de positie van de laag vast zit. Daarna soldeerden we de andere anodes vast aan de palen. Als een laag vast gesoldeerd is, knipten we, net als bij de kathodes, de resten van de anodes af, die voorbij de tin verbinding uitstaken. Vervolgens testten we of de tinverbindingen goed waren en of elk LED- lampje op de manier werkte zoals wij wilden. Daarna hebben we de bandkabels aan de omgebogen uiteindes van de kathodepalen gesoldeerd.

(20)

- 20 -

Het ducttape aan de onderkant Het stapelen van de lagen

Ons geraamte

(21)

- 21 -

Het maken van de printplaat

De eerste stap tot het maken van een printplaat is de printplaat ontwerpen. Dat deden we via Eagle, een ontwerpautomatiseringstoepassing. Eerst maakten we een ontwerp van de printplaat in een schematisch indeling. Hierop stonden alle componenten en hoe ze onderling met elkaar verbonden horen te zijn. Echter, de posities van de onderdelen op de printplaat staat daarin nog niet vast. Bij het toevoegen van elk onderdeel, hebben we de exacte gegevens van de fabrikant gebruikt.

Hierdoor wisten we zeker dat elk component die we kochten op de gefabriceerde printplaat zou passen. Nadat het schematische ontwerp af was, hebben we een ontwerp gemaakt in een board layout. Hier moesten we de componenten een positie geven op onze printplaat en bepalen hoe de traces (de verbindingen tussen de componenten) over onze printplaat zouden lopen.

Het schematische ontwerp

(22)

- 22 - Het board ontwerp

Toen ons ontwerp van de printplaat af was, hadden we die opgestuurd naar het bedrijf JLCPCB. Deze heeft de printplaat voor ons gefabriceerd. We hebben een lege printplaat teruggekregen via de post.

Hierop moesten we alleen nog de componenten op solderen. Eerst hadden we alle 74HC595D-chips vast gesoldeerd, daarna de weerstanden, vervolgens de female-connectoren, daarna de

weerstanden en uiteindelijk de printklemblok. Op elke plek waar een tin verbinding moest komen, hebben we een beetje flux gesmeerd, zodat de tin verbinding van betere kwaliteit zou zijn. Als laatst hebben we de printplaat uitvoerig getest om te kijken of elk onderdeel werkte

(23)

- 23 -

De lege printplaat De afgewerkte printplaat

Het maken van de houten doos

De wanden van de doos hebben we uit houten planken gezaagd. Op twee tegengestelde zijdes hadden we een richel vastgelijmd, waarop de bovenzijde kan steunen. De zijdes hebben we aan elkaar geplakt met houtlijm. Op één zijde hebben we een gat geboord waardoor het snoer van de voeding kan gaan. Aan de zijde tegenovergesteld daarvan hebben we 3 gaten gezaagd/geboord, waaruit een groen- en een rood LED-lampje en de knop kunnen steken. De LED-lampjes en knop zitten vast met behulp van een beetje lijm. We hadden de benodigde weerstanden aan draden vast gesoldeerd, zodat ze aan de Arduino gekoppeld kunnen worden.

De steunrand in de doos De afgewerkte doos

(24)

- 24 -

Het in elkaar zetten van de voeding

Aan de voeding sloten we een snoer aan met een stekker die in een stopcontact past. We sloten ook een geïsoleerd stuk koperdraad aan op de 5 voltkant van de voeding. De andere kant van de draad moet aangesloten worden op printplaat.

We hadden nu alle onderdelen gereed. Nadat we alle onderdelen aan elkaar vast hebben gesloten, was onze LED-cube compleet. We hebben de LED-cube uitvoerig getest. Nadat we enkele fouten hadden opgelost, werkte onze LED-cube. We moesten nu alleen nog de arduino programmeren om animaties te laten afbeelden op de LED-cube.

Onze LED-cube van de buitenkant Onze LED-cube van de binnenkant

(25)

- 25 -

10. Het programmeerproces

We hebben eerst getest of de LED-cube werkte door een programma erop af laten spelen van iemand op het internet. Het programma werkte precies hoe het zou moeten en vervolgens gingen we zelf aan de slag. We hebben op internet naar een aantal verschillende voorbeelden gekeken en we zagen dat een aantal delen nagenoeg overal hetzelfde was. Deze stukjes code hebben vooral te maken met het doorgeven van de code naar de arduino die vervolgens dan een specifiek lampje laten branden. We hebben het voorbeeld genomen van github user anoopmm. Het eerste deel dat we over hebben genomen is wat binnen de void setup() staat. Hierin is alles geprogrammeerd om de LED-cube te laten opstarten. We hebben ook aantal functies overgenomen: setVoxel(), clearVoxel(), renderCube(), en clearcube(). Deze functies hebben we gebruikt om onze eigen programma's mee te schrijven. Uitleg over wat deze functies uitvoeren is voorzien in het commentaar bij de code.

Daarna hebben we één voor één vijf animaties geprogrammeerd. Wij hebben continu elke animatie getest op onze LED-cube en gekeken of hij werkte. Zo niet, dan zochten we uit waar de fout in onze code zat. Als een animatie gelukt was, stopte we de code die bij de animatie hoort in een functie.

Op de eerste animatie zie je een “tornado”. Dit is een ronddraaiende die Archimedes-spiraal die hoe verder hij uit het midden gaat, verder omhooggaat.

Op de tweede animatie zie je uit een hoek een groeiend lichtgevend vierkant zien ontstaan. Deze groeit totdat hij even groot is als de LED-cube zelf. Daarna ontstaat uit een andere hoek juist een vierkant die niet lichtgevend is. Dit vierkant zet juist LED-lampjes uit. Deze groeit ook totdat deze even groot is als de LED-cube. Daarna ontstaat weer uit een andere hoek een lichtgevend vierkant en daarna weer uit een andere hoek een niet-lichtgevend vierkant. Dit gaat door totdat alle hoeken zijn geweest. Daarna begint de animatie weer opnieuw.

Op de derde animatie wordt een vuurwerkshow laten zien. Hierop zie je een vuurpijl omhoogvliegen en deze explodeert ergens in de LED-cube. Er kunnen tussen de nul en drie vuurpijlen tegelijk rondvliegen.

Op de vierde animatie zie je een munt van één euro. De munt is twee LED-lampjes dik en heeft een diameter van zeven LED-lampjes. In het midden missen drie LED-lampjes die samen het cijfer 1 vormen.

Op de vijfde animatie zie je een lasershow. Er gaan drie lasers door de LED-cube. Elke laser is 3 LED- lampjes lang. Als deze lasers de rand van de LED-cube tegenkomen, gaan ze een andere willekeurige kant op.

Nadat we alle vijf animaties geprogrammeerd hadden, programmeerde we de interface. Als op de knop wordt gedrukt, roept de code een andere functie op, die bij een andere animatie hoort. Ook beheert deze code het groene- en rode LED-lampje. Het groene LED-lampje staat aan als een animatie afspeelt. Het rode LED-lampje gaat aan als er tussen twee animaties gewisseld wordt.

Onze code voor LED-cube is te vinden in de bijlage. Een video van de animaties is te vinden in de link naar onze github in de bijlage van dit profielwerkstuk.

(26)

- 26 -

11. Resultaten

Het is ons gelukt om een LED-cube te bouwen met de middelen die tot onze beschikking waren. Wij hebben vijf verschillende unieke animaties op onze LED-cube kunnen programmeren. Onze 8*8*8 LED-cube heeft genoeg LED-lampjes om onze animaties duidelijk te kunnen laten tonen. Onze programmeervaardigheden waren ook voldoende om de animaties te programmeren. Echter, wij hebben ons voor de LED-cube in de SPI-library moeten verdiepen, maar wij begrepen die library in een korte tijd.

Wij zijn geen grote obstakels tegengekomen die wij niet konden verhelpen. Tot onze verwachting, hebben we elk probleem kunnen identificeren en voor elk probleem een oplossing kunnen

bedenken. Wij hoefden ook geen grote verandering te maken aan ons originele plan. Elk onderdeel dat we hadden uitgekozen vervult zijn rol goed. Geen enkel onderdeel was verkeerd gekozen. Wij kunnen concluderen dat het voor mensen zonder eerdere kennis over elektronica, mogelijk is om een LED-cube te bouwen en daarop animaties laten afspelen, waarop een bewegend of stilstaand voorwerp te zien is.

12. Foutendiscussie

In het bouwproces zijn we aantal obstakels tegengekomen. Voor elk obstakel hebben we een oplossing kunnen bedenken. Het eerste probleem was dat we niet rekening hadden gehouden dat de levertijd van de printplaat buitengewoon lang zou zijn. Hierdoor hebben wij extra verzendkosten moeten betalen om de printplaat op tijd te leveren.

Een ander probleem dat wij tegenkwamen, was dat het koper van de bandkabel verbonden was en dat er stroom tussen de koperdraden kon geleiden. Wat niet de bedoeling was. Zo zouden signalen bij de verkeerde plaats terecht kunnen komen. Wij hadden voor het solderen van de kabels aan een male-connector een fluxmiddel gebruikt die al in het bezit was van Rolf Verweij. Dit fluxmiddel bleek achteraf geleidend te zijn. Daarom moesten we de tin verbindingen schoonmaken met water. Hierna waren de kabels niet meer met elkaar verbonden.

(27)

- 27 -

We hadden ook een fout gemaakt in het ontwerp van de printplaat. Twee koperlijnen overlapten, terwijl dat niet de bedoeling was. We hebben het ontwerp meerdere keer nagekeken op fouten, maar er was toch eentje langs ons voorbij gegaan. Door deze fout zou een LED-lampje aan kunnen gaan als dat niet de bedoeling was. Dit probleem hebben we opgelost door met een zakmes de verbindingen van een van deze koperlijnen kapot te maken. We hebben de slechte verbinding vervangen met verbinding van vertind koperdraad. Nu kruisen de verbindingen elkaar niet meer en werkt de printplaat zoals hij hoort.

Fout op de printplaat Onze oplossing

Nadat we de LED-cube klaar voor gebruik hadden gemaakt, begonnen we met testen. Bij het testen zagen we dat vier transistors niet werkte. Twee transistoren stonden altijd open en twee stonden altijd dicht. Deze vier transistoren hebben we moeten vervangen. Gelukkig hadden we nog vier extra transistoren aangeschaft. Nadat we ze hadden vervangen, werkte de led-cube zoals bedoeld.

Tevens zagen we bij het testen dat vier palen het niet deden. De LED-lampjes aan deze paal konden niet aangezet worden. De oorzaak lag in de lintkabels. Op twee plekken waren twee kabels aan elkaar verbonden. Dat is waarschijnlijk gekomen doordat op twee plekken, bij het opwarmen van de krimpkousen met de heteluchtpistool, het tin van twee binding aan elkaar vast is gesmolten, terwijl dat niet hoort.

De ongewenste verbinding (aan de rechterkant)

(28)

- 28 -

Ook merkten we dat er een probleem zat in het geven van de signalen van de arduino. Dat kwam, omdat er geen volledig stroomkring was. Wij hadden namelijk alleen een heenweg voor de signalen naar de printplaat gegeven, maar de elektronen van deze signalen moesten ook terug naar de arduino. Daarom moesten we nog met een jumperwire de minpool van de printplaat verbinden met een ground-pin van de arduino. Hierna werkte het doorgeven van de signalen.

Tijdens het solderen bij het stapelen van de lagen, heeft Johann een brandwond op zijn linker ringvinger opgelopen. De brandwond kwam doordat de schacht van de soldeerbout tegen zijn vinger stootte. Hoewel de schacht maar korte tijd met zijn vinger contact heeft gehad, kwam door de zeer hoge temperatuur van 350 graden toch een brandwond.

De brandwond

Halverwege het project, leerden we dat je een betere tin verbinding maakt door de tindraad voor het eerst te laten smelten op de plek waar je ook de tin verbinding wil maken. Voorheen lieten we eerst wat tin smelten op de soldeerpunt, dan maakten we met die tin een verbinding. Het was namelijk soms moeilijk om een hand vrij te hebben om een tindraad vast te houden.

Zonder directe tindraad Met directe tindraad

(29)

- 29 -

Gedurende het maken van het geraamte, kwamen wij erachter dat we te weinig vertind koperdraad hadden gekocht. Dat kwam, omdat we dat voorheen verkeerd berekend hadden. Daarom moesten we meer vertind koperdraad bestellen.

Bij de SPI library is er een delay functie waarmee je kan kiezen hoe lang er tijd moet zitten tussen twee dingen die de arduino uit moet voeren, maar toen wij dat gingen gebruiken met onze programma’s verliep er iets niet goed met het multiplexing systeem waarvan de LED-cube gebruik van maakt, vermoeden wij. Wij hebben zelf een vervanging voor de delay functie bedacht.

Tijd++;

If (Tijd>aantal milliseconden dat je ertussen wilt hebben) { Tijd=0;

Rest van de code }

Op deze manier moet de arduino eerst tot een bepaald getal tellen en dan voert hij het programma uit dat wat in de if-statement staat.

13. Reflectie op proces

Over het algemeen ging het bouwen en programmeren best goed. Uiteindelijk heeft het project meer gekost dan wat we eerst in gedachte hadden. Dat kwam, omdat we meer vertind koperdraad nodig hadden en omdat de prijzen in Nederland duurder zijn dan in de VS. Dat is waar de meesten mensen waar wij door geïnspireerd werden en waar wij onze verwachtingen op baseerden, hun onderdelen vandaan haalden. In Nederland zijn ook minder verkopers van elektronica onderdelen voor hobbyisten. Op sommige websites, was het ene onderdeel goedkoop en het andere onderdeel juist duur. Op de andere website, was het andere onderdeel juist goedkoop en het ene onderdeel duur. Hierdoor was het stuk goedkoper om onderdelen bij verschillende websites te kopen, maar we moesten dan wel meer betalen voor bezorgkosten.

We zijn vroeg begonnen met ons profielwerkstuk, waardoor we geen tijd te kort kwamen. Dit verlichtte de stress en maakte het proces gemakkelijker.

De samenwerking bij dit profielwerkstuk ging vlekkeloos. Afspraken maken was gemakkelijk en we leefden ze allebei na. We hebben geen enkele onenigheid gehad. Gedurende het project, hebben we veel geleerd over hoe elektronica werkt en over hoe je een project die maanden duurt, uitvoert. Wij verwachten dat deze kennis ons later veel zal helpen.

(30)

- 30 -

14. Literatuur & annotatie

Internetpagina’s

Spresense Arduino Library, Uitleg transfer functie van SPI-library, geraadpleegd van

https://developer.sony.com/develop/spresense/developer-tools/api-reference/api-references- arduino/classSPIClass.html#aff27fb1ca89a8a0d49a0a4341716dd3c

Arduino, uitleg standaardfuncties van een arduino, geraadpleegd van https://www.arduino.cc/reference/en/

Anoopmm (26 april 2019), LED_CUBE_8x8x8, arduino code, geraadpleegd van https://github.com/anoopmm/LED_CUBE_8x8x8/blob/master/sketch_jan03a.ino

Chr, LED Cube 8x8x8, uitleg over het bouwen van een LED-cube, geraadpleegd van https://www.instructables.com/Led-Cube-8x8x8/

Mr. Sunil S. Hirapur, Mr. Shantkumar, Ms. Shruthi en Ms. Preeti (3 September 2020), 3D LED Cube, geraadpleegd van https://www.seminarsonly.com/Engineering-Projects/Electronics/3d-led-cube.php

Liam Jackson(16 maart 2012), 8x8x8 LED cube, uitleg over zijn LED-cube en zijn arduino test code, geraadpleegd van http://jacksonliam.blogspot.com/2012/03/led-cube-8x8x8-part-1-theory.html en van https://pastebin.com/cPMpj78A

Sparkfun, uitleg over het gebruik van Eagle, geraadpleegd van https://learn.sparkfun.com/tutorials/using-eagle-schematic/all

Last Minute Engineers, uitleg over de shift registers, geraadpleegd van https://lastminuteengineers.com/74hc595-shift-register-arduino-tutorial/

Mediamarkt (20 januari 2018), let op oled!, De voordelen van een oled-tv, geraadpleegd van https://magazine.mediamarkt.nl/de-voordelen-van-oled/

TechTarget, Margaret Rouse, uitleg over het multiplexing systeem, geraadpleegd van https://searchnetworking.techtarget.com/definition/multiplexing

(31)

- 31 -

Bart Veldstra (4 mei 2005), 3d-stereo-beeldschermen, klaar voor de massa?, geraadpleegd van https://tweakers.net/nieuws/37194/3d-stereo-beeldschermen-klaar-voor-de-massa.html

Keenly Kollannur, YouTube kanaal, voorbeeld LED-cube met code, geraadpleegd van https://www.youtube.com/watch?v=-WdIXSXqyn0

Uitleg over het berkenen van de juiste weerstand, geraadpleegd van

https://encyclopedie.beneluxspoor.net/index.php/Minimale_led_voorschakelweerstand_berekenen

HARRY LE, YouTube kanaal, voorbeeld van het bouwen van een LED-cube met code, geraadpleegd van https://www.youtube.com/watch?v=T5Aq7cRc-mU&t=21s

Electronics Demon, YouTube kanaal, voorbeel van het bouwen van een LED-cube met code geradpleegd van https://www.youtube.com/watch?v=JqBGBm2iza8&t=1352s

GreatScot!, YouTube kanaal, voorbeeld van het bouwen van een LED-cube met code, geraadpleegd van https://www.youtube.com/watch?v=jX1GaPgSheI

Oorsprong foto’s

https://www.freetronics.com.au/products/cube4-4x4x4-rgb-led-cube#.X-khzPlKiUk https://www.youtube.com/watch?v=7n0sINA6xPI

https://github.com/topics/led-cube

https://creativeshory.com/the-best-company-to-buy-surface-mounted-technologies-and-smd- electronics-from/

http://wiki.sjs.org/wiki/index.php/History_of_Computers_-_PCB\

15. Bijlage

Link naar onze github voor een video van de LED-cube in werking en voor de code voor de arduino:

https://github.com/Semv6/LED-Cube-PWS

Referenties

GERELATEERDE DOCUMENTEN

of Type LCAP26-A, gefabriceerd door LIEN CHANG ELECTRONIC ENTERPRISE of Type LCAP26-E, gefabriceerd door LIEN CHANG ELECTRONIC ENTERPRISE of Type LCAP26-I, gefabriceerd door LIEN

Om de levensduur van de LED transformator te verhogen is het belangrijk dat deze niet continu op maximum vermogen opereert, zorg er dus voor dat het nominaal vermogen van de

y Als u het monitorpaneel gebruikt zonder de basis van de standaard, kan de joystickknop ervoor zor- gen dat de monitor onstabiel wordt en valt, waar- door deze beschadigd raakt

➔ Werklampen mogen niet worden gebruikt als achteruitrijlampen omdat ze niet zijn goedgekeurd volgens ECE-R23. ➔ Achteruitrijlampen met ECE-R23-goedkeuring zijn niet goedgekeurd

3 Beweeg de joystick naar ◄ of druk op ( / OK) om terug te gaan naar het bovenste menu of om andere menu- items in te stellen.. 4 U sluit het OSD-menu af door de joystick naar

(Als de knop Menu op het scherm wordt weergegeven, kunt u het Menu verlaten door de joystickknop ingedrukt te houden.)4. Volumeregeling Als u de joystickknop naar links of naar

overeenkomst dienovereenkomstig worden aangepast. Deze wijziging zal door Opdrachtnemer schriftelijk worden bevestigd en op het voorblad van deze overeenkomst worden vermeld. Deze

Pendelarmatuur inclusief 2 meter zelf dragende transparante kabel... Kleurtemperatuur