El sensor Quad RGB es el que permite al robot mBot Neo (mBot2) seguir una línea y reconocer colores. Usa luz visible como iluminación de apoyo, lo que reduce bastante la interferencia de la luz ambiente, y su función de calibración hace que el seguimiento de línea sea más estable. Al tener cuatro sensores de luz en vez de dos, abre bastantes más posibilidades al programar.

Qué cambia respecto del sensor anterior

| Sensor Quad RGB | Sensor de color dual | |
|---|---|---|
| Carcasa plástica, más resistente | Sí | No |
| Sensores para seguir líneas | 4 | 2 |
| Sensores de color | 4 | No tiene |
| Sensores de luz | 4 | No tiene |
| Luz de apoyo | Luz visible | Infrarroja |
| Calibración de luz ambiental | Sí | No |
Especificaciones
Rango de detección: de 5 a 15 mm entre el sensor y el objeto que se quiere detectar.
El botón del sensor
El sensor tiene un botón con dos funciones según cómo lo pulses:
- Doble pulsación: inicia el aprendizaje del fondo y de la línea para el seguimiento. Coloca los sensores sobre el fondo de la pista y pulsa dos veces. Cuando los LEDs empiecen a parpadear rápido, balancea el sensor de lado a lado sobre el fondo y la línea hasta que dejen de parpadear: toma unos 2,5 segundos. Los valores quedan guardados automáticamente. Si los LEDs parpadean lento, el aprendizaje falló y hay que repetirlo.
- Pulsación larga: cambia el color de la luz de apoyo. Normalmente no hace falta tocarlo, porque el color se ajusta solo al terminar el aprendizaje.
Cómo programarlo
El sensor Quad RGB se programa con mBlock 5. Conéctalo al CyberPi, añade el CyberPi en mBlock 5 y luego agrega la extensión Quad RGB Sensor. El proceso completo está en Programar el mBot Neo con mBlock 5.
Elegir el modo de detección
El sensor puede trabajar de dos formas:
En detección de color, mide la luz que refleja un objeto en sus componentes rojo, verde y azul (RGB). Hay ocho colores disponibles, y hay que elegir uno en el bloque:

En escala de grises, mide solo la intensidad de la luz reflejada, sin importar el color. Aquí se selecciona «línea» o «fondo» en el bloque:

Obtener los valores medidos
Para leer los valores que entrega el sensor —de color o de escala de grises— se usan los bloques reporteros:

Cambiar el color de la luz de apoyo
Puedes alternar entre verde, rojo y azul con una pulsación larga del botón o con este bloque:

Nota: el sensor detecta colores sin importar de qué color sea la luz de apoyo. Cambiarla solo hace falta en algunos escenarios de seguimiento de línea.
Calibrar el sensor para seguir líneas
Antes de usar el sensor para seguir una línea hay que calibrarlo. Es el paso que más influye en que el robot funcione bien.

1) Coloca los cuatro sensores de luz sobre el fondo de la pista y pulsa dos veces el botón del sensor.

2) Balancea el sensor horizontalmente sobre la línea y el fondo.

3) Espera a que los LEDs dejen de parpadear. Los valores quedan guardados.

Para comprobar que quedó bien, fíjate en los dos sensores del centro (L1 y R1): si el robot está sobre la línea, sus LEDs azules deberían estar apagados, y encenderse y apagarse alternadamente al mover el robot sobre la línea.
Nota: el sensor Quad RGB detecta líneas oscuras sobre fondos claros sin importar el color de la iluminación.
Distintos tipos de pista
Línea negra sobre fondo blanco. Es el caso más simple: basta con la calibración básica para que el sensor distinga la línea del fondo. Sirve tanto para detectar el estado de la línea como para reconocer cruces o implementar un seguimiento suave.
Línea negra con tramos de color. Aquí los bloques son los mismos, pero hace falta una calibración especial. Hay dos caminos: calibrar sobre el color más claro de los tramos —por ejemplo, el amarillo— para que todos los más oscuros se reconozcan como negro; o bien calibrar sobre la línea negra y después cambiar el color de la luz de apoyo con una pulsación larga, comprobando si el sensor reconoce los tramos de color como parte de la línea. Para tramos rojos conviene la luz verde o azul.

Una limitación que conviene conocer: el sensor no puede «mirar más allá» de la línea, así que no distingue por sí solo si una bifurcación en T es en realidad un cruce donde la línea continúa. Eso solo se comprueba pasando por encima y viendo si la línea sigue.
Toda la serie del mBot Neo
Este tutorial es parte de una serie sobre el robot educativo mBot Neo (mBot2) de Makeblock:
- mBot Neo (mBot2): guía para empezar — qué trae el kit, cómo se arma y cómo programarlo
- Qué es CyberPi — el microcomputador que hace de cerebro del robot
- El shield mBot2/Neo — la placa de expansión con la batería y los puertos de motores
- El sensor Quad RGB — seguimiento de líneas y detección de colores (estás aquí)
- El sensor ultrasónico 2 — medir distancias y esquivar obstáculos
- Programar el mBot Neo con mBlock 5 — instalar, conectar y empezar a programar
Fuente
Este tutorial es una traducción y adaptación al español de About Quad RGB Sensor, del centro de soporte de Makeblock. Las imágenes provienen del artículo original.