Arduino controla cabeza madera animatronic (lámpara) (2 / 27 paso)

Paso 1: Arduino temas cubiertos en este Instructable (inc. el Arduino Sketch)

usé un tablero UNO en este proyecto.
http://Arduino.CC/en/Main/arduinoBoardUno

He tratado de incluir las cuestiones del meollo que se presentan en la práctica. Este proyecto abordó dos principales retos de Arduino:

  • Servo control - cómo utilizar secuencias de comandos de Arduino para convertir una entrada física en algo que se controla mecánicamente la posición de un objeto físico en 2 dimensiones (ojos!)
  • Una lámpara simple circuito - cómo llegar de Arduino para convertir la señal de entrada y hacer que encienda una luz y ajustar su luminosidad (dimmer)

La comunidad de Arduino es inmensa (tanto en tamaño como en amabilidad!). Este proyecto reconoce a todas las personas que le dan a él.

El servo de secuencias de comandos se basan en 'Servo.h - biblioteca basada en la interrupción de Servo para Arduino usando 16 bits temporizadores-versión 2'
por Michael Margolis.  ¡ Respeto!

http://code.Google.com/p/Arduino/Source/Browse/trunk/Libraries/servo/servo.h?r=1088

El sketch de Arduino completado se incluye aquí para referencia. Pasó con 10 versiones para llegar a esto.
No hay nada muy sofisticado. Los comentarios de la escritura explican lo que está haciendo.

En pasos posteriores en este Instructable, he añadido Comentarios extra ampliados sobre el código en el contexto de medidas específicas (por ejemplo, para los controles servo para los globos oculares)

Este es un sketch de ".ino". Este es un formato de Arduino más adelante. Comenzó como un ".pde"

/*
Cabezal de lámpara - sketch de arduino para el control de un control remoto de cabeza de la lámpara de lectura
Andrew Lewis de enero de 2012
Este código es de dominio público.
El servo de secuencias de comandos se basan en Servo.h - interrumpir biblioteca Servo conducido por Arduino usando 16 bits temporizadores-versión 2 por Michael Margolis.  ¡ Respeto!

http://code.Google.com/p/Arduino/Source/Browse/trunk/Libraries/servo/servo.h?r=1088

Versión 10
Esta versión utiliza tres potenciómetros (potes) como entradas por cable a través de los rieles de voltaje (que varían de 0 a 5V).
La variable de salida de voltaje de cada uno por separado, control de 2 servos y 2 LEDs (operando como un par)
La tensión es leída por el arduino por 3 entradas analógicas (1 por maceta)
Las salidas de Arduino los servos son de pines digitales, que utilizan modulación de pulso para controlar la tensión de salida.
La alimentación es un estándar 5V, 2A. Debe tener esta cantidad de corriente para alimentar los servos y LEDs de alta potencia
*/

DEFINIR LAS LÁMPARAS

establecer números de pin de la lámpara
const int lampPin = 5; declara el número de pin de entrada analógica para la señal - en
const int ledPinEyes = 3;      el número del pin de salida de LED para el globo ocular LEDs - hacia fuera
int valLamp = 0; variable para leer las entradas analógicas del interruptor para activar luces

FINAL DE LÁMPARAS

DEFINIR SERVOS

#include < Servo.h > / / incluye arduino estándar servo clase
int delay_val = 5;  asigna el desfase del incremento del servo (retraso entre valores) para ambos servos

SERVO 1
Servo myservo;  crear objeto servo para controlar un servo
const int potPin1 = 0;  declara que pin analógico se utiliza para conectar la salida de voltaje variable analógica del potenciómetro 1 (servo control 1)
int valPot1;    variable para leer el valor del pin analógico de servo 1

SERVO DE FINAL 1

SERVO 2
Servo myservo2; crear el segundo objeto servo para controlar un servo de segunda
const int potPin2 = 1;  declara que pin analógico se utiliza para conectar la salida de voltaje variable analógica del potenciómetro 2 (servo controles 2)
int valPot2;    variable para leer el valor del pin analógico de servo 2
SERVO DE FINAL 1

SERVOS
void setup() {}
pinMode (lampPin, entrada);  configura pin digital como entrada para la señal de entrada de encendido/apagado LED (para ojos)

pinMode (ledPinEyes, salida); / / esto es la salida que enciende las luces o de

Conecte los servos
myservo.Attach(5);  se fija el servo en el pin 5 al objeto servo
myservo2.Attach(9); segundo servo se conecta al pin 9 al segundo objeto servo
}

void loop() {}
lampCheck(); / / comprobar lámpara entrada y ajustar el brillo
servoCheck(); busque entradas servo y ajustar en consecuencia la posición
}

void servoCheck() {}
controles servo

Servo 1---
valPot1 = analogRead(potPin1);            Lee el valor del potenciómetro (valor entre 0 y 1023)

digitalWrite (ledPinJoystick, HIGH);

valPot1 = mapa (valPot1, 50, 1000, 0, 179);     la escala a utilizar con el servo (valor entre 0 y 180)
myservo.Write(valPot1);                  ajusta la posición del servo según el valor de escala
Delay(delay_val);

---final del servo 1
// servo 2 ------------------------
valPot2 = analogRead(potPin2);            Lee el valor del potenciómetro (valor entre 0 y 1023)

digitalWrite (ledPinJoystick, HIGH);
valPot2 = mapa (valPot2, 50, 1000, 0, 179);     la escala a utilizar con el servo (valor entre 0 y 180)
myservo2.Write(valPot2);               ajusta la posición del servo según el valor de escala
Delay(delay_val);
---final del servo 2
acabar con controles servo * /
}
funciones de la lámpara * /
void lampCheck() {}
valLamp=analogRead(lampPin);
valLamp = mapa (valLamp, 20, 1023, 0, 255);     la escala a utilizar con el servo (valor entre 0 y 180)
valLamp = restringir (valLamp, 0,255);
analogWrite (ledPinEyes, valLamp);
}

Artículos Relacionados

Arduino controla el temporizador de cocina

Arduino controla el temporizador de cocina

Todos ustedes deben han experimentado esto que tienes algo cocinan sobre su cocina por el otro lado conseguir ocupado viendo la televisión o conseguir una conversación profunda que te das cuenta en la detección de un olor que completamente fue estrop
Idea - cabeza de la lámpara de iluminación

Idea - cabeza de la lámpara de iluminación

¿Quieres crear a un Einstein brillante cabeza de la lámpara que el idiota lo menos técnicamente educado puede hacer?En unos pocos pasos les mostraré cómo crear este objeto, usando principalmente un cortador del laser y una impresora 3D.Paso 1: Materi
Arduino controla el faro

Arduino controla el faro

Resumen:A menudo he pensado que un faro de un gran proyecto para un Arduino, y decidí probar con uno de los faros locales aquí en Erie, Pennsylvania como inspiración. Elegí el Norte Pierhead Faro que custodia la entrada a la bahía de la isla de Presq
Hackeado Hexbug araña Arduino Control

Hackeado Hexbug araña Arduino Control

Este proyecto tiene hexbug araña basada en Arduino robot comprobaré. El sistema de control completa nuestro proyecto proporcionando tanto por teléfono y la computadora.http://make.robimek.com/Arduino-control-Hexbug-Spider/Paso 1: materiales:Hexbug ar
La introducción de Climaduino - el termostato basado en Arduino controlas desde tu teléfono!

La introducción de Climaduino - el termostato basado en Arduino controlas desde tu teléfono!

Actualización:Hay una nueva versión de la Climaduino y el Climaduino con algunos cambios muy significativos.Soporta múltiples zonasUtiliza el Arduino YúnTrabaja con aire acondicionado CentralSe comunica mediante el protocolo MQTT (se puede integrar c
Arduino controla la tira RGB LED para el salón

Arduino controla la tira RGB LED para el salón

La idea detrás de este pequeño proyecto fue que alguna luz indirecta bastante humor en la sala de estar. Es controlado por el servidor de openHAB (que el proyecto todavía está en la lista que se añade a este sitio) instalado en un Raspberry Pi. Por s
¿Arduino controla ATX fuente de alimentación

¿Arduino controla ATX fuente de alimentación

un microcontrolador controlar su propio poder?  Bueno casi!Una alimentación de ATX de la fuente, ya sea nueva o de una PC vieja, es una gran manera para alimentar el Arduino y otros proyectos de microcontrolador.  Que se cubre en varios ' ibles como
Arduino Control remoto luces con mando a distancia Universal

Arduino Control remoto luces con mando a distancia Universal

ha estado buscando en automatización del hogar por algún tiempo, pero no comprometidos con él todavía principalmente por el precio. El año pasado (2010) me compré estas salida de control remoto, interruptores de encendido/apagado por lo que podría da
Arduino controla puede trituradora con lectura LCD.

Arduino controla puede trituradora con lectura LCD.

Siempre he querido hacer un instructable, pero nunca tuve una idea algo original que no ha sido hecha millones de veces, o algo que no tenía medios de construcción. Tengo algunos amigos que reciclan aluminio y después de ver las grandes bolsas de una
Arduino controla carillones de viento

Arduino controla carillones de viento

Los efectos calmantes de campanadas normalmente dependen del viento, pero este carillón de viento es Arduino powered.En lugar de esperar a que el viento a soplar, es posible excitar a una serie de tubos afinadas mediante solenoides controlados por un
Arduino controla colmena fumigador / ambientador de aire

Arduino controla colmena fumigador / ambientador de aire

Dentro del caos relativo de mi arreglos domésticos, tengo un pequeño oasis de orden perfecto. Una cosa que puedo llamar 'organizado' y totalmente funcional. Una cosa que puedo tocar y saber que es confiable y listo para la acción en un aviso de momen
Barato Arduino control tomas de luz - ingeniería RF inversa

Barato Arduino control tomas de luz - ingeniería RF inversa

Costo de bombillas Smart su primogénito Hijo. Que es una lástima, porque luces inteligentes abre un enorme potencial para domótica, ahorro de energíay todo tipo de proyectos interesantes.Si sólo había una manera de controlar sus luces sin romper el B
Arduino controla perro alimentos/dispensador

Arduino controla perro alimentos/dispensador

En este Instructables describe cómo construir un dispensador de tratar alimentos de perro automático utilizando un Arduino Duemilanove (el Uno es la versión más reciente de la misma Junta). El intervalo de temporizador se puede ajustar mediante un po
Arduino Steve - un Minecraft Animatronic

Arduino Steve - un Minecraft Animatronic

ResumenCon frecuencia hago Introducción a la electrónica para grupos - y después de la teoría del camino - esto es divertido proyecto para ver la teoría en la práctica. Con una poca preparación (pre impreso documentos) se puede completar en menos de