Cutebot se mueve
¿Qué es Cutebot?
Cutebot es un pequeño robot programable diseñado para enseñar programación y robótica a los niños. Cutebot dispone de una ranura en la que se inserta una tarjeta micro:bit, que actúa como controladora del robot.
El fabricante de Cutebot es Elecfreaks, una empresa con sede en China que desarrolla, fabrica y vende productos educativos basados en micro:bit. La empresa es el distribuidor de micro:bit en China y uno de los socios de la fundación micro:bit.
Cutebot tiene las siguientes funcionalidades:
- Dos ruedas controladas independientemente y conectadas a sendos motores provistos de reductoras de engranajes.
- Alimentación mediante tres pilas alcalinas R06 (AAA), tres pilas recargables de NiMH o un pack de batería de litio.
- Dos LED frontales RGB de colores seleccionables desde el código del programa.
- Dos LED RGB bajo la placa para producir efectos de luz mediante una biblioteca de bloques específica.
- Dos sensores colocados bajo la placa para detectar líneas.
- Dos LED azules sobre la placa para informar sobre el estado de la detección de líneas.
- Un emisor y receptor de ultrasonidos para la detección de obstáculos.
- Varios puertos para la conexión de accesorios tales como brazos motorizados, cámaras
IA,de inteligencia artificial, pantallas OLED, servomotores, etc. - Un receptor de infrarrojos que permite el control del robot mediante un mando a distancia.
- Un pequeño zumbador para producir sonidos.
Cada sensor o actuador es accesible mediante puertos numerados desde P0 hasta P15. Por ejemplo, las luces LED situadas bajo la placa se activan desde el puerto P15. Los puertos P13 y P14 corresponden a los los sensores del seguidor de líneas.
Biblioteca de bloques de Cutebot
Para controlar Cutebot es preciso programar previamente la placa micro:bit. Los bloques de programación para el control de Cutebot no están disponibles inmediatamente en el editor MakeCode, por lo que deben ser cargados previamente.antes de comenzar a programar. Para ello hay que pulsar sobre el menú +Extensiones de MakeCode.
Se desplegará un mosaico de imágenes de accesorios entre los que se encuentran varios robots. Tan sólo hay que buscar la imagen correspondiente a Cutebot y pulsar sobre ella.
Tras unos instantes, se cargarán dos nuevos menús de bloques, uno llamado Cutebot para el control del robot y otro llamado Neopixel para producir efectos de luces con los LED colocados bajo la placa.
El menú Cutebot ofrece bloques para el control de la velocidad de las ruedas, para ajustar el color de las luces, para leer los sensores de infrarrojos, de líneas y de obstáculos y para accionar los servomotores que pudieran conectarse.
Cutebot se mueve
Para probar Cutebot, vamos a programar un pequeño bucle que haga avanzar una pequeñacorta distancia al robot cuando detecte un ruido fuerte, como una palmada. Adicionalmente, el robot encenderá las luces frontales y emitirá un breve pitido de confirmación. El código a introducir es el siguiente:
La secuencia que se ejecuta continuamente dentro del bucle para siempre consta de los siguientes pasos:
- Comprobar si el nivel de sonido supera un cierto umbral, en nuestro ejemplo, 180.
- En caso afirmativo encender las dos luces frontales con luz roja.
- Tocar una nota musical breve y esperar a que termine de sonar.
- Hacer girar las dos ruedas hacia adelante a un 25% de su velocidad máxima.
- Esperar un segundo.
- Detener las ruedas.
- Apagar las luces.
En algunos casos, Cutebot no conseguirá avanzar en línea recta. Esto ocurrirá cuando las ruedas giren a velocidades ligeramente distintas; estedistintas, efecto está producido por la variabilidad en las características de los motores. Por ejemplo, el robot se desviará a la derecha cuando la rueda izquierda gire a una velocidad algo mayor que la derecha. Para solucionar este problema conviene reducir ligeramente la velocidad de la rueda izquierda o bien aumentar la velocidad de la rueda derecha.