Tips & Tricks - PIC

 


Collegare uno speaker piezo.


Speaker piezoelettrici

Rispetto ai tradizionali altoparlanti a cono, gli speaker piezoelettrici hanno maggiori chanches di finire in un circuito a microcontroller, dato che sono realizzati proprio per funzionare con le basse tensioni/correnti ottenibili direttamente dai pin di uscita delle logiche digitali.

Un altoparlante comune presenta un carico essenzialmente induttivo, con una resistenza ohmica non molto elevata.  Nei dispositivi piezoelettrici, invece, il trasduttore del suono agisce per via dell' effetto piezoelettrico: applicando una tensione ad un materiale particolare (quarzi, ceramiche) se ne modifica la forma meccanica; se la corrente è modulata, le deformazioni meccaniche seguiranno le variazioni. Applicando un cono o una membrana, si otterrà il suono.  I dispositivi piezo si presentano essenzialmente come carichi capacitivi, con impedenze elevate, che spesso richiedono tensioni elevate per l' azionamento meccanico.  La risposta  in frequenza del materiale piezoelettrico, principalmente in dispostivi economici, non è molto buona,sopratutto per le basse frequenze; per questo motivo, in alta fedeltà, dispositivi piezo sono impiegati come tweeter, mentre industrialmente sono la base di traduttori ultrasonici. 

E' però possibile realizzare, con questa tecnologia, trasduttori acustici miniaturizzati, operanti con basse tensioni e basse correnti, adatti, quindi, come carico dei port di un microcontroller.
Trattandosi di dispositivi di costo basso, è certamente utile includerne uno in molti progetti a  microcontroller, anche solo come diagnostica nella fase di avvio (un pò come fa il beeper del PC). L' aggiunta di una semplice routine al firmware per generare qualche "beep" sarà poi interessante in progetti che usano tasti o uscite.

Va detto che nel la definizione generica di "speaker piezo" vanno a finire una molteplicità di dispositivi che possono anche essere molto diversi tra di loro.

Troviamo elementi cilindrici o parallepipedali di molte forme e misure, ma anche diaframmi circolari di piccolissimo spessore o veri e propri altoparlanti, oltre ad una grande serie di trasduttori per ultrasuoni, pressione, ecc..

Una occhiata ai cataloghi di produttori ben noti, come Murata

Il documento http://www.murata.com/products/catalog/pdf/p37e.pdf#PKM24SPH consente di aver una panoramica dei modelli utilizzati per audio in elettronica.
Si tratta per lo più di elementi con impedenza dai 200 ohm in su, quindi adatta al collegamento diretto con il microcontroller, mentre le tensioni di azionamento vanno da pochi volt a qualche decina. I diaframmi piezoelettrici sono dischi piatti di ottone o nichel con interposta una ceramica. Possono essere a vista oppure inclusi in piccoli contenitori di varie forme, per lo più cilindriche.
Sono previsti essenzialmente per emettere "beep" o comunque suono senza alcuna pretesa di alta fedeltà, anche se, opportunamente installati, possono riprodurre voce e melodie in modo ben comprensibile.
Il suono è prodotto pilotando il piezo con un' onda quadra, con duty cycle tra il 25% e il 50%.

Si tratta per lo più di elementi con impedenza dai 200 ohm in su, quindi adatta al collegamento diretto con il microcontroller, mentre le tensioni di azionamento vanno da pochi volt a qualche decina. I diaframmi piezoelettrici sono dischi piatti di ottone o nichel con interposta una ceramica..
 Possono essere a vista oppure inclusi in piccoli contenitori di varie forme, per lo più cilindriche.
Sono previsti essenzialmente per emettere "beep" o comunque suono senza alcuna pretesa di alta fedeltà, anche se, opportunamente installati, possono riprodurre voce e melodie in modo ben comprensibile
Più adatti per la riproduzione di musica o voce sono gli altoparlanti piezoelettrici di forma rettangolare, che hanno una gamma di frequenza molto più larga.

Però occorre fare attenzione dato che i piccoli contenitori cilindrici o parallelepipedali sono utilizzati anche per altre tipologie di prodotto. 

I più comuni sono i cicalini (buzzer) ovvero degli speaker piezoelettrici, ma dotati di una propria elettronica interna, costituita da un oscillatore. Questi elementi, alimentati con una tensione continua, emettono un suono. Quindi non occorre alcun firmware per generare la nota, ma si impiegano come semplici carichi comandati direttamente dai pin del microcontroller o da un piccolo transistor.

Questi buzzer non sono utilizzabili come altoparlanti, ma sono comodi dove si voglia aggiungere una nota di avviso ad un qualsiasi progetto. Solitamente sono alimentati da tensioni tra i 5 e 24V ed hanno un consumo dell' ordine della decina di milliampere.
Essendo dotati di elettronica integrata, questi buzzer sono polarizzati, ovvero hanno un polo positivo ed uno negativo, la cui inversione è solitamente causa di guasto.

Inoltre, nelle forme adottate per gli speaker piezoelettrici e per i buzzer, si possono trovare anche altoparlanti magnetoelettrici. 
La stragrande maggioranza degli altoparlanti on board sulle schede madri e di quelli per gli chassis più recenti sono simili a quello nella foto a lato. Ma non si tratta di dispositivi piezo, bensì di altoparlanti a bobina.

In effetti, la bobina è fissa e la parte mobile è una sottile membrana elastica di metallo. In ogni caso,  non sono che una versione fortemente miniaturizzata dei normali altoparlanti a bobina e ne conservano le basse impedenze, valori comuni tra 8 e 16 ohm.

Quindi vanno utilizzati come altoparlanti a bobina e non come dispositivi piezo. Data la somiglianza esterna e l' impossibilità di vedere cosa c'è dentro (sono solitamente fusioni in plastica o inclusioni in resine, per cui tentativi di "aprirli" ne provocano la distruzione).
In pratica in questi cilindretti di plastica nera a due pin potete trovare:

  • altoparlante piezo
  • cicalino (buzzer)
  • altoparlante magnetico

Avendone tra le mani e non disponendo di alcun foglio dati, per sapere di cosa si tratta basta un tester:

  • la prima cosa è quella di misurarne la resistenza: se si tratta di un elemento a bobina, si misureranno valori di pochi ohm. Se la resistenza misurata è alta, si tratta di un piezo o un cicalino.
     
  • si potrà poi collegare il piccolo cilindro ad un alimentatore o batteria da 3-5V, osservando di mantenere la polarità corretta, come è solitamente indicato da un segno + inciso o stampato sul contenitore: se è uno speaker, si sentirà un "tock" all'arrivo della tensione, altrimenti verrà emessa la nota dell' oscillatore se si tratta di un cicalino.

Definito che si tratta proprio di uno speaker piezo, vediamo come collegarlo al microcontroller.


Applicazioni

La soluzione più semplice per pilotare uno speaker o un diaframma piezoelettrico è collegarlo direttamente ad una uscita del microcontroller.

Si dovrà utilizzare un componente previsto per questo impiego, ovvero con bassa tensione e bassa corrente.
Se si usano diaframmi piezoelettrici di grandi dimensioni, per proteggere il pin di uscita dalla forza elettromotrice generata dal materiale piezoelettrico, se urtato, è consigliabile collegare di un diodo (1N41418). Assieme a questo, come ulteriore protezione del pin e/o come regolazione del volume, si potrà inserire una resistenza Rs (100-1000 ohm) in serie tra port e speaker.

Siccome uno speaker piezo è essenzialmente un componente capacitivo, sarà opportuno collegargli in parallelo anche una una Rp (1-10k), per costituire una via che assorbe la carica accumulata nella capacità.

Inoltre è necessario rispettare la polarità, indicata sul contenitore, per non degradare le caratteristiche del trasduttore.

Occorrerà, poi,  realizzare il firmware in modo tale che una tensione continua non sia mai applicata per lungo tempo al dispositivo piezoelettrico.
Quindi, terminata l' emissione del suono, il port va posto a livello basso oppure programmato come input.

Una soluzione migliore è quella di eliminare la componente continua.

Lo scopo è raggiunto con un condensatore; si elimina così anche il problema di una possibile corrente che si avrebbe nel caso in cui il pin rimanesse a livello alto senza segnale audio. 

C1 potrà variare da 0.1 a 22 uF. 

Il suo valore influisce sia sul volume ottenuto, sia sulla frequenza di risposta ed andrà scelto caso per caso a seconda dello speaker impiegato e di quanto desiderato dal progetto.

Maggiore è il valore della tensione applicata, maggiore diventa la pressione sonora del componente suono piezoelettrico. 
Per ottenere uno swing più ampio della Vdd, una possibilità è quella di impiegare due pin, comandati in opposizione.

L' applicazione è ideale per altoparlanti piezo che funzionano meglio con tensioni più elevate della Vdd.

Un condensatore in serie alla bobina permette il passaggio della sola componente alternata e l' onda di pilotaggio viene derivata da due port in controfase. Portx0 viene mandato a livello alto, mentre Portx1 è a livello basso in una semionda e nella successiva i livelli dei port si scambiano. Questo consente di avere il massimo swing di tensione sulla bobina dell' altoparlante, circa 10 Vpp per una Vdd di 5V. 
E' anche possibile collegare l' altoparlante tra un pin e la massa o la Vdd, con in serie il condensatore, ma lo swing di tensione è la metà.

Il condensatore potrà variare tra 0.1 e 22 uF; il valore migliore dovrà essere verificato con l' altoparlante utilizzato.

Una nota sul firmware: se si passa la coppia di pin da H/L a L/H invertendo lo stato dei pin, si tratta di invertire la carica del condensatore C1. Questo impone un carico elevato ai pin, con possibili sovra tensioni. I pin sono in genere protetti da questo, ma occorre non aumentare eccessivamente il valore di C1 per evitare avere disturbi dovuti ai forti impulsi di corrente . In alternativa si può utilizzare il trucco di commutare i port nella sequenza H/H, H/L, L/L e L/H. Ogni transizione è un quarto del periodo, della frequenza voluta. In questo modo si minimizza lo swing delle sovra correnti carica/scarica del condensatore.

Solitamente i dispositivi piezoelettrici richiedono tensioni più elevate di 5V per produrre un suono accettabile e 12 o 24V sono tensioni comuni nelle caratteristiche di molti dispositivi.

Si potrà utilizzare un transistor come buffer open collector, alimentando lo speaker con una tensione maggiore della Vdd. Per speaker di grosse dimensioni può essere utile un diodo di protezione in parallelo.

Per piccoli speaker, potrà essere:

Q1 = BC547
R1 = 10 k
RP = 1 k

Volendo una regolazione del volume si potrà inserire una piccola resistenza tra collettore e speaker.

Qui è stato usato un buffer NPN open collector, ma nulla vieta di usare altre configurazioni, anche con PNP. 

Un piccolo MOSFET (2N7000, BS170 e simili) potrà essere impiegato al posto del transistor senza variare i componenti.

Se non si dispone di una tensione più elevata della Vdd o il piezo richiede una tensione più elevata di quelle disponibili, un modo semplice per ottenerla è quello di inserire un induttore in parallelo al piezo.
Durante la fase di on del transistor l' energia si accumula nell' induttore e si scarica sul piezo quando il transistor è in off. Questo permette di generare facilmente tensioni oltre i 30V con una Vdd di 5V.

La frequenza del segnale di comando della base controlla il tono del suono, mentre il duty cycle controlla il volume e varierà tra 0 e 50%.

Il valore dell'induttanza non è critico, ma va mantenuta attorno ai 30 mH o meno. Sono adatte induttanze di piccole dimensioni, dato che non devono immagazzinare energia elevata.

Sarà d' obbligo l' uso di un transistor con una Vceo abbondante, dai 60V in su, ad esempio ZTX653, PBSS8110, ecc. Anche un diodo Zener sulla Vce può essere una protezione (Vz < Vceo).

Questa soluzione è comune nel comando di emettitori piezoelettrici per ultrasuoni, che solitamente richiedono tensioni molto elevate per ottenere in uscita una potenza sufficiente.

Anche qui occorre che il firmware impedisca che una tensione continua non sia mai applicata per lungo tempo al dispositivo piezoelettrico. Quindi, al termine dell' emissione sonora, il port dovrà essere posto a livello basso per bloccare il transistor.

Per pilotare veri e propri altoparlanti piezoelettrici, anche di piccole dimensioni, la soluzione migliore è sicuramente quella di un piccolo amplificatore, realizzato con uno dei tanti integrati disponibili sul mercato, alcuni dei quali proprio dedicati a questo scopo (MAX9788 , LM4960 , TPA2100, MAX4410, ecc).

Dove non sono reperibili, è possibile integrati originariamente previsti per altri scopi, ad esempio gate driver del genere IR2302.


Correzione del suono piezo.

Gli altoparlanti piezo, sopratutto quelli di basso costo, hanno forti picchi nella loro risposta in frequenza. Se li si sta usando solo come un semplice indicatore acustico, si consiglia di scegliere una frequenza di azionamento vicino a quella di risonanza o a un picco, al fine di ottenere il volume massimo. 

Se è auspicabile una frequenza più bassa, è probabilmente conveniente utilizzare un sottomultiplo della frequenza di risonanza, in quanto in una onda quadra le armoniche dispari avranno ampiezza piuttosto elevata. Ad esempio, uno speaker con 4 kHz di risonanza, potrà essere pilotato con vantaggio a 2 kHz, con un duty cycle del 25%, ottenendo un aumento della pressione sonora di 10dB (application note Murata).

Gli altoparlanti piezoelettrici hanno la tendenza ad avere un suono metallico. Una resistenza in serie (22-100 ohm) riduce la risposta alle frequenza più alte, rendendo migliore la qualità del suono, tenendo presente che maggiore è la resistenza, maggiore sarà l' attenuazione del volume sonoro. 
Un sensibile  miglioramento della qualità sonora potrà essere ottenuto inserendo l' altoparlante in una piccola cassa acustica contenente uno smorzatore, come lana di vetro e simili.



 

Copyright © afg . Tutti i diritti riservati.
Aggiornato il 06/09/12 .