Abstandssensor#
Einführung#
Der Distanzsensor erkennt, ob sich ein Objekt vor dem Sensor befindet und gibt dessen Entfernung an. Er kann außerdem die relative Geschwindigkeit des erfassten Objekts messen und dessen Größe (klein, mittel oder groß) einschätzen.
Der Distanzsensor arbeitet in einem Bereich von 20 mm bis 2000 mm.
Unterhalb von 200 mm beträgt die Genauigkeit etwa ±15 mm. Oberhalb von 200 mm verbessert sich die Genauigkeit auf etwa 5 %.
Der Abstandssensor verwendet einen Laser der Klasse 1. Die Erfassung erfolgt geradlinig nach vorn und ist für den Einsatz im Klassenzimmer unbedenklich.

Diese Seite verwendet distance_sensor als Beispielnamen für den Distanzsensor. Ersetzen Sie diesen bei Bedarf durch Ihren eigenen Namen.
Nachfolgend finden Sie eine Liste der verfügbaren Methoden:
object_distance— Gibt die Distanz zwischen dem Distanzsensor und dem nächstgelegenen erkannten Objekt zurück.object_velocity— Gibt zurück, wie schnell sich das erkannte Objekt auf den Abstandssensor zu oder von ihm weg bewegt.object_size— Gibt die geschätzte Größe des erkannten Objekts zurück.is_object_detected— Gibt zurück, ob der Distanzsensor aktuell ein Objekt erkennt.changed— Registriert eine Funktion, die immer dann ausgeführt wird, wenn sich der Wert des Distanzsensors ändert.
Konstruktor – Manuelle Initialisierung eines Distanzsensors.
Distance— Erzeugt einen Distanzsensor.
Objektdistanz#
object_distance gibt die Entfernung zwischen dem Distanzsensor und dem nächstgelegenen erkannten Objekt als Dezimalzahl (float) zurück.
Usage:
distance_sensor.object_distance(units)
Parameter |
Beschreibung |
|---|---|
|
Optional. Die Entfernungseinheit: |
# Drive forward until the object is within 50 mm away
drivetrain.drive(FORWARD)
while not distance_sensor.object_distance(MM) < 50:
pass
drivetrain.stop()
Objektgeschwindigkeit#
object_velocity gibt die relative Geschwindigkeit des erkannten Objekts als Dezimalzahl (float) in m/s (Meter pro Sekunde) zurück.
Die Geschwindigkeit gibt an, wie schnell sich das Objekt auf den Abstandssensor zu oder von ihm weg bewegt. Ein Wert nahe 0 bedeutet, dass sich das Objekt relativ zum Sensor kaum bewegt.
Usage:
distance_sensor.object_velocity()
Parameter |
Beschreibung |
|---|---|
Diese Methode hat keine Parameter. |
Objektgröße#
object_size gibt die geschätzte Größe des vom Distanzsensor erfassten Objekts zurück.
Der Distanzsensor schätzt die Objektgröße anhand dessen, wie viel des Sichtfelds des Sensors vom erkannten Objekt eingenommen wird.
ObjectSizeType(0, “NONE”)— Es wurde kein Objekt erkannt.ObjectSizeType(1, “SMALL”)— Ein kleines Objekt wurde erkannt.ObjectSizeType(2, “MEDIUM”)— Ein mittelgroßes Objekt wurde erkannt.ObjectSizeType(3, “LARGE”)— Ein großes Objekt wurde erkannt.
Usage:
distance_sensor.object_size()
Parameter |
Beschreibung |
|---|---|
Diese Methode hat keine Parameter. |
is_object_detect#
is_object_detected gibt an, ob der Distanzsensor aktuell ein Objekt erkennt.
True— Der Abstandssensor erkennt ein Objekt.False— Der Abstandssensor erkennt kein Objekt.
Usage:
distance_sensor.is_object_detected()
Parameter |
Beschreibung |
|---|---|
Diese Methode hat keine Parameter. |
# Drive forward until the object is within 50 mm away
while True:
drivetrain.drive(FORWARD)
if distance_sensor.is_object_detected():
if distance_sensor.object_distance(MM) < 50:
drivetrain.stop()
break
geändert#
changed registriert eine Funktion, die aufgerufen werden soll, sobald sich der Wert des Distanzsensors ändert.
Usage:
distance_sensor.changed(callback, arg)
Parameter |
Beschreibung |
|---|---|
|
Eine zuvor definierte Funktion, die ausgeführt wird, wenn sich der Wert des Distanzsensors ändert. |
|
Optional. Ein Tupel mit Argumenten, die an die Callback-Funktion übergeben werden sollen. Weitere Informationen finden Sie unter Verwendung von Funktionen mit Parametern. |
def my_function():
brain.screen.print("Distance changed")
# Call my_function whenever distance_sensor's value changes
distance_sensor.changed(my_function)
Konstruktor#
Konstruktoren werden verwendet, um manuell Distance Objekte zu erstellen, beispielsweise bei der Konfiguration eines Distanzsensors außerhalb von VEXcode.
Distance#
Distance erzeugt ein Distanzsensor-Objekt.
Usage:
Distance(smartport)
Parameter |
Beschreibung |
|---|---|
|
Der Smart Port, an den der Distanzsensor angeschlossen ist, wird als |
# Create a Distance Sensor in Port 10
distance_sensor = Distance(Ports.PORT10)