Objekto jutiklis#

Įvadas#

Objekto jutiklis yra infraraudonųjų spindulių (IR) artumo jutiklis, kuris aptinka arti esantį objektą, naudodamas atspindėtą IR šviesą.

VEX objektų jutiklis.

Šiame puslapyje kaip objekto jutiklio pavadinimo pavyzdys naudojamas object_sensor Jei reikia, pakeiskite jį savo sukonfigūruotu pavadinimu.

Žemiau pateikiamas galimų metodų sąrašas:

  • reflectivity – Grąžina integer, kuris procentais nurodo nuo objekto atsispindėjusios šviesos kiekį.

  • is_object_detected – Grąžina, ar objektų jutiklis aptinka objektą.

  • set_threshold – Nustato atspindėtos šviesos kiekį, kurio reikia, kad objektas būtų laikomas aptiktu.

  • object_detected – Registruoja funkciją, kuri bus iškviečiama kaskart, kai objektų jutiklis aptiks naują objektą.

  • object_lost – Registruoja funkciją, kuri bus iškviečiama kaskart, kai objektų jutiklis pameta aptiktą objektą.

  • changed – Registruoja funkciją, kuri bus iškviečiama kaskart, kai pasikeičia objekto jutiklio reikšmė.

Konstruktorius – rankiniu būdu inicijuoti objekto jutiklį.

atspindėjimas#

reflectivity grąžina integer, kuris nurodo nuo objekto atsispindėjusios šviesos kiekį procentais.

Pastaba:

  • 0 % atspindumo reiškia, kad objektas yra labai tamsus. Jutiklis mato neapdorotą reikšmę, lygią 3000 ar didesnę.

  • 100 % atspindumas reiškia, kad objektas yra labai ryškus. Jutiklis mato neapdorotą 0 reikšmę.

Usage:
object_sensor.reflectivity()

Parametrai

Aprašymas

Šis metodas neturi parametrų.

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

aptiktas_objektas#

is_object_detected grąžina, ar objekto jutiklis aptinka objektą.

  • True – Objekto jutiklis aptinka objektą.

  • False – Objekto jutiklis neaptinka objekto.

Usage:
object_sensor.is_object_detected()

Parametrai

Aprašymas

Šis metodas neturi parametrų.

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

nustatytas_slenkstis#

set_threshold nustato atspindėtos šviesos kiekį procentais, reikalingą, kad objektas būtų laikomas aptiktu.

Usage:
object_sensor.set_threshold(value)

Parametrai

Aprašymas

value

Atspindėtos šviesos kiekis, reikalingas, kad objektas būtų laikomas sveikuoju skaičiumi nuo 0 iki 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)

objektas_aptiktas#

object_detected užregistruoja funkciją, kuri bus iškviečiama kaskart, kai objektų jutiklis aptiks naują objektą.

Usage:
object_sensor.object_detected(callback, arg)

Parametrai

Aprašymas

callback

Anksčiau apibrėžta function, kuri vykdoma, kai objektų jutiklis aptinka naują objektą.

arg

Pasirinktinai. tuple su argumentais, kuriuos reikia perduoti atgalinio iškvietimo funkcijai. Daugiau informacijos žr. Funkcijos su parametrais.

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

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

prarastas objektas#

object_lost užregistruoja funkciją, kuri bus iškviečiama kaskart, kai objektų jutiklis pameta aptiktą objektą.

Usage:
object_sensor.object_lost(callback, arg)

Parametrai

Aprašymas

callback

Anksčiau apibrėžta function, kuri vykdoma, kai objektų jutiklis pameta aptiktą objektą.

arg

Pasirinktinai. tuple su argumentais, kuriuos reikia perduoti atgalinio iškvietimo funkcijai. Daugiau informacijos žr. Funkcijos su parametrais.

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

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

pasikeitė#

changed užregistruoja funkciją, kuri bus iškviečiama kaskart, kai pasikeis objekto jutiklio reikšmė.

Usage:
object_sensor.changed(callback, arg)

Parametrai

Aprašymas

callback

Anksčiau apibrėžta function, kuri vykdoma, kai pasikeičia objekto jutiklio reikšmė.

arg

Pasirinktinai. tuple su argumentais, kuriuos reikia perduoti atgalinio iškvietimo funkcijai. Daugiau informacijos žr. Funkcijos su parametrais.

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

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

Konstruktoriai#

Konstruktoriai naudojami rankiniu būdu sukurti ObjectDetector objektus, kurie yra būtini objektų jutiklių konfigūravimui.

ObjectDetector#

ObjectDetector sukuria objekto jutiklį.

Usage:
ObjectDetector(port, reverse_det)

Parametras

Aprašymas

port

3 laidų prievadas, prie kurio prijungtas objekto jutiklis:

  • Prie EXP Brain – brain.three_wire_port.x kur x yra prievado numeris.
  • Prie 3 laidų plėtiklio – expander.a kur expander yra plėtiklio egzemplioriaus pavadinimas.

reverse_det

Pasirinktinai. Ar atvirkštinė aptikimo logika:

  • True – Kai objektas pametamas, grąžinama, kad jis aptiktas, o kai objektas aptinkamas, grąžinama, kad jis pamestas.
  • False (numatytasis) – Kai objektas pametamas, grąžinama, kad jis pamestas, o kai objektas aptinkamas, grąžinama, kad jis aptiktas.

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