Skip to main content

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

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

Kết quả học tập

  • Xác định rằng Cảm biến khoảng cách báo cáo khoảng cách giữa cảm biến và vật thể gần nhất.
  • Nhận biết rằng Cảm biến khoảng cách xác định khoảng cách bằng cách sử dụng thời gian xung ánh sáng laser phản xạ từ vật thể và quay trở lại cảm biến.
  • Xác định lệnh found_objectbáo cáo giá trị Boolean nếu Cảm biến khoảng cách có tìm thấy đối tượng hay không.
  • Xác định lệnh get_distancebáo cáo khoảng cách của vật thể gần nhất từ cảm biến tính bằng milimét (mm) hoặc inch.
  • Mô tả lý do tại sao Cảm biến khoảng cách được sử dụng trong một dự án.

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

Cảm biến khoảng cách có thể phát hiện xem có vật thể nào ở phía trước Robot VR hay không và nếu có thì vật thể đó cách Cảm biến khoảng cách bao xa. Điều này có thể hữu ích khi di chuyển trong mê cung mà không liên tục va vào tường, tránh vật thể hoặc lái xe đến vật thể hoặc bức tường trong Sân chơi.

Trong Đơn vị này, bạn sẽ sử dụng Cảm biến khoảng cách, một cảm biến sử dụng xung ánh sáng laser để phát hiện vật thể. Cảm biến khoảng cách báo cáo khoảng cách giữa mặt trước của Cảm biến khoảng cách trên Robot VR và vật thể gần nhất. Cảm biến khoảng cách nằm ở Mắt trước của Robot VR. Giống như Cảm biến cản, Robot VR có thể sử dụng dữ liệu từ Cảm biến khoảng cách để đưa ra quyết định. 

Góc nhìn phía trước của Robot VR với Cảm biến khoảng cách ở chính giữa mặt trước của robot được đánh dấu bằng hộp màu đỏ.

Cảm biến khoảng cách tính toán khoảng cách bằng cách sử dụng thời gian cần thiết để một xung ánh sáng laser phản xạ khỏi vật thể và trở về cảm biến. Cảm biến khoảng cách có thể được sử dụng để phát hiện khoảng cách giữa VR Robot và các bức tường trong Sân chơi mê cung tường

Hình ảnh từ trên xuống của Robot VR đối diện với chồng khối ở giữa như trên Sân chơi Castle Crasher. Có một loạt các đường cong màu đỏ và xanh lá cây nằm giữa mặt trước của rô-bốt và các khối. Màu đỏ hiển thị tín hiệu phát ra từ cảm biến đến vật thể, còn màu xanh lá cây hiển thị tín hiệu phản xạ trở lại từ vật thể đến cảm biến để có thể tính toán khoảng cách.

Khoảng cách tìm thấy lệnh đối tượng

Cảm biến khoảng cách có thể được sử dụng để phát hiện xem có vật thể (như bức tường) ở phía trước nó hay không. Dữ liệu này sau đó có thể được sử dụng trong một dự án để VR Robot có thể đưa ra quyết định khi Cảm biến khoảng cách phát hiện ra một vật thể.

Sử dụng lệnh found_object trong dự án Python để kiểm tra tình trạng của Cảm biến khoảng cách. Lệnh found_object trả về giá trị Boolean là True hoặc False, tùy thuộc vào việc cảm biến có phát hiện thấy vật thể hay không.

Lệnh VEXcode VR Python tìm thấy khoảng cách đối tượng đọc khoảng cách dấu chấm tìm thấy đối tượng gạch dưới ().

  • found_objecttrả về Truekhi Cảm biến khoảng cách phát hiện vật thể hoặc bề mặt trong trường nhìn của nó và trong phạm vi 3000 mm tính từ cảm biến.
  • found_objecttrả về Falsekhi Cảm biến khoảng cách không phát hiện vật thể hoặc bề mặt trong phạm vi 3000 mm.

Lệnh found_objectthường được sử dụng với cấu trúc Điều khiển, như vòng lặp while , để Robot VR có thể sử dụng dữ liệu từ Cảm biến khoảng cách để đưa ra quyết định.

