Clase 5

Sitio: Aprende Programando
Curso: ORIGEN - Robótica con Microbit 2 (2024)
Libro: Clase 5
Imprimido por: Invitado
Día: martes, 2 de julio de 2024, 11:30

1. 📝 CLASE N°5




¿Qué vamos a trabajar en esta clase?
Temario:
  • Comunicación inalámbrica y cómo configurar la radio de las placas Micro:bit.
  • El concepto de broadcast y dirección broadcast.
  • Enviar y recibir distintos tipos de mensajes (por ejemplo, un número o un texto) utilizando broadcast.
  • En qué ocasiones resulta útil utilizar broadcast y en cuáles no.
  • Creamos el proyecto: "comunicación entre robots".
Resultados de aprendizaje:
Al final de esta clase serás capaz de:
  • Comprender qué son las comunicaciones broadcast.
  • Entender el concepto de dirección broadcast.
  • Aprender a programar la comunicación inalámbrica entre dos placas.

2. Radio


La comunicación inalámbrica (radio), como por ejemplo el WiFI o los teléfonos móviles, es una forma popular de conectarse a Internet. Hoy conectaremos dos placas utilizando radio.


En el proceso no solo aprenderás a utilizar la radio de tu Micro:bit; también aprenderás acerca de la comunicación broadcast (o difusión). Las comunicaciones inalámbricas suelen ser broadcast; es decir, una Micro:bit puede enviar mensajes a todas las Micro:bits.

La comunicación broadcast (o de difusión) significa que el mensaje enviado por un remitente se transmite a todos los receptores en una red.

La comunicación inalámbrica utiliza radiación electromagnética (ondas de radio y microondas) para enviar información. Las ondas de radio son esencialmente ondas electromagnéticas que se emiten desde una antena y se reciben a través de radios. Por tanto, la comunicación inalámbrica es siempre broadcast, en el sentido de que las señales enviadas, por ejemplo, por un router WiFI, pueden ser escuchadas por cualquier dispositivo WiFi sintonizado en la misma frecuencia de radio. Los receptores pueden negarse a recibir mensajes de difusión si los mensajes no están etiquetados con una dirección de broadcast.

Una dirección broadcast (o de difusión) es una dirección especial que indica que todos los dispositivos de la red deberían recibir este mensaje.

En estos ejercicios con las placas Micro:bit la dirección broadcast se va a configurar estableciendo el ID de grupo de la radio de Micro:bit. Por tanto, todas las placas Micro:bits deben tener el mismo ID de grupo para que la comunicación broadcast funcione.

3. ✨¡Practiquemos!


Este ejercicio consiste en enviar el nombre del robot hacia la otra radio.

1. El primer paso es configurar el canal de comunicación entre la placa emisora y la placa receptora, utilizando el bloque «radio establecer grupo». Encontrarás este bloque en la sección radio (bloques rosa). Elegimos un número, el 1 por ejemplo, y ambas placas deben configurarse con el mismo número de grupo.

2. Para programar la acción del botón A, en la sección entrada (bloques rosa) localiza el bloque «al presionarse el botón A».

3. Dentro incluiremos el bloque "radio enviar número" que localizarás en la sección Radio. Este bloque envía a la segunda placa el número que indiquemos.

4. Para que el número a enviar sea aleatorio, en la sección matemática, localiza el bloque "escoger al azar". En este bloque indicaremos el rango de números donde se seleccionará uno al azar. Coloca este bloque matemático dentro del bloque "radio enviar número".

5. Procedemos del mismo modo con el botón B. Localizamos el bloque "al presionar el botón" en la sección "Entrada" y pulsando sobre "A" cambiamos el botón a "B".

6. Este botón enviará una vocal aleatoria a la placa receptora. Para elegir la vocal a enviar, se genera un número aleatorio de 1 a 5, que determinará qué vocal enviar:

  • 1 – vocal C
  • 2 – vocal E
  • 3 – vocal S
  • 4 – vocal A
  • 5 – vocal R

En la sección variables, crea una variable para guardar el número aleatorio entre 1 y 5.

7. En función del número, enviamos una u otra vocal. Para decidir qué vocal enviar, pulsa en lógica y utiliza el bloque "si…. entonces…" para evaluar qué número contiene la variable «vocal».

8. La condición que estamos estableciendo es "si vocal es igual a 1, entonces enviamos la vocal A". Para crear la condición vocal=1, pulsa en lógica y busca el bloque 0=0. Introduce ese bloque en el hexágono "verdadero" dentro de "si…entonces". A continuación sustituye el primer 0 por la variable vocal (encontrarás el bloque en la sección variables), y en el segundo hueco colocamos el valor 1.

9. Si se cumple la condición, enviamos la letra A utilizando el bloque "radio enviar cadena".

10. Duplicamos la condición pero vamos cambiando los valores y las letras a mostrar, así construimos las condiciones asociadas a las 5 Letras:

11. Placa receptora

La placa receptora puede recibir dos tipos de datos: letras o números. El dato que reciba lo mostrará en su matriz de leds. Puesto que puede recibir un número o una letra, utilizamos los bloques «al recibir radio "receivedNumber" y "al recibir radio receivedString" para esperar la llegada de un dato. En función del tipo de dato se ejecutarán los bloques incluidos en uno de los dos eventos:

 

12. En función del tipo de dato recibido, utilizaremos el bloque mostrar cadena o mostrar número para visualizar el dato recibido en la matriz de leds. Arrastra receivedNumber sobre mostrar número para mostrar el número recibido, y arrastra receivedString sobre mostrar cadena para mostrar la letra recibida.

 

4. 📝 Desafío #5


Este desafío consistirá en lograr que nuestro robot pueda comunicarse con otro mediante la radio.

1. Ingresemos a MakeCode.

2. Armamos un Nuevo Proyecto con el nombre Desafío 5.

3. Primero debemos establecer el número de radio que utilizaremos, en este caso ponemos un 3.

4. Iremos a entrada para buscar al Presionar el Botón A,B y A+B, en cada una deberemos poner el bloque deRadio enviar número y le vamos a dar una instrucción para que el robot pueda comunicar cómo se siente. Fijate debajo el ejemplo:



5. Por último usaremos el bloque por siempre en donde podremos declarar las condiciones para que se cumpla cada evento de emociones del robot.