44 lines
2 KiB
C++
44 lines
2 KiB
C++
#include <ESP32Servo.h>
|
|
|
|
#define SERVOPIN 16 // Pin an dem der Servomotor angeschlossen ist. 'GPIO' muss man weglassen -> also nicht GPIO88 sondern nur 88.
|
|
#define SERVO_45GRAD_LINKS 136 // Wert um den Servo 45 Grad nach links zu drehen ... der kann je nach Servo anders sein
|
|
#define SERVO_45GRAD_RECHTS 45 // Wert um den Servo 45 Grad nach rechtss zu drehen ... der kann je nach Servo anders sein
|
|
#define SERVO_0GRAD_MITTE 90 // Wert um den Servo in die Mitte zu drehen ... der kann je nach Servo anders sein
|
|
|
|
Servo myservo; // ein Servo-Objekt anlegen, um den Servo Motor steuern zu können
|
|
|
|
void setup() {
|
|
|
|
Serial.begin(115200); // Serial Monitor aktivieren. Mit dem Monitor kann man sich Werte und Meldungen anzeigen lassen.
|
|
|
|
myservo.attach(SERVOPIN); // dem Servo Objekt "sagen" an welchen Pin am Schaltkreis der Server angeschlossen ist
|
|
}
|
|
|
|
void loop() {
|
|
ServoMitte();
|
|
ServoRechts();
|
|
ServoMitte();
|
|
ServoLinks();
|
|
}
|
|
|
|
|
|
//-------------- Funktionen und Prozeduren -------------------------
|
|
|
|
void ServoRechts(void){
|
|
Serial.println("SERVO_RECHTS"); // Meldung am Monitor ausgeben
|
|
myservo.write(SERVO_45GRAD_RECHTS); // Servo auf den Winkel rechts drehen
|
|
delay(1000); // Kurz warten, dass der Servo die Stellung erreicht
|
|
}
|
|
|
|
void ServoLinks(void){
|
|
Serial.println("SERVO_LINKS"); // Meldung am Monitor ausgeben
|
|
myservo.write(SERVO_45GRAD_LINKS); // Servo auf den Winkel links drehen
|
|
delay(1000); // Kurz warten, dass der Servo die Stellung erreicht
|
|
}
|
|
|
|
void ServoMitte(void){
|
|
Serial.println("SERVO_MITTE"); // Meldung am Monitor ausgeben
|
|
myservo.write(SERVO_0GRAD_MITTE); // Servo auf den Winkel links drehen
|
|
delay(1000); // Kurz warten, dass der Servo die Stellung erreicht
|
|
}
|
|
|