moteur a courant continu

  • Auteur de la discussion speedfender
  • Date de début
S

speedfender

Compagnon
Bonjour,

Je fais un petit récap.
Mach3 ou linuxcnc interprètent un fichier gcode définissant le parcours d'outils ainsi que vitesse de déplacements et profondeur. Ces deux logiciels interprètent ce fichier et envoient des signaux de pas et direction pour chacun des axes, et éventuellement la vitesse de rotation la broche. Ces signaux, après être généralement passés par des bascules rs, ou optocoupleur pour avoir un signal propre et stable et ensuite envoyé aux drivers de chaque axe. Le Driver, alimente les bobines du moteur suivant une séquance qu'il défini lui même en fonction de la résolution demandée (micropas), et des signaux de direction et pas qu'il reçoit . Le driver alimente en direct le moteur (transistors de puissance j'imagine) et gère l'intensité délivrée aux bobine (pwm)

Pour le port parallèle, soit tu utilises un vieux pc dédié (pas besoin d'une puissance terrible pour piloter une cnc), soit tu ajoutes une carte pci avec port parallèle dans ta tour. A voir si la gestion du tps réel est respectée.

Dis moi s'il y a des choses à developper..

A+
 
G

gégé62

Compagnon
Merci ça commence à se préciser dans ma petite tête....

Voilà ce que j'en comprends, dis-moi si je suis dans le bon.
1) Au niveau du PC + logiciel on gère toute la géométrie et la dynamique de déplacement (les vitesses et accélérations etc....tu le disais plus haut), et à la limite tout cela ne dépend pas des caractéristiques des moteurs, peut-être même est indépendant du type moteur CC ou PAP.
2) Le driver traite ces infos en fonction du moteur, notamment il gère la PWM. Et il y a une partie ampli pour la puissance en sortie.
(Il y a donc une grande différence entre la fréquence de découpage PWM et la fréquence des pas, je suppose).

Le rôle d'arduino serait donc de remplacer la "partie calcul" du driver, de façon à y intégrer la vérification de synchro depuis roue codeuse (ou autre, mais il me semble que ça doit être ça). Il gérerait aussi complètement la production du PWM, je suppose. On n'utiliserait donc plus de driver, mais un "bête" ampli de puissance en aval d'arduino pour travailler avec les tensions et intensités nécessaires. (comme mon ULN2003A mais plus puissant car celui-là est limité à 400 mA je crois). J'ai vu qu'il s'appelle driver aussi, mais en fait il ne fait rien d'autre qu'amplifier ce qu'on lui met à l'entrée.

Au fait, ne faudrait-il pas que tu crées un autre fil pour moteur PAP ? avant d'être allé dans les détails....

bonne soirée
Amicalement : Gérard
 
S

speedfender

Compagnon
Bonjour à tous,

J'ai réfléchi, et fais des recherches, et souhaite conserver mes nema 23 _4Nm et leur ajouter un encodeur. Mes moteurs ont un axe traversant sur lequel il me sera facile de placer un encodeur.

J'ai trouvé des solutions qui existent, mais cher, et puis surtout j'aimerai bien comprendre et réaliser le pcb d'un tel system (à moins qu'il existe des solutions à couts réduits).

http://www.soprolec.com/shop/fr/drivers/69-easy-servo-drives-50vdc-800a.html

J'aimerai donc réaliser un système asservi, en boucle fermée, avec mes moteurs pas a pas. Je souhaite qu'il soit autonome (pas de retour de codeur vers le pc, sauf pour disfonctionnement?).
Voila comment je vois la chose : il récupérerait en entrée les signaux de pas et direction de l'interface et ceux du codeur, et enverrait en sortie les signaux de pas et direction (et enable?) vers mes drivers existants (tb6600). Un tel dispositif ne nécessiterait aucune modification dans le paramétrage de linuxcnc ou mach3 car transparent pour l'ordinateur, et serait facilement utilisable par d'autres membres du forum ayant des drivers utilisant les mêmes signaux de pas et direction..

Connaissez-vous un composant capable de réaliser cette fonction ?

ps. faut-il que je crée un nouveau topic ?
 
F

fred03800

Compagnon
Bonjour,

Si tu conserve tes moteurs Nema23, c'est que les performances de déplacement (vitesse, acceleration, fluidité..) te vont ?
Tu as des perte de pas sur ta machine que tu cherche à mettre un système avec encodeur ? Dans ce cas la, c'est que les moteurs ne sont pas assez performant, certes ça aidera mais ne ressoudera pas le probleme.

Sinon, en question fonctionnement , avec ce type de driver PaP avec retour encodeur, si par exemple le codeur est sur l'axe moteur, faut 'il une résolution identique au nombre de pas du moteur (pas ou micro pas) ?
 
V

vres

Compagnon
Bonjour
speedfender avec ton système tu ne peux agir que sur les clocks step, ce qui serait intéressant c'est aussi de pouvoir booster le courant en cas de difficulté. Les anciens drivers avaient souvent une entrée "boost" mais elle a complétement disparue.
Le décalage entre la position du rotor et celle du stator est tout a fait normale car c'est lui qui génère le couple.
Le couple maximum d'un moteur est obtenu quand le champs magnétique du rotor est décalé de 90° par rapport a celui du rotor. Pour un moteur PàP qui a 50 paires de pôles ca nous donne un décalage de 1.8° soit 1 Pas.
Il faut donc que ton système régule les clocks step pour limiter le décalage à 1.8° et éviter le décrochage du moteur.

Évidement il y a des conversions à faire avec la résolution du codeur et celle du driver. Le plus simple est surement de choisir la même.

Si tu as un codeur de 4000pts, 1.8° c'est 20 points.
On pourrait aussi imaginer intégrer l'erreur pour améliorer le positionnement.
 
Dernière édition:
S

speedfender

Compagnon
Bonjour,
Oui mes moteurs sont suffisamment puissant, d'autant plus que je vais les démultiplier bientôt. Actuellement je dois avoir un problème électronique, au bout d'environ une heure de fonctionnement des décrochages se produisent, probablement du à une chute de tension ou une surchauffe. Etant donné que je vais retoucher la partie alimentation, drivers et démultiplication, ça peut être le moment d'asservir les moteurs.

C'est vrai qu'un booster aurait été bien, d'autant plus qu'une fois que ça décroche c'est pas évident à ce que ça redevienne normal. La gestion pwm ne permet pas de faire ça ?
J'essaie de trouver des schéma de systèmes existant pour voir comment c'est géré et avec quels composants, mais bon, je ne trouve pas grand chose..
 
S

speedfender

Compagnon
bonsoir

il y a longtemps j'avais fait ça

https://www.usinages.com/threads/emc2-avec-servomoteur-l6205.30513/

pas besoin de carte, les codeurs et le pilotage directement sur le port parallèle du PC. (attention le port parallèle est limité )
cela permet de se familiariser avec les servomoteurs et Linuxcnc.

Bonjour, j'ai regardé ce que tu as fais et je me dis que c'est effectivement certainement plus simple de mettre les codeurs en entrée sur le ports parallèle et de laisser la gestion des écarts à l'ordi , mais si ça me paraissait plus intuitif d'avoir un système autonome.
J'ai regardé le datasheet du l6205, tu lui envois quels signaux en entrée ? direction et pas? ou tu envois la séquence d'alimentation des bobines en direct ?
J'utilise des drivers avec des signaux en entrée de pas et direction, donc si ça peut convenir j'adopterai cette façon de procéder..
 

Sujets similaires

L
Réponses
15
Affichages
957
the_bodyguard1
the_bodyguard1
PParent
Réponses
2
Affichages
4 965
PParent
PParent
N
Réponses
4
Affichages
933
BRICOLO
B
Haut