Posso usare un transistor PNP con un microfono a elettrete per ottenere un'uscita non invertente per il mio Arduino?


9

Sto cercando di leggere semplicemente il livello sonoro generico da un microfono a elettrete. Ho visto una serie di schemi con transistor NPN, che forniranno un'uscita invertita (~ 5V quando silenzioso, ~ 0V quando rumoroso, funzionamento lineare in mezzo).

Ecco un esempio:

Preamp audio semplice

Tuttavia, vorrei un'uscita non invertita (funzionamento lineare, ingresso super silenzioso da ~ 0 V, ingresso super rumoroso da ~ 5 V). Mi rendo conto di poterlo correggere facilmente nel software, ma in un certo senso mi sembra arretrato e non riesco a trovare alcun esempio di uscita non invertente con un transistor PNP.

C'è una ragione per questo oltre ad essere fuori dal comune? Se è possibile, qualcuno potrebbe fornire uno schema di un microfono a elettrete e transistor PNP che fornirà ~ 0 V quando è silenzioso e ~ 5 V quando è rumoroso?

Inoltre, c'è qualche motivo per cui questo è così raro o indesiderabile? Gli NPN sembrano essere usati molto più spesso dei PNP, perché?

modificare

Sembra che ero piuttosto confuso in quello che avrei ottenuto come output dal preamplificatore NPN, che sarebbe 0 V per il silenzio e +/- Vin / 2. Ecco cosa voglio invece:

0 V in modalità silenziosa, ~ 2,5 V in livelli sonori medi, ~ 5 V in livelli sonori massimi. Questo potrebbe essere letto facilmente dall'ADC in "livello sonoro" senza molto lavoro. Tuttavia, non posso alimentare tensioni <0 V o> 5 V al comparatore analogico. Sembra che voglio quanto sopra con un rilevatore di inviluppo, tuttavia ciò mi porterebbe solo da 0 V a 2,5 V. Come faccio a variare da 0 V a 5 V, 0 V come "silenzioso" e 5 V come "rumoroso", con tutto compreso tra lineare?


Sfortunatamente, questo circuito non genererà una tensione CC, se l'uscita viene presa sul lato destro di C2. Genererà una tensione CA. Ciò è dovuto ai condensatori. I condensatori non consentono il passaggio di tensioni CC.
Abdullah Kahraman,

L'Arduino ha 6 ingressi analogici, che leggono 0-1023 per 0V-5V. AC è quello che avrei cercato lì, giusto? Forse avrei bisogno di un diodo per non passare la tensione negativa al comparatore analogico?
Ehryk,

Sì, ma un diodo lascerà cadere 0,6 V su se stesso. Forse dovresti provare a rendere la tensione di alimentazione 5V. La tensione di alimentazione è quella etichettata "da +3 a 9 Volt". Quindi rimuovere C2. Quindi, leggi il valore analogico sul collettore di Q1. Sperimenta con diversi livelli sonori, ad esempio applaudire, parlare, gridare, stare zitto, sussurrare e vedere cambiare la lettura analogica. Tuttavia, sarà un'onda sinusoidale aggiunta con un valore DC.
Abdullah Kahraman,

Leggendo la tua domanda e i commenti sembra che il tuo questiojn non stia chiaramente affermando quello che vuoi. Sembra che tu voglia un livello CA che diminuisca di magnitudine all'aumentare della tensione di ingresso. In questo caso è necessario dichiararlo chiaramente. In caso contrario, puoi spiegare "Non sto cercando una logica 0-1, gli ingressi analogici dell'Arduino hanno un ADC a 10 bit che fornisce 0-1023 per 0V-5V, rispettivamente" in questo contesto. || ...
Russell McMahon,

... SE stai parlando di livelli DC la domanda non è ancora chiara. Un segnale CA sarà centrato sul punto di polarizzazione CC. Questo è relativamente risolto con la potenza del segnale. Puoi spiegare chiaramente e in parole semplici ESATTAMENTE cosa vuoi che faccia l'output dato che il segnale in ingresso va da 0VAC a Max Vin AC.
Russell McMahon,

Risposte:


9

Per quanto ho capito, stai cercando di creare una sorta di rilevatore di livello sonoro, che ti permetterà di rilevare se c'è un suono con un certo volume o meno. Puoi farlo con piccole modifiche allo schema che hai. Ma prima di ciò, dovresti capire il circuito.

Rompiamo quel circuito. Prima di tutto la parte con il microfono.

inserisci qui la descrizione dell'immagine

R1 serve per fornire la potenza necessaria al microfono e questo si chiama polarizzazione del microfono. Un microfono genera una tensione CA, che a volte è negativa e talvolta positiva e cambia la maggior parte delle volte. Pensa a un'onda sinusoidale . Ma ricorda, abbiamo avuto una certa propensione ad esso che è una tensione CC. Dobbiamo eliminarlo e dare solo la tensione CA all'amplificatore. E farlo è facile con un semplice condensatore singolo. Un condensatore non lascia passare la corrente continua, ma lascia passare facilmente la corrente alternata. Abbiamo bloccato la parte CC della tensione sul microfono a elettrete.

Ora diamo un'occhiata all'amplificatore stesso. Immagina che non ci sia nient'altro che lo schema seguente:

inserisci qui la descrizione dell'immagine

In questa configurazione, il transistor è polarizzato per essere nella regione lineare. È sul bordo di essere acceso o spento, ma non è nessuno dei due. Se fosse completamente acceso, sarebbe saturo. Se fosse completamente spento, non sarebbe affatto diretto. Ma è nel mezzo, che si chiama regione lineare.

Quando è configurato in questo modo, se tocchi (non letteralmente) alla base di esso, creando una piccola modifica, l'output cambierà ampiamente. Questo è ciò che ha chiamato l'amplificazione. Puoi chiedere a Google informazioni più dettagliate.

E se combinassimo i due circuiti sopra menzionati. Un microfono a elettrete distorto con un condensatore produrrà piccoli cambiamenti rispetto al suono. Il transistor amplifica questi piccoli cambiamenti in modo che possano essere visualizzati facilmente:

inserisci qui la descrizione dell'immagine

Si noti che ho modificato C1 in 1uF. È possibile utilizzare valori fino a 100 uF. Probabilmente avrai bisogno di condensatori elettrolitici. Si noti inoltre che non esiste più un condensatore di uscita. Ciò significa che avrai una tensione di uscita compresa tra 0 e 5 V, a seconda del livello del suono. Se si dispone di un oscilloscopio, visualizzare la forma d'onda sull'uscita. In caso contrario, prova ad accendere un LED se la lettura analogica è superiore, ad esempio, a 750. Sperimenta con valori diversi da 750, quindi segnalami i risultati.


Capisco la maggior parte di ciò, grazie. Ora poiché utilizza un transistor NPN, l'uscita sarà di circa 5 V quando l'ampiezza silenziosa / di ingresso è bassa e ~ 0 V quando l'ampiezza di ingresso / forte è alta. Questo sembra arretrato. Esiste un modo per modificarlo in modo che si comporti esattamente come sopra, nella regione lineare, con ~ 0 V che significa "silenzioso" e ~ 5 V che significa "forte"?
Ehryk,

@Ehryk No, l'output sarà compreso tra 0 e 5V. Se prendi una sirena per auto e la metti vicino al microfono a elettrete, sarà un'onda sinusoidale con un'ampiezza da picco a picco di 5 Vpp con una frequenza di circa 300Hz. 5Vpp significa che andrà a 5 V e tornerà a 0 V con una forma sinusoidale. Dai un'occhiata a questo . Quando c'è un sussurro, l'ampiezza da picco a picco sarà di circa 1 Vpp con frequenza variabile a causa del discorso. Ciò significa che andrà a 1 V e tornerà a 0 V.
Abdullah Kahraman,

Tuttavia, il mio commento sopra ignora l'offset DC.
Abdullah Kahraman,

Esiste un modo per renderlo ~ 0 V per silenzioso, ~ 5 V per rumoroso? Il condensatore non farebbe proprio questo, se poi in qualche modo invertissi la parte negativa dell'onda e la levigassi? Con forse un ponte raddrizzatore / ponte a diodi? ( en.wikipedia.org/wiki/Diode_bridge )
Ehryk,

@Ehryk Sì, è possibile aggiungere un condensatore di uscita e un rilevatore di inviluppo. Con i giusti valori dei componenti, sarai in grado di avere un livello di tensione analogico a seconda dell'ampiezza del suono. Tuttavia, non ne sono sicuro. Dovresti sperimentare. Dopo aver ottenuto i risultati, basta creare una condizione if-else nel software in base al valore ADC letto.
Abdullah Kahraman,

3

L'amplificatore di classe A dell'emettitore comune si inverte sempre anche se si utilizza un PNP, l'unica differenza è l'inversione della polarità dell'alimentazione. Se si utilizza un trasformatore audio anziché un condensatore, è possibile modificare la fase del segnale come desiderato. Ma probabilmente costerà di più rispetto all'uso di due BJT. Per risolvere comunque la tua domanda finale, devi correggere (anche con un singolo diodo) l'uscita e applicare il risultato a un carico (un resistore andrebbe bene) e inviarlo all'ingresso analogico arduino. Non c'è motivo di invertire il segnale.


Allora qual è l'amplificatore non-invertente non-IC più semplice (indipendentemente dalla classe o dall'emettitore comune)?
Ehryk,

Il collezionista comune, ma penso che non sia corretto da utilizzare in questo caso, poiché è necessario un guadagno di tensione
Felice Pollano,

La base comune, se è necessario il guadagno di tensione (ma il suo guadagno di corrente = 1). Si noti che è possibile aggiungere una seconda inversione in questa istanza semplicemente scambiando R1 e il microfono. Nessun PNP necessario. Tuttavia, l'inversione o meno NON risolverà il problema dichiarato, generando una logica 1 o 0 a seconda del volume.
Brian Drummond,

Non sto cercando una logica 0-1, gli ingressi analogici dell'Arduino hanno un ADC a 10 bit che fornisce 0-1023 per 0V-5V, rispettivamente. Puoi dare uno schema circuitale per questo?
Ehryk,

1

Questo amplificatore inverte il segnale, ma non dovresti preoccuparti di un segnale audio. Quello che avrai in uscita è AC, un condensatore blocca DC. Quindi, non si può dire ~ 0 V per rumore silenzioso e ~ 5 V per rumore forte. Se quello che vuoi è un sensore di livello sonoro, un modo semplice è aggiungere, dopo il cappuccio di uscita, un circuito chiamato "demodulatore" o "rilevatore di picco", facilmente implementabile attorno a un diodo e alcuni componenti passivi.


Puoi aggiungere un diagramma di questo? Inoltre, il rilevatore di picco non dovrebbe variare tra -2,5 V e 2,5 V? Vorrei che ~ 0V fosse silenzioso e ~ 5V il più forte, come sarebbe possibile farlo?
Ehryk,

0

Basta invertire l'uscita una seconda volta, usando un amplificatore a 2 stadi. ( Vedi questa pagina per maggiori informazioni sull'amplificazione a due stadi e transistor senza inversione. Molto approfondito )

inserisci qui la descrizione dell'immagine

Lo stesso valore di resistori e condensatori, lo stesso transistor 2n3094, aggiunto all'uscita del tuo schema esistente, fornirebbe una seconda inversione.

Ma qualcuno mi correggerà se sbaglio, ma il tuo schema mostra un semplice amplificatore distorto, quindi avresti davvero 2,5 v come intervallo di silenzio e la forma d'onda diventa più grande con più suono? Avrai un picco da 2,5 a picco-picco. Avresti 1v / 3v come volume medio.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.