Objektianturi#

Johdanto#

Kohdeanturi on infrapunaläheisyysanturi (IR), joka havaitsee kohteen lähellä heijastuneen infrapunavalon avulla.

VEX-objektianturi.

Tällä sivulla käytetään esimerkkinä objektianturin nimeä object_sensor Korvaa se tarvittaessa omalla määritetyllä nimelläsi.

Alla on luettelo käytettävissä olevista menetelmistä:

  • reflectivity – Palauttaa integer, joka edustaa kohteesta heijastuneen valon määrää prosentteina.

  • is_object_detected – Palauttaa, havaitseeko objektianturi objektia.

  • set_threshold – Asettaa heijastuneen valon määrän, joka tarvitaan, ennen kuin kohdetta pidetään havaittuna.

  • object_detected – Rekisteröi funktion, jota kutsutaan aina, kun objektianturi havaitsee uuden objektin.

  • object_lost – Rekisteröi funktion, jota kutsutaan aina, kun objektianturi kadottaa havaitun objektin.

  • changed – Rekisteröi funktion kutsuttavaksi aina, kun objektianturin arvo muuttuu.

Konstructor – Alusta objektianturi manuaalisesti.

heijastavuus#

reflectivity palauttaa arvon integer, joka edustaa kohteesta heijastuneen valon määrää prosentteina.

Huomautus:

  • 0 %:n heijastavuus tarkoittaa, että kohde on hyvin tumma. Anturi havaitsee raaka-arvon, joka on 3000 tai suurempi.

  • 100 %:n heijastavuus tarkoittaa, että kohde on erittäin kirkas. Anturi näkee raaka-arvon 0.

Usage:
object_sensor.reflectivity()

Parametrit

Kuvaus

Tällä menetelmällä ei ole parametreja.

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

on_objekti_havaittu#

is_object_detected palauttaa, havaitseeko objektianturi objektia.

  • True – Kohdeanturi havaitsee kohteen.

  • False – Kohdeanturi ei havaitse kohdetta.

Usage:
object_sensor.is_object_detected()

Parametrit

Kuvaus

Tällä menetelmällä ei ole parametreja.

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

asetettu_kynnys#

set_threshold asettaa heijastuneen valon määrän prosentteina, joka tarvitaan ennen kuin kohdetta pidetään havaittuna.

Usage:
object_sensor.set_threshold(value)

Parametrit

Kuvaus

value

Heijastuneen valon määrä, joka tarvitaan, jotta kohdetta voidaan pitää kokonaislukuna väliltä 0-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)

havaittu_objekti#

object_detected rekisteröi funktion kutsuttavaksi aina, kun objektianturi havaitsee uuden objektin.

Usage:
object_sensor.object_detected(callback, arg)

Parametrit

Kuvaus

callback

Aiemmin määritelty function, joka suoritetaan, kun objektianturi havaitsee uuden objektin.

arg

Valinnainen. tuple, joka sisältää argumentteja, jotka välitetään takaisinkutsufunktiolle. Lisätietoja on kohdassa Funktiot parametreilla.

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

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

kadonnut_objekti#

object_lost rekisteröi funktion kutsuttavaksi aina, kun objektianturi kadottaa havaitun objektin.

Usage:
object_sensor.object_lost(callback, arg)

Parametrit

Kuvaus

callback

Aiemmin määritelty funktio, joka suoritetaan, kun objektianturi kadottaa havaitun objektin.

arg

Valinnainen. tuple, joka sisältää argumentteja, jotka välitetään takaisinkutsufunktiolle. Lisätietoja on kohdassa Funktiot parametreilla.

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

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

muuttunut#

changed rekisteröi funktion kutsuttavaksi aina, kun objektianturin arvo muuttuu.

Usage:
object_sensor.changed(callback, arg)

Parametrit

Kuvaus

callback

Aiemmin määritelty function, joka suoritetaan, kun objektianturin arvo muuttuu.

arg

Valinnainen. tuple, joka sisältää argumentteja, jotka välitetään takaisinkutsufunktiolle. Lisätietoja on kohdassa Funktiot parametreilla.

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

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

Rakentajat#

Konstruktoreita käytetään luomaan manuaalisesti ObjectDetector -objektia, jotka ovat välttämättömiä objektiantureiden konfiguroimiseksi.

ObjectDetector#

ObjectDetector luo objektianturin.

Usage:
ObjectDetector(port, reverse_det)

Parametri

Kuvaus

port

3-johtiminen portti, johon objektianturi on kytketty:

reverse_det

Valinnainen. Käännetäänkö tunnistuslogiikka:

  • True – Kun kohde katoaa, palauttaa ilmoituksen, että kohde on havaittu, ja kun kohde havaitaan, palauttaa ilmoituksen, että se on kadonnut.
  • False (oletus) – Kun kohde katoaa, palauttaa ilmoituksen, että kohde on kadonnut, ja kun kohde havaitaan, palauttaa ilmoituksen, että se on havaittu.

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