PRIMEROS PASOS CON mBLOCK – I (makeblock education)

06 Marzo 2019 01

06 Marzo 2019 02

Autor:  Agustin Gonzalez Redondo. M Rocío García de la Fuente.

MBlock es un software de programación integral basado en Scratch 3.0 y diseñado para la educación. MBlock integra lenguajes de programación como Arduino, C++ y Python, de tal forma que cualquier estudiante puede crear programas para el control de robot o establecer una comunicación entre robot y computadora de una forma relativamente sencilla.

Al estar basada en Scratch, los niños, por lo tanto, pueden empezar a programar con relativa facilidad, dada la simplicidad de este lenguaje de programación basado en bloques, como ya se ha visto en artículos precedentes.

La aplicación se puede descargar de forma gratuita y para la práctica totalidad de los sistemas operativos, incluidos teléfonos móviles y tabletas, desde su página oficial http://www.mblock.cc (figura 1). Haciendo clic en la pestaña Download el proceso de instalación es sencillo y una vez finalizado, si se echa un vistazo general a la plataforma mBlock (figura 2), se puede observar que salvo pequeñas diferencias en colores, o el personaje inicial que aparece en pantalla, la estructura de bloques es similar a la estructura del programa Scracth, salvo por la aparición de un nuevo bloque de programas “robot”, desde el que se podrán dar las instrucciones necesarias a los autómatas programables (figura 3).

06 Marzo 2019 03

Otra novedad con respecto a Scratch, o a S4A, es que la programación va más allá de la placa Arduino, y permite el uso de una gran variedad de dispositivos programables, Arduino, mBot, megaPi, etc. (figura 4), cada uno de ellos con sus respectivas extensiones y bloques de instrucciones para programar la placa seleccionada (figura 5).

06 Marzo 2019 04 06 Marzo 2019 05

 

Para dar comienzo al trabajo con esta aplicación se va a emplear el modo Arduino, ya que mBlock permite descargar el programa a la placa, para que el robot trabaje de forma independiente. Este modo es ideal para trabajar con robot móviles donde una conexión a través de cable limita su movimiento.

El proyecto que se va a realizar a modo de ejemplo es el ciclo de encendido y apagado de un semáforo, donde se descargará el programa en la placa de Arduino para su funcionamiento independiente.

Como material se necesario para llevar a cabo la práctica se deberá contar con:

  • 1 Placa de Arduino UNO
  • 1 Protoboard donde conectar los diodos LED
  • 4 cables de conexión
  • 3 Diodo Led (rojo, amarillo y verde del semáforo)
  • 3 Resistencia de 220Ω para conectar en serie con los diodos.

Una vez se cuenta con el material, el sistema de conexiones realizado con Fritzing es el siguiente (figura 6), donde los colores rojo, amarillo y verde se conectan a los pines 13, 12 y 11 de Arduino respectivamente.

06 Marzo 2019 06

 

 

Una vez hecho el montaje sobre la placa de Arduino, se realiza un sencillo programa de Scratch para controlar el autómata. Para editar el programa debe estar seleccionado el modo Arduino dentro del menú de Herramientas Editar (figura 7), y el programa una vez realizado con los bloques de Scratch tendrá el siguiente aspecto (figura 8).

06 Marzo 2019 07 06 Marzo 2019 08

Analizando su funcionamiento, su inicio da comienzo con un evento nuevo (figura 9), e inicializa tres variables rojo, verde y amarillo creadas como variables para establecer el número de PIN donde se han de conectar sus respectivos LED de color, de acuerdo con el esquema de conexión visto en la figura 6.

06 Marzo 2019 09

Posteriormente y dentro de un bucle de repetición continua “por siempre”, se cambia el estado de los distintos diodos en un orden determinado, 3 segundos rojo, 1,5 segundos amarillo y 3 segundos el verde, para repetirse continuamente durante la ejecución del programa.

Por último, para hacer funcionar el robot, se hace necesario descargar el programa en la placa para lo que existen dos posibilidades:

  1. Descargar directamente usando el programa mBlock, simplemente es necesario, una vez finalizado el programa, pulsar el botón “Subir a Arduino” (figura 10) y el programa se descargará directamente en la tarjeta.

06 Marzo 2019 11

  1. Editar con IDE de Arduino: esta opción funciona como un traductor de código desde mBlock, programación de alto nivel con el uso de Scratch, hacía un código más avanzado, basado en C++, capaz de ser interpretado por el programa Arduino IDE (figura 11), y donde podrá ser descargado directamente a la placa o bien ser editado por un usuario más avanzado (figura 12), una vez realizadas las convenientes modificaciones, la descarga se hace a través de la IDE de Arduino.

06 Marzo 2019 12

La oportunidad que brinda mBlock, a diferencia de S4A, de descargar directamente el programa en la placa, y que se analiza en el presente artículo, permite trabajar con programas donde la independencia del autómata es fundamental para su funcionamiento, ya sea a través de su descarga, o copiando el programa que genera a la IDE de Arduino para su posterior descarga.

Además, este último caso que puede así ser modificado por un usuario más experto, o bien puede ser utilizado como fuente de análisis para acercarnos a lenguajes de programación más complejos y potentes, como C++ empleado por la IDE Arduino, partiendo, por supuesto, de casos prácticos sencillos elaborados por nosotros mismos en un lenguaje como Scratch más fácil de comprender

Por último y aunque aquí la programación gráfica, que es posible realizar con Scratch, no tiene sentido puesto que el autómata funciona de forma independiente, en futuros artículos analizaremos las posibilidades de trabajo que presenta el uso conjunto de las tarjetas Arduino con la interfaz gráfica basada en Scratch que proporciona mBlock.

Robótica-Programación

Introducción a la física de partículas y observación (Muon detector)

AUTORES: M. ROCÍO GARCÍA DE LA FUENTE Y AGUSTÍN GONZÁLEZ REDONDO. Para comenzar este artículo es preciso realizar una breve introducción al modelo estándar de partículas, para intentar comprender el conocimiento científico que yace detrás del proyecto que trataremos de explicar. El modelo standard (fuente CERN) figura 1. Desde la década de 1930 los descubrimientos […]

Leer más
Robótica-Programación

Control de motores Arduino (IV). Motores Paso a Paso

AUTORES: M. ROCÍO GARCÍA DE LA FUENTE Y AGUSTÍN GONZÁLEZ REDONDO El segundo tipo de motores capaces de controlar su posición de forma interna, los servomotores fueron los primeros que hemos tratado en anteriores artículos, son los motores paso a paso (figura 4. Varios modelos de motores paso a paso), dispositivos ampliamente empleados en impresoras […]

Leer más
Robótica-Programación

Python ·3D con Processing

AUTORES: M. ROCÍO GARCÍA DE LA FUENTE Y AGUSTÍN GONZÁLEZ REDONDO. Hoy volvemos de nuevo a trabajar con Python, en este caso, añadimos nuevas posibilidades a una IDE que ya conocemos, Processing, además de trabajar con este lenguaje de programación realizaremos una primera animación en 3D. Para comenzar debemos añadir un nuevo modo de trabajo […]

Leer más
MENÚ
Revista