Inhaltsverzeichnis:
- Schritt 1: Holen Sie sich die benötigten Teile
- Schritt 2: (mit MyoWare) Elektroden vorbereiten und anschließen
- Schritt 3: (Mit MyoWare) Verbinden Sie den Sensor mit dem Arduino Board
- Schritt 4: (Ohne MyoWare) Bauen Sie die Konditionierungsschaltung des Signals auf
- Schritt 5: (Ohne MyoWare) Verbinden Sie die Elektroden mit dem Stromkreis und Arduino
- Schritt 6: Der Code !
- Schritt 7: Endgültige Ergebnisse
Video: Muskelmusik mit Arduino - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:20
Hallo zusammen, dies ist mein erstes Instructables, dieses Projekt wurde inspiriert, nachdem wir den Old Spice Muscle Music-Videowerbespot gesehen hatten, in dem wir sehen können, wie Terry Crews verschiedene Instrumente mit EMG-Signalen spielt.
Wir planen, diese Reise mit diesem ersten Projekt zu beginnen, bei dem wir ein Rechtecksignal mit einer Frequenz erzeugen, die in Abhängigkeit von der Amplitude des erhaltenen EMG-Signals variiert. Später wird dieses Signal mit einem Lautsprecher verbunden, um diese Frequenz abzuspielen.
Um dieses Projekt zu bauen, werden wir als Kern einen Arduino UNO und einen MyoWare Muskelsensor verwenden. Wenn Sie keinen MyoWare-Sensor bekommen, machen Sie sich keine Sorgen, wir erklären Ihnen, wie Sie Ihren eigenen bauen können.
Nun, fangen wir an.
Schritt 1: Holen Sie sich die benötigten Teile
Es gibt zwei Möglichkeiten, dieses Projekt zu erstellen: mit dem MyoWare-Sensor (Schritt 2 & 3) und ohne ihn (Schritt 4 & 5).
Die Verwendung des MyoWare-Sensors ist einfacher, da keine fortgeschrittenen Kenntnisse in der Elektronik erforderlich sind, sondern fast nur Plug-and-Play. Ohne MyoWare benötigen Sie einige Kenntnisse über OpAmps, wie Verstärkung und Filterung sowie Gleichrichtung eines Signals. Dieser Weg ist schwieriger, aber er lässt Sie verstehen, was sich hinter der MyoWare-Schaltung verbirgt.
Für den MyoWare-Weg benötigen wir folgende Komponenten und Tools:
- MyoWare Muskelsensor (Sparkfun)
- Arduino UNO (Amazon)
- Lautsprecher
- Steckbrett
- 22 AWG-Kabel
- 3 x 3M Elektroden (Amazon)
- Schraubenzieher
- 2 x Krokodilklemmen
- Arduino-USB-Kabel
- Abisolierzangen
- 1 x 1000uF (Amazon)
Ohne MyoWare benötigen Sie die bisherigen Komponenten (ohne MyoWare) sowie:
- Stromversorgung mit +12 V, -12 V und 5 V (Sie können Ihre eigenen mit einem Computer PS herstellen, wie in dieser Anleitung gezeigt)
- Wenn Ihr Netzteil-AC-Kabel ein 3-poliges Kabel ist, benötigen Sie möglicherweise einen dreipoligen/zweipoligen Adapter oder einen Cheater-Stecker. (Manchmal kann dieser zusätzliche Zinken unerwünschtes Rauschen erzeugen).
- Multimeter
- Instrumentenverstärker AD620
- OpAmps 2 x LM324 (oder ähnlich)
- Dioden 3 x 1N4007 (oder ähnlich)
-
Kondensatoren
-
Nicht polarisiert (kann Keramikkondensatoren, Polyester usw. sein)
- 2 x 100 nF
- 1 x 120 nF
- 1 x 820 nF
- 1 x 1,2 uF
- 1 x 1 uF
- 1 x 4,7 uF
- 1 x 1,8 uF
-
Polarisiert (Elektrolytkondensator)
2 x 1mF
-
-
Widerstände
- 1 x 100 Ohm
- 1 x 3,9 kOhm
- 1 x 5,6 kOhm
- 1 x 1,2 kOhm
- 1 x 2,7 kOhm
- 3 x 8,2 kOhm
- 1 x 6,8 kOhm
- 2 x 1k Ohm
- 1 x 68k Ohm
- 1 x 20k Ohm
- 4 x 10k Ohm
- 6 x 2k Ohm
- 1 x 10k Ohm Potentiometer
Schritt 2: (mit MyoWare) Elektroden vorbereiten und anschließen
Für diesen Teil benötigen wir den MyoWare Sensor und 3 Elektroden.
Wenn Sie große Elektroden haben, wie wir es getan haben, müssen Sie die Kanten abschneiden, um den Durchmesser zu verringern. Andernfalls wird die andere Elektrode blockiert, was zu Signalstörungen führt.
Schließen Sie die MyoWare wie auf der 4. Seite des Sensorhandbuchs angegeben an.
Schritt 3: (Mit MyoWare) Verbinden Sie den Sensor mit dem Arduino Board
Das MyoWare Board hat 9 Pins: RAW, SHID, GND, +, -, SIG, R, E und M. Für dieses Projekt benötigen wir nur das "+" um 5V anzuschließen, "-" für Ground und "SIG" für die Ausgangssignal, verbunden mit 3 großen Kabeln (~2 ft).
Wie oben erwähnt, muss der "+"-Pin mit dem 5V-Pin des Arduino verbunden werden, "-" mit GND und für das SIG benötigen wir einen zusätzlichen Filter, um plötzliche Änderungen der Signalamplitude zu vermeiden.
Für den Lautsprecher müssen wir nur den positiven Draht mit dem Pin 13 und den negativen mit GND verbinden.
Und wir sind bereit für den Code!!!
Schritt 4: (Ohne MyoWare) Bauen Sie die Konditionierungsschaltung des Signals auf
Diese Schaltung ist in 8 Stufen integriert:
- Instrumentierungsverstärker
- Tiefpassfilter
- Hochpassfilter
- Inverter-Verstärker
- Vollwellen-Präzisionsgleichrichter
- Passiver Tiefpassfilter
- Differenzverstärker
- Biased Parallel Clipper
1. Instrumentenverstärker
Diese Stufe wird verwendet, um das Signal mit einer Verstärkung von 500 vorzuverstärken und das möglicherweise im System vorhandene 60-Hz-Signal zu eliminieren. Dadurch erhalten wir ein Signal mit einer maximalen Amplitude von 200 mV.
2. Tiefpassfilter
Dieser Filter wird verwendet, um jedes Signal über 300 Hz zu eliminieren.
3. Hochpassfilter
Dieser Filter wird verwendet, um jedes Signal zu vermeiden, das niedriger als 20 Hz ist, das durch die Bewegung der Elektroden während des Tragens erzeugt wird.
4. Inverter-Verstärker
Mit einer Verstärkung von 68 erzeugt dieser Verstärker ein Signal mit einer Amplitude von -8 bis 8 V.
5. Vollwellen-Präzisionsgleichrichter
Dieser Gleichrichter wandelt jedes negative Signal in ein positives Signal um und hinterlässt nur ein positives Signal. Dies ist nützlich, da der Arduino nur ein Signal von 0 bis 5 V in den analogen Eingängen akzeptiert.
6. Passiver Tiefpassfilter
Wir verwenden 2 x 1000uF Elektrolytkondensatoren, um plötzliche Amplitudenänderungen zu vermeiden.
7. Differenzverstärker
Nach der Stufe 6 stellen wir fest, dass unser Signal einen Offset von 1,5 V hat, das bedeutet, dass unser Signal nicht auf 0 V, sondern nur auf 1,5 V und maximal 8 Volt absinken kann. Der Differenzverstärker verwendet ein Signal von 1,5 V (erhalten mit einem Spannungsteiler und 5 V, eingestellt mit einem 10k-Potentiometer) und dem Signal, das wir modifizieren möchten und die 1,5 V auf das Muskelsignal ruhen lassen, so dass wir ein schönes Signal mit einem Minimum von 0 V und einem Maximum erhalten von 6,5 V.
8. Biased Parallel Clipper
Schließlich akzeptiert der Arduino, wie bereits erwähnt, nur Signale mit einer maximalen Amplitude von 5 V. Um die maximale Amplitude unseres Signals zu reduzieren, müssen wir die Spannung über 5 Volt eliminieren. Dieser Clipper wird uns dabei helfen.
Schritt 5: (Ohne MyoWare) Verbinden Sie die Elektroden mit dem Stromkreis und Arduino
Die im Bizeps platzierten Elektroden sind die Elektroden 1, 2, und die Elektrode, die dem Ellenbogen am nächsten liegt, wird als Referenzelektrode bezeichnet.
Die Elektroden 1 und 2 werden an die + und - Eingänge des AD620 angeschlossen, egal in welcher Reihenfolge.
Die Referenzelektrode ist mit GND verbunden.
Das gefilterte Signal geht direkt an den A0-Pin des Arduino.
**VERGESSEN SIE NICHT, DEN GND DES ARDUINO MIT DEM GND DES SCHALTKREISES ZU VERLASSEN**
Schritt 6: Der Code !
Schließlich die Codes.
1. Der erste ist ein Frequenz-Sweep von 400 Hz bis 912 Hz, abhängig von der Amplitude des vom Bizeps erhaltenen Signals.
2. Die zweite ist die dritte Oktave der C-Major-Tonleiter, je nach Amplitude wird ein Ton gewählt.
Die Frequenzen findest du in Wikipedia, Dezimalzahlen einfach ignorieren
Schritt 7: Endgültige Ergebnisse
Dies sind die erhaltenen Ergebnisse, Sie können den Code ändern, um die Noten zu spielen, die Sie WÜNSCHEN!!!
Die nächste Stufe dieses Projekts besteht darin, einige Schrittmotoren und andere Arten von Aktoren zu integrieren, um ein Musikinstrument zu spielen. Und auch Workout, um starke Signale zu erhalten.
Jetzt lass deine Muskeln dir etwas MUSIK spielen. SPASS HABEN!!:)
Empfohlen:
Heimwerken -- Einen Spinnenroboter herstellen, der mit einem Smartphone mit Arduino Uno gesteuert werden kann – wikiHow
Heimwerken || Wie man einen Spider-Roboter herstellt, der mit einem Smartphone mit Arduino Uno gesteuert werden kann: Während man einen Spider-Roboter baut, kann man so viele Dinge über Robotik lernen. Wie die Herstellung von Robotern ist sowohl unterhaltsam als auch herausfordernd. In diesem Video zeigen wir Ihnen, wie Sie einen Spider-Roboter bauen, den wir mit unserem Smartphone (Androi
Bewegungsaktivierte Cosplay Wings mit Circuit Playground Express - Teil 1: 7 Schritte (mit Bildern)
Bewegungsaktivierte Cosplay-Flügel mit Circuit Playground Express - Teil 1: Dies ist Teil 1 eines zweiteiligen Projekts, in dem ich Ihnen meinen Prozess zur Herstellung eines Paars automatisierter Feenflügel zeige. Der erste Teil des Projekts ist der Mechanik der Flügel, und der zweite Teil macht es tragbar und fügt die Flügel hinzu
Schnittstellentastatur mit Arduino. [Einzigartige Methode]: 7 Schritte (mit Bildern)
Schnittstellentastatur mit Arduino. [Einzigartige Methode]: Hallo, und willkommen zu meinem ersten instructable! :) In diesem instructables möchte ich eine fantastische Bibliothek für die Schnittstelle der Tastatur mit Arduino teilen - 'Password Library' einschließlich 'Keypad Library'. Diese Bibliothek enthält die besten Funktionen, die wir wi
SCARA-Roboter: Lernen über Vorwärts- und inverse Kinematik !!! (Plot Twist Erfahren Sie, wie Sie mit PROCESSING eine Echtzeitschnittstelle in ARDUINO erstellen !!!!): 5 Schritte (mit Bildern)
SCARA-Roboter: Lernen über Vorwärts- und inverse Kinematik !!! (Plot Twist Learn How to Make a Real Time Interface in ARDUINO Using PROCESSING !!!!): Ein SCARA-Roboter ist eine sehr beliebte Maschine in der Industriewelt. Der Name steht sowohl für Selective Compliant Assembly Robot Arm als auch für Selective Compliant Articulated Robot Arm. Es ist im Grunde ein Roboter mit drei Freiheitsgraden, da er die ersten beiden Displ
Einfaches BLE mit sehr geringem Stromverbrauch in Arduino Teil 3 - Nano V2-Ersatz - Rev 3: 7 Schritte (mit Bildern)
Einfaches BLE mit sehr geringem Stromverbrauch in Arduino Teil 3 - Nano V2-Ersatz - Rev 3: Update: 7. April 2019 - Rev 3 von lp_BLE_TempHumidity, fügt Datums- / Zeitdiagramme mit pfodApp V3.0.362+ hinzu und automatische Drosselung beim Senden von DatenUpdate: 24. März 2019 – Rev 2 von lp_BLE_TempHumidity, fügt weitere Plotoptionen hinzu und i2c_ClearBus, fügt GT832E