Talaan ng mga Nilalaman:
- Hakbang 1: Itakda ang SD Card at Raspberry PI
- Hakbang 2: I-setup ang WeatherHAT Library
- Hakbang 3: Pag-install ng Weather-api at GetWeather Script
- Hakbang 4: Nai-update na Impormasyon Para sa: Openweathermap API
Video: Simpleng Pagpapakita ng Panahon Gamit ang Raspberry PI at Cyntech WeatherHAT: 4 na Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:10
* Noong 2019 binago ng Yahoo ang API nito, at tumigil ito sa paggana. Hindi ko namalayan ang pagbabago. Noong Setyembre ng 2020 ang proyektong ito ay na-update upang magamit ang OPENWEATHERMAP API Tingnan ang na-update na seksyon sa ibaba, ang natitirang impormasyon na ito ay mabuti pa rin. Salamat sa pagtingin, at salamat sa pagpapaalam sa akin tungkol sa pagbabago ng Yahoo. *
Kamakailan ay nakakuha ako ng isang Cyntech WeatherHAT, ngunit medyo nabigo ako sa kakulangan ng software para dito.
Ang HAT sa sarili ay lilitaw na mahusay na itinayo, na may 6 na asul na LEDs sa anyo ng mga patak ng ulan, 6 na mga orange na LED sa anyo ng isang kulog, 6 na puting LEDs sa anyo ng isang ulap. 1 (Ang paniniwala ko ay isang RGB LED) para sa SUN - nagpapakita ito ng kahel (kaya't maaaring mali ako tungkol sa pagiging isang RGB). At 6 WS2812 LEDs (Ito ang RGB:-))
Ang Cyntech ay mayroong gabay na nagsisimula, at kahit na mabuti - madali itong mai-install at magamit ang HAT.
Kaya't nagulat na lang ako na hindi talaga makita ang anumang software (bukod sa demo na ibinigay ng Cyntech). Ako ay pantay na sorpresa upang hindi makahanap ng sinumang talagang gumagamit nito - Marahil ang mga tao ay nais ng isang "magarbong" display na may temperatura, at lahat ng ganoong uri ng impormasyon. Para sa akin masarap tingnan lamang ang ilang mga LEDs at malaman - Umuulan, o Bagyo, o Maulap - Sa puntong iyon kung kailangan ko ng karagdagang impormasyon maaari akong tumingin sa aking tablet o telepono.:-)
Medyo higit pa - ito talaga ang aking unang pagkakataon sa paggamit ng sawa, hindi ko talaga ito mahusay. At sigurado ako na ang mga taong talagang nakakaalam ng sawa ay sasabihin sa akin ng mas mahusay na paraan upang gawin ito.
Magsimula na tayo:
Kailangan namin ng isang SD card (hindi bababa sa 8gb)
Isang Raspberry PI (Gumagamit ako ng isang Zero W) kailangan nito upang magkaroon ng access sa internet.
at kailangan namin ang Cyntech panahonHAT
Kung gumagamit ka ng isang Raspberry PI Zero W kakailanganin mo ring makapaghinang ng isang hanay ng mga header sa board.
Kung hindi man ang mga kasanayang kinakailangan ay ang kakayahang gumamit ng software at i-setup ang SD card.
Hakbang 1: Itakda ang SD Card at Raspberry PI
Kakailanganin mong i-download ang pinakabagong Raspbian (sa oras ng pagtuturo na ito na ang Raspbian Stretch Marso 2018 (2018-03-13))
www.raspberrypi.org/downloads/raspbian/
Ginamit ko ang edisyon ng desktop, kahit na ako ay tumatakbo ang aking pag-setup na walang ulo, at ginagawa ang karamihan sa mga bagay mula sa CLI (command line interface) sa ssh.
Sundin ang gabay sa pag-setup na matatagpuan dito:
www.raspberrypi.org/documentation/installa…
Matapos ang Etcher ay tapos na, alisin ang SD card, at muling ipasok ito sa computer.
* Kailangan mo lamang gawin ang hakbang na ito sa ibaba kung balak mong gumawa ng isang walang ulong pag-install
Kailangan naming i-setup ang SSH at WIFI bago namin gamitin ang SD card sa Raspberry PI. Sa pagkahati ng BOOT ng card, lumikha ng isang file na pinangalanang "ssh" nang walang mga quote. walang dapat na nasa file na iyon. Kapag ang mga bota ng PI makikita nito ang file na iyon, at i-on ang SSH.
Kailangan din naming lumikha ng isang file na tinatawag na "wpa_supplicant.conf". Kailangan naming i-edit ang file na ito sa iyong mga setting ng wifi.
Dapat ganito ang hitsura:
ctrl_interface = DIR = / var / run / wpa_supplicant GROUP = netdev
update_config = 1 network = {ssid = "yourwifiSSID" psk = "yourwifipassword" scan_ssid = 1}
* Kailangan mo lamang gawin ito kung balak mong gumawa ng isang walang ulong pag-install
Kapag tapos na iyon, ligtas na alisin ang SD card at ilagay sa Raspberry PI (tiyakin na walang kapangyarihan sa PI).
Ikabit ang WeatherHAT, at lakas sa Raspberry PI.
Hakbang 2: I-setup ang WeatherHAT Library
Para sa hakbang na ito susundan namin ang nahanap na Patnubay sa Pagsisimula na nahanap
guides.cyntech.co.uk/weatherhat/getting-sta…
KUNG gumagawa ka ng isang walang ulong pag-install magugustuhan mo ssh [email protected]
Kung wala kang isang ssh client - ang PUTTY ay mabuti.
Kung gumagamit ka ng isang keyboard at monitor - ang gabay sa itaas ay isang mahusay na sundin, sinisimulan ka nito sa isang GUI desktop.
Ang mga mahahalagang hakbang dito ay ang pag-install ng WS281x library at ng mga library ng WeatherHAT, kasama ang pagtitiwala para sa bawat isa.
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
Ngayon kailangan naming tiyakin na ang I2C ay nakabukas.
sudo raspi-config
Ang gabay ay nakasulat para sa isang mas matandang bersyon ng raspi-config at sinasabi sa goto na "Mga Advanced na Pagpipilian" na pinalitan ng naniniwala ako na "Mga Interface"
Kapag na-on mo ang I2C kailangan mong i-reboot.
Ngayon ay oras na upang subukan ang HAT
cd WeatherHAT
sudo python cycle.py
Kung naging maayos ang lahat dapat mong makita ang lahat ng mga tampok at isang bahaghari.
ihihinto ng ctrl-z ang programa.
* Mga Espesyal na Tala: Nalaman ko na ang mga pag-time ng Raspberry PI 3 ay magkakaiba at ang bahaghari ay maaaring hindi gumana nang tama. KUNG mayroon ka ng isyung ito dito ay kung paano ito ayusin.
github.com/CyntechUK/WeatherHAT/issues/3
guides.cyntech.co.uk/raspberry-pi/assemblin…
Kapag ang lahat ay gumagana, maaari naming magpatuloy sa susunod na hakbang.
Update: (Okt 6, 2020) Naglalaman ang repository na ito ng aking getWeather.py script, napakahusay na balita, dahil muling nag-spark ang interes, at ang mga bagong bagay ay tiyak na mangyayari.
Hakbang 3: Pag-install ng Weather-api at GetWeather Script
Kaya, naglagay ako ng isang kahilingan sa Pull kay CyntechUK para sa aking script - sana ay tanggapin nila ang kahilingan, at maaari mong laktawan ang pag-download ng aking lalagyan. (maaaring hindi nila nais na isama ang aking code thou)
(Okt 6, 2020) Ang kahilingan sa Pull ay naaprubahan, ang aking getWeather script ay kasama na ngayon sa repository ng Weatherhat.
********* Maaari mo pa ring magamit ang impormasyong ito kung nais mo, gayunpaman ang getWeather.py ay isinama sa repositoryo ng Weatherhat ngayon ***** *****
Ang aking reseta ay maaaring matagpuan dito:
github.com/kd8bxp/WeatherHAT/tree/getWeath…
at ang aking script ay tinatawag na getWeather.py
KUNG tanggapin nila ang hiling sa paghila magkakaroon ka ng script na ito - kung hindi kailangan mong i-clone ang imbakan.
sa iyong direktoryo sa bahay (/ home / pi) na uri:
git clone https://github.com/kd8bxp/WeatherHAT.git getWeather
mai-clone nito ang repository sa isang direktoryo na tinatawag na getWeather, susunod na kailangan nating mag-checkout sa getWeather branch.
cd getWeather
git checkout getWeather
**********************************************************************
Kakailanganin mong mag-cd sa direktoryo ng WeatherHAT na na-clone nang mas maaga at
Kailangan naming i-edit ang getWeather.py script para sa iyong lokasyon.
nano getWeather.py
Dapat mong makita ang isang linya na nagsisimula sa
lokasyon at nagtatapos sa paghahanap (45042) - Ito ang aking zip code, nalaman kong hindi ito gumana kagaya ng iniisip mo
at ang linya sa itaas mismo nito na na-comment out ay gumagana nang mas mahusay sa isang pangalan ng lungsod. Iyon ang marahil na nais mong gamitin. Kaya Komento ang linya ng zip code (#) at hindi mag-isip at baguhin ang iyong pangalan ng lungsod.
*****
Kailangan naming mag-install ng isa pang silid-aklatan upang gumana ito, ang weather-api na isang pambalot para sa Yahoo weather API.
pypi.python.org/pypi/weather-api/0.0.5
Madali ang pag-install -
pip install ng panahon-api
***********************************************************************************
Maaari na nating patakbuhin ang script:
sudo python getWeather.py &
Hahayaan ng & ang script na tumakbo sa background. Ang script ay natutulog nang halos 5 minuto, at pagkatapos ay suriin ang Yahoo Weather kung may nagbago - kung gayon ina-update nito ang display. Maaaring baguhin ang oras na 5 minuto, malapit ito sa ilalim ng script.
pagtulog (60 * 5)
Maaari kang mag-set up ng isang trabaho sa crontab (tandaan na kailangang patakbuhin ito bilang ugat) na magsisimula sa script sa bawat boot.
gamitin ang:
sudo crontab -e
ipasok:
@reboot python /home/pi/weatherHAT/getWeather.py
Sa palagay ko dapat itong gumana - Hindi pa ako nag-i-setup ng cron sa aking system.
Iyan na iyun -
Tulad ng sinabi ko na ito ay isa sa aking unang mga programa sa python, at sigurado akong ang isang tao na mas may alam ang makakakita ng isang mas mahusay na paraan upang magawa ito.
Limitado lang ang nagawa ko rito - nakita ko ang "Snow" "Ulan" at "Thunderstorm" na gumagana hanggang ngayon, Mayroong ilang mga kundisyon na hindi ako sigurado kung paano pangasiwaan - Inaanyayahan ko ang mga ideya.
Hakbang 4: Nai-update na Impormasyon Para sa: Openweathermap API
Noong Setyembre ng 2020, na-update ko ang script upang magamit ang https://openweathermap.org API.
TANDAAN: Ito ay isang "mabilis" na pag-aayos para sa akin, at limitadong nasubukan - (Naging overcast sa nakaraang mga araw, at ang nakikita ko lang ay ang cloud at rain display) - Habang naniniwala akong nahuli ko ang lahat ng mga kundisyon na madaling gawin. Ipakita, posible na napalampas ko ang isang pares dahil sa kung gaano "kabilis" ang pag-aayos na ito. Sinabi na, kung sa palagay mo ay may problema mangyaring mag-iwan ng komento at oras na nagpapahintulot na tingnan ko ito - o subukang ituro ka sa tamang direksyon. *
Kakailanganin mong mag-sign up para sa isang key ng API gamit ang link sa itaas, kapag na-edit mo ang script upang mailagay ang iyong lungsod, makakakita ka ng isang lugar para sa susi. Kopyahin lamang at i-paste ito, at dapat kang maging mahusay.
Iba pang mga tala:
Gumagamit na ngayon ang script na ito ng impormasyon ng "Kasalukuyang data data API" tungkol sa API na iyon:
openweathermap.org/current Isang bagay na dapat tandaan ay maaari mong gamitin ang isang lungsod, estado, at bansa.
IE: ang lungsod na "Dayton" ay naging "Dayton, OH, US" na napansin kung paano ang estado at ang mga code ng bansa ay parehong malalaki, kinakailangan ito. Sinasabi ng API na maaari itong gumamit ng "Dayton, OH" ngunit nakakuha ako ng mga pagkakamali mula sa script noong ginawa ko ito - at dahil ito ay isang mabilis na pag-aayos, hindi ko pa tiningnan kung bakit. KAYA, inirerekumenda kong gamitin ang "lungsod, estado, bansa"
KUNG sa ilang kadahilanan hindi ka nakakakuha ng magandang impormasyon gamit ang isang pangalan ng lungsod, maaari mo ring tingnan ang City ID, o gumamit ng latitude at longitude o ang zip code. Sa bawat kaso ang URL ay kailangang mabago, kung nag-click ka sa link sa kanang bahagi ng website ng API, magbibigay ito ng isang halimbawa ng kung ano ang dapat na URL.
Kailangan mong baguhin ang URL sa script din.
Kahit na higit pang mga tala: Oktubre 3, 2020
Tinukoy ni @Itsmedoofer na kailangan nilang i-install ang mga library-python-request sa bagong pag-update. Hindi ako sigurado na kailangan ko ito, (posible rin na mai-install ko ito mula sa mga taon na ang nakakaraan, o iba't ibang mga bersyon ng sawa i-install ang iba't ibang mga aklatan bilang default). Kaya't kung ang script ay nagbibigay ng isang error tungkol sa mga hiling sa python simpleng upang ayusin.
i-type ang utos na ito sa CLI: python -m pip mga kahilingan sa pag-install
at dapat maging mabuti ka.
Inaasahan kong gumagawa ito mula noon, ito ay isang mabilis na pag-aayos, at marahil isang araw na pinahihintulutan akong magtrabaho sa paglilinis nito nang medyo mas mahusay.
Update (Okt 6, 2020) Ang hiling sa github pull ay tinanggap, ang orihinal na orihinal na Repositoryo ng CyntechUK ay may kasamang script na ito. https://github.com/CyntechUK/WeatherHAT Ang gumagamit na si Boeerb ay may ilang mga ideya kung paano ipakita ang ilan sa mga kundisyon na kasalukuyang hindi ipinapakita, pati na rin ang ilang iba pang mga ideya para magamit. Kaya't bantayan ang repository na iyon. At sana mangyari ang mga bagay.
Update: (Okt 8, 2020) Ang Open Weather Map ay may isang maikling tutorial sa pag-set up at paggamit ng API, https://openweathermap.org/appid Isang magandang lugar upang magsimula.
Inirerekumendang:
Subukan ang Bare Arduino, Gamit ang Software ng Laro Gamit ang Capacitive Input at LED: 4 na Hakbang
Subukan ang Bare Arduino, Gamit ang Software ng Laro Gamit ang Capacitive Input at LED: " Push-It " Interactive na laro gamit ang isang hubad na Arduino board, walang mga panlabas na bahagi o mga kable na kinakailangan (gumagamit ng isang capacitive 'touch' input). Ipinapakita sa itaas, ipinapakita ang pagtakbo nito sa dalawang magkakaibang board. Push-Mayroon itong dalawang layunin. Upang mabilis na maipakita / v
Internet Clock: Ipakita ang Petsa at Oras Gamit ang isang OLED Gamit ang ESP8266 NodeMCU Sa NTP Protocol: 6 na Hakbang
Internet Clock: Display Date and Time With an OLED Gamit ang ESP8266 NodeMCU With NTP Protocol: Kumusta mga tao sa mga itinuturo na ito na magtatayo kami ng isang orasan sa internet na magkakaroon ng oras mula sa internet kaya't ang proyektong ito ay hindi mangangailangan ng anumang RTC upang tumakbo, kakailanganin lamang nito ang isang nagtatrabaho koneksyon sa internet At para sa proyektong ito kailangan mo ng isang esp8266 na magkakaroon ng
Arduino 3-in-1 Pagpapakita ng Oras at Panahon: 11 Mga Hakbang
Arduino 3-in-1 na Oras at Pagpapakita ng Panahon: Gusto ko ang mga PIC microcontroller at gusto ko ng programa sa wikang pagpupulong. Sa katunayan, sa nakaraang ilang taon, nag-post ako ng halos 40 mga proyekto sa aking website batay sa kombinasyon na iyon. Kamakailan lamang ay nag-order ako ng ilang mga bahagi mula sa isa sa aking paboritong US v
Paano Gumawa ng isang Device ng IoT upang Makontrol ang Mga Kagamitan at Subaybayan ang Panahon Gamit ang Esp8266: 5 Mga Hakbang
Paano Gumawa ng isang IoT Device upang Makontrol ang Mga Kagamitan at Subaybayan ang Panahon Gamit ang Esp8266: Ang Internet ng mga bagay (IoT) ay ang inter-networking ng mga pisikal na aparato (tinukoy din bilang " mga konektadong aparato " at " mga smart device "), mga gusali, at iba pang mga item - naka-embed sa electronics, software, sensor, actuators, at
Acurite 5 in 1 Weather Station Paggamit ng isang Raspberry Pi at Weewx (iba pang Mga Panahon ng Panahon ay Tugma): 5 Mga Hakbang (na may Mga Larawan)
Acurite 5 in 1 Weather Station Paggamit ng isang Raspberry Pi at Weewx (iba pang Mga Weather Stations ay Tugma): Nang binili ko ang Acurite 5 sa 1 istasyon ng panahon nais kong masuri ang lagay ng panahon sa aking bahay habang wala ako. Nang makauwi ako at naayos ko ito napagtanto ko na dapat kong magkaroon ng display na konektado sa isang computer o bumili ng kanilang smart hub,