hey guys and gals, so my code i got going seems to be working fine however the code is a little long to me and seems like their would be a way to shorten it. where it seems long is the repetition i have to write in order for my robot to go any type of distance, "because the esc starts at 20% throttle in order for the motors to turn so that meant i had short burst the code in order to achieve a slower speed than 20%", but it its the repeating over and over that seems wrong...if you got any ideas i appreciate some help XD
#include <Servo.h>
Servo esc; // setup esc just like a servo
Servo sts; // steering servo
void setup()
{
esc.attach(5); // esc attach to pin 5
sts.attach(9); // steering servo attach to pin 8
esc.writeMicroseconds(1500); // set esc to 0 "or midi-point on servo
sts.write(90); // set steering servo to mid-point
}
void loop()
{
{
sts.write(35); //turn steering servo
delay(2000);
esc.writeMicroseconds(1590); //engages esc
delay(60); //this is where i feel it gets repetitive
esc.writeMicroseconds(1500);
delay(85);
esc.writeMicroseconds(1590);
delay(60);
esc.writeMicroseconds(1500);
delay(85);
esc.writeMicroseconds(1590);
delay(60);
esc.writeMicroseconds(1500);
delay(85);
esc.writeMicroseconds(1590);
delay(60);
esc.writeMicroseconds(1500);
delay(85);
esc.writeMicroseconds(1590);
delay(60);
esc.writeMicroseconds(1500);
delay(85);
esc.writeMicroseconds(1590);
delay(60);
esc.writeMicroseconds(1500);
delay(85);
esc.writeMicroseconds(1590);
delay(60);
esc.writeMicroseconds(1500);
delay(85);
sts.write(135); //turns steering servo
delay(2000);
esc.writeMicroseconds(1590); // more repetitiveness
delay(60);
esc.writeMicroseconds(1500);
delay(85);
esc.writeMicroseconds(1590);
delay(60);
esc.writeMicroseconds(1500);
delay(85);
esc.writeMicroseconds(1590);
delay(60);
esc.writeMicroseconds(1500);
delay(85);
esc.writeMicroseconds(1590);
delay(60);
esc.writeMicroseconds(1500);
delay(85);
esc.writeMicroseconds(1590);
delay(60);
esc.writeMicroseconds(1500);
delay(85);
esc.writeMicroseconds(1590);
delay(60);
esc.writeMicroseconds(1500);
delay(85);
esc.writeMicroseconds(1590);
delay(60);
esc.writeMicroseconds(1500);
delay(85);
esc.writeMicroseconds(1590);
delay(60);
esc.writeMicroseconds(1500);
delay(85);
esc.writeMicroseconds(1590);
delay(60);
esc.writeMicroseconds(1500);
delay(85);
esc.writeMicroseconds(1590);
delay(60);
esc.writeMicroseconds(1500);
delay(85);
esc.writeMicroseconds(1590);
delay(60);
esc.writeMicroseconds(1500);
delay(85);
esc.writeMicroseconds(1590);
delay(60);
esc.writeMicroseconds(1500);
delay(85);
esc.writeMicroseconds(1590);
delay(60);
esc.writeMicroseconds(1500);
delay(85);
}
}