Robótica y videojuegos en la escuela

Es para mi una alegría poder compartir con ustedes la ponencia “Robótica y videojuegos en la escuela”, que fue presentado el 24 de junio del presente,  en el III Congreso Virtual sobre la Educación y TIC – La Escuela del Futuro.

Juan Cadillo

Apuntando al Pensamiento Computacional

A fines del 2012 me tope con un concepto nuevo que se esta insertando al ámbito educativo. Este concepto es el Pensamiento Computacional.  El Pensamiento computacional al margen de sus creadores esta ligado al desarrollo de un conjunto de habilidades como abstraer, resolver problemas, comunicarnos efectivamente, el desarrollo de formas de control y organización, al diseño de sistemas, la comprensión del comportamiento humano, la formación de comunidades si le damos el valor añadido actual en la que existe la computación distribuida y el aprovechamiento de la información dándole valor a través de las redes. A diferencia de otros tipos de pensamientos lógicos o matemáticos, el computacional hace uso del ordenador o por lo menos de  determinados procesos conocidos para computar como son los algoritmos. Este pensamiento nos predispone para usar las herramientas digitales y aprovecharlas efectivamente.

Si le damos un caracter Constructivista podemos apreciar que el niño podrá desarrolla este pensamiento:

Si trabaja participativamente:  Esto se lograr enfatizando el uso de tecnologías nuevas para ayudar a niños a aprender construyendo, investigando activamente y jugando.

Interactuando  con objetos físicos y abstractos: Se requiere algo más que el ordenador para apoyar el desarrollo de maneras concretas de pensar y aprender sobre fenómenos abstractos, por lo tanto debemos interactuar con modelos de simulación y objetos de la vida real. Esto lo podemos lograr usando robots, o en su defecto sensores y actuadores sencillos.

Se Genera conectivismo: Es necesario encontrar relaciones, la computadora es un vehículo que brinda apoyo a maneras nuevas de pensar, de poner en práctica el conocimiento y de formar conexiones personales y epistemológicas con otras áreas de conocimiento (Papert, 2000). Es necesario que se trabaje dentro de un entorno cooperativo.

Autoreflexión:  La programación de una computadora representa un modo poderoso de adquirir una perspicacia nueva sobre cómo funciona la mente y de reflexionar sobre el propio proceso de pensamiento y la propia relación intelectual y emocional con el conocimiento (Papert, 1993; Kafai y Resnick, 1996). Es decir, por ejemplo por medio del proceso de diseñar y reparar defectos de programas informáticos los niños desarrollar pensamiento metacognitico que le permite encontrar isomorfismos para  resolver problemas y aprender.

Terminando esta reflexión les invito a apreciar y comentar el trabajo que se esta realizando en una escuela del Perú; en el video se aprecia como se va avanzando con los  niños en el desarrollo de este tipo de pensamiento mediante la participación, la interacción, la cooperación y la utoreflexión.

Juan Cadillo

Fundamentación del porque los niños deben aprender a programar

Dentro de los  proyectos tecnológicos y de innovación en la Escuela que me he propuesto desde hace varios años, he visto la necesidad de que los niños sea cual sea su orientación futura deben aprender programar, fundamentalmente por que esta es una medio para desarrollar el componente algorítmico necesario para muchas de las actividades que comúnmente realizamos en nuestras vidas; además la programación nos permite aprovechar las ventajas de muchas herramientas adaptándolas a nuestras propias necesidades.

Aquí les presento un video que apoya esta idea ( aunque esta en inglés)

Y el video que acontinuación enlazo es el trabajo que esta semana hemos desarrollado respecto a poder usar una tablet con Android y poder controlar de manera remota un automóvil y un brazo robótico (WEDO) usando las capacidades de conexión remota que trae Scratch.

La relevancia de este trabajo, es que los niños comprenden el funcionamiento de diversos dispositivos, así como los elementos de funcionamiento interno para lograr controlar los diversos artefactos que se vienen construyendo. Por el momento tenemos dos computadoras en el aula y nuestro principal recurso son las OLPC, pero requerimos una par de computadoras más para ofrecer una mayor independencia a los niños y puedan sentirse más libres para super las limitaciones que nos impone el hardware de las OLPC que tenemos desde hace 4 años. Dios quiera que alguna organización nos pueda apoyar con la donación de otros equipos para mejorar el trabajo.

Juan Cadillo

ROBÓTICA Y VIDEOJUEGOS BAJO UNA NUEVA PROPUESTA EN EL AULA

Nos planteamos el reto de desarrollar en los educandos las habilidades del siglo XXI; esta es una tarea que abordamos mediante la búsqueda y materialización de un conjunto de  experiencias enriquecidas. El enfoque es  sistémico, orientado a la solución de problemas para los cuales el sentido de competencia es muy importante; las competencias deben desarrollarse a través del contacto con el entorno, donde entradas y salidas condicionan el actuar del estudiante de manera dinámica. El estudiante debe estar preparado para interactuar con su medio y aportar soluciones a problemas.

 Las herramientas tecnológicas son  un medio facilitador dentro del proceso de enseñanza y aprendizaje posibilitando el enriquecimiento de este proceso y  posibilitando escenarios que apoyen el desarrollo de un grupo de competencias clave para nuestros tiempos (OCDE): El uso interactivo de las herramientas, la interacción entre grupos heterogéneos y actuaren forma autónoma.

 En el uso de las herramientas tecnológicas, el  juego didáctico es un elemento importante, ya que la relación entre juego y aprendizaje es natural; donde la actividad lúdica es atractiva y motivadora permitiendo la comunicación y la activación del aprendizaje.  Dentro de nuestra estrategia de trabajo, el juego didáctico es complementado con el concepto de retos comunicativos, es decir, existe un receptor de la comunicación al que debemos enviar un mensaje a través de canales enriquecidos; esto permite plantearnos  objetivos sobre metas que deben lograr los alumnos como resolver problemas, afianzar conceptos, procedimientos y actitudes.

 Para el trabajo se han ido integrando diversos recursos en el tiempo: títeres, olpc, pizarra digital, kits de robótica, Realidad Aumentada, scanner, intranet, blog, moodle, cámara digital, etc.

 Estos recursos se  han gestionado con una lógica de producir información y no solo consumirla, bajo esa lógica el niño no solo utiliza el video juego sino que se inicia en la construcción de los mismo; aunque simples por limitaciones de edad y  de hardware; están orientados a mostrar facetas de la realidad donde se reproducen reglas, pero a la vez las reglas de la realidad pueden ser modificadas por el argumento, el escenario y la  interactividad.

 Se plantea  dentro del trabajo con la robótica mostrar el funcionamiento de máquinas simples y complejas del proceso industrial que se requiere en nuestro medio,  y en la programación la comunicación mediante el lenguaje de señas, la solución de problemas matemáticos, representación del medio ambiente, entre otros.  A la vez que presentamos un programa de TV3D para representar nuestros avances sin dejar de la lado la realidad aumentada.

Un video que ilustra nuestro avance.

Imágenes para que puedan armar un modelo similar:

Juan Cadillo

Realidad Aumentada algo que puedes hacer en casa o la escuela fácilmente… te lo demostramos

Una de mis mayores pasiones en estos dos último años ha sido poder investigar y desarrollar aplicaciones con realidad aumentada, orientadas a favorecer el desarrollo de diferentes capacidades en los niños. Sin duda a lo largo de este tiempo han aparecido diversas aplicaciones que amplían las posibilidades de este nuevo concepto.

Mi mayor preocupación al inicio era poder crear estas aplicaciones y empoderarlas con la creación de contenido trabajada por los niños y niñas en base a la investigación, la cooperación y el trabajo social en nuestra comunidad. En todos los casos trabajados y que he visto  la realidad aumentada es un elemento motivador que desarrolla habilidades de búsqueda de información, trabajo en equipos, diseño de contenidos, comunicación… y un gran etc. pero los conceptos de como funciona y que hay dentro del backend de esta tecnología quedaban ocultas para los niños. Afortunadamente esto puede cambiar si usamos las posibilidades que ofrece la combinación de diferentes aplicaciones (lenguajes de programación) como Scratch, Etoys aunado a  Wedo (que en este caso lo usamos porque afortunadamente contamos con este recurso). Scratch y Etoys son software distribuidos libremente y sus posibilidades han ido mejorando.

El trabajo con los niños que estoy experimentando a los largo de estos años, es la posibilidad de poder enseñarles programación usando estos lenguajes visuales. La ventaja de estos es que reducen las dificultades propias del código y se centran en la lógica. Sea Scratch o Etoys cada uno tiene ciertas ventajas sobre el otro, pero si aprovechamos ambos las cosas se ponen mucho más interesantes. Es así que Scratch tiene aunado a su código la posibilidad de manejar sensores como los de WEDO, o recibir conexiones remotas; también existen adaptaciones que trabajan con Arduino y dan otras posibilidades. Etoys puede manejar una cámara(en su versión Windows, algo falla en las olpc pese a tener la misma versión) y tiene la posibilidad de enviar mensajes a Scratch.

Entonces la idea que surge es porque no utilizar estas aplicaciones en conjunto y crear una versión que pueda detectar color en Etoys y en base a esta detección enviarle mensajes a   Scratch. Y en Scratch que tiene comandos para WEDO poder mover los motores que trae este set, y eso es lo que estamos haciendo. Para los niños  es algo simple y hasta natural con el tiempo el  poder controlar cosas en base a la programación y entender como funcionan las cosas que usan.

Aquí el video:

Veamos las condiciones necesarias:

  • Tener instalado Etoys la última versión, por que en las anteriores la cámara no funcionaba.
  • Tener Scratch
  • Tener una cámara web (mucho de la calidad depende de tener una buena cámara)
  • Tener una manopla con un color homogéneo que sea diferente a los colores del fondo que usas

Pasos:

En esta primera oportunidad solo trabajaremos con Etoys

Abrir Etoys y comenzar un nuevo proyecto.

abrirEtoys

Ir a provisiones, catálogo de objetos.

abrirCatalogodeobjetosdeprovsiones

Pestaña multimedia y sacar al Mundo el objeto cámara.

multimediaCamara

Por lo general la cámara se activa, puedes agrandar o reducir la imagen (pero hay un máximo según la capacidad o flujo de la cámara y su rango o tamaño).

multimediaCamaraabierta

Pintar un objeto, como el famoso autito de Etoys.

pintarauto

Redirige la dirección del auto con Shift + movimiento del mouse sobre la flecha verde de dirección.

cambiadireccion

Pinta dos círculos, uno que diga atrás y otro adelante con sus respectivas flechas de manera  similar a como se hizo con el auto.

pintaCirculos

Mueve los círculos hacia la imagen.

muevecirculos

Si das click sobre el objeto cámara observarás su halo, ir a menú en la parte superior al lado de la X en el borde izquierdo. Configura la cámara en enviar al fondo, se resiste al avance; y al final del menu también esta la opción de apagar o encender la cámara (off, on).

configurarcamara

Colócate sobre el circulo, saca halo, abrir visor.

visorprogramacion

Saca al Mundo, Prueba Si No

pruebasino

Luego saca de Adelante(si colocaste ese nombre)la orden esta encima de color

encimadecolor

Luego colócate sobre el auto, saca halo, y coloca sobre el guión de Adelante, auto avanza 5, pero cambia ese valor por 10.

pruebasinoautoavanza

Selecciona con el cuenta gotas el color de tu guante, trata de que sea cerca del circulo ya que los colores varían en función de la cantidad de luz y la posición.

cuentagotas

Activa los guiones en el reloj de cada guión y todo terminado, tu primera aplicación de realidad aumentada esta listo para impresionar en casa o el colegio.

scripterminado

Lo último no olvides esconder los guiones para que se vea mejor y acercar el guante para que el carro se mueva adelante o atrás. el reto es mejor el guión para hacer otras cosas.

En posteriores post, les mostrare como interactuar con Scratch y WEDO.  Y si te gusto déjame un comentario.

Juan Cadillo

Aplicando robótica y programación en la Educación

Hablar de robótica en la educación es algo que poco a poco se va dando en las escuelas; como disciplina educativa, es buscar potenciar lo atractivo que resulta para los educandos aprender haciendo. El ambiente que se crea es propicio para el  aprendizaje, ya  que posibilita   integrar diferentes  disciplinas como la matemática, el lenguaje, la física, la lógica, la informática, la electrónica y la mecánica, etc.

La programación es un complemento importante, sin lógica es un mero armar de un rompecabeza en 3D. Por ello es necesario usar con los niños programas que puedan desarrollar esta lógica; para ello podemos usar los programas visuales orientado a objetos como Scratch, Etoys u otros.

Algo importante, dentro de mi experiencia, es iniciar el trabajo con lo niños a nivel de programación y el reconocimiento de los dispositivos y componentes; es preferible no mezclar contenidos con la programación; ya que muchas veces es frustrante que no se avanza ni los contenidos ni el logro de los proyectos de programación o robótica.

Otro elemento importante es la formación de alumnos líderes que apoyen a sus compañeros, esto se puede lograr formándolos en horarios extra escolares o en los recreos. La oportunidad de tener estos alumnos es la posibilidad de que ellos apoyen a sus compañeros y refuercen los mensajes y ordenes impartidas.

Generalmente se habla mucho de la innovación y la creatividad, pero debemos recordar que al inicio los niños deben familiarizarse con el entorno de programación, las piezas y elementos mecánicos. Y solo después de mucho trabajo el estudiante estará realmente en la capacidad de innovar y crear nuevos conceptos. Caso contrario caeremos en un mero  repetir o un recrear cosas sin ton ni son.

A continuación les presento el trabajo que venimos desarrollando para formar a niños en el uso de robots WEDO; para este trabajo se esta utilizando el Scratch instalado en la OLPC. Además para potenciar su uso se esta trabajando con Phyton lo que permite enviar comando de manera remota a otro ordenador con Scratch. Dentro del video se muestra un automóvil que usa dos motores, algo que no se puede hacer con la versión 1.4 de Scratch sino con una versión de la misma para control de dos motores. Además se ha implementado en CSharp el reconocimiento de voz que permite controlar el robot móvil a través de comandos de voz.

Juan Cadillo

 

 

Aprendiendo con Scratch y WeDo en un entorno aumentado

WeDo es una Kit limitado de introducción a la robótica; dentro de sus guías trae como construir y programar de forma guiada 12 modelos robóticos LEGO® sencillos que se pueden conectar al puerto USB. Su entorno visual de programación detecta automáticamente los sensores y motores (Plug and Play), o las propias creaciones robóticas. Pero para ser sinceros creo que pudieron hacerlo más completo; ya que dos motores no pueden ser activados al mismo tiempo algo que sinceramente es frustrante a la hora de querer hacer otras cosas o aplicaciones prácticas con los niños.
Como alternativa los bloques WeDo son compatibles y pueden ser manejas con Scratch, que es un lenguaje gráfico relativamente simple de aprender por su entorno basado en bloques que se sueltan para crear juegos, historias, arte, música, etc.

Al igual que WeDo solo reconoce un solo motor en su versión 1.4, pero existe una versión que puede trabajar hasta con dos motores.

Scratch, al ofrecer muchas otras posibilidades se convierte en un entorno en el que podemos reutilizar los bloques WeDo para enseñar muchos otros conceptos e introducir al alumno en la programación con sensores, el desarrollo de opciones de control de entrada y salida de datos programable que es lo que a manera de piloto estoy trabajando. Paralelamente estoy empeñado en la construcción de una interfaz que me permita usar los sensores en XNA y lograr aunado a OpenCV proyectos con mayores posibilidades de Aumentar la Realidad (sinceramente es un dolor de cabeza manejar la interfaz USB, por mi falta de experiencia con este tipo de programación, pero de trasteo en trasteo voy avanzando día a día).

Con los niños se ha trabajo un juego de conducción de un automóvil. este proyecto usa el sensor de inclinación para conducir un automóvil en el juego y el sensor de distancia para acelerar. Esta aplicación la hemos copiado de (http://scratch.mit.edu/) he iniciado su uso; en los siguientes días espero que los niños comprendan los diferentes bloques de código y empiece a volar su imaginación, logrando en base a disciplina nuestros propios juegos. Ya que el objetivo del trabajo es despertar la motivación por investigar e innovar.

Aquí el video:

Juan Cadillo