فهرست مطالب:

ساعت ایستگاه هواشناسی ESP8266: 4 مرحله
ساعت ایستگاه هواشناسی ESP8266: 4 مرحله

تصویری: ساعت ایستگاه هواشناسی ESP8266: 4 مرحله

تصویری: ساعت ایستگاه هواشناسی ESP8266: 4 مرحله
تصویری: Weather Station with ESP8266-WiFi 2024, نوامبر
Anonim
ساعت ایستگاه هواشناسی ESP8266
ساعت ایستگاه هواشناسی ESP8266

این پروژه یک راه خوب برای نمایش زمان و آب و هوا در یک بسته کوچک مناسب است. من پروژه ، نحوه کار و کد را در اینجا توضیح خواهم داد.

می توانید دکمه های مختلف را فشار دهید تا آب و هوای فعلی در یک مکان مشخص و همچنین دما و فشار نشان داده شود. نمای پیش فرض زمانی است که از سرور NTP خارج می شود.

نیازی به تنظیم زمان نیست زیرا زمان از سرور NTP همگام سازی شده و بسیار دقیق است. در این پیکربندی من زمان و آدرس IP محلی را دارم. می توانید کد را شامل تاریخ ، آب و هوا ، فشار و دما برای نمایش در صفحه اصلی یا دکمه ها تغییر دهید.

مرحله 1: شماتیک

شماتیک
شماتیک
شماتیک
شماتیک

طرح کلی نسبتاً ساده و آسان است

دنبال کردن. اگر می خواهید PCB خود را بچرخانید ، یک فایل gerber وجود دارد. کل مدار توسط 5 ولت از اتصال micro USB هدایت می شود. این باعث می شود که مدار ساده و آسان تغذیه شود. 5 ولت به Low Dropout 3.3V Regulator LM 3940 تغذیه می شود که 3.3V به ESP8266 می دهد. در ESP8266 یک کانکتور USB وجود دارد ، اما من تصمیم گرفتم به طور کلی از آن استفاده نکنم زیرا 5 ولت نیز LCD را هدایت می کند.

3.3V باید با ESP8266 استفاده شود ، شما نمی توانید آن را مستقیماً با 5V رانندگی کنید زیرا باعث خرابی برد می شود.

دو سوئیچ لمسی به D5 و D6 متصل هستند و در کد پیکربندی شده اند تا اطلاعات مختلف را روی صفحه نمایش دهند. من اینها را روی دما/فشار و پیش بینی تنظیم کرده ام.

همه اجزا به راحتی روی تخته چوب لحیم می شوند یا ژربر در GitHub من در https://github.com/allenelectronics/esp8266weatherstation موجود است

مرحله 2: کد

github.com/allenelectronics/esp8266weatherstation

کد در Arduino IDE کامپایل شده است و برای کار نیاز به پیکربندی دارد

در مرحله اول ، برای بارگذاری کد در آن ، باید ESP8266 Board را روی IDE نصب کنید.

دستورالعمل جامع نحوه انجام این کار در اینجا آمده است:

برای به دست آوردن عملکرد آب و هوا ، من از RemoteMe استفاده کردم که داده های آب و هوا را مستقیماً از API جمع آوری می کند و کدی را ایجاد می کند که می تواند در کد شما وارد شود. شما باید ثبت نام کنید و جریان داده را در وب سایت آنها تنظیم کنید:

اسناد مربوط به RemoteMe را می توانید در اینجا پیدا کنید:

برخی از تعاریف خاص که مخصوص تنظیمات شما است ، وجود دارد که باید قبل از بارگذاری تکمیل کنید:

#تعریف WIFI_NAME "SSID به اینجا می رود"

#تعریف WIFI_PASSWORD "PASSWORD GOES HERE here"

#تعریف DEVICE_ID 1

#تعریف DEVICE_NAME "OBTAIN FROM REMOTEME. ORG"

#تعریف TOKEN "دریافت از REMOTEME. ORG"

تعاریف اینجا باید براساس جزئیات wifi شما و توکنی که از RemoteMe دریافت می کنید توسط شما تنظیم شود.

شما باید مطمئن شوید که همه این کتابخانه ها نصب شده و در کد گنجانده شده اند. من پیوندهایی را به آنهایی که دسترسی به آنها دشوارتر است اضافه کرده ام.

#شامل //https://github.com/remoteme/RemoteMeArduinoLibrary

#عبارتند از

#عبارتند از

#عبارتند از

#عبارتند از

آخرین قسمتی که باید تغییر کند مکان شماست زیرا این پروژه از GPS استفاده نمی کند. شما باید رشته "LOCATION" را تغییر دهید:

else if (buttonState2 == LOW && prevButtonState2 == HIGH) {

Serial.print ("LOCATION / n")؛

Serial.println (fc) ؛

lcd.clear ()؛

lcd.print ("LOCATION") ؛

lcd.setCursor (0 ، 1) ؛

ال سی دی چاپ (fc) ؛

lcd.setCursor (0 ، 0) ؛

تأخیر (5000) ؛

prevButtonState2 = buttonState2؛

مرحله 3: ساخت

The Build
The Build
The Build
The Build

The Build

در آن زمان من به چاپگر سه بعدی دسترسی نداشتم ، این آخرین پروژه من با استفاده از جعبه قفسه بود. من از یک قاب پنل زنگ خطر که برای LCD 16x2 طراحی شده است استفاده کردم.

پیوند: https://www.ebay.co.uk/itm/86-Plastic-project-box-enclosure-case-for-diy-LCD1602-meter-tester-with-buttGA/363214674235؟hash=item549148193b:g: IvQAAoswNXpcFFrv

همه چیز داخل کیس پر شده است ، صفحه نمایش LCD 16x2 به پنل جلویی چسبانده شده است و برد مدار به صورت گرم در محل خود چسبانده شده است.

مرحله 4: نتیجه گیری

نتیجه

این یک پروژه منظم برای ساعت دیجیتالی رومیزی است که نیازی به تنظیم یا تنظیم ندارد ، از سرور NTP زمان می برد و آن را بر روی LCD با نور پس زمینه روشن نمایش می دهد.

این برای مبتدیان کاملاً مناسب نیست ، زیرا برخی از تنظیمات کد مورد نیاز وجود دارد و جریانهای داده نیز باید تنظیم شوند. اگر س questionsال یا نظری دارید ، لطفاً برای من کامنت بگذارید.

توصیه شده: