Tárgyérzékelő#
Bevezetés#
Az tárgyérzékelő egy infravörös (IR) közelségérzékelő, amely visszavert infravörös fény segítségével érzékeli, ha egy tárgy közel van.

Ez az oldal object_sensor objektumérzékelő nevet használja példaként. Szükség szerint cserélje ki a saját konfigurált névre.
Az alábbiakban felsoroljuk az elérhető módszereket:
reflectivity– Visszaad egyintegerértéket, amely a tárgyról visszaverődő fény mennyiségét százalékban jelöli.is_object_detected– Visszaadja, hogy az objektumérzékelő érzékel-e objektumot.set_threshold– Beállítja a visszavert fény mennyiségét, amely szükséges ahhoz, hogy egy objektumot érzékeltnek tekintsünk.object_detected– Regisztrál egy függvényt, amely meghívódik, valahányszor az objektumérzékelő új objektumot észlel.object_lost– Regisztrál egy függvényt, amely akkor hívódik meg, amikor az objektumérzékelő elveszít egy érzékelt objektumot.changed– Regisztrál egy függvényt, amely minden alkalommal meghívódik, amikor az objektumérzékelő értéke megváltozik.
Konstruktor – Objektumérzékelő manuális inicializálása.
ObjectDetector– Objektumérzékelő létrehozása.
fényvisszaverő képesség#
reflectivity egy integer értéket ad vissza, amely a tárgyról visszaverődő fény mennyiségét százalékban jelöli.
Jegyzet:
A 0%-os fényvisszaverő képesség azt jelenti, hogy a tárgy nagyon sötét. Az érzékelő 3000-es vagy annál magasabb nyers értéket érzékel.
A 100%-os fényvisszaverő képesség azt jelenti, hogy a tárgy nagyon fényes. Az érzékelő nyers 0 értéket lát.
Usage:
object_sensor.reflectivity()
Paraméterek |
Leírás |
|---|---|
Ennek a metódusnak nincsenek paraméterei. |
# 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)
objektum_észlelt_#
is_object_detected Visszaadja, hogy az objektumérzékelő érzékel-e objektumot.
True– A tárgyérzékelő egy tárgyat érzékel.False– Az objektumérzékelő nem érzékel tárgyat.
Usage:
object_sensor.is_object_detected()
Paraméterek |
Leírás |
|---|---|
Ennek a metódusnak nincsenek paraméterei. |
# 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)
küszöbérték beállítása#
set_threshold A visszavert fény mennyiségét állítja be százalékban, amely szükséges ahhoz, hogy egy objektumot detektáltnak tekintsünk.
Usage:
object_sensor.set_threshold(value)
Paraméterek |
Leírás |
|---|---|
|
A visszavert fény mennyisége, amely ahhoz szükséges, hogy egy tárgyat egész számként, 0-tól 100-ig terjedő tartományban érzékeljünk. |
# 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)
objektum_észlelt#
object_detected regisztrál egy függvényt, amely akkor hívódik meg, amikor az objektumérzékelő új objektumot észlel.
Usage:
object_sensor.object_detected(callback, arg)
Paraméterek |
Leírás |
|---|---|
|
Egy korábban definiált függvény, amely akkor hajtódik végre, amikor az objektumérzékelő új objektumot észlel. |
|
Opcionális. Egy |
def my_function():
brain.screen.print("Object detected.")
# Call my_function whenever object_sensor detects an object
object_sensor.object_detected(my_function)
elveszett_objektum#
object_lost regisztrál egy függvényt, amely akkor hívódik meg, amikor az objektumérzékelő elveszít egy érzékelt objektumot.
Usage:
object_sensor.object_lost(callback, arg)
Paraméterek |
Leírás |
|---|---|
|
Egy korábban definiált függvény, amely akkor hajtódik végre, amikor az objektumérzékelő elveszít egy érzékelt objektumot. |
|
Opcionális. Egy |
def my_function():
brain.screen.print("Object lost.")
# Call my_function whenever object_sensor loses an object
object_sensor.object_lost(my_function)
megváltozott#
changed regisztrál egy függvényt, amely minden alkalommal meghívódik, amikor az objektumérzékelő értéke megváltozik.
Usage:
object_sensor.changed(callback, arg)
Paraméterek |
Leírás |
|---|---|
|
Egy korábban definiált függvény, amely akkor hajtódik végre, amikor az objektumérzékelő értéke megváltozik. |
|
Opcionális. Egy |
def my_function():
brain.screen.print("Reflectivity changed.")
# Call my_function whenever object_sensor's value changes
object_sensor.changed(my_function)
Konstruktorok#
A konstruktorok segítségével manuálisan hozhatunk létre ObjectDetector objektumot, amelyek az objektumérzékelők konfigurálásához szükségesek.
ObjectDetector#
ObjectDetector létrehoz egy objektumérzékelőt.
Usage:
ObjectDetector(port, reverse_det)
Paraméter |
Leírás |
|---|---|
|
A 3-vezetékes port, amelyhez az objektumérzékelő csatlakozik:
|
|
Opcionális. Megadható, hogy megfordítja-e az észlelési logikát:
|
# Create an Object Sensor in Port A
object_sensor = ObjectDetector(brain.three_wire_port.a)