Cómo hacer un control remoto inteligente web-títere por hacking Twitter, Google, Skype, Arduino y procesamiento! (4 / 16 paso)

Paso 3: Utilizando Arduino para el control de acciones físicas basadas en los datos recibidos (con código)

Una vez que los datos habían sido extraídos de la web con el bosquejo de procesamiento, un microcontrolador Arduino utilizado para activar la cabeza de Twitr_janus. Los datos se convierten en señales de control de servos dentro de cabeza de Twitr_janus, que mueve sus ojos y la mandíbula. Esto se explica a continuación...

Arduino está haciendo varias cosas:

  • Está conectado al ordenador principal - digitalmente mediante una conexión USB y también con entrada analógica de la salida de audio de la computadora
  • Mantiene una conexión de puerto serie con el equipo maestro, sobre el cual está constantemente busca nuevo control digital de datos que ha sido enviado por Internet a la computadora principal.
    >>>
    Esta línea es hacer la conexión en serie de Arduino...
    Serial.Begin(115200);

    Esta línea está llamando a una rutina que comprueba la conexión fo rdate...
    checkSerial ();
    <<<

  • Comprueba cada 10-30 segundos y compara los datos entrantes a la última acción recibida y sólo actúa en él, si es diferente.
    >>> void checkSerial)
    {
    Comprueba si hay una conexión...
    si (Serial.available() > 0) {

    Lee los datos...
    incomingByte = Serial.read();
    }

    Si los datos son 30, se activará la rutina de Twitter (twitterCheck()...
    si (incomingByte == 30) / /
    {

    twitterCheck();
    }

    Si los datos están entre 0 y 25, datos de Google, así que llame a la función de control de Google - googleCheck()
    si ((incomingByte < = 25) & & (incomingByte > 0)) / / google datos están datos codificados como un entero entre 0 y 25
    {
    googleCheck();
    } else {/ / no hay punto de llamar a las funciones de verificación si no recibidos los datos en serie. Esta es la cláusula de control de errores
    Serial.println ("recibí nada");
    }
    } / / enf de checkSerial
    <<<

  • Si se reciben nuevos datos, iluminará las verrugas del indicador en su frente. Estos están iluminados por LEDs.

    Una verruga naranja se ilumina cuando Google datos (entero entre 0 y 25) se ha recibido, los datos se utilizan para colocar los servos y se desactiva la verruga azul
    >>>
    googleCheck() vacío
    {
    digitalWrite (twitterFlagPin, bajo);
    eyeLeftRight = 2*(incomingByte-1);
    eyeUpDown = (2 * incomingByte) -1;
    Si (incomingByte < = 25)
    {
    digitalWrite (googleFlagPin, HIGH);
    servoLeftRight.write(eyePos[eyeLeftRight]);
    servoUpDown.write(eyePos[eyeUpDown]);
    }
      }

    <<<

    Una verruga azul se ilumina cuando los datos de Twitter ha sido recibido (entero 30) y se desactiva la verruga naranja
    >>>
    void twitterCheck)
    {
    Esta función
    digitalWrite (twitterFlagPin, HIGH);
    digitalWrite (googleFlagPin, bajo);
    }

    <<<

  • Convertirá los datos entrantes del globo ocular en uno de varios valores de control de posición determinado para cada uno de los dos servos dentro de la cabeza. Uno para arriba/abajo, de izquierda. Utiliza la librería servo.h de Arduino para hacerlo
    >>>
    Los datos que se utilizan para acceder a datos desde una matriz que ha determinado los valores en ella (estos son los valores de servo)
    int eyePos [] = {115, 60, 115, 60, 115, 90, 115, 115, 115, 115, 115, 60, 115, 60, 115, 90, 115, 115, 115, 115, 90, 60, 90, 60, 90, 90, 90, 115, 90, 115, 60, 60, 60, 60, 60, 90, 60, 115, 60, 115, 60, 60, 60, 60, 60, 90, 60, 115, 60, 115};

<<<
  • Activará la mandíbula doblaje mediante el control de la entrada de audio analógica. Utiliza detección de picos de voltaje para hacer esto. Si la onda de sonido se eleva por encima de un umbral determinado, la mandíbula se abre, y será por la fuerza a cerrar si el voltaje cae por debajo del umbral. Esto da una agradablemente sorprendente staccato.
    >>>
    analogPeakCheck() vacío
    {
    Esta función se utiliza si utiliza audio salida de un amplificador analógico en el pin analógico 0
    valueAnalogIn = analogRead(analogInput); Esto es comprobación de salida sobre un voltaje del umbral para desencadenar la señal de la mandíbula
    Si (valueAnalogIn > thresholdAnalogIn)
    {
    digitalWrite (speechFlagPin, HIGH);
    digitalWrite (speechFlagPinLED, HIGH);

    }
    Else {}
    digitalWrite (speechFlagPin, bajo);
    digitalWrite (speechFlagPinLED, bajo);

    } / / fin comprobación de umbral / /
    }

    <<<

  • El código individual de control de Arduino es una adaptación de código básico en arduino.cc/

    Descargar el completo Arduino Sketch

    El sketch de Arduino completado está disponible para descargar aquí en GitHub como archivo de texto:
    http://Cloud.github.com/downloads/rosemarybeetle/Twitr-Janus/twitr_janus_arduino_09.txt

    Para la visión fácil, aquí es un facsímil de la imagen del texto completo

    Artículos Relacionados

    Cómo hacer un CONTROL REMOTO UNIVERSAL DIY

    Cómo hacer un CONTROL REMOTO UNIVERSAL DIY

    https://www.youtube.com/watch?v=HUv4y56Uwzs&feature=youtu.bePaso 1: Hacer un CONTROL REMOTO UNIVERSAL bricolaje necesita!!!!!! En el video de hoy voy a compartir una idea genial sobre como hacer un control remoto universal DIY.Para hacer un DIY de co
    Hacer propio control remoto personalizado para su proyecto

    Hacer propio control remoto personalizado para su proyecto

    Hice un proyecto que utiliza un arduino y un IR eliminar biblioteca para controlar un par de cosas.Tan en este instructable le muestro cómo puede reutilizar un control remoto para su propósito en.Y no necesita algo de fantasía para hacer un control r
    Cómo hacer un control remoto Stunt coche control en casa

    Cómo hacer un control remoto Stunt coche control en casa

    En este Instructable, aprenderemos a hacer un artilugio increíble que cada individuo deseaba y había también por lo menos intentado una vez hacer durante su infancia. No es más que un coche de control remoto y adivina qué, en este instructable, no va
    Control remoto inteligente de luces

    Control remoto inteligente de luces

    El concepto de luces inteligentes es concepto muy innovador, que satisface nuestras necesidades con el consumo de energía mínimo.Con este proyecto puede hacer una luz que puede ser dado vuelta encendido usando un Control remoto. Aparte de encender y
    RGB control remoto (pinguino + web + linksys)

    RGB control remoto (pinguino + web + linksys)

    este proyecto tiene varios usos, básicamente es una forma de controlar un grupo de LED RGB (tricolores con masa común) vía una página web para seleccionar que color queremos mostrar.Puede ser una forma de armonizar una habitación, cambiar el color de
    Android Smart teléfono Bluetooth Control remoto inteligente Smart auto 51 MCU (código STC89C52)

    Android Smart teléfono Bluetooth Control remoto inteligente Smart auto 51 MCU (código STC89C52)

    al principio del año nuevo, Robot inteligente coche aficionados y estudiantes (como todos) sobre la ingeniería, ciencia y tecnología están ocupados con la preparación para las competiciones de robots ahora.Es el gran momento para mostrar al mundo su
    Cómo hacer tu control remoto ATV

    Cómo hacer tu control remoto ATV

    lo siento por cualquier ortografía o gramática a volver a editar más tarde. Quería conseguir este.vídeos del robot se pueden encontrar en: http://www.phantasm1.com/videos.htmlEcha un vistazo a ver Ladibug en acción.Mi primer paso fue quitar todas las
    Conceptos básicos de convertir su vehículo de control remoto en un sistema autónomo (abejón) utilizando un Arduino

    Conceptos básicos de convertir su vehículo de control remoto en un sistema autónomo (abejón) utilizando un Arduino

    comencé este proyecto con el objetivo de convertir barato mi RC helicóptero en algo de un UAV o al menos para algunos sensores para reducir las colisiones y otros "haps mal."Ahora por desgracia al principio del proyecto calcularon mal las capaci
    Hacer una Web conectada Robot (por unos $500) (utilizando un Arduino y un Netbook)

    Hacer una Web conectada Robot (por unos $500) (utilizando un Arduino y un Netbook)

    este Instructable le mostrará cómo construir tu propio Robot conectado de Web (usando un microcontrolador Arduino y Asus eee pc).¿Por qué quieres un Robot conectado Web? Para jugar con, por supuesto. Conduce tu robot de en toda la habitación o en tod
    Cámara de Control remoto para hacer primavera 2015

    Cámara de Control remoto para hacer primavera 2015

    Este instructable fue creado en cumplimiento de la exigencia de proyecto de la Makecourse de la Universidad de South Florida (www.makecourse.com). Este proyecto incluye los pasos necesarios para crear la cámara de control remota.Paso 1: Paso 1: el si
    Control remoto de Arduino DIY y Lego RC vehículo!!!!

    Control remoto de Arduino DIY y Lego RC vehículo!!!!

    Actualizar (29/08/13): lectores gracias por sus palabras de entusiasmo y tipo con respecto a este proyecto! Ha sido un viaje tremendo desde que comencé este proyecto en marzo, pero estoy muy contento con el producto resultante y el entusiasmo con que
    Frambuesa Pi + WebCam + control remoto controlador de inicio

    Frambuesa Pi + WebCam + control remoto controlador de inicio

    WebCam + casa control remoto IRHarware:1. HomeWebCam2. IR Remote Control3. frambuesa Pi¿Cómo hacer?Ver arriba fotos¿Cómo funciona?Utilice su inicio WemCam Software control y vista.Cuando el puntero láser punto a dispositivo, control remoto para encen
    Estación de Control remoto IR para Android - baje la TV

    Estación de Control remoto IR para Android - baje la TV

    Nota: esta guía también puede encontrarse en TECHBITAR.COMACTUALIZACIÓN28 de noviembre de 2013: Aparece en prototipos peligroso http://goo.gl/FjwNoQINTRODUCCIÓNEn esta guía voy a explicar la elaboración y operación de un circuito simple de basados en
    Control remoto de Arduino (arco)

    Control remoto de Arduino (arco)

    En este proyecto, vamos a hacer un Control remoto de Arduino (ARC) que descifra cualquier control remoto de infrarrojos (IR) en hexadecimal o en cualquier otro formato y utilizarlo para encender LED ON/OFF!Es un proyecto bastante fácil y puede hacers