Sadržaj:

RGB LED kocka s Bluetooth aplikacijom + animacijaKreator: 14 koraka (sa slikama)
RGB LED kocka s Bluetooth aplikacijom + animacijaKreator: 14 koraka (sa slikama)

Video: RGB LED kocka s Bluetooth aplikacijom + animacijaKreator: 14 koraka (sa slikama)

Video: RGB LED kocka s Bluetooth aplikacijom + animacijaKreator: 14 koraka (sa slikama)
Video: Bluetooth LED plafonjera unboxing i povezivanje sa aplikacijom M205440 Mitea Lighting 2024, Prosinac
Anonim
RGB LED kocka s Bluetooth aplikacijom + AnimationCreator
RGB LED kocka s Bluetooth aplikacijom + AnimationCreator

Ovo je uputstvo o tome kako izgraditi 6x6x6 RGB LED (uobičajene anode) kocku koju kontrolira Bluetooth aplikacija pomoću Arduino Nano. Cijela je konstrukcija lako prilagodljiva na primjer kocki 4x4x4 ili 8x8x8. Ovaj projekt inspiriran je GreatScottom. Odlučio sam se za sofisticiraniju izgradnju koristeći veće LED diode (8 mm), s manjom udaljenošću + dodavanjem Bluetooth komunikacije što čini dodavanje novih funkcija toliko lakšim, a dodaje i mogućnost izgradnje aplikacije za kontrolu kocke. To mi također omogućuje da npr. kodirati Zmijsku igru (treći video izlog na kraju). Povrh toga, dodao sam način audio vizualizatora koji omogućuje kocki vizualizaciju AUX ulaza, npr. Glazba pomoću MSGEQ7 (video prikaz na kraju). Nadalje, napisao sam aplikaciju AnimationCreator na Javi s korisničkim sučeljem koje je jednostavno koristiti za stvaranje i dotjerivanje animacija, tako da svatko može vrlo brzo izgraditi prilagođene animacije. Tako aplikacija Sketch + Bluetooth pruža okvir za bilo koju konfiguraciju LED kocke, a s programom Animation Creator ne morate brinuti o implementaciji prilagođenih animacija.

Veze do Arduino Sketch i Bluetooth aplikacije:

RGBCube_Arduino Sketch (Github)+Animation Creator.jar

Bluetooth aplikacija Cubo (Github)

Popis dijelova za kocku:

  • 216x RGB LED (zajednička anoda) (8 mm) (AliExpress / Ebay)-> 6x6x6 = 216
  • Vrpčasti kabel (1m 40Pin bi trebao biti dovoljan) (AliExpress / Ebay / Amazon)
  • Ženski i muški zaglavlja (najmanje 4 x 40 pina svaki) (AliExpress / Ebay / Amazon)
  • Laminirana bakrena / srebrna žica 0,8 mm (~ 25 metara) (AliExpress / Ebay / Amazon)
  • Skupljajuća cijev (AliExpress / Ebay / Amazon)

Popis dijelova za upravljačke ploče:

  • 7 x TLC5940 LED upravljački program (Ebay / AliExpress)
  • 6 x IRF 9540 P-kanalnih MOSFET-ova (Amazon / Ebay / AliExpress)
  • 8 x 10 uF kondenzatori (Amazon / Ebay / AliExpress)
  • 3 x 1000 uF kondenzatora (Amazon / Ebay / AliExpress)
  • 14x 2.2kOhm otpornici (Amazon / Ebay / AliExpress)
  • 1 x 1 kOhm otpornik (Amazon / Ebay / AliExpress)
  • 7 x 28 -pinske IC utičnice (Amazon / Ebay / AliExpress)
  • 1 x Arduino Nano (Amazon / Ebay / AliExpress)
  • 1 x 1N4001 dioda (bilo koja uobičajena dioda) (Amazon / Ebay / AliExpress)
  • 8 x 0,1uF kondenzatori (Ebay)
  • 1 x DC Jack PCB nosač (Amazon / Ebay / AliExpress)
  • 1 x HC-05 Bluetooth modul (Amazon / Ebay / AliExpress)

Korak 1: Teorija

Teorija
Teorija

Ako vas ne zanima teorija o multipleksiranju, prijeđite na 2. korak za početak stvarne gradnje

Budući da su hardver i softver jednako veliki dijelovi ovog projekta, pogledajmo prvo teoriju.

