#include <Servo.h>
Servo servo1;
Servo servo2;
Servo servo3;
Servo servo4;
Servo servo5;
Servo servo6;
int potPin = A0 ;
int potValue;
int prevPotValue = -1;
void setup() {
Serial.begin(9600);
servo1.attach(8);
servo2.attach(9);
servo3.attach(10);
servo4.attach(11);
servo5.attach(12);
servo6.attach(13);
}
void loop() {
potValue = analogRead(potPin);
int mappedValue = map(potValue, 0, 1023, -30,30);
if (mappedValue != prevPotValue) {
prevPotValue = mappedValue;
if (mappedValue == 0) {
servo1.write(135);
servo2.write(135);
servo3.write(135);
servo4.write(135);
servo5.write(135);
servo6.write(135);
} else if (mappedValue ==-20) {
servo1.write(135+28.01);
servo2.write(135-22.63);
servo3.write(135+38.43);
servo4.write(135-27.86);
servo5.write(135+40.32);
servo6.write(135-30.83);
} else if (mappedValue == -19) {
servo1.write(135+14.74);
servo2.write(135-24.08);
servo3.write(135+46.47);
servo4.write(135-22.93);
servo5.write(135+30.01);
servo6.write(135-7.01);
} else if (mappedValue == -18) {
servo1.write(135+16.28);
servo2.write(135-22.54);
servo3.write(135+42.04);
servo4.write(135-22.96);
servo5.write(135+29.98);
servo6.write(135-11.44);
} else if (mappedValue == -17) {
servo1.write(135+17.81);
servo2.write(135-21.01);
servo3.write(135+37.60);
servo4.write(135-23);
servo5.write(135+29.94);
servo6.write(135-15.88);
} else if (mappedValue ==-16) {
servo1.write(135+19.35);
servo2.write(135-19.47);
servo3.write(135+33.17);
servo4.write(135-23.03);
servo5.write(135+29.91);
servo6.write(135-20.31);
} else if (mappedValue ==-15) {
servo1.write(135+20.88);
servo2.write(135-17.94);
servo3.write(135+28.73);
servo4.write(135-23.07);
servo5.write(135+2.87);
servo6.write(135-24.75);
} else if (mappedValue == -14) {
servo1.write(135+7.65);
servo2.write(135-18.64);
servo3.write(135+36.78);
servo4.write(135-16.49);
servo5.write(135+19.71);
servo6.write(135-0.01);
} else if (mappedValue == -13) {
servo1.write(135+9.19);
servo2.write(135-17.10);
servo3.write(135+32.35);
servo4.write(135-16.52);
servo5.write(135+19.68);
servo6.write(135-4.42);
} else if (mappedValue == -12) {
servo1.write(135+10.72);
servo2.write(135-15.57);
servo3.write(135+27.91);
servo4.write(135-16.56);
servo5.write(135+19.64);
servo6.write(135-8.86);
} else if (mappedValue == -11) {
servo1.write(135+12.26);
servo2.write(135-14.03);
servo3.write(135+23.48);
servo4.write(135-16.59);
servo5.write(135+19.61);
servo6.write(135-13.29);
} else if (mappedValue ==-10) {
servo1.write(135+13.79);
servo2.write(135-12.50);
servo3.write(135+19.04);
servo4.write(135-16.63);
servo5.write(135+19.57);
servo6.write(135-17.73);
} else if (mappedValue == -9) {
servo1.write(135+0.65);
servo2.write(135-12.62);
servo3.write(135+27.16);
servo4.write(135-8.69);
servo5.write(135+9.70);
servo6.write(135-8.72);
} else if (mappedValue == -8) {
servo1.write(135+2.19);
servo2.write(135-11.08);
servo3.write(135+22.73);
servo4.write(135-8.72);
servo5.write(135+9.67);
servo6.write(135-4.29);
} else if (mappedValue == -7) {
servo1.write(135+3.72);
servo2.write(135-9.55);
servo3.write(135+18.29);
servo4.write(135-8.76);
servo5.write(135+9.63);
servo6.write(135-0.15);
} else if (mappedValue == -6) {
servo1.write(135+5.26);
servo2.write(135-8.01);
servo3.write(135+13.86);
servo4.write(135-8.79);
servo5.write(135+9.60);
servo6.write(135-4.58);
} else if (mappedValue == -5) {
servo1.write(135+6.79);
servo2.write(135-6.48);
servo3.write(135+9.42);
servo4.write(135-8.83);
servo5.write(135+9.56);
servo6.write(135-9.02);
} else if (mappedValue ==20) {
servo1.write(135-22.63);
servo2.write(135+28.01);
servo3.write(135-30.83);
servo4.write(135+40.32);
servo5.write(135-27.86);
servo6.write(135+38.43);
} else if (mappedValue == 19) {
servo1.write(135-24.16);
servo2.write(135+26.48);
servo3.write(135-26.39);
servo4.write(135+40.36);
servo5.write(135-27.82);
servo6.write(135+42.87);
} else if (mappedValue == 18) {
servo1.write(135-25.70);
servo2.write(135+24.94);
servo3.write(135-21.96);
servo4.write(135+40.39);
servo5.write(135-27.79);
servo6.write(135+47.30);
} else if (mappedValue == 17) {
servo1.write(135-27.23);
servo2.write(135+23.41);
servo3.write(135-17.52);
servo4.write(135+40.43);
servo5.write(135-27.75);
servo6.write(135+51.74);
} else if (mappedValue == 16) {
servo1.write(135-28.77);
servo2.write(135+21.87);
servo3.write(135-13.09);
servo4.write(135+40.46);
servo5.write(135-27.72);
servo6.write(135+56.17);
} else if (mappedValue ==15) {
servo1.write(135-17.94);
servo2.write(135+20.88);
servo3.write(135-24.75);
servo4.write(135+29.87);
servo5.write(135-23.07);
servo6.write(135+28.73);
} else if (mappedValue == 14) {
servo1.write(135-19.47);
servo2.write(135+19.35);
servo3.write(135-20.31);
servo4.write(135+29.91);
servo5.write(135-23.03);
servo6.write(135+33.17);
} else if (mappedValue == 13) {
servo1.write(135-21.01);
servo2.write(135+17.81);
servo3.write(135-15.88);
servo4.write(135+29.94);
servo5.write(135-23);
servo6.write(135+37.60);
} else if (mappedValue == 12) {
servo1.write(135-22.54);
servo2.write(135+16.28);
servo3.write(135-11.44);
servo4.write(135+29.98);
servo5.write(135-22.96);
servo6.write(135+42.04);
} else if (mappedValue == 11) {
servo1.write(135-24.08);
servo2.write(135+14.74);
servo3.write(135-7.01);
servo4.write(135+30.01);
servo5.write(135-22.93);
servo6.write(135+46.47);
} else if (mappedValue == 10) {
servo1.write(135-12.50);
servo2.write(135+13.79);
servo3.write(135-17.37);
servo4.write(135+19.57);
servo5.write(135-16.63);
servo6.write(135+19.04);
} else if (mappedValue == 9) {
servo1.write(135-14.03);
servo2.write(135+12.26);
servo3.write(135-12.93);
servo4.write(135+19.61);
servo5.write(135-16.59);
servo6.write(135+23.48);
} else if (mappedValue == 8) {
servo1.write(135-15.57);
servo2.write(135+10.72);
servo3.write(135-8.50);
servo4.write(135+19.64);
servo5.write(135-16.56);
servo6.write(135+27.91);
} else if (mappedValue == 7) {
servo1.write(135-17.10);
servo2.write(135+9.19);
servo3.write(135-4.06);
servo4.write(135+19.68);
servo5.write(135-16.52);
servo6.write(135+32.35);
}else if (mappedValue == 6) {
servo1.write(135-18.64);
servo2.write(135+7.65);
servo3.write(135-0.37);
servo4.write(135+19.71);
servo5.write(135-16.47);
servo6.write(135+39);
}else if (mappedValue == 5) {
servo1.write(135-6.48);
servo2.write(135+6.79);
servo3.write(135-9.02);
servo4.write(135+9.56);
servo5.write(135-8.83);
servo6.write(135+9.42);
} else if (mappedValue == 4) {
servo1.write(135-8.01);
servo2.write(135+5.26);
servo3.write(135-4.58);
servo4.write(135+9.60);
servo5.write(135-8.79);
servo6.write(135+13.86);
} else if (mappedValue == 3) {
servo1.write(135-9.55);
servo2.write(135+3.72);
servo3.write(135-0.15);
servo4.write(135+9.63);
servo5.write(135-8.76);
servo6.write(135+18.29);
} else if (mappedValue == 2) {
servo1.write(135-11.08);
servo2.write(135+2.19);
servo3.write(135+4.29);
servo4.write(135+9.67);
servo5.write(135-8.72);
servo6.write(135+22.73);
} else if (mappedValue == 1) {
servo1.write(135-12.62);
servo2.write(135+0.65);
servo3.write(135+8.72);
servo4.write(135+9.70);
servo5.write(135-8.69);
servo6.write(135+27.16);
Serial.print("Positionde potentiometre: ");
Serial.print(mappedValue);
Serial.print("° - Servo1: ");
Serial.print(servo1.read());
Serial.print("° - Servo2: ");
Serial.print(servo2.read());
Serial.print("° - Servo3: ");
Serial.println(servo3.read());
Serial.print("° - Servo4: ");
Serial.print(servo4.read());
Serial.print("° - Servo5: ");
Serial.print(servo5.read());
Serial.print("° - Servo6: ");
Serial.print(servo6.read());
}
}
}