Objektsensor#
Einführung#
Der Objektsensor ist ein Infrarot-Näherungssensor (IR-Sensor), der mithilfe von reflektiertem Infrarotlicht erkennt, wann sich ein Objekt in der Nähe befindet.

Diese Seite verwendet object_sensor als Beispielnamen für den Objektsensor. Ersetzen Sie ihn bei Bedarf durch Ihren eigenen konfigurierten Namen.
Nachfolgend finden Sie eine Liste der verfügbaren Methoden:
reflectivity– Gibt einenintegerzurück, der den Anteil des vom Objekt reflektierten Lichts in Prozent angibt.is_object_detected– Gibt zurück, ob der Objektsensor ein Objekt erkennt.set_threshold– Legt die Menge an reflektiertem Licht fest, die erforderlich ist, bevor ein Objekt als erkannt gilt.object_detected– Registriert eine Funktion, die aufgerufen wird, sobald der Objektsensor ein neues Objekt erkennt.object_lost– Registriert eine Funktion, die aufgerufen wird, wenn der Objektsensor ein erkanntes Objekt verliert.changed– Registriert eine Funktion, die aufgerufen wird, sobald sich der Wert des Objektsensors ändert.
Konstruktor – Manuelle Initialisierung eines Objektsensors.
ObjectDetector– Objektsensor erstellen.
Reflexionsvermögen#
reflectivity gibt einen integer zurück, der den Anteil des vom Objekt reflektierten Lichts als Prozentsatz darstellt.
Notiz:
0 % Reflexionsgrad bedeutet, dass das Objekt sehr dunkel ist. Der Sensor misst einen Rohwert von 3000 oder höher.
100% Reflexionsgrad bedeutet, dass das Objekt sehr hell ist. Der Sensor misst einen Rohwert von 0.
Usage:
object_sensor.reflectivity()
Parameter |
Beschreibung |
|---|---|
Diese Methode hat keine Parameter. |
# Drive forward when the reflectivity is greater than 50%.
while True:
if object_sensor.reflectivity() > 50:
drivetrain.drive(FORWARD)
else:
drivetrain.stop()
wait(5, MSEC)
is_object_detect#
is_object_detected gibt an, ob der Objektsensor ein Objekt erkennt.
True– Der Objektsensor erkennt ein Objekt.False– Der Objektsensor erkennt kein Objekt.
Usage:
object_sensor.is_object_detected()
Parameter |
Beschreibung |
|---|---|
Diese Methode hat keine Parameter. |
# Drive forward when the object sensor is detecting an object.
while True:
if object_sensor.is_object_detected():
drivetrain.drive(FORWARD)
else:
drivetrain.stop()
wait(5, MSEC)
set_threshold#
set_threshold legt die Menge an reflektiertem Licht als Prozentsatz fest, die erforderlich ist, bevor ein Objekt als erkannt gilt.
Usage:
object_sensor.set_threshold(value)
Parameter |
Beschreibung |
|---|---|
|
Die Menge an reflektiertem Licht, die erforderlich ist, damit ein Objekt als erkannt gilt, wird als ganze Zahl von 0 bis 100 angegeben. |
# Set the reflectivity threshold to 50%.
object_sensor.set_threshold(50)
# Drive forward when the object sensor is detecting an object.
while True:
if object_sensor.is_object_detected():
drivetrain.drive(FORWARD)
else:
drivetrain.stop()
wait(5, MSEC)
Objekt_erkannt#
object_detected registriert eine Funktion, die aufgerufen wird, sobald der Objektsensor ein neues Objekt erkennt.
Usage:
object_sensor.object_detected(callback, arg)
Parameter |
Beschreibung |
|---|---|
|
Eine zuvor definierte Funktion, die ausgeführt wird, wenn der Objektsensor ein neues Objekt erkennt. |
|
Optional. Ein |
def my_function():
brain.screen.print("Object detected.")
# Call my_function whenever object_sensor detects an object
object_sensor.object_detected(my_function)
Objekt verloren#
object_lost registriert eine Funktion, die aufgerufen wird, wenn der Objektsensor ein erkanntes Objekt verliert.
Usage:
object_sensor.object_lost(callback, arg)
Parameter |
Beschreibung |
|---|---|
|
Eine zuvor definierte Funktion, die ausgeführt wird, wenn der Objektsensor ein erkanntes Objekt verliert. |
|
Optional. Ein |
def my_function():
brain.screen.print("Object lost.")
# Call my_function whenever object_sensor loses an object
object_sensor.object_lost(my_function)
geändert#
changed registriert eine Funktion, die aufgerufen wird, sobald sich der Wert des Objektsensors ändert.
Usage:
object_sensor.changed(callback, arg)
Parameter |
Beschreibung |
|---|---|
|
Eine zuvor definierte Funktion, die ausgeführt wird, wenn sich der Wert des Objektsensors ändert. |
|
Optional. Ein |
def my_function():
brain.screen.print("Reflectivity changed.")
# Call my_function whenever object_sensor's value changes
object_sensor.changed(my_function)
Konstruktoren#
Konstruktoren werden verwendet, um manuell ObjectDetector Objekte zu erstellen, die für die Konfiguration von Objektsensoren erforderlich sind.
ObjectDetector#
ObjectDetector erstellt einen Objektsensor.
Usage:
ObjectDetector(port, reverse_det)
Parameter |
Beschreibung |
|---|---|
|
Der 3-Draht-Port, an den der Objektsensor angeschlossen ist:
|
|
Optional. Gibt an, ob die Erkennungslogik umgekehrt werden soll:
|
# Create an Object Sensor in Port A
object_sensor = ObjectDetector(brain.three_wire_port.a)