
Michael Fisher
0
2588
448
Zvyšte perfektní chléb, uvařte krásné pivo a chujte šťastná kuřata pomocí regulátoru teploty Arduino. Pokud žijete v méně spolehlivém klimatu, jako je Anglie, nejsou pokyny, které vám říkají, aby se něco udržovalo při nastavené teplotě, příliš užitečné - nemáme klimatizaci a zvyšování termostatu pro celý dům není praktické pro jen dělám bochník chleba. I když jsou mláďata udržována uvnitř, mohou zemřít, pokud teplota v noci klesne; a přimět je, aby se vylíhli, má ještě přísnější teplotní rozmezí. Ale potřebuji svůj chléb a kuřata potřebují líhnutí - takže místo nákupu drahého vybavení můžeme společně vařit příslušný regulátor teploty s Arduino a domácími kousky.
Totéž platí i pro udržování chladných předmětů - může být zbytečné provozovat celou ledničku jen pro výrobu jogurtu - ale s regulátorem teploty je princip stejný. Namísto aktivace topného článku aktivujete zástrčku na mini-lednici nebo jiném chladicím prvku, jako je Peltier (termoelektrický chladič) - a samozřejmě bude logika obrácena.
Co budete potřebovat
Toto je projekt Arduino - pokud jste nikdy předtím s Arduino nepracovali, náš bezplatný průvodce pro začátečníky je fantastické místo, kde začít.
- Arduino
- Senzor teploty - používám TMP36, levné jednoobjemové zařízení dodávané se sadou pro začátečníky Oomlout (UK) / Sparkfun (USA).
- Relé nebo RC konektorové spínače
- Šroubové svorky
- Krabice pro zachycení tepla
- Topné těleso nebo žárovka a svítidlo (nebo obojí)
Poslední položka byla záměrně ponechána neurčitá. Pokud máte žárovku (druh, který se zahřívá, ne energeticky úspornou), nebo horkou lampu pro sportovní zranění a podobně, je pravděpodobně nejjednodušší nastavit. Používám topné pásmo - v podstatě pás gumy, který se zahřívá, když prochází elektřina, používá se na karboys a sudech pro počáteční fáze kvašení při výrobě vína nebo piva - technicky to může být nebezpečí požáru, když není něco kolem , tak prosím, nedělejte to, používám to pouze k testování. Za stejným účelem si můžete také koupit topné podložky.
Z bezpečnostních důvodů používám tyto konektory RC k přepínání střídavých zařízení, s řadičem rozbitým nahoře podrobně uvedeným v tomto článku o domácí automatizaci Řídicí zařízení od Arduina: Začátek domácí automatizace Řídicí zařízení od Arduina: Začátek domácí automatizace Poslední čas, ukázal jsem vám několik způsobů, jak vaše projekty Arduino ovládat řeči prostřednictvím SiriProxy, vestavěných mluvitelných položek OS X a některých skriptů Automator nebo dokonce vyhrazeného hardwarového čipu pro rozpoznávání hlasu. Já…. Je to bezdrátové, takže se v žádném okamžiku nemusím vlastně dotýkat živých vodičů.
Snímání teploty
Začněme zapojením a testováním senzoru. [Schéma z Adafruit]
S plochou stranou směrem k sobě a nohama lícem dolů je snímač teploty TMP36 zapojen nahoru +, signál, GND v tomto pořadí. + Jde na výstup 3,3 V od Arduina; potřebujete také další vedení od +3,3 V na pin AREF - to řekne Arduino, aby místo analogového vstupu použilo 3,3 V místo 5 V. Připojte signální pin senzoru k A1. V předchozích pokusech jsem použil TMP36 přímo na 5 V linii; funguje to, bohužel, když je spárováno s relé, došlo k výpadku energie, kdykoli bylo relé aktivováno, což mělo za následek velmi kolísavé hodnoty.
Jako signální kabel jsem použil starý síťový kabel - velmi užitečné mít okolo, protože uvnitř je 8 vodičů. Kabel je ale docela tenký, proto nezapomeňte zesílit druhý konec pájkou, kde bude přišroubován do svorkovnice.
Vzorec v kódu předpokládá, že používáte snímač tMP36; měli byste být schopni najít ukázku kódu pro další senzory. Tento ukázkový kód pochází z Adafruit - nahrajte jej a otevřete sériovou konzoli, abyste zkontrolovali výstup.
Porovnejte s teploměrem, pokud je to možné. Hodnoty nejsou správné?
- Zkontrolujte, zda je napájecí napětí skutečně 3,3 V
- Je AREF připojen také na 3,3 V?
Přidání logiky přepínače
Pro ovládání topného článku používám tyto zásuvky s konektory RC od společnosti Maplin a rozebral jsem ovladač. Musí být připojen pouze zemnící a ovládací kolík. Upravil jsem kód tak, aby zahrnoval příslušné knihovny, které si můžete stáhnout zde.
V tuto chvíli také odstraním všechny odkazy na Farenheita a budu pokračovat v práci pouze s Celsiem. Poté jsem definoval požadovanou teplotu, která se má udržovat, a přidal jsem jednoduchou regulační strukturu, jako je tato:
if (teplotaC < desiredTempC) mySwitch.switchOn(1,1); Serial.println("Heater ON"); else Serial.println("Heater OFF"); mySwitch.switchOff(1,1);
Tady není nic složitého, čemu nerozumíte - pouze porovnání aktuální teploty s požadovanou teplotou a zapnutí spínače, pokud je nižší; jinak jej vypněte.
Celý kód najdete zde, ale pokud budete používat relé (není to těžké), budete ho muset upravit. Zde je kompletní schéma zapojení, které jsem použil:
Dát to všechno dohromady
Přilepte čidlo uvnitř krabičky, kterou používáte, a umístěte topný článek, kdekoli je to vhodné. Nastavte požadovanou teplotu a vše zapněte. Pokud necháte svůj počítač dosud připojen, můžete pomocí konzoly Serial pozorovat změny při zahřívání krabice.
Další práce
- Chcete-li zmírnit dopad kolísání teploty, můžete zkusit vyhladit výsledky. Vytvořte pole pro uložení 10 odečtů a vypočítejte průměr v každé smyčce.
- Chcete-li se vyhnout rychlé aktivaci a deaktivaci topného článku, vytvořte proměnnou pro uložení odpočtu. Pokaždé, když aktivujete nebo deaktivujete, zaznamenejte aktuální čas do odpočítávání, pak před přepnutím stavu znovu zkontrolujte, zda uběhlo X času od poslední změny stavu.
- U projektu bez počítače připojte malou LCD obrazovku k zobrazení aktuální teploty a umožní vám zobrazit aktuální a požadovanou teplotu.
Testování
A konečně, jaký by byl tento projekt bez malého testu? Šlehala jsem si do pečiva a připravila ho na dva bochníky. Kvašený v krabici byl mlhavě větší, ale pak okolní teplota vzduchu je dnes asi 26 stupňů Celsia - to by bylo mnohem užitečnější v zimě. Bez ohledu na to bych měl raději udělat nějakou polévku, která bude doprovázet tento krásný chléb.
Takže to, co byste udělali, vyžaduje stálou teplotu?