Skip to content

Driver microstep TB6600

Intro

Un étage moteur externe micro-steps pour moteur pas à pas bipolaire va permettre le contrôle d'un moteur pas à pas bipolaire en mode micro-pas à partir de la commande logique fournie par un micro-contrôleur, type Arduino, Pi Pico, etc.

Ces étages se présentent sous forme standardisée dans un boîtier métallique noir, avec un bornier à vis. Latéralement, des switchs permettent de régler les paramètres d'intensité et de mode micro-steps de l'étage.

La façade de l'étage montre la "table de vérité" du réglage des swicths.

Caractéristiques importantes d'un étage

Les caractéristiques importantes d'un étage vont être :

  • sa tension de fonctionnement moteur : le TB6600 accepte de 9 à 42V en tension moteur, mais certains étages n'acceptent que des tensions supérieures à 24V par exemple

  • l'intensité de phase maximale : il est essentiel que l'intensité de phase maximale que peut fournir l'étage soit supérieure ou égale à celle que demande le moteur. Un étage TB6600 peut fournir jusqu'à 3.5A par phase et pourra donc être utilisé indifféremment avec des NEMA 17 ou des NEMA 23. Il suffira de régler la bonne intensité à l'aide de switchs.

  • le mode de micro-stepping le plus élevé.

Principe général de câblage d'un moteur pas à pas

Le principe de câblage (présenté par ailleurs) d'un moteur pas à pas bipolaire est le suivant :

Brochage

Logiquement, l'étage moteur externe présente les broches suivantes :

  • les broches logiques de l'étage :

    • le - des broches logiques
    • la broche logique de PULSE/STEP (impulsion de pas)
    • la broche logique de DIR (direction)
    • la broche logique ENable

    • les broches des phases du moteur pas à pas

    • une des phases sur A+/A-
    • l'autre phase sur B+/B-
  • l'alimentation du moteur sur l'étage

Les entrées logiques : avec opto-coupleur en entrée

Les entrées logiques des étages externes, ENABLE/ PULSE / DIR se font par opto-coupleur, sur bornier à vis.

Je rappelle qu'un opto-coupleur, techniquement, c'est une LED couplée à un photo-transistor :

C'est pour cela que les entrées logiques d'un étage microstep externe possèdent à chaque fois une entrée + et -, conrrespondant à la polarisation de la LED. Noter que la résistance est intégrée à l'étage.

Eh, c'est pas compliqué là !

Donc, on se détend, il n'y a vraiment rien de compliqué ici : si vous savez allumer une LED avec une Arduino, alors vous savez allumer la LED en entrée de l'optocoupleur d'un driver microstep externe ! Et si vous ne savez pas allumer une LED... eh bien revoyez çà, ce n'est vraiment pas sorcier ! Voir page dédiée.

Info

L'intérêt de l'optocoupleur ici est d'assurer une isolation électrique (on dit "galvanique") totale entre la partie logique de commande et la partie "puissance", à savoir le moteur et son alimentation. La règle très importante à respecter pour bénéficier de cette protection sera de ne jamais mettre de point électrique commun entre le circuit moteur et le circuit logique de commande. Notamment, ne pas alimenter la logique de commande avec la même alimentation que les moteurs et ne pas faire de point commun entre la masse de l'alimentation des moteurs (OV ou GND) et la masse logique (OV ou GND). Si vous avez envie ou besoin d'approfondir cette notion, voir la page dédiée.

Réglage du microstepping

Le micro-stepping se règle par micro-switchs dans le cas d'un étage externe (noter que la table de vérité est indiquée sur la façade de l'étage en général)

Réglage de l'intensité de phase

L'intensité de phase se règle par micro-switchs dans le cas d'un étage externe (noter que la table de vérité est indiquée sur la façade de l'étage en général)

Voici la table de vérité type d'un étage externe TB6600 (en pratique, se référer à celle présente en façade de l'étage utilisé ):

Intérêt des étages externes quand on débute

Nickel pour apprendre !

Cette solution est de loin la plus facile à mettre en oeuvre et avec le moins de risque de se tromper : je la conseille fortement pour un test simple d'un moteur.

D'autant que cette solution laisse de la marge pour l'intensité de phase du moteur qui peut-être élevée (3.5A par phase, soit jusqu'au NEMA 23 double par exemple, voire plus selon l'étage).

De plus, on pourra facilement modifier le micro-stepping utilisé à l'aide des switchs de réglage, ce qui sera utile en phase de test.

Enfin, les borniers à vis de l'étage externe facilite le montage avec des straps, ce qui permet également de bien appréhender / visualiser les connexions de l'étage.

DIfférents modules possibles (mais équivalents)

L'étage TB6600 en boîtier

Le premier cas de figure est le TB6600 en boîtier :

C'est la solution de choix en pratique, la plus standardisée, et aussi la moins coûteuse.

L'étage TB6600 (ou équivalent) sur carte

Dans ce cas, c'est la même chose, mais sur carte électronique classique (= sans boîtier). On a dans ce cas les entrées logiques et les sorties moteurs sur des borniers en vis à vis :

Variante avec les entrées logiques simplifiées

Une variante possible est d'avoir les entrées logiques au format "simple" avec le commun déjà réalisé, ici en 5V commun (V+ logique) :

Cette dernière solution est intéressante pour simplifier le câblage : utile pour du prototypage.

Avec la Pi Pico

Avec étage TB6600

Ce qui est intéressant avec la Pi Pico, c'est qu'on a une répartition régulière de la masse GND sur le brochage et que par conséquent, on peut facilement réaliser une connexion multi-axes via des étages externes TB6600 en créant des "groupes" de broches Enable | GND | Dir| Step

Info

On peut même considérer que l'on dispose de la broche utile pour le endstop de l'axe sur chacun juste à côté de chacun des groupes en question.

Ce qui donne :

Avec étage à V+ commun