Guida ai sensori per Arduino: i 12 più usati
I sensori più usati con Arduino: DHT11, DHT22, HC-SR04, LDR, PIR, MQ-2, NTC, fiamma, umidità del terreno, RFID e altri. Cosa misurano, come si collegano e a cosa fare attenzione.
I sensori sono i componenti che permettono ad Arduino di percepire il mondo esterno. Un sensore trasforma la grandezza fisica che misura (temperatura, distanza, luce, gas) in un segnale che Arduino può leggere. In questa guida trovi i sensori più usati, a cosa servono e a cosa fare attenzione quando li colleghi.



Tipi di uscita: analogica, digitale e su bus
- Sensori analogici (LDR, potenziometro, NTC, gas MQ): forniscono il valore come tensione; con analogRead si leggono da 0 a 1023.
- Sensori digitali (PIR, fiamma, reed): indicano solo sì/no; con digitalRead si leggono come HIGH/LOW.
- Sensori su bus (DHT22, BMP280, RC522): inviano i dati via I2C, SPI o un protocollo proprio; di solito serve una libreria.
Sensori di temperatura e umidità
| Sensore | Misura | Precisione | Nota |
|---|---|---|---|
| DHT11 | Temperatura + umidità | ±2 °C, ±5% | Economico, 1 lettura al secondo |
| DHT22 | Temperatura + umidità | ±0,5 °C, ±2–5% | Più preciso, intervallo più ampio |
| Termistore NTC | Temperatura | Dipende dalla calibrazione | Analogico, economicissimo |
| DS18B20 | Temperatura | ±0,5 °C | Esiste in versione impermeabile, un solo filo |
| BME280 | Temperatura + umidità + pressione | ±1 °C, ±3% | I2C, ideale per una stazione meteo |
Sensore di distanza: HC-SR04
L'HC-SR04 emette un'onda sonora e misura quanto impiega l'eco a tornare; misura all'incirca da 2 a 400 cm. È la base dei sensori di parcheggio, dei robot che evitano gli ostacoli e dei misuratori di livello. Funziona a 5 V; con ESP32 o Pico metti un partitore di tensione sul pin ECHO.
Sensore di luce: LDR
Una LDR (fotoresistenza) è un componente la cui resistenza diminuisce con la luce. Si legge da un pin analogico formando un partitore con una resistenza da 10 kΩ. Si usa per luci notturne, tapparelle automatiche e allarmi laser. Per misurare la luce con precisione (lux) si preferiscono sensori I2C come il BH1750.
Sensore di movimento: PIR (HC-SR501)
Un sensore PIR rileva le variazioni del calore emesso dal corpo umano e porta l'uscita a HIGH quando vede un movimento. Con i due potenziometri si regolano la sensibilità (3–7 m) e il tempo in cui l'uscita resta attiva. Dopo l'accensione serve circa un minuto di riscaldamento.
Sensori di gas e di fiamma
| Sensore | Rileva |
|---|---|
| MQ-2 | Fumo, GPL, metano, idrogeno |
| MQ-4 | Metano (gas naturale) |
| MQ-7 | Monossido di carbonio |
| MQ-135 | Qualità dell'aria (ammoniaca, gas simili alla CO2) |
| Sensore di fiamma | La luce infrarossa di una fiamma |
Altri sensori molto usati
- Sensore di umidità del terreno: per l'irrigazione automatica. I modelli capacitivi non si ossidano e durano di più.
- Contatto reed: si chiude quando si avvicina un magnete; usato nei sensori per porte e finestre.
- RFID RC522: legge il codice di tessere e portachiavi; usato in serrature e sistemi di rilevazione presenze. Va sempre alimentato a 3,3 V.
- Ricevitore IR (VS1838B/TSOP): legge i segnali dei telecomandi TV.
- Joystick: comando analogico a due assi per progetti di robot e giochi.
- Sensore di suono: rileva il livello sonoro, per esempio per accendere una lampada battendo le mani.
Cosa valutare nella scelta di un sensore
- Tensione di funzionamento: il sensore vuole 5 V o 3,3 V? È compatibile con il livello logico della tua scheda?
- Tipo di uscita: analogica, digitale o I2C/SPI? La tua scheda ha abbastanza pin adatti?
- Precisione e intervallo: il valore che vuoi misurare rientra nell'intervallo del sensore?
- Librerie: esiste una libreria aggiornata e diffusa per l'IDE Arduino?
- Ambiente: ti serve un modello resistente a umidità, acqua, polvere o alte temperature?
Rendere stabili le letture
Con i sensori analogici piccole oscillazioni sono normali. Calcolare la media o la mediana di più letture, usare l'isteresi sulle soglie (due soglie diverse per accendere e spegnere) e aggiornare il display solo poche volte al secondo rende le letture molto più stabili. Nei progetti a batteria, allungare l'intervallo di misura aumenta sensibilmente l'autonomia; puoi stimarla con il calcolatore della durata della batteria.
Domande frequenti
Qual è il miglior sensore di temperatura per Arduino?
Per iniziare basta il DHT11. Per misure più precise scegli DHT22 o DS18B20, e il BME280 se vuoi misurare anche la pressione.
Quanti sensori si possono collegare a un Arduino?
Dipende dal numero di pin e dal tipo di sensore. I sensori I2C possono condividere gli stessi due fili, quindi se ne possono collegare decine; per i sensori analogici l'Uno ha 6 ingressi e la Mega 16.
Perché i valori del sensore cambiano di continuo?
Le cause sono rumore, cavi lunghi e oscillazioni dell'alimentazione. Fai la media di più letture, usa cavi corti e aggiungi un condensatore da 100 nF sull'alimentazione del sensore.
Posso collegare un sensore a 5 V a un ESP32?
Il sensore può essere alimentato a 5 V, ma il segnale d'uscita va portato a 3,3 V prima di arrivare all'ESP32. Usa un partitore di tensione o un traslatore di livello; alcuni sensori esistono anche in versione compatibile con 3,3 V.
Come converto il valore di un sensore analogico in unità reali?
Prima converti la lettura in tensione (valore × 5 / 1023), poi usa la formula del datasheet del sensore per ottenere un'unità reale come temperatura, luce o concentrazione di gas. Alcuni sensori richiedono una calibrazione.
Altri articoli
Dalla temperatura alla distanza, dal gas al movimento: i sensori più usati nei progetti Arduino, con consigli di collegamento ed errori comuni, tutti in un unico posto.









