Che Cos'è Il PWM E Come Viene Utilizzato In Arduino

Sommario:

Che Cos'è Il PWM E Come Viene Utilizzato In Arduino
Che Cos'è Il PWM E Come Viene Utilizzato In Arduino

Video: Che Cos'è Il PWM E Come Viene Utilizzato In Arduino

Video: Che Cos'è Il PWM E Come Viene Utilizzato In Arduino
Video: A cosa serve l'istruzione analogWrite di Arduino e cos'è un PWM - Video Arduino #5 2024, Novembre
Anonim

Scopriamo cosa c'è dietro l'acronimo PWM, come funziona, a cosa serve e come possiamo usarlo nel lavoro con Arduino.

Segnale PWM
Segnale PWM

Necessario

  • -Arduino;
  • - Diodo ad emissione luminosa;
  • - un resistore con una resistenza di 200 Ohm;
  • - informatico.

Istruzioni

Passo 1

I pin digitali di Arduino possono dare solo due valori: logico 0 (LOW) e logico 1 (HIGH). Ecco perché sono digitali. Ma Arduino ha conclusioni "speciali", che sono designate PWM. A volte sono indicati con una linea ondulata "~" o cerchiati o in qualche modo distinti dagli altri. PWM sta per "Pulse-width modulation" o Pulse Width Modulation, PWM.

Un segnale modulato a larghezza di impulso è un segnale a impulso di frequenza costante, ma un ciclo di lavoro variabile (il rapporto tra la durata dell'impulso e il suo periodo di ripetizione). A causa del fatto che la maggior parte dei processi fisici in natura ha una certa inerzia, le brusche cadute di tensione da 1 a 0 verranno appianate, assumendo un valore medio. Impostando il duty cycle, è possibile modificare la tensione media all'uscita PWM.

Se il ciclo di lavoro è del 100%, per tutto il tempo sull'uscita digitale dell'Arduino ci sarà una tensione logica di "1" o 5 volt. Se si imposta il ciclo di lavoro al 50%, metà del tempo in uscita sarà logico "1" e metà - logico "0" e la tensione media sarà di 2,5 volt. E così via.

Nel programma, il ciclo di lavoro non è impostato come percentuale, ma come numero da 0 a 255. Ad esempio, il comando "analogWrite (10, 64)" dirà al microcontrollore di inviare un segnale con un ciclo di lavoro di 25 % all'uscita PWM digitale n. 10.

I pin Arduino con funzione di modulazione della larghezza di impulso funzionano a una frequenza di circa 500 Hz. Ciò significa che il periodo di ripetizione dell'impulso è di circa 2 millisecondi, misurato dai tratti verticali verdi nella figura.

Si scopre che possiamo simulare un segnale analogico all'uscita digitale! Interessante, vero?!

Come possiamo usare questo? Ci sono un sacco di applicazioni! Ad esempio, questi sono il controllo della luminosità del LED, il controllo della velocità del motore, il controllo della corrente del transistor, l'estrazione del suono da un emettitore piezoelettrico …

Comprensione della modulazione dell'ampiezza dell'impulso
Comprensione della modulazione dell'ampiezza dell'impulso

Passo 2

Diamo un'occhiata all'esempio più elementare: il controllo della luminosità di un LED tramite PWM. Mettiamo insieme uno schema classico.

Circuito per la dimostrazione del PWM in Arduino
Circuito per la dimostrazione del PWM in Arduino

Passaggio 3

Apriamo lo sketch "Fade" dagli esempi: File -> Samples -> 01. Basics -> Fade.

Apertura di un esempio per dimostrare PWM in Arduino
Apertura di un esempio per dimostrare PWM in Arduino

Passaggio 4

Modifichiamolo un po' e carichiamolo nella memoria di Arduino.

Schizzo dimostrativo PWM
Schizzo dimostrativo PWM

Passaggio 5

Accendiamo la corrente. Il LED aumenta gradualmente di luminosità e poi diminuisce gradualmente. Abbiamo simulato un segnale analogico sull'uscita digitale utilizzando la modulazione di larghezza di impulso.

Consigliato: