Color#
Introduction#
The Color Sensor is an optical sensor that can detect surface colors, measure light levels, and sense nearby objects. It includes a built-in LED to illuminate surfaces for more accurate detection.
For the examples below, the configured Color Sensor will be named color_1
and will be used in all subsequent examples throughout this API documentation when referring to ColorSensor
class methods.
Below is a list of all methods:
Actions – Detect objects with the Color Sensor.
object_detected – Calls a function when an object is detected.
Mutators – Modify the lights on the Color Sensor.
set_light – Turns the Color Sensor’s LED on, off, or to a set brightness level.
set_light_power – Sets the brightness of the Color Sensor’s LED.
**Getters – Return object data with the Color Sensor.**x
is_near_object – Returns whether an object is within range of the sensor.
color – Returns the hex code of the detected color as a string.
brightness – Returns the detected brightness as a percent.
hue – Returns the detected hue value as a float from 0 to 359.99 degrees.
installed – Returns whether the Color Sensor is connected to the Brain.
Constructors – Manually initialize and configure a Color Sensor.
ColorSensor – Creates a Color Sensor.
Actions#
object_detected#
object_detected
registers a function to be called when the Color Sensor detects an object.
Usage:
color_1.object_detected(callback, args)
Parameters |
Description |
---|---|
|
A function that is previously defined to execute when the Bumper Switch is released. |
|
Optional. A tuple containing arguments to pass to the callback function. See Functions with Parameters for more information. |
# Example coming soon
Mutators#
set_light#
set_light
turns the Color Sensor’s LED on or off.
Usage:
color_1.set_light(value, units)
Parameters |
Description |
---|---|
|
Specifies whether to turn the LED on or off using one of the following:
|
|
Optional. The unit that represents the brightness value: |
# Turn the LED on and off forever
while True:
color_1.set_light(LedStateType.ON)
wait(0.5, SECONDS)
color_1.set_light(LedStateType.OFF)
wait(0.5, SECONDS)
set_light_power#
set_light_power
sets the brightness of the Color Sensor’s LED. If the LED is not already on, this method will also turn the LED on.
Usage:
color_1.set_light_power(value)
Parameters |
Description |
---|---|
|
The brightness of the LED as a percent from 0 to 100. A value of 0 turns the LED off. |
# Turn the LED light on at different intensities
color_1.set_light_power(10)
wait(2, SECONDS)
color_1.set_light_power(100)
Getters#
is_near_object#
is_near_object
returns a Boolean indicating whether the Color Sensor is within approximately 57 millimeters (2.25 inches) of an object. Detection depends on reflected light, so dark or non-reflective surfaces may not be detected reliably.
True
- The detected object is within approximately 57 millimeters.False
- The detected object is not within approximately 57 millimeters.
Usage:
color_1.is_near_object()
Parameters |
Description |
---|---|
This method has no parameters. |
# Stop driving when the Color Sensor is
# near an object
while True:
if color_1.is_near_object():
drivetrain.stop()
else:
drivetrain.drive(FORWARD)
color#
color
returns the hex code of the detected color as a string in the format “Color” followed by two zeros and the color’s hex value. For example, detecting red (#FF0000) would return “Color 00FF0000”.
Usage:
color_1.color()
Parameters |
Description |
---|---|
This method has no parameters. |
# Display the detected hex value
while True:
brain.screen.clear_screen()
brain.screen.set_cursor(1, 1)
brain.screen.print(color_1.color())
wait(0.5,SECONDS)
brightness#
brightness
returns the detected brightness as a percent.
Usage:
color_1.brightness()
Parameters |
Description |
---|---|
This method has no parameters. |
# Display the currently
# detected brightness
while True:
brain.screen.clear_screen()
brain.screen.set_cursor(1, 1)
brain.screen.print("Brightness:")
brain.screen.next_row()
brain.screen.print(color_1.brightness())
wait(0.5,SECONDS)
hue#
hue
returns the detected hue value as a float in the range of 0 to 359.99 degrees.
Usage:
color_1.hue()
Parameters |
Description |
---|---|
This method has no parameters. |
# Display the currently detected hue
# of the sensor
while True:
brain.screen.clear_screen()
brain.screen.set_cursor(1, 1)
brain.screen.print("Hue: ")
brain.screen.print(color_1.hue())
wait(0.5,SECONDS)
installed#
installed
returns a Boolean indicating whether the Color Sensor is connected to the Brain.
True
- The Color Sensor is connected to the Brain.False
- The Color Sensor is not connected to the Brain.
Usage:
color_1.installed()
Parameters |
Description |
---|---|
This method has no parameters. |
# Display a message if the Color Sensor
# is installed.
if color_1.installed():
brain.screen.print("Installed!")
Constructors#
Constructors are used to manually create ColorSensor
objects, which are necessary for configuring a Color Sensor outside of VEXcode.
ColorSensor#
ColorSensor
creates a Color Sensor.
Usage:
color_1 = ColorSensor(port)
Parameter |
Description |
---|---|
|
Which Smart Port that the Color Sensor is connected to as |
# Construct a Color Sensor "color_1" with the
# ColorSensor class.
color_1 = ColorSensor(Ports.PORT1)
while True:
brain.screen.clear_screen()
brain.screen.set_cursor(1, 1)
brain.screen.print(color_1.color())
wait(0.5,SECONDS)