Servo 360 o 180? & Azionamento programmato

Si ma a parte che il metodo è meno "leggibile" (ossia devi calcolare i secondi degli "allarmi"), tu stai usando un valore intero:

int muoviservo = (hour*3600) + (minute*60) + second;

Ti faccio notare che, a parte il nome della variabile (che c'entra "muoviservo"? Quello che calcolo è l'orario corrente...), "hour*3600" supera la capacità di un intero (32.767) già dalle 10, visto che 10*3600 fa 36.000. Quindi nessun "int" potrà mai avere i valori che hai indicato (45.300, 45.420, 45.540) e quindi la "if()" non funzionerà mai.
Devi usare un "long" (o "unsigned long") e forzare il calcolo su questo formato:

unsigned long oraCorrente = (hour*3600UL) + (minute*60UL) + second;

Tutto questo sebbene sia comunque corretto quello che ha consigliato Guglielmo ovviamente, ma col mio metodo diventa più facile.