جهاز مراقبة درجة حرارة Raspberry Pi

Raspberry Pi Temperature Monitor



Raspberry Pi هو كمبيوتر ذو لوحة واحدة قوية (SBC). يمكن استخدامه للقيام بالعديد من المهام المعقدة. لكن القيام بذلك سيزيد من درجة حرارة معالج أجهزة Raspberry Pi. وهو ليس جيدا. سيعاني أداء Raspberry Pi SBC بسبب درجة الحرارة. يُعرف هذا أيضًا بالاختناق الحراري.

إذا كانت درجة حرارة معالج Raspberry Pi أعلى من 80 درجة مئوية ، فسترى رمز مقياس الحرارة في الزاوية اليمنى العليا من الشاشة. رسميًا ، توصي مؤسسة Raspberry Pi بأن تكون درجة حرارة جهاز Raspberry Pi أقل من 85 درجة مئوية حتى يعمل بشكل صحيح. هذا هو الحد الأقصى. لكنه سيبدأ في الاختناق عند 82 درجة مئوية.







في هذه المقالة ، سأوضح لك كيفية مراقبة درجة حرارة جهاز Raspberry Pi الخاص بك. سأستخدم نظام التشغيل Raspbian على جهازي Raspberry Pi 3 Model B. ولكن يجب أن يعمل على أي Raspberry Pi SBC مثبت عليه نظام التشغيل Raspbian.



يمكنك قياس درجة الحرارة الأساسية لجهاز Raspberry Pi باستخدام الأمر التالي:



$قياس vcgencmd

درجة الحرارة الأساسية الحالية هي 48.3 درجة مئوية كما ترى في القسم المحدد من لقطة الشاشة أدناه.





كما ترى ، في كل مرة أقوم بتشغيل الأمر ، يظهر الأمر قيمة درجة حرارة مختلفة.



تحليل بيانات درجة الحرارة:

بيانات درجة الحرارة التي نحصل عليها من vcgencmd الأمر عبارة عن سلسلة. لا يمكنك إجراء أي عملية حسابية عليها. يمكننا بسهولة استخدام التعبير العادي لاستخراج بيانات درجة الحرارة فقط وإجراء أي نوع من الحسابات عليها.

إذا كنت ترغب في استخدام بيانات درجة الحرارة في برنامج نصي لصدفة Bash ، فيمكنك استخراج بيانات درجة الحرارة باستخدام egrep الأمر على النحو التالي:

$قياس vcgencmd| egrep -أو '[0-9] * . [0-9] *'

كما ترى ، تتم طباعة بيانات درجة الحرارة فقط. لا يوجد شيء قبله أو بعده.

يمكنك استخدامه في نص شيلك (دعنا نقول print_temp.sh ) على النحو التالي:

$نانوprint_temp.sh

هنا ، في السطر 3 ، قمت بتعيين ملف مؤقت متغير إلى بيانات درجة الحرارة المحللة التي أحصل عليها من vcgencmd و سيطرة أمر.

في السطر 5 ، اعتدت رما - طرد - قذف لطباعة محتوى مؤقت متغير على الشاشة.

يُستخدم السطر الأول لإخبار Linux بأنه يجب تنفيذ النص البرمجي باستخدام /bin/bash بشكل افتراضي.

الآن ، اجعل البرنامج النصي قابلاً للتنفيذ باستخدام الأمر التالي:

$chmod+ x print_temp.sh

الآن ، قم بتشغيل البرنامج النصي على النحو التالي:

$./print_temp.sh

كما ترى ، تتم طباعة الإخراج المطلوب على الشاشة.

كتابة برنامج مراقبة درجة حرارة Raspberry Pi:

الآن بعد أن أصبح بإمكاننا تحليل بيانات درجة الحرارة التي نحصل عليها من vcgencmd الأمر ، يمكننا بسهولة كتابة نص برمجي لمراقبة درجة الحرارة لـ Raspberry Pi. سيقوم البرنامج النصي لمراقبة درجة الحرارة بطباعة الطابع الزمني الحالي ودرجة الحرارة الأساسية كل ثانية على الشاشة بطريقة منسقة بشكل جيد.

أولاً ، قم بإنشاء نص جديد tempmon.sh بالأمر التالي:

$لمس. اتصال. صلةtempmon.sh

الآن ، قم بتحرير ملف tempmon.sh البرنامج النصي مع الأمر التالي:

$نانوtempmon.sh

الآن ، اكتب سطور الرموز التالية واحفظ الملف بامتداد + x ثم اضغط و تليها .

هنا ، في السطر 4 ، printf يستخدم لطباعة سلاسل TIMESTAMP و TEMP (degC) كعمود عرض ثابت.

في السطر 5 ، اعتدت printf مرة أخرى لطباعة سطر متقطع فقط لجعل الإخراج أكثر قابلية للقراءة وجاذبية.

في السطر 7-13 ، قمت بتشغيل حلقة لا نهائية لطباعة بيانات درجة الحرارة كل ثانية.

في السطر 9 ، قمت بتخزين بيانات درجة الحرارة المحللة على مؤقت عامل.

في السطر 10 ، قمت بتخزين بيانات الطابع الزمني التي حصلت عليها من ملف تاريخ الأمر على الطابع الزمني عامل.

في السطر 11 ، قمت بطباعة التاريخ والوقت بتنسيق الطابع الزمني وبيانات درجة الحرارة بتنسيق عمود عرض ثابت.

في السطر 12 ، استخدمت الأمر sleep 1 لعقد تنفيذ البرنامج النصي لمدة ثانية. بعد ذلك ، ستستمر الحلقة.

الآن ، اكتب النص tempmon.sh قابل للتنفيذ بالأمر التالي:

$chmod+ x tempmon.sh

أخيرًا ، قم بتشغيل البرنامج النصي tempmon.sh بالأمر التالي:

$./tempmon.sh

كما ترى ، يعمل البرنامج النصي لمراقبة درجة الحرارة بشكل مثالي. إنها تطبع بيانات درجة الحرارة كل ثانية.

كما ترون ، كلما زادت حمولة النظام ، زادت درجة الحرارة قليلاً.

إذا كنت تريد إيقاف البرنامج النصي لمراقبة درجة الحرارة ، فاضغط على + ج . لم يعد رصد درجة الحرارة قيد التشغيل كما ترى في لقطة الشاشة أدناه.

الآن بعد أن عمل البرنامج النصي لمراقبة درجة الحرارة ، دعنا ننسخه إلى / البيرة / بن الدليل. بهذه الطريقة ، يمكنك تشغيله مثل أي أوامر Linux أخرى.

لنسخ البرنامج النصي tempmon.sh الى / البيرة / بن الدليل ، قم بتشغيل الأمر التالي:

$سودو cptempmon.sh/usr/صباحا/تيمبمون

كما ترى ، يمكنني تشغيل البرنامج النصي لمراقبة درجة الحرارة تمامًا كما أقوم بتشغيل أوامر Linux القياسية.

التعديل تيمبمون لطباعة بيانات درجة الحرارة بالفهرنهايت:

يمكنك بسهولة تحويل بيانات درجة الحرارة من مئوية إلى فهرنهايت.

الصيغة المعروفة على نطاق واسع لحساب درجات الحرارة بالفهرنهايت من الدرجة المئوية هي ،

F =(9/5)*ج +32
أو
F =1.8 *ج +32

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

قبل الميلاد غير مثبت على Raspbian افتراضيًا. ولكن يمكنك تثبيته بسهولة بالأمر التالي:

$سودوملائمتثبيت قبل الميلاد

قبل الميلاد يجب تثبيته.

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

قم بتحرير ملف tempmon.sh البرنامج النصي مع الأمر التالي:

$نانوtempmon.sh

الآن ، قم بإجراء التعديلات كما هو موضح في لقطة الشاشة أدناه.

هنا ، في السطر 4 ، طبعت TEMP (F) بدلا من TEMP (درجة مئوية) .

في السطر 9 ، قمت بتغيير المتغير من مؤقت إلى درجة الحرارة .

في السطر 10 ، أضفت نتيجة التحويل من الدرجة المئوية إلى فهرنهايت إلى متغير درجة الحرارة .

أخيرًا ، قمت بطباعة قيمة درجة الحرارة متغير بدلا من مؤقت على السطر 12.

الآن ، قم بتشغيل البرنامج النصي على النحو التالي:

$./تيمبمون

كما ترى ، تتم طباعة درجة الحرارة بوحدة فهرنهايت.

هذه هي الطريقة التي تراقب بها درجة الحرارة في Raspberry Pi. شكرا لقراءة هذا المقال.