Hexe
StefanPraetzel
plain_text
5 months ago
2.9 kB
4
Indexable
// Definiere die Pins für die Relais, die Onboard-LED und das Sound-Modul const int relaisKopf = 5; // Kopf const int relaisVerschub = 6; // Verschub const int relaisArme = 7; // Arme const int soundPin = 4; // Sound-Modul (DY-SV8F) const int ledPin = 13; // Onboard-LED an Pin 13 (optional) #include "Servo.h" Servo Servomotor; // Funktion für die Kopfbewegung void kopfschuetteln() { // Position 2 mit dem Winkel 55° ansteuern Servomotor.write(55); delay(100); // Position 4 mit dem Winkel 145° ansteuern Servomotor.write(145); delay(1500); // Position 2 mit dem Winkel 55° ansteuern Servomotor.write(55); delay(1400); // Position 4 mit dem Winkel 145° ansteuern Servomotor.write(145); delay(400); // Zur Mitte zurückkehren (90°) Servomotor.write(100); } // Funktion zum Heben der Arme void armeheben() { digitalWrite(relaisArme, LOW); delay(500); Serial.println("Arme Relais eingeschaltet"); } // Funktion zum Senken der Arme void armesenken() { digitalWrite(relaisArme, HIGH); delay(500); Serial.println("Arme Relais ausgeschaltet"); } // Verschub raus void verschubraus() { digitalWrite(relaisVerschub, LOW); Serial.println("Verschub ausgefahren"); } // Verschub raus void verschubrein() { digitalWrite(relaisVerschub, HIGH); Serial.println("Verschub eingefahren"); } // sound starten void soundstarten() { digitalWrite(soundPin, LOW); // Sound starten Serial.println("Sound abgespielt"); } // sound stoppen void soundstoppen() { digitalWrite(soundPin, HIGH); // Sound starten Serial.println("Sound stoppen"); } // alles aus void allesaus() { armesenken(); digitalWrite(soundPin, LOW); // Sound starten Serial.println("Alles aus"); } void augenan() { digitalWrite(relaisKopf, LOW); Serial.println("Kopf Relais ausgeschaltet"); } void augenaus() { digitalWrite(relaisKopf, HIGH); Serial.println("Kopf Relais ausgeschaltet"); } void setup() { // Setze die Pins als Ausgänge pinMode(relaisKopf, OUTPUT); pinMode(relaisVerschub, OUTPUT); pinMode(relaisArme, OUTPUT); pinMode(soundPin, OUTPUT); // Sound-Pin als Ausgang pinMode(ledPin, OUTPUT); // Starte mit ausgeschalteten Relais, Sound und LED digitalWrite(soundPin, HIGH); // Sound-Modul auf LOW digitalWrite(ledPin, LOW); Servomotor.attach(8); //Serial.begin(9600); // Serielle Ausgabe zur Überwachung starten } void loop() { augenan(); delay(2500); kopfschuetteln(); soundstarten(); armeheben(); verschubraus(); delay(1000); kopfschuetteln(); armesenken(); armeheben(); armesenken(); armeheben(); verschubrein(); delay(6000); armesenken(); soundstoppen(); augenaus(); delay(5000); }
Editor is loading...
Leave a Comment