DIY motorizado móvil carro de cámara timelapse con Arduino (6 / 7 paso)

Paso 6: Software

Para el software entonces! Es un trabajo en progreso, pero usted consigue la idea. El código no es el mejor pero tengo muchos comentarios para la facilidad de hacer cambios. También tenía una versión con bluetooth enviar info a mi teléfono android pero es una exageración...
Así, cuando le da la vuelta el interruptor en una dirección en el otro y si la cámara no ha desencadenado el correspondiente interruptor de láminas la cámara comienza moverse y tomar fotos. Si usted presiona el botón mientras se mueve, la cámara comienza rápido, para propósitos de depuración. También si usted presiona el botón mientras el interruptor de palanca 3-Estado está en middle(-off) es una función de panorama. Las posibilidades de movimientos combinando el servo y dc motor son infinitas.

#include < AFMotor.h >
#include < Servo.h >
#include < SoftwareSerial.h >

MySerial SoftwareSerial (A3, A2); RX, TX

Motor(4) de AF_DCMotor; crear motor #4, pwm de 64KHz
Servo servo;

int swDirFor = 2;    botón de avance
int swDirBack = 3;    Botón atrás
int swStopBeg = 10;  stop1 botón
int swStopEnd = A1;  stop2 botón
int swPhoto = 11;  relé de SW para la foto
int servoPin = 9;  servopin
pasos de int = 100;  paso duración 1200 fotos
int servoPos = 96;  posición media de servo
int servoStart = 20;   posición del servo de arranque
servoStop int = 155;   posición final del servo
int servoPot = A0;  PIN de pote de servo
int noOfSteps = 0;  número de cuenta de los pasos
int swFast = A5; SW para movimiento rápido
int i = 0; //for lazo

void setup() {}

mySerial.begin(9600);
Serial.Begin(9600);  Biblioteca Serial a 9600 bps
servo.Attach(servoPin);  servopin


motor.setSpeed(200);     ajustar la velocidad a 200/255
pinMode(swDirFor,INPUT);
pinMode(swDirBack,INPUT);
pinMode(swStopBeg,INPUT);
pinMode(swStopEnd,INPUT);
pinMode(servoPin,OUTPUT);
pinMode(swPhoto,OUTPUT);
pinMode(servoPot,INPUT);
pinMode(swFast,INPUT);
digitalWrite(swPhoto,LOW);
servoMove(servoPos);

}
///////////////////////////////////////////////////////////////
void loop() {}

Si (mySerial.available()) {}
mySerial.write('a');
mySerial.print ("tope de tecla:");
mySerial.println(digitalRead(swStopEnd));
}

Serial.Print ("estado para el botón:");
Serial.println(digitalRead(swDirFor));
Serial.Print ("espalda de estado botón:");
Serial.println(digitalRead(swDirBack));
Serial.Print ("botón stop Beg:");
Serial.println(digitalRead(swStopBeg));
Serial.Print ("tope de tecla:");
Serial.println(digitalRead(swStopEnd));

Serial.Print ("pote del servo:");
Serial.println(analogRead(servoPot));

Serial.Print ("Fast switch:");
Serial.println(digitalRead(swFast));

servoPos=map(analogRead(servoPot), 0,1024,1,180);
servoMove(servoPos);

movimiento hacia adelante
mientras que ((digitalRead(swDirFor)==1)) {}
Si (digitalRead(swStopEnd)==0) {}
Serial.println ("rotura de sistema de tabicas");
rotura;
} //if cerrar
mientras (digitalRead(swFast)==1) {}
Serial.println("FF");
runMotor(0,1000);
} swFast //while cierre

noOfSteps ++;
runMotor(0,steps);
retardo (750); //final delay(2k-1hour)
takeFoto();
} swDirFor //while) == 1 cierre

movimiento hacia atrás
mientras que ((digitalRead(swDirBack)==1)) {}
Si (digitalRead(swStopBeg)==0) {}
Serial.println ("vacaciones stopBeg");
rotura;
} //if cerrar
mientras (digitalRead(swFast)==1) {}
Serial.println("FB");
runMotor(1,1000);
} swFast //while cierre

runMotor(1,steps);
noOfSteps ++;
servoMove(160);
Delay (1000); retraso //final
takeFoto();
} swDirBack //while) == 1 cierre

movimiento de servo
Si ((digitalRead(swFast)==1)) {}
Serial.println ("mesa sto si");
servoMove(20);
retardo (2000); //time para mover el servo a partir pos
para (i = 20; i < = 155; (i = i + 27)) {
Serial.println ("sto mesa para");
servoMove(i);
Delay(2000);
takeFoto();
Delay(100);
noOfSteps ++;
} //for cerrar
} //if cerrar

Delay(500);
Serial.Print ("pasos:");
Serial.println(noOfSteps);

} //loop cerrar

Rutina de movimiento / / /
{} void runMotor (int dir, int pasos)
interruptor (dir) {}
caso 0:
Serial.println ("hacia delante");
motor.Run(Forward);      convertirlo en el futuro
Delay(STEPS);
motor.Run(release);      dejó de
Serial.println ("parada adelante");
rotura;
caso 1:
Serial.println("Backward");
motor.Run(backward);
Delay(STEPS);
motor.Run(release);
Serial.println ("parada hacia atrás");
rotura;
} //switch cerrar
Delay (100);
} //runMotor cerrar

//Routine foto//////////////////////////////////////////////////
void takeFoto() {}
Delay (500);
Serial.Print ("CLICK!!!");
digitalWrite(swPhoto,HIGH);
Delay(1500);
digitalWrite(swPhoto,LOW);


} //takeFoto cerrar

//Routine servo//////////////////////////////////////////////////
void servoMove (int pos) {}
servo.Write(POS);     Dile el servo a la posición en la variable 'pos'

Serial.Print ("movimiento de servo:");
Serial.println(POS);
Delay(150);                       espera 15ms para el servo a la posición
} //servo cerrar

Artículos Relacionados

¿Cómo utilizar el módulo cámara OV7670 con Arduino?

¿Cómo utilizar el módulo cámara OV7670 con Arduino?

Aquí presentamos un módulo de cámara OV7670 acaba de comprar en línea, incluyendo la comunicación del módulo de la cámara y el Arduino UNO, usar formas de tomar la foto a través del módulo de la cámara y así sucesivamente. Esto es un módulo de cámara
Comedero para pájaros de cámara timelapse con Google Drive, estilo

Comedero para pájaros de cámara timelapse con Google Drive, estilo

En este instructable, haremos una cámara de timelapse con una Raspberry Pi y pegarlo en una pajarera de estilo elegante. Elegir el intervalo de tiempo para cada fotografía de lapso de tiempo, y las fotos se suben automáticamente a Google Drive para a
Zapata DIY desencadenó el Flash de la cámara, de una cámara desechable

Zapata DIY desencadenó el Flash de la cámara, de una cámara desechable

De flashes de las cámaras dará mucho más control sobre la dirección de la iluminación en comparación con un estándar de flash de cámara. Con de flashes de las cámaras, puede acabar totalmente con luz natural o ambiente y recibir sombras de pendiente
Casera DIY proyector móvil

Casera DIY proyector móvil

guyzzz Hey yo m vuelve otra vez con un nuevo instructable sobre hacer un DIY proyector móvil...Cosas necesarias-1) una caja rectangular2) una lupa de tamaño medio3) un teléfono móvil4) un espejo (igual o mayor que el tamaño de la pantalla del móvil)5
Visión de noche DIY viejo móvil

Visión de noche DIY viejo móvil

Hey todo el mundo,Se trata de un paso a paso para tomar fotos como si usted tiene visión nocturna, así que si usted quiere intentar esto con tu nuevo celular, el que uso para todo y es especial para tomar autorretratos, mi consejo es no hacen.Buscar
DIY: Cómo hacer una coilgun de cámara desechable con flash

DIY: Cómo hacer una coilgun de cámara desechable con flash

IntroducciónEste tutorial le mostrará cómo hacer tu propio coilgun de cámara desechable con flash. Parece difícil pero es más fácil de lo que piensa. He construido esta cosa para mi proyecto de la escuela de física y todavía estoy tipo de ocupados in
Radio manía de AtoZ de RC + DIY con ARDUINO

Radio manía de AtoZ de RC + DIY con ARDUINO

Wikipedia define vehículo RC comoUn vehículo de control remoto es cualquier vehículo que es controlado remotamente por un medio que no restringe su movimiento con un origen externo al dispositivo. A menudo se trata de un dispositivo de control de rad
Fotografía timelapse con una cámara réflex digital

Fotografía timelapse con una cámara réflex digital

Si te gusta este instructable, por favor voten por mi en el concurso de fotografía!Fotografía de lapso de tiempo es más fácil que usted piensa, pero es más lento que "fija" y si tratas de averiguar por ensayo y error, la curva de aprendizaje pue
Cámara casera con Webcam CCTV y camara vieja

Cámara casera con Webcam CCTV y camara vieja

Cámara casera con Webcam CCTV y vieja cámara muy barata y fácilPaso 1: Visor de LCD electrónica DIY BRICOLAJE visor LCD electrónico toma de cámara vieja (con visor LCD color) ser cuidadosamentePaso 2: Haga la batería para cámara Hacer para cámara con
PHloat2 DIY agua ácida prueba escultura y kit con arduino

PHloat2 DIY agua ácida prueba escultura y kit con arduino

pHloatpHloat es un kit de bricolaje para uso junto con un microcontrolador arduino seminuevo / preexistente. Su propósito es poner a prueba los niveles de pH en ríos, lagos y arroyos debido a la afluencia de aire y agua contaminación causada a menudo
Wii remoto IR cámara Hack con interfaz Arduino

Wii remoto IR cámara Hack con interfaz Arduino

físicamente a extraemos la cámara IR desde el control remoto Wii e interfaz con un arduino controlar un servo.La cámara de infrarrojos de Wii es una cosa maravillosa. Tiene un procesador integrado que las posiciones X e Y y el tamaño de los 4 puntos
Cámara simple timelapse con Raspberry Pi y una lata de café

Cámara simple timelapse con Raspberry Pi y una lata de café

y desarrollo BerryCam pensé que sería genial crear una cámara de lapso de tiempo que podría ser dejada a la intemperie durante un período de tiempo, para capturar una secuencia de imágenes que podrían ser más adelante se unieron en un clip de vídeo.
Actobotics de pan & tilt de la cámara de seguridad con Arduino

Actobotics de pan & tilt de la cámara de seguridad con Arduino

Hola a todosSe trata de un pan & tilt seguridad cámara proyecto ServocIty/Actobotics pan & tilt sistema. Usar el sistema para vigilar mi casa y la cámara web está conectada a un pc. Este proyecto combina robótica (Servocity), software abierto y ha
¿Cómo convertir una cámara USB con Raspberry Pi en una cámara de IP de Onvif?

¿Cómo convertir una cámara USB con Raspberry Pi en una cámara de IP de Onvif?

IntroducciónEn este instructable, vamos a hacer una nueva solución de cámara interesante, que nunca han visto antes! Me gustaría mostrar cómo puede usted establecer conexión tu cámara USB y frambuesa Pi con cámara SDK. El objetivo es convertir su web