جدول المحتويات:

ESP8266 مراقبة درجة حرارة Nodemcu باستخدام DHT11 على خادم ويب محلي - احصل على درجة حرارة الغرفة ورطوبتها على متصفحك: 6 خطوات
ESP8266 مراقبة درجة حرارة Nodemcu باستخدام DHT11 على خادم ويب محلي - احصل على درجة حرارة الغرفة ورطوبتها على متصفحك: 6 خطوات

فيديو: ESP8266 مراقبة درجة حرارة Nodemcu باستخدام DHT11 على خادم ويب محلي - احصل على درجة حرارة الغرفة ورطوبتها على متصفحك: 6 خطوات

فيديو: ESP8266 مراقبة درجة حرارة Nodemcu باستخدام DHT11 على خادم ويب محلي - احصل على درجة حرارة الغرفة ورطوبتها على متصفحك: 6 خطوات
فيديو: Arduino based GSM Mobile Phone using SIM800L | Call & SMS 2024, شهر نوفمبر
Anonim
ESP8266 مراقبة درجة حرارة Nodemcu باستخدام DHT11 على خادم ويب محلي | احصل على درجة حرارة الغرفة والرطوبة على متصفحك
ESP8266 مراقبة درجة حرارة Nodemcu باستخدام DHT11 على خادم ويب محلي | احصل على درجة حرارة الغرفة والرطوبة على متصفحك

مرحبًا يا شباب اليوم ، سنصنع نظامًا لمراقبة الرطوبة ودرجة الحرارة باستخدام مستشعر درجة الحرارة ESP 8266 NODEMCU & DHT11. سيتم الحصول على درجة الحرارة والرطوبة من مستشعر DHT11 ويمكن رؤيتها على متصفح أي صفحة ويب سيتم إدارتها بواسطة esp 8266 من خلال استضافتها على خادم ويب محلي.

الخطوة 1: الأشياء التي تحتاجها

أشياء تحتاجها
أشياء تحتاجها
أشياء تحتاجها
أشياء تحتاجها

تحتاج إلى اتباع الأشياء لهذا المشروع: 1x ESP 8266 Nodemcu:

1x DHT11: https://www.utsource.net/itm/p/8831706.html1x لوح التجارب:.:

وصلات عبور قليلة:

الخطوة 2: الدائرة

دائرة كهربائية
دائرة كهربائية

الدائرة سهلة جدًا لتوصيل كل شيء وفقًا لما هو موضح في schmatics

الخطوة 3: احصل على المكتبات

احصل على المكتبات
احصل على المكتبات
احصل على المكتبات
احصل على المكتبات

افتح Arduino IDE وانتقل إلى Sketch> Include Library> Manage Libraries. يجب أن يفتح مدير المكتبة. ابحث عن "DHT" في مربع البحث وقم بتثبيت مكتبة DHT من Adafruit. بعد تثبيت مكتبة DHT من Adafruit ، اكتب "Adafruit Unified Sensor" في مربع البحث. قم بالتمرير لأسفل للعثور على المكتبة وتثبيتها ، وبعد تثبيت المكتبات ، أعد تشغيل Arduino IDE.

الخطوة 4: الكود

الشفرة
الشفرة

بعد القيام بالأشياء المذكورة أعلاه ، قم بتحميل الكود التالي إلى ESP8266 nodemcu (يرجى تحديد المنفذ واللوحة المناسبين) وقبل تحميل الكود ، يرجى وضع ssid وكلمة المرور الخاصة بشبكة wifi في الكود: // بما في ذلك مكتبة WiFi ESP8266 # include #include "DHT. h "// Uncomment أحد الأسطر أدناه لأي نوع مستشعر DHT تستخدمه! #define DHTTYPE DHT11 // DHT 11 // # حدد DHTTYPE DHT21 // DHT 21 (AM2301) // # حدد DHTTYPE DHT22 // DHT 22 (AM2302) ، AM2321 // استبدل بتفاصيل الشبكة الخاصة بكconst char * ssid = "YOUR_NETWORK_NAME" ؛ const char * password = "YOUR_NETWORK_PASSWORD" ؛ // خادم الويب على المنفذ 80WiFiServer server (80) ؛ // DHT Sensorconst int DHTPin = 5 ؛ // تهيئة مستشعر DHT. DHT dht (DHTPin، DHTTYPE)؛ // المتغيرات المؤقتةstatic char celsiusTemp [7]؛ static char fahrenheitTemp [7]؛ static char humidityTemp [7]؛ // يعمل مرة واحدة فقط في إعداد bootvoid () { // تهيئة المنفذ التسلسلي لأغراض التصحيح Serial.begin (115200) ؛ تأخير (10) ؛ dht.begin () ، // الاتصال بشبكة WiFi Serial.println () ؛ Serial.print ("الاتصال بـ") ؛ Serial.println (ssid) ؛ WiFi.begin (SSID ، كلمة المرور) ؛ while (WiFi.status ()! = WL_CONNECTED) {delay (500) ؛ Serial.print (".") ؛ } Serial.println ("") ؛ Serial.println ("متصل بشبكة WiFi") ؛ // بدء خادم الويب server.begin () ؛ Serial.println ("خادم الويب قيد التشغيل. في انتظار ESP IP …") ؛ تأخير (10000) ؛ // طباعة عنوان IP الخاص بـ ESP Serial.println (WiFi.localIP ()) ؛} // يعمل مرارًا وتكرارًا حلقة فارغة () {// الاستماع للعملاء الجدد WiFiClient client = server.available () ؛ if (العميل) {Serial.println ("عميل جديد") ؛ // bolean لتحديد وقت انتهاء طلب http المنطقي blank_line = true ؛ while (client.connected ()) {if (client.available ()) {char c = client.read () ؛ if (c == '\ n' && blank_line) {// قد تكون قراءات المستشعر أيضًا "قديمة" حتى ثانيتين (مستشعر بطيء جدًا) تعويم h = dht.readHumidity () ؛ // قراءة درجة الحرارة على أنها مئوية (الافتراضي) float t = dht.readTemperature () ؛ // قراءة درجة الحرارة على أنها فهرنهايت (isFahrenheit = true) float f = dht.readTemperature (true) ؛ // تحقق مما إذا كانت أي قراءات فشلت والخروج مبكرًا (للمحاولة مرة أخرى). if (isnan (h) || isnan (t) || isnan (f)) {Serial.println ("Failed to read from DHT sensor!")؛ strcpy (celsiusTemp، "فشل") ؛ strcpy (فهرنهايت تيمب ، "فشل") ؛ strcpy (humidityTemp ، "فشل") ؛ } else {// حساب قيم درجة الحرارة بالدرجة المئوية + فهرنهايت ونسبة الرطوبة عائم hic = dht.computeHeatIndex (t، h، false)؛ dtostrf (hic ، 6 ، 2 ، مئوية Temp) ؛ تعويم hif = dht.computeHeatIndex (f، h) ؛ dtostrf (هيف ، 6 ، 2 ، فهرنهايت تيمب) ؛ dtostrf (ح ، 6 ، 2 ، رطوبة تيمب) ؛ // يمكنك حذف ملفات Serial.print التالية ، فهي مخصصة فقط لأغراض التصحيح Serial.print ("الرطوبة:") ؛ Serial.print (ح) ؛ Serial.print ("٪ / t درجة الحرارة:") ؛ Serial.print (t) ؛ Serial.print ("* C") ؛ Serial.print (f) ؛ Serial.print ("* F / t مؤشر الحرارة:") ؛ Serial.print (hic) ؛ Serial.print ("* C") ؛ Serial.print (hif) ؛ Serial.print ("* F") ؛ Serial.print ("الرطوبة:") ؛ Serial.print (ح) ؛ Serial.print ("٪ / t درجة الحرارة:") ؛ Serial.print (t) ؛ Serial.print ("* C") ؛ Serial.print (f) ؛ Serial.print ("* F / t مؤشر الحرارة:") ؛ Serial.print (hic) ؛ Serial.print ("* C") ؛ Serial.print (hif) ؛ Serial.println ("* F") ؛ } client.println ("HTTP / 1.1 200 OK") ؛ client.println ("نوع المحتوى: نص / html") ؛ client.println ("اتصال: إغلاق") ؛ client.println () ، // صفحة الويب الفعلية التي تعرض عميل درجة الحرارة والرطوبة

الخطوة 5: احصل على IP

احصل على IP
احصل على IP

يمكنك عرض درجة الحرارة والرطوبة التي نحتاجها للحصول على عنوان IP لصفحة الويب. لذلك تأكد من أن esp8266 متصل بجهاز الكمبيوتر الخاص بك ثم افتح الشاشة التسلسلية وعلى الشاشة التسلسلية يمكنك رؤية عنوان IP الخاص بصفحة ويب خادم الويب ESP8266.

الخطوة 6: تحقق من درجة الحرارة والرطوبة على المتصفح

تحقق من درجة الحرارة والرطوبة على المتصفح
تحقق من درجة الحرارة والرطوبة على المتصفح

لذلك بعد الحصول على عنوان IP الخاص بـ ESP8266 nodemcu ، ما عليك سوى فتح المتصفح في جهاز الكمبيوتر أو الهاتف المحمول ولكن تأكد من أن جهاز الكمبيوتر / الهاتف المحمول متصل بنفس الشبكة مثل Nodemcu / ESP8266 ثم انتقل إلى متصفحك (إذا كنت تستخدم الهاتف المحمول ، فيرجى استخدام المتصفح الافتراضي على سبيل المثال ، بالنسبة إلى Android ، استخدم chrome) ، ثم اكتب عنوان IP الذي حصلنا عليه في الخطوة السابقة وستظهر صفحة الويب المحلية مع الرطوبة ودرجة الحرارة كما هو موضح في الصورة. لذا استمتع بجهاز مراقبة درجة حرارة الغرفة والرطوبة.

موصى به: