Catégories
Liens
Ceci est une ancienne révision du document !
Le Silent Step Stick est un pilote de moteur basé sur un Trinamic TMC 2100 ou Trinamic TMC 2130. Il est compatible avec un StepStick ou le Pololu A4988. Il permet de contrôler un moteur pas à pas très finement (microstepping) et le rendre complètement silencieux, ce qui n'est pas le cas des pilotes de moteur classiques comme le L298.
Documents techniques (datasheet)
La configuration qui fonctionne bien :
Le choix de l'Arduino et du moteur pas à pas ne pose pas de problème.
La Fabscan shield permet juste de brancher facilement le pilote (driver), comme pourrait le faire une autre shield bien connue, la RAMPS. Ses cartes s'interfacent facilement avec des petits drivers comme les driver Polulu ou StepStick, ce qui permet d'en mettre 3 ou 4 dans un petit espace, très utile pour les imprimantes 3D.
Le driver fabriqué par Watterott semble être un très bon choix pour rendre silencieuse son installation avec des moteurs pas à pas. En règle générale, ces moteurs font toujours du bruit, et celui-ci est amplifié par résonance sur le support auquel il est fixé. En augmentant la vitesse du moteur il est possible de diminuer très fortement le bruit mais en contrepartie la position du moteur n'est généralement plus précise.
Documentation du driver : https://github.com/watterott/SilentStepStick et http://reprap.org/wiki/TMC2100
Attention, le driver est dans le sens inverse de ce que l'on voit habituellement. D'habitude, la puce noire est située au dessus, ici c'est en dessous. Remarquez le “TOP” sur la carte, qui indique la face qui doit être visible au dessus.
Attention aussi lors de l'allumage ou de l'extinction du courant, le TMC2100 est très sensible.
Il y a un ordre pour allumer ou éteindre le driver, l'Arduino et l'alimentation du moteur. Quand on allume, il faut d'abord allumer l'alimentation puis l'Arduino, quand on éteint c'est l'inverse, d'abord l'Arduino, ensuite l'alimentation du moteur.
Allumage. Pour résoudre le problème de l'allumage, il faut choisir la version 5V du driver et non celle en 3.3V. Elle est disponible depuis juillet ou août 2016. En effet elle n'oblige pas à allumer l'alimentation du moteur (the motor supply voltage ou VM) avant l'Arduino (VIO 5V).
Extinction. Si le moteur est en mouvement, il n'est pas permis d'éteindre l'alimentation du moteur. Pour résoudre ce problème, il est conseillé d'ajouter un petit circuit de protection composé de diodes (flyback diodes, freewheeling diodes) qui protègent le driver des courants induits générés par le moteur quand il n'est plus allumé.
Il est conseillé d'utiliser un refroidisseur pour tout courant supérieur ou égal à 1A. Pour préserver le matériel, c'est une bonne pratique d'en mettre dans toutes les situations, la température de la puce est vite évacuée par le métal, puis refroidie par la surface métallique en contact avec l'air.
Pour ce moteur (1.6A / phase) : alimentation entre 18 et 30V pour une meilleur utilisation du StealthChop Mode. A motor supply voltage of 12V is in most cases to low and in general the sound gets quieter if the motor supply voltage is above 18V.
Max current 1.77A, mais pas aller au delà de 1.2A RMS (also 1.6A Phase Current).
Déconnecter Fabscan pin Arduino
For most cases the 1/16 stealthChop mode (CFG1=open, CFG2=open, CFG3=open) is suitable. If you have problems like step losses then use the more powerful 1/16 spreadCycle mode (CFG1=GND, CFG2=open, CFG3=open).
1/16 : quiet Vref
Mesure Vref = IMax (peak current) approximately
Irms = IMax/1.41
Si on veut 1.2 A RMS. Imax = 1.2 * 1.41 = 1.692.
On peut réduire le courant si on on a pas besoin full torque du moteur
measuring the voltage on the Vref pin (0…2.5V) and adjusting the voltage with the potentiometer.
Connecter SHield sur Arduino Brancher Arduino (programme vide) (pas le moteur et pas l'alim') Multimètre entre VREF à côte de EN (triangle bas droit) et GND. Ajuster le potentiomètre
Réglage VREF = 0.9V Réglage VREF = 1V (chauffe un peu) Programme Arduino Test Soulève 500g + 300g