Ojo#
Introducción#
El robot VEX 123 tiene un sensor ocular incorporado que puede detectar objetos y colores. También puede informar cuánta luz se refleja de vuelta al sensor y el valor de tono del color detectado.
El sensor ocular tiene una luz que se puede encender o apagar para ayudarlo a ver objetos y colores con mayor claridad.
Hay muchas maneras de codificar el sensor ocular. A continuación se muestra una lista de todos los métodos oculares:
Mutadores: ajuste la configuración del sensor ocular.
set_light— Enciende o apaga la luz del sensor ocular.set_light_power— Establece el nivel de potencia de la luz del sensor ocular.
Getters: devuelve lo que detecta el sensor ocular.
get_hue— Devuelve el tono detectado por el sensor ocular.get_brightness— Devuelve el brillo detectado por el sensor ocular.is_object_detected— Devuelve si el sensor ocular detecta un objeto dentro del alcance.is_color_detected— Devuelve si el sensor ocular detecta un color específico.is_bright— Devuelve si el sensor ocular detecta un objeto brillante.
Mutadores#
set_light#
set_light enciende o apaga la luz del sensor ocular.
Usage:
robot.eye.set_light(state)
Parámetros |
Descripción |
|---|---|
|
El estado de la luz del sensor ocular: |
# Continuously blink the light.
while True:
robot.eye.set_light(ON)
wait(2, SECONDS)
robot.eye.set_light(OFF)
wait(2, SECONDS)
set_light_power#
set_light_power establece qué tan brillante es la luz del sensor ocular. La luz puede ayudar al sensor ocular a detectar objetos y colores con mayor claridad.
Un porcentaje más alto hace que la luz sea más brillante. Un porcentaje más bajo hace que la luz se atenúe.
Si la luz del sensor ocular está apagada, ajustar la potencia de la luz por encima del 0% encenderá la luz.
Si la luz del sensor ocular está encendida, ajustar la potencia de la luz al 0% apagará la luz.
Usage:
robot.eye.set_light_power(value)
Parámetros |
Descripción |
|---|---|
|
El brillo para ajustar la luz del sensor ocular, de 0% a 100%. Usa números enteros. |
# Set the light to different power levels.
robot.eye.set_light_power(25)
wait(2, SECONDS)
robot.eye.set_light_power(50)
wait(2, SECONDS)
robot.eye.set_light_power(100)
Getters#
get_hue#
get_hue devuelve el color detectado por el sensor ocular como un número entero de 0 a 359.00 grados.
El tono es una forma de describir el color usando números alrededor de una rueda de color.

Usage:
robot.eye.get_hue()
Parámetros |
Descripción |
|---|---|
Este método no tiene parámetros. |
# Display if an object is pink.
while True:
console.clear()
if 290 < robot.eye.get_hue() < 350:
console.print("Pink!")
else:
console.print("Not pink!")
wait(0.1, SECONDS)
get_brightness#
get_brightness devuelve el brillo de la luz detectada, como un número entero del 0% al 100%.
Un porcentaje más alto significa que se refleja más luz hacia el sensor ocular. Un porcentaje más bajo significa que se refleja menos luz.
Usage:
robot.eye.get_brightness()
Parámetros |
Descripción |
|---|---|
Este método no tiene parámetros. |
# Display whether a detected object is bright.
robot.eye.set_light_power(100)
robot.drive(FORWARD)
while not robot.eye.is_object_detected():
wait(0.1, SECONDS)
wait(0.1, SECONDS)
if robot.eye.get_brightness() < 70:
console.print("Object not bright.")
else:
console.print("Bright object!")
is_object_detected#
is_object_detected devuelve un Boolean que informa si el sensor ocular detecta o no un objeto dentro del alcance.
True: el sensor ocular detecta un objeto.False: el sensor ocular no detecta ningún objeto.
Usage:
robot.eye.is_object_detected()
Parámetros |
Descripción |
|---|---|
Este método no tiene parámetros. |
# Stop driving after detecting an object.
robot.eye.set_light(ON)
robot.drive(FORWARD)
wait(0.1, SECONDS)
while not robot.eye.is_object_detected():
wait(0.1, SECONDS)
robot.stop()
is_color_detected#
is_color_detected devuelve un Boolean que informa si el sensor ocular detecta un color específico, en función del valor de tono detectado.
True: el sensor ocular detecta el color seleccionado.False: el sensor ocular no detecta el color seleccionado.
El sensor ocular funciona mejor cuando el objeto está cerca y la iluminación es clara.
Usage:
robot.eye.is_color_detected(color)
Parámetros |
Descripción |
|---|---|
|
El color para que el sensor ocular lo compruebe:
|
# Stop driving after detecting a green object.
robot.eye.set_light(ON)
robot.drive(FORWARD)
wait(0.1, SECONDS)
while not robot.eye.is_color_detected(GREEN):
wait(0.1, SECONDS)
robot.stop()
is_bright#
is_bright devuelve un Boolean que informa si el objeto detectado por el sensor ocular es brillante.
Un objeto se considera brillante cuando refleja más del 70% de brillo en el sensor ocular.
True: el objeto detectado refleja más del 70% de brillo.False: el objeto detectado refleja un 70% de brillo o menos.
Usage:
robot.eye.is_bright()
Parámetros |
Descripción |
|---|---|
Este método no tiene parámetros. |
# Display whether a detected object is bright.
robot.eye.set_light_power(100)
robot.drive(FORWARD)
while not robot.eye.is_object_detected():
wait(0.1, SECONDS)
wait(0.1, SECONDS)
if robot.eye.is_bright():
console.print("Bright object!")
else:
console.print("Object not bright.")