In diesem Beitrag möchte ich dir zeigen, wie du einen Servomotor vom Typ SG90 am Arduino UNO R3 mit Open Roberta Lab programmierst. Es gibt den Servomotor mit einer Grove Schnittstelle, jedoch ist bei diesem das Preis-Leistungsverhältniss wie ich finde nicht erfüllt und daher verwende ich diesem Beitrag einen normalen 3poligen Servomotor.
Wie du Sensoren & Aktoren im Open Roberta Lab für den Arduino UNO R3 programmierst, habe ich dir bereits in einigen Beiträgen auf diesem Blog, wie nachfolgend aufgelistet, gezeigt.
- Grafische Programmierung mit Open Roberta
- Open Roberta #5 – Grove Button
- Open Roberta #6 – Grove Drehpotentiometer
- Open Roberta #7: Wechselblinker mit Drehpotentiometer
- Open Roberta #11 – Flammensensor
Inhaltsverzeichnis
- Benötigte Ressourcen für den Aufbau der Schaltung
- Aufbau der Schaltung am Arduino UNO R3
- Programmieren eines Servomotors in Open Roberta Lab
Benötigte Ressourcen für den Aufbau der Schaltung
Wenn du die nachfolgende Schaltung mit dem Servomotor am Arduino nachbauen möchtest, dann benötigst du:
- einen Arduino UNO R3,
- ein USB-Datenkabel,
- einen Servomotor Typ SG90,
- einen Drehpotentiometer,
- ein paar Breadboardkabel,
- ein 170 Pin Breadboard
Aufbau der Schaltung am Arduino UNO R3
Wie du einen Servomotor am Arduino programmierst, habe ich dir bereits im Beitrag Arduino, Lektion 16: Servo ansteuern gezeigt. Zusätzlich möchte ich noch einen Drehpotentiometer einbauen, um den Winkel über diesen zu setzen.
Hier nun eine kleine Tabelle mit den Anschlüssen der Komponenten am Arduino UNO R3:
Komponente | Arduino UNO R3 |
---|---|
Drehpotentiometer | |
Pin 1 | GND |
Pin 2 | analog A0 |
Pin 3 | 3.3 V |
Servomotor | |
braun | GND |
rot | 5 V |
orange | digitaler PWM Pin 9 |
Programmieren eines Servomotors in Open Roberta Lab
Als Erstes bauen wir die Schaltung in dem Reiter Roboterkonfiguration nach.
Wenn dieses geschehen ist, dann können wir das kleine Programm zusammen klicken.
Den Wert des Drehpotentiometers lesen wir wieder aus und mappen diesen auf den Winkel.
In unserem Fall haben wir den Drehpoti am 3.3V Pin angeschlossen und somit müssen wir den Wert
durch 3.77 (679 / 180 = 3.77) teilen. Wenn du den Drehpoti jedoch über 5 V angeschlossen hast, dann musst du den Wert durch 5.68 teilen (1023/180 = 5.68).
Zusätzlich gebe ich noch die berechneten / ermittelten Werte auf der seriellen Schnittstelle aus. Mit dem kostenfreien Tool Putty kannst du dich dann zu deinem Mikrocontroller verbinden und dir die Daten dort dann anzeigen lassen.