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

תחנת מזג אוויר DIY באמצעות DHT11, BMP180, Nodemcu עם Arduino IDE מעל שרת Blynk: 4 שלבים
תחנת מזג אוויר DIY באמצעות DHT11, BMP180, Nodemcu עם Arduino IDE מעל שרת Blynk: 4 שלבים

וִידֵאוֹ: תחנת מזג אוויר DIY באמצעות DHT11, BMP180, Nodemcu עם Arduino IDE מעל שרת Blynk: 4 שלבים

וִידֵאוֹ: תחנת מזג אוויר DIY באמצעות DHT11, BMP180, Nodemcu עם Arduino IDE מעל שרת Blynk: 4 שלבים
וִידֵאוֹ: Arduino Nano, BME280 и SSD1306 OLED-метеостанция 2024, יולי
Anonim
תחנת מזג אוויר DIY באמצעות DHT11, BMP180, Nodemcu עם Arduino IDE מעל שרת Blynk
תחנת מזג אוויר DIY באמצעות DHT11, BMP180, Nodemcu עם Arduino IDE מעל שרת Blynk
תחנת מזג אוויר DIY באמצעות DHT11, BMP180, Nodemcu עם Arduino IDE מעל שרת Blynk
תחנת מזג אוויר DIY באמצעות DHT11, BMP180, Nodemcu עם Arduino IDE מעל שרת Blynk
תחנת מזג אוויר DIY באמצעות DHT11, BMP180, Nodemcu עם Arduino IDE על שרת Blynk
תחנת מזג אוויר DIY באמצעות DHT11, BMP180, Nodemcu עם Arduino IDE על שרת Blynk
תחנת מזג אוויר DIY באמצעות DHT11, BMP180, Nodemcu עם Arduino IDE מעל שרת Blynk
תחנת מזג אוויר DIY באמצעות DHT11, BMP180, Nodemcu עם Arduino IDE מעל שרת Blynk

Github: DIY_Weather_Station

Hackster.io: תחנת מזג האוויר

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

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

אודות Nodemcu:

NodeMCU היא פלטפורמת IoT בקוד פתוח.

הוא כולל קושחה הפועלת ב- ESP8266 Wi-Fi SoC מ- Espressif Systems וחומרה המבוססת על מודול ESP-12.

המונח "NodeMCU" כברירת מחדל מתייחס לקושחה ולא לערכות ה- dev. הקושחה משתמשת בשפת הסקריפטים Lua. הוא מבוסס על פרויקט eLua, ונבנה על ה- Espressif Non-OS SDK עבור ESP8266. הוא משתמש בפרויקטים רבים של קוד פתוח, כגון lua-cjson ו- spiffs.

חיישנים ודרישת תוכנה:

1. Nodemcu (esp8266-12e v1.0)

2. DHT11

3. BMP180

4. Arduino IDE

שלב 1: הכירו את החיישנים שלכם

הכירו את החיישנים שלכם
הכירו את החיישנים שלכם

BMP180:

תיאור:

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

  • UP = נתוני לחץ (16 עד 19 סיביות)
  • UT = נתוני טמפרטורה (16 סיביות)

מפרט טכני:

  • וין: 3 עד 5VDC
  • היגיון: תואם 3 עד 5V
  • טווח לחישת לחץ: 300-1100 hPa (9000 מ 'עד -500 מ' מעל פני הים)
  • עד רזולוציה של עד 0.03hPa / 0.25m -40 עד +85 ° C, דיוק טמפרטורה של -2 ° C
  • לוח/שבב זה משתמש בכתובת 7-bit I2C 0x77.

DHT11:

תיאור:

  • DHT11 הוא חיישן טמפרטורה ולחות דיגיטלי בסיסי, בעלות נמוכה במיוחד.
  • הוא משתמש בחיישן לחות קיבולית ותרמיסטור למדידת האוויר שמסביב, ויורק אות דיגיטלי על סיכת הנתונים (אין צורך בסיכות קלט אנלוגיות). זה פשוט למדי לשימוש, אך דורש תזמון זהיר לאסוף נתונים.
  • החיסרון האמיתי היחיד של חיישן זה הוא שאתה יכול לקבל ממנו נתונים חדשים רק אחת לשתי שניות, כך שבשימוש בספרייה שלנו, קריאות החיישנים יכולות להיות עד 2 שניות.

מפרט טכני:

  • הספק של 3 עד 5V וקלט/פלט
  • טוב לקריאות טמפרטורה 0-50 ° C ± 2 ° C דיוק
  • טוב לקריאות לחות של 20-80% עם דיוק של 5%
  • שימוש מקסימלי של 2.5 mA במהלך ההמרה (בעת בקשת נתונים)

שלב 2: קישוריות

קישוריות
קישוריות

DHT11 עם Nodemcu:

סיכה 1 - 3.3V

סיכה 2 - D4

סיכה 3 - NC

סיכה 4 - Gnd

BMP180 עם Nodemcu:

וין - 3.3V

Gnd - Gnd

SCL - D6

SDA - D7

שלב 3: הגדר Blynk

Image
Image
הגדר Blynk
הגדר Blynk

מהו בלינק?

Blynk היא פלטפורמה עם יישומי iOS ואנדרואיד לשליטה בארדואינו, פטל פיי ודומיו דרך האינטרנט.

זהו לוח מחוונים דיגיטלי שבו תוכל לבנות ממשק גרפי לפרויקט שלך על ידי גרירה ושחרור של ווידג'טים. זה ממש פשוט להגדיר הכל ותתחיל להתעסק תוך פחות מחמש דקות. בלינק אינו קשור ללוח או מגן ספציפי כלשהו. במקום זאת, הוא תומך בחומרה לבחירתך. בין אם ה- Arduino או ה- Raspberry Pi שלך מקושרים לאינטרנט באמצעות Wi-Fi, Ethernet או שבב ESP8266 החדש הזה, Blynk יביא אותך לאינטרנט ומוכן לאינטרנט של הדברים שלך.

למידע נוסף בהגדרת Blynk: הגדרת Blynk מפורטת

שלב 4: קוד

קוד
קוד

// הערות לכל שורה מובאות בקובץ ה-.ino להלן

#include #define BLYNK_PRINT סידורי #כלול #כלול #כלול #כלול #כלול Adafruit_BMP085 bmp; #define I2C_SCL 12 #define I2C_SDA 13 float dst, bt, bp, ba; char dstmp [20], btmp [20], bprs [20], balt [20]; bool bmp085_present = true; char auth = "שים כאן את מפתח האימות שלך מאפליקציית Blynk"; char ssid = "SSID ה- WiFi שלך"; char pass = "הסיסמה שלך"; #define DHTPIN 2 #define DHTTYPE DHT11 DHT dht (DHTPIN, DHTTYPE); // הגדרת הסיכה והטיימר dhttype BlynkTimer; void sendSensor () {if (! bmp.begin ()) {Serial.println ("לא הצלחנו למצוא חיישן BMP085 חוקי, בדוק את החיווט!"); בעוד (1) {}} float h = dht.readHumidity (); float t = dht.readTemperature (); if (isnan (h) || isnan (t)) {Serial.println ("קריאה נכשלה מחיישן DHT!"); לַחֲזוֹר; } גמא כפולה = log (h / 100) + ((17.62*t) / (243.5 + t)); DP כפול = 243.5*גמא / (17.62 גאמה); float bp = bmp.readPressure ()/100; float ba = bmp.readAltitude (); float bt = bmp.readTemperature (); float dst = bmp.readSealevelPressure ()/100; Blynk.virtualWrite (V5, h); Blynk.virtualWrite (V6, t); Blynk.virtualWrite (V10, bp); Blynk.virtualWrite (V11, ba); Blynk.virtualWrite (V12, bt); Blynk.virtualWrite (V13, dst); Blynk.virtualWrite (V14, dp); } הגדרת void () {Serial.begin (9600); Blynk.begin (auth, ssid, pass); dht.begin (); Wire.begin (I2C_SDA, I2C_SCL); עיכוב (10); timer.setInterval (1000L, sendSensor); } לולאת חלל () {Blynk.run (); timer.run (); }

מוּמלָץ: