Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
fr:electronics:moteur_pas_a_pas [29/08/2021 20:47]
Keuronde [Limitation en courant]
fr:electronics:moteur_pas_a_pas [02/09/2021 21:56] (Version actuelle)
Keuronde [Les modules]
Ligne 1: Ligne 1:
-====== Commandes des moteurs pas à pas ======+====== Pilotage des moteurs pas à pas ======
  
 +Attention, dans les exemples qui suivent, à fins de simplifications, le moteur représenté n'a que 4 pas. Dans le commerce, les moteurs à 200 pas sont communs et ceux à 400 pas, fréquents.
 +===== Les différents moteurs pas à pas =====
 +
 +La commande des moteurs pas à pas est souvent présentée comme la simple alternance du pilotage des bobines du moteur, mais nous verrons que la réalité est un peu plus complexe.
 +
 +Tout d'abord, il existe différents types de moteur pas à pas. Les plus répandus sont les moteurs pas à pas à aimant permanent, ce sont d'eux dont nous traiterons ici.
 +
 +Parmi ces moteurs, il existe deux manières de les câbler qui influe sur leur pilotage. Les moteurs unipolaires autorisent deux modes de pilotage : unipolaire et bipolaire. Les moteurs bipolaire ne peuvent être pilotés qu'en mode bipolaire.
 +
 +| {{:fr:electronics:moteur_pas_a_pas_type_unipolaire.png?400|}} | {{:fr:electronics:moteur_pas_a_pas_type_bipolaire.png?400|}} |
 +| Moteur unipolaire | Moteur bipolaire |
 +
 +==== Commande unipolaire ====
 +
 +
 +La commande unipolaire permet de n'utiliser qu'un transistor par bobine. Comme ceci :
 +
 +{{:fr:electronics:moteur_pas_a_pas_commande_unipolaire.png?400|}}
 +
 +Elle est donc plus simple à mettre en œuvre sur une platine. L'inconvénient est que vous n'utilisez que la moitié de la bobine, diminuant grandement les performances du moteur. Attention, ce montage à certainement besoin d'une diode de roue libre par bobine. En effet, lorsque le transistor coupe l'alimentation de la bobine, ça crée une variation brusque de courant, qui se traduit par une très forte élévation de tension au niveau de la bobine :
 +$$ U_l = L * \frac{di}{dt} $$
 +
 +Cette surtension peut détruire les transistors.
 +
 +==== Commande bipolaire ====
 +
 +La commande bipolaire utilise la bobine complète et fait circuler le courant dans les deux sens de la bobine pour attirer alternativement le pole nord ou sud de l'aimant.
 +
 +{{:fr:electronics:moteur_pas_a_pas_commande_bipolaire.png?600|}}
 +
 +Si vous ne reconnaissez pas le montage, lisez [[fr:electronics:pont_en_h|notre article sur le pont en H]].
 +
 +Ce montage aussi requiert aussi des diodes de roue libre, 2 en chacun des points (A, B, C et D), une pour évacuer une tension fortement négative vers la masse, une pour évacuer une tension fortement positive votre tension positive d'alimentation des moteurs, représentée ici par +12V.
 ===== Fonctionnement ===== ===== Fonctionnement =====
  
 ==== Alternance de l'alimentation des bobines ==== ==== Alternance de l'alimentation des bobines ====
  
 +L'exemple est donné pour un moteur bipolaire. 
 +
 +|{{:fr:electronics:moteur_pas_a_pas_pas_1.png|}}|{{:fr:electronics:moteur_pas_a_pas_pas_2.png|}}|{{:fr:electronics:moteur_pas_a_pas_pas_3.png|}}|{{:fr:electronics:moteur_pas_a_pas_pas_4.png|}}|
 +
 +Avec un moteur unipolaire, au lieu d'inverser le courant dans la bobine, il faut alimenter la seconde partie de la bobine.
 +
 +Quand à chaque pas, une seule bobine est alimentée, on dit que le moteur est piloté par pas entier.
 +
 +=== Demi-pas ===
 +
 +En alimentant deux bobines à la fois, vous pouvez augmenter le couple du moteur. Vous pouvez continuer de réaliser des pas entiers, en alimentant à chaque pas les bobines deux à deux.
 +
 +{{:fr:electronics:moteur_pas_a_pas_demi_pas.png|}}
 +
 +Mais si vous choisissez d'alimenter deux bobines, puis une seule, puis à nouveau deux bobines, vous pouvez réaliser des demi-pas et gagnez ainsi en précision.
 +
 +=== Micro-pas ===
 +
 +Il est possible de pousser le principe des demi-pas encore plus loin et de se servir d'un [[fr:electronics:pwm|signal PWM ou MLI]] pour commander les bobines. En alimentant une bobine à 100% et l'autre à 50%, vous obtenez un quart de pas. Voilà pour le principe, en vrai, un peu de trigonométrie intervient et les valeurs ne sont pas exactement les mêmes :
 +
 +Exemple de pilotage en 1/8e de pas, extrait de la fiche technique du {{ :fr:electronics:tb6600hg_datasheet_en_20160610.pdf |TB6600HG (page 20)}} :
 +
 +^ Pas ^ Bobine A ^ Bobine B ^
 +|0| 100% | 0%|
 +|1/8| 98 % | 20% |
 +|2/8| 92 % | 38% |
 +|3/8| 83 % | 56% |
 +|4/8| 71 % | 71% |
 +|5/8| 56 % | 83% |
 +|6/8| 38 % | 92% |
 +|7/8| 20 % | 98% |
 +|1| 0 % | 100% |
 ==== Limitation en courant ==== ==== Limitation en courant ====
  
Ligne 14: Ligne 79:
   * Nombre de pas : 400   * Nombre de pas : 400
  
-Les bobines d'un moteur pas à pas peuvent être modélisée électriquement par :+Les bobines d'un moteur pas à pas peuvent être modélisées électriquement par :
   * Une résistance et une inductance, celles de la bobine   * Une résistance et une inductance, celles de la bobine
-  * Une source de tension, tension générée par la rotation de l'aimant du moteur+  * Une source de tension, tension générée dans la bobine par la rotation de l'aimant du moteur.
  
-TODO Schema elec+{{ :fr:electronics:moteur_pas_a_pas_bobine.png |}}
  
-Les fiches techniques des moteurs pas à pas indique souvent une tension d'alimentation. Cette tension est la tension à ne pas dépasser s'il n'y pas de régulation de courant. Un moteur pas à pas n'est pas sensible à la tension, mais au courant qui traverse ses bobines. En prenant garde à ce courant, il est possible d'ignorer la tension indiquée.+=== Un peu de théorie === 
 + 
 +Notons : 
 +  * $U_n$ = la tension d'alimentation 
 +  * $U_r$ = la tension aux bornes de la résistance 
 +  * $U_l$ = la tension aux bornes de la bobine 
 +  * $E$ = la force contre électromotrice 
 + 
 +Les tensions s'ajoutent ainsi : 
 +$$ U_n = U_r + U_l + E$$ 
 +Nous supposerons $E$ négligeable devant les autres tensions.  
 +$$ U_n = U_r + U_l $$ 
 +Avec  
 +$$ U_r = R * I $$ 
 +$$ U_l = L * \frac{di}{dt}$$ 
 +Ce qui donne l'équation différentielle : 
 +$$ U_n = R*I + L \frac{di}{dt} $$ 
 +Il est possible de résoudre cette équation analytiquement et vous trouverez facilement des solutions pour $U_n$ constant. 
 + 
 +Vous pouvez aussi utiliser [[fr:electronics:elements_fini|la méthode des éléments finis]] pour visualiser le courant au fil du temps.  
 + 
 +=== A propos des fiches techniques === 
 + 
 +Les fiches techniques des moteurs pas à pas indiquent souvent une tension d'alimentation. Cette tension est la tension à ne pas dépasser s'il n'y pas de régulation de courant. Un moteur pas à pas n'est pas sensible à la tension, mais au courant qui traverse ses bobines. En prenant garde à ce courant, il est possible d'ignorer la tension indiquée. 
 + 
 +Dans notre cas, la tension indiquée est celle qui créerait un courant de 0,9A dans la bobine qui a une résistance de 6 Ω. 0,9 A * 6 Ω = 5,4 V
  
 === Besoin === === Besoin ===
Ligne 26: Ligne 116:
 Dans un moteur pas à pas, le couple fourni est proportionnel au courant. Voici le courant obtenu si on alimente le moteur en exemple avec sa tension d'alimentation nominale : Dans un moteur pas à pas, le couple fourni est proportionnel au courant. Voici le courant obtenu si on alimente le moteur en exemple avec sa tension d'alimentation nominale :
  
-{{:fr:electronics:moteur_pas_a_pas_ech_5_6v.png|}}+{{ :fr:electronics:moteur_pas_a_pas_ech_5_6v.png |}}
  
 La moitié du couple est atteint au bout de 2 ms. 90% du couple au bout de 4 ms (approximativement). La moitié du couple est atteint au bout de 2 ms. 90% du couple au bout de 4 ms (approximativement).
Ligne 35: Ligne 125:
   * 1 pas toutes les 2,5ms   * 1 pas toutes les 2,5ms
  
-Ce qui veut dire que chaque bobine ne sera alimentée que 2,5 ms. Autant dire que sur ces 2,5 ms, le couple moyen est inférieur à 50% du couple.+Ce qui veut dire qu'à chaque pas, une bobine ne sera alimentée que 2,5 ms. Autant dire que sur ces 2,5 ms, le couple moyen est inférieur à 50% du couple. 
 + 
 +{{ :fr:electronics:moteur_pas_a_pas_ech_5_6v_couple.png |}} 
 + 
 +Plus votre moteur tournera vite, plus la durée des pas se raccourcit, plus l'effet se fera sentir. 
 + 
 +=== Augmentons la tension === 
 + 
 +En faisant passer l'alimentation de 5,4V à 24V, nous obtenons une réponse plus rapide, le courant nominal (0,9A) est atteint en 0,5 ms (contre plus de 4 ms précédemment). 
 + 
 +{{ :fr:electronics:moteur_pas_a_pas_ech_24v_.png |}} 
 + 
 +Le problème, c'est que le courant va se stabiliser à 4 A, soit plus de 4 fois le couple nominal. **Il faut s'attendre à une détérioration rapide du moteur.** 
 + 
 +=== Régulons le courant === 
 + 
 +Le système de régulation marche ainsi : 
 +  * Une résistance, très faible, est mise entre la bobine du moteur pas à pas et la masse. 
 +  * Un composant mesure la tension de cette résistance - qui est l'image du courant passant dans la bobine - et la compare avec une tension de référence. 
 +  * Si la tension de la résistance est au dessus de la tension de référence, la commande du moteur pas à pas est coupée. Sinon le moteur est commandé normalement. 
 + 
 +Sur certains modules, cette tension se règle avec un petit potentiomètre. 
 + 
 +{{ :fr:electronics:moteur_pas_a_pas_ech_24v_regul.png?605 |}} 
 + 
 +En reprenant l'exemple, voici ce qui se passe lorsque le moteur tourne à 1 tr/s : 
 + 
 +{{ :fr:electronics:moteur_pas_a_pas_ech_24v_regul_pas_.png |}} 
 + 
 +En comparaison : 
 + 
 +^Alimentation 5,4V ^ Alimentation 24V avec régulation ^ 
 +| {{:fr:electronics:moteur_pas_a_pas_ech_5_6v_couple.png|}} | {{:fr:electronics:moteur_pas_a_pas_ech_24v_regul_pas_.png|}} | 
 +| Couple moyen < 50% du nominal | Couple moyen ≃ 90% du couple nominal | 
 + 
 +Envie d'essayer avec les paramètres de votre moteur ? Essayer ce fichier pour simuler le courant dans une bobine. 
 +{{:fr:electronics:moteurpasapas.ods|Simulation courant dans une bobine}}. 
 + 
 +=====  Les modules ===== 
 + 
 +Les imprimantes 3D à construire soi-même ont popularisé les moteurs pas à pas et les cartes pour les piloter. 
 + 
 +Les modules les plus évolués  vous permettent de vous affranchir de la logique de pilotage des pas ou micro-pas. En général, avec ces modules, le pilotage se résume à : 
 +  * Indiquer sur une broche le sens de rotation du moteur 
 +  * Émettre une impulsion sur une autre boche pour passer au pas/micro-pas suivant 
 + 
 +Attention, ce n'est pas le cas de tous ces modules, et certains modules ne proposent pas de régulation du courant. 
 +==== VM8400DB (Velleman)==== 
 + 
 +  * Courant continu max par phase : 1,5 A 
 +  * Régulation de courant : Oui 
 +  * Tension d'alimentation : entre 8,2 V et 45V 
 +  * Dimensions : 20 x 15 mm 
 +  * Pilotage par pas, 1/2 pas, 1/4 pas, 1/8 pas, 1/16 pas et 1/32 pas 
 +  * Basé sur un DRV8825 de TI 
 +  * Prix indicatif : 15€ 
 + 
 +==== A4988 (Pololu) ==== 
 + 
 +  * Courant continu max par phase : 1 A, 2 A avec refroidisseur 
 +  * Régulation de courant : Oui 
 +  * Tension d'alimentation : 8 à 35 V 
 +  * Dimensions : 21 x 15 mm 
 +  * Pilotage par pas, 1/2 pas, 1/4 pas, 1/8 pas et 1/16 pas 
 +  * Basé sur un A4988 de Allegro MicroSystems 
 +  * Prix indicatif : 7€ 
 + 
 +==== RB01C025 (SeedStudio) ==== 
 + 
 +  * Courant continu max par phase : 2 A avec refroidisseur 
 +  * Régulation de courant : Oui 
 +  * Tension d'alimentation : 8 à 35 V 
 +  * Dimensions : 21 x 15 mm 
 +  * Pilotage bobine par bobine, c'est au microcontrôleur de générer les consigne. 
 +  * Basé sur un L298N 
 +  * Prix indicatif : 24 € 
 + 
 +===== Les composants ===== 
 + 
 +Les composants présentés ci-dessous vous permettent de vous affranchir de la logique de pilotage des pas ou micro-pas. En général, avec ces modules, le pilotage se résume à : 
 +  * Indiquer sur une broche le sens de rotation du moteur 
 +  * Émettre une impulsion sur une autre boche pour passer au pas/micro-pas suivant 
 + 
 +Lisez quand même les fiches techniques si vous comptez vous servir de ces composants. Un certain nombre de composants annexes sont requis, notamment des condensateurs. 
 +==== L297 + L298N ==== 
 + 
 +C'est un couple historique, le L298 est un pont en H tandis que le L297 gère la logique du pilotage des pas et la régulation de courant. Étant des composants traversants, ils présentent l'intérêt de pouvoir être monté assez facilement sur une platine d'essai. La {{ :fr:electronics:l297.pdf |fiche technique du L297}} présente bien ce montage. 
 + 
 +Cet avantage devient obsolète à cause des modules à bas coût mettant en œuvre des composants CMS. 
 + 
 +==== DVR8825 ==== 
 + 
 +Un exemple de composant de chez Texas Instruments. 
 + 
 +  * Tension d'alimentation de 8,2 V à 45 V. 
 +  * Courant continu maximal  de 2,5 A (avec radiateur) 
 +  * Boitier : HTSSOP (CMS - 28 broches) 
 +  * Micro-pas : jusqu'à 1/32 
 + 
 +==== A4988 ==== 
 + 
 +Un exemple de composant de chez Allegro Microsystems. 
 + 
 +  * Tension d'alimentation de 8 V à 35 V. 
 +  * Courant continu maximal  de 2 A 
 +  * Boitier : QFN (CMS - 28 broches) 
 +  * Micro-pas : jusqu'à 1/16 
 + 
 + 
 + 
 + 
  
-{{:fr:electronics:moteur_pas_a_pas_ech_5_6v_couple.png|}} 
  
  
  
-La tension indiquée est celle qui créerait un courant de 0,9A dans la bobine qui a une résistance de 6 Ω.