IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Embarqué Discussion :

arduino mouvement incontrolés


Sujet :

Embarqué

  1. #1
    Candidat au Club
    Inscrit en
    Décembre 2011
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Décembre 2011
    Messages : 2
    Points : 2
    Points
    2
    Par défaut arduino mouvement incontrolés
    salut tlm,
    je comment la programmation de mon hexapode sur arduino, j'espère etre sur le bon forum.
    j'ai un petit problème lors du lancement du programme, avant de mettre en position les six servo à l'aide de l'instruction "writeMicroseconds". en fait des mouvements anarchique s'execute sur certain moteur pendant quelques secondes puis les servos se positionnent correctement. 0 quoi est ce du. si vous pouvez m'éclairer. merci voici le prog. c le debut pour moi je teste les instructions. lol.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    #include <Servo.h> // inclusion de la librairie Servo
     
    Servo myservo3, myservo5, myservo6, myservo9, myservo10, myservo11; // déclare une variable de type Servo appelée myservo
    
    void setup() 
    { 
      myservo3.attach(3); // associe le servomoteur à la broche 9 
      myservo3.writeMicroseconds(1500);  // positionne le servomoteur au milieu
      myservo5.attach(5); // associe le servomoteur à la broche 9 
      myservo5.writeMicroseconds(1000);  // positionne le servomoteur au milieu
      myservo6.attach(6); // associe le servomoteur à la broche 9 
      myservo6.writeMicroseconds(1500);  // positionne le servomoteur au milieu
     
      myservo9.attach(9); // associe le servomoteur à la broche 9 
      myservo9.writeMicroseconds(1500);  // positionne le servomoteur au milieu
      myservo10.attach(10); // associe le servomoteur à la broche 9 
      myservo10.writeMicroseconds(2000);  // positionne le servomoteur au milieu
      myservo11.attach(11); // associe le servomoteur à la broche 9 
      myservo11.writeMicroseconds(1500);  // positionne le servomoteur au milieu
     
    } 
    
    
    void loop() {}

  2. #2
    Membre chevronné

    Homme Profil pro
    .
    Inscrit en
    Janvier 2006
    Messages
    703
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Janvier 2006
    Messages : 703
    Points : 1 950
    Points
    1 950
    Par défaut
    Ça pourrait ressembler au comportement classique d'alimentation d'un servo moteur.
    Enfin plusieurs secondes c'est curieux ...
    Que se passe t-il si tu commentes tous les writeMicroseconds et que tu ne laisses que les attach ?

  3. #3
    Candidat au Club
    Inscrit en
    Décembre 2011
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Décembre 2011
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Je comprend pas ta question.
    En fait les pin 3 5 6 sont pour le bras droit et 9 10 11 a gauche. quand je lance le prog les servo pin 9 10 11 tramble et se deplace durant 3 ou 4 sec puis les instruction du programme execute normalement.. mais bon ca deconne toujour au debut.

  4. #4
    Membre chevronné

    Homme Profil pro
    .
    Inscrit en
    Janvier 2006
    Messages
    703
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Janvier 2006
    Messages : 703
    Points : 1 950
    Points
    1 950
    Par défaut
    Hé bien, je veux dire, si tu ne laisses que les appels à attach(), càd uniquement l'initialisation de la pin
    Mais autant que j'aille au bout de ma pensée. Je veux savoir si le fait de couper ton setup en 2 a une influence ou pas.

    Donc :
    • Faires les attach
    • Puis faire les writeMicroseconds


    tester l'un sans l'autre, avec des tempo, etc.

    Même chose, faudrait essayer de couper en 3 tests :
    • Faire bouger un servo
    • Faire bouger un bras (gauche & droite)
    • Faire bouger les deux bras

    Pour voir s'il y a une différence. Et puis tester de faire bouger individuellement un seul servo qui a un comportement bizarre etc.

    Ça peut être plein de trucs en fait. Il faut décomposer ton mouvement pour essayer de comprendre ce qui cause ça.

Discussions similaires

  1. probleme mouvement dans un paysage
    Par nonoRedDevils dans le forum OpenGL
    Réponses: 24
    Dernier message: 24/06/2004, 12h12
  2. [JButton] Mouvements souris + MousePressed
    Par Devil Redneck dans le forum Composants
    Réponses: 8
    Dernier message: 17/05/2004, 17h49
  3. [FLASH MX PRO] effet mouvement clip
    Par dens63 dans le forum Flash
    Réponses: 5
    Dernier message: 21/04/2004, 10h16
  4. [FLASH MX]le mouvement et les sacades
    Par VincentB dans le forum Flash
    Réponses: 6
    Dernier message: 16/01/2004, 23h42
  5. Comment limiter les mouvements du curseur??
    Par scorpiwolf dans le forum C++Builder
    Réponses: 9
    Dernier message: 07/07/2002, 22h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo