DIY gemotoriseerde bewegende timelapse camera dolly met Arduino (6 / 7 stap)

Stap 6: Software


Naar de software dan! Het is een work in progress, maar je krijgt het idee. De code is niet de beste maar ik heb veel opmerkingen voor het gemak van het aanbrengen van wijzigingen. Ik moest ook een versie met bluetooth verzenden info mijn android telefoon, maar het was een overkill...
Zo, wanneer u de schakeloptie in één richting op de andere spiegelen en als de camera niet geleid de corresponderende tot heeft reed switch rietschakelaar de camera begint verplaatsen en nemen van foto's. Als u op de knop drukt terwijl u verplaatst, begint de camera bewegen snel, voor foutopsporing. Ook als u op de knop drukt de tuimelschakelaar 3-state in middle(-off) is is er een panorama-functie. De mogelijkheden van bewegingen combineren de servo en dc motor zijn eindeloos.

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

SoftwareSerial mySerial (A3, A2); RX, TX

AF_DCMotor motor(4); maken van motor #4, 64KHz pwm
Servo de servo;

int swDirFor = 2;    knop volgende
int swDirBack = 3;    Achteruit knop
int swStopBeg = 10;  stop1-knop
int swStopEnd = a1 worden verkregen;  stop2-knop
int swPhoto = 11;  SW relay voor foto
int servoPin = 9;  servopin
int stappen = 100;  Stap duur 1200 fotos
int servoPos = 96;  middelste positie van de servo
int servoStart = 20;   de beginpositie van de servo
int servoStop = 155;   eindpositie van servo
int servoPot = A0;  PIN van servo pot
int noOfSteps = 0;  tellen aantal stappen
int swFast = A5; SW voor snelle beweging
int i = 0; //for-lus

VOID Setup {}

mySerial.begin(9600);
Serial.begin(9600);  instellen van seriële bibliotheek 9600 bps
Servo.attach(servoPin);  servopin


motor.setSpeed(200);     Zet de snelheid naar 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 {}

Als (mySerial.available()) {}
mySerial.write('a');
mySerial.print ("knop stop einde:");
mySerial.println(digitalRead(swStopEnd));
}

Serial.Print ("knop staat voor:");
Serial.println(digitalRead(swDirFor));
Serial.Print ("knop staat terug:");
Serial.println(digitalRead(swDirBack));
Serial.Print ("knop stop Beg:");
Serial.println(digitalRead(swStopBeg));
Serial.Print ("knop stop einde:");
Serial.println(digitalRead(swStopEnd));

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

Serial.Print ("snel schakelaar:");
Serial.println(digitalRead(swFast));

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

voorwaartse beweging
terwijl ((digitalRead(swDirFor)==1)) {}
Als (digitalRead(swStopEnd)==0) {}
Serial.println ("BREAK eindstuk (bruin)");
breken;
} //if sluiten
terwijl (digitalRead(swFast)==1) {}
Serial.println("FF");
runMotor(0,1000);
} //while swFast sluiten

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

achterwaartse beweging
terwijl ((digitalRead(swDirBack)==1)) {}
Als (digitalRead(swStopBeg)==0) {}
Serial.println ("einde stopBeg");
breken;
} //if sluiten
terwijl (digitalRead(swFast)==1) {}
Serial.println("FB");
runMotor(1,1000);
} //while swFast sluiten

runMotor(1,steps);
noOfSteps ++;
servoMove(160);
vertraging (1000); //final vertraging
takeFoto();
} //while swDirBack) == 1 sluiten

Servo verkeer
Als ((digitalRead(swFast)==1)) {}
Serial.println ("mesa sto als");
servoMove(20);
vertraging (2000), //time servo naar pos starten
voor (ik = 20; ik < = 155; (i = i + 27)) {
Serial.println ("mesa sto voor");
servoMove(i);
delay(2000);
takeFoto();
delay(100);
noOfSteps ++;
} //for sluiten
} //if sluiten

delay(500);
Serial.Print ("stappen:");
Serial.println(noOfSteps);

} //loop sluiten

Routine voor beweging / / /
VOID runMotor (int dir, int stappen) {}
schakelaar (acroniem dir) {}
Case 0:
Serial.println ("vooruit");
motor.run(forward);      zet hem op gaan vooruit
delay(Steps);
motor.run(release);      gestopt
Serial.println ("Stop vooruit");
breken;
Case 1:
Serial.println("backward");
motor.run(BACKWARD);
delay(Steps);
motor.run(release);
Serial.println ("Stop naar achteren");
breken;
} //switch sluiten
vertraging (100);
} //runMotor sluiten

//Routine foto//////////////////////////////////////////////////
ongeldig takeFoto() {}
vertraging (500);
Serial.Print ("Klik!");
digitalWrite(swPhoto,HIGH);
delay(1500);
digitalWrite(swPhoto,LOW);


} //takeFoto sluiten

//Routine servo//////////////////////////////////////////////////
VOID servoMove (int pos) {}
Servo.write(POS);     servo naar positie in de variabele 'pos' vertellen

Serial.Print ("servo verhuizing naar:");
Serial.println(POS);
delay(150);                       wacht 15ms voor de servo te bereiken de positie
} //servo sluiten

Gerelateerde Artikelen

Timelapse Camera Birdhouse met Google Drive, Lodge-stijl

Timelapse Camera Birdhouse met Google Drive, Lodge-stijl

In dit instructable, we maken een timelapse camera met behulp van een Raspberry Pi en plak het in een hippe lodge-stijl vogelhuisje. U kiest het tijdsinterval voor elke timelapse-foto, en de foto's worden automatisch geüpload naar Google Drive voor t
PHloat2 DIY zuur water testen sculptuur & kit met arduino

PHloat2 DIY zuur water testen sculptuur & kit met arduino

pHloatpHloat is een DIY kit die is gemaakt voor gebruik in combinatie met een pre-owned / reeds bestaande arduino microcontroller. Het doel is het testen van de pH-niveaus in de lokale rivieren, meren en stromen als gevolg van de toestroom van lucht-
Wii Remote IR Camera Hack met Arduino Interface

Wii Remote IR Camera Hack met Arduino Interface

We fysiek uittreksel van de IR-camera uit de Wii-afstandsbediening en interface het met een arduino beheersen een servo.De Wii IR-camera is een mooi ding. Het heeft een geïntegreerde processor die output van de X- en Y-positie en grootte van de 4 pun
Camera Dolly met K'NEX

Camera Dolly met K'NEX

Ik zal u tonen hoe te bouwen van een camera-dolly uit K'NEX.Stap 1: laat ons bouwen eerste blaadje In de afbeelding ziet u de benodigde onderdelen van K'NEX voor het eerste blad. Sluit de onderdelen zoals u van de foto's zien kunt. Je moet bouwen 3 b
DIY PC van Android Bluetooth gamepad met arduino leonardo

DIY PC van Android Bluetooth gamepad met arduino leonardo

Zelfstudie en test video:Link naar de App uitvinder en Arduino bestand in youtube video beschrijving.Stap 1: Lijst met bedrading en spelen -Arduino Leonardo (leonardo bestuur hebben toetsenbord en de muis emulatie. Im met behulp van pro micro)-Blueto
Draadloze pan en tilt camera tuig met arduino

Draadloze pan en tilt camera tuig met arduino

Dit is een kleine arduino project met de NRF24L01 draadloze Transceivers modules ans 2 servomotoren.het tuig is gecontroleerd door een draadloze joystick en het een camera, laser, of wat die u maar kunt bedenken over kan houden.Stap 1: vereistenverei
DIY digitale RPM Tachometer | RPM teller met Arduino

DIY digitale RPM Tachometer | RPM teller met Arduino

Hi Folks, ben ik het schrijven van dit artikel voor het delen van mijn nieuwste project DIY RPM toerenteller of je kunt zeggen RPM teller. Tijdens het maken van een project vaak moeten we controleren motorsnelheid en we moeten RPM Tachometer die rond
DIY kroonluchter - LED Flower blossoms (gecontroleerd met Arduino)

DIY kroonluchter - LED Flower blossoms (gecontroleerd met Arduino)

dit is een stap voor stap over hoe ik de LED Flower Blossoms gemaakt. Ik maakte 30 hiervan aan het maken van een kroonluchter.Dit was een workshop gehouden in The Edge in Brisbane, dat deel van de State Library van Queensland uitmaakt.U kunt de macht
Het maken van een DIY borstelloze Gimbal met Arduino

Het maken van een DIY borstelloze Gimbal met Arduino

Dit is een verhaal van mijn derde project met goedkope gyro en Arduino.Na de eerdere twee projecten, Gemakkelijk omgekeerd slinger en 3D kalligrafie, ik gedacht heb van het maken van Camera Gimbal met Arduino. Dan had ik drie beleidsregels voor het p
Eenvoudige Dolly met delen van de 3dprinted

Eenvoudige Dolly met delen van de 3dprinted

In dit Instructable die ik zal u tonen hoe bouwde ik een eenvoudige dolly thats vrij stabiel maar belangrijkste vrij goedkoop om te bouwen. Voor alle onderdelen wordt ik betaalde minder dan 20€ en als u enkele rollerblades wielen rondslingeren thuis
DIY gemotoriseerde Pan/Tilt/Dolly HDSLR Video Mount (Camera schuifknop)

DIY gemotoriseerde Pan/Tilt/Dolly HDSLR Video Mount (Camera schuifknop)

DIY gemotoriseerde Pan/Tilt/Dolly HDSLR Video monteren van Brad Justinen op Vimeo.Update September 2013: wat begon als een hobby is uitgegroeid tot iets vrij serieus.  We zijn de lancering van een open-source filmische motion control-rig klaarmaken. 
DIY gemotoriseerde LEGO Camera Dolly

DIY gemotoriseerde LEGO Camera Dolly

Goedkoop, gemakkelijk op te bouwen, en het eigenlijk werkt! Wat is niet graag?Hier is een voorbeeld video schot met behulp van mijn mobiel op deze zelfgemaakte gemotoriseerde LEGO camera dolly.Stap 1: onderdelen 1 x Cellphone beugel $1.501 x 1/4-20 s
Het gebruik van de Module van de Camera van de OV7670 met Arduino?

Het gebruik van de Module van de Camera van de OV7670 met Arduino?

Hier introduceerden we één module van de camera van de OV7670 net gekocht online, met inbegrip van de mededeling van de cameramodule en Arduino UNO, met behulp van de manieren om te nemen van de foto via cameramodule, enzovoort. Dit is een cameramodu
DIY Bluetooth telefoon gecontroleerd BB-8 Droid met Arduino UNO

DIY Bluetooth telefoon gecontroleerd BB-8 Droid met Arduino UNO

Ik ben een grote fan van Star Wars en toen zag ik de Star Wars: The Force ontwaakt dacht ik dat ik behoefte aan een BB-8 droid. Het was geweldig hoe dit kleine gebied verplaatst in de film. Dus heb ik besloten dat ik moet dit droid die is gebaseerd o