Skip to content

Instantly share code, notes, and snippets.

@careyi3
Created June 7, 2022 17:50
Show Gist options
  • Save careyi3/1dccdc8e31437ed04d5c2625c00ea8d4 to your computer and use it in GitHub Desktop.
Save careyi3/1dccdc8e31437ed04d5c2625c00ea8d4 to your computer and use it in GitHub Desktop.
Simple demo code for a camera slider: https://www.thingiverse.com/thing:5405269
#include <AccelStepper.h>
const int speed = 700;
const double accl = 0.05;
AccelStepper stepper = AccelStepper(AccelStepper::DRIVER, DD3, DD2);
long prev_speed;
void setup()
{
stepper.setMaxSpeed(speed);
prev_speed = 0;
}
void loop()
{
int x = analogRead(A2);
x = map(x, 0, 1023, -1*speed, speed);
x = accl*x + (1-accl)*prev_speed;
if (x > speed/10 || x < -speed/10) {
stepper.setSpeed(x);
} else {
stepper.setSpeed(0);
}
stepper.runSpeed();
prev_speed = x;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment