Cuprins:

Tobias - Arduino Music Box With TVout: 5 pași (cu imagini)
Tobias - Arduino Music Box With TVout: 5 pași (cu imagini)
Anonim
Tobias - Arduino Music Box With TVout
Tobias - Arduino Music Box With TVout
Tobias - Arduino Music Box With TVout
Tobias - Arduino Music Box With TVout
Tobias - Arduino Music Box With TVout
Tobias - Arduino Music Box With TVout

În primul rând, permiteți-mi să-l prezint pe Tobias, ursuletul uriaș de pluș al iubitei mele, care este inspirația pentru acest proiect.

Tobias are o personalitate, construită în timp, în timp ce ne întrebăm în glumă în mintea noastră ce face el în timp ce ea este plecată la serviciu.

Proiectul a fost menit să fie un cadou simplu, un Arduino cu un difuzor piezo redând melodia ei preferată. A scăpat rapid de sub controlul meu și a devenit o cutie de muzică:

  • Imprimat 3D
  • capabil să redea muzică fără a fi nevoie de o conexiune USB folosind baterii AA
  • cu „taste” de pian care se aprind cu fiecare notă
  • capabil să redea imagini pe un televizor CRT vechi prin conectori RCA

Provizii

  • Arduino Nano
  • Difuzor (l-am luat de la un vechi radio deteriorat)
  • Comutator de comutare (3 pini) - selector de mod
  • Potențiometru rotativ - control al volumului
  • Rezistor 2x 220Ω
  • 1x rezistor de 440Ω sau 2x rezistor de 220Ω
  • 1x rezistor 1kΩ
  • 11 leduri de 3mm
  • 2x conectori RCA mama
  • fire
  • Acrilic alb de 3,5 mm
  • lipici fierbinte sau super lipici

Instrumente:

  • kit de lipit
  • imprimantă 3d
  • computer cu IDE Arduino pentru a încărca codul

Pasul 1: Cod - Încărcare

Vei avea nevoie:

  • Biblioteca TVout - permite Arduino să plaseze imagini și sunet pe un televizor cu conexiune RCA sau SCART
  • arduino-volume1 - Această bibliotecă îmbunătățește calitatea sunetului, este utilizată în modul 1 (Arduino singur fără conexiune TV). Cu toate acestea, în modul 2, nu este posibil să îl utilizați în același timp, deoarece biblioteca TVout utilizează același cronometru ca și volumul 1

Dacă doriți să schimbați muzica sau imaginea, vedeți pașii următori, dacă nu doar încărcați codul pe Arduino, ci asigurați-vă mai întâi că aveți ambele biblioteci instalate.

Pasul 2: Cod (modificați muzica)

Cod (modificați muzica)
Cod (modificați muzica)

Aici puteți găsi piesa:

Am împărțit muzica în părți, atribuind litere fiecărei părți care se repetă. Apoi am atribuit o valoare de la 1 la 16 pentru fiecare notă și le-am plasat pe linia 0 a fiecărei matrice. Valorile corespund frecvenței notei care trebuie redată (matricea frecvență ). În linia 1 am pus mai sus durata fiecărei note. Exemplu:

octet const melB1 [2] [6] PROGMEM = {

{11, 8, 0, 8, 7, 6}, // notă

{1, 3, 1, 1, 1, 1}}; // durată

Dacă doriți să utilizați o altă melodie:

  • schimbați matricea freq cu noile frecvențe dorite (note)
  • modificați matricele corespunzătoare fiecărei părți a melodiei
  • în muzica goală () alegeți ordinea care trebuie redată
  • modificați „X” din declarația matricei pentru numărul de elemente din fiecare linie și, de asemenea, modificați golul corespunzător, de exemplu:

melB1 [2] [X]

void melodiaB1 () {

pentru (a = 0; a <X; a ++) {

Pasul 3: Cod (modificați imaginea / fotografia)

Cod (modificați imaginea / fotografia)
Cod (modificați imaginea / fotografia)
Cod (modificați imaginea / fotografia)
Cod (modificați imaginea / fotografia)
Cod (modificați imaginea / fotografia)
Cod (modificați imaginea / fotografia)

Am folosit GIMP pentru a schimba o fotografie în alb și negru, pași:

Culori / Saturație = 0

Imaginea trebuie schimbată la o rezoluție de 95x95 pixeli. Biblioteca TVout permite rezoluții mai mari, dar datorită dimensiunii codului pe care intenționam să îl folosesc, am fost forțat să scad rezoluția.

  • Instrument de selectare dreptunghi (raport de aspect - fix 1: 1)
  • Editați / copiați
  • Fișier / Creare / Din clipboard
  • Imagine / Scară imagine (95x95)

Este imperativ să convertiți imaginea în alb și negru și nu în tonuri de gri.

  • Fuzzy Select Tool și Free Select Tool pentru a selecta zonele pe care vreau să le apar în negru.
  • Creion (negru) pentru a face selecția noastră neagră
  • Selectați / inversați (inversează selecția noastră)
  • Creion (alb) pentru a colora alb restul zonei
  • Culori / Luminozitate-contrast (contrast cu maxim pentru a asigura negru este negru)

Acum că avem imaginea în alb și negru cu o rezoluție de 95x95 pixeli

Fișier / Export ca (. BMP)

Pentru a converti noua imagine în cod, am folosit Image2Code

Ceea ce ne oferă o gamă aproape bună. Apoi am copiat-o și am lipit-o în IDE-ul Arduino.

Utilizarea Editare / Găsire:

  • căutați toate „0xFF” și înlocuiți-le cu „0” (Înlocuiți-le pe toate)
  • faceți același lucru pentru „0x00” și înlocuiți-l cu „1”
  • Ștergeți toate „{“și „}”

„0” va fi un pixel negru

„1” va fi un pixel alb

Pasul 4: Model 3D

Model 3D
Model 3D

Pentru a crea modelul 3D cutie am folosit SketchUp. Datorită limitărilor imprimantei mele 3D și dificultății pe care mi le-am imaginat că va face conexiunile interne, am decis să creez modelul în 4 părți.

Am încărcat fișierul SketchUp dacă doriți să schimbați ceva pe design, dacă nu, imprimați doar fișierele.stl

Pasul 5: Asamblare

Asamblare
Asamblare
Asamblare
Asamblare
Asamblare
Asamblare

Asamblarea nu este complexă, dar este dificilă din cauza dimensiunii cutiei și a cantității de fire care trebuie conectate.

Recomandat: