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

واجهة مستشعر درجة الحرارة DS18B20 مع Arduino و ESP8266: 8 خطوات
واجهة مستشعر درجة الحرارة DS18B20 مع Arduino و ESP8266: 8 خطوات

فيديو: واجهة مستشعر درجة الحرارة DS18B20 مع Arduino و ESP8266: 8 خطوات

فيديو: واجهة مستشعر درجة الحرارة DS18B20 مع Arduino و ESP8266: 8 خطوات
فيديو: ESP8266 based Temperature Control System using AsyncWebServer 2024, شهر نوفمبر
Anonim
واجهة مستشعر درجة الحرارة DS18B20 مع Arduino و ESP8266
واجهة مستشعر درجة الحرارة DS18B20 مع Arduino و ESP8266

مرحبًا ، ما الأمر يا رفاق! Akarsh هنا من CETech.

سنضيف اليوم مستشعرًا جديدًا إلى ترسانتنا يُعرف باسم مستشعر درجة الحرارة DS18B20. إنه مستشعر درجة حرارة مشابه لـ DHT11 ولكن لديه مجموعة مختلفة من التطبيقات. سنقوم بمقارنتها بأنواع مختلفة من أجهزة استشعار درجة الحرارة المتاحة وسنلقي نظرة على المواصفات الفنية لهذه المستشعرات.

قرب نهاية هذا البرنامج التعليمي ، سنقوم بتوصيل DS18B20 مع Arduino و ESP8266 لعرض درجة الحرارة. في حالة Arduino ، سيتم عرض درجة الحرارة على Serial Monitor وبالنسبة لـ ESP8266 سنعرض درجة الحرارة على خادم ويب.

دعونا نبدأ بالمرح الآن.

الخطوة 1: احصل على مركبات ثنائي الفينيل متعدد الكلور لمشروعك المُصنَّع

احصل على ثنائي الفينيل متعدد الكلور لمشروعك مُصنّع
احصل على ثنائي الفينيل متعدد الكلور لمشروعك مُصنّع

يجب عليك التحقق من OurPCB للحصول على ثنائي الفينيل متعدد الكلور لمشروعك المصنعة عبر الإنترنت.

يستخدمون مكونات موثوقة تم الحصول عليها من موردين معتمدين مثل Arrow و Avnet و Future Electronics وما إلى ذلك ، ويقدمون أسعارًا معقولة تزيد في النهاية من هوامش ربح المستخدم. متخصصون في تقنية Rigid-Flex متعددة الطبقات وأولوياتهم هي الحفاظ على معايير الجودة العالية.

يركز OurPCB على الطلبات الصغيرة إلى المتوسطة الحجم ويوفر سعرًا تنافسيًا للغاية للحجم من 1-100 متر مربع. تحتاج فقط إلى تحميل ملفاتك بأي من التنسيقات المتاحة (Gerber أو.pcb أو.pcbdoc أو.cam) وسيتم تسليم نماذج PCB الأولية إلى عتبة داركم.

يمكنك أيضًا التحقق من شريكهم WellPCB للحصول على صفقات جيدة.

الخطوة الثانية: مقارنة بين أنواع مختلفة من مجسات درجة الحرارة

مقارنة بين أنواع مختلفة من مجسات درجة الحرارة
مقارنة بين أنواع مختلفة من مجسات درجة الحرارة
مقارنة بين أنواع مختلفة من مجسات درجة الحرارة
مقارنة بين أنواع مختلفة من مجسات درجة الحرارة

تحتوي المقارنة الموضحة أعلاه على ثلاثة مستشعرات DS18B20 و DHT11 و NTC Thermistor ولكن هنا سنحد من مقارنتنا بأجهزة الاستشعار الرقمية فقط. هذا لا يعني أن الثرمستور NTC ليس بنفس أهمية المستشعرات الرقمية في الواقع ، فإن تطوير المستشعرات الرقمية ممكن فقط بسبب NTC Thermistor. تتكون المستشعرات الرقمية من NTC Thermistor المتصل ببعض المعالجات الدقيقة التي تعطي في النهاية الإخراج الرقمي.

النقاط الرئيسية للمقارنة هي: -

1. DS18B20 مقاوم للماء وقوي بينما DHT11 ليس هذا هو السبب في سيناريوهات الحياة الواقعية والتطبيقات التي تتطلب الاستشعار القائم على الاتصال ، يتم استخدام DS18B20 بشكل عام بينما يتم استخدام DHT11 في تطبيقات بيئة الهواء الطلق.

2. يبصق DS18B20 بيانات من 9-12 بت من البيانات بينما يعطي DHT11 بيانات 8 بت.

3. يعطي DS18B20 درجة الحرارة فقط بينما يمكن استخدام DHT11 للحصول على درجة الحرارة وكذلك الرطوبة.

4. يغطي DS18B20 نطاق درجة حرارة أوسع مقارنة بـ DHT11 ولديه أيضًا دقة أفضل مقارنة بـ DHT (+ 0.5 درجة مقارنة بـ + 2 درجة لـ DHT11).

5. عندما يتعلق الأمر بتسعير هذه المستشعرات ، فإن هناك فرقًا بسيطًا بينهما حيث أن المتغيرين المختلفين لـ DS18B20 وهما نوع الأسلاك المعبأة وحزمة TO92 تكلفان حوالي 1 دولار و 0.4 دولار بينما تبلغ تكلفة DHT11 حوالي 0.6 دولار.

لذلك يمكننا القول أن DS18B20 أفضل إلى حد ما من DHT11 ولكن لا يمكن إجراء اختيار أفضل إلا على أساس التطبيق المطلوب من أجل المستشعر.

يمكنك الحصول على مزيد من المعرفة حول DS18B20 من خلال قراءة ورقة البيانات الخاصة به من هنا.

الخطوة 3: توصيل DS18B20 بـ Arduino

توصيل DS18B20 بالاردوينو
توصيل DS18B20 بالاردوينو
توصيل DS18B20 بالاردوينو
توصيل DS18B20 بالاردوينو

هنا سنقوم بتوصيل مستشعر درجة الحرارة DS18B20 مع Arduino من أجل الحصول على درجة الحرارة وعرضها على الشاشة التسلسلية.

في هذه الخطوة ، نطلب - Arduino UNO و DS18B20 مستشعر درجة الحرارة (النوع المعبأ أو حزمة TO92 كل ما هو متاح) ومقاوم 4.7 كيلو أوم

يحتوي مستشعر DS18B20 على 3 أسلاك باللون الأسود والأحمر والأصفر. الأسود هو من أجل GND ، والآخر الأحمر لـ Vcc بينما الأصفر هو دبوس الإشارة

1. قم بتوصيل دبوس GND أو السلك الأسود لجهاز الاستشعار بـ GND.

2. قم بتوصيل دبوس Vcc أو السلك الأحمر لجهاز الاستشعار بمصدر 5V.

3. قم بتوصيل دبوس الإشارة أو السلك الأصفر بجهد 5 فولت من خلال المقاوم 4.7 كيلو أوم وقم أيضًا بتوصيل دبوس الإشارة هذا بـ Digital Pin no-12 من Arduino.

يمكنك الرجوع إلى التخطيطي الموضح أعلاه لفهم أفضل.

الخطوة 4: ترميز Arduino لعرض درجة الحرارة

ترميز اردوينو لعرض درجة الحرارة
ترميز اردوينو لعرض درجة الحرارة
ترميز اردوينو لعرض درجة الحرارة
ترميز اردوينو لعرض درجة الحرارة
ترميز اردوينو لعرض درجة الحرارة
ترميز اردوينو لعرض درجة الحرارة

في هذه الخطوة ، سنقوم بترميز لوحة Arduino الخاصة بنا للحصول على درجة الحرارة وعرضها عبر Serial Monitor.

1. قم بتوصيل لوحة Arduino UNO بجهاز الكمبيوتر.

2. انتقل إلى مستودع Github لهذا المشروع من هنا.

3. في مستودع GitHub ، سترى ملفًا باسم "التعليمات البرمجية الأساسية" افتح هذا الملف وانسخ الكود والصقه في Arduino IDE.

4. حدد اللوحة الصحيحة ومنفذ COM ضمن علامة التبويب أدوات واضغط على زر التحميل.

5. بعد تحميل الكود ، افتح Serial Monitor وحدد معدل الباود الصحيح (9600 في حالتنا) وستتمكن من رؤية درجة الحرارة التي يشعر بها DS18B20 هناك.

يمكنك مشاهدة ارتفاع وانخفاض درجة الحرارة عن طريق القيام بأشياء مناسبة لرفع درجة الحرارة أو تهدئتها مثل فرك الجزء المعدني أو حرق قداحة بالقرب من الجزء المعدني من مستشعر النوع المعبأ.

الخطوة 5: توصيل DS18B20 بـ ESP8266

توصيل DS18B20 بـ ESP8266
توصيل DS18B20 بـ ESP8266
توصيل DS18B20 بـ ESP8266
توصيل DS18B20 بـ ESP8266

في هذه الخطوة ، سنقوم بتوصيل DS18B20 بوحدة ESP8266 للحصول على درجة الحرارة.

في هذه الخطوة ، نحتاج إلى = وحدة ESP8266 ، ومقاوم 4.7kohm ومستشعر درجة حرارة DS18B20 (النوع المعبأ أو حزمة TO92 مهما كان متاحًا).

تشبه اتصالات هذه الخطوة الاتصالات التي تم إجراؤها باستخدام Arduino.

1. قم بتوصيل دبوس GND أو السلك الأسود لجهاز الاستشعار بـ GND.

2. قم بتوصيل دبوس Vcc أو السلك الأحمر لجهاز الاستشعار بمصدر الإمداد 3.3 فولت.

3. قم بتوصيل دبوس الإشارة أو السلك الأصفر بالمحول 3.3 فولت من خلال المقاوم 4.7 كيلو أوم وقم أيضًا بتوصيل دبوس الإشارة هذا بـ GPIO12 وهو دبوس D5 للوحدة.

يمكنك الرجوع إلى التخطيطي الموضح أعلاه لفهم أفضل.

الخطوة 6: قم بإعداد Arduino IDE

قم بإعداد Arduino IDE
قم بإعداد Arduino IDE

لتشفير ESP8266 باستخدام Arduino IDE ، نحتاج إلى تثبيت لوحة ESP8266 في اللوحات الإضافية لـ Arduino IDE لأنها غير مثبتة مسبقًا. لهذا الغرض نحتاج إلى اتباع الخطوات المذكورة أدناه: -

1. انتقل إلى ملف> تفضيلات

2. أضف https://arduino.esp8266.com/stable/package_esp8266com_index.json إلى عناوين URL الإضافية لمدير اللوحات.

3. اذهب إلى Tools> Board> Boards Manager

4. ابحث عن esp8266 ثم قم بتثبيت اللوحة.

5. أعد تشغيل IDE.

الخطوة 7: ترميز ESP8266 لعرض درجة الحرارة

ترميز ESP8266 لعرض درجة الحرارة
ترميز ESP8266 لعرض درجة الحرارة
ترميز ESP8266 لعرض درجة الحرارة
ترميز ESP8266 لعرض درجة الحرارة

في هذه الخطوة ، سنقوم برمز ESP8266 لقراءة درجة الحرارة وبعد ذلك ، بدلاً من عرض درجة الحرارة هذه على الشاشة التسلسلية ، سنعرضها على خادم ويب.

1. انتقل إلى مستودع Github لهذا المشروع من هنا.

2. في المستودع ، سترى رمزًا باسم "ESP8266 Temperature Web Server" تحتاج فقط إلى نسخ هذا الرمز ولصقه في Arduino IDE.

3. بعد لصق الرمز ، قم بتغيير SSID وكلمة المرور في الرمز لشبكة Wifi الخاصة بك.

4. ضمن علامة التبويب "أدوات" ، حدد اللوحة الصحيحة ومنفذ COM وبعد ذلك اضغط على زر التحميل.

5. عندما يتم تحميل الكود ، افتح الشاشة التسلسلية لـ IDE ثم اضغط على زر التحديث في وحدة ESP8266 ، ستحصل على بعض اللغات غير المعروفة مكتوبة هناك وتحت ذلك ، سيكون عنوان IP موجودًا. تحتاج إلى نسخ عنوان IP هذا لأنه عنوان خادم الويب الذي سيعرض درجة الحرارة.

الخطوة 8: وتم ذلك

وقد تم
وقد تم

عندما يتم تحميل الكود والحصول على عنوان IP. افتح خادم الويب باستخدام عنوان IP هذا.

على خادم الويب ، ستكون هناك قراءات لدرجة الحرارة معروضة بالدرجات المئوية وكذلك بالدرجات فهرنهايت.

بصرف النظر عن خادم الويب ، يمكن أيضًا ملاحظة قراءات درجة الحرارة على الشاشة التسلسلية.

ستلاحظ أنه نظرًا لتغيير درجة الحرارة بالقرب من المستشعر ، تتغير أيضًا القراءات على خادم الويب.

هذا كل شيء عن المظاهرة.

موصى به: