Lezione 35: Utilizzo del sensore di temperatura HTU21D con Arduino

Lezione 35: Utilizzo del sensore di temperatura HTU21D con Arduino

Questo progetto ti guida nell'uso di un Arduino per leggere i dati di temperatura e umidità da un sensore HTU21D-F. Questo sensore è economico e ampiamente disponibile, il che lo rende perfetto per una varietà di progetti. Il sensore fornisce i dati tramite I2C, un comune protocollo di comunicazione digitale. Imparare a usare questo sensore e l'I2C aprirà molte possibilità per i tuoi progetti.

HTU21D module

Applicazioni pratiche:

  • Costruire un monitor ambientale per la casa intelligente
  • Creare una stazione meteorologica
  • Sviluppo di un involucro a clima controllato per apparecchiature elettroniche sensibili
  • Monitoraggio della temperatura e dell'umidità in una serra o in un terrario

Hardware/Componenti

Avrai bisogno dei seguenti componenti:

  • Scheda Arduino (ad es., Uno, Nano)
  • Sensore di temperatura e umidità HTU21D-F (nel video a 00:22)
  • Fili di collegamento
  • Breadboard (opzionale, ma consigliata)

Guida al cablaggio

Il cablaggio è semplice. Collega il sensore all'Arduino come segue (nel video a 02:28):

  • VCC del sensore al 3.3V dell'Arduino
  • GND del sensore al GND di Arduino
  • SDA del sensore su Arduino A4
  • SCL del sensore all'A5 dell'Arduino

Arduino wiring for HTU21DF light intesity sensor
Arduino wiring for HTU21DF light intesity sensor

Spiegazione del codice

Il codice fornito utilizza la libreria Adafruit HTU21D-F (nel video a 03:03) per interagire con il sensore. Le parti chiave sono:


// These are the lines that you can configure:
const int inPin =A0;//can change
const int iteration = 1000; //can change (see video at 00:22)
const float LM35_FACTOR =0.01;// do not change

inPin: Specifica il pin analogico collegato al sensore di temperatura. Puoi cambiarlo per adattarlo al tuo cablaggio.

iteration: Questa variabile controlla il numero di letture effettuate per calcolare la temperatura media. Aumentarla migliora la precisione ma rallenta le letture (nel video a 00:22).

IlgetHTU()Una funzione (nel video a 08:46) permette di recuperare la temperatura in Celsius, Fahrenheit o Kelvin, oppure l'umidità, passando un carattere ('C', 'F', 'K' o 'H') come argomento. Il codice poi usa questa funzione per visualizzare i dati sul monitor seriale.


float getTemperature(char type) {
  // ... (code to read temperature and humidity) ...
  if (type == 'F') {
    value = averageTemperature * 9 / 5 + 32; // Fahrenheit
  } else if (type == 'K') {
    value = averageTemperature + 273.15; // Kelvin
  } else {
    value = averageTemperature; // Celsius
  }
  return value;
}

Progetto/Dimostrazione dal vivo

Il video dimostra il funzionamento del sensore (nel video al 07:34). Il monitor seriale visualizza le letture di temperatura e umidità. Il presentatore mostra anche come il codice possa attivare azioni in base alle soglie di temperatura (nel video al 06:45).

Capitoli

  • [00:00] Introduzione
  • [00:22] Panoramica del sensore
  • [01:22] Revisione della scheda tecnica
  • [02:28] Cablaggio
  • [03:03] Installazione della libreria
  • [04:05] Spiegazione del codice (Parte 1)
  • [08:33] Spiegazione del codice (Parte 2)
  • [07:34] Dimostrazione dal vivo

Immagini

thumb_robojax_HTU21DF_types-1756423961-8524
thumb_robojax_HTU21DF_types-1756423961-8524
Arduino wiring for HTU21DF light intesity sensor
Arduino wiring for HTU21DF light intesity sensor
HTU21D module
HTU21D module
HTU21D module-back
HTU21D module-back
503-Lesson 42: Using an LM35 Temperature Sensor with Arduino
Lingua: C++
Copia!

Cose di cui potresti avere bisogno

Risorse e riferimenti

File📁

Altri file