[SOLUCIONADO] millis() para varios motores servo y stepper

Muchas gracias por tu pronta respuesta.

El servo mueve un cambio de vías en un tren con escala HO (1:87), el objetivo de hacer el movimiento más lento es para simular los cambios de vía en la realidad. De la manera que funciona ahora el movimiento (de alrededor de treinta grados) es, a mi entender, demasiado rápido.

Cuando empleaba delay(), previamente a que me indicaras los pasos a seguir para trabajar con millis(), utilizaba un for:

for (int i = 50; i > 0; i--){  //Para mover a baja velocidad
        servoUno.write(i);     //Mueve a derecha grado a grado
        delay(25);
        }

La posición prefijada es la vía recta, sin habilitar el desvío, por lo que alineo el eje a cero grados y lo adjudico a vía recta, salvo que en algún sector el default sea con desvío, con lo que colocaré en ese caso el eje del servo correspondiente en alrededor de treinta grados.

Como el objetivo avanzado es integrar en el sketch otros dos cambios de vía, el funicular y un ascensor (en un Arduino Mega) debo evitar interrupciones. ¿Cómo debo programar con millis() el avance en grados intermedios?

El "tiempo de espera" seguramente es un despiste mío :wink: Si lo debo quitar, ¿cómo queda el if?

Un cordial saludo.

Armando