Paso 9: electrónica
Para este proyecto estoy utilizando una placa Arduino de controlador escribió un completo instructivo aquí-
Esto funciona muy bien para esta aplicación pero siéntase libre de utilizar cualquier Arduino quiere-ahí es diagramas que muestra cómo de alambre de cualquier manera. El citado instructivo muestra cómo crear, programar y usar la placa de control Arduino estoy usando. Los servos son alimentados por cuatro pilas recargables "AA". Pienso montar pequeños interruptores para las pilas "AA" y la celda de LiPo para que sea fácil de encender y apagar.
Utilicé un conector JST hembra pequeño para la celda de LiPo y luego por cable un interruptor con un JST extensión cable-este cableado se conecta directamente a la tarjeta controladora y facilita girar el regulador de encendido y apagado sin tener que desconectar constantemente la célula LiPo ya que los conectores JST LiPo pueden ser algo frágiles. Si está utilizando un Arduino estándar (Uno, Deumilanove, etc.) no es necesario hacer este cableado arnés - sólo cable un interruptor entre un transistor de 9V y su Arduino y eres bueno para ir.
Para conectar las pilas "AA" solo uso dos pines de una mujer rompen encabezado para crear un juego de cables con un interruptor en línea - esto le permitirá que enchufe la batería directamente en la tarjeta controladora (o una placa proto si está cableado a un Arduino estándar) - observar la polaridad! La tarjeta controladora se monta en una placa de madera contrachapada pequeño y se fija en el interior del casco con Velcro, como son las baterías.
Cada LED de 10mm tiene una resistencia de 100 Ohm soldada a su positivo y entonces están cableados en paralelo. Los LEDs se pegan en la corte por los titulares de LED en los zócalos del ojo cabeza usando una pistola de pegamento. Estos deben pegar después de que el casco está pintado.
Echar un vistazo a simple super el cableado diagrama-es. Los servos se conectan como sigue:
Perno de cabeza de pequeño servo digital salida 9
Servo de cabeza de lado derecho (mirando a la cabeza) - digital pin de salida 8
Servo principal del lado izquierdo (mirando a la cabeza) - digital pin de salida 7
Servo de ventilador del lado derecho (mirando a la cabeza) - digital pin de salida 6
Servo de ventilador del lado izquierdo (mirando a la cabeza) - digital pin de salida 5
LED ojos-ambos conectar al pin de salida digital 11
Aquí está el código para utilizar - solo copia y pega esto en tu ventana de Arduino. Esto es un simple código que sólo funciona los servos y los LEDs a través de una secuencia una y otra vez. Así cuando usted está usando el casco no tiene que preocuparse por lo que es hacer solo tirón que los interruptores y ya está bueno para ir. No dude en jugar con las posiciones del servo pero tenga cuidado de no hacerlos moverse demasiado o se unen y posiblemente tira un engranaje o puesto y hacer mucho ruido.
#include < Servo.h > / / incluye la librería servo
Servo1 servo; crea una instancia del objeto servo para controlar un servo
Servo servo2;
Servo servo3;
Servo servo4;
Servo servo5;
int servoPin1 = 9; pin de control de servo
int servoPin2 = 8;
int servoPin3 = 7;
int servoPin4 = 6;
int servoPin5 = 5;
const int ledPin = 11;
int ledState = bajo; variable utilizada para almacenar el estado del pasado, para cambiar la luz
void setup() {}
servo1.Attach(servoPin1); se fija el servo en el pin al objeto servo
servo2.Attach(servoPin2);
servo3.Attach(servoPin3);
servo4.Attach(servoPin4);
servo5.Attach(servoPin5);
}
void loop()
{
fundidos de min a max en incrementos de 5 puntos:
para (int fadeValue = 0; fadeValue < = 255; fadeValue += 5) {}
establece el valor (rango de 0 a 255):
analogWrite (ledPin, fadeValue);
Espere 30 milisegundos ver el efecto de atenuación
Delay(30);
}
servo1.Write(90); el número entre paréntesis indica el servo qué posición para ir a
servo2.Write(50);
servo3.Write(120);
servo4.Write(90);
servo5.Write(90);
Delay(1000); espera un segundo
servo1.Write(60);
servo4.Write(100);
servo5.Write(80);
Delay(1000);
servo1.Write(70);
servo2.Write(90);
servo3.Write(110);
Delay(1000);
servo4.Write(70);
servo5.Write(110);
Delay(2000); Espere dos segundos
servo2.Write(55);
servo3.Write(85);
Delay(2000);
servo1.Write(90);
servo2.Write(90);
servo3.Write(90);
servo4.Write(90);
servo5.Write(90);
se descoloran hacia fuera de max a min en incrementos de 5 puntos:
para (int fadeValue = 255; fadeValue > = 0; fadeValue-=5) {}
establece el valor (rango de 0 a 255):
analogWrite (ledPin, fadeValue);
Espere 30 milisegundos ver el efecto de atenuación
Delay(40);
}
Delay(3000); espere tres segundos
}
Una vez que estés contento con cómo está funcionando todo lo puede pegar en las Asambleas del ventilador usando una pistola de pegamento para pegar la placa trasera (donde está montado el servo ventilador) en el tubo. No pegar la placa que quieras que sea fácil quitar si necesita reemplazar un servo o un engranaje.