3.2 - Individueller Ton¶
Im vorherigen Projekt haben wir einen aktiven Summer verwendet. Diesmal greifen wir auf einen passiven Summer zurück.
Ähnlich wie der aktive Summer funktioniert auch der passive Summer auf Grundlage der elektromagnetischen Induktion. Der Unterschied besteht darin, dass ein passiver Summer keine eigene Schwingungsquelle hat. Deshalb gibt er keinen Ton ab, wenn Gleichstromsignale verwendet werden. Dies ermöglicht es jedoch dem passiven Summer, seine eigene Schwingungsfrequenz anzupassen und unterschiedliche Töne wie „Do, Re, Mi, Fa, Sol, La, Si“ auszugeben.
Lassen Sie den passiven Summer eine Melodie spielen!
Erforderliche Bauteile
Für dieses Projekt benötigen wir die folgenden Bauteile.
Ein komplettes Set zu kaufen ist definitiv praktisch, hier ist der Link:
Bezeichnung |
ELEMENTE IN DIESEM KIT |
KAUF-LINK |
---|---|---|
Kepler Kit |
450+ |
Alternativ können Sie die Teile auch einzeln über die folgenden Links erwerben.
SN |
KOMPONENTENBESCHREIBUNG |
ANZAHL |
KAUF-LINK |
---|---|---|---|
1 |
1 |
||
2 |
Micro-USB-Kabel |
1 |
|
3 |
1 |
||
4 |
Mehrere |
||
5 |
1 (S8050) |
||
6 |
1 (1KΩ) |
||
7 |
Passive Summer |
1 |
Schaltplan
Wenn der GP15-Ausgang hoch ist, leitet der S8050 (NPN-Transistor) nach dem 1K-Strombegrenzungswiderstand (zum Schutz des Transistors) den Strom, sodass der Summer ertönt.
Die Aufgabe des S8050 (NPN-Transistor) besteht darin, den Strom zu verstärken und den Klang des Summers lauter zu machen. Tatsächlich könnten Sie den Summer auch direkt an GP15 anschließen, würden jedoch feststellen, dass der Ton leiser ist.
Verkabelung
Im Kit sind zwei Summer enthalten; wir verwenden einen passiven Summer (einen mit freiliegender Leiterplatte auf der Rückseite).
Für die Funktion des Summers ist ein Transistor erforderlich; hier verwenden wir den S8050.
Code
Bemerkung
Die Datei
3.2_custom_tone.ino
finden Sie unter dem Pfadkepler-kit-main/arduino/3.2_custom_tone
.Oder kopieren Sie diesen Code in die Arduino IDE.
Vergessen Sie nicht, die Platine (Raspberry Pi Pico) und den korrekten Port auszuwählen, bevor Sie auf die Schaltfläche Hochladen klicken.
Wie funktioniert es?
Wenn dem passiven Summer ein digitales Signal gegeben wird, kann er nur die Membran bewegen, ohne einen Ton zu erzeugen.
Daher verwenden wir die Funktion tone()
um das PWM-Signal zu erzeugen, das den passiven Summer zum Klingen bringt.
Diese Funktion hat drei Parameter:
pin, der GPIO-Pin, der den Summer steuert.
frequency, die Tonhöhe des Summers wird durch die Frequenz bestimmt; je höher die Frequenz, desto höher die Tonhöhe.
Duration, die Dauer des Tons.
Mehr erfahren
Wir können den spezifischen Ton gemäß der Grundfrequenz des Klaviers simulieren, um ein vollständiges Musikstück zu spielen.
Bemerkung
Die Datei
3.2_custom_tone_2.ino
finden Sie unter dem Pfadkepler-kit-main/arduino/3.2_custom_tone_2
.Oder kopieren Sie diesen Code in die Arduino IDE.
Vergessen Sie nicht, die Platine (Raspberry Pi Pico) und den korrekten Port auszuwählen, bevor Sie auf die Schaltfläche Hochladen klicken.