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

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

في هذا الدليل، سنستخدم المتحكم الدقيق SunFounder ESP32 لإنشاء مشروع بسيط يكشف الميل باستخدام مفتاح الميل. عندما يتم تنشيط مفتاح الميل، ستطفئ LED، وعندما يكون في وضعه العمودي، ستضيء LED. لا يعتبر هذا المشروع مقدمة رائعة للعمل مع مستشعرات الميل فحسب، بل يشكل أيضًا أساسًا لمجموعة متنوعة من تطبيقات الروبوتات. لمشاهدة دليل مرئي مفصل، تأكد من الاطلاع على الفيديو المرتبط أعلاه (في الفيديو عند :00).

مفتاح الميل

شرح الأجهزة

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

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

المصنع سان فاوندر
رقم الجزء ESP32
جهد المنطق/الإدخال والإخراج ٣.٣ فولت
جهد الإمداد 5 فولت
تيار الإخراج (لكل قناة) 12 مللي أمبير
التيار الأقصى (لكل قناة) 40 مللي أمبير
إرشادات تردد PWM 1 كيلوهرتز
عتبات منطق الإدخال 0.8 فولت (منخفض)، 2.0 فولت (مرتفع)
انخفاض الجهد / Rدي إس (أون)/ تشبع 0.2 فولت
الحدود الحرارية 85 درجة مئوية
حزمة وحدة ESP32
ملاحظات / متغيرات يتضمن قدرات الواي فاي والبلوتوث

  • تأكد من استخدام قيم مقاومات مناسبة لمنع تلف الصمام الثنائي الباعث للضوء (LED).
  • احتفظ بتوصيل الأسلاك بشكل مرتب لتجنب الدوائر القصيرة.
  • استخدم مقاومات السحب لأسفل لضمان قراءات ثابتة من مفتاح الميل.
  • اختبر الاتصالات قبل تشغيل الدائرة لتجنب فشل المكونات.
  • تحقق من اتجاه مفتاح الميل لضمان الوظائف الدقيقة.

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

ESP32-18_tile_wiring

لتوصيل المكونات، ابدأ بمفتاح الإمالة، الذي لا يحتوي على قطبية، لذا يمكن توصيله في أي اتجاه. وصل أحد دبابيس مفتاح الإمالة بمصدر 3.3 فولت والدبوس الآخر بالدبوس 14 على ESP32. لضمان قراءة الدبوس 14 حالة معروفة عندما لا يكون المفتاح مفعلًا، قم بتوصيل مقاومة بقيمة 10 كيلو أوم من نفس الدبوس إلى الأرض. بعد ذلك، خذ LED وأدخله في لوحة الخبز مع الساق الأطول (الأنود) متصلة بمقاومة بقيمة 220 أوم. وصل الطرف الآخر من المقاومة بالدبوس 26 على ESP32. يجب توصيل الساق الأقصر (الكاثود) من LED بالأرض. أخيرًا، قم بتوصيل دبوس الأرض على ESP32 بسكة الأرض في لوحة الخبز ودبوس 3.3 فولت بسكة الطاقة. تأكد من مراجعة جميع التوصيلات لمنع أي دوائر قصيرة أو قراءات غير صحيحة. إذا اتبعت هذه الخطوات، يجب أن يكون لديك إعداد حساس إمالة جاهز للبرمجة.

أمثلة على الكود وجولة توضيحية

يبدأ الكود بتعريف أرقام الدبابيس للمفتاح المائل ولمبة LED. يتم توصيل المفتاح المائل بالدبوس 14، ويتم توصيل لمبة LED بالدبوس 26. يتم تخزين حالة المفتاح المائل في المتغيرtiltState.


// Set pin numbers
const int tiltPin = 14;  // Tilt Switch
const int ledPin = 26;   // LED

// Variable for storing the tilt status
int tiltState = 0;

تظهر هذه الفقرة تخصيصات الدبابيس وإعلان المتغير الذي سيتعقب حالة الميل.tiltPinيتم تعيينه كمدخل لقراءة حالة المفتاح. في الـsetup()يتم تهيئة الاتصال التسلسلي، ويتم تعيين أوضاع الدبابيس لمفتاح الإمالة ومصباح LED. يضمن ذلك أن ESP32 يمكنه قراءة الإدخال من مفتاح الإمالة والتحكم في مصباح LED وفقًا لذلك.


void setup() {
  Serial.begin(115200);
  // Initialize the tilt pin as an input
  pinMode(tiltPin, INPUT);
  // Initialize the LED pin as an output
  pinMode(ledPin, OUTPUT);
}

هذه الفقرة هامة لأنها تُعد البيئة، مما يسمح لـ ESP32 بالتواصل بفعالية والتحكم في المخرجات بناءً على حالة مفتاح الميل.loop()تقوم الدالة بالتحقق باستمرار من حالة مفتاح الميل. إذا كان المفتاح عموديًا، ستضيء الصمام الثنائي الباعث للضوء؛ وإذا كان مائلًا، سيطفئ الصمام. يتم طباعة الحالة الحالية على الشاشة التسلسلية لأغراض التصحيح.


void loop() {
  // Read the state of the tilt switch
  tiltState = digitalRead(tiltPin);

  Serial.println(tiltState);
  // If the switch is upright
  if (tiltState == HIGH) {
    // Turn LED on
    digitalWrite(ledPin, HIGH);
  } else {
    // Turn LED off
    digitalWrite(ledPin, LOW);
  }
}

يستمر هذا الحلقة في العمل باستمرار، مما يسمح بالمراقبة في الوقت الفعلي لحالة مفتاح الميل والتحكم في مصباح LED المقابل. يمكن ملاحظة الإخراج في شاشة السيريال، مما يسهل التحقق من الوظائف.

عرض / ما يمكن توقعه

بمجرد توصيل كل شيء بشكل صحيح وتحميل الكود، يجب أن ترى LED تضيء عندما يكون مفتاح الميل في الوضع العمودي، وسيتم إيقاف تشغيله عند الميل. تُظهر هذه العلاقة المباشرة بين حالة الميل واستجابة LED فعالية وظيفة مفتاح الميل. تشمل الأخطاء الشائعة التأكد من صحة التوصيلات والتحقق من أن المقاومات موضوعة بشكل مناسب لتجنب الدوائر القصيرة (في الفيديو عند 12:00).

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

  • 00:00 بداية
  • مقدمة المشروع 1:44
  • 2:49 الوثائق
  • شرح توصيل Arduino 6:43
  • 10:39 شرح كود أردوينو
  • اختيار لوحة ESP32 و COM البورت على Arduino IDE الساعة 13:40
  • :22 عرض مشروع تيلت

الصور

ESP32-18_tile_wiring
ESP32-18_tile_wiring
tilt_switch
tilt_switch
ESP32-18_tile_schematic
ESP32-18_tile_schematic
817-ESP32 Tutorial 18/55- Arduino code for tilt sensor
اللغة: C++
تم النسخ!

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

ملفات📁

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