Lektionsmål
I denne lektion vil vi udforske AHT10 Temperatur- & Fugtighedssensoren, en vigtig komponent i din IoT-luftkvalitetsovervågningsstation. Ved lektionens afslutning vil du forstå, hvad AHT10-sensoren er, hvordan den fungerer, og hvorfor den er velegnet til at måle miljødata i dette projekt.
Hvad er AHT10-sensoren?
AHT10 er en højpræcisions, fuldt kalibreret digital sensor designet til at måle både temperatur og fugtighed. Den kombinerer præcise målinger med en kompakt formfaktor, hvilket gør den ideel til IoT-applikationer.
Liste over nødvendige komponenter:
![]() |
AHT10 Høj præcisions temperatur og fugtighedsmåler |
![]() |
TTGO T-Display ESP32 16MB med WiFi, Bluetooth og 1.1" farve LCD skærm |
![]() |
Dupont kabler 40 stk |
Vigtige funktioner ved AHT10:
- Temperaturområde: -40°C til 85°C med en nøjagtighed på ±0,3°C.
- Fugtighedsområde: 0% til 100% relativ fugtighed med en nøjagtighed på ±2% rH.
- I2C-interface: Bruger I2C-protokollen til kommunikation, hvilket forenkler kabelføring og programmering ved tilslutning til ESP32.
- Lavt strømforbrug: Velegnet til batteridrevne IoT-enheder og muliggør langvarig drift i fjerntliggende miljøer.
Hvordan fungerer AHT10-sensoren?
AHT10-sensoren fungerer ved at bruge en specialiseret polymerkondensator til at måle relativ fugtighed og en termistor til at måle temperatur. Her er en kort gennemgang af, hvordan den virker:
- Måling af fugtighed: Sensoren registrerer ændringer i kapacitansen, efterhånden som fugtniveauet i luften ændrer sig, hvilket gør det muligt at beregne den relative fugtighed.
- Måling af temperatur: Sensoren bruger en termistor, som er en type modstand, hvis værdi ændrer sig med temperaturen, til at registrere den omgivende temperatur præcist.
Sensoren digitaliserer derefter disse værdier og sender dem til ESP32 via I2C-interface.
Hvorfor er AHT10-sensoren ideel til vores projekt?
AHT10-sensoren er et fremragende valg til vores IoT-luftkvalitetsovervågningsstation på grund af dens kombination af præcision, lavt strømforbrug og let integration. Her er nogle grunde til, at den passer perfekt:
- Præcise målinger: Sensoren giver pålidelige data, hvilket er afgørende for miljøovervågning.
- Kompakt design: Den lille størrelse gør det let at integrere sensoren i ethvert IoT-projekt uden at optage meget plads.
- Enkel kommunikation: Brug af I2C-protokollen gør tilslutningen til ESP32 enkel, da der kun kræves to kabler til kommunikation, hvilket reducerer kompleksiteten i kredsløbet.
Hvordan passer AHT10 ind i vores projekt?
Dataene fra sensoren vil blive behandlet af ESP32 og enten vist på en TFT-skærm eller sendt til en webserver for fjernadgang.
Sensorens rolle i projektet:
- Indsamling af data: AHT10 vil kontinuerligt overvåge omgivelserne og registrere temperatur- og fugtighedsværdier.
Hvad sker der nu?
Vigtige pointer:
- AHT10 er en præcis og strømbesparende sensor til måling af temperatur og fugtighed, hvilket gør den ideel til vores IoT-luftkvalitetsovervågningsstation.
- Den kommunikerer med ESP32 via I2C-protokollen, hvilket forenkler ledningsføring og programmering.
- I projektet vil sensoren indsamle realtidsdata om miljøet, som vises lokalt og deles via WiFi.
Om målingerne: Stationen i denne serie måler temperatur og relativ luftfugtighed med AHT10. Det er indeklimamålinger, ikke direkte målinger af CO2, VOC eller partikler. Seriens betegnelse ”luftkvalitetsmonitorering” skal forstås med denne begrænsning.
Skriv og kør sensorkoden
Installer Adafruit AHTX0 og de afhængigheder, Library Manager foreslår. Biblioteket Adafruit_AHTX0 blev introduceret i lektion 9. Tilslut AHT10 som i lektion 7: VCC til 3.3V, GND til GND, SDA til GPIO 21 og SCL til GPIO 22. Disse ben gælder det oprindelige ESP32/TTGO T-Display-board i serien; kontrollér pinout for andre boardvarianter.
#include <Wire.h>
#include <Adafruit_AHTX0.h>
Adafruit_AHTX0 aht;
void setup() {
Serial.begin(115200);
Wire.begin(21, 22);
if (!aht.begin(&Wire)) {
Serial.println("AHT10 not found. Check power and I2C wiring.");
while (true) { delay(100); }
}
}
void loop() {
sensors_event_t humidity, temp;
aht.getEvent(&humidity, &temp);
Serial.print("Temperature: ");
Serial.print(temp.temperature);
Serial.println(" C");
Serial.print("Relative humidity: ");
Serial.print(humidity.relative_humidity);
Serial.println(" %");
delay(2000);
}Opret en sketch, indsæt koden, vælg korrekt board og port, og upload. Åbn Serial Monitor med 115200 baud. Hvert 2. sekund vises temperatur i °C og relativ luftfugtighed i %. Hvis sensoren ikke findes, stopper programmet efter en fejlbesked: kontrollér strøm og I2C-ledninger.
Koden bruger begin() til initialisering og getEvent(&humidity, &temp) til aflæsning. Rækkefølgen er fugtighed først, temperatur derefter. API og feltnavne er kontrolleret mod Adafruits officielle eksempel. Officielt Adafruit AHTX0-eksempel.
I næste lektion, afsnit 11, gennemgår vi fejlfinding i Arduino IDE. Afsnit 12 introducerer TFT-skærme.


