Filetage précis et Linux CNC.

  • Auteur de la discussion 22tonton
  • Date de début
2

22tonton

Apprenti
Bonjour,

Je suis en train de me fabriquer un petit tour CN 2 Axes. (Passage de broche 36 mm, entre pointes 350).

Etant Tourneur Fraiseur de formation, (en retraite aujourd’hui) la mécanique n’a pas été un problème, l’électronique de puissance un petit peu quand même, néanmoins réglé grâce à 2 moteurs pas à pas (2.5 Nm, 4 Ampères/phase) et leur drivers qui vont bien.

Ce qui m’amène, c’est qu’un tour qui ne fait pas de filetage, n’est pas vraiment un tour, et c’est là que le bât blesse.

En effet, que trouve t-on actuellement comme logiciels de tournage capables de gérer ce problème ?

- Soit des logiciels qui prennent en compte un top par tour de broche pour pouvoir retomber dans le pas, et rien entre les deux, et quand je dis les deux, c’est parfois entre 2 passes et non 2 tops ;

- Soit des logiciels qui prennent en compte un certain nombre de tops par tour, auquel cas la régulation opère pour assurer au mieux le pas exact, et grâce à leur comptage, y compris aux retours d’outil on retombe dans le pas. L’ennui c’est que quand on arrête le cycle pour pouvoir essayer le filetage avec un écrou, on arrête du même coup ce comptage, et donc là il est hors de question de relancer un cycle au cas où le filetage serait « dur » car jamais l’outil ne peut retomber dedans vu que le système ne peut pas deviner quel était le précédent top de départ.

- Soit des logiciels qui font les deux : et la prise en compte du top de départ et celle des tops de régulation, et là ça n’est que du bonheur car il suffit de voir la vidéo à l’adresse suivante pour s’en convaincre :

http://www.youtube.com/watch?v=pxXGN2SVrhU

Et Linux-CNC en particulier semble gérer ça avec brio.

Là où je veux en venir : j’aimerai adapter ce système pour mon petit tour, mais plusieurs questions se posent :

- Quelle carte dois-je insérer entre le PC qui gère tous les calculs et l’électronique de puissance ?

- Faut-il un doctorat en informatique pour la configurer ?

- Où puis-je me la procurer ?

- Dois-je ajouter un codeur (en remplacement de mon disque à trous + capteur à fourche), et combien d’impulsions par tour seraient le mieux ?

Je suis prêt à franchir le pas (voire le gouffre) au profit de Linux CNC, et serait donc très heureux si vous pouviez m’éclairer sur le chaînon manquant qui, une fois résolu ferait de moi le plus heureux des tourneurs.

Cordialement

22Tonton

Tour.JPG
 
Dernière édition par un modérateur:
G

gaston48

Compagnon
Bonsoir,
Là tu fais le choix idéal :supz: !
Théoriquement tu peux gérer tout ça avec le port parallèle c.a.d :
-pilotage en step- dir de tes 2 drivers de puissance pas à pas
-acquisition de la position de la broche c.a.d :
1 signal de fourche sur ton disque à trous
1 deuxième signal de fourche décalé de 90° par rapport au premier
pour identifier le sens de rotation (on appelle ces 2 signaux « les
signaux en quadrature » d’un codeur)
1 troisième signal de fourche détectant 1 trou par tour de ton disque
à trous, le signal « d’index »
Le Gcode G76 de cycle de filetage à besoin de ces trois informations

A 24 seconde de cette video :
http://www.youtube.com/watch?v=ZhICrb0Tbn4

on distingue le montage des 3 fourches sur le haut de la broche,
d’une autre application de Linuxcnc par Andy Pugh, un gros
contributeur de Linuxcnc. Tu peux aussi évaluer la résolution
de son disque à trous, sachant que si tu as 60 trous, Linuxcnc
disposera d’une résolution de 240 impulsions (grâce au décodage
de la quadrature).
Au lieu d’un disque à trous, tu peux très bien monté un codeur optique
incrémental (relatif) de 400 ou 1000 impulsions par tour standard avec une transmission
par courroie cranté, pour préserver ton passage de broche.
On trouve facilement des codeurs d’occasion sur ebay pour une
trentaine de roros montés sur roulements, (même de l’Heidenhain )
Ces codeurs ont les 3 sorties souhaités plus les même 3 sorties inversées
pour un câblages différentiel à grande distance immunisé aux parasites (optionel)
et une alimentation 5V avec une masse.


