ماژول ESP32-CAM

saalek110

Well-Known Member
در تاپیک زیر:

در مورد ftdi. بخوانید.

سایت خود آردوینو با آردوینو پروگرم کرده:

Using ESP32 cam with arduino - Arduino Project Hub


.............


نکات:
روی بورد ftdi نزدیک خروجی ها ، جامپر انتخاب وجود دارد. به حالت اون توجه کنید.
 
آخرین ویرایش:

saalek110

Well-Known Member
Amazon.com: 2 Pack ESP32-CAM WiFi Bluetooth Camera Module Development Board ESP32 with Camera Module OV2640 : Electronics

در سایت آمازون پایه هایش را مشخص کرده. در عکس.
فعلا موجودی ندارد. یعنی جنس برای فروش موجود نیست.
۲۹ پرسش و پاسخ موجود است. ریتینگ ۴.۲ از ۵۰۰ نفر.
 
آخرین ویرایش:

saalek110

Well-Known Member
ESP32-CAM Specs

Module ModelESP32-CAM
PackageDIP-16
Size27*40.5*4.5 mm
SPI FlashDefault 32Mbit
RAM520KB SRAM +4M PSRAM
BluetoothBluetooth 4.2 BR/EDR and BLE standards
Wi-Fi802.11 b/g/n/
Support interfaceUART/SPI/I2C/PWM
Support TF cardMaximum support 4G
IO port9
UART BaudrateDefault 115200 bps
Image Output FormatJPEG( OV2640 support only ), BMP, GRAYSCALE
Spectrum Range2412 ~2484MHz
AntennaOnboard PCB antenna, gain 2dBi
Transmit Power802.11b: 17±2 dBm (@11Mbps)
802.11g: 14±2 dBm (@54Mbps)
802.11n: 13±2 dBm (@MCS7)
Receiving SensitivityCCK, 1 Mbps: -90dBm
CCK, 11 Mbps: -85dBm
6 Mbps (1/2 BPSK): -88dBm
54 Mbps (3/4 64-QAM): -70dBm
MCS7 (65 Mbps, 72.2 Mbps): -67dBm
Power DissipationDeep-sleep: 6mA@5V
Moderm-sleep: 20mA@5V
Light-sleep: 6.7mA@5V
SecurityWPA/WPA2/WPA2-Enterprise/WPS
Power Supply Range5V
Operating Temperature-20 °C ~ 85 °C
Storage Environment-40 °C ~ 90 °C, < 90%RH
Weight10g

ESP32-CAM: The Complete Machine Vision Guide
 

saalek110

Well-Known Member
تا بحال برای شما پیش آمده که بخواهید برای اتاق یا محل کارتان دوربین های مداربسته نصب کنید تا بتوانید بصورت زنده محیط های در مجاورت خودتان را تحت نظر داشته باشید. خوشبختانه به کمک تکنولوژی ESP32 و در نهایت ماژول ESP32-CAM می‌توانید به راحتی این کار را انجام دهید.

ESP32 نسل پیشرفته ESP8266 است. یکی از تفاوت‌های آن بلوتوث داخلی‌اش می‌باشد. همچنین دارای هسته وایفای ۲,۴ گیگا هرتزی و بلوتوث داخلی تولید شده با تکنولوژی ۴۰ نانومتری شرکت TSMC می‌باشد. این ماژول دارای بهترین پرفورمنس در مصرف انرژی می‌باشد یعنی با کمترین مصرف انرژی بهترین نتیجه را برای ما به همراه دارد. اگر بخواهیم دقیق‌تر به این برد نگاه کنیم باید بگوییم که این یک chip است که پلتفرم NodeMCU در اون پیاده سازی شده که به این نوع چیپ ها System on a chip microcontrollers هم گفته می‌شود.

از دیگر امکانات ماژول ESP32-cam می‌توان به دوربین OV2640 با قابلیت ثبت تصویر با فرمت JPEG, BMP, grayscale اشاره کرد. همچنین با LED flash مونتاژ شده بر روی این ماژول قادر به تصویر برداری در مکان‌های تاریک نیز خواهید بود. یکی از ویژگی‌های کاربردی این ماژول ورودی micro SD با قابلیت ارتقا تا ۴GB است که به کاربر اجازه ذخیره تصاویر را هم می‌دهد.

آموزش راه اندازی ماژول ESP32-CAM - دیجی اسپارک
 

saalek110

Well-Known Member
ESP32 نسل پیشرفته ESP8266 است. یکی از تفاوت‌های آن بلوتوث داخلی‌اش می‌باشد. همچنین دارای هسته وایفای ۲,۴ گیگا هرتزی و بلوتوث داخلی تولید شده با تکنولوژی ۴۰ نانومتری شرکت TSMC می‌باشد. این ماژول دارای بهترین پرفورمنس در مصرف انرژی می‌باشد یعنی با کمترین مصرف انرژی بهترین نتیجه را برای ما به همراه دارد. اگر بخواهیم دقیق‌تر به این برد نگاه کنیم باید بگوییم که این یک chip است که پلتفرم NodeMCU در اون پیاده سازی شده که به این نوع چیپ ها System on a chip microcontrollers هم گفته می‌شود.

esp32-s-ai_n1-300x225.jpg


از دیگر امکانات ماژول ESP32-cam می‌توان به دوربین OV2640 با قابلیت ثبت تصویر با فرمت JPEG, BMP, grayscale اشاره کرد. همچنین با LED flash مونتاژ شده بر روی این ماژول قادر به تصویر برداری در مکان‌های تاریک نیز خواهید بود. یکی از ویژگی‌های کاربردی این ماژول ورودی micro SD با قابلیت ارتقا تا ۴GB است که به کاربر اجازه ذخیره تصاویر را هم می‌دهد.

88c6ee60-895d-4ad2-a52d-31d5c7b6fa6a.jpg

از همان منبع.
 

saalek110

Well-Known Member
کنید ”


روش راه اندازی ESP32-cam​


برای شروع باید کتابخانه مربوط به این ماژول در نرم افزار Arduino IDE نصب گردد. ابتدا باید لینک زیر در محل ذکر شده File> Preferences کپی و پیست شود.






C++

preferences.png



سپس با مراجعه به بخش برد ها در Tools > Board > Boards Manager و جسجوی ESP32 قادر به دانلود کتابخانه مربوط خواهید بود.

boardsManager.png


ESP32-Board-add-on-in-Arduino-IDE-installed.png


در ادامه می‌توانید در بخش File > Examples > ESP32 > Camera کدهای مربوط به این ماژول را پیدا کنید. مثال CameraWebServer مربوط به این آموزش می‌باشد.

esp32-cam-open-camerawebserver-example.png


قبل از آپلود کد در ماژول باید تنظیمات شبکه را مشخص کنیم :





C++

1
2
;"نام شبکه وای فای" = const char* ssid
;"پسوورد شبکه وای فای"= const char* password
esp32-cam-open-camerawebserver.png
 

saalek110

Well-Known Member
در این مرحله مدل ماژول خود در بین دیگر مدل ها که در کد موجود است با کامند و آن کامند کردن مشخص کنیم.





C++

1define CAMERA_MODEL_AI_THINKER#
حال زمان پروگرام کردن ماژول رسیده، به یک FTDI programmer نیاز داریم تا کد های موجود در Arduino IDE را بر روی ماژول پروگرام کنیم ، مانند تصویر زیر اتصالات را برقرار کنید، دقت داشته باشید که پایه GPIO 0 باید به GND متصل باشد تا عمل پروگرام صورت گیرد.

esp32-esp32cam-ov2640-wifi-bluetooth-ble-iot-arduino-ftdi-D_NQ_NP_920362-MLM31369416268_072019-F.jpg


از منوی Tools موارد انتخاب شده در تصویر را با نرم افزار خود تطابق دهید.

upload-code-esp32-cam.png


پس از آپلود شدن کد، پین GPIO 0 را که قبل‌تر به GND متصل کرده بودید را از GND جدا کنید. سپس سریال مانیتور را در نرم افزار اردوینو باز کنید و باند ریت را برای روی ۱۱۵۲۰۰ قرار دهید سپس دکمه RESET بر روی ماژول را فشار دهید.

esp32-cam-ip-address.png


همانطور که مشاهده می کنید نرم افزار به شما یک IP Address می دهد که با جسجوی این IP در مرورگر خود می توانید دوربین را فعال کنید .

panel.png



اتصالات​


Vcc == Vcc

GND == GND

TX == U0R

RX == U0T


لیست قطعات​


  1. ماژول ESP32-CAM
  2. FTDI programmer
 

saalek110

Well-Known Member

سورس کد آردوینو​


کدهای زیر را کپی کرده و در آردوینو IDE قرار دهید. سپس روی برد آردوینو آپلود کنید. چنانچه روش آپلود کدها را نمی‌دانید، به آموزش کار با برد آردوینو مراجعه کنید.






C++

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#include "esp_camera.h"
#include
//
// WARNING!!! Make sure that you have either selected ESP32 Wrover Module,
// or another board which has PSRAM enabled
//
// Select camera model
//#define CAMERA_MODEL_WROVER_KIT
//#define CAMERA_MODEL_ESP_EYE
//#define CAMERA_MODEL_M5STACK_PSRAM
//#define CAMERA_MODEL_M5STACK_WIDE
#define CAMERA_MODEL_AI_THINKER
#include "camera_pins.h"
const char* ssid = "PM.GOHARIAN";
const char* password = "*******";
void startCameraServer();
void setup() {
Serial.begin(115200);
Serial.setDebugOutput(true);
Serial.println();
camera_config_t config;
config.ledc_channel = LEDC_CHANNEL_0;
config.ledc_timer = LEDC_TIMER_0;
config.pin_d0 = Y2_GPIO_NUM;
config.pin_d1 = Y3_GPIO_NUM;
config.pin_d2 = Y4_GPIO_NUM;
config.pin_d3 = Y5_GPIO_NUM;
config.pin_d4 = Y6_GPIO_NUM;
config.pin_d5 = Y7_GPIO_NUM;
config.pin_d6 = Y8_GPIO_NUM;
config.pin_d7 = Y9_GPIO_NUM;
config.pin_xclk = XCLK_GPIO_NUM;
config.pin_pclk = PCLK_GPIO_NUM;
config.pin_vsync = VSYNC_GPIO_NUM;
config.pin_href = HREF_GPIO_NUM;
config.pin_sscb_sda = SIOD_GPIO_NUM;
config.pin_sscb_scl = SIOC_GPIO_NUM;
config.pin_pwdn = PWDN_GPIO_NUM;
config.pin_reset = RESET_GPIO_NUM;
config.xclk_freq_hz = 20000000;
config.pixel_format = PIXFORMAT_JPEG;
//init with high specs to pre-allocate larger buffers
if(psramFound()){
config.frame_size = FRAMESIZE_UXGA;
config.jpeg_quality = 10;
config.fb_count = 2;
} else {
config.frame_size = FRAMESIZE_SVGA;
config.jpeg_quality = 12;
config.fb_count = 1;
}
#if defined(CAMERA_MODEL_ESP_EYE)
pinMode(13, INPUT_PULLUP);
pinMode(14, INPUT_PULLUP);
#endif
// camera init
esp_err_t err = esp_camera_init(&amp;config);
if (err != ESP_OK) {
Serial.printf("Camera init failed with error 0x%x", err);
return;
}
sensor_t * s = esp_camera_sensor_get();
//initial sensors are flipped vertically and colors are a bit saturated
if (s-&gt;id.PID == OV3660_PID) {
s-&gt;set_vflip(s, 1);//flip it back
s-&gt;set_brightness(s, 1);//up the blightness just a bit
s-&gt;set_saturation(s, -2);//lower the saturation
}
//drop down frame size for higher initial frame rate
s-&gt;set_framesize(s, FRAMESIZE_QVGA);
#if defined(CAMERA_MODEL_M5STACK_WIDE)
s-&gt;set_vflip(s, 1);
s-&gt;set_hmirror(s, 1);
#endif
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi connected");
startCameraServer();
Serial.print("Camera Ready! Use 'http://");
Serial.print(WiFi.localIP());
Serial.println("' to connect");
}
void loop() {
// put your main code here, to run repeatedly:
delay(10000);
}
 

saalek110

Well-Known Member
روش دوم : استفاده از آردوینو

سالک : در پستهای بالا با FTDI programmer کار انجام شده.....

Screenshot_۲۰۲۲-۰۴-۱۶_۱۶۲۲۱۶-1.jpg

ولی با آردوینو هم گویا این کار امکان پذیر است.اگر اشتباه نکنم چند جا در سایتهای ایرانی دیدم کدش را فروشی گذاشتند. در ادامه به این روش نگاهی می کنیم یعنی استفاده از آردوینو
 

saalek110

Well-Known Member
«How to program ESP32 CAM using Arduino UNO»


youtu.be/q-KIpFIbRMk

انگلیسی ، لهجه هندی. با زیرنویس انگلیسی.

لینک مورد نیاز زیر فیلم هست.
 
آخرین ویرایش:

saalek110

Well-Known Member
اون دوست هندی فکر کنم کامل گفته بود.
دوست بلژیکی هم فکر کنم کامل گفته:

«ESP32-CAM AI Thinker how to upload in Arduino, no adapter!» را در YouTube تماشا کنید
youtu.be/a_PxAT8M-58

زبان انگلیسی ، لهجه بلژیکی احتمالا. در هوم ایشان در یوتیوب نوشته بلژیک.
بلژیک زبان ندارد. شمال بلژیک هلندی صحبت می کند و جنوب بلژیک فرانسوی. من نمی دانم ایشان از کجای بلژیک است و تجربه ندارم بدونم هلندی زبانها یا فرانسوی زبانها وقتی انگلیسی صحبت می کنند چه شکلی و چه لهجه ای میشه.

و احتمال داره ایشان لینک ها به فیلم خود را پیگیری کند و متن من را ترجمه کند ، پس میگم خیلی لهجه خوبی دارید شما ، ممنون از ویدئو.
 
آخرین ویرایش:

saalek110

Well-Known Member
«ESP32-CAM Tutorial | LCSC.COM»

youtu.be/CLaJ6IBpbLk

فیلم هندی است.


«FTDI connect to ESP32 cam | program to ESP32 cam | ip camera | camera module | tamil | manimarantech»


youtu.be/-HznernlFIs

این فیلم هم احتمالا هندی است.

دو فیلم بالا تکرار همان آموزشهای بالا است. نیازی به تماشای اینها نیست.
 
آخرین ویرایش:

saalek110

Well-Known Member
«ESP32 CAM Face Detection Door Lock System»

youtu.be/_VOmfJ4x-Fg

انگلیسی ،

تشخیص چهره و گشودن قفل.
 
آخرین ویرایش:

saalek110

Well-Known Member
سالک: بدون انجام تغییری با آموزش بالا
من توانستم تصویر را داشته باشم.یعنی موفقیت کار.
من با آردوینو کار نکردم ، با FTDI برنامه را ریختم. دو آموزش فارسی در بالا برای این کار ، یعنی استفاده از FTDI هست که تقریبا یکی هستند. دومی دیجی اسپارک است که من فقط لینکش را گذاشتم.

بعد انجام کار می توانید آداپتر FTDI را جدا کنید و فقط تغذیه esp32 را بدهید و از دوربین استفاده کنید.
 
آخرین ویرایش:

جدیدترین ارسال ها

بالا