Saltar al contenido
Nivel intermedio

Llevar y mostrar un mensaje con el display

Conectar el display al puerto 7

Para poder mostrar mensajes necesitamos el display LED del kit: una pequeña matriz de puntos de luz donde vamos a dibujar. Lo conectamos con su cable al puerto número 7 de la placa controladora.

Display LED del kit montado sobre el robot y conectado con un cable al puerto de la placa; un círculo rojo destaca el puerto número 7 donde se enchufa el conector.
El display conectado al puerto 7 (figura original): en los kits, cada periférico se enchufa a un puerto numerado de la controladora en lugar de a un pin.

A diferencia de un proyecto con Arduino y protoboard, acá no cableamos electrónica: el kit resuelve la conexión con un conector directo. Lo único importante es recordar a qué puerto está enchufado el display (el 7), porque después hay que indicárselo a los bloques.

Dibujar un mensaje en el display

Con el display conectado, ya podemos programarlo. Robobloq ofrece dos bloques para el display: uno permite crear un dibujo propio (encendiendo los puntos que queramos de la matriz) y otro permite elegir entre íconos ya programados.

Usaremos el primero para dibujar nuestro propio mensaje. Al colocar el bloque, no hay que olvidar seleccionar el puerto 7, que es donde conectamos el display en el paso anterior.

Dibujar un mensaje en el display del puerto 7
  1. Cuando el programa comienza
  2. Display (puerto 7): dibujar el mensaje (encender los puntos de la matriz)

Usar el botón de la placa para mostrar u ocultar el mensaje

El mensaje debe quedar oculto hasta que el robot llegue al laboratorio y alguien presione el botón integrado en la placa.

Vista de la placa controladora del robot señalando con un círculo y la etiqueta «Botón Pulsador» la ubicación del botón integrado en la parte superior.
El botón pulsador integrado en la placa (figura original): no hay que cablear nada; se lee directamente con un bloque del software.

Para lograr ese comportamiento usamos el bloque «Si… entonces / Si no…» (categoría Control), que hace que el programa actúe de una forma o de otra según una condición. Como condición usamos el bloque «Cuando se presiona el botón» (categoría Eventos), que lee el pulsador de la placa. Si el botón está presionado, se muestra el mensaje; si no, se oculta. Y como esa decisión debe evaluarse todo el tiempo, va dentro de un bloque «Por siempre».

Mostrar el mensaje solo si el botón está presionado
  1. Por siempre
  2. Si «se presiona el botón» entonces
  3. Display (puerto 7): mostrar el mensaje
  4. Si no
  5. Display (puerto 7): ocultar el mensaje (limpiar la pantalla)

Incorporar el mensaje al recorrido

Ahora combinamos esta lógica con el recorrido del nivel inicial. La idea es que el botón solo sirva para mostrar el mensaje una vez que el robot llegó al laboratorio, no durante todo el viaje.

Para eso, colocamos la evaluación del botón al final del recorrido de ida, justo después de que el robot frena y espera en el laboratorio (el bloque «Esperar 5 segundos»). Además, agregamos un mecanismo para esperar el pulsado: con un bloque «Repetir» y algunas esperas, el robot se queda aguardando a que alguien apriete el botón antes de continuar.

El robot espera el botón recién al llegar al laboratorio
  1. Por siempre
  2. Recorrido de ida (avanzar / girar / frenar con sus tiempos)
  3. Detener el movimiento y esperar 5 segundos en el laboratorio
  4. Repetir (esperando el pulsado del botón)
  5. Si «se presiona el botón»: mostrar el mensaje en el display

Simulación del comportamiento

Una máquina de estados en TypeScript reproduce el comportamiento que programás por bloques en el kit. No ejecuta el software del kit: es una representación fiel de lo que hará el dispositivo real.

Simulación lista. Presioná «Iniciar» para arrancar la secuencia.

Continuar el recorrido una vez leído el mensaje

Cuando alguien pulsa el botón y lee el mensaje, este se borra y el robot vuelve al depósito. Los bloques del recorrido de vuelta se colocan debajo de los que condicionan la visualización del mensaje.

Un detalle importante: hay que darle tiempo a la lectura. Conviene que el robot espere unos segundos desde que se oprime el botón (por ejemplo, 5 segundos) antes de borrar el mensaje, para que alcance a leerse. Recién después arranca la vuelta.

Programa completo del nivel intermedio
  1. Por siempre
  2. Recorrido de ida hasta el laboratorio
  3. Repetir hasta que se presione el botón → mostrar el mensaje
  4. Esperar 5 segundos (dar tiempo a leer el mensaje)
  5. Ocultar el mensaje (limpiar el display)
  6. Recorrido de vuelta al depósito

Cierre del nivel

Al terminar este nivel, tu robot ya lleva y entrega un mensaje: recorre hasta el laboratorio, espera a que alguien pulse el botón, muestra el mensaje en el display, le da tiempo a leerse y vuelve al depósito. Aprendiste a conectar un periférico a un puerto del kit, a dibujar en el display y a tomar decisiones con el bloque «Si… entonces / Si no…» y el botón de la placa. En el nivel avanzado vamos a hacer que el robot sea autónomo de verdad: usando el sensor ultrasónico y el zumbador, detectará y esquivará los obstáculos que aparezcan en su camino.

Evidencia de cierre

Al terminar este nivel, esto tiene que estar funcionando:

  • El display LED está conectado al puerto 7 de la placa y podés dibujar en él un mensaje propio con el bloque correspondiente.
  • El robot usa el botón integrado en la placa: mientras no se presiona, el mensaje queda oculto; al presionarlo, se muestra en el display.
  • La lógica del botón está incorporada al recorrido del nivel inicial: el robot solo habilita el mensaje una vez que llegó al laboratorio.
  • Después de leer el mensaje (una espera prudente tras el pulsado), el mensaje se borra y el robot vuelve al depósito.