Mozak kocke je Arduino Nano. Omogućuje dovoljno I/O za interakciju s korištenim LED upravljačkim programima, kao i za uspostavljanje Bluetooth veze s HC-05 modulom i drugim upravljačkim hardverom. Ako ste pogledali druge konstrukcije LED kocke, znat ćete da većina ljudi koristi jednostavne registre Shift za spremanje vrijednosti svjetline boja pojedinih LED dioda. Ova konstrukcija ne koristi Shift registre, već takozvane LED upravljačke programe "TLC5940". Kao što ćemo vidjeti kasnije, ovo nam štedi mnogo vremena, kao i tone dodatnog hardvera (npr. Otpornika).

Osnovna funkcionalnost upravljanja kockom koristi multipleksiranje. U ovom slučaju multipleksiramo 6 slojeva kocke, što znači da su sve anode (+) svih LED dioda u sloju povezane, dok su pojedinačne katode svih LED dioda u istom stupcu povezane prema dnu. To znači da ako želite upaliti LED diodu na položaju x = 1, y = 2, z = 3, boja: zelena, morate osigurati 5V na anodi sloja 3 i spojiti GND na katodu stupca koja odgovara Zeleni pin x = 1, y = 2. U stvarnosti je u jednom trenutku samo jedan sloj kocke zapravo uključen, ali kao što ćete vidjeti kasnije u kodu, mi se isključujemo i na pojedinačne slojeve tako brzo da naše oko misli da je cijela kocka uključena.

Za kontrolu stvari poput svjetline, animacija itd. Koristimo HC-05 Bluetooth modul spojen na Arduino Nano. Modul je vrlo jednostavan za korištenje s Arduinom jer vam je potrebna samo 4-pinska veza i možete jednostavno spojiti modul putem zadane serijske komunikacije Arduina. Pred kraj ovog uputstva vidjet ćete kako je lako napisati vlastitu Bluetooth aplikaciju za upravljanje kockom.

BILJEŠKA

U mojoj shemi Arduino ploče možete vidjeti i malu shemu za povezivanje čipa MSGEQ7 za obradu audio ulaza, to apsolutno nije potrebno za stvarnu kocku i samo je dodatna funkcija koju sam dodao, stoga jednostavno možete zanemariti označenu shemu s "MSGEQ7"

Korak 2: Hardver: Izgradnja LED kocke

Hardver: LED Cube Build
Hardver: LED Cube Build
Hardver: LED Cube Build
Hardver: LED Cube Build
Hardver: LED Cube Build
Hardver: LED Cube Build

Pa pogledajmo kako izgraditi samu kocku, prije nego govorimo o upravljačkom krugu oko Arduino Nano.

Popis dijelova za konstrukciju kocke:

  • 216x RGB LED (zajednička anoda) (AliExpress / Ebay)-> 6x6x6 = 216
  • Vrpčasti kabel (1m 40Pin bi trebao biti dovoljan) (AliExpress / Ebay / Amazon)
  • Ženski i muški zaglavlja (najmanje 4x40pin) (AliExpress / Ebay / Amazon)
  • Laminirana bakrena / srebrna žica 0,8 mm (~ 25 metara) (AliExpress / Ebay / Amazon)
  • Skupljajuća cijev (AliExpress / Ebay / Amazon)

Prvo što treba učiniti, a sada mi je dosadno, ali potrebno, moramo testirati LED diode. Da bismo to učinili, jednostavno spojimo napajanje, npr. 9V baterijski blok sa kopčom, na ploču. Kao što možete vidjeti na slici 3, najduži pin LED dioda je anoda (+) pa ovaj pin priključite na +9V baterije. Sada prije spajanja GND -a na pojedinačne boje katode (crvena, zelena, plava) dodajte otpornik od 220Ohm na svaku katodu kako biste ograničili struju. Sada se zabavite isprobavajući sve boje svih 216 LED dioda.

U sljedećem koraku pripremit ćemo testirane LED diode kako bismo ih kasnije mogli lako sastaviti u stupce.

Korak 3: LED redovi

LED redovi
LED redovi
LED redovi
LED redovi
LED redovi
LED redovi

Prije nego što možemo lemiti LED diode u odgovarajuće redove, moramo saviti i odrezati žice.

Kao što možete vidjeti na prvoj slici, jednostavno sam izbušio rupu od 8 mm (za 8 mm LED diode) u komadu drveta i izbušio 3 vrlo male bušilice lijevo od LED rupe, a drugu desno od rupe. Ove su bušilice markeri za pravilno savijanje kabela i trebaju imati udaljenost od oko 1 cm od sredine rupe za LED.

Ova tehnika inspirirana je Steveom Manleyjem, na YouTubeu možete pronaći video kako to radi u maloj varijaciji.

Prije nego što izrežete i savijete žice oko svrdla, kao što je prikazano na slikama 2 i 3, provjerite da li orijentacija žica odgovara slici 1 (plavo na vrhu lijevo, zatim zeleno, pa anoda + desno, i opet lijevo crveno). Krug koji ste savili u žice trebao bi imati dovoljno velik promjer da stane kalajisana bakrena žica (0,8 mm). Ovaj korak uvelike olakšava lijepo lemljenje LED dioda na svoje mjesto.

Sada kada su sve LED diode pripremljene, želimo ih sastaviti u redove od 6 gdje su spojene anode (+):

  1. Napravite mali šablon kao što je prikazano na slici 6, izbušite 6 rupa (promjera 0,8 mm) s razmakom od 2,5 cm do sljedeće rupe. To nam omogućuje umetanje 6 LED dioda odjednom u šablon
  2. Za spajanje anoda potreban nam je komad bakrene žice s ravnom kalajisanom duljinom ~ 16 cm (s dodatnom marginom). Da bi žica bila lijepa i ravna, jedan kraj žice možete montirati u, primjerice, električnu bušilicu, pričvrstiti otprilike 2 m žica odjednom na stol, a zatim držati bušilicu tako da je žica rastegnuta i čvrsta te napajanje bušilice nekoliko sekundi s izravnavanjem žice vrlo brzo. Zatim možete prerezati žicu točno na mjestu gdje ste pričvrstili komad. Također možete koristiti dva kliješta i zatezati manje komade žice odjednom, ali to je mnogo dosadnije
  3. Nakon što imate žice duljine 16 cm, usmjerite ih kroz anodne (+) rupe LED dioda u spojnici i lemite anodne igle na žicu (Slika 7)

Za cijelu kocku trebat će nam 6x6 = 36 ovih LED redova

Korak 4: Slaganje slojeva

Sklop slojeva
Sklop slojeva
Sklop slojeva
Sklop slojeva
Sklop slojeva
Sklop slojeva

Kao što sam već spomenuo, mi ćemo multipleksirati slojeve kocke, ali za montažu je lakše izgraditi 6 zidova od 6x6 LED dioda, a zatim ih sastaviti jedan do drugog i jednostavno provesti jednu bakarnu kalajisanu žicu koja povezuje anode redovi u sloju zajedno.

Pazite da ovaj korak oduzima puno vremena i strpljenja da biste to učinili ispravno. Za izradu ćete morati lemiti oko 1000 lemnih spojeva pa odvojite vrijeme!

Za izgradnju LED zida:

  1. Za šablon: Potreban nam je komad drveta sa 6 izrezbarenih linija da stane 6 redova jedan iznad drugog za izgradnju zida. Sam šablon možete vidjeti na slici 2 (udaljenosti između redova: 2,5 cm)
  2. Postavite 6 redova LED dioda u rezbarije, anodnom žicom okrenutom prema dolje u izrezbarenu liniju, tako da su 3 katode (R, G, B) okrenute prema gore
  3. Za povezivanje katoda postavljenih jedna iznad druge (vidi sliku 2) potrebno nam je još žice (tako da opet imamo 6 stupaca x 3 katode x 6 zidova = 108 komada kalajisane žice kako je opisano u posljednjem koraku (2.) (isto tako))
  4. Gurnite komade žice od dna stupa kroz rupe na katodama do gornjeg reda i zalemite žicu na mjestu na svakoj LED

Učinite to 6 puta da biste dobili 6 zidova LED dioda.

Sada možemo zapravo sastaviti zidove u samu kocku. No da bismo držali kocku, moramo izgraditi neku vrstu tla. Za to sam jednostavno upotrijebio tanku šperploču i izbušio male rupe od 0,8 mm u nju, kako bih uklopio žice koje vise s najnižih LED redova (za svih 6 LED zidova). Mjerenja za rupe jedne LED diode dokumentirana su u koraku 3, a udaljenosti između svake LED su 2,5 cm.

