Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Musikwiedergabe per Fernbedienung steuern: Ein einfaches Arduino-Projekt

Komponenten und Materialien

Benötigte Software

Projektbeschreibung

Mit diesem Projekt können Sie Melodien über eine herkömmliche Infrarot-Fernbedienung abspielen. Der Arduino empfängt die IR-Codes, wählt die entsprechende Melodie aus und gibt sie über den Summer wieder. Gleichzeitig zeigt das LCD-Display die gespielten Noten an.

Funktionsweise

  1. Drücken Sie eine Zifferntaste (1–4) auf der Fernbedienung, um eine Melodie auszuwählen.
  2. Der Arduino spielt die Melodie über den Summer.
  3. Auf dem LCD erscheint der Name der gespielten Note (z. B. „Do“, „Re“, „Mi“).
  4. Mit der „Power“-Taste der Fernbedienung lässt sich die Wiedergabe jederzeit stoppen (Arduino-Reset).

Code-Struktur

Der Sketch nutzt die Bibliothek IRremote zum Dekodieren der Fernbedienungscodes. Jede Melodie ist als eigene Funktion implementiert (z. B. fur() für „Für Elise“, ode() für „Freude schöner Götterfunken“ usw.). Die Noten werden über Hilfsfunktionen wie nota_do(), nota_re() etc. erzeugt, die Frequenz und Dauer an NewTone übergeben.

Ein besonderes Feature ist die shut()-Funktion: Sie prüft während der Wiedergabe kontinuierlich, ob ein neuer IR-Code empfangen wurde. Wird der Code für die „Power“-Taste erkannt, führt ein Software-Reset (Reset_AVR()) den Arduino sofort zurück in den Startzustand.

Wichtige Code-Ausschnitte

// IR-Codes der Fernbedienung (Beispielwerte – müssen angepasst werden)
if (result == 12495) { melody_1(); }   // Taste 1
else if (result == 6375) { melody_2(); } // Taste 2
else if (result == 31365) { melody_3(); } // Taste 3
else if (result == 4335) { melody_4(); } // Taste 4
// Beispiel einer Noten-Funktion
void nota_do(int duration, int pause) {
  shut(); // Prüft auf Stopp-Befehl
  lcd.setCursor(0, 0);
  lcd.print("Do ");
  NewTone(11, 262, duration); // Pin 11, Frequenz 262 Hz (C4)
  delay(pause);
}
// Software-Reset per Watchdog
#include <avr/io.h>
#include <avr/wdt.h>
#define Reset_AVR() wdt_enable(WDTO_30MS); while(1) {}

Schaltplan

Der Schaltplan (Fritzing-Datei canzoni_con_tastiera_fQS3978roa.fzz) zeigt die Verdrahtung:

Aufbau und Inbetriebnahme

  1. Bauteile gemäß Schaltplan verdrahten.
  2. Arduino IDE öffnen, Sketch hochladen.
  3. Seriellen Monitor öffnen (9600 Baud), um die empfangenen IR-Codes der eigenen Fernbedienung auszulesen.
  4. Die ausgelesenen Codes in die if-Abfragen im loop() eintragen.
  5. Fernbedienung testen – viel Spaß!

Hinweis: Die im Code enthaltenen IR-Codes (12495, 6375, 31365, 4335, -23971) stammen von der Fernbedienung des Autors. Sie müssen durch die Codes Ihrer eigenen Fernbedienung ersetzt werden (über den seriellen Monitor auslesbar).

Herstellungsprozess

  1. IR-Fernbedienungsbefehle auf Raspberry Pi ohne LIRC erfassen: Python UART-Ansatz
  2. Echtzeit-Gyroskop-Spiel mit Arduino Nano & MPU-6050
  3. ESP32-CAM Bewegungserkennungs-Kamera für Discord
  4. Arduino Digitaler Würfel: LCD-Würfel mit Zufallszahlen (1–6)
  5. 37-LED-Roulette-Spiel mit Arduino Nano bauen – Europäisches Layout
  6. Selbstbau TV-Fernbedienung: Arduino UNO, batteriebetrieben, 3D-gedrucktes Gehäuse
  7. Heimtemperatur weltweit überwachen: Arduino Cloud Integration mit TMP36
  8. ATtiny85 Mini-Arcade: Snake – Handheld OLED-Spielekonsole selbst bauen
  9. Tragbarer Entfernungsmesser – Arduino Nano DIY-Kit mit HC-SR04, 18650-Akku und 3D-gedrucktem Gehäuse
  10. Arduino-LED per Cortana und Bluetooth unter Windows 10 steuern