El dispositivo que vamos a emplear para dar nuestros primeros pasos en el mundo de la Robótica, es el MBot. Como cualquier robot, tiene instalados una serie de sensores (que reciben información del entorno), una unidad de control, que en este caso es una placa mCore (basada en Arduino), que es la encargada de ejecutar los programas, y una serie de actuadores, que reciben y ejecutan las órdenes de la unidad de control, conforme al programa establecido.
En cuanto a la programación, vamos a utilizar lenguajes de programación por bloques muy parecido al Scratch. El modo de programar el robot será utilizando la página ide.mblock.cc . Para ello, accederemos a la web y nos registraremos para tener una cuenta propia donde poder ir guardando online todos nuestros proyectos con el mBot.
La placa que forma nuestro mBot tiene un microprocesador, puertos USB (para conectarnos al ordenador y transferir el programa), un interruptor de encendido/apagado, un botón, dos LEDs, un buzzer, un sensor de luminosidad y un sensor de infrarrojos.
Además de la propia placa del robot, podemos añadirle más accesorios; por ejemplo, los siguientes: sensores ultrasónicos (para detectar proximidad), sensor de seguimiento de líneas y matriz LED.
En este enlace, podéis encontrar información detallada de cada uno de los componentes del robot con el que trabajaremos.
MBot es un kit de robótica que se presenta desmontado, por lo que lo primero que debemos hacer antes de empezar a programarlo, es ejecutar el montaje. Para ello, debéis seguir las instrucciones que encontraréis en la caja. Antes de proceder a montar vuestro robot, es conveniente que echéis un vistazo al siguiente vídeo:
Una vez montado, debemos familiarizarnos con el entono de programación que vamos a emplear: mBlock. mBlock es un entorno de programación que podemos descargar de forma gratuita en nuestros ordenadores (ya sean Windows, Linux o Mac), nuestros dispositivos móviles o incluso directamente en una versión web. Este es el link de la página de descargas. Nosotros vamos a programar directamente desde el navegador. Para ello haz clic en el siguiente enlace:
En la imagen podéis la interfaz de usuario de la V5 de mBlock. Lo primero que haremos será cambiar el idioma de la interfaz y añadir nuestro robot. Ya veis que el entorno de programación es muy similar al de Scratch, no en vano está basado en él.
Una vez añadido el robot, estas son las distintas partes en que se dividirá la pantalla del programa.
Ha llegado el momento de comenzar a programar nuestro "juguetito". Para ello vamos a comprobar si está "vivo", elaborando un programa que nos permita moverlo con las flechas de nuestro teclado. Como pista, os recordaré que en Scratch inicializábamos los programas pulsando la bandera verde, pero existen otras formas de hacerlo en el menú "Eventos" de mBlock. En cuanto al movimiento del robot, las órdenes que puede ejecutar se encuentran en el menú acción.
Para hacer más atractivo nuestro programa, podemos configurar las luces del robot para que se enciendan de un color distinto para cada sentido del movimiento (adelante, atrás, izquierda, derecha). Recordad que las prácticas que os propongo siempre pueden ser completadas con vuestra creatividad. Para esto son muy útiles las opciones que encontraréis en el menú "Luz y sonido".
Este primer programa que vais a realizar es un "programa por eventos", ya que el robot está esperando que ocurra un evento (en nuestro caso que se pulse una tecla) para actuar, y las órdenes persisten hasta que se ejecute otra. Podríamos por tanto añadir una quinta orden, consistente en que el robot se pare al pulsar la tecla espacio, y apague también las luces.
En esta práctica vamos a darle libertad a nuestro robot, soltándolo del ordenador. Para ello vamos a programar el mando a distancia de forma similar a como lo hicisteis con el teclado, para que avance, retroceda o gire al pulsar las teclas del mismo. Para ello debéis investigar los comandos que os permitirán crear el programa.
Hoy vamos a programar nuestro robot para que siga el recorrido marcado en el tapete de robótica. hay que tener en cuenta que el programa que vais a realizar es un programa por eventos, en el que tenéis que tener en cuenta velocidades y tiempos de funcionamiento de cada una de las órdenes (avanzar o girar). Al finalizar el recorrido el robot deberá encender los LEDs de a bordo de color azul y emitir un pitido durante dos segundos ¡Suerte!
Vamos a empezar a darle cierta capacidad de decisión a nuestro robot, por lo que es interesante que veamos este documental de 15 minutos sobre los coches autónomos, que nos servirá para debatir un poco acerca de la autonomía en la toma de decisiones de los robots. No tenéis que hacer ningún trabajo, solo ver el documental y después lo comentamos.
Teniendo en cuenta lo visto, la tarea consiste en programar el robot para que mida la distancia que hay delante suya con el sensor ultrasónico. Como pista, debéis saber que en el bloque de "Sensores", hay una variable específica que es la distancia que mide el sensor ultrasónico.
¡Ojo! Comprueba que el sensor ultrasónico esté conectado al puerto que viene por defecto en el programa. Si no, debes averiguar qué es lo que tienes que hacer.
En cuanto al funcionamiento del robot, debe avanzar siempre que la distancia sea superior a 10 cm. En caso contrario, debe efectuar un giro aleatorio a derecha para continuar avanzando (la aleatoriedad se la vamos a dar gracias al tiempo de giro)
Con este reto vamos a comenzar nuestra participación en la Liga Extremeña de Robótica Educativa. Para ello, debéis "disfrazar a vuestro robot y elaborar un vídeo corto con el que presentar a vuestro equipo al resto de participante ¡Tratad de que sea original!
Vamos a realizar nuestra primera entrega de trabajo para la Liga Extremeña de Robótica. Ésta se denomina "Un día en el cole". Para cumplimentarlo con éxito debéis desarrollar un circuito que vuestro robot deberá recorrer siguiendo las instrucciones marcadas. Toda la información la podréis encontrar en en el siguiente enlace ¡Suerte!
Para la segunda entrega de Roboreto, debéis programar el robot de forma que siga las instrucciones marcadas en la siguiente presentación. Suerte!