Actuator Control via a Serial Monitor - Issue

Okay I see it now. Stupid when I think about it.

The delay is meant to act as a timer for the function, but this only works (as I have been saying) when it is paired with another function straight after (Which is what I've been doing when troubleshooting). I recognise the issue now, when isolating the functions it works how you have been saying as it constantly loops.

I basically need to integrate a stop after the delay inside the extend/retract functions to tell it to actually stop after this time limit until another command comes in, i.e.

void extendActuator() {
  // digitalWrite(EnablePin1, HIGH);                 //enable board
  analogWrite(PWMPinA1, Speed);                  //apply desired speed
  analogWrite(PWMPinB1, 0);                          //apply no speed 
  delay(2000);                                                           //Delays the operation for 2 amount of time 
  analogWrite(PWMPinA1, 0);
  analogWrite(PWMPinB1, 0);        //set speeds to 0
}