Comprendre et bien utiliser le driver A4988 pour moteurs pas à pas.

On retrouve beaucoup d’applications utilisant les moteurs « pas à pas » ou plus communément en anglais les « Stepper motor ». Je citerai bien sûr les imprimantes 3D bien connues à l’heure actuelle, mais il est bien évident qu’il existe une multitude d’applications pour ces moteurs. Le but de cet article n’est pas de passer en revue toutes les applications et technologies du marché, mais de parcourir ensemble les 80% des notions essentielles sur l’utilisation pertinente du célèbre driver A4988 et son homologue le DRV8825 et de vous partager les mesures que j’ai pu réaliser à l’oscilloscope et constatations que j’ai pu observer.

Voici ma toute nouvelle vidéo qui aborde toute la partie réglage du driver.


J’espère ainsi que cet article et cette vidéo vous permettra de mieux appréhender ces modules, et donc, les utiliser de manière pertinente dans vos propres applications.

Même si un moteur “pas à pas” est relativement simple de par sa construction, il est tout de même un peu plus compliqué de le commander correctement comparé à un moteur DC par exemple.

Pour le moteur DC, une simple tension continue appliquée à ses bornes permet de le faire tourner à une certaine vitesse qui est proportionnelle à cette tension. Pour le moteur “pas à pas”, c’est un peu plus compliqué que cela.

Je ne vais pas faire tout un cours sur les moteurs pas à pas, il en existe déjà une multitude sur le web, mais je vais m’arrêter sur quelques aspects électriques intéressants pour bien comprendre cette technologie et son driver associé. Il y a plusieurs variantes de ces moteurs, l’article va s’intéresser à un modèle courant qui est dit de type « Bipolaire ».

Aujourd’hui, grâce à des driver spécialisés, par exemple le A4988 ou le DRV8825 (voir ci-dessous) il est facile de commander ce type de moteur à l’aide d’un simple microcontrôleur, un arduino par exemple, en générant un signal d’horloge cadencé à une certaine fréquence et un autre signal logique permettant de gérer le sens de rotation à l’aide d’un niveau « 1 » ou « 0 ». Ces deux signaux sont utilisés dans le mode de base, nous allons voir qu’il y a d’autres signaux qui peuvent apporter plus d’options dans l’utilisation du moteur.

A4988 et DRV8825

Les deux références sont en réalité les références des circuits intégrés placés sur les PCB’s respectifs. Vous trouverez en fin de l’article les liens vers les deux datasheet.

Les deux PCB ci-dessus sont pine à pine compatible. Il existe beaucoup de fournisseurs sur le web pour ces articles.

Intéressons-nous à la synoptique ci-dessous pour bien comprendre les principes fondamentaux de ce type de driver.

Schéma de principe DRV8825

Les signaux entre le « controller » et le « driver » sont de type logique et compatibles avec les microcontrôleurs en 3.3V et 5V, ce sont les signaux dits de commande. Les deux courbes en bleu et en rouge représentent les signaux de puissance appliqués au moteur pour lui garantir un fonctionnement normal.

Il est très important de constater que l’unité de l’axe « Y » est en courant et non pas en tension, ça peut paraitre être un détail pour vous, mais c’est fondamental. Si je reviens brièvement sur un moteur de type DC, comme on en retrouve beaucoup dans la petite robotique (généralement pour la motorisation) ils sont eux, commandés en tension.

Ce qui est également important, c’est que ces deux signaux sont de forme sinusoïdale (même s’il y a de petits escaliers) et parfaitement déphasés de 90°.

La vitesse du moteur pas à pas ne dépend pas de l’amplitude des signaux, mais de la fréquence de ceux-ci. La vitesse des moteurs DC, est, quant elle, fonction de la valeur moyenne de la tension continue appliquée à ses bornes.

La plage de la tension d’alimentation de la partie puissance du driver est comprise entre 8.2V et 45V pour le DRV8825 et entre 8V et 35V pour le A4988. Je vais vous expliquer comment il faut interpréter cette information et l’effet qu’elle aura sur le fonctionnement du moteur.

Pour terminer, il est indiqué au niveau des deux bobines, un courant de 2.5A, cette valeur est bien sûr le courant max que pourra fournir le driver et non pas le courant qui sera fourni d’office au moteur. Le courant fourni au moteur sera réglable en fonction des caractéristiques de ce dernier.

Comment fonctionne concrètement un moteur pas à pas.

Il existe beaucoup de sites traitant de cette technologie, le but de cet article, n’est pas de refaire un cours sur le moteur, mais de vous expliquer comment le commander correctement à l’aide des drivers dont il est question ici dans l’article.

Vous trouverez ci-dessous un lien vers une vidéo (en anglais) qui illustre parfaitement, par une animation, le fonctionnement du moteur. Je vous invite à regarder ce film et revenir sur ce bloc pour continuer la suite de l’explication.

https://www.youtube.com/watch?v=eyqwLiowZiU

Comme vous aurez pu le comprendre dans l’animation, la commande du moteur réside dans une alimentation séquentielle des deux bobines du moteur tout en inversant les polarités.

C’est ici que le driver va jouer tout son rôle, il permettra d’appliquer les signaux électriques nécessaires aux bobines du moteur par le biais d’un simple signal d’horloge généré par votre microcontrôleur. Vous retrouvez ci-dessous la synoptique relativement complexe de l’intérieur du driver A4988. C’est là que l’on comprend la nécessité d’utiliser des composants spécialisés pour des fonctions spécifiques. Imaginez si vous deviez faire vous-même toute l’électronique de ce driver par des éléments électroniques séparés !!!

Schéma interne A4988

Le but n’est pas d’étudier tout l’intérieur, mais de comprendre le minimum essentiel !

Nous allons nous attarder aux deux grands encadrés en rouge, cela représente ce que l’on appelle un pont en H constitué de 4 transistors MOSFET qui permettront de commander les deux bobines du moteur. Ce type de montage permet d’alimenter les bobines dans les deux polarités avec simplement une seule alimentation, en voici l’explication :

Les quatre transistors MOSFET travaillant en commutation sont représentés par les quatre interrupteurs S1 à S4. Ces quatre interrupteurs vont travailler en diagonale. Les deux figures ci-dessous montrent l’inversion de polarité aux bornes de la charge en fonction de la saturation de S1-S4 et de S2-S3.

Pont en H

Si je prends l’exemple du driver A4988, l’alimentation du pont en H correspond à la tension « motor power supply » (du schéma ci-dessous) connectée entre les pins VMOT et GND. Cette tension est différente de celle qui alimente la partie “logique de contrôle.

schéma de principe montage A4988

Je vais faire l’exercice avec vous d’un choix d’un moteur (je vous mettrai le lien en bas de l’article) et ainsi voir ensemble comment il faut interpréter certaines caractéristiques.

L’image ci-dessous correspond à un moteur tout à fait standard avec 200 pads par tour donc 1.8°/tour. Une remarque importante, ce moteur absorbe un courant de 1.33A sous 2.8V. Comment allez-vous faire pour connecter ce moteur au driver A4988 alors que ce dernier doit être alimenté avec une tension au minimum de 8V !!!

Je vous rassure, ce driver est tout à fait capable de commander ce moteur !

En fait, ce driver est conçu pour commander le moteur en courant et non en tension, cela peut vous paraitre bizarre, mais c’est pourtant la réalité. Voyons comment tout se passe à l’intérieur du composant. Sur la figure ci-dessous, vous pouvez voir deux résistances RS1 et RS2 connectées entre la partie inférieure du pont en H et la masse, ces résistances vont permettre de mesurer le courant en permanence dans les bobines du moteur et agir ainsi sur l’électronique de commande du pont en H.

Les quatre MOSFET sont bien sûr commandés en fonction du signal « STEP » généré par le microcontrôleur, mais également en fonction de la tension mesurée aux bornes RS1. En fait quel que soit la tension qui alimente le driver entre 8 et 35V, celui-ci va surveiller le courant à l’intérieur des bobines pour qu’il ne dépasse pas la valeur nominale réglée. Je vous expliquerai le réglage par la suite.

Cette surveillance est une application de la loi d’Ohm, en effet, la tension aux bornes d’une résistance est égale \( R\times I\), en mesurant la tension aux bornes d’une résistance dont on connait sa valeur, il est facile alors d’en déduire le courant qui la traverse et donc le courant à l’intérieur de la bobine.

Comment évolue le courant à travers les bobines du moteur pas à pas ?

