Απόσταση#
Εισαγωγή#
Ο αισθητήρας απόστασης μπορεί να ανιχνεύσει εάν ένα αντικείμενο βρίσκεται μπροστά από τον αισθητήρα και να επιστρέψει την απόσταση που βρίσκεται αυτό το αντικείμενο.
Ο αισθητήρας απόστασης VEX IQ (1ης γενιάς) χρησιμοποιεί σόναρ για την ανίχνευση αντικειμένων και τη μέτρηση της απόστασης. Ο αισθητήρας απόστασης VEX IQ (2ης γενιάς) χρησιμοποιεί ένα λέιζερ ασφαλές για σχολική τάξη και μπορεί επίσης να επιστρέψει τη σχετική ταχύτητα του ανιχνευμένου αντικειμένου και να εκτιμήσει εάν το αντικείμενο είναι μικρό, μεσαίο ή μεγάλο.
Αυτή η σελίδα χρησιμοποιεί distance_1 ως παράδειγμα ονόματος αισθητήρα απόστασης. Αντικαταστήστε το με το δικό σας διαμορφωμένο όνομα, όπως απαιτείται.
Παρακάτω είναι μια λίστα με όλες τις διαθέσιμες μεθόδους:
Λήπτες — Επιστρέφουν δεδομένα από τον αισθητήρα απόστασης.
is_object_detected— (Αισθητήρας Απόστασης VEX IQ (1ης γενιάς) ή (2ης γενιάς)) Επιστρέφει εάν ο Αισθητήρας Απόστασης ανιχνεύει αυτήν τη στιγμή ένα αντικείμενο.distance— (Αισθητήρας Απόστασης VEX IQ (1ης γενιάς)) Επιστρέφει την απόσταση μεταξύ του Αισθητήρα Απόστασης και του πλησιέστερου αντικειμένου που ανιχνεύθηκε.object_distance— (Αισθητήρας Απόστασης VEX IQ (2ης γενιάς)) Επιστρέφει την απόσταση μεταξύ του Αισθητήρα Απόστασης και του πλησιέστερου αντικειμένου που ανιχνεύθηκε.object_velocity— (Αισθητήρας Απόστασης VEX IQ (2ης γενιάς)) Επιστρέφει την ταχύτητα με την οποία το ανιχνευμένο αντικείμενο κινείται προς ή μακριά από τον Αισθητήρα Απόστασης.object_size— (Αισθητήρας Απόστασης VEX IQ (2ης γενιάς)) Επιστρέφει το εκτιμώμενο μέγεθος του ανιχνευμένου αντικειμένου.installed— (Αισθητήρας απόστασης VEX IQ (1ης γενιάς) ή (2ης γενιάς)) Επιστρέφει εάν ο αισθητήρας απόστασης είναι εγκατεστημένος και συνδεδεμένος.
Κατασκευαστές — Μη αυτόματη αρχικοποίηση και διαμόρφωση ενός αισθητήρα απόστασης.
Αποκτητές#
is_object_detected#
is_object_detected επιστρέφει εάν ο αισθητήρας απόστασης ανιχνεύει αυτήν τη στιγμή ένα αντικείμενο εντός εμβέλειας.
True— Ο αισθητήρας απόστασης ανιχνεύει ένα αντικείμενο.False— Ο αισθητήρας απόστασης δεν ανιχνεύει αντικείμενο.
Usage:
distance_1.is_object_detected()
Παράμετροι |
Περιγραφή |
|---|---|
Αυτή η μέθοδος δεν έχει παραμέτρους. |
# Turn until an object is detected
drivetrain.turn(RIGHT)
while not distance_1.is_object_detected():
wait(15, MSEC)
drivetrain.stop()
brain.screen.print("Object detected!")
distance#
Η συνάρτηση distance επιστρέφει την απόσταση μεταξύ του αισθητήρα απόστασης και του πλησιέστερου αντικειμένου που ανιχνεύθηκε ως δεκαδικό ψηφίο (float).
Σημείωση: Αυτή είναι μια μέθοδος αισθητήρα απόστασης VEX IQ (1ης γενιάς).
Usage:
distance_1.distance(units)
Παράμετροι |
Περιγραφή |
|---|---|
|
Προαιρετικά. Η μονάδα απόστασης: |
# Display the distance to an object
if distance_1.is_object_detected():
print("Distance: ")
print(distance_1.distance(MM))
else:
print("No object detected")
object_distance#
object_distance επιστρέφει την απόσταση μεταξύ του αισθητήρα απόστασης και του πλησιέστερου ανιχνευμένου αντικειμένου ως δεκαδικό ψηφίο (float).
Σημείωση: Αυτή είναι μια μέθοδος αισθητήρα απόστασης VEX IQ (2ης γενιάς).
Usage:
distance_1.object_distance(units)
Παράμετροι |
Περιγραφή |
|---|---|
|
Προαιρετικά. Η μονάδα απόστασης: |
# Drive forward until an object is 200 mm away
while distance_1.object_distance(MM) > 200:
drivetrain.drive(FORWARD)
drivetrain.stop()
object_velocity#
object_velocity επιστρέφει τη σχετική ταχύτητα του ανιχνευμένου αντικειμένου ως δεκαδικό ψηφίο (float) σε m/s (μέτρα ανά δευτερόλεπτο).
Η ταχύτητα δείχνει πόσο γρήγορα κινείται το αντικείμενο προς ή μακριά από τον αισθητήρα απόστασης. Μια θετική τιμή σημαίνει ότι το αντικείμενο κινείται προς τον αισθητήρα απόστασης. Μια αρνητική τιμή σημαίνει ότι το αντικείμενο απομακρύνεται. Μια τιμή κοντά στο 0 σημαίνει ότι το αντικείμενο δεν κινείται πολύ σε σχέση με τον αισθητήρα.
Σημείωση: Αυτή είναι μια μέθοδος αισθητήρα απόστασης VEX IQ (2ης γενιάς).
Usage:
distance_1.object_velocity()
Παράμετροι |
Περιγραφή |
|---|---|
Αυτή η μέθοδος δεν έχει παραμέτρους. |
# Display the velocity of a moving object
while True:
brain.screen.clear_screen()
brain.screen.set_cursor(1, 1)
brain.screen.print("Velocity: ")
brain.screen.print(distance_1.object_velocity())
wait(100, MSEC)
object_size#
object_size επιστρέφει το εκτιμώμενο μέγεθος του αντικειμένου που ανιχνεύεται από τον αισθητήρα απόστασης.
Ο αισθητήρας απόστασης εκτιμά το μέγεθος του αντικειμένου με βάση το πόσο μεγάλο μέρος της ορατότητας του αισθητήρα καταλαμβάνεται από το ανιχνευόμενο αντικείμενο.
ObjectSizeType.NONE— Δεν ανιχνεύεται κανένα αντικείμενο.ObjectSizeType.SMALL— Εντοπίστηκε ένα μικρό αντικείμενο.ObjectSizeType.MEDIUM— Εντοπίστηκε ένα μεσαίο αντικείμενο.ObjectSizeType.LARGE— Εντοπίστηκε ένα μεγάλο αντικείμενο.
Σημείωση: Αυτή είναι μια μέθοδος αισθητήρα απόστασης VEX IQ (2ης γενιάς).
Usage:
distance_1.object_size()
Παράμετροι |
Περιγραφή |
|---|---|
Αυτή η μέθοδος δεν έχει παραμέτρους. |
installed#
Η τιμή installed επιστρέφει εάν ο αισθητήρας απόστασης είναι εγκατεστημένος και συνδεδεμένος.
True— Ο αισθητήρας απόστασης είναι εγκατεστημένος και συνδεδεμένος.False— Ο αισθητήρας απόστασης δεν είναι εγκατεστημένος ή δεν είναι συνδεδεμένος.
Usage:
distance_1.installed()
Παράμετροι |
Περιγραφή |
|---|---|
Αυτή η μέθοδος δεν έχει παραμέτρους. |
Κατασκευαστές#
Constructors are used to manually create Distance and Sonar objects, such as when configuring a Distance Sensor outside of VEXcode.
Sonar#
Sonar δημιουργεί ένα αντικείμενο VEX IQ Distance Sensor (1ης γενιάς).
Usage:
distance_1 = Sonar(smartport)
Παράμετρος |
Περιγραφή |
|---|---|
|
Η Έξυπνη Θύρα στην οποία είναι συνδεδεμένος ο Αισθητήρας Απόστασης, γράφεται ως |
# Create a Sonar object in Port 1
distance_1 = Sonar(Ports.PORT1)
Distance#
Distance δημιουργεί ένα αντικείμενο VEX IQ Distance Sensor (2ης γενιάς).
Usage:
distance_1 = Distance(smartport)
Παράμετρος |
Περιγραφή |
|---|---|
|
Η Έξυπνη Θύρα στην οποία είναι συνδεδεμένος ο Αισθητήρας Απόστασης, γράφεται ως |
# Create a Distance object in Port 1
distance_1 = Distance(Ports.PORT1)