Go Down

Topic: Amplitude en frequentie van geluidsgolf uitlezen (Read 540 times) previous topic - next topic

Jarnovis

Nov 21, 2017, 04:59 pm Last Edit: Nov 21, 2017, 05:04 pm by Jarnovis
Na een paar tutorials wou ik toch al snel aan een eigen projectje beginnen.

Ik heb een programmeerbare RGB-LED strip gekocht en deze wil ik graag aansturen door middel van muziek (vanaf 3.5mm audio kabel (laptop/telefoon) naar de arduino). Het doel is eigenlijk:

- Helderheid van de LEDs aansturen dmv volume (amplitude)
- Kleuren van de LEDs aansturen dmv de frequentie

Heb na behoorlijk wat zoeken al aardig wat (engelse) topics gevonden, maar heb geen ervaring met elektro en loop hierop vast. Het aansluiten/opbouwen vanuit een schema lukt me niet en mocht het lukken heb ik geen idee wat ik aan het doen ben, wat ik wel graag wil weten. Het is dus een hobby/leer project voor mij.


Het is mij in ieder geval opgevallen dat de Arduino negatieve spanningen niet leuk vindt en er daarom een DC-offset of een diode nodig is. De diode werd mij afgeraden, omdat hij al 0,6-0,7 V gebruikt en het signaal dat overblijft wel erg klein wordt.

Deze dezelfde problemen worden op de Engelse fora meestal naar http://interface.khm.de/index.php/lab/interfaces-advanced/arduino-realtime-audio-processing/ verwezen, maar ik snap het schema niet.

Ik heb een aantal vragen, namelijk
- Is het mogelijk om de amplitude én de frequentie uit te lezen?;
- Kan iemand in Jip-en-Janneke taal het schema uitleggen(zie link hierboven);

Er zullen naar loop van tijd wel wat vragen bij komen, maar dit zijn momenteel de belangrijkste.

shooter

Vraag 1 ja, dat kan, je neemt gewoon een hoop samples, zoals ook in de tekst staat en die ga je dan bewerken zodat je het gemiddelde hoogte kunt bepalen, (dat is dan je volume.

Daarnaast kun je bepalen door te kijken waar het signaal telkens piekt om de frequentie te bepalen.
Dat is allemaal best wel pittig rekenwerk en wordt normaal gedaan met een Digital Signal processor.
Het schema aan de linkerkant is eigenlijk alleen maar dat er een DC spanning bij je lijnsignaal wordt gedaan, de condensatoren zorgen voor het optillen van het signaal, stel even dat de potmeter in het midden staat, dan staat er dus 2.5 Volt op de analoge input.
het lijnsignaal wordt daarbij geteld (want de condensator laat de AC door.
Hierdoor zul je een signaal zien dat om de 2.5 V heen beweegt.

Ik moet je wel even waarschuwen want de voltages zijn erg klein en zul je dus maar heel weinig beweging kunnen meten.
Een luidspreker uitgang is al wat beter, of je moet er een klein versterkertje opamp bijzetten,zoals een 741 dan kun je daarmee ook je signaal optillen en zelfs filteren.

paul deelen
shooter@home.nl
making controls with codesys PLC and arduino

Jarnovis

Bedankt voor je antwoord!

Ik heb nog een paar schema's gevonden, dit minder ingewikkeld zijn. In deze schema's staan geen potmeter, maar een diode. Zal ik een diode gebruiken om mijn negatieve spanning weg te werken of een DC offset?

Het simpelste schema staat in de foto.


shooter

leuk bedacht maar dat gaat niet want de golfvorm wordt niet goed hierdoor, de diode blokkeert wel, maar de condensator moet leeg lopen en dat geberut altijd met dezelfde snelheid.
paul deelen
shooter@home.nl
making controls with codesys PLC and arduino

Go Up