Semplice controllo della velocità del motore CC con PWM

Di Jeremy Cook

Una delle operazioni fondamentali dell'elettronica è il controllo della velocità dei motori CC. Qui vedremo cosa significa partendo dalle basi: inviare un segnale PWM a un MOSFET o a un driver dedicato. Questo segnale controlla direttamente la velocità del motore CC, utilizzando correnti (e spesso tensioni) più elevate di quelle che il controller può produrre da solo.

Semplice controllo PWM del LED

0323-External-LED-with-pulses-indicated-by-oscilloscope-image-2

Jeremy Cook | LED esterno con impulsi indicati dall'oscilloscopio

La PWM (ovvero la modulazione di larghezza di impulso) simula un'uscita di tensione analogica ripetendo gli impulsi per un periodo di tempo variabile. In questa configurazione, il periodo è definito come il tempo necessario per completare un ciclo di accensione/spegnimento. Il ciclo di funzionamento, spesso espresso in percentuale, è il rapporto tra tempo di accensione e tempo di spegnimento.

Un segnale di cinque Volt con un ciclo di lavoro del 50% si tradurrà in un segnale analogico simulato di 2,5 V. Un periodo di 1 ms produrrebbe questo cambiamento di stato on/off 1000 volte al secondo (o 1000 Hz), definito come la frequenza del segnale PWM. Il controllo PWM funziona bene con i motori CC e altri carichi a variazione lenta. Un'uscita analogica reale è preferibile in diverse situazioni, come la riproduzione audio.

Utilizzeremo il Raspberry Pi Pico con CircuitPython per esplorare questo principio e generare segnali PWM. Per una breve introduzione, caricare il codice che si trova qui. Questo codice alterna il LED integrato dalla massima potenza, o 65.535 (2^16 - 1), a 4095 (2^12 -1), meno di 1/10 del valore originale. Si può osservare la luce che cambia, anche se può essere difficile correlare l'emissione luminosa osservata con il valore numerico.

Circuito di controllo motore a MOSFET

0323-visual-of-MOSFET-DC-motor-control-circuit-image-3

Jeremy Cook | Circuito di controllo del motore CC a MOSFET

La metodologia di controllo di un MOSFET (FQP30N06L) è essenzialmente la stessa di un LED. Il codice per il nostro prossimo esperimento si trova qui. Collegare l'uscita di controllo al pin di guadagno del MOSFET tramite un piccolo resistore (~100Ω). Aggiungere un resistore da 10k a massa per abbassarlo quando non è presente alcun ingresso. Il cavo positivo del motore va al drain del MOSFET, mentre la sorgente del MOSFET è collegata a massa.

Il pin VBUS inizialmente forniva la tensione positiva; tuttavia, l'utilizzo di una sorgente di tensione esterna collegata a una massa comune con il Pico sarebbe generalmente migliore. È inoltre consigliabile implementare un diodo flyback per gestire i carichi induttivi vaganti.

Driver per motore L293D: un modo più semplice per costruire un circuito di controllo per motori CC

0323-L293D-Motor-Driver-image-4

Jeremy Cook | Didascalia: driver per motore L293D

I MOSFET sono ottimi dispositivi generici, ma se si desidera controllare la velocità e la direzione o se si ha più di un motore da gestire, le cose si complicano molto rapidamente. Fortunatamente sono disponibili circuiti integrati per il controllo dei motori già pronti per affrontare questa sfida, tra cui il venerabile driver L293D utilizzato in questo caso. I requisiti di cablaggio possono essere determinati dalla scheda tecnica. Il metodo che ho utilizzato per collegarlo al mio Raspberry Pi Pico è illustrato di seguito:

0323-U4-GND-pins-connected-internally-image-5

Jeremy Cook | Pin GND U4 collegati internamente

Il codice di rotazione digitale (on/off) per questa configurazione si trova qui, che fa andare il motore avanti e indietro alla massima potenza, con pause intermedie. Questo codice PWM inizializza il motore a un ciclo di lavoro specifico, ne aumenta la potenza in modo incrementale, quindi si arresta. Dopodiché aumenta la potenza nell'altra direzione e si arresta di nuovo prima di ripetere la sequenza.

Avvertimento sul driver L293D

Utilizzando quest'ultima parte di codice (con un ingresso VCC2 a 12 V e senza condensatore), ho finito per disabilitare una scheda Raspberry Pi Pico. È buona norma utilizzare dei condensatori per uniformare gli ingressi di alimentazione e logici. L'L293D dispone di capacità di bloccaggio interne per gestire i carichi induttivi, quindi non dovrebbero essere necessari diodi flyback esterni. Diverse sono le potenziali cause di quanto accaduto, ma questo dovrebbe servire come promemoria per garantire che l'hardware sia specificato e implementato per soddisfare i requisiti del mondo reale una volta lasciato il banco di prova.

Plug-and-play o personalizzazione completa?

I progetti dei circuiti di controllo dei motori CC probabilmente non resteranno per sempre su una breadboard. Da qui, vi sono due percorsi divergenti:

Per la prototipazione più avanzata o per progetti singoli, sono disponibili shield motore e schede di sviluppo che aggiungono driver come l'L293D come soluzione plug-and-play per motori CC, stepper, servo e altro ancora. L'Arduino Motor Shield è forse il più noto ed è compatibile con il fattore di forma Arduino Uno. Se si desidera rimanere sulla piattaforma RP2040, il Maker Pi RP2040 potrebbe essere un'eccellente soluzione plug-and-play per controllare motori e altri dispositivi.

all'altro estremo, è possibile integrare i progetti dei controller dei motori direttamente nel progetto del circuito stampato. Questa integrazione offre una libertà di progettazione pressoché infinita, consentendo, ad esempio, di implementare alcune delle funzioni del Maker Pi RP2040, tralasciando quelle non necessarie. Inoltre, è possibile creare la scheda con il fattore di forma fisico perfetto per la propria applicazione.

Controllo PWM di motore e carico

0323-MOSFET-for-electrical-motor-and-other-load-control-image-6

Jeremy Cook | MOSFET per il controllo di motori elettrici e altri carichi. Poiché il solenoide funge da induttore, un diodo flyback sarebbe stato comunque una soluzione valida.

I principi generali di controllo PWM qui presentati sono validi e possono essere utilizzati per una varietà di carichi; tuttavia, l'hardware presentato è stato assemblato rapidamente come demo per questo articolo. Per i progetti definitivi, è necessario considerare attentamente ogni situazione particolare, insieme alle specifiche e alle schede tecniche disponibili su Arrow. Con una corretta configurazione del controller del motore CC PWM, il dispositivo può funzionare per anni senza problemi.

Indipendentemente dallo sviluppo del progetto, Arrow è in grado di fornire i microcontroller, i MOSFET, i driver motore e gli altri dispositivi necessari per realizzare il controller di velocità per motori CC PWM.

Visualizza prodotti correlati

Arduino Motor Shield Rev3 | A000079

Arduino Corporation Kit e schede di sviluppo gestione della potenza Visualizza

Visualizza prodotti correlati

L293D

STMicroelectronics Controllo motore movimento Visualizza

ArrowPerks-Loyalty-Program-Signup-banner-IT


Ultime notizie

Sorry, your filter selection returned no results.

Non perderti le ultime novità sull'elettronica

Abbiamo aggiornato la nostra politica sulla privacy. Si prega di prendere un momento per rivedere questi cambiamenti. Cliccando su Accetto, l'utente accetta la Politica sulla privacy e Condizioni di utilizzo di Arrow Electronics.

Il nostro sito web mette i cookies sul vostro dispositivo per migliorare la vostra esperienza e il nostro sito. Leggete altre informazioni sui cookies che usiamo e su come disabilitarli qui. I cookies e le tecnologie di tracking possono essere usati per scopi commerciali.

Con un click su “Accept”, voi consentite l'inserimento dei cookies sul vostro dispositivo e l'uso da parte nostra di tecnologie di tracking. Per avere altre informazioni e istruzioni su come disabilitare i cookies e le tecnologie di tracking, clickate su “Read More” qui sotto. Mentre l'accettazione dei cookies e delle tecnologie di tracking è volontaria, una loro disabilitazione potrebbe determinare un funzionamento non corretto del sito web, ed alcuni messaggi di allarme potrebbero essere per voi meno importanti.

Noi rispettiamo la vostra privacy. Leggete qui la nostra politica relativa alla privacy