Python ειδικά για ρομπότ#
Εισαγωγή#
Το Hero Bot, Axel, περιλαμβάνει δύο επιλογές κινητήρα, έναν αισθητήρα AI Vision Sensor, έναν οπτικό αισθητήρα, έναν αισθητήρα περιστροφής και έναν αισθητήρα GPS (Game Positioning System).
Όλες οι τυπικές μέθοδοι VR VEXcode είναι διαθέσιμες για χρήση στην παιδική χαρά V5 24-25 High Stakes.
Παρακάτω είναι μια λίστα με όλες τις διαθέσιμες μεθόδους ειδικά για ρομπότ:
Σύστημα μετάδοσης κίνησης – Μετακινήστε και περιστρέψτε το ρομπότ.
Ενέργειες
drive— Moves the robot forward or reverse forever.drive_for— Moves the robot forward or reverse for a specific distance.turn— Turns the robot left or right forever.turn_for— Turns the robot left or right for a specific number of degrees.turn_to_heading— Turns the robot to face a specific heading from -359 to 359 degrees.turn_to_rotation— Turns the robot to a specific rotation.stop— Stops the robot’s movement.
Μεταλλαγμένοι
set_heading— Changes the robot’s current heading to a new heading.set_rotation— Changes the robot’s current rotation to a new rotation.set_timeout— Sets how much time the robot will try to finish a movement.set_drive_velocity— Tells the robot how fast to drive.set_turn_velocity— Tells the robot how fast to turn.
Αποκτητές
heading— Returns the robot’s current heading from 0 to 359.99 degrees.rotation— Returns the robot’s current rotation.is_done— Returns whether the robot is finished moving, as a Boolean value.is_moving— Returns whether the robot is moving, as a Boolean value.velocity— Returns how fast the robot is driving.
Κίνηση – Μετακίνηση και παρακολούθηση των κινητήρων του ρομπότ.
Ενέργειες
spin— Spins a motor forward or reverse forever.spin_for— Spins a motor for a specific distance.spin_to_position— Spins a motor to a specific position.stop— Stops a motor from spinning.
Μεταλλαγμένοι
set_position— Changes the motor’s current position to a new value.set_velocity— Tells a motor how fast to spin.set_timeout— Sets how much time a motor will try to finish a movement.
Αποκτητές
is_done— Returns whether the motor is finished moving, as a Boolean value.is_spinning— Returns whether the motor is spinning, as a Boolean value.position— Returns the motor’s current position.velocity— Returns how fast the motor is spinning.
AI Vision - Καταγραφή και ανάλυση αντικειμένων χρησιμοποιώντας τον αισθητήρα AI Vision.
Αποκτητές
take_snapshot– Returns a tuple of detected objects for a specific signature.
Σκηνικά θέατρου
width– Width of the detected object in pixels.height– Height of the detected object in pixels.centerX– X position of the object’s center in pixels.centerY– Y position of the object’s center in pixels.originX– X position of the object’s top-left corner in pixels.originY– Y position of the object’s top-left corner in pixels.id– Classification or tag ID of the object.
Κονσόλα – Εκτύπωση στην Κονσόλα και παρακολούθηση τιμών.
Αποτύπωμα
brain.screen.print— Displays text, numbers, or variable values in the Console.brain.screen.next_row— Moves the Console cursor to the start of the next row.brain.screen.clear_screen— Clears all rows from the Console.
Ελεγκτής εκπομπών
monitor_variable— Adds one or more predefined variables to the Monitor tab.monitor_sensor— Adds one or more sensor values to the Monitor tab.
Αισθητήρες - Χρησιμοποιήστε τους διάφορους αισθητήρες του ρομπότ.
Οπτικός
is_near_object– Returns whether the Optical Sensor detects an object within range.color– Returns the color detected by the Optical Sensor.brightness– Returns the amount of light reflected from the object.hue– Returns the hue detected by the Optical Sensor.object_detected– Registers a function to be called when the Optical Sensor detects an object.object_lost– Registers a function to be called when the Optical Sensor loses an object.
Περιστροφή
set_position– Sets the current position of the Rotation Sensor to a specific value.angle– Returns the current angle of the sensor between 0 and 359.99 degrees.position– Returns the total rotational position in degrees or turns.
GPS
x_position– Returns the current x-coordinate of a GPS Sensor on the field.y_position– Returns the current y-coordinate of a GPS Sensor on the field.heading– Returns the heading that the robot is currently facing based on the GPS Sensor’s readings from 0 to 359 degrees.
Τα παραδείγματα σε αυτήν τη σελίδα χρησιμοποιούν την προεπιλεγμένη θέση έναρξης της Παιδικής Χαράς.
Σύστημα μετάδοσης κίνησης#
Το σύστημα μετάδοσης κίνησης ελέγχει τον τρόπο με τον οποίο το ρομπότ εικονικής πραγματικότητας (VR) κινείται και στρίβει. Το σύστημα μετάδοσης κίνησης μπορεί να κινείται προς τα εμπρός ή προς τα πίσω, να στρίβει αριστερά ή δεξιά, να στρίβει προς τις κατευθύνσεις και να παρακολουθεί την περιστροφή του.
Ενέργειες#
οδηγώ#
drive moves the robot forward or reverse forever. The robot will continue to move until it is given another action, like turning or stopping.
Usage:
drivetrain.drive(direction)
Παράμετροι |
Περιγραφή |
|---|---|
|
The direction the robot moves: |
def main():
# Drive forward then stop
drivetrain.drive(FORWARD)
wait(2, SECONDS)
drivetrain.stop()
# VR threads — Do not delete
vr_thread(main)
μονάδα_δίσκου#
drive_for moves the robot forward or reverse for a specific distance. The project will wait until the robot is done moving before the next line of code runs.
Usage:
drivetrain.drive_for(direction, distance, units, wait)
Παράμετροι |
Περιγραφή |
|---|---|
|
The direction the robot moves: |
|
The distance the robot drives. This can be an |
|
Optional. The distance unit: |
|
Optional. |
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)
σειρά#
turn turns the robot left or right forever. The robot will continue to turn until it is given another action, like driving or stopping.
Usage:
drivetrain.turn(direction)
Παράμετροι |
Περιγραφή |
|---|---|
|
The direction the robot turns: |
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)
στροφή_για#
turn_for turns the robot left or right for a specific number of degrees. The turn is relative to the current position of the robot. The project will wait until the robot is done turning before the next line of code runs.
Usage:
drivetrain.turn_for(direction, angle, units, wait)
Παράμετροι |
Περιγραφή |
|---|---|
|
The direction the robot turns: |
|
The number of degrees the robot turns. This can be an |
|
Optional. The rotation unit: |
|
Optional. |
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)
στροφή_προς_την_κατεύθυνση#
A heading is the direction the robot is facing, measured in degrees. turn_to_heading turns the robot to face a specific heading from -359 to 359 degrees. The robot will turn the shortest direction to reach the target heading.
Η αρχική κατεύθυνση του ρομπότ είναι 0 μοίρες.
Το έργο θα περιμένει μέχρι να ολοκληρώσει την περιστροφή του ρομπότ προτού εκτελεστεί η επόμενη γραμμή κώδικα.
Usage:
drivetrain.turn_to_heading(angle, units, wait)
Παράμετροι |
Περιγραφή |
|---|---|
|
The direction the robot should face, in degrees. This can be an |
|
Optional. The rotation unit: |
|
Optional. |
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)
στροφή_σε_περιστροφή#
turn_to_rotation turns the robot to a specific rotation.
Rotation is how much the robot has turned, measured in degrees. At the beginning of a project, the rotation value is set to 0 degrees. Rotation can also be set using the set_rotation method.
Οι τιμές περιστροφής είναι απόλυτες. Αυτό σημαίνει ότι η κατεύθυνση της στροφής εξαρτάται από την τρέχουσα περιστροφή του ρομπότ. Η στροφή προς τα δεξιά αυξάνει την περιστροφή και η στροφή προς τα αριστερά τη μειώνει.
Για παράδειγμα, αν το ρομπότ ξεκινήσει από 0 μοίρες και στρίψετε σε περιστροφή 720 μοιρών, θα στρίψει δεξιά δύο φορές. Αν στη συνέχεια στρίψετε σε περιστροφή 360 μοιρών, θα στρίψει αριστερά μία φορά, επειδή οι 360 μοίρες είναι μικρότερες από 720 μοίρες.
Το έργο θα περιμένει μέχρι να ολοκληρώσει την περιστροφή του ρομπότ προτού εκτελεστεί η επόμενη γραμμή κώδικα.
Usage:
drivetrain.turn_to_rotation(angle, units, wait)
Παράμετροι |
Περιγραφή |
|---|---|
|
The rotation value, in degrees, that the robot will turn to. This can be an |
|
Optional. The rotation unit: |
|
Optional. |
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)
στάση#
stop stops the robot’s movement.
Usage:
drivetrain.stop()
Παράμετροι |
Περιγραφή |
|---|---|
Αυτή η μέθοδος δεν έχει παραμέτρους. |
def main():
# Drive forward then stop
drivetrain.drive(FORWARD)
wait(2, SECONDS)
drivetrain.stop()
# VR threads — Do not delete
vr_thread(main)
Μεταλλάκτες#
set_heading#
A heading is the direction the robot is facing, measured in degrees. set_heading changes the robot’s current heading to a new heading value.
Για παράδειγμα, εάν το ρομπότ έχει στραφεί προς τα δεξιά, η ρύθμιση της κατεύθυνσης σε 0 μοίρες καθιστά αυτή τη θέση προς τα δεξιά τις νέες 0 μοίρες. Στη συνέχεια, το ρομπότ μπορεί να στραφεί σε άλλες θέσεις με βάση αυτήν τη νέα κατεύθυνση.
Usage:
drivetrain.set_heading(heading, units)
Παράμετροι |
Περιγραφή |
|---|---|
|
The heading value, in degrees, to set for the robot. This can be an |
|
Optional. The heading unit: |
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)
set_rotation#
Rotation is how much the robot has turned, measured in degrees. At the beginning of a project, the rotation value is set to 0 degrees. set_rotation changes the robot’s current rotation to a new value.
Για παράδειγμα, αν το ρομπότ έχει κάνει δύο πλήρεις στροφές προς τα δεξιά, η τιμή περιστροφής του θα είναι 720 μοίρες. Αν ορίσετε την περιστροφή σε 0 μοίρες, η περιστροφή θα επαναφερθεί από 720 σε 0 μοίρες. Στη συνέχεια, το ρομπότ μπορεί να στραφεί σε περιστροφές με βάση αυτήν τη νέα τιμή.
Usage:
drivetrain.set_rotation(rotation, units)
Παράμετροι |
Περιγραφή |
|---|---|
|
The rotation value, in degrees, to set for the robot. This can be an |
|
Optional. The rotation unit: |
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)
set_timeout#
set_timeout sets how much time the robot will try to finish a movement. If the robot cannot finish in that time, it will stop trying and move on to the next line of code. This keeps the robot from getting stuck on a movement.
Usage:
drivetrain.set_timeout(value, units)
Παράμετροι |
Περιγραφή |
|---|---|
|
The amount of time the robot can try to finish a movement. This can be a positive |
|
The time unit: |
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)
set_drive_velocity#
set_drive_velocity tells the robot how fast to drive. A higher percentage makes the robot drive faster and a lower percentage makes the robot drive slower.
Κάθε έργο ξεκινά με το ρομπότ να κινείται με ταχύτητα 50% από προεπιλογή.
Σημείωση: Μια υψηλότερη ταχύτητα κάνει το ρομπότ να κινείται πιο γρήγορα, αλλά μπορεί να είναι λιγότερο ακριβές. Μια χαμηλότερη ταχύτητα κάνει το ρομπότ να κινείται πιο αργά, αλλά μπορεί να είναι πιο ακριβές.
Usage:
drivetrain.set_drive_velocity(velocity, units)
Παράμετροι |
Περιγραφή |
|---|---|
|
The velocity to drive with from 0% to 100%. This can be an |
|
Optional. The velocity unit: |
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)
ορισμός_ταχύτητας_στροφής#
set_turn_velocity tells the robot how fast to turn. A higher percentage makes the robot turn faster and a lower percentage makes the robot turn slower.
Κάθε έργο ξεκινά με το ρομπότ να περιστρέφεται με ταχύτητα 50% από προεπιλογή.
Σημείωση: Μια υψηλότερη ταχύτητα κάνει το ρομπότ να περιστρέφεται πιο γρήγορα, αλλά μπορεί να είναι λιγότερο ακριβής. Μια χαμηλότερη ταχύτητα κάνει το ρομπότ να περιστρέφεται πιο αργά, αλλά μπορεί να είναι πιο ακριβής.
Usage:
drivetrain.set_turn_velocity(velocity, units)
Παράμετροι |
Περιγραφή |
|---|---|
|
The velocity to turn with from 0% to 100%. This can be an |
|
Optional. The velocity unit: |
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)
Αποκτητές#
επικεφαλίδα#
A heading is the direction the robot is facing, measured in degrees. heading returns the robot’s current heading from 0 to 359.99 degrees.
Η αρχική κατεύθυνση του ρομπότ είναι 0 μοίρες.
Usage:
drivetrain.heading(units)
Παράμετροι |
Περιγραφή |
|---|---|
|
Optional. The heading unit: |
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)
περιστροφή#
Rotation is how much the robot has turned, measured in degrees. At the beginning of a project, the rotation value is set to 0 degrees. rotation returns the robot’s current rotation.
Η δεξιά στροφή αυξάνει την περιστροφή και η αριστερά τη μειώνει. Για παράδειγμα, κάνοντας δύο πλήρεις στροφές προς τα δεξιά θα επιστρέψει μια περιστροφή 720 μοιρών.
Usage:
drivetrain.rotation(units)
Παράμετροι |
Περιγραφή |
|---|---|
|
Optional. The rotation unit: |
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)
είναι_ολοκληρωμένο#
is_done returns whether the robot is finished moving, as a Boolean value. This can be used to control the timing of other behaviors based on the robot’s movement.
True— The robot is finished moving.False— The robot is still moving.
This method works together with the following Drivetrain methods that have the wait parameter: drive_for, turn_for, turn_to_heading, and turn_to_rotation.
Usage:
drivetrain.is_done()
Παράμετροι |
Περιγραφή |
|---|---|
Αυτή η μέθοδος δεν έχει παραμέτρους. |
is_moving#
is_moving returns whether the robot is moving, as a Boolean value. This can be used to control the timing of other behaviors based on the robot’s movement.
True— The robot is moving.False— The robot is not moving.
Usage:
drivetrain.is_moving()
Παράμετροι |
Περιγραφή |
|---|---|
Αυτή η μέθοδος δεν έχει παραμέτρους. |
ταχύτητα#
velocity returns how fast the robot is driving, as a percentage from -100% to 100%.
Usage:
drivetrain.velocity(units)
Παράμετροι |
Περιγραφή |
|---|---|
|
Optional. The velocity unit: |
Παράδειγμα
def main():
# Display the velocity after driving
drivetrain.drive_for(FORWARD, 150, MM)
brain.screen.print("Velocity: ")
brain.screen.print(drivetrain.velocity(PERCENT))
Κίνηση#
Ο Axel χρησιμοποιεί τον κινητήρα του βραχίονα για να ανυψώνει και να κατεβάζει τον βραχίονα, ώστε οι δακτύλιοι να μπορούν να τοποθετούνται κοντά σε πασσάλους. Ο κινητήρας ώθησης μετακινεί τον ωθητή προς τα κάτω στον βραχίονα για να ωθήσει τους δακτυλίους από τον βραχίονα και πάνω σε έναν πάσσαλο.
Κάθε κινητήρας έχει τη δική του συμπεριφορά κατεύθυνσης. Οι περιγραφές κατεύθυνσης εξηγούν πώς κάθε κατεύθυνση κινεί τον συγκεκριμένο κινητήρα στον Axel.
Ενέργειες#
γνέθω#
spin spins a motor forward or reverse forever. The motor will continue to spin until it is given another action, like spinning in a different direction or stopping.
Χρήση:
Ένα από τα δύο διαθέσιμα αντικείμενα κινητήρα μπορεί να χρησιμοποιηθεί με αυτήν τη μέθοδο, όπως φαίνεται παρακάτω:
μοτέρ |
Εντολή |
|---|---|
|
|
|
|
Παράμετροι |
Περιγραφή |
|---|---|
|
The direction the motor spins:
|
def main():
# Lift the Arm up before moving
arm_motor.spin(FORWARD)
wait(1, SECONDS)
arm_motor.stop()
# VR threads — Do not delete
vr_thread(main)
περιστροφή_για#
spin_for spins a motor for a specific distance. The spin is relative to the current position of the motor. The project will wait until the motor is done spinning before the next line of code runs.
Χρήση:
Ένα από τα δύο διαθέσιμα αντικείμενα κινητήρα μπορεί να χρησιμοποιηθεί με αυτήν τη μέθοδο, όπως φαίνεται παρακάτω:
μοτέρ |
Εντολή |
|---|---|
|
|
|
|
Παράμετροι |
Περιγραφή |
|---|---|
|
The direction the motor spins:
|
|
The distance the motor spins. |
|
Optional. The distance unit: |
|
Optional.
|
def main():
# Lift the Arm up before moving
arm_motor.spin_for(FORWARD, 400, DEGREES)
# VR threads — Do not delete
vr_thread(main)
περιστροφή_σε_θέση#
spin_to_position spins a motor to a specific position.
A motor’s position is how far it has spun, measured in DEGREES or TURNS. One turn is equal to 360 degrees. At the beginning of a project, the motor position is set to 0 degrees. The motor position can also be set using the set_position method.
Οι τιμές θέσης είναι απόλυτες. Αυτό σημαίνει ότι η κατεύθυνση της περιστροφής εξαρτάται από την τρέχουσα θέση του κινητήρα.
Για παράδειγμα, αν ο κινητήρας ξεκινήσει στις 0 μοίρες και περιστραφεί σε μια θέση 720 μοιρών, θα περιστραφεί προς τα εμπρός κατά δύο στροφές. Αν στη συνέχεια περιστραφεί σε μια θέση 360 μοιρών, θα περιστραφεί προς τα πίσω κατά μία στροφή, επειδή οι 360 μοίρες είναι μικρότερες από τις 720.
Χρήση:
Ένα από τα δύο διαθέσιμα αντικείμενα κινητήρα μπορεί να χρησιμοποιηθεί με αυτήν τη μέθοδο, όπως φαίνεται παρακάτω:
μοτέρ |
Εντολή |
|---|---|
|
|
|
|
Παράμετροι |
Περιγραφή |
|---|---|
|
The position value the motor will spin to. |
|
Optional. The position unit: |
|
Optional.
|
def main():
# Lift the Arm up before moving
arm_motor.spin_to_position(400, DEGREES)
# VR threads — Do not delete
vr_thread(main)
στάση#
stop stops a motor from spinning.
Χρήση:
Ένα από τα δύο διαθέσιμα αντικείμενα κινητήρα μπορεί να χρησιμοποιηθεί με αυτήν τη μέθοδο, όπως φαίνεται παρακάτω:
μοτέρ |
Εντολή |
|---|---|
|
|
|
|
Παράμετροι |
Περιγραφή |
|---|---|
Αυτή η μέθοδος δεν έχει παραμέτρους. |
def main():
# Lift the Arm up before moving
arm_motor.spin(FORWARD)
wait(1, SECONDS)
arm_motor.stop()
# VR threads — Do not delete
vr_thread(main)
Μεταλλάκτες#
ορισμός_θέσης#
A motor’s position is how far it has spun, measured in DEGREES or TURNS. One turn is equal to 360 degrees. set_position changes the motor’s current position to a new value.
Για παράδειγμα, εάν ένας κινητήρας έχει περιστραφεί στις 180 μοίρες, η ρύθμιση της θέσης σε 0 μοίρες θα επαναφέρει αυτήν τη θέση από 180 σε 0 μοίρες. Στη συνέχεια, ο κινητήρας μπορεί να περιστραφεί σε θέσεις με βάση αυτήν τη νέα τιμή.
Χρήση:
Ένα από τα δύο διαθέσιμα αντικείμενα κινητήρα μπορεί να χρησιμοποιηθεί με αυτήν τη μέθοδο, όπως φαίνεται παρακάτω:
μοτέρ |
Εντολή |
|---|---|
|
|
|
|
Παράμετροι |
Περιγραφή |
|---|---|
|
The position value to set for the motor. |
|
Optional. The position unit: |
def main():
# Make the raised Arm as the new 0 degrees position
arm_motor.spin_to_position(400, DEGREES)
arm_motor.set_position(0, DEGREES)
# VR threads — Do not delete
vr_thread(main)
set_velocity#
set_velocity tells a motor how fast to spin. A higher percentage makes the motor spin faster and a lower percentage makes the motor spin slower.
Κάθε έργο ξεκινά με κάθε κινητήρα να περιστρέφεται με ταχύτητα 50% από προεπιλογή.
Σημείωση: Μια υψηλότερη ταχύτητα κάνει τον κινητήρα να περιστρέφεται πιο γρήγορα, αλλά μπορεί να είναι λιγότερο ακριβής. Μια χαμηλότερη ταχύτητα κάνει τον κινητήρα να περιστρέφεται πιο αργά, αλλά μπορεί να είναι πιο ακριβής.
Χρήση:
Ένα από τα δύο διαθέσιμα αντικείμενα κινητήρα μπορεί να χρησιμοποιηθεί με αυτήν τη μέθοδο, όπως φαίνεται παρακάτω:
μοτέρ |
Εντολή |
|---|---|
|
|
|
|
Παράμετροι |
Περιγραφή |
|---|---|
|
The velocity to spin with from 0% to 100%. This can be an |
|
The velocity unit: |
def main():
# Lift the Arm up before moving
arm_motor.set_velocity(100, PERCENT)
arm_motor.spin_to_position(400, DEGREES)
# VR threads — Do not delete
vr_thread(main)
set_timeout#
set_timeout sets how much time a motor will try to finish a movement. If the motor cannot finish in that time, it will stop trying and move on to the next line of code. This keeps the motor from getting stuck on a movement.
Χρήση:
Ένα από τα δύο διαθέσιμα αντικείμενα κινητήρα μπορεί να χρησιμοποιηθεί με αυτήν τη μέθοδο, όπως φαίνεται παρακάτω:
μοτέρ |
Εντολή |
|---|---|
|
|
|
|
Παράμετροι |
Περιγραφή |
|---|---|
|
The amount of time the motor can try to finish a movement. This can be a positive |
|
The time unit: |
def main():
# Lift the Arm up before moving
arm_motor.set_timeout(1, SECONDS)
arm_motor.spin_for(FORWARD, 1080, DEGREES)
# VR threads — Do not delete
vr_thread(main)
Αποκτητές#
είναι_ολοκληρωμένο#
is_done returns whether the motor is finished moving, as a Boolean value. This can be used to control the timing of other behaviors based on the motor’s movement.
True— The motor is finished moving.False— The motor is still moving.
This method works together with the following Motion methods that have the wait parameter: spin_for and spin_to_position.
Χρήση:
Ένα από τα δύο διαθέσιμα αντικείμενα κινητήρα μπορεί να χρησιμοποιηθεί με αυτήν τη μέθοδο, όπως φαίνεται παρακάτω:
μοτέρ |
Εντολή |
|---|---|
|
|
|
|
Παράμετροι |
Περιγραφή |
|---|---|
Αυτή η μέθοδος δεν έχει παραμέτρους. |
περιστρέφεται#
is_spinning returns whether the motor is spinning, as a Boolean value. This can be used to control the timing of other behaviors based on the motor’s movement.
True— The motor is spinning.False— The motor is not spinning.
This method works together with the following Motion methods that have the wait parameter: spin_for and spin_to_position.
Χρήση:
Ένα από τα δύο διαθέσιμα αντικείμενα κινητήρα μπορεί να χρησιμοποιηθεί με αυτήν τη μέθοδο, όπως φαίνεται παρακάτω:
μοτέρ |
Εντολή |
|---|---|
|
|
|
|
Παράμετροι |
Περιγραφή |
|---|---|
Αυτή η μέθοδος δεν έχει παραμέτρους. |
θέση#
A motor’s position is how far it has spun, measured in DEGREES or TURNS. One turn is equal to 360 degrees. position returns the motor’s current position.
Στην αρχή ενός έργου, η θέση του κινητήρα ορίζεται στις 0 μοίρες. Εάν ο κινητήρας περιστραφεί μία πλήρη στροφή προς τα εμπρός, η θέση θα είναι 360 μοίρες ή 1 στροφή. Εάν ο κινητήρας περιστραφεί προς την αντίθετη κατεύθυνση, η θέση θα είναι αρνητική.
Χρήση:
Ένα από τα δύο διαθέσιμα αντικείμενα κινητήρα μπορεί να χρησιμοποιηθεί με αυτήν τη μέθοδο, όπως φαίνεται παρακάτω:
μοτέρ |
Εντολή |
|---|---|
|
|
|
|
Παράμετροι |
Περιγραφή |
|---|---|
|
The unit to return the motor position in: |
ταχύτητα#
velocity returns how fast the motor is spinning.
Μια θετική τιμή σημαίνει ότι ο κινητήρας περιστρέφεται προς τα εμπρός. Μια αρνητική τιμή σημαίνει ότι ο κινητήρας περιστρέφεται προς τα πίσω.
Χρήση:
Ένα από τα δύο διαθέσιμα αντικείμενα κινητήρα μπορεί να χρησιμοποιηθεί με αυτήν τη μέθοδο, όπως φαίνεται παρακάτω:
μοτέρ |
Εντολή |
|---|---|
|
|
|
|
Παράμετροι |
Περιγραφή |
|---|---|
|
The velocity unit to return: |
Όραμα Τεχνητής Νοημοσύνης#
Αποκτητές#
λήψη_στιγμιότυπου#
take_snapshot filters data from the AI Vision Sensor frame to a single signature — a saved description of something the sensor can recognize, such as a game element on the field — and returns a tuple.
Η πλειάδα αποθηκεύει αντικείμενα ταξινομημένα από το μεγαλύτερο στο μικρότερο κατά πλάτος, ξεκινώντας από τον δείκτη 0. Η πρόσβαση στις ιδιότητες κάθε αντικειμένου είναι δυνατή χρησιμοποιώντας τον δείκτη του. Επιστρέφεται μια κενή πλειάδα εάν δεν εντοπιστούν αντικείμενα που να ταιριάζουν.
Usage:
ai_vision.take_snapshot(signature)
Παράμετροι |
Περιγραφή |
|---|---|
|
Filters the dataset to only include data of the given signature. Available signatures are:
|
def main():
# Lift the Arm to not block the AI Vision Sensor's field of view
arm_motor.spin_for(FORWARD, 350, DEGREES)
while True:
brain.screen.clear_screen()
# Display the data of the largest detected Game Element
ai_objects = ai_vision.take_snapshot(AiVision.ALL_AIOBJS)
if len(ai_objects) is not 0:
brain.screen.print("Center X: ", ai_objects[0].centerX)
brain.screen.next_row()
brain.screen.print("Center Y: ", ai_objects[0].centerY)
brain.screen.next_row()
else:
brain.screen.print("No object detected.")
wait(0.2, SECONDS)
# VR threads — Do not delete
vr_thread(main)
Σκηνικά θέατρου#
There are seven properties that are included with each object stored in a tuple after take_snapshot is used.
All property values except .id describe the detected object’s position and size in the AI Vision Sensor’s view at the moment take_snapshot was used. These values are measured in pixels, based on the sensor’s 320 by 240 pixel resolution.
.πλάτος#
.width returns the width of the detected object in pixels, which is an integer between 1 and 320.
def main():
# Lift the Arm to not block the AI Vision Sensor's view
arm_motor.spin_for(FORWARD, 350, DEGREES)
# Display the width of the largest Game Element
ai_objects = ai_vision.take_snapshot(AiVision.ALL_AIOBJS)
if len(ai_objects) is not 0:
brain.screen.print(ai_objects[0].width)
# VR threads — Do not delete
vr_thread(main)
.ύψος#
.height returns the height of the detected object in pixels, which is an integer between 1 and 240.
def main():
# Lift the Arm to not block the AI Vision Sensor's view
arm_motor.spin_for(FORWARD, 350, DEGREES)
# Display the height of the largest Game Element
ai_objects = ai_vision.take_snapshot(AiVision.ALL_AIOBJS)
if len(ai_objects) is not 0:
brain.screen.print(ai_objects[0].height)
# VR threads — Do not delete
vr_thread(main)
.centerX#
.centerX returns the x-coordinate of the detected object’s center in pixels, which is an integer between 0 and 320.
def main():
# Lift the Arm to not block the AI Vision Sensor's view
arm_motor.spin_for(FORWARD, 350, DEGREES)
# Display the centerX of the largest Game Element
ai_objects = ai_vision.take_snapshot(AiVision.ALL_AIOBJS)
if len(ai_objects) is not 0:
brain.screen.print(ai_objects[0].centerX)
# VR threads — Do not delete
vr_thread(main)
.centerY#
.centerY returns the y-coordinate of the detected object’s center in pixels, which is an integer between 0 and 240.
def main():
# Lift the Arm to not block the AI Vision Sensor's view
arm_motor.spin_for(FORWARD, 350, DEGREES)
# Display the centerY of the largest Game Element
ai_objects = ai_vision.take_snapshot(AiVision.ALL_AIOBJS)
if len(ai_objects) is not 0:
brain.screen.print(ai_objects[0].centerY)
# VR threads — Do not delete
vr_thread(main)
.originX#
.originX returns the x-coordinate of the top-left corner of the detected object’s bounding box in pixels, which is an integer between 0 and 320.
def main():
# Lift the Arm to not block the AI Vision Sensor's view
arm_motor.spin_for(FORWARD, 350, DEGREES)
# Display the originX of the largest Game Element
ai_objects = ai_vision.take_snapshot(AiVision.ALL_AIOBJS)
if len(ai_objects) is not 0:
brain.screen.print(ai_objects[0].originX)
# VR threads — Do not delete
vr_thread(main)
.originY#
.originY returns the y-coordinate of the top-left corner of the detected object’s bounding box in pixels, which is an integer between 0 and 240.
def main():
# Lift the Arm to not block the AI Vision Sensor's view
arm_motor.spin_for(FORWARD, 350, DEGREES)
# Display the originY of the largest Game Element
ai_objects = ai_vision.take_snapshot(AiVision.ALL_AIOBJS)
if len(ai_objects) is not 0:
brain.screen.print(ai_objects[0].originY)
# VR threads — Do not delete
vr_thread(main)
.ταυτότητα#
.id returns the ID of the detected AI Classification as an integer.
Ταξινόμηση Τεχνητής Νοημοσύνης |
ταυτότητα |
Υπογραφή |
|---|---|---|
MobileGoal |
0 |
|
ΚόκκινοΔαχτυλίδι |
1 |
|
ΜπλεΔαχτυλίδι |
2 |
|
def main():
# Lift the Arm to not block the AI Vision Sensor's view
arm_motor.spin_for(FORWARD, 350, DEGREES)
# Display if a Mobile Goal is detected
ai_objects = ai_vision.take_snapshot(AiVision.ALL_AIOBJS)
if len(ai_objects) is not 0:
if ai_objects[0].id == GameElements.MOBILE_GOAL:
brain.screen.print("This is a Mobile Goal.")
else:
brain.screen.print("This is not a Mobile Goal.")
# VR threads — Do not delete
vr_thread(main)
Κονσόλα#
Η Κονσόλα εμφανίζει κείμενο, αριθμούς και τιμές μεταβλητών ενώ εκτελείται ένα έργο. Οι μέθοδοι κονσόλας μπορούν επίσης να μετακινήσουν τον κέρσορα σε μια νέα γραμμή, να διαγράψουν την Κονσόλα και να προσθέσουν μεταβλητές ή τιμές αισθητήρων στην καρτέλα Παρακολούθηση.
Αποτύπωμα#
εγκέφαλος.οθόνη.εκτύπωση#
brain.screen.print displays text, numbers, or variable values in the Console using the current cursor position.
Use brain.screen.next_row when you want the next printed value to start on a new row.
Usage:
brain.screen.print(value)
Παράμετροι |
Περιγραφή |
|---|---|
|
Το κείμενο, ο αριθμός ή η τιμή μεταβλητής που θα εμφανίζεται στην Κονσόλα. |
def main():
# Display a message in the Console
brain.screen.print("Hello, robot!")
# VR threads — Do not delete
vr_thread(main)

brain.screen.next_row#
brain.screen.next_row moves the cursor to column 1 on the next row in the Console. The next value printed will appear on that row.
Usage:
brain.screen.next_row()
Παράμετροι |
Περιγραφή |
|---|---|
Αυτή η μέθοδος δεν έχει παραμέτρους. |
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 clears all rows from the Console and moves the cursor back to Row 1.
Usage:
brain.screen.clear_screen()
Παράμετροι |
Περιγραφή |
|---|---|
Αυτή η μέθοδος δεν έχει παραμέτρους. |
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)
Ελεγκτής εκπομπών#
μεταβλητή_παρακολούθησης#
monitor_variable adds one or more predefined variables to the Monitor tab in VEXcode. This lets you watch a variable’s value change while a project is running.
Variables must be global for monitor_variable to monitor them successfully. Provide each variable name as a string.
Usage:
monitor_variable(“variable”)
monitor_variable(“variable1”, “variable2”)
Παράμετροι |
Περιγραφή |
|---|---|
|
Το όνομα μιας προκαθορισμένης καθολικής μεταβλητής προς παρακολούθηση, που δίνεται ως συμβολοσειρά. Για να παρακολουθείτε περισσότερες από μία μεταβλητές, διαχωρίστε κάθε όνομα μεταβλητής με κόμμα. |
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)
αισθητήρας_παρακολούθησης#
monitor_sensor adds one or more sensor values to the Monitor tab in VEXcode. This lets you watch sensor values change while a project is running.
Παρέχετε κάθε τιμή αισθητήρα ως συμβολοσειρά.
Usage:
monitor_sensor(“sensor”)
monitor_sensor(“sensor1”, “sensor2”)
Παράμετροι |
Περιγραφή |
|---|---|
|
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)
Εξεύρεση της φόρας#
Οπτικός#
είναι_κοντά_στο_αντικείμενο#
is_near_object returns a Boolean indicating whether or not the Optical Sensor detects an object within range.
True– The Optical Sensor detects an object.False– The Optical Sensor does not detect an object.
Usage:
front_optical.is_near_object()
Παράμετροι |
Περιγραφή |
|---|---|
Αυτή η μέθοδος δεν έχει παραμέτρους. |
def main():
# Display if the Optical Sensor is detecting an object
brain.screen.print(front_optical.is_near_object())
# VR threads — Do not delete
vr_thread(main)
χρώμα#
color returns an instance of a Color class, based on the detected hue value. These can be compared to predefined Color objects to create conditional statements.
Πιθανά χρώματα είναι:
NONERED- A hue value between 340° - 20°GREEN- A hue value between 80° - 140°BLUE- A hue value between 200° - 240°YELLOW- A hue value between 40° - 60°ORANGE- A hue value between 20° - 40°PURPLE- A hue value between 240° - 280°CYAN- A hue value between 140° - 200°
Note: The Optical Sensor is looking for hue ranges that match the specified color. For detecting specific hue ranges, see hue.
Usage:
front_optical.color()
Παράμετροι |
Περιγραφή |
|---|---|
Αυτή η μέθοδος δεν έχει παραμέτρους. |
def main():
# Display the color of the ring on the Arm
brain.screen.print(front_optical.color())
# VR threads — Do not delete
vr_thread(main)
λάμψη#
brightness returns the amount of light reflected from the object as a decimal (float) representing a percent.
Ένα υψηλότερο ποσοστό σημαίνει ότι περισσότερο φως ανακλάται πίσω στον οπτικό αισθητήρα. Ένα χαμηλότερο ποσοστό σημαίνει ότι λιγότερο φως ανακλάται πίσω.
Usage:
front_optical.brightness()
Παράμετροι |
Περιγραφή |
|---|---|
Αυτή η μέθοδος δεν έχει παραμέτρους. |
απόχρωση#
hue returns the hue value of the detected color as a decimal (float) from 0 to 359.
Η απόχρωση είναι ένας τρόπος περιγραφής χρώματος χρησιμοποιώντας αριθμούς γύρω από έναν χρωματικό κύκλο.

