Obsah:
- Krok 1: Potřebujete
- Krok 2: Vytvořte rozhraní RS232
- Krok 3: Testování rozhraní RS232
- Krok 4: Vyrobte senzory a síť
- Krok 5: Nastavení softwaru - získávání dat
- Krok 6: Nastavení softwaru - grafy
- Krok 7: Implementace 1 - Monitorování serverové místnosti
- Krok 8: Implementace 2 - Meteorologická stanice
- Krok 9: Implementace 3 - Studentská kolej
Video: Teplotní senzor / meteorologická stanice: 9 kroků (s obrázky)
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:24
Vytvořte meteorologickou stanici nebo teplotní monitor pomocí velmi chladného digitálního teplotního senzoru DS1820. Toto nastavení používám k monitorování serverové místnosti a jako meteorologické stanice. Tento projekt se skládá z:
- Síť autobusů Dallas 1-Wire
- Rozhraní mezi RS-232 a systémem Dallas 1-Wire
- Digitální teplotní senzory připojené ke sběrnici Dallas 1-Wire (DS1820/DS18s20)
- Nastavení softwaru ke shromažďování a grafu teplot
Aktualizováno 2007-11-18, aby obsahovalo automatické grafy a obrázky skutečných implementací tohoto systému.
Krok 1: Potřebujete
To je to, co potřebujete k vytvoření meteorologické stanice nebo záznamníku teploty:
- Některé linuxové dovednosti
- Základní znalosti elektroniky, pájení atd.
Komponenty
- 1 Zenerova dioda 6,2 V (1N5234)
- 1 Zenerova dioda 3,9 V (1N5228)
- 2 diody Schottky (1N5818)
- 1 odpor 1,5 k
- 1 2pinový šroubový terminál
- 1 zásuvka D-sub 9 s pájecími body
- 1 malý kousek perfboardu.
- Jeden nebo více digitálních teplotních senzorů Dallas Semiconductor DS1820 nebo DS18s20
- Kabeláž Cat5
- Smršťovací trubice
Krok 2: Vytvořte rozhraní RS232
Líbí se mi stavět 1-Wire busmaster tak malý, že může jen sedět v zadní části počítače v portu rs232.
Krok 1) Zjistěte, jak malý to můžete udělat. Dejte všechny komponenty na perfbaord. Umístěte je s ohledem na obvod. Nechceme do spodní části obvodu přidávat žádné dráty! Viz obrázek. Krok 2) Vystřihněte perfboard správné velikosti. Stačí několikrát přetáhnout ostrý nůž přes řadu otvorů, kde chcete řezat. Udělejte to na obou stranách a pak to rozlomte na dvě části. Obvykle se zlomí na zlomové linii, kterou jste vytvořili. 3) Připájejte součásti na místo. a připojte pájecí body k dokončení obvodu.
Krok 3: Testování rozhraní RS232
1) Stáhněte a nainstalujte digitemp. Na Debianu a Ubuntu Linux se to provádí spuštěním `sudo apt-get install digitemp`. 2) Připojte DS1820 k vašemu okruhu. Prostřední noha jde do portu DQ, další dvě nohy jdou v GND3) Připojte obvod k portu rs232 počítače. Pokrývám to pouze v Linuxu, ale je to možné i ve Windows..4) Pokud příkaz `digitemp` nefunguje, je to proto, že existuje více verzí digitemp.type digitemp, poté stisknutím tab zobrazíte všechny.. digitemp_DS9097 je tím pravým pro tohoto 1wire busmastera. Jen pro jednoduchost chceme, aby příkaz byl `digitemp`, ne` digitemp_DS9097`.type `sudo ln -s/usr/bin/digitemp_DS9097/usr/bin/digitemp`5) Jako root nebo pomocí sudo: Spusťte `digitemp -s/dev/ttyS0 -i`. To vyhledá senzory v síti 1wire a vytvoří konfigurační soubor pro digitemp. Pokud používáte COM2, použijte -s /dev/ttyS1. Pro čtení teploty připojeného teplotního čidla spusťte `digitemp -a`. Viz snímek obrazovky 6) Udělejte to pro všechna čidla, která budete používat, a zapište si adresy Když máte více senzorů, je dobré vědět, který je který.
Krok 4: Vyrobte senzory a síť
Při zapojování 1wire sítě budete chtít použít síťové kabely cat 5.
Měl jsem špatné zkušenosti s používáním jiných kabelů a kombinováním různých typů kabelů. Při přejezdu přes cat5 může mít 1wire bus docela dlouhé kabely. V jednom nastavení meteorologické stanice spouštím 30 metrů cat5 z technické místnosti s počítačem Linux a až na střechu. Na střeše je kabel rozdělen na 3 5–15 metrů dlouhé kabely se snímačem na konci každého z nich. Toto nastavení funguje bezchybně. 1-drátová síť je docela robustní. Výroba senzoru: Chcete, aby byl senzor jak vodotěsný, tak tuhý. 1) Odřízněte kabel Cat 5 na požadovanou délku. 2) Odizolujte konec snímače. Odřízněte 3 ze 4 párů, ponechte jeden zelený/bílý. 3) Nasuňte malou smršťovací trubičku přes zelený vodič. 4) Připájejte zelený vodič ke střednímu kolíku DS1820 5) Vytáhněte smršťovací trubku nahoru, aby pokryla veškerý kov prostřední nohy a kov drátu, který je k ní připojen. Poté jej zahřejte zapalovačem nebo horkovzdušnou pistolí, aby se zmenšil na místě 6) Pájením spojte bílý/zelený drát na dva další kolíky. 7) Na senzor a kabel nasaďte větší smršťovací bužírku. Viz obrázek. Poté jej jemně zahřejte zapalovačem, aby se zmenšil. Nechcete věc zapálit, držte plamen 4-10 mm od smršťovací trubice. 8) Umístěte senzory kamkoli chcete, připojte je k rozhraní rs232 a zapojte do počítače.
Krok 5: Nastavení softwaru - získávání dat
Nyní, když jsme naše senzory na místě, chceme z nich shromáždit nějaká data. Jako root na vašem linuxovém počítači: 1) Spusťte `digitemp -s /dev /ttyS0 -i -c /etc/digitemp.conf` Tím se vytvoří konfigurace soubor digitemp.conf se senzory yoru. Sledujte výstup a zjistěte, jaké číslo senzory získají. 2) Zkontrolujte teplotu pomocí `digitemp -aq -c /etc/digitemp.conf`3)Dumpujte výstupní data do souboru. Vypsal jsem soubor do souboru apache wwwroot, takže mám přístup k teplotě odkudkoli. Příkaz `digitemp -aq -c /etc/digitemp.conf>/var/www/digitemp.txt` vloží výstup digitempu do soubor digitemp.txt4) Automatizujte tento proces: zadejte `crontab -e`, otevře se root crontab. Type` * * * * * digitemp -aq -c /etc/digitemp.conf> /tmp /digitemp; mv /tmp /digitemp /var /www /digitemp.txt` do tohoto souboru a uložte jej. Spuštěním 'crontab -l` potvrďte, že crontab byl nainstalován. Důvodem je propojení výstupu do /tmp a následný přesun it to /var /www, is that digitemp uses a few seconds to competition its run. Pokud se pokusíte získat přístup k výstupu, když běží digitemp, dostanete neúplný soubor. To by mohlo zpackat další skripty, které čtou data z tohoto souboru. (Toto není zahrnuto na snímku obrazovky, zapomněli jste to udělat) Vaše meteorologická stanice je nyní v provozu. Pomocí dat můžete dělat, co se vám líbí, vytvářet grafy, používat je k odesílání e -mailů v případě vysoké/nízké teploty atd.
Krok 6: Nastavení softwaru - grafy
Toto je ošemetná část, zde je zapotřebí mnoho skriptů. 1) Vytvořte místo pro uložení skriptů, místo pro ukládání obrázků a místo pro ukládání dat. `Mkdir /etc /tempsensor``mkdir /var /www /teplota `` mkdir/var/log/digitemp_rrd`2) Instalace softwaru: Budete potřebovat PHP a RRDtool. `apt-get install rrdtool``apt-get install php` (existuje mnoho balíčků php, nainstalujte jeden s spustitelný soubor konzoly) 3) Stáhněte si a nainstalujte skripty zodpovědné za vytváření grafů: Stáhněte si tempsensor-0.1.tar.gz na svůj linuxový stroj.`tar xvzf tempsensor-0.1.tar.gz``cp -v tempsensor/*/etc/ tempsensor`4) Konfigurujte skripty Otevřete /etc/tempsensor/config.php a sledujte komentáře v tomto souboru. Změňte skript tak, aby četl vstupní data z „/var/www/digitemp.txt“, pokud jste v předchozím kroku následovali příklad.5) Automatizovat. Přidejte položku crontab stejným způsobem jako v předchozím kroku. Skript by měl běžet každou 5. minutu. Řádky by měly vypadat takto: `` */5 * * * * php /etc/tempsensor/logdata.php``*/5 * * * * php /etc/tempsensor/graphdata.php `6) Spusťte skripty ručně a zkontrolujte, zda funguje. konfiguračního souboru.
Krok 7: Implementace 1 - Monitorování serverové místnosti
Moje první implementace tohoto systému byla v serverovně na studentských kolejích, kde pracuji. Zde je několik obrázků pro vás.
Krok 8: Implementace 2 - Meteorologická stanice
Když jsem vybavil serverovnu teplotními senzory, nemohl jsem odolat a dát je na střešní ručník!
Meteorologická stanice je o něco složitější než serverovna. Venku dochází k velkému rušení. Slunce může zasáhnout senzor a poslat jej z -1 na 30 c za 5 minut. Vyřešil jsem to pomocí tří senzorů umístěných v bodech, které by přijímaly sluneční světlo v různých časech během dne. Vzhledem k tomu, že teplo je jediným „šumem“při měření, používám jako svou „venkovní teplotu“pouze snímač s nejnižšími hodnotami kdykoli. Tato teplota se opět vyhladí průměrováním posledních minut.
Krok 9: Implementace 3 - Studentská kolej
Můj přítel se tímto pokynem řídil a vybavil svůj byt teplotními senzory. V lednici, koupelně, počítači atd.:)
Doporučuje:
Profesionální meteorologická stanice využívající ESP8266 a ESP32 DIY: 9 kroků (s obrázky)
Profesionální meteorologická stanice využívající ESP8266 a ESP32 DIY: LineaMeteoStazione je kompletní meteorologická stanice, kterou lze propojit s profesionálními senzory od společnosti Sensirion a také s některou komponentou Davis Instrument (Rain Gauge, Anemometer) Projekt je zaměřen jako meteorologická stanice pro vlastní potřebu, ale vyžaduje pouze
Fanair: meteorologická stanice pro váš pokoj: 6 kroků (s obrázky)
Fanair: meteorologická stanice pro váš pokoj: Existuje nespočet způsobů, jak zjistit aktuální počasí, ale pak znáte počasí pouze venku. Co když chcete znát počasí uvnitř vašeho domu, v konkrétní místnosti? To se pokouším vyřešit tímto projektem. Fanair používá více
Meteorologická stanice NaTaLia: Meteorologická stanice poháněná solární energií Arduino provedla správnou cestu: 8 kroků (s obrázky)
Meteorologická stanice NaTaLia: Meteostanice poháněná solární energií Arduino Správně: Po 1 roce úspěšného provozu na 2 různých místech sdílím své plány projektů solární elektrárny a vysvětluji, jak se vyvinuly do systému, který může skutečně přežít po dlouhou dobu období ze sluneční energie. Pokud budete dodržovat
DIY meteorologická stanice a WiFi senzorová stanice: 7 kroků (s obrázky)
DIY meteorologická stanice a WiFi senzorová stanice: V tomto projektu vám ukážu, jak vytvořit meteorologickou stanici spolu se senzorovou stanicí WiFi. Senzorová stanice měří údaje o místní teplotě a vlhkosti a odesílá je prostřednictvím WiFi do meteorologické stanice. Meteorologická stanice poté zobrazí t
ESP8266 NodeMCU + LM35 + Blynk (meteorologická stanice IOT/ digitální teplotní senzor): 4 kroky
ESP8266 NodeMCU + LM35 + Blynk (meteorologická stanice IOT/ digitální teplotní senzor): Ahoj kluci! V tomto Instructable se naučíme, jak propojit senzor LM35 s NodeMCU a zobrazit tyto informace o teplotě přes internet na smartphonu s aplikací Blynk. (Také v tomto projektu budeme používat widget SuperChart v Bl