Etäisyys#
Johdanto#
Etäisyysanturi pystyy havaitsemaan, onko anturin edessä esine, ja palauttamaan tiedon siitä, kuinka kaukana esine on.
VEX IQ -etäisyysanturi (1. sukupolvi) käyttää kaikuluotainta esineiden havaitsemiseen ja etäisyyden mittaamiseen. VEX IQ -etäisyysanturi (2. sukupolvi) käyttää luokkahuonekäyttöön sopivaa laseria ja voi myös palauttaa havaitun kohteen suhteellisen nopeuden ja arvioida, onko kohde pieni, keskikokoinen vai suuri.
Tällä sivulla käytetään esimerkkinä etäisyysanturin nimeä distance_1 Korvaa se tarvittaessa omalla määrittämälläsi nimellä.
Alla on luettelo kaikista käytettävissä olevista menetelmistä:
Getterit — Palauttavat dataa etäisyysanturilta.
is_object_detected— (VEX IQ -etäisyysanturi (1. sukupolvi) tai (2. sukupolvi)) Palauttaa, havaitseeko etäisyysanturi tällä hetkellä kohteen.distance— (VEX IQ -etäisyysanturi (1. sukupolvi)) Palauttaa etäisyysanturin ja lähimmän havaitun kohteen välisen etäisyyden.object_distance— (VEX IQ -etäisyysanturi (2. sukupolvi)) Palauttaa etäisyysanturin ja lähimmän havaitun kohteen välisen etäisyyden.object_velocity— (VEX IQ -etäisyysanturi (2. sukupolvi)) Palauttaa, kuinka nopeasti havaittu kohde liikkuu etäisyysanturia kohti tai siitä poispäin.object_size— (VEX IQ -etäisyysanturi (2. sukupolvi)) Palauttaa havaitun kohteen arvioidun koon.installed— (VEX IQ -etäisyysanturi (1. sukupolvi) tai (2. sukupolvi)) Palauttaa, onko etäisyysanturi asennettu ja kytketty.
Konstruktorit — Etäisyysanturin manuaalinen alustaminen ja konfigurointi.
Getterit#
is_object_detected#
is_object_detected palauttaa, havaitseeko etäisyysanturi parhaillaan kohteen kantaman sisällä.
True— Etäisyysanturi havaitsee kohteen.False— Etäisyysanturi ei havaitse kohdetta.
Usage:
distance_1.is_object_detected()
Parametrit |
Kuvaus |
|---|---|
Tällä menetelmällä ei ole parametreja. |
# 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 palauttaa etäisyysanturin ja lähimmän havaitun kohteen välisen etäisyyden desimaalilukuna (liukulukuna).
Huomautus: Tämä on VEX IQ -etäisyysanturin (1. sukupolvi) menetelmä.
Usage:
distance_1.distance(units)
Parametrit |
Kuvaus |
|---|---|
|
Valinnainen. Etäisyysyksikkö: |
# 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 palauttaa etäisyysanturin ja lähimmän havaitun kohteen välisen etäisyyden desimaalilukuna (liukulukuna).
Huomautus: Tämä on VEX IQ -etäisyysanturin (2. sukupolvi) menetelmä.
Usage:
distance_1.object_distance(units)
Parametrit |
Kuvaus |
|---|---|
|
Valinnainen. Etäisyysyksikkö: |
# 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 palauttaa havaitun kohteen suhteellisen nopeuden desimaalilukuna (liukulukuna) yksikkönä m/s (metriä sekunnissa).
Nopeus näyttää, kuinka nopeasti kohde liikkuu kohti etäisyysanturia tai siitä poispäin. Positiivinen arvo tarkoittaa, että kohde liikkuu kohti etäisyysanturia. Negatiivinen arvo tarkoittaa, että kohde liikkuu poispäin. Lähellä nollaa oleva arvo tarkoittaa, että kohde ei liiku paljon anturiin nähden.
Huomautus: Tämä on VEX IQ -etäisyysanturin (2. sukupolvi) menetelmä.
Usage:
distance_1.object_velocity()
Parametrit |
Kuvaus |
|---|---|
Tällä menetelmällä ei ole parametreja. |
# 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 palauttaa etäisyysanturin havaitseman kohteen arvioidun koon.
Etäisyysanturi arvioi kohteen koon sen perusteella, kuinka suuren osan anturin näkökentästä havaittu kohde peittää.
ObjectSizeType.NONE— Objektia ei havaittu.ObjectSizeType.SMALL— Pieni objekti on havaittu.ObjectSizeType.MEDIUM— Keskikokoinen objekti on havaittu.ObjectSizeType.LARGE— Suuri objekti on havaittu.
Huomautus: Tämä on VEX IQ -etäisyysanturin (2. sukupolvi) menetelmä.
Usage:
distance_1.object_size()
Parametrit |
Kuvaus |
|---|---|
Tällä menetelmällä ei ole parametreja. |
installed#
installed palauttaa, onko etäisyysanturi asennettu ja kytketty.
True— Etäisyysanturi on asennettu ja kytketty.False— Etäisyysanturia ei ole asennettu tai kytketty.
Usage:
distance_1.installed()
Parametrit |
Kuvaus |
|---|---|
Tällä menetelmällä ei ole parametreja. |
Rakentajat#
Konstruktoreita käytetään Distance ja Sonar -objektien manuaaliseen luomiseen, esimerkiksi etäisyysanturia VEXcoden ulkopuolella konfiguroitaessa.
Sonar#
Sonar luo VEX IQ -etäisyysanturin (1. sukupolvi) objektin.
Usage:
distance_1 = Sonar(smartport)
Parametri |
Kuvaus |
|---|---|
|
Älyportti, johon etäisyysanturi on kytketty, kirjoitetaan muodossa |
# Create a Sonar object in Port 1
distance_1 = Sonar(Ports.PORT1)
Distance#
Distance luo VEX IQ -etäisyysanturin (2. sukupolvi) objektin.
Usage:
distance_1 = Distance(smartport)
Parametri |
Kuvaus |
|---|---|
|
Älyportti, johon etäisyysanturi on kytketty, kirjoitetaan muodossa |
# Create a Distance object in Port 1
distance_1 = Distance(Ports.PORT1)