Modulazione della larghezza dell'impulso in Arduino

Modulazione della larghezza dell'impulso in Arduino
La modulazione della larghezza dell'impulso noto anche come PWM è una tecnica che comporta l'alterazione nella larghezza dell'impulso del segnale generato a conseguenza viene modificato il ciclo di lavoro del segnale che darà il segnale variabile. Questo input variabile può essere utilizzato in molte applicazioni come il controllo della luminosità dei LED, il controllo della velocità dei motori e dove è richiesta l'uscita analogica utilizzando le sorgenti digitali.

Modulazione della larghezza dell'impulso con Arduino

La modulazione della larghezza dell'impulso può essere eseguita in Arduino usando il AnalogWrite () funzione. La stessa funzione AnalogWrite () genera il segnale dell'onda quadra che può essere variata dalla funzione.

IL AnalogWrite () La funzione utilizza due argomenti, uno è un spillo che specificherà il numero di porta a cui genererà il segnale modulato e l'altro valore che specifica il valore del ciclo di lavoro del segnale modulato.Per utilizzare la funzione AnalogWrite nella programmazione Arduino, è necessario seguire la seguente sintassi

analogwrite (numero pin, valore del ciclo di lavoro);

Il numero PIN è del tipo di dati interi mentre il valore del ciclo di lavoro ha la forma da zero a 255.La larghezza dell'impulso è la parte dell'impulso in cui il suo valore è elevato. Allo stesso modo, la durata del ciclo dell'impulso è la durata dei suoi valori alti e bassi. Inoltre, la percentuale del rapporto tra durata della larghezza dell'impulso e durata del ciclo è chiamata ciclo di lavoro. Vengono dati diversi cicli di lavoro per una maggiore comprensione dell'argomento. I grafici tracciati hanno tempo sull'asse orizzontale mentre la tensione è sull'asse verticale. Queste sono le percentuali per quanto tempo la tensione era alta. Il ciclo di lavoro è il momento per il quale la tensione era alta.

Esempio

Il codice per la modulazione della larghezza dell'impulso è riportato di seguito.

int ledpin = 6; // Arduino UNO PIN PWM: 3, 5, 6, 9, 10
int luminosità = 0;
int fadeValue = 5;
void setup ()
pinMode (ledpin, output);

void loop ()
analogwrite (ledpin, luminosità);
luminosità = luminosità + FadeValue;
if (luminosità = 255)
FadeValue = -FadeValue;

ritardo (10);

Prima il Ledpin La variabile viene dichiarata al quale la luce a LED è collegata quindi per archiviare il valore analog a una variabile di luminosità è dichiarato. Il valore ciclerà nell'intervallo compreso tra 0 e 255. Per controllare la sbiadtezza del LED una variabile chiamata FadeValue si usa.

Venendo alla sezione di configurazione viene dichiarato il numero PIN assegnato al LED e nella sezione Loop il segnale di modulazione della larghezza dell'impulso viene generato utilizzando la funzione AnalogWrite (). La luminosità del LED è controllata con l'alterazione della larghezza dell'impulso. Il perno e la luminosità a LED sono presi come argomenti della funzione AnalogWrite. Dopodiché viene aggiunta la variabile di luminosità e dissolvenza. Per aumentare la luminosità di cinque volte in ogni volta che il ciclo funziona, è per questo che è dato il valore 5.

La condizione if viene utilizzata per eseguire il codice solo se la luminosità è inferiore a quella pari o superiore a quella uguale a 255.

Quindi all'inizio il valore per la luminosità è zero e la dissolvenza è 5. Quindi nella prima affermazione la quantità di dissolvenza viene aggiunta alla luminosità e ora la luminosità ha un valore di cinque. Quindi arrivare all'istruzione if la condizione è falsa poiché la luminosità non è inferiore a quella zero o la luminosità è maggiore di uguale a 255. Quindi il ciclo continuerà a funzionare fino a quando il valore della luminosità non raggiunge 255. Quindi se la condizione if è vera, allora viene aggiunto un valore di cinque 5 negativi all'importo di dissolvenza.

Quindi ora ad ogni iterazione il valore diminuirà di 5 fino a raggiungere lo zero e il LED si spegne.

Conclusione

Ci sono una vasta gamma di progetti che possono essere realizzati utilizzando Arduino. L'uso in qualche modo Arduino rende facile lavorare sui progetti. In questo articolo viene discussa la modulazione della larghezza dell'impulso (PWM) e viene descritta una delle sue applicazioni per fornire maggiori dettagli su come la modulazione della larghezza dell'impulso (PWM) può essere utilizzata per compiti specifici nella programmazione Arduino.