Мазмұны:

Raspberry PI мен Cyntech WeatherHAT көмегімен қарапайым ауа райы дисплейі: 4 қадам
Raspberry PI мен Cyntech WeatherHAT көмегімен қарапайым ауа райы дисплейі: 4 қадам

Бейне: Raspberry PI мен Cyntech WeatherHAT көмегімен қарапайым ауа райы дисплейі: 4 қадам

Бейне: Raspberry PI мен Cyntech WeatherHAT көмегімен қарапайым ауа райы дисплейі: 4 қадам
Бейне: СООБРАЗИМ НА ТРОИХ! ► 1 Кооперативный стрим Warhammer: Vermintide 2 2024, Маусым
Anonim
Raspberry PI мен Cyntech WeatherHAT көмегімен қарапайым ауа райы дисплейі
Raspberry PI мен Cyntech WeatherHAT көмегімен қарапайым ауа райы дисплейі
Raspberry PI мен Cyntech WeatherHAT көмегімен қарапайым ауа райы дисплейі
Raspberry PI мен Cyntech WeatherHAT көмегімен қарапайым ауа райы дисплейі

* 2019 жылы Yahoo өзінің API -ін өзгертті және ол жұмысын тоқтатты. Мен өзгерісті білмедім. 2020 жылдың қыркүйегінде бұл жоба OPENWEATHERMAP API қолдану үшін жаңартылды Төмендегі жаңартылған бөлімді қараңыз, ал қалған ақпарат әлі де жақсы. Yahoo -ның өзгеруі туралы маған хабарлағаныңыз үшін рахмет. *

Жақында мен Cyntech WeatherHAT сатып алдым, бірақ оған арналған бағдарламалық қамтамасыз етудің жоқтығынан біраз көңілім қалды.

HAT-бұл жақсы құрастырылған сияқты, жаңбыр тамшылары түрінде 6 көк жарық диоды, найзағай түрінде 6 қызғылт сары жарық диоды, бұлт түрінде 6 ақ жарықдиодты шам. SUN үшін 1 (менің ойымша, RGB светодиодты) - ол қызғылт сары түсті көрсетеді (сондықтан мен RGB деп қателесуім мүмкін). Және 6 WS2812 жарық диоды (бұл RGB:-))

Cyntech -те жаңа нұсқаулық бар, тіпті бұл жақсы - HAT орнату және пайдалану оңай.

Мен ешқандай бағдарламалық жасақтаманы көрмегеніме таң қалдым (басқасы Cyntech ұсынған демо). Мен мұны шынымен қолданатын адамды таппағаныма таң қалдым - Мүмкін адамдар температурасы бар «сәнді» дисплейді және осындай ақпаратты қажет етеді. Мен үшін бірнеше светодиодқа қарап, жаңбыр, найзағай немесе бұлтты екенін білу өте жақсы - егер маған қосымша ақпарат қажет болса, мен планшетке немесе телефоныма қарай аламын.:-)

Тағы біраз - бұл мен питонды бірінші рет қолданамын, мен онша жақсы емеспін. Питонды жақсы білетін адамдар маған мұның жақсы әдісін айтатынына сенімдімін.

Бастайық:

Бізге SD картасы қажет (кемінде 8 Гб)

Таңқурай PI (мен Zero W қолданамын) интернетке кіруі керек.

және бізге Cyntech ауа райы керек HAT

Егер сіз Raspberry PI Zero W қолдансаңыз, онда сіз тақырыптар жиынтығын тақтаға дәнекерлеуіңіз керек.

Әйтпесе, бағдарламалық қамтамасыз етуді пайдалану және SD картасын орнату дағдылары қажет.

1 -қадам: SD картасы мен Raspberry PI орнатыңыз

SD картасы мен Raspberry PI орнатыңыз
SD картасы мен Raspberry PI орнатыңыз
SD картасы мен Raspberry PI орнатыңыз
SD картасы мен Raspberry PI орнатыңыз

Сізге Raspbian соңғы нұсқасын жүктеу қажет болады (бұл нұсқаулық кезінде Raspbian Stretch March 2018 (2018-03-13))

