Innehållsförteckning:

LED Cube 4x4x4: 11 steg (med bilder)
LED Cube 4x4x4: 11 steg (med bilder)

Video: LED Cube 4x4x4: 11 steg (med bilder)

Video: LED Cube 4x4x4: 11 steg (med bilder)
Video: Is the $100 Gold speedcube worth it? 2024, November
Anonim
LED Cube 4x4x4
LED Cube 4x4x4
LED Cube 4x4x4
LED Cube 4x4x4
LED Cube 4x4x4
LED Cube 4x4x4

Fantastisk tredimensionell LED -display. 64 lysdioder utgör denna 4 x 4 x 4 kub, styrd av en Atmel Atmega16 mikrokontroller. Varje LED kan adresseras individuellt i programvara, så att den kan visa fantastiska 3D -animationer! 8x8x8 LED-kub nu tillgänglig, efter populär efterfrågan:

Steg 1: Vad du behöver

Vad du behöver
Vad du behöver

Först och främst behöver du ganska mycket tid för att lödda ihop 64 lysdioder;) Kunskapslista:

  • Grundläggande elektronik och lödningskunskaper
  • Vet hur man programmerar en AVR -mikrokontroller - jag kommer inte att täcka det i denna instruerbara.

Komponentlista:

  • Protoboard. Typen med kopparcirklar.
  • Atmel AVR Atmega16 mikrokontroller
  • Programmerare för att programmera Atmega16
  • 64 lysdioder
  • 2 status lysdioder. Jag använde rött och grönt. (frivillig)
  • Max232 rs-232-chip eller motsvarande.
  • 16 motstånd för lysdioder. (100-400ohms) återkommer till detta.
  • 2x motstånd 470 ohm. för status lysdioder
  • 1x motstånd 10k
  • 4x motstånd 2.2k
  • 4x NPN-transistor BC338 (eller annan transistor som kan växla 250-ish mA)
  • 1x 10uF kondensator
  • 1x 1000uF kondensator
  • 6x 0.1uF keramisk kondensator
  • 2x 22pF keramisk kondensator
  • 1x kristall 14,7456 MHz
  • 2x taktil knapp
  • valfri pwr -switch
  • kontakt för 12V ström
  • valfri kontakt för 5v ström

Steg 2: Multiplexing

Multiplexing
Multiplexing
Multiplexing
Multiplexing

Hur man kontrollerar 64 lysdioder utan att använda 64 enskilda ledningar? Multiplexing!

Att köra en tråd till anoden på varje led skulle uppenbarligen vara opraktiskt och skulle se riktigt dåligt ut. Ett sätt att komma runt detta är att dela kuben i 4 lager med 16x16 lysdioder. Alla lysdioder i linje med en vertikal kolumn delar en gemensam anod (+). Alla lysdioder på ett horisontellt lager delar en gemensam katod (-). Om jag nu vill tända lysdioden i det övre vänstra hörnet på baksidan (0, 0, 3), levererar jag bara GND (-) till det övre lagret och VCC (+) till kolumnen i det vänstra hörnet. Om jag bara vill tända en led i taget, eller bara lysa upp mer än ett lager samtidigt.. fungerar det bra. Men om jag också vill lysa upp det nedre högra hörnet på framsidan (3, 3, 0), stöter jag på problem. När jag levererar GND till det nedre lagret och VCC till den främre vänstra kolumnen, tänder jag också den övre högra lysdioden på framsidan (3, 3, 3) och den nedre vänstra lysdioden på baksidan (0, 0, 0). Denna spökande effekt är omöjlig att lösa utan att lägga till 64 individuella ledningar. Sättet att kringgå det är att bara lysa upp ett lager i taget, men gör det så snabbt att ögat inte känner igen att bara ett lager tänds när som helst. Detta bygger på ett fenomen som kallas Persistens av syn. Varje lager är en 4x4 (16) bild. Om vi blinkar 4 16 led -bilder en i taget, riktigt snabbt, får vi en 4x4x4 3d -bild!

Steg 3: Gör kuben, mall

Gör kuben, mall
Gör kuben, mall
Gör kuben, mall
Gör kuben, mall
Gör kuben, mall
Gör kuben, mall

Lödnät av 4x4 lysdioder på frihand skulle se fruktansvärt ut! För att få 4 perfekta 4x4 nät av lysdioder använder vi en mall för att hålla dem på plats. Jag ville göra kuben så lätt som möjligt att göra, så jag valde att använda lysdioderna. egna ben så mycket som möjligt. Avståndet mellan linjerna i rutnätet bestämdes av längden på LED -benen. Jag upptäckte att 25 mm (ungefär en tum) var det optimala avståndet mellan varje led (mellan mitten på varje led!) För att möjliggöra lödning utan att lägga till eller klippa tråd.

  • Hitta en träbit som är tillräckligt stor för att göra ett 4x4 -rutnät på 2, 5 cm på.
  • Rita upp ett 4x4 rutnät med linjer.
  • Gör bucklor i alla skärningar med en mittpunch.
  • Hitta en borr som gör hål tillräckligt små för att ledet ska sitta stadigt på plats och tillräckligt stort så att ledningen lätt kan dras ut (utan att böja trådarna..).
  • Borra de 16 hålen.
  • Din ledcube -mall är klar.

Steg 4: Gör kuben, löd skikten

Gör kuben, löd skikten
Gör kuben, löd skikten
Gör kuben, löd skikten
Gör kuben, löd skikten
Gör kuben, löd skikten
Gör kuben, löd skikten

Vi gör kuben i 4 lager med 4x4 lysdioder, sedan lödda vi ihop dem. Skapa ett lager:

  • Sätt i lysdioderna längs baksidan och längs ena sidan och löd ihop dem
  • Sätt i ytterligare en rad lysdioder och löd ihop dem. Gör en rad i taget för att lämna plats för lödkolven!
  • Upprepa ovanstående steg 2 gånger till.
  • lägg till korsstöd på framsidan där ledraderna inte är anslutna.
  • Upprepa 4 gånger.

Steg 5: Gör kuben, ansluta lagren

Att göra kuben, ansluta lagren
Att göra kuben, ansluta lagren
Att göra kuben, ansluta lagren
Att göra kuben, ansluta lagren
Att göra kuben, ansluta lagren
Att göra kuben, ansluta lagren

Nu när vi har de fyra lagren är det bara att löda ihop dem.

Lägg tillbaka ett lager i mallen. Detta blir det översta lagret, så välj det vackraste:) Lägg ett annat lager ovanpå och rikta in ett av hörnen exakt 25 mm (eller vilket avstånd du använde i ditt rutnät) ovanför det första lagret. Detta är avståndet mellan katodtrådarna. Håll hörnet på plats med en hjälpande hand och löd hörnanoden i det första lagret till hörnanoden i det andra lagret. Gör detta för alla hörn. Kontrollera om lagren är perfekt inriktade i alla dimensioner. Om inte böj lite för att justera. Eller återlödning av det är höjdavståndet som är avstängt. När de är perfekt inriktade löds de återstående 12 anoderna ihop. Upprepa 3 gånger.

Steg 6: Välja motståndsvärden

Välja motståndsvärden
Välja motståndsvärden
Välja motståndsvärden
Välja motståndsvärden

Det finns två saker att tänka på när du väljer ett motståndsvärde för dina lysdioder.

1) Lysdioderna 2) AVR AVR: n har en maximal kombinerad strömstyrka på 200 mA. Detta ger oss 12mA att arbeta med per LED. Du vill inte heller överskrida den maximala strömmen som dina lysdioder är klassade till. Jag använde 220 ohm motstånd på min kub. Detta gav mig ca 12mA per led.

Steg 7: Styrenheten

Kontrollen
Kontrollen
Kontrollen
Kontrollen
Kontrollen
Kontrollen

Kretsarna som styr ledkuben beskrivs i den bifogade schematiska bilden.

RS-232-gränssnittet är valfritt. och kan utelämnas. Det är IC2 och alla komponenter som är anslutna till den. Framtida firmwares kommer att möjliggöra PC -kommunikation. Börja med att lägga ut alla komponenter på kretskortet i en layout som gör att alla komponenter kan anslutas med en minimal mängd ledningar. Om allt passar, löd kretsen. Jag kommer inte att ge några fler instruktioner om detta, eftersom kretsen förmodligen kommer att se väldigt annorlunda ut från kub till kub, beroende på kretskortets storlek osv. Information om hur kuben ska kopplas till styrkretsen finns i nästa steg.

Steg 8: Trä upp kuben

Tråd upp kuben
Tråd upp kuben
Tråd upp kuben
Tråd upp kuben
Tråd upp kuben
Tråd upp kuben

Bilder förklarar detta bättre än ord. Se bilderna.

Steg 9: Kompilera och programmera

Du har nu en ledkub. För att använda den behöver den lite programvara. Jag har gjort en drivrutin för att göra ett 3D -datarum på kuben och funktioner för att visa några coola visuella effekter på kuben. Du kan använda min kod, skriva din egen eller bygga vidare min kod och göra fler effekter. Om du gör dina egna effekter, skicka mig koden. Jag är sugen på att se vad ni gör! För att sammanställa programmet. Öppna bara en kommandotolk, ange katalogen med källkodtypen "make" på kommandoraden. Om du vill använda en ATMega32 istället för ATMega16, ändrar du bara mcu -inställningen i Makefile och kompilerar om (typ make). Om du använder m32 och inte gör det här steget startar inte kuben ordentligt (de röda och gröna lamporna blinkar för alltid). Du bör nu ha en fil med namnet main.hex i källkatalogen. Nästa steg kommer att visa dig hur du får den koden i din kub.

Steg 10: Programmera mikrokontrollern

Programmera mikrokontrollern
Programmera mikrokontrollern
Programmera mikrokontrollern
Programmera mikrokontrollern
Programmera mikrokontrollern
Programmera mikrokontrollern

Om du upplever problem med hastighet och/eller vissa lysdioder inte lyser. Läs detta steg noga. För att programmera mikrokontrollen använder jag avrdude och USBTinyISP -programmeraren.

  • https://savannah.nongnu.org/projects/avrdude/
  • https://www.ladyada.net/make/usbtinyisp/
  • https://www.adafruit.com/index.php?main_page=index&cPath=16

Mina exempel kommer att finnas på ett Ubuntu Linux -system. Proceduren bör vara ganska identisk på Windows, men jag kan inte hjälpa dig med det. Om du använder en annan programmerare, läs manualen för den programmeraren och avrdude. Först, låt oss bara se om vi kan komma i kontakt med AVR. Anslut programmeraren till din kub och din dator. Kommandot är "avrdude -c usbtiny -p m16 ", där -c anger programmeraren och -p AVR -modellen. Du kan se utmatningen i bilderna nedan. Ladda nu upp firmware: "avrdude -c usbtiny -p m16 -U flash: w: main.hex". Nu ska kuben starta om och börja göra saker. Den kommer att köra på 1 MHz (mycket långsamt) med den interna oscillatorn. Och några av lysdioderna fungerar inte, eftersom vissa GPIO -portar används som standard för JTAG. För att aktivera den externa oscillatorn och inaktivera JTAG måste vi programmera säkringsbyte: kör "avrdude -c usbtiny -p m16 -U lfuse: w: 0xef: m "och" avrdude -c usbtiny -p m16 -U hfuse: w: 0xc9: m ". Var försiktig när du gör detta steg! Om du får fel kan du förstöra din mikrokontroller permanent! Om du använder en annan mikrokontroller än ATMega16, läs databladet noggrant innan du byter säkringsbyte! Efter att du har skrivit rätt säkringsbyte ska kuben starta om och börja arbeta med normal hastighet med alla lysdioder i drift. Njut av din nya kub: D

Steg 11: Go Large - 8x8x8

Go Large - 8x8x8
Go Large - 8x8x8
Go Large - 8x8x8
Go Large - 8x8x8
Go Large - 8x8x8
Go Large - 8x8x8
Go Large - 8x8x8
Go Large - 8x8x8

Efter att ha gjort denna ganska snygga 4x4x4 kub har jag också gjort en enorm 8x8x8 kub. Jag gör en instruerbar för den när jag har tid. Se bilderna under tiden:-)

Du hittar 8x8x8-versionen här: https://www.instructables.com/id/Led-Cube-8x8x8/ Vänligen betygsätt denna instruerbara om du gillar den!:)

Rekommenderad: