Sensor de Luz ou Luminosidade

Buenas. Hoje, vamos iniciar uma série de postagens, com foco nos sensores de luz e cor, e suas estruturas de programação. Esses sensores tem uma ampla gama de utilização, e criam a possibilidade do robô se “localizar” no Tapete de Missões.

Bom, antes de mais nada, vamos conhecer os sensores LEGO disponíveis, tanto de luz como de cor, do RCX, NXT e EV3:

Tab01

A questão da compatibilidade e como programar os sensores de um bloco no software do outro, iremos tratar um a um. Mas se quiser comparar e preparar os sensores que já tem, dê uma olhada na postagem:

http://aprendarobotica.com.br/2015/07/08/conhecendo-melhor-o-nxt-e-o-ev3-diferencas-e-compatibilidades/

Podemos perceber, que o sensor de cor comumente também tem a função de sensor de luz. Isso, por que o sensor de cor tem um sistema de funcionamento mais complexo, permitindo ter a dupla função. Mas, como funcionam cada um deles? Vamos começar a entender o funcionamento do sensor de Luminosidade.

Sensor de Luz ou Luminosidade:

Como as duas denominações estão corretas, vamos usar a ”Sensor de Luminosidade”. No caso do RCX e do NXT, temos o Sensor que funciona apenas como Sensor  de Luminosidade, e que tem dois modos de funcionamento: Ambient Light (Luz Ambiente) e Reflected Light (Luz Refletida). A diferença é qual o tipo de luz que o sensor fará a leitura.

Tab02

No caso da função Ambiente Light, a leitura terá o valor da luz que vem de todos os lados, ou seja, de todo o ambiente no qual o robô está.

Na função Reflected Light, a leitura sofre menos influência da iluminação do ambiente, pois o próprio sensor se encarrega de fornecer a luz, através de um led vermelho, que fica ligado.

Tab03

Ou seja, de qualquer maneira, o sensor lê a luz que é refletida no objeto, e chega até ele, ou melhor dizendo, a intensidade da luz que é refletida. Portanto, não importa a cor do objeto a ser medido pelo sensor de Luminosidade, e sim a capacidade de refletir mais ou menos luz.

Por exemplo, se imprimir uma escala de cinza (nos User Guides que vem nos Kits da Linha LEGO Minsdstorms Educational, existe uma escala de cinza impressa, e nos Kits da Linha LEGO Minsdstorms Home, a escala vem impressa nos mapas que os acompanham), o sensor de luminosidade vai ler o maior valor para a cor branca, e o menor para a cor preta. Isso, por que a cor branca reflete mais luz do que a cor preta.

Tab04

Porém, sempre que formos utilizar o sensor de luminosidade, devemos medir antes as diferenças das superfícies que serão lidas, e não nos basear somente pela cor. Isso porque, se tentarmos medir a cor branca, por exemplo, em diferentes superfícies, podemos ter valores muito diferentes!

Por exemplo, uma folha de papel e o tampo de uma mesa. Ambos da cor branca. O tampo da mesa, se tiver uma textura fosca (ao passar a mão, sentimos a aspereza da mesa), o tampo da mesa pode ter uma leitura menor do que a da folha, que ao tato, parece ser mais “lisa” que a mesa.

Ou então, se tivermos um tampo de mesa com textura lisa, e uma folha de papel branca, é possível que o valor do tampo da mesa seja maior que a folha de papel!

Além da textura da superfície, outro detalhe para ser levado em conta, é o posicionamento do sensor. Caso ele esteja muito acima da superfície, ou próximo demais, a leitura será inconstante, ou dependendo do que está sendo lido, não haverá diferença entre uma linha preta em um fundo branco.

A posição de funcionamento “ideal”, é entre 1 a 2 vigas de altura e estar posicionado o mais perpendicular em relação a superfície a ser lida pelo sensor, com uma folga de +/- 15 graus. Essa dica se aplica para todos os sensores de luminosidade e cor.

Tab05

Com o posicionamento correto do sensor, teremos uma leitura muito mais precisa. No próximo post, vamos ver como tornar essa leitura mais precisa, mas com alguns detalhes de programação, usando tanto o NXT Software, como o EV3 Software.