Robobo giratorio

 

Introducción

En el tutorial #3 vimos un primer ejemplo de interacción táctil con Robobo, es decir, cómo el robot puede reaccionar si tocamos su cara.

En este tutorial continuaremos trabajando este aspecto con Robobo, y ahora aprenderás cómo provocar una respuesta predefinida cuando tocamos la cara de una determinada manera.

¡El desafío es crear un Robobo giratorio!

Desafío

Creación de un programa que hace que Robobo reaccione al tacto y a los gestos en su cara (pantalla del smartphone). Si mueves el dedo sobre la pantalla (fling) hacia la derecha o la izquierda, Robobo debe girar la cabeza hacia la derecha o la izquierda respectivamente y encender los LED (un color a la derecha y otro a la izquierda).

Solución

Una posible solución a este desafío es la siguiente, aunque existen muchas otras. ¿Cuál es la tuya?

Ver fuente
from robobopy.Robobo import Robobo
from robobopy.utils.LED import LED
from robobopy.utils.Color import Color
from robobopy.utils.Emotions import Emotions
from robobopy.utils.Sounds import Sounds

# Modifica la siguiente línea
robobo = Robobo('10.113.36.163')
robobo.connect()
 
robobo.resetFlingSensor()
robobo.setEmotionTo(Emotions.NORMAL)
robobo.setLedColorTo(LED.All, Color.OFF)
robobo.movePanTo(0, 15)
 
while True:
    robobo.wait(0.01)
    angle = robobo.readFlingAngle()
    if angle > 0:
        if (angle < 90)or(angle > 270):
            robobo.setEmotionTo(Emotions.SURPRISED)
            robobo.setLedColorTo(LED.All, Color.BLUE)
            robobo.movePanTo(-50, 30)
        else:
            robobo.setEmotionTo(Emotions.SURPRISED)
            robobo.setLedColorTo(LED.All, Color.MAGENTA)
            robobo.movePanTo(50, 30)
        robobo.movePanTo(0, 15)
        robobo.setEmotionTo(Emotions.LAUGHING)
        robobo.playSound(Sounds.LAUGH)
        robobo.resetFlingSensor()
        robobo.wait(1)
        robobo.setLedColorTo(LED.All, Color.OFF)
        robobo.setEmotionTo(Emotions.NORMAL)

Desafío adicional

Cuando hayas completado el desafío «Robobo Giratorio», te proponemos uno nuevo donde complicamos un poco la reacción de Robobo. ¿Listo? El objetivo es crear un programa en el que Robobo mueva la cabeza hacia adelante/atrás (TILT) o gire el cuerpo (moviendo las ruedas) a la derecha/izquierda (PAN) según el ángulo del gesto de lanzamiento que hagas en la pantalla del smartphone.

Robobo
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.