#include <AccelStepper.h>
#include <Servo.h>
// Define stepper motor connections and motor interface type
#define dirPin1 2
#define stepPin1 3
#define dirPin2 4
#define stepPin2 5
int stepsPerRotation = 200;
int increaseStep = 500;
// Define servo motor pin
#define servoPin1 9
#define servoPin2 10
// Create stepper motor instances
AccelStepper stepper1(AccelStepper::DRIVER, stepPin1, dirPin1);
AccelStepper stepper2(AccelStepper::DRIVER, stepPin2, dirPin2);
// Create servo motor instance
Servo servo1;
Servo servo2;
void setup() {
Serial.begin(9600);
// Set max speed and acceleration for stepper motors
stepper1.setMaxSpeed(1000);
stepper1.setAcceleration(500);
stepper2.setMaxSpeed(1000);
stepper2.setAcceleration(500);
// Attach the servo motor
servo1.attach(servoPin1);
servo2.attach(servoPin2);
servo1.write(0); // Initialize the servo at 0 degrees
servo2.write(0); // Initialize the servo at 0 degrees
}
void loop()
{
servo1.write(0);
servo2.write(0);
delay(500);
stepsPerRotation += 200;
stepper1.moveTo(-stepsPerRotation);
stepper2.moveTo(stepsPerRotation);
while (stepper1.distanceToGo() != 0 || stepper2.distanceToGo() != 0) {
stepper1.run();
stepper2.run();
}
servo1.write(90);
servo2.write(90);
delay(2000);
}