دليل ESP32 19/55 - كشف العوائق باستخدام مستشعر الأشعة تحت الحمراء | مجموعة تعلم إنترنت الأشياء ESP32 من SunFounder

دليل ESP32 19/55 - كشف العوائق باستخدام مستشعر الأشعة تحت الحمراء | مجموعة تعلم إنترنت الأشياء ESP32 من SunFounder

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

سنقوم بالعمل مع مجموعة تعليم إنترنت الأشياء SunFounder ESP32، التي تشمل المتحكم الدقيق ESP32 المزود بتقنيات الواي فاي والبلوتوث. يعمل جهاز الاستشعار بالأشعة تحت الحمراء عن طريق إرسال ضوء الأشعة تحت الحمراء، الذي ينعكس عن العقبات القريبة. عندما ينعكس الضوء مرة أخرى، سيقوم المستشعر بتفعيل إشارة خرج سنقوم بقراءتها في كودنا. سنقوم أيضًا بتضمين جرس ينشط عند اكتشاف عقبة، مما يوفر تنبيهًا مسموعًا.

تم شرح الأجهزة

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

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

تفاصيل ورقة البيانات

مصنعسانفاوندر
رقم القطعةمستشعر تجنب العقبات بالأشعة تحت الحمراء
جهد التشغيل3.3 فولت - 5 فولت
نوع الإخراجرقمي (منخفض عند اكتشاف العقبة)
نطاق الكشفحتى 20 سم
وقت الاستجابةأقل من 10 مللي ثانية
حزمةوحدة

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

تعليمات التوصيل

ESP32-19-obstacle_voide-wiring

لتوصيل مستشعر تجنب العقبات بالأشعة تحت الحمراء إلى ESP32، ابدأ بتوصيل دبوس VCC من المستشعر بدبوس 5V على ESP32. بعد ذلك، قم بتوصيل دبوس GND من المستشعر بأحد دبابيس GND على ESP32. أخيرًا، قم بتوصيل دبوس OUT من المستشعر بدبوس GPIO 14 على ESP32.

لصفارة الإنذار، قم بتوصيل الطرف السالب بالأرض (GND) والطرف الموجب برقم دبابيس GPIO 27. تأكد من أن جميع التوصيلات آمنة وأن المستشعر مزود بالطاقة بشكل صحيح. يجب أن تكون التوصيلات بسيطة، حيث أن المستشعر والصفارة يحتاجان فقط إلى وصلات طاقة وإشارة بسيطة.

أمثلة الشفرات وشرح تفصيلي

في الشيفرة، نقوم أولاً بتعريف الدبوس المتصل بمستشعر تجنب العقبات. يتم ذلك باستخدام المعرف.avoidPinمحدد على 14. كما نعلن عن متغيرavoidStateلحفظ حالة خرج المستشعر.

const int avoidPin = 14;  // the number of the avoid module pin

int avoidState = 0;

في دالة الإعداد، نقوم بتهيئة الاتصال التسلسلي ونقوم بضبط الـavoidPinكمدخل. وهذا يمكّن ESP32 من قراءة حالة خرج المستشعر.

void setup() {
  Serial.begin(115200);  
  pinMode(avoidPin, INPUT);
}

داخل دالة الحلقة، نقوم بقراءة مخرجات المستشعر باستمرار باستخدامdigitalRead(avoidPin)وخزن النتيجة فيavoidStateتتم طباعة هذه القيمة بعد ذلك على وحدة المراقبة التسلسلية، مما يسمح لنا برؤية متى يتم اكتشاف عقبة (الإخراج سيكون 0) أو لا (الإخراج سيكون 1).

void loop() {
  avoidState = digitalRead(avoidPin);
  Serial.println(avoidState);
}

للحصول على الرمز الكامل، يرجى الرجوع إلى قسم التحميل أدناه المقال.

عرض / ماذا تتوقع

عند اكتمال الإعداد وتحميل الكود، يجب أن ترى شاشة السيريال تعرض إما 0 أو 1 اعتمادًا على ما إذا تم اكتشاف عائق. عندما يكون العائق ضمن نطاق الكشف، ستظهر القراءة 0، وستصدر الجرس الصوت. إذا تمت إزالة العائق، ستظهر القراءة 1، وسيتوقف الجرس. يتم توضيح هذه الوظيفة في الفيديو (في الفيديو عند 12:30).

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

الطوابع الزمنية للفيديو

  • :00 ابدأ
  • مقدمة المشروع ١:٥٧
  • 4:33 تجنب العقبات في الأسلاك
  • 5:55 كود أردوينو لتجنب العقبات
  • :36 اختيار لوحة ESP32 ومنفذ COM على Arduino IDE
  • ٩:١٨ عرض المشروع
  • 10:42 ضبط مدى زيادة الحساسية
  • 12:39 اتخاذ الإجراءات عند اكتشاف عقبة
  • :24 استخدام جرس إنذار عند اكتشاف عقبة

الصور

ESP32-19-obstacle_voide-schematic
ESP32-19-obstacle_voide-schematic
ESP32-19-obstacle_voide-wiring
ESP32-19-obstacle_voide-wiring
818-ESP32 Tutorial 19/55- Arduino code for obstacle avoidance module
اللغة: C++
تم النسخ!

الموارد والمراجع

ملفات📁

لا توجد ملفات متاحة.