راه اندازی دوربین وای با فای با ESP32-CAM (پخش اینترنتی)
سلام. آموزش راه اندازی پروژه دوربین وای فای با IoT (پخش زنده اینترنتی با ESP32-CAM) را آماده کرده ایم. فیلم عملکرد مدار را ببینید !
محتویات
پروژه راه اندازی دوربین وای با فای باIoT
در این پروژه IoT ما یک دوربین را راه اندازی کردیم و با استفاده از آن یک زنگ درب هوشمند مبتنی Wi-Fi استفاده ساخته ایم. در این پروژه هر بار در که دکمه فشار داده شود، آهنگ خاصی در گوشی شما پخش میشود. و یک پیغام برای شما ارسال میشود که لینک مشاهده تصویر زنده در آن قرار داده شده است.
مدار این پروژه بسیار ساده است، فقط کافی است دو LED ، یک دکمه فشار و یک بازر را به پین های ESP32 GPIO وصل کنید. هر وقت دکمه را فشار دهید بازر فعال میشود. از یک LED برای نشان دادن وضعیت روشن و خاموش بودن استفاده می شود و ال ای دی دیگر برای نشان دادن وضعیت اتصال به شبکه استفاده می شود.
پیشنهاد میکنم قبل از خواندن ادامه مطلب، مقاله آموزش برنامه نویسی ESP32 را بخوانید.
همچنین اگر میخواهید الکترونیک را با فیلم های آموزشی یاد بگیرید، روی دوره آموزش الکترونیک کلیک کنید.
قطعات مورد نیاز پروژه
- برد ESP32-CAM
- مبدل 220 به 5 ولت
- ال ای دی – 2 عدد
- دکمه
- بازر
نحوه پیاده سازی سیستم آیفون تصویری در سایت IFTTT
شما در ابتدا باید یک حساب کاربری در سایت IFTTT ایجاد کنید : کلیک کنید !
مرحله اول : ابتدا در قسمت Services روی Webhooks و سپس روی Documentation کلیک کنید و Key خود را کپی کنید.
مرحله دوم : روی آیکون پروفایل در بالای صفحه کلیک کنید. سپس گزینه Create را انتخاب کنید. پسس در صفحه ای که باز میشود روی دکمه +This کلیک کنید. در این جا webhooks را سرچ کنید و سپس روی آیکون webhooks کلیک کنید !
مرحله سوم : در قسمت choose trigger option روی “receive a web request” کلیک کنید.
سپس در اینجا باید یک نام انتخاب کنید. ما به طور مثال از “button_pressed” استفاده کردیم. توجه داشته باشید نمیتوانید از اسپیس استفاده کنید.
همچنین ببینید : پروژه IoT سنسور حرکت با هشدار در موبایل با ماژول ESP8266
مرحله چهارم : سپس روی دکمه +That کلیک کنید. در این قسمت عبارت Android را سرچ کنید و Android Device را انتخاب کنید. سپس در قسمت Choose Action ، گزینه Play a specific song را انتخاب کنید.
حالا نام موزیکی که میخواهید پخش کنید را وارد کنید. من 123 را انتخاب کردم که در گوشی ام دارم. شما میتوانید آهنگ دیگری انتخاب کنید. سپس روی ‘Create action’ و سپس روی ‘Finish’ کلیک کنید.
مرحله پنجم : حالا دوباره در قسمت ‘this’ بروید به ‘Webhooks’ و در ‘that’ روی ‘Android SMS’ کلیک کنید. در این قسمت شماره و متن پیام را تنظیم میکنید. ما لینک پخش زنده تصویر را در پیام قرار میدهیم.
توضیحات کد پروژه
کد نویسی این پروژه در نرم افزار آردوینو انجام شده است.
در ابتدا مثل همیشه کتابخانه های مورد نیزا را فراخوانی میکنیم :
#include "esp_camera.h" #include <WiFi.h>
در این قسمت نام و پسورد وای فای خود را وارد میکنیم :
const char* ssid = "Wi-Fi Name"; // نام وای فای const char* password = "Wi-Fi Password"; // پسورد وای فای
در این قسمت ما به IFTTT متصل میشویم، شما در خط دوم باید Key را که در مرحله اول دریافت کردید را وارد کنید.
const char *host = "maker.ifttt.com"; const char *privateKey = "Your Private Key"; // محل قرار دادن Key
در این قسمت پین ها را مشخص میکنیم :
const int buttonPin = 2; // پین دکمه const int led1 = 14; // پین ال ای دی const int buzzer = 15; // پین بازر
در این قسمت نیز نوع پین های مشخص شده را تعریف میکنیم :
void setup() { pinMode(buttonPin, INPUT); // پین دکمه به عنوان ورودی pinMode(led1, OUTPUT); // پین ال ای دی به عنوان خروجی pinMode(buzzer, OUTPUT); // پین بازر به عنوان خروجی
در این قسمت ما دستور میدهیم هنگامی که وای فای متصل شد ال ای دی را روشن کند :
Serial.println(""); Serial.println("WiFi connected"); digitalWrite(led1, HIGH); // روشن کردن ال ای دی
در این قسمت برعکس قسمت قبل یعنی هنگامی که وای فای قطع شد ال ای دی خاموش شود :
while (WiFi.status() == WL_DISCONNECTED) { ESP.restart(); digitalWrite(led1, LOW); // خاموش کردن ال ای دی Serial.print("Connection Lost"); // در صورت قطع ارتباط با وای فای
در این قسمت هم کد های زمانی که دکمه فشار داده میشود را بررسی میکنیم :
int reading = digitalRead(buttonPin); if (buttonState == LOW) { send_event("button_pressed"); // در صورت فشرده شدن دکمه Serial.print("button pressed"); digitalWrite(buzzer, HIGH); // فعال شدن بازر delay(3000); // به مدت 3 ثانیه digitalWrite(buzzer, LOW); // سپس خاموش شدن بازر
موارد موجود در فایل : شماتیک ، فایل Hex ، فایل آردوینو ، و …
سلام. خسته نباشید.
اینا باید توی یک شبکه باشن. راهی هست با دو شبکه متفاوت یعنی از منزل ، محل کار را چک کرد؟
سلام جناب. بله باید در یک شبکه باشند.
سلام
ببخشید من نمی دونم بعد از متصل کردن مدار منبع تغذیه رو به کدوم پین ها وصل کنم اگه میشه راهنمایی کنید شماتیکش رو بگید.
سلام جناب. تصویر شماتیک مدار در فایل دانلودی موجود هست بررسی بفرمایید.
بله دانلود کردم منتها تو اون شماتیک فقط کلید و بازر و ال ای دی و خود ماژول و FTDI هست منتها بعد متصل کردن اینا و نوشتن برنامه تو آردوینو و … نمیدونم اینو به چی وصل کنم که روشن شه ( برق ، باتری ، … )
یکم مبتدی هستم واس همین می پرسم
ابتدا آموزش برنامه نویسی برد ESP32 رو مشاهده کنید.
آقای مهندس ببینید من همه این مراحل رو انجام دادم ، منظورم اینه که ماژول تا وقتی کار میکنه که به لب تاب متصل باشه ، من می خوام از لب تاپ جداش کنم و به یه ولتاژ وصل کنم اینو نمیدونم چیکار کنم مثلا قبلا پس از اتمام کار با آردوینو از سیستم جدا میشد و آداپتور متصل میشد . تو ویدیو که گذاشتن کل مدار توسط سیم به یه منبع وصل شده من دقیقا اونجاشو متوجه نمیشم . ممنون میشم کمک کنید
تصویر زیر پین های ESP32 CAM رو نمایش میده.

از پین 5 ولت و GND میتونید برای تغذیه استفاده کنید.
سلام
اگرمستقیم برد رو به کامپیوتر متصل کنم هیچ پورتی نمی شناسه ولی با FTDIکارهایی انجام میده ولی ادرسip وخروجی های برنامه توش نیست اما کماکان ایمیل ارسال میشه
متنی که انگلیسیه و در قسمت اس ام اس نوشته شده رو به صورت کامل توی متنی که برای ایمیل تنظیم میکنید بنویسید
سلام
ببخشید مدتی کار نکردم
متنی که انگلیسیه و در قسمت اس ام اس نوشته شده رو به صورت کامل توی متنی که برای ایمیل تنظیم کرده بودم مطابق توصیه شما نوشتم ایمیل ارسال میشود انهم یکبار وباتاخیر چند ساعته با متن زیر:
The event named “pressed_button” occurred on the Maker Webhooks service
When: pressed_button
Extra Data: send SMS to 989132213100
اما مشکل اصلی هنوز ارسال نشدن اس ام اس است
حتی پروژه IoT سنسور حرکت با هشدار در موبایل را هم انجام دادم حرکت سنس می شودو روی بورت سریال مشاهده میگردد اما اس ام اس ارسال نمیشود
سلام. دقت کنید شما باید آیپی وب سرور خودتون رو در ایمیل ارسالی قرار بدید. یعنی در کل نیازی به این قضیه نیست شما بدون اینکه توی ایمیل براتون ارسال بشه میتونید آیپی رو وارد کنید. شما باید از سریال مانیتور آدرس آیپی وب سرور خودتون رو بردارید و توی ایمیل قرار بدید. و دستگاه مورد استفاده شما و ESp32 باید به یک شبکه وایفای متصل باشند. اگر ایمیل دیر کار میکنه شما میتونید از اپلیکیشن موبایل IFTTT استفاده کنید و بجای ارسال ایمیل، ارسال ناتفیکشن به موبایل رو تنظیم کنید.
سلام از همکاری صمیمانه تان
راستش متوجه نشدم تصویری که جدید گذاشتید کجاست خودم شماره راتغییر دادم اس ام اس جواب نداد ولی برای ایمیل تنظیم کردم ایمیل ارسال شد اما در ایمیل دریافتی آیپی ندیدم چون مطابق تصویر شما نبوده ولی بهر حال ایمیلش جواب داد
برد رو به کامپیوتر متصل کنین. و بعد از زدن کلید چک کنید در سریال مانیتور آیا آیپی مشاهده میشه یا خیر. اگر آیپی بود در مرورگرتون اون رو وارد کنید
سلام
انجام دادم ایمیل ارسال شد(فقط یکبار)وحق با شما بودIFTTT به ایران اس ام اس نمیفرسته چه کنم؟
ممنون
در ایمیل آدرس آیپی بود و با زدن روش تونستید تصویر رو ببینید ؟
سلام
ifttt webhookمن ایتم انتخاب صدا نداره هر چه گشتم ایتمی که گفته بودید نبود(Play a specific song)
ممنون
یک تصویر دیگه در پست قرار گرفت چک کنید. شمارتون رو به دو صورت 981111111111 و +981111111111 قرار بدید. متن پیام رو مانند چیزی که در تصویر نشون داده شده قرار بدید. اگر جواب نگرفتید از قسمت ارسال ایمیل استفاده کنید تا تست کنید اگر ایمیل دریافت کردید یعنی IFTTT به ایران اس ام اس نمیفرسته و در صورت عدم دریافت ایمیل مشکل از جای دیگست
سلام وتشکر از بروژه خوبتان
من این بروژه را با انجام دادم ماژول اماده شد اما جواب نمیدهدال ای دی شبکه روشن می شود ولی وقتی بایه ۲ زمین می شود هیچ عکس العملی مشاهده نمی شودالبته برنامه گوشی هم بدرستی نصب شده فقط ایتم بازر را نداشت
ممنون احمدرضا علیخانی
سلام. صدایی برای زنگ تعریف کردید ؟ آیا صدا شنیده میشه ؟
عزیز فایلت خرابه چیکار کنیم
سلام. فایل خراب نیست تازه پروژه رو قرار دادیم. با winrar باز کنید.