Python dành riêng cho robot#
Giới thiệu#
Robot anh hùng Disco bao gồm một nhóm động cơ, bộ dò đường, cảm biến quang học và cảm biến hệ thống định vị trong game (GPS).
Tất cả các phương pháp VEXcode VR tiêu chuẩn đều có sẵn để sử dụng trong V5 22-23 Spin Up Playground.
Dưới đây là danh sách tất cả các phương pháp dành riêng cho Robot:
Hệ thống truyền động – Giúp robot di chuyển và xoay.
Hành động
drive— Di chuyển robot tiến hoặc lùi mãi mãi.drive_for— Di chuyển robot tiến hoặc lùi một khoảng cách cụ thể.turn— Xoay robot sang trái hoặc phải mãi mãi.turn_for— Xoay robot sang trái hoặc phải một số độ cụ thể.turn_to_heading— Xoay robot để hướng về một hướng cụ thể từ -359 đến 359 độ.turn_to_rotation— Xoay robot theo hướng cụ thể.stop— Dừng chuyển động của robot.
Các sinh vật đột biến
set_heading— Thay đổi hướng hiện tại của robot thành một hướng mới.set_rotation— Thay đổi hướng quay hiện tại của robot thành hướng quay mới.set_timeout— Đặt khoảng thời gian robot sẽ cố gắng hoàn thành một chuyển động.set_drive_velocity— Cho robot biết tốc độ lái xe.set_turn_velocity— Cho robot biết tốc độ quay.
Người đạt giải
heading— Trả về hướng hiện tại của robot từ 0 đến 359,99 độ.rotation— Trả về góc xoay hiện tại của robot.is_done— Trả về giá trị Boolean cho biết robot đã hoàn thành việc di chuyển hay chưa.is_moving— Trả về giá trị Boolean cho biết robot có đang di chuyển hay không.velocity— Trả về tốc độ di chuyển của robot.
Chuyển động – Di chuyển và theo dõi nhóm động cơ của robot.
Hành động
spin— Quay một nhóm động cơ về phía trước hoặc phía sau mãi mãi.spin_for— Quay một nhóm động cơ trong một khoảng cách cụ thể.spin_to_position— Xoay một nhóm động cơ đến một vị trí cụ thể.stop— Dừng một nhóm động cơ quay.
Các sinh vật đột biến
set_position— Thay đổi vị trí hiện tại của nhóm động cơ thành một giá trị mới.set_velocity— Cho biết nhóm động cơ quay nhanh như thế nào.set_timeout— Đặt khoảng thời gian mà một nhóm cơ sẽ cố gắng hoàn thành một chuyển động.
Người đạt giải
is_done— Trả về giá trị Boolean cho biết nhóm động cơ đã hoàn thành việc di chuyển hay chưa.is_spinning— Trả về giá trị Boolean cho biết nhóm động cơ có đang quay hay không.position— Trả về vị trí hiện tại của nhóm động cơ.velocity— Trả về tốc độ quay của nhóm động cơ.
Bảng điều khiển – In ra bảng điều khiển và theo dõi các giá trị.
In
brain.screen.print— Hiển thị văn bản, số hoặc giá trị biến trong Console.brain.screen.next_row— Di chuyển con trỏ Console đến đầu hàng tiếp theo.brain.screen.clear_screen— 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 - Sử dụng các cảm biến khác nhau của robot.
Quang học
is_near_object– Trả về liệu Cảm biến quang có phát hiện vật thể trong phạm vi hay không.color– Trả về màu được phát hiện bởi Cảm biến quang học.brightness– Trả về lượng ánh sáng phản xạ từ vật thể.hue– Trả về sắc độ được phát hiện bởi Cảm biến quang học.object_detected– Đăng ký một hàm sẽ được gọi khi Cảm biến quang học phát hiện một vật thể.object_lost– Đăng ký một hàm sẽ được gọi khi Cảm biến quang học mất một vật thể.
Hệ thống định vị GPS
x_position– Trả về tọa độ x hiện tại của Cảm biến GPS trên thực địa.y_position– Trả về tọa độ y hiện tại của Cảm biến GPS trên thực địa.heading– Trả về hướng mà robot hiện đang đối mặt dựa trên các giá trị đọc của Cảm biến GPS từ 0 đến 359 độ.
Công cụ theo dõi đường dây
reflectivity– Trả về lượng ánh sáng phản xạ từ bề mặt.
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 robot VR di chuyển và xoay hướng. Hệ thống truyền động có thể tiến hoặc lùi, rẽ trái hoặc phải, xoay theo hướng mong muốn và theo dõi chuyển động quay của nó.
Hành động#
lái xe#
Phím drive cho phép robot di chuyển tiến hoặc lùi liên tục. Robot sẽ tiếp tục di chuyển cho đến khi nhận được lệnh 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ả |
|---|---|
|
Hướng di chuyển của robot: |
def main():
# Drive forward then stop
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 robot tiến hoặc lùi một khoảng cách cụ thể. Chương trình sẽ đợi cho đến khi robot hoàn thành việc di chuyển trước khi dòng mã tiếp theo được thực thi.
Usage:
drivetrain.drive_for(direction, distance, units, wait)
Thông số |
Sự miêu tả |
|---|---|
|
Hướng di chuyển của robot: |
|
Quãng đường robot di chuyển. Giá trị này có thể là số nguyên |
|
Tùy chọn. Đơn vị khoảng cách: |
|
Tùy chọn. |
def main():
# Drive forward and backward
drivetrain.drive_for(FORWARD, 200, MM)
drivetrain.drive_for(REVERSE, 200, MM)
# VR threads — Do not delete
vr_thread(main)
xoay#
turn sẽ khiến robot quay sang trái hoặc phải liên tục. Robot 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 xe hoặc dừng lại.
Usage:
drivetrain.turn(direction)
Thông số |
Sự miêu tả |
|---|---|
|
Hướng quay của robot: |
def main():
# Turn right and left, then stop
drivetrain.turn(RIGHT)
wait(2, SECONDS)
drivetrain.turn(LEFT)
wait(2, SECONDS)
drivetrain.stop()
# VR threads — Do not delete
vr_thread(main)
lượt cho#
Lệnh turn_for cho phép robot quay sang trái hoặc phải một số độ nhất định. Góc quay được tính tương đối so với vị trí hiện tại của robot. Chương trình sẽ chờ cho đến khi robot quay xong trước khi thực thi dòng mã tiếp theo.
Usage:
drivetrain.turn_for(direction, angle, units, wait)
Thông số |
Sự miêu tả |
|---|---|
|
Hướng quay của robot: |
|
Số độ mà robot quay. Giá trị này có thể là số nguyên |
|
Tùy chọn. Đơn vị xoay: |
|
Tùy chọn. |
def main():
# Turn the robot right and left
drivetrain.turn_for(RIGHT, 90, DEGREES)
wait(1, SECONDS)
drivetrain.turn_for(LEFT, 90, DEGREES)
# VR threads — Do not delete
vr_thread(main)
quay_đến_hướng#
Hướng quay là hướng mà robot đang đối mặt, được đo bằng độ. Lệnh turn_to_heading sẽ xoay robot để quay về một hướng cụ thể từ -359 đến 359 độ. Robot 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 robot là 0 độ.
Dự án sẽ chờ cho đến khi robot 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(angle, units, wait)
Thông số |
Sự miêu tả |
|---|---|
|
Hướng mà robot nên đối mặt, tính bằng độ. Giá trị này có thể là số nguyên |
|
Tùy chọn. Đơn vị xoay: |
|
Tùy chọn. |
def main():
# Turn to face the cardinal directions
drivetrain.turn_to_heading(90, DEGREES)
wait(1, SECONDS)
drivetrain.turn_to_heading(180, DEGREES)
wait(1, SECONDS)
drivetrain.turn_to_heading(270, DEGREES)
wait(1, SECONDS)
drivetrain.turn_to_heading(0, DEGREES)
# VR threads — Do not delete
vr_thread(main)
xoay tới#
turn_to_rotation xoay robot theo một hướng cụ thể.
Góc quay là mức độ robot đã quay, được đo bằng độ. Khi bắt đầu một dự án, giá trị góc quay được đặt là 0 độ. Góc quay cũng có thể được đặt bằng phương pháp set_rotation.
Các giá trị xoay là tuyệt đối. Điều này có nghĩa là hướng quay phụ thuộc vào góc xoay hiện tại của robot. Xoay sang phải sẽ làm tăng góc xoay, và xoay sang trái sẽ làm giảm góc xoay.
Ví dụ, nếu robot bắt đầu ở 0 độ và bạn xoay nó một góc 720 độ, nó sẽ quay sang phải hai lần. Nếu sau đó bạn xoay nó một góc 360 độ, nó sẽ quay sang trái một lần, vì 360 nhỏ hơn 720.
Dự án sẽ chờ cho đến khi robot hoàn thành việc quay trước khi dòng mã tiếp theo được thực thi.
Usage:
drivetrain.turn_to_rotation(angle, units, wait)
Thông số |
Sự miêu tả |
|---|---|
|
Giá trị góc quay, tính bằng độ, mà robot sẽ quay tới. Giá trị này có thể là số nguyên |
|
Tùy chọn. Đơn vị xoay: |
|
Tùy chọn. |
def main():
# Turn left, then spin in a circle
# clockwise and face right
drivetrain.turn_to_rotation(-90, DEGREES)
wait(1, SECONDS)
drivetrain.turn_to_rotation(450, DEGREES)
# VR threads — Do not delete
vr_thread(main)
dừng lại#
stop dừng chuyển động của robot.
Usage:
drivetrain.stop()
Thông số |
Sự miêu tả |
|---|---|
Phương pháp này không có tham số. |
def main():
# Drive forward then stop
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à robot đ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 robot thành một giá trị hướng di chuyển mới.
Ví dụ, nếu robot đã quay mặt sang phải, việc đặt hướng quay về 0 độ sẽ biến vị trí quay mặt sang phải đó thành 0 độ mới. Sau đó, robot có thể quay đến các vị trí khác dựa trên hướng quay mới đó.
Usage:
drivetrain.set_heading(heading, units)
Thông số |
Sự miêu tả |
|---|---|
|
Giá trị hướng, tính bằng độ, cần thiết lập cho robot. Giá trị này có thể là số nguyên |
|
Tùy chọn. Đơn vị hướng: |
def main():
# Face the new 0 degrees
drivetrain.set_heading(90, DEGREES)
drivetrain.turn_to_heading(0, DEGREES)
# VR threads — Do not delete
vr_thread(main)
đặt_xoay#
Góc quay là mức độ robot đã xoay, được đo bằng độ. Khi bắt đầu một dự án, giá trị góc quay được đặt là 0 độ. Lệnh set_rotation thay đổi góc quay hiện tại của robot thành một giá trị mới.
Ví dụ, nếu robot đã quay hai vòng hoàn chỉnh sang phải, giá trị góc quay của nó sẽ là 720 độ. Việc đặt góc quay về 0 độ sẽ thiết lập lại góc quay từ 720 độ về 0 độ. Sau đó, robot có thể quay theo các hướng dựa trên giá trị mới đó.
Usage:
drivetrain.set_rotation(rotation, units)
Thông số |
Sự miêu tả |
|---|---|
|
Giá trị xoay, tính bằng độ, cần thiết lập cho robot. Giá trị này có thể là số nguyên |
|
Tùy chọn. Đơn vị xoay: |
def main():
# Spin counterclockwise two times
drivetrain.set_rotation(720, DEGREES)
drivetrain.turn_to_rotation(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 robot sẽ cố gắng hoàn thành một chuyển động. Nếu robot 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 robot không bị kẹt ở một chuyển động nào đó.
Usage:
drivetrain.set_timeout(value, units)
Thông số |
Sự miêu tả |
|---|---|
|
The amount of time the robot can try to finish a movement. This can be a positive |
|
Đơn vị thời gian: |
def main():
# Turn right after driving forward
drivetrain.set_timeout(1, SECONDS)
drivetrain.drive_for(FORWARD, 25, INCHES)
drivetrain.turn_for(RIGHT, 90)
# VR threads — Do not delete
vr_thread(main)
đặt_vận_độ_lực_lái#
set_drive_velocity cho robot biết tốc độ di chuyển. Tỷ lệ phần trăm càng cao thì robot càng di chuyển nhanh hơn và tỷ lệ phần trăm càng thấp thì robot càng di chuyển chậm hơn.
Mỗi dự án đều bắt đầu với việc robot di chuyển ở tốc độ mặc định là 50%.
Lưu ý: Vận tốc cao hơn giúp robot 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 giúp robot 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ả |
|---|---|
|
Tốc độ lái xe từ 0% đến 100%. Giá trị này có thể là số nguyên |
|
Tùy chọn. Đơn vị vận tốc: |
def main():
# Drive forward at different velocities
# Default velocity
drivetrain.drive_for(FORWARD, 150, MM)
wait(1, SECONDS)
# Drive slower
drivetrain.set_drive_velocity(20, PERCENT)
drivetrain.drive_for(FORWARD, 150, MM)
wait(1, SECONDS)
# Drive faster
drivetrain.set_drive_velocity(100, PERCENT)
drivetrain.drive_for(FORWARD, 150, MM)
# VR threads — Do not delete
vr_thread(main)
đặt_vận_độ_quay#
set_turn_velocity cho robot biết tốc độ quay. Tỷ lệ phần trăm càng cao thì robot quay càng nhanh, tỷ lệ phần trăm càng thấp thì robot quay càng chậm.
Mỗi dự án đều bắt đầu với việc robot quay ở tốc độ 50% theo mặc định.
Lưu ý: Vận tốc cao hơn làm cho robot 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 robot 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ả |
|---|---|
|
Tốc độ quay từ 0% đến 100%. Giá trị này có thể là số nguyên |
|
Tùy chọn. Đơn vị vận tốc: |
def main():
# Turn at different velocities
# Default velocity
drivetrain.turn_for(RIGHT, 120, DEGREES)
wait(1, SECONDS)
# Turn slower
drivetrain.set_turn_velocity(20, PERCENT)
drivetrain.turn_for(RIGHT, 120, DEGREES)
wait(1, SECONDS)
# Turn faster
drivetrain.set_turn_velocity(100, PERCENT)
drivetrain.turn_for(RIGHT, 120, DEGREES)
# VR threads — Do not delete
vr_thread(main)
Người nhận#
tiêu đề#
Hướng di chuyển là hướng mà robot đang đối mặt, được đo bằng độ. Lệnh heading trả về hướng di chuyển hiện tại của robot từ 0 đến 359,99 độ.
Hướng di chuyển ban đầu của robot là 0 độ.
Usage:
drivetrain.heading(units)
Thông số |
Sự miêu tả |
|---|---|
|
Tùy chọn. Đơn vị hướng: |
def main():
# Display the heading after turning
drivetrain.turn_for(RIGHT, 450, DEGREES)
brain.screen.print("Heading: ")
brain.screen.print(drivetrain.heading(DEGREES))
# VR threads — Do not delete
vr_thread(main)
xoay#
Góc quay là mức độ robot đã xoay, được đo bằng độ. Khi bắt đầu một dự án, giá trị góc quay được đặt là 0 độ. Lệnh rotation trả về góc quay hiện tại của robot.
Xoay sang phải sẽ làm tăng góc quay, và xoay sang trái sẽ làm giảm góc quay. Ví dụ, xoay hai vòng sang phải sẽ tạo ra góc quay 720 độ.
Usage:
drivetrain.rotation(units)
Thông số |
Sự miêu tả |
|---|---|
|
Tùy chọn. Đơn vị xoay: |
def main():
# Display the rotation after turning
drivetrain.turn_for(RIGHT, 450, DEGREES)
brain.screen.print("Rotation: ")
brain.screen.print(drivetrain.rotation(DEGREES))
# VR threads — Do not delete
vr_thread(main)
đã xong#
is_done trả về giá trị Boolean cho biết robot đã di chuyển xong hay chưa. Điều 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 robot.
True— Robot đã di chuyển xong.False— Robot 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 sau có tham số wait : drive_for, turn_for, turn_to_heading, và turn_to_rotation.
Usage:
drivetrain.is_done()
Thông số |
Sự miêu tả |
|---|---|
Phương pháp này không có tham số. |
đang di chuyển#
is_moving trả về trạng thái di chuyển của robot, dưới dạng giá trị Boolean. Điều này có thể được sử dụng để điều khiển thời gian thực hiện các hành vi khác dựa trên chuyển động của robot.
True— Robot đang di chuyển.False— Robot 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ố. |
vận tốc#
Giá trị velocity trả về tốc độ di chuyển của robot, được biểu thị bằng phần trăm từ -100% đến 100%.
Usage:
drivetrain.velocity(units)
Thông số |
Sự miêu tả |
|---|---|
|
Tùy chọn. Đơn vị vận tốc: |
Ví dụ
def main():
# Display the velocity after driving
drivetrain.drive_for(FORWARD, 150, MM)
brain.screen.print("Velocity: ")
brain.screen.print(drivetrain.velocity(PERCENT))
Cử động#
Disco sử dụng nhóm động cơ hút để quay các bánh xe hút, nhờ đó các đĩa có thể được thu gom và phân loại. Các bánh xe này cũng có thể quay các con lăn trên đồng ruộng khi chúng tiếp xúc với nhau.
Phần mô tả hướng chuyển động giải thích cách mỗi hướng di chuyển cụm mô tơ hút gió trên Disco.
Hành động#
quay#
spin sẽ quay một nhóm động cơ tiến hoặc lùi liên tục. Nhóm động cơ sẽ tiếp tục quay cho đến khi nhận được một lệnh khác, chẳng hạn như quay theo hướng khác hoặc dừng lại.
Usage:
intake_motor_group.spin(direction)
Thông số |
Sự miêu tả |
|---|---|
|
Hướng quay của nhóm động cơ:
|
def main():
# Spin the intake forward then stop
intake_motor_group.spin(FORWARD)
wait(0.5, SECONDS)
intake_motor_group.stop()
# VR threads — Do not delete
vr_thread(main)
quay cho#
Lệnh spin_for quay một nhóm động cơ một khoảng cách cụ thể. Khoảng cách quay này tương đối so với vị trí hiện tại của nhóm động cơ. Chương trình sẽ chờ cho đến khi nhóm động cơ quay xong trước khi dòng mã tiếp theo được thực thi.
Usage:
intake_motor_group.spin_for(direction, distance, units, wait)
Thông số |
Sự miêu tả |
|---|---|
|
Hướng quay của nhóm động cơ:
|
|
Khoảng cách mà nhóm động cơ quay. |
|
Tùy chọn. Đơn vị khoảng cách: |
|
Tùy chọn.
|
def main():
# Spin the intake forward then stop
intake_motor_group.spin_for(FORWARD, 360, DEGREES)
# VR threads — Do not delete
vr_thread(main)
quay đến vị trí#
spin_to_position xoay một nhóm động cơ đến một vị trí cụ thể.
Vị trí của một nhóm động cơ là khoảng cách nó đã quay, được đo bằng DEGREES hoặc TURNSMột vòng quay bằng 360 độ. Khi bắt đầu một dự án, vị trí của nhóm động cơ được đặt thành 0 độ. Vị trí của nhóm động cơ cũng có thể được đặt bằng phương pháp set_position.
Các giá trị vị trí là tuyệt đối. Điều này có nghĩa là hướng quay phụ thuộc vào vị trí hiện tại của nhóm động cơ.
Ví dụ, nếu nhóm động cơ bắt đầu ở 0 độ và quay đến vị trí 720 độ, nó sẽ quay về phía trước hai vòng. Nếu sau đó nó quay đến vị trí 360 độ, nó sẽ quay ngược lại một vòng, vì 360 nhỏ hơn 720.
Usage:
intake_motor_group.spin_to_position(angle, units, wait)
Thông số |
Sự miêu tả |
|---|---|
|
Giá trị vị trí mà nhóm động cơ sẽ quay tới. |
|
Tùy chọn. Đơn vị vị trí: |
|
Tùy chọn.
|
def main():
# Spin the intake forward then stop
intake_motor_group.spin_to_position(55, DEGREES)
# VR threads — Do not delete
vr_thread(main)
dừng lại#
stop dừng nhóm động cơ quay.
Usage:
intake_motor_group.stop()
Thông số |
Sự miêu tả |
|---|---|
Phương pháp này không có tham số. |
def main():
# Spin the intake forward then stop
intake_motor_group.spin(FORWARD)
wait(0.5, SECONDS)
intake_motor_group.stop()
# VR threads — Do not delete
vr_thread(main)
Biến đổi#
đặt vị trí#
Vị trí của một nhóm động cơ được xác định bằng khoảng cách quay, tính bằng DEGREES hoặc TURNSMột vòng quay tương đương với 360 độ. set_position thay đổi vị trí hiện tại của nhóm động cơ thành một giá trị mới.
Ví dụ, nếu một nhóm động cơ đã quay đến 180 độ, việc đặt vị trí về 0 độ sẽ thiết lập lại vị trí đó từ 180 độ về 0 độ. Sau đó, nhóm động cơ có thể quay đến các vị trí dựa trên giá trị mới đó.
Usage:
intake_motor_group.set_position(position, units)
Thông số |
Sự miêu tả |
|---|---|
|
Giá trị vị trí cần thiết lập cho nhóm động cơ. |
|
Tùy chọn. Đơn vị vị trí: |
def main():
# Spin the intake forward then stop
intake_motor_group.set_position(90, DEGREES)
intake_motor_group.spin_to_position(0, DEGREES)
# VR threads — Do not delete
vr_thread(main)
đặt vận tốc#
Tham số set_velocity cho biết tốc độ quay của nhóm động cơ. Tỷ lệ phần trăm càng cao thì nhóm động cơ càng quay nhanh hơn, và tỷ lệ phần trăm càng thấp thì nhóm động cơ càng quay chậm hơn.
Mỗi dự án đều bắt đầu với mỗi nhóm động cơ quay ở tốc độ 50% theo mặc định.
Lưu ý: Tốc độ cao hơn làm cho nhóm động cơ quay nhanh hơn, nhưng có thể kém chính xác hơn. Tốc độ thấp hơn làm cho nhóm động cơ quay chậm hơn, nhưng có thể chính xác hơn.
Usage:
intake_motor_group.set_velocity(velocity, units)
Thông số |
Sự miêu tả |
|---|---|
|
Tốc độ quay từ 0% đến 100%. Giá trị này có thể là số nguyên |
|
Đơn vị vận tốc: |
def main():
# Spin the intake forward then stop
intake_motor_group.set_velocity(75, PERCENT)
intake_motor_group.spin_to_position(180, 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à một nhóm động cơ sẽ cố gắng hoàn thành một chuyển động. Nếu nhóm động cơ 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 nhóm động cơ bị kẹt trong một chuyển động.
Usage:
intake_motor_group.set_timeout(value, units)
Thông số |
Sự miêu tả |
|---|---|
|
Khoảng thời gian mà nhóm vận động có thể cố gắng hoàn thành một chuyển động. Giá trị này có thể là số nguyên dương |
|
Đơn vị thời gian: |
def main():
# Spin the intake forward then stop
intake_motor_group.set_timeout(2, SECONDS)
intake_motor_group.spin_to_position(270, DEGREES)
# VR threads — Do not delete
vr_thread(main)
Người nhận#
đã xong#
is_done trả về giá trị Boolean cho biết nhóm vận động đã hoàn thành chuyển động hay chưa. Điều này có thể được sử dụng để kiểm soát thời gian của các hành vi khác dựa trên chuyển động của nhóm vận động.
True— Nhóm động cơ đã hoàn thành việc di chuyển.False— Nhóm cơ vẫn đang hoạt động.
Phương pháp này hoạt động cùng với các phương pháp Chuyển động sau có tham số wait : spin_for và spin_to_position.
Usage:
intake_motor_group.is_done()
Thông số |
Sự miêu tả |
|---|---|
Phương pháp này không có tham số. |
đang quay#
is_spinning trả về giá trị Boolean cho biết nhóm động cơ có đang quay 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 nhóm động cơ.
True— Nhóm động cơ đang quay.False— Nhóm động cơ không quay.
Phương pháp này hoạt động cùng với các phương pháp Chuyển động sau có tham số wait : spin_for và spin_to_position.
Usage:
intake_motor_group.is_spinning()
Thông số |
Sự miêu tả |
|---|---|
Phương pháp này không có tham số. |
chức vụ#
Vị trí của một nhóm động cơ được xác định bằng khoảng cách quay, tính bằng DEGREES hoặc TURNSMột vòng quay tương đương với 360 độ. Vị trí position trả về vị trí hiện tại của nhóm động cơ.
Khi bắt đầu dự án, vị trí của nhóm động cơ được đặt ở 0 độ. Nếu nhóm động cơ quay một vòng hoàn chỉnh về phía trước, vị trí sẽ là 360 độ hoặc 1 vòng. Nếu nhóm động cơ quay theo hướng ngược lại, vị trí sẽ là số âm.
Usage:
intake_motor_group.position(units)
Thông số |
Sự miêu tả |
|---|---|
|
Bộ phận đưa nhóm động cơ trở lại vị trí ban đầu: |
vận tốc#
velocity trả về tốc độ quay của nhóm động cơ.
Giá trị dương có nghĩa là nhóm động cơ đang quay thuận chiều. Giá trị âm có nghĩa là nhóm động cơ đang quay ngược chiều.
Usage:
intake_motor_group.velocity(units)
Thông số |
Sự miêu tả |
|---|---|
|
Đơn vị vận tốc cần trả về: |
Bảng điều khiển#
Cửa sổ Console 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 Console cũng có thể di chuyển con trỏ đến hàng mới, xóa nội dung Console và thêm biến hoặc giá trị cảm biến vào tab Monitor.
In#
não.màn hình.in#
brain.screen.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.screen.next_row khi bạn muốn giá trị được in tiếp theo bắt đầu trên một hàng mới.
Usage:
brain.screen.print(value)
Thông số |
Sự miêu tả |
|---|---|
|
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.screen.print("Hello, robot!")
# VR threads — Do not delete
vr_thread(main)

não.màn hình.hàng tiếp theo#
Lệnh brain.screen.next_row 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.screen.next_row()
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.screen.print("Row 1")
brain.screen.next_row()
brain.screen.print("Row 2")
# VR threads — Do not delete
vr_thread(main)

brain.screen.clear_screen#
brain.screen.clear_screen 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.screen.clear_screen()
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.screen.print("This will disappear...")
wait(2, SECONDS)
brain.screen.clear_screen()
# VR threads — Do not delete
vr_thread(main)
Màn hình#
biến giám sát#
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ả |
|---|---|
|
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 in a square 3 times
for loops in range(12):
drivetrain.turn_for(RIGHT, 90, DEGREES)
drivetrain.drive_for(FORWARD, 150, MM)
# VR threads — Do not delete
vr_thread(main)
cảm biến giám sát#
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ả |
|---|---|
|
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:
|
def main():
# Monitor the robot's heading
monitor_sensor("drivetrain.heading")
drivetrain.turn_for(RIGHT, 450, DEGREES)
# VR threads — Do not delete
vr_thread(main)
Cảm biến#
Quang học#
là_vật_thể_gần#
is_near_object trả về giá trị Boolean cho biết liệu Cảm biến quang học có phát hiện vật thể trong phạm vi hay không.
True– Cảm biến quang học phát hiện vật thể.False– Cảm biến quang học không phát hiện vật thể.
Usage:
roller_optical.is_near_object()
Thông số |
Sự miêu tả |
|---|---|
Phương pháp này không có tham số. |
màu sắc#
color trả về một thể hiện của lớp Color , dựa trên giá trị sắc độ được phát hiện. Chúng có thể được so sánh với các đối tượng Color được định nghĩa trước để tạo ra các câu lệnh điều kiện.
Các màu sắc có thể là:
NONERED- Giá trị màu sắc nằm giữa 340° - 20°GREEN- Giá trị màu sắc nằm trong khoảng 80° - 140°BLUE- Giá trị màu sắc nằm trong khoảng 200° - 240°YELLOW- Giá trị màu sắc nằm trong khoảng 40° - 60°ORANGE- Giá trị màu sắc nằm trong khoảng 20° - 40°PURPLE- Giá trị màu sắc nằm trong khoảng 240° - 280°CYAN- Giá trị màu sắc nằm trong khoảng 140° - 200°
Lưu ý: Cảm biến quang học đang tìm kiếm các dải màu phù hợp với màu được chỉ định. Để phát hiện các dải màu cụ thể, hãy xem hue.
Usage:
roller_optical.color()
Thông số |
Sự miêu tả |
|---|---|
Phương pháp này không có tham số. |
độ sáng#
brightness trả về lượng ánh sáng phản xạ từ vật thể dưới dạng số thập phân (float) biểu thị phần trăm.
Tỷ lệ phần trăm càng cao nghĩa là càng nhiều ánh sáng được phản xạ trở lại cảm biến quang học. Tỷ lệ phần trăm càng thấp nghĩa là càng ít ánh sáng được phản xạ trở lại.
Usage:
roller_optical.brightness()
Thông số |
Sự miêu tả |
|---|---|
Phương pháp này không có tham số. |
sắc độ#
hue trả về giá trị sắc độ của màu được phát hiện dưới dạng số thập phân (float) từ 0 đến 359.
Sắc độ là một cách để mô tả màu sắc bằng các con số xung quanh vòng tròn màu.

Usage:
roller_optical.hue()
Thông số |
Sự miêu tả |
|---|---|
Phương pháp này không có tham số. |
đối tượng được phát hiện#
object_detected đăng ký một hàm sẽ được gọi bất cứ khi nào Cảm biến quang học phát hiện một vật thể mới.
Usage:
roller_optical.object_detected(callback, arg)
Thông số |
Sự miêu tả |
|---|---|
|
Một hàm được định nghĩa trước đó sẽ được thực thi khi Cảm biến quang học phát hiện một vật thể mới. |
|
Tùy chọn. Một tuple chứa các đối số để truyền cho hàm gọi lại. Xem Sử dụng hàm có tham số để biết thêm thông tin. |
vật thể bị mất#
object_lost đăng ký một hàm sẽ được gọi bất cứ khi nào Cảm biến quang học mất dấu vật thể được phát hiện.
Usage:
roller_optical.object_lost(callback, arg)
Thông số |
Sự miêu tả |
|---|---|
|
Một hàm được định nghĩa trước đó sẽ thực thi khi Cảm biến quang học mất một đối tượng được phát hiện. |
|
Tùy chọn. Một tuple chứa các đối số để truyền cho hàm gọi lại. Xem Sử dụng hàm có tham số để biết thêm thông tin. |
GPS#
vị trí x#
x_position trả về tọa độ x hiện tại của cảm biến GPS (Game Positioning System™) trên sân.
Usage:
gps.x_position(units)
Thông số |
Sự miêu tả |
|---|---|
đơn vị |
Đơn vị của giá trị bù: |
vị trí y#
y_position trả về tọa độ y hiện tại của cảm biến GPS (Game Positioning System™) trên sân.
Usage:
gps.y_position(units)
Thông số |
Sự miêu tả |
|---|---|
đơn vị |
Đơn vị của giá trị bù: |
tiêu đề#
heading trả về hướng mà robot hiện đang đối mặt dựa trên các giá trị đọc từ cảm biến GPS (Game Positioning System™) trong khoảng từ 0 đến 359 độ.
Usage:
gps.heading()
Thông số |
Sự miêu tả |
|---|---|
Phương pháp này không có tham số. |
Công cụ theo dõi đường dây#
độ phản xạ#
reflectivity trả về một số nguyên biểu thị lượng ánh sáng phản xạ từ bề mặt dưới dạng phần trăm.
Độ phản xạ 0% có nghĩa là vật thể rất tối.
Độ phản xạ 100% có nghĩa là vật thể rất sáng.
Cách sử dụng:
Một trong ba đối tượng line_tracker có sẵn có thể được sử dụng với phương thức này, như được hiển thị bên dưới:
bộ theo dõi đường thẳng |
Yêu cầu |
|---|---|
|
|
|
|
|
|
Tham số |
Sự miêu tả |
|---|---|
đơn vị |
Tùy chọn. Đơn vị để trả về hệ số phản xạ:
|