Obsah:

Internetová meteorologická stanice Raspberry Pi: 5 kroků (s obrázky)
Internetová meteorologická stanice Raspberry Pi: 5 kroků (s obrázky)

Video: Internetová meteorologická stanice Raspberry Pi: 5 kroků (s obrázky)

Video: Internetová meteorologická stanice Raspberry Pi: 5 kroků (s obrázky)
Video: Raspberry Pi -Weather Station at Home 2024, Červenec
Anonim
Internetová meteorologická stanice Raspberry Pi
Internetová meteorologická stanice Raspberry Pi
Internetová meteorologická stanice Raspberry Pi
Internetová meteorologická stanice Raspberry Pi

*** Aktualizace ***

Tento Instructable je zastaralý. Služby počasí pro data o počasí, použité v tomto Instructable, již nefungují. VŽDY však existuje alternativní projekt, který dělá v podstatě totéž (jen lépe - tento Instructable byl vždy jen hack). Zde je tedy odkaz, který budete chtít sledovat:

https://piweatherrock.technicalissues.us/

Děkuji moc, jděte do Gene Liverman v PiWeatherRock, aby se ujal pláště tohoto projektu.

Tento Instructable vám ukáže, jak postavit opravdu skvělou internetovou meteorologickou stanici Raspberry Pi. Ve skutečnosti nazývat tuto stavbu „meteorologickou stanicí“je trochu podhodnocené prohlášení. Tuto sestavu lze snadno rozšířit, aby poskytovala mnohem více než jen počasí. Je to však dobrý začátek a na mém stole vypadá opravdu skvěle.

Naše rodina (OK, většinou já) si užila mít rodinný iPad na kuchyňské lince, když se nepoužívá, tiše ukazovat aktuální venkovní povětrnostní podmínky. Je však bolestivé naložit a vyložit iPad do a ven z arkádové kolébky. Navíc, když se jdu podívat na počasí, zjistím, že někdo vzal displej iPad / počasí. Co je potřeba, je stálý pultový displej, který děti nebudou přejíždět jako iPad.

Krok 1: Gen 1 - meteorologická stanice Lunchbox Pi

Gen 1 - meteorologická stanice Lunchbox Pi
Gen 1 - meteorologická stanice Lunchbox Pi
Gen 1 - meteorologická stanice Lunchbox Pi
Gen 1 - meteorologická stanice Lunchbox Pi

Moje první myšlenka byla použít malý kompozitní video displej. Zvedl jsem ten na obrázku na Ebay za 22 dolarů - jednoduše vyhledejte na "4,3 palcový TFT LCD zadní pohled na monitor auta Car Monitor". Displej má hlášené rozlišení 656 x 416 pixelů, což vzdorně činí zobrazení mnoha užitečných informací výzvou! Displej vyžaduje jako napájecí napětí 12 V DC. Raspberry Pi samozřejmě potřebuje 5Vdc jako napájecí napětí. Abych to vyřešil, koupil jsem si levnou USB nabíječku do auta od Amazonu. Za zhruba 6 dolarů jsem našel měnič do auta 5Vdc o 2 Amp. Lunchbox má proto externí nástěnný bradavičný napájecí zdroj 12 V DC. 12V DC napájí displej přímo. 12V DC jde také do USB nabíječky do auta, která snižuje napětí na regulovaných 5 V DC. Jako poslední hack jsem připájel pár vodičů přímo mezi nabíječku do auta a Raspberry Pi - to nebyl můj nejlepší nápad.

I když to všechno fungovalo, nebyl jsem opravdu spokojen s kvalitou videa na kompozitním displeji. Malé písmo na displeji bylo rozmazanější, než bych chtěl. Navíc, zatímco box na oběd zpočátku vypadal roztomilý, později vypadal trochu sýrový.

Krok 2: Gen 2 - HDMI monitor + laserově řezané arkádové pouzdro

Gen 2 - HDMI monitor + laserem řezané arkádové pouzdro
Gen 2 - HDMI monitor + laserem řezané arkádové pouzdro
Gen 2 - HDMI monitor + laserem řezané arkádové pouzdro
Gen 2 - HDMI monitor + laserem řezané arkádové pouzdro
Gen 2 - HDMI monitor + laserem řezané arkádové pouzdro
Gen 2 - HDMI monitor + laserem řezané arkádové pouzdro

Zpět na eBay jsem našel pěkně vypadající otevřený rámeček HDMI s 54 dolary a rozlišením 800x600. Podle definice, otevřený rám cokoli potřebuje rám, do kterého se dá namontovat. Protože roztomilost obědového boxu byla dlouhá, nastal čas na laserem řezaný akryl. Můj místní hackerský prostor i3Detroit má opravdu pěknou 150 wattovou řezačku, která dokáže vyrobit mleté maso ze 4,5 mm akrylátu.

Svůj arkádový kryt jsem volně založil na arkádovém boxu pro iPad. Pokud bych někdy vytvořil design Gen 3, vzdorně by obsahoval vyjímatelný / vysouvací zásobník pro Pi. Ukázalo se, že je to velká bolest v krku, když se snažíte zapojit věci dovnitř a ven z Pi, protože mezi Pi a bočními stěnami není velký prostor.

Monitor HDMI také vyžaduje napájení 12 V DC. Použil jsem tedy stejný trik, jako bych znovu použil USB nabíječku do auta. Tentokrát jsem však přerušil starý USB kabel, takže pájené vodiče na Pi nebyly potřeba.

Pokud má někdo zájem o arkádový případ, napište komentář níže a já nahraji soubory DXF. Nebo jsou soubory na mých webových stránkách na ph-elec.com.

Krok 3: Nastavení Pi

Nastavení Pi
Nastavení Pi

Nastavit nový Raspberry Pi pomocí potřebného softwaru není tak těžké. Veškerý software je napsán v Pythonu s jediným přidaným modulem Pythonu. Extra modul Pythonu se nazývá „pywapi“. Zde je odkaz, kde si můžete modul stáhnout. Tento modul usnadňuje získávání počasí v reálném čase z Yahoo, Weather.com nebo NOAA.

Nejprve je zde kontrolní seznam pro nastavení nezpracovaného Raspberry Pi:

  1. Stáhněte si nejnovější Raspbian (Debian Wheezy). Rozbalením rozbalte soubor.img.
  2. Zapište na kartu SD pomocí „dd bs = 4M if = 2014-09-09-wheezy-raspbian.img of =/dev/sdb“
  3. Příkaz dd trvá přibližně pět minut. Po dokončení spusťte „synchronizaci“a propláchněte potrubí.
  4. Nainstalujte kartu SD do Pi a restartujte počítač. Ujistěte se, že je k Pi připojeno ethernetové připojení.
  5. Pomocí stránky „Attached Devices“na routeru vyhledejte IP adresu nového Pi.
  6. Přihlaste se k Pi pomocí "ssh [email protected]. ???" kde ??? je číslo IP shora. Heslo bude „malina“.
  7. Na Pi použijte výchozí nastavení pomocí příkazu „raspi-config“.

    1. Zapněte automatické spouštění do GUI.
    2. Nastavte název hostitele na něco jako „MyPi“.
  8. Nainstalujte VNC na Pi pomocí „sudo apt-get install tightvncserver“.

    Spusťte „tightvncserver“, který nastaví heslo

  9. Zpět na velký linuxový box použijte „Vzdálenou plochu“k zobrazení plochy Pi GUI.

    1. Nastavte Protokol na „VNC“a IP číslo na „192.168.1.???::“. Všimněte si „: 1“na konci IP čísla.
    2. Stiskněte tlačítko připojit a zadejte heslo VNC.
    3. Bingo, vzdálená pracovní plocha GUI Pi!

      Tím se ušetří přetahování monitoru, klávesnice a myši pro připojení k novému Pi

    4. Na ploše spusťte ikonu nastavení WiFi. Nastavte nový Pi / USB WiFi pro připojení k síti.
    5. Zavřete připojení VNC - nyní jsme se vzdálenými plochami skončili.
  10. Zpět v okně ssh restartujte Pi pomocí „sudo reboot“. Odpojte ethernetový kabel, protože WiFi je nyní nastaveno.
  11. Zpět na domácím routeru najděte nové IP číslo, které Pi používá s WiFi.
  12. Pomocí ssh se přihlaste zpět pomocí nového IP čísla. Tentokrát bude připojení přes WiFi.
  13. Pomocí Správce souborů v Linuxu se připojte k Pi pomocí příkazu „připojit k serveru“.

    Adresa serveru je "sftp: //192.168.1. ???/home/pi"

  14. Základní nastavení dokončeno.

Dále je třeba pywapi stáhnout a nainstalovat. S následujícími kroky to opět není příliš těžké:

  1. Stáhněte si nejnovější odtud. Rozbalte archiv do nového adresáře.
  2. Pomocí Správce souborů zkopírujte adresář do domovského adresáře Pi.
  3. Pomocí ssh proveďte na Pi následující:

    1. cd pywapi-0.3.8
    2. sudo python setup.py build
    3. instalace sudo python setup.py
  4. Hotovo.

Aktualizace, zapomněl jsem na dvě další dvě věci:

  1. Na Pi spusťte následující příkaz:

    1. sudo apt-get install avahi-daemon

      To umožňuje připojení k Pi podle jména. Na svém hlavním počítači se tedy můžete místo IP čísel připojit jako „ssh [email protected]“. S více pí v síti je snadné je zmást, pokud nejsou vyvoláni jménem

    2. sudo raspi-config

      1. Vyhledejte a spusťte 4. možnost s názvem „Možnosti internacionalizace“a nastavte časové pásmo.
      2. Když je nastaveno časové pásmo a běží ntpd (démon síťového časového protokolu), Pi vždy zobrazí správný čas během několika milisekund! Musím to milovat.
  2. Dobře, teď jsme zase skončili.

Krok 4: Zdrojový kód

Zdrojový kód
Zdrojový kód

Veškerý zdrojový kód pro toto malé zobrazení počasí je založen na Pythonu, PyGame a Pywapi. Veškerý open source / bezplatný software.

PyGame se používá k provádění všech věcí GUI. Opravdu úžasné věci. Pomocí PyGame se celý displej přestaví jednou za sekundu. V horní části mého zdrojového kódu najdete sekci, která umožňuje vyladění pro různé velikosti zobrazení. Existuje jedna část pro malý kompozitní video displej a druhá část pro větší displej HDMI. Jednoduše okomentuji jednu ze dvou sekcí na základě velikosti displeje, kterou potřebuji.

Chcete -li spustit svůj zdrojový kód, rozbalte přílohu a zkopírujte celý adresář na Pi pomocí správy souborů. Po zkopírování spusťte kód pomocí následujících příkazů ssh:

  1. cd Počasí
  2. sudo python weather.py

Příkaz sudo je potřebný k tomu, aby Python mohl ovládat / číst piny GPIO. Toto omezení pravděpodobně existuje, ale uniká mi.

Jakmile vše začne fungovat pomocí ssh, je čas, aby se počasí automaticky spustilo při restartu. To je také velmi snadné.

  1. Pomocí ssh spusťte "sudo vi /etc/rc.local"
  2. Těsně před posledním řádkem, který říká „exit 0“, přidejte do řádků následující.

    1. cd/home/pi/Počasí
    2. sudo python weather.py &> err.log

Po restartu se automaticky spustí aplikace počasí na Pi. Pokud to později budete chtít vypnout, stačí použít ssh k úpravě souboru a přidání znaku komentáře „#“před oba řádky a restart.

Všimněte si, že můj zdrojový kód je velký hack a nejsem na to moc hrdý. Kdybych však čekal, až bude prezentovatelný, nikdy by nebyl představen. Takže si to vezměte, nebo toho nechte, nebrečte, protože mám velmi tenkou kůži.

K mému kódu je třeba poznamenat několik dalších věcí. Zakopaný tam si všimnete nějakého kódu pro komunikaci se zařízením X10. To byl můj pokus ovládat moje vnější pólová světla, která jsou na adrese A3. Prostě jsem chtěl, aby lampy svítily za soumraku a zhasínaly za úsvitu. Vypadá to dost snadno a myslel jsem si, že to funguje. Pomocí dongle USB-to-RS232 na Pi jsem připojil modul CM11A X10. CM11A je starý modul makra X10. CM11A má také port RS232, který umožňuje ovládání přes sběrnici X10. Zdá se, že stále existují nějaké chyby, protože světla sloupů lampy nedostávají zprávu!

Je také třeba poznamenat, že na větším displeji je pěkná otevřená mezera podél pravé strany displeje. Můj plán je přidat do této oblasti nějaké stavové kontrolky. Hraji s některými rádii IEEE802.15.4 a jejich výstupy se jednoho dne objeví na tom otevřeném místě.

Nejnovější a největší aktualizace najdete na mých webových stránkách na ph-elec.com.

Dejte mi vědět v sekci komentáře níže jakékoli otázky, které můžete mít.

Díky, Jime.

A nezapomeňte pro mě hlasovat! Ještě jednou děkuji.

BTW: Na mých webových stránkách: www.ph-elec.com je vždy více informací

Krok 5: Metrická aktualizace

Attached je nová verze, která umožňuje zobrazení metrických nebo imperiálních.

Snad to pomůže, Jim

Doporučuje: