Cuprins:

Afișare simplă a vremii folosind Raspberry PI și Cyntech WeatherHAT: 4 pași
Afișare simplă a vremii folosind Raspberry PI și Cyntech WeatherHAT: 4 pași

Video: Afișare simplă a vremii folosind Raspberry PI și Cyntech WeatherHAT: 4 pași

Video: Afișare simplă a vremii folosind Raspberry PI și Cyntech WeatherHAT: 4 pași
Video: 뉴욕 에르메스 신규매장과 팝업카페 갔다가 땡스기빙 상차림 만들고 풍선 퍼레이드 본 미국 일상 브이로그 2024, Noiembrie
Anonim
Afișare simplă a vremii folosind Raspberry PI și Cyntech WeatherHAT
Afișare simplă a vremii folosind Raspberry PI și Cyntech WeatherHAT
Afișare simplă a vremii folosind Raspberry PI și Cyntech WeatherHAT
Afișare simplă a vremii folosind Raspberry PI și Cyntech WeatherHAT

* În 2019, Yahoo și-a schimbat API-ul și acest lucru a încetat să funcționeze. Nu eram conștient de schimbare. În septembrie 2020, acest proiect a fost actualizat pentru a utiliza OPENWEATHERMAP API Consultați secțiunea actualizată de mai jos, restul acestor informații sunt totuși bune. Vă mulțumim că ați căutat și vă mulțumesc că m-ați informat despre schimbarea Yahoo. *

Recent am achiziționat un Cyntech WeatherHAT, dar am fost puțin dezamăgit de lipsa de software pentru acesta.

HAT-ul său este bine construit, cu 6 LED-uri albastre sub formă de picături de ploaie, 6 LED-uri portocalii sub formă de tunet, 6 LED-uri albe sub formă de nor. 1 (ceea ce cred că este un LED RGB) pentru SUN - afișează portocaliu (așa că s-ar putea să mă înșel cu privire la faptul că este un RGB). Și 6 LED-uri WS2812 (Acestea sunt RGB:-))

Cyntech are un ghid introductiv și chiar și asta este bun - este ușor de instalat și de utilizat HAT.

Așa că am fost doar surprins să nu văd cu adevărat niciun software (altul decât demo-ul oferit de Cyntech). Am fost la fel de surprins să nu găsesc pe cineva care să folosească cu adevărat acest lucru - Poate că oamenii vor un afișaj „fantezist” cu temperaturi și tot felul de informații. Pentru mine este bine să mă uit la câteva LED-uri și să știu - plouă, sau furtună sau noros - În acel moment, dacă am nevoie de mai multe informații, mă pot uita la tabletă sau la telefon.:-)

Un pic mai mult - este într-adevăr prima dată când folosesc python, nu sunt deloc priceput. Și sunt sigur că oamenii care știu cu adevărat python îmi vor spune o modalitate mai bună de a face acest lucru.

Să începem:

Avem nevoie de un card SD (cel puțin 8 GB)

Un Raspberry PI (folosesc un Zero W) trebuie să aibă acces la internet.

și avem nevoie de vremea CyntechHAT

Dacă utilizați un Raspberry PI Zero W, va trebui să puteți să lipiți un set de anteturi pe placă.

În caz contrar, abilitățile necesare sunt abilitatea de a utiliza software-ul și de a configura cardul SD.

Pasul 1: Setați cardul SD și Raspberry PI

Setați cardul SD și Raspberry PI
Setați cardul SD și Raspberry PI
Setați cardul SD și Raspberry PI
Setați cardul SD și Raspberry PI

Va trebui să descărcați cel mai recent Raspbian (în momentul acestui instructable, care este Raspbian Stretch martie 2018 (13.03.2018))

www.raspberrypi.org/downloads/raspbian/

Am folosit ediția desktop, chiar și tu îmi rulez configurarea fără cap și fac cele mai multe lucruri din CLI (interfața liniei de comandă) prin ssh.

Urmați ghidul de configurare găsit aici:

www.raspberrypi.org/documentation/installa…

După ce Etcher este terminat, scoateți cardul SD și reintroduceți-l în computer.

* Trebuie să faceți acest pas mai jos doar dacă intenționați să faceți o instalare fără cap

Trebuie să configurăm SSH și WIFI înainte de a utiliza cardul SD în Raspberry PI. În partiția BOOT a cardului, creați un fișier numit „ssh” fără ghilimele. nimic nu trebuie să fie în fișierul respectiv. Când boot-ul PI va vedea acel fișier și va activa SSH.

De asemenea, trebuie să creăm un fișier numit „wpa_supplicant.conf”. Trebuie să edităm acest fișier cu setările dvs. wifi.

Ar trebui să arate cam așa:

ctrl_interface = DIR = / var / run / wpa_supplicant GROUP = netdev

update_config = 1 network = {ssid = "yourwifiSSID" psk = "yourwifipassass" scan_ssid = 1}

* Trebuie să faceți acest lucru numai dacă intenționați să faceți o instalare fără cap

Odată ce ați terminat, scoateți în siguranță cardul SD și introduceți Raspberry PI (asigurați-vă că nu există alimentare pe PI).

Atașați weatherHAT și porniți Raspberry PI.

Pasul 2: configurați bibliotecile WeatherHAT

Configurați bibliotecile WeatherHAT
Configurați bibliotecile WeatherHAT
Configurați bibliotecile WeatherHAT
Configurați bibliotecile WeatherHAT

Pentru acest pas vom urmări Ghidul introductiv găsit

guides.cyntech.co.uk/weatherhat/getting-sta…

DACĂ faceți o instalare fără cap, veți dori să ssh [email protected]

Dacă nu aveți un client ssh - PUTTY este unul bun.

Dacă utilizați o tastatură și un monitor - ghidul de mai sus este unul bun de urmat, vă pornește de la un desktop GUI.

Pașii importanți aici sunt instalarea bibliotecii WS281x și a bibliotecilor WeatherHAT, împreună cu dependența pentru fiecare.

sudo apt-get update

sudo apt-get upgrade -y sudo apt-get install build-essential python-dev git scons swig python-smbus git clone https://github.com/jgarff/rpi_ws281x.git> git clone https://github.com/ jgarff / rpi_ws281x.git> cd rpi_ws281x scons cd python sudo python setup.py install

Acum trebuie să ne asigurăm că I2C este pornit.

sudo raspi-config

Ghidul este scris pentru o versiune mai veche de raspi-config și spune să mergeți la „Opțiuni avansate” care a fost înlocuit cu „Interfețe”

Odată ce porniți I2C va trebui să reporniți.

Acum este timpul să testați pălăria

cd WeatherHAT

sudo python cycle.py

Dacă totul a mers bine, ar trebui să vedeți toate caracteristicile și un curcubeu.

ctrl-z va opri programul.

* Note speciale: Am aflat că calendarul Raspberry PI 3 este diferit și este posibil ca curcubeul să nu funcționeze corect. DACĂ aveți această problemă aici este cum să o remediați.

github.com/CyntechUK/WeatherHAT/issues/3

guides.cyntech.co.uk/raspberry-pi/assemblin…

Odată ce totul funcționează, putem continua la pasul următor.

Actualizare: (6 octombrie 2020) Acest depozit conține acum scriptul meu getWeather.py, aceasta este o veste minunată, întrucât interesul s-a declanșat din nou, iar lucrurile noi trebuie să se întâmple.

Pasul 3: Instalarea Weather-api și GetWeather Script

Instalarea Weather-api și GetWeather Script
Instalarea Weather-api și GetWeather Script
Instalarea Weather-api și GetWeather Script
Instalarea Weather-api și GetWeather Script
Instalarea Weather-api și GetWeather Script
Instalarea Weather-api și GetWeather Script
Instalarea Weather-api și GetWeather Script
Instalarea Weather-api și GetWeather Script

Deci, am introdus o cerere PULL către CyntechUK pentru scriptul meu - sperăm că vor accepta cererea și puteți sări peste descărcarea depozitului meu. (s-ar putea să nu dorească să includă codul meu tu)

(6 octombrie 2020) Solicitarea PULL a fost aprobată, scriptul meu getWeather este acum inclus în depozitul Weatherhat.

********* Puteți utiliza în continuare aceste informații dacă doriți, totuși getWeather.py a fost inclus în depozitul meteo acum ****************** *****************

Repozitorul meu poate fi găsit aici:

github.com/kd8bxp/WeatherHAT/tree/getWeath…

iar scriptul meu se numește getWeather.py

DACĂ acceptă cererea de extragere, veți avea deja acest script - dacă nu, va trebui să clonați depozitul.

în directorul dvs. de acasă (/ home / pi) tastați:

git clone https://github.com/kd8bxp/WeatherHAT.git getWeather

aceasta va clona depozitul într-un director numit getWeather, apoi trebuie să verificăm filiala getWeather.

cd getWeather

git checkout getWeather

**********************************************************************

Va trebui să cd în directorul weatherHAT care a fost clonat mai devreme și

Trebuie să edităm scriptul getWeather.py pentru locația dvs.

nano getWeather.py

Ar trebui să vedeți o linie care începe cu

locație și se încheie cu căutare (45042) - Acesta este codul meu poștal, am constatat că nu funcționează la fel de bine cum ați crede

iar linia de deasupra ei, care este comentată, funcționează mai bine cu numele orașului. Acesta este cel pe care probabil doriți să îl utilizați. Deci, comentează linia de cod poștal (#) și decomentează și schimbă numele orașului tău.

*********** INFORMAȚII VECHI YAHOO - Nu mai sunt necesare ***********

Trebuie să mai instalăm o bibliotecă pentru ca acest lucru să funcționeze, weather-api, care este un wrapper pentru Yahoo weather API.

pypi.python.org/pypi/weather-api/0.0.5

Instalarea este ușoară -

pip instala weather-api

***********************************************************************************

Acum putem rula scriptul:

sudo python getWeather.py &

& Va lăsa scriptul să ruleze în fundal. Scriptul doarme aproximativ 5 minute, apoi verifică Yahoo Weather dacă s-a schimbat ceva - dacă da, actualizează afișajul. Timpul de 5 minute poate fi schimbat, este aproape de partea de jos a scriptului.

somn (60 * 5)

Puteți configura o lucrare crontab (amintiți-vă că acest lucru trebuie rulat ca root) care va porni scriptul la fiecare boot.

utilizare:

sudo crontab -e

introduce:

@reboot python /home/pi/weatherHAT/getWeather.py

Cred că ar trebui să funcționeze - nu am configurat încă cron pe sistemul meu.

Cam asta e tot -

După cum am afirmat, acesta este unul dintre primele mele programe Python și sunt sigur că cineva care știe mai multe va vedea o modalitate mai bună de a face acest lucru.

Am făcut doar teste limitate în acest sens - am văzut până acum „Zăpadă”, „Ploaie” și „Furtună”, Există câteva condiții pe care nu sunt sigur cum să le gestionez încă - salut idei.

Pasul 4: Informații actualizate pentru: API Openweathermap

În septembrie 2020, am actualizat scriptul pentru a utiliza API-ul

NOTĂ: Aceasta a fost o soluție „rapidă” pentru mine și testată limitat - (A fost acoperit cu nori în ultimele zile și tot ce văd este afișarea norilor și a ploii) - Deși cred că am prins toate condițiile ușor de afișaj, este posibil să fi ratat câteva din cauza cât de „rapidă” a fost această remediere. Acestea fiind spuse, dacă credeți că există o problemă, vă rugăm să lăsați un comentariu și timpul permis, o să analizez - sau să încerc să vă îndrept în direcția corectă. *

Va trebui să vă înscrieți pentru o cheie API folosind linkul de mai sus, când editați scriptul pentru a vă plasa orașul, veți vedea un loc pentru cheie. Doar copiați-l și lipiți-l și ar trebui să fiți bun.

Alte note:

Acest script folosește acum „API-ul curent al datelor meteo” despre informațiile despre acel API pot fi găsite aici:

openweathermap.org/current Un lucru de reținut este că puteți utiliza un oraș, stat și țară.

IE: orașul „Dayton” devine „Dayton, OH, SUA”. Observați cum codurile de stat și de țară sunt ambele majuscule, acest lucru este necesar. API-ul spune că poate folosi doar „Dayton, OH”, dar am primit erori din script când am făcut acest lucru - și din moment ce a fost o soluție rapidă, nu am analizat de ce. Așadar, vă recomand să folosiți „orașul, statul, țara”

DACĂ, dintr-un anumit motiv, nu obțineți informații bune folosind un nume de oraș, puteți căuta și ID-ul orașului sau puteți utiliza latitudinea și longitudinea sau codul poștal. În fiecare caz, adresa URL va trebui modificată, dacă faceți clic pe linkul din partea dreaptă a site-ului web API, acesta va oferi un exemplu despre ceea ce ar trebui să fie adresa URL.

Trebuie să schimbați și adresa URL din script.

Și mai multe note: 3 octombrie 2020

@Itsmedoofer a subliniat că trebuie să instaleze cererile python-bibliotecă cu noua actualizare. Nu sunt sigur că am avut nevoie de acest lucru (este, de asemenea, posibil să îl fi instalat de ani în urmă sau diferite versiuni de python să instaleze diferite biblioteci în mod implicit). Deci, dacă scriptul oferă o eroare despre cererile de Python, este ușor de remediat.

tastați această comandă în solicitările de instalare CLI: python -m pip

și ar trebui să fii cuminte.

Sperăm că acest lucru face din moment, aceasta a fost o soluție rapidă și, poate, într-o zi, permițând, pot lucra la curățarea un pic mai bine.

Actualizare (6 octombrie 2020) Solicitarea de extragere github a fost acceptată, depozitul original original CyntechUK include acum acest script. https://github.com/CyntechUK/WeatherHAT Utilizatorul Boeerb are câteva idei despre cum să afișeze unele dintre condițiile care nu sunt afișate în prezent, precum și alte idei de utilizare. Așadar, fii cu ochii pe acel depozit. Și sperăm că lucrurile se vor întâmpla.

Actualizare: (8 octombrie 2020) Open Weather Map are un scurt tutorial despre configurarea și utilizarea API-ului, https://openweathermap.org/appid Un loc bun pentru a începe.

Recomandat: