User MakeblSoftware PDF
User MakeblSoftware PDF
User MakeblSoftware PDF
Manual de usuario
Makeblock Software
mBlock, Makeblock App y mBot App
Índice
1 Introducción............................................................................................... 2
2 mBlock ....................................................................................................... 2
2.1 Requerimientos de sistema .................................................................................. 2
2.2 Interfaz................................................................................................................ 2
2.3 Programación ...................................................................................................... 3
2.4 Consideraciones................................................................................................... 7
4 Referencias ................................................................................................. 11
1
1. Introducción
Makeblock cuenta con una diversa gama de programas diseñados para interactuar con sus
dispositivos, dentro de estos se encuentran aplicaciones (Apps) para dispositivos portátiles
las cuales son descargables sin costo a través de alguna App Store. Además, un software
para computadores, mBlock, en el cual se pueden programar en mayor detalle los diferentes
robots. Todas los software de Makeblock vienen localizados en varios idiomas diferentes, los
cuales incluyen español e inglés.
2. mBlock
mBlock es un software desarrollado en base a Scratch [1] y Arduino [2] para la pro-
gramación de diversos robots producidos por Makeblock, este se puede descargar de forma
gratuita a través de la pagina de http://learn.makeblock.com/en/software/. Un deta-
llado manual con todas las instrucciones de instalación, mayor detalle de algunos bloques y
un ejemplo de uso de este software puede ser encontrado en http://download.makeblock.
com/mblock/docs/getting-started-with-mblock.pdf
2.2. Interfaz
La interfaz inicia en un modo donde se presentan dos secciones principales, una en donde
se puede trabajar con sprites de imágenes y otra que es la base de la programación por
bloques, basada de Scratch. Además de esto, existe la opción de abrir una ventana en donde
se muestra el código Arduino que hay por detrás de cada bloque de Scratch, con la posibilidad
de editar dicho código de forma directo en el IDE (entorno de desarollo integrado) de Arduino.
2
(a) Pantalla de inicio (b) Código Arduino
(a) Selección conexión. Disponibles: Serial Port, (b) Selección dispositivo. Disponibles: Starter/Ulti-
Bluetooth, 2.4G Serial y Network mate, Me Uno Shield, mCore, Auriga, Ultimate 2.0
y MegaPi Pro
Figura 2: Ejemplo de conexión a través del puerto serial COM3 con un mRanger (Auriga)
2.3. Programación
mBlock soporta un estilo de programación de forma nativa y este corresponde al basado
en Scratch, además cuenta con la opción de extender la edición de programas a el escribir
directamente el código de estos, esto a través de una portabilidad mBlock-IDE Arduino.
La primera modalidad de programación a corresponde a la basada en bloques. Para el
uso de esta se tiene una variedad de bloques dentro de la sección Script del programa,
como se puede ver en la Figura 3 (a), estos tienen diversas formas y colores los que se
encuentran asociados a su función. El procedimiento para desarrollar un programa para los
robots consiste en el seleccionar bloques de la lista, después arrastrarlos con el cursor hasta el
3
espacio vacío adyacente y luego unirlos entre ellos usando su naturaleza de rompecabezas. De
esta manera, se pueden ir agregando diferentes funciones (bloques) a lo que será el programa
a probar en el robot. Para que estas sean ejecutables deben estar unidas a un bloque central
llamado Arduino Program o <inserte robot> Program (en el caso de la Figura 3 (b) se
utiliza un mBot, i.e. se utiliza mBot Program). La selección de este bloque central esta
asociada a que tipo de bloques se quiere ocupar, si aquellos en terminología de Makeblock o
su equivalente en Arduino.
(a) Sección Script, con los bloques para programar. (b) Código Arduino correspondiente a los bloques
Animación del proceso disponible en https://goo. del programa
gl/HNQfFc
Este método de programación basado en bloques esta diseñado para ser intuitivo y amiga-
ble para un usuario con poca o nula experiencia en el mundo de la programación. En cuanto
a la funcionalidad, los bloques presentes en el programa abarcan a cabalidad las funciones
básicas asociadas a los sensores y actuadores presentes en cada robot de Makeblock. Con
esto se pueden desarrollar tantos algoritmos como se desee.
La segunda modalidad, consiste en programar en el IDE de Arduino haciendo uso de
la portabilidad presentada en la Figura 3 (b). Esto implica el escribir código compatible
con los microcontroladores presentes en los robots, dicho código debe estar escrito ya sea
en el lenguaje propio de Arduino o en lenguaje C. Para poder programar los dispositivos
de Makeblock existen una serie de librerías con funciones creadas para utilizar los diferentes
sensores y actuadores de los robots. Como se puede ver en la Figura 4, existe una amplia
variedad de librerías para Arduino para hacer uso de las funcionalidades de los robots. La
documentación de como utilizar estas librerías se encuentra distribuida a lo largo de las
páginas de Makeblock, en estas se encuentra un compilado de las librerías el cual incluye
los constructos y definiciones de las estructuras de funciones en http://learn.makeblock.
com/Makeblock-library-for-Arduino/index.html. De forma complementaria, en http:
//learn.makeblock.com/en/ se encuentra información acerca de los esquemáticos, modo
de conexión y ejemplos en Arduino de algunos módulos electrónicos y tarjetas de Makeblock
(ver ejemplo en la Figura 5).
4
Figura 4: Librerías de Makeblock
(a) mBlock Kids ma- (b) Ranger, The (c) Scratch 2.0, The (d) Guía: Divirtién-
ker rocks with the ro- Mars Adventure of Adventures of Mike dome con mBot
bots Mark
5
(a) Presentación del módulo y especificaciones (b) Función y mapeo de pines
técnicas
6
2.4. Consideraciones
Debido al modo de funcionamiento del software, es posible que el usuario tenga compli-
caciones con algunos aspectos. Aquellos que amenazan el correcto funcionamiento son los
relacionados a permisos y compatibilidad de programas, para evitar esto se han de tener las
siguientes consideraciones:
El software mBlock DEBE ser ejecutado en Modo Administrador, para que no presente
problemas la portabilidad con Arduino.
El PC debe tener una versión de Java compatible con la de 32bit. A pesar de esto,
puede que sea necesario reemplazar la versión de Arduino embebida en el progra-
ma mBlock, para esto basta con realizar una copia de la carpeta portable ubicada
en C:\Program Files (x86)\mBlock\Arduino y pegarla en la nueva carpeta de Ar-
duino que se instale. Otra opción corresponde a agregar el paquete de liberías make-
block a la carpeta de librerías de Arduino, de manera que termine existiendo la ruta
Arduino\libraries\makeblock\src.
7
3.1.2. Interfaz
La aplicación parte con una pantalla de sincronización con el robot, con la que posterior-
mente se abre un menú de aplicaciones de acuerdo al robot detectado. Una vez dentro del
menú, se presenta una gama de aplicaciones pre-programadas para hacer un uso demostra-
tivo de las capacidades de cada modelo (ver Figura 7 (a)). En la Figura 7 (b) se muestra la
interfaz correspondiente al menú Crear de la App, en este se cuenta con módulos que están
programados para hacer uso de los sensores y actuadores del robot en uso.
(a) Menú para modelos dentro de la aplicación (b) Menú Crear, aplicación diseñable
3.1.3. Programación
Al ser seleccionados, la mayoría de los módulos dentro del menú Crear tienen la opción
para abrir su Código (Figura 8 (a)). Al abrir el código se entra en una interfaz como la
mostrada en la Figura 8 (b), en donde se tiene un menú a la izquierda en el cual se encuentran
bloques de mBlock para la programación del modulo. Un ejemplo del menú y el uso de estos
bloques se puede ver en (c) y (d) de la Figura 7. De forma análoga a lo que es la programación
en el software para PC, todos los bloques seleccionados deben estar unidos entre sí y bajo
alguna directriz inicial que los active, como lo es el bloque al presionar tecla.
8
(a) Opciones de un módulo botón (b) Interfaz Código
(c) Bloques del menú Movimiento para utilizar (d) Ejemplo de programa en bloques
3.1.4. Consideraciones
9
(a) Interfaz de conexión (b) Menú de la App
(c) Etapas del modo Historia (d) Interacción con el usuario en el modo historia
3.2.2. Interfaz
La aplicación inicia con una pantalla de sincronización con el robot (Figura 9 (a)), con
la que posteriormente se abre un menú con los modos principales de la App (Figura 9(b)).
El modo Crear consiste en una interfaz para programar en bloques, equivalente a la de la
App principal de Makeblock, mostrada en la Figura 8. Por otro lado, el modo Historia
presenta una serie de etapas para que el usuario vaya superando, estas se van desbloqueando
a medida que el usuario va completando las misiones previas (Figura 9(c)). Dentro de estas
etapas existe una interacción activa con el usuario para guiarlo a través de la aplicación,
como se puede ver en la (Figura 9(d)).
10
Figura 10: Programación en modo historia
3.2.3. Programación
4. Referencias
Referencias
[1] Scratch, software con propósitos educativos. Proyecto del grupo Lifelong Kindergarten
del MIT Media Lab. Disponible en:
https://scratch.mit.edu/
[2] Arduino, plataforma electrónica open-source diseñada para el desarrollo de diversos pro-
yectos interactivos. Disponible en:
https://www.arduino.cc/
11