Bài 12 – camera + cảm biến khoảng cách

Thương hiệu: (Đang cập nhật ...) Loại: (Đang cập nhật ...)

Liên hệ
CAMERA + CẢM BIẾN KHOẢNG CÁCH VÀ XỬ LÝ HÌNH ẢNH TRÊN DRONE Nhận biết vật cản – đo khoảng cách – xử lý dữ liệu camera – xây dựng Drone thông minh Sau khi hoàn thành: Bài 9: Nạp chương trình ESP32 Bài 10: Hiệu chỉnh Drone – PID – Motor Mixing Bài 11: Bay tự động A → B học viên đã có nền tảng để x...

CAMERA + CẢM BIẾN KHOẢNG CÁCH VÀ XỬ LÝ HÌNH ẢNH TRÊN DRONE

Nhận biết vật cản – đo khoảng cách – xử lý dữ liệu camera – xây dựng Drone thông minh

Sau khi hoàn thành:

  • Bài 9: Nạp chương trình ESP32
  • Bài 10: Hiệu chỉnh Drone – PID – Motor Mixing
  • Bài 11: Bay tự động A → B

học viên đã có nền tảng để xây dựng hệ thống Drone có khả năng cảm nhận môi trường xung quanh.

Bài 12 đưa hệ thống lên một cấp độ mới:

Drone không chỉ biết mình đang bay như thế nào và đang ở đâu, mà còn có thể sử dụng cảm biến để phát hiện vật cản và camera để quan sát, phân tích hình ảnh.


1. MỤC TIÊU BÀI HỌC

Sau bài học, học viên có thể:

  • Hiểu vai trò của camera trên Drone.
  • Hiểu nguyên lý cảm biến khoảng cách.
  • Đọc dữ liệu cảm biến bằng ESP32.
  • Xác định vật cản phía trước.
  • Thiết lập khoảng cách an toàn.
  • Hiểu nguyên lý xử lý hình ảnh.
  • Phân biệt xử lý ảnh và nhận dạng đối tượng.
  • Kết hợp camera với cảm biến khoảng cách.
  • Xây dựng logic tránh vật cản cơ bản.
  • Hiểu giới hạn của ESP32 khi xử lý hình ảnh.

2. TẠI SAO DRONE CẦN CAMERA VÀ CẢM BIẾN?

Ở Bài 11, Drone có thể thực hiện:


A → B

Nhưng nếu xuất hiện vật cản:


A ───────────────→ B
          █
          █ Vật cản
          █

Drone cần phát hiện:

Phía trước có vật cản hay không?

Nếu có, hệ thống phải đưa ra quyết định:


Phát hiện vật cản
       ↓
Giảm tốc / Dừng
       ↓
Đánh giá hướng khác
       ↓
Tránh vật cản
       ↓
Tiếp tục nhiệm vụ


3. HAI NHÓM CẢM BIẾN

Trong bài học có thể chia thành hai nhóm:

Cảm biến khoảng cách

Ví dụ:

  • Ultrasonic.
  • ToF.
  • LiDAR.

Nhiệm vụ:

Đo vật thể cách Drone bao xa.

Camera

Nhiệm vụ:

Thu nhận hình ảnh của môi trường.

Hai loại cảm biến có nhiệm vụ khác nhau nhưng có thể kết hợp với nhau.


4. CẢM BIẾN KHOẢNG CÁCH

Ví dụ sử dụng cảm biến ToF hoặc cảm biến siêu âm.

Mô hình:


Drone
  │
  │ khoảng cách
  ↓
████████
Vật cản

Cảm biến trả về:


Distance = 120 cm

ESP32 có thể sử dụng dữ liệu này để quyết định.


5. THIẾT LẬP NGƯỠNG AN TOÀN

Ví dụ:


Distance > 150 cm
→ Bình thường

50 cm < Distance ≤ 150 cm
→ Cảnh báo

Distance ≤ 50 cm
→ Vật cản gần

Khi:


Distance ≤ Safety Distance

Drone có thể:


Giảm tốc

hoặc:


Hover

hoặc:


Thực hiện thuật toán tránh vật cản

Giá trị thực tế phải được xác định theo kích thước Drone, tốc độ bay và loại cảm biến.


6. LOGIC PHÁT HIỆN VẬT CẢN

Thuật toán cơ bản:


Đọc cảm biến
      ↓
Distance
      ↓
Distance < Threshold?
      ↓
   ┌──┴──┐
  Không  Có
   ↓      ↓
Bay     Dừng /
bình    giảm tốc
thường

Ví dụ:


if (distance < safetyDistance) {
    stopDrone();
}
else {
    continueFlight();
}

