ورکشاپ آموزشی - آیسی مدار
رفتن به محتوا

دوربین مداربسته وای‌فای با ESP32-CAM

ابزار و گجت
۰ نظر
۲۱ نفر
کد ۳۲۲۱

داشتن یه دوربین مداربسته هوشمند و وایرلس که خودت ساخته باشیش، دیگه یه کار پیچیده و سخت نیست. تو این پروژه از آیسی‌مدار قراره با استفاده از ماژول جذاب و ارزون‌قیمت ESP32-CAM، یه دوربین امنیتی خفن بسازیم. این دوربین هم می‌تونه تصویر رو به صورت زنده روی شبکه وای‌فای برات بفرسته و هم قابلیت این رو داره که ویدیوها رو مستقیم روی کارت حافظه (MicroSD) ذخیره کنه.

یکی از بهترین ویژگی‌های این دوربین دست‌ساز، داشتن قابلیت تشخیص حرکت یا همون Motion Detection هست. یعنی فقط وقتی کسی از جلوی لنز رد بشه، دستگاه شروع به ضبط می‌کنه تا فضای مموری‌کارتت الکی پر نشه. برای اینکه دوربینت کاملا قابل حمل و بی‌سیم باشه، یه پک باتری لیتیومی قوی و مدار شارژر هم براش در نظر گرفتیم تا بتونی هر جایی که پریز برق نیست، مثل حیاط، راهرو یا باغ نصبش کنی.

اگه دوست داری امنیت محیط اطرافت رو با دستای خودت تامین کنی و یه تجربه عالی از کار با بردهای ESP و اینترنت اشیا داشته باشی، این پروژه دقیقا برای توئه. پس قطعات و ابزارهات رو آماده کن تا قدم‌به‌قدم این سیستم امنیتی حرفه‌ای رو با هم بسازیم و راه‌اندازیش کنیم.

قطعات موردنیاز

  • ماژول ESP32-CAM به همراه سنسور دوربین 2 مگاپیکسلی OV2640
  • مبدل USB به سریال FTDI (برای برنامه‌ریزی ماژول) + سیم‌های جامپر مادگی به مادگی
  • کارت حافظه میکرو اس‌دی (حداقل 4 گیگابایت)
  • آنتن خارجی وای‌فای برای افزایش برد ماژول
  • ماژول شارژر باتری لیتیوم یون تک‌سلولی TP4056
  • 2 عدد باتری لیتیوم یون 18650 با ولتاژ 3.7 ولت (مثلا 2600 میلی‌آمپر)
  • کلید کشویی مینیاتوری SPDT (یا کلید الاکلنگی 3 آمپر)
  • مقداری سیم الکترونیکی نمره 24
  • ال‌ای‌دی قرمز 3 میلی‌متری
  • مقاومت 220 اهم
  • محفظه پلاستیکی استوانه‌ای (یا هر قابی که برای دوربین می‌پسندی)
  • پایه دیواری برای نصب دوربین (اختیاری)
مرحله ۱

برنامه‌ریزی و آپلود کد روی ESP32-CAM

برای شروع، باید کدهای مربوط به دوربین رو روی ماژول ESP32-CAM آپلود کنیم. ما تو این آموزش از سورس کد قدرتمند ESP32-CAM_MJPEG2SD استفاده می‌کنیم. فایل کد رو آماده کن تا بریم سراغ آماده‌سازی مدار برای برنامه‌ریزی.

چون برد ESP32-CAM پورت USB برای اتصال مستقیم به کامپیوتر نداره، باید از یه ماژول مبدل USB به سریال (مثل FTDI) استفاده کنی. سیم‌کشی‌ها رو دقیقا طبق تصویر بالا انجام بده. یه نکته خیلی مهم: برای اینکه ماژول بره تو حالت برنامه‌ریزی (Flash Mode)، حتما باید پین GPIO 0 رو با یه سیم جامپر به پین GND وصل کنی.

مرحله ۲

تنظیمات آردوینو و اضافه کردن بردهای ESP32

قبل از اینکه بخوایم با کدها درگیر بشیم، باید مطمئن بشیم که نرم‌افزار آردوینو (Arduino IDE) بردهای ESP32 رو می‌شناسه. برای این کار، نرم‌افزار آردوینو رو باز کن، به مسیر File > Preferences برو و لینک فایل json مخصوص بردهای ESP32 رو تو کادر Additional Boards Manager URLs قرار بده.

بعد از این کار، از قسمت Boards Manager پکیج بردهای ESP32 رو نصب کن. حتما چک کن که نسخه کتابخونه نصب‌شده حداقل 2.0.2 باشه تا موقع کامپایل کدها به مشکل نخوری.

مرحله ۳

تنظیمات کد برنامه و وارد کردن اطلاعات

کد دوربین امنیتی رو باز کن و پارامترهای لازم رو تغییر بده. اول مدل دوربینت رو انتخاب کن (اگه از برد معمولی استفاده می‌کنی، خط CAMERA_MODEL_AI_THINKER رو از حالت کامنت دربیار). بعدش اسم و رمز وای‌فای خونه‌ت رو وارد کن.

در نهایت اگه دوست داری ویدیوها رو از راه دور مدیریت کنی، اطلاعات FTP رو هم بنویس (البته این بخش کاملا اختیاریه). حواست باشه که این تنظیمات رو باید تو تب utils.cpp انجام بدی. خیلی‌ها اشتباها می‌رن سراغ تب myConfig و موقع آپلود ارور می‌گیرن، پس حواست به این تب باشه.

مرحله ۴

تنظیمات نهایی آردوینو و آماده‌سازی برای آپلود

تو منوی Tools آردوینو، مدل برد رو روی ESP32 Dev Module بذار. قسمت Partition Scheme رو روی گزینه Minimal SPIFFS تنظیم کن. حتما PSRAM رو فعال (Enable) کن و در نهایت پورت COM درست رو انتخاب کن.

حالا دکمه آپلود رو بزن. یادت باشه آپلود کد روی این برد ممکنه یه کم طول بکشه، پس صبور باش تا پیام موفقیت‌آمیز بودن آپلود رو ببینی.

مرحله ۵

آپلود کد و پیدا کردن آی‌پی دوربین

وقتی آپلود تموم شد، سیم جامپری که بین GPIO 0 و GND کشیده بودی رو جدا کن و دکمه ریست روی برد رو یه بار فشار بده. یه کارت حافظه MicroSD (حداقل 4 گیگابایت) هم تو شیار ماژول جا بزن. حالا سریال مانیتور آردوینو (دکمه بالا سمت راست) رو باز کن تا آدرس آی‌پی (IP) اختصاصی دوربینت رو پیدا کنی. این آدرس رو یه جا یادداشت کن.

مرحله ۶

ورود به پنل تحت وب دوربین

حالا که دوربینت روشنه و به شبکه وصل شده، مرورگر گوشیت یا کامپیوترت رو باز کن و اون آدرس آی‌پی که تو مرحله قبل یادداشت کردی رو وارد کن. یه پنل حرفه‌ای شبیه عکس بالا برات باز می‌شه.

یه ویژگی خیلی خفن این کد اینه که می‌تونی ضبط ویدیو رو به صورت دستی هم شروع و متوقف کنی. تو نسخه‌های قدیمی‌تر، دوربین فقط وقتی حرکت رو تشخیص می‌داد شروع به ضبط می‌کرد، اما الان کنترل کاملش تو دستای خودته.

مرحله ۷

بررسی محیط پنل تحت وب

تو این پنل حرفه‌ای، علاوه بر دیدن تصویر زنده با تاخیر خیلی کم، می‌تونی تنظیمات مختلف دوربین رو تغییر بدی، کیفیت تصویر رو مدیریت کنی و عملکرد سنسورها رو دقیقا مطابق نیازت تنظیم کنی.

مرحله ۸

اضافه کردن آنتن خارجی به ESP32-CAM

اگه می‌خوای دوربینت رو جایی دورتر از مودم نصب کنی، باید از آنتن خارجی استفاده کنی. برای این کار باید یه تغییر کوچیک روی برد بدی؛ اون مقاومت صفر اهمی که مسیر وای‌فای رو به آنتن داخلی برد وصل می‌کنه رو با هویه بردار و طوری لحیمش کن که مسیر به سمت سوکت آنتن خارجی (کانکتور U.FL) متصل بشه.

مرحله ۹

اتصال ماژول شارژر به باتری

حالا باید مدار تغذیه رو بسازیم. ماژول شارژر TP4056 رو بیار و پایه‌های B+ و B- روش رو دقیقا طبق تصویر به قطب‌های مثبت و منفی باتری لحیم کن. این ماژول وظیفه داره باتری‌ها رو به صورت اصولی و ایمن از طریق پورت MicroUSB شارژ کنه.

مرحله ۱۰

لحیم‌کاری پین‌ها و اضافه کردن ال‌ای‌دی وضعیت

پین‌هدرهای دو طرف ماژول ESP32-CAM رو با هویه باز کن تا برد کاملا تخت بشه و تو قاب جای کمتری بگیره. به جاش، از سیم برای اتصالات استفاده کن. پیشنهاد می‌کنم از سیم‌های رنگی استفاده کنی تا موقع سیم‌کشی دچار اشتباه نشی.

برای اینکه از بیرون قاب بدونی دوربینت روشنه یا نه، می‌تونی یه ال‌ای‌دی قرمز 3 میلی‌متری هم به مدار اضافه کنی. فقط کافیه این ال‌ای‌دی رو با یه مقاومت 220 اهم سری کنی و به پایه‌های ورودی برق ماژول دوربین وصلش کنی.

مرحله ۱۱

نقشه کامل سیم‌کشی دوربین امنیتی

اینم از نقشه کامل سیم‌کشی دوربین وای‌فای ما. فقط کافیه اتصالات بین باتری، ماژول شارژر، کلید پاور و برد ESP32 رو دقیقا طبق این دیاگرام ساده پیش ببری تا بخش سخت‌افزاری دوربین مداربسته دست‌ساز تو تکمیل بشه.

مرحله ۱۲

انتخاب بهترین باتری برای محفظه دوربین

من اول کار از یه باتری لیتیومی تخت استفاده کردم، چون فکر می‌کردم قابم شکل دیگه‌ای داره. اما بعدا متوجه شدم برای قاب استوانه‌ای، بهتره فرم باتری رو عوض کنم تا خیلی راحت توش جا بشه. برای اینکه دوربینت شارژدهی خوبی داشته باشه، حتما از باتری‌هایی با ظرفیت بالای 2000 میلی‌آمپر استفاده کن.

در نهایت من از دو تا باتری 18650 با ظرفیت 2600 میلی‌آمپر به صورت موازی استفاده کردم. این یعنی در مجموع 5200 میلی‌آمپر ظرفیت دارم که برای روشن نگه داشتن یه دوربین بی‌سیم عالیه.

مرحله ۱۳

نکات نهایی درباره باتری و محفظه

همون‌طور که دیدی، انتخاب باتری کاملا به قابی که برای دوربینت در نظر گرفتی بستگی داره. مهم‌ترین نکته اینه که باتری‌ها به خوبی تو قاب فیکس بشن و ظرفیت بالایی داشته باشن تا مجبور نشی تندتند دستگاهت رو از روی دیوار باز کنی و بزنیش به شارژ.

مرحله ۱۴

جای‌گذاری قطعات درون قاب دوربین

حالا یه مقدار چسب دوطرفه ضخیم بردار و به دو سر پک باتری و پشت ماژول ESP32-CAM بزن تا محکم به دیواره‌های داخلی قاب بچسبن. هر قطعه‌ای مثل لنز، ال‌ای‌دی یا پورت شارژ که از سوراخ‌های قاب بیرون زده رو با چسب حرارتی کاملا دورگیری و محکم کن.

مرحله ۱۵

عایق‌کاری و محکم‌کاری نهایی قطعات

برای اینکه قطعات داخل قاب تکون نخورن و به خاطر لرزش آسیبی نبینن یا تصویر رو خراب نکنن، مطمئن شو که برد دوربین و باتری‌ها حسابی سر جای خودشون محکم شدن. چسب حرارتی اینجا بهترین ابزارته؛ هم قطعات رو فیکس می‌کنه و هم منافذ رو می‌بنده.

مرحله ۱۶

عایق‌کاری و ضدآب کردن دوربین

اگه می‌خوای دوربینت رو تو محیط بیرون نصب کنی، حتما باید در برابر رطوبت و بارون مقاومش کنی. محل اتصال دو نیمه قاب رو با نوار چسب برق یا چسب‌های آب‌بندی کاملا بپوشون تا هیچ قطره آبی به داخل دستگاه نفوذ نکنه.

