Skip to main content

Bài 1: Cảm biến vị trí là gì?

Trong Bài học này, bạn sẽ tìm hiểu Cảm biến vị trí là gì và cách sử dụng Cảm biến vị trí để điều hướng Robot VR trên mặt phẳng tọa độ trên Sân chơi bản đồ lưới số . Bạn sẽ tìm hiểu cách thức hoạt động của Cảm biến vị trí và cách sử dụng Cảm biến vị trí trong dự án Python VEXcode VR.

Kết quả học tập

  • Xác định rằng Cảm biến vị trí đọc tọa độ (X,Y) từ điểm ngoặt trung tâm của Robot VR.
  • Xác định lệnh vị trí báo cáo vị trí tọa độ X hoặc Y của Robot VR theo milimét hoặc inch.
  • Mô tả lý do tại sao Cảm biến vị trí được sử dụng trong một dự án.

Cảm biến vị trí

Robot VR có cảm biến vị trí tích hợp để báo cáo vị trí (X,Y) của Robot VR. Vị trí của Robot VR được xác định bằng điểm ngoặt ở trung tâm phía trước. Đây cũng là vị trí của Bút trên Robot VR.

Góc nhìn từ trên xuống của Robot VR với hình tròn và mũi tên chỉ vào tâm của robot, nơi Cảm biến vị trí đọc giá trị.

Giá trị cảm biến vị trí có thể được xem trên Bảng điều khiển trong VEXcode VR.

Cảm biến vị trí và tọa độ trong sân chơi VR

Cảm biến vị trí có thể được sử dụng để xác định tọa độ của bất kỳ Sân chơi nào. Mỗi Sân chơi có phạm vi từ -1000 milimét (mm) đến 1000 milimét (mm) cho vị trí X và Y.

Sân chơi có bản đồ lưới số với lưới tọa độ chồng lên nhau. Giao điểm của trục x và trục y được thể hiện tại giao điểm của các số 45, 46, 55 và 56. Trục x chạy từ trái sang phải với các giá trị nằm trong khoảng từ âm 1000 đến dương 1000. Trục y đi từ dưới lên trên với các giá trị nằm trong khoảng từ âm 1000 đến dương 1000.

Bảng điều khiển VR VEXcode hiển thị vị trí (X,Y) của Robot VR được xác định từ Cảm biến vị trí.

Màn hình điều khiển mở trong VR. Một bảng được hiển thị bên trong bảng điều khiển với hai hàng bên trong phần Cảm biến của bảng. Hàng đầu tiên ghi 'Vị trí x tính bằng mm âm 900.' Hàng dữ liệu thứ hai ghi 'Vị trí y tính bằng mm âm 900'.

Xem bài viết sau để biết thông tin về cách Xác định tọa độ (X, Y) trên Sân chơi và cách xác định tọa độ vị trí và góc hiện tại của Robot VR.

Để biết thêm thông tin về Monitor Console, hãy xem bài viết này.

Để biết thêm thông tin về cách sử dụng hệ tọa độ (X, Y) và lệnh vị trí, hãy xem bài viết sau.

Lệnh vị trí

Cảm biến vị trí có thể được sử dụng để điều hướng Robot VR đến hoặc đi từ một vị trí chính xác trên Sân chơi, dựa trên tọa độ X, Y của nó. Dữ liệu từ Cảm biến vị trí có thể được sử dụng trong một dự án để Robot VR có thể đưa ra quyết định dựa trên vị trí được báo cáo trên mặt phẳng tọa độ. 

Sử dụng lệnh vị trí trong dự án Văn bản để báo cáo vị trí của Cảm biến vị trí. Lệnh position trả về giá trị số báo cáo vị trí tọa độ X hoặc Y của tâm Cảm biến vị trí (tâm của Robot VR). Chọn xem vị trí tọa độ X hoặc Y có được báo cáo hay không bằng cách nhập tham số X hoặc Y.

vị trí.vị trí(X, MM)
vị trí.vị trí(Y, MM)

Lệnh vị trí cũng có thể báo cáo các giá trị tính bằng milimét (mm) hoặc inch.

vị trí.vị trí(X, MM)
vị trí.vị trí(X, INCH)

Giống như lệnh get_distance được thảo luận trong Đơn vị 5, lệnhvị trí thường được sử dụng với cấu trúc điều khiển, như vòng lặpwhile , cũng như toán tử so sánh, để Robot VR có thể sử dụng dữ liệu từ Cảm biến vị trí để điều hướng dọc theo trục X và Y đến một vị trí. Bạn sẽ tìm hiểu thêm về cách sử dụng lệnh vị trí theo cách này trong Đơn vị này.

Xem dữ liệu cảm biến vị trí

Bạn có thể xem dữ liệu được Cảm biến vị trí báo cáo trong Bảng điều khiển VR hoặc thông qua Bảng điều khiển màn hình. Tải và chạy dự án ví dụ “Vị trí” để xem dữ liệu Cảm biến vị trí được báo cáo như thế nào, để bạn có thể sử dụng trong dự án để điều hướng Robot VR đến một vị trí cụ thể.

Để bạn biết

Cảm biến vị trí cũng có thể được sử dụng để báo cáo góc vị trí của Robot VR theo độ. Điều này có thể hữu ích khi bạn muốn quay đến một vị trí chính xác hoặc di chuyển một khoảng cách chính xác khỏi vị trí hiện tại.

Lệnhposition_anglecó thể được sử dụng để báo cáo giá trị số của góc vị trí của Robot VR tính theo độ.

vị trí.vị trí_góc(độ)

 Dự án ví dụ 'Cảm biến vị trí' sử dụng các giá trị do Cảm biến vị trí báo cáo bằng cách sử dụng cả lệnhpositionposition_angle.

  • Trong VEXcode VR, chọn “Mở ví dụ” từ menu thả xuống Tệp.
    Mở menu File trong VEXcode VR. Một hộp màu đỏ nằm ở tùy chọn thứ tư tính từ đầu danh sách có nội dung 'Ví dụ mở'.
  • Chọn dự án ví dụ “Vị trí”. 
Biểu tượng dự án ví dụ có nội dung 'Vị trí'. Biểu tượng robot VR được hiển thị với mũi tên hướng lên trên và một mũi tên khác đang quay. Bên dưới là dòng chữ 'x lớn hơn 0' và 'y lớn hơn 0'.
  • Mở Cửa sổ Sân chơi nếu nó chưa mở. Đảm bảo rằng Sân chơi bản đồ lưới số mở ra và chạy dự án. Dự án này cũng được trình bày ở đây.
# Thêm mã dự án vào "main"
def main():

    # Robot sẽ lái cho đến khi vượt qua số 0 trên trục Y
    while location.position(Y, MM) < 0:
        drivetrain.drive(FORWARD)
        wait(5, MSEC)

    drivetrain.turn_for(RIGHT, 90, DEGREES)

    # Robot sẽ lái cho đến khi vượt qua số 0 trên trục X
    while location.position(X, MM) < 0:
        drivetrain.drive(FORWARD)
        wait(5, MSEC)

    drivetrain.stop()

# Luồng VR — Không xóa
vr_thread(main)
  • Lưu ý rằng Robot VR sẽ di chuyển cho đến khi tọa độ Y lớn hơn 0, rẽ phải, sau đó di chuyển cho đến khi tọa độ X lớn hơn 0. Điều này đặt Robot VR gần trung tâm của Sân chơi bản đồ lưới số, gần vị trí (0, 0).

VEXcode VR với cửa sổ Playground ở bên trái và bảng điều khiển màn hình mở ở bên phải. Trong cửa sổ Sân chơi, bạn có thể nhìn thấy robot VR ở giữa Sân chơi Bản đồ lưới số. Trong Bảng điều khiển màn hình, Vị trí X và Vị trí Y của robot được hiển thị là 0 theo cả milimét và inch.

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