Inhoudsopgave:

Muscle-Music met Arduino - Ajarnpa
Muscle-Music met Arduino - Ajarnpa

Video: Muscle-Music met Arduino - Ajarnpa

Video: Muscle-Music met Arduino - Ajarnpa
Video: Hack Your Nerves with Electricity. Muscle Dancing with MIDI and Arduinos. 2024, November
Anonim
Muscle-Music met Arduino
Muscle-Music met Arduino

Hallo allemaal, dit is mijn eerste Instructables, dit project is geïnspireerd na het bekijken van de Old Spice Muscle Music-videocommercial, waar we kunnen zien hoe Terry Crews verschillende instrumenten bespeelt met EMG-signalen.

We zijn van plan om deze reis te beginnen met dit eerste project, waar we een blokgolfsignaal genereren met een frequentie die varieert afhankelijk van de amplitude van het verkregen EMG-signaal. Later wordt dit signaal verbonden met een luidspreker om die frequentie af te spelen.

Om dit project te bouwen, zullen we als kern een Arduino UNO en een MyoWare-spiersensor gebruiken. Als u geen MyoWare-sensor kunt krijgen, hoeft u zich geen zorgen te maken, we zullen uitleggen hoe u uw eigen sensor kunt bouwen. Het is een beetje lastig, maar het is het proberen waard, want u zult VEEL leren!!

Laten we beginnen.

Stap 1: Verkrijg de benodigde onderdelen

Verkrijg de benodigde onderdelen
Verkrijg de benodigde onderdelen

Er zijn twee manieren om dit project te bouwen: met de MyoWare-sensor (stap 2 & 3) en zonder (stap 4 & 5).

Het gebruik van de MyoWare-sensor is gemakkelijker omdat er geen geavanceerde kennis over elektronica voor nodig is, het is bijna gewoon plug-and-play. Zonder de MyoWare moet u enige kennis hebben van OpAmps, zoals versterking en filtering, evenals rectificatie van een signaal. Deze manier is moeilijker, maar het laat je begrijpen wat er achter het MyoWare-circuit zit.

Voor de MyoWare-manier hebben we de volgende componenten en tools nodig:

  • MyoWare Spiersensor (Sparkfun)
  • Arduino UNO (Amazon)
  • Spreker
  • Breadboard
  • 22 AWG-kabel
  • 3 x 3M-elektroden (Amazon)
  • Schroevendraaier
  • 2 x krokodillenklemmen
  • Arduino USB-kabel
  • Draadstrippers
  • 1 x 1000uF (Amazone)

Zonder de MyoWare heeft u de voorgaande componenten nodig (zonder de MyoWare) en ook:

  • Voeding met +12 V, -12 V en 5 V (u kunt uw eigen maken met een computer PS zoals weergegeven in deze Instructables)
  • Als uw AC-voedingskabel een 3-polige kabel is, heeft u mogelijk een driepolige/tweepolige adapter of cheaterstekker nodig. (Soms kan die extra tand ongewenste ruis genereren).
  • Multimeter
  • Instrumentatieversterker AD620
  • OpAmps 2 x LM324 (of vergelijkbaar)
  • Diodes 3 x 1N4007 (of vergelijkbaar)
  • condensatoren

    • Niet-gepolariseerd (kan keramische condensatoren zijn, polyester, enz.)

      • 2 x 100 nF
      • 1 x 120 nF
      • 1x 820 nF
      • 1x 1,2 uF
      • 1 x 1 uF
      • 1 x 4,7 uF
      • 1 x 1,8 uF
    • Gepolariseerd (elektrolytische condensator)

      2 x 1mF

  • Weerstanden

    • 1 x 100 Ohm
    • 1 x 3.9k Ohm
    • 1 x 5.6k Ohm
    • 1 x 1,2k Ohm
    • 1 x 2.7k Ohm
    • 3 x 8,2k Ohm
    • 1 x 6.8k Ohm
    • 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

Stap 2: (Met MyoWare) Bereid de elektroden voor en sluit ze aan

(Met MyoWare) Elektroden voorbereiden en aansluiten
(Met MyoWare) Elektroden voorbereiden en aansluiten
(Met MyoWare) Elektroden voorbereiden en aansluiten
(Met MyoWare) Elektroden voorbereiden en aansluiten
(Met MyoWare) Elektroden voorbereiden en aansluiten
(Met MyoWare) Elektroden voorbereiden en aansluiten

Voor dit onderdeel hebben we de MyoWare Sensor en 3 elektroden nodig.

Als je grote elektroden hebt zoals wij, moet je de randen afsnijden om de diameter te verkleinen, anders blokkeert het de andere elektrode, wat signaalinterferentie veroorzaakt.

Sluit de MyoWare aan zoals aangegeven op de 4e pagina van de sensorhandleiding.

Stap 3: (Met MyoWare) Sluit de sensor aan op het Arduino-bord

(Met MyoWare) Sluit de sensor aan op het Arduino-bord
(Met MyoWare) Sluit de sensor aan op het Arduino-bord
(Met MyoWare) Sluit de sensor aan op het Arduino-bord
(Met MyoWare) Sluit de sensor aan op het Arduino-bord
(Met MyoWare) Sluit de sensor aan op het Arduino-bord
(Met MyoWare) Sluit de sensor aan op het Arduino-bord

Het MyoWare-bord heeft 9 pinnen: RAW, SHID, GND, +, -, SIG, R, E en M. Voor dit project hebben we alleen de "+" nodig om 5V aan te sluiten, "-" voor Ground en "SIG" voor de uitgangssignaal, verbonden met 3 grote kabels (~2 ft).

Zoals hierboven vermeld, moet de "+"-pin worden aangesloten op de 5V-pin van de Arduino, "-" op GND en voor de SIG hebben we een extra filter nodig om plotselinge veranderingen in de amplitude van het signaal te voorkomen.

Voor de luidspreker hoeven we alleen de positieve draad op pin 13 en de negatieve op GND aan te sluiten.

En we zijn klaar voor de code!!!

Stap 4: (Zonder MyoWare) Bouw het conditioneringscircuit van het signaal

(Zonder MyoWare) Bouw het conditioneringscircuit van het signaal
(Zonder MyoWare) Bouw het conditioneringscircuit van het signaal

Dit circuit is geïntegreerd door 8 fasen:

  1. Instrumentatie versterker
  2. Laagdoorlaatfilter
  3. Hoogdoorlaatfilter
  4. Omvormer Versterker
  5. Volledige golf precisie gelijkrichter
  6. Passief laagdoorlaatfilter
  7. Differentiële versterker
  8. Bevooroordeelde parallelle tondeuse

1. Instrumentatieversterker

Deze trap wordt gebruikt om het signaal vooraf te versterken met een versterking van 500 en het 60 Hz-signaal dat zich in het systeem kan bevinden, te elimineren. Hierdoor krijgen we een signaal met een maximale amplitude van 200 mV.

2. Laagdoorlaatfilter

Dit filter wordt gebruikt om elk signaal boven 300 Hz te elimineren.

3. Hoogdoorlaatfilter

Dit filter wordt gebruikt om elk signaal lager dan 20 Hz te vermijden dat wordt gegenereerd door de beweging van de elektroden tijdens het dragen.

4. Omvormerversterker

Met een versterking van 68 genereert deze versterker een signaal met een amplitude variërend van - 8 tot 8 V.

5. Volledige golf precisie gelijkrichter:

Deze gelijkrichter zet elk negatief signaal om in een positief signaal, waardoor we alleen een positief signaal overhouden. Dit is handig omdat de Arduino alleen een signaal van 0 tot 5 V accepteert in de analoge ingangen.

6. Passief laagdoorlaatfilter

We gebruiken 2 x 1000uF elektrolytische condensatoren om plotselinge veranderingen in de amplitude te voorkomen.

7. Differentiële versterker

Na fase 6 realiseren we ons dat ons signaal een offset van 1,5 V heeft, dit betekent dat ons signaal niet naar 0 V kan gaan, alleen naar 1,5 V en maximaal 8 volt. De differentiële versterker gebruikt een signaal van 1.5 V (verkregen met een spanningsdeler en 5V, aangepast met een 10k Potentiometer) en het signaal dat we willen wijzigen en zal de 1.5 V laten rusten op het spiersignaal, waardoor we een mooi signaal krijgen met een minimum van 0 V en een maximum van 6,5 V.

8. Bevooroordeelde parallelle tondeuse

Tot slot, zoals we eerder vermeldden, accepteert de Arduino alleen signalen met een maximale amplitude van 5 V. Om de maximale amplitude van ons signaal te verminderen, moeten we de spanning boven 5 volt elimineren. Deze Clipper helpt ons daarbij.

Stap 5: (Zonder MyoWare) Sluit de elektroden aan op het circuit en Arduino

(Zonder MyoWare) Sluit de elektroden aan op het circuit en de Arduino
(Zonder MyoWare) Sluit de elektroden aan op het circuit en de Arduino
(Zonder MyoWare) Sluit de elektroden aan op het circuit en de Arduino
(Zonder MyoWare) Sluit de elektroden aan op het circuit en de Arduino
(Zonder MyoWare) Sluit de elektroden aan op het circuit en de Arduino
(Zonder MyoWare) Sluit de elektroden aan op het circuit en de Arduino

De elektroden die in de biceps zijn geplaatst, zijn de elektroden 1, 2, en de elektrode die zich het dichtst bij de elleboog bevindt, staat bekend als de referentie-elektrode.

De elektrode 1 en 2 worden aangesloten op de + en - ingangen van de AD620, het maakt niet uit in welke volgorde.

De referentie-elektrode is aangesloten op GND.

Het gefilterde signaal gaat rechtstreeks naar de A0-pin van de Arduino.

**VERGEET NIET DE GND VAN DE ARDUINO AAN TE SLUITEN OP DE GND VAN HET CIRCUIT**

Stap 6: De code!

De code!!!
De code!!!
De code!!!
De code!!!
De code!!!
De code!!!

Tot slot de codes.

1. De eerste is een frequentiezwaai van 400 Hz tot 912 Hz, afhankelijk van de amplitude van het signaal dat wordt verkregen van de biceps.

2. De tweede is het derde octaaf van de C burgemeestersschaal, afhankelijk van de amplitude zal het een toon kiezen.

Je kunt de frequenties op Wikipedia vinden, negeer decimalen gewoon

Stap 7: Eindresultaten

Dit zijn de verkregen resultaten, u KUNT de code wijzigen om de noten te spelen die u WILT!!!

De volgende fase van dit project is het integreren van enkele stappenmotoren en andere soorten actuatoren om een muziekinstrument te kunnen bespelen. En ook trainen om sterke signalen te krijgen.

Laat je spieren nu wat MUZIEK voor je spelen. VEEL PLEZIER!!:)

Aanbevolen: