visto che non devi fare competizioni o altro (in cui la precisione con diversi fattori che cambiano essenziale, come ad esempio il voltaggio delle pile leggermente diverso che ti fa girare un pò di più il motore) puoi accontentarti di fare un istruzione "ad occhio"
penso tu abbia un tri-bot quindi ti consiglio di far ruotare il robot sul posto (un motore in una direzione e l' altro nella direzione opposta)
ti faccio un esempio, però sappi che io ho utilizzato 2 servi (quindi 180° gira tutto da una parte-90°fermo-0° gira tutto dall' altra)
void ruota_sinistra(){
posD=0;
posS=0;
servoD.write(posD);
servoS.write(posS);
delay(1150);
posD=90;
posS=90;
servoD.write(posD);
servoS.write(posS); }
quindi quando mi serve chiamo questa procedura che mi fa girare il robot di 90° a sinistra... in pratica fa girare le ruote, e ho visto che ci mette circa un secondo a compiere i 90°, quindi dopo 1s lo blocco così si ferma...
spero di esserti stato utile...
PS:i servi sono tutti e 2 a 0° perchè ovviamente sono sfalsati, e per far girare uno da una parte e uno dall' altra devo dargli valori differenti... per farti capire meglio ti allego la procedura per far andare avanti il robot
void avanti(){
posD=0;
posS=180;
servoD.write(posD);
servoS.write(posS); }