Ein Servomotor verfügt über eine interne Regelung, sodass von außen nur eine Position angeben werden muss, die er dann selbstständig anfährt und hält (trotz Krafteinwirkung). Er kann dadurch nur genaue Positionen anfahren, ist aber nicht für endloses Drehen ausgelegt. Ein Servomotor wird direkt oder mithilfe des Grove Shields an einen Arduino angeschlossen und über Pulsweitenmodulation (PWM) angesteuert.
Der Linearservomotor ist ein spezieller Servomotor, der für lineare Bewegungen konzipiert ist. Er kann somit kleine Vor- und Rückwärtsbewegungen ausführen.
Entsprechende Projektbeispiele und Tutorials sind über alle gängigen Suchmaschinen durch die Eingabe der genauen Komponentenbezeichnungen zu finden. Hierbei ist die Eingabe des Stichworts „Linear Servomotor“ entscheidend.
#include <Servo.h> Servo myservo; // erstellt ein Servo-Objekt, um einen Servomotor zu steuern int potpin = 0; // Analog Pin, an dem das Potentiometer angeschlossen ist int val; // Variable um den Wert des Analogen Pin zwischenzuspeichern void setup() { myservo.attach(9); // verknüpft den Servomotor an Pin 9 mit dem Servo-Objekt } void loop() { val = analogRead(potpin); // liest das Potentiometer aus (Wert zwischen 0 und 1023) val = map(val, 0, 1023, 0, 180); // rechnet den Wert in den Wertebereich des Servomotors (zwischen 0 und180) myservo.write(val); // überträgt die Zielposition an den Servomotors delay(15); // lässt dem Servomotor Zeit, die Zielposition zu erreichen }
Wichtige Links für die ersten Schritte:
Projektbeispiele:
Weiterführende Hintergrundinformationen:
ZU ALLEN MATERIALIEN