Outils pour utilisateurs

Outils du site


start:arduino:pasapas:nema

Les moteurs pas à pas Nema ...

Cablage moteur Pas à Pas

Il faut d'abord reperer les enroulements du moteur ,

Exemple dans mon cas, coté moteur connecteur face à vous l'axe sur le haut

Rouge , Noir, Bleu, Vert.

L'enroulement 1 est sur les fils Rouge , Bleu

L'euroulement 2 est sur les fils Noir , Vert

donc sur le driver moteur , on branche Rouge sur 2B et Bleu sur 2A , et Noir sur 1B et Vert sur 1A

On peut avoir à inverser un ou deux enroulements suivant le fonctionnement ou non du moteur.

Schema

Programme de Test du moteur Nema 17

moteurpaspas.ino
    // A4988_Test.ino
    //
    // Commande d'un moteur pas-à-pas à l'aide d'un pilote A4988 avec
    //     Arduino.
    //
    // Un projet www.mchobby.be (vente de kit et composant)
    // Meurisse D. - Licence CC-SA-BY
    //
    // Un tutoriel http://mchobby.be/wiki/index.php?title=A4988
    // Ou Acheter un StepStick A4988
    //    http://shop.mchobby.be/product.php?id_product=349
    //
 
    #define pinEnable 13 // Activation du driver/pilote
    #define pinStep    9 // Signal de PAS (avancement)
    #define pinDir     8 // Direction 
 
 
    void setup(){
      Serial.begin(9600);
      Serial.println("Test A4988");
 
      pinMode( pinEnable, OUTPUT );
      pinMode( pinDir   , OUTPUT );
      pinMode( pinStep  , OUTPUT );
    }
 
    void loop(){
      int i = 0;
 
      digitalWrite( pinDir   , HIGH); // Direction avant
      digitalWrite( pinStep  , LOW);  // Initialisation de la broche step
 
      // Avance de 200 pas
      for( i=0; i<200; i++){
        Serial.println( i );
        digitalWrite( pinStep, HIGH );
        delay( 10 );
        digitalWrite( pinStep, LOW );
        delay( 10 );
      } 
 
      // Changer de direction
      digitalWrite( pinDir   , LOW); // Direction avant
 
      // Refaire 200 pas dans l'autre sens
      for( i=0; i<200; i++){
        Serial.println( i );
        digitalWrite( pinStep, HIGH );
        delay( 1 );
        digitalWrite( pinStep, LOW );
        delay( 1 );
      } 
 
      // Pas de step et pas d'ordre... 
      //   l'axe du moteur est donc bloqué 
      Serial.println("Axe bloqué + attendre 5 sec");
      delay( 5000 );
 
      // déblocage de l'axe moteur
      Serial.println("Deblocage axe");
      //digitalWrite( pinEnable, HIGH ); // logique inversée
 
      // Fin et blocage du programme
      // Presser reset pour recommander
      Serial.println("Fin de programme");
      //while( true );
    }
 
/home/chanteri/www/fablab37110/data/pages/start/arduino/pasapas/nema.txt · Dernière modification : 2024/02/03 10:56 de gerardadmin