بالطبع، إليك الورقة البحثية باللغة العربية:
العنوان: تنفيذ نظام قياس درجة حرارة الجسم بالأشعة تحت الحمراء باستخدام أردوينو
الملخص
تناقش هذه الورقة تصميم وتنفيذ نظام لقياس درجة الحرارة بالأشعة تحت الحمراء باستخدام منصة أردوينو، وبالتحديد باستخدام حساس درجة الحرارة بالأشعة تحت الحمراء MLX90614 وشاشة OLED. يتميز النظام بقدرته على قياس درجة حرارة الجسم ودرجة الحرارة المحيطة، وتقديم البيانات في الوقت الفعلي لتطبيقات متعددة.
المقدمة
يُعد قياس درجة الحرارة جانبًا مهمًا في العديد من المجالات، بما في ذلك الرعاية الصحية، والمراقبة البيئية، والتطبيقات الصناعية. توفر حساسات درجة الحرارة بالأشعة تحت الحمراء طريقة لقياس الحرارة بدون تلامس، مما يوفر ميزة خاصة في الحالات التي لا تكون فيها طرق القياس التقليدية ملائمة. يهدف هذا المشروع إلى تطوير نظام بسيط ولكنه فعال لقياس درجة الحرارة باستخدام منصة أردوينو.
المعدات والأساليب
المكونات المستخدمة
- أردوينو أونو (Arduino Uno): المتحكم الرئيسي الذي يقوم بمعالجة البيانات.
- حساس درجة الحرارة بالأشعة تحت الحمراء MLX90614: حساس بدون تلامس لقياس درجات حرارة الجسم والبيئة.
- شاشة OLED I2C بحجم 0.96 بوصة: تستخدم لعرض قراءات درجة الحرارة.
مخطط الدائرة الكهربائية
تم توصيل المكونات كما يلي:
- حساس MLX90614:
- VIN متصل بـ 5V في أردوينو.
- GND متصل بـ GND في أردوينو.
- SCL متصل بـ A5 في أردوينو.
- SDA متصل بـ A4 في أردوينو.
- شاشة OLED:
- VCC متصل بـ 3.3V أو 5V في أردوينو.
- GND متصل بـ GND في أردوينو.
- SCL وSDA مشتركين مع الحساس MLX90614 عبر دبابيس A5 و A4.
تنفيذ الكود
تم تنفيذ الكود التالي لقراءة بيانات درجة الحرارة من حساس MLX90614 وعرضها على شاشة OLED:
#include <Wire.h>
#include <Adafruit_MLX90614.h>
#include <Adafruit_SSD1306.h>
// إنشاء كائنات للحساس MLX90614 ولشاشة OLED
Adafruit_MLX90614 mlx = Adafruit_MLX90614();
Adafruit_SSD1306 display(128, 64, &Wire); // حجم شاشة OLED: 128x64
void setup() {
Serial.begin(9600); // بدء الاتصال التسلسلي
// تهيئة الحساس MLX90614
if (!mlx.begin()) {
Serial.println("فشل في تهيئة الحساس MLX90614 !");
while (1);
}
// تهيئة شاشة OLED مع عنوان I2C (0x3C أو 0x3D حسب النموذج)
if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
Serial.println("فشل في تهيئة شاشة OLED !");
while (1);
}
display.clearDisplay(); // مسح الشاشة عند البدء
display.display();
}
void loop() {
// قراءة درجة حرارة الجسم ودرجة الحرارة المحيطة
float tempObject = mlx.readObjectTempC();
float tempAmbient = mlx.readAmbientTempC();
// عرض النتائج على شاشة OLED
display.clearDisplay();
display.setTextSize(1);
display.setTextColor(SSD1306_WHITE);
display.setCursor(0, 0);
display.print("Temp Corp: ");
display.print(tempObject);
display.print(" C");
display.setCursor(0, 16);
display.print("Temp Amb: ");
display.print(tempAmbient);
display.print(" C");
display.display();
// طباعة النتائج على المراقب التسلسلي
Serial.print("درجة حرارة الجسم: "); Serial.print(tempObject); Serial.println(" C");
Serial.print("درجة الحرارة المحيطة: "); Serial.print(tempAmbient); Serial.println(" C");
delay(1000); // الانتظار لمدة ثانية قبل التكرار
}
النتائج
تمكن النظام من قياس وعرض درجات حرارة الجسم والبيئة بنجاح. عند وضع الإصبع بالقرب من الحساس، يبدأ الحساس في قياس درجة الحرارة وعرضها في الوقت الفعلي على الشاشة.
المناقشة
تم تقييم أداء النظام في ظروف مختلفة لقياس دقته واستجابته. لقد تبين أن استخدام تقنية قياس درجة الحرارة بالأشعة تحت الحمراء بدون تلامس يوفر نتائج سريعة وآمنة، مما يجعل النظام مناسبًا لتطبيقات متنوعة.
الخاتمة
توضح هذه الورقة إمكانية إنشاء نظام بسيط لقياس درجة الحرارة باستخدام أردوينو وتقنية الأشعة تحت الحمراء. يمكن أن تركز الأعمال المستقبلية على تحسين دقة النظام وتوسيع تطبيقاته.