S rupama na mjestu sada uzimamo prvi zid i manevriramo njime u rupe na lijevoj strani šperploče. LED red na dnu trebao bi sjediti točno na drvetu, tako da na kraju svi zidovi budu poravnati isto.

Nastavite raditi istu stvar s ostalim LED zidovima, ali zapamtite da su anode zidova uvijek okrenute u istom smjeru. (na slici 3 sve anode zidova okrenute ulijevo)

Nakon što je cijela kocka na svom mjestu, moramo lemiti anode svakog sloja zajedno. Da bismo to učinili, uzmemo još ~ 16 cm ravne žice i položimo je na prvi sloj, tako da žica dodiruje sve anodne žice od 6 zidova u jednom sloju. Pazite da nova žica ne dodiruje nijednu od katoda. Lemite žicu na mjesto i ponovite istu stvar za 5 preostalih slojeva.

Korak 5: Ožičenje kocke

LED upravljačka ploča
LED upravljačka ploča
LED upravljačka ploča
LED upravljačka ploča
LED upravljačka ploča
LED upravljačka ploča

Dijelovi za LED upravljačku ploču:

  • 7 x TLC5940
  • Kondenzatori 6/7 x 10 uF
  • 2 x 1000 uF kondenzatora
  • 7x 2.2kOhm otpornici
  • 7 x 28pin IC utičnice
  • 7 x 0,1uF kondenzatori
  • Vrpčasti kabel

Prelazeći na upravljačke krugove, prvo pogledajmo ploču LED upravljačkog programa. Kao što je već spomenuto, potrebno nam je 7 TLC5940 povezanih s Arduino Nano. Svi čipovi TLC5940 povezani su marginalom, što znači da su svi kontrolni pinovi upravljačkih programa međusobno povezani (npr. BLANK pin prvog TLC -a spojen je na BLANK drugog, trećeg, četvrtog,… TLC -a) i svi su spojeni na Arduinowith iste žice, osim serijskog ulaza koji je prvo spojen s Arduino digitalnog pina na prvi TLC, zatim je serijski izlaz ovog prvog TLC spojen na pin SIN drugog TLC -a i tako dalje (vidi sliku 4)…

Dakle, shema TLC ploče je prilično jednostavna kao što možete vidjeti u priloženoj shemi.

(AKO ŽELITE UDESITI ODBOR SKOČITE NA 8. KORAK)

Također sam priložio snimak zaslona sheme u frizz -u koja uključuje oznake naljepnica i također GIMP.xcf datoteke sa slojevima za svaku odvojenu vezu Control Pin.

Započnite lemljenjem svih IC utičnica na mjestu, zatim dodajte 100nF kondenzatore svakom TLC -u, a zatim 2,2 kOhm otpornik za IREFand GND i 7 -polno zaglavlje u gornjem desnom kutu. Nakon toga jednostavno možete pratiti.xcf datoteku počevši od "sloja SIN" u Gimp datoteci koji prikazuje kako spojiti serijske ulazne/izlazne pinove upravljačkih programa pomoću vrpčnih kabela, zatim omogućavanje sloja CLK u GIMP -u itd. Provjerite imate li dobre veze + i - pinova sa zaglavljem pinova u gornjem desnom kutu Ostatak sheme trebao bi biti jasan, ali svakako dodajte dovoljno 1000uF i 10uF kondenzatora na ploču, nije toliko važno gdje točno pozicionirate ih.

Nakon što ova ploča završi, možete prijeći na Arduino ploču u sljedećem koraku.

Korak 7: Arduino + Bluetooth upravljačka ploča

Arduino + Bluetooth upravljačka ploča
Arduino + Bluetooth upravljačka ploča

Dijelovi za upravljačku ploču:

  • 6 x IRF 9540 P-kanalnih MOSFET-ova
  • 1 x 10 uF kondenzatora
  • 1 x 1000 uF kondenzatora
  • 7 x 2.2kOhm otpornici
  • 1 x 1 kOhm otpornik
  • 2 x 14 ženski pin header
  • 1 x Arduino Nano
  • 1 x 1N4001 dioda
  • 1 x 0,1uF kondenzatori
  • 1 x DC Jack PCB nosač
  • 1 x HC-05 Bluetooth modul
  • 1 x 3,5 mm audio priključak