Đây là phiên bản đơn giản nhất.


7. KHÔNG NÊN CHỈ DÙNG MỘT CẢM BIẾN

Nếu chỉ có cảm biến phía trước:


        Drone
          ↓
       Sensor
          ↓
       Vật cản

Drone chỉ biết phía trước có gì.

Nếu muốn xây dựng hệ thống tốt hơn, có thể bố trí:


          FRONT
            ↑
            │
     ┌──────┴──────┐
     │    DRONE    │
     └─────────────┘
       ↑    ↑    ↑
      Left  ↓  Right

Có thể sử dụng nhiều cảm biến để đánh giá:

  • Trước.
  • Sau.
  • Trái.
  • Phải.
  • Phía dưới.

8. CAMERA TRÊN DRONE

Camera cung cấp dữ liệu dạng hình ảnh:


Camera
   ↓
Frame hình ảnh
   ↓
ESP32 / Bộ xử lý
   ↓
Xử lý hình ảnh
   ↓
Thông tin

Ví dụ camera có thể phát hiện:

  • Màu sắc.
  • Đường đi.
  • Biên vật thể.
  • Khu vực sáng/tối.
  • Vật thể.
  • Marker.
  • Khu vực cần theo dõi.

9. XỬ LÝ HÌNH ẢNH LÀ GÌ?

Camera chỉ cung cấp ảnh.

Hệ thống cần biến ảnh thành thông tin có thể sử dụng.

Ví dụ:


Ảnh
 ↓
Tiền xử lý
 ↓
Lọc
 ↓
Phân vùng
 ↓
Tìm đặc điểm
 ↓
Kết quả

Ví dụ Drone nhìn thấy một vùng màu đỏ.

Chương trình có thể:


Camera
 ↓
Ảnh RGB
 ↓
Chuyển HSV
 ↓
Xác định vùng màu đỏ
 ↓
Tính tâm vùng đỏ
 ↓
Điều khiển Drone


10. PHÂN BIỆT XỬ LÝ ẢNH VÀ NHẬN DẠNG ĐỐI TƯỢNG

Đây là hai khái niệm khác nhau.

Xử lý hình ảnh

Ví dụ:

Tìm vùng màu đỏ trong ảnh.

Nhận dạng đối tượng

Ví dụ:

Xác định trong ảnh có người, xe hoặc vật thể cụ thể.

Nhận dạng đối tượng thường yêu cầu thuật toán hoặc mô hình học máy phức tạp hơn.


11. PHÂN VÙNG HÌNH ẢNH

Ví dụ Drone cần tìm vật thể màu đỏ.

Quy trình:


Camera
 ↓
Ảnh
 ↓
Chuyển không gian màu
 ↓
Đặt ngưỡng màu
 ↓
Tạo Mask
 ↓
Tìm vùng màu
 ↓
Tìm tâm vật thể

Kết quả có thể là:


Object Center = (x, y)

Từ đó Drone biết vật thể đang nằm:

  • Bên trái.
  • Chính giữa.
  • Bên phải.

12. CAMERA VÀ ĐIỀU KHIỂN DRONE

Ví dụ camera phát hiện vật thể lệch sang trái:


        Camera
           ↓
     █ vật thể

Nếu vật thể nằm lệch khỏi tâm ảnh, hệ thống có thể tạo lệnh điều chỉnh.

Mô hình:


Camera
  ↓
Object Detection
  ↓
Object Position
  ↓
Image Error
  ↓
Controller
  ↓
Roll / Pitch / Yaw
  ↓
Motor Mixing

Đây là nền tảng của Visual Feedback Control.


13. SAI SỐ HÌNH ẢNH

Giả sử tâm ảnh:


Image Center = 160

Tâm vật thể:


Object Center = 120

Sai số:


Error = 120 - 160
      = -40

Drone biết vật thể đang lệch về một phía.

Bộ điều khiển có thể sử dụng sai số này để điều chỉnh hướng.


14. KẾT HỢP CAMERA VÀ CẢM BIẾN KHOẢNG CÁCH

Đây là nội dung quan trọng nhất của bài.

Camera cho biết:

Vật thể nằm ở đâu trong hình ảnh?

Cảm biến khoảng cách cho biết:

Vật thể cách Drone bao xa?

Kết hợp:


             ┌── Camera
             │
Drone ───────┤
             │
             └── Distance Sensor
                    ↓
              Sensor Fusion
                    ↓
                Decision
                    ↓
             Flight Control

Ví dụ:


Camera:
Vật thể ở chính giữa

Distance:
0,8 m

Hệ thống có thể quyết định:


→ Có vật thể phía trước
→ Khoảng cách gần
→ Giảm tốc / dừng


15. THUẬT TOÁN TRÁNH VẬT CẢN CƠ BẢN


Đọc khoảng cách
       ↓
Có vật cản?
   ┌───┴───┐
 Không    Có
   ↓       ↓
Tiếp tục  Dừng
bay        ↓
       Kiểm tra trái/phải
             ↓
       Chọn hướng an toàn
             ↓
        Tránh vật cản
             ↓
       Tiếp tục nhiệm vụ

Đây là thuật toán giáo dục đơn giản.

Trong hệ thống thực tế, thuật toán tránh vật cản cần xét thêm tốc độ, quán tính, vùng an toàn và khả năng định vị.


16. KẾT HỢP VỚI BAY A → B

Ở Bài 11:


A → B

Ở Bài 12:


A → B
  ↓
Phát hiện vật cản
  ↓
Tránh
  ↓
Tiếp tục
  ↓
B

Có thể hình dung:


A ●───────────→ B
       █
       █
       █
    Vật cản

        ↓

A ●───────┐
          │
          └────────→ B

Đây là bước chuyển từ Navigation cơ bản sang Navigation có nhận biết môi trường.


17. CAMERA CÓ THỂ ĐƯỢC ỨNG DỤNG GÌ?

Trong giáo dục STEM, camera trên Drone có thể dùng cho:

Theo dõi vật thể


Camera → phát hiện → theo dõi

Theo màu sắc


Camera → nhận diện màu → điều khiển

Theo đường


Camera → phát hiện đường → điều hướng

Phát hiện vật cản


Camera → phát hiện vật thể → tránh

Nhận dạng marker


Camera → nhận diện marker → xác định hướng/vị trí


18. GIỚI HẠN CỦA ESP32

Đây là kiến thức quan trọng đối với học viên.

ESP32 có thể thực hiện nhiều tác vụ xử lý dữ liệu và hình ảnh ở mức phù hợp, nhưng tài nguyên tính toán vẫn hạn chế so với máy tính hoặc các nền tảng AI chuyên dụng.

Các bài toán nặng như:

  • Nhận dạng nhiều đối tượng.
  • Mô hình AI lớn.
  • Xử lý ảnh độ phân giải cao.
  • Computer Vision phức tạp.

có thể cần bộ xử lý mạnh hơn.

Có thể mở rộng hệ thống bằng:


Camera
   ↓
ESP32
   ↓
Wi-Fi
   ↓
Máy tính / Edge Computer
   ↓
Xử lý hình ảnh
   ↓
Lệnh điều khiển
   ↓
Drone


19. KIẾN TRÚC HỆ THỐNG

Một mô hình nghiên cứu có thể:


             CAMERA
                │
                ↓
          Xử lý hình ảnh
                │
                ↓
           Nhận biết
                │
                ↓
        ┌───────┴───────┐
        │               │
        ↓               ↓
Khoảng cách        Vị trí ảnh
        │               │
        └───────┬───────┘
                ↓
          Decision Logic
                ↓
        Flight Controller
                ↓
              PID
                ↓
          Motor Mixing
                ↓
            M1 M2 M3 M4

Đây là kiến trúc nền tảng để phát triển Drone thông minh.


20. BÀI THỰC HÀNH 1 – ĐO KHOẢNG CÁCH

Học viên kết nối cảm biến khoảng cách với ESP32.

Yêu cầu:


Đọc Distance
↓
Serial Monitor
↓
Hiển thị cm

Thử nghiệm:


10 cm
20 cm
50 cm
100 cm
150 cm

Ghi lại sai số đo.


21. BÀI THỰC HÀNH 2 – PHÁT HIỆN VẬT CẢN

Thiết lập:


Safety Distance = 50 cm

Logic:


if (distance < 50) {
    stopDrone();
}

Mục tiêu:

Khi vật thể tiến gần dưới khoảng cách an toàn, hệ thống phát lệnh dừng.


22. BÀI THỰC HÀNH 3 – CAMERA

Camera quan sát một vật thể có màu xác định.

Học viên thực hiện:


Camera
 ↓
Capture Image
 ↓
Tìm màu
 ↓
Tạo Mask
 ↓
Tìm vùng vật thể
 ↓
Tính tâm

Kết quả:


Object X
Object Y

Hiển thị lên màn hình hoặc Serial Monitor.


23. BÀI THỰC HÀNH 4 – KẾT HỢP

Kết hợp:


Camera
+
Distance Sensor

Ví dụ:


Camera:
Vật thể ở giữa ảnh

Distance:
40 cm

Thuật toán:


Phát hiện vật thể
       ↓
Khoảng cách < 50 cm
       ↓
Dừng Drone

Nếu:


Distance > 50 cm

có thể tiếp tục tiến về phía trước tùy logic của bài thực hành.


24. MỞ RỘNG: DRONE THEO DÕI VẬT THỂ

Một bài nâng cao:


Camera
 ↓
Phát hiện vật thể
 ↓
Tìm tâm vật thể
 ↓
Tính sai số X
 ↓
Điều khiển Yaw/Roll
 ↓
Giữ vật thể gần tâm ảnh

Mục tiêu:

Drone cố gắng giữ đối tượng nằm gần trung tâm khung hình.

Đây là bước đầu của Visual Tracking.


25. MỞ RỘNG: DRONE TRÁNH VẬT CẢN

Có thể xây dựng:


Camera
   +
Distance Sensor
   ↓
Obstacle Detection
   ↓
Decision
   ↓
Left / Right / Stop
   ↓
Flight Controller

Ví dụ:


Trước = 30 cm
Trái  = 100 cm
Phải  = 60 cm

Thuật toán có thể đánh giá:


Phía trước: Không an toàn
Bên trái:   Khoảng trống lớn hơn
Bên phải:  Khoảng trống nhỏ hơn

Sau đó đưa ra quyết định tránh theo logic được thiết kế.


26. CÂU HỎI KIỂM TRA

  1. Camera cung cấp loại dữ liệu gì?
  2. Cảm biến khoảng cách cung cấp thông tin gì?
  3. Xử lý hình ảnh khác nhận dạng đối tượng như thế nào?
  4. Vì sao cần đặt ngưỡng khoảng cách an toàn?
  5. Tại sao nên kết hợp nhiều cảm biến?
  6. Image Center là gì?
  7. Object Center là gì?
  8. Image Error được tính như thế nào?
  9. Camera có thể hỗ trợ điều khiển Drone như thế nào?
  10. Vì sao ESP32 có giới hạn khi xử lý AI/hình ảnh phức tạp?
  11. Sensor Fusion là gì?
  12. Làm thế nào để kết hợp Camera và cảm biến khoảng cách trong bài toán tránh vật cản?

27. CHECKLIST THỰC HÀNH

Cảm biến

☐ Đọc được khoảng cách
☐ Kiểm tra sai số
☐ Thiết lập ngưỡng an toàn

Camera

☐ Camera hoạt động
☐ Nhận được hình ảnh
☐ Xác định được vùng quan tâm
☐ Tìm được vị trí vật thể

Điều khiển

☐ Phát hiện vật cản
☐ Dừng Drone
☐ Xác định hướng tránh
☐ Tiếp tục nhiệm vụ

An toàn

☐ Thử thuật toán trước khi bay
☐ Có Manual Override
☐ Có giới hạn tốc độ
☐ Kiểm tra cảm biến trước khi thử nghiệm


28. KẾT QUẢ CẦN ĐẠT

Sau Bài 12, học viên cần hiểu được:


CAMERA
   ↓
Hình ảnh
   ↓
Xử lý
   ↓
Thông tin môi trường
   ↓
┌───────────────┐
│               │
↓               ↓
Vật thể      Khoảng cách
│               │
└───────┬───────┘
        ↓
Decision
        ↓
Flight Controller
        ↓
PID
        ↓
Motor Mixing
        ↓
Drone


29. KẾT LUẬN KHÓA HỌC

Sau 4 bài nâng cao:

Bài 9

Nạp chương trình ESP32

→ Học viên biết đưa firmware vào hệ thống.

Bài 10

Hiệu chỉnh Drone

→ Hiểu MPU6050, PID, Roll/Pitch/Yaw và Motor Mixing.

Bài 11

Bay tự động A → B

→ Drone bắt đầu thực hiện nhiệm vụ theo tọa độ và thuật toán.

Bài 12

Camera + cảm biến khoảng cách + xử lý hình ảnh

→ Drone bắt đầu nhận biết môi trường và phản ứng với những gì nó quan sát được.

Chuỗi kiến thức hoàn chỉnh:


ESP32
 ↓
Cảm biến
 ↓
Điều khiển
 ↓
PID
 ↓
Navigation
 ↓
Camera
 ↓
Xử lý hình ảnh
 ↓
Nhận biết môi trường
 ↓
Ra quyết định
 ↓
Drone tự động

Mục tiêu cuối cùng của chuỗi bài học không chỉ là làm cho Drone bay được, mà giúp học viên hiểu cách xây dựng một hệ thống Robot bay có khả năng CẢM NHẬN → PHÂN TÍCH → RA QUYẾT ĐỊNH → ĐIỀU KHIỂN.

popup

Số lượng:

Tổng tiền: