في هذا البرنامج التعليمي، سنستكشف كيفية إعداد خادم بث مخصص باستخدام لوحة التوسيع ESP32 من SunFounder. يتيح هذا المشروع لك بث فيديو مباشر إلى متصفحك بينما تتحكم أيضًا في LED مباشرة من الواجهة. هذه المجموعة من الميزات تجعل تجربة التعلم عملية مع تقنيات إنترنت الأشياء والويب.
سنستخدم قدرات الواي فاي المدمجة في ESP32 لإنشاء خادم ويب يقوم ببث الفيديو ويتعامل مع أوامر التحكم في LED. يتضمن المشروع البرمجة والأسلاك وفهم كيفية تفاعل المكونات. إذا كنت ترغب في فهم أفضل للإعداد، تأكد من مشاهدة الفيديو في (في الفيديو عند 00:00).
شرح الأجهزة
تشمل المكونات الرئيسية لهذا المشروع وحدة التحكم الدقيقة ESP32، وحدة كاميرا، مصباح LED، ومقاومة. يعتبر ESP32 وحدة تحكم دقيقة متعددة الاستخدامات مع واي فاي وبلوتوث مدمجين، مما يجعله مثالياً لتطبيقات إنترنت الأشياء. تتيح لنا وحدة الكاميرا التقاط الفيديو، بينما يوفر مصباح LED جهاز إخراج بسيط للتحكم.
تم توصيل الصمام الثنائي الباعث للضوء (LED) عبر مقاومة لتحديد التيار، مما يمنع التلف لكل من الصمام والثمانية ميكروكنترولر. ستتيح لنا هذه الإعدادات تشغيل وإيقاف الصمام عبر واجهتنا على الويب، مما يبرز قدرات ESP32 في التعامل مع المدخلات والمخرجات عبر الشبكة.
تفاصيل ورقة البيانات
الصانع
إسبريفي
رقم القطعة
ESP32-WROOM-32
جهد المنطق/الإدخال والإخراج
٣.٣ فولت
جهد المصدر
٣.٠-٣.٦ ف
تيار الخرج (لكل قناة)
12 مللي أمبير
القيمة القصوى للتيار (لكل قناة)
٤٠ مللي أمبير
توجيه تردد PWM
1 كيلوهرتز
عتبات منطق الإدخال
0.2 فولت (منخفض) / 0.8 فولت (مرتفع)
انخفاض الجهد / Rدياس(on)/ التشبع
0.2 فولت (تقريباً)
الحدود الحرارية
أقصى درجة حرارة للتقاطع: 125 °م
حزمة
QFN48
ملاحظات / متغيرات
متوفر بعدة تكوينات
تأكد من أن ESP32 مزود بالطاقة من مصدر 3.3 فولت المنظم.
استخدم مقاومة محددة للتيار (220 أوم) مع LED لمنع التلف.
حافظ على اتصالات صحيحة لتجنب المدخلات الطافية.
تحقق من أن بيانات اعتماد الواي فاي صحيحة حساسة لحالة الأحرف.
استخدم مصدر طاقة ثابت لأداء مستمر.
اعتبر تبديد الحرارة في المساحات المغلقة.
تعليمات التوصيل
esp32-45-streaming-sever-wriing
لتوصيل ESP32 والـ LED، ابدأ بتوصيل الطرف الأطول من الـ LED إلى دبوس GPIO مناسب، وفي هذه الحالة سنستخدم الدبوس 14. يجب توصيل الطرف الأقصر بخط الأرض على لوحة الدائرة. بعد ذلك، ضع مقاومة 220 أوم متصلة بالتسلسل مع الـ LED، وقم بتوصيل أحد طرفيها بالدبوس GPIO (الدبوس 14) والطرف الآخر بالأرض. تأكد من أن الـ ESP32 مُزود بالطاقة بشكل صحيح، إما من خلال منفذ micro USB أو باستخدام بطارية ليثيوم 18650.
بالنسبة لوحدة الكاميرا، تأكد من توصيل الدبابيس اللازمة وفقًا لطراز الكاميرا الذي تستخدمه، حيث قد تختلف أسلاك التوصيل قليلاً. سيتولى ESP32 معالجة تدفق الفيديو عبر إمكانياته المدمجة، وسيتم إدارة التحكم في LED من خلال واجهة الويب التي سنقوم بإنشائها في الكود.
أمثلة الشيفرة والإرشادات
يبدأ البرنامج بإدراج المكتبات الضرورية وتحديد بيانات اعتماد الواي فاي. ستحتاج إلى استبدالssidوpasswordبمعلومات اعتماد الواي فاي الخاصة بك للاتصال بشبكة الـ ESP32.
بعد ذلك، نحدد دبوس LED ونقوم بضبط إعدادات الكاميرا. يتم تعريف الدبوس المستخدم لـ LED على أنهLED_PIN، الذي سيستخدم لاحقًا في الكود للتحكم في حالة LED.
#define LED_PIN 14
pinMode(LED_PIN, OUTPUT);
في معالج الطلبات للتحكم في LED، نتحقق من الأمر المستلم من واجهة الويب. بناءً على ما إذا كان الأمر "تشغيل" أو "إيقاف"، نستخدمdigitalWrite(LED_PIN, 1);لتشغيل LED وdigitalWrite(LED_PIN, 0);لإيقاف تشغيله.
تسمح هذه المنطقية لواجهة الويب بالتواصل بشكل فعال مع ESP32، مما يمكّن التحكم في LED في الوقت الحقيقي استناداً إلى تفاعلات المستخدم. يتم تحميل الكود الكامل أسفل المقال لمزيد من الاستكشاف.
عرض / ماذا تتوقع
بمجرد إعداد كل شيء وتحميل الكود، يجب أن تتمكن من الوصول إلى عنوان IP الخاص بـ ESP32 في متصفح الويب الخاص بك. ستظهر الفيديوهات المتدفقة، ويمكنك التحكم في LED باستخدام الأزرار الموجودة على الواجهة. النقر على "تشغيل" سيضيء LED، بينما "إيقاف" ستطفئه. تأكد من أن ESP32 وجهاز الكمبيوتر الخاص بك متصلان بنفس الشبكة لضمان الوظائف الصحيحة (في الفيديو في 12:30).
طوابع الفيديو الزمنية
00:00 بدء
1:51 مقدمة للمشروع
:31 صفحة الوثائق
3:33 شرح الأسلاك
5:08 شرح كود آردوينو
اختيار لوحة ESP32 ومنفذ COM في Arduino IDE
15:10 عرض
الصور
ESP32-40-micro-sd-card-2
esp32-45-streaming-sever-wriing
ESP32-40-micro-sd-card-2
esp32-45-streaming-sever-wriing
846-ESP32 Tutorial 45/55- Arduino code for Custom Streamign Server