Pomocí Arduina, senzoru DHT22 a LCD můžete vytvořit gadget pro měření a zobrazování teploty a relativní vlhkosti.
Vytvoření vlastního gadgetu pro měření teploty/vlhkosti může být zábavným a obohacujícím zážitkem. Pomocí mikrokontroléru Arduino lze tento DIY projekt použít k monitorování teploty a vlhkosti v místnosti, zejména v horkém létě.
Navíc vám také může pomoci vyhodnotit výkon vaší klimatizace. Pro snímání teploty a vlhkosti použijeme elektronický senzor, který bude napojen na mikrokontrolér, který bude získávat data ze senzoru a prezentovat je na displeji.
Co budete potřebovat
Pro tento DIY projekt budeme potřebovat následující komponenty:
- Mikrokontrolér Arduino Mega
- Spojovací vodiče
- Kabel USB Type-A na USB Type-B
- senzor DHT22
- LCD displej 16x2
- Notebook nebo počítač s Software Arduino nainstalováno
- Breadboard (viz náš průvodce pomocí prkénka na krájení)
- Rezistory nebo potenciometr
Krok 1: Připojte mikrokontrolér Arduino Mega
Připojte desku Arduino k počítači nebo notebooku pomocí kabelu USB. Tento kabel nejen napájí modul Arduino a funguje jako jeho napájecí zdroj, ale také umožňuje počítači komunikovat s deskou Arduino pro provádění kódu a příkazů. Po připojení přes USB kabel k počítači Arduino ukazuje, že je v provozním stavu rozsvícením LED kontrolky.
Z panelu nabídek Arduino IDE přejděte na Nástroje kartu a vyberte Arduino Mega z Deska možnosti. Podobně vyberte port COM pod stejným Nástroje tab.
Krok 2: Připravte senzor a LCD
Projekt využívá snímač teploty/vlhkosti DHT22 a LCD obrazovku 16x2, pro které budete potřebovat příslušné knihovny Arduino IDE.
Senzor DHT22
DHT11 a DHT22 jsou elektronické senzory, které měří teplotu a vlhkost prostředí. Fungují na podobných principech, liší se však rozsahem svých specifikací. Pro tento DIY projekt používáme senzor DHT 22 (konkrétně drátovou verzi AM2302). DHT22 je lepší volbou z hlediska širokého rozsahu a přesnosti pro snímání teploty i vlhkosti.
Modul DHT22 / AM2302 má tři piny s následující konfigurací:
Kolík |
název |
Funkce |
---|---|---|
1 |
Vcc |
+5V napájení |
2 |
Data |
Údaje pro vlhkost a teplotu |
3 |
Gnd |
Společná zem pro signálovou cestu |
Nejjednodušší způsob použití senzorů DHT s mikrokontroléry Arduino je instalace DHT.h knihovnu, kterou lze použít pro senzory DHT11 i DHT22. Tato knihovna je obvykle předinstalovaná v Arduino IDE. Pokud není k dispozici, můžete jej nainstalovat z Správce knihovny pod Nástroje tab.
LCD displej 16x2
K zobrazení hodnot senzoru používáme LCD 16x2 displej pro Arduino. Tento displej má 16 hardwarových pinů a k ovládání jeho funkčnosti potřebuje rozhraní mikrokontroléru. Následující tabulka ukazuje hardwarové piny LCD a jejich funkčnost.
Číslo PIN |
název |
Funkce |
---|---|---|
1 |
Gnd |
Společná půda |
2 |
Vdd |
+5V DC (napájení LCD) |
3 |
Vee |
Ovládání jasu |
4 |
RS |
Registrovat Vyberte |
5 |
R/W |
Číst psát |
6 |
EN |
Povolit zakázat |
7 |
DB0 |
Kolík datové sběrnice 0 |
8 |
DB1 |
Kolík datové sběrnice 1 |
9 |
DB2 |
Kolík datové sběrnice 2 |
10 |
DB3 |
Kolík datové sběrnice 3 |
11 |
DB4 |
Kolík datové sběrnice 4 |
12 |
DB5 |
Kolík datové sběrnice 5 |
13 |
DB6 |
Kolík datové sběrnice 6 |
14 |
DB7 |
Kolík datové sběrnice 7 |
15 |
LED+ |
LED pozadí (+5V) |
16 |
VEDENÝ- |
LED pozadí (společná zem) |
LCD 16x2 může zobrazovat buď pomocí čtyř datových sběrnic nebo osmi datových sběrnic. Zde používáme čtyři datové sběrnice z mikrokontroléru na LCD. K Arduinu jsou připojeny pouze čtyři datové (DB4 až DB7) kolíky LCD 16x2 spolu s kolíky RS (Register Select) a EN (Enable).
Ve 4bitovém režimu jsou data/příkazy odesílány ve 4bitovém formátu nibble. Nejprve odešle vyšší 4 bity a poté nižší 4 bity dat/příkazu. Díky těmto připojením můžeme na našem Arduinu ušetřit čtyři GPIO piny, které lze použít pro jinou aplikaci. Všimněte si, že účelem kolíků 15 a 16 (LED dioda na pozadí) je osvětlit displej, pouze pro lepší viditelnost.
Můžete použít LiquidCrystal.h Knihovna Arduino pro ovládání 16x2 LCD. Tato knihovna je obvykle předinstalovaná. Pokud není k dispozici, můžete jej nainstalovat z Správce knihovny pod Nástroje kartu v Arduino IDE.
Krok 3: Sestavte obvod pro připojení senzoru a LCD
Pro tento obvod je použito následující schéma zapojení.
Arduino Mega Pin |
LCD / DHT22 Pin |
---|---|
2 |
D4 LCD |
3 |
D5 LCD |
4 |
D6 LCD |
5 |
D7 LCD |
8 |
RS LCD |
9 |
EN LCD |
52 (SCK) |
Data Out Pin DHT22 |
Deska Arduino Mega poskytuje napájecí připojení k LCD i senzoru, protože se jedná o moduly s nízkou spotřebou a lze je snadno spravovat prostřednictvím této desky. Pro ovládání jasu LCD používáme odporový dělič napětí, umístěný tak, že na kolík 3 (VEE) LCD je přivedeno přibližně 0,1 V až 0,5 V pro optimální jas. Alternativně lze místo tohoto děliče napětí použít potenciometr. Pin 5 (R/W) LCD je nastaven na zem pro funkci pouze zápisu.
Krok 4: Nahrajte svůj kód do Arduina
Nyní je čas nahrát svůj kód na desku Arduino Mega, abyste provedli požadovaný úkol, který zahrnuje načtení dat senzoru z DHT22 a jejich zobrazení na LCD.
Kód pro tento projekt je dostupný zde GitHub repo.
Kód je navržen podle zapojení zapojení obvodu zobrazeného v kroku 3. Nyní jej můžete otestovat pro hodnocení výkonu.
Testování modulu
Aby bylo zajištěno, že senzor funguje správně a detekuje teplotu a vlhkost, držíme senzor několik palců nad šálkem horké vody (vyzařující horké páry). Senzor DHT 22 neponořujte do vody, mohlo by dojít ke zkratu a trvalému poškození senzoru! Po několika sekundách lze pozorovat zvýšení teploty a procenta vlhkosti, což ukazuje, že modul funguje správně.
Postavili jste si vlastní teploměr a vlhkoměr
Nyní, když jste si postavili svůj vlastní teploměr a vlhkoměr, můžete tento nápad dále rozšířit začleněním dálkového ovládání sledování teploty a vlhkosti přenosem těchto informací do jiného zařízení pomocí Wi-Fi nebo Bluetooth adaptér. Data senzoru z tohoto modulu můžete také použít k aktivaci klimatizačního zařízení místnosti nebo výfukového systému automaticky zapínat a vypínat podle požadovaného nastavení, aby se udržela teplota/vlhkost uvnitř místnosti nebo pracoviště.