#include <AccelStepper.h>
// Define pin connections
const int dirPin1 = 22;
const int stepPin1 = 23;
const int dirPin2 = 24;
const int stepPin2 = 25;
const int dirPin3 = 26;
const int stepPin3 = 27;
const int dirPin4 = 28;
const int stepPin4 = 29;
const int dirPin5 = 30;
const int stepPin5 = 31;
const int dirPin6 = 32;
const int stepPin6 = 33;
const int dirPin7 = 34;
const int stepPin7 = 35;
const int dirPin8 = 36;
const int stepPin8 = 37;
const int dirPin9 = 38;
const int stepPin9 = 39;
const int dirPin10 = 40;
const int stepPin10 = 41;
// Define motor interface type
#define motorInterfaceType1 1
// Creates an instance
AccelStepper stepper1(motorInterfaceType1, stepPin1, dirPin1);
AccelStepper stepper2(motorInterfaceType1, stepPin2, dirPin2);
AccelStepper stepper3(motorInterfaceType1, stepPin3, dirPin3);
AccelStepper stepper4(motorInterfaceType1, stepPin4, dirPin4);
AccelStepper stepper5(motorInterfaceType1, stepPin5, dirPin5);
AccelStepper stepper6(motorInterfaceType1, stepPin6, dirPin6);
AccelStepper stepper7(motorInterfaceType1, stepPin7, dirPin7);
AccelStepper stepper8(motorInterfaceType1, stepPin8, dirPin8);
AccelStepper stepper9(motorInterfaceType1, stepPin9, dirPin9);
AccelStepper stepper10(motorInterfaceType1, stepPin10, dirPin10);
String command;
void setup() {
Serial.begin(9600);
Serial.println("hi");
// set the maximum speed, acceleration factor,
stepper1.setMaxSpeed(1000);
stepper2.setMaxSpeed(1000);
stepper3.setMaxSpeed(1000);
stepper4.setMaxSpeed(1000);
stepper5.setMaxSpeed(1000);
stepper6.setMaxSpeed(1000);
stepper7.setMaxSpeed(1000);
stepper8.setMaxSpeed(1000);
stepper9.setMaxSpeed(1000);
stepper10.setMaxSpeed(1000);
}
void loop() {
//checks for input from serial monitor
if(Serial.available()){
command = Serial.readStringUntil('\n');
if(command.equals("drop1")||command. equals("Drop1")||command.equals("drop 1")||command.equals("Drop 1")){
Serial.println("dropping 1");
stepper1.moveTo(6900);
stepper1.setSpeed(1000);
}
if(command.equals("drop2")||command. equals("Drop2")||command.equals("drop 2")||command.equals("Drop 2")){
Serial.println("dropping 2");
stepper2.moveTo(6900);
stepper2.setSpeed(1000);
}
if(command.equals("drop3")||command. equals("Drop3")||command.equals("drop 3")||command.equals("Drop 3")){
Serial.println("dropping 3");
stepper3.moveTo(6900);
stepper3.setSpeed(1000);
}
if(command.equals("drop4")||command. equals("Drop4")||command.equals("drop 4")||command.equals("Drop 4")){
Serial.println("dropping 4");
stepper4.moveTo(6900);
stepper4.setSpeed(1000);
}
if(command.equals("drop5")||command. equals("Drop5")||command.equals("drop 5")||command.equals("Drop 5")){
Serial.println("dropping 5");
stepper5.moveTo(6900);
stepper5.setSpeed(1000);
}
if(command.equals("drop6")||command. equals("Drop6")||command.equals("drop 6")||command.equals("Drop 6")){
Serial.println("dropping 6");
stepper6.moveTo(6900);
stepper6.setSpeed(1000);
}
if(command.equals("drop7")||command. equals("Drop7")||command.equals("drop 7")||command.equals("Drop 7")){
Serial.println("dropping 7");
stepper7.moveTo(6900);
stepper7.setSpeed(1000);
}
if(command.equals("drop8")||command. equals("Drop8")||command.equals("drop 8")||command.equals("Drop 8")){
Serial.println("dropping 8");
stepper8.moveTo(6900);
stepper8.setSpeed(1000);
}
if(command.equals("drop9")||command. equals("Drop9")||command.equals("drop 9")||command.equals("Drop 9")){
Serial.println("dropping 9");
stepper9.moveTo(6900);
stepper9.setSpeed(1000);
}
if(command.equals("drop10")||command. equals("Drop10")||command.equals("drop 10")||command.equals("Drop 10")){
Serial.println("dropping 10");
stepper10.moveTo(6900);
stepper10.setSpeed(1000);
}
if(command.equals("pickup")||command. equals("Pickup")||command.equals("pick up")||command.equals("Pick up")){
Serial.println("picking up");
stepper1.moveTo(0);
stepper1.setSpeed(-1000);
stepper2.moveTo(0);
stepper2.setSpeed(-1000);
stepper3.moveTo(0);
stepper3.setSpeed(-1000);
stepper4.moveTo(0);
stepper4.setSpeed(-1000);
stepper5.moveTo(0);
stepper5.setSpeed(-1000);
stepper6.moveTo(0);
stepper6.setSpeed(-1000);
stepper7.moveTo(0);
stepper7.setSpeed(-1000);
stepper8.moveTo(0);
stepper8.setSpeed(-1000);
stepper9.moveTo(0);
stepper9.setSpeed(-1000);
stepper10.moveTo(0);
stepper10.setSpeed(-1000);
}
}
//checks too see if motors moved correct distance if so stops them
if (stepper1.distanceToGo() == 0) {
stepper1.setSpeed(0);
}
if (stepper2.distanceToGo() == 0) {
stepper2.setSpeed(0);
}
if (stepper3.distanceToGo() == 0) {
stepper3.setSpeed(0);
}
if (stepper4.distanceToGo() == 0) {
stepper4.setSpeed(0);
}
if (stepper5.distanceToGo() == 0) {
stepper5.setSpeed(0);
}
if (stepper6.distanceToGo() == 0) {
stepper6.setSpeed(0);
}
if (stepper7.distanceToGo() == 0) {
stepper7.setSpeed(0);
}
if (stepper8.distanceToGo() == 0) {
stepper8.setSpeed(0);
}
if (stepper9.distanceToGo() == 0) {
stepper9.setSpeed(0);
}
if (stepper10.distanceToGo() == 0) {
stepper10.setSpeed(0);
}
//run motor at set speed until set position
stepper1.runSpeed();
stepper2.runSpeed();
stepper3.runSpeed();
stepper4.runSpeed();
stepper5.runSpeed();
stepper6.runSpeed();
stepper7.runSpeed();
stepper8.runSpeed();
stepper9.runSpeed();
stepper10.runSpeed();
}