Teploměr a vlhkoměr AM2320 je vstupní modul pro Arduino. Tento modul obsahuje senzor AM2320, který je pinově kompatibilní s podobně vypadajícím DHT12. Senzor komunikuje po sběrnici I2C a díky jeho vlastnostem je o něco přesnější než zmíněný DHT12. Rozsah měření teploty je -40 až +80 °C s přesností ± 0,5°C. Vlhkost lze měřit v rozsahu 0-99,9 % RH (relativní vlhkost) s přesností ±2 % RH. A pro napájení je možné použít napětí v rozsahu 3,1-5,5 Voltu.
Pro úspěšné propojení modulu AM2320 a Arduino desky stačí zapojit celkem 4 vodiče. Propojíme „+“ s 5V Arduina, SDA s pinem A4, „-“ se zemí Arduina a SCL s pinem A5. Pro piny SDA a SCL musíme vybrat vždy vyhrazené I2C piny na námi vybrané desce, u Arduino UNO jsou to právě piny A4 a A5.
Pro úspěšné nahrání uvedeného ukázkového kódu je nutné stáhnout a naimportovat knihovnu AM2320, návod, jak na to, je uveden zde. Ukázkový kód obsahuje na svém začátku připojení potřebných knihoven a inicializaci modulu z knihovny. V podprogramu setup provedeme zahájení komunikace po sériové lince. Nekonečná smyčka loop začíná načtením stavu připojeného senzoru přímo v příkazu switch. Tento příkaz následně kontrolujeme na tři různé stavy. Ve stavu „2“ víme, že je chybný kontrolní součet dat CRC. To se může stát v případě špatného zapojení či vadného senzoru. Pokud se dostaneme do stavu „1“, tak je senzor špatně připojen nebo kompletně zničen. V případě, že je ale vše v pořádku, tak ve stavu „0“ jednoduše načteme teplotu a vlhkost do proměnných a oba údaje poté vytiskneme po sériové lince. Na konci programu je už jen pauza po dobu jedné sekundy.
// Teploměr a vlhkoměr AM2320
// připojení potřebných knihoven
#include <Wire.h>
#include <AM2320.h>
// inicializace modulu z knihovny
AM2320 senzor;
void setup() {
// zahájení komunikace po sériové lince
// rychlostí 9600 baud
Serial.begin(9600);
}
void loop() {
// načtení stavu připojeného senzoru
switch (senzor.Read()) {
// v případě stavu "2" je chyba komunikace
case 2:
Serial.println("Chybny CRC soucet, chyba v komunikaci!");
break;
// v případě stav "1" je senzor offline nebo špatně připojen
case 1:
Serial.println("Senzor offline!");
break;
// v případě stavu "0" je vše v pořádku
// a můžeme vytisknout údaje
case 0:
float teplota = senzor.t;
float vlhkost = senzor.h;
Serial.print("Teplota: ");
Serial.print(teplota);
Serial.print(" stC, vlhkost: ");
Serial.print(vlhkost);
Serial.println("%");
break;
}
// pauza před novým měřením
delay(1000);
}
Po nahrání ukázkového kódu do Arduino desky s připojeným modulem AM2320 dostaneme například tento výsledek:
Teploměr a vlhkoměr AM2320 je zajímavý vstupní modul pro Arduino. Vzhledově i zapojením je velmi blízký modulu DHT12, ale svými parametry ho AM2320 převyšuje. Hodí se do všech projektů, kde potřebujeme měřit teplotu a vlhkost s rozumnou přesností, jako například domácí meteostanice, bezdrátová čidla a podobně. Jeho výhodou je příznivá cena a díky ní dobrý poměr cena/výkon.
Motorizovaný kulový ventil. Má široké uplatnění v různých průmyslových a obytných instalacích. Může být integrován do automatických systémů řízení, kde je možné ovládat průtok dálkově nebo automatizovaně podle předem nastavených podmínek.
Motorizované kulové vently s obvodem CR01, CR02, CR03 nebo CR04 je poměrně jednoduché po elektrické stránce správně zapojit. U ventilu s obvodem CR05 je tomu ale trochu jinak - ventil si sám nehlídá krajní polohy otevření, nebo zavření. Z toho důvodu vznikl tento článek, ukazující některé výhody, použití a především správné zapojení ventilu s obvodem CR05.