Objektový senzor#
Zavedení#
Senzor objektů je infračervený (IR) senzor přiblížení, který detekuje blízkost objektu pomocí odraženého infračerveného světla.

Tato stránka používá jako příklad názvu senzoru objektů object_sensor V případě potřeby jej nahraďte vlastním nakonfigurovaným názvem.
Níže je uveden seznam dostupných metod:
reflectivity– Vracíinteger, které představuje množství světla odraženého od objektu v procentech.is_object_detected– Vrací, zda senzor objektů detekuje objekt.set_threshold– Nastavuje množství odraženého světla potřebného k detekci objektu.object_detected– Registruje funkci, která má být volána vždy, když senzor objektů detekuje nový objekt.object_lost– Registruje funkci, která se má volat vždy, když senzor objektů ztratí detekovaný objekt.changed– Registruje funkci, která se má volat při každé změně hodnoty senzoru objektů.
Konstruktor – Ruční inicializace senzoru objektů.
ObjectDetector– Vytvořte senzor objektů.
odrazivost#
reflectivity vrací integer, které představuje množství světla odraženého od objektu v procentech.
Poznámka:
0% odrazivost znamená, že objekt je velmi tmavý.
100% odrazivost znamená, že objekt je velmi jasný.
Usage:
object_sensor.reflectivity()
Parametry |
Popis |
|---|---|
Tato metoda nemá žádné parametry. |
# 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)
je_detekován_objekt#
is_object_detected vrací, zda senzor objektů detekuje objekt.
True– Snímač objektů detekuje objekt.False– Snímač objektů nedetekuje žádný objekt.
Usage:
object_sensor.is_object_detected()
Parametry |
Popis |
|---|---|
Tato metoda nemá žádné parametry. |
# 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)
nastavit_práh#
set_threshold nastavuje množství odraženého světla v procentech, které je potřeba k detekci objektu.
Usage:
object_sensor.set_threshold(value)
Parametry |
Popis |
|---|---|
|
Hodnota odrazivosti požadovaná předtím, než je objekt považován za detekovaný, od 0 do 100. |
# 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)
detekovaný_objekt#
object_detected registruje funkci, která má být volána vždy, když senzor objektů detekuje nový objekt.
Usage:
object_sensor.object_detected(callback, arg)
Parametry |
Popis |
|---|---|
|
Dříve definovaná funkce, která se provede, když senzor objektů detekuje nový objekt. |
|
Volitelné. N-tice |
def my_function():
brain.screen.print("Object detected.")
# Call my_function whenever object_sensor detects an object
object_sensor.object_detected(my_function)
ztracený_objekt#
object_lost registruje funkci, která má být volána vždy, když senzor objektů ztratí detekovaný objekt.
Usage:
object_sensor.object_lost(callback, arg)
Parametry |
Popis |
|---|---|
|
Dříve definovaná funkce, která se provede, když senzor objektů ztratí detekovaný objekt. |
|
Volitelné. N-tice |
def my_function():
brain.screen.print("Object lost.")
# Call my_function whenever object_sensor loses an object
object_sensor.object_lost(my_function)
změněno#
changed registruje funkci, která se má volat vždy, když se změní hodnota senzoru objektů.
Usage:
object_sensor.changed(callback, arg)
Parametry |
Popis |
|---|---|
|
Dříve definovaná funkce, která se provede při změně hodnoty senzoru objektů. |
|
Volitelné. N-tice |
def my_function():
brain.screen.print("Reflectivity changed.")
# Call my_function whenever object_sensor's value changes
object_sensor.changed(my_function)
Konstruktéři#
Konstruktory se používají k ručnímu vytvoření ObjectDetector , které jsou nezbytné pro konfiguraci senzorů objektů.
ObjectDetector#
ObjectDetector vytvoří senzor objektů.
Usage:
ObjectDetector(port, reverse_det)
Parametr |
Popis |
|---|---|
|
3vodičový port, ke kterému je připojen objektový senzor:
|
|
Volitelné. Zda obrátit logiku detekce:
|
# Create an Object Sensor in Port A
object_sensor = ObjectDetector(brain.three_wire_port.a)