Avant de commencer, j’aimerais revenir sur les caractéristiques du moteur que nous sommes en train d’étudier. J’ai entouré deux grandeurs physiques dans le tableau ci-dessous, l’inductance et la résistance. Je pense que vous le savez en ayant regardé la vidéo, les bobines sont des selfs dont l’unité est le Henry, dans le cas de notre moteur la valeur est de 2.5mH. Une bobine est constituée d’une longueur de fil d’un certain matériau et d’une certaine section, selon la loi de Pouillet, cette bobine a une résistance intrinsèque dont la valeur est égale, dans le cas de notre moteur à 2.1 Ohms.

Donc le schéma équivalent d’une self réelle est une self pure en série avec une résistance. Pour mieux comprendre le fonctionnement du driver, nous allons étudier, au moyen d’une petite simulation LTspice, l’évolution du courant à travers un circuit RL (résistance en sériel avec une self) en fonction d’une tension continue appliquée à ses bornes.

Schéma de principe pour la simulation.

simulation circuit RL

1er exemple

La tension V1 appliquée à la bobine du moteur est de 2.8V.

Le graphe montre une évolution progressive du courant à travers la bobine pour se stabiliser à 1.33A après 8msec. Cette tension continue peut-être appliquée au moteur indéfiniment sans détruire celui-ci.

En fait, l’amplitude finale du courant dans le circuit RL est uniquement lié à la partie R du circuit. Par contre, la partie L du circuit est responsable de l’évolution progressive du courant à travers celui-ci. Je vous mets ci-dessous un exemple dont la valeur de la self serait de 0.01mH, vous allez constater une nette augmentation de la variation du courant à travers le circuit.

2ème exemple

La tension appliquée à la bobine du moteur est de 12V

Vous l’avez compris, dans ce cas, l’intensité est beaucoup trop élevée, 5.7A.

Pour jouer le jeu, nous allons tout de même tester le 3ème exemple.

 

3ème exemple

La tension appliquée à la bobine du moteur est de 24V.

C’est bien sûr beaucoup de trop !!

Alors, pourquoi proposer d’alimenter le driver avec une tension allant jusque 35V en sachant que beaucoup de moteurs « pas à pas » bipolaires ont des résistances de bobines dans cet ordre de grandeur.

Comme expliqué dans la vidéo, une bobine traversée par un courant crée un champ magnétique qui est proportionnel au courant, ce champ magnétique sera responsable du couple généré par le moteur, puisque le rotor va s’orienter en fonction du champ généré par les bobines, la force résultante sera d’autant plus importante que le champ est élevé.

Donc dans le premier exemple, le champ sera maximal 8msec après que la tension de 2.8V soit appliquée. Vous allez peut-être me dire que c’est rapide, mais tout est relatif ! Vous allez comprendre pourquoi.

Si j’analyse directement de plus près le troisième exemple et que je fais un zoom sur le courant, la figure ci-dessous nous montre que le courant atteint 1.33A après seulement 0.158 msec, ce qui est 50 fois plus rapide !!

La montée en courant est beaucoup plus importante dans ce 3ème cas, et donc la dynamique du moteur le sera également. J’entends par dynamique, le fait qu’il sera possible d’atteindre des accélérations et des vitesses plus élevées pour un couple résistif donné.

Le principe de ces deux drivers réside dans le fait que le système mesure en permanence le courant dans les bobines, et agit sur la commande des MOSFET pour faire en sorte de ne jamais dépasser le courant maximal admissible. Les MOSFET vont se bloquer avant même que le courant n’atteigne sa valeur de régime, ce qui correspondrait dans le 3ème cas, à un courant de 11A.

Je voudrais apporter une touche pratique à cet article pour illustrer tout cela, j’ai réalisé pour vous toute une série de mesure à l’oscilloscope, pour vous permettre, je l’espère, de mieux comprendre ce type de driver.

Voici le montage que j’ai utilisé pour réaliser tous mes essais.

Montage test A4988

Arduion mega, une carte Ramps v1.4 et un driver A4988. J’associe à cela un potentiomètre monté en diviseur de tension qui permet à ma carte arduino de modifier la fréquence de commande du moteur en fonction de la tension mesurée à la sortie du potentiomètre.

Les mesures faites à l’oscilloscope sont :

  • La mesure du courant à travers une bobine du moteur.
  • La mesure de la tension appliquée aux bornes de cette même bobine.

Technique utilisée pour la mesure du courant et le montage que j’ai réalisé :

Utilisation d’un « peine header » auquel j’ai coupé une pine pour insérer une résistance SMD de 0.1 Ohm en format 1206. En mesurant la tension aux bornes de cette résistance, il est possible, à l’aide de la loi d’Ohm, d’obtenir le courant qui circule à travers cette bobine. \( I=\frac{U}{R} \)

Le principe de la mesure de courant dit « par résistance shunt » nécessite l’utilisation d’une résistance la plus faible possible pour ne pas influencer la charge dans le circuit, dans notre cas, la bobine du moteur. Le problème, plus cette résistance est petite, plus la tension aux bornes de cette résistance (pour un courant donné) est petite. Il n’est pas toujours aisé de mesurer de faibles tensions à l’oscilloscope surtout dans un environnement bruité, comme c’est notre cas dans cette mesure de courant moteur. J’aurais pu utiliser la technique classique du probe et de son câble de masse.

Mon expérience m’a montré à de multiples reprises que la boucle formée par le câble de masse fait office d’antenne, et que pour de faibles tensions, le signal prélevé à l’oscilloscope est souvent fort bruité.

Une technique qui fonctionne super bien est de placer un connecteur de type SMB pour mesurer la différence de potentiel aux bornes de cette résistance.

Câble d’adaptation pour SMB/BNC pour une connexion facile à l’oscilloscope.

Prenons le cas d’une commande en « full step » (je vous montrerai les autres modes par la suite). Prenons un moteur à 200 pas/tour.

Je vous invite bien sûr à consulter la datasheet du driver A4988 (je mets le lien en fin d’article) pour de plus amples informations. La figure ci-dessous représente le courant dans les deux bobines en fonction du signal STEP appliqué à l’entrée du driver. Vous pouvez constater que le « flanc » du courant a une pente infinie !! Vous vous doutez bien qu’en pratique, ce n’est jamais le cas, nous allons visualiser tout cela à l’oscilloscope.

Voici l’allure réelle du courant mesuré dans une des deux bobines à l’aide de mon oscilloscope. Le signal en jaune correspond bien sûr à la partie entourée en rouge de la figure ci-dessus ! Je reviendrai au signal en bleu par la suite.

La tension VBB (Vmot) qui alimente le pont en H est de +- 6.5V. Attention, si vous consultez la datasheet, la tension minimum est de 8V, j’ai simplement essayé de descendre légèrement la tension pour accentuer le phénomène que je mets en évidence, j’ai constaté qu’à 6.5V, le driver fonctionnait toujours.

La valeur de crête du signal CH1 est de 100mV, ce qui correspond à un courant de 1A à travers la bobine. \(I=\frac{U}{R}= \frac{100\times 10^{-3}}{0.1} =1A \).

Nous pouvons constater deux choses, la pente est nettement moins importante que celle observée sur la figure théorique, et on peut remarquer une certaine ondulation sur la partie supérieure et inférieure du courant.

Comme pour la simulation LTSpice, le courant croit dans la bobine avec une certaine pente, vous pouvez constater une très nette ressemblance entre les signaux théoriques est les mesures pratiques.

Pour que le courant change complètement de polarité, il faut 1.4ms (voir la figure ci-dessus). Pour que le couple moteur soit maximal, il faut que le courant soit maximal également, donc il faut attendre au minimum 1.4ms avant d’appliquer le prochain step. A chaque step, le moteur progresse de 1/200 de tour, donc pour un tour cela donne 280ms/tour, la vitesse est quant à elle de 1/280ms= 3.57 tours/sec donc 214 tours/min, ce qui n’est pas très élevé.

Vous allez me dire, « élevé » « pas très élevé » tout est relatif, je suis bien d’accord avec vous, tout dépend de l’application dans laquelle sera utilisée le moteur. Le but ici est simplement de vous montrer l’impact que peut avoir la tension d’alimentation du driver sur le comportement du moteur.

La tension VBB (Vmot) qui alimente le pont en H est de +- 20V.

Cette fois-ci l’inversion de polarité se fait en +- 280µs, donc 5 fois plus rapide que dans le cas précédent.

La tension d’alimentation du driver a un impact sur la dynamique du moteur.

Cependant, ce qui est très important de constater, c’est que l’amplitude du courant n’a pas changé, elle est toujours de 1A !!

Le driver procède une électronique interne qui contrôle le courant (à l’aide des résistances RS1 et RS2) et agit sur la commande des MOSFET du pont en H en mode PWM.

Voici une représentation de tout cela (en mode demi-step) :

Pour aller un peu loin dans l’explication, je vais m’intéresser à l’allure de la tension aux bornes des bobinages.

Comme vous pouvez le constater sur la figure ci-dessous, le signal de tension est un peu particulier ! En fait, dans un moteur électrique, on s’intéresse plutôt à l’allure du courant dans les bobinages qu’à la tension appliquée aux bornes du bobinage !

Cela peut vous paraitre bizarre, mais c’est pourtant bien le cas. En général, le fonctionnement d’un moteur électrique est basé sur des phénomènes magnétiques, qui eux sont fonction du courant à travers les bobinages, c’est pour cette raison qu’il est important de bien maitriser le courant à travers ces bobines. Au passage, si vous consultez la datasheet complète du driver A4988, vous ne verrez pas de graphe en rapport avec la tension aux bornes des bobinages.

En réalité, c’est le driver qui va commander ses MOSFET en mode PWM afin d’obtenir le courant désiré à l’intérieur des bobines.

Juste pour le fun, voici l’allure du courant dans la bobine (CH1) et de la tension aux bornes de la bobine (CH2).

Pour les lecteurs qui veulent aller un peu plus loin dans le détail, nous allons analyser de plus près l’allure des deux signaux.

Je voudrais passer par un petit rappel sur la loi qui lie la tension et le courant à travers une self (pure).

\( U_{L}=L \times \large \frac{dI_{L}}{dt} \)

En français, cette formule nous dit que la tension aux bornes d’une self est le produit de la valeur de L multiplié par la dérivée du courant (par rapport au temps) à l’intérieur de la self. Pour une résistance, la loi d’Ohm nous dit simplement \( U_{R}=R \times I_{R}\).

Pour une self donnée, ce n’est pas l’amplitude du courant qui détermine la tension aux bornes de la self, mais la variation de celui-ci !!

Donc, selon l’équation, pour une self de valeur constante, si la tension appliquée à ses bornes est constante, le di/dt est constant également, donc le courant évolue de manière linéaire au cours du temps.

Nous allons analyser tout cela à l’aide du pont en H que l’on retrouve à l’intérieur du driver, et nous allons considérer que la charge est une self. Les signes + et – représente la polarité de la tension aux bornes de la self et les flèches en rouge représentent le sens du courant.

 

Fig : A
Fig : B

 

 

 

 

 

 

 

 

 

 

Fig : C

Je le rappelle, l’électronique à l’intérieur du driver commande les MOSFET’s d’une manière spécifique pour obtenir le courant désiré à l’intérieur de la bobine.

Analysons les 4 phases suivantes.

Je voulais également vous montrer la cohérence entre la figure théorique de la datasheet et les mesures réelles obtenues ! Les deux petites lignes rouges que j’ai ajoutées sur la courbe de l’oscilloscope correspondent aux phases « Fast Decay » et « Slow Decay » reprises dans la datasheet.

  • Phase n°1 : changement de polarité à l’intérieure de la bobine, la tension est positive, le courant croit de manière linéaire (avec une pente constante et positive). Fig A.
  • Phase n°2 : Le courant atteint la valeur max, le driver stoppe la croissance du courant, la tension aux bornes de la self s’inverse, la pente du courant s’inverse, le courant décroit dans le mode « Fast Decay » . Fig B.
  • Phase n°3 : Le driver se met en mode « Slow decay », la tension aux bornes de la charge est nulle, le courant tourne en roue libre à travers le MOSFET S2 qui est saturé et la diode du MOSFET S1. Fig C.
  • Phase n°4 : Le driver réalimente la charge avec une tension positive pour faire recroitre le courant dans le self. Fig A.

Ce cycle continue jusqu’au prochain signal « step » appliqué à l’entrée du driver.

Suite à toutes ces explications, j’espère que vous comprenez mieux pourquoi le driver A4988 est un driver en courant et non en tension.

