III Feria de la Ciencia en Rivas

Estaremos en la III Feria de la Ciencia de Rivas. Una oportunidad muy buena para saber qué se “cuece” en nuestra ciudad.

Animatrónico impresora 3D: seguimos con las pruebas de ojos y párpados

Nuestr@s chic@s siguen trabajando con los ojos y los párpados del animatrónico. Vamos programando en arduino funciones sencillas con el objetivo de probar cómo se mueven:

  • Ojos izquierda-derecha:
    • Mover ojos izquierda
    • Mover ojos derecha
    • Centrar ojos
  • Ojos arriba-abajo:
    • Mover ojos arriba
    • Mover ojos abajo
    • Centrar ojos arriba-abajo
  • Párpados
    • Párpado derecho cerrado
    • Párpado derecho semi-cerrado
    • Párpado derecho abierto
    • Párpado izquierda cerrado
    • Párpado izquierdo semi-cerrado
    • Párpado izquierdo abierto
  • Guiños
    • Guiño ojo derecho
    • Guiño ojo izquierdo

Veamos algunos ejemplos:


Pruebas manuales de movimiento de ojos de animatrónico de Santi

Pruebas movimiento ojos animatrónico de Ángel

Pruebas de guiño de ojos animatrónico de Luís

Pruebas movimiento de ojos animatrónico de Melania

mbot: misión sigue líneas

El mBot dispone de dos motores independientes: M1 es el motor izquierdo y M2 es el motor derecho.

mbot

El algoritmo que utilizaremos para implementar este programa es el siguiente:

  1. Si el sensor sigue-líneas devuelve el valor 0: ambos módulos (izquierdo y derecho) del sensor se encuentran sobre la línea negra. El vehículo se encuentra sobre la línea y entonces ambos motores (M1 y M2) deben avanzar hacia delante con velocidad 100.
  2. Si el sensor sigue-líneas devuelve el valor 1: el módulo derecho del sensor se encuentra fuera de la línea y entonces el vehículo debe girar a la izquierda para tratar de meterse en la línea.  Para girar a la izquierda el motor izquierdo M1 se detiene (velocidad=0) mientra el motor derecho M2 avanza hacia delante con velocidad 100.
  3. Si el sensor sigue-líneas devuelve el valor 2: el módulo izquierdo del sensor se encuentra fuera de la línea y entonces el vehículo debe girar a la derecha para tratar de recuperar la línea. Para girar a la derecha el motor izquierdo M1 avanza hacia delante con velocidad 100 mientra el motor derecho M2 se detiene (velocidad=0).
  4. Si el sensor sigue-líneas devuelve el valor 3: ambos módulos del sensor se encuentran fuera de la línea. Si hemos partido de una posición inicial o anterior en la cual el mbot estaba sobre la línea negra, esto significa que ha perdido la línea y por tanto retroceder hacia atrás puede permitir recuperarla. Para que el vehículo retroceda hacia atrás ambos motores (M1 y M2) se mueven hacia atrás con velocidad 100.

mbot

Algoritmo de seguimiento de líneas mejorado:

En este desafío se propone mejorar el rendimiento de seguimiento de la línea por parte del mBot. Para ello adoptaremos el criterio “optimista”: mientras no pierda contacto con la línea negra (valor del sensor igual a 0, 1 u 2) seguiremos avanzando hacia delante. Por otra parte cuando pierda el contacto total con la línea negra (valor del sensor igual a 3) entonces se decide afinar el tipo de movimiento a realizar en función de la desviación acumulada. Recuerda que en el ejemplo anterior cuando el sensor devolvía el valor 3 entonces se programaba simplemente un retroceso hacia atrás. Para guardar la desviación acumulada utilizaremos una variable desviacionAcumulada. 

mbot

Reglas

  1. Si el ValorSensorLinea=0 entonces Avanzar y desviacionAcumulada = 10. El valor 10 de la variable desviacionAcumulada indicará que NO se ha producido desviación ni a derecha ni a izquierda.
  2. Si el ValorSensorLinea=1 entonces Avanzar y Si desviacionAcumulada es mayor que 1 entonces restar 1. El valor inferior a 10 de la desviacionAcumulada indicará que se ha producido una desviación a la derecha del móvil respecto a la línea.
  3. Si el ValorSensorLinea=2 entonces Avanzar y Si desviacionAcumulada es menor que 20 entonces sumar 1. El valor superior a 10 de la desviacionAcumulada informará que se ha registrado una desviación a la izquierda del móvil respecto a la línea.
  4. Si el ValorSensorLinea=3 (se ha perdido contacto pleno con la línea) entonces …
    • Si desviacionAcumulada es igual a 10 entonces Retroceder. No se ha producido ninguna desviación por lo que se puede recuperar la línea volviendo para atrás.
    • Si desviacionAcumulada es menor que 10 entonces Girar Izquierda. Se registra desviación a la derecha del móvil por lo que se puede resolver girando a la izquierda.
    • Si desviacionAcumulada es mayor que 10 entonces Girar Derecha. Se ha detectado desviación a la izquierda del móvil y se puede solucionar girando a la derecha.

mbot

Ahora veamos algunos de los vídeos de nuestros chic@s.

Siguelíneas de Álvaro

Siguelíneas de Sara

Animatrónico impresora 3D: primeras pruebas con los ojos

Vamos avanzando en la construcción del animatrónico 3D. Por ahora nos encontramos en la primera fase, en la que el objetivo es controlar los ojos y los párpados gracias a 4 motores:

  • Un motor para mover los ojos de izquierda a derecha.
  • Un motor para mover los ojos de arriba hacia abajo
  • Un motor por cada ojo para abrir y cerrar párpados

Aquí os dejamos algunas fotos del progreso de nuestr@s chaval@s

Y ahora las primeras pruebas de los movimientos.

 

 

¡Funciona!

Estuvimos en Radio Cigüeña

Radio Cigüeña nos invitó a participar en el programa ByPass. La verdad es que fue una experiencia bonita y entrañable. Os dejamos unas fotos y, como no, el enlace al podcast: https://www.ivoox.com/14-02-19-en-bypass-entrevista-a-asociacion-de-audios-mp3_rf_32634444_1.html

 

mbot: misión encerrado con programa reducido

Esta vez hemos intentado reducir los casos a los que se enfrenta el robot para no salirse de la línea negra.

Originalmente:

  • 0 es el valor que devuelve cuando ambos módulos se encuentran sobre superficie negra.
  • 1 cuando el módulo derecho se encuentra sobre superficie blanca y el módulo izquierdo no.
  • 2 cuando el módulo izquierdo se encuentra sobre superficie blanca pero el módulo derecho no.
  • 3 cuando ambos módulos se encuentran sobre superficie blanca.

Ahora:

  • 0, 1 ó 2 cuando toca con alguno de los sensores la línea negra.
  • 3 cuando ambos módulos se encuentran sobre superficie blanca.

Veamos uno de los resultados.

 

mbot: misión encerrado

Para la detección de líneas se hace uso de los sensores sigue-líneas.

kids programming language

kids programming language

 

El sensor sigue-líneas que incorpora el mBot puede devolver 4 valores en función de que ninguno de los 2 módulos que lo forman, o bien uno de ellos, o bien los dos a la vez se encuentren registrando que se encuentran sobre una superficie blanca.

mbot mbot mbot mbot

  • 0 es el valor que devuelve cuando ambos módulos se encuentran sobre superficie negra.
  • 1 cuando el módulo derecho se encuentra sobre superficie blanca y el módulo izquierdo no.
  • 2 cuando el módulo izquierdo se encuentra sobre superficie blanca pero el módulo derecho no.
  • 3 cuando ambos módulos se encuentran sobre superficie blanca.

 

kids programming language

 

Vamos a ver cómo les ha quedado a nuestr@s chic@s.

 

 

 

Y claro, no siempre ha funcionado…

 

Animatrónico impresora 3D: comenzando con el diseño y la impresión del animatrónico

Después de prácticar con programas de diseño 3D como tinkercad, nos hemos lanzado a realizar modificaciones en el animatrónico y, por supuesto, a imprimir la piezas.

 

Aquí os dejo una cuantas fotos

 

 

 

mbot: misión evitar obstáculos

Para realizar esta misión hemos utilizado el sensor de ultrasonidos conectado al puerto 3 de la placa del mBot. Es un sensor de ultrasonidos que detecta la distancia a un obstáculo.

mbot

El vehículo se moverá hacia delante en línea de recta a velocidad constante (100) mientras no encuentre ningún obstáculo. Cuando se aproxime un obstáculo a una distancia inferior a 10 cm se detendrá, se moverá durante 0.5 segundos hacia atrás, girará a la derecha durante 0.5 segundos y continuará su movimiento hacia delante en línea recta a velocidad constante hasta que encuentre otro obstáculo.

mbot

Por supuesto, mezclamos estos comportamientos con ell uso de luces y sonidos.

Aquí vemos el ejemplo que hizo Sara.

 

 

mbot: misión semáforo

Bueno, después de montar el mbot, de conocer sus componentes y de juguetear con él, ha llegado el momento de programarlo.

Para ello hemos comenzado con el manejo de los leds incluidos en el mbot con el objetivo de hacer un semáforo.

Os dejo aquí una serie de vídeos en los que podéis ver las explicaciones de alguno de nuestros chic@s.