Arduino kontrolna ploča uglavnom upravlja i multipleksiranjem te pruža pandan zaglavlja pinova LED upravljačke ploče.

Lemljenje na perfboard:

  1. Postavite dva ženska Pin zaglavlja koja će djelovati kao utičnica za Arduino na sredinu ploče.
  2. Postavite 6 MOSFET -ova u nizu jedan do drugog s desne strane Arduina (strana s analognim pinovima) i dodajte otpornik od 2,2 kOhma između prvog i zadnjeg pina.
  3. Sada postavite zaglavlje sa 6 pinova ispred MOSFET -ova (sredina reda) i spojite 6 DRAIN pinova FET -ova (srednji pin) na zaglavlje, a igle GATE (lijevi pin) FET -ova na odgovarajuće Arduino analogne pinove.
  4. Zatim lemite 7 -pinsko zaglavlje za LEDDriver vezu s druge strane Arduina, ostavite malo prostora za kabele i lemite sve veze od Arduina do zaglavlja pina.
  5. Dodajte neke kondenzatore (1-2 1000uF, 1 10uF, 100nF pored Arduina) za moguće odvode struje.
  6. Lemite 4-polno zaglavlje uz stražnju stranu Arduina za HC-05 modul i napravite 4 veze na VCC, RX, TX, GND i ne zaboravite napraviti razdjelnik napona od RX pina HC-05 i TX pin Arduina (vidi ovdje)
  7. Postavite DC utičnicu na bilo koji rub ploče s prekidačem pored i spojite desnu iglu prekidača na + pin DC utičnice
  8. Na kraju napravite sve potrebne priključke za napajanje od GND pina DC utičnice i desnog pina prekidača (VCC) do Arduina, MOSFET-a, kondenzatora i HC-05 kako je prikazano na shemi. Ne zaboravite dodati diodu koja daje snagu samo iz VCC pina prekidača za protok u Arduinos 5V pin, a ne na drugi način (ovo štiti Arduino pri programiranju putem USB veze)

Za priključivanje napajanja koristio sam DC Power Jack s jednostavnim prekidačem, možete koristiti i USB konektor ako želite. Preneo sam priključak za napajanje na drugu malu ploču kako bi se lijepo uklopio u moje drveno kućište, ali možete ga jednostavno staviti izravno na Arduino ploču. Kao što je spomenuto u prvom koraku, u shemi se nalazi i povezni krug MSGEQ7, ali jednostavno zanemarite to ako ne koristite MSGEQ7. (Za više informacija o funkcionalnosti MSGEQ7 kliknite ovdje)

Ne zaboravite napraviti još jedan 7Pin vrpčni kabel s muškim zaglavljima na svakom kraju za povezivanje Arduino ploče s pločom Driver

Korak 8: Izborno: Nagrizanje pločica

Izborno: Nagrizanje pločica
Izborno: Nagrizanje pločica
Izborno: Nagrizanje pločica
Izborno: Nagrizanje pločica
Izborno: Nagrizanje pločica
Izborno: Nagrizanje pločica

Dakle, ako vam se ne sviđa lemljenje mnogo kabela, naravno, možete i utisnuti potrebne PCB -ove ako vam je draže.

U mojoj Cube Arduino ploča i ploča za priključivanje napajanja/zvuka su urezane ploče pomoću priloženih shematskih/EAGLE datoteka. Prvi put sam pogriješio u shemi pa sam morao prepraviti LED Driver ploču kao što sam učinio u posljednjem koraku. Nema velikih prednosti ucrtavati ploču umjesto korištenja perborea, pa slobodno jetite ploču ili je lemite na perfboard.

U priloženom.zipu možete pronaći i BOARD datoteku kao i SCHEMATIC datoteku.

Uočite da bi tragovi gornjeg sloja (crveni) trebali biti žičani mostovi (budući da kod kuće ne mogu nagrizati dvostrane ploče). Neistraženi tragovi prikazuju veze koje se moraju izvršiti putem kabela za ženska pin zaglavlja.

Shema uključuje značajku MSGEQ7, koju jednostavno možete izostaviti brisanjem dijela sheme s oznakom "(MSGEQ7)" na snimci zaslona.pdf sheme.

Korak 9: Spajanje kocke

Povezivanje kocke
Povezivanje kocke
Povezivanje kocke
Povezivanje kocke
Povezivanje kocke
Povezivanje kocke

Da biste spojili sve dijelove kocke, počnite tako što ćete spojiti 7 -pinski kabel na Arduino ploču i upravljačku ploču (provjerite je li orijentacija ispravna!). Zatim priključite HC05 modul na 4 -polno zaglavlje i priključite ploču za napajanje ako je odvojena.

Za povezivanje 7x16 zaglavlja pinova kocke, počnite s prvim TLC -om (onim čiji je SIN pin izravno spojen na Arduino). Pronađite ispravan 16 -pinski kabel iz kocke i spojite ga na prvi pin TLC -ovog zaglavlja (provjerite je li kabel za katodu br.0 spojen na prvi TLC OUT0 pin!). Idite i spojite ostale 16 -pinske kabele na odgovarajuća TLC zaglavlja ispravnim redoslijedom.

Na kraju, ali ne i najmanje važno, spojite 6Pin kabel za anode iz kocke na 6Pin zaglavlje na upravljačkoj ploči pored MOSFET -ova.

Za završetak kocke dodao sam zidove kućištu s još malo šperploče s crnom bojom i zalijepio ih.

Sada smo završili sa svim hardverom potrebnim za cijelu izgradnju!

Korak 10: Softver: Multipleksni ciklus

Softver: Multipleksni ciklus
Softver: Multipleksni ciklus

Sada u teoriji Arduino dosljedno izvršava sljedeći ciklus:

  1. Ako je LayerDuration prošao, učitajte Vrijednosti za sljedeći sloj na TLC -ove, isključite trenutni sloj, uključite sljedeći sloj, resetirajte LayerDuration, predajte nove vrijednosti TLC -ovima
  2. Ako je FrameDuration prošao, učitajte novi okvir trenutne animacije spremanjem vrijednosti za sve LED i boje u međuspremnik ValueLed , resetirajte FrameDuration
  3. Ako su dostupni Bluetooth podaci, reagirajte na njih (Promjena animacija, Svjetlina, …) (više informacija kasnije)

Kao što vidite, glavni fokus koda je brzina. Važno je da vrijeme za promjenu sloja bude minimalno.

Što brže uključite/isključite slojeve, dobit ćete više "okvira". za 6x6x6 RGB LED kocku poput ove shvatio sam da je Layer Duration od 1700 microSec. je dovoljno dobro da zadrži treperenje na minimumu i treba ga ostaviti na ovoj vrijednosti. FrameDuration kontrolira veću brzinu animacije pa se može promijeniti za različite animacije.

U sljedećem koraku ćemo pogledati kako zapravo možemo napisati vlastite animacije.

11. korak: prilagođene animacije

Prilagođene animacije
Prilagođene animacije
Prilagođene animacije
Prilagođene animacije

Za implementaciju animacije moramo postaviti međuspremnik ValueLed na vrijednosti koje želimo za sljedeći okvir svaki put kad prođe FrameDuration. To činimo pozivanjem makro funkcije "SETLED (x, y, z, COLOR, Svjetlina)"

x, y, z su koordinate LED diode koju želimo postaviti, a BOJA (CRVENA, ZELENA ili PLAVA) je boja koju želimo postaviti, a Svjetlina je stvarna vrijednost za ovu boju koju postavljamo.

Tako da, na primjer, implementirate Animaciju koja jednostavno prikazuje crvenu, zelenu i plavu boju nasumično po cijeloj kocki, možete jednostavno učiniti sljedeće:

void randomLedsFull () {

za (uint8_t j = 0; j <CUBE_SIZE; j ++) {for (uint8_t x = 0; x <CUBE_SIZE; x ++) {for (uint8_t y = 0; y <CUBE_SIZE; y ++) {uint8_t rand = random8 (3); SETLED (x, y, j, rand, maxBright); }}}}

Ova se metoda poziva svaki put kad je FrameDuration prošlo i odabire se iz naredbe switch-case u petlji (). Ako pišete nove animacije, možete ih dodati jednostavnim dodavanjem u razvodnu kutiju.

Korak 12: Dodatni: AnimationCreator

Dodatno: AnimationCreator
Dodatno: AnimationCreator

Dodatno sam napisao AnimationCreator koristeći JavaFX i Java3D.

Olakšava stvaranje i uređivanje prilagođenih animacija pružajući lako razumljivo korisničko sučelje.

Možete stvoriti, urediti, preimenovati i ponovno konfigurirati animacije za LED kocke 4x4x4, 6x6x6 ili 8x8x8

Da biste stvorili novu animaciju, jednostavno pritisnite Datoteka> Novo, u odjeljku "Kocka" možete odabrati veličinu kocke, za postavljanje boje LED -a odaberite željenu boju pomoću alata za odabir boje s lijeve strane, a zatim lijevo kliknite LED diode koje želite ta boja za taj okvir. Za dodavanje drugog okvira pritisnite "Dalje" ili "+". Ostatak kontrola korisničkog sučelja razumljiv je sam po sebi, potvrdni okviri pored slojeva kockica provjeravaju na koje bi slojeve trebalo utjecati pomicanjem i "zadrži okvir". Samo ga isprobajte i brzo ćete sve shvatiti.

Osim toga, za simulaciju animacije možete kliknuti gumb "Pogledaj 3D" koji otvara drugi prozor s Java3D modelom kocke. Možete rotirati kameru dok držite lijevu tipku miša (pritisnite R za resetiranje kamere). Za reprodukciju/pauziranje animacije pritisnite tipku P, za poništavanje pritiska animacije Q. Tekstualno polje ispod gumba "Prikaz 3D" označava trenutnu FrameTime, dakle brzina vaše animacije.

Kad završite s animacijom, dajte joj ime i pritisnite Datoteka> Spremi kao … i spremite animaciju u istu mapu u kojoj je Cubo_Control.ino Sketch.

Da biste u skicu uključili novu animaciju, otvorite Cubo_Control.ino i dodajte sljedeći kôd na vrh skice:

#include "RGBit.h" // Zamijeni

Pomaknite se dolje do BTEvent () i dodajte iskaz slučaja u prekidač animacija

switch (curAnim) {

… Slučaj 10: animacija = & ani_cubesmove [0] [0]; FRAME_TIME = ANI_CUBESMOVE_FRAMTIME; maxCount = ANI_CUBESMOVE_FRAMES; pauza; slučaj 11: // VAŠA NOVA ANIMACIJA animacija = & ani_rgbit [0] [0]; FRAME_TIME = RGBIT_FRAMETIME; maxCount = ANI_RGBIT_FRAMES; pauza; }

Korak 13: Bluetooth aplikacija

Bluetooth aplikacija
Bluetooth aplikacija

Da biste zapravo upravljali kockom, zahvaljujući modulu HC-05 vrlo je jednostavno izgraditi Bluetooth aplikaciju za povezivanje telefona s kockom.

Veza na aplikaciju: Github

Aplikacija je otvorenog koda pa slobodno dodajte dodatne animacije/značajke.

  • Pokrenite aplikaciju i traži da uključite Bluetooth
  • Pritisnite "Traži" i pojavit će se popis dostupnih Bluetooth veza. Identificirajte HC-05 modul iz kocke i kliknite na njega.
  • Ako dođe do pogreške pri pokušaju povezivanja s kockom, pokušajte ručno upariti HC-05 modul u postavkama Bluetootha
  • Nakon povezivanja aplikacija se prebacuje na upravljački zaslon i Bluetooth veza je uspostavljena

Kontrole

  • Brzina i svjetlina: Promijenite vrijednosti klizača da biste ubrzali/usporili animaciju ili promijenili svjetlinu
  • Animacije: kliknite gumb za promjenu animacije, prema zadanim postavkama animacije se ponavljaju (počevši od gornjeg lijevog kuta gumb odgovara currAnim)
  • Pomicanje teksta: Kliknite gumb "Tekst" koji otvara dijaloški okvir za unos teksta koji će se pomicati kroz kocku
  • Naredba: Naredbe možete unijeti ručno pomoću naredbenog tekstualnog polja (sintaksu potražite u metodi BTEvent () Cubo_Control.ino)
  • Zmija: klasična igra zmija (crvena: jabuka, zelena: zmijska glava, plava: podmukli rep) (Kontrole: 4 gumba za usmjeravanje, gore i dolje pokreće se okretanjem telefona naprijed (gore) ili natrag (dolje))
  • Audio vizualizator: MSGEQ7 koristi se za vizualizaciju 6 audio pojaseva iz AUX priključka (gumb za animaciju 7)

Korak 14: Izlog

Preporučeni: