Objekta sensors#

Ievads#

Objekta sensors ir infrasarkanais (IR) tuvuma sensors, kas, izmantojot atstarotu IR gaismu, nosaka objekta tuvumu.

VEX objektu sensors.

Šajā lapā kā objekta sensora nosaukuma piemērs tiek izmantots object_sensor Ja nepieciešams, nomainiet to ar savu konfigurēto nosaukumu.

Zemāk ir pieejamo metožu saraksts:

  • reflectivity – Atgriež integer, kas procentos attēlo no objekta atstarotās gaismas daudzumu.

  • is_object_detected – Atgriež, vai objekta sensors nosaka objektu.

  • set_threshold – Iestata atstarotās gaismas daudzumu, kas nepieciešams, lai objekts tiktu uzskatīts par noteiktu.

  • object_detected – Reģistrē funkciju, kas tiks izsaukta ikreiz, kad objekta sensors atrod jaunu objektu.

  • object_lost – Reģistrē funkciju, kas jāizsauc ikreiz, kad objektu sensors pazaudē noteiktu objektu.

  • changed – Reģistrē funkciju, kas tiks izsaukta ikreiz, kad mainās objekta sensora vērtība.

Konstruktors — objekta sensora manuāla inicializācija.

atstarojamība#

reflectivity atgriež integer, kas procentos attēlo no objekta atstarotās gaismas daudzumu.

Piezīme:

  • 0% atstarošanas spēja nozīmē, ka objekts ir ļoti tumšs. Sensors uztver neapstrādātu vērtību 3000 vai augstāku.

  • 100% atstarošanās spēja nozīmē, ka objekts ir ļoti spilgts. Sensors uztver neapstrādātu vērtību 0.

Usage:
object_sensor.reflectivity()

Parametri

Apraksts

Šai metodei nav parametru.

# 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)

ir_noteikts_objekts#

is_object_detected atgriež, vai objekta sensors nosaka objektu.

  • True — Objekta sensors nosaka objektu.

  • False – Objekta sensors neuztver objektu.

Usage:
object_sensor.is_object_detected()

Parametri

Apraksts

Šai metodei nav parametru.

# 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)

iestatītais_slieksnis#

set_threshold nosaka atstarotās gaismas daudzumu procentos, kas nepieciešams, lai objekts tiktu uzskatīts par noteiktu.

Usage:
object_sensor.set_threshold(value)

Parametri

Apraksts

value

Atstarotās gaismas daudzums, kas nepieciešams, lai objektu uzskatītu par veselu skaitli no 0 līdz 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)

objekts_atklāts#

object_detected reģistrē funkciju, kas tiks izsaukta ikreiz, kad objekta sensors atrod jaunu objektu.

Usage:
object_sensor.object_detected(callback, arg)

Parametri

Apraksts

callback

Iepriekš definēta funkcija, kas tiek izpildīta, kad objekta sensors atrod jaunu objektu.

arg

Neobligāti. tuple, kas satur argumentus, kas jānodod atzvanīšanas funkcijai. Plašāku informāciju skatiet sadaļā Funkcijas ar parametriem.

def my_function():
  brain.screen.print("Object detected.")

# Call my_function whenever object_sensor detects an object
object_sensor.object_detected(my_function)

objekts_pazaudēts#

object_lost reģistrē funkciju, kas tiks izsaukta ikreiz, kad objekta sensors pazaudē noteiktu objektu.

Usage:
object_sensor.object_lost(callback, arg)

Parametri

Apraksts

callback

Iepriekš definēta funkcija, kas tiek izpildīta, kad objekta sensors pazaudē noteiktu objektu.

arg

Neobligāti. tuple, kas satur argumentus, kas jānodod atzvanīšanas funkcijai. Plašāku informāciju skatiet sadaļā Funkcijas ar parametriem.

def my_function():
  brain.screen.print("Object lost.")

# Call my_function whenever object_sensor loses an object
object_sensor.object_lost(my_function)

mainījies#

changed reģistrē funkciju, kas tiks izsaukta ikreiz, kad mainās objekta sensora vērtība.

Usage:
object_sensor.changed(callback, arg)

Parametri

Apraksts

callback

Iepriekš definēta funkcija, kas tiek izpildīta, kad mainās objekta sensora vērtība.

arg

Neobligāti. tuple, kas satur argumentus, kas jānodod atzvanīšanas funkcijai. Plašāku informāciju skatiet sadaļā Funkcijas ar parametriem.

def my_function():
  brain.screen.print("Reflectivity changed.")

# Call my_function whenever object_sensor's value changes
object_sensor.changed(my_function)

Konstruktori#

Konstruktori tiek izmantoti, lai manuāli izveidotu ObjectDetector objektus, kas ir nepieciešami objektu sensoru konfigurēšanai.

ObjectDetector#

ObjectDetector izveido objekta sensoru.

Usage:
ObjectDetector(port, reverse_det)

Parametrs

Apraksts

port

3 vadu ports, kuram ir pievienots objekta sensors:

reverse_det

Neobligāti. Vai mainīt noteikšanas loģiku:

  • True – Kad objekts ir pazaudēts, atgriezt, ka objekts ir atrasts, un, kad objekts ir atrasts, atgriezt, ka tas ir pazaudēts.
  • False (pēc noklusējuma) – Kad objekts ir pazaudēts, atgriezt, ka objekts ir pazaudēts, un, kad objekts ir atrasts, atgriezt, ka tas ir atrasts.

# Create an Object Sensor in Port A
object_sensor = ObjectDetector(brain.three_wire_port.a)