Kleine Modellbau-Servos lassen sich mit dem Arduino steuern.
ACHTUNG!
Zur Schaltung geht es nur, wenn Sie bei TINKERCAD angemeldet sind!
Hier melden Sie sich an:
Modellbau-Servos werden über eine Pulsweiten-Modulation (PWM) angesteuert (orangenes Kabel). Über die Breite der Pulse wird der Winkel, auf den der Servoarm gestellt werden soll, gesteuert. Das rote Kabel wird mit 5 V am Arduino verbunden und das braune Kabel mit „ground“.
Die PDF-Dateien zum Ausdrucken als Schüler-Arbeitsblätter
sind auf Technik-online verfügbar.
Hier steuert das Potentiometer die Stellung eines Servos:
Der Wert des Potentiometers wird an A5 eingelesen, umgerechnet und als Einstellwinkel an den Servo gesendet. Die Umwandlung in ein korrektes PWM-Signal übernimmt dabei die Arduino Servo Library.
// Servo Library einbinden
#include <Servo.h>
// Neues Servo Objekt erstellen
Servo myservo;
// Wert des Potentiometers hier speichern
int val;
// setup() wird einmal zu Programmbeginn ausgeführt
void setup()
{
// Servo an Pin 9 koppeln
myservo.attach(9);
// Serielle Kommunikation starten
Serial.begin(9600);
}
// loop() wird endlos wiederholt
void loop()
{
// Stellung des Potentiometers an Anlog-Eingang 5 auslesen
val = analogRead(5);
// 10-bit Wert des Analogeingangs (0-1023) in Winkel 0-180 umrechnen
val = map(val, 0, 1023, 0, 180);
// Errechneten Winkel zur Kontrolle an den PC übertragen (Seriellen Monitor starten!)
Serial.println(val);
// Einstellwinkel in Grad an das Servo-Objekt schicken
myservo.write(val);
// Kurze Pause, damit der Servo die neue Position anfahren kann
delay(50);
}
Wenn Du die Schaltung wie oben ausgeführt hast,
- verbinde den Arduino mit dem Computer
- starte das Arduino-Programmfenster
- lösche den Text im Fenster
- kopiere den CODE (oben rechts) und füge ihn in das leere
Programmfenster ein
- klicke auf Hochladen
Nun kannst Du das Servo mit dem Potentiometer steuern.