Oog#

Invoering#

De VR Eye Sensor kan objecten detecteren en hun kleur, helderheid en tint bepalen. Je kunt er ook het detectiebereik en de lichtinstellingen mee aanpassen voor nauwkeurigere metingen.

Hieronder vindt u een lijst met alle beschikbare methoden:

Getters – Lezen de aanwezigheid, kleur, helderheid en tint van objecten.

  • near_object – Geeft aan of de oogsensor een object binnen bereik detecteert.

  • detect – Geeft aan of de oogsensor een specifieke kleur detecteert.

  • brightness – Geeft de hoeveelheid licht terug die door het object wordt weerkaatst, uitgedrukt als een percentage.

Callback – Voer code uit wanneer een object wordt gedetecteerd of verloren gaat.

  • object_detected – Registreert een functie die wordt aangeroepen wanneer de oogsensor een object detecteert.

  • object_lost – Registreert een functie die wordt aangeroepen wanneer de oogsensor een object verliest.

Getters#

near_object#

near_object retourneert een Boolean die aangeeft of de oogsensor een object binnen bereik detecteert of niet.

  • True – De sensor bevindt zich in de buurt van een object.

  • False – De sensor bevindt zich niet in de buurt van een object.

Usage:
eye.near_object()

Parameters

Beschrijving

Deze methode heeft geen parameters.

def main():
    # Stop driving when Eye Sensor is 
    # near an object
    drivetrain.drive(FORWARD)
    while True:
        if front_eye.near_object():
            drivetrain.stop()
        wait(5, MSEC)

# VR threads — Do not delete
vr_thread(main)

detect#

detect retourneert een Boolean die rapporteert of de oogsensor een bepaalde kleur detecteert, op basis van de gedetecteerde tintwaarde.

  • True — De oogsensor detecteert de geselecteerde kleur.

  • False — De oogsensor detecteert de geselecteerde kleur niet.

Usage:
eye.detect(color)

Parameters

Beschrijving

color

De kleur waarop de oogsensor moet controleren:

  • BLUE
  • GREEN
  • NONE
  • RED
def main():
    # Stop the robot if the Eye Sensor 
    # detects red
    drivetrain.turn(RIGHT)
    while True:
        if front_eye.detect(RED):
            drivetrain.stop()
        wait(5, MSEC)

# VR threads — Do not delete
vr_thread(main)

brightness#

brightness geeft de hoeveelheid licht terug die door het object wordt weerkaatst als een decimaal getal (float) dat een percentage vertegenwoordigt.

Een hoger percentage betekent dat er meer licht teruggekaatst wordt naar de oogsensor. Een lager percentage betekent dat er minder licht teruggekaatst wordt.

Usage:
eye.brightness(units)

Parameters

Beschrijving

units

De eenheid die de helderheid weergeeft: PERCENT

Terugbelverzoek#

object_detected#

object_detected registreert een functie die wordt aangeroepen wanneer de oogsensor een nieuw object detecteert.

Usage:
eye.object_detected(callback)

Parameters

Beschrijving

callback

Een eerder gedefinieerde functie die wordt uitgevoerd wanneer de oogsensor een nieuw object detecteert.

def detected():
    # Display a message
    drivetrain.stop()
    brain.print("object detected")
    wait(0.5,SECONDS)
    brain.clear()

def main():
    # Drive until an object is detected
    drivetrain.drive(FORWARD)
    front_eye.object_detected(detected)

# VR threads — Do not delete
vr_thread(main)

object_lost#

object_lost registreert een functie die wordt aangeroepen wanneer de oogsensor een gedetecteerd object verliest.

Usage:
eye.object_lost(callback)

Parameters

Beschrijving

callback

Een eerder gedefinieerde functie die wordt uitgevoerd wanneer de oogsensor een gedetecteerd object verliest.

def lost():
    # Display a message
    drivetrain.stop()
    brain.print("object lost")
    wait(0.5,SECONDS)
    brain.clear()

def main():
    # Back away from an object
    drivetrain.drive(REVERSE)
    front_eye.object_lost(lost)

# VR threads — Do not delete
vr_thread(main)