Les périphériques des microcontrôleurs

froussel;2129017 à dit:
Je suis bien incapable de lire les infos du 5045 mais je ne désespère pas avec un arduino et le protocole SPI, dès que j'aurais reçu le circuit.
Malheureusement, le protocole utilisé par le 5045 est le SSI, qui envoie ou reçoit un bit à la fois, cadencé par un signal d'horloge. C'est très flexible, mais ce n'est pas le plus simple. Je ne doute pas un seul instant que tu arriveras à écrire le protocole de dialogue avec une plaque Arduino, mais ça risque de te prendre un temps certain.

Je voudrais donc te faire remarquer que ce circuit propose aussi une sortie PWM, avec une valeur variant de 1 à 4096 µs, ce qui est à la portée de tous les mini MCUs disposant d'un timer sur 16 bits. Ça permet aussi de n'avoir qu'une seule broche pour lire le circuit.

J'ai commandé 3 circuits AS5045 directement chez le constructeur. Sinon, il est aussi disponible chez RS.

J'ai aussi commandé, sur Ebay, des plaquettes adaptatrices pour circuits SSOP16 car il n'y a pas de raison de ne pas faire aussi travailler les Chinois.

Avant que je n'oublie, voici une adresse où on trouve des aimants cylindriques à magnétisation radiale. À 16.60 € les 10, port compris, le tarif est encore acceptable.
 
jpparisy;2129405 à dit:
J'ai commandé 3 circuits AS5045 directement chez le constructeur.
J'ai commandé hier à 16H00 et j'ai reçu le colis ce matin à 09H00.

Est-ce que je dois contacter le Livre des Records ? :)
 
Un moteur pas-à-pas est un moteur sans balai (brushless) qui ne se déplace que d'une fraction de tour à la fois. On peut ainsi le positionner à un angle précis et lui faire effectuer autant de tours que nécessaire.

Il est constitué d'un arbre rotatif portant des aimants permanents, appelé rotor, et d'une partie fixe supportant des électro-aimants, appelée stator.

  • Note : dans les explications qui suivent, je décris un moteur ayant une résolution d'un quart de tour par pas, à des fins de démonstration. Dans le monde réél, ce ne serait pas un moteur très pratique pour la plupart des applications. La résolution des moteurs pas-à-pas (le nombre de fractions de tour par pas) est plus élevé que cela.
 
Il y a 4 modes de fonctionnement :

  1. Le mode appelé "pas-entier" (full-step) est le plus simple à comprendre. Voyons comment s'effectue une rotation complète dans ce mode :
    stepper_motor-1.jpg
    • Dans la première position, l'aimant du rotor est attiré par l'électro-aimant "A", qui est actuellement actif (une tension lui est appliquée).
    • Pour déplacer le rotor vers la droite, l'électro-aimant "A" est désactivé et l'électro-aimant "B" est activé, ce qui provoque le déplacement du rotor qui s'aligne avec lui.
    • Ce processus est répété de la même manière avec les électro-aimants "C" puis "D" jusqu'à revenir à la position de départ.

  2. Le mode appelé "double-phase" (two-phase-on full-step) permet d'augmenter le couple du moteur en activant deux électro-aimants consécutifs à chaque pas, doublant ainsi la force d'attraction :
    stepper_motor-3.jpg
    • Dans la première position, les deux électro-aimants "A" et "B" sont activés en même temps, ce qui provoque le positionnement du rotor entre les deux.
    • Puis, en deuxième position, l'électro-aimant "A" est désactivé et les électro-aimants "B" et "C" sont activés, puis "C" et "D", puis "D" et "A".

    Ce mode de fonctionnement augmente le couple de 30 à 40%, mais double la consommation.

  3. Le mode appelé "demi-pas" (half-stepping) permet de doubler la résolution du moteur. C'est un mélange entre les modes "pas-entier" et "double-phase". Le dessin ci-dessous en montre le principe :
    stepper_motor-2.jpg
    • Dans la première position l'électro-aimant "A" est actif, et le rotor est aligné sur lui.
    • Dans la deuxième position, les deux électro-aimants "A" et "B" sont actifs en même temps, ce qui provoque le positionnement du rotor entre les deux.
    • En troisième position, l'électro-aimant "A" est désactivé et le rotor s'aligne sur l'électro-aimant "B".
    • Dans la quatrième position, les deux électro-aimants "B" et "C" sont actifs en même temps, ce qui provoque le positionnement du rotor entre les deux.
    • Ce processus est répété pour l'ensemble de la rotation.

  4. Le mode appelé "micro-pas" (micro-stepping") permet d'augmenter la régularité de la rotation. Au lieu de changer brutalement de tension entre chaque pas, ce qui donne des à-coups et génère du bruit, on diminue progressivement le courant de l'électro-aimant actif, en augmentant tout aussi progressivement le courant de l'électro-aimant suivant.
    Des circuits spécialisés existent pour gérer ces variations, par exemple le A3967, fabriqué par Allegro. Des modules utilisant ce composant, appelés "EasyDriver", sont également disponibles.
Le choix du mode de fonctionnement dépend de l'utilisation envisagée :
  • Le mode "pas-entier" est le plus simple à programmer, il est adapté aux faibles vitesses. Quand il y a un changement de pas, l'aimant dépasse légèrement la position prévue et revient en arrière, puis repart en avant, il rebondit ainsi plusieurs fois de suite. Lorsque la vitesse est élevée, ce rebond peut être tel qu'il peut désynchroniser le moteur.
  • Le mode "double-phase" atténue ce phénomène, car l'aimant est mieux "tenu" entre les deux électro-aimants.
  • Le mode "demi-pas" atténue encore plus le rebond, puisque la distance pour passer d'un pas à l'autre est diminuée de moitié. Ce mode est à utiliser pour les vitesses élevées.
  • Le mode "micro-pas" supprime complétement le phénomène, puisque le courant accompagne le déplacement de l'aimant et le bruit est également éliminé.
 
Il existe 2 types de moteurs pas-à-pas :
  1. Les moteurs à 5 ou 6 fils, ayant 4 électro-aimants séparés, comme ceux des exemples ci-dessus, sont appelés "unipolaires". Les électro-aimants "A" et "C" sont branchés en série et il y a un fil branché au milieu, de même pour les électro-aimants "B" et "D". Dans les moteurs 6 fils, ces points milieux sont disponibles sur deux fils différents. Dans les moteurs 5 fils, les 2 points milieux sont reliés ensemble sur le même fil.
    Les électro-aimants peuvent être commandés simplement avec 4 transistors ou MOSFETs : les points milieux sont connectés à la borne positive et les 4 autres fils sont connectés aux sorties des transistors. Des circuits intégrant ces transistors existent, par exemple le réseau de transistors ULN2003 utilisé ici avec un moteur 5 fils :
    stepper_motor-5.jpg

  2. Les moteurs à 4 fils, ayant 2 électro-aimants, chacun constitué de 2 bobines disposées à 180° et connectées en série, sont appelés "bipolaires" :
    stepper_motor-4.jpg
    La mise en oeuvre est plus compliquée qu'avec les moteurs unipolaires, parce que le circuit de commande doit être en mesure d'inverser la polarité dans les enroulements à chaque changement de pas. Un double pont en H est donc nécessaire pour commander ce type de moteurs :
    stepper_motor-6.jpg

    Heureusement, des circuits intégrant ce double pont existent, par exemple le driver L293D pour les petits moteurs ou le L298 qui délivre une intensité un peu plus forte.

    Des modules utilisant ces composants sont disponibles. Certains sont même vendus, port compris, moins cher que le prix courant du composant seul en Europe.
 
Haut