Skip to main content

Bài 1: Cảm biến cản là gì?

Trong Bài học này, bạn sẽ tìm hiểu cảm biến là gì và tại sao bạn nên sử dụng cảm biến với Robot VR. Cảm biến đầu tiên mà bạn sẽ tìm hiểu là Cảm biến cản. Bạn sẽ tìm hiểu cách hoạt động của Cảm biến cản và cách sử dụng Cảm biến cản VR Robot trong dự án Python VR VEXcode.

Kết quả học tập

  • Xác định rằng Cảm biến cản là một loại công tắc có thể báo cáo khi được nhấn hoặc không được nhấn.
  • Xác định rằng Cảm biến cản có thể được sử dụng để gây ra hành động cho Robot VR khi được nhấn hoặc không được nhấn.
  • Xác định rằng left_bumper.pressedright_bumper.pressedlà các lệnh báo cáo giá trị Boolean về Cảm biến cản.
  • Mô tả lý do tại sao Cảm biến cản được sử dụng trong một dự án.

Áp dụng

Cảm biến rất cần thiết cho ngành robot. Để một Robot VR thực sự được coi là một robot, nó phải có khả năng cảm nhận và tương tác với môi trường xung quanh. Điều này thường được gọi là vòng lặp quyết định Cảm nhận → Suy nghĩ → Hành động.

Sơ đồ thể hiện một chu trình liên tục với ba giai đoạn được kết nối bằng các mũi tên. Giai đoạn đầu tiên, được gọi là Cảm nhận, bao gồm văn bản Cảm nhận Môi trường, cho biết quá trình bắt đầu bằng việc thu thập thông tin từ môi trường xung quanh. Chuyển sang giai đoạn tiếp theo có tên là Suy nghĩ, văn bản có nội dung Đưa ra quyết định dựa trên dữ liệu cảm biến từ môi trường, cho thấy bước này bao gồm việc xử lý thông tin cảm nhận được để đưa ra quyết định. Giai đoạn cuối cùng, được gọi là Hành động, bao gồm văn bản Thực hiện Quyết định, cho thấy các hành động được thực hiện dựa trên các quyết định. Các mũi tên tạo thành một vòng lặp, đưa quá trình trở lại giai đoạn Cảm giác, thể hiện một chu trình liên tục của cảm nhận, suy nghĩ và hành động.

Robot VR sử dụng cảm biến để thu thập dữ liệu từ môi trường xung quanh (Cảm biến), đưa ra quyết định dựa trên thông tin này (Suy nghĩ) và biến thông tin đó thành hướng dẫn cho các hành vi (Hành động).

Cảm biến cho phép Robot VR tương tác với môi trường xung quanh và cho phép người dùng tạo ra các dự án năng động hơn. Những dự án năng động này đòi hỏi Robot VR phải tương tác và phản ứng với môi trường thay đổi.

Cảm biến cản

Trong Đơn vị này, bạn sẽ sử dụng Cảm biến cản, một cảm biến có thể phát hiện tiếp xúc vật lý. Cảm biến cản được sử dụng để thông báo cho Robot VR khi nó tiếp xúc với vật thể hoặc tường. Sau đó, Robot VR có thể sử dụng thông tin được báo cáo từ Cảm biến cản trái hoặc phải để đưa ra quyết định.

Robot VR có hai cảm biến cản nằm ở phía trước.

Góc nhìn phía trước của Robot VR. Hai cảm biến cản trước được đánh dấu bằng hộp màu đỏ.

Cảm biến cản là công tắc báo hiệu khi có người nhấn hay không nhấn.

  • Cảm biến cản sẽ báo cáo giá trị cảm biến là Đúng khi Cảm biến cản được nhấn.
  • Cảm biến cản sẽ báo cáo giá trị cảm biến là Sai khi Cảm biến cản không được nhấn .

Cảm biến cản được ép bởi các bức tường trong Mê cung tường Sân chơihoặc bởi các bức tường bên ngoài bao quanh các Sân chơi khác.

Robot VR trong Sân chơi Mê cung Tường. Robot đang nhìn vào bức tường phía trước, cho thấy nó cần phải quay lại để có thể di chuyển về phía trước.

Đọc bài viết Bumper Sensor - Tính năng của Robot - VEX VRđể biết thông tin chi tiết về cách thức hoạt động của Bumper Sensor.

Lệnh nhấn Bumper

Cảm biến cản được sử dụng để xác định xem Robot VR có chạm vào vật thể hay tường hay không. Dữ liệu đó sau đó có thể được sử dụng trong một dự án để VR Robot có thể đưa ra quyết định khi nhấn Cảm biến cản. 

Sử dụng lệnh left_bumper.pressedright_bumper.pressedtrong một dự án văn bản để kiểm tra tình trạng của Cảm biến cản.

Left_bumper.pressed right_bumper.pressedlà các lệnh báo cáo Boolean, báo cáoTruenếu Bumper được nhấnFalse nếu Bumper không được nhấn.

Hai lệnh nhấn cản được viết trên hai hàng để hiển thị sự khác biệt giữa cản bên trái hoặc bên phải. Ở hàng trên cùng, lệnh có nội dung là right underscore bumper dot pressed (). Ở hàng dưới cùng, lệnh có nội dung là left underscore bumper dot pressed ().

Các lệnhleft_bumper.pressedright_bumper.pressedthường được sử dụng với cấu trúc Điều khiển, như vòng lặpwhile, để Robot VR có thể sử dụng dữ liệu từ Cảm biến cản để đưa ra quyết định. Bạn sẽ tìm hiểu thêm về vòng lặpwhiletrong Bài học tiếp theo. 

Cảm biến cản và vấn đề mê cung tường

Khi nghĩ về Bài toán Mê cung tường, mục tiêu là để Robot VR di chuyển khi Cảm biến cản không được nhấn. Khi nhấn Cảm biến cản, VR Robot đã đến được tường và sau đó cần dừng lại hoặc rẽ để tiếp tục đi trong mê cung. 

Trong ví dụ sau, VR Robot sẽ di chuyển về phía trước từ vị trí bắt đầu cho đến khi nhấn vào Thanh cản bên trái khi nó chạm vào bức tường đối diện. Khi nhấn vào cản trái, VR Robot sẽ dừng lái. 

Tập tin video

Bạn sẽ thấy Bảng điều khiển hiển thị giá trị mà Cảm biến cản báo cáo theo thời gian thực khi dự án đang chạy. Khi Cảm biến cản không được nhấn, giá trị sẽ được báo cáo là Sai.

# Thêm mã dự án vào ""main"
def main():
	while not left_bumper.pressed():
		drivetrain.drive(FORWARD)
		wait(5, MSEC)
	drivetrain.stop()

# Luồng VR - Không xóa
vr_thread(main())
Sân chơi mê cung tường hiển thị bảng điều khiển của Sân chơi và Robot VR ở vị trí bắt đầu, không chạm vào bất kỳ bức tường nào. Cảm biến cản trong bảng điều khiển sân chơi được đánh dấu bằng hộp màu đỏ, báo là Sai, cho biết cả hai đều không được nhấn.

Khi nhấn Cảm biến cản và Robot VR dựa vào tường, giá trị sẽ được báo cáo là Đúng.

# Thêm mã dự án vào ""main"
def main():
	while not left_bumper.pressed():
		drivetrain.drive(FORWARD)
		wait(5, MSEC)
	drivetrain.stop()

# Luồng VR - Không xóa
vr_thread(main())
Sân chơi mê cung trên tường hiển thị bảng điều khiển của Sân chơi khi mặt trước của Robot VR chạm vào tường. Các cảm biến cản trong bảng điều khiển của sân chơi được đánh dấu bằng một hộp màu đỏ, báo là Đúng, cho biết cả hai đều đang được nhấn.

Bạn có thể sử dụng Bảng điều khiển bất kỳ lúc nào để giúp trực quan hóa dữ liệu cảm biến khi dự án của bạn đang chạy. Lưu ý, Bảng điều khiển có thể được ẩn và mở lại bất cứ lúc nào, như được hiển thị trong video này. Trong đoạn video clip bên dưới, menu hamburger ở góc trên bên trái của cửa sổ Sân chơi được chọn để hiển thị nút Bảng điều khiển bên dưới. Sau đó, nút Bảng điều khiển được chọn và Bảng điều khiển sẽ mở ra. Quá trình này được lặp lại để đóng Bảng điều khiển.

Tập tin video

Câu hỏi

Vui lòng chọn liên kết bên dưới để truy cập bài kiểm tra bài học.

Google Doc / .docx / .pdf