Catégories: Moteurs électriques et leur application, Circuits microcontrôleurs
Nombre de fois vus: 24464
Commentaires sur l'article: 0

Arduino et moteur pas à pas: principes de base, schémas, connexion et contrôle

 

Les moteurs pas à pas sont utilisés pour contrôler la position de quelque chose ou pour faire tourner l'unité de travail à partir d'une vitesse et d'un angle donnés. Ces caractéristiques ont permis de l'utiliser dans la robotique, les machines à commande numérique (CNC) et d'autres systèmes d'automatisation. Dans cet article, nous examinerons un certain nombre de problèmes liés à la construction de moteurs pas à pas et à la façon de les contrôler à l'aide du microcontrôleur Arduino.

Arduino et moteur pas à pas

Le moteur pas à pas diffère de l'habituel

Tous les moteurs électriques utilisés dans la pratique fonctionnent en raison de phénomènes et de processus électrodynamiques se produisant dans les champs magnétiques des rotors et des stators. Comme nous l'avons déjà mentionné, tout moteur se compose d'au moins deux parties - mobile (rotor) et immobile (stator). Pour sa rotation, il faut que le champ magnétique tourne également. Le champ du rotor tourne après le champ du stator.

En principe, ces informations de base sont suffisantes pour comprendre le tableau général du fonctionnement des moteurs électriques. Cependant, en fait, l’industrie produit diverses options de moteurparmi lesquels:

1. Moteur à induction à cage d'écureuil ou à rotor bobiné.

2. Moteur synchrone à enroulements de champ ou à aimants permanents.

3. Moteur à courant continu.

4. Moteur collecteur universel (il fonctionne à la fois en courant continu et en courant alternatif, car les enroulements du rotor eux-mêmes sont connectés et déconnectés des contacts de la source d'alimentation en raison de la conception des lamelles et des ancres).

5. Moteurs CC sans balais (BLDC).

6. Servos.

7. Moteurs pas à pas.

Les deux dernières espèces ont une valeur particulière, en raison de la possibilité de leur positionnement, dans une certaine mesure, précis dans l'espace. Examinons de plus près la conception du moteur pas à pas.

Moteur pas à pas

Définition

Un moteur pas à pas est appelé moteur synchrone sans balais. Un certain nombre d'enroulements sont situés sur le stator, dont la connexion fait tourner le rotor d'un certain angle, en fonction du nombre de pas. En d'autres termes, le courant dans l'enroulement du stator fait tourner l'arbre à un angle discret.

Avec un changement uniforme et séquentiel de la polarité de la tension aux enroulements et la commutation des enroulements sous tension, le moteur pas à pas tourne, comme un moteur électrique conventionnel, bien qu'en fait, une rotation régulière à un angle fixe ait simplement lieu.

Dispositif de moteur pas à pas

Le moteur pas à pas est parfois appelé moteur. avec un nombre fini de positions de rotor. Cela ne semble pas très clair, voyons. Imaginez un moteur conventionnel - la position de son rotor n'est en aucun cas fixe, c'est-à-dire qu'il tourne simplement lorsque l'alimentation est connectée, et lorsqu'il s'éteint, il s'arrête après un certain temps, en fonction de son inertie. Les positions du rotor peuvent être autant que vous le souhaitez, mais elles peuvent différer des plus petites fractions de degré.

Dans un moteur pas à pas, la connexion d'un enroulement ou de plusieurs enroulements entraîne une «aimantation» du rotor par rapport à ces enroulements. Extérieurement, cela ressemble exactement à tourner l'arbre à un certain angle (tangage). Le nombre de pas étant l'une des caractéristiques importantes de ce type d'entraînement électrique, le nombre de positions de rotor est égal au nombre de pas. Il est difficile pour les débutants de comprendre comment cela peut être et comment cela tourne dans ce cas - en fait, tout est assez simple, nous le montrerons dans les illustrations et descriptions ci-dessous.

Arduino et moteur pas à pas

La construction

Les enroulements d'excitation sont fixés sur le stator du moteur électrique. Son rotor est fait de matériaux magnétiques doux ou magnétiques durs. Le matériau du rotor dépend du couple et de la fixation de l'arbre avec des enroulements hors tension. Ces paramètres peuvent être critiques.

Enroulements de moteur pas à pas

Par conséquent, les rotors magnétiquement solides (ils sont également avec des aimants permanents) et les rotors magnétiquement doux (réactifs) sont distingués, en plus d'eux, il existe des rotors hybrides.

Le rotor hybride est rendu denté, le nombre de dents correspond au nombre de pas. Les dents sont situées le long de l'axe du rotor. De plus, un tel rotor est divisé en deux parties. Un aimant permanent est installé entre eux, de sorte que chacune des moitiés du rotor est un pôle magnétique. Il faut aussi dire que la moitié du rotor tourne de moitié le pas des dents les unes par rapport aux autres.

Rotor moteur

Comme déjà mentionné, un tel moteur est synchrone, et le processus de sa rotation consiste à créer un champ tournant du rotor, recherché par le rotor magnétique, et ceci est réalisé en commutant tour à tour les enroulements par le contrôleur.

Les types de moteurs pas à pas pour la conception des enroulements sont divisés en trois groupes principaux selon le schéma de connexion des enroulements:

1. Bipolaire.

2. Unipolaire.

3. Avec quatre enroulements.

Types de moteurs pas à pas

La plupart des moteurs électriques bipolaires ont 4 contacts - ce sont les conclusions de deux enroulements. À l'intérieur du moteur, ils ne sont généralement pas connectés les uns aux autres. Le principal problème est qu'il est nécessaire d'assurer la commutation de la polarité de puissance, ce qui signifie que le pilote et le processus de contrôle lui-même deviendront plus compliqués.

Unipolaire ressemble à la connexion des enroulements selon le motif de l'étoile. En d'autres termes, vous avez 5 conclusions - 4 d'entre elles sont les extrémités des enroulements et 1 est le point de connexion de tous les enroulements.

Pour contrôler un tel moteur, il vous suffit d'alimenter alternativement chaque extrémité du bobinage (ou quelques-uns, selon le mode de rotation sélectionné), de cette façon la moitié du bobinage sera alimentée à chaque fois. Il peut fonctionner en mode bipolaire, si vous alimentez l'ensemble de l'enroulement en contournant complètement le robinet de son milieu.

Les moteurs à 4 enroulements ont l'avantage de pouvoir connecter les enroulements de la manière qui vous convient et d'obtenir à la fois un moteur bipolaire et unipolaire.



Modes de contrôle

Il existe 4 principaux modes de contrôle du moteur pas à pas:

1. Contrôle des vagues.

2. Étape complète.

3. Demi-étape.

4. Microstepping


Volnov la commande est appelée commande d'un enroulement. C'est-à-dire en même temps, le courant traverse l'un des enroulements, d'où deux caractéristiques distinctives - une faible consommation d'énergie (c'est bien) et un faible couple (c'est mal).

Dans ce cas, ce moteur prend 4 étapes en une révolution. Les vrais moteurs prennent des dizaines d'étapes en une révolution, ceci est réalisé par un grand nombre d'alternances de pôles magnétiques.

Contrôle des vagues

Gestion complète des étapes est le plus couramment utilisé. Ici, la tension n'est pas fournie à un enroulement, mais à deux à la fois. Si les enroulements sont connectés en parallèle, alors le courant double, et s'il est en série, la tension d'alimentation double, respectivement. D'une part, dans cette méthode de contrôle, le moteur consomme plus d'énergie, d'autre part, 100% de couple, contrairement au précédent.

Gestion complète des étapes

Contrôle demi-pas Il est intéressant en ce qu'il devient possible de positionner plus précisément l'arbre du moteur, du fait que des moitiés sont ajoutées à des étapes entières, ceci est réalisé en combinant les deux modes de fonctionnement précédents, et les enroulements alternent, puis se mettent en marche par paires, puis un à la fois.

Il convient de noter que le moment sur l'arbre flotte de 50 à 100%, selon que 1 ou 2 enroulements sont impliqués en ce moment.

Encore plus précis est micropas. Il est similaire au précédent, mais diffère en ce que la puissance des enroulements n'est pas fournie dans sa totalité, mais évolue progressivement. Ainsi, le degré d'impact sur le rotor de chacun des enroulements change et l'angle de rotation de l'arbre dans les étapes intermédiaires varie en douceur.

Où obtenir un moteur pas à pas

Où obtenir un moteur pas à pas

Vous aurez toujours le temps d'acheter un moteur pas à pas, mais les vrais radio-amateurs, les gens de la maison et les ingénieurs en électronique sont célèbres pour le fait qu'ils peuvent faire quelque chose d'utile avec les ordures. Vous avez sûrement au moins un moteur pas à pas dans votre maison. Voyons où chercher pour trouver un tel moteur.

1. L'imprimante.Les moteurs pas à pas peuvent se tenir sur la rotation de l'arbre d'alimentation du papier (mais il peut également y avoir un moteur à courant continu avec un capteur de déplacement).

2. Scanners et MFP. Les scanners installent souvent un moteur pas à pas et une pièce mécanique le long de laquelle les guides du chariot, ces pièces peuvent également être utiles pour développer une machine CNC faite maison.

3. Lecteurs de CD et DVD. Vous pouvez également obtenir des tiges et des arbres à vis pour les produits faits maison et diverses CNC.

Arbre hélicoïdal

4. Lecteurs de disquette. Les disquettes ont également des moteurs pas à pas, en particulier les fichiers de disquette au format 5,25 ”.

Lecteur de disquette

Pilote de moteur pas à pas

Pour contrôler les moteurs pas à pas, utilisez des microcircuits de pilote spécialisés. Il s'agit principalement d'un pont en H de transistors. Grâce à cette inclusion, il devient possible d'inclure la tension de la polarité souhaitée sur l'enroulement. Ces puces sont également adaptées pour contrôler les moteurs à courant continu avec un support pour changer le sens de rotation.

En principe, les très petits moteurs peuvent être démarrés directement des broches du microcontrôleur, mais ils donnent généralement jusqu'à 20-40 mA, ce qui n'est pas suffisant dans la plupart des cas. Par conséquent, voici quelques exemples de pilotes pour les moteurs pas à pas:


1. Cartes basées sur L293D. Il y en a beaucoup, l'un d'eux est vendu sous la marque nationale Amperka sous le nom de Troyka Stepper, un exemple de son utilisation dans un projet réel est montré dans la vidéo ci-dessous. L'avantage de cette carte est qu'elle a des puces logiques qui peuvent réduire le nombre de broches utilisées pour la contrôler.

La puce elle-même fonctionne sous une tension de 4,5 à 36 V et produit un courant allant jusqu'à 600 mA-1 A, selon le cas du circuit intégré.


2. Pilote basé sur A4988. Il est alimenté par une tension jusqu'à 35 V, peut supporter un courant jusqu'à 1 A sans radiateur et avec un radiateur jusqu'à 2 A. Il peut contrôler le moteur, à la fois dans des étapes entières et dans des parties - de 1/16 d'une étape à 1 étape, seulement 5 options. Contient deux ponts en H. En utilisant la résistance d'accord (vue sur la photo de droite), vous pouvez régler le courant de sortie.

Pilote de moteur pas à pas

La taille de pas est définie par les signaux aux entrées MS1, MS2, MS3.

La taille du pas est définie par les signaux aux entrées MS1, MS2, MS3

Voici un schéma de sa connexion, chaque impulsion à l'entrée STEP permet au moteur de tourner 1 pas ou un micropas.

Schéma de câblage

3. Le pilote basé sur ULN2003 fonctionne avec des moteurs 5 et 12 V et produit un courant jusqu'à 500 mA. Sur la plupart des cartes, il y a 4 LED indiquant le fonctionnement de chaque canal.

Pilote basé sur ULN2003

Également sur la carte, vous pouvez voir le bornier pour connecter les moteurs, d'ailleurs, beaucoup d'entre eux sont vendus avec ce connecteur. Un exemple d'un tel moteur est un modèle 5V - 28BYJ-48.

Modèle - 28BYJ-48

Et ce ne sont pas toutes les options de pilote pour les moteurs pas à pas, en fait il y en a encore plus.


Connexion au pilote Arduino et au moteur pas à pas

Dans la plupart des cas, vous devez utiliser un microcontrôleur associé à un pilote pour un moteur pas à pas. Regardons le schéma de connexion et les exemples de code. Envisagez une connexion basée sur le dernier pilote répertorié - ULN2003 à la carte Arduino. Et donc il a 4 entrées, elles sont signées IN1, IN2, etc. Ils doivent être connectés aux broches numériques de la carte Arduino et un moteur doit être connecté au pilote, comme indiqué dans la figure ci-dessous.

Connexion au pilote Arduino et au moteur pas à pas

De plus, selon la méthode de contrôle, vous devez appliquer aux entrées 1 ou 0 de ces broches, y compris 1 ou 2 enroulements dans la séquence requise. Le code du programme de contrôle complet ressemble à ceci:

int in1 = 2;

int in2 = 3;

int in3 = 4;

int in4 = 5;

const int dl = 5;

void setup () {

pinMode (in1, OUTPUT);

pinMode (in2, OUTPUT);

pinMode (in3, OUTPUT);

pinMode (in4, OUTPUT);

}

boucle vide () {

digitalWrite (in1, HIGH);

digitalWrite (in2, HIGH);

digitalWrite (in3, LOW);

digitalWrite (in4, LOW);

retard (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, HIGH);

digitalWrite (in3, HIGH);

digitalWrite (in4, LOW);

retard (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, LOW);

digitalWrite (in3, HIGH);

digitalWrite (in4, HIGH);

retard (dl);

digitalWrite (in1, HIGH);

digitalWrite (in2, LOW);

digitalWrite (in3, LOW);

digitalWrite (in4, HIGH);

retard (dl);

}

 

Il comprend des enroulements dans l'ordre suivant:

Séquence d'enroulement

Voici le code du mode demi-pas, comme vous le voyez, il est beaucoup plus volumineux, car il implique un plus grand nombre d'enroulements de commutation.

int in1 = 2;

int in2 = 3;

int in3 = 4;

int in4 = 5;

const int dl = 5;

void setup () {

pinMode (in1, OUTPUT);

pinMode (in2, OUTPUT);

pinMode (in3, OUTPUT);

pinMode (in4, OUTPUT);

}

boucle vide () {

digitalWrite (in1, HIGH);

digitalWrite (in2, LOW);

digitalWrite (in3, LOW);

digitalWrite (in4, LOW);

retard (dl);

digitalWrite (in1, HIGH);

digitalWrite (in2, HIGH);

digitalWrite (in3, LOW);

digitalWrite (in4, LOW);

retard (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, HIGH);

digitalWrite (in3, LOW);

digitalWrite (in4, LOW);

retard (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, HIGH);

digitalWrite (in3, HIGH);

digitalWrite (in4, LOW);

retard (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, LOW);

digitalWrite (in3, HIGH);

digitalWrite (in4, LOW);

retard (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, LOW);

digitalWrite (in3, HIGH);

digitalWrite (in4, HIGH);

retard (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, LOW);

digitalWrite (in3, LOW);

digitalWrite (in4, HIGH);

retard (dl);

digitalWrite (in1, HIGH);

digitalWrite (in2, LOW);

digitalWrite (in3, LOW);

digitalWrite (in4, HIGH);

retard (dl);

}

 

Ce programme comprend des enroulements comme suit:

Séquence d'enroulement

Pour consolider les informations reçues, regardez la vidéo utile:


Conclusion

Les moteurs pas à pas sont populaires parmi les Arduins avec des servos, car ils vous permettent de créer des robots et des machines CNC. Ce dernier est favorisé par l'abondance sur le marché secondaire de lecteurs de disques optiques d'occasion très bon marché.

Voir aussi sur e.imadeself.com:

  • Comment distinguer un moteur à induction d'un moteur à courant continu
  • Moteurs pas à pas
  • Types de moteurs électriques et principes de leur fonctionnement
  • Méthodes de lecture et de gestion des ports d'E / S Arduino
  • Connecter et programmer Arduino pour les débutants

  •