مشروع لتنبيه المكفوفين لمعرفة شدة الإضاءة المحيطة اكتب تعليقُا

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

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

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

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

  • اردوينو اونو مع سلك توصيل Arduino Uno: عدد 1
  • موديول الحساس الضوئي LDR Module: عدد 1
  • محرك هزاز الهاتف المحمول المسطح 1034 Mobile Phone Vibrator Motor: عدد 1
  • جرس 5 فولت طنان Active Buzzer: : عدد 1
  • لوح تجارب 400 نقطة لون ابيض Solderless Breadboard: عدد 1
  • أسلاك توصيل من ذكر إلى أنثى 40 دبوس 20 سم wires 40pcs Male to Female
  • أسلاك توصيل ذكر لذكر 40 قطعة 20 سم Male to Male jumper wires

مخطط المشروع

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

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

int LDR_Pin = A0;
int Buzzer_Pin = 10;
int Vibration_Pin = 9;

void setup() {
pinMode(LDR_Pin, INPUT);
pinMode(Buzzer_Pin, OUTPUT);
pinMode(Vibration_Pin, OUTPUT);
Serial.begin(9600);
}

void loop() {
int lightLevel = analogRead(LDR_Pin);
Serial.print(“Light Level: “);
Serial.println(lightLevel);

// تحديد مستوى الإضاءة
if (lightLevel > 800) {
Serial.println(“ضعيفة الإضاءة”);
tone(Buzzer_Pin, 100); // نغمة عالية للصفارة
analogWrite(Vibration_Pin, 10); // كثافة اهتزاز منخفضة
} else if (lightLevel > 300) {
Serial.println(“متوسطة الإضاءة”);
tone(Buzzer_Pin, 500); // نغمة متوسطة للصفارة
analogWrite(Vibration_Pin, 128); // كثافة اهتزاز متوسطة
} else {
Serial.println(“شديدة الإضاءة”);
tone(Buzzer_Pin, 1000); // نغمة منخفضة للصفارة
analogWrite(Vibration_Pin, 255); // كثافة اهتزاز عالية
}

delay(1000); // تأخير لتحديث القراءات كل ثانية
}

اترك تعليقاً

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