Comme je cherche à être un maximum pratique, voici quelques figures faites à l’oscilloscope pour vous montrer la correspondance entre la réalité et la datasheet.

Mode demi-step.

 

Mode quart de step.

 

Mode huitième de step.

Mode seizième de step.

On se rapproche dans ce cas d’une parfaite sinusoïde. Pour une question de mesure, je n’ai pu mesurer les deux courants simultanément dans les deux bobines.

Si vous faites des recherches sur internet sur les driver A4988 et DRV8825 vous allez retrouver des petits PCB’s directement utilisables qui intègrent ces chip.

Le A4988 et son schéma de principe.

Les résistances \(R_{CS} \) sont les résistances shunt mises en série avec les bobines du moteur. Pour le réglage de ce courant, le circuit est doté d’un petit potentiomètre qui permet de modifier la tension à la pine 17 (Vref). Cette tension est directement responsable de l’amplitude du courant à travers les bobines.

Le DRV8825 et son schéma de principe.

Ces petits modules sont facilement intégrables dans vos montages arduino et microcontrôleurs.

La figure ci-dessous illustre le montage de base pour une utilisation correcte du driver.

En fonction du contexte dans lequel vous vous trouvez, vous pouvez bien entendu relier les pins ENABLE, RESET, SLEEP à votre microcontrôleur.

Pour les pins MS1, MS2, MS3, vous pouvez appliquer un état logique fixe ou les connecter à votre microcontrôleur pour mettre le driver dans un mode donné selon la table de vérité ci-dessous.

Il faut faire bien attention de respecter la plage pour les tensions d’alimentation de la partie logique et de la partie power. Remarque, le moins des deux alimentations sont reliés ensemble.

Veillez à ce que l’alimentation connectée à Vmot puisse bien fournir le courant nécessaire au bon fonctionnement du moteur !!

Je voudrais terminer cet article en insistant sur le fait que, tout ce qui vient d’être dit, ne s’applique qu’au moteur « pas à pas » de type BIPOLAIRE !

Dans beaucoup d’application arduino, vous risquez de retrouver un autre type de moteur « pas à pas » et son driver associé (voir figure ci-dessous):

Attention, ces deux entités ne fonctionnent pas du tout sur le même principe que celui expliqué dans cet article.

-Ce sont des moteurs de type unipolaire

-Le driver est un circuit intégré qui referme uniquement 8 transistors Darlington dont seulement 4 sont utilisés.

Ces transistors travaillent bien sûr en commutation, mais ce circuit ne possède nullement de mesure de courant, vous devez les voir comme de simples interrupteurs.

 

Dans ce cas, la tension utilisée pour alimenter le driver ne peut en aucun cas être supérieure à la tension spécifiée par le moteur. En fait, dans ce type de moteur, c’est la tension d’alimentation qui figure sur le moteur et dans les moteurs bipolaires, c’est plutôt le courant max à ne pas dépasser dans les enroulements qui est indiqué.

J’ai dans mon stock un petit moteur sur lequel est indiqué 5V, lorsque je mesure la résistance d’une bobine à l’Ohmmètre, elle est de 22 Ohms contre 2.1 Ohms pour notre moteur étudié. Dans le cas du driver ULN2003 le courant dans les enroulements du moteur est directement lié à la tension appliquée à celui-ci !!

\( \frac{5}{22}=227mA \)

Les transistors du ULN2003 peuvent en saturation laisser passer chacun 500mA.

Ce sont souvent des petits moteurs pour des applications nécessitant des petits couples et faibles vitesses.

La logique de commande est également différente, vous devez ici générer la séquence d’alimentation des bobines dans le programme de votre arduino et vous savez travailler uniquement en full step !

Je ne dis pas que ces moteurs et drivers ne sont pas bien, il faut juste comprendre la différence, et ainsi faire un choix opportun en fonction de votre application.

Nous arrivons à la fin ce cet article, toutes mes félicitations pour être arrivé jusqu’au bout.

 

Vous pouvez retrouver toute mes vidéos en vous abonnant à ma chaine YouTube!

 

N’hésitez pas à me laisser vos commentaires, vous abonner à ce blog et surtout partager si vous trouvez cet article intéressant.

A bientôt,

Denis.

 

 

Partager l'article:
  •  
  •  
  •  
  •  
  •  
    559
    Partages
  • 559
  •  

15 commentaires sur “Comprendre et bien utiliser le driver A4988 pour moteurs pas à pas.

  1. Merci pour cette article qui m’a appris pas mal de chose sur le fonctionnement du moteur pas à pas et aussi sur le pololu. J’avoue qu’au démarrage de ma lecture, j’espérai comprendre pourquoi mon moteur (Nema17) ne tournait pas en étant branché sur un shield lui même sur un arduino uno. J’ai 4 pololus sur chaque axes au niveau du shield. J’alimente mon arduino en 12v. J’ai pris un programme très basique pour réaliser 1 révolution. Pour le Gcode, j’utilise GRBL. Mais rien.
    Je crois que cela vient du fait que je n’ai pas réglé les pololus. Et j’avoue ne pas savoir comment faire. Si vous pouviez me donner quelques pistes.
    Merci

    1. Bonjour et merci pour ton message. C’est bien sûr pas toujours facile de répondre à distance et par écrit. De mon côté, je pourrais t’appeler par google hangout pour en discuter 10 min, ce sera peut-être plus efficace. Souvent en étend électronicien, j’essaie toujours de partir sur le minimum nécessaire, pas de code complexe, un seul élément à la fois,… Je vais t’envoyer mon code qui est très simple à tester. Je te l’enverrai sur ton adresse email. Tien-moi informé,
      Denis.

  2. Merci Denis pour ta réponse.
    Je veux bien ton code pour être sur.
    J’ai aussi trouvé un article sur le blog du Bear qui traite du réglage du Pololu. Je vais aussi faire ce qu’il conseille.
    Mon projet est de construire un distributeur de graines pour mes grandes perruches avec prises de photo avant la distribution afin de mesurer la quantité à donner puis photo après distribution pour vérifier la bonne distribution. J’ai 6 volières que je veux équiper de 3 distributeurs chacun afin de gérer les déférents aliments à fournir. Idem pour la distribution d’eau, cela devrait être plus facile et sans électronique.
    Si cela t’intéresse, je peux partager mes réalisation avec toi, sachant que je n’ai pas beaucoup de temps et que cela va être long ;o)
    A bientôt
    Marc

  3. Bravo !! Super article, plein d’informations. Merci pour ce partage, je dois dire qu’il me faudra quelques relectures pour bien appréhender la chose et surtout tester, tâter, donc du pain sur la planche, mais avec ce fil rouge …. même pas peur !

  4. J’ai découvert ton article via le forum lesimprimantes3d où tu as laissé un post dans la section Tutoriels.
    Quelques corrections éventuellement:
    -pins ou broches en lieu et place de “pines” (qui en français signifie autre chose ;-),
    – concernant le schéma de principe, il concerne le DRV8825 et pas le 8824

    Sinon article très fouillé, explicatif et pédagogique. J’ai appris de nombreuses choses bien que l’électronique ne soit aucunement ma spécialité.
    Si ton livre est du même acabit, je vais me laisser tenter en fournissant mon mèl pour le recevoir.

  5. Bravo pour ce cours magistral sur les drivers des stepper moteurs bipolaires. Ce serait bien de mettre le code Arduino sur cette page comme ça tout le monde pourrait en profiter. Il est visible sur la vidéo mais pas complètement. L’approche est différente des autres tuto que j’ai pu suivre où on nous demandait de régler la tension entre le pot et la masse. J’ai commandé une shield ramps 1.4 et vais tenter de reproduire les tests ci-dessus. Je suis aussi intéressé par un tuto sur ltspice. il en existe sur le web mais assez succincts. Si c’est dans tes projets d’en faire un, je suis preneur. Je me suis abonné à ta chaîne youtube, je serai donc prévenu de tes futurs tuto. Bonne continuation !

    1. Bonjour Alain, merci pour ton message encourageant. Je viens d’ajouter deux liens pour télécharger le programme, un pour le projet complet “Visual Studio” et l’autre pour le simple fichier ino.
      Bonne chance pour tes tests,
      Pour LtSpice, je suppose que tu as vu l’article sur comment créer un potentiomètre avec LTSpice, je sais, ce n’est pas un tuto complet.
      Bien à toi,
      Denis.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *