Difference between revisions of "Inteligentná svetelná kocka"

From Digitálne technológie výroby
Jump to: navigation, search
(Postup)
m
 
(10 intermediate revisions by 2 users not shown)
Line 1: Line 1:
...krátky popis cielov...
+
== Ciele ==
 +
* vyrobiť model kocky
 +
* vytlačiť model kocky
 +
* spojazdniť kocku (správne všetko zapojiť, zaizolovať, skontrolovať)
 +
* naprogramovať hru
  
 
== Postup ==
 
== Postup ==
Line 8: Line 12:
 
Na každú zo 4 dosiek som si pospájkovala 3 multiplexery, 24 LEDiek a rezistory podľa nasledujúcej schémy.
 
Na každú zo 4 dosiek som si pospájkovala 3 multiplexery, 24 LEDiek a rezistory podľa nasledujúcej schémy.
  
Miesto toho aby boli všetky LEDky zvlášť zapojené do zeme, tak som ich musela spojiť aby som ušetrila miesto.  
+
Miesto toho aby boli všetky LEDky zvlášť zapojené do zeme, tak som ich musela spojiť aby som ušetrila miesto.
 +
 
[[File:zem.jpg|500px]]
 
[[File:zem.jpg|500px]]
  
Line 33: Line 38:
  
 
== Analýza technológií ==
 
== Analýza technológií ==
 +
 +
Najskôr sme overili funkciu shift-registrov pre jeden aj pre viacero zapojených za sebou:
  
 
<youtube>THDFQHins5c</youtube>
 
<youtube>THDFQHins5c</youtube>
 
<youtube>o7fiIo-RbGU</youtube>
 
<youtube>o7fiIo-RbGU</youtube>
 
<youtube>Us0AcbA3zOE</youtube>
 
<youtube>Us0AcbA3zOE</youtube>
 +
 +
Nasledujúci program postupne rozsvecuje 24 LED-iek pripojených na troch zreťazených shift registroch:
  
 
<syntaxhighlight lang="C++">
 
<syntaxhighlight lang="C++">
Line 95: Line 104:
  
 
== Výsledok ==
 
== Výsledok ==
 +
 +
Zatiaľ sa mi kocku kvôli opatrnosti nepodarilo zatvoriť, ale dalo by sa povedať, že model je funkčný:
  
 
[[Image:kocka_pohlad1.jpg|výsledný, takmer dokončený model]]
 
[[Image:kocka_pohlad1.jpg|výsledný, takmer dokončený model]]
Line 100: Line 111:
 
[[Image:kocka_pohlad2.jpg|výsledný, takmer dokončený model, iný pohľad]]
 
[[Image:kocka_pohlad2.jpg|výsledný, takmer dokončený model, iný pohľad]]
  
[[Image:kocka_pohlad3.jpg|výsledný, takmer dokončený model, iný pohľad]]
+
<youtube width="360" height="640">UAF1ug7yA6o</youtube>
 
 
<youtube>kod vysledneho videa na youtube</youtube>
 
 
 
  
 
== Program ==
 
== Program ==
  
* [[Media:kocka_test_vsetkych_LED.ino|test všetkých LED (kocka_test.ino)]]
+
* [[Media:kocka_test_vsetkych_LED.zip|test všetkých LED (kocka_test.ino)]] (zip)
 
* [[Media:kocka_hra.ino|vytvorená hra ovládaná dotykovými senzormi (kocka_hra.ino)]]
 
* [[Media:kocka_hra.ino|vytvorená hra ovládaná dotykovými senzormi (kocka_hra.ino)]]
  
 
__notoc__
 
__notoc__

Latest revision as of 10:47, 31 August 2020

Ciele

  • vyrobiť model kocky
  • vytlačiť model kocky
  • spojazdniť kocku (správne všetko zapojiť, zaizolovať, skontrolovať)
  • naprogramovať hru

Postup

Model kocky som vyrobila v openscade. Bolo potrebné presne vypočítať rozmery strán, dier na LEDky, matice, skrutky a iné detaily aby všetko sedelo ako má. Vyrobila som niekoľko modelov kým som sa dostala k finálnej verzii. Následne som si v tinkercade overila či konkrétne časti do seba zapadajú.

Finálna verzia kocky bola o rozmeroch 10x10x10cm, obsahovala 3mm diery na LEDky a na skrutky s maticami, dieru na arduino (aby sa dal vložiť do neho kód bez rozoberania kocky), tlačidlo a dotykové senzory. Kocka sa dala vytlačiť.

Na každú zo 4 dosiek som si pospájkovala 3 multiplexery, 24 LEDiek a rezistory podľa nasledujúcej schémy.

Miesto toho aby boli všetky LEDky zvlášť zapojené do zeme, tak som ich musela spojiť aby som ušetrila miesto.

Zem.jpg

Naspájkovala som 2 dotykové senzory (piny A3, A7), sirénka na D13 a potom už len dosky k LEDkám a nakoniec všetkú zem do doštičky, ktorá potom viedla k zemi do arduina a to isté so zdrojom. Ďalej bolo treba všetko skontrolovať či niekde nie je niečo vyskratované, opraviť a dôkladne zaizolovať.

Zoznam súčiastok

  • 96x LED (červená, zelená, žltá)
  • 96x rezistor 220 Ohm
  • 12x shift-register 74HC595
  • gyroskop MPU6050
  • pasívna sirénka
  • držiak na dva AA články
  • 2ks Li-Ion batérie 14500
  • Zdroj 5V 4A
  • Odporový delič na meranie napätia bateriek
  • Arduino Nano
  • vypínač KCD11
  • kábliky
  • 6 stien kocky vytlačených na 3D tlačiarni

Zapojenie

Schema.png

Analýza technológií

Najskôr sme overili funkciu shift-registrov pre jeden aj pre viacero zapojených za sebou:

Nasledujúci program postupne rozsvecuje 24 LED-iek pripojených na troch zreťazených shift registroch:

const int latchPin = 8;  //Pin connected to latch pin (ST_CP) of 74HC595
const int clockPin = 12;  //Pin connected to clock pin (SH_CP) of 74HC595
const int dataPin = 11;  //Pin connected to Data in (DS) of 74HC595

void setup() {
  //set pins to output because they are addressed in the main loop
  pinMode(latchPin, OUTPUT);
  pinMode(dataPin, OUTPUT);
  pinMode(clockPin, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  unsigned long x = 1;
  for (int i = 0; i < 24; i++)
  {
    setLEDs(x);
    delay(150);
    x <<= 1;
  }
  x >>= 1;
  for (int i = 0; i < 24; i++)
  {
    setLEDs(x);
    delay(150);
    x >>= 1;
  }
  setLEDs(0);
  delay(150);
}

void setLEDs(unsigned long state) {
  // turn off the output so the pins don't light up
  // while you're shifting bits:
  digitalWrite(latchPin, LOW);

  // shift the bits out:
  // (kazdy bajt ide do jedneho z tych 3 integracov na jednej doske)
  shiftOut(dataPin, clockPin, MSBFIRST, state >> 16);
  shiftOut(dataPin, clockPin, MSBFIRST, (state >> 8) & 255);
  shiftOut(dataPin, clockPin, MSBFIRST, state & 255);

    // turn on the output so the LEDs can light up:
  digitalWrite(latchPin, HIGH);
}


3D model

3D model inteligentnej kocky

Download: zozipované STL súbory


Výsledok

Zatiaľ sa mi kocku kvôli opatrnosti nepodarilo zatvoriť, ale dalo by sa povedať, že model je funkčný:

výsledný, takmer dokončený model

výsledný, takmer dokončený model, iný pohľad

Program