Ein Servo ist ein Motor mit integriertem Potentiometer, was es erlaubt, die Stellung des Motors zu steuern. Hierfür wird ein PWM-Signal an die Eingangsleitung des Servo-Motors angelegt, deren Duty-Cycle (das Verhältnis zwischen aktiver und inaktiver Zeit) die gewünschte Motorstellung festlegt.
Der Code findet sich unter „Servo → Knob“. Hier muss jedoch der PWM-Pin für den Servo angepasst werden. Alternativ schließt man den Servo an Pin 9 des Arduino an.
// Controlling a servo position using a potentiometer (variable resistor) // by Michal Rinott <http://people.interaction-ivrea.it/m.rinott> #include <Servo.h> Servo myservo; // create servo object to control a servo int potpin = 0; // analog pin used to connect the potentiometer int val; // variable to read the value from the analog pin void setup() { myservo.attach(3); // attaches the servo on pin 3 to the servo object } void loop() { val = analogRead(potpin); // reads the value of the potentiometer (value between 0 and 1023) val = map(val, 0, 1023, 0, 179); // scale it to use it with the servo (value between 0 and 180) myservo.write(val); // sets the servo position according to the scaled value delay(15); // waits for the servo to get there }