Afstand#

Invoering#

De afstandssensor kan detecteren of een object zich voor de sensor bevindt en de afstand tot dat object bepalen.

De VEX IQ-afstandssensor (1e generatie) gebruikt sonar om objecten te detecteren en de afstand te meten. De VEX IQ-afstandssensor (2e generatie) gebruikt een laser die veilig is voor gebruik in de klas en kan ook de relatieve snelheid van het gedetecteerde object weergeven en inschatten of het object klein, middelgroot of groot is.

Op deze pagina wordt distance_1 als voorbeeldnaam voor de afstandssensor gebruikt. Vervang dit door uw eigen geconfigureerde naam.

Hieronder vindt u een lijst met alle beschikbare methoden:

Getters — Gegevens ophalen van de afstandssensor.

  • is_object_detected — (VEX IQ Afstandssensor (1e generatie) of (2e generatie)) Geeft aan of de afstandssensor momenteel een object detecteert.

  • distance — (VEX IQ Afstandssensor (1e generatie)) Geeft de afstand terug tussen de afstandssensor en het dichtstbijzijnde gedetecteerde object.

  • object_distance — (VEX IQ Afstandssensor (2e generatie)) Retourneert de afstand tussen de afstandssensor en het dichtstbijzijnde gedetecteerde object.

  • object_velocity — (VEX IQ Afstandssensor (2e generatie)) Geeft aan hoe snel het gedetecteerde object zich naar de afstandssensor toe of van de afstandssensor af beweegt.

  • object_size — (VEX IQ Afstandssensor (2e generatie)) Geeft de geschatte grootte van het gedetecteerde object terug.

  • installed — (VEX IQ Afstandssensor (1e generatie) of (2e generatie)) Geeft aan of de afstandssensor is geïnstalleerd en aangesloten.

Constructors — Initialiseer en configureer handmatig een afstandssensor.

  • Sonar — Maakt een VEX IQ afstandssensor (1e generatie).

  • Distance — Maakt een VEX IQ Afstandssensor (2e generatie).

Getters#

is_object_detected#

is_object_detected geeft aan of de afstandssensor momenteel een object binnen bereik detecteert.

  • True — De afstandssensor detecteert een object.

  • False — De afstandssensor detecteert geen object.

Usage:
distance_1.is_object_detected()

Parameters

Beschrijving

Deze methode heeft geen parameters.

# 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 retourneert de afstand tussen de afstandssensor en het dichtstbijzijnde gedetecteerde object als een decimaal getal (float).

Let op: Dit is een methode met de VEX IQ afstandssensor (1e generatie).

Usage:
distance_1.distance(units)

Parameters

Beschrijving

units

Optioneel. De afstandseenheid: MM (standaard, 24 mm tot 1000 mm) of INCHES (1 inch tot 40 inch).

# 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 retourneert de afstand tussen de afstandssensor en het dichtstbijzijnde gedetecteerde object als een decimaal getal (float).

Let op: Dit is een methode met de VEX IQ afstandssensor (2e generatie).

Usage:
distance_1.object_distance(units)

Parameters

Beschrijving

units

Optioneel. De afstandseenheid: MM (standaard, 20 mm tot 2000 mm), INCHES (0,78 inch tot 78 inch) of DistanceUnits.CM (2 cm tot 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 retourneert de relatieve snelheid van het gedetecteerde object als een decimaal getal (float) in m/s (meter per seconde).

De snelheid geeft aan hoe snel het object zich naar de afstandssensor toe of van de sensor af beweegt. Een positieve waarde betekent dat het object naar de afstandssensor toe beweegt. Een negatieve waarde betekent dat het object zich van de sensor af beweegt. Een waarde dicht bij 0 betekent dat het object ten opzichte van de sensor nauwelijks beweegt.

Let op: Dit is een methode met de VEX IQ afstandssensor (2e generatie).

Usage:
distance_1.object_velocity()

Parameters

Beschrijving

Deze methode heeft geen parameters.

# 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 retourneert de geschatte grootte van het object dat door de afstandssensor is gedetecteerd.

De afstandssensor schat de objectgrootte op basis van hoeveel van het gezichtsveld van de sensor wordt ingenomen door het gedetecteerde object.

  • ObjectSizeType.NONE — Geen object gedetecteerd.

  • ObjectSizeType.SMALL — Er is een klein object gedetecteerd.

  • ObjectSizeType.MEDIUM — Er is een middelgroot object gedetecteerd.

  • ObjectSizeType.LARGE — Er is een groot object gedetecteerd.

Let op: Dit is een methode met de VEX IQ afstandssensor (2e generatie).

Usage:
distance_1.object_size()

Parameters

Beschrijving

Deze methode heeft geen parameters.

installed#

installed geeft aan of de afstandssensor is geïnstalleerd en aangesloten.

  • True — De afstandssensor is geïnstalleerd en aangesloten.

  • False — De afstandssensor is niet geïnstalleerd of niet aangesloten.

Usage:
distance_1.installed()

Parameters

Beschrijving

Deze methode heeft geen parameters.

Constructeurs#

Constructors worden gebruikt om handmatig Distance en Sonar -objecten te creëren, bijvoorbeeld bij het configureren van een afstandssensor buiten VEXcode.

Sonar#

Sonar creëert een VEX IQ Distance Sensor (1e generatie) object.

Usage:
distance_1 = Sonar(smartport)

Parameter

Beschrijving

smartport

De slimme poort waarop de afstandssensor is aangesloten, wordt weergegeven als Ports.PORTx, waarbij x het poortnummer is.

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

Distance#

Distance creëert een VEX IQ Afstandssensor (2e generatie) object.

Usage:
distance_1 = Distance(smartport)

Parameter

Beschrijving

smartport

De slimme poort waarop de afstandssensor is aangesloten, wordt weergegeven als Ports.PORTx, waarbij x het poortnummer is.

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