1.2.4 mBlock vs Snap4Arduino ¿cuál es el mejor?
1.2.4 mBlock vs Snap4Arduino
Conclusión: mejor el lenguaje gráfico
¿Pero cual? Siempre es mejor moverse en estándares, y actualmente el lenguaje gráfico que está más extendido y donde hay más proyectos es Scratch, luego vamos a centrarnos en dos programas que se basan en Scratch: mBlock y Snap pero ¿cual es mejor? Snap4Arduino o mBock
1.2.4.1 Instrucciones específicas para Arduino
Si entramos en la sección de instrucciones específicas para Arduino, en Snap4Arduino sólo tenemos las instrucciones básicas simples, a partir de estas piezas tienes que hacer el puzzle. Mientras que en mBlock tenemos más instrucciones que nos simplifican los programas pues la misma instrucción implican varias de las simples básicas:
Esto parece una tontería pero no lo es: por ejemplo, supongamos que queremos reproducir el tono C4 es más o menos 262Hz:
Luego tiempo que dura la onda es =1/262 = 0.0038 segundos es decir el tiempo de “encendido HIGH” es 0.0038/2= 0.0019seg y el tiempo de “apagado LOW” es 0.0035/2= 0.0019seg.
o sea… que para hacer esta instrucción en mBlock
necesitas hacer todo esto en Snap4Arduino :
1.2.4.2 Importación de librerías
Snap4Arduino puede importar instrucciones o librerías que pueden aumentar el repertorio de instrucciones.
mBlock también tiene en Extensiones-Administrar extensiones pero no son tan específicas para el Arduino.
Vamos a fijarnos las diferentes posibilidades que tiene de conectarse el programa con el Arduino
En Snap4Arduino hay que dar con el botón derecho en el sprite y sólo permite conexiones puerto serie.
Mientras que en mBlock hay un menú con la opción de Conexiones y diferentes caminos para conectarse: Puerto serie, Bluetooth, 2.4G .. nos permite por ejemplo tener nuestro Arduino conectado de forma remota, necesario para ciertos proyectos, ejem un coche
Si vemos un proyecto en Scratch que nos gusta y lo queremos reutilizar lo descargamos y si lo queremos reutilizar...
En mBlock lo podemos abrir, pero no siempre va bien.
En Snap4Arduino no acepta ficheros Scratch, pero hay conversores online como Snapin8r, y también da problemas.
Conclusión: tortazo a los dos !!
Lo veremos mejor más adelante en esta sección.
En Snap4Arduino no existe un menú arriba, las opciones no se encuentran tan inmediatamente
Mientras que en mBlock es más intuitivo:
Snap4Arduino permite grabar tus programas en la nube, esto es una gran ventaja, pues permite al alumnado estar en cualquier ordenador, y seguir trabajando con sus programas que están en su repositorio en Internet.
Incluso puede grabar y compartir con otra persona el proyecto, (la otra persona recibe una copia del programa, no el original), esto permite publicar en un blog por ejemplo los programas.Ver como.
mBlock sólo trabaja en modo local.
En mBlock podemos poner la vista de Modo Arduino Y NOS MUESTRA NUESTRO PROGRAMA ESCRITO EN LENGUAJE GRAFICO CONVERTIDO A LENGUAJE CÓDIGO
Esto nos permite SUBIR AL ARDUINO es decir, nuestro programa grabarlo en el Arduino como si fuera un Firmware y ganar velocidad aquí tienes una captura y puedes observar cómo traduce el programa gráfico en código:
QUEREMOS EXPLICARTE LO IMPORTANTE QUE ES ESTO El anterior programa funciona bien si lo hacemos subir al Arduino, pero si lo hacemos de forma normal (cambiamos el evento “Programa Arduino” por evento bandera):
NO FUNCIONA BIEN
¿por qué?: por la lentitud.
Si apretamos el pulsador 2 le pedimos al ordenador que encienda y apague D10 a una velocidad de 0.00175 segundos esto lo tiene que procesar el ordenador, pasa por el cuello de botella del puerto serie y al final se ejecuta en el Arduino a una velocidad mucho más baja, más o menos 0.5 segundos, en vez de oirse un tono, se oye tut,tut,tut,tut….
Si apretamos el pulsador 3 sí que se oye bien, porque mBlock manda el código del bucle de golpe para que se oiga bien.
Volveremos a este programa varias veces, no te preocupes si no lo has entendido del todo bien.
Desventajas de subir un programa al Arduino:
- NO PODEMOS INTERACTUAR CON EL ORDENADOR es decir, no podemos hacer que el sprite (el oso por defecto) se mueva o que al pulsar una tecla del ordenador… porque EL ARDUINO ES INDEPENDIENTE DEL ORDENADOR, incluso podemos desconectarlo y sigue funcionando !!!
- Nos hemos cargado el Firmware que tenía antes !! luego al finalizar tu programa, tenemos que volver a configurar el Arduino para que haga caso al programa mBlock visto en esta presentación.
Ventajas de subir un programa al Arduino:
- Rapidez, tenemos la ventaja del lenguaje con código, el programa se ejecuta a la velocidad del Arduino sin tener el ordenador como intermediario.
- Independencia: Alimentamos el arduino con una batería ¡¡ y funciona !! esto es esencial para proyectos que impliquen movimiento y no queramos tener el ordenador encendido para que funcione.
Aunque...: Rapidez en la simulación
Aunque Snap4Arduino no sube el programa, sólo simula, es mucho más rápido en la simulación que mBlock
En este apartado veremos las diferencias.
Nosotros le vamos a dar el premio a mBlock
Todo es cuestión de gustos, las capturas y descargas de programas de este curso serán en mBlock, pero algunas veces utilizaremos Snap4Arduino cuando nos interesa rapidez en la simulación,.
Ten en cuenta que si te gusta Snap4Arduino puedes hacer este curso pero que tendrás que currarte las instrucciones más elaboradas que tiene mBlock y no podrás descargar tu programa al Arduino para que sea independiente tal y como hace mBlock.