Robótica y programación educativas

Llevamos ya algún tiempo escuchando las bondades del uso educativo de la robótica y la programación, tanto que ya parece que todos aquellos que somos padres o/y maestros deberíamos tener alguna herramienta que nos permitiese introducir a nuestros hijos o alumnos, en este fascinante mundo. Evidentemente no es así, pero dada la cantidad de herramientas disponibles y lo útiles y entretenidas que resultan para los niños muchas de ellas, vale la pena echarles un ojo y valorar si deseamos o no usarlas. En este artículo vamos a hacer un breve repaso por algunas de ellas, intentando explicar sus características, aunque sin entrar a fondo en sus ventajas e inconvenientes.

Taller Scratch impartido por la UOC

Taller Scratch impartido por la UOC

Dividiremos el artículo en dos apartados, uno de software y el otro de hardware, aunque, inevitablemente, en el apartado de hardware nos tocará en muchas ocasiones hablar también de software. Por otra parte, casi todo el software del que hablaremos aquí es gratuito, mientras que para el hardware será necesario hacer algún tipo de inversión económica que variará según el producto y donde se compre.

Como la robótica y la programación son interesantes para todos los públicos, también incluimos recursos sobre programación y robótica para todas las edades.

Para acabar comentar que no está todo lo que hay. Hemos hecho un resumen a partir de aquello que conocemos. Sin embargo, las posibilidades son casi infinitas y continuamente nuevos proyectos ven la luz ampliando el abanico de posibilidades.

Software

