فهرست مطالب:

نمایش ساده آب و هوا با استفاده از Raspberry PI و Cyntech WeatherHAT: 4 مرحله
نمایش ساده آب و هوا با استفاده از Raspberry PI و Cyntech WeatherHAT: 4 مرحله

تصویری: نمایش ساده آب و هوا با استفاده از Raspberry PI و Cyntech WeatherHAT: 4 مرحله

تصویری: نمایش ساده آب و هوا با استفاده از Raspberry PI و Cyntech WeatherHAT: 4 مرحله
تصویری: Штукатурка стен - самое полное видео! Переделка хрущевки от А до Я. #5 2024, نوامبر
Anonim
نمایش ساده آب و هوا با استفاده از Raspberry PI و Cyntech WeatherHAT
نمایش ساده آب و هوا با استفاده از Raspberry PI و Cyntech WeatherHAT
نمایش ساده آب و هوا با استفاده از Raspberry PI و Cyntech WeatherHAT
نمایش ساده آب و هوا با استفاده از Raspberry PI و Cyntech WeatherHAT

* در سال 2019 یاهو API خود را تغییر داد و این کار متوقف شد. من از تغییر بی اطلاع بودم. در سپتامبر 2020 ، این پروژه برای استفاده از API OPENWEATHERMAP به روز شده است ، بخش به روز شده زیر را مشاهده کنید ، اما بقیه این اطلاعات هنوز خوب است. از نگاه شما سپاسگزارم و از اینکه در مورد تغییر یاهو به من اطلاع دادید متشکرم. *

اخیراً Cyntech WeatherHAT را خریدم ، اما از نبود نرم افزار برای آن کمی ناامید شدم.

به نظر می رسد HAT خودش به خوبی ساخته شده است ، با 6 LED آبی به شکل قطرات باران ، 6 LED نارنجی به شکل پیچ و تندر ، 6 LED سفید به شکل ابر. 1 (چیزی که من معتقدم RGB LED است) برای SUN - نارنجی نشان می دهد (بنابراین ممکن است در مورد RGB بودن آن اشتباه کنم). و 6 LED WS2812 (اینها RGB هستند:-))

Cyntech یک راهنمای شروع دارد و حتی این خوب است - نصب و استفاده از HAT آسان است.

بنابراین من فقط از دیدن هیچ نرم افزاری (غیر از نسخه ی نمایشی ارائه شده توسط Cyntech) تعجب کردم. من به همان اندازه شگفت زده شدم که هیچکس واقعاً از این دستگاه استفاده نمی کند - شاید مردم یک صفحه نمایش "فانتزی" با درجه حرارت و همه این نوع اطلاعات می خواهند. برای من خوب است که فقط به چند LED نگاه کنم و بدانم - باران می بارد ، یا رعد و برق ، یا ابری - در آن زمان اگر به اطلاعات بیشتری نیاز داشته باشم ، می توانم به رایانه لوحی یا تلفن خود نگاه کنم.:-)

کمی بیشتر - این برای اولین بار است که از پایتون استفاده می کنم ، به هیچ وجه در این کار خوب نیستم. و من مطمئن هستم که افرادی که واقعا پایتون را می شناسند روش بهتری برای انجام این کار به من خواهند گفت.

بیایید شروع کنیم:

ما به کارت SD (حداقل 8 گیگابایت) نیاز داریم

Raspberry PI (من از Zero W استفاده می کنم) باید به اینترنت دسترسی داشته باشد.

و ما به Cyntech weatherHAT نیاز داریم

اگر از Raspberry PI Zero W استفاده می کنید ، باید بتوانید مجموعه ای از سرصفحه ها را به صفحه بچسبانید.

در غیر این صورت مهارت های مورد نیاز توانایی استفاده از نرم افزار و راه اندازی کارت SD است.

مرحله 1: کارت SD و Raspberry PI را تنظیم کنید

کارت SD و Raspberry PI را تنظیم کنید
کارت SD و Raspberry PI را تنظیم کنید
کارت SD و Raspberry PI را تنظیم کنید
کارت SD و Raspberry PI را تنظیم کنید

شما باید جدیدترین Raspbian را بارگیری کنید (در زمان این آموزش که Raspbian Stretch مارس 2018 است (2013-03-13))

www.raspberrypi.org/downloads/raspbian/

من از نسخه دسکتاپ استفاده کردم ، حتی اگر من تنظیمات خود را بدون سر اجرا می کنم و اکثر کارها را از طریق CLI (رابط خط فرمان) روی ssh انجام می دهم.

راهنمای راه اندازی موجود در اینجا را دنبال کنید:

www.raspberrypi.org/documentation/installa…

پس از اتمام Etcher ، کارت SD را بردارید و دوباره آن را در رایانه وارد کنید.

* در صورتی که قصد نصب بدون سر را دارید ، واقعاً فقط باید این مرحله را انجام دهید

قبل از استفاده از کارت SD در Raspberry PI ، باید SSH و WIFI را تنظیم کنیم. در پارتیشن BOOT کارت ، فایلی با نام "ssh" بدون نقل قول ایجاد کنید. هیچ چیزی نباید در آن فایل باشد وقتی PI بوت می شود ، آن فایل را می بیند و SSH را روشن می کند.

همچنین باید فایلی با نام "wpa_supplicant.conf" ایجاد کنیم. ما باید این فایل را با تنظیمات wifi شما ویرایش کنیم.

باید چیزی شبیه به این باشد:

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

update_config = 1 network = {ssid = "yourwifiSSID" psk = "yourwifipassword" 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 update

sudo apt-get upgrade -y sudo apt-get install build-based 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

اکنون باید مطمئن شویم که I2C روشن است.

sudo raspi-config

این راهنما برای نسخه قدیمی raspi-config نوشته شده است و می گوید به goto "Advanced Options" بروید که به نظر من "Interfaces" جایگزین شده است.

هنگامی که I2C را روشن می کنید ، باید راه اندازی مجدد کنید.

اکنون زمان آزمایش HAT است

cd WeatherHAT

sudo python cycle.py

اگر همه چیز خوب پیش رفت ، باید همه ویژگی ها و رنگین کمان را ببینید.

ctrl-z برنامه را متوقف می کند.

*نکات ویژه: متوجه شدم که زمان رزبری PI 3 متفاوت است و رنگین کمان ممکن است به درستی کار نکند. اگر این مشکل را دارید در اینجا نحوه رفع آن است.

github.com/CyntechUK/WeatherHAT/issues/3

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

وقتی همه چیز کار کرد ، می توانیم به مرحله بعدی ادامه دهیم.

به روز رسانی: (6 اکتبر 2020) این مخزن در حال حاضر حاوی اسکریپت getWeather.py من است ، این خبر فوق العاده ای است ، زیرا علاقه دوباره جرقه زده است ، و اتفاقات جدیدی نیز باید رخ دهد.

مرحله 3: نصب Weather-api و GetWeather Script

نصب Weather-api و GetWeather Script
نصب Weather-api و GetWeather Script
نصب Weather-api و GetWeather Script
نصب Weather-api و GetWeather Script
نصب Weather-api و GetWeather Script
نصب Weather-api و GetWeather Script
نصب Weather-api و GetWeather Script
نصب Weather-api و GetWeather Script

بنابراین ، من یک درخواست PULL به CyntechUK برای اسکریپت خود ارسال کردم - امیدوارم آنها این درخواست را بپذیرند ، و شما می توانید از دانلود مخزن من صرف نظر کنید. (ممکن است آنها مایل نباشند کد من را وارد کنید)

(6 اکتبر 2020) درخواست PULL تأیید شد ، اسکریپت getWeather من اکنون در مخزن Weatherhat گنجانده شده است.

********* در صورت تمایل می توانید از این اطلاعات استفاده کنید ، اما getWeather.py در مخزن weatherhat گنجانده شده است ******************* ******************

مخزن من را می توانید در اینجا پیدا کنید:

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

و اسکریپت من getWeather.py نام دارد

اگر درخواست کشش را بپذیرند ، این اسکریپت را در حال حاضر دارید - در غیر این صورت ، باید مخزن را کلون کنید.

در فهرست اصلی (/home/pi) خود تایپ کنید:

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

این مخزن را در یک دایرکتوری به نام getWeather کلون می کند ، سپس باید شاخه getWeather را بررسی کنیم.

cd getWeather

git checkout getWeather

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

شما باید در فهرست weatherHAT که قبلا کلون شده بود و

ما باید اسکریپت getWeather.py را برای مکان شما ویرایش کنیم.

nano getWeather.py

شما باید خطی را ببینید که با آن شروع می شود

مکان و با جستجو خاتمه می یابد (45042) - این کد پستی من است ، متوجه شده ام که آنطور که فکر می کنید کار نمی کند

و خط بالای آن که در آن توضیح داده شده است با نام شهر بهتر کار می کند. این همان چیزی است که احتمالاً می خواهید از آن استفاده کنید. بنابراین خط کد پستی (#) را کامنت کنید و نظر ندهید و نام شهر خود را تغییر دهید.

*********** اطلاعات قدیمی YAHOO - دیگر نیازی نیست ***********

برای این کار باید یک کتابخانه دیگر نصب کنیم ، weather-api که یک بسته برای API آب و هوا یاهو است.

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

نصب آسان است -

pip install weather-api

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

اکنون می توانیم اسکریپت را اجرا کنیم:

sudo python getWeather.py &

& خواهد گذاشت که اسکریپت در پس زمینه اجرا شود. اسکریپت حدود 5 دقیقه می خوابد ، و سپس Yahoo Weather را بررسی می کند که آیا چیزی تغییر کرده است - در این صورت صفحه نمایش را به روز می کند. زمان 5 دقیقه ای قابل تغییر است ، تقریباً در انتهای فیلمنامه است.

خواب (5 * 60)

می توانید یک کار crontab تنظیم کنید (به یاد داشته باشید که باید به عنوان root اجرا شود) که اسکریپت را در هر بوت شروع می کند.

استفاده کنید:

sudo crontab -e

وارد:

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

من فکر می کنم که باید کار کند - من هنوز cron را روی سیستم خود نصب نکرده ام.

تقریباً همین است -

همانطور که گفتم این یکی از اولین برنامه های پایتون من است و مطمئنم کسی که اطلاعات بیشتری دارد راه بهتری برای انجام این کار خواهد دید.

من فقط آزمایشهای محدودی در این زمینه انجام داده ام - تا به حال کارهای "برف" ، "باران" و "رعد و برق" را دیده ام ،

شرایطی وجود دارد که هنوز مطمئن نیستم چگونه با آنها کنار بیایم - از ایده ها استقبال می کنم.

مرحله 4: اطلاعات به روز شده برای: API Openweathermap

در سپتامبر 2020 ، من اسکریپت را برای استفاده از https://openweathermap.org API به روز کردم.

توجه: این یک راه حل "سریع" برای من بود و به صورت محدود مورد آزمایش قرار گرفت - (طی چند روز گذشته ابری شده است ، و تنها چیزی که من می بینم نمایشگر ابر و باران است) - در حالی که من معتقدم تمام شرایطی را که به راحتی می توانم رعایت کنم ، رعایت کرده ام. صفحه نمایش ، این امکان وجود دارد که من یک زن و شوهر را از دست دادم زیرا این تعمیر "سریع" انجام شد. با این اوصاف ، اگر فکر می کنید مشکلی وجود دارد لطفاً نظر دهید و اجازه دهید زمان آن را بررسی کنم - یا سعی کنید شما را در مسیر درست راهنمایی کند. *

با استفاده از پیوند بالا باید برای کلید API ثبت نام کنید ، وقتی اسکریپت را برای قرار دادن شهر خود ویرایش می کنید ، محلی برای کلید مشاهده می کنید. فقط آن را کپی و جایگذاری کنید ، و باید خوب باشید.

سایر یادداشت ها:

این اسکریپت اکنون از اطلاعات "API data current weather" درباره آن API در اینجا استفاده می کند:

openweathermap.org/current نکته ای که باید به آن توجه کنید این است که می توانید از شهر ، ایالت و کشور استفاده کنید.

IE: شهر "دیتون" تبدیل می شود "دیتون ، ایالت متحده ، ایالات متحده" توجه کنید که چگونه ایالت و کد کشورها هر دو بزرگ هستند ، این مورد الزامی است. API می گوید فقط می تواند از "Dayton، OH" استفاده کند ، اما وقتی این کار را کردم ، خطایی از اسکریپت گرفتم - و از آنجا که این یک راه حل سریع بود ، دلیل آن را بررسی نکرده ام. بنابراین ، من توصیه می کنم از "شهر ، ایالت ، کشور" استفاده کنید

اگر به دلایلی با استفاده از نام شهر اطلاعات خوبی دریافت نمی کنید ، می توانید شناسه شهر را نیز جستجو کنید ، یا از عرض جغرافیایی و طول جغرافیایی یا کد پستی استفاده کنید. در هر مورد URL باید تغییر کند ، اگر روی پیوند سمت راست وب سایت API کلیک کنید ، یک مثال از اینکه URL باید چگونه باشد را نشان می دهد.

شما باید URL را در اسکریپت نیز تغییر دهید.

حتی یادداشت های بیشتر: 3 اکتبر 2020

Itsmedoofer خاطرنشان کرد که آنها نیاز به نصب کتابخانه python-درخواست ها با به روز رسانی جدید دارند. من مطمئن نیستم که من به این نیاز دارم (همچنین ممکن است سالها پیش آن را نصب کرده باشم ، یا نسخه های مختلف پایتون کتابخانه های مختلفی را به طور پیش فرض نصب کنند). بنابراین اگر اسکریپت خطایی در مورد درخواست های پایتون بدهد ، تعمیر آن ساده است.

این دستور را در درخواست های نصب CLI: python -m pip تایپ کنید

و تو باید خوب باشی

امیدوارم که از آن زمان به بعد ، این یک راه حل سریع بود ، و شاید روزی که بتوانم اجازه دهم بتوانم کمی بهتر آن را تمیز کنم.

به روز رسانی (6 اکتبر 2020) درخواست کشیدن github پذیرفته شد ، مخزن اصلی CyntechUK اکنون شامل این اسکریپت است. https://github.com/CyntechUK/WeatherHAT کاربر Boeerb ایده هایی در مورد نحوه نمایش برخی از شرایطی که در حال حاضر نمایش داده نمی شوند و همچنین ایده های دیگری برای استفاده دارد. بنابراین مراقب آن مخزن باشید. و امیدوارم اتفاقاتی در حال رخ دادن باشد.

به روز رسانی: (8 اکتبر 2020) Open Weather Map دارای یک آموزش کوتاه در مورد راه اندازی و استفاده از API است ، https://openweathermap.org/appid یک مکان خوب برای شروع.

توصیه شده: