Sử dụng cảm biến thị giác - Python
Hộp công cụ giáo viên
-
Mục đích của phần này
Để sử dụng Cảm biến thị giác hiệu quả, học sinh cần có khả năng cấu hình và điều chỉnh cảm biến tùy theo môi trường sử dụng. Trong hoạt động sau, học sinh sẽ học cách thực hiện cả hai.
Để biết thêm thông tin về lập trình Cảm biến thị giác bằng VEXcode V5, hãy truy cập thông tin trợ giúp trong VEXcode V5 dành choPythonhoặc xem Phần V5 của Thư viện VEX.
Sau đây là phác thảo những gì học sinh của bạn sẽ làm trong hoạt động này:
-
Mở dự án ví dụ Phát hiện đối tượng (Tầm nhìn).
-
Cấu hình Cảm biến thị giác.
-
Chạy dự án ví dụ Phát hiện đối tượng (Tầm nhìn).
-
Thảo luận và suy ngẫm.
-
Điều chỉnh cảm biến thị giác.
Mẹo dành cho giáo viên
Nếu đây là lần đầu tiên học sinh sử dụng VEXcode V5, các em có thể truy cập nhiều bài viết hữu ích trong Thư viện VEX.
Mẹo dành cho giáo viên
-
Sử dụng tính năng Tự động hoàn thành
Tự động hoàn thành là một tính năng trong VEXcode V5 giúp dự đoán phần còn lại của lệnh bạn đang nhập. Khi học sinh làm việc với VEXcode V5, hãy khuyến khích các em sử dụng tính năng Tự động hoàn thành để hỗ trợ cú pháp Python. Bạn có thể nhận thấy chức năng tự động hoàn thành khi bạn bắt đầu nhập lệnh. Sử dụng phím “Lên” và “Xuống” để chọn tên bạn muốn, sau đó nhấn “Tab'' hoặc (Enter/Return) trên bàn phím để thực hiện lựa chọn. Để biết thêm thông tin về cách sử dụng tính năng Tự động hoàn thành, hãy xem bài viết này.
Nhận phần cứng cần thiết, máy tính xách tay kỹ thuật của bạn và mở VEXcode V5.
| Số lượng | Vật liệu cần thiết |
|---|---|
| 1 |
Bộ CÔNG cụ VEX V5 Classroom Starter Kit |
| 1 |
VEXcode V5 (phiên bản mới nhất, Windows, macOS) |
| 1 |
Sổ tay kỹ thuật |
| 1 |
Định cấu hình cảm biến thị giác (Thư viện VEX) |
| 1 |
Điều chỉnh cảm biến thị giác (Thư viện VEX) |
| 1 |
Dự án ví dụ về Phát hiện đối tượng (Tầm nhìn) |
Hoạt động này sẽ cung cấp cho bạn các công cụ để sử dụng Cảm biến Thị giác.
Bạn có thể sử dụng thông tinHelpbên trong VEXcode V5 để tìm hiểu về các lệnh.

Bước 1: Mở một dự án mẫu
VEXcode V5 chứa nhiều dự án mẫu khác nhau. Bạn sẽ sử dụng một trong số chúng trong chuyến khám phá này.
Mở dự án ví dụ về Phát hiện đối tượng (Tầm nhìn) bằng cách hoàn thành các bước sau:
- Mở menu Tệp.
- Chọn Mở Ví dụ.
- Sử dụng thanh bộ lọc ở đầu ứng dụng và chọn "Cảm biến".

Chọn và mở dự án ví dụ về Phát Hiện Vật Thể (Tầm Nhìn).
![]()
Lưu dự án của bạn dưới dạng Phát hiện đối tượng.
- Kiểm tra để đảm bảo tên dự án Phát hiện đối tượng hiện có trong cửa sổ ở giữa thanh công cụ.
Mẹo dành cho giáo viên
-
Đảm bảo rằng học sinh đã chọn Mở Ví dụ từ menu Tệp.
-
Đảm bảo rằng học sinh đã chọn dự án Ví dụ Phát hiện vật thể (Tầm nhìn). Bạn có thể chỉ cho học sinh biết rằng có một số lựa chọn để lựa chọn trên trang Ví dụ mở.
-
Bạn có thể yêu cầu học sinh thêm chữ cái đầu hoặc tên nhóm của mình vào tên dự án. Điều này sẽ giúp phân biệt các chương trình nếu bạn yêu cầu sinh viên nộp bài.
-
Vì VEXcode V5 có tính năng tự động lưu nên không cần phải lưu lại dự án sau khi đã lưu lần đầu tiên.
-
Nếu học sinh cần trợ giúp về việc tiết kiệm, hãy hướng dẫn họ đến một trong những bài viết sau:
Bước 2: Định cấu hình và sử dụng cảm biến thị giác
- Bắt đầu bằng cách đọcCảm biến tầm nhìn - Cấu hình robot - VEXcode V5.
- Sau đó, đọcVision Sensor Adjustments-Robot Config-VEXcode V5
- Tiếp theo, định cấu hình Cảm biến Tầm nhìn cho ba đối tượng màu: đỏ, xanh lá cây và xanh dương.
Mở dự án ví dụ về Phát Hiện Vật Thể (Tầm Nhìn) đã lưu trước đó.
Cảm biến Tầm nhìn được sử dụng như thế nào trong dự án này? Dự đoán những gì sẽ xảy ra khi dự án được chạy và viết ra các dự đoán trong sổ ghi chép kỹ thuật của bạn.
# Thư viện nhập
từ nhập vex *
# Bắt đầu nhập mã dự án
check_red = Event()
check_blue = Event()
check_green = Event()
# Sẽ kiểm tra xem có vật thể màu xanh dương nào theo quan điểm của cảm biến vision
# và hiển thị kết quả trên dòng 1 trên màn hình của V5 Brain
def has_blue_callback():
brain.screen.clear_row (1) brain.screen.set_cursor
(1, 1) vexcode
_vision_5_objects = vision_5.take_snapshot (vision_5__ BLUEBOX)
nếu vexcode_vision_5_objects và len(vexcode_vision_5_objects) > 0: brain.screen.print ("Blue Object
Found")
khác:
brain.screen.print("Không có vật thể màu xanh")
# Sẽ kiểm tra xem có vật thể màu đỏ theo quan điểm của cảm biến tầm nhìn
# và hiển thị kết quả trên dòng 3 trên màn hình của V5 Brain
def has_red_callback(): brain.screen.clear_row (3) brain.screen.set_cursor (
3, 1)
vexcode_vision_5_
objects = vision_5.take_snapshot (vision_5__REDBOX)
nếu vexcode_vision_5_objects và len(vexcode_vision_5_objects) > 0: brain.screen.print ("Tìm thấy vật thể màu đỏ"
)
khác: brain.screen.print ("Không có vật thể màu
đỏ")
# Sẽ kiểm tra xem có vật thể màu xanh lá cây theo quan điểm của tầm nhìn
# cảm biến và hiển thị kết quả trên dòng 5 trên màn hình của V5 Brain
def has_green_callback(): brain.screen.clear_row (5) brain.screen.set_cursor (
5, 1)
vexcode_vision_5_objects
= vision_5.take_snapshot (vision_5__ GREENBOX)
if vexcode_vision_5_objects and len(vexcode_vision_5_objects) > 0: brain.screen.print ("Green Object Found")
else: brain.screen.print
("No Green Object")
# register event handlers
check_blue (has_blue_callback) check_red (has_red_callback)
check_green (has_green_callback)
# small delay to ensure
that the event handlers are ready to be used
wait (15, MSEC) # set the print for all font for future prints to the V5 screenscreen._setfont (Font.MON40)
# chạy liên tục để kiểm tra dữ liệu
trong khi dữ liệu mới:
Trueblue_checkblue (15, msec)
# set the print for all in cho tất cả
các bản in
trong tương lai
để kiểm tra
V5 màn hình não.set.set_ontontfont (Font.MON40)- Tải xuống và chạy dự án. Đặt các vật thể có màu khác nhau trước Cảm biến Tầm nhìn và quan sát hành vi của robot. Ghi lại trong sổ ghi chép kỹ thuật của bạn dự đoán của bạn khác hoặc chính xác như thế nào so với những gì bạn thực sự quan sát được từ dự án.
Mẹo dành cho giáo viên
Các vật thể ba màu không nhất thiết phải là hình khối, chúng có thể là bất kỳ vật thể nào có màu xanh lá cây, đỏ và xanh lam tương đối nhỏ.
Thảo luận về động lực
-
Câu trả lời
Dẫn dắt một cuộc thảo luận trong lớp để học sinh chia sẻ những gì các em dự đoán dự án này sẽ làm trong sổ tay kỹ thuật của mình và cũng suy ngẫm về cách cấu hình Cảm biến thị giác.
Dẫn dắt cuộc thảo luận bằng cách đặt những câu hỏi sau:
-
Các bước để cấu hình Cảm biến thị giác là gì?
-
Cấu trúcif else có tác dụng gì?
-
Điều gì sẽ xảy ra với khả năng phát hiện vật thể của Cảm biến thị giác nếu chúng ta đổi phòng?
Câu trả lời sẽ khác nhau:
-
Học sinh cần lưu ý rằng tên của đối tượng phải được quyết định. Vật thể phải được đặt vào khung của Cảm biến thị giác và giữ yên bằng nút "Đóng băng". Sau đó, màu sắc sẽ được chọn và cấu hình bằng nút "Đặt". Học sinh nên phác thảo các bước được liệt kê trongbài viết này.
-
Cấu trúcif elsechạy các lệnh bên trong phần đầu tiên hoặc phần thứ hai củaif elsedựa trên giá trị Boolean được báo cáo. Bạn có thể tìm thêm thông tin về cách sử dụng hướng dẫn này trong phần Trợ giúp.
-
Nếu Cảm biến thị giác được yêu cầu phát hiện các vật thể trong môi trường khác, ánh sáng có thể thay đổi và màu sắc của các vật thể có thể trông khác đi. Điều này có thể khiến Cảm biến thị giác khó phát hiện vật thể.
Mở rộng việc học của bạn
-
Cấu hình thêm các đối tượng
Chọn hai vật thể có màu khác để cấu hình, có thể là màu trắng, tím, vàng, v.v...

Nếu học sinh cần trợ giúp, hãy giới thiệu họ đến thông tinTrợ giúphoặc bài viết Cấu hình cảm biến thị giác V5.
Bước 3: Điều chỉnh cảm biến thị giác
Thông thường, một đối tượng được cấu hình để được Cảm biến Tầm nhìn nhận dạng trong một môi trường, ví dụ, trong lớp học. Khi Cảm biến Tầm nhìn sau đó được đưa vào một môi trường khác, chẳng hạn như môi trường thi đấu, cảm biến Tầm nhìn có thể không nhận ra đối tượng. Điều này thường xảy ra do sự thay đổi về ánh sáng sau khi Cảm biến thị giác đã được cấu hình. Để giải quyết vấn đề này, bạn có thể phải điều chỉnh Cảm biến Tầm nhìn của mình.
- Bắt đầu bằng cách đọcĐiều chỉnh Cảm biến thị giác V5 trong VEXcode V5.
- Tiếp theo, điều chỉnh Cảm biến thị giác cho ba vật thể có màu: đỏ, xanh lá cây và xanh lam.
Mở dự án ví dụ về Phát Hiện Vật Thể (Tầm Nhìn) đã lưu trước đó.
Việc điều chỉnh Cảm biến Tầm nhìn sẽ ảnh hưởng như thế nào đến khả năng phát hiện vật thể? Đưa Clawbot đến một phần khác của căn phòng với ít nhiều ánh sáng.
- Tải xuống và chạy dự án. Đặt các vật thể có màu khác nhau trước Cảm biến Tầm nhìn và quan sát hành vi của robot. Ghi lại trong sổ ghi chép kỹ thuật của bạn cảm biến tầm nhìn phát hiện các vật thể tốt như thế nào. Cảm biến thị giác có cần điều chỉnh sau khi thay đổi vị trí không?
- Điều chỉnh Cảm biến Thị giác khi cần thiết. Kiểm tra Cảm biến Tầm nhìn sau khi đã được điều chỉnh để xác định xem nó có thể phát hiện vật thể tốt hơn và điều chỉnh khi cần thiết hay không.
Thảo luận thúc đẩy
-
Suy ngẫm về hoạt động
H: Cảm biến thị giác có phát hiện vật thể như bạn mong đợi không?
Đ: Câu trả lời có thể khác nhau; tuy nhiên, mục tiêu của câu hỏi này là thúc đẩy tư duy nhận thức. Học sinh cần lưu ý rằng khả năng phát hiện vật thể của Cảm biến thị giác có thể thay đổi tùy thuộc vào môi trường và ánh sáng.
H: Tại sao việc có thể điều chỉnh Cảm biến thị giác khi cần lại quan trọng?
Đ: Mặc dù câu trả lời có thể khác nhau, nhưng câu trả lời chung là nếu một robot sử dụng Cảm biến thị giác và được đưa đi thi đấu hoặc thậm chí được sử dụng trong một trò chơi hoặc thử thách, thì hiệu suất hoạt động của robot sẽ phụ thuộc vào độ chính xác của Cảm biến thị giác. Việc điều chỉnh rất quan trọng để đảm bảo độ chính xác.
Mở rộng việc học của bạn
-
Nhiều đối tượng
Yêu cầu học sinh chạy dự án Phát hiện vật thể (Tầm nhìn) và đặt nhiều hơn một vật thể đã cấu hình trước Cảm biến tầm nhìn. Chuyện gì xảy ra? Yêu cầu họ ghi lại những phát hiện của mình vào sổ tay kỹ thuật.
Bây giờ, hãy yêu cầu học sinh đặt một vật thể đã được cấu hình và một vật thể chưa biết hoặc chưa được cấu hình trước Cảm biến thị giác. Chuyện gì xảy ra? Yêu cầu họ ghi lại những phát hiện của mình vào sổ tay kỹ thuật.
Hỏi học sinh trước khi thử nghiệm, điều gì sẽ xảy ra nếu họ đặt ba vật thể đã được cấu hình trước Cảm biến thị giác? Yêu cầu học sinh viết ra dự đoán của mình trước khi thử nghiệm. Yêu cầu họ ghi lại những quan sát của mình sau khi thử nghiệm.

Thúc đẩy thảo luận về những gì học sinh dự đoán và quan sát được.
Thúc đẩy cuộc thảo luận bằng cách hỏi:
- Sự khác biệt giữa một, hai và ba đối tượng là gì?
- Bạn có thể điều chỉnh dự án theo bất kỳ cách nào để nhận dạng nhiều đối tượng không?