Khi lệnh found_object được sử dụng trong một dự án, Cảm biến khoảng cách đang được sử dụng phải được chỉ định. Trong Sân chơi mê cung tường, chỉ có Cảm biến khoảng cách phía trước có sẵn trên Robot VR. Khi lệnh found_objectđược kéo từ Hộp công cụ vào một dự án, lệnhfound_objectsẽ tự động chỉ định Cảm biến khoảng cách đang sử dụng, như được hiển thị ở đây. Trong đoạn video clip bên dưới, lệnh found_object được chọn trong Hộp công cụ và kéo vào Không gian làm việc. Khi xuất hiện trong dự án, lệnh sẽ tự động xuất hiện với Thiết bị được viết là “front_distance”.

Tập tin video

Nhận lệnh khoảng cách

Cảm biến khoảng cách cũng có thể báo cáo khoảng cách của một vật thể và sử dụng giá trị đó để đưa ra quyết định. Lệnh get_distancetrả về khoảng cách số của vật thể gần nhất tính từ mặt trước của Robot VR.

Chọn khoảng cách được báo cáo theo milimét (mm) hay inch bằng cách đặt tham số thành "MM" hoặc "INCHES".

Lệnh lấy khoảng cách VEXcode VR Python được viết hai lần - dòng đầu tiên hiển thị lệnh có tham số được đặt thành milimét, dòng thứ hai hiển thị lệnh có tham số được đặt thành inch.

Lệnh get_distance có thể được sử dụng với các lệnh khác, như vòng lặpwhile, trong một dự án để hướng dẫn Robot VR di chuyển một khoảng cách nhất định ra xa (hoặc hướng tới) một vật thể hoặc hoàn thành một hành động khi báo cáo một khoảng cách cụ thể.

Khi lệnh get_distanceđược sử dụng trong một dự án, Cảm biến khoảng cách đang được sử dụng phải được chỉ định. Trong Sân chơi mê cung tường, chỉ có Cảm biến khoảng cách phía trước có sẵn trên Robot VR. Khi lệnh get_distanceđược kéo từ Hộp công cụ vào một dự án, lệnhget_distancesẽ tự động chỉ định Cảm biến khoảng cách đang sử dụng, như được hiển thị ở đây. Trong đoạn video clip bên dưới, lệnh get_distance được chọn trong Hộp công cụ và kéo vào Không gian làm việc. Khi xuất hiện trong dự án, lệnh sẽ tự động xuất hiện với Thiết bị được viết là “front_distance”.

Tập tin video

Cảm biến khoảng cách và bài toá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 nó ở xa bức tường. Khi VR Robot đến gần tường, nó cần dừng lại hoặc rẽ mà không chạm vào tường để có thể tiếp tục đi qua mê cung. Sử dụng Cảm biến khoảng cách sẽ cho phép Robot VR di chuyển đến gần một vật thể mà không cần chạm vào nó.

Trong ví dụ video clip sau, Robot VR sẽ di chuyển về phía trước trong khi Cảm biến khoảng cách báo cáo rằng nó cách vật thể hơn 50 mm. Khi cách xa dưới 50 mm, VR Robot sẽ ngừng lái. Lưu ý rằng Robot VR không chạm vào tường.

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 khoảng cách báo cáo theo thời gian thực khi dự án đang chạy. Khi giá trị lớn hơn 50 mm, Robot VR sẽ tiếp tục di chuyển về phía trước.VEXcode VR với Không gian làm việc ở bên trái và cửa sổ Sân chơi ở bên phải. Trong cửa sổ Sân chơi, Robot VR nằm ở vị trí bắt đầu, không ở gần tường. Ở phía trên cùng của Cửa sổ Sân chơi, bảng điều khiển mở ra và ở phía bên phải, Khoảng cách được báo cáo là 287mm và được đánh dấu trong hộp màu đỏ.

Khi Cảm biến khoảng cách báo cáo giá trị nhỏ hơn50 mm, Robot VR sẽ ở gần tường mà không chạm vào tường và dừng di chuyển. VEXcode VR với Không gian làm việc ở bên trái và cửa sổ Sân chơi ở bên phải. Trong cửa sổ Sân chơi, Robot VR đã tiến về phía trước và hiện dừng lại gần bức tường đầu tiên. Ở phía trên cùng của Cửa sổ Sân chơi, bảng điều khiển mở ra và ở phía bên phải, Khoảng cách được báo cáo là 27 mm và được đánh dấu trong hộp màu đỏ.

Trong ví dụ này, lệnh get_distanceđược sử dụng với toán tử so sánh để trả về giá trị Boolean trong vòng lặp. Bạn sẽ tìm hiểu thêm về các toán tử lớn hơn (>) và nhỏ hơn (>) trong Đơn vị này.

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