Python dành riêng cho robot#

Giới thiệu#

Robot VR Rover bao gồm Hệ thống truyền động, Cảm biến khoảng cách và các hành động độc đáo của Sân chơi Rover Rescue.

Tất cả các phương thức VEXcode VR tiêu chuẩn đều có sẵn để sử dụng trong Sân chơi Rover Rescue. Dưới đây là danh sách tất cả các phương thức dành riêng cho Sân chơi có sẵn:

Hệ thống truyền động - Di chuyển và điều khiển xe VR Rover.

  • Hành động

    • drive - Di chuyển VR Rover tiến hoặc lùi mãi mãi.

    • drive_for - Di chuyển VR Rover tiến hoặc lùi một khoảng cách cụ thể.

    • turn - Xoay xe VR Rover sang trái hoặc phải mãi mãi.

    • turn_for - Xoay VR Rover sang trái hoặc phải một số độ cụ thể.

    • turn_to_heading - Xoay VR Rover để hướng về một hướng cụ thể từ -359 đến 359 độ.

    • drive_to - Điều khiển VR Rover đi thẳng về phía đối tượng đã chọn.

    • turn_to - Xoay VR Rover để đối mặt với đối tượng đã chọn.

    • go_to - Quay và lái VR Rover đến đối tượng đã chọn.

    • stop - Dừng chuyển động của VR Rover.

  • Các sinh vật đột biến

    • set_heading – Thay đổi hướng hiện tại của VR Rover thành một hướng mới.

    • set_timeout - Đặt khoảng thời gian mà VR Rover sẽ cố gắng hoàn thành một chuyển động.

    • set_drive_velocity – Cho VR Rover biết tốc độ lái xe.

    • set_turn_velocity – Cho VR Rover biết tốc độ quay.

  • Người đạt giải

    • heading - Trả về hướng hiện tại của VR Rover từ 0 đến 359,99 độ.

    • is_done - Trả về trạng thái liệu VR Rover đã hoàn thành việc di chuyển hay chưa.

    • is_moving - Trả về trạng thái liệu VR Rover có đang di chuyển hay không.

Bảng điều khiển – In ra bảng điều khiển và theo dõi các giá trị.

  • In

    • brain.print — Hiển thị văn bản, số hoặc giá trị biến trong Console.

    • brain.new_line — Di chuyển con trỏ Console đến đầu hàng tiếp theo.

    • brain.set_print_color — Đặt màu được sử dụng cho văn bản được in trong Console.

    • brain.clear — Xóa tất cả các hàng khỏi Bảng điều khiển.

  • Màn hình

    • monitor_variable — Thêm một hoặc nhiều biến được xác định trước vào tab Giám sát.

    • monitor_sensor — Thêm một hoặc nhiều giá trị cảm biến vào tab Giám sát.

Cảm biến - Phát hiện các vật thể ở gần bằng cảm biến khoảng cách của robot.

  • Khoảng cách

    • found_object - Trả về liệu Cảm biến khoảng cách có phát hiện vật thể hay không.

    • get_distance - Trả về khoảng cách đến đối tượng được phát hiện gần nhất.

Các thao tác - Tương tác với tài nguyên, kẻ thù và hệ thống trí tuệ nhân tạo tích hợp của xe tự hành.

  • Hành động

    • pickup - Nhặt khoáng chất.

    • drop - Thả khoáng chất.

    • use - Sử dụng khoáng chất để phục hồi năng lượng.

    • absorb_radiation - Hấp thụ bức xạ từ kẻ thù.

    • standby - Đưa VR Rover vào chế độ chờ cho đến khi đạt đến ngưỡng pin.

  • Người đạt giải

    • angle - Trả về hướng của một đối tượng theo độ.

    • get_distance - Trả về khoảng cách đến một đối tượng tính bằng milimét hoặc inch.

    • location - Trả về tọa độ X hoặc Y của một đối tượng tính bằng milimét hoặc inch.

    • battery - Trả về mức pin của VR Rover.

    • minerals_stored - Trả về số lượng khoáng chất mà VR Rover đang mang.

    • storage_capacity - Trả về khả năng mang của VR Rover.

    • level - Trả về cấp độ hiện tại của VR Rover.

    • exp - Trả về điểm kinh nghiệm hiện tại của VR Rover.

    • enemy_level - Trả về cấp độ của kẻ thù được phát hiện gần nhất.

    • enemy_radiation - Trả về bức xạ của kẻ thù được phát hiện gần nhất.

    • detects - Trả về liệu VR Rover có phát hiện khoáng chất hoặc kẻ thù trong bán kính phát hiện của nó hay không.

    • sees - Trả về liệu VR Rover có nhìn thấy một vật thể trong phạm vi tầm nhìn của nó hay không.

    • under_attack - Trả về liệu VR Rover hiện có đang bị tấn công hay không.

  • Cuộc gọi lại

    • on_under_attack - Chạy hàm gọi lại khi VR Rover bị tấn công.

    • on_level_up - Chạy hàm gọi lại khi VR Rover lên cấp.

Các ví dụ trên trang này sử dụng vị trí bắt đầu mặc định của Playground.

Hệ thống truyền động#

Hệ thống truyền động điều khiển cách VR Rover di chuyển và rẽ. Hệ thống truyền động có thể tiến hoặc lùi, rẽ trái hoặc phải, xoay hướng và lái về phía khoáng sản, kẻ thù hoặc căn cứ.

Hành động#

lái xe#

Phím drive điều khiển xe VR Rover tiến hoặc lùi liên tục. Xe VR Rover sẽ tiếp tục di chuyển cho đến khi nhận được lệnh điều khiển khác, chẳng hạn như rẽ hoặc dừng lại.

Usage:
drivetrain.drive(direction)

Thông số

Sự miêu tả

direction

Hướng di chuyển của VR Rover: FORWARD hoặc REVERSE.

def main():
    drivetrain.drive(FORWARD)
    wait(2, SECONDS)
    drivetrain.stop()

# VR threads — Do not delete
vr_thread(main)

ổ đĩa cho#

Lệnh drive_for di chuyển xe VR Rover tiến hoặc lùi một khoảng cách cụ thể. Dự án sẽ đợi cho đến khi xe VR Rover di chuyển xong trước khi dòng mã tiếp theo được thực thi.

Usage:
drivetrain.drive_for(direction, distance, units, wait=True)

Thông số

Sự miêu tả

direction

Hướng di chuyển của VR Rover: FORWARD hoặc REVERSE.

distance

Quãng đường mà VR Rover di chuyển. Giá trị này có thể là số nguyên integer hoặc số thập phân (float).

units

Đơn vị khoảng cách: INCHES hoặc MM (milimet).

wait

Tùy chọn. wait=True (mặc định) khiến dự án chờ cho đến khi VR Rover di chuyển xong trước khi dòng mã tiếp theo được thực thi. wait=False khiến dòng mã tiếp theo được thực thi ngay lập tức.

def main():
    drivetrain.drive_for(FORWARD, 200, MM)

# VR threads — Do not delete
vr_thread(main)

xoay#

turn sẽ xoay xe VR Rover sang trái hoặc phải liên tục. Xe VR Rover sẽ tiếp tục quay cho đến khi nhận được lệnh thực hiện hành động khác, chẳng hạn như lái hoặc dừng lại.

Usage:
drivetrain.turn(direction)

Thông số

Sự miêu tả

direction

Hướng rẽ của VR Rover: LEFT hoặc RIGHT.

def main():
    drivetrain.turn(RIGHT)
    wait(2, SECONDS)
    drivetrain.stop()

# VR threads — Do not delete
vr_thread(main)

lượt cho#

Lệnh turn_for cho phép robot VR Rover quay sang trái hoặc phải một số độ nhất định. Góc quay này tương đối so với vị trí hiện tại của robot. Dự án sẽ chờ cho đến khi robot VR Rover quay xong trước khi dòng mã tiếp theo được thực thi.

Usage:
drivetrain.turn_for(direction, angle, units, wait=True)

Thông số

Sự miêu tả

direction

Hướng rẽ của VR Rover: LEFT hoặc RIGHT.

angle

Số độ mà VR Rover quay. Giá trị này có thể là số nguyên integer hoặc số thập phân (float).

units

Đơn vị quay: DEGREES.

wait

Tùy chọn. wait=True (mặc định) khiến dự án chờ cho đến khi VR Rover quay xong trước khi dòng mã tiếp theo được thực thi. wait=False khiến dòng mã tiếp theo được thực thi ngay lập tức.

def main():
    drivetrain.turn_for(RIGHT, 90, DEGREES)

# VR threads — Do not delete
vr_thread(main)

quay_đến_hướng#

Hướng quay là hướng mà robot VR Rover đang đối mặt, được đo bằng độ. turn_to_heading sẽ xoay robot VR Rover để hướng về một hướng cụ thể từ -359 đến 359 độ. Robot VR Rover sẽ quay theo hướng ngắn nhất để đạt được hướng mục tiêu.

Hướng di chuyển ban đầu của VR Rover là 0 độ.

Dự án sẽ chờ cho đến khi VR Rover hoàn thành việc quay trước khi dòng mã tiếp theo được thực thi.

Usage:
drivetrain.turn_to_heading(heading, units, wait=True)

Thông số

Sự miêu tả

heading

Hướng mà VR Rover nên đối mặt, tính bằng độ. Giá trị này có thể là số nguyên integer hoặc số thập phân (float) từ -359 đến 359.

units

Đơn vị tiêu đề: DEGREES.

wait

Tùy chọn. wait=True (mặc định) khiến dự án chờ cho đến khi VR Rover quay xong trước khi dòng mã tiếp theo được thực thi. wait=False khiến dòng mã tiếp theo được thực thi ngay lập tức.

def main():
    drivetrain.turn_to_heading(90, DEGREES)

# VR threads — Do not delete
vr_thread(main)

lái xe tới#

drive_to điều khiển VR Rover đi thẳng về phía đối tượng đã chọn.

Usage:
drivetrain.drive_to(object, wait=True)

Thông số

Sự miêu tả

object

Xe VR Rover sẽ lái đến vật thể nào:

  • BASE
  • ENEMY
  • MINERALS

wait

Tùy chọn. wait=True (mặc định) khiến dự án chờ cho đến khi quá trình di chuyển hoàn tất trước khi dòng mã tiếp theo được thực thi. wait=False khiến dòng mã tiếp theo được thực thi ngay lập tức.

Nếu không phát hiện khoáng sản hoặc kẻ thù nào trong tầm nhìn của VR Rover khi lệnh drive_to được gọi, VR Rover sẽ không di chuyển. Căn cứ luôn có thể bị nhắm mục tiêu.

Nếu xe tự hành VR Rover phát hiện nhiều khoáng chất hoặc nhiều kẻ thù, nó sẽ lái về phía tùy chọn gần hơn.

def main():
    drivetrain.drive_to(MINERALS)

# VR threads — Do not delete
vr_thread(main)

quay lại#

turn_to xoay VR Rover hướng về phía đối tượng đã chọn.

Usage:
drivetrain.turn_to(object, wait=True)

Thông số

Sự miêu tả

object

Xe VR Rover sẽ hướng về vật thể nào:

  • BASE
  • ENEMY
  • MINERALS

wait

Tùy chọn.

  • wait=True (mặc định) — Chờ lượt chơi kết thúc.
  • wait=False — Bắt đầu lượt chơi và tiếp tục ngay lập tức.

Nếu không phát hiện khoáng sản hoặc kẻ thù nào trong tầm nhìn của VR Rover khi lệnh turn_to được gọi, VR Rover sẽ không quay đầu. Căn cứ luôn có thể bị nhắm mục tiêu.

Nếu xe tự hành VR Rover phát hiện nhiều khoáng chất hoặc nhiều kẻ thù, nó sẽ hướng về phía mục tiêu gần hơn.

def main():
    drivetrain.turn_to(MINERALS)

# VR threads — Do not delete
vr_thread(main)

đi đến#

go_to xoay và điều khiển VR Rover đến đối tượng đã chọn.

Usage:
drivetrain.go_to(object, wait=True)

Thông số

Sự miêu tả

object

Xe VR Rover sẽ rẽ và lái đến vật thể nào:

  • BASE
  • ENEMY
  • MINERALS

wait

Tùy chọn. wait=True (mặc định) khiến dự án chờ cho đến khi quá trình di chuyển hoàn tất trước khi dòng mã tiếp theo được thực thi. wait=False khiến dòng mã tiếp theo được thực thi ngay lập tức.

Nếu không phát hiện khoáng sản hoặc kẻ thù nào trong tầm nhìn của VR Rover khi lệnh go_to được gọi, VR Rover sẽ không di chuyển. Căn cứ luôn có thể được nhắm mục tiêu.

Nếu VR Rover phát hiện nhiều khoáng chất hoặc nhiều kẻ thù, nó sẽ di chuyển đến vị trí gần hơn.

def main():
    drivetrain.go_to(MINERALS)

# VR threads — Do not delete
vr_thread(main)

dừng lại#

stop dừng chuyển động của VR Rover.

Usage:
drivetrain.stop()

Thông số

Sự miêu tả

Phương pháp này không có tham số.

def main():
    drivetrain.drive(FORWARD)
    wait(2, SECONDS)
    drivetrain.stop()

# VR threads — Do not delete
vr_thread(main)

Biến đổi#

đặt tiêu đề#

Hướng di chuyển là hướng mà VR Rover đang đối mặt, được đo bằng độ. Lệnh set_heading thay đổi hướng di chuyển hiện tại của VR Rover thành một giá trị hướng di chuyển mới.

Ví dụ, nếu VR Rover đang quay mặt sang phải, việc đặt hướng về 0 độ sẽ biến vị trí quay mặt sang phải đó thành 0 độ mới. Sau đó, VR Rover có thể quay đến các vị trí khác dựa trên hướng mới đó.

Usage:
drivetrain.set_heading(heading, units)

Thông số

Sự miêu tả

heading

Giá trị hướng, tính bằng độ, cần thiết lập cho VR Rover. Giá trị này có thể là số nguyên integer hoặc số thập phân (float).

units

Đơn vị tiêu đề: DEGREES.

def main():
    drivetrain.set_heading(0, DEGREES)

# VR threads — Do not delete
vr_thread(main)

đặt thời gian chờ#

set_timeout thiết lập khoảng thời gian mà VR Rover sẽ cố gắng hoàn thành một chuyển động. Nếu VR Rover không thể hoàn thành trong thời gian đó, nó sẽ ngừng cố gắng và chuyển sang dòng mã tiếp theo. Điều này giúp ngăn VR Rover bị kẹt ở một chuyển động nào đó.

Usage:
drivetrain.set_timeout(value, units)

Thông số

Sự miêu tả

value

The amount of time the VR Rover can try to finish a movement. This can be a positive integer or decimal (float).

units

Đơn vị thời gian: SECONDS hoặc MSEC (mili giây).

def main():
    drivetrain.set_timeout(1, SECONDS)

# VR threads — Do not delete
vr_thread(main)

đặt_vận_độ_lực_lái#

set_drive_velocity cho VR Rover biết tốc độ lái xe. Tỷ lệ phần trăm càng cao thì VR Rover càng lái nhanh hơn và tỷ lệ phần trăm càng thấp thì VR Rover càng lái chậm hơn.

Mỗi dự án đều bắt đầu với việc VR Rover di chuyển ở tốc độ 50% theo mặc định.

Lưu ý: Vận tốc cao hơn làm cho VR Rover di chuyển nhanh hơn, nhưng có thể kém chính xác hơn. Vận tốc thấp hơn làm cho VR Rover di chuyển chậm hơn, nhưng có thể chính xác hơn.

Usage:
drivetrain.set_drive_velocity(velocity, units)

Thông số

Sự miêu tả

velocity

Tốc độ lái xe từ 0% đến 100%. Giá trị này có thể là số nguyên integer hoặc số thập phân (float).

units

Đơn vị vận tốc: PERCENT.

def main():
    drivetrain.set_drive_velocity(50, PERCENT)

# VR threads — Do not delete
vr_thread(main)

đặt_vận_độ_quay#

set_turn_velocity cho VR Rover biết tốc độ quay. Tỷ lệ phần trăm càng cao thì VR Rover càng quay nhanh hơn và tỷ lệ phần trăm càng thấp thì VR Rover càng quay chậm hơn.

Mỗi dự án đều bắt đầu với việc VR Rover quay với vận tốc 50% theo mặc định.

Lưu ý: Vận tốc cao hơn làm cho xe VR Rover quay nhanh hơn, nhưng có thể kém chính xác hơn. Vận tốc thấp hơn làm cho xe VR Rover quay chậm hơn, nhưng có thể chính xác hơn.

Usage:
drivetrain.set_turn_velocity(velocity, units)

Thông số

Sự miêu tả

velocity

Tốc độ quay từ 0% đến 100%. Giá trị này có thể là số nguyên integer hoặc số thập phân (float).

units

Đơn vị vận tốc: PERCENT.

def main():
    drivetrain.set_turn_velocity(50, PERCENT)

# VR threads — Do not delete
vr_thread(main)

Người nhận#

tiêu đề#

Hướng di chuyển là hướng mà VR Rover đang đối mặt, được đo bằng độ. Lệnh heading trả về hướng di chuyển hiện tại của VR Rover từ 0 đến 359,99 độ.

Hướng di chuyển ban đầu của VR Rover là 0 độ.

Usage:
drivetrain.heading(units)

Thông số

Sự miêu tả

units

Đơn vị tiêu đề: DEGREES.

def main():
    brain.screen.print(drivetrain.heading(DEGREES))

# VR threads — Do not delete
vr_thread(main)

đã xong#

is_done trả về giá trị Boolean cho biết VR Rover đã di chuyển xong hay chưa. Giá trị này có thể được sử dụng để điều khiển thời gian của các hành vi khác dựa trên chuyển động của VR Rover.

  • True — Xe VR Rover đã ngừng di chuyển.

  • False — Robot VR vẫn đang di chuyển.

Phương pháp này hoạt động cùng với các phương pháp Drivetrain có tham số wait , chẳng hạn như drive_for, turn_for, turn_to_heading, drive_to, turn_to, và go_to.

Usage:
drivetrain.is_done()

Thông số

Sự miêu tả

Phương pháp này không có tham số.

def main():
    drivetrain.drive_for(FORWARD, 200, MM, wait=False)
    wait(0.1, SECONDS)
    if drivetrain.is_done():
        brain.screen.print("Drive complete")

# VR threads — Do not delete
vr_thread(main)

đang di chuyển#

is_moving trả về giá trị Boolean cho biết VR Rover có đang di chuyển hay không. Giá trị này có thể được sử dụng để điều khiển thời gian của các hành vi khác dựa trên chuyển động của VR Rover.

  • True — Xe VR Rover đang di chuyển.

  • False — Robot VR không di chuyển.

Usage:
drivetrain.is_moving()

Thông số

Sự miêu tả

Phương pháp này không có tham số.

def main():
    drivetrain.drive_for(FORWARD, 200, MM, wait=False)
    wait(0.1, SECONDS)
    if drivetrain.is_moving():
        brain.screen.print("Still moving")

# VR threads — Do not delete
vr_thread(main)

Bảng điều khiển#

Bảng điều khiển hiển thị văn bản, số và giá trị biến trong khi dự án đang chạy. Các phương thức của bảng điều khiển cũng có thể di chuyển con trỏ đến một hàng mới, đặt màu cho văn bản được in sau khi màu được thay đổi, xóa nội dung bảng điều khiển và thêm các biến hoặc giá trị cảm biến vào tab Giám sát.

In#

não.in#

brain.print hiển thị văn bản, số hoặc giá trị biến trong Console bằng cách sử dụng vị trí con trỏ hiện tại.

Sử dụng brain.new_line khi bạn muốn giá trị được in tiếp theo bắt đầu trên một dòng mới.

Usage:
brain.print(value)

Thông số

Sự miêu tả

value

Văn bản, số hoặc giá trị biến cần hiển thị trong Console.

def main():
    # Display a message in the Console
    brain.print("Hello, rover!")

# VR threads — Do not delete
vr_thread(main)

Bảng điều khiển VEXcode, hiển thị Bảng điều khiển và văn bản "Xin chào, robot!" được hiển thị.

não.dòng_mới#

Lệnh brain.new_line di chuyển con trỏ đến cột 1 trên hàng tiếp theo trong Console. Giá trị tiếp theo được in sẽ xuất hiện trên hàng đó.

Usage:
brain.new_line()

Thông số

Sự miêu tả

Phương pháp này không có tham số.

def main():
    # Print on two rows
    brain.print("Row 1")
    brain.new_line()
    brain.print("Row 2")

# VR threads — Do not delete
vr_thread(main)

Bảng điều khiển VEXcode, hiển thị Bảng điều khiển và văn bản "Hàng 1" được hiển thị trên dòng đầu tiên và "Hàng 2" trên dòng thứ hai.

brain.set_print_color#

brain.set_print_color thiết lập màu sắc được sử dụng cho văn bản được in trong Console sau khi phương thức này được sử dụng. Khi bắt đầu một dự án, màu văn bản của Console được đặt thành BLACK.

Usage:
brain.set_print_color(color)

Thông số

Sự miêu tả

color

Màu sắc được sử dụng cho văn bản in trên Bảng điều khiển:

  • BLACK
  • BLUE
  • GREEN
  • RED

def main():
    # Print text in different colors
    brain.print("Default text color")
    brain.new_line()
    brain.set_print_color(RED)
    brain.print("Red text color")

# VR threads — Do not delete
vr_thread(main)

Bảng điều khiển VEXcode, hiển thị Bảng điều khiển và văn bản màu đen có nội dung "Màu văn bản mặc định" được hiển thị trên dòng đầu tiên và màu đỏ có nội dung "Màu văn bản đỏ" trên dòng thứ hai.

não.rõ ràng#

brain.clear xóa tất cả các hàng khỏi Console và di chuyển con trỏ trở lại Hàng 1.

Usage:
brain.clear()

Thông số

Sự miêu tả

Phương pháp này không có tham số.

def main():
    # Display text, then clear it after two seconds
    brain.print("This will disappear...")
    wait(2, SECONDS)
    brain.clear()

# VR threads — Do not delete
vr_thread(main)

Màn hình#

monitor_variable#

Lệnh monitor_variable thêm một hoặc nhiều biến được định nghĩa trước vào tab Monitor trong VEXcode. Điều này cho phép bạn theo dõi sự thay đổi giá trị của một biến trong khi dự án đang chạy.

Các biến phải là biến toàn cục để lệnh monitor_variable có thể giám sát chúng thành công. Cung cấp tên của mỗi biến dưới dạng chuỗi.

Usage:
monitor_variable(“variable”)
monitor_variable(“variable1”, “variable2”)

Thông số

Sự miêu tả

variable

Tên của một biến toàn cục được định nghĩa trước để theo dõi, được cung cấp dưới dạng chuỗi ký tự. Để theo dõi nhiều hơn một biến, hãy phân tách tên của mỗi biến bằng dấu phẩy.

def main():
    # Monitor the amount of loops
    global loops
    monitor_variable("loops")

    # Drive forward 3 times
    for loops in range(3):
        drivetrain.drive_for(FORWARD, 200, MM)

# VR threads — Do not delete
vr_thread(main)

cảm biến giám sát#

Lệnh monitor_sensor thêm một hoặc nhiều giá trị cảm biến vào tab Monitor trong VEXcode. Điều này cho phép bạn theo dõi sự thay đổi của các giá trị cảm biến trong khi dự án đang chạy.

Cung cấp giá trị của từng cảm biến dưới dạng chuỗi ký tự.

Usage:
monitor_sensor(“sensor”)
monitor_sensor(“sensor1”, “sensor2”)

Thông số

Sự miêu tả

sensor

The sensor value to monitor, given as a string. To monitor more than one sensor value, separate each sensor value with a comma. Supported sensor identifiers include:

  • Brain
    • brain.timer_time
  • Drivetrain
    • drivetrain.is_done
    • drivetrain.is_moving
    • drivetrain.heading
  • Distance Sensor
    • distance.found_object
    • distance.get_distance
  • Rover
    • rover.battery
    • rover.minerals_stored
    • rover.level
    • rover.exp
    • rover.storage_capacity
    • rover.under_attack
    • rover.enemy_radiation
    • rover.enemy_level
    • rover.angle
    • rover.location
    • rover.detects
    • rover.sees
    • rover.get_distance

def main():
    # Monitor the rover's battery
    monitor_sensor("rover.battery")
    drivetrain.drive_for(FORWARD, 200, MM)

# VR threads — Do not delete
vr_thread(main)

Cảm biến#

Khoảng cách#

đối tượng được tìm thấy#

found_object trả về giá trị cho biết Cảm biến khoảng cách có phát hiện vật thể hay không.

Usage:
distance.found_object()

Thông số

Sự miêu tả

Phương pháp này không có tham số.

def main():
    if distance.found_object():
        brain.screen.print("Object detected")

# VR threads — Do not delete
vr_thread(main)

lấy khoảng cách#

get_distance trả về khoảng cách đến vật thể được phát hiện gần nhất từ ​​Cảm biến Khoảng cách.

Usage:
distance.get_distance(units)

Thông số

Sự miêu tả

units

Đơn vị khoảng cách: INCHES hoặc MM

def main():
    brain.screen.print(distance.get_distance(MM))

# VR threads — Do not delete
vr_thread(main)

Hành động#

Hành động#

nhặt lên#

pickup xe thu gom khoáng chất.

Usage:
rover.pickup(object)

Thông số

Sự miêu tả

object

Vật thể mà VR Rover có thể nhặt được:

  • MINERALS

def main():
    rover.pickup(MINERALS)

# VR threads — Do not delete
vr_thread(main)

làm rơi#

drop giọt chứa khoáng chất.

Usage:
rover.drop(object)

Thông số

Sự miêu tả

object

Vật thể mà VR Rover có thể thả:

  • MINERALS

def main():
    rover.drop(MINERALS)

# VR threads — Do not delete
vr_thread(main)

sử dụng#

use lượt sử dụng khoáng chất để phục hồi năng lượng. Khoáng chất phải có trên mặt đất mới có thể sử dụng được.

Usage:
rover.use(object)

Thông số

Sự miêu tả

object

Các vật thể mà VR Rover có thể sử dụng:

  • MINERALS

def main():
    rover.use(MINERALS)

# VR threads — Do not delete
vr_thread(main)

hấp thụ bức xạ#

absorb_radiation hấp thụ bức xạ từ kẻ thù.

Usage:
rover.absorb_radiation(object)

Thông số

Sự miêu tả

object

Vật thể mà VR Rover có thể hấp thụ bức xạ từ:

  • ENEMY

def main():
    rover.absorb_radiation(ENEMY)

# VR threads — Do not delete
vr_thread(main)

chờ#

standby đưa VR Rover vào chế độ chờ cho đến khi đạt đến ngưỡng pin được chỉ định.

Usage:
rover.standby(percent)

Thông số

Sự miêu tả

percent

Ngưỡng pin khiến VR Rover thoát khỏi chế độ chờ, từ 0 đến 100.

Nếu ngưỡng được chọn bằng hoặc cao hơn mức pin hiện tại, VR Rover sẽ không chuyển sang chế độ chờ.

def main():
    rover.standby(50)

# VR threads — Do not delete
vr_thread(main)

Người nhận#

góc#

angle trả về hướng tính bằng độ cho đối tượng được chọn.

Usage:
rover.angle(object)

Thông số

Sự miêu tả

object

Đối tượng cần báo cáo hướng:

  • BASE
  • ENEMY
  • MINERALS

Đối với khoáng sản và kẻ thù, vật thể phải nằm trong phạm vi 1000 mm và trong tầm nhìn của VR Rover. Vị trí căn cứ luôn có thể được báo cáo.

def main():
    brain.screen.print(rover.angle(MINERALS))

# VR threads — Do not delete
vr_thread(main)

lấy khoảng cách#

get_distance trả về khoảng cách từ VR Rover đến đối tượng được chọn.

Usage:
rover.get_distance(object, units=MM)

Thông số

Sự miêu tả

object

Các mục cần báo cáo khoảng cách:

  • BASE
  • ENEMY
  • HAZARD
  • MINERALS
  • OBSTACLE

units

Tùy chọn. Đơn vị dùng để báo cáo khoảng cách: INCHES hoặc MM

Đối với khoáng sản và kẻ thù, vật thể phải nằm trong phạm vi 1000 mm và trong tầm nhìn của VR Rover. Vị trí căn cứ luôn có thể được báo cáo.

Đối với các chướng ngại vật và mối nguy hiểm, phương pháp này báo cáo khoảng cách vật thể có thể nhìn thấy. Nếu không có vật thể nào trong tầm nhìn, nó sẽ trả về 1000 mm hoặc 39.37 inch.

def main():
    brain.screen.print(rover.get_distance(MINERALS, MM))

# VR threads — Do not delete
vr_thread(main)

vị trí#

location trả về tọa độ X hoặc Y của đối tượng được chọn.

Usage:
rover.location(object, axis, units)

Thông số

Sự miêu tả

object

Các đối tượng cần báo cáo vị trí:

  • BASE
  • ENEMY
  • HAZARD
  • MINERALS
  • OBSTACLE

axis

Cần trả về tọa độ nào:

  • X
  • Y

units

Đơn vị dùng để báo cáo vị trí: INCHES hoặc MM

Đối với khoáng sản và kẻ thù, vật thể phải nằm trong phạm vi 1000 mm và trong tầm nhìn của VR Rover. Vị trí căn cứ luôn có thể được báo cáo.

def main():
    brain.screen.print(rover.location(MINERALS, X, MM))

# VR threads — Do not delete
vr_thread(main)

ắc quy#

battery trả về mức pin hiện tại của VR Rover.

Usage:
rover.battery()

Thông số

Sự miêu tả

Phương pháp này không có tham số.

def main():
    brain.screen.print(rover.battery())

# VR threads — Do not delete
vr_thread(main)

khoáng chất được lưu trữ#

minerals_stored trả về lượng khoáng chất hiện có mà VR Rover đang lưu trữ.

Usage:
rover.minerals_stored()

Thông số

Sự miêu tả

Phương pháp này không có tham số.

def main():
    brain.screen.print(rover.minerals_stored())

# VR threads — Do not delete
vr_thread(main)

dung lượng lưu trữ#

storage_capacity trả về sức chứa của VR Rover.

Usage:
rover.storage_capacity()

Thông số

Sự miêu tả

Phương pháp này không có tham số.

def main():
    brain.screen.print(rover.storage_capacity())

# VR threads — Do not delete
vr_thread(main)

mức độ#

level trả về cấp độ hiện tại của VR Rover.

Usage:
rover.level()

Thông số

Sự miêu tả

Phương pháp này không có tham số.

def main():
    brain.screen.print(rover.level())

# VR threads — Do not delete
vr_thread(main)

kinh nghiệm#

exp trả về số điểm kinh nghiệm mà VR Rover có ở cấp độ hiện tại.

Usage:
rover.exp()

Thông số

Sự miêu tả

Phương pháp này không có tham số.

def main():
    brain.screen.print(rover.exp())

# VR threads — Do not delete
vr_thread(main)

cấp độ kẻ thù#

enemy_level trả về cấp độ của kẻ thù gần nhất được VR Rover phát hiện.

Usage:
rover.enemy_level()

Thông số

Sự miêu tả

Phương pháp này không có tham số.

Khi không phát hiện thấy kẻ thù nào trong phạm vi dò tìm của xe tự hành, phương thức này sẽ trả về 0.

def main():
    brain.screen.print(rover.enemy_level())

# VR threads — Do not delete
vr_thread(main)

bức xạ kẻ thù#

enemy_radiation trả về bức xạ của kẻ thù gần nhất được VR Rover phát hiện.

Usage:
rover.enemy_radiation()

Thông số

Sự miêu tả

Phương pháp này không có tham số.

Khi không phát hiện thấy kẻ thù nào trong phạm vi dò tìm của xe tự hành, phương thức này sẽ trả về 0.

def main():
    brain.screen.print(rover.enemy_radiation())

# VR threads — Do not delete
vr_thread(main)

phát hiện#

detects trả về liệu VR Rover có phát hiện khoáng sản hoặc kẻ thù trong bán kính phát hiện của nó hay không.

Usage:
rover.detects(object)

Thông số

Sự miêu tả

object

Đối tượng cần phát hiện:

  • ENEMY
  • MINERALS

Bán kính phát hiện của VR Rover là 800 mm.

def main():
    if rover.detects(MINERALS):
        brain.screen.print("Minerals detected")

# VR threads — Do not delete
vr_thread(main)

nhìn thấy#

Giá trị sees cho biết liệu VR Rover có nhìn thấy vật thể đã chọn trong phạm vi tầm nhìn của nó hay không.

Usage:
rover.sees(object)

Thông số

Sự miêu tả

object

Các mục cần quan sát:

  • BASE
  • ENEMY
  • HAZARD
  • MINERALS
  • OBSTACLE

Robot VR có thể nhìn thấy các vật thể trong phạm vi 1000 mm và bên trong trường nhìn 40 độ của nó.

def main():
    if rover.sees(MINERALS):
        brain.screen.print("Minerals in view")

# VR threads — Do not delete
vr_thread(main)

đang bị tấn công#

under_attack trả về trạng thái hiện tại của VR Rover có đang bị kẻ thù tấn công hay không.

Usage:
rover.under_attack()

Thông số

Sự miêu tả

Phương pháp này không có tham số.

def main():
    if rover.under_attack():
        brain.screen.print("The rover is under attack!")

# VR threads — Do not delete
vr_thread(main)

Cuộc gọi lại#

đang bị tấn công#

on_under_attack đăng ký một hàm gọi lại sẽ chạy khi VR Rover bị kẻ thù tấn công.

Usage:
rover.on_under_attack(callback)

Thông số

Sự miêu tả

callback

Chức năng này sẽ được thực thi khi xe VR Rover bị tấn công.

def under_attack():
    brain.screen.print("The rover is under attack!")

def main():
    rover.on_under_attack(under_attack)
    wait(0.15, SECONDS)

# VR threads — Do not delete
vr_thread(main)

khi lên cấp#

on_level_up đăng ký một hàm gọi lại sẽ chạy khi VR Rover di chuyển từ cấp độ này sang cấp độ khác.

Usage:
rover.on_level_up(callback)

Thông số

Sự miêu tả

callback

Chức năng sẽ được thực thi khi VR Rover lên cấp.

def level_up():
    brain.screen.print("The rover leveled up!")

def main():
    rover.on_level_up(level_up)
    wait(0.15, SECONDS)

# VR threads — Do not delete
vr_thread(main)