در این آموزش، به چگونگی راهاندازی یک سرور استریمینگ سفارشی با استفاده از بورد افزونه ESP32 از SunFounder میپردازیم. این پروژه به شما اجازه میدهد ویدیو زنده را به مرورگر خود استریم کنید و در عین حال یک LED را بهطور مستقیم از رابط کنترل کنید. این ترکیب از ویژگیها تجربه یادگیری عملی با فناوریهای اینترنت اشیاء و وب را ممکن میسازد.
ما از قابلیتهای Wi-Fi داخلی ESP32 استفاده خواهیم کرد تا یک سرور وب ایجاد کنیم که ویدئو را پخش کرده و دستورات کنترل LED را مدیریت کند. این پروژه شامل برنامهنویسی، سیمکشی و درک نحوه تعامل اجزا است. اگر میخواهید درک روشنی از تنظیمات داشته باشید، حتماً ویدئو را در (در ویدئو در :00) تماشا کنید.
سختافزار توضیح داده شده
اجزای اصلی این پروژه شامل میکروکنترلر ESP32، ماجیول دوربین، یک LED و یک مقاومت است. ESP32 یک میکروکنترلر چندکاره با Wi-Fi و بلوتوث داخلی است که آن را برای برنامههای اینترنت اشیا مناسب میسازد. ماجیول دوربین به ما امکان ضبط ویدئو را میدهد، در حالی که LED یک دستگاه خروجی ساده برای کنترل فراهم میکند.
LED از طریق یک مقاومت به نوعی متصل شده است که جریان را محدود میکند و از آسیب به LED و میکروکنترلر جلوگیری میکند. این طرح به ما امکان میدهد تا LED را از طریق رابط وب خود روشن و خاموش کنیم و قابلیتهای ESP32 را در مدیریت ورودیها و خروجیها از طریق یک شبکه نمایش دهیم.
جزئیات برگ اطلاعات
تولید کننده
اسپرسیف
شماره قطعه
ESP32-WROOM-32
ولتاژ منطقی/ورودی و خروجی
۳.۳ ولت
ولتاژ تأمین
3.0-3.6 ولت
جریان خروجی (به ازای هر کانال)
۱۲ میلی آمپر
جریان اوج (به ازای هر کانال)
40 میلیآمپر
راهنمایی فرکانس PWM
1 کیلوهرتز
آستانههای منطقی ورودی
۰.۲ ولت (کم) / ۰.۸ ولت (زیاد)
افت ولتاژ / RDS(on)سهم اشباع
0.2 ولت (معمولی)
محدودیتهای حرارتی
حداکثر دمای تقاطع: ۱۲۵ درجه سانتیگراد
بسته
QFN48
یادداشتها / انواع
در پیکربندیهای مختلف در دسترس است
اطمینان حاصل کنید که ESP32 با منبع تغذیه پایدار ۳.۳ ولت تأمین میشود.
از یک مقاومتی که محدود کننده جریان است (۲۲۰ اهم) به همراه LED استفاده کنید تا از آسیب جلوگیری شود.
اتصالات مناسب را حفظ کنید تا از ورودیهای شناور جلوگیری شود.
اطمینان حاصل کنید که مشخصات Wi-Fi صحیح و حساس به حروف بزرگ و کوچک است.
از یک منبع برق پایدار برای عملکرد ثابت استفاده کنید.
انتشار حرارت در فضاهای محصور را در نظر بگیرید.
دستورالعملهای کابلکشی
esp32-45-streaming-sever-wriing
برای اتصال ESP32 و LED، ابتدا پایه بلند LED را به یک پایه GPIO مناسب وصل کنید، در این مورد، از پایه 14 استفاده خواهیم کرد. پایه کوتاه باید به خط زمین در بورد سوراخ دار شما متصل شود. سپس یک مقاومت 220 اهمی را به صورت سری با LED قرار دهید و یک سر آن را به پایه GPIO (پایه 14) و سر دیگر را به زمین وصل کنید. مطمئن شوید که ESP32 به درستی تأمین برق شده است، چه از طریق پورت میکرو USB یا با استفاده از باتری لیتیومی 18650.
برای ماجیول دوربین، اطمینان حاصل کنید که پایههای لازم را طبق مدل دوربینی که استفاده میکنید متصل کنید، زیرا کابلکشی ممکن است کمی متفاوت باشد. ESP32 جریان ویدئو را از طریق قابلیتهای داخلی خود مدیریت خواهد کرد و کنترل LED از طریق رابط وبی که در شِفر (کود) تنظیم خواهیم کرد، انجام خواهد شد.
نمونههای شِفر (کود) و راهنمایی
این برنامه با شامل کردن کتابخانههای ضروری و تعریف اعتبارنامههای Wi-Fi آغاز میشود. شما باید جایگزین کنیدssidوpasswordبا اطلاعات واقعی Wi-Fi خود برای اتصال 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 را با استفاده از دکمههای روی رابط کنترل کنید. کلیک کردن بر روی "ON" LED را روشن میکند، در حالی که "OFF" آن را خاموش میکند. مطمئن شوید که ESP32 و رایانه شما به یک شبکه متصل هستند تا عملکرد صحیح تضمین شود (در ویدئو در 12:30).
زمانبندی ویدیو
۰۰:۰۰ شروع
۱:۵۱ مقدمهای بر پروژه
صفحه مستندات 2:31
۳:۳۳ توضیح سیمکشی
شِفر (کود) آردوینو توضیح داده شده 5:08
انتخاب برد ESP32 و پورت COM در محیط برنامهنویسی آردوینو :28
۱۵:۱۰ نمایش
تصاویر
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