مشروع للتنبيه عن ارتفاع الحرارة في غرف الخوادم باستخدام اردوينو اكتب تعليقُا

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

شرح فكرة المشروع

  • في هذا المشروع سنقوم بتصميم نظام إلكتروني ذكي للتنبيه عن ارتفاع درجة الحرارة في غرف الخوادم باستخدام لوحة Arduino.

  • يعتمد النظام على حساس DHT11 لقياس درجة الحرارة والرطوبة داخل الغرفة بشكل مستمر، حيث يتم تثبيت الحساس في موقع مناسب لضمان قياسات دقيقة.

  • عند تجاوز درجة الحرارة الحد الآمن المحدد مسبقًا، يقوم النظام بتفعيل تنبيه صوتي عبر الصفّارة (Buzzer) وتنبيه مرئي على شاشة LCD 2×16، مما يسمح للفريق الفني بالتدخل السريع لحماية الخوادم من التلف أو التعطل.

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

  • وفي الختام، نسأل الله عز وجل أن يكون هذا العمل مفيدًا ونافعًا، وأن يساهم في توظيف التقنيات الحديثة لضمان أمن وسلامة البنية التحتية لتقنية المعلومات.

أدوات المشروع

مخطط المشروع

الكود البرمجي

تنبيه : في حال لم تكن متأكد من قدرتك على تنفيذ خطوات المشروع يرجى استشارة شخص متخصص في هذا المجال.
  • للتعرف على تجهيز لوحة أردوينو للبرمجة قم بزيارة الرابط التالي.
  • للإطلاع على كيفية تحميل وتنصيب المكتبات قم بزيارة الرابط التالي.
  • قبل رفع البرنامج الى اللوحة، يجب رفع المكتبات التالية:
  • Wire.h
  • LiquidCrystal_I2C.h
  • DHT.h
  • في حال لم يعمل هذا الكود البرمجي، قم بتحميل ملف الكود بالضغط على زر التحميل الموجود في الأسفل.

#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <DHT.h>

#define DHTPIN 13
#define DHTTYPE DHT11
#define BUZZER 3

#define TEMP_LIMIT 20 // الحد الأقصى لغرفة الخوادم (°C)

DHT dht(DHTPIN, DHTTYPE);
LiquidCrystal_I2C lcd(0x27, 16, 2);

void alarmMelody() {
tone(BUZZER, 900); // نغمة 1
delay(200);
tone(BUZZER, 1300); // نغمة 2
delay(200);
tone(BUZZER, 1700); // نغمة 3
delay(300);
noTone(BUZZER);
}

void setup() {
pinMode(BUZZER, OUTPUT);
noTone(BUZZER);

dht.begin();
lcd.init();
lcd.backlight();

lcd.setCursor(0, 0);
lcd.print(“Server Room”);
lcd.setCursor(0, 1);
lcd.print(“Monitoring…”);
delay(2000);
lcd.clear();
}

void loop() {
float temperature = dht.readTemperature();

if (isnan(temperature)) {
lcd.setCursor(0, 0);
lcd.print(“Sensor Error”);
return;
}

lcd.setCursor(0, 0);
lcd.print(“Temp: “);
lcd.print(temperature);
lcd.print(” C “);

if (temperature > TEMP_LIMIT) {
lcd.setCursor(0, 1);
lcd.print(“ALERT: OVERHEAT”);
alarmMelody(); // نغمة مميزة
} else {
noTone(BUZZER);
lcd.setCursor(0, 1);
lcd.print(“Status: NORMAL “);
delay(2000);
}
}

اترك تعليقاً

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

تحديثات مهمة للعملاء في السعودية بدءًا من 1 يناير 2026م

يرجى الاطلاع على تفاصيل التحديثات عبر الرابط التالي:

اضغط هنا
إغلاق هذا الإشعار يُعد تأكيدًا على أنك قرأت التحديثات وفهمتها.