#include <Servo.h>
Servo tiltServo; // Servo for tilt
Servo panServo; // Servo for pan
Servo rollServo; // Servo for roll
const int tiltPot = A0; // Potentiometer for tilt
const int panPot = A1; // Potentiometer for pan
const int rollPot = A2; // Potentiometer for roll
const int shutterButton = 2; // Push button for shutter
void setup() {
// Attach servos to digital pins
tiltServo.attach(3);
panServo.attach(5);
rollServo.attach(6);
// Configure button pin
pinMode(shutterButton, INPUT_PULLUP);
// Initialize Serial Monitor
Serial.begin(9600);
}
void loop() {
// Read potentiometer values
int tiltValue = analogRead(tiltPot);
int panValue = analogRead(panPot);
int rollValue = analogRead(rollPot);
// Map potentiometer values to servo angles (0 to 180 degrees)
int tiltAngle = map(tiltValue, 0, 1023, 0, 180);
int panAngle = map(panValue, 0, 1023, 0, 180);
int rollAngle = map(rollValue, 0, 1023, 0, 180);
// Set servo positions
tiltServo.write(tiltAngle);
panServo.write(panAngle);
rollServo.write(rollAngle);
// Check if the shutter button is pressed
if (digitalRead(shutterButton) == LOW) {
Serial.println("Shutter pressed!");
// Add shutter control code here (e.g., trigger camera capture)
}
// Delay to allow servos to reach the position
delay(15);
}