برای قسمت‌هایی مثل پورت شارژ MicroUSB و شیار کارت حافظه که نمی‌تونی چسب‌کاریشون کنی، چند تا تیکه لاستیک نرم ببر و به عنوان درپوش روی این شیارها بذار. این‌طوری گرد و خاک و رطوبت راهی برای نفوذ به مدارت پیدا نمی‌کنن.

مرحله ۱۷

تست نهایی گجت امنیتی

مموری‌کارت رو داخل شیارش جا بزن، درپوش لاستیکی رو ببند و کلید تغذیه دوربین رو روشن کن. حالا آی‌پی دوربین رو تو مرورگر گوشیت یا لپ‌تاپت وارد کن. خوبی این مدار اینه که با هر بار روشن شدن، خودش به صورت اتوماتیک تو حالت اجرای وب‌سرور بالا میاد و نیازی نیست دکمه‌ای رو روی برد بزنی.

مرحله ۱۸

بررسی امکانات پنل تحت وب دوربین

تو پنل وب، می‌تونی با زدن یه کلید مجازی، فلاش ال‌ای‌دی که روی خود ماژول دوربین قرار داره رو روشن کنی تا تو تاریکی مطلق هم تصویر واضحی داشته باشی. حتی امکان تغییر حساسیت سنسور تشخیص حرکت هم از همین پنل به راحتی برات فراهمه.

مرحله ۱۹

نصب دوربین با پایه دیواری

این بخش کاملا اختیاریه، اما اگه می‌خوای دوربینت مثل یه دوربین مداربسته حرفه‌ای روی دیوار نصب بشه و زاویه دید ثابتی داشته باشه، می‌تونی از پایه‌های دیواری آماده استفاده کنی. من اینجا از پایه‌های نگهدارنده دوربین‌های اکشن (مثل GoPro Mount) استفاده کردم چون زاویه‌شون خیلی راحت و تو هر جهتی تنظیم می‌شه.

مرحله ۲۰

انتقال ویدیوها از مموری‌کارت به کامپیوتر

مرحله ۲۱

نحوه عملکرد سیستم تشخیص حرکت (Motion Detection)

همون‌طور که تو قسمت Recording پنل تنظیمات می‌بینی، وقتی هیچ حرکتی تو کادر نباشه، دوربین چیزی رو ضبط نمی‌کنه. اما به محض اینکه کسی یا چیزی از جلوی لنز رد بشه، ضبط ویدیو شروع می‌شه و تا وقتی که اون حرکت متوقف نشه، ادامه پیدا می‌کنه. این قابلیت به شدت تو مصرف باتری و فضای مموری‌کارت صرفه‌جویی می‌کنه.

مرحله ۲۲

جمع‌بندی نهایی و پایان پروژه

اینم از این! به همین راحتی یه دوربین مداربسته وای‌فای خفن ساختی. حالا وقتشه این گجت امنیتی رو تو حیاط، راهرو، کارگاه یا هر جای دیگه‌ای که نیاز داری نصب کنی و امنیت محیط اطرافت رو با دستای خودت یه پله ارتقا بدی.

ساخت این پروژه علاوه بر اینکه خیلی کاربردیه، یه تمرین فوق‌العاده برای کار با بردهای ESP32 و شبکه‌های وای‌فای محسوب می‌شه. امیدوارم از این آموزش تو آیسی‌مدار لذت برده باشی. حتما تو بخش کامنت‌ها برام بنویس که می‌خوای این دوربین رو کجا نصب کنی و اگه موقع راه‌اندازی سوالی داشتی، بپرس تا با هم بررسیش کنیم!

فایل‌های پیوست

ZIP ESP32-CAM_MJPEG2SD-master.zip

تو میتونی اولین سازنده باشی!

اگه پروژه رو ساختی به اشتراک بزار و اعتبار هدیه بگیر

این آموزش با استانداردهای اختصاصی آیسی‌مدار بازنویسی و بهینه‌سازی شده و تمامی حقوق انتشار آن متعلق به این مجموعه است و در صورت کپی یا بازنشر پیگرد قانونی خواهد داشت.

آموزش‌های مشابه

گفتگو‌های کاربران

هنوز نظری ثبت نشده؛ تو شروع کن!