Bass Beat Extractor
Eigentlich drängt sich diese Bastelei von selbst auf, wenn man sich
Martin's Bastelstube, Teil VII oder
Martin's Bastelstube, Teil XXIV
anschaut. Wenn man eine Lichtorgel baut, muss sie auch im Takt mit der Musik
laufen. Sonst sieht sie nicht überzeugend aus.
Und für den Dance-Wettbewerb im RoboCup Junior wäre es auch
sehr sinnvoll, wenn sich die Roboter wirklich im Takt zur Musik
bewegen könnten.
Ich bin kein großer Analog-Elektroniker, also habe ich mir im
großen weiten Netz eine Schaltung
gesucht,
die die "Bass Beats" aus der Musik herausfiltern kann. Jetzt muss man
nur noch um diesen "Bass Beat Extractor" herum eine Schaltung bauen, die
sich als Sensor für den Roboter einsetzen lässt.
|
|
Für den RCX soll es natürlich ein aktiver Sensor sein,
damit der RCX auch gleich die Stromversorgung für die ganze
Schaltung übernimmt – so wie zum Beispiel auch beim
original Mindstorms Lichtsensor.
Wie funktioniert ein aktiver Sensor am RCX? Der Sensor wird über dieselben zwei
Drähte mit Energie versorgt, über die auch der Messwert abgefragt wird.
|
Wie soll denn sowas funktionieren? Ganz einfach: Es wird auf diesen zwei Leitungen
abwechselnd Strom eingespeist und der Sensor-Messwert abgefragt. Der Sensor muss
intern ausreichend Energie speichern, um die Phasen zu überbrücken, in denen
der Messwert abgefragt wird.
Rechts seht ihr die Standard-Schaltung für einen aktiven Sensor am RCX ...
sie speichert die eingespeiste Energie in Kondensator C8 und versorgt
damit die Schaltung in den Phasen, wo der Sensorwert abgefragt wird.
Der Transistor T3 zieht die Ausgangsspannung über einen Widerstand von 1 kOhm
herunter. Damit gibt es keinen Kurzschluss in den Phasen, wenn der RCX den Sensor mit
Energie versorgt.
Das Ganze ist über einen Gleichrichter an die Sensor-Leitungen angeschlossen.
Schließlich wissen wir nie genau, in welcher Polarität unser Sensor an den
RCX angeschlossen wird.
|
|
|
Das Problem ist, dass die Schaltung nur sehr kurze Pulse liefert, die vom RCX oft nicht
wahrgenommen werden. Deshalb müssen die Ausgangspulse noch "gestreckt"
werden, damit der RCX sie auch sicher mitbekommt.
Erster Aufbau auf Lochrasterplatine:
Gehäuse offen:
Unten rechts ist der Audio-Eingang (3,5 mm Klinkenbuchse). Mit dem Schiebeschalter
kann man einstellen, ob die Signalquelle ein Kopfhörerausgang (Headphones) oder
ein Vorverstärkerausgang (Line Out) ist. Über den 3poligen weißen
Stecker kann man die Schaltung alternativ an ein Bobby-Board oder Gold-Board
anschließen.
Der LEGO-Stecker ist fest auf die Platine geklebt, das vereinfacht die Verdrahtung.
Die orange Leuchtdiode zeigt an, wenn ein Bass-Beat erkannt wurde.
|
|
Gehäuse geschlossen:
Die Stecker sind duch Aussparungen im LEGO-Gehäuse erreichbar. Für die
LED ist ein transparenter Stein eingebaut worden.
|
|
|
Geätzte Platine:
Dieselbe Schaltung auf
einem richtigen Platinen-Layout.
|
|
Aufbau für Mikrocontroller-Boards:
|
|
|
|
|
|
|
|
So einen Musik-Sensor will man vielleicht auch an anderen Controllerboards
anschließen.
Die Grundschaltung bleibt dieselbe, nur die Stromversorgung
und die Ausgangsschaltung muss für kleine Mikrocontrollerboards
angepasst werden.
|
In einer Variante habe ich an Stelle des Eingangs mit Klinkenbuchse eine
Electret-Mikrofonkapsel gesetzt. Damit kann man die Musik gleich direkt
aus der Umgebung auswerten.
Hierfür muss man sich aber sicher sein, dass keine anderen
Störgeräusche die Musik überlagern – sonst meldet
die Schaltung Beats, wo keine sind. Oder sie meldet gar nichts mehr,
weil alles nur ein großes Rauschen ist.
|
|
An Stelle der Klinkenbuchse kann man auch einen 3-poligen Pfostenstecker
bestücken. Für die Ausgänge gibt es auch verschiedene
Stellen, an denen man das Signal abgreifen kann – je nach Bedarf
und technischen Möglichkeiten eures Controllerboards.
|
Tschüß, euer Martin S.
|
E-mail:
Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!