REV Color V3 Documentation¶
REV Color V3 API¶
This is a python wrapper around the REV Robotics Color Sensor V3. The RobotPy project is not associated with or endorsed by REV Robotics.
rev.color Package¶
rev.color.CIEColor (self, X, Y, Z) |
|
rev.color.ColorMatch (self) |
REV Robotics Color Sensor V3. |
rev.color.ColorSensorV3 (self, port) |
REV Robotics Color Sensor V3. |
CIEColor¶
-
class
rev.color.
CIEColor
(X: float, Y: float, Z: float) → None¶ Bases:
pybind11_builtins.pybind11_object
-
getX
() → float¶ Get the X component of the color
Returns: CIE X
-
getY
() → float¶ Get the Y component of the color
Returns: CIE Y
-
getYx
() → float¶ Get the x calculated coordinate of the CIE 19313 color space
https://en.wikipedia.org/wiki/CIE_1931_color_space
Returns: CIE Yx
-
getYy
() → float¶ Get the y calculated coordinate of the CIE 19313 color space
https://en.wikipedia.org/wiki/CIE_1931_color_space
Returns: CIE Yy
-
getZ
() → float¶ Get the Z component of the color
Returns: CIE Z
-
ColorMatch¶
-
class
rev.color.
ColorMatch
() → None¶ Bases:
pybind11_builtins.pybind11_object
REV Robotics Color Sensor V3.
This class allows access to a REV Robotics color sensor V3 on an I2C bus.
-
addColorMatch
(color: wpilib._wpilib.Color) → None¶ Add color to match object
Parameters: color – color to add to matching
-
matchClosestColor
(colorToMatch: wpilib._wpilib.Color, confidence: float) → wpilib._wpilib.Color¶ MatchColor uses euclidean distance to compare a given normalized RGB vector against stored values
Parameters: - colorToMatch – color to compare against stored colors
- confidence – The confidence value for this match, this is simply 1 - euclidean distance of the two color vectors
Returns: Closest matching color
-
matchColor
(*args, **kwargs)¶ Overloaded function.
- matchColor(self: rev.color._rev_color.ColorMatch, colorToMatch: wpilib._wpilib.Color) -> Optional[wpilib._wpilib.Color]
MatchColor uses euclidean distance to compare a given normalized RGB vector against stored values
Parameters: colorToMatch – color to compare against stored colors Returns: Matched color if detected - matchColor(self: rev.color._rev_color.ColorMatch, colorToMatch: wpilib._wpilib.Color, confidence: float) -> Optional[wpilib._wpilib.Color]
MatchColor uses euclidean distance to compare a given normalized RGB vector against stored values
Parameters: - colorToMatch – color to compare against stored colors
- confidence – The confidence value for this match, this is simply 1 - euclidean distance of the two color vectors
Returns: Matched color if detected
-
setConfidenceThreshold
(confidence: float) → None¶ Set the confidence interval for determining color. Defaults to 0.95
Parameters: confidence – A value between 0 and 1
-
ColorSensorV3¶
-
class
rev.color.
ColorSensorV3
(port: wpilib._wpilib.I2C.Port) → None¶ Bases:
pybind11_builtins.pybind11_object
REV Robotics Color Sensor V3.
This class allows access to a REV Robotics color sensor V3 on an I2C bus.
Constructs a ColorSensorV3.
Note that the REV Color Sensor is really two devices in one package: a color sensor providing red, green, blue and IR values, and a proximity sensor.
Parameters: port – The I2C port the color sensor is attached to -
class
ColorMeasurementRate
(arg0: int) → None¶ Bases:
pybind11_builtins.pybind11_object
Members:
k25ms
k50ms
k100ms
k200ms
k500ms
k1000ms
k2000ms
-
k1000ms
= ColorMeasurementRate.k1000ms¶
-
k100ms
= ColorMeasurementRate.k100ms¶
-
k2000ms
= ColorMeasurementRate.k2000ms¶
-
k200ms
= ColorMeasurementRate.k200ms¶
-
k25ms
= ColorMeasurementRate.k25ms¶
-
k500ms
= ColorMeasurementRate.k500ms¶
-
k50ms
= ColorMeasurementRate.k50ms¶
-
name
¶ (self: handle) -> str
-
-
class
ColorResolution
(arg0: int) → None¶ Bases:
pybind11_builtins.pybind11_object
Members:
k20bit
k19bit
k18bit
k17bit
k16bit
k13bit
-
k13bit
= ColorResolution.k13bit¶
-
k16bit
= ColorResolution.k16bit¶
-
k17bit
= ColorResolution.k17bit¶
-
k18bit
= ColorResolution.k18bit¶
-
k19bit
= ColorResolution.k19bit¶
-
k20bit
= ColorResolution.k20bit¶
-
name
¶ (self: handle) -> str
-
-
class
GainFactor
(arg0: int) → None¶ Bases:
pybind11_builtins.pybind11_object
Members:
k1x
k3x
k6x
k9x
k18x
-
k18x
= GainFactor.k18x¶
-
k1x
= GainFactor.k1x¶
-
k3x
= GainFactor.k3x¶
-
k6x
= GainFactor.k6x¶
-
k9x
= GainFactor.k9x¶
-
name
¶ (self: handle) -> str
-
-
class
LEDCurrent
(arg0: int) → None¶ Bases:
pybind11_builtins.pybind11_object
Members:
kPulse2mA
kPulse5mA
kPulse10mA
kPulse25mA
kPulse50mA
kPulse75mA
kPulse100mA
kPulse125mA
-
kPulse100mA
= LEDCurrent.kPulse100mA¶
-
kPulse10mA
= LEDCurrent.kPulse10mA¶
-
kPulse125mA
= LEDCurrent.kPulse125mA¶
-
kPulse25mA
= LEDCurrent.kPulse25mA¶
-
kPulse2mA
= LEDCurrent.kPulse2mA¶
-
kPulse50mA
= LEDCurrent.kPulse50mA¶
-
kPulse5mA
= LEDCurrent.kPulse5mA¶
-
kPulse75mA
= LEDCurrent.kPulse75mA¶
-
name
¶ (self: handle) -> str
-
-
class
LEDPulseFrequency
(arg0: int) → None¶ Bases:
pybind11_builtins.pybind11_object
Members:
k60kHz
k70kHz
k80kHz
k90kHz
k100kHz
-
k100kHz
= LEDPulseFrequency.k100kHz¶
-
k60kHz
= LEDPulseFrequency.k60kHz¶
-
k70kHz
= LEDPulseFrequency.k70kHz¶
-
k80kHz
= LEDPulseFrequency.k80kHz¶
-
k90kHz
= LEDPulseFrequency.k90kHz¶
-
name
¶ (self: handle) -> str
-
-
class
ProximityMeasurementRate
(arg0: int) → None¶ Bases:
pybind11_builtins.pybind11_object
Members:
k6ms
k12ms
k25ms
k50ms
k100ms
k200ms
k400ms
-
k100ms
= ProximityMeasurementRate.k100ms¶
-
k12ms
= ProximityMeasurementRate.k12ms¶
-
k200ms
= ProximityMeasurementRate.k200ms¶
-
k25ms
= ProximityMeasurementRate.k25ms¶
-
k400ms
= ProximityMeasurementRate.k400ms¶
-
k50ms
= ProximityMeasurementRate.k50ms¶
-
k6ms
= ProximityMeasurementRate.k6ms¶
-
name
¶ (self: handle) -> str
-
-
class
ProximityResolution
(arg0: int) → None¶ Bases:
pybind11_builtins.pybind11_object
Members:
k8bit
k9bit
k10bit
k11bit
-
k10bit
= ProximityResolution.k10bit¶
-
k11bit
= ProximityResolution.k11bit¶
-
k8bit
= ProximityResolution.k8bit¶
-
k9bit
= ProximityResolution.k9bit¶
-
name
¶ (self: handle) -> str
-
-
class
RawColor
(r: int, g: int, b: int, _ir: int) → None¶ Bases:
pybind11_builtins.pybind11_object
-
blue
¶
-
green
¶
-
ir
¶
-
red
¶
-
-
configureColorSensor
(res: rev.color._rev_color.ColorSensorV3.ColorResolution, rate: rev.color._rev_color.ColorSensorV3.ColorMeasurementRate) → None¶ Configure the color sensor.
These settings are only needed for advanced users, the defaults will work fine for most teams. Consult the APDS-9151 for more information on these configuration settings and how they will affect color sensor measurements.
Parameters: - res – Bit resolution output by the respective light sensor ADCs
- rate – Measurement rate of the light sensor
-
configureProximitySensor
(res: rev.color._rev_color.ColorSensorV3.ProximityResolution, rate: rev.color._rev_color.ColorSensorV3.ProximityMeasurementRate) → None¶ Configure the proximity sensor.
These settings are only needed for advanced users, the defaults will work fine for most teams. Consult the APDS-9151 for more information on these configuration settings and how they will affect proximity sensor measurements.
Parameters: - res – Bit resolution output by the proximity sensor ADC.
- rate – Measurement rate of the proximity sensor
-
configureProximitySensorLED
(freq: rev.color._rev_color.ColorSensorV3.LEDPulseFrequency, current: rev.color._rev_color.ColorSensorV3.LEDCurrent, pulses: int) → None¶ Configure the the IR LED used by the proximity sensor.
These settings are only needed for advanced users, the defaults will work fine for most teams. Consult the APDS-9151 for more information on these configuration settings and how they will affect proximity sensor measurements.
Parameters: - freq – The pulse modulation frequency for the proximity sensor LED
- curr – The pulse current for the proximity sensor LED
- pulses – The number of pulses per measurement of the proximity sensor LED
-
getCIEColor
() → rev.color._rev_color.CIEColor¶ Get the color converted to CIE XYZ color space using factory calibrated constants.
https://en.wikipedia.org/wiki/CIE_1931_color_space
Returns: CIEColor value from sensor
-
getColor
() → wpilib._wpilib.Color¶ Get the normalized RGB color from the sensor (normalized based on total R + G + B)
Returns: frc::Color class with normalized sRGB values
-
getIR
() → float¶ Get the normalzied IR value from the sensor. Works best when within 2 inches and perpendicular to surface of interest.
Returns: Color class with normalized values
-
getProximity
() → int¶ Get the raw proximity value from the sensor ADC. This value is largest when an object is close to the sensor and smallest when far away.
Returns: Proximity measurement value, ranging from 0 to 2047 in default configuration
-
getRawColor
() → rev.color._rev_color.ColorSensorV3.RawColor¶ Get the raw color value from the sensor.
Returns: Raw color values from sensopr
-
hasReset
() → bool¶ Indicates if the device reset. Based on the power on status flag in the status register. Per the datasheet:
Part went through a power-up event, either because the part was turned on or because there was power supply voltage disturbance (default at first register read).
This flag is self clearing
Returns: bool indicating if the device was reset
-
setGain
(gain: rev.color._rev_color.ColorSensorV3.GainFactor) → None¶ Set the gain factor applied to color ADC measurements.
By default, the gain is set to 3x.
Parameters: gain – Gain factor applied to color ADC measurements measurements
-
class