Metainformationen zur Seite
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
faecher:informatik:schrecksekunde:servo [2018/03/12 10:54] m.lange |
faecher:informatik:schrecksekunde:servo [2018/04/17 20:53] (aktuell) m.lange alte Version wiederhergestellt (2018/03/16 21:11) |
||
---|---|---|---|
Zeile 14: | Zeile 14: | ||
Wie du siehst, hat so ein Servomotor drei Kabel: ein gelbes, ein rotes und ein braunes.\\ | Wie du siehst, hat so ein Servomotor drei Kabel: ein gelbes, ein rotes und ein braunes.\\ | ||
- | Zwei der drei Kabel sind für die Stromversorgung da: das rote und das braune. Das gelbe Kabel ist für die Bewegung des Servomotors vorgesehen. | + | Zwei der drei Kabel sind für die Stromversorgung da: das rote und das braune (in der Zeichnung ist das **braune** Kabel **schwarz**.). Das gelbe Kabel ist für die Bewegung des Servomotors vorgesehen. |
Der Servomotor kommt zwar mit 5 V aus, benötigt aber relativ viel Strom. Daher schließen wir das **rote** Kabel **nicht** am 5 V-Kontakt an, sondern an //VIN//. Dieser Kontakt ist unten ganz rechts.\\ Das braune Kabel kommt entweder direkt an den Kontakt //GND// oder an eine der beiden waagerechten Leiste, die mit //GND// verbunden sind.\\ | Der Servomotor kommt zwar mit 5 V aus, benötigt aber relativ viel Strom. Daher schließen wir das **rote** Kabel **nicht** am 5 V-Kontakt an, sondern an //VIN//. Dieser Kontakt ist unten ganz rechts.\\ Das braune Kabel kommt entweder direkt an den Kontakt //GND// oder an eine der beiden waagerechten Leiste, die mit //GND// verbunden sind.\\ | ||
Zeile 20: | Zeile 20: | ||
{{ :faecher:informatik:schrecksekunde:arduino-servo.png }} | {{ :faecher:informatik:schrecksekunde:arduino-servo.png }} | ||
- | <note important> x </note> | + | <note important> Achte darauf, dass das rote und braune Kabel wirklich korrekt angeschlossen sind. Sonst könnten der //Arduino// oder Servomotor irreparablen Schaden nehmen. </note> |
- | ===== Ziel erreicht ===== | + | |
- | ===== Weitere Ideen ===== | + | Fehlt noch, wie man dem Arduino mitteilt, wohin er sich bewegen soll. Dazu kannst du das folgende Programm verwenden: |
+ | <code cpp> | ||
+ | #include <Servo.h> | ||
+ | Servo myservo; | ||
+ | |||
+ | void setup() { | ||
+ | myservo.attach(2); | ||
+ | } | ||
+ | |||
+ | |||
+ | void loop() { | ||
+ | myservo.write(180); | ||
+ | delay(2000); | ||
+ | myservo.write(0); | ||
+ | delay(2000); | ||
+ | } | ||
+ | </code> | ||
+ | |||
+ | Über die gelbe Datenleitung teilt der //Arduino// dem Servomotor mit, wie weit er sich drehen soll. Der Servomotor schafft bauartbedingt nur eine halbe Umdrehung, was dem Winkel 180 ° entspricht. Zuerst fährt der Servomotor aber in seine Ausgangslage, die 0 ° entspricht. Eine ganze Umdrehung wären 360 °, die ist aber - wie erwähnt - nicht machbar für diese Art von Motor. | ||
+ | |||
+ | Schaue dir den **loop**-Bereich an: | ||
+ | <code cpp> | ||
+ | void loop() { | ||
+ | myservo.write(180); | ||
+ | delay(2000); | ||
+ | myservo.write(0); | ||
+ | delay(2000); | ||
+ | } | ||
+ | </code> | ||
+ | |||
+ | Dort siehst du, dass dem Servomotor mitgeteilt wird, er solle in die Ausgangslage fahren. Damit er das kann, muss eine kurze Zeit gewartet werde. Die hier angegebenen 2 Sekunden sind dafür viel mehr als ausreichend.\\ | ||
+ | Dananch wird der Servomotor angewiesen, in die anderen Endposition zu fahren. Danach wird ebenfalls eine kurze Zeit gewartet. | ||
+ | ===== Ziel erreicht ===== | ||
+ | **Herzlichen Glückwunsch! Du weißt nun, wie man mit dem //Arduino// einen Servomotor ansteuert.** | ||
+ | ===== Weitere Ideen ===== | ||
+ | Wenn du noch Zeit hast, knnst du folgendes ausprobieren: | ||
+ | * Lasse den Servomotor nicht den ganzen Weg fahren, sondern nur einen Teil. | ||
+ | * Lasse den Servomotor sich im [[faecher:informatik:schrecksekunde:sekundentakt|Sekundentakt]] einen Teil vorwärts bewegen. | ||
+ | * Simuliere einen Scheibenwischer (im Auto). Baue dazu einen Taster mit ein. "Wische", wenn der Taster das Wischen eingeschaltet hat. Dazu kannst du das Programm [[faecher:informatik:schrecksekunde:taster#vollstaendiges_programm_mit_taster|mit der Leuchtdiode und dem Taster]] erweitern. Statt der Leuchtdiode verwendest du einfach den Servomotor. Alternativ findest du das Scheibenwischerprogramm auch [[faecher:informatik:schrecksekunde:scheibenwischer|hier]]. | ||
====== Wie geht's weiter? ====== | ====== Wie geht's weiter? ====== | ||
+ | Weiter geht's mit dem [[faecher:informatik:schrecksekunde:zusammenbau|Zusammenbau des Messgerätes]]. |