// مشروع إنذار الدخان باستخدام حساس دخان ومكبر صوت صغير
// مراقبة مستوى الدخان وتشغيل إنذار صوتي عند تجاوزه مستوى معين
// إعداد المهندس/ أحمد درويش
// تعريف المتغيرات
int alarm = 2; // توصيل إنذار الصوت (Buzzer) بالطرف الرقمي رقم 2
int smokeLevel = A0; // توصيل حساس الدخان بالطرف التناظري A0
// إعداد البيئة الأولية للمشروع، يعمل مرة واحدة عند التشغيل
void setup() {
pinMode(alarm, OUTPUT); // ضبط طرف الإنذار كخرج
pinMode(smokeLevel, INPUT); // ضبط طرف حساس الدخان كمدخل
Serial.begin(9600); // بدء الاتصال مع Serial Monitor لمراقبة القيم
}
// الحلقة الرئيسية: تعمل بشكل مستمر
void loop() {
int sensorVal = analogRead(smokeLevel); // قراءة القيمة التناظرية من حساس الدخان
Serial.println(sensorVal); // طباعة القيمة المقروءة على Serial Monitor
// التحقق من مستوى الدخان
if (sensorVal > 512) { // إذا كانت القراءة أكبر من 512 (مستوى مرتفع للدخان)
tone(alarm, 2000, 200); // تشغيل الإنذار الصوتي بتردد 2000 هرتز لمدة 200 مللي ثانية
} else { // إذا كانت القراءة أقل من أو تساوي 512 (مستوى طبيعي)
noTone(alarm); // إيقاف الإنذار الصوتي
}
}
Gas Sensor