PWM per cento usi.
E' comodo avere a disposizione un generatore in cui si possa modificare sia
la frequenza che il duty cycle, magari con display e controllo digitale.
Certamente è possibile realizzarne quanti se ne desiderano partendo da uno
dei tanti microcontroller disponibili, però la cosa richiede tempo e, non
ultimo, ha un costo maggiore di quello che il mercato dei moduli rende
disponibile.
Avendo una certa urgenza di avere un apparecchio finito e trovando pronto il
generatore PWM, oltre tutto a costi infimi, nienete di meglio che utilizzare
questi moduli.
In particolare parliamo del modulo marcato XY-LPWM.
|
Si tratta di un modulo di piccole dimensioni ( mm x mm) che
svolge le funzioni di generatore PWM con frequenza regolabile da 1Hz a
100kHz e duty cycle da 0 a 100%.
Il modulo è alimentabile esternamente con tensioni da 3 a 30V, che
corrisponde anche alla tensione dell'impulso in uscita.
La regolazione della frequenza e del duty è effettuata con due
coppie di pulsanti. |
Il modulo con tiene diversi componenti, saldati sul lato opposto a quello del
display:
Il cuore del sistema è un microcontroller Holtek o ST che comanda un LCD
driver HT1621
e il relativo pannello LCD custom, retroilluminato.
L'alimentazione è ottenuta con un regolatore lineare a tre terminali che rende
in uscita 3V ed arriva a supportare fino a 30V in ingresso (anche se questo è
un dato limite di targa a cui non è il caso di avvicinarsi troppo).
La regolazione del PWM e della frequenza è ottenuta con 4 pulsanti che
incrementano o decrementano i relativi campi.
Il modulo è dotato di una presa RS232 a livello 3V per interfacciarsi con un
micro host o con un adattatore seriale per un controllo remoto dei parametri.
Il segnale in uscita è ottenuto dal collettore di un transistor NPN che ha
come pull-up una resistenza da 1k collegata alla alimentazione del modulo; si
può quindi prelevare un impulso di pari ampiezza con una corrente di alcuni
milliampere.
Il modulo occupa poco spazio, ma è open frame e non è comodissimo da usare
in tutte le situazioni. Inoltre, nelle applicazioni volute, è richiesta la
possibilità di gestire maggiore corrente con una tensione diversa da quella di
alimentazione del modulo stesso.
Ne è nata l'idea di aggiungere un buffer:
|
Il funzionamento è evidente: Quando il livello in uscita da modulo è alto, il pin PWM è
collegato alla tensione di alimentazione con R1. Questo porta la base di
Q1 allo stesso livello e il tarnsistor conduce, attivando il MOSFET.
Q1 è un NPN del genere 2N2222.
Quando Q2 è in conduzione, la base di Q1 è collegata al gnd e il
transitor non conduce. Conduce, invece, il diodo D1 che scarica a massa
la capacità del gate, bloccando il MOSFET.
Sostanzialmente, quando l'impulso è alto, il MOSFET di potenza conduce
e viceversa. |
D1 preferibilmente è uno schottky genere BAT43 e simili.
R2 è una resistenza che limita l'impulso iniziale di corrente nella
capacità del gate. Potrà essere tra 4.7 e 47 ohm. Nel prototipo in foto
è stata usato un resistore SMD.
D2 è uno zener da 17-18V per proteggere il gate da sovratensione: è il caso di inserirlo solo quando il modulo è
alimentato esternamente con tensione superiore a 20V, che è il massimo supportato dal gate. Se questo caso non è previsto e il sistema è alimentato
dalla tensione interna, fornita da una pila da 9V, lo zener può essere omesso
senza problemi.
Q3 è un MOSFET a canale N proporzionato alla richiesta di
corrente/tensione in uscita; un comune modello da 60/100V e qualche decina di
ampere è adeguato.
Nei prototipi è stato usato un IRL540N, TO220AB con 100V e 20A di
massima. Si potrà utilizzare qualsiasi altro MOSFET N adeguato alle prestazioni
che si vogliono ottenere. La scelta di un logic level garantisce una conduzione piena
con l'alimentazione interna allo strumento che, nel caso di una ricaricabile,
scende a 8.4V.
Un diodo D3 fornisce una minima protezione dall'inversione di polarità
sul carico. Nei prototipi sono stati usati dei 6A6, da 6A/400V, ma andrà
bene un altro similare.
Se si pensa di avvicinarsi alla tensione limite del MOSFET o si
presumono carichi "irregolari" può essere utile aggiungere in
parallelo al diodo D3 un varistor o Gemov, di tensione un poco inferiore alla
massima ammissibile. Se si pensa di restare sempre nei limiti di sicurezza,
questa aggiunta può essere evitata.
E' stato inserito anche il condensatore elettrolitico C1, da almeno
100uF/35V: i moduli cinesi, anche i migliori, sono proprio parchi di condensatori di
stabilizzazione ed è sempre buona cosa aggiungerne, almeno sull'alimentazione
principale.
Il transistor è fissato su un dissipatore per evitare sovra riscaldamento e
il tutto è chiuso in una scatoletta Teko 880/B da 144x85x37mm che ne fa un
oggetto robusto e poco ingombrante.
Data la disponibilità sul modulo, è stata aggiunta una interfaccia RS232
che permette di comunicare con un PC host per una programmazione remota. Vista la
semplicità dell' insieme, è stata impiegata l'interfaccia
a MOSFET descritta qui: funziona con 3V di alimentazione e non consuma
corrente, cosa utile per l'alimentazione a pila.
Lo schema a blocchi complessivo:
|
La tensione di alimentazione dell'interfaccia è prelevata dal primo pin del connettore di
programmazione del microocntroller J3, accessibile sul lato dei componenti.
A lato un ingrandimento dei collegamenti all'interfaccia RS232.
Evidenziata la presa J3 e il punto dove prelevare i 3V di alimentazione.
|
Se non si alimenta il modulo con la batteria interna, si potranno utilizzare
i pin VIN+ e VIN- ; la gamma di tensione va da 5 a 15V se si usa un logic level
e da 9-10V a 15V se si usa un MOSFET non logic level. In entrambi i casi si dovrà
partire da una tensione minima in grado di far condurre pienamente il MOSFET
|
Dato lo spessore della plastica della scatola, non è stato possibile
inserire il modulo PWM all'interno, anche solo per il fatto che i pulsanti hanno
un azionamento molto corto. Quindi il modulo è installato all'esterno.
Sono state inserite due coppie di pin per consentire di accedere al modulo
dall'esterno, alimentandolo con una tensione diversa da quella della batteria e,
e per prelevare l'impulso. |
Il MOSFET è fissato sul dissipatore con la solita pasta termoconduttiva e
collegato ad un circuito "stampato" (abbastanza grezzo, perchè
disegnato a mano con una delle
varie penne ad inchiostro, ma il concetto era quello di ottenere rapidamente un
insieme robusto e stabile) che porta i componenti del buffer. La superficie del
rame è, come solito, stagnata per evitare ossidazioni e facilitare le
saldature.
Test.
Alcuni oscillogrammi.
|
|
|
|
Freq. = 100Hz Duty = 50% |
Freq. = 1kHz Duty = 50% |
Freq.= 10kHz Duty = 50% |
|
|
Dato che il microcontroller non utilizza un
cristallo per il clock, ma l'oscillatore interno, le frequenze generate
non sono precisissime.
Il costruttore dichiara un 2%.
Le misure fatte con l'automatismo dell'oscilloscopio (Tektronic)
indicano valori mediamente superiori dello 0.2-0.3%.
Per contro, la percentuale del duty è piuttosto precisa.
Tutte le misure sono state fatto con un carico 5A a 12V (lampada
auto).
Un diodo Fast Recovery è stato collegato in parallelo al carico per
eliminare i comunque presenti effetti induttivi. |
|
Freq. = 10KHz Duty = 20% |
|
Conclusioni.
Un oggetto come questo trova posto sul banco del laboratorio per varie
applicazioni. Ad esempio:
- verifica della risposta a diverse frequenze e duty di PWM per carichi vari
(lampade, LED , motori) anche di potenza. Diventa possibile valutare
rapidamente i parametri migliori per utilizzare il carico voluto.
La tensione e la corrente massime saranno limitate dalle caratteristiche
del MOSFET usato.
Anche se il carico non è dichiaratamente induttivo, è consigliabile in
ogni caso inserire un diodo Fast Recovery in parallelo al carico
stesso, per eliminare i comunque presenti effetti induttivi, sia del carico
che dei collegamenti.
- carico dinamico per test di sorgenti di alimentazione. Solitamente un
carico elettronico comune è di tipo statico, ovvero viene regolata la
corrente assorbita senza modulazioni. Carichi elettronici che permettono una
modulazione sono meno comuni, perchè più costosi. Il nostro strumento
permette di aggiungere una variazione alla corrente di carico, permettendo
di determinare la risposta della sorgente di alimentazione alle variazioni
rapide del carico.
Due possibili configurazioni:
L'alimentatore in prova ha come carico R1+R2. Applicando il modulo PWM in
parallelo a R2, la si può cortocircuitare alla cadenza impostata, aumentando la
corrente erogata dall'alimentatore. Ad esempio, con una tensione in uscita di 12V e
R1=R2=12ohm, la corrente passa da 0.5 a 1A con il duty cycle e la
frequenza impostate.
L'alimentatore è caricato con il carico minimo di stabilità R1. La
resistenza R2 viene collegata in parallelo dal MOSFET con il duty cycle e la
frequenza impostate, aumentando la corrente.
Ovviamente occorre rispettare le polarità e non oltrepassare le
caratteristiche del MOSFET.
Il generatore PWM, essendo alimentato autonomamente a batteria, esclude
qualsiasi rischio di loop di terra durante i test.
Il segnale può essere anche prelevato dal pin PWM del modulo XY-LPWM e il modulo
stesso alimentato con una tensione esterna ai pin VIN+ e VIN- del valore voluto,
non utilizzando la batteria interna. In questo modo possiamo usare il sistema
come:
- generatore di onde quadre per ogni genere di sperimentazioni: fissando il
duty cycle al 50% avremo in uscita un'onda quadra simmetrica alla frequenza
selezionata.
- generatore di impulsi per simulare segnali di tempo o conteggio verso una
MCU
- generare onde quadre per comandare driver per motori a passi.
- verificare servocomandi
e così via.
|