Taula de continguts:

Tobias - Arduino Music Box With TVout: 5 passos (amb imatges)
Tobias - Arduino Music Box With TVout: 5 passos (amb imatges)

Vídeo: Tobias - Arduino Music Box With TVout: 5 passos (amb imatges)

Vídeo: Tobias - Arduino Music Box With TVout: 5 passos (amb imatges)
Vídeo: How to Build Sim Racing Cockpit Works with Any Game/Console 2024, De novembre
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

En primer lloc, permeteu-me presentar Tobias, l’ós de peluix gegant de la meva xicota, que és la inspiració d’aquest projecte.

Tobias té una personalitat, acumulada al llarg del temps, mentre ens preguntem en broma què fa ell mentre ella està fora de la feina.

El projecte pretenia ser un regal senzill, un Arduino amb un altaveu piezo que tocava la seva cançó preferida. Ràpidament va sortir del meu control i es va convertir en una caixa de música:

  • Imprès en 3D
  • capaç de reproduir música sense necessitat de connexió USB mitjançant bateries AA
  • amb “tecles” de piano que s’il·luminen amb cada nota
  • capaç de reproduir imatges en un televisor CRT antic mitjançant connectors RCA

Subministraments

  • Arduino Nano
  • Altaveu (l’he pres d’una ràdio antiga malmesa)
  • Interruptor alternador (3 pins): selector de mode
  • Potenciòmetre rotatiu: control de volum
  • 2x 220Ω resistència
  • 1x 440Ω resistència o 2x 220Ω resistència
  • 1x 1kΩ resistència
  • 11 leds de 3 mm
  • 2x connectors femelles RCA
  • cables
  • Acrílic blanc de 3,5 mm
  • cola calenta o súper cola

Eines:

  • kit de soldadura
  • Impressora 3D
  • ordinador amb Arduino IDE per carregar el codi

Pas 1: Codi: càrrega

Necessitarà:

  • Biblioteca TVout: permet a Arduino posar imatges i so en un televisor amb connexió RCA o SCART
  • arduino-volume1: aquesta biblioteca millora la qualitat del so, s’utilitza en mode 1 (Arduino sol sense connexió de TV). No obstant això, al mode 2, no és possible utilitzar-lo al mateix temps que la biblioteca TVout utilitza el mateix temporitzador que el volum1

Si voleu canviar la música o la imatge, consulteu els passos següents, si no només pengeu el codi al vostre Arduino, però primer assegureu-vos que teniu instal·lades les dues biblioteques.

Pas 2: Codi (canvieu la música)

Codi (canvieu la música)
Codi (canvieu la música)

Aquí podeu trobar la cançó:

Vaig dividir la música per parts, assignant lletres a cada part que es repeteix. A continuació, he assignat un valor d’1 a 16 per a cada nota i les he situat a la línia 0 de cada matriu. Els valors corresponen a la freqüència de la nota que es reproduirà (matriu freq ). A la línia 1 he posat la durada de cada nota més amunt. Exemple:

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

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

{1, 3, 1, 1, 1, 1}}; // durada

Si voleu fer servir una altra cançó:

  • canvieu la matriu freq amb les noves freqüències desitjades (notes)
  • canvieu les matrius corresponents a cada part de la cançó
  • a la música buida () trieu l'ordre que s'ha de reproduir
  • canvieu la "X" a la declaració de matriu pel nombre d'elements de cada línia i també canvieu al buit corresponent, per exemple:

melB1 [2] [X]

void melodiaB1 () {

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

Pas 3: Codi (canvieu la imatge / foto)

Codi (canvieu la imatge / foto)
Codi (canvieu la imatge / foto)
Codi (canvieu la imatge / foto)
Codi (canvieu la imatge / foto)
Codi (canvieu la imatge / foto)
Codi (canvieu la imatge / foto)

He utilitzat GIMP per canviar una foto a blanc i negre, passos:

Colors / Saturació = 0

La imatge s'ha de canviar a una resolució de 95x95 píxels. La biblioteca TVout permet obtenir resolucions més altes, però a causa de la mida del codi que pretenia utilitzar, em vaig veure obligat a baixar la resolució.

  • Eina de selecció de rectangles (relació d'aspecte: fix 1: 1)
  • Edita / Copia
  • Arxiu / Crea / Des del porta-retalls
  • Imatge / imatge a escala (95x95)

És imprescindible convertir la imatge en blanc i negre i no en escala de grisos.

  • Fuzzy Select Tool i Free Select Tool per seleccionar les àrees que vull que apareguin en negre.
  • Llapis (negre) perquè la nostra selecció sigui negra
  • Selecciona / Inverteix (inverteix la nostra selecció)
  • Llapis (blanc) per pintar de blanc la resta de la zona
  • Colors / Brillantor-contrast (contrast amb el màxim per assegurar que el negre és negre)

Ara que tenim la imatge en blanc i negre amb una resolució de 95x95 píxels

Arxiu / Exporta com a (. BMP)

Per convertir la nova imatge en codi, he utilitzat Image2Code

La qual cosa ens proporciona una bona gamma. Després el vaig copiar i enganxar a l'IDE Arduino.

Mitjançant Edició / Cerca:

  • cerqueu tots els "0xFF" i substituïu-lo per "0" (Substitueix-ho tot)
  • feu el mateix per a "0x00" i substituïu-lo per "1"
  • Suprimeix tots els "{" i "}"

"0" serà un píxel negre

"1" serà un píxel blanc

Pas 4: model 3D

Model 3D
Model 3D

Per crear el model 3D de caixa he utilitzat SketchUp. A causa de les limitacions de la meva impressora 3D i de la dificultat que imaginava que seria fer les connexions internes, vaig decidir crear el model en 4 parts.

Vaig penjar el fitxer SketchUp si voleu canviar alguna cosa del disseny, si no, simplement imprimiu els fitxers.stl

Pas 5: Muntatge

muntatge
muntatge
muntatge
muntatge
muntatge
muntatge

El muntatge no és complex, però és difícil a causa de la mida de la caixa i la quantitat de cables que cal connectar.

Recomanat: