Œil#
Introduction#
Le capteur oculaire VEX GO détecte les objets et les couleurs. Il indique également la quantité de lumière réfléchie et la teinte de la couleur détectée.
Le capteur oculaire est doté d’une lumière activable ou désactivable qui améliore la netteté de la vision des objets et des couleurs. Il peut également utiliser une plage de détection NEAR ou FAR pour identifier les objets à différentes distances.
Le capteur oculaire peut être positionné différemment selon la configuration. Par exemple, dans la configuration Code Base 2.0 - Eye Forward, le capteur oculaire est orienté vers l’avant. Dans les configurations Code Base 2.0 - Eye Down, Code Base 2.0 - Eye + Electromagnet et Super Code Base 2.0, le capteur oculaire est orienté vers le bas.
Dans les exemples ci-dessous, le capteur oculaire configuré est nommé eyeCe nom est utilisé dans les exemples pour appeler les méthodes de classe Eye.
Il existe plusieurs façons de programmer le capteur oculaire. Vous trouverez ci-dessous la liste de toutes les méthodes de programmation oculaire :
Modificateurs — Ajustez les paramètres du capteur oculaire.
set_light— Allume ou éteint la lumière du capteur oculaire.set_range— Définit la distance à laquelle le capteur oculaire peut détecter un objet.set_light_power— Définit le niveau de puissance lumineuse du capteur oculaire.
Récupérateurs — Renvoient ce que le capteur oculaire détecte.
get_color— Renvoie la couleur détectée par le capteur oculaire.get_hue— Renvoie la teinte détectée par le capteur oculaire.get_brightness— Renvoie la luminosité détectée par le capteur oculaire.is_object_detected— Renvoie si le capteur oculaire détecte un objet à portée.is_color_detected— Renvoie si le capteur oculaire détecte une couleur spécifique.
Mutateurs#
set_light#
La commande set_light allume ou éteint la lumière du capteur oculaire.
Usage:
eye.set_light(state)
Paramètres |
Description |
|---|---|
|
État de la lumière du capteur oculaire : |
# Build Used: Super Code Base 2.0
def main():
# Turn the light on and off
while True:
eye.set_light(ON)
wait(2, SECONDS)
eye.set_light(OFF)
wait(2, SECONDS)
# Start threads — Do not delete
start_thread(main)
set_range#
set_range définit la distance maximale à laquelle un objet peut se trouver du capteur oculaire avant de pouvoir être détecté.
Chaque projet commence avec le capteur oculaire réglé par défaut sur la plage FAR.
Usage:
eye.set_range(distance)
Paramètres |
Description |
|---|---|
|
Portée de détection d’objets du capteur oculaire. |
# Build Used: Code Base 2.0 - Eye Forward
def main():
# Drive to an object with different ranges
eye.set_range(FAR)
drivetrain.drive(FORWARD)
wait(0.2, SECONDS)
while not eye.is_object_detected():
wait(0.2, SECONDS)
drivetrain.drive_for(REVERSE, 100, MM)
# Closer detection range
eye.set_range(NEAR)
drivetrain.drive(FORWARD)
wait(0.2, SECONDS)
while not eye.is_object_detected():
wait(0.2, SECONDS)
drivetrain.stop()
# Start threads — Do not delete
start_thread(main)
set_light_power#
La valeur set_light_power détermine l’intensité lumineuse du capteur oculaire. Cette lumière peut aider le capteur oculaire à détecter plus clairement les objets et les couleurs.
Un pourcentage plus élevé rend la lumière plus intense. Un pourcentage plus faible rend la lumière plus faible.
Si le voyant du capteur oculaire est éteint, régler la puissance de l’éclairage au-dessus de 0 % l’allumera.
Si le voyant du capteur oculaire est allumé, régler la puissance de l’éclairage à 0 % éteindra la lumière.
Usage:
eye.set_light_power(value)
Paramètres |
Description |
|---|---|
|
Réglage de la luminosité du capteur oculaire, de 0 % à 100 %. Utilisez des nombres entiers. |
# Build Used: Super Code Base 2.0
def main():
# Turn on the light at different brightnesses
eye.set_light_power(25)
wait(2, SECONDS)
eye.set_light_power(50)
wait(2, SECONDS)
eye.set_light_power(100)
# Start threads — Do not delete
start_thread(main)
Getters#
get_color#
get_color renvoie la couleur détectée par le capteur oculaire.
Cette méthode peut renvoyer :
RED— Une valeur de teinte comprise entre 340° et 20°GREEN— Une valeur de teinte comprise entre 75° et 154°BLUE— Une valeur de teinte comprise entre 160° et 254°NONE— Aucune des couleurs disponibles n’est détectée.
Usage:
eye.get_color()
Paramètres |
Description |
|---|---|
Cette méthode ne comporte aucun paramètre. |
# Build Used: Super Code Base 2.0
def main():
# Stop when red is detected
drivetrain.drive(FORWARD)
while True:
if eye.get_color() == RED:
break
wait(0.2, SECONDS)
drivetrain.stop()
# Start threads — Do not delete
start_thread(main)
get_hue#
get_hue renvoie la couleur détectée par le capteur oculaire sous forme d’un nombre entier compris entre 0 et 359,00 degrés.
La teinte est une façon de décrire une couleur à l’aide de nombres sur un cercle chromatique.

Usage:
eye.get_hue()
Paramètres |
Description |
|---|---|
Cette méthode ne comporte aucun paramètre. |
# Build Used: Code Base 2.0 - Eye Forward
def main():
# Display the hue of a pink GO piece
while True:
console.clear()
if 10 < eye.get_hue() < 40:
console.print("Pink!")
wait(0.1,SECONDS)
else:
console.print("Not pink.")
wait(0.1,SECONDS)
# Start threads — Do not delete
start_thread(main)
get_brightness#
get_brightness renvoie la luminosité de la lumière détectée, sous forme d’un nombre entier compris entre 0 % et 100 %.
Un pourcentage plus élevé signifie qu’une plus grande quantité de lumière est réfléchie vers le capteur oculaire. Un pourcentage plus faible signifie qu’une moindre quantité de lumière est réfléchie.
Usage:
eye.get_brightness()
Paramètres |
Description |
|---|---|
Cette méthode ne comporte aucun paramètre. |
# Build Used: Super Code Base 2.0
def main():
# Monitor the brightness until red is detected
monitor_sensor("eye.get_brightness")
drivetrain.drive(FORWARD)
while not eye.get_color() == RED:
wait(0.2, SECONDS)
drivetrain.stop()
# Start threads — Do not delete
start_thread(main)
is_object_detected#
is_object_detected renvoie un Boolean qui indique si le capteur oculaire détecte ou non un objet à portée.
True— Le capteur oculaire détecte un objet.False— Le capteur oculaire ne détecte aucun objet.
La portée de détection peut être modifiée à l’aide de set_range.
Usage:
eye.is_object_detected()
Paramètres |
Description |
|---|---|
Cette méthode ne comporte aucun paramètre. |
# Build Used: Code Base 2.0 - Eye Forward
def main():
# Drive forward until an object is detected
drivetrain.drive(FORWARD)
wait(0.2, SECONDS)
while not eye.is_object_detected():
wait(0.5, SECONDS)
drivetrain.stop()
# Start threads — Do not delete
start_thread(main)
is_color_detected#
is_color_detected renvoie un Boolean qui indique si le capteur oculaire détecte une couleur spécifiée, en fonction de la valeur de teinte détectée.
True— Le capteur oculaire détecte la couleur sélectionnée.False— Le capteur oculaire ne détecte pas la couleur sélectionnée.
Le capteur oculaire fonctionne de manière optimale lorsque l’objet est suffisamment proche pour être détecté et que l’éclairage est clair.
Usage:
eye.is_color_detected(color)
Paramètres |
Description |
|---|---|
|
Couleur à vérifier par le capteur oculaire :
|
# Build Used: Super Code Base 2.0
def main():
# Drive forward until a green object is detected
drivetrain.drive(FORWARD)
wait(0.2, SECONDS)
while not eye.is_color_detected(GREEN):
wait(0.5, SECONDS)
drivetrain.stop()
# Start threads — Do not delete
start_thread(main)