mClon

tecnoloxia.org | A Industriosa

Luces de cores – IDE

Aquí tes algúns exemplos para traballar cos LEDs RGB. Tes información sobre a conexión e montaxe nesta páxina.

Así o anunciamos en twitter:

Como funcionan

Un LED RGB ( R= red, vermello, G= green, verde e B= blue, azul) é un LED que incorpora tres LEDs no mesmo encapsulado, de xeito que se poden formar miles de cores axustando de maneira individual a intensidade de cada LED. Cada LED RGB neopixel inclúe estes 3 LEDs xunto a un circuíto controlador responsable de recibir os datos do LED anterior e envialos ao seguinte, de xeito que todos os LEDs se controlan desde unha soa liña de datos. No caso do mClon, a tira de LEDs conectarémola no pin 13.

Dependendo da intensidade de cada un dos LEDs RGB obteremos diferentes cores, como podes ver nos seguintes exemplos:

[By Quark67 CC BY-SA from Wikimedia]

  • Branco: RGB= 255,255,255
  • Vermello: RGB= 255,0,0
  • Verde: RGB= 0,255,0
  • Azul: RGB= 0,0,255
  • Negro (Apagado): RGB= 0,0,0
  • Amarelo: RGB= 255,255,0
  • Maxenta: RGB= 255,0,255
  • Cian: RGB= 0,255,255

Tomando outros valores podemos conseguir un total de 256 x 256 x 256 = 16.777.216 cores distintas.

Ollo! Os LEDs RGB neopixel que eliximos para o mClon non son realmente RGB, senón GRB. É dicir, o vermello e o verde están cambiados. Por exemplo, se queres a cor verde debes poñer 255,0,0 e se queres vermello 0,255,0.

Programación de 2 LEDs

O primeiro que debemos facer é incluír a librería Adafruit_NeoPixel (Vai a Sketch -> Incluír biblioteca -> Xestionar bibliotecas – > busca “NeoPixel” -> Instalar)

O led esquerdo será o 0 e o led dereito será o 1. Para asignar as cores deberás introducir os valores GRB, desde 0 ata 255.

Podemos facer que os LEDs alumeen con cores aleatorias. Habería que crear unhas variables R, G e B e asignarlles uns valores ao chou utilizando a función random. Segundo o tempo de espera que poñas cambiará de cor con maior ou menor frecuencia.

Cando programes os LEDS RGB ten en conta que os LEDs quedarán sempre no último estado que adquiran. Se queres apagalos terás que indicalo no programa.

Programación de tiras e aneis de LEDs

Se temos moitos leds sería moi tedioso ir indicando o que debe facer cada led un por un, polo que usaremos a instrución for(inicio,condición,modificador) { proceso } para dar as ordes.

O primeiro que debemos indicar é cantos leds temos e onde están conectados. No noso exemplo temos 8 leds conectados no pin 13. Despois declaramos as variables e configuramos igual que no programa anterior.

Para programar utilizamos a instrución for. Neste exemplo iremos acendendo os leds de forma consecutiva e despois apagarémolos tamén de forma consecutiva, no mesmo sentido.

Prácticas 2 leds

  • Modifica o anterior programa para que as cores do LED RGB esquerdo e do dereito cambien de forma independente.
  • No programa de seguir unha liña, fai que cando o mClon vaia dentro da liña os dous LEDs estean apagados, cando saia da liña pola dereita o LED dereito se poña vermello, cando saia pola esquerda se poña vermello o LED esquerdo, e cando o robot estea cos dous sensores fóra da liña se poñan os dous LEDs vermellos.

Prácticas tira de leds

  • Fai que os leds se vaian acendendo consecutivamente nun sentido e despois apagándose en sentido contrario.
  • Fai que cada led se acenda e apague de forma consecutiva, simulando “o coche fantástico”.