Buy from US Buy from UK Buy from DE Buy from IT Buy from FR Buy from ES Buy from JP

In questa lezione, useremo un modulo potenziometro per controllare la luminosità del modulo LED. Entrambi i moduli sono collegati alla scheda Osoyoo Magic I/O per Arduino.

In questa lezione, un potenziometro, o pot, è usato per cambiare la corrente PWM nel circuito in modo che la luminosità del LED cambi di conseguenza. E poiché il potenziometro è un dispositivo analogico, il cambiamento di corrente è graduale, quindi la luminosità del lampeggio diventerà gradualmente più grande o più piccola invece di passare attraverso un ovvio processo graduale.

Quindi qual è la differenza tra un valore analogico e uno digitale? In parole povere, digitale significa tensione on/off, alta/bassa con solo due stati, cioè o 0 o 1. Ma lo stato dei dati dei segnali analogici è una gamma continua, per esempio, da 1 a 1023; i segnali analogici includono quelli dell’intensità della luce, dell’umidità, della temperatura e così via.

Ciò che intendiamo per PWM qui è la digitalizzazione dei segnali analogici, che è un processo di avvicinamento ai segnali analogici. Poiché il potenziometro immette segnali analogici, dovrebbe essere collegato alle porte analogiche, cioè A0-A5, invece di quelle digitali.

Avviso: Togliere la batteria o scollegare l’adattatore di alimentazione quando si carica il codice dello sketch su Arduino.

Puoi scaricare il codice direttamente, poi clicca su “Apri” in Mixly per scegliere il codice che hai scaricato:

Download Code

Oppure potete fare le seguenti operazioni:

Collegare la scheda Arduino al computer utilizzando il cavo USB.

Il LED verde di alimentazione (etichettato PWR) dovrebbe accendersi.In questo esempio, vediamo come usare il potenziometro per cambiare la luminosità di un LED e ricevere i dati del potenziometro in Serial Monitor per vedere il suo valore cambiare.

Dichiarare due variabili intere: Inputvalue, Output Value.

Il valore del potenziometro è inviato dal pin analogico A0 alla variabile InputValue.

Set the following blocks to print ”Input:” and the InputValue, then jump to the next line automatically.
Cliccate di nuovo sulla categoria Variabili, trascinate un blocco OutputValue nell’area vuota come nell’immagine seguente:

Clicca sulla categoria Math, trova il blocco Map nella categoria Math:

Converte il valore da 0-1023 proporzionalmente a quello nell’intervallo 0-255, e lo assegna a OutputValue.

Impostate i seguenti blocchi per stampare “Output” e l’OutputValue in modo simile.

Trascinate un altro blocco AnalogWrite dalla sezione In/Out, impostate il pin 9 come uscita e aggiungete un ritardo di 1 secondo.

Fate clic su Save dopo aver terminato la programmazione. Seleziona il tipo di scheda e la porta seriale prima di caricare. Per esempio per una scheda Uno, basta selezionare Arduino/Genuino Uno.

Successivamente, caricare il codice. Se il caricamento non riesce, controllare e correggere il codice secondo le indicazioni.Infine, lo stato cambierà in ‘Upload successo!.

Come vedete, il potenziometro è collegato al pin A0 della scheda Osoyoo Uno, che può misurare tensioni da 0V a 5V.

Il corrispondente valore restituito è da 0 a 1024. L’accuratezza della misurazione del cambiamento di tensione è relativamente alta.

Pochi secondi dopo la fine del caricamento, ruotate l’albero del potenziometro e dovreste vedere la luminosità del LED cambiare.

Se volete controllare i cambiamenti di valore corrispondenti, aprite il Serial Monitor e i dati nella finestra cambieranno con la vostra rotazione della manopola del potenziometro.