תוכן עניינים:

שעון תחנת מזג האוויר ESP8266: 4 שלבים
שעון תחנת מזג האוויר ESP8266: 4 שלבים

וִידֵאוֹ: שעון תחנת מזג האוויר ESP8266: 4 שלבים

וִידֵאוֹ: שעון תחנת מזג האוויר ESP8266: 4 שלבים
וִידֵאוֹ: Метеостанция 2024, נוֹבֶמבֶּר
Anonim
שעון תחנת מזג אוויר ESP8266
שעון תחנת מזג אוויר ESP8266

פרויקט זה הוא דרך טובה להציג את הזמן ואת מזג האוויר באריזה קטנה ונוחה. אסביר את הפרויקט, כיצד הוא עובד ואציג כאן את הקוד.

אתה יכול ללחוץ על כפתורים שונים כדי להציג את מזג האוויר הנוכחי במיקום מוגדר, כמו גם טמפרטורה ולחץ. תצוגת ברירת המחדל היא הזמן שנמשך משרת NTP.

אין צורך להגדיר את השעה שכן הזמן מסונכרן משרת ה- NTP והוא מדויק מאוד. בתצורה זו יש לי את הזמן וכתובת ה- IP המקומית. אתה יכול לשנות את הקוד כך שיכלול תאריך, מזג אוויר, לחץ וטמפרטורה להצגה במסך הראשי או בכפתורים.

שלב 1: סכמטי

הסכימטי
הסכימטי
הסכימטי
הסכימטי

הסכימה יחסית פשוטה וקלה

לעקוב אחר. יש קובץ גרבר אם אתה רוצה לסובב PCB משלך. המעגל כולו מונע על ידי 5V המגיע מחיבור מיקרו USB. זה הופך את המעגל לפשוט וקל להפעלה. ה- 5V מוזרם למווסת 3.3V נמוך נשירה LM 3940 שנותן 3.3V ל- ESP8266. עם זאת, יש מחבר USB ב- ESP8266, אך בחרתי לא להשתמש בו באופן כללי מכיוון שגם ה- 5V מניע את ה- LCD.

יש להשתמש ב- 3.3V עם ESP8266, אינך יכול להניע אותו ישירות עם 5V מכיוון שהוא יהרוג את הלוח.

שני מתגי המישוש מחוברים ל- D5 ו- D6 ומוגדרים בקוד להעלות מידע שונה על המסך. יש לי את זה מוגדר לטמפרטורה/לחץ ותחזית.

כל הרכיבים מולחמים בקלות על גבי לוח לוח או שהגרבר זמין ב- GitHub שלי בכתובת

שלב 2: הקוד

github.com/allenelectronics/esp8266weatherstation

הקוד מורכב ב- Arduino IDE וצריך קצת תצורה כדי לעבוד

ראשית, עליך להתקין את לוח ESP8266 ל- IDE על מנת להעלות אליו קוד.

הוראות מקיפות כיצד לעשות זאת נמצאות כאן:

כדי לקבל את הפונקציונליות של מזג האוויר, בחרתי להשתמש ב- RemoteMe שאוסף את נתוני מזג האוויר ישירות מ- API ויוצר קוד שניתן להכניס אותו לקוד שלך. יהיה עליך להירשם ולהגדיר את זרם הנתונים באתר שלהם:

תיעוד אודות RemoteMe ניתן למצוא כאן:

יש כמה הגדרות ספציפיות הייחודיות להתקנה שלך, שתצטרך להשלים לפני ההעלאה:

#define WIFI_NAME "SSID GOES HERE"

#define WIFI_PASSWORD "סיסמה מגיעה לכאן"

#הגדר DEVICE_ID 1

#define DEVICE_NAME "השג מתוך REMOTEME. ORG"

#define TOKEN "השג מתוך REMOTEME. ORG"

את ההגדרות כאן צריך להגדיר על ידך על סמך פרטי ה- wifi שלך והאסימון שאתה מקבל מ- RemoteMe.

עליך לוודא שכל הספריות האלה מותקנות וכלולות בקוד. צירפתי קישורים לאלה שקשה יותר להשיג.

#כלול //https://github.com/remoteme/RemoteMeArduinoLibrary

#לִכלוֹל

#לִכלוֹל

#לִכלוֹל

#לִכלוֹל

החלק האחרון שצריך לשנות הוא המיקום שלך מכיוון שפרויקט זה אינו משתמש ב- GPS. עליך לשנות את מחרוזת "LOCATION":

אחרת אם (buttonState2 == LOW && prevButtonState2 == HIGH) {

Serial.print ("LOCATION / n");

Serial.println (fc);

lcd.clear ();

lcd.print ("LOCATION");

lcd.setCursor (0, 1);

lcd.print (fc);

lcd.setCursor (0, 0);

עיכוב (5000);

prevButtonState2 = buttonState2;

שלב 3: הבנייה

המבנה
המבנה
המבנה
המבנה

המבנה

באותה תקופה לא הייתה לי גישה למדפסת תלת מימד, זה היה הפרויקט האחרון שלי באמצעות מארז מדף. השתמשתי במארז לוח אזעקה זמין המיועד ל- 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 עם תאורה אחורית ברורה.

זה לא מיועד למתחילים, שכן יש תצורה מסוימת לקוד הנדרש ויש להגדיר גם זרמי נתונים. אם יש לך שאלות או הערות, אנא אל תהסס להשאיר לי הערה.

מוּמלָץ: