INHALT
Der Arduino-Servomotor ist ein wichtiges Element bei der Entwicklung verschiedener Roboter und Mechanismen. Er ist ein präziser Stellantrieb, der über ein Feedback verfügt, das eine genaue Steuerung der Bewegungen ermöglicht. Betrachten wir den Aufbau und das Funktionsprinzip des Servomotors. Analysieren wir einfache Codebeispiele für die Steuerung eines Servos unter Verwendung eines Potentiometers und eines Druckknopfes.
Bestandteile:
- Arduino Uno / Arduino Nano / Arduino Mega
- Servomotoren
- Dupont-Kabel
Servomotoren werden häufig verwendet, um die mechanischen Bewegungen von Robotern zu simulieren. Ein Servomotor besteht aus einem Sensor (Geschwindigkeit, Position usw.), einer Antriebssteuereinheit aus einem mechanischen System und elektronischen Schaltkreisen. Die Getriebe der Vorrichtung bestehen aus Metall, Karbon oder Kunststoff. Kunststoffgetriebe können schweren Belastungen und Stößen nicht standhalten.
Servo motor Arduino pinout, datasheet
Merkmale des Servomotor 9g (datasheet)
- Stromversorgung: 4,5 – 6 V
- Drehmoment: 1,2 kg/cm bei 4,5 V – 1,4 kg/cm bei 6 V
- Geschwindigkeit: 0,12 Sek./60° bei 4,5 V – 0,10 Sek./60° bei 6 V
- Drehung: 180°
Der Stellantrieb hat ein eingebautes Potentiometer, das mit der Abtriebswelle verbunden ist. Wenn sich die Welle dreht, ändert sich die Spannung am Potentiometer. Die Karte analysiert die Eingangssignalspannung und vergleicht sie mit der Spannung am Potentiometer. Je nach der erhaltenen Differenz dreht sich der Motor gleichmäßig, bis die Ausgangsspannung und die Spannung am Potentiometer gleich sind.
Wie man einen Servomotor an Arduino anschließt
Der Anschluss des Servomotors an den Arduino ist wie folgt: Das schwarze Kabel ist mit GND verbunden, das rote Kabel mit 5V und das orange/gelbe Kabel mit dem allgemeinen digitalen Pin. Die Steuerung der Servomotoren mit dem Arduino ist recht einfach. Beachten Sie, dass die Servomotoren 180°- und 360°-Schwenkwinkel haben, was bei der Entwicklung von Projekten mit dem Arduino-Mikrocontroller berücksichtigt werden muss.
Programm für Servomotoren mit dem Arduino ansteuern
#include "Servo.h" Servo servo; void setup() { servo.attach(9); } void loop() { servo.write(0); delay(1000); servo.write(90); delay(1000); servo.write(180); delay(1000); }
- Der Befehl servo.attach(9) bindet den Servo an den digitalen Ausgang 9 des Arduino;
- In der Funktion void loop() lassen wir den Servomotor um 0-90-180 Grad drehen.
Wie man zwei Servomotoren an Arduino anschließt
Die Steuerung der Drehgeschwindigkeit des Servomotors ist recht einfach, wenn Sie mit den for-Schleifen in der Arduino-Programmiersprache vertraut sind. Sehen wir uns an, wie man mit Hilfe von Schleifen sanfte Servo-Drehungen von 0 bis 90 Grad durchführen kann. Das Beispiel auf dieser Seite ermöglicht es Ihnen, den Servo in verschiedenen Projekten zu verwenden, in denen eine gleichmäßige Drehung erforderlich ist.
Programm für die sanfte Drehung von Servomotoren
#include "Servo.h" Servo servo1; Servo servo2; void setup() { servo1.attach(9); servo2.attach(10); } void loop() { for (angle = 0; angle <= 90; angle++) { servo1.write(angle); delay(20); } for (angle = 90; angle >= 0; angle--) { servo1.write(angle); delay(20); } for (angle = 0; angle <= 90; angle++) { servo2.write(angle); delay(20); } for (angle = 90; angle >= 0; angle--) { servo2.write(angle); delay(20); } }
- Der maximale Winkel für eine gleichmäßige Drehung des Mikroservos beträgt 180°;
- Durch Erhöhung der delay(20); können Sie die Drehgeschwindigkeit verlangsamen.
Schlussfolgerung. Servomotoren werden häufig in Arduino-Projekten verwendet, um verschiedene Funktionen auszuführen: Drehen von Strukturen, Bewegen von Mechanismen. Da der Servomotor ständig versucht, einen bestimmten Drehwinkel beizubehalten, müssen Sie mit einem erhöhten Stromverbrauch rechnen. Dies macht sich vor allem bei batteriebetriebenen autonomen Robotern bemerkbar.
Schreibe einen Kommentar