Thank you for all of your feedback and support through my first sketch!
I'm guessing the initial approach to randomly select a servo to move was the issue. I defined a variable, set the variable using randomnumber and an array containing my pin numbers and did a series of if statements.
I included the sketch below if anyone is interested. Perhaps not the most elegant, but it works!
//////////////////////////////////////////////////
//define sensor pin for IR
#define SENSORPIN 7
//define LED to test IR
#define LEDPIN 13
// Include the Servo library
#include <Servo.h>
// IR variables will change:
int sensorState = 0, lastState=0; // variable for reading the IR status
//this variable will hold a random number generated by the random() function
long randomNumber;
// Create a servo objects
Servo servo1;
Servo servo2;
Servo servo3;
Servo servo4;
Servo servo5;
int i;
//////////////////////////////////////////////////
void setup() {
Serial.begin(9600);
// initialize the IR LED pin as an output:
pinMode(LEDPIN, OUTPUT);
// initialize the IR sensor pin as an input:
pinMode(SENSORPIN, INPUT);
digitalWrite(SENSORPIN, HIGH); // turn on the pullup
// if analog input pin 0 is unconnected, random analog
// noise will cause the call to randomSeed() to generate
// different seed numbers each time the sketch runs.
// randomSeed() will then shuffle the random function.
randomSeed(analogRead(A0));
// We need to attach the servo to the used pin number
servo1.attach(2);
servo2.attach(3);
servo3.attach(4);
servo4.attach(5);
servo5.attach(6);
}
void loop() {
// read the state of the IR value:
sensorState = digitalRead(SENSORPIN);
// check if the IR sensor beam is broken
// if it is, the IR sensorState is LOW:
if (sensorState == LOW) {
// turn IR LED on:
digitalWrite(LEDPIN, HIGH);
//generate a random number
i = (randomNumber = random(2,7));
//display the random number on the serial monitor
Serial.print("The Random Number is = ");
Serial.println(randomNumber);
if (i == 2) {
// Make servo go to 70 degrees
servo1.write(70);
delay(750);
// Make servo go to 0 degrees
servo1.write(0);
delay(750);
// Make servo go to 70 degrees
servo1.write(70);
delay(750);
// Make servo go to 0 degrees
servo1.write(0);
delay(750);
// Make servo go to 70 degrees
servo1.write(70);
delay(750);
// Make servo go to 0 degrees
servo1.write(0);
delay(750);
};
if (i == 3) {
// Make servo go to 70 degrees
servo2.write(70);
delay(750);
// Make servo go to 0 degrees
servo2.write(0);
delay(750);
// Make servo go to 70 degrees
servo2.write(70);
delay(750);
// Make servo go to 0 degrees
servo2.write(0);
delay(750);
// Make servo go to 70 degrees
servo2.write(70);
delay(750);
// Make servo go to 0 degrees
servo2.write(0);
delay(750);
};
if (i == 4) {
// Make servo go to 70 degrees
servo3.write(60);
delay(750);
// Make servo go to 0 degrees
servo3.write(0);
delay(750);
// Make servo go to 70 degrees
servo3.write(70);
delay(750);
// Make servo go to 0 degrees
servo3.write(0);
delay(750);
// Make servo go to 70 degrees
servo3.write(60);
delay(750);
// Make servo go to 0 degrees
servo3.write(0);
delay(750);
};
if (i == 5) {
// Make servo go to 70 degrees
servo4.write(70);
delay(750);
// Make servo go to 0 degrees
servo4.write(0);
delay(750);
// Make servo go to 70 degrees
servo4.write(70);
delay(750);
// Make servo go to 0 degrees
servo4.write(0);
delay(750);
// Make servo go to 70 degrees
servo4.write(70);
delay(750);
// Make servo go to 0 degrees
servo4.write(0);
delay(750);
};
if (i == 6) {
// Make servo go to 70 degrees
servo5.write(70);
delay(750);
// Make servo go to 0 degrees
servo5.write(0);
delay(750);
// Make servo go to 70 degrees
servo5.write(60);
delay(750);
// Make servo go to 0 degrees
servo5.write(0);
delay(750);
// Make servo go to 70 degrees
servo5.write(70);
delay(750);
// Make servo go to 0 degrees
servo5.write(0);
delay(750);
};
}
else {
// turn IR LED off:
digitalWrite(LEDPIN, LOW);
}
}