Arduino: leggere il valore da un microfono

Questo circuito permette di amplificare una capsula microfonica, cosa necessaria per permettere ad Arduino di "sentire" i suoni che lo circondano.
Nella parte in alto a sinistra è alloggiato il microfono a condensatore, con la resistenza da 33k (al posto di questa si può mettere un potenziometro per regolare il volume di ingresso) e il condensatore da 100nF che permettono di prelevare il segnale audio non amplificato.
Questo segnale viaggia nel filo blu e arriva all'LM386, che amplifica il segnale del microfono con un guadagno pari a 200. Il segnale prelevato in uscita viene infine collegato ad un ingresso analogico di Arduino, che ora può finalmente rilevarlo.




ecco lo schema elettrico:








Qui il semplice sketch, preso da un esempio di Arduino, per leggere il segnale di ingresso:

  1. const int analogInPin = A0;  // Analog input pin a cui è collegato il microfono.
  2. int sensorValue = 0;        // valore letto dal potenziometro.
  3. void setup() {
  4.   // inizializza la comunicazione seriale a 9600 bps:
  5.   Serial.begin(9600);
  6. }
  7. void loop() {
  8.   // leggi il valore del microfono.
  9.   sensorValue = analogRead(analogInPin);            
  10.          
  11. if (sensorValue > 6) {
  12.   // ho messo il valore 6 per rimuovere il rumore di fondo.
  13.   // stampa i risultati sul serial monitor:
  14.   Serial.print("sensor = " );                      
  15.   Serial.println(sensorValue);      
  16.  }
  17.   // aspetta 5 millisecondi prima del prossimo loop
  18.   delay(5);                    
  19. }


Segui Daniele Alberti su Google+

3 commenti:

  1. testato e non funziona.

    RispondiElimina
    Risposte
    1. Tutti i circuiti postati li ho costruiti e provati personalmente.
      Se mi dici quali sono i problemi sarò felice di aiutarti :).
      Verifica i collegamenti guardando entrambi gli schemi. Tieni presente che i fili rossi vanno sempre al + e i neri al -.
      Verifica il verso dei condensatori, prova a collegare il circuito direttamente ad un piccolo altoparlante. Per farlo stacca il filo che va ad A0 di Arduino e collega lí l'altoparlante. Se parli nel microfono devi sentire il suono amplificato.
      Fammi sapere. Ciao!

      Elimina
  2. Ciao Daniele. Grazie per la tua pazienza. Vorrei costruire un circuito amplificatore vocale di circa 5-10W con Arduino, sul genere di cui sopra. Mi chiedevo se potessi darmi qualche dritta su come aumentare la potenza finale. Grazie.

    RispondiElimina

Lascia un commento qui sotto, ti risponderò il prima possibile!

Related Posts Plugin for WordPress, Blogger...