Turinys:

„Tobias“- „Arduino“muzikos dėžutė su TVout: 5 žingsniai (su paveikslėliais)
„Tobias“- „Arduino“muzikos dėžutė su TVout: 5 žingsniai (su paveikslėliais)

Video: „Tobias“- „Arduino“muzikos dėžutė su TVout: 5 žingsniai (su paveikslėliais)

Video: „Tobias“- „Arduino“muzikos dėžutė su TVout: 5 žingsniai (su paveikslėliais)
Video: Testing my Midi-Visualizer with Synthesia 2024, Liepa
Anonim
Tobias - „Arduino“muzikos dėžutė su TVout
Tobias - „Arduino“muzikos dėžutė su TVout
Tobias - „Arduino“muzikos dėžutė su TVout
Tobias - „Arduino“muzikos dėžutė su TVout
Tobias - „Arduino“muzikos dėžutė su TVout
Tobias - „Arduino“muzikos dėžutė su TVout

Pirmiausia leiskite pristatyti Tobiasą, mano merginos milžinišką meškiuką, kuris yra šio projekto įkvėpėjas.

Tobiasas yra asmenybė, susiformavusi laikui bėgant, o mes juokaudami mintyse stebimės, ką jis veikia, kol ji nėra tame darbe.

Projektas turėjo būti paprasta dovana - „Arduino“su pjezo garsiakalbiu, grojančiu savo mėgstamą dainą. Greitai jis nekontroliavo ir tapo muzikos dėžute:

  • 3D spausdintas
  • galintis leisti muziką be USB jungties naudojant AA baterijas
  • su fortepijono „klavišais“, kurie įsižiebia su kiekviena nata
  • galintis atkurti vaizdus sename CRT televizoriuje per RCA jungtis

Prekės

  • Arduino Nano
  • Garsiakalbis (paėmiau iš sugadinto seno radijo)
  • Perjungimo jungiklis (3 kontaktų) - režimo parinkiklis
  • Sukamasis potenciometras - garsumo valdymas
  • 2x 220Ω rezistorius
  • 1x 440Ω rezistorius arba 2x 220Ω rezistorius
  • 1x 1kΩ rezistorius
  • 11 3 mm šviesos diodų
  • 2x RCA jungtys
  • laidai
  • 3,5 mm balto akrilo
  • karšti klijai arba super klijai

Įrankiai:

  • litavimo rinkinys
  • 3D spausdintuvas
  • kompiuterį su „Arduino IDE“, kad galėtumėte įkelti kodą

1 žingsnis: kodas - įkėlimas

Jums reikės:

  • „TVout“biblioteka - leidžia „Arduino“įdėti vaizdus ir garsą į televizorių, naudojant RCA arba SCART ryšį
  • arduino -volume1 - ši biblioteka pagerina garso kokybę, ji naudojama 1 režimu (tik „Arduino“be TV jungties). Tačiau 2 režimu jo negalima naudoti tuo pačiu metu, kai „TVout“biblioteka naudoja tą patį laikmatį kaip ir garsumas1

Jei norite pakeisti muziką ar vaizdą, žiūrėkite kitus veiksmus, jei ne tik įkeliate kodą į „Arduino“, bet pirmiausia įsitikinkite, kad įdiegėte abi bibliotekas.

2 veiksmas: kodas (pakeiskite muziką)

Kodas (pakeisti muziką)
Kodas (pakeisti muziką)

Dainą rasite čia:

Padalinau muziką į dalis, kiekvienai pasikartojančiai daliai priskirdamas raides. Tada kiekvienai užrašui priskyriau vertę nuo 1 iki 16 ir padėjau juos į kiekvieno masyvo 0 eilutę. Reikšmės atitinka grojamos natos dažnumą (masyvo dažnis ). 1 eilutėje nurodau kiekvienos pastabos trukmę aukščiau. Pavyzdys:

