viernes, julio 08, 2016

Je suis Da Vinci: Impresión 3D

¿Qué es una impresora 3D?

Boceto conceptual artístico impresora 3D
El concepto apareció hace un par de años y resultó, por lo menos, confuso. Porque imprimir suele estar asociado a la idea de un plano, solamente a dos ejes. La impresora 3D es, en realidad una fábrica de objetos. Pero una fábrica especial, a medida, artesanal... básicamente una fábrica a muy pequeña escala asociada a la construcción de propotipos únicos a partir de diseños digitales.



Boceto a mano alzada impresora 3D
En cualquier caso, lo que uno puede imaginar a partir de este artefacto es, cuanto menos, estremecedor. Este video no solo explica qué es una impresora 3D y cómo funciona sino que, también, especula sobre el impacto de esta "fábrica" increíble en nuestro propio potencial creativo. ¡Los invito a verlo!

viernes, abril 15, 2016

Bailando por un programa: proyecto para robótica educativa

Al hablar de robótica educativa, no deberíamos perder de vista que para proponer actividades con sentido pedagógico, contextualizar los problemas para resolver es una cuestión relevante porque se relaciona directamente con la motivación que genera la propuesta de enseñanza y, de allí, la posibilidad de que, efectivamente, se produzcan aprendizajes significativos. Así que, tras la fascinación inicial por este nuevo recurso cuya exploración inicial abordé en mis post anteriores, haré hoy un alto en mi recorrido para pensar en una primer proyecto pedagógico al que he puesto como nombre: “Bailando por un programa”.


Este proyecto, de caracter integrador, podría estar destinado a niños del tercer ciclo del nivel primario y requeriría ciertos conocimientos previos. Podría implementarse de forma grupal distribuyendo deliberadamente equipos de trabajo que pudieran complementar habilidades, teniendo el propósito de incluir a estudiantes con habilidades diferentes.


Objetivo del proyecto
El objetivo principal del proyecto es que los estudiantes resuelvan grupalmente un desafío concreto de programación. El desafío será, en esta propuesta, programar al robot para que pueda ejecutar música y bailar. La idea es enmarcar este desafío en el contexto de un concurso de baile, emulando un reality televisivo en su dimensión artística, por supuesto.


El desafío técnico
Este proyecto está pensado para ser implementado con mBot ya que es el producto que he explorado pero muy probablemente pueda adaptarse a otro recurso similar. Instrumentalmente, los conocimientos previos con los que los estudiantes deben contar para poder resolver el problema planteado desde la consigna son:
  • Conocimientos básicos del entorno Scratch (para Make a Block)
  • Conocimientos básicos de música (para poder traducir una partitura en el sistema de notación americano o para componer o crear una melodía)
  • Comandos para controlar el buzzer del robot
  • Comados para crear bloques con subrutinas
  • Comandos de movimiento


Observación: Una de las dificultades más complejas de resolver, probablemente, será el hecho de que para lograr que el robot cambie la secuencia de movimientos coreográficos, será necesario “partir” las frases musicales de modo tal que las pausas “invisibles” que se incluyen dentro de las galerías no generen “bugs”. Es importante en este punto estar cerca del proceso para acompañar con sugerencias de solución en caso que el nivel de difcultad comience a ser excesivamente frustrante.


La secuencia de actividades sugerida
1. Se explica el objetivo general de la propuesta y se introduce la dinámica de trabajo.


2. Reunidos en grupos de tres o cuatro, se entrega una partitura junto con la consigna que explica el desafío. Otra posibilidad es solicitar que el grupo mismo componga la melodía o programe “de oído” una melodía conocida. La consigna debería incluir también aspectos accesorios como inventar un nombre para el robot y un otro para el show de baile, por ejemplo.

3. Se propone una discusión colectiva entre todos los equipos para explicar en detalle la consinga y para discutir respecto a cuál sería la estrategia de programación más conveniente:
  • ¿Qué tareas deberán realizar?
  • ¿Cómo dividirán el trabajo?
  • ¿Por donde comenzarán?
  • ¿Qué comandos necesitarán?
A partir del intercambio de ideas se evalua el nivel de andamiaje que los grupos requerirán para resolver la consigna.


4. Una vez que los grupos terminaron el trabajo se realiza una presentación grupal que consta de tres momentos:

a) Exhibición

b) Explicación del código del programa

c) Relato del proceso de trabajo

5. Finalmente, cada participante tendrá una ficha en la cual podrá emitir su voto secreto y subjetivo para el concurso de baile. El voto secreto supondrá una calificación del 1 al 10 en tres categorías, por ejemplo:



Robot: Nombre del robot
Calificación del 1 al 10
Música

Coreografía

Nombre del show musical



Sería adecuado que los participantes califiquen siempre los robots ajenos pero no el del equipo propio. Luego, se contabilizarán las calificaciones totales y así se elegirá a los ganadores en cada categoría. Según la cantidad de participantes podrá ajustarse el sistema de votación para que todos los robots tengan oportunidad de destacarse en algún aspecto.


Apuntes técnicos y una resolución de las muchas posibles
Como ejemplo de resolución, utilizamos la melodía del popular juego “Tetris” que obtuvimos, en este caso, de una partitura.
partitura-tetris-705984.jpg
Un modo práctico de resolver es programar la melodía en bloques que permiten establecer diferentes momentosdos momentos en el movimiento coreográfico del robot. Cada secuencia se corresponderá con un bloque que conformará una subrutina que permite ejecutar la melodía.


baile1.png


Por último, se intercalan en el programa los bloques con el encendido alternado de los motores de modo que el robot gira en una sola dirección simulando un paso de baile. Este movimiento cambia de dirección al comenzar la segunda parte de la canción. El procedimiento se repite dos veces y se activa con el control remoto:

baile2.png

Finalmente, el resultado en acción es el siguiente:




¿Cuál sería tu voto para el show de mi robot?


Este es el quinto post sobre nuestras experiencias con mBot. Si te intersa conocer como llegamos aquí podés vistar nuestros post anteriores: “Primeras experiencias en robótica educativa”,  “Con ojos de robot” , “¡Alto ahi”: Programando con el control remoto” y “Música robótica” en este mismo blog.

martes, abril 05, 2016

Los jóvenes, la escuela y las redes ¿Cómo se transformaron las escuelas secundarias?

Durante el año 2015 en el marco de una investigación desarrollada por el equipo del PENT de Flacso, a través de una convocatoria del CIECTI del Ministerio de Ciencia y Tecnología de Argentina, realizamos un trabajo de investigación denominado “Nuevas tendencias de comunicación y participación en las Escuelas 2.0”.

​La investigación se proponía indagar, desde la perspectiva de los estudiantes, cómo se ha visto modificada la relación entre pares y la relación pedagógica en las escuelas secundarias a partir de la incorporación de las computadoras provenientes del Programa Conectar Igualdad. Nos interesó particularmente evidenciar si existían diferencias (dentro y fuera de la escuela) en las formas de apropiación de los dispositivos por parte de los jóvenes y comprender cómo diseños pedagógicos y prácticas institucionales recuperan e influyen en las nuevas formas de participación y de construcción de ciudadanía digital.

Este proyecto, involucró en su trabajo de campo estudios de casos en seis provincias argentinas. Los inivito a conocer el material de divulgación que generamos para comunicar los principales hallazgos:



Para descargar el informe completo:
Nuevas Tendencias en Research Gate
Para ver más información sobre el proceso de trabajo, les sugiero visitar el sitio de la investigación:

sábado, marzo 12, 2016

Música robótica

¿Podemos hacer que MBot ejecute una pieza musical? Claro, solo que hay que saber un poquito de música para poder programalo para eso. La placa Arudino viene equipada con un buzzer así que podremos programarla para que emita el sonido que querramos en el tiempo correspondiente. En ese sentido el desafío es más que intersante ya que requerirá tomar muchas decisiones en relación a ciclos que se repiten y a la notación musical.


Para hacerlo más complicado vamos a empezar con la partitura de una melodía que presenta dos finales diferentes… como esta, una canción folklorica polaca llamada “Ja Kujawiak”. ¿Cómo nos organizamos?


Lo primero que nos conviene hacer es reconocer los ciclos. Aquí veremos que tenemos una melodía principal y dos finales diferentes que se ejecutan tras finalizar la melodía principal. Entonces, nos convendrá dividir la canción en tres bloques: “Melodía”, “Final A” y “Final B”. Luego programaremos a Mbot para que ejecute estas tres partes siguiendo el orden indicado por la partitura.
Untitled drawing (1).jpg


Para programar los sonidos, tenemos que recurrir a la escala americana, ya que los bloques de MakeBlock para Scratch ofrecen esa notación. Recordemos entonces los equivalentes de cada nota musical entre el sistema latino y el americano:


Do = C
Re = D
Mi = E
Fa = F
Sol = G
La = A
Si = B


Finalmente, como tendremos que programar la duración de cada nota, es necesario establecer una equivalencia para cada duración. En este caso hemos elegido asignar la duración “half” (medio tiempo) a las figuras de un tiempo (negras) y calcular a partir de allí las notas de mayor y menor duración. De esta forma, le damos un poco más de “velocidad” a la canción.


El resultado puede verse en los tres bloques (Blocks) preparados para cada fragmento musical:





¿Algo no suena bien?
Pero tenemos un problema. Los bloques disponibles en Scratch no admiten semitonos, los cuales, si miramos bien la partitura, son necesarios. Para ello, entonces, necesitaremos modificar los valores en la versión del programa (en modo texto) en Arduino IDE y reemplazar, con mucho cuidado, las frecuencias que se correponden a semitonos. Consultar una tabla de frecuencias como la que incluímos a continuación ayudará a saber cual es el tono exacto para los semitonos:

NOTAS.png


En nuestro caso debíamos reemplazar varios Fa y un Re sostenido. Esto requería cambiar las frecuencias 349 y 294 por 370 y 311 respectivamente… veamos el caso del Fa que debe transformarse en Fa sostenido en el fragmento “Final B”:


void FinalB()
{
   buzzer.tone(349, 250);
   
   buzzer.tone(349, 250);
   
   buzzer.tone(440, 500);
   
   buzzer.tone(392, 250);
   
   buzzer.tone(349, 250);

  buzzer.tone(330, 1000);
   
}

Puede parecer un poco confuso, pero es simple: en estas líneas de código, el primer valor expresa la frecuencia de la nota y la segunda, la duración. Lo que modificaremos es el valor de las frecuencias correspondientes a los semitonos que estamos necesitando.


Ahora que ya hemos resuelto los problemas más serios, podemos incluir en el programa las líneas que nos permitirán establecer el orden en que debe ejecutarse la partitura… y el comando para iniciarlo desde el botón del control remoto. Lo cual, utilizando los bloques predefinidos al inicio, se verá así:


iacuiaia2.png


Finalmente, Mbot puede ejecutar la música… ¡y ya está preparado para resolver otros problemas mucho más complicados!





Este es el cuarto post sobre nuestras experiencias con mBot. Si te intersa conocer como llegamos aquí podés vistar nuestros post anteriores: “Primeras experiencias en robótica educativa”,  “Con ojos de robot” y “¡Alto ahi”: Programando con el control remoto” en este mismo blog.