مواجهة مستشعر المسافة بالأشعة تحت الحمراء GP2Y0A21YK0F مع اردوينو اكتب تعليقُا

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

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

  • في هذا المشروع، سنستخدم حساس الأشعة تحت الحمراء (GP2Y0A41SK0F) لقياس المسافة إلى جسم معين.
  • سنحاول قياس المسافة من (4~30 سم).
  • سيتم عرض النتائج على شاشة Serial Monitor
  • لفتح شاشة Serial Monitor: اختر Tools ثم Serial Monitor

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

  • اردوينو اونو مع سلك توصيل Arduino Uno: عدد 1
  • GP2Y0A21YK0F مستشعر المسافة بالأشعة تحت الحمراء مع كابل: عدد 1
  • أسلاك توصيل ذكر لذكر 40 قطعة 20 سم Male to Male jumper wires
  • اسلاك توصيل تمساح 10 حبات Alligator Clips Electrical

مخطط المشروع

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

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

#include <SharpIR.h>

#define ir A0
#define model 20150
// ir: the pin where your sensor is attached
// model: an int that determines your sensor: 1080 for GP2Y0A21Y
// 20150 for GP2Y0A02Y
// (working distance range according to the datasheets)

SharpIR SharpIR(ir, model);

void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
}

void loop() {
delay(2000);

unsigned long pepe1=millis(); // takes the time before the loop on the library begins

int dis=SharpIR.distance(); // this returns the distance to the object you’re measuring

Serial.print(“Mean distance: “); // returns it to the serial monitor
Serial.println(dis);

unsigned long pepe2=millis()-pepe1; // the following gives you the time taken to get the measurement
Serial.print(“Time taken (ms): “);
Serial.println(pepe2);

}

اترك تعليقاً

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