Le problème du port parallèle est qu’il est vite limité en fréquence
d’acquisition du codeur. La voie royale est de passer par une carte
rapide équipé d’un fpga :

MESA fabrique toutes une série de carte professionnelle dédié à linuxcnc

http://www.mesanet.com/
http://store.mesanet.com/index.php?route=product/category&path=83

avec un distributeur en Europe (pour la douane) irréprochable :

http://www.duzi.cz/shop_cnc/index.php?main_page=index&cPath=1_4&sort=20a&zenid=4b8d87ed8a4a6c0b6123f9d2e232e153

En premier prix tu as la 7i43 sur port // alimentée par USB à 90 Euros, c’est celle de
Andy Pugh.
Tu as ensuite la 5i20 ou la 5i23 sur port PCI du PC à 180 ou 210 Euros
Tu rajoutes des cartes de protection comme la 7i42TA avec des connecteurs
à bornes, du câble plat et des connecteurs 50 pins et c’est tout.

La configuration de tout ça se fait dans le fichier . HAL de linux grâce à
L’utilitaire wizard mais tu t’en passes très vite, il est bien plus simple
d’éditer directement le fichier HAL . Tout est très bien documenté dans
la doc de linuxcnc.

Mais avant toute chose, il te faut le bon PC avec un bon temps de latence.
Donc graver un cd avec linux et linuxcnc qui boote tout seul (voir le site linuxcnc)
sans forcement l’installer sur le pc mais qui suffit pour tester la
Latence.
La latence n’est pas un critère de rapidité du pc mais il reflète la
régularité d’un cadencement imposé par linux sans qu’il soit perturbé par
des micro- interruptions du bios, de la carte graphique etc.
 
Dernière édition par un modérateur:
M

moissan

Compagnon
quand il y a une seule impulsion par tour de broche , ça retombe dans le pas apres arret complet

quand il y a un plus grand nombre d'impulsion ou un codeur , il faut arreter sans couper linux cnc pour que le comptage ne soit pas perdu

avec une seule impulsion par tour , c'est bien quand on est sur que la vitesse reste constante , donc filetage pas trop gros qui ne fait jamais ralentir le tour

pour faire un gros filetage avec une seule impulsion par tour , si le tour ralentis l'outil sort de la trajectoire theorique , le couple augmente et ça ralenti encore plus et ça deraille completement : dans ce cas il faut un codeur sur la broche pour que EMC2 commande la vis mère avec la même precision que des engrenage
 
2

22tonton

Apprenti
Bonjour à tous et merci pour vos réponses

A l’attention de Gaston48,

Je suis vraiment impressionné par ta réponse :
- Qui est pratiquement instantanée ;
- Qui cible exactement mon problème ;
- Qui est super claire ;
- Qui est argumentée d’une vidéo convaincante ;
- Qui me donne des solutions concrètes.

A défaut de voix, je reste sans mots…

Cela fait vraiment plaisir d’être entendu et compris instantanément.

Tu excuseras mon ignorance, mais tes réponses m’amènent d’autres questions (sûrement bêtes):

- C’est quoi un fpga ?
- C’est quoi un bon temps de latence, et quelle influence a-t-il et sur quoi ?
- Les cartes MESA, sont-elles naturellement alimentées dès que connectées, ou bien dois-je prévoir un alim, ou bien encore peut-on les alimenter directement avec la tension 5 volts du PC ?
- Comme usiner un disque à trous n’est pas un problème pour moi, j’écarterai la solution du codeur qui nécessite poulies, courroies crantées, système de fixation, de tension, donc la place. Aussi, à propos du nombre idéal de trous dans ce disque, ne vaudrait-il pas mieux en forer un nombre égal à une puissance entière de 2 (du genre 32, 64 ou 128) plutôt que 60, 100 qui, il est vrai est davantage compréhensible pour l’homme, mais pas forcément mieux pour la machine ?
- A propos du diamètre de ces trous, s’il y a un minimum en dessous duquel il ne faut pas descendre, quel serait-il ?
- Doit on choisir leur espacement de manière à ce que, pendant la rotation du disque, le faisceau lumineux soit occulté autant de temps qu’il serait visible, ou bien cela n’a qu’une faible influence ?

D’avance merci de tes réponses avisées.




A l’attention de Moissan :

Merci de résumer tout à fait bien le problème qui me préoccupe actuellement.
Je ne manquerai pas de lire tes futures interventions.




A l’attention de Pascalp :

J’ai bien apprécié les différents liens que tu m’as envoyés, et ai découvert qu’une même fente pouvait servir aux deux fonctions. C’est bête, mais avant, je n’y aurais pas pensé.
En plus il y a le bout de programme qui doit bien aller pour mesurer la vitesse du disque ainsi que déterminer son sens de rotation (mais peut-être que je me trompe).




A l’attention de tous, (au risque de lancer un nouveau débat), une autre question naïve : Comment se fait-il que dès que ça commence à devenir techniquement un peu pointu, qu’on débouche tout de suite sur des sites Anglais et rarement Français ? Serions-nous plus bêtes qu’eux ?
 
M

moissan

Compagnon
22tonton a dit:
A l’attention de tous, (au risque de lancer un nouveau débat), une autre question naïve : Comment se fait-il que dès que ça commence à devenir techniquement un peu pointu, qu’on débouche tout de suite sur des sites Anglais et rarement Français ? Serions-nous plus bêtes qu’eux ?

ou tout simplement moins nombreux ...

il y a beaucoup d'information d'origine asiatique : quand ce n'est pas en chinois c'est en anglais

il y a aussi google qui est plus efficace pour trouver certain resultat en anglais , parce que google ne trouve pas bien certain mot technique en francais , qui sont caché par d'autres sens plus courants
 
D

duredetrouverunpseudo

Compagnon
L'anglais reste la norme en langage techniques.

Les anglais et américains bricole bien plus que nous. Les magasines de bricolage montre bien que la tendance est plus à repeindre ses volets et choisir sa tondeuse à gazon

Le français n'est pas très partageur.
 
2

22tonton

Apprenti
Bonjour Moissan et bonjour Duredetrouverunpseudo,

ça doit être ça: comme nous sommes davantage valorisés pour notre gastronomie, nous sommes donc moins nombreux pour les sciences et techniques qui semblent reléguées en seconde zone.

Alors en plus, si nous ne sommes pas partageurs, il ne faut donc pas s'étonner de trouver des solutions dans la langue de Shakespeare à nos problèmes posés dans celle de Molière.

Cordialement et bonne journée à tous.

22Tonton
 
2

22tonton

Apprenti
Bonjour,

Après un long silence dû à des facteurs extérieurs, je reprends le projet de numérisation de mon petit tour.

Et bien sûr, si je suis ici sur ce forum c’est que j’ai quelques soucis. (J’en étais resté à la partie électronique et c’est là que j’aurai besoin de secours).

Sur les conseils de Gaston48, je suis passé sous Linux et ai investi dans des cartes MESA :
- une 7i43 qui dialogue bien avec mon PC ;
- une 7i42 qui dialogue bien avec la 7i43 précitée et avec les drivers de mes moteurs pas à pas X et Z ;

Naturellement, voulant faire des filetages, j’ai équipé ma broche d’un disque à trous (60 au total +1) et de 3 capteurs à fourche (Ref : SX4009-P10 de chez Omron) :
- 2 pour générer des signaux carrés A et B en quadrature ;
- 1 pour générer le signal I pour le top par tour de broche.
Lorsque je passe les signaux A et B à l’oscilloscope, leur trace est propre (50% du temps à l’état haut, 50% du temps à l’état bas pour chaque signal, et un déphasage de PI/2 entre les deux).

Mon problème :

Les entrées de la carte 7i42 font 50 Ohms d’impédance (ce qui me semble très peu pour des valeurs d’entrée).
Les signaux de sortie de mes deux capteurs A et B générés à partir d’une tension de 5 volts passent par des résistances de 10 Kohms.

Ce qui se passe : les 5 volts bien vigoureux lorsqu’ils ne débitent pas « s’écroulent » à 0.02 volts lorsque je les connecte sur les entrées de la carte 7i42.

Finalement, cela était prévisible, mais je ne sais pas si mes capteurs à fourche sont inadaptés, si je dois descendre la résistance de 10 Kohms à une valeur bien inférieure pour qu’il reste quelques volts en fin de parcours, si on peut paramétrer la valeur de l’impédance d’entrée de la carte, ou encore si on peut pousser sa sensibilité par soft pour pouvoir détecter des pouièmes de volt.

Quoiqu’il en soit, lorsque la broche tourne, LinuxCNC ne peut pas le savoir et donc adieu aux avances par tour en chariotage, et surtout adieu aux filetages.

Voilà, voilà.

Si quelqu’un a une idée ou une piste à me soumettre pour résoudre ce problème, j’en serais très heureux, car c’est un des derniers chaînons qui manquent pour que tout fonctionne.

Cordialement

22Tonton
 
G

gaston48

Compagnon
Bonsoir tonton,
Bravo, tu t’es bien débrouillé,
Si la 7i42 dialogue bien avec les driver c’est qu’elle fonctionne, en revanche de mon coté
je l’ai alimenté en 5 V provenance PC je ne sais pas si cela un rapport, je n’ai pas encore eu le courage de relever
le schéma d’une voie de la 7i42.
Les fourches sont parfaites, des schmitt trigger, ce sont des sorties
en collecteur ouvert pas toujours facile à adapter à une entrée par exemple quand
elle sont optocouplées (là ce n’est pas le cas)
Normalement tu dois bien sortir sur le collecteur mais il doit être chargé
au +5 par une résistance qui peut descendre jusqu’à 300 ohms
essaye une 4.7 ou une 1 Ko.

https://www.google.fr/search?q=montage+collecteur+ouvert&hl=fr&gbv=2&oq=&gs_l=

Si tu ne veux pas fatiguer la fourche, tu peux rajouter un transistor montage Darlington
ou plus simplement un buffer, en DIP 16, un 4050, il faut toujours avoir un peu de 4050 ou 4049 (inverseur)
en stock pour adapter en tension ou en courant un signal et le mettre en forme.
Il faut bien vérifier aussi, si, en fonction du firmware choisi et de son mapping d’I/O,
tu rentres bien sur les input dédiés au encodeurs .
 
Dernière édition par un modérateur:
2

22tonton

Apprenti
Bonjour Gaston,

Merci encore une fois pour ta réponse rapide qui plus est m’éclaire.

Grâce au lien que tu m’as transmis, je suis allé voir les Sorties "collecteur ouvert" sur Wikipédia.

C’est tout à fait ça.

Je vais tenter ton idée: descendre la valeur de la résistance de tirage (puisqu’elle s’appelle ainsi).

L’idéal serait de connaître à partir de quelle valeur de tension la carte 7i42 détecte le changement d’état de ses entrées, je pourrai alors calculer à partir de quelle valeur maxi de résistance ça ne marche plus.

En fait, je ne veux pas trop baisser cette valeur de peur de flinguer le transistor qui commande la sortie de mes capteurs à fourche, mais préférerais aussi m'affranchir d'un Darlington qui fonctionnerait à coup sûr, mais ne me simplifierait pas la vie.

A propos de flinguer, je viens de tuer ma 7i43 car comme toi je me sert des 5 volts du PC (et aussi du 12 volts pour une petite carte PWM / 0-10volts), et bêtement j’ai fait passer les fils par un trou de sa carcasse qui n’était pas ébavuré, et en tirant dessus les bavures ont entamé l’isolant du 12 volts et l’effet fut instantané…

J’en attends donc une autre pour faire de nouveaux essais.

Je te tiens au courant. (Avec et sans jeu de mots).

Encore merci de ta réponse, j'ai bon espoir que ça marche.

Cordialement,

22Tonton
 
G

gaston48

Compagnon
Je compatis pour ta carte :cry:
Un 4050 sur un petit bout de plaque à trous pour l’arrivé et la sortie des fils, cela peut être très propre et même rester
en l’air avec un isolant autour.
Pour ta PWM (commande de variateur de broche j’imagine) le 4050 peut avoir ses entrés en 5V mais être alimenté
en 10V et donc ses sorties en +10 V ainsi il assure donc une amplification en tension du PWM. Un simple filtre RC en sortie
cela t’évite de passer par un AOP.
 
2

22tonton

Apprenti
Bonsoir Gaston,

Je suis allé voir sur le net à quoi ressemblait un 4050, et ça m’a l’air d’être une solution assez simple à mettre en œuvre.

Je crois que je vais l’adopter.

Effectivement la petite carte PWM est là pour commander mon variateur de fréquence qui pilote la broche.

Je ne l’ai pas encore testée, et pour cela comme pour le reste je dois attendre la nouvelle 7i43.

Merci pour tes conseils avisés.

22Tonton
 

Sujets similaires

Y
Réponses
21
Affichages
1 895
E
Pierreg60
Réponses
8
Affichages
611
Pierreg60
Pierreg60
K
Réponses
19
Affichages
1 713
rabotnuc
R
P
Réponses
4
Affichages
2 579
P
M
Réponses
11
Affichages
717
Joachim
J
E
Réponses
25
Affichages
1 585
EKINOX18
E
B
Réponses
11
Affichages
6 300
J
Haut