DRV8825: le pilote des moteurs pas à pas

drv8825

Un conducteur de moteur C'est un circuit qui permet de contrôler les moteurs à courant continu de manière très simple. Ces contrôleurs permettent de gérer les tensions et courants auxquels le moteur est alimenté afin de contrôler la vitesse de rotation. De plus, ils servent de moyen de protection pour éviter d'endommager l'électronique des moteurs en limitant le courant qui circule (hachage).

Par conséquent, si vous envisagez de créer un projet de bricolage qui inclure un ou plusieurs moteurs à courant continuQuel que soit leur type, et en particulier pour les moteurs pas à pas, vous devez utiliser un pilote de moteur pour vous faciliter la tâche. Bien qu'il existe des méthodes pour le faire différemment, en utilisant des transistors, les modules avec pilotes de moteur sont beaucoup plus pratiques et simples. En fait, ces pilotes s'appuient sur des transistors pour faire leur travail ...

Pourquoi ai-je besoin d'un chauffeur?

El le pilote est nécessaire pour le contrôle du moteur, comme je l'ai déjà dit. Aussi, vous devez garder à l'esprit que la carte Arduino et son microcontrôleur ne sont pas capables d'alimenter le mouvement du moteur. Il est simplement conçu pour les signaux numériques, mais il ne fonctionnerait pas bien lorsqu'un peu plus de puissance doit être fournie comme celle exigée par ces types de moteurs. C'est pourquoi vous devez avoir cet élément entre la carte Arduino et les moteurs.

Types de pilotes

Vous devez savoir que il existe plusieurs types de pilotes selon le type de moteur auquel ils sont destinés. Il est important de savoir comment le différencier pour obtenir le bon pilote:

  • Driver pour moteur unipolaire: ce sont les plus simples à contrôler, car le courant traversant les bobines va toujours dans le même sens. Le travail du conducteur doit simplement savoir quelles bobines il doit activer à chaque impulsion. Un exemple de ce type de contrôleur serait l'ULN2003A.
  • Driver pour moteur bipolaire: ces moteurs sont plus complexes et leurs pilotes le sont aussi, comme le DRV8825. Dans ce cas, ils peuvent être activés avec du courant dans un sens ou dans l'autre (nord-sud et sud-nord). C'est le conducteur qui décide de la direction pour changer la polarité du champ magnétique qui est produit à l'intérieur du moteur. Le circuit le plus connu pour l'inversion de sens est appelé Punete H, permettant au moteur de tourner dans les deux sens. Ce pont en H est composé de plusieurs transistors.

Ces derniers sont devenus encore plus populaires ces dernières années car ils sont également inclus dans certains Imprimantes 3D pour contrôler l'impression avec la tête. Il est possible que si vous avez l'intention de monter une imprimante 3D ou si vous en avez déjà une, vous en aurez besoin pour pouvoir contrôler le moteur ou remplacer cette pièce si elle a été endommagée. Ils sont également utilisés pour les robots, les traceurs, les imprimantes conventionnelles, les scanners, les véhicules électroniques, etc.

DRV8825

Il existe plusieurs modèles de pilotes sur le marché. Par exemple, lui DRV8825 est une version améliorée de l'A4988. Ce pilote n'a besoin que de deux sorties numériques du microcontrôleur pour pouvoir gérer correctement le moteur. Seulement avec cela, vous pouvez contrôler la direction et le pas du moteur avec ces deux signaux. Autrement dit, avec cela, il est possible d'effectuer pas à pas, ou pour que le moteur tourne pas à pas au lieu de tourner rapidement comme d'autres moteurs simples.

DRV8825 permet de travailler avec des tensions supérieures à celles utilisées par le A4988, car peut atteindre 45v au lieu du 35v de l'A4988. Il peut également gérer des courants plus élevés, en particulier 2.5 A, soit un demi-ampère de plus que le A4988. En plus de tout cela, ce nouveau driver ajoute un nouveau mode micropas au 1/32 (1/16 pour l'A4988) pour pouvoir déplacer plus précisément l'arbre du moteur pas à pas.

Sinon ils sont assez similaires. Par exemple, les deux peuvent atteindre des températures de fonctionnement élevées sans problème. Par conséquent, si vous les accompagnez d'un petit dissipateur thermique, beaucoup mieux (de nombreux modèles l'incorporent déjà), surtout si vous allez l'utiliser au-dessus de 1A.

Si l'encapsulation atteint des températures élevées, par mesure de précaution, vous devez l'éteindre. Ce serait bien de consulter le feuilles de données du modèle que vous avez acheté et voyez la température maximale à laquelle il peut fonctionner. L'ajout d'un capteur de température à côté du driver pour surveiller la température et utiliser un circuit qui interrompt le fonctionnement s'il atteint cette température limite serait fortement recommandé ...

Le DRV8825 a protection contre les problèmes de surintensité, court-circuit, surtension et surchauffe. Par conséquent, ce sont des appareils très fiables et résistants. Et tout pour un prix assez bas dans les magasins spécialisés où vous pouvez trouver ce composant.

Micro pas

micropas

Avec la technique de des pas de micropas inférieurs au pas nominal peuvent être atteints du moteur pas à pas que vous allez utiliser. Autrement dit, divisez le virage en plusieurs parties pour pouvoir avancer plus lentement ou plus précisément. Pour ce faire, le courant appliqué à chaque bobine est varié en émulant une valeur analogique avec les signaux numériques disponibles. Si des signaux analogiques sinusoïdaux parfaits sont obtenus et déphasés de 90 ° les uns par rapport aux autres, la rotation souhaitée sera obtenue.

Mais bien sûr, vous ne pouvez pas obtenir ce signal analogique, car nous travaillons avec des signaux numériques. C'est pourquoi ceux-ci doivent être traités pour essayer de simuler le signal analogique par de petits sauts dans le signal électrique. La résolution du moteur en dépendra: 1/4, 1/8, 1/16, 1/32, ...

Pour sélectionner la résolution souhaitée, vous devez contrôler les broches M0, M1 et M2 du module. Les broches sont connectées à la terre ou GND par des résistances de rappel, donc si rien n'est connecté, elles seront toujours LOW ou 0. Pour changer cette valeur, vous devrez forcer une valeur de 1 ou HIGH. Les valeurs de M0, M1, M2 respectivement ceux qui doivent être en fonction de la résolution, sont:

  • Pas complet: bas, bas, bas
  • 1/2: haut, bas, bas
  • 1/4: bas, haut, bas
  • 1/8: haut, haut, bas
  • 1/16: faible, faible, élevé
  • 1/32: toutes les autres valeurs possibles

Brochage

Brochage du DRV8825

El Le pilote DRV8825 a un schéma de connexion simple, bien qu'avoir suffisamment de broches puisse être un peu compliqué pour les moins experts. Vous pouvez le voir dans l'image ci-dessus, mais assurez-vous de positionner correctement le module lorsque vous regardez les broches, car il est courant de faire des erreurs et de le prendre à l'envers, ce qui entraîne une mauvaise connexion et même des dommages.

Comme recommandation de connecter le pilote, il est recommandé d'ajuster et d'étalonner correctement l'appareil en suivant les étapes ci-dessous pour un fonctionnement correct et ne pas l'endommager:

  1. Connectez le pilote à la tension alimentation sans moteur connecté ou micropas.
  2. Mesurer avec un multimètre la tension qui existe entre GND et le potentiomètre.
  3. Ajuster le potentiomètre jusqu'à ce que ce soit la valeur appropriée.
  4. Maintenant vous pouvez couper l'alimentation.
  5. En ce moment oui tu peux connecter le moteur. Et rebranchez l'alimentation du plongeur.
  6. Avec la mesure multimètre l'intensité entre le conducteur et le moteur étape par étape et vous pouvez effectuer un réglage plus fin du potentiomètre.
  7. Coupez à nouveau l'alimentation et vous pouvez maintenant le connecter à Arduino.

Si vous n'utilisez pas micropas vous pouvez régler l'intensité du régulateur jusqu'à 100% du courant nominal du moteur. Mais si vous comptez l'utiliser, vous devez réduire cette limite, car la valeur qui circulera alors sera supérieure à celle mesurée ...

l298n
Article connexe:
L298N: module de contrôle des moteurs pour Arduino

Intégration avec Arduino

Schéma ARduino et DRV8825

Pour utiliser le pilote DRV8825 avec Arduino, la connexion est assez simple comme vous pouvez le voir en haut dans ce schéma électronique de Fritzing:

  • VMOT: connecté pour alimenter jusqu'à 45v maximum.
  • GND: masse (moteur)
  • SLP: à 5v
  • RST: à 5v
  • GND: à la terre (logique)
  • STP: vers la broche 3 d'Arduino
  • DIR: vers la broche Arduino 2
  • A1, A2, B1, B2: vers pas à pas (moteur)

Une fois connecté et correctement ajusté, le code pour son contrôle est également simple. Par exemple, pour contrôler un moteur pas à pas, vous pouvez utiliser les éléments suivants code dans l'IDE Arduino:

const int dirPin = 2;
const int stepPin = 3;
 
const int steps = 200;
int stepDelay;
 
void setup() {
   // Configura los pines como salida
   pinMode(dirPin, OUTPUT);
   pinMode(stepPin, OUTPUT);
}
 
void loop() {
   //Se pone una dirección y velocidad
   digitalWrite(dirPin, HIGH);
   stepDelay = 250;
   // Se gira 200 pulsos para hacer vuelta completa del eje
   for (int x = 0; x < 200; x++) {
      digitalWrite(stepPin, HIGH);
      delayMicroseconds(stepDelay);
      digitalWrite(stepPin, LOW);
      delayMicroseconds(stepDelay);
   }
   delay(1000);
 
   //Ahora se cambia la dirección de giro y se aumenta la velocidad
   digitalWrite(dirPin, LOW);
   stepDelay = 150;
   //Se hacen dos vueltas completas
   for (int x = 0; x < 400; x++) {
      digitalWrite(stepPin, HIGH);
      delayMicroseconds(stepDelay);
      digitalWrite(stepPin, LOW);
      delayMicroseconds(stepDelay);
   }
   delay(1000);
}

Je vous conseille également d'essayer quelques exemples de code que vous trouverez parmi les exemples fournis avec l'IDE Arduino et d'essayer de modifier les valeurs pour savoir comment cela affecte le moteur.

Pour plus d'informations sur les moteurs pas à pas, leur contrôle et la programmation Arduino, je recommande téléchargez gratuitement notre cours de programmation.


3 commentaires, laissez le vôtre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.

      Jésus dit

    Bonjour, je construis une CNC maison avec drv8825, ma question est de savoir si je peux mettre des moteurs nema 23 2.8a car ils sont un peu moins chers que 2.5a, aurais-je un problème? Merci beaucoup

         Isaac dit

      Bonjour Jésus,
      Merci de nous lire. Quant à votre question, gardez un œil sur le pilote que vous allez utiliser pour qu'il soit compatible avec ces moteurs. Le boîtier du DRV8825 est jusqu'à un maximum de 2.5A. Regardez pour voir le TB6600, qui peut aller jusqu'à 3.5A si je me souviens bien ...
      Salutations!

      Rodolfo dit

    Salaudos. Quelle est la valeur du condensateur électrolytique qui se trouve dans l'alimentation du moteur. Merci.