Questo esempio mostra come leggere un ingresso sul pin analogico 0.
L’ingresso viene convertito da analogRead () in tensione e stampato sul monitor seriale del software Arduino (IDE).
Vediamo cos’è un potenziometro
Un potenziometro è un semplice trasduttore elettromeccanico. Converte il movimento rotatorio o lineare dall’operatore di input in un cambio di resistenza. Questo cambiamento è (o può essere) utilizzato per controllare qualsiasi cosa, dal volume di un sistema hi-fi alla direzione di un’enorme nave porta container.
Il potenziometro era originariamente conosciuto come reostato (essenzialmente un resistore a filo avvolto variabile). La varietà di potenziometri disponibili ora è abbastanza sorprendente, e può essere molto difficile per il principiante (in particolare) capire quale tipo è adatto per un determinato compito.
Procediamo con questo tutorial. Abbiamo necessità di un po’ di hardware elettronico:
- 1 breadboard
- 1 potenziometro da 5K Ohm
- filo elettrico per breadboard
- ed ovviamente Arduino
– Collegare il pin A0 (analogico 0) di Arduino al gambo centrale del potenziometro
Inserire il codice su Arduino tramite il software IDE. Se non lo avete scaricato seguite questa guida su come installare il software di Arduino.
/* Visita ArduinoFacile su: https://arduinofacile.altervista.org La Pagina Facebook di ArduinoFacile su: https://www.facebook.com/ArduinoFacile/ ReadAnalogVoltage Legge un ingresso analogico sul pin 0, lo converte in tensione, e stampa il risultato sul monitor seriale. La rappresentazione grafica è disponibile utilizzando il monitor seriale. Attaccare il pin centrale di un potenziometro al pin A0 e i pin esterni a + 5 V e terra. */ // the setup routine runs once when you press reset: void setup() { // initialize serial communication at 9600 bits per second: Serial.begin(9600); } // the loop routine runs over and over again forever: void loop() { // read the input on analog pin 0: int sensorValue = analogRead(A0); // Convert the analog reading (which goes from 0 - 1023) to a voltage (0 - 5V): float voltage = sensorValue * (5.0 / 1023.0); // print out the value you read: Serial.println(voltage); }
Codice da notare
Nel programma o nello sketch forniti di seguito, la prima cosa che fai nella funzione di configurazione è iniziare le comunicazioni seriali, a 9600 bit al secondo, tra la tua scheda e il tuo computer con la linea –
Serial.begin (9600);
Nel loop principale del tuo codice, devi stabilire una variabile per memorizzare il valore di resistenza (che sarà tra 0 e 1023, perfetto per un tipo di dati int) proveniente dal tuo potenziometro
int sensorValue = analogRead (A0);
Per cambiare i valori da 0 a 1023 in un intervallo che corrisponde alla tensione, è necessario creare un’altra variabile, un float e fare un piccolo calcolo. Per ridimensionare i numeri tra 0.0 e 5.0, dividere 5.0 per 1023.0 e moltiplicarlo per SensorValue
float voltage = sensorValue * (5.0 / 1023.0);
Infine, è necessario stampare queste informazioni nella monitor seriale. Puoi farlo con il comando Serial.println () nell’ultima riga di codice
Serial.println (voltage)
Ora apri Serial Monitor nell’IDE di Arduino facendo clic sull’icona a destra della barra verde in alto o premendo Ctrl + Maiusc + M.
Risultato
Vedrai un flusso costante di numeri che vanno da 0.0 a 5.0. Quando si ruoterà il potenziometro, i valori sul monitor cambiano, corrispondenti alla tensione sul pin A0.