www.raspberrypi.org/downloads/raspbian/

Мен жұмыс үстелінің басылымын қолдандым, тіпті мен өзімнің қондырғымды бассыз жүргіземін және көп нәрсені CLI -ден (командалық жол интерфейсі) ssh арқылы жасаймын.

Мұнда табылған орнату нұсқаулығын орындаңыз:

www.raspberrypi.org/documentation/installa…

Etcher аяқталғаннан кейін SD картасын шығарып алып, оны компьютерге қайта салыңыз.

* Егер сіз бассыз орнатуды жоспарласаңыз, бұл қадамды тек төменде жасау керек

Raspberry PI -де SD картасын қолданар алдында бізге SSH және WIFI орнату керек. Картаның BOOT бөлімінде тырнақшасыз «ssh» атты файл жасаңыз. бұл файлда ештеңе болмауы керек. PI жүктелген кезде ол сол файлды көреді және SSH қосады.

Біз сондай -ақ «wpa_supplicant.conf» деп аталатын файлды жасауымыз керек. Біз бұл файлды Wi -Fi параметрлерімен өңдеуіміз керек.

Ол келесідей көрінуі керек:

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

update_config = 1 желі = {ssid = «yourwifiSSID» psk = «сенің құпия сөзің» scan_ssid = 1}

* Егер сіз бассыз орнатуды жоспарласаңыз, мұны істеуіңіз керек

Мұны жасағаннан кейін, SD картасын қауіпсіз түрде шығарып алыңыз және Raspberry PI -ге салыңыз (PI -де қуат жоқ екеніне көз жеткізіңіз).

WeatherHAT тіркеңіз және Raspberry PI қосыңыз.

2 -қадам: WeatherHAT кітапханаларын орнатыңыз

WeatherHAT кітапханаларын орнатыңыз
WeatherHAT кітапханаларын орнатыңыз
WeatherHAT кітапханаларын орнатыңыз
WeatherHAT кітапханаларын орнатыңыз

Бұл қадам үшін біз Жұмысты бастау нұсқаулығын орындаймыз

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

Егер сіз бассыз орнатуды жасасаңыз, ssh [email protected] жібергіңіз келеді

Егер сізде ssh клиенті болмаса - PUTTY жақсы.

Егер сіз пернетақта мен мониторды қолдансаңыз - жоғарыдағы нұсқаулықты орындаған дұрыс, ол сізді GUI жұмыс үстелінен бастайды.

Мұндағы маңызды қадамдар - WS281x кітапханасы мен WeatherHAT кітапханаларын және олардың әрқайсысына тәуелділікті орнату.

sudo apt-get жаңартуы

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 клоны https://github.com/ jgarff/rpi_ws281x.git> cd rpi_ws281x scons cd python sudo python setup.py орнату

Енді I2C қосылғанына көз жеткізуіміз керек.

sudo raspi-config

Нұсқаулық raspi-config-дің ескі нұсқасы үшін жазылған және «Advanced Options» деп жазылған, мен оны «Interfaces» деп ауыстырдым.

I2C қосылғаннан кейін сізге қайта жүктеу қажет болады.

Енді HAT тестілеудің уақыты келді

CD Ауа райыHAT

sudo python cycle.py

Егер бәрі ойдағыдай болса, сіз барлық ерекшеліктер мен кемпірқосақты көруіңіз керек.

ctrl-z бағдарламаны тоқтатады.

*Арнайы ескертулер: Мен Raspberry PI 3 уақыттары әр түрлі екенін және кемпірқосақ дұрыс жұмыс істемеуі мүмкін екенін білдім. Егер сізде бұл мәселе болса, оны қалай түзетуге болады.

github.com/CyntechUK/WeatherHAT/issues/3

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

Барлығы жұмыс істегеннен кейін біз келесі қадамға өтуімізге болады.

Жаңарту: (6 қазан, 2020 ж.) Бұл репозиторийде қазір менің getWeather.py сценарийім бар, бұл керемет жаңалық, өйткені қызығушылық қайтадан оянды және жаңа нәрселер міндетті түрде болады.

3-қадам: Weather-api мен GetWeather сценарийін орнату

Weather-api мен GetWeather сценарийін орнату
Weather-api мен GetWeather сценарийін орнату
Weather-api мен GetWeather сценарийін орнату
Weather-api мен GetWeather сценарийін орнату
Weather-api мен GetWeather сценарийін орнату
Weather-api мен GetWeather сценарийін орнату
Weather-api мен GetWeather сценарийін орнату
Weather-api мен GetWeather сценарийін орнату

Сонымен, мен сценарий бойынша CyntechUK -ге PULL сұрау салдым - олар сұранысты қабылдайды деп үміттенемін, және сіз менің репозиторийімді жүктеп алуды өткізіп жібере аласыз. (олар менің кодты қосқысы келмеуі мүмкін)

(6 қазан, 2020 ж.) PULL сұранысы мақұлданды, менің getWeather сценарийім енді Weatherhat репозиторийіне енгізілген.

********* Егер сіз қаласаңыз, бұл ақпаратты әлі де пайдалана аласыз, бірақ getWeather.py қазір ауа райы репозиторийіне енгізілген ******************* *****************

Менің репозиторийімді мына жерден табуға болады:

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

және менің сценарийім getWeather.py деп аталады

Егер олар сұрауды қабылдайтын болса, сізде бұл сценарий болады - егер болмаса, сізге репозиторийді клондау қажет болады.

үй каталогында (/home/pi) теріңіз:

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

бұл репозиторийді getWeather деп аталатын каталогқа клондайды, содан кейін біз getWeather тармағын тексеруіміз керек.

cd getWeather

get checkout getWeather

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

Сізге бұрын клондалған weatherHAT каталогына CD енгізу қажет болады

Біз сіздің орныңыз үшін getWeather.py сценарийін өңдеуіміз керек.

nano getWeather.py

Сізден басталатын сызықты көруіңіз керек

орналасуы және іздеумен аяқталады (45042) - Бұл менің пошталық индексім, ол сіз ойлағандай жұмыс істемейтінін байқадым.

және жоғарыда түсіндірілген сызық қала атауымен жақсы жұмыс істейді. Бұл сіз қолданғыңыз келетін шығар. Сондықтан пошталық индекс жолына (#) түсініктеме беріңіз және пікір қалдырмаңыз және қала атауын өзгертіңіз.

*********** YAHOO ЕСКЕРТУ МӘЛІМЕТІ - Енді қажет емес ***********

Бұл жұмыс істеу үшін бізге тағы бір кітапхана орнату керек, ауа райы-api, бұл Yahoo ауа райы API-ге арналған қаптама.

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

Орнату оңай -

pip ауа райы-api орнатыңыз

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

Енді біз сценарийді іске қоса аламыз:

sudo python getWeather.py &

& Сценарийін фонда іске қосуға мүмкіндік береді. Сценарий шамамен 5 минут ұйықтайды, содан кейін Yahoo Weather бірдеңе өзгергенін тексереді, егер ол өзгерсе, ол дисплейді жаңартады. 5 минуттық уақытты өзгертуге болады, бұл сценарийдің төменгі жағында.

ұйықтау (60 * 5)

Сіз әр жүктеуде сценарийді бастайтын crontab тапсырмасын орната аласыз (есіңізде болсын, бұл түбір ретінде іске қосылуы керек).

қолдану:

sudo crontab -e

енгізу:

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

Менің ойымша, бұл жұмыс істеуі керек - мен әлі жүйеде cron орнатпадым.

Бұл шамамен -

Мен айтқанымдай, бұл менің бірінші питон бағдарламаларымның бірі, және мен білетін адам мұны істеудің жақсы әдісін көретініне сенімдімін.

Мен бұған тек шектеулі сынақтан өттім - осы уақытқа дейін «Қар» «Жаңбыр» мен «Найзағай» жұмысын көрдім, Мен әлі қалай әрекет ету керектігін білмейтін кейбір жағдайлар бар - мен идеяларды құптаймын.

4 -қадам: Жаңартылған ақпарат: Openweathermap API

2020 жылдың қыркүйегінде мен https://openweathermap.org API пайдалану үшін сценарийді жаңарттым.

ЕСКЕРТПЕ: Бұл мен үшін «тез» түзету болды және шектеулі сынақтан өтті ((соңғы күндері бұлтты болды, мен бұлт пен жаңбырдың көрінісін ғана көремін) - Менің ойымша, мен барлық шарттарды ұстадым. Дисплей, бұл түзетудің қаншалықты тез орындалғанына байланысты мен жұпты жіберіп алдым. Айтпақшы, егер сізде проблема бар деп ойласаңыз, түсініктеме қалдырыңыз және уақытты қарастыруға рұқсат етіңіз - немесе сізді дұрыс бағытта көрсетуге тырысыңыз. *

Сізге жоғарыдағы сілтемені қолдану арқылы API кілтін тіркеу қажет болады, сіз қалаңызды орналастыру үшін сценарийді өңдеген кезде кілтке орын көресіз. Тек көшіріп, қойыңыз, сонда сіз жақсы болуыңыз керек.

Басқа ескертулер:

Бұл сценарий осы API туралы «Ағымдағы ауа райы деректері API» ақпаратын қолданады, мына жерден табуға болады:

openweathermap.org/current Айта кететін бір жайт, сіз қаланы, штат пен елді пайдалана аласыз.

IE: «Дейтон» қаласы «Дейтон, Огайо, АҚШ» болып қалады, бұл штат пен елдің кодтары қалай бас әріппен жазылатынын байқайды, бұл қажет. API тек «Dayton, OH» қолдануға болатынын айтады, бірақ мен мұны жасаған кезде сценарийден қателер алдым - және бұл тез түзету болғандықтан, мен неге екенін қарастырған жоқпын. Сонымен, мен «қала, штат, ел» қолдануды ұсынамын

Егер қандай да бір себептермен сіз қала атауын пайдаланып жақсы ақпарат алмасаңыз, сіз қала идентификаторын іздей аласыз немесе ендік пен бойлықты немесе пошталық индексті пайдалана аласыз. Әр жағдайда URL -мекен -жайын өзгерту қажет болады, егер сіз API веб -сайтының оң жағындағы сілтемені бассаңыз, ол URL мекен -жайы қандай болу керектігін көрсетеді.

Сценарийдегі URL мекенжайын да өзгерту қажет.

Тағы ескертулер: 3 қазан 2020 ж

@Itsmedoofer олар кітапхананың python-сұраныстарын жаңа жаңартумен бірге орнату керектігін көрсетті. Маған бұл қажет екеніне сенімді емеспін (мен оны бірнеше жыл бұрын орнатқан болармын немесе python -ның әр түрлі нұсқалары әдепкі бойынша әр түрлі кітапханаларды орнатады). Егер сценарий python-сұраулар туралы қате берсе, оны түзету оңай.

бұл пәрменді CLI -ге енгізіңіз: python -m pip орнату сұраныстары

және сен жақсы болуың керек.

Бұл тез түзету болды деп үміттенемін, мүмкін бір күні мен оны тазартуға жұмыс жасай аламын.

Жаңарту (6 қазан, 2020 ж.) Github тарту сұранысы қабылданды, түпнұсқа CyntechUK репозиторийі енді осы сценарийді қамтиды. https://github.com/CyntechUK/WeatherHAT Boeerb пайдаланушысында қазіргі уақытта көрсетілмеген кейбір шарттарды қалай көрсету керектігі туралы кейбір идеялар бар, сонымен қатар қолдануға арналған басқа да идеялар бар. Сондықтан репозиторийді қадағалаңыз. Және нәрселер болады деп үміттенемін.

Жаңарту: (8 қазан, 2020 ж.) Ашық ауа райы картасында API орнату мен қолдану бойынша қысқа нұсқаулық бар, https://openweathermap.org/appid Бастау үшін жақсы орын.

Ұсынылған: