#include <ESP32Servo.h>
Servo servo1;
Servo servo2;
Servo servo3;
Servo servo4;
Servo servo5;
#define BUTTON_PIN 14
int servo1Pin = 5;
int servo2Pin = 18;
int servo3Pin = 19;
int servo4Pin = 21;
int servo5Pin = 22;
int mode = 0;
void setup() {
pinMode(BUTTON_PIN, INPUT_PULLUP);
servo1.attach(servo1Pin);
servo2.attach(servo2Pin);
servo3.attach(servo3Pin);
servo4.attach(servo4Pin);
servo5.attach(servo5Pin);
}
void loop() {
int buttonState = digitalRead(BUTTON_PIN);
if(buttonState == LOW){
mode = mode + 1;
delay(500);
}
if(mode == 1){
openclosehand();
}
if(mode == 2){
walkinghand();
}
if(mode == 3){
servo1.write(0);
servo2.write(0);
servo3.write(0);
servo4.write(0);
servo5.write(0);
delay(1000);
mode = 0;
delay(500);
}
}
void walkinghand(){
servo1.write(120);
servo2.write(60);
servo3.write(90);
servo4.write(60);
servo5.write(120);
delay(1000);
servo1.write(60);
servo2.write(120);
servo3.write(60);
servo4.write(120);
servo5.write(60);
delay(1000);
}
void openclosehand(){
servo1.write(180);
servo2.write(180);
servo3.write(180);
servo4.write(180);
servo5.write(180);
delay(1000);
servo1.write(0);
servo2.write(0);
servo3.write(0);
servo4.write(0);
servo5.write(0);
delay(1000);
}