domanda sui servo

salve a tutti. ho realizzato questo semplicissimo sketch. come vedete il servo 1 si muove da 90 a 180 poi il servo 2 da 0 a 90. Se volessi fare che i servi 1 e 2 si muovano nello stesso momento. Ma tenedo quella velocità come faccio

#include <Servo.h>
Servo mioservo1;
Servo mioservo2;
int angolo =0;

void setup()
{
  mioservo1.attach(12);
  mioservo2.attach(9);
}
void loop()
{
   mioservo1.write(70);
    mioservo2.write(90);
  delay(3000);
  for(angolo = 90; angolo < 180; angolo += 1)
  { 
    mioservo1.write(angolo); 
    delay(30); 
  }
  for(angolo = 0; angolo < 90; angolo += 1)
  { 
    mioservo2.write(angolo); 
    delay(30); 
  }
}
for(angolo = 90; angolo < 180; angolo ++ )
  {
    mioservo1.write(angolo);
    mioservo2.write(angolo-90);
    delay(30);
  }

Si ok ma se volessi fare 2 gradazioni più distinte, tipo una da 0 a 120 e l'altro da 150 a 25, sempre in contemporanea... come si fa ?

ilfrance:
Si ok ma se volessi fare 2 gradazioni più distinte, tipo una da 0 a 120 e l'altro da 150 a 25, sempre in contemporanea... come si fa ?

Beh i passi devono essere uguali, ovvero la distanza tra posizione iniziale e posizione finale devono essere uguali.
Esempio tipo il tuo ma "proporzionati" uno da 0-120 e l'altro 150-30 così la differenza è sempre 120.

for(ang1=0,ang2=150; ang1< 120; ang1++,ang2-- )
{ mioservo1.write(ang1);
  mioservo2.write(ang2);    // ne consegue che va da 150 a 30
  delay(30);
}

Oppure, sempre con due variabili, le inizializzi al valore di partenza e poi una la aumenti di 1 mentre l'altra la decrementi non di uno ma di un valore proporzionale. Esempio se 0-120 aumenti di 1 quindi 120 passi, allora l'altro (150-25) dovrai diminuirlo di (150-25)/120=>1,0416 periodico che però è scomodo

forse potrebbe interessarti anche una libreria tipo questa?
VarSpeedServo