Is there a way to program a servo so the delay causes it to pick up speed or reduce speed as it moves to the position?
In 3d animation terms you would have to add curves to a body movement for it to look like natural human motion.
The delays below would control the servo arm speed but at a steady rate.
Is there any code that lets you pick a motion curve for each movement along with the speed?
// Sweep from 0 to 180 degrees:
for (angle = 0; angle <= 180; angle += 1) {
myservo.write(angle);
delay(15);
}
// And back from 180 to 0 degrees:
for (angle = 180; angle >= 0; angle -= 1) {
myservo.write(angle);
delay(30);
}