ayuda velocidad giro del servo, por favor

buen día, resulta que soy nuevo programando y en la escuela me encargaron un proyecto en el cual mi servo tiene cuatro entradas (4 push botons) que si alguno es verdadero, mi servo gire ciertos grados. el programa después de mucho investigar lo logre, sin embargo me falta montarlo a una especie de maqueta, y me temo que la velocidad del servo es muy rápida, alguien me puede decir como hacer que gire menos rápido el servo a la hora de instalarse en los grados que le digo? de ante mano gracias y saludos!!

#include <Servo.h> // librería servo
Servo SERVO;
// añadimos el servo

const int b1 = 4; // variables para los 4 push buttons
const int b2 = 5;
const int b3 = 6;
const int b4 = 7;

void setup() {

Serial.begin(9600); //iniciamos la comunicación serial

SERVO.attach(8); // pin del servo

pinMode(b1, INPUT); // declaración de entrada en los botones
pinMode(b2, INPUT);
pinMode(b3, INPUT);
pinMode(b4, INPUT);

}

void loop() {

SERVO.write(0); // desde el principio lo dejamos en el grado 0

int b1state = digitalRead(b1); // hacemos un estado para cada botón
int b2state = digitalRead(b2);
int b3state = digitalRead(b3);
int b4state = digitalRead(b4);

if(b1state == 1) { // si estado es true, entonces

SERVO.write(40); //mover 40 grados
delay(1000); // esperar 1 seg
SERVO.write(0); //volver a poner a 0
}

if(b2state == 1) {

SERVO.write(60);
delay(1000);
SERVO.write(0);
}

if(b3state == 1) {

SERVO.write(80);
delay(1000);
SERVO.write(0);
}
if(b4state == 1) {

SERVO.write(100);
delay(1000);
SERVO.write(0);
}
}

Estudia la función for

for(i=valor_inicial; valor_final; i++){
SERVO.write(i);
delay(100); //avanzará un paso casa 100 milisegundos
}