Inhaltsverzeichnis:

Tobias - Arduino Musikbox mit TVout - Gunook
Tobias - Arduino Musikbox mit TVout - Gunook

Video: Tobias - Arduino Musikbox mit TVout - Gunook

Video: Tobias - Arduino Musikbox mit TVout - Gunook
Video: Arduino Micro Music box 2024, November
Anonim
Tobias - Arduino Spieluhr mit TVout
Tobias - Arduino Spieluhr mit TVout
Tobias - Arduino Spieluhr mit TVout
Tobias - Arduino Spieluhr mit TVout
Tobias - Arduino Spieluhr mit TVout
Tobias - Arduino Spieluhr mit TVout

Lassen Sie mich zunächst Tobias vorstellen, den riesigen Teddybären meiner Freundin, der die Inspiration für dieses Projekt ist.

Tobias hat eine Persönlichkeit, die sich im Laufe der Zeit aufgebaut hat, während wir uns scherzhaft fragen, was er macht, während sie bei der Arbeit ist.

Das Projekt sollte ein einfaches Geschenk sein, ein Arduino mit einem Piezo-Lautsprecher, der ihr Lieblingslied spielt. Schnell geriet es außer Kontrolle und wurde zu einer Spieluhr:

  • 3D gedruckt
  • Musikwiedergabe ohne USB-Verbindung mit AA-Batterien möglich
  • mit Klaviertasten, die bei jeder Note aufleuchten
  • in der Lage, Bilder auf einem alten CRT-Fernseher über Cinch-Anschlüsse wiederzugeben

Lieferungen

  • Arduino Nano
  • Lautsprecher (ich habe es von einem beschädigten alten Radio genommen)
  • Kippschalter (3-polig) - Betriebsartenwahl
  • Drehpotentiometer - Lautstärkeregelung
  • 2x 220Ω Widerstand
  • 1x 440Ω Widerstand oder 2x 220Ω Widerstand
  • 1x 1kΩ Widerstand
  • 11 3mm LEDs
  • 2x Cinch-Buchsen
  • Drähte
  • 3,5 mm weißes Acryl
  • Heißkleber oder Sekundenkleber

Werkzeuge:

  • Lötkit
  • 3D Drucker
  • Computer mit Arduino IDE zum Hochladen des Codes

Schritt 1: Code - Hochladen

Du wirst brauchen:

  • TVout-Bibliothek - ermöglicht es dem Arduino, Bilder und Ton auf einen Fernseher mit RCA- oder SCART-Anschluss zu übertragen
  • arduino-volume1 - Diese Bibliothek verbessert die Klangqualität, sie wird im Modus 1 verwendet (Arduino allein ohne TV-Anschluss). Im Modus 2 ist es jedoch nicht möglich, ihn gleichzeitig zu verwenden, da die TVout-Bibliothek denselben Timer wie volume1 verwendet

Wenn Sie die Musik oder das Bild ändern möchten, sehen Sie sich die nächsten Schritte an. Wenn Sie nicht nur den Code auf Ihr Arduino hochladen, stellen Sie zunächst sicher, dass Sie beide Bibliotheken installiert haben.

Schritt 2: Code (Musik ändern)

Code (Musik ändern)
Code (Musik ändern)

Hier findet ihr das Lied:

Ich teile die Musik in Teile auf und ordne jedem Teil, der sich wiederholt, Buchstaben zu. Dann habe ich jeder Note einen Wert von 1 bis 16 zugewiesen und sie auf Zeile 0 jedes Arrays platziert. Die Werte entsprechen der Frequenz der zu spielenden Note (Array Freq ). In Zeile 1 habe ich die Dauer jeder Note oben angegeben. Beispiel:

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

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

{1, 3, 1, 1, 1, 1}}; // Dauer

Wenn Sie ein anderes Lied verwenden möchten:

  • ändere das freq Array mit den neuen gewünschten Frequenzen (Noten)
  • Ändern Sie die Arrays, die jedem Teil des Songs entsprechen
  • Wählen Sie in void music () die Reihenfolge aus, die abgespielt werden soll
  • ändern Sie das „X“in der Array-Deklaration für die Anzahl der Elemente in jeder Zeile und ändern Sie auch das entsprechende void, Beispiel:

melB1[2][X]

Leere MelodieB1(){

für (a=0; a<X; a++){

Schritt 3: Code (ändern Sie das Bild / Foto)

Code (Ändern Sie das Bild / Foto)
Code (Ändern Sie das Bild / Foto)
Code (Ändern Sie das Bild / Foto)
Code (Ändern Sie das Bild / Foto)
Code (Ändern Sie das Bild / Foto)
Code (Ändern Sie das Bild / Foto)

Ich habe GIMP verwendet, um ein Foto in Schwarzweiß zu ändern, Schritte:

Farben / Sättigung = 0

Das Bild muss auf eine Auflösung von 95x95 Pixel geändert werden. Die TVout-Bibliothek ermöglicht höhere Auflösungen, aber aufgrund der Größe des Codes, den ich verwenden wollte, war ich gezwungen, die Auflösung zu verringern.

  • Rechteckauswahlwerkzeug (Seitenverhältnis - behoben 1:1)
  • Bearbeiten/Kopieren
  • Datei/Erstellen/Aus Zwischenablage
  • Bild/Bild skalieren (95x95)

Es ist zwingend erforderlich, das Bild in Schwarzweiß und nicht in Graustufen zu konvertieren.

  • Unscharfes Auswahlwerkzeug und Freies Auswahlwerkzeug, um die Bereiche auszuwählen, die schwarz angezeigt werden sollen.
  • Bleistift (schwarz) um unsere Auswahl schwarz zu machen
  • Auswählen / Invertieren (invertiert unsere Auswahl)
  • Bleistift (weiß), um den Rest des Bereichs weiß zu färben
  • Farben / Helligkeit-Kontrast (Kontrast zu max, um sicherzustellen, dass Schwarz schwarz ist)

Jetzt haben wir das Bild in Schwarzweiß mit einer Auflösung von 95x95 Pixel

Datei/Exportieren als (. BMP)

Um das neue Bild in Code zu konvertieren, habe ich Image2Code verwendet

Das gibt uns eine fast gute Auswahl. Dann habe ich es kopiert und in die Arduino IDE eingefügt.

Verwenden von Bearbeiten / Suchen:

  • nach allen „0xFF“suchen und durch „0“ersetzen (Alle ersetzen)
  • Machen Sie dasselbe für „0x00“und ersetzen Sie es durch „1“
  • Löschen Sie alle „{“und „}“

"0" wird ein schwarzes Pixel sein

"1" wird ein weißes Pixel sein

Schritt 4: 3D-Modell

3D-Modell
3D-Modell

Um das Box-3D-Modell zu erstellen, habe ich SketchUp verwendet. Aufgrund der Einschränkungen meines 3D-Druckers und der Schwierigkeit, die ich mir vorgestellt hatte, die internen Verbindungen herzustellen, entschied ich mich, das Modell in 4 Teilen zu erstellen.

Ich habe die SketchUp-Datei hochgeladen, wenn Sie etwas am Design ändern möchten, wenn nicht, drucken Sie einfach die.stl-Dateien aus

Schritt 5: Montage

Montage
Montage
Montage
Montage
Montage
Montage

Der Zusammenbau ist nicht komplex, aber aufgrund der Größe der Box und der Anzahl der anzuschließenden Drähte schwierig.

Empfohlen: