جدول المحتويات:
- الخطوة 1: تعرف على أجهزة الاستشعار الخاصة بك
- الخطوة 2: الاتصال
- الخطوة 3: إعداد Blynk
- الخطوة 4: الكود
فيديو: محطة الطقس DIY باستخدام DHT11 ، BMP180 ، Nodemcu مع Arduino IDE عبر خادم Blynk: 4 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:39
جيثب: DIY_Weather_Station
Hackster.io: محطة الطقس
هل رأيت تطبيق الطقس أليس كذلك؟ على سبيل المثال ، عندما تفتحه ، ستتعرف على ظروف الطقس مثل درجة الحرارة والرطوبة وما إلى ذلك. هذه القراءات هي القيمة المتوسطة لمنطقة كبيرة ، لذلك إذا كنت تريد معرفة المعلمات الدقيقة المتعلقة بغرفتك ، فلا يمكنك فقط الاعتماد على تطبيق الطقس. لهذا الغرض ، ننتقل إلى إنشاء محطة طقس فعالة من حيث التكلفة وموثوقة أيضًا وتعطينا القيمة الدقيقة.
محطة الطقس هي منشأة مزودة بأدوات ومعدات لقياس الظروف الجوية لتوفير معلومات للتنبؤات الجوية ودراسة الطقس والمناخ. يتطلب القليل من الجهد للتوصيل والتشفير. لذلك دعونا نبدأ.
حول Nodemcu:
NodeMCU هي منصة إنترنت الأشياء مفتوحة المصدر.
يتضمن البرنامج الثابت الذي يعمل على ESP8266 Wi-Fi SoC من أنظمة Espressif ، والأجهزة التي تعتمد على وحدة ESP-12.
يشير المصطلح "NodeMCU" افتراضيًا إلى البرامج الثابتة بدلاً من مجموعات المطورين. يستخدم البرنامج الثابت لغة البرمجة النصية Lua. يعتمد على مشروع eLua ، وهو مبني على Espressif Non-OS SDK لـ ESP8266. يستخدم العديد من المشاريع مفتوحة المصدر ، مثل lua-cjson و spiffs.
متطلبات أجهزة الاستشعار والبرامج:
1. Nodemcu (esp8266-12e v1.0)
2. DHT11
3. BMP180
4. اردوينو IDE
الخطوة 1: تعرف على أجهزة الاستشعار الخاصة بك
BMP180:
وصف:
يتكون BMP180 من مستشعر مقاوم للضغط ، ومحول تناظري رقمي ووحدة تحكم مع E2PROM وواجهة I2C تسلسلية. يوفر BMP180 القيمة غير المعوضة للضغط ودرجة الحرارة. قام E2PROM بتخزين 176 بت من بيانات المعايرة الفردية. يستخدم هذا لتعويض الإزاحة والاعتماد على درجة الحرارة والمعلمات الأخرى لجهاز الاستشعار.
- UP = بيانات الضغط (من 16 إلى 19 بت)
- UT = بيانات درجة الحرارة (16 بت)
المواصفات التقنية:
- Vin: من 3 إلى 5VDC
- المنطق: متوافق من 3 إلى 5 فولت
- نطاق استشعار الضغط: 300-1100 hPa (9000m إلى -500m فوق مستوى سطح البحر)
- دقة تصل إلى 0.03hPa / 0.25m-40 إلى + 85 ° C نطاق تشغيلي ، + -2 ° C دقة درجة الحرارة
- تستخدم هذه اللوحة / الشريحة عنوان I2C 7 بت 0x77.
دهت 11:
وصف:
- DHT11 هو مستشعر رقمي لدرجة الحرارة والرطوبة أساسي ومنخفض التكلفة للغاية.
- يستخدم مستشعر رطوبة بالسعة وثرمستور لقياس الهواء المحيط ، ويبث إشارة رقمية على دبوس البيانات (لا حاجة إلى دبابيس إدخال تمثيلية). إنه سهل الاستخدام إلى حد ما ، ولكنه يتطلب توقيتًا دقيقًا للحصول على البيانات.
- الجانب السلبي الحقيقي الوحيد لهذا المستشعر هو أنه يمكنك فقط الحصول على بيانات جديدة منه مرة واحدة كل ثانيتين ، لذلك عند استخدام مكتبتنا ، يمكن أن تصل قراءات المستشعر إلى ثانيتين.
المواصفات التقنية:
- من 3 إلى 5 فولت و I / O
- جيد لقراءات درجة حرارة 0-50 درجة مئوية دقة ± 2 درجة مئوية
- جيد لقراءات الرطوبة 20-80٪ بدقة 5٪
- 2.5 مللي أمبير بحد أقصى للاستخدام الحالي أثناء التحويل (أثناء طلب البيانات)
الخطوة 2: الاتصال
DHT11 مع Nodemcu:
دبوس 1 - 3.3 فولت
دبوس 2 - D4
دبوس 3 - NC
دبوس 4 - Gnd
BMP180 مع Nodemcu:
فين - 3.3 فولت
Gnd - Gnd
SCL - D6
SDA - D7
الخطوة 3: إعداد Blynk
ما هو بلينك؟
Blynk عبارة عن نظام أساسي به تطبيقات iOS و Android للتحكم في Arduino و Raspberry Pi وما شابه ذلك عبر الإنترنت.
إنها لوحة معلومات رقمية حيث يمكنك إنشاء واجهة رسومية لمشروعك ببساطة عن طريق سحب وإسقاط الحاجيات. من السهل حقًا إعداد كل شيء وستبدأ في الترقيع في أقل من 5 دقائق. Blynk غير مرتبط بلوحة أو درع معين. بدلاً من ذلك ، فهو يدعم الأجهزة التي تختارها. سواء كان Arduino أو Raspberry Pi الخاص بك متصلاً بالإنترنت عبر Wi-Fi أو Ethernet أو شريحة ESP8266 الجديدة ، فإن Blynk سيوفر لك اتصالاً بالإنترنت وجاهزًا لإنترنت الأشياء الخاصة بك.
لمزيد من المعلومات في إعداد Blynk: إعداد Blynk التفصيلي
الخطوة 4: الكود
// التعليقات لكل سطر موجودة في ملف.ino أدناه
# تضمين # تعريف 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] ؛ منطقية bmp085_present = صحيح ؛ char auth = "ضع مفتاح المصادقة الخاص بك من تطبيق Blynk هنا" ؛ char ssid = "WiFi SSID الخاص بك" ؛ char pass = "كلمة مرورك" ؛ #define DHTPIN 2 #define DHTTYPE DHT11 DHT dht (DHTPIN ، DHTTYPE) ؛ // تحديد دبوس و dhttype توقيت BlynkTimer ؛ sendSensor () باطل {if (! bmp.begin ()) {Serial.println ("تعذر العثور على مستشعر BMP085 صالح ، تحقق من الأسلاك!") ؛ while (1) {}} float h = dht.readHumidity () ؛ تعويم t = dht.readTemperature () ، if (isnan (h) || isnan (t)) {Serial.println ("Failed to read from DHT sensor!")؛ إرجاع؛ } جاما مزدوجة = السجل (ح / 100) + ((17.62 * طن) / (243.5 + ر)) ؛ مزدوج dp = 243.5 * جاما / (17.62-جاما) ؛ تعويم bp = bmp.readPressure () / 100 ؛ تعويم ba = bmp.readAltitude () ، تعويم bt = bmp.readTemperature () ، تعويم dst = bmp.readSealevelPressure () / 100 ؛ Blynk.virtualWrite (V5 ، ح) ؛ Blynk.virtualWrite (V6، t) ؛ Blynk.virtualWrite (V10 ، BP) ؛ Blynk.virtualWrite (V11 ، ba) ؛ Blynk.virtualWrite (V12 ، BT) ؛ Blynk.virtualWrite (V13 ، dst) ؛ Blynk.virtualWrite (V14 ، موانئ دبي) ؛ } إعداد باطل () {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 () ، }
موصى به:
محطة الطقس NaTaLia: محطة أردينو تعمل بالطاقة الشمسية نفذت بالطريقة الصحيحة: 8 خطوات (بالصور)
محطة الطقس NaTaLia: محطة الطقس Arduino التي تعمل بالطاقة الشمسية نفذت بالطريقة الصحيحة: بعد عام واحد من التشغيل الناجح في موقعين مختلفين ، أشارك خطط مشروع محطة الطقس التي تعمل بالطاقة الشمسية وأشرح كيف تطورت إلى نظام يمكنه حقًا البقاء على قيد الحياة لفترة طويلة فترات من الطاقة الشمسية. إذا تابعت
محطة الطقس الذكية (باستخدام Arduino): 5 خطوات
محطة الطقس الذكية (باستخدام Arduino): محطة الطقس هي مرفق ، سواء على الأرض أو البحر ، مع أدوات ومعدات لقياس الظروف الجوية لتوفير معلومات للتنبؤات الجوية ودراسة الطقس والمناخ. تشمل القياسات المأخوذة درجة الحرارة
ESP8266 دروس NODEMCU BLYNK IOT - Esp8266 IOT باستخدام Blunk و Arduino IDE - التحكم في المصابيح عبر الإنترنت: 6 خطوات
ESP8266 دروس NODEMCU BLYNK IOT | Esp8266 IOT باستخدام Blunk و Arduino IDE | التحكم في مصابيح LED عبر الإنترنت: مرحبًا يا رفاق في هذه التعليمات ، سوف نتعلم كيفية استخدام IOT مع ESP8266 أو Nodemcu. سنستخدم تطبيق blynk لذلك ، لذلك سوف نستخدم esp8266 / nodemcu للتحكم في مصابيح LED عبر الإنترنت ، لذلك سيتم توصيل تطبيق Blynk بـ esp8266 أو Nodemcu
مؤشر LED يتم التحكم فيه عبر الإنترنت باستخدام خادم الويب المستند إلى ESP32: 10 خطوات
LED يتم التحكم فيه عبر الإنترنت باستخدام خادم الويب المستند إلى ESP32: نظرة عامة على المشروع في هذا المثال ، سنكتشف كيفية إنشاء خادم ويب يستند إلى ESP32 للتحكم في حالة LED ، والتي يمكن الوصول إليها من أي مكان في العالم. ستحتاج إلى كمبيوتر Mac لهذا المشروع ، ولكن يمكنك تشغيل هذا البرنامج حتى على i
محطة الطقس IoT باستخدام تطبيق Blynk: 5 خطوات
IoT Weather Station باستخدام تطبيق Blynk: هذا المشروع مرتبط بالخطوات الأولية في عالم إنترنت الأشياء ، هنا سنقوم بواجهة مستشعر DHT11 / DHT22 مع NodeMCU أو لوحة أخرى قائمة على ESP8266 ونتلقى البيانات على الإنترنت سنستخدم تطبيق Blynk ، استخدم البرنامج التعليمي التالي الارتباط إذا كنت