Avstånd#

Introduktion#

Avståndssensorn kan upptäcka om ett objekt befinner sig framför sensorn och ge information om hur långt bort objektet är.

VEX IQ-avståndssensorn (1:a generationen) använder sonar för att upptäcka objekt och mäta avstånd. VEX IQ-avståndssensorn (2:a generationen) använder en klassrumssäker laser och kan även returnera det detekterade objektets relativa hastighet och uppskatta om objektet är litet, medelstort eller stort.

Den här sidan använder distance_1 som exempelnamn för avståndssensorn. Ersätt det med ditt eget konfigurerade namn efter behov.

Nedan följer en lista över alla tillgängliga metoder:

Getters — Returnera data från avståndssensorn.

  • is_object_detected — (VEX IQ avståndssensor (1:a generationen) eller (2:a generationen)) Returnerar om avståndssensorn för närvarande detekterar ett objekt.

  • distance — (VEX IQ avståndssensor (1:a generationen)) Returnerar avståndet mellan avståndssensorn och det närmaste detekterade objektet.

  • object_distance — (VEX IQ avståndssensor (2:a generationen)) Returnerar avståndet mellan avståndssensorn och det närmaste detekterade objektet.

  • object_velocity — (VEX IQ avståndssensor (2:a generationen)) Returnerar hur snabbt det detekterade objektet rör sig mot eller bort från avståndssensorn.

  • object_size — (VEX IQ avståndssensor (2:a generationen)) Returnerar den uppskattade storleken på det detekterade objektet.

  • installed — (VEX IQ avståndssensor (1:a generationen) eller (2:a generationen)) Returnerar om avståndssensorn är installerad och ansluten.

Konstruktörer — Initiera och konfigurera en avståndssensor manuellt.

  • Sonar — Skapar en VEX IQ-avståndssensor (1:a generationen).

  • Distance — Skapar en VEX IQ-avståndssensor (2:a generationen).

Getters#

is_object_detected#

is_object_detected returnerar om avståndssensorn för närvarande detekterar ett objekt inom räckhåll.

  • True — Avståndssensorn detekterar ett objekt.

  • False — Avståndssensorn detekterar inget objekt.

Usage:
distance_1.is_object_detected()

Parametrar

Beskrivning

Den här metoden har inga parametrar.

# 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 returnerar avståndet mellan avståndssensorn och det närmaste detekterade objektet som ett decimaltal (flyttal).

Obs! Detta är en VEX IQ-avståndssensormetod (1:a generationen).

Usage:
distance_1.distance(units)

Parametrar

Beskrivning

units

Valfritt. Avståndsenheten: MM (standard, 24 mm till 1000 mm) eller INCHES (1 tum till 40 tum).

# 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 returnerar avståndet mellan avståndssensorn och det närmaste detekterade objektet som ett decimaltal (flyttal).

Obs! Detta är en VEX IQ-avståndssensormetod (2:a generationen).

Usage:
distance_1.object_distance(units)

Parametrar

Beskrivning

units

Valfritt. Avståndsenheten: MM (standard, 20 mm till 2000 mm), INCHES (0,78 tum till 78 tum) eller DistanceUnits.CM (2 cm till 200 cm).

# 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 returnerar den relativa hastigheten för det detekterade objektet som ett decimaltal (flyttal) i m/s (meter per sekund).

Hastigheten visar hur snabbt objektet rör sig mot eller bort från avståndssensorn. Ett positivt värde betyder att objektet rör sig mot avståndssensorn. Ett negativt värde betyder att objektet rör sig bort. Ett värde nära 0 betyder att objektet inte rör sig mycket i förhållande till sensorn.

Obs! Detta är en VEX IQ-avståndssensormetod (2:a generationen).

Usage:
distance_1.object_velocity()

Parametrar

Beskrivning

Den här metoden har inga parametrar.

# 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 returnerar den uppskattade storleken på objektet som detekterats av avståndssensorn.

Avståndssensorn uppskattar objektstorleken baserat på hur mycket av sensorns synfält som upptas av det detekterade objektet.

  • ObjectSizeType.NONE — Inget objekt har upptäckts.

  • ObjectSizeType.SMALL — Ett litet objekt har upptäckts.

  • ObjectSizeType.MEDIUM — Ett medelstort objekt har upptäckts.

  • ObjectSizeType.LARGE — Ett stort objekt har upptäckts.

Obs! Detta är en VEX IQ-avståndssensormetod (2:a generationen).

Usage:
distance_1.object_size()

Parametrar

Beskrivning

Den här metoden har inga parametrar.

installed#

installed returnerar om avståndssensorn är installerad och ansluten.

  • True — Avståndssensorn är installerad och ansluten.

  • False — Avståndssensorn är inte installerad eller inte ansluten.

Usage:
distance_1.installed()

Parametrar

Beskrivning

Den här metoden har inga parametrar.

Konstruktörer#

Konstruktorer används för att manuellt skapa Distance och Sonar objekt, till exempel när man konfigurerar en avståndssensor utanför VEXcode.

Sonar#

Sonar skapar ett VEX IQ-avståndssensorobjekt (1:a generationen).

Usage:
distance_1 = Sonar(smartport)

Parameter

Beskrivning

smartport

Den smarta porten som avståndssensorn är ansluten till, skriven som Ports.PORTx, där x är portnumret.

# Create a Sonar object in Port 1
distance_1 = Sonar(Ports.PORT1)

Distance#

Distance skapar ett VEX IQ-avståndssensorobjekt (2:a generationen).

Usage:
distance_1 = Distance(smartport)

Parameter

Beskrivning

smartport

Den smarta porten som avståndssensorn är ansluten till, skriven som Ports.PORTx, där x är portnumret.

# Create a Distance object in Port 1
distance_1 = Distance(Ports.PORT1)