// Include the AccelStepper library:
#include <AccelStepper.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,20,4);
// Define stepper motor connections and motor interface type.
#define dirPin1 29
#define stepPin1 28
#define motorInterfaceType1 1
#define dirPin2 27
#define stepPin2 26
#define motorInterfaceType2 1
#define dirPin3 25
#define stepPin3 24
#define motorInterfaceType3 1
#define dirPin4 23
#define stepPin4 22
#define motorInterfaceType4 1
#define dirPin5 5
#define stepPin5 2
#define motorInterfaceType5 1
#define dirPin6 6
#define stepPin6 3
#define motorInterfaceType6 1
#define dirPin7 7
#define stepPin7 4
#define motorInterfaceType7 1
#define dirPin8 13
#define stepPin8 12
#define motorInterfaceType8 1
//CNC configuration
int EN = 8;
const int start_button = A0; // the number of the pushbutton pin (abort button)
const int stop_button = 18; // the number of the pushbutton pin (hold button)
const int ledPin_start = 9; // the number of the LED pin (endstopx)
const int ledPin_stop = 10; // the number of the LED pin (endstopy)
// Create a new instance of the AccelStepper class:
AccelStepper stepper1 = AccelStepper(motorInterfaceType1, stepPin1, dirPin1);//robotic arm1
AccelStepper stepper2 = AccelStepper(motorInterfaceType2, stepPin2, dirPin2);//robotic arm2
AccelStepper stepper3 = AccelStepper(motorInterfaceType3, stepPin3, dirPin3);//robotic arm3
AccelStepper stepper4 = AccelStepper(motorInterfaceType4, stepPin4, dirPin4);//robotic arm4
AccelStepper stepper5 = AccelStepper(motorInterfaceType5, stepPin5, dirPin5); // stepper X (Metallic plate)
AccelStepper stepper6 = AccelStepper(motorInterfaceType6, stepPin6, dirPin6); // stepper Y (X-axis linear actuator)
AccelStepper stepper7 = AccelStepper(motorInterfaceType7, stepPin7, dirPin7); // stepper Z (y-axis linear actuator1)
AccelStepper stepper8 = AccelStepper(motorInterfaceType8, stepPin8, dirPin8); // stepper A (y-axis linear actuator2)
void setup()
{
Serial.begin(9600);
pinMode(EN, OUTPUT); // to enable CNC drivers
digitalWrite(EN, LOW); //Low to enable
// initialize the start LED pin as an output:
pinMode(ledPin_start, OUTPUT);
// initialize the start pushbutton pin as an input:
pinMode(start_button, INPUT_PULLUP);
// initialize the stop LED pin as an output:
pinMode(ledPin_stop, OUTPUT);
// initialize the stop pushbutton pin as an input:
pinMode(stop_button, INPUT_PULLUP);
// set up interrupt function
attachInterrupt ( digitalPinToInterrupt ( stop_button ), stop, LOW );
// Set the maximum speed and acceleration:
stepper1.setMaxSpeed(100);
stepper1.setAcceleration(50);
stepper2.setMaxSpeed(100);
stepper2.setAcceleration(50);
stepper3.setMaxSpeed(100);
stepper3.setAcceleration(50);
stepper4.setMaxSpeed(100);
stepper4.setAcceleration(50);
stepper5.setMaxSpeed(100);
stepper5.setAcceleration(50);
stepper6.setMaxSpeed(100);
stepper6.setAcceleration(50);
stepper7.setMaxSpeed(100);
stepper7.setAcceleration(50);
stepper8.setMaxSpeed(100);
stepper8.setAcceleration(50);
// initialization of LCD
lcd.init();
lcd.backlight();
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(16, 2);
lcd.print("S5");
}
// Call the run() function for each stepper driver
void run_steppers(void)
{
stepper1.run();
stepper2.run();
stepper3.run();
stepper4.run();
stepper5.run();
stepper6.run();
stepper7.run();
stepper8.run();
}
// Return true if any one of the drivers are still moving.
bool is_moving(void)
{
return (stepper1.isRunning() || stepper2.isRunning() || stepper3.isRunning() || stepper4.isRunning() || stepper5.isRunning() || stepper6.isRunning() || stepper7.isRunning() || stepper8.isRunning());
}
// Move a relative displacement at the current speed.
void move(long m,long n,long o,long p,long x, long y, long z, long a) // based on CNC shield
{
stepper1.move(m);
stepper2.move(n);
stepper3.move(o);
stepper4.move(p);
stepper5.move(x);
stepper6.move(y);
stepper7.move(z);
stepper8.move(a);
do {
run_steppers();
} while(is_moving());
}
void(* resetFunc) (void) = 0;//declare reset function at address 0
void loop() {
if (digitalRead(start_button)==LOW){
digitalWrite(ledPin_start, HIGH);
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(2000);
lcd.clear();
// First motion
lcd.setCursor(6, 1);
lcd.print("First");
lcd.setCursor(6, 2);
lcd.print("Motion");
delay(2000);
lcd.clear();
// welding machine is on
stepper5.move(200);
stepper5.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
// Limit switch
//End of first motion
lcd.setCursor(7, 1);
lcd.print("End of");
lcd.setCursor(5, 2);
lcd.print("first motion");
delay(2000);
lcd.clear();
delay(2000);
// second motion
lcd.setCursor(6, 1);
lcd.print("Second");
lcd.setCursor(6, 2);
lcd.print("Motion");
delay(2000);
lcd.clear();
move(0,-25,-25,0,0,0,0,0);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
// Pump
// Solenoid valve
//End of second motion
lcd.setCursor(7, 1);
lcd.print("End of");
lcd.setCursor(4, 2);
lcd.print("second motion");
delay(2000);
lcd.clear();
delay(2000);
// Third motion
lcd.setCursor(6, 1);
lcd.print("Third");
lcd.setCursor(6, 2);
lcd.print("Motion");
delay(2000);
lcd.clear();
move(0,25,25,0,0,0,0,0);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
stepper1.move(45);
stepper1.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
stepper4.move(5);
stepper4.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
move(0,-25,-25,0,0,0,0,0);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Photo interrut sensor
//Solenoid valve
//End of third motion
lcd.setCursor(7, 1);
lcd.print("End of");
lcd.setCursor(5, 2);
lcd.print("third motion");
delay(2000);
lcd.clear();
delay(2000);
// Fourth motion
lcd.setCursor(6, 1);
lcd.print("Fourth");
lcd.setCursor(6, 2);
lcd.print("Motion");
delay(2000);
lcd.clear();
move(0,25,25,0,0,0,0,0);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
stepper1.move(-45);
stepper1.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
stepper4.move(-5);
stepper4.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//End of fourth motion
lcd.setCursor(7, 1);
lcd.print("End of");
lcd.setCursor(4, 2);
lcd.print("fourth motion");
delay(2000);
lcd.clear();
delay(2000);
// Fifth motion
lcd.setCursor(6, 1);
lcd.print("Fifth");
lcd.setCursor(6, 2);
lcd.print("Motion");
delay(2000);
lcd.clear();
move(0,-25,-25,0,0,0,0,0);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Pump
//Solenoid valve
//End of fifth motion
lcd.setCursor(7, 1);
lcd.print("End of");
lcd.setCursor(5, 2);
lcd.print("fifth motion");
delay(2000);
lcd.clear();
delay(2000);
// Sixth motion
lcd.setCursor(6, 1);
lcd.print("Sixth");
lcd.setCursor(6, 2);
lcd.print("Motion");
delay(2000);
lcd.clear();
move(0,25,25,0,0,0,0,0);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
stepper1.move(55);
stepper1.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
stepper4.move(-5);
stepper4.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
move(0,-25,-25,0,0,0,0,0);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Photo interrupt sensor
//Solenoid valve
//End of sixth motion
lcd.setCursor(7, 1);
lcd.print("End of");
lcd.setCursor(5, 2);
lcd.print("sixth motion");
delay(2000);
lcd.clear();
// Seventh motion
lcd.setCursor(6, 1);
lcd.print("Seventh");
lcd.setCursor(6, 2);
lcd.print("Motion");
delay(2000);
lcd.clear();
move(0,25,25,0,0,0,0,0);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
stepper1.move(-5);
stepper1.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
stepper4.move(-50);
stepper4.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
move(0,-25,-25,0,0,0,0,0);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Pump
//Solenoid valve
//End of seventh motion
lcd.setCursor(7, 1);
lcd.print("End of");
lcd.setCursor(3, 2);
lcd.print("seventh motion");
delay(2000);
lcd.clear();
// Eighth motion
lcd.setCursor(6, 1);
lcd.print("Eighth");
lcd.setCursor(6, 2);
lcd.print("Motion");
delay(2000);
lcd.clear();
stepper6.move(75);
stepper6.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
move(0,0,0,0,0,0,100,100);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
//Dc machine
//End of eighth motion
lcd.setCursor(7, 1);
lcd.print("End of");
lcd.setCursor(3, 2);
lcd.print("eighth motion");
delay(2000);
lcd.clear();
// Ninth motion
lcd.setCursor(6, 1);
lcd.print("Ninth");
lcd.setCursor(6, 2);
lcd.print("Motion");
delay(2000);
lcd.clear();
move(0,0,0,0,0,0,-25,-25);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
stepper6.move(12);
stepper6.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
move(0,0,0,0,0,0,25,25);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
//Dc machine
//End of ninth motion
lcd.setCursor(7, 1);
lcd.print("End of");
lcd.setCursor(5, 2);
lcd.print("ninth motion");
delay(2000);
lcd.clear();
delay(2000);
// Tenth motion
lcd.setCursor(6, 1);
lcd.print("Tenth");
lcd.setCursor(6, 2);
lcd.print("Motion");
delay(2000);
lcd.clear();
move(0,0,0,0,0,0,-25,-25);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
stepper6.move(12);
stepper6.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
move(0,0,0,0,0,0,25,25);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
//Dc machine
//End of tenth motion
lcd.setCursor(7, 1);
lcd.print("End of");
lcd.setCursor(5, 2);
lcd.print("tenth motion");
delay(2000);
lcd.clear();
delay(2000);
// Eleventh motion
lcd.setCursor(5, 1);
lcd.print("Eleventh");
lcd.setCursor(6, 2);
lcd.print("Motion");
delay(2000);
lcd.clear();
move(0,0,0,0,0,0,-25,-25);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
stepper6.move(12);
stepper6.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
move(0,0,0,0,0,0,25,25);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
//Dc machine
//End of eleventh motion
lcd.setCursor(7, 1);
lcd.print("End of");
lcd.setCursor(2, 2);
lcd.print("eleventh motion");
delay(2000);
lcd.clear();
delay(2000);
// Twelfth motion
lcd.setCursor(6, 1);
lcd.print("Twelfth");
lcd.setCursor(6, 2);
lcd.print("Motion");
delay(2000);
lcd.clear();
move(0,0,0,0,0,0,-25,-25);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
stepper6.move(12);
stepper6.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
move(0,0,0,0,0,0,25,25);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
//Dc machine
//End of twelfth motion
lcd.setCursor(7, 1);
lcd.print("End of");
lcd.setCursor(3, 2);
lcd.print("twelfth motion");
delay(2000);
lcd.clear();
// Thirteenth motion
lcd.setCursor(4, 1);
lcd.print("Thirteenth");
lcd.setCursor(6, 2);
lcd.print("Motion");
delay(2000);
lcd.clear();
move(0,0,0,0,0,0,-25,-25);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
stepper6.move(27);
stepper6.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
move(0,0,0,0,0,0,25,25);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
//Dc machine
//End of thirteenth motion
lcd.setCursor(7, 1);
lcd.print("End of");
lcd.setCursor(1, 2);
lcd.print("thirteenth motion");
delay(2000);
lcd.clear();
delay(2000);
// Fourteenth motion
lcd.setCursor(4, 1);
lcd.print("Fourteenth");
lcd.setCursor(6, 2);
lcd.print("Motion");
delay(2000);
lcd.clear();
move(0,0,0,0,0,0,-25,-25);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
stepper6.move(12);
stepper6.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
move(0,0,0,0,0,0,25,25);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
//Dc machine
//End of fourteenth motion
lcd.setCursor(7, 1);
lcd.print("End of");
lcd.setCursor(1, 2);
lcd.print("fourteenth motion");
delay(2000);
lcd.clear();
delay(2000);
// Fifteenth motion
lcd.setCursor(5, 1);
lcd.print("Fifteenth");
lcd.setCursor(6, 2);
lcd.print("Motion");
delay(2000);
lcd.clear();
move(0,0,0,0,0,0,-25,-25);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
stepper6.move(12);
stepper6.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
move(0,0,0,0,0,0,25,25);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
//Dc machine
//End of fifteenth motion
lcd.setCursor(7, 1);
lcd.print("End of");
lcd.setCursor(2, 2);
lcd.print("fifteenth motion");
delay(2000);
lcd.clear();
delay(2000);
// Sixteenth motion
lcd.setCursor(5, 1);
lcd.print("Sixteenth");
lcd.setCursor(6, 2);
lcd.print("Motion");
delay(2000);
lcd.clear();
move(0,0,0,0,0,0,-25,-25);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
stepper6.move(12);
stepper6.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
move(0,0,0,0,0,0,25,25);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
//Dc machine
//End of sixteenth motion
lcd.setCursor(7, 1);
lcd.print("End of");
lcd.setCursor(2, 2);
lcd.print("sixteenth motion");
delay(2000);
lcd.clear();
delay(2000);
// Seventeenth motion
lcd.setCursor(4, 1);
lcd.print("Seventeenth");
lcd.setCursor(6, 2);
lcd.print("Motion");
delay(2000);
lcd.clear();
move(0,0,0,0,0,0,-25,-25);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
stepper6.move(12);
stepper6.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
move(0,0,0,0,0,0,25,25);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
//Dc machine
//End of seventeenth motion
lcd.setCursor(7, 1);
lcd.print("End of");
lcd.setCursor(1, 2);
lcd.print("seventeenth motion");
delay(2000);
lcd.clear();
delay(2000);
// eighteenth motion
lcd.setCursor(4, 1);
lcd.print("eighteenth");
lcd.setCursor(6, 2);
lcd.print("Motion");
delay(2000);
lcd.clear();
move(0,0,0,0,0,0,125,125);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
stepper6.move(-200);
stepper6.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
stepper5.move(-200);
stepper5.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//Limit switch
//Solenoid valve
//End of eighteenth motion
lcd.setCursor(7, 1);
lcd.print("End of");
lcd.setCursor(2, 2);
lcd.print("eighteenth motion");
delay(2000);
lcd.clear();
delay(2000);
// nineteenth motion
lcd.setCursor(4, 1);
lcd.print("nineteenth");
lcd.setCursor(6, 2);
lcd.print("Motion");
delay(2000);
lcd.clear();
move(0,25,25,0,0,0,0,0);
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
stepper1.move(-50);
stepper1.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
stepper4.move(55);
stepper4.runToPosition();
lcd.setCursor(1, 2);
lcd.print("S8");
lcd.setCursor(1, 3);
lcd.print(stepper8.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 2);
lcd.print("S7");
lcd.setCursor(6, 3);
lcd.print(stepper7.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 2);
lcd.print("S6");
lcd.setCursor(11, 3);
lcd.print(stepper6.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 2);
lcd.print("S5");
lcd.setCursor(16, 3);
lcd.print(stepper5.currentPosition());
lcd.print(" ");
lcd.setCursor(1, 0);
lcd.print("S4");
lcd.setCursor(1, 1);
lcd.print(stepper4.currentPosition());
lcd.print(" ");
lcd.setCursor(6, 0);
lcd.print("S3");
lcd.setCursor(6, 1);
lcd.print(stepper3.currentPosition());
lcd.print(" ");
lcd.setCursor(11, 0);
lcd.print("S2");
lcd.setCursor(11, 1);
lcd.print(stepper2.currentPosition());
lcd.print(" ");
lcd.setCursor(16, 0);
lcd.print("S1");
lcd.setCursor(16, 1);
lcd.print(stepper1.currentPosition());
lcd.print(" ");
delay(3000);
lcd.clear();
//End of nineteenth motion
lcd.setCursor(7, 1);
lcd.print("End of");
lcd.setCursor(2, 2);
lcd.print("nineteenth motion");
delay(2000);
lcd.clear();
delay(2000);
delay(1000);
digitalWrite(ledPin_start, LOW);
delay(1000);//Wait 1000 milliseconds (1 second) before moving again
}
}
void stop ( )
{ digitalWrite(ledPin_start, LOW);
delay(1000);//Wait 1000 milliseconds (1 second) before moving again
digitalWrite(ledPin_stop, HIGH);
delay(10000);//Wait 2000 milliseconds (1 second) before moving again
digitalWrite(ledPin_stop, LOW);
delay(1000);//Wait 2000 milliseconds (1 second) before moving again
resetFunc(); //call reset
}