معرفی کامل برد ESP32-CAM (+ مشخصات و پین ها)
محتویات
اگر چند سال پیش از شما می پرسیدند که هزینه یک دوربین دیجیتال با وای فای چقدر است، احتمالا چیزی بیشتر از 10 دلار در نظر داشتید اما اکنون اینطور نیست. ESP32-CAM بردی است که در اوایل سال 2019 وارد بازار شد و شرایط بازار را تغییر داد. با این برد شما به طرز شگفت انگیزی، با کمتر از 10 دلار، یک ESP32 با پشتیبانی از دوربین و کارت SD دریافت می کنید.
این ماژول ها واقعا خوب و با کیفیت هستند. اگر نیاز به تشخیص حرکت داشتید، تشخیص چهره یا صرفا یک دوربین امنیتی، استفاده از ESP32-CAM برای شما بسیار به صرفه است.
بررسی سخت افزار ESP32-CAM
قلب ESP32-CAM یک (SoC) ESP32-S از Ai-Thinker است. به عنوان یک SoC، تراشه ESP32-S شامل یک کامپیوتر کامل – ریزپردازنده، رم، حافظه ذخیره سازی و تجهیزات جانبی است. ما در مقاله معرفی ESP32 ویژگی های زیادی از این برد را معرفی کردیم. جالب است بدانید برد ESP32-CAM موارد دیگری را نیز به فهرست ویژگی های این تراشه اضافه میکند.
پردازنده ESP32-S
ESP32-CAM مجهز به ESP32-S از Ai-Thinker است. این ماژول معادل ماژول ESP-WROOM-32 Espressif است.
ESP32-S حاوی یک ریزپردازنده Tensilica Xtensa® LX6 با دو هسته 32 بیتی است که با فرکانس خیره کننده 240 مگاهرتز کار می کنند! این همان چیزی است که ESP32-S را برای کارهای سنگین مانند پردازش ویدیو، تشخیص چهره و حتی هوش مصنوعی مناسب می کند.
حافظه ESP32-CAM
حافظه برای کارهای پیچیده از اهمیت بالایی برخوردار است، بنابراین ESP32-S دارای 520 کیلوبایت رم داخلی است که بر روی همان قالب باقی اجزای تراشه قرار دارد.
ممکن است برای کارهای رم فشرده کافی نباشد، بنابراین ESP32-CAM شامل 4 مگابایت PSRAM خارجی (رم شبه استاتیک) برای افزایش ظرفیت حافظه است. این حافظه رم برای پردازش صوتی یا گرافیکی فشرده زیاد و مناسب است.
اگر فضای ذخیرهسازی کافی برای برنامهها و دادههای خود نداشته باشید، همه این ویژگیها هیچ ارزشی ندارند. اما تراشه ESP32-S در اینجا نیز می درخشد، زیرا حاوی 4 مگابایت حافظه فلش روی تراشه است.
دوربین OV2640
سنسور دوربین OV2640 در ESP32-CAM چیزی است که آن را از سایر بردهای توسعه ESP32 متمایز می کند و آن را برای استفاده در پروژه های ویدیویی مانند زنگ ویدیویی یا دوربین پرستاری ایده آل می کند.
دوربین OV2640 دارای رزولوشن 2 مگاپیکسل است که ابعاد حداکثر 1600×1200 پیکسل است. این ابعاد برای بسیاری از برنامه های نظارتی کافی است.
ESP32-CAM با طیف گسترده ای از سنسورهای دوربین سازگار است.
دوربین های سازگار با ESP32-CAM
مدل | حداکثر رزولوشن | رنگی یا سیاه سفید | فرمت خروجی | سایز لنز |
---|---|---|---|---|
OV2640 | 1600 x 1200 | color | YUV(422/420)/YCbCr422 RGB565/555 8-bit compressed data 8/10-bit Raw RGB data | 1/4″ |
OV3660 | 2048 x 1536 | color | raw RGB data RGB565/555/444 CCIR656 YCbCr422 compression | 1/5″ |
OV5640 | 2592 x 1944 | color | RAW RGB RGB565/555/444 CCIR656 YUV422/420 YCbCr422 compression | 1/4″ |
OV7670 | 640 x 480 | color | Raw Bayer RGB Processed Bayer RGB YUV/YCbCr422 GRB422 RGB565/555 | 1/6″ |
OV7725 | 640 x 480 | color | Raw RGB GRB 422 RGB565/555/444 YCbCr 422 | 1/4″ |
NT99141 | 1280 x 720 | color | YCbCr 422 RGB565/555/444 Raw CCIR656 JPEG compression | 1/4″ |
GC032A | 640 x 480 | color | YUV/YCbCr422 RAW Bayer RGB565 | 1/10″ |
GC0308 | 640 x 480 | color | YUV/YCbCr422 RAW Bayer RGB565 | 1/6.5″ |
GC2145 | 1600 x 1200 | color | YUV/YCbCr422 RAW Bayer RGB565 | 1/5″ |
BF3005 | 640 x 480 | color | YUV/YCbCr422 RAW Bayer RGB565 | 1/4″ |
BF20A6 | 640 x 480 | color | YUV/YCbCr422 RAW Bayer | 1/10″ |
SC101IOT | 1280 x 720 | color | YUV/YCbCr422 Raw RGB | 1/4.2″ |
SC030IOT | 640 x 480 | color | YUV/YCbCr422 RAW Bayer | 1/6.5″ |
SC031GS | 640 x 480 | monochrome | RAW MONO Grayscale | 1/6″ |
کارت حافظه ذخیره سازی ESP32-CAM
اضافه شدن یک اسلات کارت microSD در ESP32-CAM یک امتیاز خوب است. این ویژگی حافظه ای بی حد و حصر را فراهم می کند و آن را به برد کوچک عالی برای ثبت داده یا ضبط تصویر تبدیل می کند.
آنتن
ESP32-CAM دارای یک آنتن PCB روی برد و همچنین یک کانکتور u.FL برای اتصال آنتن خارجی است. جامپر انتخاب آنتن به شما امکان می دهد بین دو گزینه یکی را انتخاب کنید.
ال ای دی ها
ESP32-CAM دارای یک LED مربعی سفید متصل به GPIO4 است. این ال ای دی برای استفاده به عنوان فلاش دوربین در نظر گرفته شده است، اما می توان از آن برای روشنایی عمومی نیز استفاده کرد.
یک LED قرمز کوچک در پشت وجود دارد که می تواند به عنوان نشانگر وضعیت استفاده شود. این ال ای دی نیز قابل برنامه ریزی توسط کاربر و متصل به GPIO33 است.
مشخصات فنی ESP32-CAM
به طور خلاصه، ESP32-CAM دارای مشخصات زیر است.
پردازنده و حافظه:
- CPU قدرتمند Xtensa dual-core 32-bit LX6 microprocessor با فرکانس کاری 240 مگارهرتز
- پردازنده کمکی ULP
- 520 کیلوبایت SRAM
- 4 مگابایت PSRAM خارجی
- 4 مگابایت حافظه فلش داخلی
وضعیت مصرف برق:
- رگولاتور کم مصرف داخلی
- مصرف 5μA در زمان Deep Sleep
- بیدار شدن توسط وقفه، تایمر، تاچ و …
ارتباط بیسیم:
- وای فای: 802.11 b/g/n
- بلوتوث: v4.2 BR/EDR و BLE
دوربین:
- دوربین 2 مگاپیکسل OV2640
- رزولوشن: 1622*1200
- فرمت خروجی: YUV422, YUV420, RGB565, RGB555 و 8 بیت فشرده شده
- سرعت انتقال تصویر 15 تا 60 فریم بر ثانیه
- فلش ال ای دی روی برد
- پشتیبانی از دوربین های مختلف
- پشتیبانی از کارت حافظه microSD
امنیت:
- بوت ایمن
- رمز گذاری فلش
- دارای استاندارد IEEE 802.11 و پشتیبانی از WFA, WPA/WPA2 و WAPI
مصرف برق ESP32-CAM
مصرف برق ESP32-CAM بسته به جوری که از آن استفاده می کنید متفاوت است. از 80 میلی آمپر ساعت در صورت عدم پخش ویدئو تا حدود 100 تا 160 میلی آمپر ساعت هنگام پخش ویدئو متغیر است. با روشن بودن فلاش، می تواند به 270 میلی آمپر ساعت برسد.
حالت کاری | مصرف برق |
آماده به کار | 80 میلی آمپر ساعت |
در حال پخش ویدئو | 100~160 میلی آمپر ساعت |
در حال پخش ویدئو با فلش | 270 میلی آمپر ساعت |
توضیحات پین های ESP32-CAM
ESP32-CAM در مجموع دارای 16 پین است. برای راحتی، پینهایی با عملکرد مشابه با هم گروهبندی میشوند. وضعیت پین ها به شرح زیر است:
پایه های POWER: دو پایه وجود دارد: 5 ولت و 3.3 ولت. ESP32-CAM می تواند از طریق پایه های 3.3 ولت یا 5 ولت تغذیه شود. از آنجایی که بسیاری از کاربران مشکلاتی را هنگام تغذیه دستگاه با 3.3 ولت گزارش کرده اند، توصیه می شود ESP32-CAM همیشه از طریق پایه 5 ولت تغذیه شود. پین VCC معمولاً 3.3 ولت را از رگولاتور ولتاژ روی برد خارج می کند.
GND: پین زمین است.
پین های GPIO: تراشه ESP32-S در مجموع دارای 32 پین GPIO است، اما از آنجایی که بسیاری از آنها به صورت داخلی برای دوربین و PSRAM استفاده می شوند، ESP32-CAM تنها دارای 10 پین GPIO قابل استفاده است. این پین ها می توانند وظایف جانبی مختلفی مانند UART، SPI، ADC و Touch را به خود اختصاص دهند.
پین های UART: تراشه ESP32-S در واقع دارای دو رابط UART با نام های UART0 و UART2 است. با این حال UART0 تنها UART قابل استفاده در ESP32-CAM (GPIO 1 و GPIO 3) است. همچنین از آنجایی که ESP32-CAM فاقد پورت USB است، این پین ها باید برای ریختن برنامه جدید و همچنین اتصال به دستگاه های UART مانند GPS، حسگرهای اثر انگشت، سنسورهای فاصله و … استفاده شوند.
پین های کارت MicroSD: برای اتصال کارت microSD استفاده می شود. اگر از کارت microSD استفاده نمی کنید، می توانید از این پین ها به عنوان ورودی و خروجی معمولی استفاده کنید.
پین های ADC: در ESP32-CAM، فقط پین های ADC2 در دسترس هستند. با این حال، از آنجایی که پینهای ADC2 به صورت داخلی توسط درایور WiFi استفاده میشوند، وقتی Wi-Fi فعال است نمیتوان از آنها استفاده کرد.
پین های لمسی: ESP32-CAM دارای 7 GPIO لمسی خازنی است. هنگامی که یک بار خازنی (مانند انگشت انسان) در مجاورت GPIO باشد، ESP32 تغییر در ظرفیت خازنی را تشخیص می دهد.
پینهای SPI: برد ESP32-CAM تنها دارای یک SPI (VSPI) در حالتهای Slave و Master است.
پینهای PWM: برد ESP32-CAM دارای 10 کانال PWM است. تمام پایه های این برد قابلیت ایجاد PWM دارند که توسط یک کنترلکننده PWM کنترل میشوند. خروجی PWM را می توان برای کنترل موتورها و LED استفاده کرد.
برنامه نویسی ESP32-CAM
برنامه نویسی ESP32-CAM ممکن است کمی دردسرساز باشد زیرا فاقد پورت USB داخلی است. به دلیل این تصمیم در طراحی این برد، کاربران برای آپلود برنامه ها از Arduino IDE به سخت افزار اضافی نیاز دارند. استفاده از سخت افزار اضافی سخت نیست اما بهتر میشد اگر رابط USB همراه با این برد قرار میگرفت.
برای برنامهریزی این دستگاه، به یک مبدل FTDI یا یک برد پروگرامر ESP32-CAM-MB نیاز دارید.
برنامه نویسی ESP32-CAM با FTDI
اگر تصمیم گرفته اید از FTDI استفاده کنید، در اینجا نحوه اتصال آن به ماژول ESP32-CAM آورده شده است.
بسیاری از برد های FTDI دارای یک جامپر هستند که به شما امکان می دهد بین 3.3 ولت و 5 ولت انتخاب کنید. که ESP32-CAM را با 5 ولت تغذیه می کنیم، مطمئن شوید که جامپر روی 5 ولت تنظیم شده است.
قبل از آپلود کد مطمئن شوید که پین GPIO 0 به زمین متصل است. این اتصال فقط هنگام برنامه ریزی ESP32-CAM ضروری است. پس از اتمام برنامه نویسی ماژول، باید این اتصال را قطع کنید و برد را ریستارت کنید. هر بار که می خواهید یک کد جدید آپلود کنید، باید این اتصال را برقرار کنید.
استفاده از برد پروگرامر ESP32-CAM-MB
استفاده از آداپتور FTDI برای برنامه ریزی ESP32-CAM کمی دردسرساز است زیرا باید سیم های مخلتف را متصل کنید. به همین دلیل است که بسیاری از فروشندگان اکنون برد ESP32-CAM را به همراه یک برد جانبی کوچک به نام ESP32-CAM-MB می فروشند. استفاده از این برد کمکی بسیار آسان است اما هزینه آن متاسفانه بالا است و در مقایسه با FTDI صرف چندانی ندارد.
در صورت استفاده از پروگرامر، کافی است برد ESP32-CAM را روی آن قرار بدهید، سپس با یک کابل اتصال را با کامپیوتر برقرار کنید و روی دکمه آپلود کلیک کنید. به همین سادگی کد شما آپلود میشود.
ویژگی برجسته این برد تبدیل USB به سریال با مبدل CH340G است. این قطعه داده ها را بین رایانه شما و ESP32-CAM منتقل می کند. همچنین یک دکمه RESET، یک دکمه BOOT، یک LED نشانگر تغذیه، و یک تنظیم کننده ولتاژ برای تامین انرژی کافی ESP32-CAM روی این برد وجود دارد.
سلام
این برد فقط دوربین ۲ مگاپیکسل رو ساپورت میکنه؟
یعنی امکان اینو نداره که من یه دوربین که برای موبایل چیزی باشه بهش وصل کنم
سلام خسته نباشید
من تازه این برد رو تهیه کردم نمیدونم چه کدی بهش وصل هست وایفای من بهش وصل میشه ولی تنظیمات روتر نداره کنجکاوم بدونم قبل از خرید چه کدی روش آپلود هست
شما میدونین چیه ؟
سلام ببخشید چگونه باید درایور ft232 را نصب کرد
سلام عزیز
در گوگل سرچ کنید فایل درایور را دانلود کنید نصب ساده ای دارد.
سلام خسته نباشید
من برد را به ماژول FTDIمتصل کردم ولی وقتی به کامپیوتر متصل میکنم CAM را نمی خواند و ارور میده که برد متصل نشده ممنون میشم کمکم کنید
سلام عزیز
درایور ft232 را دانلود و نصب کنید
وقت بخیر.جناب مهندس میشه با برد Esp32cam علاوه بر تصویر صدا رو هم انتقال داد ؟چه با استفاده از خود برد چه با استفاده از ماژول های میکروفن ؟این برد I2Sرو پوشتیبانی میکنه ؟ ممنون میشم به بنده توضیح بدید
سلام. وقت بخیر . با تشکر از آموزش خوبتون.
چند سوال داشتم:
1- چگونه از پین های کارت MicroSD استفاده کنیم؟ باید اسلات کارت microSD رو با لحیم کاری جدا کنیم و از پینهای اون استفاده کنیم یا روش دیگری هست؟ مثلا یک قاب خالی کارت Micro SD که پینها رو به بیرون منتقل میکنه.
2- گفته اید که فقط SPI (VSPI) وجود دارد درحالیکه در تصویر (HSPI) مشخص شده است ، کدوم درسته؟
3- اگه نخواهیم از دکمه ریست روی برد استفاده کنیم چه پایه هایی رو وصل کنیم تا عمل ریست رو انجام بده؟
ممنون.
سلام.
درمورد سوال یک میشه از ماژول افزایش طول اسلات کارت حافظه MICRO SD استفاده کرد.
سلام ممنون بابت اموزش خوبتون یک سوال برای راه اندازی esp32cam با دوربین های غیر از ov2640 نیاز به تغییر در کدنویسی است یا تفاوتی ندارد؟
سلام عزیز
نیازی به تغییر نیست