[Tìm hiểu] ESP32-CAM AI-Thinker Board là gì?

0
1054

Bài viết này giới thiệu bo mạch AI thinker ESP32-CAM. Chúng ta tìm hiểu về sơ đồ chân, tính năng, thông số kỹ thuật và cách sử dụng bo mạch ESP32- CAM.

Giới thiệu ESP32-CAM AI-Thinker

Thế giới đã phát triển công nghệ IoT, tức là Internet of Things trong một thời gian khá dài. Từ những người có đam mê sáng tạo đến các nhà phát triển, tất cả mọi người đều quan tâm đến công nghệ thông minh, thiết kế các mẫu mạch và sản phẩm khác nhau tung ra thị trường. 

Các chip trong chuỗi ESP32 là một trong những module thông minh được dùng phổ biến trong IoT. ESP32-CAM AI-Thinker là phiên bản nâng cấp của ESP8266-01 được Espressif tung ra với nhiều tính năng. Module siêu nhỏ, công suất thấp có hai CPU LX6 32bit hiệu suất cao với kiến ​​trúc vi mạch đường dẫn 7 lớp.

Thiết bị ngoại vi

ESP32-CAM đã tích hợp với Wi-Fi, Bluetooth và có thể được sử dụng với máy ảnh OV2640 hoặc OV7670. IC ESP32 có các giao thức ADC, SPI, I2C và UART độ phân giải cao để giao tiếp dữ liệu. Module có cảm biến Hall, cảm biến nhiệt độ và cảm biến cảm ứng, và bộ hẹn giờ wtachdog. 

Ngoại vi RTC có thể hoạt động ở các chế độ khác nhau. Module có tần số xung nhịp tối đa là 160 MHz cho khả năng tính toán lên đến 600 DMPIS. Hơn nữa, nó khá bền và độ tin cậy cao khi kết nối internet.

Các ứng dụng

Module ESP32-CAM AI-Thinker có nhiều ứng dụng như tự động hóa trong nhà, thiết bị thông minh, hệ thống định vị, hệ thống an ninh và thích hợp cho các ứng dụng IoT.

Các thành phần AI-Thinker của ESP32-CAM

Bo mạch này là dạng bảng mạch PCB kiểu DIP 27×40,5×4,5. Hình dưới đây cho thấy các thành phần của bo mạch ESP32-CAM ở cả mặt trên và mặt dưới.

thanh-phan-ESP32-CAM

Chip ESP32-S: Module này là một con chip chính có hai CPU LX6 hiệu suất cao 32-bit với một kiến trúc vi mạch đường dẫn 7 lớp và sử dụng trong tất cả các quá trình xử lý.

Đầu ra khối IPEX: IPEX được kết nối với ăng-ten GSM để truyền tín hiệu.

Tụ tantal: Tụ tantal chủ yếu được sử dụng trên các module có kích thước nhỏ. Chúng bền và cung cấp khả năng lọc nguồn điện cho ra tín hiệu ổn định.

Nút reset: Khi được nhấn, nút reset sẽ khởi động lại code được thực thi trên module.

Chip điều chỉnh điện áp: Chip điều chỉnh điện áp trên module để duy trì đảm bảo ổn định điện áp đầu ra bất chấp sự thay đổi của nguồn cung cấp đầu vào. Nó điều chỉnh điện áp ở 3,3V.

PSRAM: Bộ nhớ truy cập ngẫu nhiên “giả” công suất thấp 4MB được tích hợp trong module để có tốc độ xử lý nhanh. Nó giúp máy ảnh chạy mượt mà.

Cổng nhận thẻ TF: Dòng ESP32 có một cổng nhận thẻ micro-SD để lưu trữ dữ liệu. Tất cả quá trình truyền dữ liệu đều thông qua giao tiếp ngoại vi nối tiếp.

Đầu nối FPC: Để gắn máy ảnh, module ESP32 có một đầu nối mạch linh hoạt. Chiều cao của đầu nối tỷ lệ với độ tin cậy của tín hiệu.

Đèn flash: Đèn flash tạo ra các xung điện hoạt động như đèn flash cho máy ảnh có thể chụp được hình ảnh rõ nét.

Sơ đồ bên trong

so-do-ben-trong-ESP32

Sơ đồ chân bo mạch ESP32-CAM AI-Thinker

Sơ đồ sau đây cho biết sơ đồ chân của Module AI-Thinker ESP32-CAM:

ESP32-CAM-AI-Thinker

Phần này mô tả sơ đồ chân của module AI-Thinker ESP32-CAM. Chip ESP32-S có tổng cộng 34 chân nhưng có 16 chân đươc đưa ra các chân header.

Chân nguồn

Module có ba chân nối đất và hai chân cấp nguồn dương như chân 5V và 3,3V. Các chân này được sử dụng để cấp nguồn cho module ESP32-CAM AI-Thinker. Không nên cấp nguồn cho cả bo mạch với chân 3,3V, vì nó cấp nguồn không ổn định cho bo mạch.

Chân đầu ra nguồn

ESP32-CAM cũng cung cấp một chân đầu ra nguồn như hiển thị bằng màu vàng trong sơ đồ chân ở trên. Đây là chân VCC có thể xuất ra 5V hoặc 3.3V. Theo kết nối Jumper trên ESP32-CAM, chân VCC cung cấp đầu ra 3.3V.

GPIO33 – Đèn LED đỏ được tích hợp

Bo mạch AI-Thinker cũng có một đèn LED đỏ. Bạn thấy đèn LED này bên cạnh nút reset. Đèn LED màu đỏ được tích hợp này được kết nối với GPIO 33 ở trạng thái mức logic thấp. 

GPIO33-den-led-do

Điều đó có nghĩa là nếu chúng ta muốn bật đèn LED, chúng ta phải kích GPIO 33 xuống mức logic thấp. Tương tự, để tắt đèn LED, chúng ta kích GPIO 33 ở trạng thái mức logic cao.

Chân UART

Hầu như tất cả các chân GPIO của ESP32-CAM đều là chân đa năng (nhiều chức năng). GPIO1 và GPIO3 lần lượt có các chức năng thay thế việc truyền và nhận dữ liệu nối tiếp cho cổng UART. Bo mạch AI-Thinker không tích hợp bộ lập trình. Do đó, các chân UART này được sử dụng để lập trình và giao tiếp với PC để tải code.

Tên chân Đặc diểm
GPIO1 U0TXD (Chân truyền dữ liệu UART)
GPIO3 UORXD (Chân nhận dữ liệu UART)

Chúng ta có thể sử dụng cáp FTDI để flash code ESP32-CAM bằng cách sử dụng các chân UART. Bạn có thể đọc bài viết này để biết cách sử dụng cáp FTDI chuyển đổi kết nối USB sang chuẩn kết nối nối tiếp:

Chân GPIO0 – Chọn chế độ đèn flash

Chân này để chọn chế độ flash hoặc chế độ bình thường. Ở chế độ flash, GPIO0 được kéo xuống mức logic thấp tức là đấu nối với đất. Khi đó ESP32-CAM sẽ chuyển sang chế độ flash và chúng ta có thể lập trình cho led. 

Sau khi lập trình nhấp nháy led vào bo mạch, chúng ta nên ngắt đấu nối GPIO0 khỏi đất để module chạy ở chế độ bình thường.

  • GPIO0 được đấu nối với đất thì ESP32-CAM hoạt động ở chế độ Flash
  • GPIO0 không đấu nối với đất, ESP32-CAM ở chế độ thực thi chương trình bình thường

Chân thẻ SD

Như đã thảo luận trong phần trước, bo mạch ES32-CAM có đầu kết nối thẻ SD tích hợp có thể được sử dụng để kết nối thẻ SD. 

Các chân GPIO này sử dụng cho các kết nối với thẻ micro SD, đọc và ghi dữ liệu ở thẻ SD. Các chân GPIO này có thể được sử dụng làm chân I / O nếu không sử dụng thẻ SD.

Tên chân Mô tả các chân phục vụ giao tiếp thẻ SD
GPIO2 Chân Data0 (hỗ trợ RTC & ADC)
GPIO4 / Đèn flash Chân Data1 (hỗ trợ RTC & ADC)
GPIO12 Chân Data2 (hỗ trợ RTC & ADC)
GPIO13 Chân Data3 (hỗ trợ RTC & ADC)
GPIO14 CLK (hỗ trợ RTC & ADC)
GPIO15 CMD (hỗ trợ RTC & ADC)

Lưu ý: Nếu bạn không sử dụng thẻ SD trong dự án ESP32-CAM của mình, bạn có thể sử dụng các chân GPIO này cho các chức năng khác như đầu vào tín hiệu digital, đầu ra tín hiệu digital, ADC và RTC.

Bạn có thể tìm thêm các tính năng của các chân này trong bài viết sau:

Chân LED flash

ESP32-CAM cũng được tích hợp đèn flash có độ sáng cao. Flash này có thể được sử dụng hỗ trợ cho máy ảnh khi chụp ảnh trong bóng tối. GPIO4 được kết nối với một đèn flash này (nếu được lập trình), nó sẽ nhấp nháy khi máy ảnh chụp ảnh. 

chan-led-flash-ESP32

GPIO4 cũng được kết nối với thẻ SD, vì vậy nó có thể gây khó khăn khi truy nhập cả hai cùng một lúc. Điều đó có nghĩa là đèn flash có thể phát sáng không mong muốn khi sử dụng thẻ SD.

Nếu bạn không muốn đèn flash sáng lên khi sử dụng thẻ SD, bạn có thể code chương trình không sử dụng GPIO4 làm đường dữ liệu cho thẻ SD bằng cách sử dụng dòng này:

SD_MMC.begin("/sdcard", true)

Chân kết nối máy ảnh

Bảng sau liệt kê các kết nối chân GPIO với Camera OV2640 và tên biến tương ứng mà chúng ta sẽ sử dụng trong chương trình của mình.

MÁY ẢNH OV2640 ESP32 Tên biến trong code
D0 GPIO5 Y2_GPIO_NUM
D1 GPIO18 Y3_GPIO_NUM
D2 GPIO19 Y4_GPIO_NUM
D3 GPIO21 Y5_GPIO_NUM
D4 GPIO36 Y6_GPIO_NUM
D5 GPIO39 Y7_GPIO_NUM
D6 GPIO34 Y8_GPIO_NUM
D7 GPIO35 Y9_GPIO_NUM
XCLK GPIO0 XCLK_GPIO_NUM
PCLK GPIO22 PCLK_GPIO_NUM
VSYNC GPIO25 VSYNC_GPIO_NUM
HREF GPIO23 HREF_GPIO_NUM
SDA GPIO 26 SIOD_GPIO_NUM
SCL GPIO 27 SIOC_GPIO_NUM
PIN NGUỒN GPIO 32 PWDN_GPIO_NUM

Các tính năng và thông số kỹ thuật của ESP32-CAM

Chi tiết đặc tính và thông số kỹ thuật của module cực kỳ tiện dụng này được liệt kê dưới đây:

Đặc tính Khả dụng
Module ESP32-CAM AI-Thinker
Bộ xử lý LX6 32-bit
Kiến ​​trúc vi mạch Đường dữ liệu 7 lớp
SPI Flash 32-bit
SRAM 520 KB
PSRAM 4MB
Dãy Nhiệt độ hoạt động -20 0 C – 85 0 C
Điện áp hoạt động 5V
UART 1
Tốc độ truyền UART 115200 bps
SPI
I2C
PWM
Wifi 802.11 b / g / n
Công suất truyền tải  802.11 b: 17 ± 2 dBm ở tốc độ 11Mbps. 802.11 g: 14 ± 2 dBm ở tốc độ 54Mbps 802.11 n: 13 ± 2 dBm ở MCS7
Bluetooth Bluetooth 4.2 BR / EDR theo tiêu chuẩn BLE
Hỗ trợ thẻ TF Hỗ trợ tối đa 4G
Bảo mật dữ liệu WPA / WPA2 / WPA2-Enterprise / WPS
Định dạng hình ảnh đầu ra BMP, GRAYSCALE, JPEG (chỉ hỗ trợ OV2640)
Dải quang phổ 2412 MHz – 2484 MHz
Độ lợi ăng ten trên bo mạch PCB 2dBi
Số cổng đầu vào / đầu ra 9
Độ nhạy  CCK 1 Mb /s: -90dBm.

 CCK 11 Mb / s: -85dBm

 6 Mb / s (1/2 BPSK): -88dBm

 54 Mb / s (3/4 64-QAM): -70dBm

 MCS7 (65 Mb / s, 72,2 Mb / s): -67dBm 

Công suất tiêu thụ Khi tắt đèn flash tiêu tốn: 180mA ở 5V. Bật đèn flash với độ sáng tối đa: 310mA ở 5V. Chế độ ngủ sâu (sleep-mode): có mức tiêu thụ điện năng thấp nhất có thể đạt 6mA ở 5V. Modem-sleep mode: <20mA ở 5V, slight-sleep mode: <6.7mA ở 5V
Tần số xung nhịp 240 MHz (tối đa)
Loại package DIP-16
kích cỡ package 27 x 40,5 x 4,5 (± 0,2) mm

Các tính năng chi tiết

Một số tính năng nổi bật bổ sung cho module được mô tả như sau:

  • Hỗ trợ cấu hình thông minh AirKiss và có các chân điện dung GPIO.
  • 18 bộ chuyển đổi tín hiệu analog sang tín hiệu digital với độ phân giải cao.
  • 2 bộ chuyển đổi tín hiệu digital sang tín hiệu analog với độ phân giải 8-bit.
  • Tiêu thụ công suất lên đến 600 DMIPS ở tần số xung nhịp 160 MHz.
  • Module có WiFi tốc độ cao 2,4 GHz.
  • Module ESP32 có 2 I2C, 3 SPI và 3 UART để truyền dữ liệu nối tiếp nhanh chóng.
  • Nó có 16 kênh PWM để xuất tín hiệu điều chế độ rộng xung.
  • Nó có một cổng TF và hỗ trợ tải hình ảnh từ WiFi.
  • ESP32 hỗ trợ 4 chế độ hoạt động khác nhau là  STA / AP / STA + AP
  •  Lập trình nhúng Lwip và FreeRTOS. 
  • RTC hỗ trợ khởi động module từ sleep-mode.
  • Một đèn flash tích hợp được cung cấp cho module để tạo ánh sáng chụp ảnh sáng rõ.
  • Một vi mạch công nghệ CMOS có bộ khuếch đại công suất đầu ra có thể điều chỉnh
  • ESP32 có chu kỳ hoạt động thấp để giảm tiêu thụ điện năng, giúp nó hoạt động hiệu quả.

Lập trình ESP32-CAM AI-Thinker

Không giống như bộ công cụ dành cho họ ESP32 hoặc các bo mạch ESP32 khác, bo mạch ESP32-CAM AI-Thinker không có bất kỳ bộ lập trình tích hợp nào để ghi code vào chip ESP32-S. 

Do đó, để tải code lên, chúng ta phải sử dụng Bộ chuyển đổi kết nối USB sang UART bên ngoài hoặc Bộ lập trình FTDI.

ESP32-CAM-AI-Thinker

Sơ đồ sau đây cho biết kết nối giữa ESP32-CAM và cáp FTDI. Chúng ta sử dụng các chân UART của ESP32-CAM kết nối với cáp FTDI.

ESP32-CAM Cáp FTDI
GND GND
5V VCC (5V)
U0RX / GPIO3 TX
U0TX / GPIO1 RX
GPIO0 GND

Trong hướng dẫn tiếp theo, chúng ta sẽ xem cách cài đặt tiện ích bổ sung ESP32-CAM trong Arduino IDE và cách tải code ví dụ lên bo mạch AI-Thinker bằng cáp FTDI.

Tóm lại, trong hướng dẫn này, chúng ta đã học được những điều sau:

  • Giới thiệu ESP32-CAM AI-Thinker, thiết bị ngoại vi và ứng dụng
  • Sơ đồ chân
  • Chân nguồn và chân đầu ra nguồn
  • GPIO33 – Đèn LED đỏ tích hợp
  • Chân UART
  • Chân GPIO0 – Chọn chế độ đèn flash
  • Chân thẻ SD
  • Chân đèn LED flash  
  • Chân kết nối máy ảnh
  • Lập trình ESP32-CAM AI-Thinker

Trong hướng dẫn sắp tới, chúng ta sẽ xem cách tạo server web với ESP32-CAM với tính năng phát video trực tiếp.

>>> Mời anh em xem thêm:

Tôi là một người làm việc trong lĩnh vực cơ khí, thiết bị công nghiệp....Blog là nơi tôi chia sẻ thông tin hữu ích đến các bạn đọc.
Subscribe
Notify of
0 Bình luận
Inline Feedbacks
View all comments