Rover marciano
Programemos un robot de exploración a control remoto. Serán necesarias dos placas micro:bit, una receptora montada sobre Cutebot y una emisora a modo de mando de control remoto.
Además, Cutebot enviará a la placa de control la información que capten sus sensores durante las exploraciones.
En primer lugar, es preciso que ambas placas ajusten la radio Bluetooth en los mismos grupo y banda de frecuencia. Los bloques necesarios se encuentran en el menú Radio. El siguiente código es por lo tanto común a la placa emisora y a la receptora.
Vamos ahora con el emisor. Cuando pulsemos los botones A+B, el rover debe avanzar. Para ello le enviaremos por radio una cadena de texto con el código "Av".
Al pulsar el botón A el mando enviará un código "Iz", que indicará un giro a la izquierda. De la misma forma, Al pulsar el botón B el mando mandará un código "De", indicativo de un giro a la derecha.
El código básico del emisor está ya resuelto. En cuanto al receptor, éste sólo debe ocuparse de mover el rover cuando reciba los códigos. Un rover marciano debe moverse muy despacio, así que cada vez que se reciba un código, las ruedas se mantendrán en movimiento durante unos pocos milisegundos.
La estructura si...si no, si... se obtiene del menú Lógica; habrá que pulsar sobre los símbolos + y - para añadir o quitar condiciones a la estructura.
El evento al recibir radio se encuentra en el menú Radio. receivedString hace referencia al código recibido, y puede arrastarse para encajarse en los comparadores incluye, que se encuentran en el menú ^Avanzado Texto.
El código es muy claro: cuando se recibe una cadena de texto se comprueba si contiene el código "Av" y, en caso afirmativo, se hace avanzar a Cutebot durante 500 ms. Si por el contrario el código es "Iz", el robot girará a la izquierda durante 250 ms. Por último, cuando el código sea "De", el robot girará a la derecha durante otros 250 ms.