Pages: [1]   Go Down
Author Topic: pbm pour controler 2 servo simultanemment.  (Read 556 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Newbie
*
Karma: 0
Posts: 43
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour,

j'utilise ce sketch avec la librairie servo pour piloter 2 servos futaba modifiés  pour obtenir une rotation de 360deg.
Pour tester, j'utilise un petentiometre pour inverser le sens de rotation des deux servos.

Quand la valeur direction est au-dessus d'un seuil les servo tournent dans un sens, et inversement au-dessous d'une valeur....

Les servo réagissent dans un sens...mais en tournant le pot. avec le seuil ateint, un seul des deux servo inverse sa rotation....l'autre tourne invariablement dans le même sens....

Quelqu'un à une idée pour ce genre de chose???

voici le pgm  très basic utilisé :


Code:
#include <Servo.h>

Servo servo1;
Servo servo2;
int direction=0;

void setup() {

  pinMode(1,OUTPUT);
  servo1.attach(4);
  servo2.attach(2);
   servo1.setMaximumPulse(2500);
   //servo1.setMinimumPulse(700);
   servo2.setMaximumPulse(2500);
   //servo2.setMinimumPulse(700);
  
  Serial.begin(19200);
  Serial.println('Ready');

}

void loop() {

  static int v = 0;
  direction=analogRead(2);
  int val = direction-0;
  
  Serial.println(val);
  
  if(  val>1000){
    servo1.write(90);
    servo1.refresh();
    servo2.write(90);
    servo2.refresh();
    
    Serial.println("avance");
    }


  if( val<400){
    servo1.write(0);
    servo1.refresh();
    servo2.write(0);
    servo2.refresh();
    
    }
}
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 41
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

une erreur dans la modif de tes servos ?
 :-?
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 43
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hello skall,

Merci pour la réponse.
Non je ne pense pas à un pbm dans la modif, si je croise les servos le pbm est identique...et la modif est plutôt basique....
Il mes semble que cela tient à un pbm d'intérruption ou de fréquence...mais sans sertitude.


Fbm  
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 41
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

est-ce que tu utilises la version de la librairie servo qui utilise le timer interne ? je crois que ca pose pb si c'est utilisé en meme temps que le port série... essaie de virer tes appels à serial....
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 43
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

la version que j'utilise se nomme uniquement "servo.h", je pense que ce n''est pas la version avec le timer interne (j'ai vue une version avec comme nom "servoTimmer.h), mais comment en être certain ?
Je vais tenter de supprimer tout les appel à Serial pour tester.


fabien




Logged

Pages: [1]   Go Up
Jump to: