Sommaire:
Prérequis
Diode de roue libre dans les montages avec charge résistive
Charge unique inductive unipolaire
Charge unique inductive bipolaire
Roue libre pour les moteurs unipolaires
Des essais?
Analyse de certains schémas
Quelques idées qu'il faut accepter, et que l'on aura besoin par la suite.
Je ne m'intéresserai ici que ce qui concerne les éléments alimentés par des tensions continues (moteurs d'entraînement du papier ou de la tête, entraînement du poinçon, voyants).
Une charge est un élément que l'on va ou non alimenter. C'est une lampe, un voyant à led, un moteur, une électrovanne, un relais...
On parle de charge unipolaire si on l'alimente toujours dans le même sens. Le courant passera en principe aussi toujours du
même sens.
On parle de charge bipolaire si on l'alimente des fois dans un sens, des fois dans l'autre. La tension s'inverse.
Une charge est inductive si on a dans celle-ci un enroulement (ou une bobine). Dans les charges qui nous intéressent, il y
a un noyau ferrique. Les charges inductives peuvent être: une bobine de relais, un électroaimant, bobine à noyau plongeur, les
moteurs à courant continu, les moteurs pas à pas, les transformateurs..
Une charge non inductive ne contient pas d'enroulement: résistances, leds...
Dans une résistance, le courant et la tension sont proportionnels, si on interrompt la tension, le courant devient instantanément nul.
Dans une inductance, si un courant passe, il y a de l'énergie électromagnétique qui s'emmagasine. L'énergie augmente avec le courant (la formule ne m'intéresse pas ici). Pas d'énergie = pas de courant. L'énergie accumulée dans un enroulement ne peut pas passer d'une valeur à une autre brusquement, car il faudrait apporter ou retrancher une puissance infinie. L'énergie peut varier sans bonds (les mathématiciens disent suivant une fonction continue). En conséquence dans une bobine le courant ne peut pas non plus s'annuler instantanément. On dira "le courant ne peut pas changer de valeur instantanément". Pour que le courant devienne nul, il faut évacuer l'énergie emmagasinée. Plus on dissipe vite cette énergie, plus vite le courant décroit. On cherche souvent à éliminer l'énergie, par exemple pour une relais, celui ci ne pourra décoller que si le champ magnétique est faible.
Un transformateur comporte deux enroulements sur le même noyau. L'énergie s'emmagasine dans le transformateur et pas dans un des deux enroulements. On peut donc mettre de l'énergie d'un côté, et le retirer de l'autre côté.
La ou les diodes de roue libre permettent d'évacuer l'énergie électromagnétique.
Ce sera le cas si on alimente un voyant à filament ou à led, ou lorsque l'on pilotera la commande d'un transistor.
Le montage est le suivant, avec un transistor dit "bipolaire" (les vieux quoi! On parlera de bipolaires, de NPN...)
Quand la commande est au niveau logique 0 (tension proche de 0V) le transistor est bloqué (il ne laisse pas passer le courant).
Quand la commande est au 1 logique (proche de 5V), le transistor laisse passer le courant.
Dans ce montage tout se passe bien, il n'y a pas d'énergie électromagnétique, et donc pas de diode de roue libre.
Je remplace la diode et sa résistance par une charge inductive composée principalement d'une bobine. Le schéma équivalent comporte une résistance, c'est la résistance du bobinage.
Quand on bloque le transistor, celui ci essaie de bloquer le courant. Mais la présence de l'inductance impose que "le courant ne peut pas changer de valeur instantanément". L'énergie doit se dissiper quelque part et se sera dans le transistor. Pour cela, le courant I continue de passer, et comme il n'a pas le choix, il passe dans le transistor. La tension aux bornes de ce transistor va augmenter jusqu'à ce qu'il "lâche". Cela peut faire une centaine de volts. La tension étant alors importante, la décroissance du courant est rapide, mais cela génère des parasites. C'est à éviter.
Si on utilise un contact sec (contact de relais, interrupteur), ce n'est pas mieux.
Le courant va continuer de passer dans le moteur et il va falloir qu'il passe dans l'air d'un contact à l'autre. Il va donc y avoir une étincelle.
Cela fonctionne parfaitement, mais ce n'est pas souhaitable. C'est quand même le montage le plus répandu: on trouve ce montage pour tous les petits moteurs des appareils électroménagers, les outils électriques du bricoleur. Il est vrai qu'en alternatif, on ne peut pas mettre grand chose.
Pour éviter tout ceci et quand on est en continu, on met une diode de roue libre. Il faut donc permettre au courant I de passer quelque part lorsque la commande (transistor par exemple) bloque le passage du courant. Le montage est ci-contre
Quand la commande est au 0 logique (0V), le transistor est bloqué et le courant ne passe pas. Lorsque la commande passe au 1 logique (3,3V ou 5V), le courant augmente pour atteindre sa valeur nominale. Puis la commande repasse au 0. Le transistor ne laisse plus passer le courant, mais un chemin existe pour lui: par la diode.
Subsiste une petit problème: la tension aux bornes de la bobine est faible et la décroissance du courant est lente. Si on veut accélérer les choses, il suffit d'élever la tension lors de la décroissance du courant.
Lorsqu'un courant passe dans une zener, celle ci développe une tension, celle qui est inscrite dessus.
On choisit en général une zener dont la tension est égale à la tension d'alimentation. Lorsque le transistor bloque, la tension
aux bornes de la charge sera en gros égale à la tension de la zener et la décroissance sera rapide. Voici les tensions
approximatives que l'on a avec une tension d'alimentation de 10V avec une zener de 10V.
Jusqu'à présent toutes les charges étaient alimentées avec une tension qui est toujours dans le même sens. On dira soit 0, soit V. C'est le cas pour les relais, les électroaimants, les moteurs à courant continu qui ne tournent que dans un seul sens. Nous allons maintenant nous intéresser aux charges bipolaires, alimentées avec deux polarités et éventuellement la tension nulle. Par exemple la charge doit pouvoir recevoir 0V, +10V ou -10V. Ce cas sera celui des moteurs à courant continu qui doivent tourner dans les deux sens (0V=arrêt; +10V= tourne dans un sens, -10V= tourne dans l'autre sens). C'est aussi le cas des moteurs pas à pas bipolaires (4 fils).
Voici le montage de principe dit en pont ou en H:
Pour alimenter Vmoteur positif, les transistors T1 et T3 doivent laisser passer le courant, T2 et T4 doivent être bloqués. T1 et T2 ne doivent jamais être passant en même temps (court-circuit de l'alimentation) ainsi que T3 et T4. Pour avoir 0V, on peut soit bloquer tous les transistors, soit laisser passants T1 et T4. On modélise le schéma par celui de droite. Les triangles représentent des amplificateurs, Le petit rond représente un inverseur: si l'amplificateur de gauche délivre V, l'amplificateur de gauche délivre 0. Si la commande est à 0V se sera l'inverse. Si on veut pouvoir mettre du 0V, il faut séparer les commandes ou utiliser une commande de blocage complet du pont.
Dans ce montage, on n'a pas mis en place les diodes de roues libre qui permettent le passage du courant lors du blocage ou de l'inversion du courant. Avec les 4 diodes de roues libre, voici le montage:
Quand on inverse la tension, "le courant ne peut pas changer de valeur instantanément", et continue donc de passer dans le même sens, décroit, s'annule puis croit dans l'autre sens. Voici une animation de l'inversion du courant:
Dès que la commande change, le courant passe par les diodes pendant qu'il décroit, puis passe dans le "bon" sens.
Pour les montages unipolaires, un transistor ou un ensemble de transistors (par exemple la famille des circuit ULN2000) est une bonne solution, mais pour un montage en pont, il est plus facile d'utiliser un circuit spécialisé en pont que de le faire à composants discrets. On trouve des circuits tout montés avec tout ce qu'il faut. C'est presque trop facile. Pour certains circuits, les diodes sont déjà intégrés (L293 par exemple), pour d'autre non, il faut donc les rajouter (L298 par exemple)
Pour un moteur pas à pas bipolaire (4 fils) qui comporte deux bobines, il faut donc deux montages en pont. Les circuits à base de L293, de SN754410NE ou L298 possèdent deux ponts chacun.
Un moteur bipolaire a (en général) 2 phases, chacune ayant un enroulement, que l'on alimente dans un sens ou dans un
autre (0, +V ou -V)
Un moteur unipolaire a (en général) 2 phase chacune ayant 2 enroulements (on dédouble). Du coup on alimente une bobine
ou l'autre mais toujours avec une seule tension (0 ou +V). La commande est donc plus simple, mais le moteur est plus compliqu
Je suppose qu'il est moins performant, on doit loger deux bobines de plus.
Les moteurs unipolaires, ont donc 5 fils (un seul commun), 6 fils (un commun par phase, ce qui est le plus courant), ou 8 fils (les bobines sont toutes indépendantes).
Les deux phases sont indépendantes, et je ne vais parler que d'une seule phase par la suite. Il faudra donc doubler les montages dans la vraie vie.
Si on reprend le principe des diodes de roue libre que l'on a vu plus haut, le montage pour alimenter une phase à 2 enroulements, est composé de deux montages identiques:
Dans certains cas on trouve des diodes en parallèle sur les transistors, souvent par construction même du transistor. Ce montage fonctionne, il est usuel, mais on peut très facilement l'améliorer.
Voyons ce qui se passe pour nos deux bobines d'une seule phase:
Les deux bobines ne sont pas indépendantes. Elles sont bobinées sur le même noyau. Elles vont faire comme un transformateur. Pour les courants et tensions continus, ce qui se passe d'un côté ne regarde pas ce qui se passe de l'autre côté. Mais ce qui nous préoccupe aujourd'hui, c'est les transitoires, notamment quand on coupe le courant dans une phase. Cette dépendance recopie la tension d'une bobine sur l'autre. Voici ce qui se passe si on branche l'extrémité gauche de la première bobine: l'autre suit (les tensions sont opposées à cause du branchement):
Reprenons la figure 9, et alimentons le transistor T1 (je suppose tous les composants parfaits)
Au début tous les transistors sont bloqués, A, B et C sont au potentiel V de l'alimentation. Lorsque T1 commence à conduire, le potentiel de A descend pour aller au 0V. Le point C va donc vouloir monter pour aller à 2V. Mais la diode D2 veille au grain et devient passante. Les deux parties ne sont plus indépendantes. On ne raisonne plus comme avant. En fait D2 met la bobine BC en court-circuit, et on a un transformateur dont on alimente le primaire (AB) et dont le secondaire (BC) est en court-circuit. C'est pas bon du tout. Quand on bloquera T1, la diode D1 jouera son rôle. Au passage à ce moment le point A remonte de V, et donc le point C descend de V. C se trouve au potentiel de la masse, et tout est correct de ce côté. Le problème c'est D1 et D2 au moment ou un transistor commence à conduire. Supprimons-les!
Reprenons la figure 9, et alimentons le transistor T1 (je suppose tous les composants parfaits)
Quand les transistors sont bloqués, A B et C sont au potentiel V. Quand T1 commence à passer, le point A voit son potentiel passer à 0V, et par conséquent C passe à 2V. C'est plus que prévu, mais cela ne pose en principe pas de problèmes. On a réglé un problème. Mais pas celui de l'arrêt, vu que l'on a supprimé D1! Voyons ce qui se passe alors. T1 est conducteur depuis longtemps. A est à 0V, l'influence des bobines l'une sur l'autre est terminée, B et C sont au potentiel V. Au moment où l'on bloque T1, Le courant I ne devant pas s'annuler immédiatement, le potentiel de A va grimper, et celui de C va donc descendre. Maintenant, non seulement A monte, mais en plus C devient négatif. Et c'est la que l'on peut faire un miracle: il suffit de mettre une diode qui empêche le potentiel de C de descendre en dessous du 0V (Elle protègera le transistor T2):
Et voila! Comme la tension du point C ne peut que descendre de V, la tension du point A ne peut plus monter que de V. Comme il était à 0, il va rejoindre le potentiel de B. Il n'y a pas de surtension.
Pour comprendre un peu mieux ce qui se passe, quand T1 passe, la bobine AB emmagasine de l'énergie, et quand on bloque T1, c'est la bobine BC qui va rendre cette énergie.
J'ai supposé tout à l'heure que les commutations étaient suffisamment lentes pour que les effets du couplage des bobines soit terminés. Si il n'en était pas ainsi, avant le blocage de T1, le potentiel de C serait entre V et 2V. Le potentiel de C peut descendre alors entre V et 2V, et A peut monter d'autant. On va retrouver alors en A au maximum 3V. C'est effectivement ce que j'ai observé avec mon moteur.
Ce montage présente aussi un très gros avantage: quand le courant des bobines décroit suite à un blocage d'un transistor, la bobine qui libère l'énergie à un potentiel de V à ses bornes. On se retrouve avec la décroissance comme si on avait une zener. Mais on a payé qu'une diode.
Comme je suis curieux, j'ai quand même fais des essais. Voici le moteur qui a supporté mon humeur. Je m'attendais à voir le courant de l'alimentation augmenter du fait qu'au début où T1 conduit, un enroulement se trouve en court-circuit et donc consomme pour rien. Mais je n'ai pas constaté d'augmentation significative de ce phénomène. Je suis déçu.
Par contre, la décroissance plus rapide du courant améliore significativement les performances du moteur si on va suffisamment vite. Pour les vitesses de rotation faibles, on atteindra au final le même couple. Avec les deux diodes bien placées ou non, j'ai bien constaté que le couple était identique. Mais avec les diodes bien placées, la limite en vitesse est 3 fois plus haute (530pas/s au lieu de 150pas/s) , et pour certaines vitesses, je note une vraie augmentation du couple: pour 40pas/s le couple passe de 4,8Nm à 5,8Nm.
Conclusion: Le montage de la figure 12 est bien meilleur et n'est pas plus cher. Autant ne pas s'en priver.
Si j'ai écris cet article, c'est entre autre parce que j'ai vu des montages qui peuvent être améliorés. C'est notamment le cas de beaucoup de perforeuses. Voici le schéma d'origine et avec la modification. A vos pinces coupantes!
J'ai quand même cherché sur le net des circuits tout faits pour alimenter les moteurs unipolaires, mais je n'en ai pas trouvé. Il faut se faire son circuit à base de transistors ou de la série ULN2000.
Et chez Arduino?
Je suis allé sur leur site, et je les remercie au passage beaucoup pour le travail qui a été fait, parce que les premiers essais que j'ai fais avec cette carte me nourrissent d'espoir. Je trouve cette carte vraiment fantastique. Cela n'empêche pas ququ'ils peuvent améliorer le schéma de la page https://www.arduino.cc/en/Reference/StepperUnipolarCircuit (sept 2016):
Le circuit ULN2004 continent 7 transistors darlington avec toutes les résistances nécessaires...et aussi toutes les diodes, dont celles qu'il ne faudrait ne pas employer. Le schéma d'une voie:
Pour utiliser ce circuit avec des bobines, des relais, il faut connecter la sortie COMMON à l'alimentation, on profite des diodes de roue libre internes. Si on alimentait des Led, des résistance, on pourrait laisser cette broche en l'air. Mais pour des moteurs bipolaires, il vaut mieux ne pas utiliser cette broche et mettre les 4 diodes entre la masse et les 4 sorties. Je crois que l'on ne doit pas employer certaines diodes internes comme roue libre. Est-pour le coût ou la simplicité?
Pour moi, il y a d'ailleurs une vraie erreur: a été choisi un ULN2004 qui est conçu pour des tensions d'entrée "6-15V CMOS PMOS", alors qu'un ULN2003 est prévu pour "5V TTL, CMOS" ce qui est le cas de la carte Arduino.
Si on cherche les erreurs sur la même page, on trouve ceci:
Et la la seule diode du schéma est bizarre. Je ne sais pas pourquoi il y a une diode, mais en tout cas dans ce sens elle ne laissera jamais rien passer (les diodes internes sont dans l'autre sens!).
Si on remplace la diode par un court-circuit, on retrouve pour la puissance le schéma précédent. Mais comme ceci, étant donné que les diodes sont tête-bêche, il n'y a plus les diodes de roue libre au +5V. Les diodes qui vont servir sont les "output parasitic diodes", celles qu'il ne faut pas utiliser pour cela!