Nota
Ciao, benvenuto nella Community di SunFounder Raspberry Pi & Arduino & ESP32 su Facebook! Unisciti agli appassionati per approfondire Raspberry Pi, Arduino ed ESP32 insieme a noi.
Perché unirti?
Supporto esperto: Risolvi problemi post-vendita e affronta sfide tecniche con l’aiuto della nostra community e del nostro team.
Impara e condividi: Scambia suggerimenti e tutorial per migliorare le tue competenze.
Anteprime esclusive: Ottieni accesso anticipato agli annunci di nuovi prodotti e anteprime esclusive.
Sconti speciali: Approfitta di sconti riservati sui nostri prodotti più recenti.
Promozioni e omaggi festivi: Partecipa a promozioni e omaggi durante le festività.
👉 Pronto a esplorare e creare con noi? Clicca su [Qui] e unisciti oggi stesso!
5.11.3 Temperatura - Umidità¶
Temperatura e umidità sono strettamente correlate, sia come grandezze fisiche che nella vita quotidiana delle persone. La temperatura e l’umidità dell’ambiente umano influiscono direttamente sulla funzione di termoregolazione e sull’effetto di trasferimento del calore del corpo umano. Questo influisce ulteriormente sull’attività mentale e sullo stato psicologico, e di conseguenza sull’efficienza del nostro studio e lavoro.
La temperatura è una delle sette grandezze fisiche fondamentali nel Sistema Internazionale di Unità, utilizzata per misurare il grado di calore o freddo di un oggetto. Il Celsius è una delle scale di temperatura più utilizzate al mondo, rappresentata dal simbolo «℃».
L’umidità è la concentrazione di vapore acqueo presente nell’aria. Nella vita quotidiana si utilizza comunemente l’umidità relativa dell’aria, espressa in %RH. L’umidità relativa è strettamente legata alla temperatura. Per un certo volume di gas sigillato, maggiore è la temperatura, minore è l’umidità relativa, e minore è la temperatura, maggiore è l’umidità relativa.
Il dht11, un sensore digitale di temperatura e umidità, è incluso in questo kit. Utilizza un sensore capacitivo di umidità e un termistore per misurare l’aria circostante ed emette un segnale digitale sul pin dei dati.
Componenti necessari
In questo progetto, abbiamo bisogno dei seguenti componenti.
È sicuramente comodo acquistare un intero kit, ecco il link:
Nome |
OGGETTI IN QUESTO KIT |
LINK |
|---|---|---|
Kit Starter 3 in 1 |
380+ |
Puoi anche acquistarli separatamente dai link qui sotto.
INTRODUZIONE COMPONENTI |
LINK DI ACQUISTO |
|---|---|
- |
Schema
Collegamenti
Codice
Nota
Apri il file
5.11.temperature_humidity.inonel percorso3in1-kit\basic_project\5.11.temperature_humidity.Oppure copia questo codice nell”Arduino IDE.
Qui viene utilizzata la
DHT sensor library, che puoi installare dal Library Manager.
Dopo aver caricato correttamente il codice, vedrai il Monitor Seriale stampare continuamente la temperatura e l’umidità, e man mano che il programma si stabilizza, questi due valori diventeranno sempre più accurati.
Come funziona?
Includi la libreria
DHT.h, che fornisce funzioni per interagire con i sensori DHT. Successivamente, imposta il pin e il tipo per il sensore DHT.#include "DHT.h" #define DHTPIN 11 // Set the pin connected to the DHT11 data pin #define DHTTYPE DHT11 // DHT 11 DHT dht(DHTPIN, DHTTYPE);
Inizializza la comunicazione seriale a una velocità di trasmissione di 115200 e inizializza il sensore DHT.
void setup() { Serial.begin(115200); Serial.println("DHT11 test!"); dht.begin(); }
Nella funzione
loop(), leggi i valori di temperatura e umidità dal sensore DHT11 e stampali sul monitor seriale.void loop() { // Wait a few seconds between measurements. delay(2000); // Reading temperature or humidity takes about 250 milliseconds! // Sensor readings may also be up to 2 seconds 'old' (it's a very slow sensor) float humidity = dht.readHumidity(); // Read temperature as Celsius (the default) float temperture = dht.readTemperature(); // Check if any reads failed and exit early (to try again). if (isnan(humidity) || isnan(temperture)) { Serial.println("Failed to read from DHT sensor!"); return; } // Print the humidity and temperature Serial.print("Humidity: "); Serial.print(humidity); Serial.print(" %\t"); Serial.print("Temperature: "); Serial.print(temperture); Serial.println(" *C"); }
La funzione
dht.readHumidity()viene chiamata per leggere il valore dell’umidità dal sensore DHT.La funzione
dht.readTemperature()viene chiamata per leggere il valore della temperatura dal sensore DHT.La funzione
isnan()viene utilizzata per verificare se le letture sono valide. Se il valore dell’umidità o della temperatura è NaN (not a number), indica una lettura fallita dal sensore, e viene stampato un messaggio di errore.