En este apartado veremos plataformas y aplicaciones software que permiten introducir(nos) en la programación. Empezaremos por aquellas que permiten aprender a programar de una manera sencilla y con un conjunto de instrucciones limitado, más apropiado para niños y niñas de primaria y después iremos avanzando hacia entornos y lenguajes más complejos, para alumnos y alumnas de secundaria, bachillerato y adultos.

  • ScratchJr (https://www.scratchjr.org/). Basado en su hermano mayor, Scratch, ScratchJr es un entorno de programación pensado para niños y niñas de 5 a 7 años. El entorno es muy atractivo, el número de instrucciones a usar es limitado y su uso muy intuitivo. Permite editar los dibujos, añadir sonidos, cambiar los fondos y, evidentemente, animar a los personajes. Las primeras veces será imprescindible la participación de un adulto aunque pronto dejará de serlo.
  • code.org. En code.org se pueden encontrar tutoriales para aprender a programar con personajes emblemáticos como:

    Todos estos tutoriales se parecen bastante. Todos vienen acompañados de vídeos explicativos, en inglés pero subtitulados en castellano, aunque los vídeos no acostumbran a ser necesarios.

    Pueden hacerse a casi cualquier edad, aunque los más pequeños necesitarán la compañía de un adulto.

    Además, en la página principal de code.org (https://code.org) se pueden encontrar cursos de unas 20 horas pensados para hacer en clase y con toda la información necesaria para que el profesor pueda guiar a sus alumnos. Evidentemente también son útiles para hacerlos en casa.

  • Scratch. Scratch es un entorno de programación pensado para niños y niñas de 8 a 12 años, aunque fácilmente pueden usarlo adolescentes si son creativos y/o tienen ganas de aprender. Las instrucciones se colocan en el “editor” como si fuesen piezas de un puzle y ofrece un conjunto de instrucciones muy amplio así como una gran posibilidad de trabajar con imágenes y sonidos, pudiéndose usar incluso para hacer músicas sencillas. Scratch se usa en numerosas escuelas no solo como herramienta para aprender a programar, si no como herramienta para trabajar asignaturas como las de lenguas, matemáticas o ciencias. Scratch puede usarse online (https://scratch.mit.edu/) o descargar e instalar (https://scratch.mit.edu/scratch2download/). Tiene una gran comunidad de usuarios con numerosos proyectos disponibles para explorar y modificar.Para empezar con Scratch se pueden usar las Scratch cards, unas tarjetas que proponen unos sencillos ejercicios para empezar entender el entorno y la manera de usarlo. Las iniciales están traducidas a numerosos idiomas (incluidos el castellano y el catalán) pero las más avanzadas están solo en inglés. Las Scratch cards se pueden encontrar en: https://scratch.mit.edu/info/cards.
  • Snap! y Beetle Blocks. Snap! (http://snap.berkeley.edu/) es un entorno de programación similar a Scratch, pero con una presentación menos trabajada (y menos infantil) y más potencia en cuanto a instrucciones de programación. En cuanto a Beetle Blocks (http://beetleblocks.com/) es otro entorno de programación, basado en Snap! pero con la característica adicional de que puede gestionar tres dimensiones (a diferencia de Scratch y Snap! que trabajan solo con dos dimensiones). Beetle Blocks está en parte desarrollado por un estudiante de la UOC: Bernat Romagosa.
  • App Inventor. App Inventor (http://appinventor.mit.edu/explore/) es una aplicación web que permite crear, de una manera “sencilla”, aplicaciones para móviles. Tiene dos partes, una que nos permite diseñar la interfaz y la otra que nos permitirá crear nuestra aplicación. El pasar la aplicación al móvil es sencillo, se puede hacer mediante wifi y sin pasar por el ordenador. Aunque el entorno es muy intuitivo, puede llevar un tiempo hacerse a su uso. App Inventor es una aplicación ideal para jóvenes de 14 a 19 años, una edad en la que el móvil forma parte de su estilo de vida y crear aplicaciones para él es un aliciente importante.
  • Python y Processing. No es que tengan mucho que ver, pero están juntos porque son un paso más allá de lo que hemos visto hasta ahora. Python y Processing son lenguajes de programación que pueden ser usados, por sus características, en la enseñanza de la programación. No son aconsejables para niños y niñas, pero sí pueden serlo para adolescentes que tengan ya una base de programación.Python (https://www.python.org/) es un lenguaje de programación de propósito general, interpretado y multiplataforma. Su sintaxis favorece que el código sea legible y por ello es útil cuando se empieza a programar. Es el lenguaje que se usa en las asignaturas iniciales de programación de algunas universidades y pueden encontrarse numerosos tutoriales en la red. En cuanto a processing (https://processing.org/) es un lenguaje basado en Java, pensado para crear proyectos multimedia. Tiene su propio entorno de programación y su característica principal es que facilita la creación de animaciones y la interacción con el usuario, siendo una alternativa interesante para aquellas personas más creativas.
  • Codecademy. Aunque tutoriales sobre programación hay muchos en la red, hay una web, Codecademy (https://www.codecademy.com), que reúne un conjunto suficientemente grande de ellos como para que merezca ser incluido en esta recopilación. Nada es perfecto y Codecademy no lo es, pero para empezar con la programación sus tutoriales paso a paso son fáciles de seguir y ayudan a introducirse en los lenguajes que enseñan.

Hardware

Cuando hablamos de hardware nos referimos tanto a robots ya construidos como a placas electrónicas que permiten hacer diferentes “construcciones” electrónicas. De nuevo empezamos por aquel hardware destinado a los más pequeños e iremos “creciendo”, aunque la mayoría de los productos que veremos pueden usarse en un ámplio margen de edades.

  • Bee bot. Los Bee bot (https://www.bee-bot.us/) son pequeños robots con forma de abeja, muy sencillos y pensados para introducir en la resolución de problemas a niños y niñas a partir de los 3 años. Se programan pulsando los 4 botones que le indican si debe ir adelante, atrás, derecha o izquierda. Tal vez sea demasiado simple para usar en casa (sus posibilidades son limitadas) pero en el aula pueden tener más recorrido. Del mismo fabricante existen también el Blue bot que permite programarlo desde una tableta y el Pro bot, un coche que tiene mayores posibilidades de programación y que igual que en el caso del Bee bot, se programa usando unos botones que tiene en la parte superior.
  • Makey Makey. Makey Makey (http://makeymakey.com/) es una sencilla placa que conectada vía USB al ordenador, se comporta como si fuese un teclado. Con ella podemos convertir cualquier cosa en teclas y programarlas para que hagan lo que queramos. Un ejemplo típico es el hacer un piano donde las teclas son plátanos. Se puede programar con Scratch o con cualquier lenguaje de programación.
  • Lego Wedo. Lego Wedo (https://education.lego.com/en-us/elementary/shop/wedo-2) es un set de construcción de Lego que incluye un motor, un sensor de distancia, un sensor de inclinación, una batería y un hub para controlarlos a todos. Los diferentes componentes pueden comprarse por separado e incluirse en cualquier construcción de Lego, ya que, evidentemente, los componentes de Lego Wedo son compatibles con las piezas de Lego tradicionales.
  • Moway. Moway (http://moway-robot.com/) es un robot que incorpora diversos sensores (de luz, temperatura, anticolisión, de seguimiento de líneas). Puede programarse con su propio software basado en diagramas de flujo, con Scratch o directamente en C. A pesar de su apariencia sencilla su uso sería adecuado a partir de secundaria, aunque posiblemente pueda usarse en el último ciclo de primaria.
  • Lego Mindstorms. El Lego Mindstorms (https://www.lego.com/es-es/mindstorms) es un set de construcción de Lego que permite la construcción de complejos robots con diversos sensores (de color, táctil, de infrarrojos), motores y un “brick” programable donde se almacenará el programa que gestione el robot. La programación se hace en un ordenador (PC o MAC) o en una tableta (Android o Apple) usando un entorno de bloques similar a Scratch (de hecho está desarrollado también por el MIT). Existe una competición a nivel mundial, la First Lego League (http://www.firstlegoleague.es/) de la que estos robots son una parte importante.
  • Arduino. Arduino (https://www.arduino.cc/) es una placa electrónica programable. Ideal para alumnos de los últimos cursos de secundaria, permite hacer innumerables montajes electrónicos, desde un robot, con sensores y motores, hasta una casa domótica, con sensores de luz, movimiento, apertura de puertas y ventanas, encendido y apagado de leds o relés,… Tiene su propio entorno de programación (para Windows/Linux/Mac) que permite hacer el programa, compilarlo y enviarlo a la placa, aunque existe una aplicación desarrollada en el Citilab de Cornellà, el S4A (Scratch for Arduino http://s4a.cat/index_es.html) que permite programar la Arduino con Scratch, con lo cual podrían hacerse proyectos con Arduino (más sencillos que si se programa directamente), con alumnos de los primeros cursos de secundaria.
  • Raspberry Pi. Estamos ante otra placa electrónica, pero que a diferencia de Arduino, es, además, un ordenador completo. Raspberry Pi (https://www.raspberrypi.org/) es capaz de ejecutar una versión de Linux, y tiene salida HDMI para conectarle una pantalla y entradas USB para conectarle teclado, ratón y cualquier otro periférico que pueda conectarse vía USB (como un disco duro por ejemplo). A la Raspberry también le podemos conectar componentes electrónicos y la programación la podemos hacer directamente sobre la Raspberry en diversos lenguajes de programación como podrían ser C, Python u otros muchos.
  • Otros. Añadimos este apartado porque, como comentábamos al principio de este artículo, las posibilidades son muchas y proyectos, especialmente de hardware, hay muchos y vale la pena comentar algunos.
    • Humbot Sargantana (http://makitpro.com/index.php/humbot-s/) es un robot basado en Arduino. En la web pueden encontrarse las instrucciones para hacer todo el montaje, incluso la carcasa de plástico (con una impresora 3D). Así como diversos programas para programarlo. Cristóbal Selma, diseñador del robot y estudiante de la UOC, fue ganador del premio al mejor proyecto de impacto social en la 3ª edición de los Premios UOC-RMF.
    • Osmo (https://www.playosmo.com) es una interesante propuesta para iPad. Combina una aplicación con un conjunto de fichas que le permiten hacer programas o resolver puzzles entre otras cosas. La gracia está en que la aplicación reconoce las fichas que el usuario pone bajo la cámara e interactúa con ellas.
    • Micro:bit (http://microbit.org/) es un robot educativo creado por la BBC pensado para ser usado en las aulas con alumnos de primaria. Hasta hace poco solo estaba a la venta en Gran Bretaña, pero ahora ya se vende en todo el mundo.
    • Littlebits (http://littlebits.cc/) es un conjunto de sensores y motores, que pueden conectarse fácilmente mediante imantes. Se pueden construir fácilmente robots sencillos.

Para acabar insistir de nuevo en que no está todo lo que hay pero creemos que esta recopilación puede dar una idea de las posibilidades que existen de usar de manera lúdica y educativa la programación y la robótica, tanto en casa como en el aula. Podéis encontrar una entrada en nuestro blog sobre introducir la programación en niños y niñas en este enlace.

sticker-esp

Carlos Casado es miembro del grupo Inventa, profesor de los estudios de Informática, Multimedia y Telecomunicación de la UOC y director del máster universitario de Aplicaciones Multimedia.

2 Comments

  1. He trasteado con scracht y usado ampliamente arduino, envidio a las generaciones actuales por tener la posibilidad de explorar un sector tan interesante desde bien jóvenes. Creo firmemente que la robótica será un pilar fundamental del mundo laboral. Tengo ganas de ver cómo se soluciona el reemplazo del ser humano en el trabajo.

    Saludos!

    Reply
  2. Yo sin duda elegiría, para que mis hijos empiecen a programar, la plataforma de Arduino. La veo bastante sencilla de utilizar y creo que se pueden hacer proyectos muy interesantes, además de tener a toda la comunidad de Arduino detrás. Por cierto he encontrado navegando por internet un proyectazo sobre robótica (para mi gusto), se los dejo a continuación:

    http://piensa3d.com/fabricacion-brazo-robotico-basado-arduino/

    Reply

Comentar

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Leer entrada anterior
3PGCIC & BWCCA-2017: Avances en tecnologías distribuidas y redes

El pasado noviembre tuve la oportunidad de asistir a la 11a edición de la doble conferencia internacional sobre computación en...

Cerrar