Mündəricat:

Raspberry PI və Cyntech WeatherHAT istifadə edərək sadə hava ekranı: 4 addım
Raspberry PI və Cyntech WeatherHAT istifadə edərək sadə hava ekranı: 4 addım

Video: Raspberry PI və Cyntech WeatherHAT istifadə edərək sadə hava ekranı: 4 addım

Video: Raspberry PI və Cyntech WeatherHAT istifadə edərək sadə hava ekranı: 4 addım
Video: Mənim işim meşəni müşahidə etməkdir və burada qəribə bir şey baş verir. 2024, Noyabr
Anonim
Raspberry PI və Cyntech WeatherHAT istifadə edərək sadə hava ekranı
Raspberry PI və Cyntech WeatherHAT istifadə edərək sadə hava ekranı
Raspberry PI və Cyntech WeatherHAT istifadə edərək sadə hava ekranı
Raspberry PI və Cyntech WeatherHAT istifadə edərək sadə hava ekranı

* 2019 -cu ildə Yahoo API -ni dəyişdi və bu işini dayandırdı. Dəyişiklikdən xəbərsiz idim. 2020 -ci ilin sentyabr ayında bu layihə OPENWEATHERMAP API -dən istifadə etmək üçün yeniləndi Aşağıdakı yenilənmiş hissəyə baxın, bu məlumatların qalan hissəsi hələ də yaxşıdır. Yahoo dəyişikliyi haqqında mənə məlumat verdiyiniz üçün təşəkkür edirəm. *

Bu yaxınlarda bir Cyntech WeatherHAT əldə etdim, amma bunun üçün proqram təminatının olmaması məni bir az məyus etdi.

Yağış damlaları şəklində 6 mavi LED, göy gurultusu şəklində 6 narıncı LED, bulud şəklində 6 ağ LED ilə yaxşı qurulmuş HAT. Günəş üçün 1 (RGB LED olduğuna inandığım) - narıncı rəngdədir (buna görə RGB olmaqda yanılıram). Və 6 WS2812 LED (bunlar RGB:-))

Cyntech -in bir başlanğıc bələdçisi var və hətta yaxşıdır - HAT -ı quraşdırmaq və istifadə etmək asandır.

Həqiqətən heç bir proqram görmədiyim üçün təəccübləndim (Cyntech tərəfindən təqdim edilən demodan başqa). Həqiqətən də bundan istifadə edən heç kimin tapılmaması eyni dərəcədə təəccübləndirdi - Bəlkə də insanlar temperatur və hər cür məlumatı olan "fantastik" bir ekran istəyirlər. Mənim üçün bir neçə LED -ə baxmaq və ya yağış yağdığını, ya da göy gurultulu və ya buludlu olduğunu bilmək mənim üçün çox xoşdur, əgər daha çox məlumata ehtiyacım varsa tabletimə və ya telefonuma baxa bilərəm.:-)

Bir az daha - pythondan ilk dəfə istifadə edirəm, heç də yaxşı deyiləm. Əminəm ki, pitonu həqiqətən bilən insanlar bunun daha yaxşı yolunu mənə deyəcəklər.

Gəlin başlayaq:

SD karta ehtiyacımız var (ən azı 8 gb)

Raspberry PI (Sıfır W istifadə edirəm) internetə ehtiyacı var.

və Cyntech hava şəraitinə ehtiyacımız varHAT

Bir Raspberry PI Zero W istifadə edirsinizsə, lövhəyə bir sıra başlıqlar da lehimləməlisiniz.

Əks təqdirdə, proqramdan istifadə etmək və SD kartı qurmaq bacarığı lazımdır.

Addım 1: SD Kartı və Raspberry PI qurun

SD Kart və Raspberry PI qurun
SD Kart və Raspberry PI qurun
SD Kart və Raspberry PI qurun
SD Kart və Raspberry PI qurun

Ən son Raspbian-ı yükləməlisiniz (bu təlimat zamanı Raspbian Stretch Mart 2018 (2018-03-13))

www.raspberrypi.org/downloads/raspbian/

Masa üstü nəşrdən istifadə etdim, hətta siz də başımı qurmadan işləyirəm və CLI -dən (əmr satırı interfeysi) çox şeyi ssh üzərindən edirəm.

Burada tapılan quraşdırma təlimatına əməl edin:

www.raspberrypi.org/documentation/installa…

Etcher bitdikdən sonra SD kartı çıxarın və yenidən kompüterə daxil edin.

* Başsız bir quraşdırma etməyi planlaşdırırsınızsa, həqiqətən bu addımı aşağıda etməlisiniz

Raspberry PI -də SD kartı istifadə etməzdən əvvəl SSH və WIFI qurmalıyıq. Kartın BOOT bölümündə, tırnak işarəsi olmadan "ssh" adlı bir fayl yaradın. bu faylda heç bir şey olmamalıdır. PI açıldıqda həmin faylı görəcək və SSH -i açacaq.

"Wpa_supplicant.conf" adlı bir fayl da yaratmalıyıq. Bu faylı wifi parametrlərinizlə redaktə etməliyik.

Bu kimi bir şey görünməlidir:

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

update_config = 1 şəbəkə = {ssid = "yourwifiSSID" psk = "senin wifipassword" tarama_ssid = 1}

* Həqiqətən yalnız başsız bir quraşdırma etməyi planlaşdırırsınızsa bunu etməlisiniz

Bunu etdikdən sonra, SD kartı etibarlı şəkildə çıxarın və Raspberry PI -yə qoyun (PI -də heç bir güc olmadığından əmin olun).

WeatherHAT və Raspberry PI -ni qoşun.

Addım 2: WeatherHAT Kitabxanalarını qurun

WeatherHAT Kitabxanalarını qurun
WeatherHAT Kitabxanalarını qurun
WeatherHAT Kitabxanalarını qurun
WeatherHAT Kitabxanalarını qurun

Bu addım üçün tapılan Başlanğıc Kılavuzunu izləyəcəyik

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

Başsız bir quraşdırma edirsinizsə, ssh [email protected] yazmaq istəyəcəksiniz

Bir ssh müştəriniz yoxdursa - PUTTY yaxşı biridir.

Bir klaviatura və monitordan istifadə edirsinizsə - yuxarıdakı təlimatı izləmək yaxşıdır, sizi GUI masaüstündə işə salır.

Buradakı vacib addımlar, WS281x kitabxanasını və WeatherHAT kitabxanalarını hər birinin asılılığı ilə birlikdə qurmaqdır.

sudo apt-get yeniləməsi

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

İndi I2C -nin aktiv olduğundan əmin olmalıyıq.

sudo raspi-config

Bələdçi, raspi-config-in köhnə bir versiyası üçün yazılmışdır və "İnterfeyslər" inandığına inandığınız "Ətraflı Seçimlər" ə söylədi.

I2C -ni açdıqdan sonra yenidən başlamalı olacaqsınız.

İndi HAT -ı sınamağın vaxtı gəldi

cd Hava HAT

sudo python dövrü.py

Hər şey yaxşı gedirsə, bütün xüsusiyyətləri və göy qurşağını görməlisiniz.

ctrl-z proqramı dayandıracaq.

*Xüsusi qeydlər: Raspberry PI 3 -ün vaxtlarının fərqli olduğunu və göy qurşağının düzgün işləməyəcəyini öyrəndim. Əgər bu problem varsa burada onu necə düzəltmək olar.

github.com/CyntechUK/WeatherHAT/issues/3

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

Hər şey işlədikdən sonra növbəti mərhələyə davam edə bilərik.

Yeniləmə: (6 Oktyabr 2020) Bu depo indi mənim getWeather.py skriptimi ehtiva edir, bu böyük bir xəbərdir, çünki maraq yenidən alovlandı və yeni şeylər baş verməlidir.

Addım 3: Weather-api və GetWeather Script-in quraşdırılması

Weather-api və GetWeather Script-in quraşdırılması
Weather-api və GetWeather Script-in quraşdırılması
Weather-api və GetWeather Script-in quraşdırılması
Weather-api və GetWeather Script-in quraşdırılması
Weather-api və GetWeather Script-in quraşdırılması
Weather-api və GetWeather Script-in quraşdırılması
Weather-api və GetWeather Script-in quraşdırılması
Weather-api və GetWeather Script-in quraşdırılması

Beləliklə, skriptim üçün CyntechUK -a PULL bir sorğu qoydum - inşallah istəyi qəbul edəcəklər və mənim depomu yükləməyi atlaya bilərsiniz. (kodumu daxil etmək istəməyəcəklər)

(6 Oktyabr 2020) PULL istəyi təsdiq edildi, getWeather skriptim indi Weatherhat anbarına daxil edildi.

********* İstəsəniz hələ də bu məlumatdan istifadə edə bilərsiniz, lakin getWeather.py indi hava şəraiti anbarına daxil edilmişdir ******************* *****************

Rezervuarımı burada tapa bilərsiniz:

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

və skriptimə getWeather.py deyilir

Çəkmə istəyini qəbul edərlərsə, bu skriptə sahib olacaqsınız - əgər yoxsa, depoyu klonlamalı olacaqsınız.

ev kataloqunuzda (/home/pi) yazın:

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

bu, depoyu getWeather adlı bir qovluğa kopyalayacaq, bundan sonra getWeather filialını yoxlamalıyıq.

cd getWeather

git checkout getWeather

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

Daha əvvəl klonlanmış weatherHAT kataloqu daxil etməlisiniz

Məkanınız üçün getWeather.py skriptini redaktə etməliyik.

nano getWeather.py

İlə başlayan bir xətt görməlisiniz

yer və axtarışla bitər (45042) - Bu mənim poçt kodumdur, düşündüyünüz kimi işləmədiyini gördüm

və yuxarıdakı sətir şərh olunan bir şəhər adı ilə daha yaxşı işləyir. Yəqin ki, istifadə etmək istədiyiniz budur. Poçt kodunu (#) şərh edin və şərh yazmayın və şəhərinizin adını dəyişdirin.

*********** OLD YAHOO MƏLUMATI - Artıq ehtiyac yoxdur ***********

Bunun işləməsi üçün daha bir kitabxana qurmalıyıq ki, bu da Yahoo hava API-si üçün hava şəraiti.

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

Quraşdırma asandır -

pip hava-api quraşdırın

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

İndi skript işlədə bilərik:

sudo python getWeather.py &

& İşarəsi arxa planda işləməsinə icazə verəcək. Ssenari təxminən 5 dəqiqə yatır və sonra bir şey dəyişib -dəyişmədiyini Yahoo Weather -da yoxlayır - əgər belədirsə ekranı yeniləyir. 5 dəqiqəlik vaxt dəyişdirilə bilər, bu ssenarinin altına yaxındır.

yuxu (60 * 5)

Hər açılışda skriptə başlayacaq bir crontab işi qura bilərsiniz (bunun kök olaraq işlədilməsini unutmayın).

istifadə:

sudo crontab -e

daxil edin:

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

Düşünürəm ki, bu işləməlidir - hələ sistemimdə cron qurmamışam.

Bu, demək olar ki, Dediyim kimi, bu, ilk python proqramlarımdan biridir və əminəm ki, daha çox bilən birisi bunu etmək üçün daha yaxşı bir yol görəcəkdir.

Bu mövzuda yalnız məhdud testlər etdim - indiyə qədər "Qar" "Yağış" və "Gök gürültüsü" işlərini gördüm, Hələ necə idarə edəcəyimi bilmədiyim bəzi şərtlər var - fikirləri alqışlayıram.

Addım 4: Yenilənmiş Məlumat: Openweathermap API

2020 -ci ilin sentyabr ayında https://openweathermap.org API -dən istifadə etmək üçün skript yenilədim.

DİQQƏT: Bu mənim üçün "sürətli" bir düzəliş idi və məhdud sınaqdan keçirildi - (Son bir neçə gündür buludlu idi və gördüyüm yalnız bulud və yağış ekranıdır) - İnandığım halda asan olan bütün şərtləri tutdum Ekran, bu düzəlişin nə qədər "sürətli" edildiyinə görə bir cütü əldən verdim. Deyilənə görə, bir problem olduğunu düşünürsünüzsə, bir şərh yazın və vaxt ayırsanız, baxacam - və ya sizi doğru istiqamətə yönəltməyə çalışın. *

Yuxarıdakı linki istifadə edərək bir API açarı üçün qeydiyyatdan keçməlisiniz, şəhərinizi yerləşdirmək üçün skript düzəldərkən açar üçün bir yer görəcəksiniz. Yalnız kopyalayın və yapışdırın, yaxşı olmalısınız.

Digər qeydlər:

Bu skript indi bu API haqqında "Cari hava məlumatları API" məlumatlarını istifadə edir:

openweathermap.org/current Qeyd etmək lazım olan bir şey, bir şəhərdən, əyalətdən və ölkədən istifadə edə biləcəyinizdir.

IE: "Dayton" şəhəri, "Dayton, OH, US" halına gəlir, əyalət və ölkə kodlarının hər ikisinin də böyük hərf olduğunu görürük, buna ehtiyac var. API, yalnız "Dayton, OH" istifadə edə biləcəyini söyləyir, amma bunu edərkən skriptdən səhvlər aldım - və bu sürətli bir həll olduğu üçün bunun səbəbini araşdırmadım. Beləliklə, "şəhər, əyalət, ölkə" istifadə etməyi məsləhət görürəm

NƏDİR səbəbdən bir şəhər adı ilə yaxşı bir məlumat əldə etməsəniz, Şəhər ID'sini də axtara və ya enlem ve boylamdan və ya poçt kodundan istifadə edə bilərsiniz. Hər bir halda URL -in dəyişdirilməsi lazım olacaq, əgər API veb saytının sağ tərəfindəki linki tıklasanız, URL -nin nə olması lazım olduğuna dair bir nümunə verəcəkdir.

Skriptdəki URL -i də dəyişdirməlisiniz.

Daha çox qeyd: 3 oktyabr 2020

@Itsmedoofer, kitabxana python istəklərini yeni yeniləmə ilə yükləmələri lazım olduğuna diqqət çəkdi. Buna ehtiyacım olduğuna əmin deyiləm (illər əvvəl quraşdırılmış olmağım da mümkündür və ya python -un fərqli versiyaları standart olaraq fərqli kitabxanalar quraşdırır). Beləliklə, skript python istəkləri ilə bağlı bir səhv verərsə, onu düzəltmək çox asandır.

bu əmri CLI -ə yazın: python -m pip quraşdırma istəkləri

və yaxşı olmalısan.

Ümid edirəm ki, bu, sürətli bir həll idi və bəlkə də bir gün daha yaxşı təmizləmək üçün işləyə bilərəm.

Yeniləmə (6 Oktyabr 2020) Github çəkmə tələbi qəbul edildi, orijinal CyntechUK orijinal anbarı indi bu skriptə malikdir. https://github.com/CyntechUK/WeatherHAT Boeerb istifadəçisinin hal -hazırda göstərilməyən bəzi şərtləri və istifadə üçün bəzi fikirləri necə göstərəcəyinə dair bəzi fikirləri var. Buna görə də o anbara diqqət yetirin. Və inşallah işlər olacaq.

Yeniləmə: (8 Oktyabr 2020) Açıq Hava Xəritəsində, API qurmaq və istifadə etmək üçün qısa bir dərs var, https://openweathermap.org/appid Başlamaq üçün yaxşı bir yer.

Tövsiyə: