// ProportionalControl.pde // -*- mode: C++ -*- // // Make a single stepper follow the analog value read from a pot or whatever // The stepper will move at a constant speed to each newly set posiiton, // depending on the value of the pot. // // Copyright (C) 2012 Mike McCauley // $Id: ProportionalControl.pde,v 1.1 2011/01/05 01:51:01 mikem Exp mikem $ #include // Define a stepper and the pins it will use AccelStepper stepper; // Defaults to AccelStepper::FULL4WIRE (4 pins) on 2, 3, 4, 5 // This defines the analog input pin for reading the control voltage // Tested with a 10k linear pot between 5v and GND #define ANALOG_IN A0 void setup() { stepper.setMaxSpeed(1000); } void loop() { // Read new position int analog_in = analogRead(ANALOG_IN); stepper.moveTo(analog_in); stepper.setSpeed(100); stepper.runSpeedToPosition(); }