Obsah:
- Krok 1: Získejte všechny požadované položky
- Krok 2: Připravte si Raspberry Pi
- Krok 3: Spojte vše dohromady
- Krok 4: Vytvořte svou databázi
- Krok 5: Čas na kód
- Krok 6: Vyzkoušejte to
Video: Fanair: meteorologická stanice pro váš pokoj: 6 kroků (s obrázky)
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:18
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á několik senzorů ke snímání:
- teplota
- vlhkost vzduchu
- světlo
- určité plyny
- tlak vzduchu
Je velmi kompaktní a využívá Raspberry Pi 3 B pro získávání hodnot, jejich ukládání do databáze MySQL a jejich snadné zpřístupnění na webových stránkách. Součástí kódu a webových stránek je možnost získat aktuální údaje o počasí pro vaši polohu, aby bylo možné webové stránky použít také ke kontrole vnějšího počasí.
Krok 1: Získejte všechny požadované položky
Nejprve budete potřebovat základní elektroniku, jako jsou vodiče / propojovací kabely. Pokud máte v plánu pájet vše dohromady jako trvalý projekt, pak samozřejmě budete také potřebovat páječku, pájku a pro své vlastní pohodlí desku plošných spojů k pájení všeho.
Pro konkrétnější položky jsem vytvořil tento kusovník.
- Raspberry Pi 3 B
- MPC3008-8kanálový 10bitový ADC
- Teploměr AM2301 Snímač teploty a vlhkosti
- WR Rademacher WR-tyoe 930-1 PCB
- ABS pouzdro pro prototypování (černé)
- LDR
- Plynový senzor MQ135
- 2x BC517 Darlingtonův tranzistor
- RGB LED
- Balíček odporů
- Bzučák
- Dráty
- Barometr BMP280
- Tichý USB ventilátor (5V)
Celkově by to mělo stát asi 110 EUR. Celková cena je pouze přibližná. Také můj projekt má na fotografii LCD obrazovku, ale není připojen, protože v mém případě nebylo dost místa, takže není zahrnut v pokynech.
Krok 2: Připravte si Raspberry Pi
Získejte Raspian Jessie s operačním systémem Pixel z oficiálního webu Raspberry Pi a po stažení jej rozbalte. Získáte soubor obrázku. Abyste to dostali na Pi, musíte to zapsat na SD kartu pomocí Win32 Disk Imager. Jakmile je nainstalován, vyberte soubor s obrázkem a jednotku, na které se nachází vaše SD karta. Poté stiskněte zápis a počkejte, až bude hotovo.
Po dokončení klikněte na kartu SD v Průzkumníku souborů a otevřete soubor s názvem „cmdline.txt“, přejděte na konec textového souboru těsně před rootwait a napište „ip = 254.169.10.2“s mezerami kolem. Po uložení byste měli kliknout pravým tlačítkem někam do okna a vytvořit nový soubor s názvem 'ssh'. Všimněte si, že tento soubor nemá příponu. Chcete -li se ujistit, že nemá příponu, klikněte na „zobrazit“v Průzkumníku souborů a zkontrolujte „skryté soubory“. Pokud jej přejmenuje a smaže příponu, zobrazí se pouze „ssh“.
Poté, co to uděláte, můžete konečně vložit SD kartu do Raspberry Pi. Stáhněte si ssh klienta (doporučuji MobaXterm). A připojte se pomocí ssh s IP, kterou jste nastavili dříve '254.169.10.2'. Uživatelské jméno je „pi“, heslo „malina“. Pokud chcete, můžete heslo změnit tak, že do terminálu zadáte příkaz 'sudo passwd' a budete postupovat podle pokynů. Protože pro Fanair použijeme značnou část karty SD, měli byste rozšířit dostupné úložiště zadáním 'sudo rapi-config' výběrem 'Advanced Options' a poté 'Expand File System'. Pokud budete vyzváni k restartu.
Budeme využívat rozhraní 1-Wire, SPI a I2C. Abyste je mohli používat, musíte je nejprve nastavit!
Krok 3: Spojte vše dohromady
Je čas udělat obvod! Poprvé byste to měli pravděpodobně vyzkoušet na prkénku, ale pokud na to nemáte čas, můžete to zkusit spojit dohromady.
Okruh, který budete potřebovat, vypadá jako výše, pro pohodlí je také zahrnuta verze pro prkénko.
Krok 4: Vytvořte svou databázi
Abychom efektivně uložili všechna data, která obdržíme, použijeme databázi TSQL MySQL. Před instalací MySQL se ujistěte, že je vše aktuální, zadáním několika příkazů do terminálu:
- 'sudo apt-get update'
- 'sudo apt-get upgrade'
- 'sudo apt-get dist-upgrade'
Přijměte každou výzvu zadáním „y“a zadejte.
Chcete -li nainstalovat typ MySQL:
- 'sudo apt-get install mysql-server'
- 'sudo apt-get install mysql-client'
Po vyzvání vytvořte heslo uživatele root podle svého výběru.
Po dokončení instalace přihlášení pomocí:
'mysql -uroot -p'
A zadáním hesla.
Získejte kód Fanair z My Github! Klikněte na „Klonovat nebo stáhnout“a poté na „Stáhnout ZIP“. Rozbalte kód ve složce podle vašeho výběru. Dotaz na vytvoření plně funkční databáze je ve složce databáze. Otevřete soubor, zkopírujte kód a vložte jej do terminálu s otevřeným MySQL. Poté klikněte na Enter a databáze je hotová!
Krok 5: Čas na kód
Abyste mohli využívat všechna čidla, zjevně potřebujete spustit program. Naštěstí je kód již hotový (z velké části) a my jsme ho již stáhli při získávání dotazu na databázi SQL.
Jak jsem řekl, je několik věcí, které je třeba ještě změnit / přidat, aby program správně fungoval. Nejprve program používá API Darksky k získání údajů o počasí na základě zeměpisné délky a šířky. Abyste toho mohli využít, musíte se zaregistrovat. Prvních 1000 hovorů je zdarma a poté stojí 0,0001 $ za hovor. Slyšel jsem, že pokud nezaplatíte, váš účet bude zablokován. Abych byl spravedlivý, 0,0001 $ za hovor je docela levné. Společnost Fanair volá nejnovější data každou hodinu, což znamená, že za rok, pokud je spuštěna na plný úvazek, vás to bude stát pouze 0,876 USD. Pokud Fanair poběží na plný úvazek, získáte také 41 dní zdarma.
Jakmile se zaregistrujete, vyhledejte svůj klíč API. Vyhledejte na mapách Google zeměpisnou délku a šířku svého místa nebo ji zkuste vygooglit. Vytvořte nový textový soubor v kořenovém adresáři Fanairu (s třídami, main.py…). Pojmenujte soubor 'key_location.txt'. Otevřete textový soubor a na první řádek vložte klíč API Darksky. Na druhý řádek vložte svou zeměpisnou délku a na třetí řádek vložte svou zeměpisnou šířku (oba v desítkovém formátu). Až budete hotovi, uložte soubor.
Ve stejném adresáři vytvořte další textový soubor s názvem 'database_dsn.txt'. První řádek by měl říkat 'localhost'. Druhý řádek je 'root'. Do třetího řádku byste měli zadat heslo, které jste pro databázi vytvořili dříve, a do čtvrtého a posledního řádku zadejte „fanair“.
Klepněte pravým tlačítkem na soubor main.py a vyberte Upravit. Je třeba změnit 'fanair = Fanair (5, 26, 17, 27, 22, 4, "AM2301", 1, 0, 0, 0, "key_location.txt", "database_dsn.txt")'. Pokud jste postupovali podle obrázku, prvních 5 hodnot by mělo být změněno z '5, 26, 17, 27, 22, 4' na '20, 21, 26, 19, 13 '. '/home/muhsin/Applications/Fanair' by měl být také změněn na vaši kořenovou cestu Fanair (kde je main.py). Ujistěte se, že jste před „domovem“dali lomítko, ale ne za „Fanair“.
Nyní je to všechno skvělé, ale kód se musí dostat do Pi. Naštěstí pro nás existuje protokol sftp. Chcete -li soubory umístit na Pi, použijte klienta sftp, jako je FileZilla, nebo pokud jste se rozhodli použít MobaXterm, můžete soubory snadno nahrát do rozhraní sftp vlevo od terminálu.
Podle mých zkušeností ne vždy dostanu správné datum a čas na Raspberry Pi. Abyste se ujistili, že obdržíte správný datetime, doporučuji postupovat podle této příručky: Datum a čas synchronizace Raspberry Pi.
A v neposlední řadě je třeba nainstalovat několik knihoven a aktivovat několik rozhraní:
'sudo apt-get install build-essential python-dev'
Adafruit DHT:
'pip3 install adafruit_python_dht'
1-vodič:
- 'sudo raspi-config'
- 'Možnosti rozhraní'
- '1 drát'
- Umožnit
- 'sudo nano /boot/config.txt'
- Přidejte do souboru tento řádek: 'dtoverlay = w1-gpio'
- 'sudo restart'
SPI:
- 'sudo raspi-config'
- 'Možnosti rozhraní'
- 'SPI'
- Umožnit
- 'sudo restart'
- 'sudo nano /boot/config.txt'
- Vyhledejte 'dtparam = spi = on' a odkomentujte jej odstraněním hashtagu.
- 'sudo apt-get install python3-dev
Smbus:
- 'sudo raspi-config' '
- 'Možnosti rozhraní'
- 'I2C'
- Umožnit
- 'sudo restart'
- 'sudo apt-get install -y python-smbus'
- 'sudo apt-get install -y i2c-tools'
- 'sudo nano /boot/config.txt'
- Vyhledejte dtparam = i2c_arm = on a zrušte jeho přidání odebráním hashtag.
baňka
pip3 nainstalujte Flask
mysql konektor
'pip3 install -Iv mysql -connector == 2.1.4'
spidev
'pip3 install py-spidev'
temná obloha
'pip3 install darkskylib'
Krok 6: Vyzkoušejte to
Pokud se vám to podařilo dotáhnout až sem, klepněte si na záda. Nyní je vše provedeno, aby Fanair fungoval správně. Chcete -li to vyzkoušet, zadejte 'cd ""'. Umístění souboru je "/home/pi", například pokud jste právě vložili do svého domovského adresáře. Poté zadejte 'python3 main.py' a nechte jej 15 minut odpočívat, aby po dokončení měl data v databázi. Poté stiskněte 'ctrl + c' stop, zastavte program a zadejte 'python3 Flask.py'. Chcete -li zjistit, zda váš web funguje, musíte přejít na IP adresu vašeho Pi, kterou jste zadali s ': 5000' za ním (například: 169.254.10.1:5000 ').
Aby se spustil automaticky po spuštění:
'sudo nano /etc/rc.local'
Na konci souboru, ALE PŘED ukončením 0:
'sudo python3 "/main.py" &'
'sudo python3 "/Flask.py" &'
Gratulujeme, váš skript by měl běžet od spuštění a jste hotovi! Pokud máte v plánu udržet projekt v chodu a ještě jste to neudělali, doporučil bych vám vše pájet dohromady, abyste se ujistili, že vše zůstane na svém místě. Ačkoli pokud nehrajete, abyste to mohli hodně přesouvat, funguje samozřejmě i prkénko.
Doporučuje:
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
SmartBox - inteligentní domácí systém pro váš pokoj: 6 kroků
SmartBox - inteligentní domácí systém pro váš pokoj: Ahoj všichni! V tomto návodu vám vysvětlím, jak vytvořit inteligentní pokojový systém. Tento systém obsahuje dvě zařízení. Obecné zařízení se snímačem vlhkosti a snímačem teploty, které měří aktuální kvalitu života ve vaší místnosti. Ty jsi
Přenosná meteorologická stanice pro pozorovatele noční oblohy: 7 kroků (s obrázky)
Přenosná meteorologická stanice pro pozorovatele noční oblohy: Světelné znečištění je jedním z mnoha problémů na světě. Abychom tento problém vyřešili, musíme vědět, jak moc je noční obloha znečištěna umělým světlem. Mnoho studentů s učiteli na světě se snaží změřit světelné znečištění drahými senzory. Rozhodl jsem se
Meteorologická stanice s Arduino, BME280 a displejem pro sledování trendů za poslední 1–2 dny: 3 kroky (s obrázky)
Meteorologická stanice S Arduinem, BME280 a displejem pro sledování trendů za poslední 1–2 dny: Dobrý den! Zde byly již zavedeny meteorologické stanice s pokyny. Ukazují aktuální tlak vzduchu, teplotu a vlhkost. To, co jim zatím chybělo, byla prezentace kurzu během posledních 1-2 dnů. Tento proces by měl