Usage:
front_optical.hue()
Παράμετροι |
Περιγραφή |
|---|---|
Αυτή η μέθοδος δεν έχει παραμέτρους. |
def main():
# Display the hue of the ring on the Arm.
brain.screen.print("Hue: ", optical.hue())
# VR threads — Do not delete
vr_thread(main)
ανιχνευμένο_αντικείμενο#
object_detected registers a function to be called whenever the Optical Sensor detects a new object.
Usage:
front_optical.object_detected(callback, arg)
Παράμετροι |
Περιγραφή |
|---|---|
|
Μια προηγουμένως καθορισμένη συνάρτηση που εκτελείται όταν ο Οπτικός Αισθητήρας ανιχνεύει ένα νέο αντικείμενο. |
|
Προαιρετικό. Μια πλειάδα που περιέχει ορίσματα για να μεταβιβαστούν στη συνάρτηση επανάκλησης. Δείτε Χρήση Συναρτήσεων με Παραμέτρους για περισσότερες πληροφορίες. |
αντικείμενο_χαμένο#
object_lost registers a function to be called whenever the Optical Sensor loses a detected object.
Usage:
front_optical.object_lost(callback, arg)
Παράμετροι |
Περιγραφή |
|---|---|
|
Μια προηγουμένως καθορισμένη συνάρτηση που εκτελείται όταν ο Οπτικός Αισθητήρας χάνει ένα ανιχνευμένο αντικείμενο. |
|
Προαιρετικό. Μια πλειάδα που περιέχει ορίσματα για να μεταβιβαστούν στη συνάρτηση επανάκλησης. Δείτε Χρήση Συναρτήσεων με Παραμέτρους για περισσότερες πληροφορίες. |
Περιστροφή#
ορισμός_θέσης#
set_position sets the current position of the Rotation Sensor to a value in degrees.
Usage:
pusher_rotation.set_position(position, units)
Παράμετροι |
Περιγραφή |
|---|---|
θέση |
Η θέση στην οποία θα ρυθμιστεί ο αισθητήρας περιστροφής. |
μονάδες |
Optional. The position unit: |
γωνία#
angle returns the current angle of the sensor as a float.
Usage:
pusher_rotation.angle(units)
Παράμετροι |
Περιγραφή |
|---|---|
μονάδες |
Optional. The angle unit:
|
θέση#
position returns the total rotational position.
Usage:
pusher_rotation.position(units)
Παράμετροι |
Περιγραφή |
|---|---|
μονάδες |
Optional. The position unit:
|
GPS#
x_θέση#
x_position returns the current x-coordinate of a GPS (Game Positioning System™) Sensor on the field.
Usage:
gps.x_position(units)
Παράμετροι |
Περιγραφή |
|---|---|
μονάδες |
The unit of the offset value: |
y_θέση#
y_position returns the current y-coordinate of a GPS (Game Positioning System™) Sensor on the field.
Usage:
gps.y_position(units)
Παράμετροι |
Περιγραφή |
|---|---|
μονάδες |
The unit of the offset value: |
επικεφαλίδα#
heading returns the heading that the robot is currently facing based on the GPS (Game Positioning System™) Sensor’s readings from 0 to 359 degrees.
Usage:
gps.heading()
Παράμετροι |
Περιγραφή |
|---|---|
Αυτή η μέθοδος δεν έχει παραμέτρους. |