konst baitas melB1 [2] [6] PROGMEM = {

{11, 8, 0, 8, 7, 6}, // pastaba

{1, 3, 1, 1, 1, 1}}; // trukmė

Jei norite naudoti kitą dainą:

  • pakeisti freq masyvą naujais norimais dažniais (pastabos)
  • pakeisti masyvus, atitinkančius kiekvieną dainos dalį
  • tuščioje muzikoje () pasirinkite grojimo tvarką
  • pakeiskite „X“masyvo deklaracijoje, kad būtų nurodytas elementų skaičius kiekvienoje eilutėje, taip pat pakeiskite atitinkamą tuštumą, pavyzdys:

melB1 [2] [X]

void melodiaB1 () {

už (a = 0; a <X; a ++) {

3 žingsnis: kodas (pakeiskite vaizdą / nuotrauką)

Kodas (pakeisti vaizdą / nuotrauką)
Kodas (pakeisti vaizdą / nuotrauką)
Kodas (pakeisti vaizdą / nuotrauką)
Kodas (pakeisti vaizdą / nuotrauką)
Kodas (pakeisti vaizdą / nuotrauką)
Kodas (pakeisti vaizdą / nuotrauką)

Aš naudoju GIMP norėdamas pakeisti nuotrauką į nespalvotą, žingsniai:

Spalvos / sodrumas = 0

Vaizdas turi būti pakeistas į 95x95 pikselių skiriamąją gebą. „TVout“biblioteka leidžia didesnę skiriamąją gebą, tačiau dėl kodo, kurį ketinau naudoti, dydžio, buvau priverstas sumažinti skiriamąją gebą.

  • Stačiakampio pasirinkimo įrankis (formato koeficientas - fiksuotas 1: 1)
  • Redaguoti/kopijuoti
  • Failas/sukurti/iš iškarpinės
  • Vaizdas/mastelio vaizdas (95 x 95)

Vaizdą būtina paversti nespalvotu, o ne pilkos spalvos.

  • „Fuzzy Select Tool“ir „Free Select Tool“, kad pasirinktumėte sritis, kurias noriu rodyti juodai.
  • Pieštukas (juodas), kad mūsų pasirinkimas būtų juodas
  • Pasirinkti / apversti (apverčia mūsų pasirinkimą)
  • Pieštuku (baltu), kad likusi teritorijos dalis būtų balta
  • Spalvos / ryškumas-kontrastas (maksimalus kontrastas, kad juoda būtų juoda)

Dabar, kai turime juodai baltą vaizdą, kurio skiriamoji geba yra 95x95 pikseliai

Failas/eksportas kaip (. BMP)

Norėdami konvertuoti naują vaizdą į kodą, naudoju „Image2Code“https://www.crystalfontz.com/product/image2code

Tai suteikia mums beveik gerą masyvą. Tada nukopijavau ir įklijavau į „Arduino IDE“.

Naudojant Redaguoti / Rasti:

  • ieškokite visų „0xFF“ir pakeiskite jį „0“(pakeisti viską)
  • darykite tą patį „0x00“ir pakeiskite jį „1“
  • Ištrinti visus „{“ir „}“

„0“bus juodas pikselis

„1“bus baltas pikselis

4 žingsnis: 3D modelis

3D modelis
3D modelis

Norėdami sukurti dėžutės 3D modelį, naudoju „SketchUp“. Dėl mano 3D spausdintuvo apribojimų ir sunkumų, kuriuos įsivaizdavau, kad bus užmegzti vidiniai ryšiai, nusprendžiau sukurti modelį iš 4 dalių.

Įkėliau „SketchUp“failą, jei norite ką nors pakeisti dizaine, jei ne, tiesiog atsispausdinkite.stl failus

5 žingsnis: Surinkimas

Surinkimas
Surinkimas
Surinkimas
Surinkimas
Surinkimas
Surinkimas

Surinkimas nėra sudėtingas, tačiau sudėtingas dėl dėžutės dydžio ir prijungiamų laidų kiekio.

Rekomenduojamas: