Taula de continguts:

Visualització del temps senzilla amb Raspberry PI i Cyntech WeatherHAT: 4 passos
Visualització del temps senzilla amb Raspberry PI i Cyntech WeatherHAT: 4 passos

Vídeo: Visualització del temps senzilla amb Raspberry PI i Cyntech WeatherHAT: 4 passos

Vídeo: Visualització del temps senzilla amb Raspberry PI i Cyntech WeatherHAT: 4 passos
Vídeo: Сводные таблицы Excel с нуля до профи за полчаса + Дэшборды! | 1-ое Видео курса "Сводные Таблицы" 2024, De novembre
Anonim
Visualització del temps senzilla mitjançant Raspberry PI i Cyntech WeatherHAT
Visualització del temps senzilla mitjançant Raspberry PI i Cyntech WeatherHAT
Visualització del temps senzilla mitjançant Raspberry PI i Cyntech WeatherHAT
Visualització del temps senzilla mitjançant Raspberry PI i Cyntech WeatherHAT

* El 2019 Yahoo va canviar la seva API i això va deixar de funcionar. Desconeixia el canvi. Al setembre del 2020, aquest projecte s'ha actualitzat per utilitzar l'API OPENWEATHERMAP. Consulteu la secció actualitzada a continuació, però la resta d'aquesta informació encara és bona. Gràcies per mirar i gràcies per fer-me saber el canvi de Yahoo. *

Recentment he adquirit un Cyntech WeatherHAT, però em va decebre una mica amb la manca de programari.

El HAT que és ell mateix està ben construït, amb 6 LED blaus en forma de gotes de pluja, 6 LED taronja en forma de tro, 6 LED blancs en forma de núvol. 1 (el que crec que és un LED RGB) per al SUN: es mostra de color taronja (per tant, podria estar equivocat si és un RGB). I 6 LED WS2812 (són RGB:-))

Cyntech té una guia inicial, i fins i tot això és bo: és fàcil instal·lar i utilitzar el HAT.

Així que em va sorprendre no veure realment cap programari (a part de la demostració proporcionada per Cyntech). Em va sorprendre igualment que no trobés ningú que realment el fes servir. Potser la gent vol una pantalla "elegant" amb temperatures i tota mena d'informació. Per a mi és bonic mirar alguns LEDs i saber-ho (plou, tempesta o ennuvolat). En aquest moment, si necessito més informació, puc mirar la meva tauleta o telèfon.:-)

Una mica més: realment és la meva primera vegada que utilitzo Python, no en sóc cap ni bo. I estic segur que les persones que realment coneixen el pitó em diran millor manera de fer-ho.

Comencem:

Necessitem una targeta SD (com a mínim 8 GB)

Un Raspberry PI (estic fent servir un Zero W) ha de tenir accés a Internet.

i necessitem el temps Cyntech HAT

Si utilitzeu un Raspberry PI Zero W, també haureu de poder soldar un conjunt de capçaleres al tauler.

En cas contrari, les habilitats necessàries són la possibilitat d’utilitzar programari i configurar la targeta SD.

Pas 1: configureu la targeta SD i el Raspberry PI

Configureu la targeta SD i el Raspberry PI
Configureu la targeta SD i el Raspberry PI
Configureu la targeta SD i el Raspberry PI
Configureu la targeta SD i el Raspberry PI

Haureu de descarregar la versió més recent de Raspbian (en el moment d’aquest instructiu que és Raspbian Stretch March 2018 (2018-03-13))

www.raspberrypi.org/downloads/raspbian/

He utilitzat l'edició d'escriptori, fins i tot tu, estic executant la meva configuració sense cap, i fent la majoria de coses des de la CLI (interfície de línia d'ordres) a través de ssh.

Seguiu la guia de configuració que es troba aquí:

www.raspberrypi.org/documentation/installa…

Un cop fet el gravador, traieu la targeta SD i torneu-la a inserir a l'ordinador.

* Realment només heu de fer aquest pas a continuació si teniu previst fer una instal·lació sense cap

Cal configurar SSH i WIFI abans d’utilitzar la targeta SD al Raspberry PI. A la partició BOOT de la targeta, creeu un fitxer anomenat "ssh" sense les cometes. res ha de figurar en aquest fitxer. Quan arrenci el PI, veurà aquest fitxer i activarà SSH.

També hem de crear un fitxer anomenat "wpa_supplicant.conf". Hem d’editar aquest fitxer amb la configuració del wifi.

Hauria de ser semblant a això:

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

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

* Realment, només heu de fer-ho si teniu previst fer una instal·lació sense cap

Un cop fet això, traieu la targeta SD de manera segura i poseu-la al Raspberry PI (assegureu-vos que no hi hagi alimentació al PI).

Connecteu el weatherHAT i engegueu el Raspberry PI.

Pas 2: configureu les biblioteques WeatherHAT

Configureu les biblioteques WeatherHAT
Configureu les biblioteques WeatherHAT
Configureu les biblioteques WeatherHAT
Configureu les biblioteques WeatherHAT

Per a aquest pas seguirem la Guia d'introducció trobada

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

SI feu una instal·lació sense cap, voldreu ssh [email protected]

Si no teniu un client ssh: PUTTY és un bon.

Si utilitzeu un teclat i un monitor: la guia anterior és bona, heu de començar en un escriptori GUI.

Els passos importants aquí són instal·lar la biblioteca WS281x i les biblioteques WeatherHAT, juntament amb la dependència de cadascuna.

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

Ara hem d’assegurar-nos que l’I2C està activat.

sudo raspi-config

La guia està escrita per a una versió anterior de raspi-config i diu que aneu a "Opcions avançades" que ha estat substituït per "Interfícies".

Un cop activeu I2C, haureu de reiniciar.

Ara toca provar el HAT

cd WeatherHAT

sudo python cycle.py

Si tot va bé, hauríeu de veure totes les funcions i un arc de Sant Martí.

ctrl-z aturarà el programa.

* Notes especials: he après que els temps del Raspberry PI 3 són diferents i és possible que l’arc de Sant Martí no funcioni correctament. SI teniu aquest problema aquí és com solucionar-lo.

github.com/CyntechUK/WeatherHAT/issues/3

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

Un cop tot funcioni, podem continuar amb el següent pas.

Actualització: (6 d'octubre de 2020) Aquest dipòsit ara conté el meu script getWeather.py, és una gran notícia, ja que l'interès ha tornat a despertar i és probable que passin coses noves.

Pas 3: Instal·lació de Weather-api i GetWeather Script

Instal·lació de Weather-api i GetWeather Script
Instal·lació de Weather-api i GetWeather Script
Instal·lació de Weather-api i GetWeather Script
Instal·lació de Weather-api i GetWeather Script
Instal·lació de Weather-api i GetWeather Script
Instal·lació de Weather-api i GetWeather Script
Instal·lació de Weather-api i GetWeather Script
Instal·lació de Weather-api i GetWeather Script

Per tant, he enviat una sol·licitud PULL a CyntechUK per obtenir el meu script; espero que acceptin la sol·licitud i que pugui ometre la descàrrega del meu dipòsit. (és possible que no vulguin incloure el meu codi)

(6 d'octubre de 2020) La sol·licitud PULL es va aprovar, el meu script getWeather ja està inclòs al dipòsit Weatherhat.

********* Encara podeu utilitzar aquesta informació si voleu, però getWeather.py s'ha inclòs al dipòsit meteorològic ara ****************** *****************

El meu repositori es pot trobar aquí:

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

i el meu script es diu getWeather.py

SI accepten la sol·licitud d'extracció, ja tindreu aquest script; si no, haureu de clonar el dipòsit.

al directori d'inici (/ home / pi) escriviu:

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

això clonarà el dipòsit en un directori anomenat getWeather; a continuació, haurem de comprovar la branca getWeather.

cd getWeather

git checkout getWeather

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

Haureu de cd al directori weatherHAT que es va clonar anteriorment i

Hem d’editar l’escript getWeather.py per a la vostra ubicació.

nano getWeather.py

Hauríeu de veure una línia que comença per

ubicació i acaba amb la cerca (45042): aquest és el meu codi postal, he comprovat que no funciona tan bé com es pensaria

i la línia que hi ha a sobre que es comenta funciona millor amb un nom de ciutat. Aquesta és la que probablement vulgueu utilitzar. Comenteu la línia de codi postal (#) i descomenteu-la i canvieu el nom de la vostra ciutat.

*********** INFORMACIÓ DE VELL YAHOO - Ja no cal ***********

Hem d’instal·lar una biblioteca més perquè funcioni, weather-api, que és un embolcall per a l’API meteorològica de Yahoo.

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

La instal·lació és fàcil:

pip instal·lar weather-api

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

Ara podem executar l'script:

sudo python getWeather.py &

El & deixarà executar l'script en segon pla. El guió té una durada aproximada de 5 minuts i, a continuació, comprova Yahoo Weather si alguna cosa ha canviat; si és així, actualitza la pantalla. Es pot canviar el temps de 5 minuts, és a prop de la part inferior del guió.

dormir (60 * 5)

Podeu configurar un treball crontab (recordeu que cal executar-lo com a root) que iniciarà l'script a cada arrencada.

utilitzar:

sudo crontab -e

introdueix:

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

Crec que hauria de funcionar; encara no he configurat cron al meu sistema.

Això és pràcticament tot -

Com he dit, aquest és un dels meus primers programes python, i estic segur que algú que en sap més veurà una millor manera de fer-ho.

Només he fet proves limitades sobre això: fins ara he vist funcionar "Neu", "Pluja" i "Tronada", Hi ha algunes condicions que encara no estic segur de com manejar. Accepto les idees.

Pas 4: Informació actualitzada per a: API Openweathermap

Al setembre de 2020, vaig actualitzar l’escriptura per utilitzar l’API

NOTA: Aquesta va ser una solució "ràpida" per a mi i limitada a la prova ((ha estat tapat durant els darrers dies i tot el que veig és la pantalla del núvol i la pluja)), tot i que crec que he captat totes les condicions fàcils de pantalla, és possible que em vaig perdre un parell a causa de la rapidesa amb què es va fer aquesta correcció. Dit això, si creieu que hi ha un problema, si us plau, deixeu un comentari i el temps que ho permeti, ho examinaré o intentaré orientar-vos en la direcció correcta. *

Haureu de registrar-vos per obtenir una clau d'API mitjançant l'enllaç anterior; quan editeu l'script per situar la vostra ciutat, veureu un lloc per a la clau. Simplement copieu-lo i enganxeu-lo i hauríeu de ser bons.

Altres notes:

Aquest script ara utilitza la informació de l'API de dades meteorològiques actuals sobre aquesta API aquí:

openweathermap.org/current Una cosa que cal tenir en compte és que podeu utilitzar una ciutat, un estat i un país.

És a dir: la ciutat "Dayton" es converteix en "Dayton, OH, EUA". Tingueu en compte que l'estat i els codis de país són majúscules, això és obligatori. L'API diu que només pot utilitzar "Dayton, OH", però he rebut errors de l'script quan ho vaig fer, i com que es va solucionar ràpidament, no he examinat per què. PER tant, recomano utilitzar la "ciutat, estat, país"

SI per algun motiu no obteniu bona informació amb un nom de ciutat, també podeu cercar l'identificador de ciutat o utilitzar latitud i longitud o el codi postal. En cada cas, caldrà canviar l'URL, si feu clic a l'enllaç situat a la part dreta del lloc web de l'API, donarà un exemple de com hauria de ser l'URL.

També heu de canviar l'URL de l'script.

Encara hi ha més notes: 3 d'octubre de 2020

@Itsmedoofer va assenyalar que necessitaven instal·lar les sol·licituds python de la biblioteca amb la nova actualització. No estic segur que ho necessités (també és possible que el tingués instal·lat fa anys o que diferents versions de Python instal·lin diferents biblioteques per defecte). Per tant, si l'script dóna un error sobre les peticions de Python, és fàcil de solucionar.

escriviu aquesta ordre a la sol·licitud d’instal·lació de CLI: python -m pip

i hauries de ser bo.

Tant de bo això ho faci, ja que va ser una solució ràpida i, potser, un dia si ho permet, puc treballar en la neteja una mica millor.

Actualització (6 d'octubre de 2020) S'ha acceptat la sol·licitud d'extracció de github, el dipòsit original original de CyntechUK ara inclou aquest script. https://github.com/CyntechUK/WeatherHAT L'usuari Boeerb té algunes idees sobre com mostrar algunes de les condicions que actualment no es mostren, així com algunes altres idees d'ús. Per tant, vigileu aquest dipòsit. I espero que passin coses.

Actualització: (8 d'octubre de 2020) Open Weather Map té un petit tutorial sobre la configuració i l'ús de l'API, https://openweathermap.org/appid Un bon lloc per començar.

Recomanat: