عرض درجة الحرارة من HTU21D كرسوم بيانية على شاشة LCD

عرض درجة الحرارة من HTU21D كرسوم بيانية على شاشة LCD

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

HTU21D module

بالنسبة لأولئك الذين يرغبون في الحصول على دليل بصري، تأكدوا من مشاهدة الفيديو المرتبط بهذا الدرس (في الفيديو عند 00:00).

تفسير الأجهزة

تشمل المكونات الرئيسية لهذا المشروع مستشعر HTU21D وشاشة LCD 1602. يعد HTU21D مستشعرًا رقميًا للرطوبة ودرجة الحرارة يتواصل عبر I2C. يوفر قراءات دقيقة لدرجة الحرارة والرطوبة، والتي يمكن الوصول إليها بسهولة من خلال مكتبته. من ناحية أخرى، تعرض شاشة LCD 1602 القراءات بتنسيق مفهوم للبشر، مما يسمح بتقييمات سريعة للظروف البيئية.

يستخدم HTU21D واجهة I2C بسيطة، مما يجعله سهل الاتصال والتواصل مع الميكروكنترولر مثل الأردوينو. كما يستخدم شاشة LCD 1602 I2C، مما يبسط التوصيل عن طريق تقليل عدد الدبابيس المطلوبة للاتصال بالأردوينو. هذا يسمح بإعداد أنظف مع الحفاظ على توفير مخرجات بصرية واضحة.

تفاصيل ورقة البيانات

الصانعأدا فروت
رقم الجزءHTU21D
جهد المنطق/المدخلات والمخرجات3.3 فولت (تقريباً)
جهد الإمداد1.5 - 3.6 ف
نطاق درجة الحرارة-40 إلى 125 درجة مئوية
نطاق الرطوبة0 إلى 100 %RH
قرار0.01 °م / 0.04 %رطوبة نسبية
اتصالI2C
حزمة4-pin LGA

  • استخدم 3.3 فولت لتشغيل HTU21D؛ الاتصال بـ 5 فولت يمكن أن يتسبب في تلفه.
  • تأكد من استخدام مقاومات سحب صحيحة على خطوط I2C (SDA و SCL).
  • خذ المستشعر بعيدًا عن مصادر الحرارة أثناء الاختبار.
  • تحقق من عنوان I2C الصحيح باستخدام برنامج مسح I2C.
  • تأكد من أن شاشة LCD مُهيأة بشكل صحيح بالعنوان الصحيح.

تعليمات التوصيل

Arduino wiring for HTU21DF light intesity sensor with LCD
Arduino wiring for HTU21DF light intesity sensor with LCD

لربط مستشعر HTU21D وعرض LCD 1602، اتبع هذه الخطوات بعناية:

أولاً، قم بتوصيل مستشعر HTU21D. اتصل بالدبوس الأول (VCC) بدبوس 3.3 فولت على الأردوينو. يجب توصيل الدبوس الثاني (GND) بالأرض (GND) للأردوينو. الدبوس الثالث (SDA) متصل بدبوس A4 على الأردوينو، والدبوس الرابع (SCL) متصل بدبوس A5. تأكد من استخدام الألوان الصحيحة للأسلاك لتوضيح الأمور، حيث تستخدَم الأحمر لـ VCC، والأسود لـ GND، والبرتقالي لـ SDA، والأصفر لـ SCL.

بعد ذلك، بالنسبة لشاشة LCD 1602، قم بتوصيل دبوس VCC بدبوس 5 فولت على الأردوينو ودبوس GND بالأرض. يجب أن يتم توصيل دبوس SDA الخاص بشاشة LCD بنفس دبوس A4 المستخدم لـ HTU21D، ويجب توصيل دبوس SCL بدبوس A5. يتيح هذا الإعداد لكل من المستشعر والشاشة التواصل عبر بروتوكول I2C.

أمثلة الكود وإرشادات الاستخدام

في الكود، الخطوة الأولى هي تضمين المكتبات اللازمة للمستشعر وشاشة العرض. السطر#include أساسي للتواصل I2C، بينما#include "Adafruit_HTU21DF.h"يتم تهيئة مستشعر HTU21D. يقوم السطر التالي بإنشاء مثيل من فئة HTU21D:

Adafruit_HTU21DF htu = Adafruit_HTU21DF();

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

داخل الـsetup()نقوم بتهيئة المراقب التسلسلي وشاشة LCD. السطور التالية تتحقق مما إذا كان المستشعر يعمل بشكل صحيح:

if (htu.begin()) {
    lcd.print("HTU21DF Bargraph");  
} else {
    lcd.print("missing HTU21DF"); 
    while(1); // Pause forever.
}

إذا فشل المستشعر في التهيئة، سيعرض البرنامج رسالة خطأ ويتوقف عن التنفيذ. هذا أمر حاسم لتصحيح الأخطاء ويضمن أن المستشعر متصل بشكل صحيح.

في الـloop()تتم أخذ قراءات درجة الحرارة وعرضها. الخطfloat T = getHTU('H');يسترجع درجة الحرارة أو الرطوبة بناءً على المعامل الممرر. ثم يتم عرض القيمة المسترجعة على شاشة LCD:

lcd.setCursor (0,1); 
lcd.print(T); // print  
lcd.print((char)223); // prints degree symbol
lcd.print("C"); //

هذا الكود يضع المؤشر في السطر الثاني من شاشة LCD ويطبع قيمة درجة الحرارة مع رمز الدرجة. استخدام(char)223هذه خدعة مفيدة لعرض رمز الدرجة على الشاشة LCD.

عرض / ما يمكن توقعه

بمجرد إعداد كل شيء وتحميل الشيفرة، يجب أن ترى قراءات درجة الحرارة معروضة على شاشة LCD كرسوم بيانية. ستتحدث القراءات باستمرار، مما يعكس درجة الحرارة والرطوبة الحالية. إذا قمت بنفخ هواء ساخن على المستشعر، ستلاحظ ارتفاع درجة الحرارة بسرعة، مما يؤكد أن النظام يعمل كما هو متوقع. كن حذرًا من عكس القطبية أو الأسلاك الخاطئة، حيث يمكن أن تؤدي هذه إلى خلل أو تلف (في الفيديو عند 02:30).

طوابع زمنية للفيديو

  • 00:00- المقدمة
  • 01:30- شرح التوصيلات
  • ٢:٣٠- عرض الشيفرة
  • ٤:٠٠- عرض
  • ٠٥:٣٠- الخاتمة

الصور

Arduino wiring for HTU21DF light intesity sensor with LCD
Arduino wiring for HTU21DF light intesity sensor with LCD
HTU21D module
HTU21D module
HTU21D module-back
HTU21D module-back
214-Arduino code using HTU21D-F Humidity & Temperature on LCD bargraph
اللغة: C++
تم النسخ!

ملفات📁

ورقة البيانات (pdf)