الحساسات

قياس درجة الحرارة باستخدام LM 35

درسنا في الدروس السابقة  عن مكونات الاردوينو وعدة حساسات/مستشعرات مختلفة وتعرفنا بشكل عام عن مفهوم الحساسات في درس انواع الحساسات الكهربائية في هذا الدرس سوف نتعلم كيفية قياس درجة الحرارة باستخدام الحساس المشهور باسم LM35 بحيث سوف ندرس طريقة استخدام هذا الحساس وخصائصه الفنية من ورقة البيانات الخاصة به وكيف نستطيع كتابة برنامج صغير باستخدام الاردوينو لأخذ قراءات درجة الحرارة من هذا الحساس. ولكن في البداية دعونا نتعرف أكثر على الاستخدامات المختلفة للحساس LM35:

  • قياس درجة الحرارة بشكل مباشر وعرضها على شاشة الكترونية او جهاز الحاسوب لمراقبة درجات الحرارة.
  • استخدام الحساس LM35 في الاجهزة الطبية.
  • بناء مختبر صغير لدراسة تأثير درجات الحرارة على النباتات.
  • اجهزة وأدوات قياس درجة الحرارة المختلفة.
  • الحساس LM35 له مخرج جهد خطي ولهذا يكثر استخداماته في التطبيقات المختلفة التي تعتمد على درجة الحرارة.
  • التطبيقات الحرارية خصوصا في الهندسة الميكانيكية مثل انظمة التكيف والتبريد HVAC. 
  • والمزيد من التطبيقات التي تحتاج الى مقياس دقيق لقياس درجات الحرارة.

دعونا الآن نتحدث عن اهم الخصائص الفنية لهذا الحساس والتي يمكنك الاطلاع عليها جميعها من ورقة البيانات Data Sheet وبشكل عام هذا الخصائص التي تهمنا:

الخاصيةالقيمة/الابعاد
مدى درجة حرارة التي يقيسها-55 الى 150 درجة مئوية
الحساسيةLinear + 10-mV/°C
الدقة0.5 درجة عند 25 مئوية
جهد التغذية4v إلى 30v
الحرارة الذاتية0.08 درجة , وهي قليلة
ممانعة داخلية منخفضة جدًا

مخطط بناء المشروع

سوف نقوم بعمل مشروع لايجاد درجة الحرارة , سنقوم بتوصيل الدبوس الأرضي لحساس LM35 بالطرف الارضي للاردوينو وكذلك دبوس الجهد (+5 فولت) ، وسنقوم بتوصيل إشارة المستشعر بالطرف التناظري (A1) وسوف نعرض درجات الحرارة على شاشة العرض التسلسلي serial monitor. سوف تكون توصيلات الحساس مع الاردوينو Arduino UNO R3 كما يلي:


الكود

تأكد من أن توصيلاتك الكهربائية للأسلاك والاقطاب صحيحة ، ثم قم بتوصيل الاردوينو بجهاز الكمبيوتر باستخدام USB للتغذية ونقل الكود ثم قم بتحميل هذا الكود إلى لوحة الاردوينو أو أي لوحة تملكها:

/* https://arduinozone.com/
Prepared by ENG Fawzi Al-azraq
*/
int lm35_pin = A0;

void setup() {
Serial.begin(9600);
}

void loop() {
int temp;
float temp_value;
temp = analogRead(lm35_pin);
/* Convert ADC value to equivalent voltage from Data Sheet*/
temp_value = (temp * 4.88);
temp_value = (temp_value/10);

Serial.print("Temperature in Degree Celsius\n");
Serial.print(temp_value);
delay(2000);
}

الآن سترى درجات الحرارة بالسلسيوس على شاشة العرض التسلسلي serial monitor. والآن يمكنك بناء مشاريع رائعة باستخدام المزيد من الحساسات ومشاريع اخرى مثل:

مقالات ذات صلة

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

إغلاق