La modulazione a larghezza di impulso, in inglese Pulse Width Modulation (PWM), è una soluzione largamente utilizzata in particolar modo nei sistemi di controllo della velocità dei motori elettrici. L’applicazione di questa tecnica è facilitata dal fatto che molti dei dispositivi microcontrollori disponibili sul mercato includono al loro interno un modulo hardware specializzato per semplificarne l’implementazione. In questo articolo vedremo più da vicino in cosa consiste la modulazione a larghezza d’impulso, partendo dalla descrizione della sua applicazione principale nell’ambito dei sistemi di controllo automatici ad anello chiuso.

Indice:

Sistemi di controllo digitale

Un controllore digitale può essere composto da un microprocessore e da un sistema di acquisizione dati. Esistono sistemi di controllo corredati da una sorta di controllore di secondo livello realizzato con tecnologia digitale, il quale effettua operazioni di supervisione. Uno dei compiti più importanti svolti dal supervisore, consiste nell’elaborazione dei dati raccolti sulla variabile di controllo e su quella controllata, al fine di aggiornare continuamente il modello del processo, e quindi di modificare il controllore di primo livello in modo automatico e dinamico. Lo schema di un sistema di controllo digitale a campionamento d’uscita è mostrato di seguito:

In tali sistemi si presuppone sempre l’utilizzo di un clock che sincronizza tutta la parte discreta. In questa figura è possibile notare il convertitore analogico-digitale sulla catena di retroazione ed il convertitore digitale-analogico sulla catena diretta. C(Z) rappresenta la funzione di trasferimento (f.d.t.) dell’algoritmo di controllo, P(S) la f.d.t. analogica (tempo continua) del sistema controllato e T(S) la f.d.t. del sistema di trasduzione. Generalmente si fanno alcune assunzioni per semplificare lo studio del sistema:

  1. Gli errori (inevitabili) dovuti alla quantizzazione sono trascurabili;
  2. Il tempo di esecuzione dell’algoritmo è trascurabile rispetto al tempo di campionamento.

Modulazione a larghezza di impulso per il controllo della velocità

La possibilità di controllare la velocità di un motore è subordinata all’individuazione di una qualche grandezza fisica sulla quale poter agire (variabile manipolabile) per effettuare la regolazione. Una delle tecniche maggiormente utilizzate è la modulazione a larghezza d’impulso o PWM. Questo tipo di modulazione consente di controllare la velocità di un motore DC o AC, agendo sul duty cycle di un’onda quadra. Questo è definito come il rapporto tra il tempo in cui il segnale rimane sul livello alto e il periodo di periodo di ripetizione dell’onda. La tecnica PWM si basa sul principio secondo cui alimentando in maniera intermittente un motore, con una frequenza di intermittenza sufficientemente elevata da far sì che la rotazione sia comunque uniforme, il risultato finale è identico a quello che si avrebbe se si alimentasse il motore con la tensione media vista dallo stesso.

La modulazione PWM offre quindi un’ottima soluzione per legare una grandezza facilmente controllabile come il duty cycle di un’onda quadra, alla velocità di rotazione di un motore elettrico. Consideriamo quindi la seguente onda quadra:

modulazione a larghezza d'impulso

Valgono quindi le seguenti relazioni che esprimono rispettivamente la frequenza ed il duty cycle dell’onda quadra:

duty cycle nella modulazione a larghezza d'impulso

Banalmente, la tensione media vista da una carico è data dal prodotto tra il duty cycle e la tensione massima (il valore assunto dal segnale sul livello alto).

Bisogna dire che difficilmente si ha la possibilità di pilotare un motore direttamente con il segnale PWM generato da un microcontrollore. Infatti, nella maggior parte dei casi esistono problemi di incompatibilità elettrica: la potenza erogabile dall’uscita del microcontrollore non è sufficiente, il livello di tensione è troppo piccolo rispetto a quello necessario, ecc. Per questa regione, generalmente si utilizzano dei circuiti cosiddetti driver, questi non fanno altro che separare elettricamente il segnale PWM dal carico (in questo caso il segnale PWM viene utilizzato come segnale di controllo per il driver).

Algoritmo di controllo e modulazione a larghezza d’impulso

Abbiamo visto come la modulazione a larghezza d’impulso, consentendo di agire sulla tensione media applicata per esempio ad un motore in corrente continua, offre l’opportunità di agire indirettamente sulla variabile velocità del motore. Storia diversa è invece l’algoritmo di controllo da utilizzare per intervenire sulla variabile controllata.

Per la scelta dell’algoritmo di controllo bisogna tenere conto di svariati fattori:

  • Realizzabilità ai fini del soddisfacimento delle specifiche progettuali;
  • Conoscenza del modello dettagliato del sistema controllato;
  • Difficoltà di realizzazione, costi, ecc.

In linea di principio, dato un modello del sistema controllato, per progettare un sistema di controllo (e quindi un algoritmo di controllo) che soddisfi le specifiche volute, è possibile utilizzare una delle tecniche di sintesi della teoria del controlli automatici.

Tuttavia, in molti casi questo modo di procedere potrebbe risultare eccessivamente tedioso e, spesso non si ha a disposizione un modello sufficientemente dettagliato del sistema controllato. Per queste e per altre ragioni, nella maggior parte dei casi si utilizza l’algoritmo di controllo standard PID (Proportional Integral Derivative) che può essere facilmente implementato per mezzo di microcontrollori. La seguente figura mostra lo schema tipico di un sistema per il controllo della velocità di un motore tramite microcontrollore:

schema di controllo velocità con modulazione a larghezza d'impulso

Come evidenziato in figura, le unità di conversione A/D e per la generazione del segnale PWM generalmente fanno parte del microcontrollore. Invece, le unità di pilotaggio (driver) e di trasduzione per la generazione del segnale di feedback, sono esterne al microcontrollore.

Cenni sull’algoritmo di controllo PID

L’algoritmo di controllo Proportional Integral Derivative offre il vantaggio di poter essere calibrato dopo la realizzazione del sistema e di non richiede la conoscenza di un modello dettagliato del sistema controllato. Inoltre, può essere implementato con costi ridotti e, allo stesso tempo, consente di ottenere prestazioni soddisfacenti. Di seguito la funzione che lega ingresso e uscita e lo schema a blocchi generale:

pid

Appare quindi chiaro che questi controllori svolgono tre azioni, una di tipo proporzionale, una di tipo integrativo ed una di tipo derivativo. Discretizzando la relazione ingresso uscita del PID, si ottiene l’equivalente funzione digitale:

Dove T è il tempo di campionamento, K la costante derivativa, 1/T1 il guadagno integrale e TD il guadagno derivativo.

Senza scendere nei particolari della teoria dei controlli automatici, per il momento è sufficiente sapere che sebbene il termine derivativo ed il termine integrativo consentono di migliorare la risposta del controllore, l’azione di controllo vera e propria è affidata al termine proporzionale.


Potrebbe essere utile leggere anche Smart home, domotica e oggetti connessi e Sistemi Embedded e conversione analogico digitale (A/D).


Per rimanere aggiornato su questo e altri argomenti iscriviti alla Newsletter.