قم بإنشاء جهاز مراقبة درجة حرارة Raspberry Pi باستخدام Sense HAT واعرض قراءات منتظمة على مصفوفة LED الخاصة به.

هناك عدة طرق يمكنك من خلالها مراقبة درجة الحرارة المحيطة باستخدام كمبيوتر Raspberry Pi ذو لوحة واحدة، ربما كجزء من إعداد محطة الطقس. بينما يمكنك استخدام مستشعر خارجي متصل بدبابيس GPIO الخاصة بـ Raspberry Pi، سنشرح هنا كيفية مراقبة درجة الحرارة باستخدام Raspberry Pi المجهز بقبعة Sense HAT.

ما هي قبعة الإحساس؟

حقوق الصورة: فطيرة التوت

رسمي قبعة راسبيري باي (الأجهزة المرفقة في الأعلى) لوحة إضافية تم تصميمها وإنتاجها من قبل شركة Raspberry Pi، تم إنشاء Sense HAT في الأصل ليستخدمها رواد الفضاء على متن محطة الفضاء الدولية. منذ عام 2015، تم استخدام جهازي كمبيوتر Raspberry Pi مزودين بـ Sense HAT في التجارب العلمية التي صممها أطفال المدارس الذين دخلوا في المجال المستمر استرو بي التحدي تم استبدال هاتين الوحدتين منذ ذلك الحين بإصدارات مطورة تعتمد على Raspberry Pi 4 ومجهزة بكاميرا عالية الجودة.

حقوق الصورة: فطيرة التوت

في حين أنها تفتقر إلى العلبة الفضية الخاصة المصممة للاستخدام في الفضاء، فإن لوحة Sense HAT القياسية لديها نفس الوظيفة تمامًا. متوافق مع أي

instagram viewer
نموذج راسبيري باي مع موصل GPIO ذو 40 سنًا، فإنه يتميز بمجموعة من المستشعرات الموجودة على اللوحة والتي تمكنه من مراقبة البيئة المحيطة وكذلك اكتشاف اتجاهه وحركته. بالإضافة إلى ذلك، فهو يحتوي على مصفوفة 8x8 RGB LED لعرض النصوص والبيانات والصور. هناك أيضًا عصا تحكم صغيرة بخمسة اتجاهات.

المجموعة الكاملة من الوظائف الحسية Sense HAT هي كما يلي:

  • رطوبة: مستشعر STMicro HTS221 مع نطاق رطوبة نسبية من 0 إلى 100%، بالإضافة إلى استشعار درجة الحرارة من 32 درجة فهرنهايت إلى 149 درجة فهرنهايت (0 درجة مئوية إلى 65 درجة مئوية ± 2 درجة مئوية).
  • الضغط الجوي: مستشعر STMicro LPS25HB بنطاق من 260 إلى 1260 hPa، بالإضافة إلى استشعار درجة الحرارة من 59 درجة فهرنهايت إلى 104 درجة فهرنهايت (15 درجة مئوية إلى 40 درجة مئوية ± 0.5 درجة مئوية).
  • درجة حرارة: ويمكن قراءة ذلك من جهاز استشعار الرطوبة أو الضغط، أو قياسه عن طريق أخذ متوسط ​​القراءتين.
  • جيروسكوب: يمكن لـ STMicro LSM9DS1 IMU قياس دوران Sense HAT بالنسبة لسطح الأرض (ومدى سرعة دورانها).
  • مقياس التسارع: وظيفة أخرى لـ IMU هي قياس قوة التسارع في اتجاهات متعددة.
  • مقياس المغناطيسية: ومن خلال استشعار المجال المغناطيسي للأرض، يمكن لوحدة IMU تحديد اتجاه الشمال المغناطيسي وبالتالي إعطاء قراءة البوصلة.

الآن بعد أن حصلت على المعلومات الداخلية حول ما يمكن أن تفعله قبعة Raspberry Pi HAT متعددة الأغراض، فقد حان الوقت لبدء المشروع.

الخطوة 1: قم بتركيب قبعة Sense HAT

لتوصيل Sense HAT، تأكد أولاً من إيقاف تشغيل جهاز Raspberry Pi وفصله عن الطاقة. ثم ادفع Sense HAT (مع موسع الرأس الأسود المرفق) بعناية على رأس GPIO المكون من 40 سنًا في Raspberry Pi بحيث يتم وضع لوحة Sense HAT فوق لوحة Raspberry Pi. تأكد من أن جميع المسامير تصطف بشكل صحيح وأن كلا الصفين متصلان. يمكنك أيضًا استخدام مواضع التثبيت الملولبة للمساعدة في تأمينها.

يمكنك استخدام أي نموذج Raspberry Pi قياسي يحتوي على رأس GPIO ذو 40 سنًا. واحد من القيود الرئيسية لـ Raspberry Pi 400ومع ذلك، فإن رأس GPIO الخاص به يقع في الجزء الخلفي من لوحة المفاتيح المدمجة. وهذا يعني أن Sense HAT ستواجه الخلف، لذا قد ترغب في استخدام كابل تمديد GPIO لتوصيلها.

الخطوة 2: إعداد Raspberry Pi

كما هو الحال مع أي مشروع آخر، يجب عليك توصيل لوحة مفاتيح وماوس USB ثم قم بتوصيل Raspberry Pi بجهاز عرض أو تلفزيون. يجب أن يكون لديك أيضًا بطاقة microSD مُدخلة عليها نظام التشغيل Raspberry Pi القياسي - إذا لم تكن قد قمت بذلك بالفعل، فراجع كيفية تثبيت نظام التشغيل على Raspberry Pi. أنت بعد ذلك جاهز لتشغيل الطاقة.

وبدلاً من ذلك، يمكنك استخدام جهاز Raspberry Pi مع Sense HAT في وضع مقطوعة الرأس، دون توصيل شاشة أو اتصل بـ Raspberry Pi عن بعد باستخدام SSH من كمبيوتر أو جهاز آخر. إذا قمت بذلك، فلن تتمكن من استخدام Thonny Python IDE، ولا يزال بإمكانك تحرير البرامج باستخدام محرر النصوص النانوي وتشغيلها من سطر الأوامر.

يجب تثبيت البرنامج الثابت Sense HAT بشكل افتراضي. للتحقق مرة أخرى، افتح نافذة الوحدة الطرفية وأدخل:

sudo apt install sense-hat

بعد ذلك، إذا تم تثبيت الحزمة حديثًا، فأعد تشغيل Raspberry Pi:

sudo reboot

الخطوة 3: ابدأ البرمجة في بايثون

بينما يمكنك استخدام Raspberry Pi Sense HAT مع لغة البرمجة المبنية على كتلة Scratch، سنستخدم لغة Python لقراءة وعرض قراءات المستشعر الخاصة بها.

تعد Thonny IDE (بيئة التطوير المتكاملة) طريقة جيدة للقيام ببرمجة Python على Raspberry Pi، حيث أنها تحتوي على الكثير من الوظائف بما في ذلك ميزات تصحيح الأخطاء المفيدة. في واجهة المستخدم الرسومية لسطح المكتب لنظام Raspberry Pi OS، انتقل إلى قائمة طعام (أعلى رمز التوت الأيسر) > البرمجة > ثوني IDE لإطلاقه.

الخطوة 4: قم بقراءة درجة الحرارة

في النافذة الرئيسية لبرنامج Thonny IDE، أدخل سطور التعليمات البرمجية التالية:


from sense_hat import SenseHat

sense = SenseHat()
sense.clear()

temp = sense.get_temperature()
print(temp)

يستورد السطر الأول ملف SenseHat فئة من sense_hat مكتبة Python (المثبتة مسبقًا في Raspberry Pi OS). ثم يتم تعيين هذا إلى حاسة عامل. يمسح السطر الثالث مصفوفة LED الخاصة بـ Sense HAT.

ثم نأخذ قراءة درجة الحرارة ونطبعها في منطقة Shell في Thonny IDE. هذا بالدرجات المئوية، لذا قد ترغب أولاً في تحويله إلى فهرنهايت:

temp = (sense.get_temperature() * 1.8 + 32)

ستحتوي قراءة مستشعر درجة الحرارة على عدة أرقام بعد العلامة العشرية. لذلك سوف نستخدم دائري دالة لتقريبها إلى منزلة عشرية واحدة:

temp = round(temp, 1)

ال إحساس.get_temperature() تقرأ الوظيفة مستشعر درجة الحرارة المدمج في مستشعر الرطوبة. وبدلاً من ذلك، يمكنك قياس درجة الحرارة من خلال مستشعر الضغط Sensitive.get_temperature_from_pressure() أو حتى أخذ القراءتين وحساب المتوسط ​​(بجمعهما والقسمة على اثنين).

الخطوة 5: اعرض درجة الحرارة على Sense HAT

إن طباعة قراءة واحدة لدرجة الحرارة على Python Shell أمر ممل بعض الشيء، لذا بدلاً من ذلك دعونا نأخذ قراءة جديدة بانتظام ونعرضها على مصفوفة RGB LED الخاصة بـ Sense HAT. لعرض رسالة نصية قابلة للتمرير، نستخدم اظهر الرسالة وظيفة. سنستخدم أيضًا أ احيانا صحيح حلقة للاستمرار في أخذ قراءة جديدة كل 10 ثوانٍ — والتي نستخدم من أجلها ينام وظيفة من وقت مكتبة.

إليكم البرنامج الكامل:

from sense_hat import SenseHat
from time import sleep

sense = SenseHat()
sense.clear()

whileTrue:
 temp = (sense.get_temperature() * 1.8 + 32)
 temp = round(temp, 1)
 message = "Temp: " + str(temp)
 sense.show_message(message)
 sleep (10)

قم بتشغيل هذا الرمز وسترى كل قراءة جديدة لدرجة الحرارة يتم تمريرها عبر مصفوفة LED. حاول النفخ على Sense HAT لمعرفة ما إذا كانت درجة الحرارة تتغير.

قد تتأثر قراءات درجة الحرارة بالحرارة المنقولة من وحدة المعالجة المركزية الخاصة بـ Raspberry Pi الموجودة أدناه مباشرةً، لذلك قد تكون هناك حاجة إلى تعديل للحصول على رقم أكثر دقة. الحل الآخر هو استخدام رأس التراص لرفع Sense HAT إلى أعلى فوق Raspberry Pi.

استخدم Raspberry Pi لمراقبة درجة الحرارة

على الرغم من أنه يمكنك استخدام مستشعر درجة حرارة مستقل بدلاً من ذلك لهذا المشروع، فإن Sense HAT يجعل من السهل مراقبة درجة الحرارة باستخدام جهاز استشعار درجة الحرارة الخاص بك. فطيرة التوت. يمكنك أيضًا استخدامه لالتقاط مجموعة من قراءات المستشعرات الأخرى، مثل الضغط الجوي والرطوبة النسبية، وإظهارها على مؤشر LED الخاص به مصفوفة.