Vumeter arduino

Arduino e l’audio è una combinazione molto interessante e ti permette di realizzare progetti come il vumeter arduino di Elia e Davide.

vumeter arduino

Elia e Davide sono studenti dell’ITIS di Vobarno che hanno realizzato e voluto condividere il progetto: vumeter arduino

Presentazione di Elia ( quella di Davide spero arrivi presto )

Classe 1998. Da sempre con la passione per i motori, l’informatica ed i circuiti elettrici.

Studente a tempo pieno, nell’ anno scolastico 2014-2015 mi è stato presentato arduino dal Prof. Fabio Caruccio.

Questo dispositivo mi ha destato fin da subito un certo interesse ed oggi vi presenterò il progetto che segue.

Cos’é un vumeter

Il vu-meter è uno strumento in grado di leggere l’intensità di un segnale audio.

Solitamente vengono montati nei mixer o nei preamplificatori.

Esso può essere digitale: realizzato con diodi led, o analogico: con un indicatore ad ago magnetico.

Il progetto consiste nel riprodurre un vumeter arduino digitale utilizzando il segnale di un dispositivo di riproduzione audio (cellulare,mp3, ecc) che, basandosi sull’intensità del suono emessa, accenderà più led.

Realizzazione del vumeter arduino

Per la realizzazione ti serve:

  • un cavo jack
  • una breadboard
  • 10 led con relative resistenze
  • alcuni cavi per breadboard
  • una “Y” jack da 3,5mm
  • un paio di casse.

Ecco lo schema che Elia ha utilizzato:

vumeter arduino schema

per iniziare collega la massa dei led alla massa o pin Gnd di arduino;

il positivo di ogni led va collegato in serie ad una resistenza di valore 220ohm e tramite un cavetto ad un piedino digitale (da 3 a 12);

collega i segnali audio left e right alle entrate analogiche A0 ed A1;

il segnale sleeve (ground) lo colleghi al GND di arduino.

La “Y” jack, da 1 jack maschio a 2 jack femmina da 3,5mm, serve perché un’uscita la colleghi ad arduino e l’altra la colleghi alle casse od ad un qualsiasi altro dispositivo per la riproduzione.

Lo sketch

Ecco lo sketch preparato e commentato da Elia:

//si definiscono i pin ed i rispettivi led
int led[10] = { 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};

int leftChannel = 0; //impostiamo l’ input dell’ audio
int left, i;

void setup() {
   for (i = 0; i < 10; i++) //impostiamo i pin come uscite digitali
      pinMode(led[i], OUTPUT);
   Serial.begin(9600); //impostazione velocità della porta dati a 9600 b/s
}

void loop() {
   left = analogRead(leftChannel); //Lettura dell’input analogica
   Serial.println(left);

   left = map(left,200,900,0,10);
   if (left == 0) {
      for(i = 0; i < 10; i++) { //lascia spenti i led con volume nullo
         digitalWrite(led[i], LOW);
      }
   } else {
      for (i = 0; i < left; i++) { //accende i led quando si alza il volume
         digitalWrite(led[i], HIGH);
      }
      for(i = i; i < 10; i++) { //spegne i led quando diminuisce il volume
         digitalWrite(led[i], LOW); 
      }
   }
}

inizia dalla linea 02: definisci i pin a cui hai collegato i led;

linea 04: definisci il pin a cui hai collegato il canale LEFT dell’audio; sarebbe corretto scrivere A0 ma anche “0” possiamo accettarlo;

linea 05: definisci due variabili di tipo integer che userai in seguito;

linee 08-10: con un ciclo for sull’array led imposta tutti i pin a cui sono connessi i led in modalità OUTPUT;

linea 14: leggi il valore di input sul pin A0. Elia e Davide mi hanno riferito di leggere valori tra 200 e 600 con un volume normale con picchi di 900 con volumi alti e musica da discoteca;

linea 17: mappa il valore letto su un range da 0 a 10 il numero dei led.

linee 18-22: se il valore letto su left è 0, il vumeter arduino non sta rilevando segnale, poni a LOW tutti i led in modo che si spengano;

linee 23-25: in funzione del valore letto e rimappato da left accendi i led corrispondenti;

linee 26-28: partendo dall’indice “i”, ultimo led acceso, e spegni i led accesi precedentemente. Senza queste linee ottieni un vumeter arduino in grado di mostrarti il picco raggiunto dalla tua musica.

Il video del vumeter arduino di Elia e Davide

Grazie Elia e Davide !!!

Prima di inserire un commento, per favore, leggi il regolamento

Permanent link to this article: https://www.mauroalfieri.it/elettronica/vumeter-arduino.html

Lascia un commento

Your email address will not be published.

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.