Cor#

Introdução#

O sensor de cor é um sensor ótico que permite ao seu robô detetar a presença de um objeto, reconhecer cores específicas e devolver dados visuais como o brilho e a tonalidade.

Também pode configurar o brilho da luz interna do sensor. Estas ferramentas são ideais para programas que necessitam de reagir a objetos coloridos, condições de iluminação ou feedback do sensor em tempo real.

Esta página utiliza color_1 como exemplo do nome do sensor de cor. Substitua-o pelo nome que configurou, se necessário.

Segue-se uma lista de todos os métodos:

Ações — Detetar objetos com o sensor de cor.

  • object_detected — Regista uma função a ser chamada quando um objecto é detectado.

Mutadores — Modificam as luzes no sensor de cor.

  • set_light — Define o LED do sensor de cor para ligado, desligado ou um nível de brilho definido.

  • set_light_power — Define o brilho do LED do sensor de cor.

Getters — Retornam os dados do objeto com o Sensor de Cor.

  • is_near_object — Retorna se um objeto se encontra dentro do alcance do sensor.

  • color — Retorna o código hexadecimal da cor detectada.

  • brightness — Devolve o brilho detectado.

  • hue — Retorna o valor de matiz detectado.

  • installed — Retorna se o sensor de cor está ligado ao cérebro.

Construtores — Inicializa e configura manualmente um sensor de cor.

Ações#

object_detected#

object_detected regista uma função a ser chamada quando o Sensor de Cor detecta um objecto.

Usage:
color_1.object_detected(callback, args)

Parâmetros

Descrição

callback

Uma função que está previamente definida para ser executada quando o Sensor de Cor deteta um objeto.

args

Opcional. Uma tupla contendo argumentos para passar para a função de callback. Consulte Funções com Parâmetros para obter mais informações.

Mutantes#

set_light#

set_light define o LED do sensor de cor para ligado, desligado ou com um nível de brilho definido.

Usage:
color_1.set_light(value, units)

Parâmetros

Descrição

value

Especifica se o LED deve ser ligado ou desligado utilizando um dos seguintes valores:

  • LedStateType.ON — Define o brilho do LED para 100%.
  • LedStateType.OFF — Define o brilho do LED para 0%.
Em alternativa, pode ser utilizado um valor percentual de 0 a 100 para definir o brilho do LED. Um valor de 0 desliga o LED; qualquer valor acima de 0 liga-o com esse brilho.

units

Opcional. A unidade que representa o valor de brilho: PERCENT.

# 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)

# Turn the LED on and off forever
while True:
    color_1.set_light(LedStateType.ON, 75)
    wait(0.5, SECONDS)
    color_1.set_light(0)
    wait(0.5, SECONDS)

set_light_power#

O comando set_light_power define o brilho do LED do sensor de cor. Se o LED ainda não estiver aceso, este método também o ligará.

Usage:
color_1.set_light_power(value)

Parâmetros

Descrição

value

O brilho do LED é representado em percentagem, de 0 a 100. O valor 0 desliga o LED.

# 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#

O is_near_object` devolve um valor booleano indicando se o sensor de cor se encontra a aproximadamente 57 milímetros (2,25 polegadas) de um objeto. A deteção depende da luz refletida, pelo que as superfícies escuras ou não refletoras podem não ser detetadas de forma fiável.

  • True — O objeto detetado encontra-se a aproximadamente 57 milímetros.

  • False — O objeto detetado não se encontra a aproximadamente 57 milímetros.

Usage:
color_1.is_near_object()

Parâmetros

Descrição

Este método não tem parâmetros.

color#

color devolve o código hexadecimal da cor detectada como uma string no formato “Color” seguido de dois zeros e o valor hexadecimal da cor.

Por exemplo, detetar a cor vermelha (#FF0000) devolveria “Cor 00FF0000”.

Usage:
color_1.color()

Parâmetros

Descrição

Este método não tem parâmetros.

# Display the currently 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#

O parâmetro brightness brightness devolve o brilho da cor detectada, como um número inteiro de 0% a 100%.

Uma percentagem mais elevada significa que o sensor de cor deteta mais luz. Uma percentagem mais baixa significa que o sensor de cor deteta menos luz.

Usage:
color_1.brightness()

Parâmetros

Descrição

Este método não tem parâmetros.

# 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 devolve o valor de matiz detectado como um número de ponto flutuante no intervalo de 0 a 359,99 graus.

O matiz é uma forma de descrever a cor utilizando números num círculo cromático, como se mostra abaixo.

Uma roda de cores circular exibindo um espectro completo de tonalidades rotuladas com valores em graus em torno do perímetro, aumentando em incrementos de 30 graus de 0° no topo até 360°.

Usage:
color_1.hue()

Parâmetros

Descrição

Este método não tem parâmetros.

# Display the currently detected hue 
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#

O valor installed devolve um valor booleano indicando se o sensor de cor está ligado ao cérebro.

  • True — O sensor de cor está ligado ao cérebro.

  • False — O sensor de cor não está ligado ao cérebro.

Usage:
color_1.installed()

Parâmetros

Descrição

Este método não tem parâmetros.

Construtores#

Os construtores são utilizados para criar manualmente ColorSensor , que são necessários para configurar um sensor de cor fora do VEXcode.

ColorSensor#

ColorSensor cria um sensor de cor.

Usage:
color_1 = ColorSensor(smartport)

Parâmetro

Descrição

smartport

A porta inteligente à qual o sensor de cor está ligado é representada por PORTx, onde x é o número da porta.

# Create a Color Sensor object in Port 3
color_1 = ColorSensor(Ports.PORT3)